*{box-sizing:border-box}html,body{margin:0}
body{font-family:Montserrat,system-ui,-apple-system,Segoe UI,Roboto,Arial;background:#F8F7F5;color:#2F4A75}
a{color:#2F4A75;text-decoration:none}
.container{max-width:1100px;margin:0 auto;padding:16px}
.row{display:flex;justify-content:space-between;align-items:center}
.topbar{position:fixed;top:0;left:0;right:0;background:rgba(248,247,245,0.95);backdrop-filter:blur(6px);box-shadow:0 2px 8px rgba(0,0,0,0.06);z-index:50}
.logo{height:38px}
.nav{display:flex;gap:18px;font-weight:600}
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding-top:80px;background-size:cover;background-position:center}
.overlay{background:rgba(0,0,0,0.35);padding:32px;border-radius:18px;max-width:1000px;text-align:center;color:#fff}
.overlay h1{margin:0 0 12px;font-size:42px;color:#fff}
.overlay p{color:#F8F7F5;max-width:900px;margin:0 auto 22px;line-height:1.6;text-align:center;text-wrap:balance;line-break:strict;word-spacing:0.1em}
.btn{display:inline-block;background:#2F4A75;color:#F8F7F5;padding:12px 22px;border-radius:24px}
.section{padding:90px 24px;text-align:center}
.section-title{text-align:center;color:#2F4A75;font-size:44px;margin:0 0 24px}
.cards{max-width:1100px;margin:24px auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
.card{background:#fff;padding:22px;border-radius:14px;box-shadow:0 6px 18px rgba(0,0,0,0.04);text-align:center}
.card p{text-align:center;line-height:1.6;margin-left:auto;margin-right:auto;text-wrap:balance;line-break:strict;word-spacing:0.1em}
.textblock{max-width:900px;margin:0 auto;line-height:1.6}
.textblock.center{text-align:center}
.textblock.small{max-width:640px;text-align:center}
.textblock p{text-wrap:balance;line-break:strict;word-spacing:0.1em;margin-bottom:1em}
ul.bullets{list-style:none;padding:0;margin:1em auto;text-align:left;display:inline-block}
ul.bullets li{margin:6px 0;position:relative;padding-left:18px}
ul.bullets li::before{content:"•";position:absolute;left:0;color:#2F4A75;font-weight:bold}
.contact-title{font-size:36px;margin:0 0 10px;text-align:center}
.contact-title .black{color:#000}
.contact-title .navy{color:#2F4A75}
.form{max-width:640px;margin:20px auto;display:grid;gap:12px}
.form input,.form textarea{padding:12px;border-radius:8px;border:1px solid #ddd;background:#fff;color:#2F4A75}
.status{text-align:center;margin-top:8px}
.footer{background:#2F4A75;color:#F8F7F5;text-align:center;padding:20px}
@media(max-width:700px){.nav{display:none}}
