/* Hallmark · macrostructure: Editorial Spread — составная: 05 Workbench (страница построена вокруг настоящих экранов продукта) + 16 Feature Stack (прилипший экран с переключением по шагам в «Как это работает») + 01 Bento Grid одной секцией; НЕ Specimen · nav: N1b (вордмарк + ссылки + одна кнопка, без хэйрлайна и без белой полосы) · footer: Ft4 плотный колофон · theme: Atelier (выбрана руками) · type: Onest 400–700, заголовки 700 (Cormorant Garamond снят 01.10.2026) · palette: chalk / ink / rose светлой темы продукта
   pre-emit critique: P5 H5 E5 S5 R5 V4 — Execution 5 (все четырнадцать экранов вставлены 04.09.2026, персональные данные закрыты замазкой #A8507A, плейсхолдеров ноль; скорость 04.09: LCP 2,18 с на статическом сервере и 1,73 с на astro preview, обе — медианы из пяти прогонов, цель ≤2,0 превышена на 0,18 с на статическом — замерен рычаг: первый кадр ленивым даёт 1,95 с, но правило §7 меняется только решением владельца), Variety 4 (два сплита рядом различаются только стороной: 5/7 и 7/5). Первый соблазн — hero сплитом «текст слева, телефон справа» и страница из одинаковых белых карточек; снято — hero стек с лентой из четырёх настоящих экранов ступенькой, у каждой секции своя раскладка, семейство не повторяется подряд. Второй — капс-eyebrow над каждым из четырнадцати h2; снят целиком, строки Product ушли в aria-label секций. Третий — фон-градиенты и glow под новый пурпур; снят: акцент это цвет продукта, площадью меньше 5 % вьюпорта, градиентов на странице нет.

   Mira Landing — дизайн-проход 2026-09-03 (сессия 2: hero и структура А;
   сессия 3: правки ревизии, шрифтовые сабсеты, минификация сборки).
   Система: src/landing/DESIGN.md (раздел «Кратко» в начале файла).
   ЭТОТ файл — исходник с обоснованиями; в dist уезжает минифицированная копия,
   которую собирает интеграция mira-minify-public-css в astro.config.mjs.
   Штамп ниже она переносит дословно — не трогать первую строку.
   Бриф первого экрана: docs/design/hero-brief.md — числа там замерены, а не оценены.

   Лавандовый холст (#F3F0F8), сливовые чернила (#2A1F3A), пурпурный акцент (#A8507A).
   Акцент — из СВЕТЛОЙ темы приложения (:root[data-theme="light"] в
   src/frontend/styles/global.css): скриншоты страницы снимаются в светлой теме,
   и коралл тёмной темы спорил бы с пурпуром внутри каждого кадра
   (решение ревизии 03.09.2026; контраст на бумаге вырос с 3,70 до 4,89).
   С 01.10.2026 оттуда же и холст — --mira-bg светлой темы вместо тёплого #FFF8F6
   (решение Олега, docs/seo-geo/handoff-2026-10/00-ZADACHA-R2.md): на нём у акцента
   4,55 — порог 4,5 проходит, запаса почти нет, светлее акцент не делать.

   Одна семья: Onest — и текст с UI, и h1, h2, пулл-числа (заголовки 700), self-hosted
   (Google Fonts троттлится в RU — тот же урок, что в TMA). Cormorant Garamond снят
   01.10.2026 тем же решением.
   Файл обслуживает все страницы, кроме юридических: главную, хаб /stati и пятнадцать
   статей — двенадцать из них с 01.10.2026 собирает из черновиков пакета SEO/GEO
   генератор (src/landing/scripts/build-articles.py, каркас src/components/ArticleShell.astro).
   Статьи стоят на нередизайненном блоке «Статьи»: он же держит меру
   84 знака вместо 45–75 по §14 — долг блока, а не решение этих страниц.
   Блок «Статьи» в конце не удалять вместе с редизайном главной — их редизайн
   отдельным батчем. */
