
*{box-sizing:border-box}
:root{--green:#e6f9f0;--blue:#eef4ff;--beige:#f9f6ef;--text:#1c1d20;--muted:#6b7280}
body{font-family:'Open Sans',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);margin:0;background:#fff}
h1,h2,h3,h4{font-family:'Montserrat',sans-serif;margin:0 0 .5rem 0;color:#111827}
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:#374151;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 #eee;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}
.nav a{margin-left:16px;text-decoration:none;color:#374151}
.nav a:hover{color:#111827}
.hero{background:linear-gradient(180deg,#f8fafc,#ffffff);padding:56px 0 36px;border-bottom:1px solid #eee}
.hero.small{padding:40px 0}
.btn{display:inline-block;padding:12px 18px;border-radius:10px;border:1px solid #d1d5db;text-decoration:none;background:#fff}
.btn:hover{transform:translateY(-1px)}
.section{padding:28px 0}
.grid{display:grid;gap:16px}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.grid.three,.grid.two{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;box-shadow:0 2px 8px rgba(0,0,0,.03)}
.bg-green{background:var(--green)}.bg-blue{background:var(--blue)}.bg-beige{background:var(--beige)}
.footer-grid{display:grid;gap:16px;grid-template-columns:2fr 1.2fr 1fr;padding:18px 0}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr}}
.site-footer{border-top:1px solid #eee;margin-top:40px}
.copy{text-align:center;border-top:1px solid #eee;padding:12px 0}
form{margin-top:12px}
.form-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.form-grid{grid-template-columns:1fr}}
.form-group label{display:block;font-weight:600;margin-bottom:6px}
input[type="text"],input[type="tel"],input[type="email"]{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:12px;outline:none}
input:focus{border-color:#0ea5e9;box-shadow:0 0 0 3px rgba(14,165,233,.15)}
.check{display:flex;align-items:center;margin:10px 0;gap:8px}
.error{color:#b91c1c;margin-top:6px;display:block;min-height:1em}
ol.legal{padding-left:18px;line-height:1.6}
