/* Shared styles for /pro, /confirmed and 404 (same system as /report). Generated by pages.py. */
:root{
    --paper:#fbf9f4;--paper-2:#f1ebdf;--ink:#1f1b16;--ink-2:rgba(31,27,22,.76);--ink-3:rgba(31,27,22,.6);
    --rule:rgba(31,27,22,.11);--rule-2:rgba(31,27,22,.2);--sepia:#8a6c4c;--red:#a3412a;
    --display:'Cormorant Garamond Variable',Garamond,Georgia,serif;--body:'Newsreader Variable',Georgia,serif;
    --ui:'Inter Variable',-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;--gut:clamp(20px,5vw,88px);--r:5px;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth;overflow-x:clip;scroll-padding-top:110px}
  body{color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip;background:var(--paper)}
  body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.4;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .35 0 0 0 0 .22 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
  a{color:inherit;text-decoration:none}
  ::selection{background:rgba(163,65,42,.16)}
  :focus-visible{outline:2px solid var(--red);outline-offset:3px}
  .wrap{max-width:1480px;margin:0 auto;padding:0 var(--gut)}
  h1,h2,h3{font-family:var(--display);font-weight:500;letter-spacing:-.01em;text-wrap:balance}
  p{text-wrap:pretty}
  main,header,footer{position:relative;z-index:1}
  .label{font-family:var(--ui);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);font-weight:500}
  .label b{color:var(--red);font-weight:500}
  em.red{font-style:italic;color:var(--red)}

  header{position:fixed;top:0;left:0;right:0;z-index:50;pointer-events:none}
  header nav{pointer-events:auto}
  nav{display:flex;align-items:center;justify-content:space-between;height:84px;padding:0;border:1px solid transparent;border-radius:14px;
    transition:height .45s cubic-bezier(.2,.7,.2,1),margin .45s cubic-bezier(.2,.7,.2,1),padding .45s cubic-bezier(.2,.7,.2,1),background .45s,border-color .45s,box-shadow .45s}
  header.solid nav{height:64px;margin-top:14px;padding:0 10px 0 18px;background:rgba(251,249,244,.66);-webkit-backdrop-filter:blur(16px) saturate(1.5);backdrop-filter:blur(16px) saturate(1.5);
    border-color:rgba(31,27,22,.09);box-shadow:0 1px 0 rgba(255,255,255,.7) inset,0 10px 30px -12px rgba(31,27,22,.18)}
  header.solid .brand{font-size:26px}
  header.solid .brand .seal{width:32px;height:32px}
  @media(max-width:600px){header.solid nav{margin-top:10px;height:58px;padding:0 8px 0 12px}}
  .brand{display:flex;align-items:center;gap:12px;font-family:var(--display);font-size:29px;font-weight:600;transition:font-size .45s}
  .brand .seal{width:38px;height:38px;color:var(--red);flex:none;transition:transform 1s cubic-bezier(.3,.7,.2,1),width .45s,height .45s}
  .brand:hover .seal{transform:rotate(-40deg)}
  .nav-links{display:flex;gap:40px;align-items:center}
  .nav-links a:not(.btn){font-family:var(--ui);font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);position:relative}
  .nav-links a:not(.btn)::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1px;background:var(--red);transition:right .35s}
  .nav-links a:not(.btn):hover{color:var(--ink)}
  .nav-links a:not(.btn):hover::after,.nav-links a[aria-current]::after{right:0}
  @media(max-width:900px){.nav-links a:not(.btn){display:none}}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:var(--ui);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;
    padding:17px 28px;min-height:52px;border-radius:var(--r);background:var(--ink);color:var(--paper)!important;border:1px solid var(--ink);cursor:pointer;transition:background .25s,border-color .25s,transform .25s}
  .btn:hover{background:var(--red);border-color:var(--red);transform:translateY(-2px)}
  .btn .arr{transition:transform .25s}.btn:hover .arr{transform:translateX(4px)}
  .btn.ghost{background:transparent;color:var(--ink)!important;border-color:var(--rule-2)}
  .btn.ghost:hover{border-color:var(--ink);background:transparent}
  .btn.sm{padding:11px 18px;font-size:11.5px;min-height:42px}

  /* hero */
  .hero{padding:clamp(150px,18vh,200px) 0 0}
  .hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(40px,6vw,120px);align-items:center}
  .eyebrow{display:flex;align-items:center;gap:16px;margin-bottom:34px}
  .eyebrow i{width:56px;height:1px;background:var(--rule-2)}
  .hero h1{font-size:clamp(46px,5.8vw,98px);line-height:1;font-weight:400;letter-spacing:-.02em}
  .hero h1 em{font-weight:500}
  .hero .lead{font-size:clamp(19px,1.45vw,22px);line-height:1.55;color:var(--ink-2);max-width:31em;margin:32px 0 40px}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap}
  .hero-note{font-family:var(--ui);font-size:13px;color:var(--ink-3);margin-top:16px}

  /* cover */
  .cover{display:block;position:relative;max-width:400px;margin-left:auto;aspect-ratio:1/1.414;background:#fff;border:1px solid var(--rule);border-radius:calc(var(--r) + 3px);
    padding:30px 30px 26px;box-shadow:0 1px 0 var(--rule),0 30px 60px -36px rgba(31,27,22,.35);transform:rotate(1.4deg);transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s;display:flex;flex-direction:column}
  .cover:hover{transform:rotate(0) translateY(-6px);box-shadow:0 1px 0 var(--rule),0 40px 70px -36px rgba(31,27,22,.4)}
  .cover .c-top{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--ink);padding-bottom:9px}
  .cover .c-logo{font-family:var(--display);font-size:22px;font-weight:600}.cover .c-logo i{color:var(--red);font-style:normal}
  .cover .c-top span:not(.c-logo){font-family:var(--ui);font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
  .cover .c-art{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:14px 0}
  .cover .c-art img{max-width:78%;max-height:100%;object-fit:contain;opacity:.42;mix-blend-mode:multiply}
  .cover .c-kicker{font-family:var(--ui);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--red)}
  .cover .c-title em{white-space:nowrap}
  .cover .c-title{font-family:var(--display);font-size:clamp(34px,3.2vw,46px);line-height:1;font-weight:400;margin:12px 0 14px}
  .cover .c-title em{color:var(--red)}
  .cover .c-sub{font-size:13.5px;line-height:1.45;color:var(--ink-2)}
  .cover .c-foot{display:flex;justify-content:space-between;border-top:1px solid var(--rule);margin-top:22px;padding-top:9px;font-family:var(--ui);font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
  .cover .c-dl{position:absolute;right:-14px;top:62px;background:var(--ink);color:var(--paper);font-family:var(--ui);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;padding:9px 14px;border-radius:var(--r);transform:rotate(-1.4deg)}
  @media(max-width:960px){.hero-grid{grid-template-columns:1fr}.cover{margin:10px auto 0;max-width:300px}}

  .ledger{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(60px,9vh,100px);border-top:1px solid var(--rule)}
  .ledger>div{padding:28px 0 34px}
  .ledger>div+div{padding-left:clamp(20px,3vw,48px);border-left:1px solid var(--rule)}
  .ledger b{display:block;font-family:var(--display);font-size:clamp(40px,3.8vw,60px);font-weight:400;line-height:1;margin:14px 0 8px}
  .ledger b em{color:var(--red)}
  .ledger p{font-size:16px;color:var(--ink-2)}
  @media(max-width:640px){.ledger{grid-template-columns:1fr}.ledger>div+div{padding-left:0;border-left:none;border-top:1px solid var(--rule)}}

  .sec{padding:clamp(90px,11vw,160px) 0 0}
  .sec-head{display:grid;grid-template-columns:minmax(180px,.28fr) 1fr;gap:clamp(24px,5vw,80px);margin-bottom:clamp(48px,6vw,84px)}
  .sec-head .label{padding-top:18px}
  .sec-head h2{font-size:clamp(38px,4.8vw,74px);line-height:1.04;font-weight:400;letter-spacing:-.015em;max-width:17ch}
  .sec-head p{font-size:clamp(18px,1.35vw,21px);line-height:1.6;color:var(--ink-2);margin-top:22px;max-width:34em}
  @media(max-width:820px){.sec-head{grid-template-columns:1fr;gap:14px}.sec-head .label{padding-top:0}}

  /* findings */
  .finds{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule);counter-reset:f}
  .find{padding:clamp(30px,3.2vw,50px) clamp(22px,2.4vw,40px) clamp(36px,3.6vw,56px);border-bottom:1px solid var(--rule);counter-increment:f}
  .find:not(:nth-child(3n)){border-right:1px solid var(--rule)}
  .find::before{content:counter(f,lower-roman);display:block;font-family:var(--display);font-style:italic;font-size:30px;color:var(--red);line-height:1;margin-bottom:26px}
  .find h3{font-size:clamp(24px,1.9vw,29px);line-height:1.15;margin-bottom:10px}
  .find p{color:var(--ink-2);font-size:17px}
  @media(max-width:960px){.finds{grid-template-columns:1fr 1fr}.find:not(:nth-child(3n)){border-right:none}.find:nth-child(odd){border-right:1px solid var(--rule)}}
  @media(max-width:620px){.finds{grid-template-columns:1fr}.find:nth-child(odd){border-right:none}}

  /* charts */
  .fig{display:grid;grid-template-columns:minmax(180px,.28fr) 1fr;gap:clamp(24px,5vw,80px)}
  .fig .side p{color:var(--ink-2);font-size:17px;margin-top:14px;max-width:20em}
  @media(max-width:820px){.fig{grid-template-columns:1fr;gap:18px}}
  .bars{list-style:none;border-top:1px solid var(--ink);position:relative}
  .bars li{display:grid;grid-template-columns:118px 1fr 74px;align-items:center;gap:14px;min-height:36px;border-bottom:1px solid var(--rule);font-family:var(--ui);font-size:14px;position:relative}
  .bars li:hover{background:rgba(255,255,255,.6)}
  .bars .c{color:var(--ink)}
  .bars .track{position:relative;height:14px}
  .bars .bar{position:absolute;left:0;top:0;bottom:0;background:var(--sepia);border-radius:0 4px 4px 0;opacity:.75;transition:opacity .2s}
  .bars li.hi .bar{background:var(--red);opacity:.9}
  .bars li:hover .bar{opacity:1}
  .bars .v{font-variant-numeric:tabular-nums;text-align:right;color:var(--ink)}
  .bars .v small{display:block;font-size:11px;color:var(--ink-3);line-height:1.1}
  .bars li.hi .c{font-weight:600}
  .avg{position:absolute;top:0;bottom:0;width:0;border-left:1px dashed var(--ink-3);pointer-events:none}
  .avg span{position:absolute;top:-24px;left:-30px;width:110px;font-family:var(--ui);font-size:11px;color:var(--ink-3);white-space:nowrap}
  .bars-wrap{position:relative;padding-top:26px}
  .bars-wrap .axis{display:grid;grid-template-columns:118px 1fr 74px;gap:14px;font-family:var(--ui);font-size:11px;color:var(--ink-3);margin-top:8px}
  .bars-wrap .axis div{display:flex;justify-content:space-between}
  .note{font-family:var(--ui);font-size:12.5px;line-height:1.55;color:var(--ink-3);margin-top:18px;max-width:60em}
  .key{display:flex;gap:18px;flex-wrap:wrap;font-family:var(--ui);font-size:12.5px;color:var(--ink-2);margin-bottom:12px}
  .key i{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:7px;vertical-align:-1px}
  @media(max-width:560px){.bars li,.bars-wrap .axis{grid-template-columns:86px 1fr 60px;gap:10px;font-size:13px}}

  .price{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,64px);border-top:1px solid var(--ink);padding-top:28px}
  .price .p b{display:block;font-family:var(--display);font-size:clamp(56px,6vw,92px);font-weight:400;line-height:1;letter-spacing:-.02em}
  .price .p.two b{color:var(--red)}
  .price .p .lab{font-family:var(--ui);font-size:13px;color:var(--ink-2);margin-top:10px}
  .price .meter{position:relative;height:12px;margin-top:22px;background:var(--paper-2);border-radius:0 4px 4px 0}
  .price .meter i{position:absolute;left:0;top:0;bottom:0;background:var(--sepia);opacity:.8;border-radius:0 4px 4px 0}
  .price .two .meter i{background:var(--red);opacity:.9}
  .price .meter::after{content:"";position:absolute;right:0;top:-6px;bottom:-6px;border-left:1px dashed var(--ink-3)}
  .price .meter-lab{display:flex;justify-content:space-between;font-family:var(--ui);font-size:11px;color:var(--ink-3);margin-top:8px}
  @media(max-width:640px){.price{grid-template-columns:1fr}}

  table.gaps{width:100%;border-collapse:collapse;font-family:var(--ui);font-size:15px;border-top:1px solid var(--ink)}
  .gaps th{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:500;text-align:left;padding:12px 10px 12px 0;border-bottom:1px solid var(--rule-2)}
  .gaps td{padding:13px 10px 13px 0;border-bottom:1px solid var(--rule);font-variant-numeric:tabular-nums}
  .gaps td.n,.gaps th.n{text-align:right}
  .gaps tr:hover td{background:rgba(255,255,255,.6)}
  .gaps td b{font-weight:600;color:var(--red)}
  @media(max-width:560px){.gaps{font-size:13.5px}.gaps .hide{display:none}}

  /* get it */
  .get{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,6vw,110px);align-items:center;border-top:1px solid var(--rule);padding-top:clamp(50px,6vw,90px)}
  .get h2{font-size:clamp(38px,4.4vw,66px);font-weight:400;line-height:1.02}
  .get p{color:var(--ink-2);font-size:clamp(18px,1.35vw,21px);max-width:30em;margin:22px 0 34px}
  .get ul{list-style:none;border-top:1px solid var(--rule)}
  .get li{padding:16px 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;gap:16px;font-size:17px}
  .get li span{color:var(--red);font-family:var(--display);font-style:italic;font-size:20px;white-space:nowrap}
  @media(max-width:860px){.get{grid-template-columns:1fr}}

  /* next */
  .next{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,110px);align-items:start;border-top:1px solid var(--rule);padding-top:clamp(50px,6vw,90px)}
  .next h2{font-size:clamp(36px,4vw,60px);font-weight:400;line-height:1.04;margin-top:20px}
  .next p{color:var(--ink-2);font-size:clamp(18px,1.35vw,21px);max-width:28em;margin-top:20px}
  #nf{display:flex;flex-direction:column;gap:22px;align-items:flex-start;padding-top:8px}
  .nf-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;width:100%}
  .nf-f{display:block}
  .nf-f span{display:block;font-family:var(--ui);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);font-weight:500;margin-bottom:2px}
  .nf-f input,.nf-f select{width:100%;background:transparent;border:none;border-bottom:1px solid var(--rule-2);border-radius:0;padding:12px 0 11px;color:var(--ink);font-family:var(--ui);font-size:17px;line-height:1.4;-webkit-appearance:none;appearance:none}
  .nf-f select{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231f1b16' stroke-width='1.3'/%3E%3C/svg%3E") right 4px center no-repeat;padding-right:24px;cursor:pointer}
  .nf-f input::placeholder{color:var(--ink-3);opacity:.75;font-family:var(--body);font-style:italic}
  .nf-f input:focus,.nf-f select:focus{outline:none;border-bottom-color:var(--red);box-shadow:0 1px 0 var(--red)}
  .nf-f.bad input,.nf-f.bad select{border-bottom-color:var(--red)}
  .hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
  .fine{font-family:var(--ui);font-size:13px!important;line-height:1.55;color:var(--ink-3)!important;max-width:34em;margin:0!important}
  .fine a{text-decoration:underline;text-underline-offset:2px}
  .nf-msg{font-family:var(--ui);font-size:14px!important;color:var(--red)!important;margin:0!important}
  .nf-msg:empty{display:none}
  .nf-done{border-top:1px solid var(--ink);padding-top:22px;width:100%}
  .nf-done h3{font-size:clamp(32px,3vw,44px);font-weight:400}
  .nf-done p{margin-top:8px!important}
  .btn[disabled]{opacity:.55;cursor:wait;transform:none}
  [hidden]{display:none!important}
  @media(max-width:860px){.next{grid-template-columns:1fr;gap:28px}}
  @media(max-width:560px){.nf-row{grid-template-columns:1fr}#nf .btn{width:100%}}

  .method p{color:var(--ink-2);font-size:16.5px;max-width:46em;margin-bottom:12px}

  .site-foot{position:relative;z-index:1;margin-top:clamp(110px,14vw,200px);border-top:1px solid var(--rule);padding:clamp(56px,6vw,90px) 0 40px}
  .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:clamp(32px,4vw,72px)}
  .foot-brand p{color:var(--ink-2);font-size:17px;margin:18px 0 22px;max-width:22em}
  .foot-brand address{font-style:normal;font-size:16px;line-height:1.7;color:var(--ink-2)}
  .foot-brand address a{color:var(--ink);border-bottom:1px solid var(--rule-2)}
  .foot-col{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
  .foot-col .label{margin-bottom:8px}
  .foot-col a{font-size:17px;color:var(--ink);position:relative}
  .foot-col a:hover{color:var(--red)}
  .foot-col p{font-size:16.5px;color:var(--ink-2);max-width:20em}
  .foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:clamp(48px,5vw,80px);padding-top:26px;border-top:1px solid var(--rule)}
  .foot-bottom p{font-family:var(--ui);font-size:13px;color:var(--ink-3)}
  @media(max-width:960px){.foot-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.foot-grid{grid-template-columns:1fr}}

  .js .reveal{opacity:0;transform:translateY(30px);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1)}
  .js .reveal.in{opacity:1;transform:none}
  .js .bars .bar{transform-origin:left;transform:scaleX(0);transition:transform 1.1s cubic-bezier(.2,.7,.2,1),opacity .2s}
  .js .in .bars .bar,.js .in.bars-wrap .bar{transform:scaleX(1)}
  @media(prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}.js .bars .bar{transform:none;transition:none}}
