*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#05080f;
  --bg2:#0a111e;
  --bg3:#0f1828;
  --bg4:#152138;
  --blue:#2f80ff;
  --blue2:#1a5ccc;
  --blue-border:rgba(47,128,255,0.45);
  --white:#eef3ff;
  --grey:#8090ab;
  --gold:#f5b324;
  --gold-border:rgba(245,179,36,0.45);
  --green:#34d399;
  --font:'Inter',sans-serif;
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--white);font-family:var(--font);line-height:1.5;overflow-x:hidden;min-height:100vh;display:flex;flex-direction:column}
::selection{background:rgba(47,128,255,0.3)}
::-webkit-scrollbar{width:4px;background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--blue)}

/* ── ANNOUNCEMENT BAR ── */
.announce{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;background:linear-gradient(90deg,#0a1424,#10203a,#0a1424);border-bottom:1px solid rgba(47,128,255,0.12);padding:9px 16px;font-size:12px;font-weight:600;color:var(--grey);letter-spacing:.02em;position:relative;z-index:101}
.announce span{display:inline-flex;align-items:center;gap:6px}
.announce b{color:var(--white)}
.announce .sep{opacity:.3}
.announce svg{width:14px;height:14px;stroke:var(--blue);fill:none;stroke-width:2}
@media(max-width:600px){.announce{font-size:11px;gap:10px;padding:8px 12px}.announce .hide-sm{display:none}}

/* ── NAV ── */
header.site-nav{position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:30px;padding:0 44px;height:64px;background:rgba(5,8,15,0.72);border-bottom:1px solid rgba(47,128,255,0.10);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);transition:background .3s,box-shadow .3s,border-color .3s}
header.site-nav.scrolled{background:rgba(5,8,15,0.93);box-shadow:0 10px 34px rgba(0,0,0,0.5);border-bottom-color:rgba(47,128,255,0.20)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.brand-mark{width:40px;height:40px;object-fit:contain;display:block;transition:transform .3s}
.brand:hover .brand-mark{transform:translateX(2px)}
.brand-name{font-size:16px;font-weight:800;letter-spacing:.22em;color:var(--white)}
.nav-links{display:flex;align-items:center;gap:30px}
.nav-links a{font-size:13.5px;font-weight:500;letter-spacing:.01em;color:var(--grey);text-decoration:none;position:relative;padding:4px 0;transition:color .2s}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:2px;background:var(--blue);border-radius:2px;transition:width .25s ease}
.nav-links a:hover{color:var(--white)}
.nav-links a:hover::after{width:100%}
.nav-right{margin-left:auto;display:flex;gap:8px;align-items:center}
.nav-ico{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:background .2s}
.nav-ico:hover{background:var(--bg3)}
.nav-ico svg{width:21px;height:21px;stroke:var(--grey);fill:none;stroke-width:1.8}
.nav-ico:hover svg{stroke:var(--white)}
.nav-toggle{display:none;width:40px;height:40px;border:none;background:transparent;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.nav-toggle span{display:block;width:20px;height:2px;background:var(--white);border-radius:2px;transition:transform .3s,opacity .3s}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{position:fixed;top:0;right:0;height:100%;width:min(80vw,310px);background:var(--bg2);border-left:1px solid rgba(47,128,255,0.15);z-index:200;transform:translateX(100%);transition:transform .32s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;padding:28px 26px 30px;gap:0;box-shadow:-24px 0 60px rgba(0,0,0,0.55)}
.mobile-menu.open{transform:translateX(0)}
.mobile-menu-head{padding:6px 6px 18px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,0.06)}
.mobile-menu-head .brand{text-decoration:none}
.mobile-menu-head .brand-name{font-size:15px;letter-spacing:.2em}
.mobile-menu a{font-size:16px;font-weight:600;color:var(--white);text-decoration:none;padding:15px 6px;border-bottom:1px solid rgba(255,255,255,0.06);transition:color .2s}
.mobile-menu a:hover{color:var(--blue)}
.menu-backdrop{position:fixed;inset:0;background:rgba(0,0,0,0.55);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:150}
.menu-backdrop.open{opacity:1;visibility:visible}

/* ── LEGAL CONTENT ── */
main{flex:1 0 auto}
.legal-hero{max-width:780px;margin:0 auto;padding:58px 24px 4px;text-align:center}
.legal-hero h1{font-size:clamp(30px,4.2vw,44px);font-weight:900;letter-spacing:-.01em;line-height:1.08}
.legal-updated{color:var(--grey);font-size:13px;margin-top:12px}
.legal-wrap{max-width:780px;margin:0 auto;padding:26px 24px 72px}
.legal-wrap h2{font-size:20px;font-weight:800;color:var(--white);margin:36px 0 12px;letter-spacing:-.005em}
.legal-wrap h2:first-child{margin-top:18px}
.legal-wrap p{font-size:15px;color:#c4cddd;line-height:1.85;margin-bottom:14px}
.legal-wrap ul,.legal-wrap ol{list-style:none;margin:4px 0 18px;padding:0;display:flex;flex-direction:column;gap:9px}
.legal-wrap li{position:relative;padding-left:22px;font-size:15px;color:#c4cddd;line-height:1.7}
.legal-wrap li::before{content:"";position:absolute;left:2px;top:10px;width:6px;height:6px;border-radius:50%;background:var(--blue)}
.legal-wrap ol{counter-reset:step}
.legal-wrap ol li::before{content:counter(step);counter-increment:step;background:rgba(47,128,255,0.15);color:var(--blue);width:20px;height:20px;border-radius:50%;top:1px;left:0;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
.legal-wrap ol li{padding-left:30px}
.legal-wrap a{color:var(--blue);text-decoration:none}
.legal-wrap a:hover{text-decoration:underline}
.legal-note{background:var(--bg2);border:1px solid rgba(47,128,255,0.15);border-left:3px solid var(--blue);border-radius:10px;padding:15px 18px;font-size:13px;color:var(--grey);line-height:1.7;margin-bottom:8px}
.legal-contact{background:var(--bg2);border:1px solid rgba(255,255,255,0.06);border-radius:12px;padding:20px 22px;margin-top:26px}
.legal-contact .ct-line{font-size:14px;color:#c4cddd;line-height:1.9}
.legal-contact b{color:var(--white)}
.legal-back{display:inline-flex;align-items:center;gap:8px;margin-top:36px;font-size:13.5px;font-weight:600;color:var(--blue);text-decoration:none}
.legal-back:hover{text-decoration:underline}

/* ── CONTACT PAGE ── */
.contact-sub{color:var(--grey);font-size:15px;margin-top:14px;line-height:1.5}
.contact-wrap{max-width:520px;margin:0 auto;padding:32px 24px 72px}
.contact-form{background:var(--bg2);border:1px solid var(--gold-border);border-radius:14px;padding:28px 26px;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 50px rgba(0,0,0,0.35),0 0 0 1px rgba(245,179,36,0.06)}
.contact-form input,.contact-form textarea{width:100%;background:var(--bg);border:1px solid rgba(245,179,36,0.28);border-radius:10px;padding:13px 15px;color:var(--white);font-family:var(--font);font-size:14px;transition:border-color .2s,box-shadow .2s}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(128,144,171,0.65)}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(245,179,36,0.15)}
.contact-form textarea{resize:vertical;min-height:140px;line-height:1.6}
.contact-form button{background:var(--gold);color:#0a0e18;border:none;border-radius:10px;font-family:var(--font);font-size:15px;font-weight:800;letter-spacing:.04em;padding:14px 22px;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s;margin-top:4px;text-transform:uppercase}
.contact-form button:hover{background:#ffc94a;box-shadow:0 8px 28px rgba(245,179,36,0.35)}
.contact-form button:active{transform:translateY(1px)}
.contact-email{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:28px;padding-top:28px;border-top:1px solid rgba(245,179,36,0.15)}
.contact-email svg{width:20px;height:20px;stroke:var(--gold);fill:none;stroke-width:1.8;flex-shrink:0}
.contact-email a{font-size:15px;font-weight:600;color:var(--white);text-decoration:none;transition:color .2s}
.contact-email a:hover{color:var(--gold)}

/* ── FOOTER ── */
footer{background:linear-gradient(180deg,var(--bg2),#070c16);border-top:1px solid rgba(47,128,255,0.10);padding:64px 44px 28px;position:relative;z-index:1;flex-shrink:0}
.footer-top{max-width:1300px;margin:0 auto;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,0.06)}
.footer-brand-block .brand{margin-bottom:16px}
.footer-tagline{font-size:13.5px;color:var(--grey);line-height:1.8;max-width:380px;margin-bottom:18px}
.footer-trust{display:inline-flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;color:var(--white);background:rgba(47,128,255,0.07);border:1px solid rgba(47,128,255,0.18);border-radius:30px;padding:8px 15px}
.footer-trust svg{width:15px;height:15px;stroke:var(--blue);fill:none;stroke-width:2}
.footer-cols{max-width:1300px;margin:0 auto;display:flex;gap:90px;flex-wrap:wrap;padding:40px 0;border-bottom:1px solid rgba(255,255,255,0.06)}
.fcol-title{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--white);margin-bottom:16px}
.fcol-links{list-style:none;display:flex;flex-direction:column;gap:11px}
.fcol-links a{font-size:13.5px;color:var(--grey);text-decoration:none;transition:color .2s,padding-left .2s}
.fcol-links a:hover{color:var(--white);padding-left:3px}
.footer-mid{max-width:1300px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;padding:26px 0}
.footer-pay{display:flex;gap:8px;flex-wrap:wrap}
.pay{font-size:11px;font-weight:700;letter-spacing:.02em;padding:5px 11px;border:1px solid rgba(255,255,255,0.1);color:var(--grey);border-radius:6px;background:var(--bg2)}
.footer-social{display:flex;gap:10px}
.footer-social a{width:38px;height:38px;border-radius:9px;border:1px solid rgba(255,255,255,0.1);background:var(--bg2);display:flex;align-items:center;justify-content:center;color:var(--grey);transition:color .2s,border-color .2s,background .2s,transform .2s}
.footer-social a:hover{color:var(--white);border-color:var(--blue-border);background:var(--bg3);transform:translateY(-2px)}
.footer-social svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.9}
.footer-bottom{max-width:1300px;margin:0 auto;border-top:1px solid rgba(255,255,255,0.06);padding-top:22px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-copy{font-size:12px;color:rgba(128,144,171,0.6)}
.footer-made{font-size:12px;color:rgba(128,144,171,0.6);letter-spacing:.02em}

@media(max-width:980px){
  header.site-nav{padding:0 16px;gap:0}
  .nav-links{display:none}
  .nav-toggle{display:flex}
  .brand-name{font-size:15px;letter-spacing:.18em}
  .footer-top{padding-bottom:32px}
  .footer-cols{gap:28px 60px;padding:32px 0}
  .footer-mid{flex-direction:column;align-items:flex-start;gap:20px}
  footer{padding:44px 18px 26px}
  .legal-hero{padding:42px 18px 4px}
  .legal-wrap{padding:22px 18px 56px}
  .contact-wrap{padding:24px 18px 56px}
  .contact-form{padding:22px 18px}
}
