:root {
    --void:#0B0910; --void-2:#100D18; --panel:#14111C; --panel-2:#1A1626;
    --line:#241E33; --line-2:#322947;
    --violet:#8C52FF; --violet-b:#A87BFF; --violet-d:#5B2FB0;
    --amber:#FFBD59; --amber-b:#FFCE85; --amber-d:#8A6323;
    --ice:#ECE8F6; --dim:#9990B0; --dimmer:#6B6382;
    --good:#4ADE9B;
    --maxw:1240px; --gut:clamp(1.1rem,3.5vw,3rem);
    --mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
    --sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Helvetica Neue","Segoe UI",Roboto,Arial,sans-serif;
    --t-1:clamp(.68rem,.66rem + .10vw,.74rem);
    --t0:clamp(.92rem,.89rem + .16vw,1rem);
    --t1:clamp(1.05rem,.99rem + .30vw,1.2rem);
    --t2:clamp(1.28rem,1.12rem + .70vw,1.75rem);
    --t3:clamp(1.75rem,1.40rem + 1.55vw,2.9rem);
    --t5:clamp(3rem,1.75rem + 5.60vw,6.6rem);

    --pat-fan: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' width='340' height='260' viewBox='0 0 340 260'>\
<g fill='none' stroke='%238C52FF' stroke-width='1' opacity='0.30'>\
<path d='M-20 190 C90 120 220 96 330 40'/>\
<path d='M-20 214 C96 146 228 122 344 68'/>\
<path d='M-20 238 C102 172 236 148 356 96'/>\
<circle cx='330' cy='40' r='4.5'/><circle cx='344' cy='68' r='4.5'/><circle cx='356' cy='96' r='4.5'/>\
</g>\
<g fill='none' stroke='%23FFBD59' stroke-width='1' opacity='0.18'>\
<path d='M-20 92 C88 36 214 14 330 -34'/>\
<path d='M-20 116 C94 62 222 40 340 -8'/>\
<circle cx='-20' cy='92' r='4.5'/><circle cx='-20' cy='116' r='4.5'/>\
</g></svg>");
  }

  * { box-sizing:border-box; }
  body { margin:0; background:var(--void); color:var(--ice); font-family:var(--sans);
         font-size:var(--t0); line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
  h1,h2,h3,h4 { margin:0; font-weight:700; letter-spacing:-.035em; line-height:1.02; text-wrap:balance; }
  p { margin:0; } ul { margin:0; padding:0; list-style:none; } a { color:inherit; }
  :focus-visible { outline:1px solid var(--violet-b); outline-offset:3px; }
  .num { font-variant-numeric:tabular-nums; font-feature-settings:"tnum" 1; }
  svg { display:block; }

  .wrap { width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:var(--gut); }
  .band { padding-block:clamp(3.5rem,7vw,7rem); position:relative; }
  .stack { display:flex; flex-direction:column; }
  .g-sm{gap:.7rem} .g-md{gap:1.2rem} .g-lg{gap:2rem} .g-xl{gap:clamp(2rem,4.5vw,3.5rem)}

  .patterned { position:relative; isolation:isolate; }
  .patterned > .wrap { position:relative; z-index:1; }
  .pat { position:absolute; inset:0; z-index:0; pointer-events:none;
         background-image:var(--pat-fan); background-repeat:repeat; background-size:340px 260px; opacity:.5;
         -webkit-mask-image:linear-gradient(to bottom,transparent,#000 30%,#000 70%,transparent);
                 mask-image:linear-gradient(to bottom,transparent,#000 30%,#000 70%,transparent); }
  .pat--right { -webkit-mask-image:radial-gradient(80% 100% at 100% 50%,#000,transparent 72%);
                        mask-image:radial-gradient(80% 100% at 100% 50%,#000,transparent 72%); }

  .seam { display:flex; align-items:center; height:12px; }
  .seam__l { flex:1; height:1px; background:linear-gradient(90deg,transparent,var(--line-2) 30%,var(--line-2)); }
  .seam__l2 { width:56px; height:1px; background:var(--line-2); }
  .seam__r { width:9px; height:9px; border:1px solid var(--line-2); border-radius:50%; flex:none; }

  .tag { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.2em; text-transform:uppercase;
         color:var(--dimmer); display:inline-flex; align-items:center; gap:.65rem; }
  .tag::before { content:""; width:7px; height:7px; border:1px solid var(--violet); border-radius:50%;
                 box-shadow:0 0 9px -1px var(--violet); flex:none; }
  .lede { font-size:var(--t1); color:var(--dim); max-width:60ch; line-height:1.6; }

  /* ---------- LOGO (official asset, unaltered) ---------- */
  .brand { display:flex; align-items:center; gap:.75rem; text-decoration:none; margin-right:auto; }
  .brand__mark { width:42px; height:auto; flex:none; }
  .brand__txt { display:flex; flex-direction:column; gap:.18rem; }
  .brand__m { font-weight:400; font-size:1.06rem; letter-spacing:.40em; text-transform:lowercase;
              line-height:1; color:var(--ice); }
  .brand__t { font-family:var(--mono); font-size:.48rem; letter-spacing:.26em; text-transform:uppercase;
              color:var(--dimmer); line-height:1; }
  .lockup { width:170px; height:auto; }

  /* ---------- NAV ---------- */
  .nav { position:sticky; top:0; z-index:60; background:color-mix(in srgb,var(--void) 82%,transparent);
         backdrop-filter:blur(18px) saturate(1.3); border-bottom:1px solid var(--line); }
  .nav__in { display:flex; align-items:center; gap:1.4rem; height:72px; }
  .nav__l { display:flex; gap:1.7rem; }
  .nav__l a { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.1em; text-transform:uppercase;
              color:var(--dim); text-decoration:none; transition:color .18s; }
  .nav__l a:hover { color:var(--ice); }
  @media (max-width:940px){ .nav__l{display:none} }

  .btn { display:inline-flex; align-items:center; gap:.5rem; padding:.7rem 1.15rem; font-family:var(--mono);
         font-size:var(--t-1); letter-spacing:.1em; text-transform:uppercase; text-decoration:none;
         cursor:pointer; border:1px solid var(--violet); color:var(--ice);
         background:color-mix(in srgb,var(--violet) 16%,transparent);
         transition:background .2s,box-shadow .2s,transform .2s; }
  .btn:hover { background:color-mix(in srgb,var(--violet) 30%,transparent);
               box-shadow:0 0 24px -4px var(--violet); transform:translateY(-1px); }
  .btn--sm { padding:.5rem .85rem; }
  .btn--amber { border-color:var(--amber); background:color-mix(in srgb,var(--amber) 14%,transparent); }
  .btn--amber:hover { background:color-mix(in srgb,var(--amber) 26%,transparent); box-shadow:0 0 24px -4px var(--amber); }
  .btn--bare { border-color:var(--line-2); background:transparent; color:var(--dim); }
  .btn--bare:hover { border-color:var(--ice); color:var(--ice); background:transparent; box-shadow:none; }

  /* ---------- HERO ---------- */
  .hero { position:relative; min-height:88vh; display:flex; align-items:center;
          padding-block:clamp(3rem,8vw,6rem); overflow:hidden; }
  #field { position:absolute; inset:0; width:100%; height:100%; z-index:0; opacity:.62; }
  .hero__glyph { position:absolute; right:-6%; top:50%; transform:translateY(-50%);
                 width:min(56vw,660px); z-index:0; opacity:.10; pointer-events:none; }
  .hero__veil { position:absolute; inset:0; z-index:1; pointer-events:none;
    background:radial-gradient(120% 90% at 78% 22%,color-mix(in srgb,var(--violet) 16%,transparent),transparent 62%),
               linear-gradient(to bottom,transparent 45%,var(--void) 96%); }
  .hero__in { position:relative; z-index:2; width:100%; }
  .hero h1 { font-size:var(--t5); letter-spacing:-.05em; max-width:15ch; }
  .hero h1 em { font-style:normal; color:var(--violet-b); }
  .hero__ctas { display:flex; flex-wrap:wrap; gap:.7rem; }
  .hero__meta { display:flex; flex-wrap:wrap; gap:1.6rem 2.6rem; font-family:var(--mono); font-size:var(--t-1);
                color:var(--dimmer); letter-spacing:.08em; text-transform:uppercase; padding-top:1.6rem;
                border-top:1px solid var(--line); }
  .hero__meta b { color:var(--ice); font-weight:500; }

  /* ---------- TELEMETRY ---------- */
  .telem { border-block:1px solid var(--line); background:var(--void-2); overflow:hidden; }
  .telem__in { display:flex; align-items:center; gap:2rem; height:56px; }
  .telem__lab { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.16em; text-transform:uppercase;
                color:var(--dimmer); white-space:nowrap; display:flex; align-items:center; gap:.6rem; flex:none; }
  .dot { width:7px; height:7px; border-radius:50%; border:1px solid var(--good);
         box-shadow:0 0 8px -1px var(--good); animation:pulse 2.4s ease-in-out infinite; }
  @keyframes pulse { 0%,100%{opacity:1} 50%{opacity:.3} }
  .telem__feed { display:flex; gap:2.4rem; font-family:var(--mono); font-size:var(--t-1); white-space:nowrap;
                 overflow:hidden; flex:1; }
  .tcell { display:flex; gap:.6rem; align-items:baseline; transition:opacity .4s; }
  .tcell__s { color:var(--dimmer); letter-spacing:.1em; }
  .tcell__v { color:var(--violet-b); font-weight:600; }
  .tcell__u { color:var(--dimmer); font-size:.9em; }
  @media (max-width:720px){ .telem__lab span{display:none} }

  /* ---------- AGGREGATE ---------- */
  .agg { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
         border:1px solid var(--line); background:var(--panel); }
  .agg__c { padding:clamp(1.4rem,2.5vw,2.1rem); border-right:1px solid var(--line);
            display:flex; flex-direction:column; gap:.5rem; }
  .agg__c:last-child { border-right:none; }
  @media (max-width:760px){ .agg__c{border-right:none;border-bottom:1px solid var(--line)}
                            .agg__c:last-child{border-bottom:none} }
  .agg__f { font-size:var(--t3); font-weight:700; letter-spacing:-.05em; line-height:1; color:var(--ice); }
  .agg__f span { font-size:.42em; color:var(--dim); font-weight:500; letter-spacing:0; margin-left:.15em; }
  .agg__l { font-family:var(--mono); font-size:var(--t-1); color:var(--dim); line-height:1.5; letter-spacing:.04em; }

  /* ---------- FORCES (with icons) ---------- */
  .forces { display:grid; grid-template-columns:repeat(auto-fit,minmax(255px,1fr)); gap:1px;
            background:var(--line); border:1px solid var(--line); }
  .force { background:var(--void); padding:clamp(1.5rem,2.8vw,2.2rem); display:flex; flex-direction:column;
           gap:.9rem; transition:background .3s; }
  .force:hover { background:var(--panel); }
  .force__ico { width:54px; height:54px; color:var(--amber); }
  .force__k { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.14em; text-transform:uppercase;
              color:var(--amber); }
  .force h3 { font-size:var(--t2); }
  .force p { color:var(--dim); font-size:.93rem; line-height:1.65; }

  /* ---------- SCHEMATIC ---------- */
  .schem { border:1px solid var(--line); background:var(--panel); padding:clamp(1.25rem,3vw,2.2rem);
           overflow-x:auto; }
  .schem svg { min-width:760px; width:100%; height:auto; }
  .schem__cap { font-family:var(--mono); font-size:.68rem; color:var(--dimmer); line-height:1.7;
                margin-top:1.2rem; padding-top:1rem; border-top:1px dashed var(--line-2); }

  /* ---------- SITE SELECTOR ---------- */
  .sites { border:1px solid var(--line); background:var(--panel); }
  .sites__bar { display:flex; border-bottom:1px solid var(--line); overflow-x:auto; }
  .stab { flex:1; min-width:148px; padding:1.05rem 1.1rem; background:transparent; border:none;
          border-right:1px solid var(--line); color:var(--dim); cursor:pointer; text-align:left;
          font-family:var(--mono); font-size:var(--t-1); letter-spacing:.1em; text-transform:uppercase;
          display:flex; flex-direction:column; gap:.3rem; transition:background .22s,color .22s; position:relative; }
  .stab:last-child { border-right:none; }
  .stab b { font-weight:600; color:var(--dimmer); transition:color .22s; }
  .stab:hover, .stab[aria-selected="true"] { background:var(--panel-2); color:var(--ice); }
  .stab[aria-selected="true"] b { color:var(--violet-b); }
  .stab[aria-selected="true"]::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:1px;
                                       background:var(--violet); box-shadow:0 0 12px var(--violet); }
  .spane { padding:clamp(1.5rem,3vw,2.4rem); display:grid; grid-template-columns:.9fr 1.1fr;
           gap:clamp(1.5rem,4vw,3.5rem); }
  @media (max-width:860px){ .spane{grid-template-columns:1fr} }
  .spane[hidden] { display:none; }
  .spane__t { font-size:var(--t2); margin-bottom:.6rem; }
  .spane__d { color:var(--dim); font-size:.94rem; line-height:1.7; }
  .spec { display:flex; flex-direction:column; gap:.55rem; margin-top:1.3rem; padding-top:1.2rem;
          border-top:1px solid var(--line); }
  .spec__r { display:flex; justify-content:space-between; gap:1rem; font-family:var(--mono); font-size:var(--t-1); }
  .spec__k { color:var(--dimmer); letter-spacing:.08em; text-transform:uppercase; }
  .spec__v { color:var(--ice); }

  .gauge { display:flex; flex-direction:column; justify-content:center; gap:1.4rem; }
  .grow { display:flex; flex-direction:column; gap:.5rem; }
  .grow__m { display:flex; justify-content:space-between; align-items:baseline; gap:1rem;
             font-family:var(--mono); font-size:var(--t-1); }
  .grow__k { letter-spacing:.1em; text-transform:uppercase; display:flex; align-items:center; gap:.5rem; }
  .grow__k::before { content:""; width:7px; height:7px; border-radius:50%; border:1px solid currentColor; flex:none; }
  .grow__v { font-size:var(--t2); font-weight:700; letter-spacing:-.035em; color:var(--ice); }
  .grow__v small { font-size:.42em; color:var(--dimmer); font-weight:400; margin-left:.3em; letter-spacing:.05em; }
  .grow__t { height:34px; background:var(--void); border:1px solid var(--line); overflow:hidden; }
  .grow__f { height:100%; width:0; transition:width 1.1s cubic-bezier(.2,.7,.25,1); }
  .grow__f--b { background:linear-gradient(90deg,var(--amber-d),var(--amber)); }
  .grow__f--n { background:linear-gradient(90deg,var(--violet-d),var(--violet)); box-shadow:0 0 26px -6px var(--violet); }
  .delta { display:flex; align-items:baseline; gap:1rem; padding-top:1.2rem; border-top:1px solid var(--line); }
  .delta__f { font-size:var(--t3); font-weight:800; letter-spacing:-.055em; line-height:1; color:var(--violet-b); }
  .delta__l { font-family:var(--mono); font-size:var(--t-1); color:var(--dim); letter-spacing:.06em;
              text-transform:uppercase; line-height:1.5; }
  .anon { margin-top:1.4rem; padding:.85rem 1rem; border:1px dashed var(--line-2); font-family:var(--mono);
          font-size:.66rem; color:var(--dimmer); line-height:1.7; }

  /* ---------- METHOD ---------- */
  .diff { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:1px;
          background:var(--line); border:1px solid var(--line); }
  .diff__c { background:var(--void); padding:clamp(1.5rem,2.8vw,2.2rem); display:flex; flex-direction:column;
             gap:.85rem; transition:background .3s; }
  .diff__c:hover { background:var(--panel); }
  .diff__n { font-family:var(--mono); font-size:var(--t-1); color:var(--dimmer); letter-spacing:.14em; }
  .diff__c h3 { font-size:var(--t2); }
  .diff__c p { color:var(--dim); font-size:.93rem; line-height:1.65; }
  .diff__vs { font-family:var(--mono); font-size:.68rem; color:var(--dimmer); padding-top:.8rem;
              border-top:1px solid var(--line); line-height:1.6; }

  /* ---------- BACKING ---------- */
  .back { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); border:1px solid var(--line); }
  @media (max-width:760px){ .back{grid-template-columns:1fr} }
  .back__c { background:var(--panel); padding:clamp(1.5rem,3vw,2.3rem); display:flex; flex-direction:column; gap:.9rem; }
  .back__k { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.14em; text-transform:uppercase; color:var(--violet-b); }
  .back__n { font-size:var(--t2); }
  .back__c p { color:var(--dim); font-size:.93rem; line-height:1.7; }

  /* ---------- MODELS + FLOW DIAGRAMS ---------- */
  .models { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:1px;
            background:var(--line); border:1px solid var(--line); }
  .model { background:var(--void); padding:clamp(1.5rem,3vw,2.3rem); display:flex; flex-direction:column; gap:1.15rem; }
  .model--lead { background:var(--panel); }
  .model__h { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; }
  .model h3 { font-size:var(--t2); }
  .model__p { font-family:var(--mono); font-size:.6rem; letter-spacing:.14em; text-transform:uppercase;
              padding:.25rem .5rem; border:1px solid var(--violet); color:var(--violet-b); white-space:nowrap; }
  .model p { color:var(--dim); font-size:.93rem; line-height:1.65; }
  .model li { display:grid; grid-template-columns:14px 1fr; gap:.75rem; font-size:.89rem; color:var(--dim); line-height:1.55; }
  .model li + li { margin-top:.5rem; }
  .model li::before { content:""; width:7px; height:7px; margin-top:.45rem; border:1px solid var(--violet); border-radius:50%; }
  .flow { width:100%; height:auto; }

  /* ---------- NDA STRIP ---------- */
  .nda { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; flex-wrap:wrap;
         border:1px dashed var(--line-2); padding:1.2rem 1.4rem;
         background:color-mix(in srgb,var(--panel) 60%,transparent); }
  .nda__t { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.14em; text-transform:uppercase;
            color:var(--violet-b); display:block; margin-bottom:.4rem; }
  .nda__p { color:var(--dim); font-size:.9rem; line-height:1.6; max-width:62ch; }

  /* ---------- RECOGNITION ---------- */
  .laurel { display:grid; grid-template-columns:auto 1fr; gap:clamp(1.5rem,4vw,3rem); align-items:center;
            border:1px solid var(--amber); position:relative; overflow:hidden;
            background:radial-gradient(90% 160% at 0% 50%,color-mix(in srgb,var(--amber) 13%,transparent),transparent 62%),var(--panel);
            padding:clamp(1.6rem,3.5vw,2.6rem); }
  @media (max-width:720px){ .laurel{grid-template-columns:1fr} }
  .laurel__rank { display:flex; flex-direction:column; align-items:center; gap:.2rem;
                  border-right:1px solid var(--line-2); padding-right:clamp(1.5rem,4vw,3rem); }
  @media (max-width:720px){ .laurel__rank{border-right:none;border-bottom:1px solid var(--line-2);
                            padding-right:0;padding-bottom:1.2rem;align-items:flex-start} }
  .laurel__n { font-size:clamp(3.2rem,8vw,5.4rem); font-weight:800; letter-spacing:-.06em; line-height:.9;
               color:var(--amber); }
  .laurel__nl { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.22em; text-transform:uppercase;
                color:var(--amber-b); }
  .laurel__body h3 { font-size:var(--t2); margin-bottom:.55rem; }
  .laurel__body p { color:var(--dim); font-size:.94rem; line-height:1.7; max-width:56ch; }
  .laurel__meta { display:flex; flex-wrap:wrap; gap:.5rem 1.6rem; margin-top:1rem; padding-top:.9rem;
                  border-top:1px solid var(--line-2); font-family:var(--mono); font-size:var(--t-1);
                  color:var(--dimmer); letter-spacing:.06em; }
  .laurel__meta b { color:var(--ice); font-weight:500; }

  .awards { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1px;
            background:var(--line); border:1px solid var(--line); }
  .aw { background:var(--void); padding:clamp(1.3rem,2.6vw,1.9rem); display:flex; flex-direction:column;
        gap:.6rem; transition:background .3s; }
  .aw:hover { background:var(--panel); }
  .aw__yr { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.16em; color:var(--dimmer); }
  .aw__n { font-size:var(--t1); font-weight:650; letter-spacing:-.02em; color:var(--ice); line-height:1.25; }
  .aw__d { font-size:.88rem; color:var(--dim); line-height:1.6; }
  .aw__b { font-family:var(--mono); font-size:.66rem; letter-spacing:.1em; text-transform:uppercase;
           color:var(--dimmer); margin-top:auto; padding-top:.8rem; border-top:1px solid var(--line);
           display:flex; align-items:center; gap:.5rem; }
  .aw__b::before { content:""; width:6px; height:6px; border:1px solid var(--violet); border-radius:50%; flex:none; }

  .creds { display:grid; grid-template-columns:1.1fr .9fr; gap:1px; background:var(--line);
           border:1px solid var(--line); }
  @media (max-width:820px){ .creds{grid-template-columns:1fr} }
  .cred { background:var(--void); padding:clamp(1.4rem,2.8vw,2rem); display:flex; flex-direction:column; gap:1rem; }
  .cred__h { font-size:var(--t1); font-weight:650; letter-spacing:-.02em; }
  .cred__s { font-size:.88rem; color:var(--dim); line-height:1.6; }
  .accred { display:flex; flex-wrap:wrap; gap:.45rem; }
  .accred li { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.06em; padding:.5rem .8rem;
               border:1px solid var(--line-2); color:var(--dim); transition:border-color .2s,color .2s; }
  .accred li:hover { border-color:var(--violet); color:var(--ice); }
  .accred--eq li:hover { border-color:var(--amber); }

  /* ---------- CTA ---------- */
  .cta { border:1px solid var(--violet); position:relative; overflow:hidden;
         background:radial-gradient(120% 140% at 10% 0%,color-mix(in srgb,var(--violet) 20%,transparent),transparent 60%),var(--panel);
         padding:clamp(2rem,4.5vw,3.4rem); display:grid; grid-template-columns:1.15fr .85fr;
         gap:clamp(1.75rem,4vw,3.2rem); align-items:center; }
  @media (max-width:820px){ .cta{grid-template-columns:1fr} }
  .cta__glyph { position:absolute; right:-5%; bottom:-38%; width:min(42%,380px); opacity:.12; pointer-events:none; }
  .cta > *:not(.cta__glyph) { position:relative; z-index:1; }
  .cta h2 { font-size:var(--t3); }
  .cta p { color:var(--dim); line-height:1.7; }
  .qual { border:1px solid var(--line-2); padding:1.3rem 1.4rem; display:flex; flex-direction:column; gap:.75rem;
          background:color-mix(in srgb,var(--void) 55%,transparent); }
  .qual__t { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.14em; text-transform:uppercase; color:var(--amber); }
  .qual li { display:grid; grid-template-columns:14px 1fr; gap:.7rem; font-size:.88rem; color:var(--dim); line-height:1.5; }
  .qual li::before { content:""; width:7px; height:7px; margin-top:.45rem; border:1px solid var(--amber); border-radius:50%; }

  /* ---------- FOOTER ---------- */
  .foot { border-top:1px solid var(--line); background:var(--void-2); }
  .foot__g { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:2rem; padding-block:clamp(2.5rem,4vw,3.5rem); }
  @media (max-width:760px){ .foot__g{grid-template-columns:1fr;gap:1.75rem} }
  .foot h5 { margin:0 0 .85rem; font-family:var(--mono); font-size:var(--t-1); letter-spacing:.14em;
             text-transform:uppercase; color:var(--dimmer); font-weight:400; }
  .foot li + li { margin-top:.45rem; }
  .foot a { color:var(--dim); text-decoration:none; font-size:.89rem; }
  .foot a:hover { color:var(--violet-b); }
  .foot__addr { color:var(--dim); font-size:.89rem; line-height:1.75; margin-top:1.2rem; }
  .foot__legal { border-top:1px solid var(--line); padding-block:1.4rem 2.5rem; display:flex; flex-wrap:wrap;
                 gap:1rem 2rem; justify-content:space-between; font-family:var(--mono); font-size:.66rem;
                 color:var(--dimmer); line-height:1.75; }
  .disclaim { max-width:76ch; }

  /* ---------- FAQ ---------- */
  .faqgrp { display:flex; flex-direction:column; gap:.6rem; }
  .faqgrp + .faqgrp { margin-top:2.4rem; }
  .faqgrp__h { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.16em; text-transform:uppercase;
               color:var(--violet-b); padding-bottom:.7rem; border-bottom:1px solid var(--line-2);
               margin-bottom:.5rem; display:flex; align-items:center; gap:.6rem; }
  .faqgrp__h::before { content:""; width:7px; height:7px; border:1px solid var(--violet); border-radius:50%; flex:none; }

  .qa { border:1px solid var(--line); background:var(--void); transition:border-color .2s, background .2s; }
  .qa[open] { border-color:var(--line-2); background:var(--panel); }
  .qa summary { cursor:pointer; list-style:none; padding:1.05rem 1.25rem; display:flex;
                justify-content:space-between; align-items:flex-start; gap:1.25rem;
                font-size:var(--t1); font-weight:600; letter-spacing:-.02em; color:var(--ice); }
  .qa summary::-webkit-details-marker { display:none; }
  .qa summary::after { content:"+"; font-family:var(--mono); font-weight:400; color:var(--violet-b);
                       flex:none; font-size:1.1rem; line-height:1.3; }
  .qa[open] summary::after { content:"–"; }
  .qa summary:hover { color:var(--violet-b); }
  .qa__a { padding:0 1.25rem 1.3rem; }
  .qa__a p { color:var(--dim); font-size:.94rem; line-height:1.72; max-width:74ch; }
  .qa__a p + p { margin-top:.8rem; }
  .qa__a strong { color:var(--ice); font-weight:600; }
  .qa__a ul { margin-top:.8rem; display:flex; flex-direction:column; gap:.45rem; }
  .qa__a li { display:grid; grid-template-columns:13px 1fr; gap:.7rem; font-size:.9rem;
              color:var(--dim); line-height:1.6; }
  .qa__a li::before { content:""; width:6px; height:6px; margin-top:.5rem; border:1px solid var(--violet);
                      border-radius:50%; }

  /* Regulatory quick-reference — built to be extracted, by people and machines */
  .reftable { border:1px solid var(--line); background:var(--panel); overflow-x:auto; }
  .reftable table { border-collapse:collapse; width:100%; min-width:560px; }
  .reftable caption { text-align:left; padding:1.1rem 1.25rem; font-family:var(--mono); font-size:var(--t-1);
                      letter-spacing:.14em; text-transform:uppercase; color:var(--dimmer);
                      border-bottom:1px solid var(--line); }
  .reftable th, .reftable td { text-align:left; padding:.85rem 1.25rem; border-bottom:1px solid var(--line);
                               font-size:.9rem; vertical-align:top; }
  .reftable th { font-family:var(--mono); font-size:var(--t-1); letter-spacing:.08em; text-transform:uppercase;
                 color:var(--dimmer); font-weight:400; width:34%; }
  .reftable td { color:var(--dim); }
  .reftable td b { color:var(--ice); font-weight:600; }
  .reftable tr:last-child th, .reftable tr:last-child td { border-bottom:none; }

  .rise { opacity:0; transform:translateY(16px); transition:opacity .8s ease, transform .8s cubic-bezier(.2,.7,.25,1); }
  .rise.in { opacity:1; transform:none; }
  @media (prefers-reduced-motion:reduce) {
    *,*::before,*::after { animation:none!important; transition:none!important; }
    .rise{opacity:1;transform:none} #field{display:none}
  }
