/* XD brand layer, 2026-10-16. Geometry and content remain the Pindo-aligned R2.
   Tokens come unchanged from xd-brand-design/assets/brand.css. */
:root {
  --accent: var(--xd-blue);
  --accent-dark: var(--xd-deep-blue);
  --accent-soft: var(--xd-soft-blue);
  --ink: var(--xd-ink);
  --text: var(--xd-ink);
  --muted: var(--xd-muted);
  --line: var(--xd-line);
  --soft: var(--xd-mist);
}
body { color:var(--xd-ink); background:var(--xd-white); font-family:var(--xd-font); }
/* Use the unaltered wide transparent mark on the white navigation only. */
.site-header { background:var(--xd-white); border-color:var(--xd-line); }
.site-header .brand { color:var(--xd-navy); }
.site-header .brand img { width:112px; height:auto; aspect-ratio:768 / 395; border-radius:0; background:transparent; }
.brand small { color:var(--xd-muted); }
.main-nav a, .menu-toggle { color:var(--xd-ink); }
.main-nav a:hover, .main-nav a[aria-current="page"], .main-nav a.is-active { color:var(--xd-deep-blue); }
.main-nav a[aria-current="page"]::after, .main-nav a.is-active::after { background:var(--xd-blue); }
.main-nav a { min-height:44px; display:inline-flex; align-items:center; }
.menu-toggle:focus-visible, :is(a,button,input,textarea,select,summary):focus-visible {
  outline:3px solid var(--xd-deep-blue); outline-offset:4px;
}
.hero { background:var(--xd-navy); }
.hero::after { background:linear-gradient(90deg,rgba(8,45,80,.82),rgba(8,45,80,.40) 48%,rgba(8,45,80,.03) 80%); }
.hero::after, .about-panel::after, .service-panel::before, .section-head h2::before, .panel-title::before { pointer-events:none; }
.hero-copy :is(small,.eyebrow), .hero-copy p { color:var(--xd-white); }
.hero-art-label { color:var(--xd-white); padding:2px 7px; border-radius:3px; background:rgba(8,45,80,.8); pointer-events:none; }
.button, .hero .button, .about-copy .button, .article .v2-button {
  min-height:44px; background:var(--xd-gradient-primary); border-color:var(--xd-blue);
  color:var(--xd-white); text-decoration:none; text-align:center;
}
.button:hover, .hero .button:hover, .about-copy .button:hover, .article .v2-button:hover {
  color:var(--xd-white); background:var(--xd-deep-blue); border-color:var(--xd-deep-blue);
}
.button:active { transform:translateY(1px); }
.button.secondary, .button.outline, .hero .button.secondary, .news-item .button,
.article .v2-button.secondary {
  color:var(--xd-deep-blue); background:var(--xd-soft-blue); border-color:var(--xd-control-line);
  min-height:44px;
}
.article .v2-button.secondary { color:var(--xd-deep-blue)!important; }
.button.secondary:hover, .button.outline:hover, .hero .button.secondary:hover, .news-item .button:hover,
.article .v2-button.secondary:hover { background:var(--xd-mist); border-color:var(--xd-deep-blue); color:var(--xd-deep-blue); }
.section-head h2, .panel-title, .about-copy h2, .service-panel h2 { color:var(--xd-navy); }
.section-head h2::before, .panel-title::before, .service-panel::before { background:var(--xd-teal); }
.section-head h2 small, .panel-title small, .about-copy h2 small, .service-panel h2 small,
.section-note, .more, .about-copy p, .service-item p, .insight-card p, .insight-card time,
.insight-card small, .insight-foot, .compact-list time, .compact-list .category { color:var(--xd-muted); }
.more:hover { color:var(--xd-deep-blue); }
.filters button, .tabs button, .tabs a { color:var(--xd-muted); min-height:44px; }
.filters button[aria-pressed="true"], .tabs button[aria-selected="true"], .tabs .active,
.tabs [aria-current="page"] { background:var(--xd-blue); color:var(--xd-white); }
.photo-card { background:var(--xd-mist); }
.photo-caption { background:linear-gradient(180deg,transparent,rgba(8,45,80,.94) 74%); }
.photo-caption p { color:var(--xd-white); }
.photo-card img.contain { background:var(--xd-mist); }
.photo-card .play { background:var(--xd-navy); border-color:var(--xd-white); }
.insight-card { background:linear-gradient(158deg,var(--xd-mist),var(--xd-white) 78%); border-color:var(--xd-line); }
.insight-card h3 { color:var(--xd-navy); }
.service-item:not(:last-child), .compact-list li, .related-list li { border-color:var(--xd-line); }
.service-item :is(.service-icon,svg) { color:var(--xd-blue); }
.service-item h3 { color:var(--xd-ink); }
/* Inner pages retain their distinct templates, sharing the same text hierarchy. */
.page-banner { background:var(--xd-mist); border-color:var(--xd-line); }
.page-banner h1, .article h1, .article h2, .article h3, .article .content-hero h1,
.news-item h2, .news-item h3, .empty-state h2, .empty-state h3,
.article .timeline strong, .contact-details strong, summary, .article summary { color:var(--xd-navy); }
.article, .article .lead, .article .v2-lead, .article blockquote, td, .fact-grid dd { color:var(--xd-ink); }
.page-banner p, .breadcrumb, .breadcrumb a, .side-box p, .side-box figcaption,
.article .meta, .meta, .article figcaption, .source-note, .fact-grid dt,
.news-item p, .search-status, .empty-state, .person-card p, .person-body p,
.person-body .eyebrow, .team-figure figcaption, .contact-card p, .form-card p,
.contact-details li, .contact-details span, .form-note, .form-status,
.gallery figcaption, .video-grid figcaption, .session-flow span, .wechat-full figcaption,
.article .fact-line, .article .source-note, .article .evidence-note, .article .article-source-note,
.article .status-note, .article-toc ol, .article .v2-source p, .article .source-chip,
.article .page-meta, .article .article-meta, .article .v2-source, .article .timeline span,
.brand-intro p, .brand-intro .eyebrow, .brand-intro figcaption, .brand-stats span { color:var(--xd-muted); }
.article a:not(.button):not(.photo-card):not(.v2-button), .side-box .phone,
.contact-card .phone, .person-body .more, .brand-stats strong, .session-flow strong {
  color:var(--xd-deep-blue);
}
.article a:not(.button):not(.photo-card):not(.v2-button) { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.article :is(.lead,.answer-card,blockquote) { background:var(--xd-mint); border-left-color:var(--xd-teal); color:var(--xd-ink); }
.article .tag, .article .pill, .tag-list a, .tag { color:var(--xd-ink); background:var(--xd-mint); }
.notice, .source-note, .article .public-status-card, .article .v2-panel, .empty-state,
.brand-stats, .session-flow>div { background:var(--xd-cloud); border-color:var(--xd-line); }
.notice { color:var(--xd-ink); }
.session-flow, .brand-stats>div, .article :is(.source-row,.source-card,.v2-source,.timeline li,.status-list,.status-list dt,.status-list dd,.article-meta),
.article :is(.link-card,.knowledge-card,.info-card,.process-step,.fact-card,.person-card,details) { border-color:var(--xd-line); }
.course-detail-image, .record-figure img, .person-credential, .team-figure img,
.article :is(.credential-image,.figure-grid img,.evidence-gallery img,.credential-gallery img),
.article figure.portrait img, .article figure.certificate img { background:var(--xd-mist); }
.article .status-list dt { color:var(--xd-ink); background:var(--xd-mist); }
.article .status-list dd { color:var(--xd-ink); }
.category-nav a, .category-nav button, .pagination a, .pagination span, .pagination button {
  color:var(--xd-muted); background:var(--xd-white); border-color:var(--xd-control-line); min-height:44px;
}
.pagination :is(a,span,button) { min-width:44px; }
.category-nav [aria-current="page"], .category-nav [aria-pressed="true"], .category-nav .active,
.pagination [aria-current="page"], .pagination .active { background:var(--xd-blue); border-color:var(--xd-blue); color:var(--xd-white); }
.pagination .disabled, .pagination [aria-disabled="true"] { color:var(--xd-muted); background:var(--xd-mist); }
.faq-group, .faq-group>h2, .faq-group>.group-head, .faq-list li { border-color:var(--xd-line); }
.faq-group>h2, .faq-group>.group-head { background:var(--xd-mist); color:var(--xd-navy); }
.faq-list .number { background:var(--xd-mint); color:var(--xd-ink); }
form label, .form-card label { color:var(--xd-ink); }
input:not([type="checkbox"]):not([type="radio"]), select, textarea {
  border-color:var(--xd-control-line); background:var(--xd-white); color:var(--xd-ink); min-height:44px;
}
input::placeholder, textarea::placeholder { color:var(--xd-muted); opacity:1; }
th, td, .article th, .article td { border-color:var(--xd-line); }
th, .article th { background:var(--xd-mist); color:var(--xd-ink); }
td, .article td { background:var(--xd-white); color:var(--xd-ink); }
.price-table :is(th,td):not(:first-child), .price-table :is(th,td).amount { text-align:right; font-variant-numeric:tabular-nums; }
.article caption { color:var(--xd-muted); }
/* Frozen E01: only presentation, never its text/schema/export or print logic. */
#training-record-page { color:var(--xd-ink); }
#training-record-page .content-hero { background:var(--xd-mist); color:var(--xd-ink); }
#training-record-page .content-hero h1 { color:var(--xd-navy); }
#training-record-page .content-hero .eyebrow { color:var(--xd-deep-blue); }
#training-record-page .content-hero :is(p,.content-lead,.fact-line) { color:var(--xd-muted); }
#training-record-page :is(.answer-card,.content-section,.training-entry) { border-color:var(--xd-line); }
#training-record-page .record-field { background:var(--xd-cloud); color:var(--xd-ink); border-color:var(--xd-control-line); }
#training-record-page .record-field::placeholder { color:var(--xd-muted); }
#training-record-page .record-actions button { justify-content:center; background:var(--xd-soft-blue); border-color:var(--xd-control-line); color:var(--xd-deep-blue); }
#training-record-page .record-actions button:first-child { background:var(--xd-gradient-primary); border-color:var(--xd-blue); color:var(--xd-white); }
#training-record-page .record-actions button:hover { background:var(--xd-deep-blue); border-color:var(--xd-deep-blue); color:var(--xd-white); }
/* Brand identity is actual text in the dark footer; no boxed/recolored logo. */
.friendly-links, .site-footer { background:var(--xd-navy); color:var(--xd-mist); }
.friendly-links, .footer-bottom { border-color:rgba(223,248,237,.24); }
.friendly-links a, .site-footer .brand small, .footer-brand p, .footer-bottom { color:var(--xd-mist); }
.site-footer a:hover, .friendly-links a:hover { color:var(--xd-bright-mint); }
.site-footer :is(a,button):focus-visible, .friendly-links a:focus-visible { outline-color:var(--xd-bright-mint); }
.footer-contact>a:last-child { color:var(--xd-bright-mint); }
@media(max-width:1180px) { .site-header .brand img { width:96px; height:auto; } }
@media(min-width:769px) and (max-width:960px) {
  .site-header .brand img { width:82px; height:auto; }
  .site-header .brand>span { font-size:14px; }
}
@media(max-width:768px) {
  .site-header .brand img { width:76px; height:auto; }
  .site-header .brand { gap:9px; }
  .site-header .brand>span { font-size:14px; }
  .main-nav a { border-color:var(--xd-line); }
  .hero::after { background:linear-gradient(90deg,rgba(8,45,80,.9),rgba(8,45,80,.58) 65%,rgba(8,45,80,.20)); }
  .hero .button { min-height:44px; }
  .section-note { font-size:12px; }
  .service-grid.three .service-item:nth-child(2) { border-color:var(--xd-line); }
}
@media print {
  .article, .article :is(h1,h2,h3,p,a,td,th), #training-record-page { color:#000; }
  .article :is(.lead,.answer-card,blockquote), #training-record-page .content-hero { background:#fff; }
}
