/* Public access hub: existing destinations, no new login flow. */
.clientAccessPage main{padding-bottom:64px}
.clientAccessIntro{padding-block:64px 40px}
.clientAccessIntro h1{font-size:clamp(38px,5.5vw,70px);line-height:1.05;max-width:850px;margin-bottom:24px}
.clientAccessIntro>p:not(.eyebrow){max-width:620px;color:#c3cfdc;font-size:18px;line-height:1.7}
.clientAccessDiscover,.clientAccessSecondary{color:#f4c542;text-underline-offset:5px}
.clientAccessDiscover:hover,.clientAccessSecondary:hover{text-decoration:underline}
.clientAccessSolutions{padding-block:22px 58px}
.clientAccessSolutions>h2{font-size:clamp(24px,3vw,34px);line-height:1.2;margin-bottom:24px}
.clientAccessGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.clientAccessCard{min-width:0;border:1px solid #ffffff24;background:#15212e;border-radius:20px;padding:30px;display:flex;flex-direction:column;align-items:flex-start}
.clientAccessCard .eyebrow{font-size:11px;margin-bottom:14px}
.clientAccessCard h3{font-size:28px;letter-spacing:-.03em;line-height:1.2;margin-bottom:16px}
.clientAccessCard>p:not(.eyebrow){color:#c3cfdc;line-height:1.7}
.clientAccessCard .btn{margin-top:auto;white-space:normal;max-width:100%;min-height:48px;text-align:left}
.clientAccessCard .clientAccessNote{font-size:13px;margin:18px 0 0;color:#acbdcf}
.clientAccessSecondary{font-size:13px;margin-top:12px}
.clientAccessHelp{padding:36px;border:1px solid #ffffff24;border-radius:20px;display:grid;grid-template-columns:1fr 1.2fr;gap:48px;background:#111d2a}
.clientAccessHelp h2{font-size:32px;line-height:1.15}
.clientAccessHelp p{color:#c3cfdc;line-height:1.7}
.clientAccessFaq details{border-bottom:1px solid #ffffff24;padding-block:18px}
.clientAccessFaq summary{cursor:pointer;font-weight:700;line-height:1.5;padding-right:8px}
.clientAccessFaq details p{font-size:14px;margin:16px 0 0}
.clientAccessPage :is(h1,h2,h3,p,a,summary){overflow-wrap:anywhere}
.clientAccessPage :focus-visible{outline:3px solid #f4c542;outline-offset:5px}
/* A long mobile menu must remain scrollable on short screens. */
@media(max-width:980px){header .links.open{max-height:calc(100dvh - 78px);overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:640px){.clientAccessIntro{padding-block:40px 26px}.clientAccessIntro>p:not(.eyebrow){font-size:16px}.clientAccessGrid,.clientAccessHelp{grid-template-columns:1fr}.clientAccessCard{padding:24px}.clientAccessSolutions{padding-bottom:34px}.clientAccessHelp{padding:24px;gap:24px}.clientAccessHelp h2{font-size:28px}.clientAccessPage main{padding-bottom:36px}}
