:root{
  --bg:#07070b;
  --ink:#f5f6fb;
  --muted:#c9cbe0;
  --card:rgba(255,255,255,.06);
  --line:rgba(255,255,255,.12);
  --shadow: 0 14px 40px rgba(0,0,0,.45);
  --radius:22px;
  --max:1120px;
  --topbar-h:64px;
  --purple:#b45cff;
  --red:#ff3b3b;
  --green:#00c853;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: radial-gradient(900px 520px at 20% 0%, rgba(180,92,255,.22), transparent 60%),
              radial-gradient(800px 520px at 95% 10%, rgba(255,59,59,.14), transparent 55%),
              linear-gradient(180deg, #06060a 0%, #0b0b12 60%, #06060a 100%);
  color:var(--ink);
  line-height:1.55;
}
a{color:inherit;text-decoration:none}
.container{width:min(100% - 36px, var(--max));margin:0 auto}
.topbar{
  /* Fixed header so it stays visible on iPhone/iPad */
  position:fixed;top:0;left:0;right:0;z-index:999;
  background:rgba(6,6,10,.72);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.06);
  padding-top: env(safe-area-inset-top);
}

.topbar-spacer{height:var(--topbar-h)}
.nav{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  min-height:var(--topbar-h);
  padding:8px 0;
}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:32px;width:auto}
.brand .name{font-weight:900;letter-spacing:.2px;white-space:nowrap;font-size:14px;line-height:1}
.brand .name.short{display:none}
.links{display:flex;gap:10px;align-items:center;flex-wrap:nowrap}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:10px 12px;border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  font-weight:800;
}
.btn:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.2)}
.btn.primary{
  border:none;
  background:linear-gradient(135deg,var(--red) 0%, #ff6b6b 55%, #ffc36b 100%);
  box-shadow:var(--shadow);
}
.btn.primary:hover{filter:brightness(1.05)}
.btn.secondary{
  border:none;
  background:linear-gradient(135deg,var(--purple) 0%, #7a5cff 60%, #4f8cff 100%);
  box-shadow:var(--shadow);
}
.btn.secondary:hover{filter:brightness(1.05)}
.iconbtn{
  width:44px;height:44px;border-radius:14px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04);
}
.iconbtn:hover{background:rgba(255,255,255,.08)}
.icon{width:20px;height:20px;fill:currentColor}
.hero{
  position:relative;
  padding:64px 0 30px;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(90deg, rgba(6,6,10,.88) 0%, rgba(6,6,10,.62) 50%, rgba(6,6,10,.88) 100%),
    url('assets/hero.jpg');
  background-size:cover;
  background-position:center;
  filter:saturate(1.05) contrast(1.05);
}
.hero .container{position:relative}
.hero-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:18px;
  align-items:stretch;
}
.card{
  background:var(--card);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.hcard{padding:26px}
.kicker{
  display:inline-flex;align-items:center;gap:10px;
  font-weight:800;color:var(--muted);font-size:14px;
}
.dot{width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px rgba(0,200,83,.12)}
h1{margin:12px 0 10px;font-size:clamp(34px, 4.2vw, 52px);line-height:1.06}
.sub{margin:0 0 16px;color:rgba(245,246,251,.86);font-size:18px}
.value{
  display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none;
}
.value li{
  display:flex;gap:10px;align-items:flex-start;
  color:rgba(245,246,251,.88);
}
.value .icon{margin-top:2px}
.ribbon{
  margin-top:16px;
  display:flex;gap:10px;flex-wrap:wrap;
}
.pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 12px;border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.18);
  color:rgba(245,246,251,.9);
  font-size:13px;font-weight:800;
}
.right{padding:18px}
.right h3{margin:0 0 10px;font-size:18px}
.steps{margin:0;padding-left:18px;color:rgba(245,246,251,.85)}
.steps li{margin:8px 0}
.alert{
  margin-top:14px;
  border-radius:18px;
  padding:14px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg, rgba(255,59,59,.16), rgba(255,255,255,.03));
}
.alert b{color:#fff}
.section{padding:44px 0}
.section h2{margin:0 0 10px;font-size:30px;letter-spacing:-.2px}
.section p{margin:0 0 12px;color:rgba(245,246,251,.78)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.service{padding:18px}
.service h3{margin:0 0 8px;font-size:18px}
.mini{color:rgba(245,246,251,.78);font-size:14px;margin:0 0 12px}
.bullets{margin:0;padding-left:18px;color:rgba(245,246,251,.78)}
.bullets li{margin:6px 0}
.strip{
  margin-top:16px;
  padding:16px;border-radius:var(--radius);
  border:1px solid rgba(255,255,255,.12);
  background:radial-gradient(520px 180px at 0% 0%, rgba(180,92,255,.22), transparent 60%), rgba(255,255,255,.03);
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
}
.strip .left{display:flex;gap:10px;align-items:center}
.strip .left .icon{width:22px;height:22px}
.media-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.media{padding:16px}
.embed{width:100%;aspect-ratio:16/9;border:0;border-radius:18px;background:#000}
.video{
  width:100%;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background:#000;
}
.photo{
  width:100%;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background:#000;
  display:block;
}

/* Instagram embeds (reels) */
.ig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ig-grid > *{border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}
.ig-grid blockquote{margin:0!important}
.socialcards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.social{padding:18px}
.social .row{display:flex;gap:10px;align-items:center;justify-content:space-between}
.social .tag{display:inline-flex;align-items:center;gap:8px;color:rgba(245,246,251,.86);font-weight:900}
.social .tag svg{width:18px;height:18px}
.social .desc{margin:10px 0 0;color:rgba(245,246,251,.76)}
.faq{display:grid;gap:10px}
details{border-radius:18px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);padding:14px}
summary{cursor:pointer;font-weight:900}
details p{margin:10px 0 0;color:rgba(245,246,251,.76)}
.footer{
  padding:26px 0 34px;
  border-top:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.18);
}
.footergrid{
  display:grid;grid-template-columns:1.2fr .8fr;gap:12px
}
.fine{font-size:12px;color:rgba(245,246,251,.68);line-height:1.55}
hr.sep{border:0;border-top:1px solid rgba(255,255,255,.08);margin:14px 0}
@media (max-width: 980px){
  .hero-grid{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .media-grid{grid-template-columns:1fr}
  .socialcards{grid-template-columns:1fr}
  .ig-grid{grid-template-columns:1fr}
  .footergrid{grid-template-columns:1fr}
}

/* --- Top banner mobile optimization (thin + clean) --- */
@media (max-width: 720px){
  .nav{gap:10px;padding:6px 0}
  .brand img{height:28px}
  .links{gap:8px;overflow-x:auto;max-width:62vw;padding-bottom:2px;-webkit-overflow-scrolling:touch}
  .links::-webkit-scrollbar{display:none}
  .btn{padding:8px 10px;font-size:12px}
}

@media (max-width: 420px){
  .brand .name.full{display:none}
  .brand .name.short{display:inline}
  .links a.btn:not(.primary){display:none}
  .links{max-width:55vw}
  .btn.primary{padding:9px 12px}
}