
/* Brand font imports */
@import url('https://fonts.googleapis.com/css2?family=League+Spartan:wght@700;800&family=Oswald:wght@700&display=swap');

:root{
  --navy:#1C355E;
  --green:#2E7D32;
  --gray:#5C5C5C;
  --white:#FFFFFF;
  --sky:#2196F3;

  --ink:#0a1f2b;
  --bg:#ffffff;
  --muted:#334155;
  --accent: var(--green);
  --link: var(--navy);
  --border:#e5e7eb;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,'Apple Color Emoji','Segoe UI Emoji';
  color:var(--ink); line-height:1.6; background:#fff;
}
a{color:var(--link); text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1080px;margin:0 auto;padding:0 16px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:#fff;
  padding:14px 20px;border-radius:14px;font-weight:700;border:1px solid transparent; text-align:center}
.btn:hover{filter:brightness(0.96)}
.btn.secondary{background:#fff;border:1px solid var(--border);color:var(--navy)}
.tag{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;padding:6px 10px;font-size:14px;background:#fff}
.grid{display:grid;gap:20px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{border:1px solid var(--border);border-radius:16px;padding:20px;background:#fff}
header{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:saturate(180%) blur(6px);border-bottom:1px solid var(--border);z-index:40}
.nav{display:flex;align-items:center;gap:18px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px}
.logo img{height:120px;width:auto} /* requested 40px */
/* ====== Two-line logo text styling ====== */
.logo-text {
  font-family: 'League Spartan', 'Oswald', sans-serif;
  font-weight: 800;
  font-size: 22px;
  line-height: 1.1;
  text-transform: uppercase;
  margin-left: 6px; /* adds a little spacing after the logo image */
  display: inline-block;
  vertical-align: middle;
}
.logo-text .navy { color: #1C355E; }
.logo-text .green { color: #2E7D32; }

.hero{background:linear-gradient(180deg,#ffffff 0%,#f6f9ff 50%,#eef5ff 100%);border-bottom:1px solid var(--border)}
.hero h1{font-family:'League Spartan','Oswald',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif; font-size:40px;line-height:1.12;margin:10px 0;color:var(--navy);letter-spacing:.2px}
.hero p{font-size:18px;color:var(--muted)}
h1,h2,.logo span{font-family:'League Spartan','Oswald',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;letter-spacing:.2px}
h2{position:relative;display:inline-block;padding-bottom:6px;color:var(--navy)}
h2::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:60px;background:linear-gradient(90deg,var(--navy),var(--sky));border-radius:2px}
footer{border-top:1px solid var(--border);margin-top:48px}
.small{font-size:12px;color:#6b7280}
ul.clean{list-style:none;padding:0;margin:0}
ul.clean li{display:flex;align-items:flex-start;gap:8px;margin:6px 0}
.badge{display:inline-block;background:var(--navy);color:#fff;font-weight:800;padding:2px 8px;border-radius:999px;font-size:12px}

/* Mobile optimizations */
@media (max-width: 900px){
  .grid-2,.grid-3{grid-template-columns:1fr}
  .hero h1{font-size:32px}
  .btn{padding:16px 18px}
  .nav{gap:12px}
}
/* Sticky mobile call/book bar */
.mobile-cta{display:none}
@media (max-width:640px){
  .mobile-cta{
    display:flex; position:fixed; left:0; right:0; bottom:0; z-index:50; gap:10px;
    padding:10px; background:rgba(255,255,255,.96); border-top:1px solid var(--border); backdrop-filter: blur(6px);
  }
  body{padding-bottom:72px} /* room for sticky bar */
  .mobile-cta .btn{flex:1}
}
