
:root {
  --accent: #FF0000;
  --bg:#121212;
  --panel:#16171a;
  --panel-2:#1d1f23;
  --text:#EAEAEA;
  --muted:#A7ABB3;
  --border:rgba(255,255,255,0.08);
  --shadow:0 10px 30px rgba(0,0,0,0.45);
  --radius:16px;
  --card-border: color-mix(in srgb, var(--accent) 35%, transparent);
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
background:radial-gradient(1200px 800px at 80% -10%,rgba(255,0,0,0.15),transparent 60%),var(--bg);color:var(--text);line-height:1.6;}
a{color:inherit;text-decoration:none}
.topbar{position:sticky;top:0;z-index:50;background:var(--accent);color:#fff;display:flex;align-items:center;gap:1rem;padding:.9rem 1.25rem;box-shadow:var(--shadow);}
.brand a{font-weight:800;letter-spacing:.2px;font-size:clamp(1.4rem,3.8vw,2.2rem);color:#fff}
.menu-btn{appearance:none;border:0;background:rgba(0,0,0,.15);color:#fff;width:46px;height:46px;border-radius:12px;cursor:pointer;font-size:1.25rem}
.drawer{position:fixed;inset:0;display:none}
.drawer.open{display:block}
.drawer .backdrop{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.drawer .panel{position:absolute;left:0;top:60px;bottom:0;width:320px;background:var(--panel);
  border-right:1px solid var(--border);box-shadow:var(--shadow);padding:1rem;overflow:auto;
  transform:translateX(-100%);transition:transform .25s ease}
.drawer.open .panel{transform:translateX(0)}
.nav-group{margin:.5rem 0 1.25rem}
.nav-group h4{font-size:.9rem;color:var(--muted);margin:.5rem 0 .5rem;text-transform:uppercase;letter-spacing:.08em}
.nav .btn{display:block;background:var(--accent);color:#fff;padding:.65rem .9rem;border-radius:12px;margin:.35rem 0;font-weight:700;text-align:center}
.nav .btn:hover{filter:brightness(1.05)}
header.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:1.5rem;align-items:center;padding:1.5rem 1.25rem;max-width:1100px;margin:0 auto}
.hero h1{font-size:clamp(2rem,4.5vw,3.2rem);margin:0 0 .25rem 0}
.hero p{color:var(--muted);margin:0}
.hero-photo{height:240px;overflow:hidden;border-radius:18px;box-shadow:var(--shadow)}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
h2.section{max-width:1100px;margin:.25rem auto .75rem;padding:0 1.25rem;font-size:1.4rem}
h2.section span{color:var(--accent)}
.card-grid{max-width:1100px;margin:0 auto 2rem;padding:0 1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:var(--panel);border: 1px solid var(--card-border); border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column}
/* make the outline pop a bit on hover (optional) */
.card:hover { border-color: var(--accent); }
.card h3{margin:1rem 1rem .6rem;font-size:1.15rem}
.card img{width:100%;height:160px;object-fit:cover;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.card .body{padding:.8rem 1rem 1rem;color:var(--muted);flex:1}
.card .actions{padding:0 1rem 1.1rem}
.btn{display:inline-block;background:var(--accent);color:#fff;padding:.6rem 1rem;border-radius:12px;font-weight:700}
.footer{margin-top:2rem;background:var(--accent);color:#fff;padding:1rem 1.25rem;text-align:center}
@media (max-width:860px){header.hero{grid-template-columns:1fr} .hero-photo{height:200px}}
