/* HERO */
.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:100px 20px 80px;position:relative;overflow:hidden;}
.hero-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,black 0%,transparent 70%);mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,black 0%,transparent 70%);}
.hero-orb1{position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.16) 0%,transparent 70%);top:-250px;left:50%;transform:translateX(-50%);pointer-events:none;}
.hero-orb2{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(124,58,237,.1) 0%,transparent 70%);bottom:-100px;right:-80px;pointer-events:none;}
.hero-content{position:relative;z-index:1;max-width:880px;width:100%;overflow:hidden;}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:var(--bg1);border:1px solid var(--border);border-radius:50px;padding:6px 16px 6px 10px;font-family:var(--ffm);font-size:.7rem;letter-spacing:.07em;color:var(--muted);margin-bottom:32px;}
.ldot{width:7px;height:7px;border-radius:50%;background:var(--green);animation:ldot 2s ease-in-out infinite;display:inline-block;}
@keyframes ldot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}
.hero-badge strong{color:var(--green);}

/* ── FONT SIZE CORRECTED (from the fixed document) ── */
.hero-h1{font-family:var(--ffh);font-weight:800;font-size:clamp(2rem,7vw,5.5rem);line-height:1.05;letter-spacing:-.03em;color:#fff;margin-bottom:22px;overflow-wrap:break-word;word-break:break-word;}

/* Animated blue-cyan gradient */
.grad-anim,.hero-h1 .hl{
  background:linear-gradient(90deg,#22d3ee,#3b82f6,#06b6d4,#0ea5e9,#22d3ee,#3b82f6,#06b6d4);
  background-size:300% 100%;
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  animation:gradloop 4s linear infinite;
}
@keyframes gradloop{0%{background-position:0% 50%}100%{background-position:100% 50%}}
.hero-h1 .stroke{-webkit-text-stroke:1.5px rgba(255,255,255,.2);-webkit-text-fill-color:transparent;}
.hero-sub{font-size:clamp(.88rem,2.2vw,1.08rem);color:var(--muted);max-width:560px;margin:0 auto 44px;line-height:1.85;}
.hero-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:48px;}
.htag{display:flex;align-items:center;gap:6px;background:var(--bg1);border:1px solid var(--border);border-radius:50px;padding:6px 14px;font-size:.77rem;font-weight:500;color:var(--muted);transition:border-color .2s,color .2s;}
.htag:hover{border-color:var(--blueb);color:var(--text);}
.htag .dot{width:5px;height:5px;border-radius:50%;background:var(--blueb);}
.btn-hero{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--blue);color:#fff;font-family:var(--ffh);font-weight:700;font-size:.9rem;letter-spacing:.03em;padding:16px 40px;border-radius:var(--r);text-decoration:none;max-width:420px;width:100%;border:1px solid rgba(255,255,255,.1);transition:background .2s,transform .2s,box-shadow .2s;}
.btn-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.15) 50%,transparent 65%);animation:shim 3.5s 1.5s infinite;}
@keyframes shim{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
.btn-hero:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:0 14px 40px rgba(37,99,235,.45);}
.hero-cta{display:flex;flex-direction:column;align-items:center;gap:14px;}
.btn-ghost{font-size:.82rem;color:var(--muted);text-decoration:none;display:flex;align-items:center;gap:5px;transition:color .2s;}
.btn-ghost:hover{color:var(--text);}
.hero-cd{display:flex;align-items:center;gap:8px;margin-top:52px;justify-content:center;flex-wrap:wrap;}
.cd-lbl{font-family:var(--ffm);font-size:.62rem;color:var(--subtle);letter-spacing:.12em;text-transform:uppercase;margin-right:4px;}
/* Glass countdown boxes */
.cd-box{
  background:rgba(255,255,255,.05);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--r);padding:10px 14px;text-align:center;min-width:56px;
}
.cd-n{font-family:var(--ffh);font-weight:800;font-size:1.5rem;color:#fff;display:block;line-height:1;}
.cd-u{font-family:var(--ffm);font-size:.5rem;color:var(--subtle);text-transform:uppercase;letter-spacing:.1em;}
.cd-sep{font-family:var(--ffh);font-size:1.5rem;font-weight:700;color:var(--subtle);padding-bottom:12px;}

/* TICKER */
.ticker{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:13px 0;overflow:hidden;background:var(--bg1);}
.ticker-track{display:flex;width:max-content;animation:roll 28s linear infinite;}
@keyframes roll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ti{font-family:var(--ffm);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--subtle);white-space:nowrap;padding:0 28px;display:flex;align-items:center;gap:12px;}
.ti::after{content:'';width:3px;height:3px;border-radius:50%;background:var(--blueb);}
