/* Shared controls; the existing page layouts, routes and integrations stay in place. */
:root { --header: 120px; }
.site-header { height: auto; min-height: var(--header); }
.ia-cms-resource-page { --header: inherit; }
.ia-cms-resource-page .site-header { height: auto; min-height: var(--header); }
.site-header .nav-wrap { height: 76px; }
.ia-utility { border-bottom: 1px solid var(--line, #deddd8); background: #f3f1ed; color: #34383e; }
.ia-utility-inner { max-width: 1240px; min-height: 44px; padding: 0 32px; margin: auto; display: flex; align-items: center; gap: 28px; }
.ia-utility a, .ia-contrast-toggle, .ia-utility summary { font: inherit; font-size: 12px; font-weight: 650; text-decoration: none; color: inherit; }
.ia-utility a:last-child { margin-left: auto; }
.ia-contrast-toggle { border: 0; padding: 10px 0; cursor: pointer; background: transparent; }
.ia-contrast-toggle[hidden] { display: block !important; visibility: hidden; }
.site-header .ia-utility .ia-language { position: relative; border: 0; }
.site-header .ia-utility summary { padding: 12px 0; font-size: 12px; }
.ia-utility .ia-mega-panel, .site-header .ia-utility .ia-mega-panel { position: absolute; z-index: 60; left: 0; right: auto; top: 100%; width: 270px; padding: 20px; border: 1px solid var(--line); border-top: 3px solid var(--brand-orange); background: #fff; max-height: min(460px, 75dvh); overflow: auto; }
.ia-utility .ia-language { position: relative; }
.ia-utility .ia-mega-label { font-size:12px; margin:0 0 12px; }
.ia-utility .ia-mega-panel a { margin: 0; display: flex; justify-content: space-between; gap: 16px; padding: 13px 4px; border-bottom: 1px solid var(--line); min-height: 44px; }
.ia-utility .ia-mega-panel a[aria-current] { font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }
.ia-utility .ia-mega-panel small { font-size: 11px; color: var(--muted); }
.ia-utility .ia-language-note{font-size:13px;line-height:1.5;margin-bottom:12px;max-width:30ch}
.ia-utility .ia-language-status{display:inline-block;margin-left:6px;font-size:11px;font-weight:500;color:var(--muted);white-space:normal}
.ia-utility .ia-mega-panel a small{max-width:120px;text-align:right;line-height:1.4}
.ia-utility .ia-mega-panel{max-width:calc(100vw - 32px)}
.ia-localization-notice { background: #fff2e7; border-bottom: 1px solid #d9ad8a; color: #542a10; padding: 20px 0; }
.ia-localization-notice strong { font-size: 14px; }
.ia-localization-notice p { margin: 6px 0; font-size: 14px; max-width: 75ch; }
.ia-localization-notice a { font-size: 14px; text-decoration: underline; }
.ia-utility :focus-visible, .ia-localization-notice a:focus-visible { outline: 3px solid #175ed1; outline-offset: 4px; }
.site-footer .footer-grid { grid-template-columns: 1.35fr repeat(4, 1fr); gap: 28px; }
.site-footer .footer-grid > div:last-child { grid-column: auto; }
/* Reserve space below legal links for the existing fixed Intent AI launcher. */
body .site-footer, body.ia-cms-resource-page .site-footer { padding-bottom:calc(96px + env(safe-area-inset-bottom)); }
@media (max-width: 1120px) { .site-footer .footer-grid { grid-template-columns: repeat(3, 1fr); } .site-footer .footer-grid > div:first-child { grid-column: 1/-1; } }
@media (max-width: 720px) {
  :root { --header: 154px; }
  .site-header .nav-wrap { height: 66px; }
  .ia-utility-inner { padding: 0 16px; gap: 0 24px; display: grid; grid-template-columns: 1fr 1fr; }
  .ia-utility-inner > * { min-height: 44px; display: flex; align-items: center; }
  .ia-utility a:last-child { margin-left: 0; }
  .site-header .ia-utility .ia-language { display: block; }
  .site-header .ia-utility summary { display: block; }
  .site-footer .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 380px) { .site-footer .footer-grid { grid-template-columns: 1fr; } }
/* High contrast retains hierarchy: canvas, raised surfaces, controls and text roles. */
html[data-contrast="high"],html[data-contrast="high"] body{color-scheme:dark;--hc-canvas:#151b23;--hc-surface:#202a36;--hc-raised:#2a3747;--hc-hover:#36485d;--ink:#f7f9fc;--muted:#c5ceda;--paper:#151b23;--surface:#202a36;--surface2:#2a3747;--line:#8594a7;--brand-orange:#ffb574;--brand-orange-text:#ffd19e;--signal:#ffb574;--green:#ffd19e;--green-dark:#ffd19e;--orange:#ffd19e;--orange-dark:#ffd19e;--blue:#a6d6ff;--navy:#202a36;--orange-soft:#2a3747}
html[data-contrast="high"] body{background:var(--hc-canvas);color:var(--ink)}
html[data-contrast="high"] body :is(main,.container,.ia-utility-inner){background:transparent;color:inherit}
html[data-contrast="high"] body :is(.site-header,.ia-utility,.ia-mega-panel,.main-nav.open,.site-footer,.consent,.ia-cookie-consent){background:var(--hc-surface);color:var(--ink);border-color:var(--line)}
html[data-contrast="high"] body :is(.section,.pricing-section){background:var(--hc-canvas);color:var(--ink)}
html[data-contrast="high"] body :is(.section.white,.clarity-band,.home-final-cta,.final-cta,.webinar-band){background:var(--hc-surface);color:var(--ink)}
html[data-contrast="high"] body :is(.page-hero,.resource-hub,.ia-detail-hero){background:linear-gradient(135deg,var(--hc-surface),var(--hc-raised))!important;color:var(--ink)}
html[data-contrast="high"] .hero{background:var(--hc-surface);color:var(--ink)}html[data-contrast="high"] .hero-shade{background:linear-gradient(90deg,#151b23f5,#151b23cf 65%,#151b2380)}
html[data-contrast="high"] body :is(.pricing-card,.pricing-decision,.pricing-buying-path,.pricing-selector,.program-row,.program-form,.home-workflow-card,.home-trust-points,.home-resource-copy,.home-context-grid>article,.home-ai-note,.pillar,.industry,.process,.proof-ledger,.decision-block,.trust-item,.resource-feature,.ia-live-resource-card,.ia-related-card,.case-template,.case-template dl>div,.faq details){background:var(--hc-surface);color:var(--ink);border-color:var(--line)}
/* These existing page families have their own light surfaces and fixed text colors. */
html[data-contrast="high"] body :is(.sol-page,.proof-page,.re-page,.ia-author-page){background:var(--hc-canvas);color:var(--ink);--proof-ink:var(--ink);--proof-muted:var(--muted);--proof-orange:var(--brand-orange);--proof-line:var(--line)}
html[data-contrast="high"] body :is(.sol-hero,.sol-white,.sol-pillar,.sol-recommendation,.sol-outcome aside,.sol-resource-grid article,.sol-related a,.proof-hero,.proof-card,.proof-availability,.proof-related,.proof-delivery,.re-card,.re-tool,.re-output,.re-discovery,.ia-author-hero,.ia-author-card,.ia-author-page .ia-empty){background:var(--hc-surface);color:var(--ink);border-color:var(--line)}
html[data-contrast="high"] body :is(.sol-dark,.sol-final,.proof-dark,.re-dark){background:var(--hc-canvas);color:var(--ink)}
html[data-contrast="high"] body :is(.trust-number,.sol-number,.re-output pre,.ia-author-photo-placeholder,.ia-author-card-image){background:var(--hc-raised);color:var(--ink);border-color:var(--line)}
html[data-contrast="high"] body .sol-needs a:is([aria-current],:hover,:focus-visible){background:var(--hc-raised);color:var(--brand-orange-text)}
html[data-contrast="high"] body :is(.sol-page p,.sol-visual figcaption,.sol-breadcrumb,.sol-evidence dd,.sol-related span,.proof-page p,.proof-page figcaption,.proof-filter span,.re-page p,.re-discovery p,.ia-author-page p,.ia-author-meta,.ia-author-card-footer){color:var(--muted)}
html[data-contrast="high"] body :is(.sol-when strong,.sol-page .sol-pillar-job){color:var(--ink)}
html[data-contrast="high"] body :is(.sol-page .eyebrow,.sol-number,.sol-evidence dt span,.sol-process li>span,.re-eyebrow,.ia-author-eyebrow,.ia-author-placeholder){color:var(--brand-orange-text)}
html[data-contrast="high"] body :is(.program-row,.split-copy,.definitions,.market-fit,.resource-row,.ia-sol-menu-head,.ia-sol-menu-foot,.ia-sol-menu-group){border-color:var(--line)}
html[data-contrast="high"] body :is(h1,h2,h3,h4,h5,h6,summary,legend,label,dt){color:var(--ink)}
html[data-contrast="high"] body :is(.page-hero p,.section-head p,.split-copy p,.program-title p,.pricing-card dd,.pricing-card-minimum,.home-resource-copy p,.home-trust-points p,.ia-sol-menu-group p,.ia-language-note,.ia-language-status,.ia-mega-panel small){color:var(--muted)}
html[data-contrast="high"] body :is(.eyebrow,.ia-mega-label,.program-title>span,.pricing-card dt){color:var(--brand-orange-text)}
html[data-contrast="high"] body :is(.program-price,.pricing-card-price){color:var(--ink)}
html[data-contrast="high"] body a{color:var(--brand-orange-text);text-underline-offset:4px}html[data-contrast="high"] body a:hover{text-decoration:underline}
html[data-contrast="high"] body :is(.site-header a:not(.nav-cta):not(.button):not(.btn),.site-header summary){color:var(--ink)}
html[data-contrast="high"] body .site-header .ia-mega-grid a{background:var(--hc-raised);color:var(--ink);border-color:var(--line)}
html[data-contrast="high"] body :is(.ia-mega-grid a,.ia-sol-menu-group a):is(:hover,:focus-visible){background:var(--hc-hover);color:var(--ink)}
html[data-contrast="high"] body :is(table,.table-wrap){background:var(--hc-surface);color:var(--ink)}
html[data-contrast="high"] body :is(td,th){border-color:var(--line);color:var(--ink)}html[data-contrast="high"] body thead th{background:var(--hc-raised);color:var(--ink)}
html[data-contrast="high"] body tbody tr:nth-child(even){background:var(--hc-raised)}html[data-contrast="high"] body tbody tr:hover{background:var(--hc-hover)}
html[data-contrast="high"] body :is(.estimator,.estimator-results,.estimator input,.estimator select){background:var(--hc-raised);color:var(--ink);border-color:var(--line)}
html[data-contrast="high"] body :is(input,select,textarea){background:var(--hc-surface);color:var(--ink);border-color:var(--line);accent-color:var(--brand-orange)}
html[data-contrast="high"] body :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
html[data-contrast="high"] body :is(button,.button,.btn,.nav-cta,.proof-button,.re-button){background:var(--brand-orange);color:#151b23;border:1px solid var(--brand-orange)}
html[data-contrast="high"] body :is(button,.button,.btn,.nav-cta,.proof-button,.re-button):hover{background:#ffd19e;color:#151b23;border-color:#ffd19e}
html[data-contrast="high"] body .proof-button{color:#151b23!important}
html[data-contrast="high"] body :is(.secondary,.proof-button-light,.re-secondary,.ia-contrast-toggle,.menu-toggle,.footer-link,.consent-close,.ia-assistant-prompts button,.ia-assistant-head button,.ia-assistant-cancel,.ia-assistant-refresh){background:var(--hc-raised);color:var(--ink);border-color:var(--line)}
html[data-contrast="high"] body :is(.secondary,.proof-button-light,.re-secondary,.ia-contrast-toggle,.menu-toggle,.footer-link,.consent-close,.ia-assistant-prompts button,.ia-assistant-head button,.ia-assistant-cancel,.ia-assistant-refresh):hover{background:var(--hc-hover);color:var(--ink)}
html[data-contrast="high"] body .proof-button-light{color:var(--ink)!important}
html[data-contrast="high"] body :is(button,input,select,textarea):disabled{opacity:.7;cursor:not-allowed}html[data-contrast="high"] body :is(input,textarea)[readonly]{background:var(--hc-raised)}
html[data-contrast="high"] body :is(.field-error:not(:empty),.form-status.error,.ia-assistant-error){color:#ffcbcb;background:#3d2630;border-color:#eea5aa}html[data-contrast="high"] body [aria-invalid="true"]{border-color:#eea5aa}
html[data-contrast="high"] .ia-localization-notice{background:var(--hc-raised);color:var(--ink);border-color:var(--line)}
html[data-contrast="high"] :focus-visible{outline:3px solid #a6d6ff!important;outline-offset:4px}
.brand .ia-brand-dark{display:none}
html[data-contrast="high"] .brand .ia-brand-standard{display:none}
html[data-contrast="high"] .brand .ia-brand-dark{display:block;background:transparent;border-radius:0;padding:0}
.site-footer .footer-heading{margin-bottom:14px;color:#fff;font-weight:700;font-size:14px}
@media(forced-colors:active){.ia-utility,.ia-localization-notice,.home-workflow-card,.pricing-card{border:1px solid CanvasText}}

