/* Локальные файлы исключают зависимость от Google Fonts и одинаково работают в Safari на iPhone. */
@font-face {
  font-family:"Montserrat";
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url("/assets/fonts/montserrat-cyrillic.woff2") format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family:"Montserrat";
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url("/assets/fonts/montserrat-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family:"Montserrat";
  font-style:italic;
  font-weight:100 900;
  font-display:swap;
  src:url("/assets/fonts/montserrat-cyrillic-italic.woff2") format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family:"Montserrat";
  font-style:italic;
  font-weight:100 900;
  font-display:swap;
  src:url("/assets/fonts/montserrat-latin-italic.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* Archivo Black не имеет кириллицы. Сохраняем все существующие стили заголовков,
   но подставляем локальный кириллический display-вариант. */
@font-face {
  font-family:"Archivo Black";
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url("/assets/fonts/montserrat-cyrillic.woff2") format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family:"Archivo Black";
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url("/assets/fonts/montserrat-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family:"Archivo Black";
  font-style:italic;
  font-weight:100 900;
  font-display:swap;
  src:url("/assets/fonts/montserrat-cyrillic-italic.woff2") format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family:"Archivo Black";
  font-style:italic;
  font-weight:100 900;
  font-display:swap;
  src:url("/assets/fonts/montserrat-latin-italic.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root { --ink:#1d2522; --muted:#64716b; --paper:#f7f7f2; --surface:#fff; --mint:#dff5dd; --lime:#b8ec66; --line:#d9ded8; --night:#1d2522; --danger:#9c3b34; --radius:22px; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:var(--ink); background:var(--paper); }
* { box-sizing:border-box; }
html { min-height:100%; background:var(--paper); }
body { margin:0; min-width:320px; min-height:100dvh; background:var(--paper); }
button, input, textarea, select { font:inherit; }
button { cursor:pointer; }
a { color:inherit; }
.wrap { width:min(1120px, calc(100% - 40px)); margin:auto; }
.top { height:72px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.brand { font-weight:800; letter-spacing:-.055em; font-size:25px; text-decoration:none; }
.brand-dot { color:#56a85a; }
.nav { display:flex; gap:20px; color:var(--muted); font-size:14px; }
.nav a { text-decoration:none; }
.button { appearance:none; border:0; background:var(--ink); color:white; border-radius:999px; padding:14px 20px; font-weight:700; display:inline-flex; align-items:center; justify-content:center; gap:8px; text-decoration:none; min-height:48px; }
.button:hover { background:#36443d; }
.button--lime { background:var(--lime); color:var(--ink); }
.button--line { border:1px solid var(--line); background:transparent; color:var(--ink); }
.button--small { min-height:38px; padding:9px 14px; font-size:14px; }
.hero { padding:72px 0 52px; display:grid; grid-template-columns:1.15fr .85fr; gap:32px; align-items:end; }
.eyebrow { font-size:13px; letter-spacing:.05em; color:#438245; font-weight:800; }
h1,h2,h3,p { margin-top:0; }
h1 { font-size:clamp(42px, 6vw, 80px); line-height:.97; letter-spacing:-.07em; max-width:760px; margin:18px 0 22px; }
h2 { font-size:clamp(31px, 4vw, 50px); line-height:1; letter-spacing:-.055em; margin-bottom:18px; }
h3 { font-size:20px; letter-spacing:-.035em; margin-bottom:9px; }
.lead { font-size:20px; line-height:1.42; color:var(--muted); max-width:610px; }
.hero-note { background:var(--mint); padding:28px; border-radius:var(--radius); font-size:18px; line-height:1.35; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.micro { color:var(--muted); font-size:13px; line-height:1.45; }
.section { padding:88px 0; border-top:1px solid var(--line); }
.section--dark { color:white; background:var(--night); border:0; }
.section--mint { background:var(--mint); border:0; }
.intro { max-width:680px; }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:32px; }
.card { border:1px solid var(--line); background:var(--surface); padding:24px; border-radius:18px; }
.card p { margin:0; line-height:1.45; color:var(--muted); }
.section--dark .card { background:#29332e; border-color:#3a4941; }
.section--dark .card p { color:#c6d0c9; }
.steps { counter-reset:steps; display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:32px; }
.step { counter-increment:steps; border-top:1px solid currentColor; padding-top:14px; }
.step::before { content:"0" counter(steps); color:#80c85f; font-weight:800; }
.step p { margin:8px 0 0; color:#c6d0c9; line-height:1.4; }
.footer { padding:28px 0 50px; color:var(--muted); font-size:14px; }
.app-shell { min-height:100vh; }
.progress { height:4px; background:#e7ebe5; }
.progress i { display:block; height:100%; background:#6dbf66; transition:width .25s ease; }
.flow { padding:54px 0 80px; width:min(720px, calc(100% - 40px)); margin:auto; }
.back { display:inline-flex; color:var(--muted); font-size:14px; margin-bottom:30px; text-decoration:none; }
.flow h1 { font-size:clamp(34px, 5vw, 58px); max-width:640px; }
.flow .lead { font-size:18px; }
.form-card { margin-top:28px; border:1px solid var(--line); border-radius:var(--radius); background:white; padding:28px; }
.options { display:grid; gap:10px; margin:24px 0; }
.option { display:flex; gap:12px; align-items:flex-start; text-align:left; background:white; border:1px solid var(--line); border-radius:14px; padding:15px; line-height:1.35; }
.option:has(input:checked) { border-color:#5aa65e; box-shadow:0 0 0 3px #e3f5df; }
.option input { accent-color:#4f9c55; margin-top:3px; }
.field { display:grid; gap:7px; margin:16px 0; font-size:14px; font-weight:700; }
.field input,.field textarea,.field select { width:100%; border:1px solid var(--line); border-radius:12px; padding:13px; background:white; color:var(--ink); font-weight:500; }
.field textarea { resize:vertical; min-height:86px; }
.checkbox { display:flex; gap:10px; align-items:flex-start; font-size:14px; line-height:1.4; margin:14px 0; }
.checkbox input { margin-top:3px; accent-color:#4f9c55; }
.form-actions { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:28px; }
.notice { padding:14px 16px; background:#f5f0d9; border-radius:12px; font-size:14px; line-height:1.4; margin:16px 0; }
.notice--error { background:#fae5e2; color:var(--danger); }
.notice--success { background:#e2f4de; color:#286431; }
.candidate { display:grid; grid-template-columns:1fr auto; gap:20px; align-items:start; }
.candidate .meta { color:var(--muted); font-size:14px; margin-bottom:12px; }
.tag { display:inline-block; padding:6px 9px; border-radius:99px; background:#eef2ed; margin:4px 4px 0 0; font-size:12px; color:#55625a; }
.choice { border:1px solid var(--line); border-radius:12px; padding:10px; display:grid; gap:6px; min-width:150px; }
.choice label { font-size:13px; display:flex; gap:6px; align-items:center; }
.pair-head { background:var(--mint); border-radius:var(--radius); padding:28px; margin:20px 0; }
.pair-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.stat { background:white; border:1px solid var(--line); padding:20px; border-radius:16px; }
.stat small { color:var(--muted); display:block; margin-bottom:6px; }
.empty { padding:28px; border:1px dashed #bfc8be; border-radius:16px; color:var(--muted); }
.status { color:#3a7e41; font-weight:800; font-size:14px; }
.hidden { display:none!important; }
@media (max-width:760px) { .wrap { width:min(100% - 28px, 1120px); } .top { height:62px; } .nav { display:none; } .hero { padding:48px 0 42px; grid-template-columns:1fr; } .hero-note { margin-top:4px; } .section { padding:58px 0; } .cards,.steps { grid-template-columns:1fr; } .flow { padding-top:36px; width:min(100% - 28px,720px); } .form-card { padding:20px; } .candidate { grid-template-columns:1fr; } .choice { min-width:0; grid-template-columns:repeat(3,1fr); } .pair-grid { grid-template-columns:1fr; } }

/* публичный лендинг v2 – визуальный язык дизайн-системы хэдмейта */
.landing-page { --hm-ink:#060606; --hm-paper:#fff; --hm-cream:#fffbea; --hm-card:#fffef1; --hm-neon:#baff00; --hm-lilac:#c895f5; --hm-grey:#c8c8c8; --hm-page:#eee; min-height:100vh; margin:0; background:var(--hm-page); color:var(--hm-ink); font-family:"Montserrat","Avenir Next",Arial,sans-serif; }
.landing-page * { box-sizing:border-box; }
.landing-page a { color:inherit; }
.landing-frame { width:min(100%,540px); margin:0 auto; overflow:hidden; background:var(--hm-paper); box-shadow:0 0 0 1px rgba(0,0,0,.06); }
.landing-hero { position:relative; min-height:100svh; padding:22px 20px 26px; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; text-align:center; background:var(--hm-cream); border-radius:40px 40px 0 0; }
.landing-glow { position:absolute; width:350px; height:350px; left:50%; top:47%; transform:translate(-50%,-50%); border-radius:50%; background:rgba(186,255,0,.22); filter:blur(60px); pointer-events:none; }
.landing-header { position:relative; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:14px; text-align:left; }
.landing-wordmark { display:inline-block; font:italic 900 27px/.9 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-2.5px; transform:skew(-5deg) scaleX(1.03); text-decoration:none; }
.landing-menu { display:flex; gap:12px; align-items:center; font-size:11px; font-weight:750; }
.landing-menu a { text-decoration:none; }
.landing-menu a:nth-child(-n+2) { display:none; }
.landing-hero-copy { position:relative; z-index:1; margin:auto 0; padding:62px 0 46px; }
.landing-overline { margin:0 0 30px; font-size:13px; line-height:1.35; font-weight:800; }
.landing-hero h1,.landing-display { margin:0; font:900 clamp(39px,11vw,59px)/.94 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-2.3px; }
.landing-hero-text { max-width:440px; margin:32px auto 27px; font-size:18px; line-height:1.42; letter-spacing:-.25px; }
.landing-cta { min-height:58px; display:inline-flex; align-items:center; justify-content:center; padding:14px 28px; border:3px solid var(--hm-ink); border-radius:999px; background:var(--hm-neon); font-size:17px; font-weight:850; text-decoration:none; transition:transform .2s ease; }
.landing-cta:hover { transform:translateY(-2px) rotate(-1deg); }
.landing-cta:focus-visible,.landing-nav-link:focus-visible,.landing-faq summary:focus-visible { outline:4px solid var(--hm-lilac); outline-offset:4px; }
.landing-cta-note { max-width:410px; margin:14px auto 0; font-size:12px; line-height:1.45; }
.landing-marquee { position:relative; z-index:1; margin:0 -20px; overflow:hidden; white-space:nowrap; }
.landing-marquee-track { width:max-content; display:flex; font:900 16px/1 "Archivo Black","Arial Black",Arial,sans-serif; animation:hm-marquee 18s linear infinite; }
.landing-marquee-track span { padding-right:20px; }
@keyframes hm-marquee { to { transform:translateX(-50%); } }
.landing-section { position:relative; padding:76px 28px; background:var(--hm-paper); }
.landing-section--lilac { padding-top:94px; background:var(--hm-lilac); border-radius:42px 42px 0 0; }
.landing-section--cream { background:var(--hm-cream); border-radius:42px 42px 0 0; }
.landing-section--neon { background:var(--hm-neon); border-radius:42px 42px 0 0; }
.landing-kicker { margin:0 0 14px; font-size:13px; line-height:1.35; font-weight:850; }
.landing-section h2 { margin:0 0 28px; font:900 clamp(34px,9vw,49px)/.98 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-1.7px; }
.landing-section p { font-size:17px; line-height:1.5; letter-spacing:-.2px; }
.landing-section p:last-child { margin-bottom:0; }
.landing-sticker { position:relative; z-index:2; display:table; max-width:calc(100% + 10px); margin:-93px auto 50px; padding:7px 15px 9px; border:3px solid var(--hm-ink); border-radius:999px; background:var(--hm-neon); box-shadow:0 0 20px 3px rgba(186,255,0,.55); font:900 clamp(19px,5.7vw,29px)/1 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-.7px; text-align:center; transform:rotate(-3deg); }
.landing-sticker--white { background:white; box-shadow:none; }
.landing-grid { display:grid; gap:18px; }
.landing-card { position:relative; padding:25px 22px; border:3px solid var(--hm-ink); border-radius:28px; background:var(--hm-card); }
.landing-card h3 { margin:0 0 10px; font:900 21px/1.08 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-.7px; }
.landing-card p { margin:0; font-size:16px; line-height:1.48; }
.landing-recognition { margin-top:42px; }
.landing-recognition .landing-card:nth-child(2n) { transform:rotate(.6deg); }
.landing-photo { margin:32px 0 0; overflow:hidden; border:3px solid var(--hm-ink); border-radius:12px; background:var(--hm-grey); }
.landing-photo img { width:100%; display:block; filter:grayscale(1); animation:hm-handheld 3.6s steps(8,end) infinite alternate; }
@keyframes hm-handheld { 0%{transform:scale(1.02) translate(0,0);filter:grayscale(1) contrast(1)}30%{transform:scale(1.055) translate(-5px,2px);filter:grayscale(1) contrast(1.12)}60%{transform:scale(1.035) translate(4px,-2px);filter:grayscale(1) contrast(.96)}100%{transform:scale(1.075) translate(-2px,-5px);filter:grayscale(1) contrast(1.08)} }
@media (prefers-reduced-motion:reduce) { .landing-marquee-track,.landing-photo img { animation-play-state:paused; } }
@media (min-width:480px) { .landing-menu { gap:16px; font-size:12px; } .landing-menu a:nth-child(-n+2) { display:inline; } }
@media (max-width:419px) { .landing-hero { padding-inline:14px; border-radius:28px 28px 0 0; } .landing-menu a:not(.landing-nav-link--cta) { display:none; } .landing-section { padding-inline:18px; } .landing-hero h1,.landing-display { font-size:clamp(36px,11.2vw,47px); letter-spacing:-1.8px; } }
.landing-copy { font-size:17px; line-height:1.52; }
.landing-copy p { margin:0 0 24px; }
.landing-story { position:relative; padding:58px 24px 34px; border:3px solid var(--hm-ink); border-radius:42px; background:white; }
.landing-story .landing-sticker { position:absolute; top:-26px; left:-14px; margin:0; }
.landing-big-line { margin:0!important; font:900 clamp(30px,8.6vw,45px)/1 "Archivo Black","Arial Black",Arial,sans-serif!important; letter-spacing:-1.4px!important; }
.landing-conclusion { margin-top:28px!important; font-weight:850; }
.landing-feature-grid { display:grid; gap:54px; margin-top:74px; }
.landing-feature { position:relative; min-height:155px; padding:42px 22px 22px; border:3px solid var(--hm-ink); border-radius:28px; background:var(--hm-card); }
.landing-feature h3 { position:absolute; top:-26px; left:-12px; max-width:calc(100% + 10px); margin:0; padding:5px 15px 8px; border-radius:999px; background:var(--hm-neon); box-shadow:0 0 20px 3px rgba(186,255,0,.55); font:900 clamp(20px,5.8vw,29px)/1 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-.8px; transform:rotate(-2deg); }
.landing-feature p { margin:0; font-size:16px; }
.landing-steps { list-style:none; display:grid; gap:58px; margin:48px 0 0; padding:0; }
.landing-step { position:relative; padding-left:58px; }
.landing-step-number { position:absolute; left:0; top:-8px; font:300 46px/1 Georgia,serif; }
.landing-step h3 { display:inline; margin:0; padding:4px 11px 6px; background:var(--hm-neon); box-decoration-break:clone; -webkit-box-decoration-break:clone; font:900 22px/1.25 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-.7px; }
.landing-step p { margin:14px 0 0; font-size:16px; }
.landing-two-up { display:grid; gap:18px; }
.landing-rhythm { padding:24px 22px; border:3px solid var(--hm-ink); border-radius:28px; background:white; }
.landing-rhythm-label { display:inline-block; margin-bottom:12px; padding:5px 10px; border-radius:999px; background:var(--hm-neon); font-size:12px; font-weight:850; }
.landing-rhythm h3 { margin:0 0 12px; font:900 24px/1.05 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-.8px; }
.landing-rhythm p { margin:0; font-size:15px; }
.landing-week { display:grid; gap:0; margin-top:36px; border:3px solid var(--hm-ink); border-radius:28px; overflow:hidden; }
.landing-week-row { display:grid; grid-template-columns:84px 1fr; gap:12px; padding:20px 18px; background:white; border-bottom:3px solid var(--hm-ink); }
.landing-week-row:last-child { border-bottom:0; }
.landing-week-day { font:900 14px/1.2 "Archivo Black","Arial Black",Arial,sans-serif; }
.landing-week-row p { margin:0; font-size:15px; }
.landing-demo-note { margin-top:13px!important; font-size:12px!important; }
.landing-benefits { display:grid; gap:54px; margin-top:72px; }
.landing-benefit { position:relative; min-height:164px; padding:42px 24px 28px; border:3px solid var(--hm-ink); border-radius:28px; background:var(--hm-card); }
.landing-benefit h3 { position:absolute; left:-12px; top:-27px; max-width:calc(100% + 14px); margin:0; padding:5px 15px 8px; border-radius:999px; background:var(--hm-neon); box-shadow:0 0 20px 3px rgba(186,255,0,.55); font:900 clamp(19px,5.3vw,27px)/1 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-.8px; transform:rotate(-3deg); }
.landing-benefit p { margin:0; padding-right:34px; font-size:16px; }
.landing-benefit-emoji { position:absolute; right:12px; bottom:-25px; font-size:54px; line-height:1; filter:drop-shadow(0 2px 2px rgba(0,0,0,.16)); }
.landing-payment { padding:30px 24px; border:3px solid var(--hm-ink); border-radius:34px; background:white; }
.landing-payment-price { margin:12px 0 2px!important; font:900 clamp(52px,15vw,78px)/.9 "Archivo Black","Arial Black",Arial,sans-serif!important; letter-spacing:-3px!important; }
.landing-payment-meta { margin:0 0 24px!important; font-size:14px!important; }
.landing-list { list-style:none; display:grid; gap:13px; margin:25px 0; padding:0; }
.landing-list li { position:relative; padding-left:20px; font-size:15px; line-height:1.45; }
.landing-list li::before { content:"•"; position:absolute; left:0; font-weight:900; }
.landing-muted-list { padding:26px 24px; border:3px solid var(--hm-ink); border-radius:28px; background:var(--hm-grey); }
.landing-muted-list .landing-list { margin:0; }
.landing-safety-grid { display:grid; gap:16px; }
.landing-safety-grid .landing-card { background:white; }
.landing-proof { padding:32px 24px; border:3px solid var(--hm-ink); border-radius:42px; background:var(--hm-cream); }
.landing-proof strong { display:block; margin-bottom:14px; font:900 22px/1.05 "Archivo Black","Arial Black",Arial,sans-serif; }
.landing-fit-grid { display:grid; gap:18px; }
.landing-fit-card { padding:25px 22px; border:3px solid var(--hm-ink); border-radius:28px; background:white; }
.landing-fit-card:last-child { background:var(--hm-grey); }
.landing-fit-card h3 { margin:0 0 20px; font:900 24px/1.05 "Archivo Black","Arial Black",Arial,sans-serif; }
.landing-faq { display:grid; gap:16px; }
.landing-faq details { border-bottom:3px solid var(--hm-ink); padding:0 0 16px; }
.landing-faq summary { position:relative; list-style:none; padding-right:52px; cursor:pointer; font:900 21px/1.15 "Archivo Black","Arial Black",Arial,sans-serif; }
.landing-faq summary::-webkit-details-marker { display:none; }
.landing-faq summary::before,.landing-faq summary::after { content:""; position:absolute; right:10px; top:12px; width:24px; height:3px; background:var(--hm-ink); transition:transform .3s ease; }
.landing-faq summary::after { transform:rotate(90deg); }
.landing-faq details[open] summary::after { transform:rotate(0); }
.landing-faq details p { margin:18px 0 0; font-size:15px; }
.landing-final { text-align:center; }
.landing-final .landing-cta { margin-top:18px; }
.landing-footer { padding:64px 22px 92px; text-align:center; background:white; }
.landing-footer-logo { margin:0; font:italic 900 36px/.9 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-3px; transform:skew(-5deg); }
.landing-footer-links { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 18px; margin:28px 0; font-size:12px; }
.landing-footer-links a { text-decoration-thickness:1px; text-underline-offset:3px; }
.landing-footer small { display:block; margin-top:18px; font-size:11px; line-height:1.5; }
.cookie-consent { position:fixed; z-index:500; left:50%; bottom:18px; transform:translateX(-50%); width:min(720px, calc(100% - 28px)); display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 20px; border:2px solid #060606; border-radius:22px; background:#fff; color:#060606; box-shadow:6px 7px 0 rgba(6,6,6,.16); }
.cookie-consent[hidden] { display:none; }
.cookie-consent strong { display:block; margin-bottom:5px; font-size:14px; }
.cookie-consent p { margin:0; color:#555; font-size:12px; line-height:1.45; }
.cookie-consent p a { text-underline-offset:2px; }
.cookie-consent-actions { display:flex; flex:0 0 auto; gap:8px; }
.cookie-consent-actions .button { min-height:40px; padding:9px 12px; font-size:12px; white-space:nowrap; }
.cookie-settings-link { position:fixed; z-index:490; right:14px; bottom:12px; border:1px solid #aaa; border-radius:999px; padding:7px 10px; background:rgba(255,255,255,.94); color:#555; font-size:11px; cursor:pointer; }
@media (max-width:620px) { .cookie-consent { display:block; padding:16px; } .cookie-consent-actions { margin-top:12px; justify-content:flex-end; } .cookie-settings-link { bottom:8px; } }
.landing-anchor { scroll-margin-top:18px; }
@media (max-width:419px) { .landing-story { padding-inline:19px; } .landing-feature h3,.landing-benefit h3 { left:-7px; } .landing-week-row { grid-template-columns:70px 1fr; padding-inline:14px; } }

/* исходная композиция лендинга */
.original-page {
  --original-ink:#060606;
  --original-paper:#fff;
  --original-cream:#fffbea;
  --original-neon:#baff00;
  --original-lilac:#c895f5;
  --original-line:3px;
  width:min(100%,540px);
  min-height:100svh;
  margin:0 auto;
  overflow:hidden;
  color:var(--original-ink);
  background:var(--original-paper);
  box-shadow:0 0 0 1px rgba(0,0,0,.06);
  font-family:"Montserrat","Avenir Next",Arial,sans-serif;
}
.original-page * { box-sizing:border-box; }
.original-page img { max-width:100%; }
.original-hero {
  position:relative;
  min-height:100svh;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:40px 20px 46px;
  overflow:hidden;
  text-align:center;
  background:var(--original-cream);
  border-radius:40px 40px 0 0;
}
.original-hero::after {
  content:'';
  position:absolute;
  z-index:0;
  left:0;
  right:0;
  bottom:0;
  height:130px;
  background:linear-gradient(to bottom, rgba(255,255,255,0) 0%, #fff 100%);
  pointer-events:none;
}
.original-glow {
  position:absolute;
  z-index:0;
  width:350px;
  height:350px;
  left:50%;
  top:48%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:rgba(186,255,0,.22);
  filter:blur(60px);
  pointer-events:none;
}
.original-hero-copy,.original-tag-field { position:relative; z-index:1; }
.original-hero-copy { margin:auto 0; }
.original-eyebrow { margin:0 0 25px; font-size:13px; line-height:1.35; font-weight:800; }
.original-logo {
  margin:0;
  font:italic 950 clamp(64px,17vw,92px)/.9 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-7px;
  transform:skew(-5deg) scaleX(1.03);
}
.original-hero-subtitle { margin:42px 0 34px; font-size:clamp(24px,7.5vw,28px); line-height:1.25; letter-spacing:-.4px; }
.original-button {
  min-height:56px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 30px;
  border:3px solid transparent;
  border-radius:999px;
  color:var(--original-ink);
  font-size:20px;
  font-weight:800;
  text-decoration:none;
  box-shadow:none;
  transition:transform .18s ease,box-shadow .18s ease;
}
.original-button:hover { transform:translateY(-2px) rotate(-1deg); box-shadow:3px 3px 0 var(--original-ink); }
.original-button:focus-visible,.original-accordion-button:focus-visible { outline:4px solid var(--original-ink); outline-offset:4px; }
.original-button-neon { background:var(--original-neon); }
.original-button-note { max-width:410px; margin:13px auto 0; color:#8a8a80; font-size:13px; line-height:1.45; }
.original-tag-field { margin:22px -20px 0; }
.original-tag-row { display:flex; justify-content:center; gap:10px; white-space:nowrap; }
.original-tag-row span,.original-marquee-soft span { padding:5px 10px; background:#fff; border-radius:999px; font-size:18px; }
.original-marquee { width:100%; overflow:hidden; }
.original-marquee-track { width:max-content; display:flex; will-change:transform; animation:original-marquee 20s linear infinite; }
.original-reverse .original-marquee-track { animation-direction:reverse; animation-duration:24s; }
.original-marquee-soft { margin-top:6px; filter:blur(3.5px); opacity:.78; }
.original-marquee-soft .original-marquee-track { gap:8px; }
@keyframes original-marquee { to { transform:translateX(-50%); } }
.original-intro { padding:70px 28px 0; background:#fff; }
.original-outlined-story { position:relative; padding:54px 42px 86px; border:var(--original-line) solid var(--original-ink); border-radius:42px; }
.original-sticker {
  display:inline-block;
  margin:0;
  padding:4px 18px 7px;
  border-radius:999px;
  background:var(--original-neon);
  font:800 1rem/1 "Montserrat","Avenir Next",Arial,sans-serif;
  letter-spacing:-.4px;
}
.original-sticker-title { position:absolute; left:6px; top:-27px; white-space:nowrap; font-size:clamp(29px,8.5vw,45px); transform:rotate(-3deg); }
.original-outlined-story p { margin:0 0 24px; font-size:21px; line-height:1.52; letter-spacing:-.25px; }
.original-outlined-story h3 { margin:28px 0 12px; font-size:21px; line-height:1.3; font-weight:850; }
.original-reaction-frame { margin:36px 0 28px; }
.original-moving-still { overflow:hidden; border-radius:12px; }
.original-moving-still img { display:block; width:100%; height:100%; object-fit:cover; }
@keyframes original-handheld {
  0% { transform:scale(1.02) translate(0,0); filter:contrast(1); }
  30% { transform:scale(1.055) translate(-5px,2px); filter:contrast(1.12); }
  60% { transform:scale(1.035) translate(4px,-2px); filter:contrast(.96); }
  100% { transform:scale(1.075) translate(-2px,-5px); filter:contrast(1.08); }
}
.original-two-ways-list { margin-top:26px; }
.original-numbered-way { display:grid; grid-template-columns:44px 1fr; gap:4px; align-items:start; }
.original-numbered-way strong { font:950 42px/1 "Archivo Black","Arial Black",Arial,sans-serif; }
.original-numbered-way p { margin:0 0 7px; }
.original-sticker-choice { position:relative; display:block; width:max-content; max-width:100%; margin:-35px auto 45px; padding:8px 22px 10px; border:var(--original-line) solid var(--original-ink); background:#fff; font-size:clamp(31px,8.2vw,43px); white-space:nowrap; transform:rotate(-3deg); }
@media (max-width:420px) {
  .original-hero { border-radius:28px 28px 0 0; }
  .original-logo { letter-spacing:-5px; }
  .original-hero-lead { font-size:15px; }
  .original-outlined-story { padding:48px 22px 72px; }
  .original-intro { padding-inline:14px; }
  .original-outlined-story p { font-size:18px; }
  .original-sticker-title { left:0; font-size:29px; }
  .original-sticker-choice { font-size:31px; padding-inline:13px; }
}
@media (max-width:359px) {
  .original-hero { padding-inline:14px; }
  .original-logo { font-size:56px; letter-spacing:-4px; }
  .original-hero-subtitle { margin:32px 0 30px; }
  .original-button { width:100%; padding-inline:16px; font-size:18px; }
  .original-tag-row span,.original-marquee-soft span { font-size:15px; }
  .original-sticker-title { font-size:26px; }
  .original-sticker-choice { padding-inline:10px; font-size:27px; }
  .original-outlined-story { border-radius:30px; }
}
@media (prefers-reduced-motion:reduce) {
  .original-marquee-track,.original-moving-still img { animation-play-state:paused; }
}

body:has(.original-page) { background:#fff; overflow-x:hidden; }
html:has(.original-page) { background:#fff; }
.original-ways { padding:0 0 28px; background:#fff; }
.original-ways-slider {
  display:flex;
  gap:17px;
  overflow-x:auto;
  padding:0 28px 22px;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
  overscroll-behavior-inline:contain;
  scroll-padding-inline:28px;
  touch-action:auto;
}
.original-ways-slider::-webkit-scrollbar { display:none; }
.original-way-card { flex:0 0 calc(100% - 50px); overflow:hidden; border-radius:34px; scroll-snap-align:center; }
.original-way-card-grey { padding:0 14px 18px; background:#c8c8c8; }
.original-way-card-neon { padding:0 14px 18px; background:var(--original-neon); }
.original-way-media { position:relative; height:300px; margin:0 -14px; border-radius:0; }
.original-way-media img { filter:grayscale(1); }
.original-way-title { position:absolute; inset:0; display:grid; align-content:center; justify-items:center; color:#fff; text-align:center; }
.original-way-title span { margin-bottom:12px; font-size:22px; font-style:italic; }
.original-way-title strong { font:italic 950 42px/.86 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-1px; }
.original-way-copy { margin-top:-2px; padding:20px 20px 9px; background:#fff; border:var(--original-line) solid var(--original-ink); border-radius:27px; }
.original-way-copy p,.original-benefit-card p { margin:0 0 24px; font-size:20px; line-height:1.45; letter-spacing:-.25px; }
.original-slider-dots { display:flex; justify-content:center; gap:7px; }
.original-slider-dots button { width:8px; height:8px; padding:0; border:0; border-radius:50%; background:#cfcfcf; transition:width .2s ease,background .2s ease; }
.original-slider-dots button.active { width:25px; border-radius:999px; background:var(--original-neon); }
.original-slider-dots button:focus-visible { outline:3px solid var(--original-ink); outline-offset:3px; }
.original-bold-marquee { padding:23px 0 45px; background:#fff; }
.original-bold-marquee .original-marquee-track { animation-duration:16s; }
.original-bold-marquee span { font:950 27px/1 "Archivo Black","Arial Black",Arial,sans-serif; white-space:nowrap; }
.original-benefits { padding:94px 30px 62px; background:var(--original-lilac); border-radius:42px 42px 0 0; }
.original-benefits > h2,.original-how > h2,.original-steps > h2 {
  margin:0;
  text-align:center;
  font:950 clamp(32px,8vw,44px)/1.04 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-1.5px;
}
.original-benefits > h2 em,.original-steps > h2 em { font-style:italic; }
.original-benefit-stack { margin-top:86px; display:grid; gap:72px; }
.original-benefit-card { position:relative; min-height:176px; padding:54px 24px 34px; background:#fff; border:var(--original-line) solid var(--original-ink); border-radius:28px; }
.original-benefit-card h3 { position:absolute; left:-25px; top:-33px; width:calc(100% + 18px); padding:7px 16px 9px; font-size:clamp(19px,5.25vw,27px); line-height:1.03; transform:rotate(-3deg); }
.original-benefit-card:nth-child(even) h3 { transform:rotate(-2deg); }
.original-benefit-card p { margin:0; padding-right:28px; }
.original-emoji { position:absolute; font-size:55px; line-height:1; filter:drop-shadow(0 2px 2px rgba(0,0,0,.16)); }
.original-eyes { right:14px; bottom:-28px; }
.original-sparkles { right:10px; bottom:-27px; }
.original-magnifier { right:9px; bottom:-35px; transform:rotate(-13deg); }
.original-heart { right:16px; bottom:-26px; }
.original-how { padding:100px 38px 54px; background:#fff; }
.original-how > h2 { margin-bottom:70px; }
.original-accordion { display:grid; gap:34px; }
.original-accordion-button {
  width:100%;
  display:grid;
  grid-template-columns:1fr 66px;
  align-items:center;
  gap:15px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--original-ink);
  text-align:left;
  font:850 26px/.92 "Archivo Black","Arial Black",Arial,sans-serif;
  cursor:pointer;
}
.original-accordion-button i { position:relative; width:50px; height:50px; border-radius:50%; background:var(--original-lilac); transition:transform .3s ease; }
.original-accordion-button i::before,.original-accordion-button i::after { content:""; position:absolute; background:var(--original-neon); left:13px; right:13px; top:23px; height:3px; }
.original-accordion-button i::after { top:13px; bottom:13px; left:24px; width:3px; height:auto; }
.original-accordion-button[aria-expanded="true"] i { transform:rotate(45deg); }
.original-accordion-panel { display:grid; grid-template-rows:0fr; transition:grid-template-rows .35s ease; }
.original-accordion-panel p { min-height:0; overflow:hidden; margin:0; padding-right:78px; font-size:18px; line-height:1.45; }
.original-accordion-button[aria-expanded="true"] + .original-accordion-panel { grid-template-rows:1fr; }
.original-accordion-button[aria-expanded="true"] + .original-accordion-panel p { padding-top:15px; }
.original-accordion-item + .original-accordion-item {
  padding-top:24px;
  border-top:1px solid rgba(0,0,0,.16);
}
.original-steps { position:relative; padding:95px 34px 72px; overflow:hidden; background:#fff; }
.original-steps-glow { position:absolute; z-index:0; width:460px; height:780px; left:50%; top:42%; transform:translate(-50%,-50%); border-radius:50%; background:rgba(186,255,0,.22); filter:blur(72px); opacity:.75; pointer-events:none; }
.original-steps > *:not(.original-steps-glow) { position:relative; z-index:1; }
.original-steps ol { list-style:none; margin:62px 0 0; padding:0; display:grid; gap:72px; }
.original-steps li { text-align:center; }
.original-step-number { display:block; margin-bottom:4px; font:52px/1 Georgia,serif; }
.original-steps h3 { max-width:100%; font-size:clamp(18px,4.8vw,22px); line-height:1.05; transform:rotate(-2deg); }
.original-steps li p { max-width:410px; margin:12px auto 0; font-size:18px; line-height:1.46; }
.original-terms { margin-top:82px; padding:34px 26px 30px; border:var(--original-line) solid var(--original-ink); border-radius:34px; background:#fff; text-align:left; }
.original-terms-label { display:inline-block; margin:0; padding:5px 11px 7px; border-radius:999px; background:var(--original-neon); font-weight:850; }
.original-price { margin:22px 0 3px; font:950 clamp(55px,15vw,78px)/.88 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-3px; }
.original-terms-meta { margin:0 0 24px; font-size:14px; line-height:1.45; }
.original-terms ul { display:grid; gap:11px; margin:22px 0; padding:0 0 0 22px; }
.original-terms li,.original-terms > p:not(.original-price):not(.original-terms-label):not(.original-terms-meta) { font-size:16px; line-height:1.45; }
.original-terms .original-button { width:100%; margin-top:12px; padding-inline:14px; }
.original-footer { padding:78px 22px 66px; text-align:center; background:#fff; }
.original-footer > p { margin:0; font:950 23px/1 "Archivo Black","Arial Black",Arial,sans-serif; }
.original-footer > span { display:block; margin:10px 0 60px; font:300 22px/1 Georgia,serif; }
.original-button-outline { width:100%; min-height:84px; border:var(--original-line) solid var(--original-ink); background:#fff; font-size:27px; }
.original-footer small { display:block; max-width:420px; margin:22px auto 0; font-size:12px; line-height:1.5; }
.original-made-with {
  margin:28px auto 0 !important;
  color:#8a8a8a;
  font:400 11px/1.35 "Montserrat","Avenir Next",Arial,sans-serif !important;
}
.original-made-with span {
  color:#8a8a8a;
  font-size:11px;
}
.original-blog-nav {
  position:absolute;
  z-index:2;
  top:24px;
  right:20px;
  padding:8px 13px 9px;
  border:var(--original-line) solid var(--original-ink);
  border-radius:999px;
  background:#fff;
  font-size:13px;
  font-weight:850;
  text-decoration:none;
}
.original-footer-blog {
  display:inline-block;
  margin:-35px 0 24px;
  font-size:15px;
  font-weight:850;
  text-decoration-thickness:2px;
  text-underline-offset:4px;
}
.original-blog-page { background:#fff; }
.original-blog-header {
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.original-blog-brand {
  font:italic 950 29px/.9 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-2.7px;
  text-decoration:none;
  transform:skew(-5deg) scaleX(1.03);
}
.original-blog-menu { display:flex; gap:13px; font-size:12px; font-weight:850; }
.original-blog-menu a { text-decoration:none; }
.original-blog-menu a[aria-current="page"] { text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:4px; }
.original-blog-hero,.original-article-hero {
  position:relative;
  overflow:hidden;
  padding:24px 22px 58px;
  background:var(--original-cream);
  border-radius:40px 40px 0 0;
}
.original-blog-hero-copy,.original-article-heading { position:relative; z-index:1; }
.original-blog-hero-copy { padding-top:90px; }
.original-blog-hero h1,.original-article-heading h1 {
  margin:0 0 25px;
  font:950 clamp(42px,11vw,61px)/.93 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-2.4px;
}
.original-blog-hero-copy > p:last-child,.original-article-heading > p:last-child { margin:0; font-size:19px; line-height:1.43; letter-spacing:-.3px; }
.original-blog-list { display:grid; gap:22px; padding:34px 22px 72px; background:#fff; }
.original-blog-tile {
  position:relative;
  min-height:300px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:31px 24px 24px;
  border:var(--original-line) solid var(--original-ink);
  border-radius:30px;
  background:#fff;
}
.original-blog-tile:nth-child(3n + 2) { transform:rotate(.6deg); }
.original-blog-tile:nth-child(even) { background:var(--original-cream); }
.original-blog-number {
  display:inline-block;
  margin-bottom:34px;
  padding:5px 10px 6px;
  border:2px solid var(--original-ink);
  border-radius:999px;
  background:#fff;
  font:850 12px/1 "Montserrat",Arial,sans-serif;
}
.original-blog-tile h2 { margin:0 0 14px; font:950 clamp(28px,7.8vw,40px)/.98 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-1.25px; }
.original-blog-tile p { max-width:390px; margin:0 0 24px; font-size:17px; line-height:1.4; }
.original-blog-read { min-height:48px; margin-top:auto; padding:11px 20px; background:var(--original-neon); font-size:16px; }
.original-blog-footer { padding:68px 22px 76px; background:var(--original-lilac); text-align:center; border-radius:42px 42px 0 0; }
.original-blog-footer p { max-width:390px; margin:0 auto 24px; font:950 clamp(31px,8vw,43px)/.98 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-1.6px; }
.original-article-hero { padding-bottom:48px; }
.original-article-heading { padding-top:74px; }
.original-article-back {
  display:inline-block;
  margin-bottom:34px;
  font-size:14px;
  font-weight:850;
  text-decoration-thickness:2px;
  text-underline-offset:4px;
}
.original-article-heading .original-eyebrow { margin-bottom:18px; }
.original-article-copy { padding:48px 28px 76px; background:#fff; }
.original-article-copy > p { margin:0 0 25px; font-size:19px; line-height:1.52; letter-spacing:-.25px; }
.original-article-copy > p:nth-child(4n + 1) { font-weight:750; }
.original-article-cta { margin:60px -6px 38px; padding:29px 24px 30px; border:var(--original-line) solid var(--original-ink); border-radius:30px; background:var(--original-lilac); }
.original-article-cta p { margin:0 0 22px; font:950 26px/1.03 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-.9px; }
.original-article-back--bottom { margin:0; }
.original-blog-nav:focus-visible,.original-blog-header a:focus-visible,.original-article-back:focus-visible,.original-footer-blog:focus-visible { outline:4px solid var(--original-lilac); outline-offset:4px; }
@media (max-width:420px) {
  .original-way-card { flex-basis:calc(100% - 35px); }
  .original-ways-slider { padding-inline:14px; scroll-padding-inline:14px; }
  .original-way-copy p { font-size:18px; }
  .original-way-title strong { font-size:35px; }
  .original-benefits { padding-inline:20px; }
  .original-benefit-card h3 { left:-10px; width:calc(100% + 4px); font-size:clamp(18px,5.55vw,23px); }
  .original-benefit-card p { font-size:18px; }
  .original-how { padding-inline:26px; }
  .original-accordion-button { grid-template-columns:1fr 58px; font-size:22px; }
  .original-accordion-button i { width:46px; height:46px; }
  .original-accordion-button i::before { top:21px; }
  .original-accordion-button i::after { left:22px; }
  .original-accordion-panel p { padding-right:14px; }
  .original-steps { padding-inline:18px; }
  .original-steps li p { font-size:18px; }
  .original-terms { padding-inline:20px; }
  .original-button-outline { font-size:20px; }
  .original-blog-hero,.original-article-hero { padding-inline:18px; border-radius:28px 28px 0 0; }
  .original-blog-hero-copy { padding-top:76px; }
  .original-blog-hero h1,.original-article-heading h1 { font-size:clamp(38px,10.4vw,50px); letter-spacing:-1.8px; }
  .original-blog-list { padding-inline:18px; }
  .original-blog-tile { min-height:280px; padding-inline:20px; }
  .original-blog-tile h2 { font-size:clamp(26px,7.5vw,34px); }
  .original-article-copy { padding-inline:22px; }
  .original-article-copy > p { font-size:18px; }
}
@media (max-width:359px) {
  .original-benefits > h2,.original-how > h2,.original-steps > h2 { font-size:34px; }
  .original-benefit-card h3 { font-size:17px; }
  .original-price { font-size:50px; }
  .original-terms .original-button { padding-inline:12px; font-size:16px; }
  .original-button-outline { font-size:18px; }
}

/* анкеты и механика – продолжение визуального языка основного лендинга */
body:has(.app-shell) { background:#fff; }
html:has(.app-shell) { background:#fff; }
.app-shell {
  --flow-ink:#060606;
  --flow-paper:#fff;
  --flow-cream:#fffbea;
  --flow-neon:#baff00;
  --flow-lilac:#c895f5;
  --flow-grey:#c8c8c8;
  width:min(100%,540px);
  min-height:100svh;
  margin:0 auto;
  overflow:hidden;
  color:var(--flow-ink);
  background:var(--flow-paper);
  box-shadow:0 0 0 1px rgba(0,0,0,.06);
  font-family:"Montserrat","Avenir Next",Arial,sans-serif;
}
.app-shell * { box-sizing:border-box; }
.app-shell a { color:inherit; }
.app-shell .progress {
  position:sticky;
  z-index:10;
  top:0;
  width:100%;
  height:9px;
  overflow:hidden;
  background:var(--flow-grey);
  border-bottom:3px solid var(--flow-ink);
}
.app-shell .progress i {
  display:block;
  height:100%;
  background:var(--flow-ink);
  border-right:3px solid var(--flow-ink);
  transition:width .25s ease;
}
.app-shell .top {
  width:100%;
  min-height:82px;
  height:auto;
  margin:0;
  padding:20px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  background:var(--flow-cream);
  border-radius:0 0 32px 32px;
}
.app-shell:not(:has(.progress)) .top { border-radius:36px 36px 32px 32px; }
.app-shell .brand {
  flex:0 0 auto;
  display:inline-block;
  font:italic 900 27px/.9 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-2.5px;
  text-decoration:none;
  transform:skew(-5deg) scaleX(1.03);
}
.app-shell .nav { display:none; }
.app-shell .flow {
  position:relative;
  isolation:isolate;
  width:100%;
  min-height:calc(100svh - 91px);
  margin:0;
  padding:48px 28px 84px;
  overflow:hidden;
  background:linear-gradient(180deg,var(--flow-cream) 0 250px,var(--flow-paper) 430px);
}
.app-shell .flow::before {
  content:"";
  position:absolute;
  z-index:-1;
  width:390px;
  height:390px;
  left:50%;
  top:88px;
  transform:translateX(-50%);
  border-radius:50%;
  background:rgba(200,149,245,.34);
  filter:blur(72px);
  pointer-events:none;
}
.app-shell .back {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  margin:0 0 32px;
  padding:8px 13px 9px;
  border:2px solid var(--flow-ink);
  border-radius:999px;
  background:var(--flow-paper);
  color:var(--flow-ink);
  font-size:13px;
  line-height:1;
  font-weight:800;
  text-decoration:none;
}
.app-shell .eyebrow {
  display:table;
  max-width:100%;
  margin:0 0 21px;
  padding:6px 12px 7px;
  border:3px solid var(--flow-ink);
  border-radius:999px;
  background:var(--flow-neon);
  color:var(--flow-ink);
  box-shadow:0 0 18px 2px rgba(186,255,0,.34);
  font-size:13px;
  line-height:1;
  font-weight:900;
  letter-spacing:0;
  transform:rotate(-2deg);
}
.app-shell .flow h1 {
  max-width:100%;
  margin:0 0 24px;
  overflow-wrap:break-word;
  font:900 clamp(35px,9vw,49px)/.98 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-1.65px;
}
.app-shell .flow > .lead {
  max-width:450px;
  margin:0;
  color:var(--flow-ink);
  font-size:17px;
  line-height:1.52;
  letter-spacing:-.2px;
}
.app-shell .flow > .intro-note {
  max-width:450px;
  margin:16px 0 0;
  padding:2px 0 2px 16px;
  border-left:4px solid var(--flow-lilac);
  color:var(--flow-ink);
  font-size:15px;
  line-height:1.5;
}
.app-shell .form-card {
  position:relative;
  margin-top:36px;
  padding:28px 24px 30px;
  border:3px solid var(--flow-ink);
  border-radius:30px;
  background:var(--flow-paper);
  box-shadow:5px 6px 0 rgba(0,0,0,.10);
}
.app-shell .form-card > h3,
.app-shell .stat h3 {
  margin:0 0 14px;
  font:900 24px/1.08 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-.75px;
}
.app-shell .form-card > h3:first-child {
  display:table;
  max-width:calc(100% + 10px);
  margin:-12px 0 22px -7px;
  padding:7px 11px 8px;
  border:2px solid var(--flow-ink);
  border-radius:999px;
  background:var(--flow-lilac);
  transform:rotate(-1.5deg);
}
.app-shell .field {
  display:grid;
  gap:9px;
  margin:24px 0;
  color:var(--flow-ink);
  font-size:16px;
  line-height:1.35;
  font-weight:850;
}
.app-shell .field:first-of-type { margin-top:0; }
.app-shell .form-card > .button { width:100%; margin-top:6px; }
.app-shell .field input,
.app-shell .field textarea,
.app-shell .field select {
  width:100%;
  min-height:54px;
  padding:14px 15px;
  border:2px solid var(--flow-ink);
  border-radius:14px;
  outline:0;
  background:var(--flow-paper);
  color:var(--flow-ink);
  font-size:16px;
  line-height:1.4;
  font-weight:600;
  transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.app-shell .field textarea { min-height:112px; resize:vertical; }
.app-shell .field input::placeholder,
.app-shell .field textarea::placeholder { color:#686868; opacity:1; }
.app-shell .field input:focus,
.app-shell .field textarea:focus,
.app-shell .field select:focus {
  background:#fff;
  box-shadow:0 0 0 4px var(--flow-lilac);
}
.app-shell .field:has(select) { position:relative; }
.app-shell .field select {
  appearance:none;
  padding-right:54px;
  background-color:var(--flow-paper);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'%3E%3Cpath d='m3 6 6 6 6-6' fill='none' stroke='%23060606' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 17px center;
  background-size:18px 18px;
  cursor:pointer;
  font-weight:800;
}
.app-shell .field select:focus { background-color:var(--flow-paper); }
.app-shell .field select option { background:var(--flow-paper); color:var(--flow-ink); font-weight:700; }
.app-shell .field select option:checked { background:var(--flow-neon); color:var(--flow-ink); }
.app-shell .field .select-native {
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.app-shell .select-control { position:relative; width:100%; }
.app-shell .select-trigger {
  width:100%;
  min-height:54px;
  display:flex;
  align-items:center;
  padding:14px 54px 14px 15px;
  border:2px solid var(--flow-ink);
  border-radius:14px;
  outline:0;
  background:var(--flow-paper);
  color:var(--flow-ink);
  font-size:16px;
  line-height:1.4;
  font-weight:800;
  text-align:left;
  cursor:pointer;
}
.app-shell .select-trigger::after {
  content:"";
  position:absolute;
  right:18px;
  top:50%;
  width:10px;
  height:10px;
  border-right:3px solid var(--flow-ink);
  border-bottom:3px solid var(--flow-ink);
  transform:translateY(-68%) rotate(45deg);
  transition:transform .18s ease;
  pointer-events:none;
}
.app-shell .select-trigger[aria-expanded="true"] {
  box-shadow:0 0 0 4px var(--flow-lilac);
}
.app-shell .select-trigger[aria-expanded="true"]::after {
  transform:translateY(-30%) rotate(225deg);
}
.app-shell .select-trigger[aria-invalid="true"] { box-shadow:0 0 0 4px #ffb4ac; }
.app-shell .select-menu {
  position:absolute;
  z-index:30;
  top:calc(100% + 9px);
  left:0;
  right:0;
  display:grid;
  gap:7px;
  padding:8px;
  border:3px solid var(--flow-ink);
  border-radius:18px;
  background:var(--flow-paper);
  box-shadow:5px 5px 0 var(--flow-ink);
}
.app-shell .select-menu[hidden] { display:none; }
.app-shell .select-menu-option {
  width:100%;
  min-height:47px;
  padding:11px 12px;
  border:2px solid transparent;
  border-radius:12px;
  background:var(--flow-paper);
  color:var(--flow-ink);
  font-size:15px;
  line-height:1.3;
  font-weight:750;
  text-align:left;
  cursor:pointer;
}
.app-shell .select-menu-option:hover,
.app-shell .select-menu-option:focus-visible { border-color:var(--flow-ink); background:var(--flow-cream); outline:0; }
.app-shell .select-menu-option.is-selected { border-color:var(--flow-ink); background:var(--flow-lilac); }
.app-shell .options {
  min-width:0;
  display:grid;
  gap:11px;
  margin:34px 0;
  padding:0;
  border:0;
}
.app-shell .options legend {
  width:100%;
  margin:0 0 14px;
  padding:0;
  font:900 21px/1.1 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-.55px;
}
.app-shell .option {
  min-width:0;
  min-height:58px;
  display:flex;
  align-items:center;
  gap:13px;
  padding:14px 15px;
  border:2px solid var(--flow-ink);
  border-radius:17px;
  background:var(--flow-paper);
  color:var(--flow-ink);
  font-size:15px;
  line-height:1.35;
  font-weight:700;
  cursor:pointer;
  transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.app-shell .option:hover { transform:translateY(-1px); }
.app-shell .option:has(input:checked) {
  border-color:var(--flow-ink);
  background:var(--flow-lilac);
  box-shadow:4px 4px 0 var(--flow-ink);
}
.app-shell .option input[type="radio"],
.app-shell .choice input[type="radio"] {
  flex:0 0 22px;
  width:22px;
  height:22px;
  margin:0;
  appearance:none;
  border:2px solid var(--flow-ink);
  border-radius:50%;
  background:#fff;
}
.app-shell .option input[type="radio"]:checked,
.app-shell .choice input[type="radio"]:checked {
  background:radial-gradient(circle,var(--flow-ink) 0 42%,#fff 45% 100%);
}
.app-shell .checkbox {
  min-height:48px;
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:16px 0;
  padding:13px 14px;
  border:2px solid var(--flow-ink);
  border-radius:15px;
  background:var(--flow-paper);
  color:var(--flow-ink);
  font-size:14px;
  line-height:1.45;
  font-weight:650;
  cursor:pointer;
}
.app-shell .checkbox:has(input:checked) { background:var(--flow-paper); box-shadow:3px 3px 0 var(--flow-ink); }
.app-shell .checkbox input {
  flex:0 0 20px;
  width:20px;
  height:20px;
  margin:0;
  accent-color:var(--flow-ink);
}
.app-shell .button {
  min-height:54px;
  max-width:100%;
  padding:13px 22px 14px;
  border:3px solid var(--flow-ink);
  border-radius:999px;
  background:var(--flow-neon);
  color:var(--flow-ink);
  font-size:15px;
  line-height:1.15;
  font-weight:900;
  text-align:center;
  text-decoration:none;
  box-shadow:none;
  transition:transform .18s ease,box-shadow .18s ease;
}
.app-shell .button:hover {
  background:var(--flow-neon);
  transform:translateY(-2px) rotate(-1deg);
  box-shadow:3px 3px 0 var(--flow-ink);
}
.app-shell .button--line { background:var(--flow-paper); }
.app-shell .button--line:hover { background:var(--flow-paper); }
.app-shell .top .button--line,
.app-shell .top .button--line:hover { background:var(--flow-neon); }
.app-shell .button--small {
  min-height:44px;
  padding:9px 14px 10px;
  border-width:2px;
  font-size:13px;
}
.app-shell .button:focus-visible,
.app-shell .back:focus-visible,
.app-shell .option:has(input:focus-visible),
.app-shell .checkbox:has(input:focus-visible) {
  outline:4px solid var(--flow-lilac);
  outline-offset:3px;
}

/* Consent rows in the first onboarding screen stay quiet and editorial,
   so the legal copy does not compete with the primary fields. */
.app-shell .request-form .checkbox {
  min-height:0;
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  gap:10px;
  margin:10px 0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#74777a;
  font-size:13px;
  line-height:1.4;
  font-weight:500;
  text-align:left;
  box-shadow:none;
}
.app-shell .request-form .checkbox span { flex:1 1 auto; text-align:left; }
.app-shell .request-form .checkbox:has(input:checked) {
  background:transparent;
  box-shadow:none;
}
.app-shell .request-form .checkbox input {
  flex:0 0 17px;
  width:17px;
  height:17px;
  margin:0;
  accent-color:#74777a;
}
.app-shell .request-form .checkbox a {
  color:inherit;
  text-underline-offset:2px;
}
.app-shell .request-form .checkbox:has(input:focus-visible) {
  outline:3px solid var(--flow-lilac);
  outline-offset:4px;
}
.app-shell .request-form .consent-group {
  margin-top:22px;
}
.app-shell .form-actions {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:32px;
}
.app-shell .hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:25px;
}
.app-shell .micro {
  color:#444;
  font-size:13px;
  line-height:1.5;
}
.app-shell .notice {
  margin:18px 0;
  padding:15px 16px;
  border:2px solid var(--flow-ink);
  border-radius:15px;
  background:var(--flow-paper);
  color:var(--flow-ink);
  font-size:14px;
  line-height:1.45;
  font-weight:650;
}
.app-shell .notice--success { background:var(--flow-neon); }
.app-shell .notice--error { background:#ffb4ac; }
.app-shell .card.candidate {
  margin:0 0 18px;
  padding:22px 20px;
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
  border:3px solid var(--flow-ink);
  border-radius:24px;
  background:var(--flow-paper);
}
.app-shell .candidate h3 {
  margin:0 0 10px;
  font:900 25px/1 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-.7px;
}
.app-shell .candidate .meta {
  margin-bottom:15px;
  color:#414141;
  font-size:13px;
  line-height:1.45;
  font-weight:700;
}
.app-shell .tag {
  display:inline-block;
  max-width:100%;
  margin:5px 4px 0 0;
  padding:6px 9px 7px;
  border:2px solid var(--flow-ink);
  border-radius:999px;
  background:var(--flow-paper);
  color:var(--flow-ink);
  font-size:12px;
  line-height:1.25;
  font-weight:800;
}
.app-shell .candidate .tag:first-child { background:var(--flow-lilac); }
.app-shell .choice {
  min-width:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  padding:10px;
  border:2px solid var(--flow-ink);
  border-radius:16px;
  background:var(--flow-lilac);
}
.app-shell .choice--invalid { box-shadow:0 0 0 4px #ffb4ac; }
.app-shell .choice label {
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  text-align:center;
  cursor:pointer;
}
.app-shell .choice .choice-skip {
  min-width:0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--flow-ink);
  font:800 12px/1.2 "Montserrat",Arial,sans-serif;
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:3px;
}
.app-shell .choice label:has(input:checked) { text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:3px; }
.app-shell #choices-form { background:var(--flow-cream); }
.app-shell #choices-form .candidate {
  gap:18px;
  padding:25px 22px 20px;
  overflow:visible;
}
.app-shell #choices-form .candidate--paper { background:var(--flow-paper); }
.app-shell #choices-form .candidate--neon { background:var(--flow-neon); }
.app-shell #choices-form .candidate--lilac { background:var(--flow-lilac); }
.app-shell #choices-form .candidate h3 { margin-bottom:8px; }
.app-shell #choices-form .candidate .meta { margin-bottom:21px; color:#2b2b2b; }
.app-shell #choices-form .candidate-timezone { text-transform:uppercase; }
.app-shell #choices-form .candidate-project {
  display:table;
  max-width:calc(100% + 8px);
  margin:0 0 18px -5px;
  padding:8px 14px 10px;
  border:2px solid var(--flow-ink);
  border-radius:999px;
  color:var(--flow-ink);
  font:900 clamp(15px,4vw,19px)/1.15 "Montserrat","Avenir Next",Arial,sans-serif;
  white-space:nowrap;
  transform:rotate(-2deg);
}
.app-shell #choices-form .candidate--paper .candidate-project,
.app-shell #choices-form .candidate--neon .candidate-project { background:var(--flow-lilac); }
.app-shell #choices-form .candidate--lilac .candidate-project { background:var(--flow-neon); }
.app-shell #choices-form .candidate-details { margin:0 0 14px; }
.app-shell #choices-form .candidate .tag { background:#fff; }
.app-shell #choices-form .candidate .tag:first-child { background:#fff; }
.app-shell #choices-form .candidate .micro { color:#262626; }
.app-shell #choices-form .choice {
  grid-template-columns:1.28fr .9fr .65fr;
  align-items:center;
  gap:6px;
  padding:9px 10px;
  background:#fff;
}
.app-shell #choices-form .choice label {
  flex-direction:row;
  justify-content:center;
  gap:6px;
  white-space:nowrap;
  font-size:11px;
  line-height:1;
}
.app-shell #choices-form .choice input[type="radio"] { flex-basis:19px; width:19px; height:19px; }
.app-shell #choices-form .choice .choice-skip { white-space:normal; font-size:11px; line-height:1.15; }
.app-shell #choices-form > .form-actions .button {
  flex:0 0 auto;
  white-space:nowrap;
  font-size:13px;
  line-height:1;
}
@media (max-width:420px) {
  .app-shell #choices-form .candidate-project {
    padding:7px 10px 8px;
    font-size:clamp(11px,3vw,13px);
    letter-spacing:-.3px;
  }
  .app-shell #choices-form .choice { grid-template-columns:1.36fr 1fr .64fr; gap:4px; padding-inline:7px; }
  .app-shell #choices-form .choice label,
  .app-shell #choices-form .choice .choice-skip { font-size:9px; }
  .app-shell #choices-form .choice label { gap:4px; }
  .app-shell #choices-form .choice input[type="radio"] { flex-basis:17px; width:17px; height:17px; }
}
.app-shell .pair-head {
  margin:32px 0 18px;
  padding:27px 23px;
  border:3px solid var(--flow-ink);
  border-radius:30px;
  background:var(--flow-cream);
  box-shadow:5px 6px 0 rgba(0,0,0,.10);
}
.app-shell .pair-head p { font-size:16px; line-height:1.5; }
.app-shell .status {
  display:table;
  margin:-45px 0 25px -10px;
  padding:7px 12px 8px;
  border:3px solid var(--flow-ink);
  border-radius:999px;
  background:var(--flow-neon);
  color:var(--flow-ink);
  font-size:13px;
  line-height:1;
  font-weight:900;
  transform:rotate(-2deg);
}
.app-shell .pair-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.app-shell .stat {
  min-width:0;
  padding:20px;
  border:3px solid var(--flow-ink);
  border-radius:22px;
  background:var(--flow-paper);
  box-shadow:4px 5px 0 rgba(0,0,0,.10);
}
.app-shell .stat:nth-child(2n) { background:var(--flow-paper); }
.app-shell .stat small {
  display:table;
  margin:0 0 14px;
  padding:5px 8px 6px;
  border:2px solid var(--flow-ink);
  border-radius:999px;
  background:var(--flow-paper);
  color:var(--flow-ink);
  font-size:11px;
  line-height:1;
  font-weight:900;
}
.app-shell .stat strong { display:block; font-size:18px; line-height:1.25; }
.app-shell .stat p { font-size:14px; line-height:1.45; }
.app-shell .empty {
  padding:24px;
  border:3px dashed var(--flow-ink);
  border-radius:22px;
  background:var(--flow-paper);
  color:var(--flow-ink);
}
.app-shell #pair-action:not(:empty),
.app-shell #admin-result:not(:empty) { margin-top:22px; }
@media (max-width:540px) {
  .app-shell { box-shadow:none; }
  .app-shell .top { min-height:76px; padding:18px; border-radius:0 0 28px 28px; }
  .app-shell:not(:has(.progress)) .top { border-radius:28px 28px 0 0; }
  .app-shell .brand { font-size:24px; letter-spacing:-2px; }
.app-shell .top .button { padding-inline:12px; font-size:12px; }
  .app-shell .flow { padding:40px 18px 70px; }
  .app-shell .back { margin-bottom:28px; }
  .app-shell .form-card { padding:24px 18px 26px; }
  .app-shell .form-actions { align-items:stretch; flex-direction:column; }
  .app-shell .form-actions .button { width:100%; }
  .app-shell .pair-grid { grid-template-columns:1fr; }
}
@media (max-width:359px) {
  .app-shell .flow { padding-inline:14px; }
  .app-shell .flow h1 { font-size:33px; }
  .app-shell .form-card { padding-inline:14px; border-radius:25px; }
  .app-shell .options legend { font-size:19px; }
  .app-shell .option { padding-inline:12px; font-size:14px; }
  .app-shell .choice { grid-template-columns:1fr; }
  .app-shell .choice label { flex-direction:row; justify-content:flex-start; text-align:left; }
}
@media (prefers-reduced-motion:reduce) {
  .app-shell .progress i,
  .app-shell .button,
  .app-shell .option,
  .app-shell .field input,
  .app-shell .field textarea,
  .app-shell .field select { transition:none; }
}

.original-hero-lead {
  max-width:340px;
  margin:0 auto 30px;
  color:var(--original-ink);
  text-align:center;
  font-size:15px;
  line-height:1.55;
}
.original-tag-field { display:grid; justify-items:center; gap:7px; }
.original-tag-row--words {
  flex-wrap:wrap;
  gap:7px;
  padding:0 16px;
}
.original-tag-row--words span {
  padding:5px 10px 6px;
  font-size:15px;
  line-height:1;
}
.original-reading-link {
  margin-top:10px;
  color:var(--original-ink);
  font-size:14px;
  font-weight:800;
  text-decoration-thickness:2px;
  text-underline-offset:4px;
}
.original-reading-link span { font-size:18px; line-height:0; }
.original-outlined-story .original-sticker-title {
  max-width:none;
  padding:7px 14px 9px;
  white-space:nowrap;
  font-size:clamp(15px,4vw,28px);
  line-height:1;
}
.original-obstacle-list {
  display:grid;
  gap:9px;
  margin:30px 0 20px;
  padding:0;
  list-style:none;
}
.original-obstacle-list li { margin:0; }
.original-obstacle {
  width:100%;
  display:grid;
  grid-template-columns:24px 1fr;
  align-items:center;
  gap:12px;
  padding:13px 14px;
  border:2px solid var(--original-ink);
  border-radius:16px;
  background:#fff;
  color:var(--original-ink);
  font:750 16px/1.25 "Montserrat","Avenir Next",Arial,sans-serif;
  text-align:left;
  cursor:pointer;
  transition:transform .18s ease,background .18s ease;
}
.original-obstacle:hover { transform:translateX(3px); }
.original-obstacle i {
  width:22px;
  height:22px;
  border:2px solid var(--original-ink);
  border-radius:50%;
  background:#fff;
}
.original-obstacle[aria-pressed="true"] { background:var(--original-neon); }
.original-obstacle[aria-pressed="true"] i { box-shadow:inset 0 0 0 5px var(--original-ink); }
.original-obstacle:focus-visible { outline:4px solid var(--original-lilac); outline-offset:3px; }
.original-outlined-story .original-obstacle-note { margin:0; font-size:15px; line-height:1.42; }
.original-outlined-story--compact { padding:34px 24px 30px; }
.original-obstacle-chip-list {
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:22px 0 0;
  padding:0;
  list-style:none;
}
.original-obstacle-chip-list li { margin:0; }
.original-obstacle-chip {
  padding:9px 16px 10px;
  border:2px solid var(--original-ink);
  border-radius:999px;
  background:#fff;
  color:var(--original-ink);
  font:750 14px/1.2 "Montserrat","Avenir Next",Arial,sans-serif;
  cursor:pointer;
  transition:transform .18s ease,background .18s ease;
}
.original-obstacle-chip:hover { transform:translateY(-2px); }
.original-obstacle-chip[aria-pressed="true"] { background:var(--original-neon); }
.original-obstacle-chip:focus-visible { outline:4px solid var(--original-lilac); outline-offset:3px; }

.original-persona-list {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:22px 0 0;
  padding:0;
  list-style:none;
}
.original-persona-list li { margin:0; }
.original-persona-chip {
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 18px 11px 12px;
  border:2px solid var(--original-ink);
  border-radius:999px;
  background:#fff;
  color:var(--original-ink);
  font:750 15px/1.2 "Montserrat","Avenir Next",Arial,sans-serif;
  cursor:pointer;
  transition:transform .18s ease,background .18s ease;
}
.original-persona-emoji { font-size:26px; line-height:1; }
.original-persona-chip:hover { transform:translateY(-2px); }
.original-persona-chip[aria-pressed="true"] { background:var(--original-neon); }
.original-persona-chip:focus-visible { outline:4px solid var(--original-lilac); outline-offset:3px; }
.original-persona-reveal {
  margin:22px 0 0;
  padding:20px 20px 22px;
  border:2px solid var(--original-ink);
  border-radius:22px;
  background:var(--original-cream);
  transform:rotate(-.6deg);
  font-size:16px;
  line-height:1.5;
  transition:opacity .16s ease;
}
.original-persona-reveal[data-empty="true"] { color:#6f6f6f; font-style:italic; }
.original-persona-reveal.is-fading { opacity:0; }

.original-intro--compact { padding-top:20px; padding-bottom:56px; }
.original-compare-title {
  position:relative;
  left:auto;
  top:auto;
  display:block;
  width:max-content;
  max-width:calc(100% - 20px);
  margin:0 auto 40px;
  white-space:nowrap;
  text-align:center;
  font-family:"Montserrat","Avenir Next",Arial,sans-serif;
  font-weight:800;
  letter-spacing:-.2px;
  font-size:clamp(15px,5.6vw,28px);
  background:#fff;
  border:2px solid var(--original-ink);
  transform:none;
}
.original-compare-labels {
  display:flex;
  justify-content:space-between;
  max-width:560px;
  margin:0 auto 8px;
  padding:0 6px;
  font:800 13px/1 "Montserrat","Avenir Next",Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#6f6f6f;
}
.original-compare-scene {
  position:relative;
  max-width:560px;
  margin:0 auto;
  aspect-ratio:4/5.3;
  overflow:hidden;
  border:var(--original-line) solid var(--original-ink);
  border-radius:28px;
  touch-action:pan-y;
  cursor:default;
}
.original-compare-side { position:absolute; inset:0; }
.original-compare-side--before { z-index:1; background:#cbbde0; }
.original-compare-side--after { z-index:2; background:var(--original-cream); clip-path:inset(0 0 0 90%); }
.original-compare-card {
  position:absolute;
  z-index:2;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:max-content;
  max-width:74%;
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 20px;
  border:2px solid var(--original-ink);
  border-radius:18px;
  background:#fff;
  font:850 16px/1.2 "Montserrat","Avenir Next",Arial,sans-serif;
  text-align:left;
  white-space:nowrap;
}
.original-compare-alert {
  position:absolute;
  top:-12px;
  right:-12px;
  z-index:3;
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:999px;
  background:#e0392f;
  color:#fff;
  font:800 15px/1 "Montserrat","Avenir Next",Arial,sans-serif;
  box-shadow:0 0 0 2px #fff;
}
.original-compare-corner-badge {
  position:absolute;
  bottom:-14px;
  right:-16px;
  z-index:3;
  transform:rotate(0deg);
  padding:5px 12px 6px;
  border-radius:999px;
  font:800 11px/1.2 "Montserrat","Avenir Next",Arial,sans-serif;
  white-space:nowrap;
}
.original-compare-corner-badge--bad { border:2px solid #a83232; background:#fdeceb; color:#a83232; }
.original-compare-corner-badge--good { border:2px solid #1e7a3d; background:#e8f5ec; color:#1e7a3d; }
.original-compare-checkbox {
  flex:none;
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  margin-top:2px;
  border:2px solid var(--original-ink);
  border-radius:6px;
  background:#fff;
  font-size:14px;
  line-height:1;
}
.original-compare-checkbox--checked { background:var(--original-neon); }
.original-compare-checkbox--bad { border-color:#a83232; background:#fdeceb; }
.original-compare-flag {
  position:absolute;
  top:3%;
  z-index:2;
  padding:5px 11px 6px;
  border-radius:999px;
  font:800 11px/1.2 "Montserrat","Avenir Next",Arial,sans-serif;
  white-space:normal;
  max-width:44%;
  text-align:center;
}
.original-compare-flag--bad { left:5%; transform:rotate(-2deg); border:2px solid #a83232; background:#fdeceb; color:#a83232; }
.original-compare-notes { position:absolute; inset:0; }
.original-compare-notes span {
  position:absolute;
  max-width:128px;
  padding:6px 10px;
  border:1.5px solid var(--original-ink);
  border-radius:12px;
  background:#efe7f8;
  font:700 13px/1.25 "Montserrat","Avenir Next",Arial,sans-serif;
}
.original-compare-chat {
  position:absolute;
  left:6%;
  right:6%;
  z-index:2;
  display:flex;
  flex-direction:column;
}
.original-compare-chat--top { top:8%; }
.original-compare-chat--bottom { bottom:4%; }
.original-compare-chat-msg {
  position:relative;
  max-width:80%;
  padding:6px 10px;
  border:2px solid var(--original-ink);
  border-radius:14px;
  font:700 12px/1.28 "Montserrat","Avenir Next",Arial,sans-serif;
  text-align:left;
  margin-bottom:5px;
}
.original-compare-chat-msg--a { align-self:flex-start; background:#fff; border-bottom-left-radius:4px; }
.original-compare-chat-msg--b { align-self:flex-end; background:var(--original-neon); border-bottom-right-radius:4px; }
.original-compare-chat-skip {
  align-self:center;
  margin-bottom:8px;
  padding:2px 0;
  font:700 11px/1 "Montserrat","Avenir Next",Arial,sans-serif;
  color:#8a8a8a;
  font-style:italic;
}
.original-compare-chat-typing {
  position:relative;
  align-self:flex-end;
  display:flex;
  align-items:center;
  gap:4px;
  padding:9px 13px;
  border:2px solid var(--original-ink);
  border-radius:14px;
  background:#cdd98a;
}
.original-compare-chat-typing i {
  width:6px;
  height:6px;
  border-radius:50%;
  background:#9a9a9a;
  animation:original-typing-bounce 1.1s ease-in-out infinite;
}
.original-compare-chat-typing i:nth-child(2) { animation-delay:.15s; }
.original-compare-chat-typing i:nth-child(3) { animation-delay:.3s; }
@keyframes original-typing-bounce {
  0%,60%,100% { transform:translateY(0); opacity:.5; }
  30% { transform:translateY(-3px); opacity:1; }
}
.original-compare-divider {
  position:absolute;
  top:0;
  bottom:0;
  border-left:3px solid var(--original-ink);
  z-index:3;
}
.original-compare-handle-arrow { font-size:10px; }
.original-compare-handle {
  position:absolute;
  top:66%;
  z-index:4;
  transform:translate(-50%,-50%);
  min-height:52px;
  min-width:52px;
  padding:8px 18px;
  border:2px solid var(--original-ink);
  border-radius:999px;
  background:var(--original-neon);
  font:800 13px/1 "Montserrat","Avenir Next",Arial,sans-serif;
  white-space:nowrap;
  box-shadow:4px 5px 0 rgba(0,0,0,.15);
  cursor:grab;
  touch-action:none;
}
.original-compare-caption { max-width:480px; margin:22px auto 0; padding:0 20px; text-align:center; font-size:15px; line-height:1.45; }
.original-sticker-choice {
  width:max-content;
  max-width:none;
  padding:7px 17px 8px;
  white-space:nowrap;
  text-align:center;
  font-size:clamp(18px,5vw,31px);
}
.original-match-heading { padding:8px 30px 37px; }
.original-match-title {
  max-width:540px;
  margin:0;
  font:950 clamp(32px,8vw,44px)/1.04 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-1.4px;
}
.original-match-heading p {
  margin:21px 0 0;
  font-size:18px;
  line-height:1.43;
}
.original-match-heading p + p { margin-top:12px; }
.original-match-reflection {
  max-width:560px;
  margin:0 auto 30px;
  padding:0 30px;
  text-align:center;
  font-size:clamp(20px,4.8vw,27px);
  font-weight:700;
  line-height:1.24;
  letter-spacing:-.35px;
}
.original-candidate-card { padding:0 14px 18px; }
.original-candidate-head {
  display:flex;
  flex-direction:column;
  gap:12px;
  min-height:146px;
  padding:29px 23px 27px;
  color:var(--original-ink);
}
.original-candidate-head span {
  width:max-content;
  max-width:100%;
  padding:5px 9px 6px;
  border:2px solid var(--original-ink);
  border-radius:999px;
  background:#fff;
  font-size:11px;
  font-weight:850;
}
.original-candidate-head strong {
  font:italic 950 clamp(42px,11vw,56px)/.9 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-1.6px;
}
.original-candidate-card .original-way-copy {
  margin-top:-15px;
  padding:27px 20px 20px;
  background:#fff;
}
.original-candidate-card dl { display:grid; gap:16px; margin:0; }
.original-candidate-card dl div { display:grid; gap:4px; }
.original-candidate-card dt {
  font-size:12px;
  font-weight:850;
  text-transform:lowercase;
}
.original-candidate-card dd { margin:0; font-size:18px; line-height:1.25; }
.original-way-card-lilac { padding:0 14px 18px; background:var(--original-lilac); }
.original-match-footnote {
  max-width:430px;
  margin:25px auto 21px;
  padding:0 28px;
  text-align:center;
  font-size:15px;
  line-height:1.4;
}
.original-ways .original-slider-dots { margin-top:2px; }
.original-benefit-card {
  padding:60px 28px 32px;
}
.original-benefit-card h3 {
  left:-12px;
  width:max-content;
  max-width:calc(100% + 8px);
  white-space:nowrap;
  font-size:clamp(18px,5.1vw,26px);
}
.original-benefit-card p { padding-right:0; }
.original-benefit-card .original-emoji {
  position:static;
  display:block;
  margin:18px 0 0;
  font-size:42px;
  text-align:right;
  transform:none;
}
.original-benefit-card .original-status-pills {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:20px;
  padding-right:24px;
}
.original-status-pills span {
  padding:7px 10px 8px;
  border:2px solid var(--original-ink);
  border-radius:999px;
  background:#fff;
  font-size:14px;
  font-weight:850;
}
.original-status-pills span:nth-child(2) { background:var(--original-neon); }
.original-how > h2 { font-size:clamp(32px,8vw,44px); }
.original-agreement-grid { display:grid; gap:18px; }
.original-agreement-card {
  position:relative;
  min-height:180px;
  padding:28px 24px 25px;
  border:var(--original-line) solid var(--original-ink);
  border-radius:28px;
  background:var(--original-cream);
}
.original-agreement-card:nth-child(2) { background:var(--original-lilac); }
.original-agreement-card:nth-child(3) { background:var(--original-neon); }
.original-agreement-number {
  display:block;
  margin:0 0 38px;
  color:rgba(0,0,0,.58);
  font:italic 700 16px/1 Georgia,serif;
}
.original-agreement-card h3 { font-size:clamp(18px,5.1vw,25px); white-space:nowrap; }
.original-agreement-card p { margin:17px 0 0; font-size:18px; line-height:1.42; }
.original-faq { padding-top:84px; background:var(--original-cream); }
.original-faq > h2 { text-align:left; }
.original-faq .original-accordion-button { font-size:clamp(21px,5.8vw,27px); line-height:1.02; }
.original-faq .original-accordion-panel p { padding-right:20px; }
.original-steps > h2 { font-size:clamp(32px,8vw,44px); max-width:290px; margin-inline:auto; }
.original-terms .original-button + p { margin:18px 0 0; }
.original-terms ul { padding-left:20px; }
.original-terms li { text-align:left; }
.original-footer { padding:82px 28px 66px; }
.original-footer h2 {
  max-width:500px;
  margin:0 auto 25px;
  font:950 clamp(32px,8vw,44px)/1.04 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-1.5px;
}
.original-footer .original-final-copy {
  max-width:420px;
  margin:0 auto 28px;
  font:400 18px/1.42 "Montserrat","Avenir Next",Arial,sans-serif;
}
.original-footer .original-button { min-height:60px; font-size:20px; }
.original-footer .original-final-note { margin:12px 0 40px; font:400 13px/1.4 "Montserrat","Avenir Next",Arial,sans-serif; }
.original-footer .original-footer-blog { margin:0 0 28px; }
.original-footer-word {
  display:inline-block;
  min-width:6.8ch;
  color:var(--original-ink);
  font-family:"Archivo Black","Arial Black",Arial,sans-serif;
  font-style:italic;
  font-weight:950;
  white-space:nowrap;
  transition:color .24s ease;
}
.original-footer-word.is-changing { opacity:0; }
.original-footer-word.is-revealing { animation:original-pixel-in .62s steps(8,end) both; }
@keyframes original-pixel-in {
  0% { opacity:0; clip-path:inset(0 100% 0 0); }
  100% { opacity:1; clip-path:inset(0 0 0 0); }
}
.original-footer-word[data-tone="lime"] { color:var(--original-neon); }
.original-footer-word[data-tone="lilac"] { color:var(--original-lilac); }

/* широкие экраны: мобильная композиция остаётся узнаваемой,
   а полотно, поля и карточки получают спокойное дополнительное пространство */
@media (min-width:700px) {
  body:has(.original-page),
  body:has(.app-shell) {
    min-width:700px;
    background:
      radial-gradient(circle at 50% 18%, rgba(186,255,0,.14), transparent 30rem),
      linear-gradient(115deg, #f3f1ea 0%, #e7e7e2 48%, #f5f3ed 100%);
  }

  .original-page,
  .app-shell {
    width:min(calc(100% - 64px), 760px);
    margin:32px auto;
    border-radius:38px;
    box-shadow:0 18px 54px rgba(0,0,0,.10);
  }

  .original-hero {
    min-height:min(900px, calc(100svh - 64px));
    padding:46px 54px 24px;
    border-radius:38px 38px 0 0;
  }
  .original-glow { width:520px; height:520px; filter:blur(82px); }
  .original-logo { font-size:clamp(80px, 11vw, 112px); letter-spacing:-8px; }
  .original-hero-subtitle { max-width:630px; margin:48px auto 36px; font-size:clamp(23px,3vw,31px); }
  .original-button-note { max-width:490px; font-size:13px; }
  .original-tag-field { margin-inline:-54px; }
  .original-tag-row span,.original-marquee-soft span { font-size:20px; }

  .original-intro { padding:92px 56px 0; }
  .original-outlined-story { padding:64px 56px 94px; }
  .original-outlined-story p { max-width:620px; font-size:22px; }
  .original-outlined-story h3 { font-size:23px; }
  .original-reaction-frame { max-width:590px; margin:42px auto 34px; }
  .original-sticker-title { left:18px; }
  .original-sticker-choice { margin-bottom:58px; }

  .original-ways { padding-bottom:42px; }
  .original-ways-slider { padding-inline:56px; scroll-padding-inline:56px; }
  .original-way-card { flex-basis:calc(100% - 94px); }
  .original-way-media { height:360px; }
  .original-way-copy { padding:26px 28px 16px; }
  .original-way-copy p,.original-benefit-card p { font-size:21px; }

  .original-benefits { padding:108px 64px 76px; }
  .original-benefit-stack { gap:82px; }
  .original-benefit-card { padding:58px 30px 38px; }
  .original-benefit-card h3 { left:-18px; width:calc(100% + 12px); }
  .original-how { padding:110px 72px 70px; }
  .original-accordion { gap:40px; }
  .original-accordion-button { font-size:29px; }
  .original-accordion-panel p { max-width:570px; font-size:19px; }

  .original-steps { padding:110px 68px 88px; }
  .original-steps li p { font-size:18px; }
  .original-terms { max-width:600px; margin-inline:auto; padding:40px 38px 36px; }
  .original-footer { padding:88px 48px 76px; }
  .original-footer small { max-width:560px; }

  .original-hero-lead { max-width:560px; font-size:18px; }
  .original-outlined-story .original-sticker-title { font-size:29px; }
  .original-obstacle-list { grid-template-columns:repeat(2,1fr); }
  .original-match-heading { padding:16px 56px 42px; }
  .original-match-heading p { max-width:600px; font-size:19px; }
  .original-candidate-head { min-height:166px; padding:34px 30px; }
  .original-candidate-card .original-way-copy { padding:31px 28px 26px; }
  .original-candidate-card dd { font-size:20px; }
  .original-match-footnote { max-width:570px; font-size:17px; }
  .original-footer .original-final-copy { max-width:540px; font-size:20px; }
  .original-tag-row--words span { font-size:16px; }
  .original-benefit-card { padding:60px 30px 32px; }
  .original-benefit-card h3 { left:-12px; width:max-content; }
  .original-agreement-grid { grid-template-columns:repeat(2,1fr); }
  .original-agreement-card-wide { grid-column:span 2; }

  .original-blog-hero,.original-article-hero { padding:30px 52px 70px; border-radius:38px 38px 0 0; }
  .original-blog-hero-copy { padding-top:110px; }
  .original-blog-list { padding:48px 56px 86px; }
  .original-blog-tile { min-height:330px; padding:38px 34px 30px; }
  .original-blog-footer { padding:80px 54px 88px; }
  .original-article-copy { padding:60px 64px 88px; }
  .original-article-copy > p { font-size:20px; }

  .app-shell .top { min-height:92px; padding:22px 42px; border-radius:0 0 34px 34px; }
  .app-shell:not(:has(.progress)) .top { border-radius:38px 38px 34px 34px; }
  .app-shell .brand { font-size:30px; }
  .app-shell .flow { min-height:calc(100svh - 124px); padding:66px 72px 96px; }
  .app-shell .flow::before { width:540px; height:540px; top:112px; }
  .app-shell .flow h1 { max-width:620px; font-size:clamp(43px,5.2vw,58px); }
  .app-shell .flow > .lead { max-width:580px; font-size:19px; }
  .app-shell .back { margin-bottom:38px; }
  .app-shell .eyebrow { margin-bottom:26px; }
  .app-shell .form-card { margin-top:42px; padding:36px 38px 40px; border-radius:32px; }
  .app-shell .field { margin-block:28px; font-size:17px; }
  .app-shell .field input,
  .app-shell .field textarea,
  .app-shell .field select,
  .app-shell .select-trigger { min-height:58px; font-size:17px; }
  .app-shell .field textarea { min-height:126px; }
  .app-shell .options { margin-block:40px; }
  .app-shell .option { min-height:62px; padding:16px 18px; font-size:16px; }
  .app-shell .checkbox { padding:15px 16px; font-size:15px; }
  .app-shell .form-actions { margin-top:38px; }
  .app-shell .button { min-height:58px; font-size:16px; }
  .app-shell .card.candidate { padding:28px 26px; gap:24px; border-radius:28px; }
  .app-shell .candidate h3 { font-size:29px; }
  .app-shell .candidate .meta { font-size:15px; }
  .app-shell .tag { font-size:13px; }
  .app-shell .choice { padding:12px; }
  .app-shell .choice label,.app-shell .choice .choice-skip { font-size:13px; }
  .app-shell .pair-head { padding:32px 30px; }
  .app-shell .stat { padding:24px; }
}

@media (min-width:1100px) {
  .original-page,
  .app-shell { width:min(calc(100% - 96px), 820px); }
  .original-hero { padding-inline:64px; }
  .original-tag-field { margin-inline:-64px; }
  .original-intro { padding-inline:72px; }
  .original-ways-slider { padding-inline:72px; scroll-padding-inline:72px; }
  .original-benefits { padding-inline:80px; }
  .original-how { padding-inline:92px; }
  .original-steps { padding-inline:88px; }
  .app-shell .flow { padding-inline:88px; }
}

/* Request-support choices use the same quiet white cards as the main form;
   selection is carried by the control and a restrained offset shadow. */
.app-shell #request-support-form .option,
.app-shell #request-support-form .option:hover {
  background:#fff;
  box-shadow:none;
  transform:none;
}
.app-shell #request-support-form .option:has(input:checked) {
  background:var(--flow-lilac);
  box-shadow:3px 3px 0 var(--flow-ink);
}
.app-shell #request-support-form .option input[type="checkbox"] {
  flex:0 0 19px;
  width:19px;
  height:19px;
  margin:0;
  accent-color:var(--flow-ink);
}
.app-shell #request-support-form .form-actions {
  align-items:center;
}
.app-shell #request-support-form .form-actions .micro {
  color:#74777a;
  max-width:190px;
  font-size:13px;
  line-height:1.35;
  text-align:left;
}
.app-shell #request-support-form .form-actions .button {
  min-width:210px;
}

/* Matching profile cards: one calm surface, three readable facts, simple
   actions. The profile should feel like a person, not a stack of labels. */
.app-shell #choices-form .candidate,
.app-shell #choices-form .candidate--paper,
.app-shell #choices-form .candidate--neon,
.app-shell #choices-form .candidate--lilac {
  padding:28px 24px 20px;
  border:2px solid var(--flow-ink);
  border-radius:28px;
  background:#fff;
  box-shadow:6px 7px 0 rgba(16,16,20,.14);
}
.app-shell #choices-form .candidate h3 {
  margin:0 0 8px;
  font-size:30px;
  letter-spacing:-.8px;
}
.app-shell #choices-form .candidate .meta {
  margin-bottom:22px;
  color:#74777a;
  font-size:13px;
  font-weight:650;
}
.app-shell #choices-form .candidate-project,
.app-shell #choices-form .candidate--paper .candidate-project,
.app-shell #choices-form .candidate--neon .candidate-project,
.app-shell #choices-form .candidate--lilac .candidate-project {
  display:block;
  width:auto;
  max-width:none;
  margin:0 0 20px;
  padding:0 0 17px;
  border:0;
  border-bottom:1px solid #d9d9d9;
  border-radius:0;
  background:transparent;
  color:var(--flow-ink);
  font:750 17px/1.3 "Montserrat","Avenir Next",Arial,sans-serif;
  white-space:normal;
  transform:none;
}
.app-shell #choices-form .candidate-details {
  display:grid;
  gap:12px;
  margin:0 0 18px;
}
.app-shell #choices-form .candidate .tag,
.app-shell #choices-form .candidate .tag:first-child {
  display:block;
  width:auto;
  max-width:none;
  margin:0;
  padding:0 0 12px;
  border:0;
  border-bottom:1px solid #e2e2e2;
  border-radius:0;
  background:transparent;
  color:#333;
  font-size:14px;
  line-height:1.4;
  font-weight:550;
}
.app-shell #choices-form .candidate-details .tag:last-child { border-bottom:0; padding-bottom:0; }
.app-shell #choices-form .candidate .micro {
  margin:0 0 18px;
  color:#74777a;
  font-size:12px;
  line-height:1.45;
}
.app-shell #choices-form .choice {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:8px;
  padding:15px 0 0;
  border:0;
  border-top:1px solid #d9d9d9;
  border-radius:0;
  background:transparent;
}
.app-shell #choices-form .choice label,
.app-shell #choices-form .choice .choice-skip {
  min-height:36px;
  padding:7px 5px;
  border:1px solid #cfcfcf;
  border-radius:999px;
  background:#fff;
  color:var(--flow-ink);
  font-size:11px;
  line-height:1.1;
  font-weight:750;
  text-decoration:none;
}
.app-shell #choices-form .choice label:has(input:checked) {
  border-color:var(--flow-ink);
  background:var(--flow-neon);
  text-decoration:none;
}
.app-shell #choices-form .choice .choice-skip { text-decoration:none; }

/* Compact checkout: price, scope, action, then the one essential condition. */
.app-shell .checkout-card {
  padding:28px 26px 26px;
  background:#fff;
}
.app-shell .checkout-price {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  margin-bottom:12px;
}
.app-shell .checkout-price strong {
  font:900 clamp(42px,8vw,62px)/.95 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-2px;
}
.app-shell .checkout-price span {
  color:#74777a;
  font-size:14px;
  font-weight:650;
  text-align:right;
}
.app-shell .checkout-includes {
  margin:0 0 24px;
  color:#333;
  font-size:15px;
  line-height:1.4;
}
.app-shell .checkout-card > .button { width:100%; }
.app-shell .checkout-assurance {
  margin:17px 0 0;
  color:#74777a;
  font-size:13px;
  line-height:1.4;
}
.app-shell .checkout-card > .micro { margin:16px 0 0; }

@media (max-width:540px) {
  .app-shell #choices-form .candidate { padding:24px 18px 18px; }
  .app-shell #choices-form .candidate h3 { font-size:27px; }
  .app-shell #choices-form .choice label,
  .app-shell #choices-form .choice .choice-skip { font-size:10px; }
  .app-shell .checkout-price { align-items:flex-start; flex-direction:column; gap:4px; }
  .app-shell .checkout-price span { text-align:left; }
}

/* Current review pass: these rules stay last so the active landing cannot be
   pulled back into the retired swipe-hint, heavy-note, or dark-shadow styles. */
.original-steps { background:var(--original-lilac) !important; }
.original-outlined-story .original-sticker-title {
  left:50% !important;
  width:calc(100% + 36px) !important;
  max-width:none !important;
  text-align:center;
  transform:translateX(-50%) rotate(-3deg) !important;
}
.original-slider-dots {
  width:auto !important;
  min-height:20px !important;
  gap:9px !important;
}
.original-slider-dots .original-swipe-hint { display:none !important; }
.original-slider-dots button,
.original-slider-dots button.active {
  display:block !important;
  width:9px !important;
  height:9px !important;
  min-width:9px !important;
  min-height:9px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  opacity:1 !important;
  background:#c8c8c8 !important;
  box-shadow:none !important;
}
.original-slider-dots button::before,
.original-slider-dots button.active::before { display:none !important; content:none !important; }
.original-slider-dots button.active { background:#8e8e8e !important; }
.original-public-commitment {
  box-shadow:9px 11px 0 rgba(0,0,0,.08), 0 18px 30px rgba(0,0,0,.06) !important;
}
.original-public-commitment p {
  font-size:clamp(14px,3.2vw,17px) !important;
  line-height:1.5 !important;
}

/* Current review pass: keep the page sequence calm and use one clear visual language. */
.original-steps { background:var(--original-lilac); }
.original-outlined-story .original-sticker-title {
  left:50%;
  width:calc(100% + 36px);
  max-width:none;
  text-align:center;
  transform:translateX(-50%) rotate(-3deg);
}
.original-slider-dots {
  width:auto;
  min-height:20px;
  gap:9px;
}
.original-slider-dots button,
.original-slider-dots button.active {
  display:block;
  width:9px !important;
  height:9px !important;
  margin:0 !important;
  padding:0;
  border:0;
  border-radius:50%;
  opacity:1;
  background:#c8c8c8;
}
.original-slider-dots button::before,
.original-slider-dots button.active::before { display:none !important; }
.original-slider-dots button.active { background:#8e8e8e; }
.original-public-commitment {
  box-shadow:9px 11px 0 rgba(0,0,0,.08), 0 18px 30px rgba(0,0,0,.06);
}
.original-public-commitment p {
  font-size:clamp(14px,3.2vw,17px);
  line-height:1.5;
}

/* Final landing corrections: kept after all legacy responsive variants. */
.original-public-commitment p {
  font:400 clamp(16px,3.9vw,20px)/1.48 "Montserrat","Avenir Next",Arial,sans-serif;
  letter-spacing:0;
}
.original-public-commitment p strong { font-weight:800; }

.original-terms {
  position:relative;
  z-index:1;
  margin-top:112px;
  margin-bottom:34px;
  background:#fff;
}
.original-terms::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:-24px -18px;
  border-radius:46px;
  background:var(--original-neon);
}

.original-max-section {
  position:relative;
  isolation:isolate;
  overflow:visible;
  margin:52px 0 68px;
  padding:126px 34px 128px;
  background:#f8f2df;
  border-radius:56px;
}
.original-max-section::before {
  content:"";
  position:absolute;
  display:block;
  z-index:0;
  inset:118px 18px 38px;
  width:auto;
  height:auto;
  border:2px solid var(--original-ink);
  border-radius:26px;
  background:#fff;
  box-shadow:9px 12px 0 rgba(0,0,0,.14);
  transform:rotate(-1deg);
}
.original-max-section::after {
  content:"";
  position:absolute;
  z-index:1;
  top:124px;
  right:26px;
  left:26px;
  height:178px;
  border:2px solid var(--original-ink);
  border-bottom:0;
  border-radius:24px 24px 0 0;
  background:#fff;
  clip-path:polygon(0 0,100% 0,100% 8%,50% 78%,0 8%);
  opacity:.96;
  pointer-events:none;
}
.original-max-card {
  position:relative;
  z-index:2;
  margin-top:-54px;
  padding-top:58px;
  border:2px solid var(--original-ink);
  border-radius:18px 18px 28px 28px;
  background:#fff;
  box-shadow:7px 9px 0 rgba(0,0,0,.12);
  transform:rotate(.45deg);
}
.original-max-kicker { z-index:3; }

.original-slider-dots {
  position:relative;
  width:148px;
  min-height:48px;
  margin-inline:auto;
  gap:0;
}
.original-slider-dots .original-swipe-hint {
  position:absolute;
  z-index:1;
  top:4px;
  left:50%;
  display:grid;
  width:40px;
  height:40px;
  place-items:center;
  border-radius:50%;
  background:#d5d5d5;
  color:#6f6f6f;
  font:700 22px/1 Arial,sans-serif;
  transform:translateX(-50%);
  animation:original-swipe-hint 1.8s ease-in-out infinite;
  pointer-events:none;
}
.original-slider-dots button,
.original-slider-dots button.active {
  position:relative;
  z-index:2;
  width:44px;
  height:44px;
  margin:0 2px;
  opacity:0;
}
.original-slider-dots button::before,
.original-slider-dots button.active::before { display:none; }
.original-slider-dots button:focus-visible { opacity:.16; outline:3px solid var(--original-ink); }
@keyframes original-swipe-hint {
  0%,100% { transform:translateX(calc(-50% - 7px)); }
  50% { transform:translateX(calc(-50% + 7px)); }
}
@media (min-width:700px) {
  .original-terms { margin-top:124px; margin-bottom:42px; }
  .original-terms::before { inset:-30px -28px; border-radius:54px; }
  .original-max-section { padding:146px 76px 144px; }
  .original-max-section::before { inset:132px 40px 46px; }
  .original-max-section::after { top:138px; right:62px; left:62px; height:214px; }
  .original-max-card { margin-top:-64px; }
}
@media (prefers-reduced-motion:reduce) {
  .original-slider-dots .original-swipe-hint { animation:none; }
}

/* Final landing corrections: these must stay last to override legacy variants. */
.original-public-commitment p {
  font:400 clamp(16px,3.9vw,20px)/1.48 "Montserrat","Avenir Next",Arial,sans-serif;
  letter-spacing:0;
}
.original-public-commitment p strong { font-weight:800; }

.original-terms {
  position:relative;
  z-index:1;
  margin-top:112px;
  margin-bottom:34px;
  background:#fff;
}
.original-terms::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:-24px -18px;
  border-radius:46px;
  background:var(--original-neon);
}

.original-max-section {
  position:relative;
  isolation:isolate;
  overflow:visible;
  margin:52px 0 68px;
  padding:126px 34px 128px;
  background:#f8f2df;
  border-radius:56px;
}
.original-max-section::before {
  content:"";
  position:absolute;
  display:block;
  z-index:0;
  inset:118px 18px 38px;
  width:auto;
  height:auto;
  border:2px solid var(--original-ink);
  border-radius:26px;
  background:#fff;
  box-shadow:9px 12px 0 rgba(0,0,0,.14);
  transform:rotate(-1deg);
}
.original-max-section::after {
  content:"";
  position:absolute;
  z-index:1;
  top:124px;
  right:26px;
  left:26px;
  height:178px;
  border:2px solid var(--original-ink);
  border-bottom:0;
  border-radius:24px 24px 0 0;
  background:#fff;
  clip-path:polygon(0 0,100% 0,100% 8%,50% 78%,0 8%);
  opacity:.96;
  pointer-events:none;
}
.original-max-card {
  position:relative;
  z-index:2;
  margin-top:-54px;
  padding-top:58px;
  border:2px solid var(--original-ink);
  border-radius:18px 18px 28px 28px;
  background:#fff;
  box-shadow:7px 9px 0 rgba(0,0,0,.12);
  transform:rotate(.45deg);
}
.original-max-kicker { z-index:3; }

.original-slider-dots {
  position:relative;
  width:148px;
  min-height:48px;
  margin-inline:auto;
  gap:0;
}
.original-slider-dots .original-swipe-hint {
  position:absolute;
  z-index:1;
  top:4px;
  left:50%;
  display:grid;
  width:40px;
  height:40px;
  place-items:center;
  border-radius:50%;
  background:#d5d5d5;
  color:#6f6f6f;
  font:700 22px/1 Arial,sans-serif;
  transform:translateX(-50%);
  animation:original-swipe-hint 1.8s ease-in-out infinite;
  pointer-events:none;
}
.original-slider-dots button,
.original-slider-dots button.active {
  position:relative;
  z-index:2;
  width:44px;
  height:44px;
  margin:0 2px;
  opacity:0;
}
.original-slider-dots button::before,
.original-slider-dots button.active::before { display:none; }
.original-slider-dots button:focus-visible { opacity:.16; outline:3px solid var(--original-ink); }
@keyframes original-swipe-hint {
  0%,100% { transform:translateX(calc(-50% - 7px)); }
  50% { transform:translateX(calc(-50% + 7px)); }
}
@media (min-width:700px) {
  .original-terms { margin-top:124px; margin-bottom:42px; }
  .original-terms::before { inset:-30px -28px; border-radius:54px; }
  .original-max-section { padding:146px 76px 144px; }
  .original-max-section::before { inset:132px 40px 46px; }
  .original-max-section::after { top:138px; right:62px; left:62px; height:214px; }
  .original-max-card { margin-top:-64px; }
}
@media (prefers-reduced-motion:reduce) {
  .original-slider-dots .original-swipe-hint { animation:none; }
}

/* Пояснение обязательства остаётся обычным наборным текстом. */
.original-public-commitment p {
  font:400 clamp(16px,3.9vw,20px)/1.48 "Montserrat","Avenir Next",Arial,sans-serif;
  letter-spacing:0;
}
.original-public-commitment p strong { font-weight:800; }

/* Тарифная карточка лежит на самостоятельной лаймовой подложке. */
.original-terms {
  position:relative;
  z-index:1;
  margin-top:112px;
  margin-bottom:34px;
  background:#fff;
}
.original-terms::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:-24px -18px;
  border-radius:46px;
  background:var(--original-neon);
}
@media (min-width:700px) {
  .original-terms { margin-top:124px; margin-bottom:42px; }
  .original-terms::before { inset:-30px -28px; border-radius:54px; }
}

/* История Макса: белый открытый конверт и лист, высунутый из него. */
.original-max-section {
  position:relative;
  isolation:isolate;
  overflow:visible;
  margin:52px 0 68px;
  padding:126px 34px 128px;
  background:#f8f2df;
  border-radius:56px;
}
.original-max-section::before {
  display:block;
  z-index:0;
  inset:118px 18px 38px;
  width:auto;
  height:auto;
  border:2px solid var(--original-ink);
  border-radius:26px;
  background:#fff;
  box-shadow:9px 12px 0 rgba(0,0,0,.14);
  transform:rotate(-1deg);
}
.original-max-section::after {
  content:"";
  position:absolute;
  z-index:1;
  top:124px;
  right:26px;
  left:26px;
  height:178px;
  border:2px solid var(--original-ink);
  border-bottom:0;
  border-radius:24px 24px 0 0;
  background:#fff;
  clip-path:polygon(0 0,100% 0,100% 8%,50% 78%,0 8%);
  opacity:.96;
  pointer-events:none;
}
.original-max-card {
  z-index:2;
  margin-top:-54px;
  padding-top:58px;
  border:2px solid var(--original-ink);
  border-radius:18px 18px 28px 28px;
  background:#fff;
  box-shadow:7px 9px 0 rgba(0,0,0,.12);
  transform:rotate(.45deg);
}
.original-max-kicker { z-index:3; }
@media (min-width:700px) {
  .original-max-section { padding:146px 76px 144px; }
  .original-max-section::before { inset:132px 40px 46px; }
  .original-max-section::after { top:138px; right:62px; left:62px; height:214px; }
  .original-max-card { margin-top:-64px; }
}

/* Вместо точек — ненавязчивый знак, что карточки можно смахивать. */
.original-slider-dots {
  position:relative;
  width:148px;
  min-height:48px;
  margin-inline:auto;
  gap:0;
}
.original-slider-dots .original-swipe-hint {
  position:absolute;
  z-index:1;
  top:4px;
  left:50%;
  display:grid;
  width:40px;
  height:40px;
  place-items:center;
  border-radius:50%;
  background:#d5d5d5;
  color:#6f6f6f;
  font:700 22px/1 Arial,sans-serif;
  transform:translateX(-50%);
  animation:original-swipe-hint 1.8s ease-in-out infinite;
  pointer-events:none;
}
.original-slider-dots button,
.original-slider-dots button.active {
  position:relative;
  z-index:2;
  width:44px;
  height:44px;
  margin:0 2px;
  opacity:0;
}
.original-slider-dots button::before,
.original-slider-dots button.active::before { display:none; }
.original-slider-dots button:focus-visible { opacity:.16; outline:3px solid var(--original-ink); }
@keyframes original-swipe-hint {
  0%,100% { transform:translateX(calc(-50% - 7px)); }
  50% { transform:translateX(calc(-50% + 7px)); }
}
@media (prefers-reduced-motion:reduce) {
  .original-slider-dots .original-swipe-hint { animation:none; }
}

/* Возвращаем коллажный ритм исходного лендинга: карточка держит мысль,
   наклейка и эмодзи лишь слегка выходят за её границы. */
.original-benefit-stack {
  margin-top:70px;
  gap:52px;
}
.original-benefit-card {
  min-height:0;
  padding:47px 22px 27px;
}
.original-benefit-card h3 {
  top:-16px;
  left:6px;
  width:max-content;
  max-width:calc(100% - 4px);
  padding:7px 14px 9px;
  font-size:clamp(16px,4.5vw,22px);
  white-space:nowrap;
}
.original-benefit-card p {
  padding-right:0;
  font-size:18px;
  line-height:1.42;
}
.original-benefit-card .original-emoji {
  position:absolute;
  display:block;
  margin:0;
  font-size:46px;
  line-height:1;
  text-align:initial;
}
.original-benefit-card .original-status-pills {
  gap:6px;
  margin-top:16px;
  padding:0 46px 0 0;
}
.original-status-pills span {
  padding:6px 9px 7px;
  font-size:13px;
}

@media (min-width:700px) {
  .original-benefit-stack {
    margin-top:74px;
    gap:58px;
  }
  .original-benefit-card {
    padding:48px 26px 29px;
  }
  .original-benefit-card h3 {
    left:-12px;
    font-size:21px;
  }
  .original-benefit-card p { font-size:19px; }
}

/* две встречные ленты: трудности уходят, а опоры для движения появляются */
.original-tag-field {
  width:calc(100% + 40px);
  margin:22px -20px 0;
  gap:8px;
}
.original-topic-marquee {
  width:100%;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(to right, transparent, black 10%, black 90%, transparent);
  mask-image:linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}
.original-topic-marquee .original-marquee-track {
  gap:7px;
  padding:0 4px;
  animation-duration:25s;
}
.original-topic-marquee--positive .original-marquee-track {
  animation-direction:reverse;
  animation-duration:28s;
}
.original-topic-marquee span {
  display:block;
  padding:5px 10px 6px;
  border-radius:999px;
  background:#fff;
  white-space:nowrap;
  font-size:15px;
  line-height:1;
}
.original-topic-marquee--negative span {
  opacity:.72;
}
.original-topic-marquee s {
  text-decoration-thickness:2px;
  text-decoration-color:var(--original-ink);
}

/* наклейка остаётся внутри контура, но по-прежнему выступает над историей */
.original-outlined-story .original-sticker-title {
  left:6px;
  width:max-content;
  max-width:calc(100% - 34px);
  padding:7px 17px 9px;
  font-size:clamp(17px,3.5vw,23px);
  letter-spacing:-.55px;
}

/* спокойный раздел о сопровождении: одна белая рамка, без цветового шума */
.original-how:not(.original-faq) {
  padding:82px 28px 68px;
  background:#fff;
}
.original-how:not(.original-faq) > h2 {
  margin-bottom:48px;
}
.original-how:not(.original-faq) .original-agreement-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  overflow:hidden;
  border:var(--original-line) solid var(--original-ink);
  border-radius:34px;
  background:#fff;
}
.original-how:not(.original-faq) .original-agreement-card,
.original-how:not(.original-faq) .original-agreement-card:nth-child(n) {
  min-height:0;
  padding:27px 24px 25px;
  border:0;
  border-radius:0;
  background:#fff;
}
.original-how:not(.original-faq) .original-agreement-card + .original-agreement-card {
  border-top:var(--original-line) solid var(--original-ink);
}
.original-how:not(.original-faq) .original-agreement-card h3 {
  margin:0 0 11px;
  padding:0;
  background:transparent;
  font:950 clamp(23px,6.5vw,30px)/1 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-.8px;
  white-space:normal;
}
.original-how:not(.original-faq) .original-agreement-card p {
  margin:0;
  font-size:17px;
  line-height:1.45;
}
.original-agreement-section {
  position:relative;
  isolation:isolate;
  overflow:visible;
  margin-top:clamp(48px, 8vw, 72px);
  padding-bottom:170px !important;
}
.original-agreement-section > h2 { position:relative; z-index:1; }
.original-agreement-glow {
  position:absolute;
  z-index:0;
  top:148px;
  left:50%;
  width:min(72vw, 360px);
  height:116px;
  border-radius:999px;
  background:var(--original-lilac);
  opacity:.72;
  filter:blur(42px);
  transform:translateX(-50%);
  pointer-events:none;
}
.original-annotated-word { position:relative; display:inline-block; }
.original-hand-note {
  position:absolute;
  z-index:2;
  display:block;
  width:max-content;
  max-width:min(74vw, 300px);
  color:var(--original-ink);
  font:400 clamp(13px, 3.7vw, 18px)/1.05 "Bradley Hand", "Segoe Print", "Comic Sans MS", cursive;
  letter-spacing:-.2px;
  text-align:left;
  white-space:normal;
  transform:rotate(-5deg);
}
.original-public-commitment {
  position:relative;
  z-index:1;
  max-width:590px;
  margin:58px auto 0;
  padding:26px 25px 28px;
  border:2px solid var(--original-ink);
  background:#fffef1;
  box-shadow:7px 8px 0 rgba(0,0,0,.14);
  transform:rotate(-1.1deg);
}
.original-public-commitment::before {
  content:"выдержка";
  position:absolute;
  top:-13px;
  left:18px;
  padding:3px 9px 4px;
  background:var(--original-ink);
  color:#fffef1;
  font:700 11px/1 "Montserrat","Avenir Next",Arial,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  transform:rotate(-2deg);
}
.original-public-commitment p {
  margin:0;
  font:400 clamp(17px, 4vw, 21px)/1.32 "Bradley Hand","Segoe Print","Comic Sans MS",cursive;
  letter-spacing:-.2px;
}
.original-public-commitment p strong {
  font-weight:800;
}
.original-hand-arrow {
  position:absolute;
  display:block;
  width:42px;
  height:34px;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:2.1;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.original-annotated-word--todo .original-hand-note {
  top:-42px;
  left:8px;
}
.original-annotated-word--todo .original-hand-arrow {
  left:50%;
  bottom:-30px;
  transform:translateX(-50%);
}
.original-annotated-word--promise .original-hand-note {
  top:calc(100% + 48px);
  right:-42px;
  transform:rotate(3deg);
}
.original-annotated-word--promise .original-hand-arrow {
  top:-42px;
  left:50%;
  transform:translateX(-50%);
}

@media (min-width:700px) {
  .original-tag-field { width:calc(100% + 108px); margin-inline:-54px; }
  .original-topic-marquee span { font-size:17px; }
  .original-hero-lead { font-size:17px; }
  .original-outlined-story .original-sticker-title {
    left:18px;
    font-size:23px;
  }
  .original-how:not(.original-faq) {
    padding:90px 64px 72px;
  }
  .original-how:not(.original-faq) .original-agreement-card {
    padding:29px 30px 27px;
  }
  .original-how:not(.original-faq) .original-agreement-card p { font-size:18px; }
  .original-agreement-section { padding-bottom:190px !important; }
  .original-annotated-word--todo .original-hand-note { top:-50px; left:12px; }
  .original-annotated-word--promise .original-hand-note { top:calc(100% + 54px); right:-76px; }
}

@media (max-width:359px) {
  .original-outlined-story .original-sticker-title { font-size:15px; }
}

/* личная нота Макса: спокойная карточка, под которую наполовину заходит цветной слой */
.original-max-section {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:88px 28px 82px;
  background:var(--original-cream);
}
.original-max-section::before {
  content:"";
  position:absolute;
  z-index:-1;
  top:118px;
  left:-48px;
  width:56%;
  height:220px;
  border-radius:0 40px 40px 0;
  background:var(--original-lilac);
  transform:rotate(-3deg);
}
.original-max-card {
  position:relative;
  max-width:620px;
  margin:0 auto;
  padding:65px 24px 35px;
  border:var(--original-line) solid var(--original-ink);
  border-radius:34px;
  background:#fff;
}
.original-max-kicker {
  position:absolute;
  top:-21px;
  left:-10px;
  margin:0;
  padding:8px 15px 9px;
  border-radius:999px;
  background:var(--original-lilac);
  font:950 16px/1 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-.35px;
  transform:rotate(-2deg);
}
.original-max-card h2 {
  margin:0 0 27px;
  font:950 clamp(32px,8vw,44px)/1.04 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-1.4px;
}
.original-max-card p {
  margin:0 0 22px;
  font-size:18px;
  line-height:1.48;
}
.original-max-card p:last-child { margin-bottom:0; }
.original-max-signature {
  margin-top:34px !important;
  font-weight:800;
  font-style:italic;
  text-align:right;
}
.original-max-more[hidden] { display:none; }
.original-max-toggle {
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  margin:-4px 0 28px;
  padding:9px 19px 11px;
  border:var(--original-line) solid var(--original-ink);
  border-radius:999px;
  background:#fff;
  box-shadow:4px 5px 0 var(--original-ink);
  color:var(--original-ink);
  font:850 16px/1 "Montserrat","Avenir Next",Arial,sans-serif;
  transform:rotate(-2deg);
}
.original-max-toggle:hover { transform:translateY(-1px) rotate(-2deg); }
.original-max-toggle:focus-visible { outline:4px solid var(--original-lilac); outline-offset:4px; }

/* финальная настройка ритма на всех ширинах */
.original-outlined-story { padding-top:20px; }
.original-benefit-card { padding-top:32px; }
.original-how:not(.original-faq) .original-agreement-grid {
  grid-template-columns:minmax(0,1fr) !important;
}
.original-how:not(.original-faq) .original-agreement-card,
.original-how:not(.original-faq) .original-agreement-card-wide {
  min-width:0;
  grid-column:auto !important;
}
.original-max-section::before { display:none; }
.original-max-card,.original-max-card.is-open { padding-bottom:35px; }
.original-max-toggle {
  position:relative;
  right:auto;
  bottom:auto;
  display:flex;
  width:max-content;
  margin:10px 0 0 auto;
  box-shadow:none;
}
.original-max-toggle:active { box-shadow:4px 5px 0 var(--original-ink); transform:translate(-1px,-1px) rotate(-2deg); }

@media (min-width:700px) {
  .original-outlined-story { padding-top:16px; }
  .original-benefit-card { padding-top:32px; }
  .original-max-card,.original-max-card.is-open { padding-bottom:45px; }
  .original-max-toggle { right:auto; bottom:auto; }
}

@media (min-width:700px) {
  .original-max-section { padding:102px 64px 96px; }
  .original-max-section::before { left:-64px; width:42%; height:250px; }
  .original-max-card { padding:76px 50px 45px; }
  .original-max-card p { font-size:19px; }
}

/* Карточки подбора: один цветной контейнер, без внешней «коробки». */
.app-shell #choices-form.form-card {
  margin-top:36px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.app-shell #choices-form .candidate {
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
}
.app-shell #choices-form .candidate-main {
  width:100%;
  min-width:0;
  margin:-28px -24px 8px;
  padding:24px 24px 4px;
  background:var(--flow-cream);
  border-radius:26px 26px 0 0;
}
.app-shell #choices-form .candidate-project {
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0 0 18px;
  padding:8px 12px 9px;
  font-size:clamp(10px, 1.7vw, 16px);
  line-height:1;
  letter-spacing:-.5px;
  white-space:nowrap;
  transform:rotate(-1.4deg);
}
.app-shell #choices-form .candidate-details {
  display:grid;
  gap:8px;
  margin:0 0 14px;
}
.app-shell #choices-form .candidate .tag {
  display:block;
  width:fit-content;
  max-width:100%;
  margin:0;
  white-space:normal;
  overflow-wrap:anywhere;
}
.app-shell #choices-form .candidate .micro {
  overflow-wrap:anywhere;
}
.app-shell #choices-form .choice {
  width:100%;
  max-width:100%;
  min-inline-size:0;
  margin:0;
  grid-template-columns:minmax(0,1.28fr) minmax(0,.9fr) minmax(0,.65fr);
}
.app-shell #choices-form .choice label,
.app-shell #choices-form .choice .choice-skip {
  min-width:0;
}

@media (max-width:420px) {
  .app-shell #choices-form .candidate-project {
    padding-inline:9px;
    font-size:clamp(9px, 3vw, 12px);
    letter-spacing:-.55px;
  }
}

/* Доступность: единый видимый фокус и удобные зоны касания. */
.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.skip-link {
  position:fixed;
  z-index:100;
  top:12px;
  left:12px;
  padding:12px 16px;
  border-radius:999px;
  background:#fff;
  color:var(--original-ink);
  font-weight:800;
  text-decoration:none;
  transform:translateY(-160%);
}
.skip-link:focus-visible { transform:translateY(0); outline:4px solid var(--original-lilac); outline-offset:3px; }
:where(a, button, input, textarea, select, summary):focus-visible {
  outline:4px solid var(--original-lilac);
  outline-offset:4px;
}
.app-shell .field input[aria-invalid="true"],
.app-shell .field textarea[aria-invalid="true"] {
  border-color:#9c3b34;
  box-shadow:0 0 0 4px #ffb4ac;
}
.app-shell .button:disabled {
  cursor:wait;
  opacity:.62;
  transform:none;
  box-shadow:none;
}
.original-reading-link,
.original-footer-blog {
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

/* Тонкие ручные зачёркивания для слов, от которых хочется уйти. */
.original-topic-marquee--negative s {
  position:relative;
  display:inline-block;
  text-decoration:none;
}
.original-topic-marquee--negative s::after {
  content:"";
  position:absolute;
  left:-2%;
  top:52%;
  width:104%;
  height:1px;
  background:var(--original-ink);
  transform:rotate(-2deg);
  transform-origin:center;
}
.original-topic-marquee--negative span:nth-child(3n) s::after { transform:rotate(2deg); }
.original-topic-marquee--negative span:nth-child(3n + 1) s::after { transform:rotate(-4deg); }

/* Спокойные технические условия и нейтральные статусы. */
.original-terms-conditions { color:#72777a; }
.original-terms > p.original-terms-conditions {
  font-size:13.5px !important;
  line-height:1.4;
}
.original-status-pills span:nth-child(2) { background:#fff; }
.original-benefit-card .original-emoji { font-size:68px; }

/* В заметке Макса текст идёт единым косым потоком, без разрывов между абзацами. */
.original-max-card .original-max-teaser p,
.original-max-card .original-max-more p {
  margin-bottom:0;
  font-style:italic;
}
.original-max-card .original-max-more .original-max-signature { margin-top:22px !important; }

/* Единый внутренний ритм рамок на всём лендинге. */
.original-page {
  --original-frame-pad: clamp(24px, 4vw, 40px);
}
.original-outlined-story,
.original-way-copy,
.original-candidate-card .original-way-copy,
.original-benefit-card,
.original-agreement-card,
.original-terms,
.original-max-card {
  padding:var(--original-frame-pad);
}
.original-outlined-story { padding-bottom:var(--original-frame-pad); }
.original-way-copy { padding-bottom:var(--original-frame-pad); }
.original-candidate-card .original-way-copy { padding-bottom:var(--original-frame-pad); }
.original-benefit-card { padding-top:calc(var(--original-frame-pad) + 20px); }
.original-terms { padding-bottom:var(--original-frame-pad); }
.original-max-card { padding-bottom:var(--original-frame-pad); }
.original-how:not(.original-faq) .original-agreement-card { padding:var(--original-frame-pad); }

/* Молочные секции отделяются от белого мягкими округлёнными краями. */
.original-benefits { border-radius:56px 56px 0 0; }
.original-faq,
.original-max-section { border-radius:56px; }
.original-max-section { margin:36px 0; }

/* Лаймовое свечение на каждом шаге. */
.original-steps li .original-sticker { box-shadow:0 0 34px rgba(186,255,0,.5); }

/* Прикрытый текст истории Макса мягко уходит в белый фейд. */
.original-max-card:not(.is-open) .original-max-teaser {
  position:relative;
  max-height:220px;
  overflow:hidden;
  padding-bottom:44px;
}
.original-max-card:not(.is-open) .original-max-teaser::after {
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:104px;
  background:linear-gradient(to bottom, rgba(255,255,255,0), #fff 70%);
  pointer-events:none;
}
.original-max-card.is-open .original-max-teaser { max-height:none; padding-bottom:0; }

/* Плашка следующего шага получает собственный цвет и безопасный воздух снизу. */
.original-sticker-choice {
  margin-bottom:clamp(128px, 18vw, 160px);
  background:var(--original-lilac);
}

/* Кнопка истории лежит на нижней границе карточки: часть внутри, часть снаружи. */
.original-max-card {
  position:relative;
  overflow:visible;
  padding-bottom:calc(var(--original-frame-pad) + 28px);
}
.original-max-toggle,
.original-max-toggle:hover,
.original-max-toggle:active {
  position:absolute;
  right:24px;
  bottom:-30px;
  margin:0;
  box-shadow:none;
}
.original-max-toggle:hover { transform:translateY(-1px) rotate(-2deg); }
.original-max-toggle:active { box-shadow:4px 5px 0 var(--original-ink); transform:translate(-1px,-1px) rotate(-2deg); }
.original-max-section { overflow:visible; }
@media (min-width:700px) {
  .original-max-card { padding-bottom:calc(var(--original-frame-pad) + 36px); }
  .original-max-toggle,
  .original-max-toggle:hover,
  .original-max-toggle:active { right:50px; bottom:-34px; }
}

/* Последний воздух в карточке выбора: он равен её внутренним полям. */
.original-outlined-story .original-obstacle-note {
  margin-bottom:var(--original-frame-pad);
}
.original-sticker-choice {
  margin-top:-16px;
}

/* Объяснение обязательства — отдельная вырезка, закреплённая полупрозрачным скотчем. */
.original-agreement-section {
  padding-bottom:80px !important;
}
.original-public-commitment {
  margin-top:120px;
  padding:30px 27px 32px;
  border-radius:20px;
  box-shadow:9px 11px 0 rgba(0,0,0,.13), 0 18px 30px rgba(0,0,0,.10);
}
.original-public-commitment::before {
  content:"";
  top:-15px;
  left:50%;
  width:126px;
  height:30px;
  padding:0;
  border:1px solid rgba(106,83,42,.18);
  border-radius:2px;
  background:rgba(231,214,169,.76);
  box-shadow:none;
  opacity:.88;
  transform:translateX(-50%) rotate(-3deg);
}
@media (min-width:700px) {
  .original-agreement-section { padding-bottom:96px !important; }
  .original-public-commitment { margin-top:126px; }
}

/* История Макса выглядит как лист, который только что вынули из конверта. */
.original-max-section {
  padding:92px 34px 106px;
  background:#fbf5df;
}
.original-max-section::before {
  display:block;
  z-index:0;
  inset:58px 17px 34px;
  width:auto;
  height:auto;
  border:2px solid var(--original-ink);
  border-radius:30px;
  background:#ead7ae;
  box-shadow:8px 10px 0 rgba(0,0,0,.12);
  transform:rotate(-1.1deg);
}
.original-max-section::after {
  content:"";
  position:absolute;
  z-index:1;
  top:72px;
  right:32px;
  left:32px;
  height:220px;
  border-radius:22px 22px 0 0;
  background:#e1c99b;
  clip-path:polygon(0 0, 100% 0, 50% 100%);
  opacity:.72;
  pointer-events:none;
}
.original-max-card {
  z-index:2;
  border-radius:22px 22px 28px 28px;
  background:#fffef9;
  box-shadow:8px 11px 0 rgba(0,0,0,.13), 0 18px 36px rgba(0,0,0,.08);
  transform:rotate(.45deg);
}
.original-max-kicker { z-index:3; }
@media (min-width:700px) {
  .original-max-section { padding:106px 76px 116px; }
  .original-max-section::before { inset:66px 40px 42px; }
  .original-max-section::after { right:62px; left:62px; height:250px; }
}

/* Слово «чтобы» остаётся на месте: меняется только соседнее слово. */
.original-footer-verb {
  display:inline-flex;
  align-items:baseline;
  justify-content:flex-start;
  gap:.26em;
  width:8.45em;
  text-align:left;
  white-space:nowrap;
}
.original-footer-word {
  min-width:0;
  text-align:left;
}
.original-footer-legal {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px 15px;
  max-width:540px;
  margin:0 auto 27px;
  font:500 12px/1.35 "Montserrat","Avenir Next",Arial,sans-serif;
}
.original-footer-legal a {
  color:var(--original-ink);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.original-footer-legal a:hover { color:var(--original-lilac); }
@media (max-width:420px) {
  .original-footer-verb { width:8.25em; }
  .original-footer-legal { gap:8px 12px; font-size:11px; }
}
.original-slider-dots button,
.original-slider-dots button.active {
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  background:transparent;
}
.original-slider-dots button::before {
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:#cfcfcf;
}
.original-slider-dots button.active::before {
  width:25px;
  background:var(--original-neon);
}
.app-shell #choices-form .choice {
  grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr) minmax(0,1.2fr);
}
@media (max-width:420px) {
  .app-shell #choices-form .choice {
    grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr) minmax(0,1.2fr);
  }
}

/* Absolute final landing corrections: intentionally after all landing variants. */
.original-public-commitment p { font:400 clamp(16px,3.9vw,20px)/1.48 "Montserrat","Avenir Next",Arial,sans-serif; letter-spacing:0; }
.original-public-commitment p strong { font-weight:800; }
.original-terms { position:relative; z-index:1; margin-top:112px; margin-bottom:34px; background:#fff !important; box-shadow:0 0 0 24px var(--original-neon); }
.original-terms::before { display:none; }
.original-max-section { position:relative; isolation:isolate; overflow:visible; margin:52px 0 68px; padding:126px 34px 128px; background:none; border-radius:56px; }
.original-max-section::before { content:""; position:absolute; display:block; z-index:0; inset:118px 18px 38px; width:auto; height:auto; border:2px solid var(--original-ink); border-radius:26px; background:#fff; box-shadow:9px 12px 0 rgba(0,0,0,.14); transform:rotate(-1deg); }
.original-max-section::after { content:""; position:absolute; z-index:1; top:124px; right:26px; left:26px; height:178px; border:2px solid var(--original-ink); border-bottom:0; border-radius:24px 24px 0 0; background:#fff; clip-path:polygon(0 0,100% 0,100% 8%,50% 78%,0 8%); opacity:.96; pointer-events:none; }
.original-max-card { position:relative; z-index:2; margin-top:-54px; padding-top:58px; border:2px solid var(--original-ink); border-radius:18px 18px 28px 28px; background:#fff; box-shadow:7px 9px 0 rgba(0,0,0,.12); transform:rotate(.45deg); }
.original-max-kicker { z-index:3; }
.original-slider-dots { position:relative; width:148px; min-height:48px; margin-inline:auto; gap:0; }
.original-slider-dots .original-swipe-hint { position:absolute; z-index:1; top:4px; left:50%; display:grid; width:40px; height:40px; place-items:center; border-radius:50%; background:#d5d5d5; color:#6f6f6f; font:700 22px/1 Arial,sans-serif; transform:translateX(-50%); animation:original-swipe-hint 1.8s ease-in-out infinite; pointer-events:none; }
.original-slider-dots button,.original-slider-dots button.active { position:relative; z-index:2; width:44px; height:44px; margin:0 2px; opacity:0; }
.original-slider-dots button::before,.original-slider-dots button.active::before { display:none; }
.original-slider-dots button:focus-visible { opacity:.16; outline:3px solid var(--original-ink); }
@keyframes original-swipe-hint { 0%,100% { transform:translateX(calc(-50% - 7px)); } 50% { transform:translateX(calc(-50% + 7px)); } }
@media (min-width:700px) { .original-terms { margin-top:124px; margin-bottom:42px; box-shadow:0 0 0 30px var(--original-neon); } .original-max-section { padding:146px 76px 144px; } .original-max-section::before { inset:132px 40px 46px; } .original-max-section::after { top:138px; right:62px; left:62px; height:214px; } .original-max-card { margin-top:-64px; } }
@media (prefers-reduced-motion:reduce) { .original-slider-dots .original-swipe-hint { animation:none; } }

/* Final profile-card and checkout overrides (kept last so responsive legacy
   rules cannot reintroduce the former colourful pill layout). */
.app-shell #choices-form .candidate,
.app-shell #choices-form .candidate--paper,
.app-shell #choices-form .candidate--neon,
.app-shell #choices-form .candidate--lilac { padding:28px 24px 20px; border:2px solid var(--flow-ink); border-radius:28px; background:var(--flow-cream); box-shadow:6px 7px 0 rgba(16,16,20,.14); }
.app-shell #choices-form .candidate h3 { margin:0 0 8px; font-size:30px; letter-spacing:-.8px; }
.app-shell #choices-form .candidate .meta { margin-bottom:22px; color:#74777a; font-size:13px; font-weight:650; }
.app-shell #choices-form .candidate-project,
.app-shell #choices-form .candidate--paper .candidate-project,
.app-shell #choices-form .candidate--neon .candidate-project,
.app-shell #choices-form .candidate--lilac .candidate-project { display:block; width:auto; max-width:none; margin:0 0 8px; padding:0 0 10px; border:0; border-bottom:1px solid #d9d9d9; border-radius:0; background:transparent; color:var(--flow-ink); font:750 17px/1.3 "Montserrat","Avenir Next",Arial,sans-serif; white-space:normal; transform:none; }
.app-shell #choices-form .candidate-details { display:grid; gap:12px; margin:0 0 18px; }
.app-shell #choices-form .candidate .tag,
.app-shell #choices-form .candidate .tag:first-child { display:block; width:auto; max-width:none; margin:0; padding:0 0 12px; border:0; border-bottom:1px solid #e2e2e2; border-radius:0; background:transparent; color:#333; font-size:14px; line-height:1.4; font-weight:550; }
.app-shell #choices-form .candidate-details .tag:last-child { border-bottom:0; padding-bottom:0; }
.app-shell #choices-form .candidate .micro { margin:0 0 18px; color:#74777a; font-size:12px; line-height:1.45; }
.app-shell #choices-form .choice { display:grid; grid-template-columns:1fr 1fr 1fr; gap:8px; padding:15px 0 0; border:0; border-top:1px solid #d9d9d9; border-radius:0; background:transparent; }
.app-shell #choices-form .choice label,
.app-shell #choices-form .choice .choice-skip { min-height:36px; padding:7px 5px; border:1px solid #cfcfcf; border-radius:999px; background:#fff; color:var(--flow-ink); font-size:11px; line-height:1.1; font-weight:750; text-decoration:none; }
.app-shell #choices-form .choice label:has(input[name="primaryId"]:checked) { border-color:var(--flow-ink); background:var(--flow-neon); text-decoration:none; }
.app-shell #choices-form .choice label:has(input[name="backupId"]:checked) { border-color:var(--flow-ink); background:var(--flow-lilac); text-decoration:none; }
.app-shell #choices-form .choice .choice-skip { text-decoration:none; }
.app-shell .checkout-card { padding:28px 26px 26px; background:#fff; }
.app-shell .checkout-price { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:12px; }
.app-shell .checkout-price strong { font:900 clamp(42px,8vw,62px)/.95 "Archivo Black","Arial Black",Arial,sans-serif; letter-spacing:-2px; }
.app-shell .checkout-price span { color:#74777a; font-size:14px; font-weight:650; text-align:right; }
.app-shell .checkout-includes { margin:0 0 24px; color:#333; font-size:15px; line-height:1.4; }
.app-shell .checkout-card > .button { width:100%; }
.app-shell .checkout-assurance { margin:17px 0 0; color:#74777a; font-size:13px; line-height:1.4; }
.app-shell .checkout-card > .micro { margin:16px 0 0; }
@media (max-width:540px) {
  .app-shell #choices-form .candidate { padding:24px 18px 18px; }
  .app-shell #choices-form .candidate h3 { font-size:27px; }
  .app-shell #choices-form .choice label,
  .app-shell #choices-form .choice .choice-skip { font-size:10px; }
  .app-shell .checkout-price { align-items:flex-start; flex-direction:column; gap:4px; }
  .app-shell .checkout-price span { text-align:left; }
}

/* Keep the reviewed landing decisions last in the cascade. */
.original-steps { background:#fff !important; }
.original-outlined-story .original-sticker-title {
  left:50% !important;
  width:max-content !important;
  max-width:calc(100% - 28px) !important;
  box-sizing:border-box;
  white-space:normal;
  text-align:center;
  transform:translateX(-50%) rotate(-3deg) !important;
}
.original-sticker-choice { border:0 !important; }
.original-slider-dots { width:auto !important; min-height:20px !important; gap:9px !important; }
.original-slider-dots .original-swipe-hint { display:none !important; }
.original-slider-dots button,
.original-slider-dots button.active {
  display:block !important;
  width:9px !important;
  height:9px !important;
  min-width:9px !important;
  min-height:9px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  opacity:1 !important;
  background:#c8c8c8 !important;
  box-shadow:none !important;
}
.original-slider-dots button::before,
.original-slider-dots button.active::before { display:none !important; content:none !important; }
.original-slider-dots button.active { background:#8e8e8e !important; }
.original-public-commitment { box-shadow:9px 11px 0 rgba(0,0,0,.08), 0 18px 30px rgba(0,0,0,.06) !important; }
.original-public-commitment p { font-size:clamp(14px,3.2vw,17px) !important; line-height:1.5 !important; }

/* Final visual cleanup requested in review. */
.original-max-section::before,
.original-max-section::after { display:none !important; content:none !important; }
.original-max-card { margin-top:0 !important; }
.original-terms { box-shadow:0 0 0 24px var(--original-lilac) !important; }
@media (min-width:700px) {
  .original-terms { box-shadow:0 0 0 30px var(--original-lilac) !important; }
}

/* Shared minimal footer for app-shell flow pages and blog pages. */
.app-footer {
  margin-top:64px;
  padding:32px 20px 40px;
  text-align:center;
}
.app-footer-logo {
  margin:0 0 14px;
  font:900 20px/1 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-.5px;
}
.original-footer-story {
  display:block;
  width:100%;
  margin:0 0 28px;
  padding:0;
  border:0;
  background:none;
  color:var(--original-ink);
  font-size:15px;
  font-weight:850;
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:4px;
  cursor:pointer;
}
.original-footer-story:hover { color:var(--original-lilac); }
.app-footer-legal {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:6px 16px;
  margin-bottom:14px;
}
.app-footer-legal a {
  color:inherit;
  font-size:13px;
  text-decoration:underline;
  text-underline-offset:2px;
}
.app-footer small {
  display:block;
  max-width:520px;
  margin:0 auto;
  color:#74777a;
  font-size:12px;
  line-height:1.5;
}

/* Account "my request" card: plain heading (no purple pill), bold label,
   outlined goal pill, and labelled fact groups instead of bare tags. */
.app-shell .account-card > h3:first-child {
  display:block;
  max-width:none;
  margin:0 0 14px;
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  transform:none;
}
.app-shell .account-card .micro strong {
  font-weight:800;
  color:var(--flow-ink);
}
.app-shell .account-card .goal-pill {
  display:inline-block;
  margin-left:4px;
  padding:4px 12px;
  border:2px solid var(--flow-ink);
  border-radius:999px;
  background:#fff;
  font-weight:700;
  line-height:1.3;
}
.app-shell .account-card .profile-facts {
  display:grid;
  gap:14px;
  margin:18px 0;
}
.app-shell .account-card .profile-fact-label {
  display:block;
  margin-bottom:6px;
  color:#74777a;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.app-shell .account-card .hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:8px;
}

/* CJM trust/reassurance copy: quiet, distinguishable from body text without
   competing with the primary lead paragraph. */
.app-shell .trust-note {
  margin:0 0 22px;
  padding:12px 16px;
  border-left:3px solid var(--flow-lilac);
  background:rgba(200,149,245,.12);
  color:#4a4a4a;
  font-size:14px;
  line-height:1.5;
}
.app-shell .save-note,
.app-shell .wait-note {
  margin:14px 0 0;
  color:#74777a;
  font-size:13px;
  line-height:1.45;
}
.app-shell .checkout-philosophy {
  margin:0 0 18px;
  color:#74777a;
  font-size:13px;
  line-height:1.45;
}

.story-modal {
  position:fixed;
  inset:0;
  z-index:200;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.story-modal[hidden] { display:none; }
.story-modal-backdrop {
  position:absolute;
  inset:0;
  background:rgba(6,6,6,.55);
}
.story-modal-card {
  position:relative;
  z-index:1;
  width:100%;
  max-width:560px;
  max-height:min(82vh,720px);
  overflow-y:auto;
  margin:0 auto;
  padding:48px 26px 32px;
  border:3px solid #060606;
  border-radius:28px;
  background:#fff;
  box-shadow:8px 10px 0 rgba(0,0,0,.16);
}
.story-modal-kicker {
  display:table;
  margin:0 0 18px;
  padding:7px 14px 8px;
  border-radius:999px;
  background:#c895f5;
  color:#060606;
  font:950 14px/1 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-.3px;
  transform:rotate(-2deg);
}
.story-modal-card h2 {
  margin:0 0 20px;
  font:950 clamp(26px,6vw,34px)/1.1 "Archivo Black","Arial Black",Arial,sans-serif;
  letter-spacing:-1px;
  color:#060606;
}
.story-modal-body p {
  margin:0 0 18px;
  color:#060606;
  font-size:16px;
  font-style:italic;
  line-height:1.5;
}
.story-modal-body p:last-child { margin-bottom:0; }
.story-modal-signature {
  margin-top:8px !important;
  font-weight:800;
  font-style:italic;
  text-align:right;
}
.story-modal-close {
  position:absolute;
  top:14px;
  right:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border:2px solid #060606;
  border-radius:50%;
  background:#fff;
  color:#060606;
  font-size:15px;
  line-height:1;
  cursor:pointer;
}
.story-modal-close:hover { background:#f4f4f4; }

/* Единый адаптивный ритм между крупными секциями лендинга: один и тот же
   отступ везде, который плавно масштабируется от мобильного до десктопа. */
.original-page {
  --original-gap: clamp(96px, 16vw, 176px);
}
.original-hero { padding-bottom:var(--original-gap); }
.original-intro,
.original-intro--compact { padding-bottom:var(--original-gap); }
.original-ways { padding-bottom:var(--original-gap); }
.original-benefits { padding-bottom:var(--original-gap); }
.original-how { padding-bottom:var(--original-gap); }
.original-how.original-agreement-section { padding-bottom:var(--original-gap) !important; }
.original-public-commitment { margin-top:var(--original-gap); }
.original-steps { padding-bottom:var(--original-gap); }
.original-terms { margin-top:var(--original-gap); margin-bottom:0; }
.original-footer { padding-bottom:var(--original-gap); }

/* Заполняем зоны выреза/чёлки и нижней полосы жестов цветом страницы,
   а не оставляем их некрашеными в Safari на iOS и во встроенных браузерах. */
.original-hero { padding-top:calc(40px + env(safe-area-inset-top)); }
.app-shell .top { padding-top:calc(20px + env(safe-area-inset-top)); }
.original-footer { padding-bottom:calc(var(--original-gap) + env(safe-area-inset-bottom)); }
.app-footer { padding-bottom:calc(40px + env(safe-area-inset-bottom)); }