@font-face{font-family:Onest;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/onest.woff2) format("woff2");unicode-range:U+0020-007E,U+00A0,U+00A9,U+00AB,U+00AE,U+00B0-00B1,U+00B7,U+00BB,U+00D7,U+0401-040C,U+040E-044F,U+0451-045C,U+045E-045F,U+0490-0491,U+2009,U+2013-2014,U+2018-201A,U+201C-201E,U+2022,U+2026,U+202F-2030,U+2039-203A,U+2044,U+20BD,U+2116,U+2122,U+2192,U+2212,U+2248,U+2260,U+2264-2265}@font-face{font-family:Onest Fallback;font-weight:400 500;src:local("Arial");size-adjust:103.96%;ascent-override:93.31%;descent-override:29.34%;line-gap-override:0%}@font-face{font-family:Onest Fallback;font-weight:600 700;src:local("Arial-BoldMT"),local("Arial Bold");size-adjust:99.12%;ascent-override:97.86%;descent-override:30.77%;line-gap-override:0%}:root{--font-text:"Onest","Onest Fallback",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-display:var(--font-text);--chalk:#F3F0F8;--paper:#FFFFFF;--blush:#F6E7EE;--petal:#E0B9CD;--cream:#EDD4DC;--chalk-glass:rgba(243,240,248,.88);--chalk-soft:rgba(243,240,248,.74);--ink:#2A1F3A;--ink-soft:#5C4E6E;--ink-dim:#8878A0;--rose:#A8507A;--rose-deep:#8C3F64;--rose-ink:#722F52;--rose-glow:rgba(168,80,122,.28);--rose-line:rgba(140,63,100,.35);--hair:rgba(42,31,58,.07);--hair-2:rgba(42,31,58,.09);--hair-3:rgba(42,31,58,.12);--hair-4:rgba(42,31,58,.16);--hair-ink:rgba(243,240,248,.16);--r-pill:999px;--r-md:12px;--r-sm:6px;--wrap:1280px;--pad-x:clamp(20px,4vw,44px);--gap:24px;--header-h:78px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip}body{font-family:var(--font-text);background:var(--chalk);color:var(--ink);line-height:1.55;text-wrap:pretty;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;overflow-x:clip;padding-top:var(--header-h)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}ul,ol{list-style:none}::selection{background:var(--cream);color:var(--ink)}:focus-visible{outline:2px solid var(--rose);outline-offset:3px;border-radius:var(--r-sm)}.band-ink :focus-visible{outline-color:var(--chalk)}.skip-link{position:fixed;top:-100px;left:var(--pad-x);z-index:60;padding:12px 20px;border-radius:var(--r-pill);background:var(--rose);color:var(--chalk);font-size:15px;font-weight:600;line-height:1;transition:top .16s ease-out}.skip-link:focus-visible{top:14px}#top{outline:none}#top,#how,#new-clients,#returning,#prepay,#reminders,#clients,#analytics,#schedule,#link,#speed,#geo,#start,#masters,#faq,#how-built{scroll-margin-top:calc(var(--header-h) + 16px)}@keyframes miraUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes miraUpSolid{0%{transform:translateY(18px)}to{transform:translateY(0)}}@keyframes miraTape{0%{transform:translateY(26px)}to{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}.tape .screen{animation:none!important;transform:none!important}.how-strip{transition:none!important}}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad-x)}.wrap-narrow{max-width:820px;margin:0 auto;padding:0 var(--pad-x)}.band-paper{background:var(--paper)}.band-blush{background:var(--blush)}.band-ink{background:var(--ink);color:var(--chalk)}.band-ink .cap{color:var(--chalk-soft)}.hair-top{border-top:1px solid var(--hair-2)}.h1{font-family:var(--font-display);font-weight:700;font-size:clamp(36px,6.1vw,84px);line-height:1.02;letter-spacing:-.03em;color:var(--ink);text-wrap:balance;overflow-wrap:anywhere;font-variant-numeric:lining-nums tabular-nums}.h1 em{font-style:normal;color:var(--rose)}.h2{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,3.7vw,48px);line-height:1.08;letter-spacing:-.025em;overflow-wrap:anywhere;text-wrap:balance;font-variant-numeric:lining-nums tabular-nums}.h2-m{font-family:var(--font-display);font-weight:700;font-size:clamp(24px,2.95vw,38px);line-height:1.12;letter-spacing:-.02em;overflow-wrap:anywhere;text-wrap:balance;font-variant-numeric:lining-nums tabular-nums}.h2-final{font-family:var(--font-display);font-weight:700;font-size:clamp(30px,4.4vw,62px);line-height:1.04;letter-spacing:-.03em;text-wrap:balance;font-variant-numeric:lining-nums tabular-nums}.h2-fine{font-family:var(--font-display);font-weight:700;font-size:clamp(22px,2.15vw,26px);line-height:1.15;letter-spacing:-.015em;font-variant-numeric:lining-nums tabular-nums}.h3{font-size:clamp(20px,1.9vw,24px);font-weight:600;line-height:1.3;letter-spacing:-.01em}.num{font-family:var(--font-display);font-weight:600;line-height:.95;letter-spacing:-.04em;font-variant-numeric:lining-nums tabular-nums;display:block}.num-xl{font-size:clamp(56px,10vw,140px)}.num-l{font-size:clamp(50px,7.6vw,106px)}.num-m{font-size:clamp(44px,6.1vw,86px)}.unit{display:inline-block;margin-left:.14em;line-height:1;font-family:var(--font-text);font-weight:500;font-size:clamp(16px,2vw,29px);color:var(--ink-soft)}.pull.has-unit .num{display:inline-block}.band-ink .unit{color:var(--chalk-soft)}.step-num{font-family:var(--font-display);font-weight:600;font-size:clamp(34px,4.8vw,64px);line-height:.95;letter-spacing:-.03em;color:var(--ink-soft);font-variant-numeric:lining-nums tabular-nums}.p{font-size:17px;line-height:1.62;color:var(--ink-soft);max-width:57ch}.h2+.p,.h2-m+.p,.h2+.h3,.h2-m+.h3,.h2+.prose,.h2-m+.prose{margin-top:24px}.p+.p{margin-top:14px}.p strong,.p b{color:var(--ink);font-weight:600}.p a strong,.p a b{color:inherit}.band-ink .p{color:var(--chalk-soft)}.band-ink .p strong{color:var(--chalk)}.lede{font-size:clamp(17px,1.5vw,18px);line-height:1.55;color:var(--ink-soft)}.eyebrow-text{font-size:15px;font-weight:500;line-height:1.4;color:var(--ink-soft)}.promo{font-size:clamp(17px,1.5vw,18px);line-height:1.5;letter-spacing:-.01em;color:var(--ink-soft)}.promo b{font-weight:700;color:var(--rose)}.band-ink .promo{color:var(--chalk-soft)}.band-ink .promo b{color:var(--petal)}.cap{font-size:13px;font-weight:500;line-height:1.45;color:var(--ink-soft)}.plate{font-size:16px;font-weight:500;line-height:1.45;color:var(--ink)}.p a,.lede a,.faq-answer a,.footer-about a{color:var(--rose);font-weight:500;border-bottom:1px solid var(--rose-line)}.p a:hover,.lede a:hover,.faq-answer a:hover,.footer-about a:hover{color:var(--rose-deep);border-bottom-color:var(--rose-deep)}.band-ink .p a{color:var(--petal);border-bottom-color:var(--hair-ink)}.band-ink .p a:hover{color:var(--chalk);border-bottom-color:var(--chalk)}.band-blush a,.tile-blush a{color:var(--rose-deep)}.band-blush a:hover,.tile-blush a:hover{color:var(--rose-ink);border-bottom-color:var(--rose-ink)}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:var(--chalk-glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--header-h)}.logo{font-family:var(--font-display);font-weight:700;font-size:34px;line-height:1;letter-spacing:-.02em;color:var(--rose)}.header-nav{display:flex;align-items:center;margin-left:auto;font-size:15px;font-weight:500;color:var(--ink-soft)}.header-nav a{padding:6px 14px;white-space:nowrap;border-left:1px solid var(--hair-2)}.header-nav a:first-child{border-left:none}.header-nav a:hover{color:var(--rose-deep)}.site-header .btn{flex:none}@media(max-width:1056px){.header-nav{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);font-family:inherit;border:none;cursor:pointer;white-space:nowrap}.btn-primary{padding:19px 34px;background:var(--rose);color:var(--chalk);font-size:17px;font-weight:600;line-height:1;letter-spacing:-.01em;box-shadow:0 12px 28px var(--rose-glow);transition:transform .16s ease-out,background .16s ease-out}.btn-primary:hover{background:var(--rose-deep);color:var(--chalk);transform:translateY(-1px)}.btn-primary:active{background:var(--rose-ink);transform:translateY(0)}.btn-sm,.btn-dark{padding:13px 22px;background:var(--rose);color:var(--chalk);font-size:15px;font-weight:600;line-height:1;letter-spacing:-.01em;transition:background .16s ease-out}.btn-sm:hover,.btn-dark:hover{background:var(--rose-deep);color:var(--chalk)}.btn-sm:active,.btn-dark:active{background:var(--rose-ink)}.btn-dark.is-lg{padding:15px 26px;font-size:16px}.tlink{font-size:16px;font-weight:500;color:var(--rose);border-bottom:1px solid var(--rose-line);padding-bottom:2px;white-space:nowrap;transition:color .16s ease-out,border-color .16s ease-out}.tlink:hover{color:var(--rose-deep);border-bottom-color:var(--rose-deep)}.screen{position:relative;display:flex;align-items:flex-end;background:var(--blush);border:1px solid var(--hair-3);border-radius:var(--r-md);aspect-ratio:390/844;padding:14px 16px;min-width:0;overflow:hidden}.screen:after{content:"экран: " attr(data-screen);font-size:13px;font-weight:500;line-height:1.45;color:var(--ink-soft)}.screen img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center}figure[data-screen=clients-list] img{object-position:center 71%}figure[data-screen=client-card] img{object-position:center 57%}figure[data-screen=schedule] img{object-position:center 64%}figure[data-screen=schedule-post] img{object-position:center 60%}figure[data-screen=link-qr] img{object-position:center 33%}figure[data-screen=analytics] img{object-position:center 46%}figure[data-screen=hero-01-link] img{object-position:center 63%}.band-ink .screen{border-color:var(--hair-ink)}.hero{padding-top:32px;padding-bottom:clamp(56px,7vw,96px)}.hero-eyebrow{max-width:58ch}.hero .h1{margin-top:16px;max-width:13em}.hero-copy{margin-top:24px;max-width:45ch}.hero-cta{display:flex;align-items:center;gap:12px 24px;flex-wrap:wrap;margin-top:24px}.hero-promo{flex:1 0 100%}.tape{display:flex;align-items:flex-start;gap:24px;margin-top:40px}.tape:focus-visible{outline-offset:-3px}.tape .screen{width:clamp(240px,calc((100% - 72px)/4),280px);flex:none}.tape .screen:nth-child(2){margin-top:28px}.tape .screen:nth-child(3){margin-top:56px}.tape .screen:nth-child(4){margin-top:84px}.plates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 var(--gap);margin-top:80px;border-top:1px solid var(--hair-3);padding-top:4px}.plates li{padding:18px 24px 22px 0}.hero-eyebrow,.hero-copy,.hero-cta,.tape{animation:miraUp .6s cubic-bezier(.22,1,.36,1) both}.hero .h1{animation:miraUpSolid .6s cubic-bezier(.22,1,.36,1) both;animation-delay:60ms}.hero-copy{animation-delay:.12s}.hero-cta{animation-delay:.18s}.tape{animation-delay:.24s}@supports (animation-timeline:view()){@media(prefers-reduced-motion:no-preference){.tape .screen{animation:miraTape linear both;animation-timeline:view();animation-range:entry 0% entry 90%}}}.how{padding:80px 0 96px}.how-grid{display:grid;gap:32px;margin-top:48px}.how-stage,.how-strip,.steps{display:contents}.how-grid .screen{width:min(260px,100%)}.step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:baseline;border-top:1px solid var(--hair-2);padding-top:20px}.step-cap{font-size:clamp(19px,1.8vw,23px);font-weight:600;line-height:1.35;max-width:26ch}.how-note{margin-top:8px}.how-s1{order:1}.how-t1{order:2}.how-s2{order:3}.how-t2{order:4}.how-s3{order:5}.how-t3{order:6}.how-note{order:7}@media(min-width:1024px){.how-grid{grid-template-columns:300px minmax(0,1fr);column-gap:48px;row-gap:0;align-items:start}.how-stage{display:block;grid-column:1;grid-row:1/span 4;position:sticky;top:calc(var(--header-h) + 32px);width:300px;height:650px;overflow:hidden;border-radius:var(--r-md)}.how-strip{display:block;height:300%;transform:translateY(calc(var(--active,0) * -33.3333%));transition:transform .55s cubic-bezier(.22,1,.36,1)}.how-grid .how-strip .screen{width:300px;height:33.3333%;aspect-ratio:auto;border-radius:0;border-left:none;border-right:none}.how-grid .how-strip .screen:first-child{border-top:none}.step{grid-column:2;padding:48px 0 64px;min-height:280px;align-content:start}.how-t1{padding-top:0;border-top:none}.how-note{grid-column:2;border-top:1px solid var(--hair-2);padding-top:40px;margin-top:0}.step-cap{transition:color .3s ease-out}.step:not(.is-active) .step-cap{color:var(--ink-soft)}}.new-clients{padding:96px 0 104px}.nc-grid{display:grid;gap:32px;align-items:start;margin-top:32px}.nc-text .h3{margin-top:26px}.nc-text .h3+.p{margin-top:8px}@media(min-width:900px){.nc-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:48px}.nc-grid .screen{width:min(360px,100%);justify-self:end}}.reminders{padding:48px 0 52px}.reminders .r-body{padding-top:28px;border-top:1px solid var(--hair-2)}.reminders .p{margin-top:20px;max-width:57ch}@media(min-width:900px){.reminders .r-body{margin-left:25%}}.returning{padding:88px 0 96px}.ret-head{display:grid;gap:28px}.ret-shots{display:flex;gap:var(--gap);align-items:flex-end;margin-top:48px}.ret-shots .screen{width:min(300px,72%);flex:none}@media(min-width:900px){.ret-head{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:48px;align-items:end}.ret-pull{text-align:right}.ret-pull .cap{margin-left:auto}.ret-shots{margin-left:auto;width:max-content}.ret-shots .screen{width:300px}}.prepay{padding:104px 0 112px}.pp-grid{display:grid;gap:40px;align-items:start;margin-top:32px}.pp-text .h3{margin-top:26px}.pp-text .h3+.p{margin-top:8px}.pp-pull{margin:32px 0}.pp-pull .num{color:var(--petal)}.pp-shots{display:flex;flex-direction:column;gap:var(--gap)}.pp-shots .screen{width:min(260px,100%)}.pp-shots .screen:first-child{align-self:flex-end}.pp-shots .screen:last-child{align-self:flex-start}@media(min-width:900px){.pp-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:48px}.pp-text{grid-column:2;grid-row:1}.pp-shots{grid-column:1;grid-row:1}}@media(min-width:1024px){.pp-grid{grid-template-columns:max-content minmax(0,1fr);align-items:center}.pp-shots{flex-direction:row;align-items:flex-start;gap:20px}.pp-shots .screen:first-child,.pp-shots .screen:last-child{width:clamp(244px,21.5vw,272px);align-self:flex-start}}.tools{padding:72px 0 96px}.tools-grid{display:grid;gap:20px;align-items:start}.tile{border-radius:var(--r-md);padding:32px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.tile-paper{background:var(--paper);border:1px solid var(--hair-2)}.tile-blush{background:var(--blush)}.tile-chalk{background:var(--chalk);border:1px solid var(--hair-3)}.tile .p{margin-top:18px}.tile .screen{border:none;border-radius:0;align-items:flex-start;padding:12px 14px}.tile-blush .screen{background:var(--paper)}.tile-shots{display:flex;gap:20px;align-items:flex-end;margin-top:auto;padding-top:28px}.tile-shots .screen{flex:1 1 0;max-width:340px;aspect-ratio:1}.tile-schedule .tile-shots .screen{aspect-ratio:258/392}.tile-shot-one{margin-top:auto;padding-top:28px;display:flex;justify-content:flex-end}@media(max-width:1199px){.tile-shot-one{justify-content:flex-start}}.tile-shot-one .screen{width:min(340px,100%);aspect-ratio:340/360}@media(min-width:1200px){.tools-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);grid-template-areas:"cli cli cli cli cli cli cli ana ana ana ana ana" "sch sch sch sch sch sch sch sch sch sch sch sch" "lnk lnk lnk lnk lnk lnk lnk lnk .   .   .   ."}.tile-clients{grid-area:cli}.tile-analytics{grid-area:ana}.tile-schedule{grid-area:sch;padding:40px}.tile-link{grid-area:lnk;padding:40px}.sch-inner{display:grid;grid-template-columns:minmax(0,11fr) minmax(0,13fr);column-gap:24px;align-items:end}.tile-schedule .tile-shots{margin-top:0;padding-top:0}}.speed{padding:104px 0 88px}.speed-numbers{display:flex;flex-wrap:wrap;align-items:baseline;gap:clamp(40px,7vw,110px);margin-top:56px}.speed-body{margin-top:56px;padding-top:32px;border-top:1px solid var(--hair-2)}.speed-body .p{max-width:57ch}.pull .cap{margin-top:12px;max-width:34ch}.pair{padding:64px 0 88px}.pair-grid{display:grid;gap:40px}.pair-grid .p{margin-top:18px}@media(min-width:900px){.pair-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap)}.pair-geo{grid-column:1/span 5}.pair-start{grid-column:7/span 6;border-left:1px solid var(--hair-2);padding-left:var(--gap)}}.masters{padding:88px 0 104px}.masters .p{margin-top:24px;max-width:58ch}.quote{margin-top:44px;max-width:64ch}.quote blockquote{font-family:var(--font-display);font-weight:500;font-size:clamp(20px,2.45vw,28px);line-height:1.35;letter-spacing:-.01em;color:var(--ink)}.quote figcaption{margin-top:14px}@media(min-width:900px){.quote-2{margin-left:auto}}.faq{padding:88px 0 104px}.faq-list{margin-top:24px}@media(min-width:1024px){.faq-list{margin-left:16.66%;max-width:66%}}.faq-item{border-top:1px solid var(--hair-2)}.faq-item:last-child{border-bottom:1px solid var(--hair-2)}.faq-item summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;align-items:flex-start;gap:16px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary h3{font-size:clamp(17px,1.5vw,19px);font-weight:600;line-height:1.35;letter-spacing:-.01em;flex:1 1 auto}.faq-item summary:after{content:"";order:-1;flex:none;width:10px;height:10px;margin-top:9px;border-right:1px solid var(--ink-soft);border-bottom:1px solid var(--ink-soft);transform:rotate(-45deg);transition:transform .16s ease-out}.faq-item[open] summary:after{transform:rotate(45deg);margin-top:7px}.faq-answer{padding:0 0 26px;font-size:16px;line-height:1.65;color:var(--ink-soft);max-width:60ch}.final{padding:150px 0 120px}.final-grid{display:flex;flex-wrap:wrap;gap:40px 48px;align-items:flex-end;justify-content:space-between}.final-left{flex:1 1 520px;max-width:640px;display:flex;flex-direction:column;align-items:flex-start;gap:24px}.final-row{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px}.final .lede{max-width:52ch}.qr{width:min(240px,60%);aspect-ratio:1/1;padding:20px;background:var(--paper);border:1px solid var(--hair-2);border-radius:var(--r-md)}.qr img{width:100%;height:100%}@media(min-width:900px){.final-left .h2-final{max-width:16ch}.qr{flex:none;width:200px;margin-left:auto}}.fineprint{padding:56px 0 72px}.fineprint .fine{font-size:14px;line-height:1.6;color:var(--ink-soft);max-width:56ch}.fineprint .fine+.fine{margin-top:14px}.fineprint .h2-fine{margin-bottom:20px}.site-footer{background:var(--chalk)}.footer-grid{display:flex;flex-direction:column;gap:28px;padding-top:32px;padding-bottom:48px;border-top:1px solid var(--hair-4)}.footer-brand{display:flex;flex-direction:column;gap:16px}.footer-about{font-size:14px;line-height:1.6;color:var(--ink-soft);max-width:58ch}.footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:6px 28px}.footer-links a{font-size:14px;line-height:1.4;color:var(--ink-soft);padding:4px 0}.footer-links a:hover{color:var(--rose)}.footer-cta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}.copy{font-size:13px;color:var(--ink-soft)}.article{padding-top:clamp(36px,5vw,60px);padding-bottom:clamp(24px,3vw,40px)}.article .updated{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--rose-deep);margin-bottom:16px}.article h1{font-family:var(--font-display);font-weight:700;font-size:clamp(26px,3.5vw,45px);line-height:1.06;letter-spacing:-.025em;color:var(--ink)}.article .lede{margin-top:20px;font-size:clamp(17px,1.45vw,20px);color:var(--ink-soft);line-height:1.55}.article .checked{margin-top:14px;font-size:14px;line-height:1.6;color:var(--ink-soft)}.article h2{font-family:var(--font-display);font-weight:700;margin:44px 0 16px;font-size:clamp(21px,2.4vw,30px);line-height:1.15;letter-spacing:-.02em;color:var(--ink)}.article h2 a{border-bottom:2px solid var(--rose-line);transition:border-color .15s ease-out}.article h2 a:hover{border-bottom-color:var(--rose)}.article h3{margin:28px 0 10px;font-size:20px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}.article p{margin-bottom:16px;font-size:17px;color:var(--ink-soft);line-height:1.62}.article p strong{color:var(--ink);font-weight:600}.article ol{counter-reset:step;margin:22px 0;display:flex;flex-direction:column;gap:18px}.article ol li{counter-increment:step;position:relative;padding-left:44px;font-size:17px;color:var(--ink-soft);line-height:1.55}.article ol li:before{content:counter(step);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:var(--r-sm);background:var(--blush);color:var(--rose-deep);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center}.article ol li strong{color:var(--ink);font-weight:600}.article ul{margin:18px 0;display:flex;flex-direction:column;gap:10px}.article ul li{position:relative;padding-left:24px;font-size:17px;color:var(--ink-soft);line-height:1.55}.article ul li:before{content:"—";position:absolute;left:0;color:var(--rose)}.article code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;background:var(--blush);border-radius:var(--r-sm);padding:2px 6px;color:var(--ink)}.article pre{background:var(--ink);border-radius:var(--r-md);padding:20px;overflow-x:auto;margin:20px 0}.article pre code{background:none;padding:0;color:var(--chalk);font-size:13.5px;line-height:1.6}.article p a,.article li a{color:var(--rose);font-weight:500;border-bottom:1px solid var(--rose-line)}.article p a:hover,.article li a:hover{color:var(--rose-deep);border-bottom-color:var(--rose-deep)}.article .callout{margin:30px 0;background:var(--blush);border-radius:var(--r-md);padding:clamp(24px,3vw,36px)}.article .callout p{margin-bottom:10px}.article .callout p:last-child{margin-bottom:0}.article .faq-item summary{padding:20px 0}.article .faq-item summary h3{font-size:clamp(17px,1.4vw,19px);margin:0}.article .cta-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:28px 0}.article .cta-block{margin:32px 0 34px}.article .cta-promo{margin:14px 0 0;font-size:clamp(17px,1.5vw,18px);line-height:1.55;color:var(--ink-soft)}.article blockquote{margin:30px 0;padding:6px 0 6px 24px;border-left:1px solid var(--hair-3)}.article blockquote p{margin:0;font-family:var(--font-display);font-weight:500;font-size:clamp(20px,2.45vw,28px);line-height:1.35;letter-spacing:-.01em;color:var(--ink);font-variant-numeric:lining-nums tabular-nums}.article .table-wrap{margin:22px 0 30px;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.article .table-wrap:focus-visible{outline:2px solid var(--rose);outline-offset:-3px;border-radius:var(--r-sm)}.article table{border-collapse:separate;border-spacing:0;width:100%;font-size:14px;line-height:1.6}.article th,.article td{padding:12px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--hair-2)}.article thead th{font-weight:600;color:var(--ink);border-bottom:1px solid var(--hair-4)}.article tbody th{font-weight:600;color:var(--ink)}.article td{color:var(--ink-soft)}.article tbody tr:last-child th,.article tbody tr:last-child td{border-bottom:none}.article .table-wide table{table-layout:auto}.article .table-wide td,.article .table-wide thead th{min-width:200px}.article .table-wide tbody th,.article .table-wide thead th:first-child{position:sticky;left:0;z-index:1;min-width:124px;max-width:150px;background:var(--chalk);border-right:1px solid var(--hair-3)}@media(max-width:599px){.article .table-wide td,.article .table-wide thead th{min-width:184px}.article .table-wide tbody th,.article .table-wide thead th:first-child{min-width:112px}}@media(min-width:600px)and (max-width:1023px){.how-grid{grid-template-columns:244px minmax(0,1fr);column-gap:28px;row-gap:36px;align-items:start}.how-grid .screen{width:100%}.how-note{grid-column:1/-1}}@media(max-width:1199px){.tape{gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--pad-x) * -1);padding-inline:var(--pad-x);scroll-padding-inline:var(--pad-x);padding-bottom:8px;-webkit-overflow-scrolling:touch}.tape .screen:nth-child(n){width:clamp(260px,24vw,300px);scroll-snap-align:start;margin-top:0}}@media(max-width:1023px){.plates{grid-template-columns:minmax(0,1fr);margin-top:36px}.plates li{padding:14px 0 16px}}@media(max-width:899px){.screen{aspect-ratio:390/717}.hero{padding-top:24px}.plates{margin-top:32px}.nc-grid .screen{width:min(260px,100%)}.ret-shots{flex-direction:column;align-items:flex-start;gap:16px}.ret-shots .screen{width:min(300px,100%);flex:none}.pp-shots .screen:first-child,.pp-shots .screen:last-child{align-self:flex-start}.tile{padding:24px}.tile-shots{gap:16px;padding-top:24px}.speed-numbers{gap:28px}.qr{width:min(200px,60%)}}@media(max-width:599px){.tile-shots{flex-direction:column;align-items:flex-start;gap:20px;padding-top:24px}.tile-shots .screen{width:min(280px,100%);flex:none}.tile-shot-one{justify-content:flex-start}.tile-shot-one .screen{width:min(280px,100%)}}