.sample{background:#fff;border:1px solid var(--rule-2);border-radius:8px;box-shadow:0 24px 60px -30px rgba(31,27,22,.35);padding:26px 26px 22px;font-family:var(--ui);max-width:460px;justify-self:end}
  .sample .s-top{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--ink);padding-bottom:10px;margin-bottom:14px}
  .sample .s-logo{font-family:var(--display);font-size:24px;font-weight:500}.sample .s-logo i{color:var(--red)}
  .sample .s-lab{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}
  .sample .s-kick{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-bottom:6px}
  .sample h3{font-family:var(--display);font-size:24px;line-height:1.15;font-weight:500;margin-bottom:6px}
  .sample .s-orig{font-size:12px;color:var(--ink-3);margin-bottom:10px}
  .sample p{font-size:13.5px;line-height:1.55;color:var(--ink-2);margin-bottom:8px}
  .sample .s-key{font-size:13.5px;font-weight:600;color:var(--ink)}
  .sample .s-why{font-size:12.5px;color:var(--sepia);margin-top:6px}
  .sample .s-act{background:var(--paper-2);border-radius:4px;padding:10px 12px;font-size:12.5px;line-height:1.5;margin-top:12px;color:var(--ink)}
  .sample .s-fit{display:inline-block;font-size:11px;letter-spacing:.08em;border:1px solid var(--red);color:var(--red);border-radius:20px;padding:2px 9px;margin-left:8px;vertical-align:middle}
  .compare{width:100%;border-collapse:collapse;font-family:var(--ui);font-size:15px}
  .compare th,.compare td{text-align:left;padding:16px 14px;border-bottom:1px solid var(--rule);vertical-align:top}
  .compare thead th{font-family:var(--display);font-size:26px;font-weight:500;border-bottom:1px solid var(--ink);padding-bottom:12px}
  .compare thead th small{display:block;font-family:var(--ui);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:4px}
  .compare td:first-child{color:var(--ink-2);width:34%}
  .compare .y{color:var(--red);font-weight:600}.compare .n{color:var(--ink-3)}
  .compare .hl{background:rgba(255,255,255,.5)}
  .steps4{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--rule)}
  .steps4>div{padding:30px 26px 34px 0}.steps4>div+div{padding-left:26px;border-left:1px solid var(--rule)}
  .steps4 b{display:block;font-family:var(--display);font-style:italic;font-weight:400;font-size:44px;color:var(--red);line-height:1;margin-bottom:12px}
  .steps4 h3{font-size:24px;margin-bottom:8px}.steps4 p{font-size:16px;color:var(--ink-2)}
  .warn{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,90px);align-items:start}
  .warn .big{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule);margin-top:24px}
  .warn .big>div{padding:22px 16px 10px 0}.warn .big>div+div{padding-left:16px;border-left:1px solid var(--rule)}
  .warn .big b{display:block;font-family:var(--display);font-style:italic;font-weight:400;font-size:44px;color:var(--red);line-height:1}
  .warn .big span{font-family:var(--ui);font-size:13px;color:var(--ink-3)}
  .warn p{color:var(--ink-2);margin-bottom:14px}
  .rq{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,6vw,110px);align-items:start;border-top:1px solid var(--rule);padding-top:clamp(50px,6vw,90px)}
  .rq h2{font-size:clamp(36px,4vw,60px);font-weight:400;line-height:1.05;margin:16px 0 18px}
  .rq .side p{color:var(--ink-2);margin-bottom:12px}
  #rf{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px}
  #rf .full{grid-column:1/-1}
  #rf .seg{display:flex;border:1px solid var(--ink);border-radius:var(--r);overflow:hidden}
  #rf .seg label{flex:1;position:relative;cursor:pointer}
  #rf .seg input{position:absolute;opacity:0;inset:0;cursor:pointer}
  #rf .seg span{display:block;text-align:center;padding:14px 10px;font-family:var(--ui);font-size:14px}
  #rf .seg input:checked+span{background:var(--ink);color:var(--paper)}
  #rf textarea{width:100%;min-height:96px;font:inherit;font-family:var(--body);font-size:17px;padding:10px 0;border:0;border-bottom:1px solid var(--rule-2);background:transparent;resize:vertical;color:var(--ink)}
  #rf textarea:focus{outline:none;border-bottom-color:var(--ink)}
  #rf .chk{display:flex;gap:10px;align-items:center;font-family:var(--ui);font-size:14px;color:var(--ink-2)}
  #rf .chk input{width:18px;height:18px;accent-color:var(--red)}
  #rf .bad input,#rf .bad textarea,#rf .bad select{border-bottom-color:var(--red)}
  #rf-done h3{font-size:clamp(32px,3vw,44px);font-weight:400}#rf-done p{color:var(--ink-2);margin-top:8px}
  .faq2 details{border-top:1px solid var(--rule);padding:22px 0}
  .faq2 details:last-child{border-bottom:1px solid var(--rule)}
  .faq2 summary{cursor:pointer;font-family:var(--display);font-size:clamp(22px,2vw,28px);list-style:none;display:flex;justify-content:space-between;gap:20px}
  .faq2 summary::after{content:"+";color:var(--red);font-family:var(--ui);font-weight:300}
  .faq2 details[open] summary::after{content:"–"}
  .faq2 details p{color:var(--ink-2);margin-top:12px;max-width:44em}
  @media(max-width:900px){.steps4{grid-template-columns:1fr 1fr}.steps4>div:nth-child(3){border-left:0;padding-left:0}.warn,.rq{grid-template-columns:1fr}.sample{justify-self:start}}
  @media(max-width:600px){.steps4{grid-template-columns:1fr}.steps4>div+div{border-left:0;padding-left:0;border-top:1px solid var(--rule)}#rf{grid-template-columns:1fr}.compare{font-size:13.5px}.compare th,.compare td{padding:12px 6px}.compare thead th{font-size:20px}}
.msg{min-height:72vh;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,6vw,120px);align-items:center;padding:clamp(150px,18vh,200px) 0 0}
  .msg h1{font-size:clamp(52px,6.4vw,104px);font-weight:400;line-height:1;letter-spacing:-.02em;margin:0 0 26px}
  .msg .lead{margin:0 0 18px}
  .msg ol{font-family:var(--ui);font-size:15px;color:var(--ink-2);margin:26px 0 34px 18px;line-height:1.7}
  .msg ol li::marker{color:var(--red);font-family:var(--display);font-style:italic}
  .msg .art img{width:100%;max-width:420px;opacity:.85;mix-blend-mode:multiply}
  @media(max-width:900px){.msg{grid-template-columns:1fr}.msg .art{display:none}}
