:root{--navy:#001846;--gold:#CEA00F;--gold-d:#9c7800;--cream:#f7f4ec;--ink:#1d2433}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);line-height:1.7;font-size:1.05rem}
h1,h2,h3,h4,.serif{font-family:'Playfair Display',Georgia,serif;color:var(--navy);line-height:1.2}
h2{font-size:clamp(1.8rem,4vw,2.7rem);margin-bottom:1rem}
.eyebrow{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d);font-weight:600;display:block;margin-bottom:.8rem}
section{padding:clamp(3.5rem,8vw,6.5rem) 0}
.bg-cream{background:var(--cream)}.bg-navy{background:var(--navy);color:#e6eaf3}
.bg-navy h2,.bg-navy h3,.bg-navy h4{color:#fff}.bg-navy .eyebrow{color:var(--gold)}
.navbar{background:rgba(255,255,255,.97);box-shadow:0 1px 0 rgba(0,24,70,.1)}
.navbar-brand img{height:46px;width:auto}
.nav-link{color:var(--navy);font-size:.92rem;font-weight:500}.nav-link:hover{color:var(--gold-d)}
.btn-fp{background:var(--gold);color:var(--navy);font-weight:600;letter-spacing:.04em;border-radius:0;padding:.85rem 1.7rem;border:2px solid var(--gold)}
.btn-fp:hover,.btn-fp:focus{background:var(--navy);color:#fff;border-color:var(--navy)}
.bg-navy .btn-fp:hover{background:transparent;color:var(--gold);border-color:var(--gold)}
.btn-ol{border:2px solid var(--navy);color:var(--navy);border-radius:0;padding:.85rem 1.7rem;font-weight:600}
.btn-ol:hover{background:var(--navy);color:#fff}
.hero{background:var(--navy);color:#e6eaf3;padding:0;overflow:hidden}
.hero .row{min-height:min(88vh,760px)}
.hero h1{color:#fff;font-size:clamp(2.2rem,5.4vw,4rem)}.hero h1 em{color:var(--gold);font-style:normal}
.hero-img{height:100%;min-height:420px;object-fit:cover;object-position:50% 12%;width:100%}
.award{border:1px solid var(--gold);padding:1rem 1.3rem;display:inline-block;color:#fff}
.award strong{color:var(--gold);display:block;letter-spacing:.08em}
.photo{width:100%;height:100%;object-fit:cover;object-position:50% 15%;max-height:640px}
.num-card{border-top:3px solid var(--gold);background:#fff;padding:1.6rem;height:100%;box-shadow:0 8px 30px rgba(0,24,70,.07)}
.num-card h3{font-size:1.15rem;letter-spacing:.08em}
.step{font-family:'Playfair Display',serif;font-size:3rem;color:var(--gold);line-height:1}
.ticks{list-style:none;padding:0;columns:2;column-gap:2rem}
.ticks li{padding-left:1.4rem;position:relative;break-inside:avoid;margin-bottom:.35rem}
.ticks li:before{content:"";position:absolute;left:0;top:.7em;width:.7rem;height:2px;background:var(--gold)}
.pull{font-family:'Playfair Display',serif;font-size:clamp(1.3rem,2.6vw,1.8rem);color:var(--navy);border-left:4px solid var(--gold);padding-left:1.2rem;margin:1.8rem 0}
.bg-navy .pull{color:#fff}
.form-control,.form-select{border-radius:0;padding:.75rem}
.form-control:focus,.form-select:focus{border-color:var(--gold);box-shadow:0 0 0 .2rem rgba(206,160,15,.25)}
footer{background:#000f2e;color:#9aa6c0;font-size:.9rem;padding:3rem 0 5rem}
footer a{color:#cfd6e6;text-decoration:none}footer a:hover{color:var(--gold)}
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:1030;display:none}
.sticky-cta .btn{width:100%;border-radius:0;padding:1rem}
.note{font-size:.82rem;opacity:.75}
@media(max-width:991.98px){.ticks{columns:1}.hero .row{min-height:0}.hero-img{min-height:360px;max-height:480px;object-position:50% 8%}.sticky-cta{display:block}.navbar-collapse{padding:1rem 0}}
@media(max-width:575.98px){body{font-size:1rem}.btn-fp,.btn-ol{width:100%;text-align:center}}
