/* PAC access page. Shared navigation remains owned by pac-header.css. */
.pac-login-page { background:#f4f6f8; }
.pac-login-main { padding:32px 0 28px; }
.pac-login-wrap { max-width:1180px; }
.pac-login-back { display:inline-flex; align-items:center; gap:10px; min-height:32px; margin-bottom:20px; font-size:12px; font-weight:500; color:#68778a; }
.pac-login-back svg { width:16px; height:16px; transition:transform .2s ease; }
.pac-login-back:hover { color:#10213b; }
.pac-login-back:hover svg { transform:translateX(-3px); }
.pac-login-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:stretch; }
.pac-login-brand { min-height:600px; position:relative; overflow:hidden; isolation:isolate; border-radius:20px; background:#101f3a; color:#fff; }
.pac-login-brand::after { content:''; position:absolute; z-index:-1; inset:0; background:linear-gradient(180deg,#101f3a 0%,#101f3af7 42%,#101f3a7a 69%,#101f3a38 84%,#101f3ad9 100%); }
.pac-login-photo { position:absolute; z-index:-2; inset:auto 0 0; width:100%; height:64%; object-fit:cover; object-position:57% 40%; opacity:.76; }
.pac-login-brand-copy { padding:38px 40px 120px; }
.pac-login-brand-name { display:flex; align-items:center; gap:14px; font-size:12px; font-weight:750; letter-spacing:.035em; }
.pac-login-brand-name img { width:58px; height:auto; }
.pac-login-brand-name small { display:block; max-width:270px; font-size:10px; font-weight:400; line-height:1.5; letter-spacing:0; text-transform:none; margin-top:4px; color:#bccadb; }
.pac-login-overline { display:flex; align-items:center; gap:9px; margin-top:61px; font-size:9px; font-weight:650; letter-spacing:.12em; color:#c4cfdf; }
.pac-login-overline i { display:block; height:2px; width:24px; background:#e5b448; }
.pac-login-brand h2 { max-width:430px; margin:19px 0 16px; font-size:clamp(32px,3.1vw,44px); line-height:1.13; font-weight:650; letter-spacing:-1.4px; color:#fff; text-wrap:balance; }
.pac-login-brand-copy>p { max-width:340px; margin:0; font-size:13px; line-height:1.8; color:#c9d3e3; }
.pac-login-location { position:absolute; inset:auto 38px 29px; display:flex; align-items:center; gap:8px; font-size:8px; font-weight:600; letter-spacing:.07em; color:#e6edf6; }
.pac-login-location>span:last-child { margin-left:auto; }
.pac-login-location-dot { width:5px; height:5px; border-radius:50%; background:#e4b348; }
.pac-login-card { min-width:0; padding:39px 48px 32px; background:#fff; border:1px solid #e4e8ed; border-radius:20px; box-shadow:0 10px 34px #162c4805; }
.pac-login-card-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:23px; }
.pac-login-eyebrow { display:inline-flex; align-items:center; gap:10px; font-size:10px; font-weight:700; letter-spacing:.14em; color:#6d7b8d; }
.pac-login-eyebrow::before { content:''; width:4px; height:13px; background:#b8263e; border-radius:1px; }
.pac-login-key { display:grid; place-items:center; width:43px; height:43px; border-radius:13px; color:#173253; background:#eff3f7; }
.pac-login-key svg { width:22px; height:22px; }
.pac-login-card h1 { margin:0; font-size:34px; line-height:1.2; letter-spacing:-1.05px; color:#101f3a; font-weight:650; }
.pac-login-intro { margin:11px 0 27px; color:#7a8696; font-size:13px; line-height:1.7; }
.pac-login-form { margin:0; }
.pac-login-field { margin-bottom:19px; }
.pac-login-field>label { display:block; margin-bottom:8px; color:#263a52; font-size:12px; line-height:1.5; font-weight:600; }
.pac-login-form input:not([type=checkbox]) { width:100%; min-width:0; height:51px; margin:0; padding:13px 15px; border:1px solid #dce2e9; border-radius:9px; color:#152a43; background:#fafbfd; font:400 15px/1.4 Inter,Arial,sans-serif; box-shadow:none; transition:background .2s,border-color .2s,box-shadow .2s; }
.pac-login-form input::placeholder { color:#9aa4b1; opacity:1; font-size:12px; }
.pac-login-form input:focus { outline:0; border-color:#49658c; background:#fff; box-shadow:0 0 0 3px #31557f12; }
.pac-login-password { position:relative; }
.pac-login-password input:not([type=checkbox]) { padding-right:116px; }
.pac-login-password button { display:flex; align-items:center; justify-content:center; gap:6px; position:absolute; right:5px; top:5px; min-height:41px; min-width:75px; max-width:108px; padding:8px; border:0; border-radius:6px; background:transparent; color:#63738a; font:500 10px/1.4 Inter,Arial,sans-serif; cursor:pointer; }
.pac-login-password button:hover { background:#edf1f6; color:#172f50; }
.pac-login-eye { width:18px; height:18px; flex-shrink:0; }
.pac-login-eye-slash { display:none; }
.pac-login-password button[aria-pressed=true] .pac-login-eye-slash { display:block; }
.pac-login-password [hidden] { display:none!important; }
.pac-login-submit { width:100%; display:flex; align-items:center; justify-content:center; gap:13px; margin-top:26px; min-height:51px; padding:13px 20px; border:0; border-radius:9px; background:#122744; color:#fff; box-shadow:inset 4px 0 #bc2d40; font:600 13px/1.5 Inter,Arial,sans-serif; cursor:pointer; transition:background .2s,box-shadow .2s; }
.pac-login-submit svg { width:19px; height:19px; transition:transform .2s; }
.pac-login-submit:hover { background:#1e3a5c; box-shadow:inset 5px 0 #cf3c4b,0 5px 14px #142b4314; }
.pac-login-submit:hover svg { transform:translateX(3px); }
.pac-login-submit:active { background:#101f3a; }
.pac-login-access-note { margin:13px 0 0; text-align:center; color:#8a95a3; font-size:10px; line-height:1.65; }
.pac-login-status { margin-top:17px; border:1px solid #e5d5b4; border-left:3px solid #d2a341; border-radius:8px; padding:13px 14px; background:#fffaf0; color:#5b5039; font-size:12px; line-height:1.6; }
.pac-login-status[hidden] { display:none!important; }
.pac-login-status strong { display:block; font-size:12px; font-weight:650; }
.pac-login-status p { margin:5px 0 0; font-size:11px; }
.pac-login-help { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:10px; margin-top:26px; padding-top:23px; border-top:1px solid #edf0f4; font-size:11px; color:#8792a0; }
.pac-login-help a { display:inline-flex; align-items:center; gap:6px; min-height:30px; font-size:11px; font-weight:650; color:#173253; }
.pac-login-help a:hover { color:#a4243a; }
.pac-login-help svg,.pac-login-footer svg { width:14px; height:14px; }
.pac-login-footer { max-width:1180px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding-bottom:24px; color:#8b96a4; font-size:9px; letter-spacing:.025em; }
.pac-login-footer a { display:inline-flex; align-items:center; gap:7px; min-height:32px; color:#6d7c90; }
.pac-login-page :is(.pac-login-main,.pac-login-footer) :is(a,button):focus-visible { outline:2px solid #426999; outline-offset:4px; }
.pac-login-brand,.pac-login-card { animation:pac-login-appear .65s cubic-bezier(.2,.7,.25,1) both; }
.pac-login-card { animation-delay:.07s; }
@keyframes pac-login-appear { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
@media (max-width:1100px) { .pac-login-brand-copy { padding-inline:31px; }.pac-login-card { padding-inline:33px; }.pac-login-brand h2 { font-size:37px; }.pac-login-location { left:31px; right:31px; } }
@media (max-width:820px) { .pac-login-grid { grid-template-columns:minmax(0,1fr); gap:20px; max-width:560px; margin-inline:auto; }.pac-login-wrap { max-width:600px; }.pac-login-card { grid-row:1; padding:32px 36px; }.pac-login-brand { min-height:260px; }.pac-login-brand-copy { padding:29px 31px 73px; }.pac-login-brand-name { display:none; }.pac-login-overline { margin-top:0; font-size:8px; }.pac-login-brand h2 { max-width:360px; font-size:31px; letter-spacing:-.9px; margin-top:14px; }.pac-login-brand-copy>p { max-width:330px; font-size:12px; }.pac-login-photo { inset:0 0 0 auto; height:100%; width:65%; object-position:58% 50%; opacity:.4; }.pac-login-brand::after { background:linear-gradient(100deg,#101f3a 0%,#101f3ac7 50%,#101f3a38 100%); }.pac-login-location { bottom:24px; }.pac-login-footer { max-width:600px; }.pac-login-main { padding-top:22px; } }
@media (max-width:480px) { .pac-login-main { padding-top:14px; }.pac-login-back { margin-bottom:13px; font-size:11px; }.pac-login-card { padding:27px 23px 25px; border-radius:15px; }.pac-login-card-top { margin-bottom:19px; }.pac-login-card h1 { font-size:30px; }.pac-login-intro { font-size:12px; margin-bottom:24px; }.pac-login-form input:not([type=checkbox]) { font-size:16px; }.pac-login-brand { border-radius:15px; min-height:270px; }.pac-login-brand-copy { padding:26px 25px 70px; }.pac-login-brand h2 { font-size:29px; max-width:300px; }.pac-login-location { left:25px; right:25px; font-size:7px; }.pac-login-help { margin-top:23px; padding-top:18px; gap:4px; }.pac-login-help>span { width:100%; }.pac-login-help a { min-height:38px; }.pac-login-footer { font-size:8px; padding-bottom:18px; }.pac-login-key { width:37px; height:37px; }.pac-login-key svg { width:20px; height:20px; } }
@media (prefers-reduced-motion:reduce) { .pac-login-page *, .pac-login-page *::before,.pac-login-page *::after { animation:none!important; transition:none!important; } }
