/* Joker Sales v2 — «дерзкий светлый». Конституция: joker-sales-design_SKILL.md */
@font-face{font-family:'Golos Text';font-weight:400;font-display:swap;src:url('/assets/fonts/golos-text-cyrillic-400-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-weight:400;font-display:swap;src:url('/assets/fonts/golos-text-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+20AC,U+2122}
@font-face{font-family:'Golos Text';font-weight:500;font-display:swap;src:url('/assets/fonts/golos-text-cyrillic-500-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-weight:500;font-display:swap;src:url('/assets/fonts/golos-text-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+20AC,U+2122}
@font-face{font-family:'Golos Text';font-weight:800;font-display:swap;src:url('/assets/fonts/golos-text-cyrillic-800-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-weight:800;font-display:swap;src:url('/assets/fonts/golos-text-latin-800-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+20AC,U+2122}
@font-face{font-family:'Golos Text';font-weight:900;font-display:swap;src:url('/assets/fonts/golos-text-cyrillic-900-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-weight:900;font-display:swap;src:url('/assets/fonts/golos-text-latin-900-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+20AC,U+2122}

:root{
  --ink:#111111;--yellow:#FFC700;--red:#FF3B30;--paper:#fff;--tint:#F6F4ED;--gray:#6B6B66;
  --line:#E5E2D8;--soft:#3c3c38;
  --r-btn:14px;--r-card:20px;--r-pill:999px;
  --h1:clamp(38px,4.7vw,66px);--h2:clamp(30px,3.6vw,50px);--h3:clamp(18px,1.6vw,21px);
  --body:clamp(16px,1.2vw,18px);--s-l:clamp(44px,5vw,72px);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:'Golos Text',system-ui,sans-serif;font-size:var(--body);line-height:1.5;-webkit-font-smoothing:antialiased}
::selection{background:var(--yellow);color:var(--ink)}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.container{max-width:1280px;margin:0 auto;padding:0 56px}
section{padding:var(--s-l) 0}
h1{font-weight:900;font-size:var(--h1);letter-spacing:-.035em;line-height:1.02}
h2{font-weight:900;font-size:var(--h2);letter-spacing:-.03em;line-height:1.05}
h3{font-weight:800;font-size:var(--h3)}
.lead{margin-top:20px;font-size:clamp(16.5px,1.3vw,18.5px);max-width:640px;color:var(--soft)}
.lead b{font-weight:800;color:var(--ink)}
.hsub{margin-top:14px;color:var(--soft);font-size:17px;font-weight:500;max-width:640px}
.mt-m{margin-top:18px}.mt-l{margin-top:36px}.center{text-align:center}
.tint{background:var(--tint)}
.mk{background:var(--yellow);border-radius:12px;padding:0 .2em;display:inline-block;transform:rotate(-1.2deg)}
.suit-r{color:var(--red)}

/* Кнопки */
.btn{display:inline-block;background:var(--yellow);color:var(--ink);font-weight:800;font-size:16px;border:none;border-radius:var(--r-btn);padding:15px 26px;cursor:pointer;text-decoration:none;text-align:center;transition:transform .18s ease,box-shadow .18s ease}
.btn.big{font-size:18px;padding:18px 32px;border-radius:16px;box-shadow:0 8px 24px rgba(255,199,0,.45)}
.btn.ink{background:var(--ink);color:var(--yellow)}
.btn.ghost{background:var(--paper);border:2px solid var(--ink);padding:13px 24px}
.btn.ghost.big{padding:16px 30px}
@media(hover:hover){.btn:hover{transform:translateY(-2px)}.btn.big:hover{box-shadow:0 12px 28px rgba(255,199,0,.55)}}
.btn:active{transform:scale(.97)}
.btn:focus-visible,a:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.btn-row{margin-top:26px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.btn-center{margin-top:34px;text-align:center}

/* Пилюли и стикеры */
.eyebrow{display:inline-block;font-weight:800;font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;background:var(--tint);border-radius:var(--r-pill);padding:8px 15px;margin-bottom:18px}
.tint .eyebrow{background:var(--paper)}
.kick{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:13.5px;background:var(--tint);border-radius:var(--r-pill);padding:9px 16px;margin-bottom:22px;text-transform:uppercase;letter-spacing:.02em}
.stick{display:inline-block;background:var(--ink);color:var(--yellow);font-weight:800;font-size:14px;padding:9px 17px;border-radius:var(--r-pill);transform:rotate(-4deg)}

/* Шапка */
.site-header{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.header-in{display:flex;align-items:center;gap:28px;padding-top:14px;padding-bottom:14px}
.logo{display:flex;align-items:center;gap:11px;font-weight:900;font-size:21px;text-decoration:none;letter-spacing:-.01em}
.logo svg{width:32px;height:32px;flex:none}
.nav{display:flex;gap:26px;font-weight:500;font-size:15px;margin-left:auto}
.nav a{text-decoration:none;position:relative;padding:4px 0}
.nav a.active,.nav a[aria-current]{font-weight:800}
@media(hover:hover){.nav a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2.5px;text-decoration-color:var(--yellow)}}
.header-cta{display:flex;align-items:center;gap:18px}
.header-phone{font-weight:800;font-size:15px;text-decoration:none;white-space:nowrap}
.burger{display:none;background:none;border:none;cursor:pointer;width:42px;height:42px;flex-direction:column;justify-content:center;gap:6px;align-items:center}
.burger span{display:block;width:24px;height:2.5px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}
.mobile-menu{display:none;flex-direction:column;gap:4px;padding:10px 20px 24px;background:var(--paper);border-bottom:2px solid var(--ink)}
.mobile-menu a{text-decoration:none;font-weight:700;font-size:17px;padding:11px 4px;border-bottom:1px solid var(--line)}
.mobile-menu a.btn{border-bottom:none;margin-top:12px;color:var(--ink)}
.mobile-menu.open{display:flex}
body.menu-open .burger span:nth-child(1){transform:translateY(8.5px) rotate(45deg)}
body.menu-open .burger span:nth-child(2){opacity:0}
body.menu-open .burger span:nth-child(3){transform:translateY(-8.5px) rotate(-45deg)}

/* Герой главной */
.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center;padding:38px 0 60px}
.sub{margin-top:22px;font-size:18px;max-width:540px;color:var(--soft)}
.sub b{font-weight:800;color:var(--ink)}
.micro{margin-top:18px;font-size:14.5px;color:var(--gray);font-weight:500}
.micro b{color:var(--ink);font-weight:800}

/* Карты-козыри */
.hand{position:relative;height:530px}
.cardx{position:absolute;width:228px;height:330px;background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);padding:16px;box-shadow:0 18px 40px rgba(17,17,17,.13);display:flex;flex-direction:column;transition:transform .2s ease}
.cardx .ix{font-weight:900;font-size:22px;line-height:1}
.cardx .ix small{display:block;font-size:20px}
.cardx .mid{margin:auto 0}
.cardx .mid b{font-weight:900;font-size:35px;letter-spacing:-.03em;display:block;white-space:nowrap}
.cardx .mid span{display:block;margin-top:9px;font-size:14.5px;line-height:1.4;color:var(--soft);font-weight:500}
.cardx .ix2{align-self:flex-end;transform:rotate(180deg);font-weight:900;font-size:22px;line-height:1}
.cardx .ix2 small{display:block;font-size:20px}
.c1{left:0;top:104px;transform:rotate(-8deg);z-index:1}
.c2{left:188px;top:58px;transform:rotate(1.5deg);z-index:2}
.c3{left:376px;top:98px;transform:rotate(9deg);z-index:3}
.c1 .mid{padding-right:36px}.c2 .mid{padding-right:32px}
.hand .stick{position:absolute;z-index:4;left:150px;top:14px}
/* одиночная большая карта (страница РОП и др.) */
.cardx.solo{position:relative;left:auto;top:auto;width:min(320px,100%);height:auto;min-height:380px;transform:rotate(2.5deg);margin:0 auto}

/* Marquee */
.mq{position:relative;background:var(--ink);color:#fff;font-weight:800;font-size:15px;padding:15px 0;white-space:nowrap;overflow:hidden}
.mq i{font-style:normal;color:var(--yellow);padding:0 16px}
.mq::before,.mq::after{content:"";position:absolute;top:0;bottom:0;width:120px;z-index:2;pointer-events:none}
.mq::before{left:0;background:linear-gradient(90deg,var(--ink),transparent)}
.mq::after{right:0;background:linear-gradient(-90deg,var(--ink),transparent)}
.mq-track{display:inline-block;padding-left:0;animation:mq 28s linear infinite}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.mq-track{animation:none}}

/* Внутренний герой страниц */
.page-hero{padding:clamp(34px,4.5vw,58px) 0 clamp(26px,3vw,40px)}
.crumbs{font-size:13.5px;color:var(--gray);margin-bottom:18px;font-weight:500}
.crumbs a{color:var(--gray)}
.page-hero h1{max-width:980px}
.upd{margin-top:14px;color:var(--gray);font-size:13.5px;font-weight:500}

/* GEO-бокс */
.qa-box{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);padding:24px 26px;max-width:920px;font-size:16.5px;line-height:1.55;position:relative;box-shadow:0 12px 30px rgba(17,17,17,.07)}
.qa-box::before{content:"♦";position:absolute;top:-15px;left:24px;background:var(--yellow);color:var(--ink);font-size:15px;font-weight:900;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:2.5px solid var(--ink)}
.tint .qa-box{background:var(--paper)}

/* Списки с мастями и крестами */
.suits{list-style:none;display:grid;gap:14px;max-width:840px}
.suits li{padding-left:34px;position:relative}
.suits li::before{content:"♠";position:absolute;left:0;top:0;font-size:19px;font-weight:900}
.suits li:nth-child(4n+2)::before{content:"♦";color:var(--red)}
.suits li:nth-child(4n+3)::before{content:"♣"}
.suits li:nth-child(4n+4)::before{content:"♥";color:var(--red)}
.suits b{font-weight:800}
.crosses{list-style:none;display:grid;gap:16px;max-width:840px}
.crosses li{padding-left:36px;position:relative}
.crosses li::before{content:"✕";position:absolute;left:0;top:-2px;font-size:21px;font-weight:900}
.crosses b{font-weight:800}

/* Строки-масти (отстройка) */
.rows3 .row{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:26px 0;border-top:1px solid var(--line)}
.rows3 .row:first-child{border-top:none;padding-top:6px}
.rows3 .suit{font-size:26px;line-height:1}
.rows3 b{font-weight:800;display:block;margin-bottom:6px;font-size:19px}
.rows3 span{color:var(--soft);font-size:16.5px}

/* Сплиты и сетки */
.split{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.split.start{align-items:start}
.split57{display:grid;grid-template-columns:5fr 6fr;gap:72px;align-items:start}
.split-img img{border-radius:var(--r-card);border:2.5px solid var(--ink);box-shadow:0 18px 40px rgba(17,17,17,.13)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.grid2.start{align-items:start;gap:64px}

/* Панели */
.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-card);padding:26px 28px}
.panel h3{margin-bottom:10px}
.panel p{color:var(--soft);font-size:16px}
.panel.hard{border:2.5px solid var(--ink);box-shadow:0 12px 30px rgba(17,17,17,.07)}
.tint .panel{border-color:transparent}
.tint .panel.hard{border-color:var(--ink)}

/* Боль */
.pain{display:grid;grid-template-columns:6fr 5fr;gap:72px;align-items:center;margin-top:40px}
.pain-big{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);padding:38px 36px}
.pain-big b{font-weight:900;font-size:clamp(46px,5vw,74px);letter-spacing:-.04em;line-height:1;display:block}
.pain-big span{display:block;margin-top:12px;font-size:17px;color:var(--soft)}
.pain-pts .pt{padding:20px 0;border-top:1px solid var(--line)}
.pain-pts .pt:first-child{border-top:none;padding-top:0}
.pain-pts b{font-weight:800;font-size:19px;display:block;margin-bottom:5px}
.pain-pts span{color:var(--soft);font-size:16.5px}

/* Таймлайн-шаги */
.tl{margin-top:40px;display:grid}
.step{display:grid;grid-template-columns:150px 1fr;gap:34px;padding:23px 0;border-top:1px solid var(--line);align-items:baseline}
.step:first-child{border-top:none}
.day{justify-self:start;background:var(--ink);color:var(--yellow);font-weight:800;font-size:13.5px;border-radius:var(--r-pill);padding:8px 15px;white-space:nowrap}
.step h3{font-weight:800;font-size:20px;margin-bottom:5px}
.step p{color:var(--soft);font-size:16.5px;max-width:760px}
.tl-note{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-card);padding:18px 22px;font-size:16px;color:var(--soft)}
.tl-note b{color:var(--ink);font-weight:800}

