
:root{
  --bg: #0f172a; /* slate-900 */
  --panel: #111827; /* gray-900 */
  --text: #e5e7eb; /* gray-200 */
  --muted: #9ca3af; /* gray-400 */
  --accent: #22c55e; /* green-500 */
  --accent-600: #16a34a; /* green-600 */
  --white: #ffffff;
  --shadow: 0 10px 30px rgba(0,0,0,.2);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,'Noto Sans','Apple Color Emoji','Segoe UI Emoji';color:var(--text);background:var(--bg);line-height:1.6}
img{max-width:100%;display:block}
.container{width:min(1140px, 92%);margin-inline:auto}

.site-header{position:sticky;top:0;z-index:10;background:rgba(15,23,42,.9);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid rgba(255,255,255,.06)}
.site-header .container{display:flex;align-items:center;justify-content:space-between;padding:0.8rem 0}
.logo{font-weight:800;color:var(--white);text-decoration:none;letter-spacing:.5px}
.logo span{color:var(--accent)}
.nav{display:flex;gap:1rem;align-items:center}
.nav a{color:var(--text);text-decoration:none;font-weight:600;font-size:.95rem}
.nav a:hover{color:var(--white)}
.nav .btn{margin-left:.25rem}
.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.2);color:var(--text);padding:.35rem .6rem;border-radius:.4rem}

.hero{position:relative;isolation:isolate}
.hero__bg{position:absolute;inset:0;z-index:-1;overflow:hidden}
.hero__bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.55) saturate(1.05)}
.hero__content{padding:clamp(3rem, 6vw, 6rem) 0}
.hero h1{font-size:clamp(2rem,3.6vw,3.2rem);margin:0 0 .5rem}
.hero .accent{color:var(--accent)}
.lead{font-size:1.125rem;color:var(--text);max-width:60ch}
.cta{display:flex;gap:.75rem;margin-top:1rem;flex-wrap:wrap}

.section{padding:clamp(2.2rem, 4.5vw, 4rem) 0}
.section--alt{background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 60%)}
.section--tight{padding:2rem 0}
.section h2{font-size:1.8rem;margin:0 0 .6rem}
.section__intro{color:var(--muted);margin-bottom:1rem}

.grid{display:grid;gap:1rem}
.cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.card{background:var(--panel);border:1px solid rgba(255,255,255,.06);border-radius:.8rem;box-shadow:var(--shadow);overflow:hidden}
.card__body{padding:1rem}
.card h3{margin:.2rem 0 .6rem}
.card ul{padding-left:1.1rem;margin:.2rem 0 1rem}

.features{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.feature{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);padding:1rem;border-radius:.8rem}
.center{text-align:center}

.steps{counter-reset:step;display:grid;gap:.75rem}
.steps li{list-style:none;background:var(--panel);border:1px solid rgba(255,255,255,.06);padding:1rem;border-radius:.8rem;display:flex;gap:.75rem;align-items:flex-start}
.steps li span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--bg);font-weight:800;margin-right:.25rem}

.quotes{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
blockquote{margin:0;padding:1rem;background:var(--panel);border-left:4px solid var(--accent);border-radius:.4rem}
blockquote p{margin:0 0 .5rem}
blockquote cite{color:var(--muted);font-style:normal}

.contact{display:flex;gap:.75rem;flex-wrap:wrap}
.small{font-size:.9rem;color:var(--muted)}
.muted{color:var(--muted);font-size:.95rem}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:.6rem;border:1px solid rgba(255,255,255,.15);text-decoration:none;color:var(--white);font-weight:700;transition:transform .05s ease, background .2s ease}
.btn:active{transform:translateY(1px)}
.btn--primary{background:var(--accent);border-color:var(--accent-600);color:#0b1022}
.btn--primary:hover{background:var(--accent-600)}
.btn--ghost{background:transparent}
.btn--ghost:hover{background:rgba(255,255,255,.05)}
.btn--secondary{background:#334155;border-color:#475569}
.btn--secondary:hover{background:#1f2937}
.btn--sm{padding:.5rem .75rem;font-weight:700}

.site-footer{border-top:1px solid rgba(255,255,255,.06);padding:1rem 0;background:#0b1226}
.site-footer p{margin:.2rem 0}

@media (max-width: 900px){
  .nav{position:fixed;inset:60px 0 auto 0;transform:translateY(-120%);transition:transform .25s ease;background:rgba(15,23,42,.98);flex-direction:column;gap:0;padding:1rem .75rem}
  .nav a{padding:.75rem;border-bottom:1px solid rgba(255,255,255,.06)}
  .nav-toggle{display:block}
  .nav.open{transform:none}
}
