:root{
  --bg: #000000;
  --bg-alt: #0d0d0d;
  --text: #f7f9ff;
  --text-subtle: #dddfeb;
  --accent: #3CFCA4;
  --accent-hover: #34ed99;
  --accent-ink: #05060d;
  --border: rgba(255,255,255,0.12);
  --radius: 1rem;
  --max-w: 1200px;
  --font: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--font);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}

.kicker{
  display:flex;
  align-items:center;
  gap:0.5rem;
  font-size:0.85rem;
  font-weight:600;
  letter-spacing:0.02em;
  color:var(--text-subtle);
  margin-bottom:1rem;
}
.kicker-line{width:1rem;height:1px;background:var(--text-subtle);display:inline-block;}

h1,h2,h3{
  font-family:var(--font);
  font-weight:600;
  line-height:1.15;
  margin:0 0 1rem 0;
  white-space:pre-line;
}
h1{font-size:clamp(2.2rem, 4vw + 1rem, 3.6rem);}
h2{font-size:clamp(1.8rem, 3vw + 1rem, 2.6rem);}
h3{font-size:1.25rem;}
.lead{font-size:1.05rem;color:var(--text-subtle);max-width:42rem;}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0.7rem 1.4rem;
  border-radius:1rem;
  font-weight:600;
  font-size:0.95rem;
  border:1px solid transparent;
  transition:background-color .15s ease, color .15s ease, border-color .15s ease;
  cursor:pointer;
}
.btn-primary{background:var(--accent);color:var(--accent-ink);}
.btn-primary:hover{background:var(--accent-hover);}
.btn-secondary{background:transparent;color:var(--text);border:1px solid var(--border);}
.btn-secondary:hover{border-color:var(--text-subtle);}

/* HEADER */
.site-header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:50;
  background:rgba(0,0,0,0.55);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.header-inner{
  max-width:var(--max-w);
  margin:0 auto;
  padding:1rem 1.5rem;
  display:flex;
  align-items:center;
  gap:1.5rem;
}
.logo{height:2rem;width:auto;}
.main-nav{
  display:flex;
  gap:1.5rem;
  flex:1;
}
.main-nav a{font-size:0.9rem;color:var(--text);opacity:0.9;}
.main-nav a:hover{opacity:1;}
.header-cta{margin-left:auto;}
.nav-toggle{
  display:none;
  background:none;border:none;cursor:pointer;
  width:2.2rem;height:2.2rem;
  flex-direction:column;justify-content:center;gap:5px;
}
.nav-toggle span{display:block;width:100%;height:2px;background:var(--text);}

/* HERO */
.hero{padding-top:7rem;}
.hero-inner{
  max-width:var(--max-w);
  margin:0 auto;
  padding:1.5rem;
  display:flex;
  gap:2.5rem;
  align-items:center;
  flex-wrap:wrap;
}
.hero-image{flex:1 1 420px;border-radius:var(--radius);overflow:hidden;min-width:280px;}
.hero-image img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;}
.hero-text{flex:1 1 420px;min-width:280px;}

/* SECTIONS */
.section{padding:5rem 0;}
.section-alt{background:var(--bg-alt);}
.section-inner{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem;}
.section-head{max-width:42rem;margin-bottom:2.5rem;}
.section-actions{display:flex;gap:0.9rem;margin-top:2.5rem;flex-wrap:wrap;}

.grid{display:grid;gap:1.5rem;}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
@media (max-width:900px){
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .grid-4{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){
  .grid-3,.grid-4{grid-template-columns:1fr;}
}

.card{
  background:rgba(255,255,255,0.03);
  border:1px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
  padding-bottom:1.5rem;
}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.card h3{padding:1.2rem 1.2rem 0;}
.card p{padding:0 1.2rem;color:var(--text-subtle);font-size:0.95rem;}

.testimonial-grid .testimonial{
  background:rgba(255,255,255,0.03);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:1.5rem;
}
.testimonial img{width:3rem;height:3rem;border-radius:50%;object-fit:cover;margin-bottom:1rem;}
.testimonial blockquote{margin:0 0 1.2rem 0;font-size:0.95rem;color:var(--text-subtle);}
.testimonial figcaption{display:flex;flex-direction:column;font-size:0.9rem;}
.testimonial figcaption span{color:var(--text-subtle);font-size:0.85rem;}

.metrics .metric{display:flex;flex-direction:column;gap:0.4rem;}
.metric-num{font-size:2.6rem;font-weight:700;color:var(--accent);}
.metric strong{font-size:1rem;}
.metric p{color:var(--text-subtle);font-size:0.9rem;margin:0;}

.cta-band{padding:5rem 0;background:var(--bg-alt);text-align:center;}
.cta-inner{display:flex;flex-direction:column;align-items:center;max-width:42rem;}
.cta-band .kicker{justify-content:center;}

.banner-split, .text-split{
  display:flex;
  gap:2.5rem;
  align-items:center;
  flex-wrap:wrap;
}
.banner-image{flex:1 1 380px;min-width:260px;border-radius:var(--radius);overflow:hidden;}
.banner-image img{width:100%;object-fit:cover;aspect-ratio:4/5;}
.banner-text{flex:1 1 380px;min-width:260px;}
.text-split{max-width:48rem;margin:0 auto;flex-direction:column;align-items:flex-start;text-align:left;}

/* FOOTER */
.site-footer{padding:3rem 0;}
.footer-inner{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem;}
.footer-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;}
.footer-logo{transform:scale(1.4);transform-origin:left center;}
.footer-nav{display:flex;gap:1.5rem;flex-wrap:wrap;}
.footer-nav a{font-size:0.9rem;color:var(--text-subtle);}
.footer-nav a:hover{color:var(--text);}
hr{border:none;border-top:1px solid var(--border);margin:0 0 1.5rem;}
.copyright{font-size:0.85rem;color:var(--text-subtle);margin:0;}

/* RESPONSIVE NAV */
@media (max-width:860px){
  .main-nav{
    position:absolute;
    top:100%;left:0;right:0;
    background:rgba(0,0,0,0.95);
    flex-direction:column;
    padding:1rem 1.5rem;
    display:none;
    border-bottom:1px solid var(--border);
  }
  .main-nav.open{display:flex;}
  .nav-toggle{display:flex;}
  .header-cta{display:none;}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
}
