:root{
  --bg:#f8f1e2;
  --bg-soft:#fff8eb;
  --ink:#101218;
  --ink-soft:#2a2f3e;
  --line:rgba(16,18,24,0.24);

  --sun:#ffd23f;
  --fire:#ff5e3a;
  --sky:#2acbff;
  --acid:#bbff4f;
  --mint:#9df7e6;

  --paper:#fffdf7;
  --panel:#131722;

  --border-strong:2px;
  --border-ui:1.6px;
  --mobile-menu-offset:68px;
  --shadow:0 18px 38px rgba(16,18,24,0.16);
}

*{box-sizing:border-box;margin:0;padding:0;}
html,body{width:100%;overflow-x:hidden;}

body{
  font-family:'Bricolage Grotesque',sans-serif;
  color:var(--ink);
  min-height:100vh;
  background:
    radial-gradient(circle at 8% -16%,#fff8ea 0%,transparent 44%),
    radial-gradient(circle at 90% 2%,#ffe8ba 0%,transparent 40%),
    linear-gradient(180deg,var(--bg) 0%,var(--bg-soft) 100%);
}

body::before{
  content:'';
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-4;
  opacity:0.24;
  background-image:radial-gradient(rgba(16,18,24,0.11) 0.7px, transparent 0.7px);
  background-size:6px 6px;
}

.bg-blob{
  position:fixed;
  z-index:-2;
  pointer-events:none;
  border-radius:56% 44% 62% 38% / 44% 56% 45% 55%;
  filter:blur(26px);
  opacity:0.56;
  will-change:transform;
  mix-blend-mode:multiply;
  animation:blobDrift var(--dur,22s) ease-in-out infinite;
}

.bg-blob.a{width:340px;height:300px;background:rgba(42,203,255,0.32);top:-96px;right:-110px;--dx:66px;--dy:40px;--dur:24s;--rot:11deg;}
.bg-blob.b{width:250px;height:240px;background:rgba(255,94,58,0.24);left:-88px;top:36vh;--dx:48px;--dy:46px;--dur:20s;--rot:-12deg;animation-delay:-6s;}
.bg-blob.c{width:320px;height:290px;background:rgba(157,247,230,0.22);right:-86px;bottom:-66px;--dx:58px;--dy:38px;--dur:26s;--rot:9deg;animation-delay:-12s;}
.bg-blob.d{width:230px;height:210px;background:rgba(255,210,63,0.2);left:43%;top:53vh;--dx:36px;--dy:32px;--dur:18s;--rot:-7deg;animation-delay:-9s;}
.bg-blob.e{width:270px;height:220px;background:rgba(187,255,79,0.18);left:-114px;bottom:9vh;--dx:52px;--dy:28px;--dur:21s;--rot:10deg;animation-delay:-4s;animation-name:blobDriftAlt;}
.bg-blob.f{width:230px;height:250px;background:rgba(42,203,255,0.18);right:20%;top:12vh;--dx:34px;--dy:54px;--dur:19s;--rot:-10deg;animation-delay:-15s;animation-name:blobDriftAlt;}

@keyframes blobDrift{
  0%,100%{transform:translate3d(0,0,0) rotate(0deg) scale(1);} 
  35%{transform:translate3d(var(--dx),calc(var(--dy)*-0.7),0) rotate(var(--rot,0deg)) scale(1.11);} 
  70%{transform:translate3d(calc(var(--dx)*-0.75),var(--dy),0) rotate(calc(var(--rot,0deg)*-0.75)) scale(0.93);} 
}
@keyframes blobDriftAlt{
  0%,100%{transform:translate3d(0,0,0) rotate(0deg) scale(1);} 
  30%{transform:translate3d(calc(var(--dx)*-0.45),calc(var(--dy)*-0.85),0) rotate(calc(var(--rot,0deg)*-0.7)) scale(1.12);} 
  65%{transform:translate3d(calc(var(--dx)*0.92),calc(var(--dy)*0.65),0) rotate(var(--rot,0deg)) scale(0.94);} 
}

.topbar{
  position:sticky;
  top:0;
  z-index:40;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:14px 16px;
  border-bottom:var(--border-strong) solid var(--ink);
  background:rgba(248,241,226,0.84);
  backdrop-filter:blur(10px);
}

.brand{text-decoration:none;color:var(--ink);font-family:'Archivo Black',sans-serif;text-transform:uppercase;letter-spacing:0.03em;font-size:0.96rem;}
.brand span{font-family:'Instrument Serif',serif;text-transform:none;font-style:italic;font-size:1.03rem;margin-left:4px;}

.topnav{display:none;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.topnav a{text-decoration:none;color:var(--ink);background:#fff;border:var(--border-ui) solid var(--ink);border-radius:999px;padding:7px 12px;font-size:0.72rem;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;}

.menu-toggle{appearance:none;border:var(--border-ui) solid var(--ink);background:#fff;color:var(--ink);width:46px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;}
.menu-toggle .bars{display:grid;gap:4px;}
.menu-toggle .bars span{display:block;width:18px;height:2px;border-radius:999px;background:var(--ink);transition:transform 0.28s ease, opacity 0.2s ease;}
.menu-toggle[aria-expanded="true"] .bars span:nth-child(1){transform:translateY(6px) rotate(45deg);} 
.menu-toggle[aria-expanded="true"] .bars span:nth-child(2){opacity:0;} 
.menu-toggle[aria-expanded="true"] .bars span:nth-child(3){transform:translateY(-6px) rotate(-45deg);} 

.mega-menu{position:fixed;top:var(--mobile-menu-offset);left:0;right:0;bottom:0;z-index:30;background:rgba(16,18,24,0.6);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity 0.24s ease;}
.mega-menu.is-open{opacity:1;pointer-events:auto;}

.mega-menu-panel{position:absolute;top:0;left:0;right:0;max-height:100%;overflow:auto;transform:translateY(-105%);transition:transform 0.34s cubic-bezier(0.22,1,0.36,1);background:linear-gradient(180deg,#141823 0%,#1b2030 100%);border-bottom:var(--border-strong) solid #fff;color:#fff5df;padding:18px 16px 24px;}
.mega-menu.is-open .mega-menu-panel{transform:translateY(0);} 

.mega-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px;}
.mega-title{font-family:'Archivo Black',sans-serif;text-transform:uppercase;letter-spacing:0.06em;font-size:1rem;}
.menu-close{appearance:none;border:var(--border-ui) solid #fff;background:transparent;color:#fff;border-radius:10px;width:40px;height:36px;font-size:1.2rem;line-height:1;cursor:pointer;}

.mega-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;}
.mega-group{border:var(--border-ui) solid rgba(255,255,255,0.72);border-radius:14px;padding:10px;background:rgba(255,255,255,0.04);}
.mega-group h3{font-size:0.62rem;text-transform:uppercase;letter-spacing:0.15em;opacity:0.78;margin-bottom:8px;}
.mega-links{display:grid;gap:7px;}
.mega-links a{text-decoration:none;color:#fff;background:rgba(255,255,255,0.06);border:var(--border-ui) solid rgba(255,255,255,0.58);border-radius:10px;padding:9px 10px;font-size:0.86rem;font-weight:700;}

body.no-scroll{overflow:hidden;}

.page{max-width:1080px;margin:0 auto;padding:30px 16px 46px;}

.hero{border:var(--border-strong) solid var(--ink);border-radius:30px;background:rgba(255,255,255,0.88);box-shadow:var(--shadow);padding:20px;}
.eyebrow{
  display:inline-flex;
  align-items:center;
  width:max-content;
  background:#090c15;
  color:#fffef3;
  -webkit-text-fill-color:#fffef3;
  border:var(--border-ui) solid #090c15;
  border-radius:999px;
  padding:7px 13px;
  font-size:0.74rem;
  text-transform:uppercase;
  letter-spacing:0.14em;
  font-weight:900;
  line-height:1;
  text-shadow:0 0 10px rgba(255,255,255,0.12);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.14);
  transform:skewX(-10deg);
}
.hero h1{margin-top:12px;font-family:'Archivo Black',sans-serif;text-transform:uppercase;line-height:0.88;font-size:clamp(2.15rem,13vw,6rem);}
.hero h1 .accent{color:transparent;-webkit-text-stroke:1.2px var(--ink);background:repeating-linear-gradient(90deg,var(--ink) 0 8px,var(--sky) 8px 16px);-webkit-background-clip:text;background-clip:text;}
.hero p{margin-top:12px;line-height:1.65;max-width:760px;color:var(--ink-soft);}

.legal-index{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.legal-index a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;text-align:center;color:var(--ink);border:var(--border-ui) solid var(--ink);border-radius:12px;background:#fff;padding:9px 10px;font-size:0.7rem;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;}

.ticker{margin:22px 0 18px;margin-inline:calc(50% - 50vw);width:100vw;border-top:var(--border-strong) solid var(--ink);border-bottom:var(--border-strong) solid var(--ink);background:var(--ink);color:#fff;overflow:hidden;}
.track{display:flex;width:max-content;gap:32px;padding:12px 0;animation:marquee 22s linear infinite;}
.track span{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:1rem;letter-spacing:0.03em;}
.track span:nth-child(odd){color:var(--sun);} 
.track span:nth-child(even){color:var(--mint);} 
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

.doc{background:rgba(255,255,255,0.92);border:var(--border-strong) solid var(--ink);border-radius:30px;box-shadow:var(--shadow);padding:20px;}
.doc h2{font-family:'Archivo Black',sans-serif;text-transform:uppercase;line-height:0.94;font-size:clamp(1.34rem,7.2vw,2.2rem);margin-top:34px;padding-top:22px;border-top:1px solid var(--line);scroll-margin-top:96px;}
.doc h2:first-of-type{margin-top:0;padding-top:0;border-top:none;}
.doc h3{margin-top:20px;font-size:1.04rem;font-weight:800;scroll-margin-top:96px;}
.doc p{margin-top:10px;line-height:1.72;color:var(--ink-soft);} 
.doc strong{color:var(--ink);} 
.doc em{font-style:italic;} 
.doc a{color:var(--ink);text-decoration:none;border-bottom:1px dotted rgba(16,18,24,0.38);} 
.doc ul{list-style:none;margin-top:10px;display:grid;gap:7px;} 
.doc li{position:relative;padding-left:22px;line-height:1.62;color:var(--ink-soft);} 
.doc li::before{content:'›';position:absolute;left:6px;top:0;color:var(--fire);font-weight:900;} 

code{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;background:#fff3d9;border:1px solid rgba(16,18,24,0.15);border-radius:6px;padding:2px 6px;font-size:0.85rem;color:var(--ink);} 

.highlight{margin-top:12px;background:linear-gradient(120deg,#fff8e8,#fff2d2);border:var(--border-ui) solid var(--ink);border-left:8px solid var(--sun);border-radius:14px;padding:12px 14px;line-height:1.65;} 

.footer{margin-top:22px;border-top:var(--border-strong) solid var(--ink);padding-top:14px;display:flex;flex-direction:column;gap:10px;} 
.footer-links{display:flex;gap:10px;flex-wrap:wrap;} 
.footer-links a{text-decoration:none;color:var(--ink);border:var(--border-ui) solid var(--ink);border-radius:999px;background:#fff;padding:8px 12px;font-size:0.72rem;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;} 
.footer-credit{font-size:0.8rem;line-height:1.52;color:var(--ink-soft);} 
.footer-credit a{color:var(--ink);} 

@media (min-width:760px){
  .topbar{padding:16px 24px;}
  .topnav{display:flex;}
  .menu-toggle,.mega-menu{display:none !important;}
  .page{padding:44px 24px 56px;}
  .hero,.doc{padding:24px;}
  .legal-index{grid-template-columns:repeat(5,minmax(0,1fr));}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;}
}