/* Плакатные цифры */
.nums{margin-top:40px;display:grid;grid-template-columns:repeat(12,1fr);gap:18px;align-items:end}
.num b{font-weight:900;letter-spacing:-.04em;line-height:.95;display:block;white-space:nowrap}
.num span{display:block;margin-top:10px;font-size:15.5px;color:var(--soft);max-width:230px}
.n1{grid-column:span 5}.n1 b{font-size:clamp(64px,8vw,118px)}
.n2{grid-column:span 3}.n2 b{font-size:clamp(40px,4.6vw,64px)}
.n3{grid-column:span 4}.n3 b{font-size:clamp(40px,4.6vw,64px)}
.n4,.n5,.n6{grid-column:span 4}
.n4 b,.n5 b,.n6 b{font-size:clamp(36px,4vw,56px)}
.num i{font-style:normal}

/* Рука тарифов */
.thand{margin-top:54px;display:flex;justify-content:center;align-items:flex-end;height:auto;position:relative;padding-bottom:14px}
.tcard{width:330px;background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);padding:26px 26px 24px;display:flex;flex-direction:column;box-shadow:0 18px 40px rgba(17,17,17,.12);position:relative}
.tcard .ix{font-weight:900;font-size:22px;line-height:1;margin-bottom:14px}
.tcard .ix small{font-size:20px;display:block}
.tcard h3{font-weight:800;font-size:20px;margin-bottom:8px}
.tcard .price{font-weight:900;font-size:40px;letter-spacing:-.03em;margin:2px 0 4px;white-space:nowrap}
.tcard .fx{font-weight:800;font-size:12.5px;letter-spacing:.08em;color:var(--gray);margin-bottom:14px}
.tcard p{font-size:15.5px;color:var(--soft);margin-bottom:20px}
.tcard .btn{width:100%}
.t1{transform:rotate(-5deg) translateY(8px);z-index:1;padding-right:44px}
.t2{transform:translateY(-26px);z-index:3;margin:0 -12px}
.t3{transform:rotate(5deg) translateY(8px);z-index:2;padding-left:44px}
.tstick{position:absolute;top:-15px;left:24px;background:var(--ink);color:var(--yellow);font-weight:800;font-size:13.5px;padding:8px 15px;border-radius:var(--r-pill);transform:rotate(-3deg)}
.tnote{text-align:center;margin-top:40px;color:var(--soft);font-size:15.5px;max-width:820px;margin-left:auto;margin-right:auto}
.tnote b{font-weight:800;color:var(--ink)}

