@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800;900&display=swap');

/* ═══════════════════════════════════════════════════════
   HUSH — LEGAL DOCUMENTS
   Design: Refined · Mature · Dark-first · No emojis
   Colors: #7B2FBE · #00D4FF · #0D0D0D
   Font: Poppins exclusive
   ═══════════════════════════════════════════════════════ */

:root {
  --p:          #7B2FBE;
  --c:          #00D4FF;
  --p-dim:      rgba(123,47,190,0.15);
  --p-border:   rgba(123,47,190,0.30);
  --c-dim:      rgba(0,212,255,0.10);
  --glow:       rgba(123,47,190,0.25);
  --glow-c:     rgba(0,212,255,0.12);

  --bg:         #0D0D0D;
  --bg2:        #111116;
  --s1:         rgba(255,255,255,0.032);
  --s2:         rgba(255,255,255,0.052);
  --s3:         rgba(255,255,255,0.075);

  --t1:         #EEEEF8;
  --t2:         #8888A8;
  --t3:         #484862;

  --b0:         rgba(255,255,255,0.058);
  --ba:         rgba(123,47,190,0.32);

  --r8:  8px;
  --r12: 12px;
  --r16: 16px;
  --r20: 20px;
  --r28: 28px;

  --gm:  linear-gradient(135deg,#7B2FBE 0%,#00D4FF 100%);
  --gt:  linear-gradient(118deg,#C084FC 0%,#00D4FF 100%);
  --gs:  linear-gradient(135deg,rgba(123,47,190,0.13) 0%,rgba(0,212,255,0.05) 100%);

  --sh:  0 2px 24px rgba(0,0,0,0.50);
  --sg:  0 0 56px rgba(123,47,190,0.16);
}

[data-theme="light"] {
  --bg:   #F0EDFB;
  --bg2:  #E8E3F7;
  --s1:   rgba(123,47,190,0.042);
  --s2:   rgba(123,47,190,0.068);
  --s3:   rgba(123,47,190,0.095);

  --t1:   #120C22;
  --t2:   #473668;
  --t3:   #8878AA;

  --b0:   rgba(123,47,190,0.090);
  --ba:   rgba(123,47,190,0.28);

  --gt:  linear-gradient(118deg,#7B2FBE 0%,#009AB8 100%);
  --gs:  linear-gradient(135deg,rgba(123,47,190,0.09) 0%,rgba(0,180,220,0.05) 100%);

  --sh:  0 2px 24px rgba(123,47,190,0.09);
  --sg:  0 0 56px rgba(123,47,190,0.09);
  --glow: rgba(123,47,190,0.12);
}

/* ── RESET ── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%}
body{
  font-family:'Poppins',sans-serif;
  background:var(--bg);color:var(--t1);
  line-height:1.80;overflow-x:hidden;
  transition:background .35s,color .35s;
  min-height:100vh;
}
::selection{background:rgba(123,47,190,.30);color:var(--t1)}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--p);border-radius:99px}
::-webkit-scrollbar-thumb:hover{background:#9B4FE0}
a{color:var(--c);text-decoration:none;transition:opacity .2s}
a:hover{opacity:.75;text-decoration:underline}

/* ── GRAIN ── */
body::after{
  content:'';position:fixed;inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='250' height='250'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='250' height='250' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
  opacity:.020;pointer-events:none;z-index:0;
}

/* ── AMBIENT ── */
.orb{position:fixed;border-radius:50%;filter:blur(120px);pointer-events:none;z-index:0;animation:drift 18s ease-in-out infinite}
.orb-a{width:560px;height:560px;top:-180px;left:-140px;background:radial-gradient(circle,rgba(123,47,190,.14) 0%,transparent 68%)}
.orb-b{width:400px;height:400px;bottom:8%;right:-100px;background:radial-gradient(circle,rgba(0,212,255,.08) 0%,transparent 68%);animation-duration:24s;animation-direction:reverse}
@keyframes drift{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(16px,-22px) scale(1.03)}66%{transform:translate(-12px,18px) scale(.97)}}

/* ── PROGRESS ── */
#prog{position:fixed;top:0;left:0;height:2px;width:0;background:var(--gm);z-index:400;box-shadow:0 0 12px var(--glow);transition:width .08s linear}

/* ═══════════════ HEADER ═══════════════ */
.hdr{
  position:sticky;top:0;z-index:200;
  height:58px;display:flex;align-items:center;justify-content:space-between;
  padding:0 28px;
  background:rgba(13,13,13,.84);
  backdrop-filter:blur(24px) saturate(160%);
  -webkit-backdrop-filter:blur(24px) saturate(160%);
  border-bottom:1px solid var(--b0);
  transition:background .35s;
}
[data-theme="light"] .hdr{background:rgba(240,237,251,.90)}

.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand img{width:28px;height:28px;border-radius:7px;object-fit:cover;display:block}
.brand-txt{
  font-size:16px;font-weight:800;letter-spacing:-.35px;
  background:var(--gt);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}

/* Toggle */
.tog{display:flex;align-items:center;gap:8px;cursor:pointer;user-select:none;padding:5px 10px;border-radius:99px;border:1px solid var(--b0);transition:border-color .2s,background .2s}
.tog:hover{border-color:var(--ba);background:var(--s1)}
.tog svg{width:13px;height:13px;fill:var(--t3);transition:fill .2s}
.tog:hover svg{fill:var(--t2)}
.tog-track{width:34px;height:18px;background:var(--s2);border-radius:99px;border:1px solid var(--ba);position:relative}
.tog-knob{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--gm);transition:transform .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 0 8px var(--glow)}
[data-theme="light"] .tog-knob{transform:translateX(16px)}

/* ── NAV TABS ── */
.nav-tabs{display:flex;align-items:center;gap:4px;padding:0 28px;height:46px;background:var(--bg2);border-bottom:1px solid var(--b0);position:sticky;top:58px;z-index:190;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}
.nav-tabs::-webkit-scrollbar{display:none}
.nav-tab{
  display:flex;align-items:center;gap:6px;
  padding:6px 16px;border-radius:99px;
  font-size:12px;font-weight:600;letter-spacing:.02em;
  color:var(--t3);cursor:pointer;white-space:nowrap;
  border:1px solid transparent;
  transition:all .2s;background:none;font-family:'Poppins',sans-serif;
}
.nav-tab svg{width:12px;height:12px;fill:currentColor}
.nav-tab.active{background:var(--p-dim);border-color:var(--ba);color:var(--t1)}
.nav-tab:hover:not(.active){background:var(--s1);color:var(--t2)}

/* ═══════════════ LAYOUT ═══════════════ */
.wrap{position:relative;z-index:1;max-width:860px;margin:0 auto;padding:0 24px 100px}
.doc-section{display:none}
.doc-section.active{display:block}

/* ═══════════════ HERO ═══════════════ */
.hero{padding:56px 0 44px;text-align:center}
.hero-pill{
  display:inline-flex;align-items:center;gap:7px;
  padding:5px 14px;background:var(--p-dim);border:1px solid var(--ba);
  border-radius:99px;font-size:10px;font-weight:700;
  color:var(--c);letter-spacing:.10em;text-transform:uppercase;margin-bottom:20px;
}
.pill-dot{width:5px;height:5px;border-radius:50%;background:var(--c);animation:blink 2s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.72)}}
.hero h1{
  font-size:clamp(28px,5.5vw,48px);font-weight:800;letter-spacing:-.8px;line-height:1.12;
  margin-bottom:12px;
  background:var(--gt);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px 12px;font-size:12px;color:var(--t3)}
