/* Appearance follows the visitor's local clock unless they choose Light or Dark. */
:root[data-theme=dark]{color-scheme:dark}
:root[data-theme=light]{color-scheme:light;--ink:#092737;--navy:#f3f7fa;--cyan:#007e99;--muted:#496371;--line:#133d5629;color:#092737;background:#f3f7fa}
.theme-choice{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:12px;color:inherit}
.theme-choice>span:first-child{font-size:20px;color:#007e99}
.theme-choice-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.theme-choice select{min-height:44px;padding:8px;border-radius:8px;border:1px solid #547080;background:transparent;color:inherit;cursor:pointer;font-size:12px;width:83px}
.theme-choice select option{background:#fff;color:#092737}
html[data-theme=dark] .header{background:#07131d;color:#eef4f8;border-color:#ffffff26}
html[data-theme=dark] .header nav{background:#07131d}
html[data-theme=dark] .menu-toggle{color:#eef4f8}
html[data-theme=dark] .theme-choice select option{background:#07131d;color:#eef4f8}
html[data-theme=dark] .theme-choice>span:first-child{color:#50c9e8}
html[data-theme=light] :is(.proof,.source-stats,.evidence-links,.manifesto,.legal-note){background:#e6f0f5;border-color:var(--line)}
html[data-theme=light] :is(.case-card,.complete-case,.leader-card,.case-stat){background:#fff;border-color:#b4c9d5}
html[data-theme=light] :is(.footer,.service-outcome){background:#e6f0f5;color:#173b4d}
html[data-theme=light] .page-lead{background:radial-gradient(ellipse at top right,#cdeaf3,transparent 70%)}
html[data-theme=light] .case-number{background:linear-gradient(130deg,#d4edf5,#edf6fa);color:#006f89}
html[data-theme=light] :is(.case-number span,.case-copy .eyebrow,.proof>span,.proof small,.source-stats span,.footer-bottom,.footer-top>div>.eyebrow,.legal-hero p,.legal-toc a,.legal-copy p,.legal-copy li,.service-detail li,.service-tagline,.service-outcome,.contact-note,.form-help){color:#496371}
html[data-theme=light] :is(.manifesto>p,.value-grid h3,.leader-card h3,.legal-copy strong,.case-narrative h3,form label,.contact-phone){color:#092737}
html[data-theme=light] :is(.number,.leader-card .leader-role,.outcomes dd,.legal-copy a,.cta>.eyebrow){color:#006f89}
html[data-theme=light] :is(.outcomes dt,.service-tags li){color:#395666}
html[data-theme=light] .leader-monogram{background:#d4edf5;color:#006f89;border-color:#99bfce}
html[data-theme=light] :is(.service-card:hover,.evidence-links nav a:hover){background:#d9edf5}
html[data-theme=light] .evidence-links nav a{background:#fff;border-color:#afc7d3}
html[data-theme=light] .button{background:#007e99;border-color:#007e99;color:#fff}
html[data-theme=light] .button:hover{background:#00657d}
html[data-theme=light] :is(.contact-grid input,.contact-grid textarea,.contact-grid select){background:#fff;color:#092737;border-color:#7895a5}
html[data-theme=light] .contact-grid :is(input,textarea)::placeholder{color:#526d7a}
/* Keep the original cinematic hero, artwork, video colors and player styling intact. */
html[data-theme=light] .hero{--cyan:#00b9ed;color:#eef4f8}
html[data-theme=light] .hero .button{background:#00b9ed;color:#001523;border-color:#00b9ed}
html[data-theme=light] .hero p{color:#d3dce4}
/* Inquiry and consent controls remain readable over either theme. */
html[data-theme=light] #tfmg-engagement #tg-chat{background:rgba(246,250,252,.98);color:#092737;color-scheme:light;border-color:#7397aa;text-shadow:none}
html[data-theme=light] #tfmg-engagement #tg-chat .tg-head{background:#e5f2f7;color:#092737}
html[data-theme=light] #tfmg-engagement #tg-chat :is(label,p,small){color:#294c5e;text-shadow:none}
html[data-theme=light] #tfmg-engagement #tg-chat :is(input:not([type=checkbox]),textarea,select){background:#fff;color:#092737;border-color:#6c8b9c;text-shadow:none}
html[data-theme=light] #tfmg-engagement #tg-chat :is(input,textarea)::placeholder{color:#526d7a}
html[data-theme=light] #tfmg-engagement #tg-chat select option{background:#fff;color:#092737}
html[data-theme=light] #tfmg-engagement #tg-chat :is(a,.tg-head small){color:#006c84}
html[data-theme=light] #tfmg-engagement #tg-chat button{color:#092737;text-shadow:none}
html[data-theme=light] #tfmg-engagement .tg-consent{background:#f6fafc;color:#092737;border-color:#7397aa}
html[data-theme=light] #tfmg-engagement .tg-consent :is(p,a){color:#294c5e}
html[data-theme=light] #tfmg-engagement .tg-consent button{background:#007e99;color:white}
@media(min-width:961px){.header nav{gap:18px}.header{gap:22px}}
@media(max-width:960px){.theme-choice{padding:10px 14px}.theme-choice-label{position:static;width:auto;height:auto;clip-path:none}.theme-choice select{margin-left:auto;width:130px}}
@media(forced-colors:active){.theme-choice select{border:1px solid ButtonText}.theme-choice>span:first-child{color:CanvasText}}

html[data-theme=light] .office-details address{color:#496371}
html[data-theme=light] .about-photo span{color:#eef4f8}
html[data-theme=light] .tfmg-powered-by>span{color:#496371!important}

/* Theme-specific wordmarks: white artwork with cyan accents blends into the dark header. */
.header .logo-image-dark{display:none}
html[data-theme=dark] .header .logo{background:transparent}
html[data-theme=dark] .header .logo-image-light{display:none}
html[data-theme=dark] .header .logo-image-dark{display:block;aspect-ratio:14/3;height:auto;object-fit:cover;mix-blend-mode:screen}
