/* Shared appearance controls; the existing charcoal theme remains the default. */
:root{--control-bg:#17191b66;--control-hover:#ffffff0c;--control-border:#d4af3766}
.brand-logo-light{display:none}
.header-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto;gap:20px;padding-block:14px}
.brand{grid-column:1;grid-row:1}
.header-controls{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;flex-shrink:0;gap:8px;min-width:0;min-height:44px}
.main-nav{grid-column:2;grid-row:1;justify-self:end;gap:24px;padding:0}
.nav-team{gap:12px}
.main-nav>a,.nav-team>a{white-space:nowrap}
.main-nav>.nav-contact{padding-block:8px}
.language-switch,.theme-switch{display:inline-flex;flex-shrink:0;align-items:center;width:49px;height:22px;gap:1px;padding:1px;border:1px solid var(--control-border);border-radius:14px;background:var(--control-bg)}
.theme-switch[hidden]{display:none}
.language-option,.theme-option{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:1;min-width:0;min-height:0;height:18px;padding:0;border-radius:11px;color:var(--muted);font-size:10px;font-weight:600;line-height:1;letter-spacing:0}
/* Keep the small visual pills comfortable to click and tap vertically. */
.language-option::after,.theme-option::after{content:"";position:absolute;inset:-13px 0}
.theme-option{border:0;background:transparent;cursor:pointer}
.theme-option svg{display:block;width:12px;height:12px;flex-shrink:0}
.language-option:hover,.theme-option:hover{background:var(--control-hover);color:var(--ink)}
.language-option[aria-current="page"],.theme-option[aria-pressed="true"]{background:var(--gold);color:#151719}
.theme-option:focus-visible{outline-offset:3px}
html{scroll-padding-top:135px}

/* White surfaces, charcoal text, and a deeper gold for readable light-theme accents. */
:root[data-theme="light"]{color-scheme:light;--bg:#ffffff;--surface:#f3f4f1;--ink:#202528;--muted:#535b60;--gold-light:#79600e;--line:#d9ddda;--control-bg:#ffffffb3;--control-hover:#242b3009;--control-border:#a98c3c80}
[data-theme="light"] .brand-logo-dark{display:none}
[data-theme="light"] .brand-logo-light{display:block}
[data-theme="light"] .site-header{background:#fffffff7;border-bottom-color:var(--line)}
[data-theme="light"] .hero:before{background:url("assets/etched-charcoal.png") center/cover;opacity:.035}
[data-theme="light"] .hero-category{color:var(--gold-light)}
[data-theme="light"] .contact{background:#f3f4f1}
[data-theme="light"] .site-footer:before{opacity:.025}
[data-theme="light"] .button-gold:hover{background:#e7ca76}
[data-theme="light"] .project-showcase{background:#f7f8f5}
[data-theme="light"] .project-card{background:#ffffff}
[data-theme="light"] .case-workflow .value-driver{color:#705b1a}
[data-theme="light"] .roi-field input{background:#ffffff;border-color:#8d979b}
[data-theme="light"] .roi-field input:invalid{border-color:#b1382e}
[data-theme="light"] .roi-error{color:#a32920}
[data-theme="light"] .case-cta{background:#f0f2ee}
@supports ((backdrop-filter:blur(14px)) or (-webkit-backdrop-filter:blur(14px))){
  [data-theme="light"] .site-header{background:rgba(255,255,255,.78)}
}

/* Keep preferences in the header, separate from the collapsible navigation. */
@media(min-width:1101px) and (max-width:1200px){.main-nav{gap:16px}.header-inner{column-gap:22px}}
@media(max-width:1100px){
  .header-inner{grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:auto;gap:0 18px;min-height:100px;padding-block:12px}
  .brand{grid-column:1;grid-row:1}
  .header-controls{grid-column:2;grid-row:1}
  .menu-toggle{grid-column:3;grid-row:1;justify-self:end}
  .main-nav{grid-column:1 / -1;grid-row:2;justify-self:stretch;width:100%}
  .main-nav>.nav-contact{padding-block:11px}
  html{scroll-padding-top:120px}
}
@media(max-width:600px){
  .header-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:44px auto;gap:8px 16px}
  .brand{grid-row:1 / 3}
  .header-controls{grid-column:2;grid-row:1}
  .menu-toggle{grid-column:2;grid-row:2}
  .main-nav{grid-row:3}
  .js .main-nav.is-open{padding-top:2px}
  .language-switch,.theme-switch{height:24px}
  .language-option,.theme-option{height:20px}
  .language-option::after,.theme-option::after{inset-block:-12px}
  html{scroll-padding-top:142px}
}
