/* Warm, understated surfaces; original images and logo colors are preserved. */
:root{color-scheme:light}
:root[data-theme="dark"]{
  color-scheme:dark;
  --cream:#252624;--paper:#2c2e2b;--ink:#e6e2d9;--muted:#b8b8ae;
  --terracotta:#c7927b;--terracotta-dark:#d4a38d;
  --blue:#91adbb;--blue-light:#343e41;--sage:#343a32;--line:#484b44;
}
.theme-toggle{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:14px;flex:none;width:76px;height:44px;padding:10px;border:1px solid var(--line);border-radius:24px;background:var(--cream);color:var(--muted);touch-action:manipulation}
.theme-toggle[hidden]{display:none}
.theme-toggle svg{position:relative;z-index:1;width:16px;height:16px;flex:none;stroke:currentColor;fill:none;stroke-width:1.6}
.theme-toggle::before{content:"";position:absolute;left:5px;top:5px;width:32px;height:32px;border-radius:50%;background:#e8e3db;box-shadow:0 1px 3px #00000012;transition:transform 400ms cubic-bezier(.22,.61,.36,1),background-color 400ms ease}
.theme-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.theme-toggle:hover{border-color:var(--blue)}
:root[data-theme="dark"] .theme-toggle::before{transform:translateX(32px);background:#484b44}
:root[data-theme="dark"] .theme-toggle{color:var(--ink)}
:root[data-theme="dark"] .topbar,:root[data-theme="dark"] .blue-section,:root[data-theme="dark"] .about-form-cta{background:#30444e;color:var(--ink)}
:root[data-theme="dark"] .blue-section>.container>.section-head p,:root[data-theme="dark"] .about-form-cta p{color:#c8d2d5}
:root[data-theme="dark"] .blue-section .eyebrow,:root[data-theme="dark"] .about-form-cta .eyebrow{color:#d4a38d}
:root[data-theme="dark"] .button{background:#7394a5;color:#171f23}
:root[data-theme="dark"] .button:hover{background:#8ba8b7}
:root[data-theme="dark"] .button-outline{background:transparent;border-color:#72786d;color:var(--ink)}
:root[data-theme="dark"] .button-outline:hover{background:#383c35}
:root[data-theme="dark"] .button-call{background:#7394a5;color:#171f23}
:root[data-theme="dark"] .cta,:root[data-theme="dark"] .guide-cta{background:#32302b}
:root[data-theme="dark"] .about-us{background:#292d28}
:root[data-theme="dark"] .mini-card{background:var(--paper)}
:root[data-theme="dark"] .illustration-circle{background:#424b40}
:root[data-theme="dark"] .learning-card:nth-child(2) .learning-visual{background:#403831}
:root[data-theme="dark"] #learning .learning-card:nth-child(4) .learning-visual{background:#393b33}
:root[data-theme="dark"] .form-grid input,:root[data-theme="dark"] .form-grid select,:root[data-theme="dark"] .consent-row,:root[data-theme="dark"] .state-dropdown{background:#30322f;border-color:#62665c;color:var(--ink)}
:root[data-theme="dark"] input::placeholder{color:#a6aaa0;opacity:1}
:root[data-theme="dark"] input[type="checkbox"]{accent-color:#7394a5}
:root[data-theme="dark"] .form-grid input:autofill{box-shadow:0 0 0 1000px #343e41 inset;color:var(--ink)}
:root[data-theme="dark"] .form-grid input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #343e41 inset;-webkit-text-fill-color:var(--ink);caret-color:var(--ink)}
:root[data-theme="dark"] .state-option:hover,:root[data-theme="dark"] .state-option[aria-selected="true"]{background:#3d4a4d}
:root[data-theme="dark"] .state-code{color:#b5c5cb}
:root[data-theme="dark"] .consent-row.field-error,:root[data-theme="dark"] .form-grid label.field-error input,:root[data-theme="dark"] .form-grid label.field-error select{border-color:#d89b8d;background:#41312d}
:root[data-theme="dark"] .form-grid label.field-error,:root[data-theme="dark"] .field-help{color:#efb4a6}
:root[data-theme="dark"] .consent-row.field-error:focus-within,:root[data-theme="dark"] .form-grid label.field-error:focus-within{outline-color:#d89b8d}
:root[data-theme="dark"] .menu-toggle{color:var(--ink)}
:root[data-theme="dark"] .skip-link{background:var(--paper);color:var(--ink)}
:root[data-theme="dark"] .navigation>.brand{background:transparent;box-shadow:none}
:root[data-theme="dark"] .navigation>.brand img{filter:none}
:root[data-theme="dark"] .footer-brand{padding:8px}
:root[data-theme="dark"] footer{background:#20221f;color:var(--ink)}
:root[data-theme="dark"] footer p,:root[data-theme="dark"] footer span{color:var(--muted)}
/* Only site-owned elements transition; third-party consent UI stays untouched. */
.theme-transition body,.theme-transition .site-header,.theme-transition .nav-links,.theme-transition .topbar,.theme-transition main,.theme-transition section,.theme-transition footer,.theme-transition .card,.theme-transition .learning-card,.theme-transition .learning-visual,.theme-transition .contact-panel,.theme-transition .consent-row,.theme-transition .form-grid input,.theme-transition .form-grid select,.theme-transition .state-dropdown,.theme-transition .office-panel,.theme-transition .office-map-wrap,.theme-transition .office-option,.theme-transition .office-image-caption,.theme-transition .about-hours,.theme-transition .about-form-cta,.theme-transition .guide-aside,.theme-transition .guide-extra-card,.theme-transition .next-steps-card,.theme-transition .request-notice,.theme-transition .hero-start,.theme-transition .theme-toggle{transition:background-color 400ms ease,color 400ms ease,border-color 400ms ease}
.theme-transition .button{transition:background-color 400ms ease,color 400ms ease,border-color 400ms ease,transform .2s}
@media(max-width:1150px) and (min-width:851px){.navigation{gap:12px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.nav-links{gap:14px}}
@media(max-width:850px){.theme-toggle{margin-left:0}.navigation{gap:12px}}
@media(max-width:380px){.navigation>.brand img{width:160px}.navigation{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.theme-transition body,.theme-transition .site-header,.theme-transition .nav-links,.theme-transition .topbar,.theme-transition main,.theme-transition section,.theme-transition footer,.theme-transition .card,.theme-transition .learning-card,.theme-transition .learning-visual,.theme-transition .contact-panel,.theme-transition .consent-row,.theme-transition .form-grid input,.theme-transition .form-grid select,.theme-transition .state-dropdown,.theme-transition .office-panel,.theme-transition .office-map-wrap,.theme-transition .office-option,.theme-transition .office-image-caption,.theme-transition .about-hours,.theme-transition .about-form-cta,.theme-transition .guide-aside,.theme-transition .guide-extra-card,.theme-transition .next-steps-card,.theme-transition .request-notice,.theme-transition .hero-start,.theme-transition .button,.theme-transition .theme-toggle,.theme-toggle::before{transition:none}}

.theme-transition main p,.theme-transition main h1,.theme-transition main h2,.theme-transition main h3,.theme-transition main a,.theme-transition .nav-links a,.theme-transition .eyebrow{transition:color 400ms ease}
@media(prefers-reduced-motion:reduce){.theme-transition main p,.theme-transition main h1,.theme-transition main h2,.theme-transition main h3,.theme-transition main a,.theme-transition .nav-links a,.theme-transition .eyebrow{transition:none}}

/* The theme control belongs to the utility bar, at the viewport's right edge. */
.topbar{position:relative;min-height:48px}
.topbar-inner{min-height:48px;align-items:center;padding-top:10px;padding-bottom:10px}
.topbar>.theme-toggle{position:absolute;top:2px;right:14px;margin:0;background:#ffffff0d;border-color:#ffffff35;color:#f4f0e8}
.topbar>.theme-toggle::before{background:#ffffff26;box-shadow:none}
:root[data-theme="dark"] .topbar>.theme-toggle::before{background:#ffffff1f}
.topbar>.theme-toggle:hover{border-color:#d4b8a1}
.topbar>.theme-toggle:focus-visible{outline-color:#f4f0e8}
@media(max-width:1390px){.topbar-inner{width:auto;margin-left:20px;margin-right:108px;gap:12px}}
@media(max-width:850px){.topbar-inner{align-items:flex-start;justify-content:center;flex-direction:column;gap:0;padding-top:7px;padding-bottom:7px;font-size:12px}.topbar>.theme-toggle{top:6px;right:12px}}

/* A little clay warmth and sage color in the dark inquiry form. */
:root[data-theme="dark"] .contact-panel{background:#352e29;border-color:#6a5447;box-shadow:0 10px 36px #15181320}
:root[data-theme="dark"] .contact-panel h3{color:#dbb39d}
:root[data-theme="dark"] .contact-panel .form-grid input,:root[data-theme="dark"] .contact-panel .form-grid select{background:#30372e;border-color:#65705b;color:#eee9df}
:root[data-theme="dark"] .contact-panel .form-grid input:focus,:root[data-theme="dark"] .contact-panel .form-grid select:focus{outline-color:#c7927b}
:root[data-theme="dark"] .contact-panel .form-grid input:autofill{box-shadow:0 0 0 1000px #30372e inset;color:#eee9df}
:root[data-theme="dark"] .contact-panel .form-grid input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #30372e inset;-webkit-text-fill-color:#eee9df}
:root[data-theme="dark"] .contact-panel .consent-row{background:#333a30;border-color:#59664f}
:root[data-theme="dark"] .contact-panel .consent-row.field-error{background:#41312d;border-color:#d89b8d}
:root[data-theme="dark"] .contact-panel .form-grid label.field-error input,:root[data-theme="dark"] .contact-panel .form-grid label.field-error select{background:#41312d;border-color:#d89b8d}
:root[data-theme="dark"] .contact-panel .consent-copy{border-top-color:#6a5447}
:root[data-theme="dark"] .contact-panel .form-hint,:root[data-theme="dark"] .contact-panel small{color:#bbc5b0}
:root[data-theme="dark"] .contact-panel input[type="checkbox"]{accent-color:#a8b3a2}
:root[data-theme="dark"] .contact-panel .state-dropdown{background:#30372e;border-color:#65705b}
:root[data-theme="dark"] .contact-panel .state-option:hover,:root[data-theme="dark"] .contact-panel .state-option[aria-selected="true"]{background:#47503e}
:root[data-theme="dark"] .contact-panel .state-code{color:#c1cdb4}
:root[data-theme="dark"] .contact-panel .button{background:#a8b3a2;color:#20271e}
:root[data-theme="dark"] .contact-panel .button:hover{background:#bcc6b5}
:root[data-theme="dark"] .contact-panel .consent-copy a,:root[data-theme="dark"] .contact-panel .consent-row a,:root[data-theme="dark"] .contact-panel .consent-call a,:root[data-theme="dark"] .contact-panel .consent-requirement a{color:#dfb29b}

/* Compact utility control, with a larger invisible pointer target. */
.topbar>.theme-toggle{width:48px;height:26px;top:11px;right:14px;padding:5px;gap:9px;border-radius:15px}
.topbar>.theme-toggle svg{width:12px;height:12px;stroke-width:1.5}
.topbar>.theme-toggle::before{width:20px;height:20px;top:2px;left:2px}
.topbar>.theme-toggle::after{content:"";position:absolute;inset:-9px -2px;border-radius:20px}
:root[data-theme="dark"] .topbar>.theme-toggle::before{transform:translateX(22px)}
@media(max-width:1390px){.topbar-inner{margin-right:78px}}
@media(max-width:850px){.topbar>.theme-toggle{top:11px;right:12px}}

/* Rich taupe form surfaces, with restrained warm highlights. */
:root[data-theme="dark"] .contact-panel{background:#443b35;border-color:#7c6a5b;box-shadow:0 12px 36px #17141024}
:root[data-theme="dark"] .contact-panel h3{color:#ead8c7}
:root[data-theme="dark"] .contact-panel .form-grid input,:root[data-theme="dark"] .contact-panel .form-grid select{background:#352f2b;border-color:#8e7b6a;color:#f1e9df}
:root[data-theme="dark"] .contact-panel .form-grid input:focus,:root[data-theme="dark"] .contact-panel .form-grid select:focus{outline-color:#dec0a5}
:root[data-theme="dark"] .contact-panel .form-grid input:autofill{box-shadow:0 0 0 1000px #352f2b inset;color:#f1e9df}
:root[data-theme="dark"] .contact-panel .form-grid input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #352f2b inset;-webkit-text-fill-color:#f1e9df}
:root[data-theme="dark"] .contact-panel .consent-row{background:#3c3530;border-color:#807061}
:root[data-theme="dark"] .contact-panel .consent-copy{border-top-color:#817062}
:root[data-theme="dark"] .contact-panel .form-hint,:root[data-theme="dark"] .contact-panel small{color:#d2c5b8}
:root[data-theme="dark"] .contact-panel .state-dropdown{background:#352f2b;border-color:#8e7b6a}
:root[data-theme="dark"] .contact-panel .state-option:hover,:root[data-theme="dark"] .contact-panel .state-option[aria-selected="true"]{background:#5b4e43}
:root[data-theme="dark"] .contact-panel .state-code{color:#d9c9b8}
:root[data-theme="dark"] .contact-panel .button{background:#c5ab91;color:#28211b}
:root[data-theme="dark"] .contact-panel .button:hover{background:#d6bda4}
:root[data-theme="dark"] .contact-panel .consent-row.field-error{background:#41312d;border-color:#d89b8d}
:root[data-theme="dark"] .contact-panel .form-grid label.field-error input,:root[data-theme="dark"] .contact-panel .form-grid label.field-error select{background:#41312d;border-color:#d89b8d}
