:root { --blue:#0b3a6e; --yellow:#f5b700; --ink:#222; --bg:#f6f7f9; }
* { box-sizing:border-box; }
body { margin:0; font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; color:var(--ink); }
a { color:var(--blue); }
.wrap { max-width:1060px; margin:0 auto; padding:0 20px; }
.site-header { border-bottom:3px solid var(--yellow); background:#fff; }
.bar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; padding-top:8px; padding-bottom:8px; }
nav a { margin-left:20px; text-decoration:none; font-weight:600; }
.hero { background:linear-gradient(rgba(11,58,110,.82),rgba(11,58,110,.82)),url("/assets/slide1.png") center/cover; color:#fff; padding:90px 0; }
.hero h1 { font-size:clamp(1.8rem,4vw,2.8rem); margin:0 0 12px; }
.btn { display:inline-block; background:var(--yellow); color:#111; border:0; padding:12px 22px; border-radius:4px; font-weight:700; text-decoration:none; cursor:pointer; font-size:1rem; margin:8px 8px 0 0; }
.btn.alt { background:transparent; color:#fff; border:2px solid #fff; padding:10px 20px; }
section.wrap { padding-top:40px; padding-bottom:40px; }
.checks { list-style:none; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:8px; }
.checks li::before { content:"✔ "; color:var(--blue); }
.cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:20px; margin:24px 0; }
.card { background:var(--bg); padding:20px; border-radius:6px; border-top:4px solid var(--yellow); }
.card ul { padding-left:20px; }
blockquote { border-left:4px solid var(--yellow); margin:20px 0; padding-left:16px; font-style:italic; }
.prose { max-width:820px; }
.contact label { display:block; margin-top:14px; font-weight:600; }
.contact input[type=text],.contact input[type=email],.contact input[type=tel],.contact textarea { width:100%; padding:10px; border:1px solid #bbb; border-radius:4px; font:inherit; }
.hp { position:absolute; left:-9999px; }
.flash { padding:12px 16px; border-radius:4px; } .ok { background:#e5f6e8; } .err { background:#fde8e8; }
.site-footer { background:var(--blue); color:#fff; padding:30px 0; } .site-footer a { color:var(--yellow); } .small { font-size:.85rem; opacity:.8; }
