:root{
  --bg:#07090d;
  --text:#f3f5f7;
  --muted:#a8b0bb;
  --glass: rgba(255,255,255,.06);
  --border: rgba(255,255,255,.12);
  --accent:#ff7a1a;
  --accent2:#ffb15c;
  --shadow: 0 0 50px rgba(255, 122, 26, .14);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  background: var(--bg);
  color: var(--text);
  overflow-x:hidden;
}

.container{width:min(1120px, calc(100% - 48px)); margin:0 auto;}
a{color:inherit; text-decoration:none}
b{color:#fff}

.progress{
  position:fixed; top:0; left:0; height:3px; width:0%;
  background: linear-gradient(90deg, var(--accent2), var(--accent));
  z-index:80;
  transform-origin: 0 50%;
}

.bg{position:fixed; inset:0; z-index:0; pointer-events:none;}
.orb{
  position:absolute; border-radius:999px; filter: blur(60px);
  opacity:.9;
}
.orb-a{width:520px; height:520px; left:-220px; top:-240px; background: rgba(255,122,26,.22);}
.orb-b{width:560px; height:560px; right:-240px; bottom:-280px; background: rgba(255,177,92,.14);}
.orb-c{width:420px; height:420px; left:55%; top:20%; background: rgba(255,122,26,.10);}

.grid{
  position:absolute; inset:0;
  opacity:.07;
  background-image:
    linear-gradient(to right, rgba(255,255,255,.3) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.3) 1px, transparent 1px);
  background-size: 60px 60px;
}
.vignette{
  position:absolute; inset:0;
  background: radial-gradient(circle at 20% 30%, rgba(255,122,26,.18), transparent 45%),
              radial-gradient(circle at 80% 70%, rgba(255,122,26,.12), transparent 50%),
              radial-gradient(circle at 50% 60%, rgba(0,0,0,.2), rgba(0,0,0,.9));
}

.header{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(16px);
  background: rgba(0,0,0,.35);
  border-bottom: 1px solid var(--border);
}
.header__inner{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 0;
}
.brand{display:flex; align-items:center; gap:12px}
.brand__logo{
  width:44px; height:auto;
  filter: drop-shadow(0 0 16px rgba(255,122,26,.55));
}
.brand__name{
  font-weight:900; letter-spacing:.4px;
  background: linear-gradient(90deg, var(--accent2), var(--accent));
  -webkit-background-clip:text; background-clip:text;
  color:transparent;
}
.brand__tag{font-size:12px; color: var(--muted)}

