:root{
  --c-paper:#F1F1EF;
  --c-paper-2:#FFFFFF;
  --c-red-600:#FF2A18;
  --c-red-500:#FF3A2A;
  --c-grey-300:#D4D4D2;
  --c-grey-400:#C2C2C0;
  --c-ink-900:#111111;

  --bg-base:var(--c-paper);
  --bg-surface:var(--c-paper-2);
  --text-primary:var(--c-red-600);
  --text-secondary:var(--c-ink-900);
  --text-ghost:var(--c-grey-300);
  --text-muted:#8E8E8C;
  --rule:rgba(255,42,24,.42);
  --rule-soft:rgba(255,42,24,.22);
  --rule-ink:rgba(17,17,17,.14);

  --font-display:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --font-body:"Helvetica Neue",Arial,system-ui,sans-serif;

  --fs-mega:clamp(3.5rem,16vw,11rem);
  --fs-display:clamp(2.35rem,6.6vw,4.9rem);
  --fs-ghost:clamp(2.2rem,9vw,6.4rem);
  --fs-h2:clamp(1.7rem,3.6vw,2.5rem);
  --fs-h3:clamp(1.12rem,1.7vw,1.32rem);

  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-mech:cubic-bezier(.83,0,.17,1);
  --dur-fast:140ms;
  --dur-base:260ms;

  --gutter:clamp(18px,4vw,44px);
  --pad-section:clamp(58px,7.5vw,112px);
  --maxw:1320px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:hidden}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  margin:0;
  background:var(--bg-base);
  color:var(--text-secondary);
  font-family:var(--font-body);
  font-size:15px;
  line-height:1.5;
  font-weight:500;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}
ul,ol{list-style:none;padding:0}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
svg{display:block}
::selection{background:var(--c-red-600);color:#fff}

a:focus-visible,button:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:2px solid var(--c-ink-900);
  outline-offset:3px;
}

.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}

.skip{position:absolute;left:-9999px;top:0;background:var(--c-red-600);color:#fff;
  padding:.6rem 1rem;z-index:1300;font:700 .72rem/1 var(--font-body);
  text-transform:uppercase;letter-spacing:.08em}
.skip:focus{left:8px;top:8px}

/* fixed hairline grid */
.grid-lines{position:fixed;inset:0;z-index:0;pointer-events:none}
.grid-lines i{position:absolute;top:0;bottom:0;width:1px;background:rgba(255,42,24,.13)}
.grid-lines i.c{left:50%;background:rgba(255,42,24,.26)}
.grid-lines i.l{left:max(calc(50% - 660px + var(--gutter)),var(--gutter))}
.grid-lines i.r{right:max(calc(50% - 660px + var(--gutter)),var(--gutter))}

/* type */
.label{font:700 .575rem/1.2 var(--font-body);text-transform:uppercase;
  letter-spacing:.145em;color:var(--c-red-600);display:inline-block}
.label--ink{color:var(--c-ink-900)}
.label--muted{color:var(--text-muted)}
.bracket{font:700 .64rem/1.2 var(--font-body);letter-spacing:.06em;color:var(--c-red-600)}

.mega{font-family:var(--font-display);font-weight:900;font-size:var(--fs-mega);
  line-height:.82;letter-spacing:-.045em;color:var(--c-red-600);text-transform:lowercase}
.display{font-family:var(--font-display);font-weight:800;font-size:var(--fs-display);
  line-height:.94;letter-spacing:-.035em;color:var(--c-red-600);text-transform:lowercase}
.ghost{font-family:var(--font-display);font-weight:800;font-size:var(--fs-ghost);
  line-height:.9;letter-spacing:-.03em;color:var(--text-ghost);text-transform:lowercase;
  user-select:none}
.h2{font-family:var(--font-display);font-weight:800;font-size:var(--fs-h2);
  line-height:1.02;letter-spacing:-.025em;color:var(--c-red-600);text-transform:lowercase}
.h3{font:800 var(--fs-h3)/1.14 var(--font-display);letter-spacing:-.02em;
  color:var(--c-red-600);text-transform:lowercase}
.lede{font-size:clamp(1.02rem,1.55vw,1.2rem);line-height:1.52;color:var(--c-ink-900);
  font-weight:500;text-transform:lowercase;max-width:52ch}
.copy{font-size:.95rem;line-height:1.62;color:var(--c-ink-900);font-weight:500;
  text-transform:lowercase;max-width:62ch}
