/* V9: larger reading text and controls; existing content and imagery retained. */
:root{--muted:#535b52}
body{font-size:17px;line-height:1.8}
main .welcome-copy>p:not(.lead),main .split-copy>p:not(.eyebrow):not(.lead),main .step p,main .benefit-grid p,main .lifestyle-grid p,main .city-copy,main .safety-grid p,main .review-text p,main .section-head p:not(.eyebrow),main .horizontal>p,main .final-cta p:not(.eyebrow){font-size:18px;line-height:1.75;color:var(--muted)}
main .lead,main .split-copy .lead,main .welcome-copy .lead{font-size:20px;line-height:1.65;color:var(--ink)}
.hero{min-height:800px}
.hero-intro{font-size:18px;line-height:1.75;max-width:440px}
.hero .light{font-size:12px;letter-spacing:1.4px}
.hero-caption,.hero-bottom,.hero-location{font-size:13px;letter-spacing:.4px}
.eyebrow{font-size:12px;letter-spacing:1.5px}
.btn,.text-link,main .hero .btn{font-size:16px;min-height:52px}
.desktop-nav{font-size:15px;gap:24px}.login{font-size:16px}
.nav .btn{font-size:15px;min-height:46px;padding:11px 18px}
.mobile-nav a,.mobile-nav button{font-size:17px;min-height:48px}
.menu-toggle{min-width:44px;min-height:44px}
.welcome-signature,.photo-caption,.lifestyle-number,.city-state{font-size:13px;letter-spacing:.7px;line-height:1.65}
.lifestyle-number{color:#746244}
main .step h3,main .benefit-grid h3,main .safety-grid h3,main .story-title{font-size:25px;line-height:1.4}
.member-title{font-size:23px;line-height:1.45;white-space:normal}.member-title>span{font-size:16px;color:var(--muted)}.member-city{font-size:15px;line-height:1.6;color:var(--muted)}
.review-identity strong{font-size:16px}.review-identity small{font-size:15px;line-height:1.6}.review-person{font-size:16px}
.final-age{font-size:14px;line-height:1.6;color:#645d50}
.footer-main h3{font-size:16px}.footer-main>div>a:not(.brand),.footer-main>div>button{font-size:15px;line-height:1.8;color:var(--muted)}.footer-brand>p{font-size:15px;color:var(--muted)}.footer-bottom{font-size:14px;line-height:1.8;color:#62665c}
dialog p,dialog ul{font-size:17px;line-height:1.75}dialog .eyebrow{font-size:12px}
@media(max-width:1150px){.desktop-nav{font-size:14px;gap:20px}}
@media(min-width:601px) and (max-width:900px){.hero{min-height:840px}}
@media(max-width:600px){
body{font-size:17px}
main .welcome-copy>p:not(.lead),main .split-copy>p:not(.eyebrow):not(.lead),main .step p,main .benefit-grid p,main .lifestyle-grid p,main .city-copy,main .safety-grid p,main .review-text p,main .section-head p:not(.eyebrow),main .horizontal>p,main .final-cta p:not(.eyebrow){font-size:17px;line-height:1.8}
main .lead,main .split-copy .lead,main .welcome-copy .lead{font-size:19px;line-height:1.7}
.nav{padding:0 18px;gap:8px}.nav-actions{gap:8px}.nav .btn{font-size:15px;padding:10px 12px;min-height:44px}.menu-toggle{padding:5px}
.hero{height:1020px;min-height:0;max-height:none}.hero-image{top:76px;height:50%}.hero-content{padding-bottom:90px}.hero-intro{font-size:17px;line-height:1.75;max-width:340px}.hero .light{font-size:11px;letter-spacing:1px;max-width:100%}
.hero-shade{background:linear-gradient(0deg,#263021 0%,#263021 44%,#263021db 53%,#26302100 67%),linear-gradient(0deg,transparent 87%,#202a1ee6 97%)}
.hero-caption,.hero-bottom,.hero-location{font-size:12px;line-height:1.6;letter-spacing:.2px}.hero-caption{max-width:100%}.hero-location{top:325px}.hero-bottom{gap:12px}
.eyebrow{font-size:12px;letter-spacing:1.2px}.welcome-signature,.photo-caption,.lifestyle-number,.city-state{font-size:12px;line-height:1.7;letter-spacing:.4px}
.btn,.text-link,main .hero .btn{font-size:16px;min-height:52px}
main .step h3,main .benefit-grid h3,main .safety-grid h3,main .story-title{font-size:24px;line-height:1.4}
.member-title{font-size:22px}.member-title>span{font-size:16px}.member-city{font-size:15px}.review-identity strong{font-size:16px}.review-identity small{font-size:15px}.final-age{font-size:13px}
.footer-brand{flex-wrap:wrap}.footer-brand>p{font-size:14px}.footer-main h3{font-size:16px}.footer-main>div>a:not(.brand),.footer-main>div>button{font-size:15px}.footer-bottom{font-size:13px;line-height:1.8}
}
@media(max-width:360px){.nav{padding:0 14px;gap:6px}.brand-name{font-size:20px}.nav .btn{font-size:14px;padding:9px 8px}.nav-actions{gap:6px}.menu-toggle{min-width:40px;padding:4px}.hero{height:1040px}.hero-intro{max-width:100%}.hero-bottom{font-size:11px}}

/* Responsive alignment corrections for the V9 typography. */
body{font-size:18px;line-height:1.75}
.btn>svg,.text-link>svg,.city-name>svg,.hero-location>svg,.review-person>svg{display:block;align-self:center}
.step-icon{display:block;margin:12px auto 23px}
.benefit-grid article>svg{display:block}
.safety-grid article>svg{display:block;margin-left:auto;margin-right:auto}
.city-grid{align-items:stretch}
.city-card{display:flex;flex-direction:column}
.city-card .city-link{align-self:flex-start;margin-top:auto}
.menu-toggle{align-items:center;justify-content:center;flex-direction:column;gap:6px}
.menu-toggle span{margin:0}
.mobile-nav{max-height:calc(100dvh - 76px);overflow-y:auto}
.dialog-close{width:44px;height:44px;display:flex;align-items:center;justify-content:center;line-height:1}
@media(min-width:601px){
 .nav:not(.scrolled){background:#18221966}
 .step{display:grid;grid-template-rows:auto auto 1fr;grid-row:span 3;grid-template-rows:subgrid;row-gap:0}
 .steps{align-items:stretch;row-gap:0}
 .step-icon{grid-row:1}
 .step h3{grid-row:2;align-self:start}
 .step p{grid-row:3}
 .benefit-grid article{display:grid;grid-template-rows:auto auto 1fr;grid-row:span 3;grid-template-rows:subgrid;row-gap:0}
 .benefit-grid{row-gap:0}
 .safety-grid article{display:grid;grid-template-rows:auto auto 1fr;grid-row:span 3;grid-template-rows:subgrid;row-gap:0}
 .safety-grid{row-gap:0}
 .story-title{min-height:2.8em}
}
@media(min-width:601px) and (max-width:1150px){.safety-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px}.safety-grid p{max-width:420px}}
@media(min-width:601px) and (max-width:900px){.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.menu-toggle{display:flex}}
@media(max-width:600px){
 body{font-size:17px;line-height:1.8}
 .step-icon{margin:0 0 12px}
 .safety-grid article>svg{margin-left:0;margin-right:0}
 .mobile-nav{max-height:calc(100dvh - 70px)}
 .member-image{height:auto;aspect-ratio:3/4}
 .footer-main>div>a:not(.brand),.footer-main>div>button{min-height:44px;display:flex;align-items:center;margin-bottom:0}
}
@media(max-width:360px){.member-title{min-height:2.9em}}
@supports not (grid-template-rows:subgrid){@media(min-width:601px){.step h3,.benefit-grid h3,.safety-grid h3{min-height:2.8em}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
