/*
 * ZEN brand themes
 * Light: warm editorial paper. Dark: cinema-inspired charcoal and ember.
 * This file intentionally changes colour and surface language only; imagery,
 * official social screenshots and their native colours remain untouched.
 */

html[data-theme="light"]{
  --ink:#211b19;
  --muted:#74655f;
  --line:#d9cbc3;
  --paper:#fffdfb;
  --zen-paper:#fffdfb;
  --zen-soft:#f7f0eb;
  --zen-soft-2:#f1e6df;
  --zen-ink:#211b19;
  --zen-muted:#74655f;
  --zen-line:#d9cbc3;
  --zen-accent:#b23a2f;
  --zen-accent-deep:#7e241e;
  --zen-button:#7e241e;
  --zen-button-hover:#b23a2f;
  --zen-error:#c43f35;
  --zen-accent-soft:#f4d9d1;
  --zen-copper:#a86742;
  --zen-focus:#8d2c24;
  color-scheme:light;
}

html[data-theme="dark"]{
  --ink:#f5ece7;
  --muted:#bca9a1;
  --line:#463a37;
  --paper:#11100f;
  --zen-paper:#11100f;
  --zen-soft:#1b1816;
  --zen-soft-2:#27201d;
  --zen-ink:#f5ece7;
  --zen-muted:#bca9a1;
  --zen-line:#463a37;
  --zen-accent:#d55a4e;
  --zen-accent-deep:#f18475;
  --zen-button:#9b3028;
  --zen-button-hover:#ad4035;
  --zen-error:#f18475;
  --zen-accent-soft:#44231f;
  --zen-copper:#d59766;
  --zen-focus:#f18475;
  color-scheme:dark;
}

