/* Optional theme, scoped to the prototype. Light composition remains unchanged. */
.header .brand .theme-logo-dark{display:none}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:88px;min-height:44px;padding:8px 13px;border:1px solid #87968b;border-radius:12px;background:#f1f4f1;color:#27382d;font:650 12px Manrope,sans-serif;flex-shrink:0;grid-column:4;grid-row:2;justify-self:end;transition:background-color 160ms,border-color 160ms}
.header__badges{padding-right:112px}
.theme-toggle svg{width:19px;height:19px;stroke-width:1.7;fill:none;flex:none}
.theme-toggle__sun{display:none}
.theme-toggle:hover{background:#e2e9e3}.theme-toggle:focus-visible{outline:2px solid #52665a;outline-offset:3px}
@media(min-width:761px) and (max-width:1200px){.theme-toggle{grid-column:3;grid-row:3}}
@media(max-width:760px){.header__badges{padding-right:0}.reference-nav{padding-right:108px}.theme-toggle{grid-column:2;grid-row:4;align-self:center;margin-block:4px}.theme-toggle span{display:inline}}
:root[data-ui-theme=dark]{color-scheme:dark;--ink:#f0f3ef;--muted:#b9c3bc;--paper:#191919;--line:#465149;--blue:#262b27;--green:#12c143}
html[data-ui-theme=dark] body{background:#191919;color:#f0f3ef}
html[data-ui-theme=dark] :is(.header,.home-hero){background:#191919;color:#f0f3ef}
html[data-ui-theme=dark] .header{border-bottom:1px solid #323932}
html[data-ui-theme=dark] .header .brand .theme-logo-light{display:none}
html[data-ui-theme=dark] .header .brand .theme-logo-dark{display:block}
html[data-ui-theme=dark] .theme-toggle{background:#2a302b;border-color:#465149;color:#eaf0e9}
html[data-ui-theme=dark] .theme-toggle__moon{display:none}
html[data-ui-theme=dark] .theme-toggle__sun{display:block}
html[data-ui-theme=dark] .theme-toggle:hover{background:#39423b}
html[data-ui-theme=dark] .demo-note{background:#282c29;color:#b9c3bc}
html[data-ui-theme=dark] :is(.header .phone,.reference-nav,.header .city-selector button,.home-hero h1,.home-hero__offer>strong){color:#f0f3ef}
html[data-ui-theme=dark] :is(.header__promise,.header__promise>strong,.header__badges small,.header__badges strong,.home-hero__copy>.eyebrow,.home-hero__offer>p,.home-hero__offer>.demo-price-context,.home-hero__offer ul,.home-hero__services-link){color:#b9c3bc}
html[data-ui-theme=dark] .home-hero .lead{color:#e0e8e1}
html[data-ui-theme=dark] .home-hero h1 .reference-hero__accent{color:#12c143}
html[data-ui-theme=dark] .reference-hero__media:before{background:linear-gradient(90deg,#191919,transparent 22%)}
html[data-ui-theme=dark] :is(.button--outline,.button--secondary,.home-hero .actions [data-cta-id="home-hero-request"],.home-hero .actions a[href="#op-calculator"]){background:#2b332d;color:#f0f3ef;border:1px solid #58665c}
html[data-ui-theme=dark] :is(.header .header__nav,.city-modal__dialog,.services-mega__dialog,.prototype-popup,.lead-modal__dialog,.letter-dialog,.op-work-dialog){background:#242a25!important;color:#f0f3ef;border-color:#4a574d;box-shadow:0 22px 80px #0008}
html[data-ui-theme=dark] :is(.header .header__nav a,.header .header__all-services){color:#f0f3ef!important}
html[data-ui-theme=dark] :is(.header .header__nav a:hover,.header .header__all-services,.prototype-popup__close,.lead-modal__close,.city-modal__close,.services-mega__close){background:#354038!important;color:#f0f3ef}
html[data-ui-theme=dark] :is(.home-catalog,.home-reliability,.op-clients){background:#222824}
html[data-ui-theme=dark] :is(.home-steps,#faq,.op-calc,.request-cta,.recommendations){background:#191d1a}
html[data-ui-theme=dark] :is(.catalog-group__business,.catalog-group__private){background:transparent}
html[data-ui-theme=dark] :is(.catalog-heading h3,.service-card strong,.catalog-compact strong,.feature-card--proof strong,.home-reliability h2,.home-steps h2,#faq h2,.op-calc h2,.op-clients h2,.recommendations h2,.prototype-popup h2,.lead-modal__dialog h2){color:#f0f3ef}
html[data-ui-theme=dark] :is(.catalog-masthead__copy>.city-note,.catalog-heading p,.service-card>span,.catalog-compact a,.home-reliability .eyebrow,.recommendations__heading p,.recommendation-card__body p,.recommendation-card__body small,.lead-modal__intro,.request-service-hint,.select-value-full,.fineprint,.op-phone-example){color:#b9c3bc}
html[data-ui-theme=dark] :is(.service-card .op-service-icon,.feature-card__icon){background:#324b39;color:#77df92}
html[data-ui-theme=dark] .service-card:hover strong{color:#77df92}
html[data-ui-theme=dark] :is(.audience-switch,.compact-flow-nav){background:#354039}
html[data-ui-theme=dark] :is(.audience-switch button,.compact-flow-nav button){color:#d3ded6}
html[data-ui-theme=dark] .audience-switch button[aria-selected=true]{color:#102a19}
html[data-ui-theme=dark] .compact-flow-nav button[aria-current=step]{background:#bdd7c2;color:#18281c}
html[data-ui-theme=dark] :is(.feature-grid--steps .feature-card,.faq-list details,.faq-list__more,.op-clients__group,.recommendation-card,.compact-service-category,.prototype-popup--services .services-mega__group){background:#2b332d;color:#f0f3ef;border-color:#465149}
html[data-ui-theme=dark] :is(.step-diamond,.compact-comment>summary,.letter-open,.op-trust-map){color:#77df92}
html[data-ui-theme=dark] :is(.faq-list summary,.faq-list details p,.faq-list__more summary,.recommendation-card__body strong,.op-clients__group h3,.op-clients__name){color:#f0f3ef}
html[data-ui-theme=dark] :is(.op-clients__detail,.rail-pagination__label){color:#b9c3bc}
/* Client artwork and signed letters are never inverted or recoloured. */
html[data-ui-theme=dark] .op-clients__mark{background:#fff;border-radius:12px;padding:9px}
html[data-ui-theme=dark] .recommendation-card__preview{background:#fff;color:#243329}
html[data-ui-theme=dark] :is(.op-clients__mark img,.recommendation-card__preview img){filter:none}
html[data-ui-theme=dark] .recommendation-card__preview figcaption{color:#243329;background:#edf1ed}
html[data-ui-theme=dark] .op-calc__shell{background:#2b332d}
html[data-ui-theme=dark] :is(.op-calc__shell>.op-calc__toggle,.op-calc__shell[open]>.op-calc__toggle){background:#303d34;color:#f0f3ef}
html[data-ui-theme=dark] :is(.op-calc__result,.prototype-popup--calculator .op-calc__result,.op-calc-request){background:#314638;color:#f0f3ef}
html[data-ui-theme=dark] :is(.op-calc__amount,.op-calc__caption,.op-calc__note,.op-calc__inputs label,.op-calc__result p){color:#e1ebe4}
html[data-ui-theme=dark] :is(.form input:not([type=radio]):not([type=checkbox]),.form select,.form textarea,.op-calc input,.op-calc select,.request-service-field select){background:#191f1b;color:#f0f3ef;border-color:#69766c}
html[data-ui-theme=dark] .form input::placeholder,html[data-ui-theme=dark] .form textarea::placeholder,html[data-ui-theme=dark] .request-service-field select:invalid{color:#b4c0b7;opacity:1}
html[data-ui-theme=dark] .request-service-field select:disabled{background:#37433a;color:#dce6df}
html[data-ui-theme=dark] .request-service-field select:focus-visible{outline-color:#afc0b3;border-color:#afc0b3}
html[data-ui-theme=dark] :is(.contact-method,.lead-modal__dialog .contact-method){background:#2b342d;color:#f0f3ef;border-color:#65776a}
html[data-ui-theme=dark] :is(.contact-method:has(input:checked),.lead-modal__dialog .contact-method:has(input:checked)){background:#304f3a;border-color:#79d893}
html[data-ui-theme=dark] .contact-method__icon{color:#9ee5af}
html[data-ui-theme=dark] .phone-error{color:#ffa5a5}
html[data-ui-theme=dark] :is(.prototype-popup--services .services-mega__group a,.services-mega__group h3,.city-modal [data-city-option]){color:#f0f3ef;border-color:#536157}
html[data-ui-theme=dark] :is(.prototype-popup--services .services-mega__group a:hover,.city-modal [aria-selected=true]){background:#354b3c;color:#9eebb1}
html[data-ui-theme=dark] :is(.compact-flow-back,.conversion-dock,.prototype-popup__status){background:#303b33;color:#f0f3ef}
html[data-ui-theme=dark] .conversion-dock__request{color:#102a18}
html[data-ui-theme=dark] .footer{background:#141815}
html[data-ui-theme=dark] :is(a,button,summary,input,select,textarea):focus-visible{outline-color:#9fdbaf}
html[data-ui-theme=dark] .theme-toggle:focus-visible{outline-color:#9fdbaf}
html[data-ui-theme=dark] .home-hero .actions a.hero-call-primary{background:#12c143;color:#102a18;border-color:#12c143}
html[data-ui-theme=dark] .home-hero .actions a.hero-call-primary:hover{background:#25d255}
html[data-ui-theme=dark] .skip-link{background:#e9f0e9;color:#19251d}
html[data-ui-theme=dark] :is(.op-calc__hint,.op-calc__terms summary,.compact-service-category small){color:#b9c3bc}
html[data-ui-theme=dark] .prototype-popup--services .services-mega__group>div{background:#222a24}
@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none}}
