:root[data-palette="midnight"]{--q-background:#081C2A;--q-panel:#102A3E;--q-raised:#19394E;--q-deep:#05131E;--q-text:#F1EBDD;--q-muted:#BBCCD6;--q-accent:#C5AE80;--q-line:#365064;--q-glass:#081C2AE8;--q-field:#0B2233;--q-ice:#CFE7EB}
:root[data-palette]{--ink:var(--q-text);--muted:var(--q-muted);--navy:var(--q-deep);--paper:var(--q-panel);--line:var(--q-line);--cyan:var(--q-accent);color-scheme:dark}
html[data-palette] body{background:var(--q-background);color:var(--q-text)}
html[data-palette] h1,html[data-palette] h2,html[data-palette] h3{color:var(--q-text)}
html[data-palette] p,html[data-palette] .page-lead,html[data-palette] .lead{color:var(--q-muted)}
html[data-palette] .eyebrow,html[data-palette] .card-number,html[data-palette] .card-link,html[data-palette] .text-link{color:var(--q-accent)}
html[data-palette] .page-heading,html[data-palette] .service-hero{background:var(--q-panel)}
html[data-palette] .pale,html[data-palette] .related-section{background:var(--q-panel)}
html[data-palette] .home-intro,html[data-palette] .hub-section,html[data-palette] .contact-section{background:var(--q-background)}
html[data-palette] .site-header,html[data-palette] .site-header.is-scrolled{background:var(--q-glass);border-color:var(--q-line);box-shadow:none}
html[data-palette] .page-home .site-header{background:linear-gradient(180deg,#07131B9C,#07131B20);border-color:#E2E6DF33}
html[data-palette] .page-home .site-header.is-scrolled,html[data-palette] .page-home .site-header:has([aria-expanded="true"]){background:var(--q-glass)}
html[data-palette] .site-header::after{background:var(--q-accent)}
html[data-palette] .services-menu{background:var(--q-panel);color:var(--q-text);border-color:var(--q-line);box-shadow:0 18px 45px #0004}
html[data-palette] .services-menu>a,html[data-palette] #main-nav .nav-cta{border-color:var(--q-line);color:var(--q-text)}
html[data-palette] .services-menu .menu-overview,html[data-palette] .services-menu>a:hover{color:var(--q-accent)}
html[data-palette] #main-nav .nav-cta:hover{background:var(--q-raised);border-color:var(--q-accent)}
html[data-palette] #main-nav>a[aria-current]:not(.nav-cta):after,html[data-palette] #main-nav>a:not(.nav-cta):hover:after,html[data-palette] #services-toggle.current:after{background:var(--q-accent)}
html[data-palette] .button-cyan,html[data-palette] .button-dark,html[data-palette] .wpcf7-form .wpcf7-submit{background:var(--q-accent);color:var(--q-deep);border-color:var(--q-accent)}
html[data-palette] .button-cyan:hover,html[data-palette] .button-dark:hover{background:var(--q-text);color:var(--q-deep)}
html[data-palette] .hero-shade{background:linear-gradient(90deg,#07131BE3 0%,#0A17269C 44%,#0926330C 90%),linear-gradient(0deg,#07131B73,transparent 50%)}
html[data-palette] .hero-content h1,html[data-palette] .hero-content p,html[data-palette] .hero-baseline,html[data-palette] .light{color:var(--q-text)}
html[data-palette] .hero-content .eyebrow{color:var(--q-accent)}
html[data-palette] .service-card{background:transparent;border-color:var(--q-line)}
html[data-palette] .service-card:hover{background:var(--q-panel);border-color:var(--q-accent)}
html[data-palette] .service-card h3,html[data-palette] .service-card p{color:inherit}
html[data-palette] .service-card p{color:var(--q-muted)}
html[data-palette] .cta-section{background:var(--q-raised);border-color:var(--q-line)}
html[data-palette] .cta-section p{color:var(--q-text)}
html[data-palette] .footer{background:var(--q-deep);color:var(--q-text)}
html[data-palette] .footer h2,html[data-palette] .footer nav{color:var(--q-text)}
html[data-palette] .footer p,html[data-palette] .footer-bottom{color:var(--q-muted);border-color:var(--q-line)}
html[data-palette] .service-jump{background:var(--q-background);color:var(--q-text);border-color:var(--q-line)}
html[data-palette] .service-jump a{color:var(--q-muted)}
html[data-palette] .service-jump a:hover{color:var(--q-accent)}
html[data-palette] .breadcrumb{color:var(--q-muted)}
html[data-palette] .situation-grid article,html[data-palette] .scope-grid article,html[data-palette] .deliverable-matrix th,html[data-palette] .deliverable-matrix td,html[data-palette] .faq-list details{border-color:var(--q-line)}
html[data-palette] .scope-grid article,html[data-palette] .example-card,html[data-palette] .form-panel{background:var(--q-panel);border-color:var(--q-line)}
html[data-palette] .scope-grid article>span,html[data-palette] .situation-grid article>span,html[data-palette] .process-steps li>span{color:var(--q-accent)}
html[data-palette] .process-steps li>span{background:var(--q-raised);border-color:var(--q-line)}
html[data-palette] .deliverable-matrix thead,html[data-palette] .deliverable-matrix thead th{background:var(--q-raised);color:var(--q-text)}
html[data-palette] .deliverable-matrix td,html[data-palette] .deliverable-matrix tbody th{color:var(--q-muted)}
html[data-palette] .deliverable-matrix tbody th{color:var(--q-text)}
html[data-palette] .navy-band{background:var(--q-deep);color:var(--q-text)}
html[data-palette] .navy-band p,html[data-palette] .navy-band .eyebrow{color:var(--q-muted)}
html[data-palette] .navy-band h2,html[data-palette] .navy-band h3{color:var(--q-text)}
html[data-palette] .example-card small,html[data-palette] .input-list li,html[data-palette] .faq-list summary{color:var(--q-muted)}
html[data-palette] .faq-list summary{color:var(--q-text)}
html[data-palette] .faq-list summary::after,html[data-palette] .faq-list summary span{color:var(--q-accent)}
html[data-palette] .contact-notice,html[data-palette] .privacy-operator,html[data-palette] .privacy-contact{border-color:var(--q-line)}
html[data-palette] .privacy-copy a,html[data-palette] .form-intro a{color:var(--q-accent)}
html[data-palette] input:not([type=checkbox]),html[data-palette] select,html[data-palette] textarea{background:var(--q-field);border-color:var(--q-line);color:var(--q-text)}
html[data-palette] .preview-form-note button{background:var(--q-accent);color:var(--q-deep)}
html[data-palette] .menu-toggle{background:transparent;color:var(--q-text);border-color:var(--q-line)}
html[data-palette] .brand img{filter:none}
html[data-palette] a:focus-visible,html[data-palette] button:focus-visible,html[data-palette] summary:focus-visible,html[data-palette] input:focus-visible{outline-color:var(--q-accent)}
@media(max-width:760px){html[data-palette] #main-nav,html[data-palette] .page-home #main-nav{background:var(--q-panel);color:var(--q-text);border-color:var(--q-line)}html[data-palette] .page-home #main-nav .nav-cta{color:var(--q-text)}html[data-palette] .services-menu{background:var(--q-panel)}}

/* Native form states on the approved dark surfaces. */
html[data-palette="midnight"] .wpcf7-form .wpcf7-not-valid-tip{color:#F9B7A5}
html[data-palette="midnight"] input::placeholder,html[data-palette="midnight"] textarea::placeholder{color:#AABAC2;opacity:1}

/* Midnight Blue: preserve the blue-hour character of the reference. */
html[data-palette="midnight"] h1 em,html[data-palette="midnight"] h2 em{color:var(--q-ice)}
html[data-palette="midnight"] .hero-shade{background:linear-gradient(90deg,#031722D6 0%,#061E2E9C 44%,#0926330C 90%),linear-gradient(0deg,#04172373,transparent 50%)}
html[data-palette="midnight"] .page-home .site-header{background:linear-gradient(110deg,#051620BA,#102C476B 72%,#07131B73);border-color:#CFE7EB30;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
html[data-palette="midnight"] .button-cyan,html[data-palette="midnight"] .button-dark,html[data-palette="midnight"] .wpcf7-form .wpcf7-submit{background:var(--q-ice);border-color:var(--q-ice);color:var(--q-deep)}
html[data-palette="midnight"] .button:hover,html[data-palette="midnight"] .wpcf7-form .wpcf7-submit:hover{background:var(--q-text);border-color:var(--q-text)}
html[data-palette="midnight"] .hero-content>p:not(.eyebrow){color:#D4E1E5}
html[data-palette="midnight"] .text-link,html[data-palette="midnight"] .card-link{color:var(--q-ice)}
html[data-palette="midnight"] .services-menu>a:hover,html[data-palette="midnight"] .footer-main nav a:hover{color:var(--q-ice)}
html[data-palette="midnight"] .hero-baseline{color:var(--q-muted)}
html[data-palette="midnight"] textarea:focus-visible,html[data-palette="midnight"] select:focus-visible{outline-color:var(--q-ice)}
