/* Follow the user's system appearance before first paint; no theme script needed. */
:root{color-scheme:light dark;--studio-paper:#f5f2eb;--studio-ink:#24221f;--theme-muted:#625d55;--theme-surface:#fff;--theme-raised:#eae5db;--theme-border:#24221f40}
body{background:var(--studio-paper);color:var(--studio-ink)}
/* Photography and controls over it retain their intentional contrast in either mode. */
body[data-surface="selector"],.bx-hero,.bx-footer{color-scheme:dark}
.bx-form input,.bx-form textarea,.bx-form select,.contact-compose input,.contact-compose textarea,.contact-compose select{color-scheme:light}
@media screen and (prefers-color-scheme:dark){
 :root{--studio-paper:#171717;--studio-ink:#f3f0e9;--theme-muted:#c3bfb6;--theme-surface:#232323;--theme-raised:#2d2c29;--theme-border:#ffffff38}
 body,.bx,.brand-page,.contact-page,.concept-bar,.concept-footer,#design-notes,dialog{background:var(--studio-paper);color:var(--studio-ink)}
 .bx-header,.bx-section-nav,.bx-section,.brand-page-header,.brand-page-services,.contact-compose,.bx-workflow section{border-color:var(--theme-border)}
 .bx-header .bx-brand-lockup .brand-lockup,.price-hub .bx-header .brand-lockup,.brand-page-header .brand-lockup{filter:invert(1)}
 .bx-header .bx-brand-lockup{color:var(--studio-ink)}
 .bx .bx-fine,.bx-workflow section>span,.price-fit,.price-menu caption,.price-menu td:nth-child(3),.price-terms dd,.contact-location,.contact-compose p,.brand-page-hero p:not(.eyebrow),.brand-page-hero figcaption{color:var(--theme-muted)}
 .price-card{background:var(--theme-surface);border-color:var(--theme-border)}
 .price-premium{background:var(--theme-raised);border-top-color:var(--bx-accent)}
 .price-menu thead,.price-service-options>div{background:var(--theme-raised)}
 .price-menu th,.price-menu td,.price-service,.price-rate-strip,.brand-page-services h2{border-color:var(--theme-border)}
 .bx-button,.price-card>.bx-button,.price-hub-intro .bx-button,.bx-form .bx-button,.contact-compose button{background:#f3f0e9;color:#24221f!important;border-color:#f3f0e9}
 .bx-consult{color:#171717;color-scheme:light}
 .bx-consult .bx-fine{color:#333}
 .bx-consult .bx-button{background:#24221f;color:#fff!important;border-color:#24221f}
 .bx-form input,.bx-form textarea,.bx-form select,.contact-compose input,.contact-compose textarea,.contact-compose select{background:var(--theme-surface);color:var(--studio-ink);border-color:#a8a49d;color-scheme:dark}
 input::placeholder,textarea::placeholder{color:#aaa69f;opacity:1}
 .bx-form input:autofill,.contact-compose input:autofill{color-scheme:dark}
 .bx-empty{border-color:var(--bx-accent)}
 .brand-page-contact,.project-context,#purpose-result,.concierge-end{background:var(--theme-raised);color:var(--studio-ink)}
 .arrival-door{background:var(--studio-paper);border-color:var(--theme-border)}
 .contact-page :focus-visible,.brand-page :focus-visible{outline-color:#f3f0e9}
 .kinetic-statement p:not(.eyebrow),.elastic-intro>span:last-child,.elastic-summary .eyebrow,.project-context>.eyebrow{color:var(--theme-muted)}
 .kinetic-logo .brand-lockup,.kinetic-end .footer-brand{filter:invert(1)}
 .kinetic-heading,.kinetic-end{background-image:url('assets/brand/studio-halftone-white.svg')}
 .kinetic-end h2 em{color:var(--studio-ink)}
 .kinetic-project-nav a,.elastic-summary,.elastic-summary>a,.kinetic-header{border-color:var(--theme-border)}
 .concept-bar nav a,#design-notes p:not(.eyebrow),.demo-note{color:var(--theme-muted)}
 .concept-bar nav a[aria-current=page]{background:#f3f0e9;color:#24221f}
 dialog .dialog-primary{background:#f3f0e9;color:#24221f}
}
/* Always produce legible light-paper pricing printouts regardless of device theme. */
@media print{:root{color-scheme:light;--studio-paper:#fff;--studio-ink:#000;--theme-muted:#333}}