html[data-theme]{background:var(--zen-paper)}
html[data-theme] body{background:var(--zen-paper);color:var(--zen-ink)}
html[data-theme] ::selection{background:var(--zen-accent);color:#fffaf7}
html[data-theme] :is(a,button,input,textarea,select){color:inherit}
html[data-theme] :is(a,button):focus-visible{outline-color:var(--zen-focus)}

/* Navigation, footer, and quiet editorial surfaces. */
html[data-theme] .subpage .header,
html[data-theme] .header.scrolled,
html[data-theme] .header.menu-active,
html[data-theme] .mobile-menu{background:var(--zen-paper);color:var(--zen-ink);border-color:var(--zen-line)}
html[data-theme] .subpage .header,
html[data-theme] .header.scrolled{box-shadow:0 1px 0 color-mix(in srgb,var(--zen-line) 78%,transparent)}
html[data-theme] .header.scrolled .nav-contact,
html[data-theme] .subpage .header .nav-contact{border-color:var(--zen-line)}
html[data-theme] .nav-contact{border-color:color-mix(in srgb,currentColor 60%,transparent)}
html[data-theme] .nav-contact:hover{background:var(--zen-accent-soft)}
html[data-theme] body:not(.subpage) .header:not(.scrolled) .nav-contact:hover{background:#ffffff20;color:#fffaf7}
html[data-theme] .mobile-menu nav a{border-color:var(--zen-line)}
html[data-theme] .mobile-menu nav span,
html[data-theme] .footer-bottom,
html[data-theme] .breadcrumb,
html[data-theme] .small-note,
html[data-theme] .case-source,
html[data-theme] .story-note p{color:var(--zen-muted)}
html[data-theme] .skip-link{background:var(--zen-paper);color:var(--zen-ink)}
html[data-theme] .footer,
html[data-theme] .company,
html[data-theme] .work-intro,
html[data-theme] .media-reach{border-color:var(--zen-line)}
html[data-theme] .theme-comparison{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:28px;padding-top:18px;border-top:1px solid var(--zen-line);font-size:12px;letter-spacing:.07em;color:var(--zen-muted)}
html[data-theme] .theme-comparison a{padding:7px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
html[data-theme] .theme-comparison a:hover,
html[data-theme] .theme-comparison a[aria-current=true]{color:var(--zen-accent-deep);border-bottom-color:currentColor}
html[data-theme] :is(.pale,.principles,.name-story,.contact,.contact-direct,.embedded-contact){background:var(--zen-soft)}
html[data-theme] .representative{background:var(--zen-soft)}
html[data-theme] .feature-copy{background:var(--zen-soft)}
html[data-theme] .feature-reverse .feature-copy{background:var(--zen-paper)}
html[data-theme] .english-note,
html[data-theme] .company-title>p:last-child,
html[data-theme] .company-list dt,
html[data-theme] .reach-source,
html[data-theme] .reach-source a,
html[data-theme] .stat-definition,
html[data-theme] .external-note,
html[data-theme] .contact-email{color:var(--zen-muted)}
html[data-theme] :is(.belief .eyebrow,.feature-copy>.eyebrow){color:var(--zen-accent-deep)}
html[data-theme] .text-link,
html[data-theme] .contact-link,
html[data-theme] .back-top,
html[data-theme] .map-link{border-color:var(--zen-line)}

/* Service and company diagrams. */
html[data-theme] .nationwide-label{color:var(--zen-accent-deep);border-color:var(--zen-copper)}
html[data-theme] .editorial-split .eyebrow,
html[data-theme] .section-heading>.eyebrow,
html[data-theme] .process-copy .process-tags,
html[data-theme] .story-detail-head .eyebrow,
html[data-theme] .story-byline,
html[data-theme] .job-row .job-type,
html[data-theme] .career-work-grid article>span,
html[data-theme] .contact-option>span,
html[data-theme] .result-label,
html[data-theme] .story-result .result-topic{color:var(--zen-accent-deep)}
html[data-theme] .challenge-list li::before{background:var(--zen-accent)}
html[data-theme] .evidence-flow,
html[data-theme] .population-panel{background:var(--zen-soft-2)}
html[data-theme] .evidence-flow li,
html[data-theme] .principle-grid li,
html[data-theme] .simple-flow li,
html[data-theme] .step-nav{border-color:var(--zen-copper)}
html[data-theme] .evidence-flow li>span,
html[data-theme] .principle-grid span,
html[data-theme] .simple-flow li>span,
html[data-theme] .step-nav span,
html[data-theme] .process-number,
html[data-theme] .strength-list article>span,
html[data-theme] .job-row>span{color:var(--zen-accent-deep)}
html[data-theme] .step-nav a:hover{background:var(--zen-accent-soft)}
html[data-theme] .service-media{background:var(--zen-soft);color:var(--zen-ink);border-top:1px solid var(--zen-line);border-bottom:1px solid var(--zen-line)}
html[data-theme] .service-media .eyebrow{color:var(--zen-accent-deep)}
html[data-theme] .service-media .text-link{border-color:var(--zen-line)}
html[data-theme] .faq-list summary::after{color:var(--zen-accent)}
html[data-theme] .contact-option:hover{background:var(--zen-accent-soft)}
html[data-theme] .contact-option em,
html[data-theme] .email-large{border-color:var(--zen-copper)}
html[data-theme] .contact-option em span{color:var(--zen-muted)}
html[data-theme] .faq-list details>p,
html[data-theme] .job-conditions dt,
html[data-theme] .case-shop,
html[data-theme] .interview-image small{color:var(--zen-muted)}
html[data-theme] .case-more{border-color:var(--zen-copper)}

/* Numbers, filters, case-study charts. */
html[data-theme] .genre-filters button{border-color:var(--zen-copper);color:var(--zen-ink)}
html[data-theme] .genre-filters button[aria-pressed=true]{background:var(--zen-button);border-color:var(--zen-button);color:#fffaf7}
html[data-theme] .genre-filters button:hover{background:var(--zen-accent-soft);color:var(--zen-ink)}
html[data-theme] .genre-filters button[aria-pressed=true]:hover{background:var(--zen-button-hover);color:#fffaf7}
html[data-theme] .filter-result,
html[data-theme] .live-reels-status,
html[data-theme] .comparison-chart>p,
html[data-theme] .bar-row>span,
html[data-theme] .single-result>p,
html[data-theme] .reel-category{color:var(--zen-muted)}
html[data-theme] .story-logo,
html[data-theme] .case-image.logo-image{background:var(--zen-soft)}
html[data-theme] .case-publication{border-color:var(--zen-line)}
html[data-theme] .case-publication .reel-player{background:#181210;box-shadow:0 12px 30px rgb(44 17 12 / .16)}
html[data-theme] .case-image.logo-image>span,
html[data-theme] .case-image>span{background:var(--zen-paper);color:var(--zen-ink)}
html[data-theme] .result-bar{background:#d6aaa0}
html[data-theme] .bar-row:last-child .result-bar{background:var(--zen-accent)}
html[data-theme] .bar-row:last-child strong{color:var(--zen-accent-deep)}
html[data-theme] .secondary-result{border-color:var(--zen-line)}
html[data-theme] .interview-play>span,
html[data-theme] .interview-image>span{border-color:var(--zen-copper)}
html[data-theme] .video-dialog{background:var(--zen-paper);color:var(--zen-ink)}
html[data-theme] .video-dialog::backdrop{background:rgb(12 8 7 / .82)}

/* Gourmet audience reporting: red/copper replaces prior green data decoration. */
html[data-theme] .gourmet-hero{background:var(--zen-soft)}
html[data-theme] .gourmet-hero-visual>span{color:var(--zen-muted)}
html[data-theme] .reel-player{background:#181210}
html[data-theme] .reel-start{color:#fffaf7}
html[data-theme] .real-media-preview{background:var(--zen-soft-2);color:var(--zen-ink)}
html[data-theme] .real-media-heading{color:var(--zen-accent-deep)}
html[data-theme] .real-profile>img{border-color:var(--zen-copper);background:var(--zen-paper);box-shadow:0 12px 25px rgb(45 17 12 / .14)}
html[data-theme] .real-media-preview>figcaption{color:var(--zen-muted)}
html[data-theme] .national-context{background:var(--zen-paper);border-color:var(--zen-line)}
html[data-theme] .national-context>span{color:var(--zen-accent-deep)}
html[data-theme] .audience-section{background:var(--zen-soft)}
html[data-theme] .audience-grid>article{border-color:var(--zen-copper)}
html[data-theme] :is(.region-bar,.age-bar){background:color-mix(in srgb,var(--zen-copper) 20%,var(--zen-paper))}
html[data-theme] :is(.region-bar,.age-bar) span{background:var(--zen-accent)}
html[data-theme] .gender-donut{background:conic-gradient(var(--zen-accent) 0 54.7%,color-mix(in srgb,var(--zen-copper) 20%,var(--zen-paper)) 54.7% 100%)}
html[data-theme] .gender-donut>div{background:var(--zen-soft)}
html[data-theme] .audience-source p{color:var(--zen-muted)}
html[data-theme] .population-panel{border-left:3px solid var(--zen-accent)}
html[data-theme] .feature-live-stat{border-color:var(--zen-copper)}
html[data-theme] :is(.feature-live-stat time,.feature-live-stat .feature-stat-note,.network-stats time){color:var(--zen-muted)}

/* Form: readable, warm, and with a clear error/focus treatment in either mode. */
html[data-theme] .form-instruction{color:var(--zen-muted)}
html[data-theme] :is(.form-instruction span,.form-row label>span){background:var(--zen-accent-soft);color:var(--zen-accent-deep)}
html[data-theme] .form-row{border-color:var(--zen-line)}
html[data-theme] .form-row :is(input,textarea,select){background:var(--zen-paper);border-color:var(--zen-copper);color:var(--zen-ink)}
html[data-theme="dark"] .form-row :is(input,textarea,select){background:#171311}
html[data-theme] .form-row :is(input,textarea)::placeholder{color:var(--zen-muted);opacity:.9}
html[data-theme] .form-row :is(input,textarea,select):focus{outline-color:var(--zen-focus);border-color:var(--zen-focus)}
html[data-theme] .form-row [aria-invalid=true]{border-color:var(--zen-error);box-shadow:0 0 0 1px var(--zen-error)}
html[data-theme] .consent input{accent-color:var(--zen-accent)}
html[data-theme] .form-primary{background:var(--zen-button);border-color:var(--zen-button);color:#fffaf7}
html[data-theme] .form-primary:hover:not(:disabled){background:var(--zen-button-hover)}
html[data-theme] .form-primary:disabled{background:color-mix(in srgb,var(--zen-button) 45%,var(--zen-soft));border-color:transparent;color:color-mix(in srgb,#fff 75%,transparent);opacity:1}
html[data-theme] :is(.form-error,.review-error){color:var(--zen-error)}
html[data-theme] .review-list>div,
html[data-theme] .form-back{border-color:var(--zen-line)}
html[data-theme] .review-list dt{color:var(--zen-muted)}

/* Hero stays cinematic: only the fallback / mobile surface picks up warm black. */
html[data-theme] .hero{background:#15110f}
html[data-theme] .hero-shade{background:linear-gradient(180deg,rgb(7 5 4 / .43) 0%,rgb(26 10 7 / .14) 30%,rgb(13 5 4 / .3) 70%,rgb(7 4 3 / .64) 100%)}
html[data-theme] .feature-image{background:#241714}
html[data-theme] .work-feature .feature-image{box-shadow:inset 0 0 0 1px rgb(121 52 37 / .16)}

@media (max-width:720px){
  html[data-theme] .hero{background:#17110f}
  html[data-theme] .hero-copy,
  html[data-theme] .cinema-controls{background:#17110f}
  html[data-theme] .mobile-menu{background:var(--zen-paper)}
  html[data-theme] .experience-band>div+div{border-color:var(--zen-line)}
}
