/* Light theme for the New Year site. Loaded after component styles. */
:root { color-scheme: light; --bg:#ffffff; --bg-2:#f7f5f1; --text:#242724; --muted:#62665f; --line:#dedfd8; --neon:#a34e24; --neon-core:#a34e24; --neon-deep:#8d411c; --cream:#a34e24; --glow:0 4px 18px rgba(163,78,36,.14); }
body { background:#fff; color:var(--text); }
.slogan em, .hero-facts b, .about-facts b, .about-lead::first-line, .sum { color:var(--neon); text-shadow:none; }
.lead, .hero-facts span, .card p, .plan .for, .plan li, .about-main p, .quiz-cta span, .lead-sub, .consent, .step p, .field-row { color:var(--muted); }
.logo-sub { border-color:var(--line); text-shadow:none; }
.topbar, .bs-list, .mnav { background:rgba(255,255,255,.98); border-color:var(--line); box-shadow:0 12px 40px rgba(30,40,30,.08); }
.mnav a, .mnav-close, .menu-btn, .nav-toggle { color:var(--text); border-color:var(--line); }
.card, .about-card, .lead-panel, .q-card { background:#fff; border:1px solid var(--line); box-shadow:0 12px 36px rgba(35,42,30,.045); }
.card::before { background:linear-gradient(0deg,#fff,rgba(255,255,255,.94) 38%,rgba(255,255,255,.25)); }
.card .glow-in { display:none; }
.card .contour { opacity:.3; }
.plan.featured { background:#faf4eb; border-color:#d9b28e; }
.btn-primary, .q-card .btn-primary { background:#a34e24; color:#fff; border:1px solid #a34e24; text-shadow:none; box-shadow:0 6px 20px rgba(163,78,36,.14); }
.btn-primary:hover, .btn-primary:focus-visible { background:#873f1c; color:#fff; border-color:#873f1c; box-shadow:0 6px 24px rgba(163,78,36,.22); }
.btn-ghost, .chip span, .file-btn, .quick-chip, .pills li, .step-time { background:#fff; color:var(--text); border-color:#c5c8bd; text-shadow:none; box-shadow:none; }
.btn-ghost:hover, .chip input:checked + span, .quick-chip:hover { background:#faf0e4; color:#873f1c; border-color:#a34e24; }
.ny-deadline, .lead-calc { background:#faf2e7; border-color:#c18e5d; color:#744522; }
.ny-deadline span { color:#873f1c; }
.divider { background:#dedfd8; box-shadow:none; }
.quiz-cta { border-color:#c5b39c; }
.fld input, .opt { background:#fff; color:var(--text); border-color:#c5c8bd; }
.opt[aria-pressed="true"] { background:#faf0e4; border-color:#a34e24; box-shadow:none; }
.consent a, .file-btn, .step.on .step-dot { color:#873f1c; }
.consent input { accent-color:#a34e24; }
.to-top { background:#fff; color:#873f1c; border-color:#c5b39c; box-shadow:0 4px 20px rgba(30,40,30,.1); }
.q-progress { background:#e6e4de; }
.q-progress span { background:#a34e24; box-shadow:none; }
.lead-error { color:#ad3024; }
a:focus-visible, button:focus-visible { outline:2px solid #a34e24; outline-offset:4px; }
/* Photo comparison keeps readable captions over the original night images. */
.cta-hero { --text:#fff; --muted:#e6e2dc; color:#fff; }
.cta-hero .lead { color:#e6e2dc; }
.cta-hero .btn-ghost { background:rgba(255,255,255,.94); color:#242724; }
.ba-chip { color:#fff; }


.ny-examples { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--gap); margin-top:32px; }
.ny-example { margin:0; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:#fff; }
.ny-example img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.ny-example figcaption { padding:20px; font-weight:500; color:var(--text); }
.ny-gallery-note { color:var(--muted); margin-top:18px; }
@media(max-width:760px) { .ny-examples { grid-template-columns:1fr; } }

/* Keep text readable over the original dark service photography. */
#services .card:has(.card-bg) { color: #fff; }
#services .card:has(.card-bg) h3, #services .card:has(.card-bg) .card-link { color: #fff; }
#services .card:has(.card-bg) p { color: #e1e1dc; }
#services .card:has(.card-bg) .num { color: #ffe9c9; }

/* ===== New Year first screen: composition of neon.decorpiter.ru on a white page ===== */
.hero.ny-hero { display:block; min-height:0; padding:0 var(--gutter, clamp(16px,3.6vw,80px)); background:#fff; overflow:visible; }
.hero.ny-hero::before, .hero.ny-hero::after { content:none; }
.ny-hero > .nav { padding:22px 0; gap:28px; background:#fff; }
.ny-hero .logo-mark { filter:none; }
.ny-hero .logo-sub { color:#b55a30; }
.ny-hero .nav-links { gap:clamp(14px,1.5vw,30px); font-size:13px; color:#555953; }
.ny-hero .nav-links a:hover { color:#a34e24; }
.ny-hero .nav-phone .tel { color:#242724; font-size:15px; text-shadow:none; }
.ny-hero + .divider { display:none; }

.ny-stage { position:relative; isolation:isolate; display:flex; flex-direction:column; justify-content:space-between;
  min-height:clamp(520px, calc(100svh - 190px), 860px); border-radius:28px; overflow:hidden; background:#0b1018; color:#fff; }
.ny-stage .ny-scene-image { position:absolute; inset:0; z-index:-2; width:100%; height:100%; max-height:none; object-fit:cover; object-position:50% 38%; border-radius:0; transition:opacity .35s; }
.ny-stage .ny-scene-image.is-loading { opacity:.6; }
.ny-stage::before { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:linear-gradient(90deg, rgba(6,9,18,.82) 0%, rgba(6,9,18,.55) 38%, rgba(6,9,18,.08) 68%),
             linear-gradient(0deg, rgba(6,9,18,.78) 0%, rgba(6,9,18,0) 46%),
             linear-gradient(180deg, rgba(6,9,18,.45) 0%, rgba(6,9,18,0) 22%); }
.ny-stage-top { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:clamp(18px,2vw,32px); }
.ny-stage .ny-scene-caption { display:flex; align-items:center; gap:14px; margin:0; font-size:12px; color:rgba(255,255,255,.82); }
.ny-stage .ny-scene-index { padding-right:14px; border-right:1px solid rgba(255,255,255,.35); letter-spacing:.12em; color:#ffe9c9; }
.ny-scene-options { display:flex; gap:4px; padding:5px; border:1px solid rgba(255,255,255,.22); border-radius:999px; background:rgba(8,12,20,.55); backdrop-filter:blur(12px); }
.ny-scene-options[hidden] { display:none; }
.ny-scene-options button { display:flex; align-items:center; gap:8px; padding:10px 16px; border:0; border-radius:999px; color:#fff; background:transparent; cursor:pointer; font:500 12px/1 var(--body); transition:background .2s,color .2s; }
.ny-scene-options button[aria-pressed="true"] { color:#242724; background:#fff; }
.ny-dot { width:7px; height:7px; border-radius:50%; flex:none; }
.ny-dot-warm { background:#f0a64e; box-shadow:0 0 9px rgba(247,182,88,.7); }
.ny-dot-cool { background:#b9d3f2; box-shadow:0 0 9px rgba(185,211,242,.6); }

.ny-stage-body { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(240px,.8fr); align-items:end; gap:clamp(24px,5vw,96px); padding:0 clamp(20px,3.4vw,64px) clamp(28px,3.6vw,64px); }
.ny-stage .eyebrow { max-width:44ch; margin-bottom:clamp(14px,1.4vw,24px); color:#ffe9c9; font-size:clamp(10px,.8vw,13px); font-weight:600; letter-spacing:.14em; line-height:1.6; text-transform:uppercase; }
.ny-stage .slogan { color:#fff; font-size:clamp(30px,4vw,80px); line-height:1.02; text-shadow:0 2px 24px rgba(0,0,0,.45); }
.ny-stage .slogan em { font-style:normal; color:#ffe9c9; text-shadow:0 0 1px rgba(255,233,201,.7), 0 0 16px rgba(255,170,80,.45), 0 0 44px rgba(255,154,46,.25); }
.ny-stage .actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:clamp(22px,2.2vw,40px); }
.ny-stage .btn-ghost { background:rgba(255,255,255,.12); color:#fff; border-color:rgba(255,255,255,.5); backdrop-filter:blur(8px); }
.ny-stage .btn-ghost:hover { background:#fff; color:#242724; border-color:#fff; }
.ny-stage .lead { display:block; position:relative; right:auto; bottom:auto; max-width:none; margin:0; padding-left:18px; color:rgba(255,255,255,.88); font-size:clamp(14px,1.05vw,18px); line-height:1.6; text-shadow:0 1px 12px rgba(0,0,0,.6); }
.ny-stage .lead::before { content:""; position:absolute; left:0; top:.35em; bottom:.35em; width:2px; height:auto; border-radius:2px; background:#ffe9c9; box-shadow:0 0 10px rgba(255,170,80,.6); }

.ny-facts-row { display:grid; grid-template-columns:1.35fr 1fr 1fr 1fr; margin-top:14px; border:1px solid var(--line); border-radius:22px; background:#f7f5f1; }
.ny-fact { display:flex; flex-direction:column; justify-content:center; gap:4px; margin:0; padding:20px clamp(18px,2vw,32px); }
.ny-fact + .ny-fact { border-left:1px solid var(--line); }
.ny-fact b { display:flex; align-items:center; gap:10px; font-size:clamp(17px,1.25vw,22px); font-weight:600; line-height:1.2; color:#242724; }
.ny-fact > span { font-size:13px; line-height:1.4; color:#5c6259; }
.ny-fact-deadline b { color:#873f1c; }
.ny-fact-deadline #nyLeft { color:#873f1c; font-weight:500; }
.ny-live { position:relative; flex:none; width:9px; height:9px; border-radius:50%; background:#d9692f; }
.ny-live::after { content:""; position:absolute; inset:-5px; border-radius:50%; border:2px solid rgba(217,105,47,.35); }
@media (prefers-reduced-motion:no-preference) { .ny-live::after { animation:ny-pulse 2s ease-out infinite; } }
@keyframes ny-pulse { from { transform:scale(.6); opacity:1; } to { transform:scale(1.5); opacity:0; } }

@media (min-width:761px) and (max-width:1100px) {
 .ny-hero > .nav { flex-wrap:wrap; gap:16px; padding-block:20px 16px; }
 .ny-hero .nav-phone { margin-left:auto; }
 .ny-hero .nav-links { display:flex; order:3; width:100%; justify-content:space-between; margin:0; gap:12px; }
 .ny-stage-body { grid-template-columns:1fr; }
 .ny-stage .lead { max-width:52ch; }
 .ny-facts-row { grid-template-columns:1fr 1fr 1fr; }
 .ny-fact-deadline { grid-column:1 / -1; border-bottom:1px solid var(--line); }
 .ny-fact-deadline + .ny-fact { border-left:0; }
}
@media (max-width:760px) {
 .hero.ny-hero { padding:0 12px; }
 .ny-hero > .nav { min-height:64px; padding:14px 4px; }
 .ny-hero .brand-switch, .ny-hero .nav-links, .ny-hero .nav-phone { display:none; }
 .ny-stage { min-height:calc(100svh - 150px); border-radius:20px; }
 .ny-stage .ny-scene-image { object-position:46% 30%; }
 .ny-stage::before { background:linear-gradient(0deg, rgba(6,9,18,.9) 0%, rgba(6,9,18,.7) 40%, rgba(6,9,18,.1) 72%), linear-gradient(180deg, rgba(6,9,18,.5) 0%, rgba(6,9,18,0) 20%); }
 .ny-stage-top { padding:14px; }
 .ny-stage .ny-scene-caption { display:none; }
 .ny-stage-top { justify-content:flex-end; }
 .ny-scene-options button { font-size:11px; padding:9px 12px; }
 .ny-stage-body { grid-template-columns:1fr; gap:16px; padding:0 18px 22px; }
 .ny-stage .slogan { font-size:clamp(24px,7.2vw,34px); }
 .ny-stage .eyebrow { font-size:10px; letter-spacing:.1em; }
 .ny-stage .lead { font-size:13px; padding-left:14px; }
 .ny-stage .actions { flex-direction:column; align-items:stretch; }
 .ny-stage .actions .btn { justify-content:center; }
 .ny-facts-row { grid-template-columns:1fr 1fr 1fr; border-radius:18px; }
 .ny-fact { padding:14px 12px; }
 .ny-fact-deadline { grid-column:1 / -1; border-bottom:1px solid var(--line); }
 .ny-fact-deadline + .ny-fact { border-left:0; }
 .ny-fact b { font-size:15px; }
 .ny-fact > span { font-size:11.5px; }
 .burger, .call-fab { background:#fff; border-color:#dfe1d9; color:#242724; box-shadow:none; }
 .burger span { background:#242724; }
}
@media (prefers-reduced-motion:reduce) { .ny-stage .ny-scene-image { transition:none; } }

.topbar .tel, .mnav-contacts .tel { color:#242724; text-shadow:none; }
.mbar { background:rgba(255,255,255,.97); }
.mbar a { color:#242724; border-color:#dedfd8; }
.mbar a.primary { color:#873f1c; border-color:#b8754e; box-shadow:none; }

/* ===== Light theme coverage: blocks and inner pages that still used dark-theme colours ===== */
/* Palette: text #242724, muted #5c6259, accent #a34e24 / #873f1c, soft bg #f7f5f1, lines #dedfd8 */
:root { --muted:#5c6259; }

/* Shared text pieces */
.lead, .card p, .plan ul, .field-row, .checks, .step p, .spec span, .about-main p, .quiz-cta span, .lead-sub, .consent, .cta-call, .faq-item p, .review p, .hero-facts span { color:#5c6259; }
.tel, .pg-tel { color:#242724; text-shadow:none; }
.tel:hover, .tel:focus-visible, .pg-tel:hover { color:#a34e24; text-shadow:none; }
.slogan em, .sum, .about-facts b, .hero-facts b, .spec b, .review .q, .faq-item[open] summary, .ny-facts b, .pg-facts b { color:#a34e24; text-shadow:none; }
.consent a, .faq-item a, .review a, .pg-text a, .file-btn { color:#873f1c; text-decoration-color:rgba(135,63,28,.4); }
.to-top { border-color:#c5b39c; }

/* Price plans: excluded items read as "not included" */
.plan li.no { color:#8a8e86; text-decoration:line-through; text-decoration-color:rgba(98,102,95,.45); }
.plan li.no::before { background:#c9cbc3; }
.plan .tagline { border-color:#d9b28e; color:#873f1c; }
.plan .unit, .plan .for { color:#5c6259; }

/* Reliability block: fact cards and checklist */
.about-card, .spec { background:#f7f5f1; border-color:var(--line); box-shadow:none; }
.spec b { color:#a34e24; }
.checks li::before { border-left-color:#a34e24; border-bottom-color:#a34e24; }
.pills li { background:#fff; color:#242724; border-color:#c5c8bd; }

/* Night-photo panels stay dark on purpose; text inside them stays light */
.control, .cta-hero, .about-photo { --text:#fff; --muted:#d6d1c8; color:#fff; }
.control h3, .control h2, .control .switch-row, .control p { color:#fff; }
.control .modes li { color:#f1ede7; border-color:rgba(255,255,255,.28); background:rgba(0,0,0,.25); }
.control .switch { background:#07080b; border-color:rgba(255,255,255,.35); }
.control, .cta-hero { border-radius:var(--radius); overflow:hidden; }
.cta-hero .tel, .cta-hero .cta-call { color:#ffe9c9; }
.cta-hero .cta-call { color:#d6d1c8; }
.about-photo { box-shadow:0 18px 50px rgba(30,40,30,.14); }
.shot figcaption { color:#fff; }

/* Footer */
footer { background:#f7f5f1; border-top:1px solid var(--line); color:#5c6259; }
.foot-nav a, footer a[href^="https://t.me"], footer a[href^="mailto"] { color:#3f443d; }
.foot-nav a:hover, footer a:hover { color:#a34e24; }
footer .tel { color:#242724; }

/* Steps (kak-rabotaem) */
.steps-line { background:#dedfd8; }
.steps-line::after { background:#a34e24; }
.step.on .step-dot { border-color:#a34e24; color:#a34e24; }
.step-dot { background:#fff; }
.step-time { color:#5c6259; }

/* FAQ, reviews */
.faq-item { border-color:var(--line); }
.faq-item summary { color:#242724; }
.review .ava { border-color:#d9b28e; color:#873f1c; }

/* Lead popup and form */
.lead-panel { background:#fff; border-color:var(--line); color:#242724; }
.lead-close { color:#242724; border-color:var(--line); }
.lead-close:hover { border-color:#a34e24; }
.lead-calc { color:#744522; }
.fld input:focus { border-color:#a34e24; }
.chip span { color:#242724; }
.chip input:checked + span { color:#873f1c; border-color:#a34e24; }
.consent input { accent-color:#a34e24; }

/* Mobile menu, burger, floating buttons */
.mnav { background:rgba(255,255,255,.98); }
.mnav li a:active, .mnav li a:focus-visible { color:#873f1c; border-color:#b8754e; }
.mnav-tg { color:#3f443d; }
.burger, .call-fab { background:#fff; border-color:#dfe1d9; color:#242724; }
.burger span { background:#242724; }
.mbar a.primary { color:#873f1c; border-color:#b8754e; }

/* ===== Inner pages (page.css) ===== */
.pg-lead, .pg-text, .pg-final p, .wg-item figcaption { color:#5c6259; }
.pg-text strong, .pg-text b { color:#242724; }
.pg-tel { border-color:#c5b39c; }
.pg-facts { border-color:var(--line); }
.pg-facts b, .ny-facts b { color:#a34e24; }
.pg-facts span, .ny-facts span { color:#5c6259; }
.pg-table { border-color:var(--line); }
.pg-table th { color:#5c6259; }
.pg-table td { color:#3f443d; border-color:var(--line); }
.pg-table td:first-child b, .pg-table td:first-child strong { color:#242724; }
.pg-table td:last-child { color:#873f1c; }
.pg-steps li, .pg-related a { background:#f7f5f1; border-color:var(--line); color:#242724; }
.pg-steps li::before { border-color:#a34e24; color:#a34e24; background:#fff; }
.pg-related a:hover { border-color:#a34e24; }
.pg-contacts a:hover { color:#a34e24; }
.ny-deadline { color:#744522; }
.wg-chip { color:#242724; border-color:#c5c8bd; background:#fff; }
.wg-chip:hover { border-color:#a34e24; }
.wg-chip[aria-pressed="true"] { color:#873f1c; border-color:#a34e24; background:#faf0e4; }
/* Lightbox stays dark (photo viewer) */
.lb-cap { color:#cfcac2; }

/* Long display headings: never break a word in the middle */
.pg h1, .pg h2, .pg h3 { overflow-wrap:normal; word-break:normal; hyphens:manual; }
.pg .pg-hero h1 { font-size:clamp(22px,2.9vw,60px); max-width:20ch; }

/* Privacy policy and 404 (their own stylesheets are dark) */
html:has(link[href*="privacy.css"]) body { background:#fff; color:#3f443d; }
html:has(link[href*="privacy.css"]) h1 { color:#242724; }
html:has(link[href*="privacy.css"]) h2 { color:#a34e24; }
html:has(link[href*="privacy.css"]) a { color:#873f1c; }
html:has(link[href*="privacy.css"]) .draft { color:#744522; border-color:#c18e5d; }
html:has(link[href*="privacy.css"]) mark { background:#faf0e4; color:#744522; }
html:has(link[href*="privacy.css"]) .rev { color:#5c6259; }
html:has(link[href*="404.css"]) body { background:#fff; color:#242724; }
html:has(link[href*="404.css"]) b { color:#a34e24; text-shadow:none; }
html:has(link[href*="404.css"]) p { color:#5c6259; }
html:has(link[href*="404.css"]) a { color:#fff; background:#a34e24; border-color:#a34e24; box-shadow:none; }
html:has(link[href*="404.css"]) a:hover { background:#873f1c; box-shadow:none; }
.cta-hero { border-radius:0; }
.ba-chip { background:rgba(10,11,15,.6); color:#fff; border-color:rgba(255,255,255,.3); }
.ba-chip.r { color:#ffe9c9; border-color:rgba(255,192,112,.6); }
.mnav .btn-primary, .mnav .btn-primary:hover { color:#fff; }
@media(max-width:760px) { .ny-examples { grid-template-columns:1fr 1fr; gap:10px; } .ny-example figcaption { padding:10px 12px; font-size:12px; line-height:1.35; } }

/* ===== Quiz (quiz.html) in the light theme ===== */
.opt::before { border-color:#b9bcb2; background:#fff; }
.opt:hover { border-color:#c18e5d; }
.opt[aria-pressed="true"] { background:#faf0e4; border-color:#a34e24; box-shadow:0 6px 20px rgba(163,78,36,.1); }
.opt[aria-pressed="true"]::before { border-color:#a34e24; background:radial-gradient(circle, #a34e24 0 40%, #fff 44%); box-shadow:none; }
.opt.multi[aria-pressed="true"]::before { background:#a34e24; box-shadow:inset 0 0 0 3px #fff; }
.opt b { color:#242724; }
.opt span { color:#5c6259; }
.quick-chip { color:#242724; border-color:#c5c8bd; background:#fff; }
.quick-chip:hover, .quick-chip:focus-visible { color:#873f1c; border-color:#a34e24; }
.q-close { color:#242724; border-color:#dfe1d9; background:#fff; }
.q-head .tel { color:#242724; }
.est-sum { color:#a34e24; text-shadow:none; }
.est { background:#faf2e7; border-color:#e3c7a6; }
.demo-badge { color:#873f1c; border-color:#c18e5d; }
.q-foot { background:#f7f5f1; color:#5c6259; }

.q-side { padding:clamp(20px,2vw,32px); border:1px solid var(--line); border-radius:var(--radius, 24px); background:#f7f5f1; }
.ny-schema { margin-top:6px; overflow:visible; }
.ny-schema .base { stroke:#9da196; stroke-width:2; fill:none; }
.ny-schema .base.thin { stroke:#bfc2b8; stroke-width:1.5; }
.ny-schema .ground { stroke:#d6d8cf; stroke-width:1.5; stroke-dasharray:3 6; fill:none; }
.ny-schema .neon { stroke:#c8642c; stroke-width:4; filter:drop-shadow(0 0 3px rgba(232,140,60,.7)) drop-shadow(0 0 10px rgba(232,140,60,.35)); }
.ny-schema .hidden-path { display:none; }
.ny-schema .garland path { stroke:#d8d9d2; stroke-width:1.6; stroke-linecap:round; fill:none; transition:stroke .4s, filter .4s; }
.ny-schema .garland .eave { stroke-width:1.2; }
.ny-schema .garland circle { fill:#d8d9d2; transition:fill .4s, filter .4s; }
.ny-schema .garland.on path { stroke:#f0a64e; filter:drop-shadow(0 0 3px rgba(247,182,88,.9)); }
.ny-schema .garland.on circle { fill:#ffc56b; filter:drop-shadow(0 0 4px rgba(247,182,88,.95)); }
@media (prefers-reduced-motion:no-preference) {
 .ny-schema .garland.on circle { animation:ny-twinkle 2.4s ease-in-out infinite; }
 .ny-schema .garland.on circle:nth-child(3n) { animation-delay:.8s; }
 .ny-schema .garland.on circle:nth-child(3n+1) { animation-delay:1.6s; }
}
@keyframes ny-twinkle { 50% { opacity:.45; } }
.ny-legend { list-style:none; display:grid; gap:8px; margin:16px 0 22px; padding:0; font-size:13px; color:#5c6259; }
.ny-legend li { display:flex; align-items:center; gap:10px; }
.ny-legend li::before { content:""; flex:none; width:18px; height:4px; border-radius:2px; }
.ny-legend .lg-neon::before { background:#c8642c; box-shadow:0 0 6px rgba(232,140,60,.6); }
.ny-legend .lg-garland::before { height:8px; background:radial-gradient(circle, #ffc56b 0 2px, transparent 2.5px) 0 50%/6px 8px repeat-x; }
.q-side .side-sum { padding-top:18px; border-top:1px solid var(--line); }
.q-side .est-note { margin-top:8px; font-size:13px; color:#5c6259; }
@media (max-width:900px) {
 .q-side { display:block; position:static; margin-top:14px; padding:16px 18px; }
 .q-side .q-kicker { margin-bottom:4px; }
 .ny-schema { max-width:300px; display:block; margin-inline:auto; }
 .ny-legend { margin:10px 0 14px; font-size:12px; }
 .q-side .side-sum { padding-top:12px; }
}

/* «Виды гирлянд»: галерея типов */
.pg-text:has(.ny-types) { max-width:none; }
.ny-types { grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:8px; }
.ny-type a { display:block; color:inherit; text-decoration:none; }
.ny-type img { transition:transform .4s; }
.ny-type a:hover img { transform:scale(1.04); }
.ny-type { transition:border-color .2s, box-shadow .2s; }
.ny-type:has(a:hover) { border-color:#c18e5d; box-shadow:0 10px 28px rgba(35,42,30,.08); }
.ny-type figcaption { display:flex; flex-direction:column; gap:2px; padding:14px 16px; }
.ny-type figcaption b { color:#242724; font-weight:600; }
.ny-type figcaption span { color:#5c6259; font-size:13px; font-weight:400; }
.ny-type a figcaption b::after { content:" →"; color:#a34e24; }
@media (max-width:1000px) { .ny-types { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) { .ny-type figcaption { padding:10px 12px; } .ny-type figcaption span { font-size:12px; } }

/* Цифры под заголовком внутренних страниц — в том же стиле, что полоса под первым экраном главной */
.pg-facts { margin-top:clamp(24px,2.5vw,40px); border:1px solid var(--line); border-radius:22px; background:#f7f5f1; overflow:hidden; }
.pg-facts li { padding:20px clamp(18px,2vw,32px); border-color:var(--line); }
.pg-facts b { font-family:var(--body); font-size:clamp(17px,1.25vw,22px); font-weight:600; line-height:1.2; color:#242724; text-transform:none; letter-spacing:0; }
.pg-facts li:first-child b { color:#873f1c; }
.pg-facts span { font-size:13px; color:#5c6259; }
.pg-facts.wrap { width:auto; max-width:none; margin-inline:var(--gutter, clamp(16px,3.6vw,80px)); padding-inline:0; }
.pg-facts li, .pg-facts li + li { padding:20px clamp(18px,2vw,32px); border-left:0; }
.pg-facts li + li { border-left:1px solid var(--line); }
@media (max-width:760px) {
 .pg-facts.wrap li, .pg-facts.wrap li + li { padding:14px 16px; border-left:0; }
 .pg-facts.wrap li:nth-child(even) { border-left:1px solid var(--line); }
 .pg-facts.wrap li:nth-child(n+3) { border-top:1px solid var(--line); }
}

/* Видео: первый экран и облёт дома */
.ny-stage .ny-scene-video { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; object-position:50% 45%; opacity:0; transition:opacity .8s; pointer-events:none; }
.ny-stage.has-video .ny-scene-video { opacity:1; }
.ny-tour { position:relative; margin:var(--gap, 24px) 0 0; border:1px solid var(--line); border-radius:var(--radius, 24px); overflow:hidden; background:#0b1018; }
.ny-tour video { display:block; width:100%; height:auto; aspect-ratio:1168/784; max-height:72vh; object-fit:cover; }
.ny-tour figcaption { padding:16px 20px; background:#fff; color:#242724; font-weight:500; }
.ny-tour-btn { position:absolute; top:16px; right:16px; padding:9px 16px; border:1px solid rgba(255,255,255,.4); border-radius:999px; background:rgba(8,12,20,.55); backdrop-filter:blur(10px); color:#fff; font:500 13px/1 var(--body); cursor:pointer; }
.ny-tour-btn:hover { background:#fff; color:#242724; }
@media (max-width:760px) { .ny-tour figcaption { padding:12px 14px; font-size:13px; } .ny-tour-btn { top:10px; right:10px; } }
.ny-types-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:760px) { .ny-types-3 { grid-template-columns:1fr 1fr; } .ny-types-3 .ny-type:last-child { grid-column:1 / -1; } .ny-types-3 .ny-type:last-child img { aspect-ratio:16/9; } }
.pg-photo { position:relative; }
.pg-photo-tag { position:absolute; left:14px; bottom:14px; padding:6px 12px; border-radius:999px; background:rgba(8,12,20,.6); backdrop-filter:blur(8px); color:#fff; font-size:12px; letter-spacing:.04em; }

/* Цифры в блоке «О новогодней подсветке» и карточки «Ещё по теме» — обычным шрифтом, без тяжёлого Akony */
.about-facts b { font-family:var(--body); font-size:clamp(17px,1.25vw,22px); font-weight:600; line-height:1.2; letter-spacing:0; text-transform:none; color:#242724; text-shadow:none; }
.about-facts li:first-child b { color:#873f1c; }
.about-facts span { color:#5c6259; }
.pg-related b { font-family:var(--body); font-size:clamp(16px,1.15vw,20px); font-weight:600; line-height:1.3; letter-spacing:0; text-transform:none; color:#242724; }
.pg-related a:hover b { color:#873f1c; }
.pg-related span { color:#5c6259; }
@media (max-width:760px) { .pg h1, .pg main > section.block h1, .works-page > h1 { font-size:clamp(18px,5.6vw,26px); max-width:none; } }

/* Таблицы на внутренних страницах: на всю ширину, светлая шапка, ровные колонки */
.pg-text:has(.pg-table-wrap) { max-width:none; }
.pg-table-wrap { border-radius:20px; background:#fff; }
.pg-table { table-layout:auto; font-size:clamp(14px,.95vw,16px); }
.pg-table thead th { background:#f7f5f1; padding:14px 24px; color:#5c6259; }
.pg-table td { padding:16px 24px; line-height:1.5; }
.pg-table td:first-child { width:28%; color:#242724; font-weight:500; }
.pg-table td:last-child { white-space:normal; }
.pg-table td:nth-child(3):last-child { width:22%; }
.pg-table tbody tr { transition:background .15s; }
.pg-table tbody tr:hover { background:#fbf8f3; }
.pg-table tbody tr:nth-child(even) { background:#fcfbf9; }
.pg-table tbody tr:nth-child(even):hover { background:#fbf8f3; }
.pg-text .pg-note { margin-top:12px; max-width:72ch; }
@media (max-width:760px) {
 .pg-table { font-size:13.5px; }
 .pg-table thead th { padding:10px 12px; font-size:11px; }
 .pg-table td { padding:12px; }
 .pg-table td:first-child { width:auto; }
 .pg-table td:last-child { width:auto; }
}
