/* Both themes share markup, layout, images and interactions. */
@media (max-width: 760px) {
  .nav-actions .theme-switch { display: grid; flex-shrink: 0; }
  .nav-actions { gap: 6px; }
  .language-switch a { min-width: 30px; }
  .menu-toggle { width: 34px; padding: 6px; }
}
@media (max-width: 600px) {
  .nav-actions .button { display: none; }
}
@media (max-width: 350px) {
  .header .brand img { width: 88px; }
  .nav-wrap { gap: 8px; }
}
html[data-theme=dark] {
  color-scheme: dark;
  --ink: #eeeaf4;
  --muted: #bfb7cd;
  --line: #474052;
  --purple: #c1a1f0;
  --pink: #e298c3;
  --soft: #2a2537;
}
[data-theme=dark] body { background: #201d2c; }
[data-theme=dark] .header { background: #201d2cf2; border-color: #474052; }
[data-theme=dark] .mobile-nav { background: #201d2c; }
[data-theme=dark] .theme-switch { border-color: #655976; }
[data-theme=dark] .language-switch { background: #30293e; border-color: #55495f; }
[data-theme=dark] .language-switch a:hover:not([aria-current]) { background: #453653; color: #eeeaf4; }
[data-theme=dark] .language-switch a[aria-current=page] { background: #7955a5; }
[data-theme=dark] .desktop-nav a[aria-current],
[data-theme=dark] .desktop-nav a:hover { color: #c1a1f0; }
[data-theme=dark] .hero-orbit { background: radial-gradient(ellipse at 12% 75%, #56407360, transparent 48%), radial-gradient(ellipse at 88% 55%, #3d466650, transparent 45%); }
[data-theme=dark] .hero-label { background: #352d45; border-color: #665473; color: #eee5f9; }
[data-theme=dark] .hero h1>span,
[data-theme=dark] .hero-spark,
[data-theme=dark] .eyebrow,
[data-theme=dark] .depth-heading h2>span,
[data-theme=dark] .depth-card .detail-index,
[data-theme=dark] .depth-footnote>span { color: #c1a1f0; }
[data-theme=dark] .hero-description,
[data-theme=dark] .hero-proof,
[data-theme=dark] .outcomes p>span,
[data-theme=dark] .section-heading>p,
[data-theme=dark] .product-copy>p:not(.eyebrow),
[data-theme=dark] .gain p,
[data-theme=dark] .product-montage figcaption,
[data-theme=dark] .source-note,
[data-theme=dark] .depth-heading>p,
[data-theme=dark] .depth-card-copy>p,
[data-theme=dark] .depth-conversation .depth-card-copy>p,
[data-theme=dark] .depth-footnote,
[data-theme=dark] .directory-label,
[data-theme=dark] .market-live,
[data-theme=dark] .workflow p,
[data-theme=dark] .footer-top p,
[data-theme=dark] .footer-bottom,
[data-theme=dark] .footer-contact { color: #bfb7cd; }
[data-theme=dark] .hero-proof strong,
[data-theme=dark] .country-list strong,
[data-theme=dark] .footer-contact strong { color: #eeeaf4; }
[data-theme=dark] .button { background: #8060b0; border-color: #9d7acb; color: #fff; box-shadow: 0 4px 16px #100c1926; }
[data-theme=dark] .button:hover { background: #8b68bd; }
[data-theme=dark] .button-plain { background: #2d273b; border-color: #695b7a; color: #eeeaf4; }
[data-theme=dark] .button-plain:hover { background: #3a304b; }
[data-theme=dark] .cinema { background: #30293f; border-color: #675471; box-shadow: 0 16px 45px #100c1926; }
[data-theme=dark] .outcomes,
[data-theme=dark] .country-list li,
[data-theme=dark] .directory-label,
[data-theme=dark] .footer-top,
[data-theme=dark] .footer-bottom,
[data-theme=dark] .footer-contact { border-color: #474052; }
[data-theme=dark] .product-tabs,
[data-theme=dark] .region-filters { background: #2d273b; border-color: #4b415a; }
[data-theme=dark] .product-tabs button,
[data-theme=dark] .product-tabs button>span:first-child,
[data-theme=dark] .region-filters button { color: #d3c9e0; }
[data-theme=dark] .product-tabs button[aria-selected=true],
[data-theme=dark] .region-filters button[aria-pressed=true] { background: #7955a5; color: #fff; }
[data-theme=dark] .product-tabs button:hover:not([aria-selected=true]),
[data-theme=dark] .region-filters button:hover:not([aria-pressed=true]) { background: #41344f; color: #eeeaf4; }
[data-theme=dark] .product-copy .prompt { background: #30283f; border-color: #69527d; border-left-color: #ba98e8; box-shadow: none; }
[data-theme=dark] .prompt>span,
[data-theme=dark] .product-montage figcaption>span:last-child,
[data-theme=dark] .chapter-link,
[data-theme=dark] .text-link,
[data-theme=dark] .footer-contact a,
[data-theme=dark] .source-note button { color: #c9a9f3; border-color: #8b70a7; }
[data-theme=dark] .prompt svg { stroke: #c9a9f3; }
[data-theme=dark] .montage-search .montage-stage { background: #3c2d50; }
[data-theme=dark] .montage-audience .montage-stage { background: #2b374d; }
[data-theme=dark] .montage-budget .montage-stage { background: #2c3e35; }
[data-theme=dark] .montage-brands .montage-stage { background: #483a30; }
[data-theme=dark] .montage-stage { border-color: #635574; }
[data-theme=dark] .montage-stage::before { background-image: radial-gradient(#d4b5ff35 1px, transparent 1px); }
[data-theme=dark] .montage-stage::after { border-color: #bbaaD738; box-shadow: 0 0 0 40px #ffffff05, 0 0 0 80px #ffffff03; }
[data-theme=dark] .stage-label,
[data-theme=dark] .stage-stamp,
[data-theme=dark] .audience-card-caption { color: #e2d5f4; }
[data-theme=dark] .stage-stamp em { color: #c4a2ee; }
[data-theme=dark] .montage-budget .stage-label { color: #d2e8b4; }
[data-theme=dark] .montage-brands .stage-label { color: #f0d7b6; }
[data-theme=dark] .depth-section { background: #262232; border-color: #474052; }
[data-theme=dark] .depth-card { background: #2e283d; border-color: #615074; }
[data-theme=dark] .depth-conversation { background: #27332f; border-color: #4f7462; }
[data-theme=dark] .depth-conversation .detail-index,
[data-theme=dark] .depth-cta { color: #b2d6ba; border-color: #779b83; }
[data-theme=dark] .history-visual { background: #443257; }
[data-theme=dark] .conversation-line { background: #31443a; border-color: #678f73; color: #e5f0e2; }
[data-theme=dark] .conversation-line b { color: #c3ddb9; }
[data-theme=dark] .market-summary { background: #342c46; border-color: #675574; }
[data-theme=dark] .country-list small { color: #bfb7cd; }
[data-theme=dark] .country-track { background: #3b3349; }
[data-theme=dark] .workflow-section { background: #262232; border-color: #474052; }
[data-theme=dark] .workflow li>span { color: #c1a1f0; border-color: #78618f; }
[data-theme=dark] .faq-intro { background: radial-gradient(ellipse at 100% 0%, #49355d, transparent 62%), linear-gradient(140deg, #31263e, #382b38); border-color: #655070; }
[data-theme=dark] .faq-intro h2>span { color: #c1a1f0; }
[data-theme=dark] .faq-lead,
[data-theme=dark] .faq-contact small { color: #c8bbd4; }
[data-theme=dark] .faq-contact { border-color: #62516f; }
[data-theme=dark] .faq-contact strong { color: #dfc7fa; }
[data-theme=dark] .faq-contact-mark { background: #493955; color: #e1c6ff; }
[data-theme=dark] .faq-contact:hover .faq-contact-mark { background: #594369; }
[data-theme=dark] .faq-section .faq-list details { --faq-tint: #473455; --faq-accent: #d4b5f7; background: #2b2637; border-color: #73617e; }
[data-theme=dark] .faq-section .faq-list details:nth-child(3n+2) { --faq-tint: #2d4057; --faq-accent: #b9d4f6; }
[data-theme=dark] .faq-section .faq-list details:nth-child(3n) { --faq-tint: #344334; --faq-accent: #c8dfac; }
[data-theme=dark] .faq-section .faq-list details[open] { background: #362c45; border-color: #b493d4; }
[data-theme=dark] .faq-section .faq-list details:hover { border-color: #b493d4; }
[data-theme=dark] .faq-question { color: #eee6f6; }
[data-theme=dark] .faq-section .faq-list details>p { color: #d0c5de; }
[data-theme=dark] .faq-section .faq-list summary>.faq-toggle { background: var(--faq-tint); color: var(--faq-accent); }
[data-theme=dark] .contact-card { background: #3a2f4b; border-color: #776088; }
[data-theme=dark] .contact-card .button { background: #c7df8a; border-color: #c7df8a; color: #202930; }
[data-theme=dark] .contact-card .button:hover { background: #d4e9a4; }
[data-theme=dark] dialog { background: #2d273b; color: #eeeaf4; border-color: #79668d; }
[data-theme=dark] .dialog-header button { background: #8060b0; }
[data-theme=dark] .skip-link { background: #382a47; color: #fff; }
/* The editorial stamp stays legible where it overlaps a white product capture. */
[data-theme=dark] .stage-stamp { background: #3c2d50; padding: 7px 9px; border-radius: 9px; }

/* Unnumbered headings and FAQ share the same alignment in both themes. */
.faq-section .faq-list summary { grid-template-columns: minmax(0, 1fr) 28px; }
.faq-section .faq-list details>p { padding-left: 20px; }
.workflow li { border-top: 1px solid var(--line); padding-top: 20px; }
@media (max-width: 1000px) {
  .faq-section .faq-list details>p { padding-left: 15px; }
}
@media (max-width: 440px) {
  .faq-section .faq-list summary { grid-template-columns: minmax(0, 1fr) 24px; }
  .faq-section .faq-list details>p { padding-left: 12px; padding-right: 12px; }
  .market-summary { grid-template-columns: minmax(0, 1fr); }
  .market-number { display: flex; border-top: 1px solid #ffffff25; gap: 12px; }
}
.footer-top .brand img { width: 108px; height: auto; }
@media (max-width: 760px) {
  .footer-top .brand img { width: 88px; }
}

/* Use-case tabs: larger labels and a clear, connected active underline. */
.product-tabs {
  gap: 8px;
  padding: 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
}
.product-tabs button {
  position: relative;
  justify-content: center;
  min-width: 0;
  padding: 20px 12px;
  margin: 0 0 -1px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 12px 12px 0 0;
  background: transparent;
  color: #625c70;
  font-size: 15.6px;
  font-weight: 600;
  line-height: 1.4;
  box-shadow: none;
  transition: background .2s, color .2s, border-color .2s;
}
.product-tabs button[aria-selected=true] {
  color: #7044af;
  background: #f4eefb;
  border-bottom: 3px solid #8757c6;
  box-shadow: none;
}
.product-tabs button:hover:not([aria-selected=true]) {
  color: #7044af;
  background: #f8f5fb;
}
[data-theme=dark] .product-tabs { background: transparent; border-color: #51465f; }
[data-theme=dark] .product-tabs button { color: #c7bfd2; }
[data-theme=dark] .product-tabs button[aria-selected=true] {
  color: #dfc6ff;
  background: #352b45;
  border-bottom-color: #b78de8;
}
[data-theme=dark] .product-tabs button:hover:not([aria-selected=true]) {
  color: #e4d6f4;
  background: #2d263a;
}
@media (max-width: 1000px) {
  .product-tabs button { font-size: 13.2px; padding: 17px 10px; }
}
@media (max-width: 760px) {
  .product-tabs { gap: 6px 10px; border-bottom: 0; }
  .product-tabs button { font-size: 14.4px; padding: 15px 8px; border-bottom-color: var(--line); }
  .product-tabs button[aria-selected=true] { border-bottom-color: #8757c6; }
  [data-theme=dark] .product-tabs button[aria-selected=true] { border-bottom-color: #b78de8; }
}
@media (max-width: 440px) {
  .product-tabs button { font-size: 12px; padding: 14px 6px; }
}

/* Keep decorative hero lighting inside the viewport on tablets. */
.hero-orbit { left: 0; right: 0; }

/* Process and contact cards share the same inset and corner geometry. */
:root { --section-card-radius: 24px; --section-card-padding: 55px 58px; }
.workflow-section, .contact-card {
  border-radius: var(--section-card-radius);
  padding: var(--section-card-padding);
}
.workflow-section { border: 1px solid #e1e5ed; }
.workflow-heading > *, .workflow li { min-width: 0; }
@media (max-width: 1000px) {
  :root { --section-card-padding: 40px; }
  .workflow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  :root { --section-card-radius: 20px; --section-card-padding: 34px 26px; }
}
@media (max-width: 440px) {
  :root { --section-card-padding: 31px 23px; }
  .workflow { grid-template-columns: minmax(0, 1fr); }
}
