
:root{
  --bg:#0b1220; --fg:#e5e7eb; --muted:#94a3b8; --brand:#38bdf8; --card:#101a2c; --line:#1f2a44;
  --pad:16px; --radius:16px; --container:1120px;
}
:root.light{ --bg:#ffffff; --fg:#0b1220; --muted:#475569; --card:#f8fafc; --line:#e2e8f0; --brand:#0ea5e9; }
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--fg);line-height:1.6}
a{color:var(--fg);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
.container{max-width:var(--container);margin:0 auto;padding:0 var(--pad)}
.row{display:flex;gap:12px}.wrap{flex-wrap:wrap}.center{justify-content:center}.center-v{align-items:center}
.space-between{justify-content:space-between}.gap{gap:12px}.flex-1{flex:1}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px}
@media (max-width:980px){.grid-2,.grid-3{grid-template-columns:1fr}}

.btn{background:var(--brand);border:none;color:white;padding:12px 18px;border-radius:999px;font-weight:600;cursor:pointer;display:inline-block;text-align:center}
.btn:hover{opacity:.9}.btn.ghost{background:transparent;border:1px solid var(--brand);color:var(--fg)}
.btn.small{padding:8px 12px;font-size:.9rem}

.icon-btn{background:transparent;border:1px solid var(--line);padding:8px 10px;border-radius:10px;cursor:pointer}
.icon-btn:hover{background:var(--card)}

.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.card.link{transition:transform .2s ease,box-shadow .2s ease}
.card.link:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.2)}

.list-clean{list-style:none;padding:0;margin:0}.list-clean li{margin:6px 0}
.columns{column-count:2;column-gap:32px}
@media (max-width:640px){.columns{column-count:1}}

.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);backdrop-filter:saturate(180%) blur(8px)}
.site-header .container{height:64px}
.glass{background:rgba(10,16,28,.6)}
.logo{gap:10px;font-weight:800}.logo .brand{color:var(--brand)}.logo-text{font-size:1.25rem;letter-spacing:.04em}

.nav{display:flex;gap:18px;align-items:center}
.hamburger{display:none;background:transparent;border:none;width:40px;height:40px;position:relative}
.hamburger span{position:absolute;left:8px;right:8px;height:2px;background:var(--fg);transition:.2s}
.hamburger span:nth-child(1){top:12px}.hamburger span:nth-child(2){top:19px}.hamburger span:nth-child(3){top:26px}
@media (max-width:980px){
  .nav{position:fixed;inset:64px 0 auto 0;display:grid;gap:12px;background:var(--bg);padding:16px;border-bottom:1px solid var(--line);transform:translateY(-120%);transition:.25s}
  .nav.open{transform:translateY(0)}
  .hamburger{display:block}
}

.hero.fullbleed{width:100vw;margin-left:calc(50% - 50vw)}
.slider{position:relative;height:min(68vh,680px);overflow:hidden}
.slide{position:absolute;inset:0;display:grid;align-items:end;justify-items:start;background-size:cover;background-position:center;opacity:0;transition:opacity .8s ease}
.slide::before{content:"";position:absolute;inset:0;background:linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,.15))}
.slide .slide-inner{position:relative;padding-bottom:8vh}
.slide.active{opacity:1}
.slide{background-image:var(--bg)}
.dots{position:absolute;left:50%;transform:translateX(-50%);bottom:16px;display:flex;gap:8px}
.dots button{width:10px;height:10px;border-radius:50%;border:1px solid white;background:transparent;opacity:.7;cursor:pointer}
.dots button.active,.dots button:hover{opacity:1;background:white}

.features{padding:52px 0}
.cta{gap:16px;padding:24px;margin:40px auto;background:linear-gradient(135deg,var(--card),transparent);border:1px dashed var(--line);border-radius:var(--radius)}

.form input,.form textarea,.form select{width:100%;background:transparent;border:1px solid var(--line);border-radius:12px;color:var(--fg);padding:12px}
.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--brand);border-color:transparent}
.form .form-msg{margin:8px 0 0;font-size:.95rem}
.form .mini{font-size:.85rem}

.site-footer{margin-top:64px;border-top:1px solid var(--line);padding:40px 0 20px}
.fine-print{font-size:.9rem;color:var(--muted)}