/* Кейсы — разложенные карты */
.cases{margin-top:40px;display:grid;grid-template-columns:7fr 5fr;gap:22px}
.case-big{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);padding:32px}
.ctag{display:inline-block;background:var(--yellow);font-weight:800;font-size:13px;border-radius:var(--r-pill);padding:7px 13px;margin-bottom:18px}
.case-big h3{font-weight:900;font-size:28px;letter-spacing:-.02em;margin-bottom:14px}
.case-big p{color:var(--soft);font-size:16.5px;margin-bottom:10px}
.cres{margin-top:16px;padding-top:16px;border-top:1px dashed #D8D4C8;font-weight:800;font-size:16.5px}
.case-side{display:grid;gap:22px;align-content:start}
.case-sm{background:var(--tint);border-radius:var(--r-card);padding:24px 26px}
.tint .case-sm{background:var(--paper)}
.case-sm b{font-weight:800;font-size:17.5px;display:block;margin-bottom:6px}
.case-sm span{color:var(--soft);font-size:15px}
.case-sm .suit{font-size:20px;margin-right:8px}
.case-deck{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:26px}
.case-card{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);padding:28px;box-shadow:0 14px 34px rgba(17,17,17,.09)}
.case-deck .case-card:nth-child(odd){transform:rotate(-1.2deg)}
.case-deck .case-card:nth-child(even){transform:rotate(1.1deg)}
.case-card h3{font-weight:900;font-size:22px;letter-spacing:-.02em;margin:0 0 12px}
.case-card p{color:var(--soft);font-size:16px;margin-bottom:8px}
.case-card p b{color:var(--ink);font-weight:800}
.all-link{margin-top:30px;font-weight:800;font-size:16.5px;border-bottom:2.5px solid var(--ink);display:inline-block;padding-bottom:2px;text-decoration:none}

