/* ── RESET & BASE ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}
body{font-family:"Inter",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;background:#000;color:#f5f5f7;overflow-x:hidden;line-height:1.6}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button{font-family:inherit;cursor:pointer;border:none;background:none}
input,textarea,select{font-family:inherit}

/* ── TOKENS ── */
:root{
  --black:#000;
  --black2:#070709;
  --surface:#0d0d0f;
  --surface2:#111113;
  --white:#fff;
  --text:#f5f5f7;
  --muted:rgba(245,245,247,.55);
  --dim:rgba(245,245,247,.28);
  --blue:#0071e3;
  --blue-light:#2997ff;
  --green:#30d158;
  --gold:#ffd60a;
  --rose:#ff453a;
  --border:rgba(255,255,255,.08);
  --border2:rgba(255,255,255,.14);
  --r-sm:12px;
  --r-md:20px;
  --r-lg:28px;
  --ease:cubic-bezier(.25,.1,.25,1);
  --spring:cubic-bezier(.34,1.56,.64,1);
}

/* ── TYPOGRAPHY ── */
.t-display{font-size:clamp(42px,6.5vw,88px);font-weight:700;line-height:1.04;letter-spacing:-.035em;color:var(--text)}
.t-h1{font-size:clamp(36px,5vw,72px);font-weight:700;line-height:1.08;letter-spacing:-.03em}
.t-h2{font-size:clamp(28px,3.8vw,52px);font-weight:700;line-height:1.1;letter-spacing:-.025em}
.t-h3{font-size:clamp(20px,2.5vw,30px);font-weight:600;line-height:1.2;letter-spacing:-.018em}
.t-body{font-size:clamp(16px,1.6vw,19px);line-height:1.65;color:var(--muted)}
.t-label{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-light)}
.t-serif{font-family:"DM Serif Display",Georgia,serif;font-style:italic}

/* ── LAYOUT ── */
.container{width:100%;max-width:1080px;margin:0 auto;padding:0 24px}
.container-wide{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}
.section{padding:100px 0}
.section-sm{padding:60px 0}
@media(max-width:768px){.section{padding:72px 0}.section-sm{padding:48px 0}}

/* ── HEADER ── */
.site-header{position:fixed;top:0;left:0;right:0;z-index:200;height:52px;transition:background .3s var(--ease),border-color .3s}
.site-header.scrolled{background:rgba(0,0,0,.82);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--border)}
.h-wrap{max-width:1200px;margin:0 auto;padding:0 24px;height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.h-logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.h-logo-mark{width:28px;height:28px;border-radius:8px;background:var(--blue);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#fff;flex-shrink:0}
.h-logo-mark.sm{width:24px;height:24px;border-radius:6px;font-size:11px}
.h-logo-img{height:28px;width:auto;display:block;flex-shrink:0}
.ft-logo-img{height:26px;width:auto;display:block;flex-shrink:0}
.h-logo-txt{font-size:16px;font-weight:700;letter-spacing:-.025em;color:var(--text)}
.h-nav{display:flex;align-items:center;gap:4px;flex:1;justify-content:center}
.h-nl{font-size:13.5px;font-weight:500;color:var(--muted);padding:7px 14px;border-radius:8px;transition:color .2s,background .2s;letter-spacing:-.01em}
.h-nl:hover{color:var(--text);background:rgba(255,255,255,.06)}
.h-nl.active{color:var(--text)}
.h-right{display:flex;align-items:center;gap:10px;flex-shrink:0}
.h-btn-ghost{font-size:13px;font-weight:600;color:var(--muted);padding:7px 14px;border-radius:99px;transition:color .2s}
.h-btn-ghost:hover{color:var(--text)}
.h-btn-cta{font-size:13px;font-weight:600;color:#fff;background:var(--blue);padding:8px 18px;border-radius:99px;transition:background .2s,transform .15s}
.h-btn-cta:hover{background:#0077ed;transform:translateY(-1px)}

/* Lang picker */
.lang-picker{position:relative}
.lang-cur{font-size:12.5px;font-weight:600;color:var(--muted);padding:6px 10px;border-radius:8px;border:1px solid var(--border);display:flex;align-items:center;gap:5px;transition:all .2s;cursor:pointer;background:none}
.lang-cur:hover{color:var(--text);border-color:var(--border2)}
.lang-dd{position:absolute;top:calc(100%+8px);right:0;background:rgba(20,20,22,.97);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--r-sm);min-width:140px;opacity:0;visibility:hidden;transform:translateY(-6px) scale(.97);transition:all .2s var(--ease);box-shadow:0 20px 50px rgba(0,0,0,.7);z-index:300;overflow:hidden}
.lang-picker.open .lang-dd{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.lang-dd a{display:flex;align-items:center;gap:8px;padding:10px 14px;color:var(--muted);font-size:13px;font-weight:500;transition:background .15s,color .15s}
.lang-dd a:hover{background:rgba(255,255,255,.06);color:var(--text)}
.lang-dd a.active{color:var(--blue-light)}

/* Burger */
.h-burger{display:none;flex-direction:column;gap:5px;padding:8px;border-radius:8px}
.h-burger span{display:block;width:20px;height:1.5px;background:var(--muted);border-radius:2px;transition:all .25s}
.h-burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.h-burger.open span:nth-child(2){opacity:0}
.h-burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

@media(max-width:860px){
  .h-nav{position:fixed;top:52px;left:0;right:0;background:rgba(0,0,0,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);flex-direction:column;align-items:flex-start;padding:16px 24px 24px;gap:2px;transform:translateY(-110%);transition:transform .3s var(--ease);z-index:190}
  .h-nav.open{transform:translateY(0)}
  .h-nl{padding:12px 4px;font-size:16px;width:100%;border-radius:0}
  .h-btn-ghost,.lang-picker{display:none}
  .h-burger{display:flex}
  .h-right{gap:8px}
}

/* ── BUTTONS ── */
.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--blue);color:#fff;font-size:16px;font-weight:600;padding:15px 28px;border-radius:99px;letter-spacing:-.015em;transition:background .2s,transform .2s,box-shadow .2s;cursor:pointer;border:none;font-family:inherit}
.btn-primary:hover{background:#0077ed;transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,113,227,.35)}
.btn-primary:active{transform:translateY(0)}
.btn-secondary{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);color:var(--text);font-size:16px;font-weight:600;padding:14px 28px;border-radius:99px;border:1px solid var(--border2);letter-spacing:-.015em;transition:all .2s;cursor:pointer;font-family:inherit}
.btn-secondary:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.24)}
.btn-sm{padding:10px 20px;font-size:14px}

/* ── SECTION LABEL ── */
.s-label{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-light);margin-bottom:20px}
.s-label-dot{width:5px;height:5px;border-radius:50%;background:var(--blue-light);flex-shrink:0}

