:root{--bg:#0a0d14;--ink:#0f1220;--paper:#fafafe;--muted:#6e6b80;--p:#7a3bff;--p-900:#4d1fff;--s:#ffe071;--ok:#00c2a8}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:'Manrope',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--paper);color:var(--ink)}
a{color:var(--p);text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{max-width:1120px;margin:0 auto;padding:0 20px}
.row{display:flex;gap:24px}
.wrap{flex-wrap:wrap}
.center{justify-content:center;align-items:center;text-align:center}
.between{justify-content:space-between}
.nav-wrap{position:sticky;top:0;background:linear-gradient(180deg,rgba(10,13,20,.95),rgba(10,13,20,.85));backdrop-filter:saturate(140%) blur(6px);z-index:20}
.nav-wrap .container{padding:14px 20px}
.brand{font-weight:800;letter-spacing:.4px;color:#fff}
.nav .nav-link{color:#dfe3ff;padding:10px 14px;border-radius:10px}
.nav .nav-link:hover,.nav .nav-link.active{background:rgba(122,59,255,.18);color:#fff}
.nav .accent{background:var(--p);color:#fff}
.display{font-size:clamp(32px,6vw,56px);line-height:1.05;margin:0 0 12px;color:#fff}
.lead{color:#e9ecff;max-width:820px}
.hero{min-height:68vh;display:grid;align-items:end;background-size:cover;background-position:center}
.hero-overlay{position:relative}
.hero-overlay::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,13,20,.6) 0%,rgba(10,13,20,.9) 65%,rgba(10,13,20,1) 100%)}
.hero-inner{position:relative;padding:80px 0 48px;z-index:1}
.hero-cta{display:flex;gap:10px;align-items:center;margin-top:14px;color:#dfe3ff}
.hero-decor{position:absolute;right:-10vw;top:-10vh;width:46vw;height:46vw;background:radial-gradient(closest-side,rgba(122,59,255,.38),rgba(122,59,255,0));filter:blur(8px)}
.light{background:var(--paper);color:var(--ink)}
.dark{background:var(--bg);color:#eef1ff}
.grid-split .col{flex:1 1 320px}
.grid-split h2,.band h2,.cards h2,.feature-split h2,.strip h2,.cta h2,.contact h2{font-size:clamp(22px,3.4vw,34px);margin:.2rem 0 10px}
.band{padding:54px 0;background:linear-gradient(135deg,var(--bg) 0%,#10162b 100%)}
.band p{color:#d6daf3}
.cards{padding:54px 0}
.cards .row{gap:18px}
.card{flex:1 1 260px;background:#fff;border:1px solid #ecebfd;border-radius:16px;padding:18px 18px 10px;box-shadow:0 6px 24px rgba(15,18,32,.06)}
.card h3{margin:6px 0 8px}
.feature-split{padding:54px 0}
.feature-split .img-col{display:flex;align-items:center}
.feature-split img{border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.strip{padding:48px 0;border-top:1px solid #ecebfd;border-bottom:1px solid #ecebfd}
.cta{padding:54px 0}
.cta-inner{display:grid;grid-template-columns:1.4fr .9fr;gap:22px;align-items:center}
.cta-text p{color:#cdd3ff}
.cta-img{border-radius:14px;box-shadow:0 16px 48px rgba(0,0,0,.3)}
.contact{padding:54px 0}
.form{margin-top:10px}
.form .form-group{flex:1 1 260px;display:flex;flex-direction:column}
.form .full{flex-basis:100%}
label{font-weight:600;margin-bottom:6px}
input,textarea{border:1px solid #d7d6ea;border-radius:12px;padding:12px 14px;font:inherit;background:#fff}
input:focus,textarea:focus{outline:2px solid rgba(122,59,255,.35);border-color:var(--p)}
.btn{display:inline-flex;gap:8px;align-items:center;background:linear-gradient(180deg,var(--p),var(--p-900));color:#fff;border:none;border-radius:12px;padding:12px 18px;font-weight:700;box-shadow:0 8px 22px rgba(122,59,255,.28)}
.btn:hover{filter:brightness(1.07)}
.small{font-size:.9rem}
.muted{color:var(--muted)}
.page-hero{padding:54px 0 20px;border-bottom:1px solid #ecebfd}
.tips-grid .tip{flex:1 1 320px;background:#fff;border:1px solid #ecebfd;border-radius:14px;padding:18px;box-shadow:0 10px 28px rgba(0,0,0,.06)}
.gallery{padding:20px 0 54px}
.thumb{width:min(520px,100%);border-radius:16px;box-shadow:0 16px 52px rgba(0,0,0,.18)}
.legal{padding:36px 0 66px}
.legal h2{margin:22px 0 10px}
.footer{background:linear-gradient(180deg,#0a0d14,#090c12);color:#cdd3ff}
.footer .container{padding:22px 20px}
.brand-foot{display:flex;flex-direction:column;gap:4px}
.foot-nav{display:flex;gap:14px;flex-wrap:wrap}
.foot-nav a{color:#dde2ff}
.foot-legal{border-top:1px solid rgba(255,255,255,.12);padding:12px 20px;text-align:center;color:#aab2e8}
@media (max-width:900px){
    .cta-inner{grid-template-columns:1fr}
    .nav{display:flex;gap:6px;flex-wrap:wrap}
}
section{
    overflow:hidden;
}