*{box-sizing:border-box}
:root{
  --deep-bluegray:#1e293b;
  --light-gray:#f1f5f9;
  --accent-mint:#5eead4;
  --text:#1c1d20;
  --muted:#64748b;
}
body{font-family:'Open Sans',system-ui,sans-serif;color:var(--text);margin:0;background:#fff}
h1,h2,h3,h4{font-family:'Montserrat',sans-serif;margin:0 0 .5rem 0;color:#0f172a}
h1{font-size:clamp(28px,4vw,40px);line-height:1.2}
h2{font-size:clamp(22px,3vw,28px)}
h3{font-size:clamp(18px,2.5vw,22px)}
.lead{font-size:1.1rem;color:#475569;margin-top:.5rem}
.small{font-size:.9rem}
.tiny{font-size:.8rem}
.muted{color:var(--muted)}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #e2e8f0;z-index:10}
.site-header .container{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{font-weight:700;font-family:'Montserrat',sans-serif;color:#1e293b}
.nav a{margin-left:16px;text-decoration:none;color:#475569}
.nav a:hover{color:#0f172a}
.hero{background:linear-gradient(180deg,#f8fafc,#ffffff);padding:56px 0 36px;border-bottom:1px solid #e2e8f0}
.hero.small{padding:40px 0}
.btn{display:inline-block;padding:12px 24px;border-radius:10px;border:1px solid #cbd5e1;background:#fff;text-decoration:none;font-weight:600;color:#1e293b}
.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.1)}
.section{padding:32px 0}
.grid{display:grid;gap:20px}
.grid.two{grid-template-columns:repeat(2,1fr)}
.grid.three{grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.grid.two,.grid.three{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,.03)}
.bg-deep-bluegray{background:var(--deep-bluegray);color:#fff}
.bg-light-gray{background:var(--light-gray)}
.bg-accent-mint{background:var(--accent-mint);color:#000}
.footer-grid{display:grid;gap:20px;grid-template-columns:2fr 2fr 1fr;padding:20px 0}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr}}
.site-footer{border-top:1px solid #e2e8f0;margin-top:40px;background:#f8fafc}
.copy{text-align:center;padding:16px 0;border-top:1px solid #e2e8f0;background:#fff}
.form-grid{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.form-grid{grid-template-columns:1fr}}
.form-group label{display:block;font-weight:600;margin-bottom:8px;color:#1e293b}
input[type="text"],input[type="tel"],input[type="email"]{width:100%;padding:14px;border:1px solid #cbd5e1;border-radius:12px;outline:none;font-size:1rem}
input:focus{border-color:#5eead4;box-shadow:0 0 0 3px rgba(94,234,212,.2)}
.check{display:flex;align-items:center;gap:8px;margin:16px 0;font-size:.95rem;color:#475569}
ol.legal{padding-left:24px;line-height:1.7}