.copy + .copy{margin-top:.85rem}
.copy--red{color:var(--c-red-600);font-weight:600}
.copy--sm{font-size:.86rem;line-height:1.56}
.micro{font-size:.78rem;line-height:1.52;color:var(--c-red-600);font-weight:600;
  text-transform:lowercase;max-width:40ch}
.muted{color:var(--text-muted)}
.nowrap{white-space:nowrap}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--c-red-600);
  padding:.72rem 1.18rem;background:transparent;color:var(--c-red-600);
  font:700 .79rem/1 var(--font-body);text-transform:lowercase;
  transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),
    transform var(--dur-fast) var(--ease-mech)}
.btn:hover{background:var(--c-red-600);color:#fff}
.btn:active{transform:translate(1px,1px)}
.btn--solid{background:var(--c-red-600);color:#fff}
.btn--solid:hover{background:transparent;color:var(--c-red-600)}
.btn--lg{padding:.94rem 1.55rem;font-size:.9rem}
.btn--onred{border-color:#fff;color:#fff}
.btn--onred:hover{background:#fff;color:var(--c-red-600)}
.btn .arr{transition:transform var(--dur-fast) var(--ease-mech)}
.btn:hover .arr{transform:translateX(3px)}
.btns{display:flex;gap:.6rem;flex-wrap:wrap}

.tlink{font:700 .8rem/1 var(--font-body);text-transform:lowercase;color:var(--c-red-600);
  display:inline-flex;align-items:center;gap:.45rem;border-bottom:1px solid var(--c-red-600);
  padding-bottom:.28rem}
.tlink .arr{transition:transform var(--dur-fast) var(--ease-mech)}
.tlink:hover .arr{transform:translateX(3px)}

/* nav */
.nav{position:sticky;top:0;z-index:1100;background:rgba(241,241,239,.9);
  -webkit-backdrop-filter:saturate(150%) blur(3px);backdrop-filter:saturate(150%) blur(3px);
  border-bottom:1px solid var(--rule)}
.nav__row{display:flex;align-items:center;gap:clamp(16px,2vw,28px);height:58px}
.brand{display:flex;align-items:center;gap:.5rem;flex:none}
.brand__mark{width:22px;height:22px;flex:none}
.brand__name{font:900 1.05rem/1 var(--font-display);letter-spacing:-.05em;
  color:var(--c-red-600);text-transform:lowercase}
.nav__links{display:flex;align-items:center;gap:clamp(14px,1.8vw,26px);margin-left:auto}
.nav-link{font:700 .615rem/1 var(--font-body);text-transform:lowercase;letter-spacing:.045em;
  color:var(--c-red-600);padding:.55rem 0;position:relative}
.nav-link::after{content:"";position:absolute;left:0;right:100%;bottom:.28rem;height:1px;
  background:var(--c-red-600);transition:right var(--dur-fast) var(--ease-mech)}
.nav-link:hover::after,.nav-link[aria-current="page"]::after{right:0}
.nav__cta{margin-left:.3rem;padding:.58rem .9rem;font-size:.7rem}
.nav__toggle{display:none;margin-left:auto;border:1px solid var(--c-red-600);background:transparent;
  color:var(--c-red-600);font:700 .64rem/1 var(--font-body);text-transform:lowercase;
  letter-spacing:.06em;padding:.55rem .75rem}
.nav__toggle .x{display:none}
body.menu-open .nav__toggle .x{display:inline}
body.menu-open .nav__toggle .m{display:none}

.menu{position:fixed;inset:58px 0 0;z-index:1200;background:var(--c-paper);
  border-top:1px solid var(--c-red-600);transform:translateY(-101%);
  transition:transform var(--dur-base) var(--ease-mech);display:flex;flex-direction:column;
  padding:var(--gutter);visibility:hidden;overflow-y:auto}
body.menu-open .menu{transform:translateY(0);visibility:visible}
.menu > a{font:800 clamp(1.7rem,7vw,2.3rem)/1.06 var(--font-display);text-transform:lowercase;
  letter-spacing:-.03em;color:var(--c-red-600);padding:.5rem 0;
  border-bottom:1px solid var(--rule-soft);
  transition:padding-left var(--dur-fast) var(--ease-mech)}
.menu > a:hover{padding-left:.4rem}
.menu > a:last-of-type{border-bottom:0}
.menu__foot{margin-top:auto;padding-top:1.4rem}

/* page masthead */
.masthead{position:relative;z-index:2;border-bottom:1px solid var(--rule);overflow:hidden;
  padding-block:clamp(44px,6vw,86px) clamp(34px,4.5vw,56px)}
.masthead__top{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;
  flex-wrap:wrap;padding-bottom:clamp(26px,4vw,48px)}
.masthead__stage{position:relative}
.masthead__ghost{position:absolute;left:-.035em;top:-.3em;z-index:1;pointer-events:none;
  white-space:nowrap}
.masthead__title{position:relative;z-index:3}
.masthead__body{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:clamp(24px,4vw,64px);align-items:start;margin-top:clamp(22px,3vw,38px)}
.masthead__aside{align-self:end}
.masthead__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,3vw,40px);margin-top:clamp(30px,4vw,54px);padding-top:1.35rem;
  border-top:1px solid var(--rule)}
.masthead__meta dt{font:800 .92rem/1.12 var(--font-display);color:var(--c-red-600);
  text-transform:lowercase;letter-spacing:-.02em;margin-bottom:.3rem}
.masthead__meta dd{font-size:.8rem;line-height:1.48;color:var(--c-ink-900);
  text-transform:lowercase;max-width:32ch}

/* hero */
.hero{position:relative;z-index:2;padding-top:clamp(26px,4vw,56px);
  padding-bottom:clamp(38px,5.5vw,84px);overflow:hidden}
.hero__top{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.hero__pre{text-align:center;margin:clamp(22px,4vw,48px) auto clamp(6px,2.5vw,22px);
  font:700 clamp(.82rem,1.5vw,1.02rem)/1.3 var(--font-body);color:var(--c-red-600);
  text-transform:lowercase;max-width:32ch}
.hero__stage{position:relative}
.hero__band{position:relative;overflow:hidden;padding-block:clamp(26px,4.4vw,62px)}
.hero__ghosts{position:absolute;inset:0;z-index:1;pointer-events:none}
.hero__ghosts span{position:absolute;font-family:var(--font-display);font-weight:800;
  color:var(--text-ghost);text-transform:lowercase;line-height:.85;letter-spacing:-.03em;
  white-space:nowrap}
.hg1{top:0;left:-1.5%;font-size:clamp(2rem,6vw,4.2rem)}
.hg2{top:7%;right:-1.5%;font-size:clamp(2rem,6vw,4.2rem)}
.hg3{bottom:0;left:3%;font-size:clamp(1.8rem,5.4vw,3.8rem)}
.hg4{bottom:2%;right:1%;font-size:clamp(1.8rem,5.4vw,3.8rem)}
.hero__mark{position:relative;z-index:3;text-align:center}
.hero__mark .mega{display:block}
.hero__reg{display:inline-block;vertical-align:top;font-size:.3em;font-weight:800;
  transform:translateY(.42em);letter-spacing:0}
.hero__foot{position:relative;z-index:3;display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(26px,4vw,72px);
  align-items:end;margin-top:clamp(18px,3vw,32px)}
.hero__claim{font:800 clamp(1.15rem,2.1vw,1.6rem)/1.12 var(--font-display);
  letter-spacing:-.03em;color:var(--c-red-600);text-transform:lowercase;max-width:22ch}
.hero__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,3vw,40px);margin-top:clamp(30px,4vw,52px);padding-top:1.35rem;
  border-top:1px solid var(--rule)}
.hero__stats dt{font:800 .92rem/1.12 var(--font-display);color:var(--c-red-600);
  text-transform:lowercase;letter-spacing:-.02em;margin-bottom:.3rem}
.hero__stats dd{font-size:.8rem;line-height:1.48;color:var(--c-ink-900);text-transform:lowercase}

/* sections */
.section{position:relative;z-index:2;padding-block:var(--pad-section);
  border-top:1px solid var(--rule)}
.section--flush{border-top:0}
.section--white{background:var(--bg-surface)}
.sec-top{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;
  flex-wrap:wrap;margin-bottom:clamp(26px,4vw,48px)}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(24px,4vw,64px);align-items:end}