.hm-item{display:flex;align-items:center;gap:5px}
.hm-item svg{width:12px;height:12px;fill:var(--t3)}
.hm-sep{width:3px;height:3px;border-radius:50%;background:var(--ba)}

/* ═══════════════ TOC ═══════════════ */
.toc{
  position:relative;background:var(--gs);border:1px solid var(--ba);
  border-radius:var(--r20);padding:26px 30px 22px;margin-bottom:36px;
}
.toc-head{display:flex;align-items:center;gap:9px;margin-bottom:18px}
.toc-head svg{width:14px;height:14px;fill:var(--p);flex-shrink:0}
.toc-head span{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.13em;color:var(--t2)}
.toc-head::after{content:'';flex:1;height:1px;background:var(--b0)}
.toc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2px 10px}
.toc-lnk{
  display:flex;align-items:center;gap:8px;padding:5px 8px;
  border-radius:var(--r8);text-decoration:none;color:var(--t2);
  font-size:12px;font-weight:400;transition:color .18s,background .18s;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.toc-lnk:hover{color:var(--t1);background:var(--s2);text-decoration:none}
.toc-n{font-size:9px;font-weight:700;color:var(--t3);min-width:18px;font-variant-numeric:tabular-nums}

/* ═══════════════ SECTION DIVIDER ═══════════════ */
.sdiv{
  display:flex;align-items:center;gap:10px;
  margin:40px 0 22px;font-size:9px;font-weight:800;
  text-transform:uppercase;letter-spacing:.14em;color:var(--t3);
}
.sdiv::before,.sdiv::after{content:'';flex:1;height:1px}
.sdiv::before{background:linear-gradient(90deg,transparent,var(--b0))}
.sdiv::after{background:linear-gradient(90deg,var(--b0),transparent)}

/* ═══════════════ ARTICLE CARD ═══════════════ */
.card{
  position:relative;background:var(--s1);border:1px solid var(--b0);
  border-radius:var(--r20);padding:30px 34px;margin-bottom:14px;
  overflow:hidden;transition:border-color .25s,transform .25s,box-shadow .25s,background .25s;
  animation:fu .42s ease both;
}
.card::after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--p),transparent);opacity:0;transition:opacity .3s}
.card:hover{border-color:var(--ba);background:var(--s2);transform:translateY(-2px);box-shadow:var(--sh),var(--sg)}
.card:hover::after{opacity:.65}
@keyframes fu{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}

