:root{--navy:#1E3A6C;--deep:#14294D;--aqua:#4BB7C9;--mist:#A9D8E2;--paper:#FCFDFF;--slate:#4B5563;--line:rgba(30,58,108,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--navy);font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.55}
h1,h2,h3{font-family:'Montserrat',sans-serif;margin:0}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
a{color:inherit}
.nav{position:sticky;top:0;z-index:10;background:rgba(252,253,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:'Montserrat',sans-serif;font-weight:700;font-size:15px;letter-spacing:.02em;text-transform:uppercase;line-height:1.1}
.logo .mono{height:42px;width:42px;border-radius:10px;background:var(--navy);color:var(--aqua);display:grid;place-items:center;font-family:'Montserrat',sans-serif;font-weight:800;font-size:16px;letter-spacing:0}
.logo small{display:block;font-family:'Inter',sans-serif;font-weight:500;font-size:11px;color:var(--slate);letter-spacing:.08em}
.links{display:flex;gap:6px;align-items:center}
.links a{text-decoration:none;font-size:14px;font-weight:600;padding:8px 12px;border-radius:8px}
.links a:hover{background:rgba(75,183,201,.15)}
.links .cta{background:var(--navy);color:#fff}.links .cta:hover{background:var(--deep)}
@media(max-width:640px){.links a:not(.cta){display:none}}
.hero{padding:56px 0 40px;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.eyebrow{font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin:0 0 16px;padding-left:12px;border-left:4px solid var(--aqua)}
h1{font-weight:800;font-size:clamp(32px,5vw,54px);line-height:1.06;letter-spacing:-.015em;margin-bottom:18px}
h1 em{font-style:normal;background:linear-gradient(transparent 62%,rgba(75,183,201,.5) 62%);padding:0 4px}
.lede{font-size:18px;color:var(--slate);max-width:52ch;margin:0 0 24px}
.photo{aspect-ratio:4/5;border-radius:20px;background:linear-gradient(160deg,var(--navy),var(--deep));position:relative;overflow:hidden;box-shadow:0 24px 50px -24px rgba(20,41,77,.6)}
.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.photo .ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;padding:24px;gap:8px}
.photo .ph b{font-family:'Montserrat',sans-serif;font-size:64px;color:var(--aqua)}
.photo .ph span{font-size:13px;opacity:.75}
.tag{position:absolute;left:16px;bottom:16px;background:#fff;color:var(--navy);padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600;box-shadow:0 6px 18px -8px rgba(0,0,0,.4)}
@media(max-width:820px){.hero{grid-template-columns:1fr;gap:28px;padding-top:32px}.photo{aspect-ratio:16/10;max-height:300px}.photo .ph{padding-bottom:64px}.photo .ph b{font-size:44px}}
.doors{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:8px 0 64px}
@media(max-width:720px){.doors{grid-template-columns:1fr}}
.door{display:flex;flex-direction:column;border-radius:18px;padding:32px 30px;text-decoration:none;transition:transform .15s,box-shadow .15s;min-height:260px}
.door:hover{transform:translateY(-3px)}
.door.a{background:var(--navy);color:#fff;box-shadow:0 14px 34px -14px rgba(20,41,77,.6)}
.door.b{background:var(--mist);border:1.5px solid rgba(30,58,108,.18)}
.door .label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;margin-bottom:10px;color:var(--aqua)}
.door.b .label{color:var(--navy)}
.door h2{font-size:26px;margin-bottom:10px}
.door p{margin:0 0 auto;font-size:15px;opacity:.85}
.door .go{margin-top:22px;font-weight:700;font-size:15px}
.door.a .go{color:var(--aqua)}
section{margin-bottom:64px}
.sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.sec-head h2{font-size:26px}.sec-head p{margin:0;color:var(--slate);font-size:14px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media(max-width:820px){.grid3,.grid2{grid-template-columns:1fr}}
.box{background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:22px;text-decoration:none;display:block}
a.box:hover{border-color:var(--aqua);transform:translateY(-2px);transition:.15s}
.box h3{font-size:17px;margin-bottom:6px}.box p{margin:0;color:var(--slate);font-size:14px}
.icon{width:38px;height:38px;border-radius:10px;background:rgba(75,183,201,.18);display:grid;place-items:center;margin-bottom:12px;font-size:19px}
.soon{opacity:.62}
.badge{display:inline-block;font-size:11px;letter-spacing:.04em;text-transform:uppercase;font-weight:700;background:rgba(75,183,201,.15);border:1px solid rgba(75,183,201,.55);padding:3px 9px;border-radius:999px;margin-bottom:10px}
.quote{background:var(--deep);color:#fff;border-radius:14px;padding:24px}
.quote p{margin:0 0 12px;font-size:15px}.quote small{color:var(--aqua);font-weight:600}
.btn{display:inline-block;background:var(--navy);color:#fff;text-decoration:none;font-weight:700;padding:14px 22px;border-radius:12px;font-size:15px}
.btn.alt{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}
.btns{display:flex;gap:12px;flex-wrap:wrap}
footer{border-top:1px solid var(--line);padding:28px 0 90px;color:var(--slate);font-size:13px}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
footer a{text-decoration:none;border-bottom:1px solid var(--line)}
.fine{font-size:12px;color:var(--slate)}
.calc{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media(max-width:820px){.calc{grid-template-columns:1fr}}
.field{margin-bottom:14px}.field label{display:block;font-size:13px;font-weight:600;margin-bottom:4px}
.field input{width:100%;padding:11px 12px;border:1.5px solid var(--line);border-radius:10px;font:inherit;color:var(--navy);background:#fff}
.field input:focus{outline:2px solid var(--aqua);border-color:var(--aqua)}
.result{background:var(--navy);color:#fff;border-radius:16px;padding:28px}
.result .row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.15);font-size:15px}
.result .big{font-family:'Montserrat',sans-serif;font-size:40px;font-weight:800;color:var(--aqua);margin:14px 0 2px}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Agent resource homepage */
.card-link{display:block;margin-top:18px;font-size:14px;font-weight:700;color:var(--navy)}
.about-panel{background:#eaf5f7;border:1px solid var(--line);border-radius:20px;padding:32px;max-width:100%}.about-panel p:not(.eyebrow){color:var(--slate);max-width:72ch}.about-panel h2{font-size:28px}
.existing{border-top:1px solid var(--line);padding-top:28px}.existing h2{font-size:22px}.existing p{color:var(--slate)}
a:focus-visible{outline:3px solid var(--aqua);outline-offset:4px}
@media(max-width:640px){.nav .wrap{height:auto;min-height:70px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}.links{width:100%;flex-wrap:wrap}.links a:not(.cta){display:inline-block}.links a{font-size:12px;padding:7px 9px}.photo{aspect-ratio:4/5;max-height:440px}.tag{font-size:11px;left:10px;bottom:10px}.wrap{padding-left:20px;padding-right:20px}.hero{gap:24px}.about-panel{padding:24px}.btn{font-size:14px}h1{font-size:36px}}