.sec-head--tight{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.sec-head__aside{align-self:end}
.sec-no{font:900 clamp(1.9rem,3.4vw,2.7rem)/1 var(--font-display);color:var(--text-ghost);
  letter-spacing:-.05em;display:block;margin-bottom:.5rem}
.collide{position:relative}
.collide__ghost{position:absolute;left:-.035em;top:-.26em;z-index:1;pointer-events:none;
  white-space:nowrap;font-size:clamp(2rem,7.4vw,5.2rem)}
.collide__head{position:relative;z-index:3}

/* numbered rule rows */
.rows{margin-top:clamp(30px,4vw,54px);border-bottom:1px solid var(--rule)}
.row{display:grid;grid-template-columns:3.4rem minmax(0,17ch) minmax(0,1fr);
  gap:clamp(16px,3vw,44px);padding-block:clamp(22px,2.8vw,34px);
  border-top:1px solid var(--rule)}
.row--2{grid-template-columns:3.4rem minmax(0,1fr)}
.row__no{font:700 .64rem/1.4 var(--font-body);letter-spacing:.1em;color:var(--text-muted)}
.row__t{font:800 clamp(1.05rem,1.6vw,1.26rem)/1.14 var(--font-display);letter-spacing:-.022em;
  color:var(--c-red-600);text-transform:lowercase}
.row__t span{display:block;font:600 .74rem/1.4 var(--font-body);letter-spacing:0;
  color:var(--text-muted);margin-top:.4rem}
.row__d{font-size:.91rem;line-height:1.62;color:var(--c-ink-900);text-transform:lowercase;
  max-width:64ch}
.row__d p + p{margin-top:.7rem}

/* hairline card grid */
.cards{display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule);
  margin-top:clamp(30px,4vw,54px)}
.cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{background:var(--c-paper);padding:clamp(20px,2.3vw,30px);display:flex;
  flex-direction:column;gap:.65rem;transition:background var(--dur-base) var(--ease-out)}
.card:hover{background:var(--c-paper-2)}
.section--white .card{background:var(--c-paper-2)}
.section--white .card:hover{background:var(--c-paper)}
.card__no{font:700 .62rem/1 var(--font-body);letter-spacing:.11em;color:var(--text-muted)}
.card__t{font:800 clamp(1.05rem,1.5vw,1.2rem)/1.1 var(--font-display);letter-spacing:-.022em;
  color:var(--c-red-600);text-transform:lowercase}
.card__d{font-size:.865rem;line-height:1.58;color:var(--c-ink-900);text-transform:lowercase}
.card__foot{margin-top:auto;padding-top:.4rem}
.card--red{background:var(--c-red-600);color:#fff}
.card--red:hover{background:var(--c-red-500)}
.card--red .card__no{color:rgba(255,255,255,.72)}
.card--red .card__t{color:#fff}
.card--red .card__d{color:rgba(255,255,255,.94)}

/* bullet lists */
.blist{display:flex;flex-direction:column;gap:.5rem;margin-top:.3rem}
.blist li{position:relative;padding-left:.95rem;font-size:.855rem;line-height:1.5;
  color:var(--c-ink-900);text-transform:lowercase}
.blist li::before{content:"";position:absolute;left:0;top:.46em;width:5px;height:5px;
  background:var(--c-red-600)}
.blist--tight li{font-size:.8rem}
.card--red .blist li{color:#fff}
.card--red .blist li::before{background:#fff}

/* tag chips */
.tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.15rem}
.tag{font:700 .59rem/1 var(--font-body);text-transform:lowercase;letter-spacing:.02em;
  color:var(--c-red-600);border:1px solid var(--rule);padding:.3rem .44rem}
.card--red .tag{color:#fff;border-color:rgba(255,255,255,.6)}

/* spec table */
.spec{margin-top:clamp(26px,3.4vw,44px);border-top:1px solid var(--rule)}
.spec__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);
  gap:clamp(14px,2.4vw,32px);padding-block:.95rem;border-bottom:1px dashed var(--rule-soft)}
.spec__row:last-child{border-bottom:1px solid var(--rule)}
.spec__k{font:700 .78rem/1.4 var(--font-body);color:var(--c-red-600);text-transform:lowercase}
.spec__v{font-size:.84rem;line-height:1.52;color:var(--c-ink-900);text-transform:lowercase}
.spec__v b{font-weight:700}

/* two column prose */
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(26px,4vw,64px);margin-top:clamp(28px,3.6vw,48px);align-items:start}
.duo--wide{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.duo--narrow{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}

/* bordered panel */
.panel{border:1px solid var(--c-red-600);padding:clamp(22px,2.9vw,34px);background:var(--c-paper)}
.panel--white{background:var(--c-paper-2)}
.panel__head{margin-bottom:.9rem}
.panel .h2{margin-bottom:.7rem}

/* red statement band */
.band{position:relative;z-index:2;background:var(--c-red-600);color:#fff;
  padding-block:clamp(44px,6vw,86px)}
.band__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:clamp(24px,4vw,64px);align-items:end}
.band__t{font:900 clamp(1.9rem,5vw,3.6rem)/.96 var(--font-display);letter-spacing:-.04em;
  text-transform:lowercase}
.band__d{font-size:.92rem;line-height:1.6;text-transform:lowercase;max-width:46ch;
  color:rgba(255,255,255,.95)}
.band .label{color:#fff}
.band__foot{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;
  margin-top:clamp(24px,3vw,40px);padding-top:1.3rem;border-top:1px solid rgba(255,255,255,.45)}
.band__note{font-size:.78rem;text-transform:lowercase;color:rgba(255,255,255,.9);max-width:44ch}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(20px,3vw,40px);margin-top:clamp(30px,4vw,54px)}
.steps--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.step{border-top:2px solid var(--c-red-600);padding-top:1.05rem;display:flex;
  flex-direction:column;gap:.55rem}
.step__n{font:900 1.65rem/1 var(--font-display);color:var(--text-ghost);letter-spacing:-.045em}
.step__t{font:800 1.08rem/1.12 var(--font-display);color:var(--c-red-600);
  text-transform:lowercase;letter-spacing:-.022em}
.step__d{font-size:.85rem;line-height:1.56;color:var(--c-ink-900);text-transform:lowercase}

/* coverage bar */
.coverbar{margin-top:1.2rem}
.coverbar .lab{display:flex;justify-content:space-between;font:700 .59rem/1 var(--font-body);
  text-transform:uppercase;letter-spacing:.08em;color:var(--c-red-600);margin-bottom:.45rem}
.coverbar .track{display:flex;gap:2px}
.coverbar .track i{height:18px;flex:1;background:rgba(255,42,24,.17)}
.coverbar .track i.f{background:var(--c-red-600)}
.coverbar .note{font-size:.78rem;line-height:1.5;color:var(--c-ink-900);text-transform:lowercase;
  margin-top:.6rem}

/* scale row */
.scale{display:flex;flex-wrap:wrap;gap:.7rem 1.5rem;align-items:center;
  margin-top:clamp(24px,3vw,38px);padding-top:1.3rem;border-top:1px solid var(--rule)}
.scaler{display:flex;align-items:center;gap:.7rem;font:800 clamp(1rem,2.2vw,1.45rem)/1
  var(--font-display);text-transform:lowercase;letter-spacing:-.025em;color:var(--c-red-600)}
.scaler .ar{color:var(--c-grey-400)}
.scaler .gh{color:var(--text-ghost)}

/* ui mockups */
.mock{background:var(--c-paper-2);border:1px solid var(--c-red-600)}
.mock__bar{display:flex;align-items:center;gap:.45rem;padding:.6rem .8rem;
  border-bottom:1px solid var(--rule)}
.mock__dot{width:8px;height:8px;background:var(--c-red-600);flex:none}
.mock__title{font:700 .69rem/1 var(--font-body);text-transform:lowercase;letter-spacing:.015em;
  color:var(--c-ink-900)}
.mock__meta{margin-left:auto;font:700 .57rem/1 var(--font-body);text-transform:uppercase;
  letter-spacing:.1em;color:var(--text-muted)}
.mock__body{padding:.95rem 1rem}
.mock__cap{font:700 .63rem/1.3 var(--font-body);color:var(--c-red-600);text-transform:lowercase;
  margin-top:.55rem;display:flex;justify-content:space-between;gap:.5rem}
.mock__cap .n{color:var(--text-muted)}

.tl{display:flex;flex-direction:column}
.tl__row{display:grid;grid-template-columns:86px minmax(0,1fr);gap:.7rem;padding:.6rem 0;
  border-bottom:1px dashed var(--rule-soft)}
.tl__row:last-child{border-bottom:0}
.tl__when{font:700 .61rem/1.35 var(--font-body);text-transform:uppercase;letter-spacing:.06em;
  color:var(--c-red-600)}
.tl__what b{display:block;font:700 .81rem/1.26 var(--font-body);text-transform:lowercase;
  color:var(--c-ink-900)}
.tl__what span{font-size:.745rem;color:var(--text-muted);text-transform:lowercase}
.tl__kind{display:inline-block;margin-top:.24rem;font:700 .55rem/1 var(--font-body);
  text-transform:uppercase;letter-spacing:.08em;color:var(--c-red-600);
  border:1px solid var(--rule);padding:.23rem .37rem}

.doc-lines{display:flex;flex-direction:column;gap:.5rem}
.doc-lines .ln{height:7px;background:var(--rule-ink)}
.doc-lines .ln.red{background:rgba(255,42,24,.38)}
.doc-lines .ln.w40{width:40%}.doc-lines .ln.w50{width:50%}.doc-lines .ln.w60{width:60%}
.doc-lines .ln.w70{width:70%}.doc-lines .ln.w80{width:80%}.doc-lines .ln.w90{width:90%}

.kv{display:flex;justify-content:space-between;gap:.6rem;padding:.44rem 0;
  border-bottom:1px dashed var(--rule-soft);font-size:.745rem;text-transform:lowercase}
.kv:last-child{border-bottom:0}
.kv b{color:var(--c-ink-900);font-weight:700}
.kv .v{color:var(--text-muted)}
.kv .v.filled{color:var(--c-ink-900)}
.kv .v.lock{color:var(--c-red-600);font-weight:700}

.task{display:flex;gap:.5rem;align-items:flex-start;padding:.44rem 0;
  border-bottom:1px dashed var(--rule-soft)}
.task:last-child{border-bottom:0}
.task .box{width:13px;height:13px;border:1.5px solid var(--c-red-600);flex:none;margin-top:.12rem;
  position:relative}
.task.done .box{background:var(--c-red-600)}
.task.done .box::after{content:"";position:absolute;left:3px;top:0;width:4px;height:8px;
  border:solid #fff;border-width:0 2px 2px 0;transform:rotate(40deg)}
.task .tx{font-size:.765rem;line-height:1.38;text-transform:lowercase;color:var(--c-ink-900)}
.task .tx i{font-style:normal;color:var(--c-red-600);font-weight:700}
.task .tx em{display:block;font-style:normal;color:var(--text-muted);font-size:.92em}

.chip{display:inline-flex;align-items:center;font:700 .57rem/1 var(--font-body);
  text-transform:lowercase;letter-spacing:.02em;color:var(--c-red-600);
  border:1px solid var(--rule);padding:.27rem .41rem}
.chip--solid{background:var(--c-red-600);color:#fff;border-color:var(--c-red-600)}
.chips{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.6rem}

.bubble{border:1px solid var(--rule);padding:.55rem .68rem;font-size:.765rem;
  text-transform:lowercase;line-height:1.45;color:var(--c-ink-900)}
.bubble.q{margin-left:auto;max-width:82%;background:var(--c-paper)}
.bubble.a{margin-right:auto;max-width:94%;margin-top:.5rem;background:var(--c-paper-2);
  border-color:var(--c-red-600)}

.email-h{display:flex;flex-direction:column;gap:.28rem;padding-bottom:.5rem;
  border-bottom:1px dashed var(--rule-soft);margin-bottom:.58rem;font-size:.745rem;
  text-transform:lowercase}
.email-h span{color:var(--text-muted)}
.email-h b{color:var(--c-ink-900)}

/* tiles */
.tiles{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(14px,2vw,24px);
  align-items:start;margin-top:clamp(30px,4vw,54px)}
.tile{position:relative}
.t-a{grid-column:1/6}
.t-b{grid-column:7/13;margin-top:clamp(16px,3.4vw,46px)}
.t-c{grid-column:2/7}
.t-d{grid-column:8/13}
.t-e{grid-column:1/5;margin-top:clamp(8px,1.6vw,22px)}
.t-f{grid-column:6/13}
.redblock{grid-column:1/5;background:var(--c-red-600);color:#fff;
  padding:clamp(20px,2.4vw,30px);display:flex;flex-direction:column;justify-content:space-between;
  gap:1rem;min-height:196px}
.redblock h3{font:900 clamp(1.4rem,2.8vw,2rem)/.98 var(--font-display);text-transform:lowercase;
  letter-spacing:-.035em}
.redblock p{font-size:.83rem;line-height:1.5;text-transform:lowercase;
  color:rgba(255,255,255,.95)}

/* faq */
.faq{margin-top:clamp(28px,3.6vw,48px);border-bottom:1px solid var(--rule)}
.faq details{border-top:1px solid var(--rule)}
.faq summary{display:flex;align-items:flex-start;justify-content:space-between;gap:1.4rem;
  padding-block:1.05rem;cursor:pointer;list-style:none;
  font:800 clamp(.98rem,1.5vw,1.14rem)/1.3 var(--font-display);letter-spacing:-.02em;
  color:var(--c-red-600);text-transform:lowercase}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:700 1.1rem/1 var(--font-body);color:var(--c-red-600);
  flex:none;transition:transform var(--dur-fast) var(--ease-mech)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .ans{padding-bottom:1.2rem;max-width:68ch}
.faq .ans p{font-size:.885rem;line-height:1.62;color:var(--c-ink-900);text-transform:lowercase}
.faq .ans p + p{margin-top:.7rem}

/* cta band */
.cta{position:relative;z-index:2;border-top:1px solid var(--rule);
  padding-block:clamp(46px,6vw,92px)}
.cta__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:clamp(24px,4vw,64px);align-items:end}

/* pager */
.pager{position:relative;z-index:2;border-top:1px solid var(--rule);
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.pager a{padding-block:clamp(26px,3.4vw,42px);display:flex;flex-direction:column;gap:.45rem;
  transition:background var(--dur-base) var(--ease-out)}
.pager a:hover{background:var(--c-paper-2)}
.pager a + a{border-left:1px solid var(--rule);padding-left:clamp(18px,3vw,40px);
  align-items:flex-end;text-align:right}
.pager .label{color:var(--text-muted)}
.pager .t{font:800 clamp(1.15rem,2.2vw,1.62rem)/1.08 var(--font-display);letter-spacing:-.03em;
  color:var(--c-red-600);text-transform:lowercase}

/* contact form */
.form{display:flex;flex-direction:column;gap:1.3rem}
.form[hidden]{display:none}
.field{display:flex;flex-direction:column;gap:.38rem}
.field > label{font:700 .59rem/1 var(--font-body);text-transform:uppercase;letter-spacing:.1em;
  color:var(--c-red-600)}
.field .req{color:var(--c-red-600)}
.input,.select,.textarea{background:transparent;border:0;border-bottom:1px solid var(--c-red-600);
  padding:.58rem 0;font:500 1rem var(--font-body);color:var(--c-ink-900);width:100%;
  text-transform:lowercase;transition:border-color var(--dur-fast) var(--ease-out)}
.input::placeholder,.textarea::placeholder{color:var(--text-muted);text-transform:lowercase}
.input:focus,.select:focus,.textarea:focus{outline:none;border-bottom-width:2px}
.textarea{resize:vertical;min-height:104px;line-height:1.5}
.select{appearance:none;-webkit-appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23FF2A18' stroke-width='1.6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right .1rem center;padding-right:1.5rem}
.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem}
.field.invalid .input,.field.invalid .select,.field.invalid .textarea{border-bottom-width:2px}
.field .err,.consent .err{font:700 .63rem/1.3 var(--font-body);color:var(--c-red-600);
  text-transform:lowercase;display:none}
.field.invalid .err,.consent.invalid .err{display:block}
.consent.invalid input{box-shadow:0 0 0 2px var(--c-red-600)}
.consent{display:flex;flex-direction:column;gap:.38rem}
.consent__row{display:flex;gap:.65rem;align-items:flex-start}
.consent input{appearance:none;-webkit-appearance:none;width:16px;height:16px;flex:none;
  border:1.5px solid var(--c-red-600);margin-top:.12rem;position:relative;cursor:pointer}
.consent input:checked{background:var(--c-red-600)}
.consent input:checked::after{content:"";position:absolute;left:4px;top:0;width:5px;height:10px;
  border:solid #fff;border-width:0 2px 2px 0;transform:rotate(40deg)}
.consent label{font-size:.775rem;line-height:1.45;color:var(--c-ink-900);text-transform:lowercase}
.form__actions{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap;padding-top:.2rem}
.form__note{font-size:.74rem;color:var(--text-muted);text-transform:lowercase}
.form__success{display:none;border:1px solid var(--c-red-600);background:var(--c-paper-2);
  padding:clamp(20px,2.6vw,32px)}
.form__success.show{display:block}
.form__success h2{font:800 clamp(1.4rem,2.6vw,1.9rem)/1 var(--font-display);
  color:var(--c-red-600);text-transform:lowercase;letter-spacing:-.03em;margin-bottom:.6rem}
.form__success p{font-size:.9rem;line-height:1.6;color:var(--c-ink-900);text-transform:lowercase;
  max-width:52ch}

.contact-aside{display:flex;flex-direction:column;gap:1.4rem}
.contact-card{border:1px solid var(--c-red-600);padding:1.15rem 1.25rem}
.contact-card a{font:800 clamp(1.3rem,2.6vw,1.85rem)/1 var(--font-display);letter-spacing:-.03em;
  color:var(--c-red-600);text-transform:lowercase;display:block;margin-top:.5rem}
.info-block .label{display:block;margin-bottom:.42rem}
.info-block a,.info-block address{font:600 1rem/1.4 var(--font-body);color:var(--c-ink-900);
  text-transform:lowercase;font-style:normal;display:block}
.info-block a:hover{color:var(--c-red-600)}
.inline-link{color:var(--c-red-600);text-decoration:underline;text-underline-offset:2px}

/* footer */
.footer{position:relative;z-index:2;border-top:1px solid var(--c-red-600);overflow:hidden;
  padding-block:clamp(40px,5.5vw,76px)}
.footer__big{font-family:var(--font-display);font-weight:900;text-transform:lowercase;
  letter-spacing:-.045em;line-height:.85;color:var(--text-ghost);
  font-size:clamp(2.4rem,11vw,8.2rem)}
.footer__big .red{color:var(--c-red-600)}
.footer__cols{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);
  gap:clamp(24px,4vw,56px);margin-top:clamp(30px,4vw,52px);align-items:start}
.footer__brand{display:flex;align-items:center;gap:.55rem;margin-bottom:.85rem}
.footer__brand .brand__mark{width:26px;height:26px}
.footer__brand .brand__name{font-size:1.3rem}
.footer__tag{font-size:.87rem;line-height:1.52;color:var(--c-ink-900);text-transform:lowercase;
  max-width:32ch}
.footer__col h2{font:700 .59rem/1 var(--font-body);text-transform:uppercase;letter-spacing:.12em;
  color:var(--c-red-600);margin-bottom:.95rem}
.footer__col a,.footer__col p{font-size:.85rem;line-height:1.75;color:var(--c-ink-900);
  text-transform:lowercase;display:block}
.footer__col a:hover{color:var(--c-red-600)}
.footer__bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;
  flex-wrap:wrap;margin-top:clamp(30px,4.5vw,56px);padding-top:1.25rem;
  border-top:1px solid var(--rule)}
.footer__copy{font-size:.75rem;color:var(--c-ink-900);text-transform:lowercase}
.footer__why{font-size:.75rem;color:var(--text-muted);text-transform:lowercase;max-width:44ch;
  line-height:1.52;margin-top:.45rem}
.footer__stamp{font-family:var(--font-display);font-weight:900;font-size:clamp(1.9rem,6vw,4.2rem);
  line-height:.8;color:var(--text-ghost);letter-spacing:-.045em}

/* responsive */
@media (max-width:1100px){
  .cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nav__links{gap:14px}
  .nav-link{font-size:.59rem}
}
@media (max-width:960px){
  .nav__links{display:none}
  .nav__toggle{display:inline-block}
  .cards--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sec-head,.sec-head--tight,.masthead__body,.hero__foot,.duo,.duo--wide,.duo--narrow,
  .band__grid,.cta__grid{grid-template-columns:minmax(0,1fr)}
  .steps,.steps--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .row{grid-template-columns:2.8rem minmax(0,1fr)}
  .row__t{grid-column:2}
  .row__d{grid-column:2}
  .spec__row{grid-template-columns:minmax(0,1fr)}
  .tiles{grid-template-columns:repeat(6,1fr)}
  .t-a,.t-b,.t-c,.t-d,.t-e,.t-f,.redblock{grid-column:1/7;margin-top:0}
  .masthead__meta,.hero__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}
}
@media (max-width:620px){
  body{font-size:14px}
  .cards--2,.cards--3,.cards--4{grid-template-columns:minmax(0,1fr)}
  .steps,.steps--4{grid-template-columns:minmax(0,1fr)}
  .field-row{grid-template-columns:minmax(0,1fr)}
  .footer__cols{grid-template-columns:minmax(0,1fr)}
  .masthead__meta,.hero__stats{grid-template-columns:minmax(0,1fr);gap:1.1rem}
  .hg2,.hg4{display:none}
  .pager{grid-template-columns:minmax(0,1fr)}
  .pager a + a{border-left:0;border-top:1px solid var(--rule);padding-left:0;
    align-items:flex-start;text-align:left}
  .tl__row{grid-template-columns:minmax(0,1fr);gap:.25rem}
  .grid-lines{display:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important}
}
