:root{--navy:#101D35;--royal:#183F70;--gold:#C6A76A;--ivory:#FAF9F6;--grey:#E9ECF0}
body{font-family:Manrope,sans-serif;background:var(--ivory);color:#1c2538;line-height:1.7}
h1,h2,h3,.navbar-brand{font-family:'Playfair Display',serif;color:var(--navy)}
.site-nav{background:rgba(250,249,246,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--grey)}
.navbar-brand{font-weight:700;font-size:1.5rem}.navbar-brand small{display:block;font:500 .72rem Manrope;color:var(--royal)}
.nav-link{color:var(--navy);font-weight:500}
.btn-gold{background:var(--gold);color:var(--navy);font-weight:700;border-radius:2px;padding:.7rem 1.5rem;border:0}.btn-gold:hover{background:#b8975a;color:var(--navy)}
.btn-ghost{border:1px solid #fff;color:#fff;border-radius:2px;padding:.7rem 1.5rem}.btn-ghost:hover{background:#fff;color:var(--navy)}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.hero{background:linear-gradient(105deg,var(--navy) 55%,var(--royal));color:#fff;padding:7rem 0 6rem;position:relative;overflow:hidden}
.hero h1{color:#fff;font-size:clamp(2.4rem,5.5vw,4.4rem);line-height:1.1;max-width:15ch}.hero .lead{max-width:48ch;color:#d5dbe6}
.hero .rule{width:72px;height:3px;background:var(--gold);margin:1.5rem 0}
.hero-art{position:absolute;right:-60px;top:50%;transform:translateY(-50%);width:520px}
@media(max-width:991px){.hero-art{display:none}.hero{padding:4.5rem 0}}
section{padding:5.5rem 0}.sec-title{font-size:clamp(1.8rem,3.5vw,2.6rem);max-width:22ch}
.pillars{background:#fff;border-bottom:1px solid var(--grey);padding:2.5rem 0}
.pillar{border-left:3px solid var(--gold);padding-left:1rem;font-weight:600;color:var(--navy)}
.plan{background:#fff;border:1px solid var(--grey);padding:1.8rem;height:100%;transition:border-color .25s,transform .25s}.plan:hover{border-color:var(--gold);transform:translateY(-4px)}
.plan svg{width:34px;height:34px;stroke:var(--royal);fill:none;stroke-width:1.6;margin-bottom:1rem}.plan a{color:var(--royal);font-weight:600;text-decoration:none}
.alt{background:var(--grey)}
.steps{counter-reset:s;list-style:none;padding:0}.steps li{counter-increment:s;padding:1.2rem 0 1.2rem 4rem;position:relative;border-top:1px solid #cfd5de}
.steps li:before{content:counter(s);position:absolute;left:0;font:600 2rem 'Playfair Display';color:var(--gold)}
.cta{background:var(--navy);color:#fff;text-align:center}.cta h2{color:#fff;max-width:20ch;margin:0 auto 1rem}
.site-foot{background:#0a1224;color:#b9c2d3;padding:2.5rem 0}
.wa-float{position:fixed;right:18px;bottom:18px;background:#128c4a;color:#fff;padding:.7rem 1.1rem;border-radius:30px;font-weight:700;text-decoration:none;z-index:99}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
