*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
--navy:#0D0E2B;
--teal:#00C2C7;
--midnight:#1E2050;
--mist:#B4B6C8;
--white:#FFFFFF;
--font-display:'Bebas Neue',sans-serif;
--font-body:'Inter',sans-serif;
--font-mono:'JetBrains Mono',monospace
}
html{scroll-behavior:smooth;scroll-padding-top:40px}
body{
background:var(--navy);
color:var(--white);
font-family:var(--font-body);
overflow-x:hidden;
line-height:1.8;
-webkit-font-smoothing:antialiased;
background-image:linear-gradient(180deg,transparent 50%,rgba(0,194,199,0.03) 100%);
min-height:100vh
}
#preloader{position:fixed;inset:0;z-index:10000;background:linear-gradient(135deg,#0D0E2B 0%,#1E2050 25%,#0D0E2B 50%,#1a1c4a 75%,#0D0E2B 100%);background-size:400% 400%;transition:opacity 0.6s ease,visibility 0.6s ease}
#preloader.hidden{opacity:0;visibility:hidden;pointer-events:none}
.preloader-wrap{position:absolute;top:50%;left:0;width:70%;height:10px;transform:translateY(-50%)}
.preloader-bar{width:0;height:10px;background:var(--teal);animation:preloaderFill 1.8s ease-in-out forwards;max-width:100%}
.preloader-logo{position:absolute;top:50%;left:85%;width:400px;height:auto;transform:translate(-50%,calc(-50% - 20px))}
@keyframes preloaderFill{0%{width:0%}100%{width:100%}}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}
.blink-underscore{display:inline-block;color:var(--teal);animation:blink 0.9s step-end infinite;font-weight:300}

@media(max-width:1024px){
#preloader{display:flex;flex-direction:column;align-items:center;justify-content:center}
.preloader-wrap{position:static;width:100%;height:10px;transform:none}
.preloader-bar{max-width:70%}
.preloader-logo{position:static;width:240px;margin-top:calc(12px + 10px);transform:translateY(-10px)}
}
@media(max-width:480px){
.preloader-logo{width:160px;margin-top:calc(8px + 10px);transform:translateY(-8px)}
}

.legal-header{
padding:48px 24px 32px;
text-align:center;
border-bottom:1px solid rgba(0,194,199,0.06)
}
.legal-header .logo{
font-family:var(--font-display);font-size:20px;letter-spacing:0.04em;
text-decoration:none;color:var(--white);
display:inline-block;margin-bottom:24px
}
.legal-header h1{
font-family:var(--font-display);
font-size:clamp(2rem,4vw,3rem);
font-weight:400;letter-spacing:0.02em;
color:var(--white);margin-bottom:8px
}
.legal-header .last-updated{
font-family:var(--font-mono);font-size:12px;
color:var(--mist);opacity:0.5
}

.legal-content{
max-width:760px;margin:0 auto;
padding:48px 24px 80px
}
.legal-section{
margin-bottom:40px
}
.legal-section:last-child{margin-bottom:0}
.legal-section h2{
font-family:var(--font-display);
font-size:clamp(1.2rem,2vw,1.6rem);
font-weight:400;letter-spacing:0.01em;
color:var(--teal);margin-bottom:16px;
padding-bottom:8px;
border-bottom:1px solid rgba(0,194,199,0.1)
}
.legal-section h3{
font-family:var(--font-body);
font-size:1rem;font-weight:600;
color:var(--white);margin-bottom:10px;
margin-top:24px
}
.legal-section p{
color:var(--mist);
font-size:0.95rem;
line-height:1.8;
margin-bottom:14px
}
.legal-section ul, .legal-section ol{
color:var(--mist);
font-size:0.95rem;
line-height:1.8;
padding-left:24px;
margin-bottom:14px
}
.legal-section li{margin-bottom:6px}
.legal-section strong{color:var(--white);font-weight:600}
.legal-section a{
color:var(--teal);
text-decoration:none;
border-bottom:1px solid rgba(0,194,199,0.3);
transition:border-color 0.3s
}
.legal-section a:hover{border-color:var(--teal)}

footer{
position:relative;z-index:1;
padding:48px 24px 32px;
border-top:1px solid rgba(0,194,199,0.06);
background:rgba(13,14,43,0.5)
}
.footer-inner{
max-width:1120px;margin:0 auto;
display:flex;flex-direction:column;align-items:center;gap:12px;
text-align:center
}
@media(min-width:640px){footer{padding:56px 24px 32px}}
.footer-links{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.footer-links a{
font-family:var(--font-body);font-size:13px;font-weight:700;
color:var(--mist);text-decoration:none;text-transform:uppercase;
opacity:0.5;transition:opacity 0.3s
}
.footer-links a:hover{opacity:1;color:var(--teal)}
.footer-copy{
font-family:var(--font-mono);font-size:11px;
color:var(--mist);opacity:0.25
}
.footer-brand{display:flex;align-items:center;gap:10px;margin-top:16px}
.footer-logo{width:20px;height:auto;opacity:0.35;display:block}

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

@media(max-width:640px){
.legal-content{padding:32px 20px 60px}
.legal-header h1{font-size:clamp(1.6rem,6vw,2rem)}
}
