/* Approved reference: 1672 x 941. Artwork is displayed directly, without
   regenerating the portrait, office, translucent icon, or logo. */
:root{--mock-unit:min(1vw,16.72px)}
.topline,.top{background:linear-gradient(100deg,#082b4b,#153757);color:#fff;font-size:clamp(14px,1.08vw,18px);line-height:1.5;padding:11px 0}
.topline .container,header>.container,.nav{width:min(1524px,91.15%);margin-inline:auto}
.topline .container{display:flex;align-items:center;justify-content:space-between;gap:20px}
.topline .right{white-space:nowrap}
header{background:#fff;border:0;backdrop-filter:none}
header>.container>nav,.nav{min-height:clamp(104px,8.075vw,135px);gap:24px}
header .brand,.nav>a:first-child{display:block;position:relative;flex:0 0 auto;width:clamp(245px,22.43vw,375px);aspect-ratio:375/110;background-image:url('/assets/approved-hero-reference.webp');background-size:445.866667% 855.454545%;background-position:5.39707% 7.220217%;background-repeat:no-repeat}
header .brand img,.nav>a:first-child img{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
.navlinks,.nav>nav{display:flex;align-items:center;gap:clamp(20px,3.05vw,51px);font-size:clamp(16px,1.315vw,22px);font-weight:400;color:#09264b}
.navlinks>a,.nav>nav>a{white-space:nowrap}
.navlinks .btn,.nav>nav .button{font-size:clamp(16px,1.2vw,20px);line-height:1.3;border:0;border-radius:6px;padding:22px 32px;background:linear-gradient(#0076bc,#005ca0);color:white;box-shadow:none;font-weight:700}
.navlinks .btn:hover,.nav>nav .button:hover{background:#005b98;color:white}
.hero:has(.hero-grid){padding:0;background:#f4fafe;overflow:hidden}
.hero:has(.hero-grid):before{display:none}
.hero>.container.hero-grid{width:min(1598px,95.57416268%);margin-left:max(4.42583732%,calc((100% - 1524px)/2));margin-right:0;display:grid;grid-template-columns:758fr 776fr;gap:4.00500626%;align-items:start}
.hero-copy{padding:calc(var(--mock-unit)*6.28) 0 calc(var(--mock-unit)*4.2);min-width:0}
.hero-copy .eyebrow{font-size:clamp(14px,1.017vw,17px);letter-spacing:.26em;line-height:1.5;color:#509cdb;margin:0}
.hero-copy h1{font-family:Georgia,'Times New Roman',serif;color:#05264a;font-size:clamp(50px,5.263vw,88px);line-height:.955;letter-spacing:-.05em;font-weight:700;margin:calc(var(--mock-unit)*1.67) 0 0;max-width:none}
.hero-line{display:block}
.hero-copy .lead{font-size:clamp(18px,1.615vw,27px);line-height:1.34;color:#656c80;margin:calc(var(--mock-unit)*1.91) 0 0;max-width:735px}
.hero-actions{display:grid;grid-template-columns:464fr 268fr;gap:3.43%;margin-top:calc(var(--mock-unit)*2.39)}
.hero-actions .btn{width:100%;min-height:calc(var(--mock-unit)*4.9);padding:16px 12px;border-radius:7px;font-size:clamp(16px,1.255vw,21px);line-height:1.25;box-shadow:none}
.hero-actions .btn-primary{background:linear-gradient(#0077bc,#005b9f);color:#fff}
.hero-actions .btn-secondary{border:1.5px solid #0072bc;color:#0068ae;background:transparent}
.hero-copy .microcopy{font-size:clamp(16px,1.196vw,20px);line-height:1.4;color:#737c90;margin-top:11px}
.hero-portrait{position:relative;display:block;width:100%;min-height:0;margin:0;aspect-ratio:776/757;overflow:hidden}
.portrait-frame{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden}
.portrait-frame img{position:absolute;width:215.463917526%;max-width:none;height:auto;left:-115.463917526%;top:-24.306472919%;object-fit:initial;object-position:initial}
/* The exact credential card is retained in the approved artwork;
   equivalent text remains available to assistive technology. */
.hero-portrait .advisor-badge{position:absolute;width:1px;height:1px;min-width:0;padding:0;margin:0;overflow:hidden;clip-path:inset(50%);border:0}
a:focus-visible,button:focus-visible{outline:3px solid #2787c8;outline-offset:5px}
@media(max-width:1250px){
 .navlinks,.nav>nav{display:none}.mobile-toggle,.menu-toggle{display:block}
 .hero-copy h1{font-size:clamp(40px,5.263vw,66px)}
 .hero-actions{grid-template-columns:1fr;gap:12px}.hero-actions .btn{min-height:56px}
}
@media(max-width:900px){
 header>.container>nav,.nav{min-height:105px}
 .hero>.container.hero-grid{width:calc(100% - 40px);margin:0 auto;grid-template-columns:1fr;gap:0}
 .hero-copy{padding:48px 0 22px}
 .hero-copy h1{font-size:clamp(44px,8.7vw,76px);line-height:1.02;margin-top:24px}
 .hero-copy .lead{font-size:21px;line-height:1.5;margin-top:28px}
 .hero-actions{grid-template-columns:1.4fr 1fr;margin-top:28px;gap:16px}
 .hero-portrait{width:100%;max-width:776px;margin:0 auto;aspect-ratio:776/757}
 .portrait-frame{height:100%;border-radius:0}
}
@media(max-width:620px){
 .topline,.top{padding:9px 14px;font-size:14px;text-align:center}.topline .right{display:none}
 header>.container,.nav{width:calc(100% - 28px)}
 header .brand,.nav>a:first-child{width:245px;max-width:calc(100vw - 95px)}
 .hero>.container.hero-grid{width:calc(100% - 28px)}
 .hero-copy{padding-top:34px}.hero-copy h1{font-size:clamp(36px,9.4vw,58px)}
 .hero-copy .eyebrow{font-size:14px;letter-spacing:.15em}
 .hero-copy .lead{font-size:18px;margin-top:23px}
 .hero-actions{grid-template-columns:1fr;gap:12px}
 .hero-actions .btn{font-size:17px;min-height:60px}
 .hero-copy .microcopy{font-size:16px}
}