.nav{display:flex; align-items:center; gap:22px}
.nav__link{font-size:14px; color:#dbe1e8; opacity:.85}
.nav__link:hover{color: var(--accent2); opacity:1}
.nav__cta{display:none}

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:10px 18px;
  border-radius:999px;
  font-weight:700;
  border:1px solid transparent;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
  will-change: transform;
}
.btn--primary{
  background: var(--accent);
  box-shadow: 0 10px 26px rgba(255,122,26,.18), 0 0 24px rgba(255,122,26,.18);
}
.btn--primary:hover{transform: translateY(-1px) scale(1.02);}
.btn--ghost{
  background: transparent;
  border-color: rgba(255,122,26,.55);
  color: var(--accent2);
}
.btn--ghost:hover{background: rgba(255,122,26,.14); color:#fff}

.hero{position:relative; z-index:10; padding:56px 0 30px;}
.hero__inner{text-align:center; max-width: 980px; margin:0 auto;}
.hero__title{
  font-size: clamp(36px, 6vw, 72px);
  font-weight: 900;
  line-height:1.06;
  letter-spacing:-.5px;
}
.grad{
  display:block;
  background: linear-gradient(90deg, var(--accent2), var(--accent));
  -webkit-background-clip:text; background-clip:text;
  color:transparent;
}
.hero__lead{margin:18px auto 0; max-width: 760px; font-size: 18px; color: #c9d0da; line-height:1.65}
.hero__actions{margin-top:26px; display:flex; gap:12px; justify-content:center; flex-wrap:wrap;}

.stats{margin-top:34px; display:grid; grid-template-columns: repeat(3, 1fr); gap:12px;}
.stat__value{
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 900;
  background: linear-gradient(90deg, var(--accent2), var(--accent));
  -webkit-background-clip:text; background-clip:text;
  color:transparent;
}
.stat__label{margin-top:6px; font-size: 12.5px; color: #c0c8d3}
.glass{
  background: var(--glass);
  border: 1px solid var(--border);
  backdrop-filter: blur(18px);
  border-radius: 18px;
  box-shadow: var(--shadow);
}

.marquee{
  margin-top:30px;
  border-top:1px solid rgba(255,255,255,.10);
  padding-top:18px;
  overflow:hidden;
  white-space:nowrap;
}
.marquee__track{
  display:inline-block;
  animation: marquee 18s linear infinite;
  color: rgba(255,177,92,.95);
  font-weight: 700;
}
@keyframes marquee{
  from{transform: translateX(0%)}
  to{transform: translateX(-50%)}
}

.section{padding: 64px 0; position:relative; z-index:10;}
.section__head{max-width: 820px;}
.section__title{font-size: clamp(26px, 3.2vw, 40px); font-weight: 900; letter-spacing:-.4px}
.section__sub{margin-top:10px; color:#c9d0da; line-height:1.65}

.cards{margin-top:26px; display:grid; gap:14px;}
.cards--3{grid-template-columns: repeat(3, 1fr);}
.cards--2{grid-template-columns: repeat(2, 1fr);}

.card{
  position:relative;
  padding:18px;
  border-radius: 18px;
  background: rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(18px);
  box-shadow: var(--shadow);
  transform-style: preserve-3d;
  transition: box-shadow .2s ease;
  will-change: transform;
}
.card::before{
  content:\"\"; position:absolute; inset:-1px; border-radius: 18px;
  background: linear-gradient(90deg, rgba(255,122,26,.24), rgba(255,177,92,.08));
  filter: blur(14px);
  opacity:.6;
  z-index:0;
}
.card > *{position:relative; z-index:1}
.card:hover{box-shadow: 0 0 70px rgba(255,122,26,.18);}
.card__top{display:flex; align-items:flex-start; justify-content:space-between; gap:10px}
.card__title{margin:10px 0 0; font-size:18px; font-weight:800}
.card__text{margin:12px 0 0; color:#c9d0da; line-height:1.65; font-size:14px}
.card__foot{margin-top:10px; font-size:12px; color: #aeb6c2}
.card--wide{grid-column: 1 / -1}

.badge{
  font-size: 11px;
  padding:6px 10px;
  border-radius: 999px;
  border:1px solid rgba(255,122,26,.35);
  color: rgba(255,177,92,.95);
  background: rgba(255,122,26,.10);
  font-weight: 800;
  letter-spacing:.6px;
  text-transform: uppercase;
}

.mock{
  margin-top: 14px;
  height: 116px;
  border-radius: 14px;
  border:1px solid rgba(255,122,26,.18);
}
.mock--a{background: radial-gradient(circle at 30% 40%, rgba(255,177,92,.24), transparent 48%), radial-gradient(circle at 80% 70%, rgba(255,122,26,.18), transparent 54%);}
.mock--b{background: radial-gradient(circle at 30% 30%, rgba(255,177,92,.20), transparent 52%), radial-gradient(circle at 70% 75%, rgba(255,122,26,.18), transparent 55%);}
.mock--c{background: radial-gradient(circle at 25% 55%, rgba(255,177,92,.18), transparent 55%), radial-gradient(circle at 80% 35%, rgba(255,122,26,.16), transparent 60%);}

.hint{margin-top: 14px; color:#b9c1cc; font-size: 13px; line-height:1.6}

.grid2{margin-top:26px; display:grid; grid-template-columns: 1.2fr .8fr; gap:14px}
.panel{padding:22px; border-radius:18px}
.panel__title{margin:0; font-size:18px; font-weight:900}
.panel__text{margin:12px 0 0; color:#c9d0da; line-height:1.75}
.stack{display:grid; gap:14px}

.list{margin:12px 0 0; padding-left: 18px; color:#c9d0da; line-height:1.7; font-size:14px}
.list li{margin:6px 0}

.pillars{margin-top: 14px; display:grid; grid-template-columns: repeat(3, 1fr); gap:14px}
.pillar{padding:18px; border-radius:18px}
.pillar__kicker{font-size:12px; font-weight:900; color: rgba(255,177,92,.95); letter-spacing:.6px; text-transform:uppercase}
.pillar__text{margin-top:8px; color:#c9d0da; line-height:1.6; font-size: 13.5px}

.contact{margin-top:26px; display:grid; grid-template-columns: 1fr 1fr; gap:14px}
.contact__box{padding:22px; border-radius:18px}
.contact__grid{display:grid; grid-template-columns: 1fr 1fr; gap:12px}
.contact__item{padding:14px; border-radius:14px; background: rgba(0,0,0,.25); border:1px solid rgba(255,255,255,.10)}
.contact__item--wide{grid-column: 1 / -1}
.contact__kicker{font-size:12px; font-weight:900; color: rgba(255,177,92,.95)}
.contact__name{margin-top:6px; font-weight:800; color:#eef2f6}
.contact__val{margin-top:4px; color:#c9d0da; font-size:13px}
.small{margin-top:12px; font-size:12px; color:#a8b0bb; line-height:1.6}

.form{display:grid; grid-template-columns: 1fr 1fr; gap:12px}
.input{
  width:100%;
  padding:12px 12px;
  border-radius: 12px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.25);
  color: #f5f7fa;
  outline:none;
}
.input:focus{border-color: rgba(255,122,26,.7); box-shadow: 0 0 0 3px rgba(255,122,26,.18);}
.input--wide{grid-column: 1 / -1; border-radius:999px}
textarea.input--wide{border-radius: 14px}

.footer{
  border-top: 1px solid rgba(255,255,255,.10);
  padding: 28px 0 34px;
  text-align:center;
  color:#a8b0bb;
  font-size: 13px;
  position:relative;
  z-index:10;
}

/* Cinematic reveal */
.reveal{
  opacity:0;
  transform: translateY(28px);
  filter: blur(10px);
  transition: opacity .9s cubic-bezier(.2,.8,.2,1),
              transform .9s cubic-bezier(.2,.8,.2,1),
              filter .9s cubic-bezier(.2,.8,.2,1);
}
.reveal.in{
  opacity:1;
  transform: translateY(0px);
  filter: blur(0px);
}

/* Responsive */
@media (max-width: 980px){
  .cards--3{grid-template-columns: 1fr;}
  .cards--2{grid-template-columns: 1fr;}
  .stats{grid-template-columns: 1fr; }
  .grid2{grid-template-columns: 1fr;}
  .pillars{grid-template-columns: 1fr;}
  .contact{grid-template-columns: 1fr;}
  .nav{display:none;}
  .nav__cta{display:inline-flex;}
}