/* staggered */
.card:nth-child(1){animation-delay:.04s}.card:nth-child(2){animation-delay:.08s}
.card:nth-child(3){animation-delay:.12s}.card:nth-child(4){animation-delay:.16s}
.card:nth-child(5){animation-delay:.20s}.card:nth-child(6){animation-delay:.24s}
.card:nth-child(7){animation-delay:.28s}.card:nth-child(8){animation-delay:.32s}
.card:nth-child(9){animation-delay:.36s}.card:nth-child(10){animation-delay:.40s}
.card:nth-child(11){animation-delay:.44s}.card:nth-child(12){animation-delay:.48s}

.c-hdr{display:flex;align-items:flex-start;gap:13px;margin-bottom:20px}
.c-num{
  min-width:36px;height:36px;border-radius:10px;background:var(--gm);
  display:flex;align-items:center;justify-content:center;
  font-size:11.5px;font-weight:800;color:#fff;flex-shrink:0;
  box-shadow:0 4px 14px var(--glow);letter-spacing:.02em;
}
.c-meta{flex:1;padding-top:2px}
.c-meta h2{font-size:15.5px;font-weight:700;color:var(--t1);line-height:1.28;margin-bottom:5px}
.c-tag{
  display:inline-block;padding:2px 9px;background:var(--p-dim);border:1px solid var(--ba);
  border-radius:99px;font-size:9px;font-weight:700;color:var(--c);
  text-transform:uppercase;letter-spacing:.08em;
}

.card p{font-size:13.5px;color:var(--t2);line-height:1.85;margin-bottom:12px;font-weight:400}
.card p:last-child{margin-bottom:0}
.card strong{color:var(--t1);font-weight:600}
.card ul,.card ol{list-style:none;margin:7px 0 12px;padding:0}
.card li{
  position:relative;font-size:13.5px;color:var(--t2);line-height:1.78;
  padding:6px 0 6px 20px;font-weight:400;
  border-bottom:1px solid rgba(255,255,255,.025);
}
[data-theme="light"] .card li{border-bottom-color:rgba(123,47,190,.05)}
.card li:last-child{border-bottom:none}
.card li::before{content:'';position:absolute;left:5px;top:50%;transform:translateY(-50%);width:4px;height:4px;border-radius:50%;background:var(--p);opacity:.7}

