:root{
  --bg:#0b0c10; --panel:#121317; --text:#e8eaf0; --muted:#a7adba;
  --brand:#3f86ff; --brand-ink:#0f2f66; --ring:0 0 0 .2rem rgba(63,134,255,.35);
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif}
img{max-width:100%;height:auto;border-radius:.5rem}
.brand .logo{height:40px !important;width:auto !important;border-radius:0;background:none;padding:0;flex-shrink:0;object-fit:contain;max-width:none}
a{color:var(--brand);text-decoration:none}
a:focus,button:focus,.btn:focus{outline:none;box-shadow:var(--ring)}
.container{width:min(1100px,92%);margin-inline:auto}
.section{padding:4rem 0}
.section.alt{background:var(--panel)}
h1,h2,h3{line-height:1.2;margin:0 0 .75rem}
h1{font-size:clamp(1.8rem,2.5vw,2.6rem)}
h2{font-size:clamp(1.4rem,2vw,2rem)}
.small{color:var(--muted);font-size:.9rem}
.from{color:var(--muted);margin-top:.5rem}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(11,12,16,.85);backdrop-filter:saturate(120%) blur(8px);border-bottom:1px solid #1c1f26}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0}
.brand{display:flex;gap:.6rem;align-items:center;color:var(--text);font-weight:700}
.nav-toggle{display:none;background:none;border:1px solid #272a33;border-radius:.5rem;padding:.4rem .6rem;color:var(--text)}
.nav-menu{display:flex;gap:1rem;list-style:none;margin:0;padding:0}
.nav-menu a{padding:.5rem .7rem;border-radius:.5rem}
.btn{display:inline-block;border:1px solid #2a2e39;border-radius:.6rem;padding:.65rem 1rem}
.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}
.btn-primary:hover{filter:brightness(1.05)}

/* Hero */
.hero{padding:3.5rem 0 2.5rem}
.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center}
.hero-ctas{display:flex;gap:.75rem;margin:1rem 0}
.badges{display:flex;gap:1rem;list-style:none;margin:1rem 0 0;padding:0;color:#c9d1e5}

/* Cards & grids */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.card{background:var(--panel);border:1px solid #1f2330;border-radius:.8rem;padding:1rem}

/* Masonry-ish gallery */
.masonry{columns:2;column-gap:1rem}
.masonry img{break-inside:avoid;margin-bottom:1rem}

/* Reviews */
.reviews{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.reviews blockquote{margin:0;background:#0f1117;border:1px solid #222638;padding:1rem;border-radius:.8rem}

/* Form */
.form{display:grid;gap:1rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
input,select,textarea{width:100%;background:#0e1016;color:var(--text);border:1px solid #262a36;border-radius:.6rem;padding:.7rem}
input:focus,select:focus,textarea:focus{box-shadow:var(--ring);border-color:var(--brand)}
label{display:grid;gap:.4rem}

/* Footer */
.site-footer{border-top:1px solid #1c1f26;padding:2rem 0}
.footer-inner{display:flex;align-items:center;justify-content:space-between}

/* Accessibility helpers */
.skip-link{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:static;width:auto;height:auto;padding:.5rem;background:#fff;color:#000}

/* Responsive */
@media (max-width: 900px){
  .hero-inner{grid-template-columns:1fr}
  .grid{grid-template-columns:repeat(2,1fr)}
  .form-row{grid-template-columns:1fr}
}
@media (max-width: 680px){
  .nav-toggle{display:block}
  .nav-menu{display:none;flex-direction:column;position:absolute;right:4%;top:3.2rem;background:#0e1016;border:1px solid #242736;padding:.6rem;border-radius:.6rem}
  .nav-menu.open{display:flex}
}