/* Цитаты */
.q-grid{margin-top:40px;display:grid;grid-template-columns:7fr 5fr;gap:22px;align-items:stretch}
.q{border:2.5px solid var(--ink);border-radius:var(--r-card);padding:30px;display:flex;flex-direction:column;background:var(--paper)}
.q blockquote{font-size:19px;line-height:1.45;font-weight:500}
.q.punch blockquote{font-weight:900;font-size:26px;letter-spacing:-.02em}
.q .who{margin-top:auto;padding-top:22px;font-weight:800;font-size:15.5px}
.q .who span{display:block;font-weight:500;color:var(--gray);font-size:14px;margin-top:3px}

/* Таблицы */
.tbl-wrap{margin-top:36px;border:2.5px solid var(--ink);border-radius:var(--r-card);overflow:auto;background:var(--paper)}
table{width:100%;border-collapse:collapse;font-size:15.5px;min-width:680px}
th{font-weight:800;text-align:left;padding:15px 18px;background:var(--tint);border-bottom:2px solid var(--ink);font-size:13.5px;text-transform:uppercase;letter-spacing:.04em}
td{padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--soft)}
td b{color:var(--ink);font-weight:800}
tr:last-child td{border-bottom:none}
tr.hl td{background:#FFF6D6}
td.hl{background:#FFF6D6;color:var(--ink);font-weight:700}

/* FAQ */
.faq{margin-top:32px;max-width:880px}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:30px;align-items:baseline;padding:21px 0;font-weight:800;font-size:18px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-weight:900;font-size:24px;flex:none}
.faq details[open] summary::after{content:"−"}
.faq-a{padding:0 0 22px;color:var(--soft);font-size:16.5px;max-width:780px}
.faq-a a{font-weight:700}

/* Жёлтый CTA-блок */
.cta-y{background:var(--yellow)}
.cta-in{display:grid;grid-template-columns:6fr 5fr;gap:64px;align-items:center}
.cta-in h2{font-size:clamp(34px,4.2vw,58px)}
.cta-in .s{margin-top:16px;font-size:18px;font-weight:500;max-width:540px}
.cta-in .s b{font-weight:800}
.fcard{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);padding:28px}
.f-label{font-weight:800;font-size:14px;margin-bottom:10px;display:block}
.pills{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:18px}
.pills input{position:absolute;opacity:0;pointer-events:none}
.pills label{border:2px solid var(--ink);border-radius:var(--r-pill);padding:9px 15px;font-weight:800;font-size:14px;background:var(--paper);cursor:pointer;transition:background .15s,color .15s}
.pills input:checked+label{background:var(--ink);color:var(--yellow)}
.pills input:focus-visible+label{outline:3px solid var(--ink);outline-offset:2px}
.f-input{width:100%;border:2px solid var(--ink);border-radius:var(--r-btn);padding:14px 16px;font-size:16px;font-family:inherit;margin-bottom:16px;background:var(--paper)}
.f-input::placeholder{color:#9a9a92}
.f-input:focus-visible{outline:3px solid var(--yellow)}
.f-consent{display:flex;gap:10px;font-size:13px;color:var(--gray);margin:2px 0 16px;align-items:flex-start}
.f-consent input{margin-top:3px;accent-color:var(--ink)}
.f-consent a{font-weight:700}
.f-micro{margin-top:10px;font-size:13.5px;color:var(--gray);text-align:center;font-weight:500}
.f-status{margin-top:12px;font-size:14.5px;font-weight:700;display:none}
.f-status.ok{display:block;color:#0B7C4B}
.f-status.err{display:block;color:var(--red)}
.cta-contact{margin-top:26px;font-weight:800;font-size:16.5px}
.cta-contact a{text-decoration:none}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}

/* Плавающий квиз и модал */
.float-quiz{position:fixed;right:26px;bottom:26px;z-index:80;background:var(--ink);color:var(--yellow);border:none;border-radius:18px;padding:14px 20px;font-weight:800;font-size:15px;box-shadow:0 14px 34px rgba(17,17,17,.35);transform:rotate(-2deg);cursor:pointer;font-family:inherit;text-align:left;transition:transform .18s ease}
.float-quiz small{display:block;color:#fff;font-weight:500;font-size:12px;margin-top:4px;opacity:.85}
@media(hover:hover){.float-quiz:hover{transform:rotate(0deg) translateY(-3px)}}
.float-quiz:active{transform:scale(.97)}
.quiz-overlay{position:fixed;inset:0;z-index:100;background:rgba(17,17,17,.55);display:none;align-items:center;justify-content:center;padding:20px}
.quiz-overlay.open{display:flex}
.quiz-modal{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);max-width:480px;width:100%;padding:30px;position:relative;box-shadow:0 30px 80px rgba(17,17,17,.35)}
.quiz-close{position:absolute;top:14px;right:16px;background:none;border:none;font-size:26px;font-weight:900;cursor:pointer;line-height:1;padding:6px;color:var(--ink)}
.quiz-modal h3{font-weight:900;font-size:24px;letter-spacing:-.02em;margin-bottom:6px}
.quiz-step-label{font-size:13px;font-weight:800;color:var(--gray);letter-spacing:.06em;text-transform:uppercase;margin-bottom:18px}
.quiz-step{display:none}
.quiz-step.on{display:block}
.quiz-nav{display:flex;gap:12px;margin-top:6px}
.quiz-result{font-size:16px;line-height:1.5;background:var(--tint);border-radius:var(--r-btn);padding:16px 18px;margin-bottom:16px}
.quiz-result b{font-weight:800}

/* Sticky-бар на мобиле */
.sticky-bar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:85;background:var(--ink);padding:10px 14px;gap:10px;align-items:center;justify-content:space-between}
.sticky-bar .btn{flex:1;padding:13px 14px;font-size:15px}
.sticky-bar a.call{color:#fff;font-weight:800;text-decoration:none;font-size:14.5px;white-space:nowrap;padding:0 6px}

/* Футер */
.site-footer{background:var(--ink);color:#fff;padding:54px 0 30px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:48px;font-size:15px}
.site-footer .logo{color:#fff}
.footer-brand p{color:#A9A9A2;margin-top:14px;font-size:14.5px;max-width:340px}
.site-footer h4{font-weight:800;font-size:13px;letter-spacing:.07em;text-transform:uppercase;color:var(--yellow);margin-bottom:14px}
.site-footer ul{list-style:none;display:grid;gap:9px}
.site-footer ul a{color:#D8D8D2;text-decoration:none}
@media(hover:hover){.site-footer ul a:hover{color:var(--yellow)}}
.footer-contact b{color:#fff}
.footer-bottom{margin-top:44px;padding-top:22px;border-top:1px solid #2c2c2c;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:13.5px;color:#A9A9A2}

/* 404 */
.nf{min-height:62vh;display:flex;align-items:center;text-align:center}
.nf .code{font-weight:900;font-size:clamp(84px,12vw,150px);letter-spacing:-.04em;line-height:1}
.nf .code i{font-style:normal;color:var(--yellow);-webkit-text-stroke:3px var(--ink)}

/* Узкая колонка (policy) */
.narrow{max-width:760px}
.narrow h2{font-size:clamp(22px,2vw,27px);margin-top:34px;margin-bottom:12px}
.narrow p{color:var(--soft)}

/* Адаптив */
@media(max-width:1140px){
  .nav{display:none}
  .burger{display:flex}
  .header-cta .btn{display:none}
}
@media(max-width:1020px){
  .container{padding:0 24px}
  .hero{grid-template-columns:1fr;padding-bottom:40px}
  .hand{height:auto;display:grid;gap:16px;margin-top:10px}
  .cardx{position:static;transform:none;width:100%;height:auto;min-height:0;flex-direction:row;align-items:center;gap:16px}
  .cardx .mid{margin:0;padding:0 !important}
  .cardx .ix2{display:none}
  .hand .stick{position:static;display:inline-block;justify-self:start;margin-bottom:4px}
  .split,.split57,.grid2,.grid2.start,.pain,.cta-in,.cases,.q-grid,.case-deck{grid-template-columns:1fr;gap:30px}
  .split-img{max-width:480px}
  .nums{grid-template-columns:1fr 1fr;align-items:start}
  .n1,.n2,.n3,.n4,.n5,.n6{grid-column:span 1}
  .thand{flex-direction:column;align-items:stretch;gap:18px}
  .tcard{width:100%}
  .t1,.t2,.t3{transform:none;margin:0;padding-left:26px;padding-right:26px}
  .t2{border-width:3px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:34px}
  .step{grid-template-columns:1fr;gap:8px}
}
@media(max-width:760px){
  section{padding:clamp(36px,9vw,48px) 0}
  .header-phone{display:none}
  .case-deck .case-card{transform:none}
  .sticky-bar{display:flex}
  body{padding-bottom:64px}
  .float-quiz{bottom:78px;right:14px;padding:12px 16px;font-size:14px}
  table{min-width:560px;font-size:14px}
  .mq{font-size:13px;padding:12px 0}
}

/* === v2.9: квиз v2, попап, витрина === */
.quiz-sec .quiz-card{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);padding:32px 32px 28px;max-width:780px;margin:34px auto 0;box-shadow:0 18px 40px rgba(17,17,17,.08)}
.quiz-progress{height:5px;background:var(--line);border-radius:999px;overflow:hidden;margin-bottom:22px}
.quiz-progress i{display:block;height:100%;background:var(--yellow);width:25%;transition:width .25s ease}
.quiz-q{font-weight:900;font-size:clamp(21px,2vw,26px);letter-spacing:-.02em;margin-bottom:18px}
.qcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.qcards input{position:absolute;opacity:0;pointer-events:none}
.qcards label{display:flex;flex-direction:column;min-height:168px;background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--r-card);padding:16px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .15s,color .15s}
.qcards .qc-ix{font-weight:900;font-size:21px;line-height:1}
.qcards .qc-ix small{display:block;font-size:18px}
.qcards .qc-t{margin-top:auto;display:block}
.qcards .qc-t b{display:block;font-weight:800;font-size:16.5px;line-height:1.25}
.qcards .qc-t span{display:block;font-size:13.5px;color:var(--gray);margin-top:5px;font-weight:500}
@media(hover:hover){.qcards label:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(17,17,17,.14)}}
.qcards input:checked+label{background:var(--ink);color:var(--yellow)}
.qcards input:checked+label .qc-t span{color:#D8D8D2}
.qcards input:focus-visible+label{outline:3px solid var(--ink);outline-offset:2px}
.quiz-pills label{padding:12px 18px;font-size:15px}
.quiz-note{font-size:15.5px;color:var(--soft);margin-bottom:16px;line-height:1.5;max-width:56ch}
.consent-line{font-size:12.5px;color:var(--gray);margin-top:12px}
.consent-line a{color:inherit;font-weight:700}
.quiz-modal{max-width:600px}
.popup-modal{max-width:430px}
.popup-modal .stick{margin-bottom:6px}
.popup-modal h3{font-weight:900;font-size:23px;letter-spacing:-.02em;margin:14px 0 8px}
.tcard .fx2{font-weight:700;font-size:13.5px;color:var(--gray);margin:-8px 0 12px}
.t-includes{margin-top:28px;font-size:14.5px;color:var(--soft);text-align:center}
.t-includes b{font-weight:800;color:var(--ink)}
.float-quiz{background:var(--yellow);color:var(--ink);box-shadow:0 14px 34px rgba(255,199,0,.5)}
.float-quiz small{color:var(--soft);opacity:1}
@media(max-width:700px){
  .quiz-sec .quiz-card{padding:22px 18px 20px}
  .qcards{grid-template-columns:1fr}
  .qcards label{flex-direction:row;align-items:center;gap:14px;min-height:0;padding:14px 16px}
  .qcards .qc-t{margin-top:0}
  .quiz-nav .btn{flex:1}
}

/* === v3.0: магнит, квиз 5 шагов, попапы === */
.magnit-line{font-size:15px;font-weight:600;color:var(--soft);margin:14px 0 0;max-width:560px}
.magnit-line::before{content:"♠ ";color:var(--ink)}
.hero .magnit-line{margin-top:16px}
.qalt{margin-top:12px}
.qalt input{position:absolute;opacity:0;pointer-events:none}
.qalt label{display:inline-block;padding:10px 18px;border:1.5px dashed var(--gray);border-radius:999px;font-size:14.5px;font-weight:600;color:var(--soft);cursor:pointer;transition:.15s}
.qalt label:hover{border-color:var(--ink);color:var(--ink)}
.qalt input:checked+label{background:var(--ink);color:var(--yellow);border:1.5px solid var(--ink)}
.kanal-pills{margin-bottom:14px}
.quiz-nav{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}
.quiz-back{background:none;border:none;padding:8px 4px;font:inherit;font-size:14.5px;font-weight:600;color:var(--soft);cursor:pointer}
.quiz-back:hover{color:var(--ink)}
.t-guar{font-size:15px;font-weight:600;margin:10px 0 0}
.t-guar::before{content:"♦ ";color:var(--red)}
.popup-tg-btn{display:block;width:100%;text-align:center;margin-top:6px}

.calc-bridge{background:#fff;border:1.5px solid #E7E4DA;border-radius:16px;padding:20px 24px;margin-top:22px;font-size:15.5px;line-height:1.55;max-width:860px}
.calc-bridge b{font-weight:800}
.calc-bridge a{font-weight:700;white-space:nowrap}

.site-footer .fh{font-weight:800;font-size:13px;letter-spacing:.07em;text-transform:uppercase;color:var(--yellow);margin-bottom:14px}
.popup-modal .ph{font-weight:900;font-size:23px;letter-spacing:-.02em;margin:14px 0 8px}

.ck-bar{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;display:flex;gap:14px;align-items:center;justify-content:space-between;max-width:720px;margin:0 auto;padding:12px 16px;background:var(--ink,#111);color:#fff;border-radius:14px;font-size:14px;line-height:1.35;box-shadow:0 10px 30px rgba(0,0,0,.25)}.ck-bar button{flex:none;background:var(--yellow,#F5C400);color:#111;border:0;border-radius:10px;padding:10px 16px;font-weight:800;cursor:pointer}@media(max-width:600px){.ck-bar{flex-direction:column;align-items:stretch;text-align:center}}

/* v3.12 */
.ck-bar[hidden]{display:none}
.nav{position:relative}
.nav .dd{position:relative;display:inline-block}
.nav .dd>button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.nav .dd>button::after{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7}
.nav .dd-menu{position:absolute;top:calc(100% + 14px);left:-14px;min-width:300px;background:#fff;border:1px solid #E6E6E0;border-radius:14px;box-shadow:0 14px 40px rgba(0,0,0,.14);padding:8px;display:none;z-index:70}
.nav .dd-menu a{display:block;padding:10px 12px;border-radius:9px;white-space:nowrap}
.nav .dd-menu a:hover{background:#F6F5F0}
.nav .dd:hover .dd-menu,.nav .dd:focus-within .dd-menu,.nav .dd.open .dd-menu{display:block}
.btn-ghost{background:transparent;color:var(--ink,#111);border:1.5px solid var(--ink,#111)}
.btn-ghost:hover{background:var(--ink,#111);color:#fff}
.mobile-menu .mm-group{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;opacity:.6;margin:10px 0 2px}
.mobile-menu .mm-sub{padding-left:14px}
.cm-overlay{position:fixed;inset:0;background:rgba(10,10,10,.55);z-index:80;display:flex;align-items:center;justify-content:center;padding:16px}
.cm-overlay[hidden]{display:none}
.cm{background:#fff;color:#111;border-radius:18px;padding:28px 26px 24px;max-width:440px;width:100%;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.cm h3{margin:0 0 6px;font-size:22px}
.cm p{margin:0 0 16px;color:#6B6A64;font-size:14.5px}
.cm-row{display:flex;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #ECEBE5;font-weight:700;text-decoration:none;color:#111}
.cm-row small{font-weight:400;color:#6B6A64}
.cm-btn{display:block;text-align:center;margin-top:16px}
.cm-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:#F3F2EE;cursor:pointer;font-size:16px}
.toc{background:#F6F5F0;border-radius:14px;padding:16px 20px;margin:20px 0 6px}
.toc b{display:block;margin-bottom:6px}
.toc ol{margin:0;padding-left:1.2em;columns:2;column-gap:28px}
.toc li{margin:3px 0;break-inside:avoid;font-size:15px}
@media(max-width:700px){.toc ol{columns:1}}
.price-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:8px 0 10px}
.price-card{border:1.5px solid #E6E6E0;border-radius:16px;padding:20px 20px 18px;background:#fff;display:flex;flex-direction:column}
.price-card.hi{border-color:var(--yellow,#F5C400);background:#FFFBEA}
.price-card .pc-name{font-weight:800;font-size:17px;margin:0 0 4px}
.price-card .pc-price{font-weight:900;font-size:28px;letter-spacing:-.02em;margin:0 0 10px}
.price-card ul{margin:0 0 14px;padding-left:1.1em;font-size:14.5px}
.price-card .btn{margin-top:auto;text-align:center}
@media(max-width:820px){.price-cards{grid-template-columns:1fr}}

.dlg{border-left:3px solid var(--yellow,#F5C400);padding:4px 0 4px 16px;margin:16px 0}.dlg p{margin:0 0 8px}

/* v3.23: выравнивание пункта «Услуги» по строке меню */
.nav{align-items:center}
.nav .dd{display:inline-flex;align-items:center}
.nav .dd>button{padding:4px 0;line-height:inherit;font-weight:inherit}
.nav .dd>button::after{transform:rotate(45deg) translateY(-1px)}
@media (max-width:1180px){.nav{gap:18px}}
.quiz-result .qr-t{margin:0;font-weight:800;font-size:15px;color:var(--soft)}
.quiz-result .qr-p{margin:2px 0 10px;font-weight:900;font-size:21px;line-height:1.25;color:var(--ink)}
.quiz-result ul{margin:0;padding-left:1.15em}.quiz-result li{margin:3px 0}
.quiz-result:empty{display:none}
:where(.narrow) p+p,:where(.narrow) :is(ul,ol)+p,:where(.narrow) p+:is(ul,ol){margin-top:14px}
