:root{
    --bg:#ffffff;
    --band:#f3f4f5;
    --card:#ffffff;
    --ink:#181b1f;
    --soft:#5b626b;
    --line:#e2e4e6;
    --navy:#20262e;
    --navy-2:#2a323c;
    --on-navy:#f2f3f4;
    --soft-on-navy:#9aa4ae;
    --red:#990000;
    --red-hot:#b31212;
    --shadow:0 1px 2px rgba(24,27,31,.05),0 10px 26px -14px rgba(24,27,31,.16);
  }
  
  

  *{box-sizing:border-box;margin:0;padding:0}
  section,footer{scroll-margin-top:124px}
  main#top{scroll-margin-top:130px}
  html{scroll-behavior:smooth}
  body{
    background:var(--bg);color:var(--ink);
    font-family:"Source Sans 3",-apple-system,"Segoe UI",Arial,sans-serif;
    font-size:16.5px;line-height:1.55;overflow-x:hidden;
  }
  ::selection{background:var(--red);color:#fff}
  .wrap{max-width:1180px;margin:0 auto;padding:0 22px}
  a{color:inherit}
  a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:3px}
  .mono{font-family:"IBM Plex Mono",ui-monospace,monospace}
  h2{font-weight:900;font-size:clamp(1.45rem,2.7vw,2.05rem);letter-spacing:-.01em;line-height:1.12;text-wrap:balance}
  .kicker{font-family:"IBM Plex Mono",monospace;font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;color:var(--red);font-weight:500}

  /* ---------- header with PIP-style corner plate ---------- */
  header{position:sticky;top:0;z-index:60;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(0,0,0,.02)}
  .corner-brand{
    position:absolute;top:0;left:0;z-index:70;
    background:var(--red);color:#fff;cursor:pointer;
    height:100px;padding:14px 58px 0 26px;
    clip-path:polygon(0 0,100% 0,calc(100% - 42px) 100%,0 100%);
    display:flex;flex-direction:column;gap:4px;
  }
  .corner-brand{text-decoration:none}
  .corner-brand:hover .big{text-shadow:0 2px 10px rgba(0,0,0,.25)}
  .corner-brand .big{
    font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;
    font-style:italic;font-size:1.9rem;letter-spacing:.01em;line-height:1;
    transform:skewX(-4deg);text-transform:uppercase;
  }
  .corner-brand .small{
    font-family:"Source Sans 3",Arial,sans-serif;font-weight:400;
    font-style:italic;font-size:.88rem;letter-spacing:.18em;line-height:1;
    text-transform:uppercase;color:rgba(255,255,255,.92);white-space:nowrap;
  }
  .bar{display:flex;align-items:center;justify-content:space-between;height:84px;gap:18px;padding-left:290px}
  nav.main{display:flex;gap:4px}
  nav.main a{
    white-space:nowrap;text-decoration:none;font-size:.95rem;font-weight:600;color:var(--ink);
    padding:10px 13px;border-bottom:3px solid transparent;transition:color .15s,border-color .15s;
  }
  nav.main a:hover{color:var(--red);border-color:var(--red)}
  .hcall{
    display:inline-flex;align-items:center;gap:8px;text-decoration:none;
    background:var(--red);color:#fff;font-size:.92rem;font-weight:700;
    padding:11px 18px;border-radius:6px;transition:background .15s;white-space:nowrap;
  }
  .hcall:hover{background:var(--red-hot)}
  .hright{display:flex;align-items:center;gap:14px}
  .hinfo{display:flex;flex-direction:column;text-decoration:none;text-align:right;line-height:1.35}
  .hinfo b{font-size:1.22rem;font-weight:900;letter-spacing:-.01em}
  .hinfo span{font-size:.74rem;color:var(--soft);white-space:nowrap}
  .hinfo:hover b{color:var(--red)}
  @media (max-width:1060px) and (min-width:921px){.hinfo{display:none}}
  @media (max-width:920px){
    nav.main{display:none}
    .burger{display:flex}
    .hcall{display:none}
    .hinfo{display:flex}
    .hinfo span{display:none}
    .hinfo b{font-size:1.18rem}
    .hright{gap:12px;margin-left:auto}
  }
  @media (max-width:680px){
    .corner-brand{height:80px;padding:11px 34px 0 16px;clip-path:polygon(0 0,100% 0,calc(100% - 26px) 100%,0 100%)}
    .corner-brand .big{font-size:1.35rem}
    .corner-brand .small{font-size:.62rem;letter-spacing:.12em}
    .bar{padding-left:215px;gap:10px;height:66px}
  }
  @media (max-width:480px){
    .corner-brand{height:72px;padding:10px 28px 0 14px;clip-path:polygon(0 0,100% 0,calc(100% - 22px) 100%,0 100%)}
    .corner-brand .big{font-size:1.18rem}
    .corner-brand .small{font-size:.54rem;letter-spacing:.1em}
    .bar{padding-left:172px;gap:6px;padding-right:14px}
    .hright{gap:8px;margin-left:auto}
    .hinfo b{font-size:1rem}
    .burger{width:40px;height:40px;padding:9px;gap:4.5px}
    .burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  }


  /* burger + mobile nav */
  .burger{
    display:none;flex-direction:column;justify-content:center;gap:5px;
    width:44px;height:44px;padding:10px;border:1px solid var(--line);border-radius:8px;
    background:var(--card);cursor:pointer;flex:none;
  }
  .burger span{display:block;height:2.5px;border-radius:2px;background:var(--ink);transition:transform .28s cubic-bezier(.2,.7,.3,1.2),opacity .2s}
  .burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  .burger[aria-expanded="true"] span:nth-child(2){opacity:0}
  .burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
  .mnav{
    position:absolute;top:100%;left:0;right:0;z-index:59;
    background:var(--bg);border-bottom:1px solid var(--line);
    padding:10px 22px 18px;display:flex;flex-direction:column;gap:2px;
    box-shadow:0 18px 30px -18px rgba(24,27,31,.25);
    opacity:0;transform:translateY(-10px);pointer-events:none;visibility:hidden;
    transition:opacity .25s ease,transform .25s cubic-bezier(.2,.7,.2,1),visibility 0s linear .25s;
  }
  .mnav.open{opacity:1;transform:none;pointer-events:auto;visibility:visible;transition:opacity .25s ease,transform .25s cubic-bezier(.2,.7,.2,1)}
  .mnav a{
    text-decoration:none;font-size:1.02rem;font-weight:600;padding:13px 4px;
    border-bottom:1px solid var(--line);
  }
  .mnav a:last-child{border-bottom:0}
  .mnav a:not(.btn):hover{color:var(--red)}
  @media (min-width:921px){.mnav{display:none}}
  @media (max-width:920px){.burger{display:flex}}
  @media (prefers-reduced-motion:reduce){.mnav,.burger span{transition:none}}

  /* ---------- hero ---------- */
  .hero{
    background:
      radial-gradient(ellipse 60% 80% at 85% 20%, rgba(153,0,0,.06), transparent 60%),
      linear-gradient(180deg,var(--band),var(--bg));
    border-bottom:1px solid var(--line);
  }
  .hero .in{display:grid;grid-template-columns:6fr 6fr;gap:40px;align-items:center;padding:30px 0 44px}
  @media (max-width:920px){
    .hero .in{grid-template-columns:1fr;gap:28px}
    .hero .in>div:first-child{text-align:center}
    .hero p.lede{margin-left:auto;margin-right:auto}
    .hero-ctas{justify-content:center}
    .brands .row{justify-content:center}
  }
  .hero h1{font-weight:900;font-size:clamp(2rem,4.3vw,3.1rem);letter-spacing:-.015em;line-height:1.06;text-wrap:balance}
  .hero h1 .red{color:var(--red)}
  .hero p.lede{margin-top:16px;color:var(--soft);max-width:32rem;font-size:1.08rem}
  .hero-ctas{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px}
  .btn{
    display:inline-flex;align-items:center;gap:9px;text-decoration:none;
    font-size:.95rem;font-weight:700;padding:13px 24px;min-height:46px;border-radius:6px;
    transition:background .15s,transform .15s,border-color .15s,color .15s;
  }
  .btn:hover{transform:translateY(-1px)}
  .btn-red{background:var(--red);color:#fff}
  .btn-red:hover{background:var(--red-hot)}
  .btn-line{border:2px solid var(--ink);color:var(--ink)}
  .btn-sm{padding:10px 13px;min-height:40px;font-size:.84rem;gap:6px;white-space:nowrap}
  .btn-line:hover{border-color:var(--red);color:var(--red)}
  .brands{margin-top:30px}
  .brands .k{font-family:"IBM Plex Mono",monospace;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--soft)}
  .brands .row{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
  .brands .b{
    font-weight:900;font-size:.95rem;letter-spacing:.02em;color:var(--soft);
    border:1px solid var(--line);border-radius:6px;padding:8px 14px;background:var(--card);
  }
  .hero-stage{
    position:relative;height:400px;border:1px solid var(--line);border-radius:12px;overflow:hidden;
    background:linear-gradient(180deg,var(--card),var(--band));box-shadow:var(--shadow);cursor:grab;touch-action:pan-y;
  }
  .hero-stage:active{cursor:grabbing}
  @media (max-width:640px){.hero-stage{height:320px}}
  .hud{position:absolute;font-family:"IBM Plex Mono",monospace;font-size:.6rem;letter-spacing:.13em;text-transform:uppercase;color:var(--soft);pointer-events:none;z-index:3}
  .hud.tl{top:14px;left:16px}
  .hud.tl b{color:var(--ink);font-weight:500}
  .hud.br{bottom:12px;right:16px;color:var(--red);display:flex;gap:8px;align-items:center}
  .hud.br .ico{display:inline-block;animation:nudge 2.4s ease-in-out infinite}
  @keyframes nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
  .scene{position:absolute;inset:0;display:grid;place-items:center;perspective:1400px}
  .rig{transform-style:preserve-3d}
  .obj3d{transform-style:preserve-3d;position:relative;width:0;height:0}
  .floor{
    position:absolute;width:380px;height:250px;left:-190px;top:-125px;
    transform:rotateX(90deg);border-radius:50%;
    background:radial-gradient(ellipse at center, rgba(24,27,31,.16), rgba(24,27,31,.05) 55%, transparent 72%);
  }


  /* ---------- hero image slider ---------- */
  .hero-slider{
    position:relative;height:400px;border:1px solid var(--line);border-radius:12px;overflow:hidden;
    background:var(--card);box-shadow:var(--shadow);touch-action:pan-y;
  }
  @media (max-width:640px){.hero-slider{height:320px}}
  .hs-track{position:relative;height:100%}
  .hs-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .7s ease;pointer-events:none}
  .hs-slide.on{opacity:1;pointer-events:auto}
  @media (prefers-reduced-motion:reduce){.hs-slide{transition:none}}
  .hs-slide img{width:100%;height:100%;object-fit:cover;display:block;user-select:none;-webkit-user-drag:none}
  .hs-cap{
    position:absolute;left:14px;bottom:14px;
    font-family:"IBM Plex Mono",monospace;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;
    background:rgba(24,27,31,.78);color:#fff;padding:8px 12px;border-radius:6px;backdrop-filter:blur(4px);
  }
  .hs-cap b{font-weight:500;color:#fff}
  .hs-arrow{
    position:absolute;top:50%;transform:translateY(-50%);z-index:4;
    width:42px;height:42px;border-radius:50%;border:0;cursor:pointer;
    background:rgba(255,255,255,.92);color:#181b1f;font-size:1.5rem;line-height:1;
    display:grid;place-items:center;box-shadow:0 2px 10px rgba(0,0,0,.18);
    opacity:0;transition:opacity .2s,background .15s,transform .15s;
  }
  .hero-slider:hover .hs-arrow,.hs-arrow:focus-visible{opacity:1}
  .hs-arrow:hover{background:var(--red);color:#fff}
  .hs-arrow.prev{left:12px}
  .hs-arrow.next{right:12px}
  .hs-dots{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);display:flex;gap:7px;z-index:4}
  .hs-dots button{
    width:22px;height:5px;border-radius:99px;border:0;cursor:pointer;padding:0;
    background:rgba(255,255,255,.55);box-shadow:0 0 0 1px rgba(0,0,0,.08);transition:background .2s,width .2s;
  }
  .hs-dots button[aria-selected="true"]{background:var(--red);width:34px}

  /* ---------- promo strip ---------- */
  .promo{background:var(--red);color:#fff}
  .promo .in{display:flex;justify-content:center;gap:34px;flex-wrap:wrap;padding:11px 0;font-size:.9rem;font-weight:700}
  .promo .in span{display:inline-flex;gap:9px;align-items:center}
  .promo .in span::before{content:"✓";font-weight:900;opacity:.85}

  /* ---------- category cards ---------- */
  .cats{padding:76px 0 66px}
  .cats .head{display:flex;align-items:end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:26px}
  .cats .head p.sec-sub{color:var(--soft);max-width:40rem;margin-top:8px;font-size:1.02rem}
  .mat-row{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;justify-content:center}
  .mat{
    font-size:.66rem;font-weight:600;color:var(--soft);white-space:nowrap;letter-spacing:0;
    border:1px solid var(--line);border-radius:999px;padding:2px 6px;background:var(--bg);
    transition:color .15s,border-color .15s;
  }
  .mat:hover{color:var(--red);border-color:var(--red)}
  .mat-row .brk{flex-basis:100%;height:0}
  .cat-grid{display:grid;grid-template-columns:1.55fr 1fr 1fr;gap:18px}
  .cat.feat .pic{height:252px}
  .cat.feat .cat-top h3{font-size:1.3rem}
  .cat.feat .pic img{padding:4px}
  @media (max-width:1020px){.cat-grid{grid-template-columns:1fr 1fr}.cat.feat{grid-column:1/-1}.cat.feat .pic{height:280px}}
  @media (max-width:560px){.cat-grid{grid-template-columns:1fr}}
  .cat{
    background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;
    display:flex;flex-direction:column;box-shadow:var(--shadow);
    transition:transform .18s,box-shadow .18s;
  }
  .cat:hover{transform:translateY(-4px);box-shadow:0 4px 8px rgba(24,27,31,.06),0 22px 40px -18px rgba(24,27,31,.22)}
  .cat .pic{
    height:252px;border-bottom:1px solid var(--line);background:#ffffff;
    display:block;overflow:hidden;
  }
  .cat .pic img{display:block;width:100%;height:100%;object-fit:contain;padding:18px;transition:transform .25s ease}
  .cat:hover .pic img{transform:scale(1.05)}
  .cat-body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
  .cat-top{padding:14px 18px 12px;border-bottom:1px solid var(--line);text-align:center}
  .cat-top h3{font-weight:900;font-size:1.12rem;letter-spacing:-.005em}
  .cat-top .cat-sub{font-family:"IBM Plex Mono",monospace;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--soft);margin-top:3px}
  .cat-body p{font-size:.88rem;color:var(--soft)}
  .cat-body .links{margin-top:auto;padding-top:12px;display:flex;gap:6px;align-items:center;justify-content:center;flex-wrap:nowrap}
  .cat-body .go{font-size:.88rem;font-weight:700;color:var(--red);text-decoration:none;display:inline-flex;gap:6px;align-items:center}
  .cat-body .go .arr{transition:transform .15s}
  .cat-body .go:hover .arr{transform:translateX(4px)}
  .cat-body .alt{font-size:.82rem;font-weight:600;color:var(--soft);text-decoration:none}
  .cat-body .alt:hover{color:var(--ink);text-decoration:underline}

  /* ---------- why band ---------- */
  .why{background:var(--band);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:74px 0 64px}
  .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}
  @media (max-width:920px){.why-grid{grid-template-columns:1fr 1fr}}
  @media (max-width:560px){.why-grid{grid-template-columns:1fr}}
  .w{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px 18px;display:flex;gap:14px;align-items:flex-start}
  .w .n{
    flex:none;width:38px;height:38px;border-radius:8px;background:var(--red);color:#fff;
    display:grid;place-items:center;font-family:"IBM Plex Mono",monospace;font-size:.6rem;letter-spacing:.05em;font-weight:500;text-align:center;line-height:1.1;
  }
  .w h3{font-weight:700;font-size:.98rem}
  .w p{font-size:.85rem;color:var(--soft);margin-top:2px}


  /* ---------- standard colors ---------- */
  .colors{padding:76px 0 66px}
  .col-group{margin-top:26px}
  .col-group h3{font-family:"IBM Plex Mono",monospace;font-size:.92rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin-bottom:14px}
  .sw-row{
    display:flex;gap:14px;overflow-x:auto;padding:4px 4px 14px;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
    scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;
  }
  .sw-row::-webkit-scrollbar{height:6px}
  .sw-row::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:99px}
  .sw-row::-webkit-scrollbar-track{background:transparent}
  .sw{
    flex:none;width:148px;scroll-snap-align:start;
    display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;
    border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card);
    font-size:.9rem;font-weight:700;transition:transform .15s,box-shadow .15s;
  }
  .sw:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
  .sw i{display:block;width:100%;height:104px;border:0;border-bottom:1px solid var(--line)}
  .sw .lbl{padding:10px 10px 12px;line-height:1.3}
  .sw small{display:block;font-weight:400;color:var(--soft);font-size:.74rem;margin-top:2px}
  .col-note{
    margin-top:26px;padding:16px 20px;border:1px dashed var(--line-2);border-radius:10px;
    color:var(--soft);font-size:.95rem;display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:space-between;
  }
  .col-note b{color:var(--ink)}

  /* ---------- prices ---------- */
  .prices{padding:76px 0 66px}
  .price-grid{display:grid;grid-template-columns:7fr 5fr;gap:36px;align-items:start;margin-top:24px}
  .price-grid>*{min-width:0}
  @media (max-width:880px){.price-grid{grid-template-columns:1fr;gap:24px}}
  table.pt{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}
  .pt-wrap{overflow-x:auto;border-radius:10px}
  table.pt th{
    text-align:left;font-family:"IBM Plex Mono",monospace;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;
    color:#fff;background:var(--navy);padding:11px 16px;font-weight:500;
  }
  table.pt td{padding:11px 16px;border-top:1px solid var(--line);font-size:.92rem}
  table.pt td em{font-style:normal;color:var(--red);font-weight:900}
  table.pt tr:nth-child(even) td{background:var(--band)}
  .prices aside p{color:var(--soft);font-size:.95rem;max-width:26rem}
  .prices aside .btn{margin-top:16px}
  .prices aside .fine{font-family:"IBM Plex Mono",monospace;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-top:12px;display:block}

  /* ---------- channels ---------- */
  .chan{background:var(--band);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:62px 0 56px}
  .chan-row{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:20px}
  @media (max-width:1020px){.chan-row{grid-template-columns:repeat(3,1fr)}}
  @media (max-width:560px){.chan-row{grid-template-columns:1fr 1fr}}
  .ch{
    background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 12px;text-align:center;
    font-size:.85rem;font-weight:700;text-decoration:none;transition:border-color .15s,color .15s,transform .15s;
  }
  .ch:hover{border-color:var(--red);color:var(--red);transform:translateY(-2px)}
  .ch small{display:block;font-family:"IBM Plex Mono",monospace;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);font-weight:400;margin-top:5px}

  /* ---------- trust ---------- */
  .trust{padding:70px 0 62px}
  .trust .in{display:grid;grid-template-columns:7fr 5fr;gap:36px;align-items:center}
  @media (max-width:820px){.trust .in{grid-template-columns:1fr;gap:24px}}
  .trust p{color:var(--soft);max-width:36rem}
  .trust p+p{margin-top:12px}
  .logos{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
  .logos .b{font-weight:900;font-size:1rem;color:var(--soft);border:1px solid var(--line);border-radius:8px;padding:12px 16px;background:var(--card)}
  .logos .b em{font-style:normal;color:var(--red)}

  /* ---------- footer ---------- */
  footer{background:var(--navy);color:var(--on-navy);padding:54px 0 30px}
  .f-top{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-bottom:30px;border-bottom:1px solid var(--navy-2)}
  .f-top .giant{font-weight:900;font-size:clamp(1.7rem,4.2vw,2.8rem);letter-spacing:-.02em;text-decoration:none;display:block}
  .f-top .giant:hover{color:#ff8d80}
  .f-top .k{font-family:"IBM Plex Mono",monospace;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--soft-on-navy)}
  .f-top .btn-red{background:var(--red)}
  .foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:26px;padding-top:30px}
  @media (max-width:820px){.foot-grid{grid-template-columns:1fr 1fr}}
  @media (max-width:520px){.foot-grid{grid-template-columns:1fr}}
  .foot-col h3{font-family:"IBM Plex Mono",monospace;font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--soft-on-navy);margin-bottom:9px}
  .foot-col p,.foot-col a{font-size:.88rem;color:var(--on-navy);text-decoration:none;line-height:1.85;font-style:normal}
  .foot-col a:hover{text-decoration:underline}
  @media (max-width:640px){
    .foot-grid{grid-template-columns:1fr;gap:0}
    .foot-col:first-child{padding-bottom:10px;border-bottom:1px solid var(--navy-2)}
    .fc{border-bottom:1px solid var(--navy-2)}
    .fc h3{
      margin:0;padding:15px 2px;cursor:pointer;user-select:none;
      display:flex;justify-content:space-between;align-items:center;font-size:.7rem;
    }
    .fc h3::after{content:"+";font-size:1.15rem;line-height:1;color:var(--soft-on-navy);transition:transform .28s cubic-bezier(.2,.7,.3,1.2)}
    .fc.open h3::after{transform:rotate(45deg)}
    .fc p{overflow:hidden;max-height:0;margin:0;transition:max-height .35s ease}
    .fc.open p{max-height:220px;padding-bottom:14px}
  }
  @media (prefers-reduced-motion:reduce){.fc p,.fc h3::after{transition:none}}
  .legal{margin-top:34px;padding-top:20px;border-top:1px solid var(--navy-2);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-family:"IBM Plex Mono",monospace;font-size:.6rem;letter-spacing:.1em;color:var(--soft-on-navy)}

  .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
  .reveal.vis{opacity:1;transform:none}
  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    .reveal{opacity:1 !important;transform:none !important;transition:none}
    .hud.br .ico{animation:none}
  }