/* ─── INFO BOX ─── */
.ibox{
  display:flex;align-items:flex-start;gap:12px;
  background:var(--s1);border:1px solid var(--ba);border-radius:var(--r12);
  padding:14px 17px;margin:13px 0;
}
.ibox-ico{width:30px;height:30px;border-radius:8px;background:var(--p-dim);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.ibox-ico svg{width:14px;height:14px;fill:var(--p)}
.ibox-body{flex:1}
.ibox-body strong{display:block;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.10em;color:var(--c);margin-bottom:4px}
.ibox-body p{font-size:12.5px;color:var(--t2);margin:0;line-height:1.72}

/* ─── GUARANTEE ─── */
.gbox{
  display:flex;align-items:flex-start;gap:12px;
  background:linear-gradient(135deg,rgba(123,47,190,.11) 0%,rgba(0,212,255,.05) 100%);
  border:1px solid var(--ba);border-radius:var(--r12);
  padding:15px 18px;margin:13px 0;
}
.gbox-ico{width:32px;height:32px;border-radius:9px;background:var(--gm);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.gbox-ico svg{width:15px;height:15px;fill:#fff}
.gbox-body strong{display:block;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.10em;color:var(--t1);margin-bottom:4px}
.gbox-body p{font-size:12.5px;color:var(--t2);margin:0;line-height:1.72}

/* ─── WARNING ─── */
.wbox{
  display:flex;align-items:flex-start;gap:12px;
  background:rgba(255,75,75,.055);border:1px solid rgba(255,75,75,.22);
  border-radius:var(--r12);padding:14px 17px;margin:13px 0;
}
.wbox-ico{width:30px;height:30px;border-radius:8px;background:rgba(255,75,75,.14);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.wbox-ico svg{width:14px;height:14px;fill:#FF6868}
.wbox-body strong{display:block;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.10em;color:#FF8888;margin-bottom:4px}
.wbox-body p{font-size:12.5px;color:var(--t2);margin:0;line-height:1.72}

/* ─── THIRD PARTY ─── */
.tp-list{display:flex;flex-direction:column;gap:8px;margin-top:13px}
.tp-item{
  display:grid;grid-template-columns:140px 1fr;gap:8px 13px;align-items:start;
  padding:12px 15px;background:var(--s1);border:1px solid var(--b0);
  border-radius:var(--r12);transition:border-color .2s,background .2s;
}
.tp-item:hover{border-color:var(--ba);background:var(--s2)}
.tp-name{font-size:12px;font-weight:700;color:var(--t1);display:flex;align-items:center;gap:6px}
.tp-name svg{width:12px;height:12px;fill:var(--p);flex-shrink:0}
.tp-role{font-size:12px;color:var(--t2);line-height:1.62}

/* ─── RIGHTS GRID ─── */
.rg{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:9px;margin-top:13px}
.rc{padding:14px 15px;background:var(--s1);border:1px solid var(--b0);border-radius:var(--r12);transition:all .22s}
.rc:hover{border-color:var(--ba);transform:translateY(-2px);box-shadow:0 8px 22px var(--glow)}
.rc-ico{width:28px;height:28px;border-radius:8px;background:var(--p-dim);display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.rc-ico svg{width:13px;height:13px;fill:var(--p)}
.rc-name{font-size:12px;font-weight:700;color:var(--t1);margin-bottom:3px}
.rc-desc{font-size:11px;color:var(--t3);line-height:1.52}

/* ─── TIMELINE ─── */
.tl{position:relative;padding-left:22px;margin-top:13px}
.tl::before{content:'';position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:linear-gradient(to bottom,var(--p),rgba(0,212,255,.3),transparent);border-radius:99px}
.tl-it{position:relative;margin-bottom:16px;padding-left:17px}
.tl-it::before{content:'';position:absolute;left:-17px;top:7px;width:9px;height:9px;border-radius:50%;background:var(--p);border:2px solid var(--bg);box-shadow:0 0 10px var(--glow)}
[data-theme="light"] .tl-it::before{border-color:var(--bg)}
.tl-lbl{font-size:11px;font-weight:700;color:var(--c);margin-bottom:2px;letter-spacing:.02em}
.tl-val{font-size:13px;color:var(--t2);line-height:1.68}

/* ─── FORBIDDEN LIST ─── */
.flist{list-style:none;margin:8px 0;padding:0}
.flist li{
  display:flex;align-items:flex-start;gap:9px;
  font-size:13px;color:var(--t2);line-height:1.72;
  padding:6px 0;border-bottom:1px solid rgba(255,255,255,.025);
}
[data-theme="light"] .flist li{border-bottom-color:rgba(123,47,190,.05)}
.flist li:last-child{border-bottom:none}
.flist li::before{display:none}
.flist-ico{width:16px;height:16px;flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center}
.flist-ico svg{width:12px;height:12px;fill:#FF6868}

/* ─── CONTACT BLOCK ─── */
.cblock{
  background:var(--gm);border-radius:var(--r20);padding:24px 28px;
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;flex-wrap:wrap;
  box-shadow:0 8px 36px var(--glow);margin-top:13px;
}
.cblock h3{font-size:16px;font-weight:700;color:#fff;margin-bottom:3px}
.cblock p{font-size:12px;color:rgba(255,255,255,.70);margin:0}
.cbtn{
  display:inline-flex;align-items:center;gap:7px;
  padding:10px 20px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.28);
  border-radius:99px;color:#fff;font-family:'Poppins',sans-serif;
  font-size:12px;font-weight:600;text-decoration:none;
  backdrop-filter:blur(8px);transition:all .22s;white-space:nowrap;
}
.cbtn svg{width:12px;height:12px;fill:#fff}
.cbtn:hover{background:rgba(255,255,255,.22);transform:translateY(-2px);text-decoration:none}

/* ─── BACK TO TOP ─── */
#btt{
  position:fixed;bottom:24px;right:20px;width:38px;height:38px;
  border-radius:50%;background:var(--gm);border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 16px var(--glow);opacity:0;transform:translateY(10px);
  transition:opacity .3s,transform .3s;z-index:99;
}
#btt svg{width:14px;height:14px;fill:#fff}
#btt.vis{opacity:1;transform:translateY(0)}
#btt:hover{transform:translateY(-3px)}

/* ═══════════════ FOOTER ═══════════════ */
.ftr{margin-top:64px;padding-top:28px;border-top:1px solid var(--b0);text-align:center}
.ftr-brand{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:9px;text-decoration:none}
.ftr-brand img{width:24px;height:24px;border-radius:6px;object-fit:cover}
.ftr-brand span{font-size:14px;font-weight:800;background:var(--gt);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.ftr-links{display:flex;justify-content:center;gap:16px;margin-bottom:10px}
.ftr-links a{font-size:11px;color:var(--t3);transition:color .2s}
.ftr-links a:hover{color:var(--t2);text-decoration:none}
.ftr-copy{font-size:11px;color:var(--t3);margin-bottom:8px}
.ftr-ver{
  display:inline-flex;align-items:center;gap:5px;
  padding:3px 10px;background:var(--p-dim);border:1px solid var(--ba);
  border-radius:99px;font-size:9px;font-weight:700;color:var(--c);letter-spacing:.07em;
}
.ftr-ver svg{width:9px;height:9px;fill:var(--c)}

/* ═══════════════ RESPONSIVE ═══════════════ */
@media(max-width:640px){
  .wrap{padding:0 14px 72px}
  .card{padding:20px 16px}
  .toc{padding:18px 16px}
  .toc-grid{grid-template-columns:1fr}
  .rg{grid-template-columns:1fr 1fr}
  .tp-item{grid-template-columns:1fr;gap:4px}
  .cblock{flex-direction:column;align-items:flex-start}
  .hdr{padding:0 14px}
  .nav-tabs{padding:0 14px}
}
@media(max-width:380px){.rg{grid-template-columns:1fr}}