/* ── CARDS ── */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:32px;transition:border-color .3s}
.card:hover{border-color:var(--border2)}
.card-glass{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:var(--r-lg);padding:32px;backdrop-filter:blur(8px)}

/* ── REVEAL ANIMATION ── */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ── FOOTER ── */
.site-footer{background:#000;border-top:1px solid var(--border);padding:72px 0 0}
.ft-inner{max-width:1200px;margin:0 auto;padding:0 24px 72px;display:grid;grid-template-columns:1fr 2fr;gap:80px}
.ft-brand .ft-logo{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.ft-brand .ft-logo span{font-size:16px;font-weight:700;letter-spacing:-.025em}
.ft-tagline{font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:20px}
.ft-geo{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--dim)}
.ft-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.ft-col-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);margin-bottom:16px}
.ft-col a{display:block;font-size:14px;color:var(--muted);margin-bottom:12px;transition:color .2s}
.ft-col a:hover{color:var(--text)}
.ft-bottom{border-top:1px solid var(--border);padding:20px 24px;max-width:1200px;margin:0 auto;font-size:12px;color:var(--dim)}
@media(max-width:768px){
  .ft-inner{grid-template-columns:1fr;gap:48px}
  .ft-cols{grid-template-columns:repeat(2,1fr);gap:32px}
}

/* ── FORM ELEMENTS ── */
.inp{width:100%;background:rgba(255,255,255,.05);border:1px solid var(--border);border-radius:var(--r-sm);padding:13px 16px;font-size:15px;color:var(--text);outline:none;transition:border-color .2s}
.inp:focus{border-color:var(--blue)}
.inp::placeholder{color:var(--dim)}
textarea.inp{resize:vertical;min-height:120px}

/* ── STICKY CTA (mobile) ── */
.sticky-bottom-cta{position:fixed;bottom:0;left:0;right:0;padding:12px 20px 20px;background:linear-gradient(to top,rgba(0,0,0,.97) 60%,transparent);z-index:150;display:none}
@media(max-width:640px){.sticky-bottom-cta{display:block}}
.sticky-bottom-cta .btn-primary{width:100%;justify-content:center;padding:16px}

/* ── SCROLL PROGRESS ── */
#scrollBar{position:fixed;top:0;left:0;height:2px;width:0%;background:var(--blue);z-index:9999;transition:width .05s linear}

/* ── COOKIE ── */
.cookie-bar{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:500;background:rgba(20,20,22,.97);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--r-md);padding:18px 22px;display:flex;align-items:center;gap:20px;max-width:560px;width:calc(100% - 48px);box-shadow:0 20px 60px rgba(0,0,0,.6)}
.cookie-bar p{font-size:13px;color:var(--muted);line-height:1.5;flex:1}
.cookie-bar a{color:var(--blue-light)}
.cookie-btns{display:flex;gap:8px;flex-shrink:0}
.cb-accept{background:var(--blue);color:#fff;font-size:12.5px;font-weight:600;padding:8px 16px;border-radius:99px;cursor:pointer;border:none;font-family:inherit}
.cb-decline{background:transparent;color:var(--muted);font-size:12.5px;font-weight:500;padding:8px 12px;border-radius:99px;cursor:pointer;border:1px solid var(--border);font-family:inherit}
@media(max-width:560px){.cookie-bar{flex-direction:column;gap:12px}.cookie-btns{width:100%;justify-content:flex-end}}
