/* Light palette retains the graphite / silver / blue identity. */
:root[data-theme="light"] {
    color-scheme: light;
    --ink: #142333;
    --muted: #536477;
    --blue: #0875bd;
    --blue-dark: #0864a3;
    --sky: #e5f2fd;
    --line: #d5dfe9;
    --paper: #ffffff;
    --soft: #f3f7fb;
    --navy: #0b1724;
    --green: #1374a5;
    --shadow: 0 20px 60px #15395712;
}
:root[data-theme="light"] body { color: var(--ink); background: var(--paper); }
:root[data-theme="light"] .site-header { background: #fffffff2; }
:root[data-theme="light"] .brand .brand-name { color: #182d40; }
:root[data-theme="light"] .brand-wordmark small { color: #546a7f; }
:root[data-theme="light"] .brand-logo { padding: 4px; border-radius: 10px; background: #142432; }
:root[data-theme="light"] .hero { background: radial-gradient(ellipse at 78% 26%,#c5e6ff88,transparent 52%),linear-gradient(120deg,#f3f7fc,#fff); }
:root[data-theme="light"] .hero::before { opacity: .45; }
:root[data-theme="light"] .hero h1 span { background-image: linear-gradient(100deg,#12639b,#087fbf); }
:root[data-theme="light"] .hero-signature p { color: #536e85; }
:root[data-theme="light"] .hero-signature > img { padding: 10px; border-radius: 16px; background: #142432; filter: none; }
:root[data-theme="light"] .hero-photo { border-color: #c4d4e1; }
:root[data-theme="light"] .hero-proof { background: #fff; border-color: var(--line); box-shadow: 0 12px 32px #183c5c17; }
:root[data-theme="light"] .trust-strip { background: #edf4fa; }
:root[data-theme="light"] :is(.task-card,.price-card,.case-feature,.check-card,.audience-card.ads,.contact-form,.chat-panel,.work-lightbox-dialog) { background: #fff; }
:root[data-theme="light"] :is(.btn-secondary,.menu-button,.works-arrow) { background: #fff; border-color: #bdcddb; }
:root[data-theme="light"] .price-note { color: #254b69; }
:root[data-theme="light"] #works { background: #f2f6fa; }
:root[data-theme="light"] .work-card { background: #fff; }
:root[data-theme="light"] :is(select,.quantity-input,input[type="text"],input[type="tel"],input[type="email"],textarea) { color: var(--ink); background: #fff; border-color: #b9c9d8; }
:root[data-theme="light"] :is(input,textarea)::placeholder { color: #65778a; }
:root[data-theme="light"] .mobile-cta { background: #fffffff5; }
:root[data-theme="light"] .chat-status.success { color: #197345; }
:root[data-theme="light"] .chat-status.error { color: #b02e3d; }
:root[data-theme="light"] .messenger-button.chat { color: #fff; }
:root[data-theme="light"] :focus-visible { outline-color: #0875bd; }
/* These contrasting panels remain graphite in both themes. */
:root[data-theme="light"] :is(.quality-panel,.audience-card.business,.contact-info,.calculator-controls,footer) {
    --ink: #f2f5f8;
    --muted: #aab7c5;
    --blue: #62bafa;
    --blue-dark: #8dcfff;
    --sky: #172a3a;
    --line: #354351;
}
:root[data-theme="light"] .calculator-controls :is(select,.quantity-input) { background: #10253a; color: #fff; border-color: #385069; }
:root[data-theme="light"] footer .brand .brand-name { color: #edf3f8; }
:root[data-theme="light"] footer .brand-wordmark small { color: #aab7c5; }

.theme-control { position: relative; display: inline-flex; flex: 0 0 auto; align-items: center; color: var(--ink); }
.theme-control select { width: 124px; min-height: 44px; padding: 10px 8px 10px 35px; border: 1px solid var(--line); border-radius: 12px; background: var(--soft); color: var(--ink); font: 600 14px/1.4 Manrope,Arial,sans-serif; cursor: pointer; }
.theme-control svg { position: absolute; left: 11px; width: 18px; height: 18px; pointer-events: none; }
.theme-control .theme-light, .theme-control .theme-dark { display: none; }
:root[data-theme-choice="light"] .theme-control .theme-auto,
:root[data-theme-choice="dark"] .theme-control .theme-auto { display: none; }
:root[data-theme-choice="light"] .theme-control .theme-light,
:root[data-theme-choice="dark"] .theme-control .theme-dark { display: block; }
.theme-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.nav-row { gap: 16px; }
.desktop-nav { gap: 16px; }
.nav-row > .btn.desktop-nav { margin-left: 0; }
.header-contacts .header-contact:first-child { display: none; }
.privacy-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.privacy-page { color: var(--ink,#f2f5f8); background: var(--paper,#101419); }
.privacy-page main { background: var(--privacy-surface,#19212a); border-color: var(--line,#2b3540); }
.privacy-page :is(p,li) { color: var(--muted,#b4c1cf); }
.privacy-page a { color: var(--blue,#83caff); }
:root[data-theme="light"] { --privacy-surface: #fff; }
:root[data-theme="dark"] .privacy-page { --ink:#f2f5f8; --paper:#101419; --soft:#151b22; --line:#2b3540; --muted:#b4c1cf; --blue:#83caff; }
@media (min-width:1021px) and (max-width:1170px) { .header-contacts { display: none; } }
@media (max-width:1020px) {
    .nav-row > .theme-control { margin-left: auto; }
    .menu-button { margin-left: 0; flex-shrink: 0; }
}
@media (max-width:760px) {
    .nav-row { gap: 10px; }
    .nav-row .theme-control select { width: 44px; padding: 0; appearance: none; color: transparent; }
    .nav-row .theme-control select option { color: var(--ink); background: var(--paper); font-size: 16px; }
    .nav-row .theme-control svg { left: 13px; }
    .privacy-toolbar { align-items: start; }
}
@media (max-width:360px) {
    .nav-row { gap: 7px; }
    .nav-row .brand { gap: 7px; }
    .nav-row .brand-logo { width: 32px; }
    .nav-row .brand-name { font-size: 16px; }
    .nav-row .brand-wordmark small { font-size: 8px; letter-spacing: .12em; }
    #works .works-head { gap: 8px; }
    #works h2 { font-size: 20px; }
    .works-controls { gap: 4px; }
    .works-count { min-width: 32px; font-size: 12px; }
}
