:root{
  --bg: #0b0d12;
  --card: rgba(255,255,255,.07);
  --card2: rgba(255,255,255,.10);
  --text: rgba(255,255,255,.92);
  --muted: rgba(255,255,255,.68);
  --line: rgba(255,255,255,.14);

  /* WhistleVenky brand accents (from your logo) */
  --a1: #D05040;  /* coral */
  --a2: #F0D050;  /* warm yellow */
  --a3: #FFFFFF;  /* white highlight */
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: Manrope, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: var(--bg);
  color: var(--text);
  line-height: 1.55;
}
a{color:inherit;text-decoration:none}
a:hover{opacity:.9}
.container{width:min(1120px, 92%); margin:0 auto}

.header{
  position: sticky; top:0; z-index:50;
  background: rgba(11,13,18,.70);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line);
}
.nav{
  display:flex; align-items:center; justify-content:space-between;
  padding: 14px 0; gap: 12px;
}
.brand{display:flex; align-items:center; gap:10px; font-weight:800}
.brand__logo{width:34px;height:34px; object-fit:contain}
.brand__name{letter-spacing:.2px}

.nav__links{display:flex; align-items:center; gap:18px; font-weight:600}
.nav__toggle{
  display:none; width:44px;height:44px;
  border:1px solid var(--line);
  background: transparent;
  border-radius: 12px; cursor:pointer;
}
.nav__toggle span{display:block;height:2px;margin:6px 10px;background: rgba(255,255,255,.7)}

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 12px 16px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, var(--a1), var(--a2));
  color: #0b0d12;
  font-weight: 900;
  letter-spacing:.2px;
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
}
.btn--ghost{
  background: transparent;
  color: white;
  border:1px solid rgba(255,255,255,.22);
}
.btn--small{padding:9px 12px; border-radius: 12px; font-weight:900}

.hero{position: relative; padding: 72px 0 40px; overflow:hidden;}
.hero__bg{
  position:absolute; inset:-40% -20% auto -20%;
  height: 520px;
  background:
    radial-gradient(circle at 20% 30%, rgba(208,80,64,.40), transparent 55%),
    radial-gradient(circle at 60% 40%, rgba(240,208,80,.30), transparent 55%),
    radial-gradient(circle at 80% 10%, rgba(255,255,255,.12), transparent 55%);
  filter: blur(8px);
  pointer-events:none;
  z-index:0;
}
.hero__grid{
  position:relative; z-index:1;
  display:grid; gap: 26px;
  grid-template-columns: 1.15fr .85fr;
  align-items: start;
}
.pill{
  display:inline-flex; gap:8px;
  padding: 8px 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  background: rgba(255,255,255,.05);
  font-weight: 700;
  color: rgba(255,255,255,.82);
}
h1{
  margin: 12px 0 10px;
  font-size: clamp(34px, 4.2vw, 56px);
  line-height: 1.05;
  letter-spacing: -1px;
}
.grad{
  background: linear-gradient(135deg, var(--a2), var(--a1));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.lead{font-size: 1.08rem; color: rgba(255,255,255,.82); max-width: 60ch;}
.hero__cta{display:flex; gap: 12px; margin: 18px 0 14px; flex-wrap:wrap}
.socials{display:flex; gap: 12px; flex-wrap:wrap; margin: 10px 0 18px}
.social{
  font-weight: 700;
  color: rgba(255,255,255,.78);
  border-bottom:1px solid rgba(255,255,255,.25);
  padding-bottom:2px;
}
.stats{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
}
.stat{
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  border-radius: 18px;
  padding: 14px;
}
.stat__num{font-weight: 900}
.stat__label{color: rgba(255,255,255,.68); font-weight:700; font-size:.92rem}

.card{
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.05);
  border-radius: 22px;
  overflow:hidden;
}
.card__pad{padding: 14px 16px}
.card__kicker{margin:0;color: rgba(255,255,255,.68);font-weight:700}
.card__title{margin:6px 0 0; font-weight:900}
.card__bottom{padding: 12px 16px; border-top: 1px solid rgba(255,255,255,.12)}
.link{font-weight:900;color: rgba(255,255,255,.85)}
.video{aspect-ratio: 16/9; background: rgba(0,0,0,.35);}
.video iframe{width:100%; height:100%}

.mini{
  margin-top: 14px;
  border:1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  padding: 16px;
  background: rgba(255,255,255,.04);
}
.mini__title{margin:0; font-weight:900}
.mini__text{margin:6px 0 12px; color: rgba(255,255,255,.70)}

.section{padding: 64px 0}
.section--alt{background: rgba(255,255,255,.03); border-top:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08)}
.section-head{display:flex; align-items:end; justify-content:space-between; gap: 14px; flex-wrap:wrap}

h2{margin:0 0 12px; font-size: 30px; letter-spacing:-.6px}
h3{margin:0 0 8px; font-size: 18px}
.muted{color: var(--muted)}
.small{font-size: .92rem}

.two-col{display:grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: start;}
.about-card{
  border:1px solid rgba(255,255,255,.14);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  padding: 16px;
}
.about-card__inner{padding: 10px}
.list{display:grid; gap: 10px; margin: 10px 0 12px}
.list__item{
  padding: 12px 14px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  font-weight:900;
}
.chips{display:flex; gap: 10px; flex-wrap:wrap; margin-top: 14px}
.chip{
  padding: 8px 10px;
  border:1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  background: rgba(255,255,255,.04);
  font-weight: 700;
  color: rgba(255,255,255,.78);
}

.grid-3{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
  margin-top: 16px;
}

.feature{
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  border-radius: 22px;
  padding: 16px;
}

.form label{display:grid; gap: 8px; margin: 12px 0}
.form span{font-weight:900}
input, textarea{
  width:100%;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(0,0,0,.25);
  color: var(--text);
  outline:none;
}
input:focus, textarea:focus{border-color: rgba(240,208,80,.55)}
.contact-line{margin: 8px 0}
.center{display:flex; justify-content:center; margin-top: 16px}

.footer{
  padding: 28px 0;
  border-top: 1px solid rgba(255,255,255,.10);
}
.footer__row{display:flex; align-items:center; justify-content:space-between; gap: 12px; flex-wrap:wrap}
.footer__links{display:flex; gap: 14px; font-weight:900; color: rgba(255,255,255,.75)}

@media (max-width: 900px){
  .hero__grid{grid-template-columns: 1fr}
  .two-col{grid-template-columns: 1fr}
  .grid-3{grid-template-columns: 1fr}
  .nav__toggle{display:block}
  .nav__links{
    position:absolute;
    top:64px; right: 4%;
    left: 4%;
    display:none;
    flex-direction:column;
    gap: 12px;
    padding: 14px;
    border-radius: 18px;
    border:1px solid rgba(255,255,255,.14);
    background: rgba(11,13,18,.92);
  }
  .nav__links.is-open{display:flex}
}