/* soTI® jwsoti.ru — слой поверх дизайн-кита (components.css): адаптив, семантические элементы, формы */
html{scroll-behavior:smooth}
body{font-family:'Jost','Inter',system-ui,sans-serif;line-height:1.5}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
ul{list-style:none}
.skip{position:absolute;left:-9999px;top:0;background:var(--g300);color:var(--ink);padding:12px 18px;z-index:100}
.skip:focus{left:12px;top:12px}
:focus-visible{outline:1px solid var(--g300);outline-offset:4px}
.wrap{width:min(1280px,calc(100% - 40px))}
.hdr{position:sticky;top:0;backdrop-filter:blur(10px)}
.hdr .wrap{gap:36px}
.hdr .logo{height:24px;width:auto}
.nav{display:flex;gap:34px;margin-right:auto}
.nav a{font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:var(--tx2);padding:30px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.nav a:hover,.nav a[aria-current]{color:var(--tx);border-bottom-color:var(--g300)}
.burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;background:none;border:1px solid var(--line2);color:var(--tx);border-radius:2px;cursor:pointer}
.topline .wrap span,.topline .wrap a{font-size:12px}
.topline a:hover{color:var(--g300)}
.hero{height:auto;min-height:640px}
.hero>picture,.hero>img{position:absolute;right:0;top:0;height:100%;width:62%;object-fit:cover;object-position:100% 20%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 38%);mask-image:linear-gradient(90deg,transparent 0,#000 38%)}
.hero .wrap{position:relative;z-index:2;display:flex;align-items:center;min-height:640px;padding:80px 0}
.hero .tx{padding-top:0;width:min(600px,100%)}
.hero h1{font-size:clamp(34px,5.2vw,64px);font-weight:200;letter-spacing:.05em;line-height:1.1;text-transform:uppercase;margin-bottom:26px}
.hero .lead{margin:0 0 38px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line)}
.kpis>div{padding:34px 30px;border-right:1px solid var(--line)}
.kpis .num{font-size:clamp(30px,3.6vw,48px)}
.kpis .caps{margin-top:12px;color:var(--tx2)}
.sect{padding:96px 0}
.sect h2{font-size:clamp(24px,3vw,36px);font-weight:300;letter-spacing:.1em;text-transform:uppercase;line-height:1.2}
.sect .head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:44px;flex-wrap:wrap}
.sect .head .lead{margin-top:12px}
.g4{grid-template-columns:repeat(4,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
.feat h3{font-size:15px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;margin-bottom:10px;line-height:1.4}
.feat p{color:var(--tx2);font-size:16px;line-height:1.55;font-weight:300}
.feat ul{margin-top:14px;display:grid;gap:8px;color:var(--tx2);font-weight:300;font-size:15px}
.feat ul li{padding-left:18px;position:relative}
.feat ul li:before{content:'';position:absolute;left:0;top:.7em;width:6px;height:1px;background:var(--g300)}
.steps{display:grid;grid-template-columns:repeat(3,1fr)}
.steps h3{margin:14px 0 10px;font-size:15px;letter-spacing:.2em;text-transform:uppercase;font-weight:500}
.steps p{color:var(--tx2);font-weight:300;line-height:1.5}
.links{display:flex;gap:28px;flex-wrap:wrap;margin-top:36px}
.split{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
.split picture,.split img{width:100%;height:100%;object-fit:cover}
.split .ph{aspect-ratio:4/3;background:var(--s2);overflow:hidden;border:1px solid var(--line)}
.cc{aspect-ratio:4/5}
.cc .t{font-size:13px}.cc h3{font-size:12px;letter-spacing:.3em;text-transform:uppercase;margin-top:4px;color:var(--tx);font-weight:500}
.cc p{font-size:13px;color:var(--tx2);margin-top:6px;font-weight:300;line-height:1.4}
.cgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.quote{border:1px solid var(--line);background:var(--s2);padding:30px;display:flex;flex-direction:column;gap:20px;margin:0}
.quote blockquote{font-size:16px;line-height:1.6;font-weight:300;color:var(--tx2)}
.quote figcaption b{display:block;font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:13px}
.quote figcaption span{font-size:13px;color:var(--tx3)}
.faq details{border-bottom:1px solid var(--line);padding:0}
.faq details:first-child{border-top:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 4px;font-size:18px;letter-spacing:.04em;font-weight:400;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:'+';color:var(--g300);font-size:26px;font-weight:200}
.faq details[open] summary:after{content:'−'}
.faq details p{padding:0 4px 26px;color:var(--tx2);font-weight:300;line-height:1.65;max-width:820px}
.cta{display:grid;grid-template-columns:1fr 1fr;gap:80px;border:1px solid var(--line-gold);background:rgba(214,176,118,.04);padding:64px}
.cta form{display:flex;flex-direction:column;gap:18px}
.fld{width:100%}
.fld input{height:54px;border:1px solid var(--line2);background:var(--s2);padding:0 18px;font:400 17px 'Jost',sans-serif;color:var(--tx);border-radius:2px;width:100%}
.fld input:focus{border-color:var(--g300);box-shadow:0 0 0 3px rgba(214,176,118,.12);outline:0}
.fld input::placeholder{color:var(--tx3)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;color:var(--tx3);line-height:1.5}
.consent input{margin-top:3px;width:18px;height:18px;accent-color:#C4A068;flex:none}
.consent a{color:var(--g300);border-bottom:1px solid var(--line-gold)}
.hp{position:absolute;left:-9999px}
.btn{cursor:pointer;transition:filter .2s,background .2s,border-color .2s}
.btn.pri:hover{filter:brightness(1.08)}
.btn.sec:hover{background:rgba(214,176,118,.12);border-color:rgba(214,176,118,.7)}
.btn.txt:hover{border-bottom-color:var(--g300)}
.ftr .grid{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:48px}
.ftr .fh,.ftr h2{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--g500);margin-bottom:16px;font-weight:500}
.ftr li{font-size:15px;color:var(--tx2);margin-bottom:10px;font-weight:300}
.ftr li a:hover{color:var(--g300)}
.ftr .logo{height:26px;width:auto;margin-bottom:18px}
.ftr .about{color:var(--tx2);font-weight:300;font-size:15px;max-width:360px;line-height:1.6}
.ftr .bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:48px;padding-top:28px;border-top:1px solid var(--line);font-size:13px;color:var(--tx3)}
@media (max-width:1023px){
  .nav{display:none}.burger{display:flex;margin-left:auto}
  .hdr .tools .btn.txt{display:none}
  .nav.open{display:flex;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--s2);border-bottom:1px solid var(--line-gold);padding:8px 20px 16px;margin:0}
  .nav.open a{padding:16px 0;border-bottom:1px solid var(--line)}
  .hero>img,.hero>picture{width:100%;opacity:.45}
  .hero>picture img{position:static;width:100%;height:100%;object-fit:cover;object-position:100% 20%}
.hero:after{background:linear-gradient(90deg,var(--bg) 0%,rgba(10,10,10,.7) 100%)}
  .g4{grid-template-columns:repeat(2,1fr)}.cgrid{grid-template-columns:repeat(3,1fr)}
  .split,.cta{grid-template-columns:1fr;gap:40px}.cta{padding:40px}
  .ftr .grid{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
  .topline .wrap{justify-content:center}.topline .wrap>span:first-child{display:none}
  .hdr,.hdr .wrap{height:60px}.hdr .tools .btn.pri{display:none}
  .hero,.hero .wrap{min-height:520px}.hero .wrap{padding:56px 0}
  .kpis{grid-template-columns:1fr 1fr}.kpis>div{padding:24px 14px;min-width:0}.kpis .num{font-size:24px;white-space:normal}.kpis>div:nth-child(n+3){border-top:1px solid var(--line)}
  .sect{padding:56px 0}
  .g4,.g3,.g2,.steps{grid-template-columns:1fr}.cgrid{grid-template-columns:1fr 1fr;gap:14px}
  .steps>div{border-right:0;border-bottom:1px solid var(--line)}.steps>div:last-child{border-bottom:0}
  .frow{grid-template-columns:1fr}.cta{padding:28px 20px}
  .hero .btn,.hero .row{width:100%}.hero .btn{width:100%}
  .ftr .grid{grid-template-columns:1fr;gap:32px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ===== внутренние страницы ===== */
.crumbs{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tx3);padding:22px 0 12px;flex-wrap:wrap}
.crumbs a:hover{color:var(--g300)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.page-hero{min-height:560px}
.page-hero .wrap{min-height:560px}
.page-hero .tx{width:min(580px,100%)}
.page-hero h1{font-size:clamp(28px,3.5vw,46px)}
.page-hero .lead{margin-bottom:34px}
.h2-like{font-size:clamp(28px,3.6vw,44px);font-weight:200;letter-spacing:.06em;text-transform:uppercase;line-height:1.15}
.check{display:grid;gap:16px}
.check li{display:flex;gap:14px;align-items:flex-start;color:var(--tx2);font-weight:300;line-height:1.55;font-size:17px}
.check svg{color:var(--g300);margin-top:2px;width:22px;height:22px}
.hero-list{margin-top:24px;max-width:560px}
.cgrid.c5{grid-template-columns:repeat(5,1fr)}
.cgrid.c5 .cc{aspect-ratio:3/4}
.cgrid.c5 .cc h3{font-size:12px;line-height:1.5;letter-spacing:.2em}
.terms{width:100%;border-collapse:collapse}
.terms th,.terms td{padding:18px 4px;border-bottom:1px solid var(--line);text-align:left;font-weight:300;vertical-align:baseline}
.terms th{color:var(--tx2);font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:500}
.terms td{text-align:right;font-size:22px;font-variant-numeric:tabular-nums;color:var(--g100)}
.note{margin-top:14px;font-size:13px;color:var(--tx3)}
.offer{background-size:cover;background-position:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.offer h2{max-width:720px}
.ph.tall{aspect-ratio:auto;min-height:100%}
.steps.stack{display:grid;grid-template-columns:1fr;border:0}
.steps.stack>div{border:0;border-top:1px solid var(--line);padding:24px 0;display:grid;grid-template-columns:70px 1fr;column-gap:16px}
.steps.stack .n{grid-row:span 2;font-size:34px}
.steps.stack h3{margin:6px 0 8px}
.feat.media{padding:0;display:flex;flex-direction:column}
.feat.media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.feat.media h3,.feat.media p{margin-left:28px;margin-right:28px}
.feat.media h3{margin-top:26px}.feat.media p{padding-bottom:28px}
.feat.row-media{flex-direction:row;gap:0;align-items:stretch}
.feat.row-media img{width:42%;aspect-ratio:auto;object-fit:cover;flex:none}
.feat.row-media>div{padding:30px}
.pc .sku{font-size:12px;letter-spacing:.14em;color:var(--tx3)}
.cap2{font-size:12px;color:var(--tx3);letter-spacing:.1em;text-transform:uppercase}
.quote figcaption{display:flex;gap:14px;align-items:center}
.quote figcaption img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--line-gold)}
.doc{max-width:860px}
.doc-h1{font-size:clamp(26px,3.4vw,40px);font-weight:300;letter-spacing:.08em;text-transform:uppercase;line-height:1.2;margin-bottom:36px}
.doc h2{font-size:clamp(18px,2vw,22px);font-weight:500;letter-spacing:.12em;text-transform:uppercase;margin:44px 0 16px;color:var(--g100)}
.doc h3{font-size:17px;font-weight:500;letter-spacing:.06em;margin:28px 0 12px;color:var(--tx)}
.doc p{color:var(--tx2);font-weight:300;line-height:1.75;margin-bottom:14px;font-size:16px}
.doc ul{margin:0 0 18px;display:grid;gap:8px}
.doc li{color:var(--tx2);font-weight:300;line-height:1.7;padding-left:20px;position:relative}
.doc li:before{content:'';position:absolute;left:0;top:.85em;width:7px;height:1px;background:var(--g300)}
.doc a{color:var(--g300);border-bottom:1px solid var(--line-gold);word-break:break-word}
.status{width:56px;height:56px;border:1px solid var(--line-gold);display:flex;align-items:center;justify-content:center;color:var(--g300)}
.status.err{color:var(--err);border-color:rgba(229,138,122,.4)}
.status svg{width:28px;height:28px}
.cookie{position:fixed;left:20px;right:20px;bottom:20px;z-index:50;max-width:760px;margin:0 auto;background:var(--s3);border:1px solid var(--line-gold);padding:18px 22px;display:flex;gap:20px;align-items:center;justify-content:space-between;box-shadow:0 18px 50px rgba(0,0,0,.6)}
.cookie[hidden]{display:none}
.cookie p{font-size:14px;color:var(--tx2);line-height:1.5}.cookie a{color:var(--g300);border-bottom:1px solid var(--line-gold)}
.cookie .btn{flex:none;height:44px;letter-spacing:.12em}
.hdr .logo{height:36px;width:auto}.ftr .logo{height:40px}
@media (max-width:1023px){
  .cgrid.c5{grid-template-columns:repeat(3,1fr)}
  .feat.row-media{flex-direction:column}.feat.row-media img{width:100%;aspect-ratio:16/9}
  .page-hero .tx{width:100%}
}
@media (max-width:767px){
  .cgrid.c5{grid-template-columns:1fr 1fr}
  .steps.stack>div{grid-template-columns:52px 1fr}
  .cookie{flex-direction:column;align-items:stretch;left:12px;right:12px;bottom:12px}
  .terms td{font-size:18px}
}
.hero>picture img{width:100%;height:100%;object-fit:cover;object-position:100% 20%}

/* Главная: большой логотип справа (как в концепции) */
.hero.logo-hero{min-height:720px}
.hero.logo-hero .wrap{min-height:720px}
.hero.logo-hero>picture{width:64%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%);mask-image:linear-gradient(90deg,transparent 0,#000 22%)}
.hero.logo-hero>picture img{object-fit:cover;object-position:50% 52%;mix-blend-mode:lighten}
.hero.logo-hero:after{background:linear-gradient(90deg,var(--bg) 0%,var(--bg) 30%,transparent 52%)}
.hero.logo-hero .tx{width:min(520px,100%)}
@media (max-width:1023px){
  .hero.logo-hero{min-height:0}
  .hero.logo-hero .wrap{min-height:0;padding:56px 0 24px}
  .hero.logo-hero>picture{position:relative;display:block;width:100%;height:auto;order:2;opacity:1;-webkit-mask-image:none;mask-image:none}
  .hero.logo-hero{display:flex;flex-direction:column}
  .hero.logo-hero>picture img{height:auto;aspect-ratio:1/1;max-height:520px;object-fit:cover}
  .hero.logo-hero:after{display:none}
}
.hero.logo-hero .btn.lg{padding:0 28px;height:56px;font-size:13px}.hero.logo-hero .row{flex-wrap:nowrap}@media (max-width:767px){.hero.logo-hero .row{flex-wrap:wrap}}

/* Всплывающее окно (по киту: радиус 8, фон surface2, золотая линия) */
.modal{border:1px solid var(--line-gold);border-radius:8px;background:var(--s2);color:var(--tx);padding:0;width:min(480px,calc(100% - 32px));margin:auto;box-shadow:0 30px 80px rgba(0,0,0,.7)}
.modal::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(3px)}
.modal-box{position:relative;padding:40px 36px 36px}
.modal-box h2{font-size:26px;font-weight:300;letter-spacing:.1em;text-transform:uppercase;margin:10px 0 14px;line-height:1.2}
.modal-lead{color:var(--tx2);font-weight:300;line-height:1.6;margin-bottom:26px}
.modal-x{position:absolute;right:12px;top:12px;width:44px;height:44px;background:none;border:0;color:var(--tx2);cursor:pointer;display:flex;align-items:center;justify-content:center}
.modal-x:hover{color:var(--g300)}
.modal-links{display:grid;gap:12px}
.modal-links a{display:flex;align-items:center;gap:16px;min-height:60px;padding:0 20px;border:1px solid var(--line2);border-radius:2px;background:var(--s1);font-size:13px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;transition:border-color .2s,background .2s}
.modal-links a svg:first-child{color:var(--g300)}
.modal-links a span{flex:1}
.modal-links a .go{color:var(--tx3)}
.modal-links a:hover{border-color:var(--line-gold);background:rgba(214,176,118,.08)}
@media (max-width:767px){.modal-box{padding:32px 20px 24px}}
.frow.org{grid-template-columns:1.6fr 1fr}@media (max-width:767px){.frow.org{grid-template-columns:1fr}}

/* soTI BOX */
.box-hero{background:radial-gradient(900px 480px at 85% 0%,rgba(214,176,118,.14),transparent 60%),var(--bg)}
.box-hero:after{display:none}
.terms small{display:block;margin-top:6px;font-size:12px;letter-spacing:.04em;text-transform:none;color:var(--tx3);font-weight:300}
.terms tr.total th,.terms tr.total td{border-bottom:0;border-top:1px solid var(--line-gold);color:var(--g100)}
.terms tr.total td{font-size:26px}
.terms.compact th{font-size:12px;letter-spacing:.14em}.terms.compact td{font-size:18px}
.split.top{align-items:start}
.callout{border:1px solid var(--line-gold);background:rgba(214,176,118,.05);padding:40px}
.callout p{color:var(--tx2);font-weight:300;line-height:1.65;margin-top:14px}
.steps.five{grid-template-columns:repeat(5,1fr)}
.gold{color:var(--g300);font-weight:500;letter-spacing:.08em}
.contacts{margin-top:26px;display:grid;gap:10px;color:var(--tx2);font-weight:300}
.contacts a{color:var(--g300);border-bottom:1px solid var(--line-gold)}
@media (max-width:1023px){.steps.five{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){.steps.five{grid-template-columns:1fr}.callout{padding:28px 22px}}
.terms td{white-space:nowrap}
.range-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
@media (max-width:1023px){.range-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:767px){.range-grid{grid-template-columns:1fr 1fr;gap:14px}}

/* Квадратные галереи и фото без обрезки */
.feat.media img.wide{aspect-ratio:1/1}
.feat.media .body{padding:26px 28px 28px}
.feat.media .body h3{margin:10px 0 0}
.feat.media .body p+p,.feat.media .body h3+p{margin:14px 0 0}
.feat.media .body .eyebrow{margin:0}
.g2>.feat.media:last-child:nth-child(odd){grid-column:1/-1;flex-direction:row}
.g2>.feat.media:last-child:nth-child(odd) img.wide{width:50%;flex:none}
.g2>.feat.media:last-child:nth-child(odd) .body{display:flex;flex-direction:column;justify-content:center;padding:40px}
.cgrid .cc,.range-grid .cc{aspect-ratio:3/4}
/* Одиночные фото: рамка 4:3, фото на всю рамку */
.ph,.ph.tall{aspect-ratio:4/3;min-height:0;overflow:hidden;background:none;border:0}
.ph img,.ph.tall img,.split .ph img,.ph picture{display:block;width:100%;height:100%;object-fit:cover}
@media (max-width:767px){.g2>.feat.media:last-child:nth-child(odd){flex-direction:column}.g2>.feat.media:last-child:nth-child(odd) img.wide{width:100%}.g2>.feat.media:last-child:nth-child(odd) .body{padding:26px 28px 28px}}

/* ===== Читаемость: крупнее шрифты и иконки (для аудитории 40+) =====
   Только размеры: начертание текста остаётся тонким (300), как в дизайн-ките. */
:root{--w-text:300}
html{-webkit-text-size-adjust:100%}
body{font-size:18px;line-height:1.55}
.topline,.topline .wrap span,.topline .wrap a{font-size:14px}
.nav a{font-size:14px;letter-spacing:.16em}
.btn{font-size:14px}.btn.sm{font-size:13px}.btn.lg{font-size:15px}.btn.txt{font-size:14px}
.hero.logo-hero .btn.lg{font-size:14px}
.eyebrow{font-size:14px}
.lead{font-size:22px;line-height:1.6}
.caps,.kpis .caps{font-size:14px;letter-spacing:.16em}
.feat p,.steps p,.callout p,.modal-lead,.doc p,.doc li,.faq details p,.ftr .about,.contacts{font-size:18px;line-height:1.6}
.feat ul,.feat ul li{font-size:17px}
.feat h3,.steps h3{font-size:17px}
.check li{font-size:19px}
.quote blockquote{font-size:18px}
.quote figcaption b{font-size:14px}.quote figcaption span{font-size:15px}
.faq summary{font-size:20px}
.doc h2{font-size:clamp(20px,2.2vw,24px)}.doc h3{font-size:19px}
.terms th{font-size:14px}.terms td{font-size:24px}.terms small{font-size:14px}.terms.compact th{font-size:13px}.terms.compact td{font-size:20px}
.note,.cap2,.pc .sku{font-size:15px}
.consent{font-size:15px}
.fld label{font-size:13px}.fld input{font-size:18px}
.ftr li{font-size:17px}.ftr h2{font-size:13px}.ftr .bottom{font-size:14px}
.crumbs{font-size:14px}
.cookie p{font-size:16px}
.cc .t,.cc h3{font-size:14px}.cc p{font-size:15px}.cc .n{font-size:34px}
.cgrid.c5 .cc h3{font-size:14px}
.modal-links a{font-size:15px}
.num{font-size:clamp(34px,4vw,54px)}
.kpis .num{font-size:clamp(32px,3.8vw,50px)}
.kpis .caps{margin-top:14px}
.doc p,.doc li,.feat p,.quote blockquote,.lead,.steps p,.faq details p,.callout p,.ftr .about,.ftr li,.contacts,.terms td,.terms small,.cc p,.modal-lead,.check li,.infobody p,.infobody li{font-weight:var(--w-text)}
/* иконки */
.feat .ic svg{width:44px;height:44px}
.feat .ic{margin-bottom:26px}
.check svg{width:28px;height:28px;margin-top:0}
.check li{gap:16px}
.btn svg.i{width:26px;height:26px}
.modal-links a svg:first-child{width:30px;height:30px}
.modal-links a{min-height:68px}
.burger{width:48px;height:48px}.burger svg{width:28px;height:28px}
.status{width:72px;height:72px}.status svg{width:38px;height:38px}
.modal-x svg{width:28px;height:28px}
@media (min-width:1024px) and (max-width:1199px){.nav{gap:22px}.hdr .wrap{gap:24px}.hdr .tools .btn.pri{padding:0 16px}}
@media (max-width:767px){
  body{font-size:18px}
  .lead{font-size:20px}
  .hero .lead{font-size:20px}
  .feat p,.steps p,.doc p,.doc li,.faq details p{font-size:18px}
  .check li{font-size:18px}
  .faq summary{font-size:19px}
  .kpis .num{font-size:28px}.kpis .caps{font-size:13px}
  .topline,.topline .wrap a{font-size:14px}
  .btn.lg,.btn{font-size:15px}
}
@media (max-width:767px){
  .btn{white-space:normal;text-align:center;line-height:1.35;height:auto;min-height:54px;padding-top:14px;padding-bottom:14px}
  .btn.txt{min-height:44px;height:auto;padding:10px 4px;text-align:left}
  .links{flex-direction:column;align-items:stretch;gap:16px}
  .links .btn.txt{align-self:flex-start}
}

/* ===== Технические страницы: документы, информация, статусы ===== */
.doc-hero{min-height:0;background:radial-gradient(900px 420px at 88% -20%,rgba(214,176,118,.16),transparent 60%),var(--bg)}
.doc-hero:after{display:none}
.doc-hero .wrap{min-height:0;padding:72px 0 56px}
.doc-hero h1{font-size:clamp(28px,3.6vw,48px);font-weight:200;letter-spacing:.05em;text-transform:uppercase;line-height:1.12;margin:0}
.chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.chips li{border:1px solid var(--line-gold);background:rgba(214,176,118,.05);padding:10px 18px;font-size:15px;color:var(--tx2);letter-spacing:.04em}
.chips li span{color:var(--g300);letter-spacing:.14em;text-transform:uppercase;font-size:13px;font-weight:500;margin-right:8px}
.chips.quick li{padding:0}.chips.quick a{display:block;padding:12px 20px;font-size:14px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;color:var(--g100);transition:background .2s}
.chips.quick li:hover{background:rgba(214,176,118,.14)}
.docs-sect{padding-top:24px}
.docgrid{display:grid;grid-template-columns:300px 1fr;gap:64px;align-items:start}
.docside{position:sticky;top:112px;display:grid;gap:28px;max-height:calc(100vh - 130px);overflow:auto}
.toc .lbl{margin-bottom:14px}
.toc ol,.toc ul{display:grid;gap:2px;border-left:1px solid var(--line)}
.toc ol{counter-reset:t}
.toc a{display:block;padding:9px 0 9px 18px;margin-left:-1px;border-left:1px solid transparent;font-size:15px;line-height:1.4;color:var(--tx2);transition:color .2s,border-color .2s}
.toc a:hover{color:var(--tx)}
.toc a.on,.toc a[aria-current]{color:var(--g100);border-left-color:var(--g300)}
.filerow{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--line2);background:var(--s1);transition:border-color .2s}
.filerow:hover{border-color:var(--line-gold)}
.filerow .fmt{border:1px solid var(--line-gold);color:var(--g300);font-size:12px;letter-spacing:.14em;padding:5px 9px;font-weight:500}
.filerow .fn{flex:1;font-size:15px}
.filerow svg{color:var(--g300);width:26px;height:26px}
.doc{max-width:none}
.doc section{scroll-margin-top:110px;padding-top:12px}
.doc h2{margin:48px 0 18px;padding-top:28px;border-top:1px solid var(--line-gold);font-size:clamp(20px,2.2vw,26px);font-weight:400;letter-spacing:.08em;line-height:1.3;text-transform:uppercase;color:var(--g100)}
.doc section:first-of-type h2,.doc>section:first-child h2{margin-top:0}
.doc p.cl{display:grid;grid-template-columns:64px 1fr;gap:6px;max-width:860px}
.doc p.cl .no{color:var(--g300);font-variant-numeric:tabular-nums;font-weight:500}
.doc p,.doc li{max-width:860px}
.doc ul{margin:0 0 20px 64px}
.doc p.cl+ul{margin-left:70px}
.doc-contact{margin-top:56px;border:1px solid var(--line-gold);background:rgba(214,176,118,.05);padding:28px 32px;max-width:860px}
.doc-contact p:last-child{margin:0;color:var(--tx2)}
.doc-contact a{color:var(--g300);border-bottom:1px solid var(--line-gold)}
.info .feat{padding:36px 34px;scroll-margin-top:110px}
.info .feat h2{font-size:20px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;margin-bottom:18px;line-height:1.3}
.infobody p{color:var(--tx2);font-size:18px;line-height:1.65;margin-bottom:12px}
.infobody ul{margin:6px 0 14px;display:grid;gap:8px}
.infobody li{color:var(--tx2);font-size:17px;line-height:1.55;padding-left:20px;position:relative}
.infobody li:before{content:'';position:absolute;left:0;top:.8em;width:8px;height:1px;background:var(--g300)}
.infobody a{color:var(--g300);border-bottom:1px solid var(--line-gold)}
.infobody strong{color:var(--tx);font-weight:500}
.status-sect{min-height:70vh;display:flex;align-items:center;background:radial-gradient(900px 420px at 50% 0%,rgba(214,176,118,.12),transparent 60%),var(--bg)}
.statuscard{max-width:860px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px;border:1px solid var(--line-gold);background:rgba(214,176,118,.04);padding:64px 56px}
.statuscard.err{border-color:rgba(229,138,122,.45);background:rgba(229,138,122,.04)}
.statuscard .lead{max-width:640px;margin:0}
.statuscard .status{margin:0}
.statuscard .steps{width:100%}
.bd.err{color:var(--err);border:1px solid rgba(229,138,122,.4)}
.statuscard .bd{height:30px;font-size:12px}
@media (max-width:1023px){.docgrid{grid-template-columns:1fr;gap:32px}.docside{position:static;max-height:none;overflow:visible}.statuscard{padding:44px 28px}}
@media (max-width:767px){.doc p.cl{grid-template-columns:52px 1fr}.doc ul{margin-left:0}.doc p.cl+ul{margin-left:0}.doc-hero .wrap{padding:48px 0 36px}.statuscard .steps{grid-template-columns:1fr!important}.statuscard .steps>div{border-right:0;border-bottom:1px solid var(--line)}.statuscard .row{flex-direction:column;align-items:stretch}.info .feat{padding:28px 22px}}

/* Контакты в подвале: единый стиль строк */
.contact-list li{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}
.contact-list svg{width:24px;height:24px;color:var(--g300);margin-top:2px}
.contact-list small{display:block;margin-top:3px;font-size:14px;color:var(--tx3)}
.contact-list a{color:var(--tx);border-bottom:0}
.contact-list a:hover{color:var(--g300)}

/* Регистрация через мессенджеры */
.regchoose{display:flex;flex-direction:column;gap:16px}
.msg{display:flex;align-items:center;gap:18px;min-height:64px;padding:0 24px;border:1px solid var(--line-gold);border-radius:2px;background:rgba(214,176,118,.04);font-size:15px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--g100);transition:background .2s,border-color .2s}
.msg:hover{background:rgba(214,176,118,.12);border-color:rgba(214,176,118,.7)}
.msg .mk{width:32px;height:32px;flex:none;color:var(--g300);transition:color .2s}
.msg:hover .mk{color:var(--g100)}
.msg span{flex:1}
.msg .i{color:var(--g300);width:26px;height:26px}
.consent.bad{outline:1px solid var(--err);outline-offset:8px}
.consent-err{color:var(--err);font-size:15px;margin:-4px 0 0}
@media (max-width:767px){.msg{padding:0 16px;gap:14px;font-size:14px;letter-spacing:.1em}}

/* Соцсети в подвале и значки в окне мессенджеров */
.socials{display:flex;gap:22px;align-items:center}
.socials li{margin:0}
.socials a{display:flex;width:44px;height:44px;align-items:center;justify-content:center;color:var(--g300);transition:color .2s}
.socials a:hover{color:var(--g100)}
.socials .mk{width:26px;height:26px}
.modal-links .mk{width:28px;height:28px;flex:none;color:var(--g300)}
.btn[data-open]{font-family:inherit}

/* Мобильное меню: бургер из двух линий, кнопки и призыв */
.burger{flex-direction:column;gap:9px}
.burger .bl{display:block;width:24px;height:1.5px;background:currentColor;transition:transform .25s,opacity .2s}
.burger[aria-expanded="true"]{gap:0}
.burger[aria-expanded="true"] .bl:first-child{transform:translateY(.75px) rotate(45deg)}
.burger[aria-expanded="true"] .bl:last-child{transform:translateY(-.75px) rotate(-45deg)}
.menu-extra{display:none}
@media (max-width:1023px){
  .hdr .tools{display:none}
  .nav.open{max-height:calc(100vh - 96px);overflow-y:auto}
  .nav.open .menu-extra{display:flex;flex-direction:column;gap:14px;padding:22px 0 8px}
  .menu-extra .btn{width:100%}
  .menu-cta{margin:10px 0 0;text-align:center;color:var(--tx2);line-height:1.5;font-size:16px}
  .menu-cta b{display:block;color:var(--g100);font-weight:500;letter-spacing:.04em;margin-bottom:4px}
  .nav.open a.btn{padding:0 24px;border-bottom:1px solid var(--line-gold)}
}
/* Соцсети в подвале: минималистичные значки, большая область нажатия */
.socials{gap:14px}
.socials a{width:48px;height:48px}
.socials .mk{width:13px;height:13px;overflow:visible}

/* Читайте также */
.related{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:6px}
.related a{display:grid;grid-template-columns:1fr auto;gap:6px 16px;align-items:center;padding:26px 28px;border:1px solid var(--line);background:var(--s2);transition:border-color .2s}
.related a:hover{border-color:var(--line-gold)}
.related b{font-size:15px;letter-spacing:.16em;text-transform:uppercase;font-weight:500}
.related span{grid-column:1;color:var(--tx2);font-weight:300;font-size:16px;line-height:1.5}
.related svg{grid-row:1/3;grid-column:2;color:var(--g300)}
@media (max-width:1023px){.related{grid-template-columns:1fr}}
