/* 8.16: lighter charcoal theme and equal, centered header contact controls. */
html:not([data-theme="light"]){
  --bg:#171e19;
  --panel:#242e26;
  --surface-raised:#2d3a2f;
  --field:#1c261f;
  --line:#46564a;
  --text:#f3f6ef;
  --muted:#bbc7b7;
  --acid:#c3ff5e;
  --accent-ink:#14200d;
}
html:not([data-theme="light"]) :is(.hero-intro,.section-copy,.plan-card li,.industries span,.case-description,.legal-page p,.showcase-caption){color:var(--muted)}
html:not([data-theme="light"]) :is(.service-card,.plan-card,.solution-card,.data-offer,.location-card,.retouch-styles-grid article,.retouch-order-panel,.gallery-empty,.hero-showcase,.web-console,.contact-choice,.ai-scenarios button,.promotion-channel,.promotion-plan,.promotion-report-grid article){background:var(--panel);border-color:var(--line)}
html:not([data-theme="light"]) :is(.plan-card.featured,.contact,.data-console,.seo-gift){background:linear-gradient(125deg,#2c3a28,#202b24);border-color:var(--line)}
html:not([data-theme="light"]) :is(.services-submenu,.portfolio-filters button,.ai-button,.social-icon,.satellite,.eco-pipeline span){background:var(--panel);border-color:var(--line)}
html:not([data-theme="light"]) .portfolio-filters button[aria-pressed="true"]{background:var(--acid);color:var(--accent-ink);border-color:var(--acid)}
html:not([data-theme="light"]) :is(.services-submenu a:hover,.contact-choice:hover,.social-icon:hover){background:var(--surface-raised)}
html:not([data-theme="light"]) :is(form input:not([type="checkbox"]):not([type="radio"]),form textarea,form select,#draft){background-color:var(--field);color:var(--text);border-color:var(--line)}
html:not([data-theme="light"]) :is(input,textarea)::placeholder{color:#a5b29f}
html:not([data-theme="light"]) :is(dialog,.image-viewer .modal-close,.image-viewer #modal-body h2){background:var(--panel);color:var(--text);border-color:var(--line)}
html:not([data-theme="light"]) :is(.ai-message,.data-table th,.browser-bar){background:var(--surface-raised)}
html:not([data-theme="light"]) .ai-message.user{background:#34482a}
html:not([data-theme="light"]) :is(.showcase-stage,.showcase-slide,.showcase-slide img,.case-cover,.case-cover img,.solution-card img,.solution-preview,.retouch-style-preview){background-color:#202a23}
html:not([data-theme="light"]) #work.selected-projects{background:radial-gradient(ellipse at 80% 0,#53683e22,transparent 65%),repeating-linear-gradient(30deg,transparent 0 38px,#c3ff5e06 39px 40px),#1d291f}
html:not([data-theme="light"]) .header{background:rgba(22,31,25,.94);border-bottom-color:#586c4b66}
html:not([data-theme="light"]) .ecosystem{background-color:#1b251e;--bg:#1b251e;--muted:#c4cebd}
html:not([data-theme="light"]) .ecosystem::after{background:linear-gradient(90deg,#1b251ef5 0%,#1b251edc 32%,#1b251e40 64%,#1b251e0a 100%)}
html:not([data-theme="light"]) .website-presentation .website-illustrated-cta{--bg:#1a241d;--muted:#c7d1c0;background-color:var(--bg);background-image:linear-gradient(90deg,#1a241deb 0%,#1a241dc9 47%,#1a241d55 100%),var(--website-cta-art,url('/assets/illustrations/web-banner-option-1.webp'))}
html:not([data-theme="light"]) .industry-page .ip-hero{background-color:#1b251e}
html:not([data-theme="light"]) .industry-page .ip-hero::after{background:linear-gradient(90deg,#1b251ef5,#1b251ed1 29%,#1b251e33 62%,transparent)}
html:not([data-theme="light"]) .google-reviews{--gr-surface:var(--panel);--gr-ink:var(--text);--gr-muted:var(--muted);--gr-border:var(--line)}
html:not([data-theme="light"]) *{scrollbar-color:var(--acid) var(--bg)}
html:not([data-theme="light"]) ::-webkit-scrollbar-track{background:var(--bg)}
html:not([data-theme="light"]) ::-webkit-scrollbar-thumb{background:var(--acid);border-color:var(--bg)}

/* A shared fixed-size box prevents shrink and removes button padding/baseline drift. */
.header{--header-contact-size:44px;--header-contact-glyph:24px}
.header :is(.phone-menu,.header-telegram){
  box-sizing:border-box;
  flex:0 0 var(--header-contact-size);
  width:var(--header-contact-size);
  height:var(--header-contact-size);
  min-width:var(--header-contact-size);
  min-height:var(--header-contact-size);
  padding:0;
  margin:0;
  border:1px solid #57674a;
  border-radius:50%;
  background:#253320;
  color:#c3ff5e;
  line-height:0;
  align-items:center;
  justify-content:center;
  place-items:center;
  vertical-align:middle;
  touch-action:manipulation;
}
.header .header-telegram{display:inline-grid}
.header .phone-menu{display:none}
html .header .social-icon.header-telegram{background:#253320;border-color:#57674a;color:#c3ff5e}
.header :is(.phone-menu,.header-telegram) svg.brand-icon,
.header .header-telegram .messenger-glyph{
  display:block;
  width:var(--header-contact-glyph);
  height:var(--header-contact-glyph);
  min-width:var(--header-contact-glyph);
  max-width:none;
  margin:0;
  padding:0;
  transform:none;
  vertical-align:middle;
}
.header :is(.phone-menu,.header-telegram):hover,
html .header .social-icon.header-telegram:hover{background:#35472a;border-color:#c3ff5e}
.header :is(.phone-menu,.header-telegram):focus-visible{outline:2px solid #c3ff5e;outline-offset:4px}
@media(max-width:900px){
  .header .phone-menu{display:inline-grid}
  html:not([data-theme="light"]) .header nav{background:rgba(22,31,25,.98)}
  html:not([data-theme="light"]) .ecosystem::after{background:linear-gradient(90deg,#1b251ef2,#1b251eb8 55%,#1b251e55)}
}
@media(max-width:600px){.header-right{align-items:center;gap:8px}}
@media(forced-colors:active){.header :is(.phone-menu,.header-telegram){border-color:ButtonText;background:Canvas;color:LinkText}}

/* Keep all header controls inside narrow 320-380px screens. */
@media(max-width:380px){
 .hero-copy h1{font-size:clamp(34px,10vw,38px)}
 .header .header-main{padding-inline:12px;gap:8px}
 .header .brand{gap:0;flex:0 0 auto}
 .header .brand>span{display:none}
 .header .brand b{font-size:28px}
 .header .header-right{gap:6px;min-width:0}
 .header .language{font-size:11px}
 .header .menu-button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;line-height:0}
}
