:root{
  --ink:#030710;
  --ice:#8fe3ff;
  --ice-hi:#eaf8ff;
  --text-dim:#7fa8c4;
  --panel:rgba(4,10,22,.66);
  --line:rgba(143,227,255,.16);
  --font-ui:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;
}

*{ margin:0; padding:0; box-sizing:border-box; }
html,body{ min-height:100%; background:var(--ink); color:var(--ice-hi); font-family:var(--font-ui); }
body{ overflow-x:hidden; }

#legal-bg{
  position:fixed; inset:0; width:100%; height:100%; display:block; z-index:0;
  filter:saturate(1.08) brightness(1.02);
}
.legal-shell::before{
  content:""; position:fixed; inset:0; z-index:1; pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 20%, rgba(3,7,16,0) 18%, rgba(3,7,16,.72) 100%),
    linear-gradient(180deg, rgba(3,7,16,.18), rgba(3,7,16,.78));
}

.chrome1-top{
  position:fixed; top:0; left:0; right:0; z-index:20;
  display:flex; justify-content:space-between; align-items:center;
  padding:28px clamp(24px,5vw,64px);
}
.brand1{ font-size:13px; letter-spacing:3px; font-weight:600; display:flex; align-items:center; gap:9px; color:var(--ice-hi); text-decoration:none; }
.brand1 span{ color:var(--ice); }
.bat-lottie1{ display:inline-block; width:33px; height:33px; flex-shrink:0; filter:drop-shadow(0 0 6px rgba(143,227,255,.55)); }
.bat-lottie1 svg{ width:100%; height:100%; }

.tag1{
  font-size:10.5px; letter-spacing:2.5px; color:var(--text-dim);
  padding:7px 14px; border:1px solid rgba(143,227,255,.22); border-radius:100px;
  backdrop-filter:blur(10px); background:rgba(143,227,255,.04);
  font-family:inherit; appearance:none; -webkit-appearance:none; cursor:pointer;
  display:inline-flex; align-items:center; gap:7px; line-height:1;
  transition:border-color .25s,color .25s,background .25s;
}
.tag1:hover,.tag1[aria-expanded="true"]{ border-color:rgba(143,227,255,.5); color:var(--ice-hi); background:rgba(143,227,255,.08); }
.lang1-chevron{ flex-shrink:0; transition:transform .25s ease; }
.tag1[aria-expanded="true"] .lang1-chevron{ transform:rotate(180deg); }
.lang1-wrap{ position:relative; }
.lang1-menu{
  position:absolute; top:calc(100% + 10px); right:0; z-index:30;
  list-style:none; margin:0; padding:6px; min-width:148px;
  background:rgba(6,14,26,.94); backdrop-filter:blur(18px);
  border:1px solid rgba(143,227,255,.18); border-radius:14px;
  box-shadow:0 24px 60px rgba(0,0,0,.55);
  opacity:0; transform:translateY(-6px); pointer-events:none;
  transition:opacity .22s ease,transform .22s ease;
}
.lang1-menu.open{ opacity:1; transform:translateY(0); pointer-events:auto; }
.lang1-menu[hidden]{ display:block; }
.lang1-menu li{
  font-size:12.5px; letter-spacing:.3px; color:var(--text-dim);
  padding:9px 12px; border-radius:9px; cursor:pointer; white-space:nowrap;
  transition:background .18s,color .18s;
}
.lang1-menu li:hover{ background:rgba(143,227,255,.09); color:var(--ice-hi); }
.lang1-menu li[aria-selected="true"]{ color:var(--ice); font-weight:600; }

.legal-main{
  position:relative; z-index:5; width:min(920px, calc(100% - 44px));
  margin:0 auto; padding:132px 0 88px;
}
.legal-hero{ margin-bottom:34px; }
.legal-kicker{
  font-size:11px; letter-spacing:3px; color:var(--ice); font-weight:700;
  margin-bottom:16px; text-transform:uppercase;
}
.legal-title{
  font-size:clamp(34px, 7vw, 72px); line-height:1.02; letter-spacing:0;
  color:var(--ice-hi); text-shadow:0 0 30px rgba(143,227,255,.25);
}
.legal-subtitle{
  margin-top:18px; max-width:680px; color:var(--text-dim);
  font-size:16px; line-height:1.8;
}
.legal-meta{
  display:flex; flex-wrap:wrap; gap:12px; margin-top:22px;
  color:rgba(127,168,196,.82); font-size:12px; letter-spacing:1px;
}
.legal-meta a{ color:var(--ice); text-decoration:none; }

.legal-card{
  background:var(--panel); border:1px solid var(--line);
  backdrop-filter:blur(20px); border-radius:8px;
  box-shadow:0 24px 80px rgba(0,0,0,.34);
  padding:clamp(22px, 4vw, 42px);
}
.legal-section + .legal-section{ margin-top:34px; padding-top:30px; border-top:1px solid rgba(143,227,255,.1); }
.legal-section h2{
  color:var(--ice-hi); font-size:20px; line-height:1.35; letter-spacing:.2px; margin-bottom:14px;
}
.legal-section p,.legal-section li{
  color:var(--text-dim); font-size:14.5px; line-height:1.86;
}
.legal-section p + p{ margin-top:12px; }
.legal-section ul{ margin-left:20px; display:grid; gap:8px; }
.legal-section a{ color:var(--ice); text-decoration:none; }
.legal-footer{
  margin-top:26px; color:rgba(127,168,196,.7); font-size:12px; line-height:1.7;
}

@media (hover:none), (pointer:coarse){
  .brand1,.tag1{ -webkit-tap-highlight-color:transparent; }
}
@media (max-width:760px){
  .chrome1-top{
    padding:16px 18px;
    padding-top:calc(16px + env(safe-area-inset-top));
  }
  .brand1{ font-size:12px; letter-spacing:2.5px; }
  .legal-main{
    width:calc(100% - 44px);
    padding:calc(96px + env(safe-area-inset-top)) 0 calc(56px + env(safe-area-inset-bottom));
  }
  .legal-title{ font-size:clamp(31px, 10vw, 42px); }
  .legal-subtitle{ font-size:14px; line-height:1.75; }
  .legal-card{ padding:22px; }
  .legal-section h2{ font-size:17px; }
  .legal-section p,.legal-section li{ font-size:13.5px; line-height:1.78; }
}
