:root{
  --accent:#003366;
  --muted:#444;
  --radius:10px;
  --max-width:1100px;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  color:#111;
}
*{box-sizing:border-box}
body{margin:0;background:#ffffff;line-height:1.5;color:var(--muted)}
.container{max-width:var(--max-width);margin:0 auto;padding:1.2rem}
.site-header{background:white}
.banner{width:100%;height:auto;display:block}
.topnav{background:var(--accent);position:sticky;top:0;z-index:60}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 1rem;color:white}
.logo{color:white;font-weight:700;text-decoration:none}
#nav-toggle{display:none;background:transparent;border:0;color:white;font-size:1.4rem}
.site-nav a{margin-left:1rem;text-decoration:none;color:white;padding:.35rem .6rem;border-radius:6px}
.site-nav a.cta{background:white;color:var(--accent);font-weight:700}
.hero{padding:3rem 1rem;text-align:center;background:white}
.subtitle{color:var(--accent);margin-top:.4rem;font-weight:600}
.card{background:#f9fbff;margin-top:1rem;padding:1.1rem;border-radius:8px;box-shadow:0 6px 20px rgba(0,0,0,0.04)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.card-item{background:white;padding:1rem;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,0.04)}
.team-list, .contact-list{list-style:none;padding:0;margin:0;text-align:left}
.team-list li, .contact-list li{padding:.4rem 0;border-bottom:1px solid #eef3fb}
form label{display:block;margin-bottom:.6rem}
form input[type="text"], form input[type="email"], form input[type="datetime-local"], form textarea{width:100%;padding:.6rem;border:1px solid #ddd;border-radius:6px;margin-top:.3rem}
.btn{display:inline-block;padding:.7rem 1rem;border-radius:8px;background:var(--accent);color:white;border:0;cursor:pointer;margin-top:.6rem}
.site-footer{padding:1.2rem;text-align:center;color:#fff;background:var(--accent);margin-top:1.2rem}
@media(max-width:700px){
  .nav-inner{flex-direction:row-reverse}
  #nav-toggle{display:block}
  .site-nav{display:none;position:absolute;left:0;right:0;top:56px;background:var(--accent);padding:1rem}
  .nav-inner .logo{position:absolute;left:1rem}
  .site-nav a{display:block;margin:.5rem 0}
}
