.site-beta-banner{position:relative;z-index:21;display:flex;align-items:center;justify-content:center;gap:12px 24px;padding:7px 54px 7px 24px;min-height:42px;background:#dce6ee;color:#182d45;border-bottom:1px solid #bdcddb;font-size:12px;line-height:1.5}
.site-beta-banner p{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}
.site-beta-banner strong{font-size:10px;letter-spacing:.1em}
.beta-banner-links{display:flex;align-items:center;gap:18px;flex:none}
.beta-banner-links a{text-decoration:underline;text-underline-offset:3px;min-height:28px;display:inline-flex;align-items:center;white-space:nowrap}
.beta-banner-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:grid;place-items:center;font-size:22px;border-radius:50%;line-height:1}
.beta-banner-close:hover{background:#c9d9e5}
/* The same header on the public site and every account page. */
:is(body,body.portal-body)>header.site-header{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:clamp(20px,3vw,56px);height:72px;min-height:72px;padding:0 clamp(24px,3vw,56px);margin:0;background:#f7f5ef!important;color:#19324d!important;border:0;border-bottom:1px solid #cbd6df;box-shadow:none}
:is(body,body.portal-body)>header.site-header .brand{--brand-size:28px;display:flex;height:44px;min-height:44px;color:#19324d!important;white-space:nowrap}
:is(body,body.portal-body)>header.site-header>:is(.brand,.brand-lockup){grid-column:1;grid-row:1;justify-self:start}
:is(body,body.portal-body)>header.site-header>nav{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:680px;justify-self:center;margin:0;gap:clamp(8px,1.5vw,30px)}
:is(body,body.portal-body)>header.site-header>nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;font:400 16px/1.3 Arial,Helvetica,sans-serif;color:#19324d!important;border:0;border-radius:8px;text-decoration:none;white-space:nowrap}
:is(body,body.portal-body)>header.site-header>nav a:is(:hover,:focus-visible,.active){background:#19324d!important;color:#fffefa!important}
:is(body,body.portal-body)>header.site-header>:is(.header-actions,.portal-header-actions){grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:18px}
:is(body,body.portal-body)>header.site-header :is(.header-saved,.login,.portal-login-link,.portal-session>a){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0;gap:8px;color:#19324d!important;font:400 14px/1.3 Arial,Helvetica,sans-serif;text-decoration:none;white-space:nowrap}
:is(body,body.portal-body)>header.site-header :is(.login,.portal-login-link,.portal-session>a) svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;flex:none}
:is(body,body.portal-body)>header.site-header .login span{display:inline}
:is(body,body.portal-body)>header.site-header .header-saved b{font-size:10px;font-weight:400;background:#e5ebef;padding:1px 5px;border-radius:8px}
:is(body,body.portal-body)>header.site-header :is(.login,.portal-login-link,.portal-session>a):hover{text-decoration:underline;text-underline-offset:4px}
@media(min-width:761px) and (max-width:1050px){
 :is(body,body.portal-body)>header.site-header{column-gap:12px;padding-inline:16px}
 :is(body,body.portal-body)>header.site-header .brand{--brand-size:23px}
 :is(body,body.portal-body)>header.site-header>nav{gap:4px}
 :is(body,body.portal-body)>header.site-header>nav a{font-size:13px;padding-inline:7px}
 :is(body,body.portal-body)>header.site-header>:is(.header-actions,.portal-header-actions){gap:10px}
 :is(body,body.portal-body)>header.site-header :is(.header-saved,.login,.portal-login-link,.portal-session>a){font-size:12px}
}
@media(max-width:760px){
 :is(body,body.portal-body)>header.site-header{height:58px;min-height:58px;column-gap:8px;padding-inline:14px}
 :is(body,body.portal-body)>header.site-header .brand{--brand-size:22px}
 :is(body,body.portal-body)>header.site-header>nav,:is(body,body.portal-body)>header.site-header .header-saved{display:none}
 :is(body,body.portal-body)>header.site-header :is(.login,.portal-login-link,.portal-session>a){width:44px;min-width:44px}
 :is(body,body.portal-body)>header.site-header :is(.login,.portal-login-link,.portal-session>a)>span{display:none}
}
@media(max-width:1000px) and (max-height:500px) and (orientation:landscape){body:not(.landscape-controls-open)>header.site-header{display:none}}

@media(max-width:760px){.site-beta-banner{flex-direction:column;gap:1px;min-height:66px;padding:7px 38px 7px 12px;font-size:10px;line-height:1.4}.site-beta-banner p{gap:4px 6px;margin:0}.site-beta-banner strong{font-size:9px}.beta-banner-links{gap:20px;font-size:11px}.beta-banner-links a{min-height:28px}.beta-banner-close{right:4px;top:7px;transform:none;width:32px;height:32px}}
.portal-body .site-beta-banner p{margin:0}.portal-body .beta-banner-close{border:0;background:transparent;color:inherit;cursor:pointer}

@media(min-width:761px){html{scrollbar-gutter:stable}}

/* Keep the mobile home photo flush with the actual header after banner dismissal. */
@media(max-width:760px){
 body:has(.photo-home)>header.site-header{border-bottom:0}
 body:has(.photo-home) #main{top:calc(var(--site-header-height,58px) + var(--beta-banner-height,0px))}
}

.mobile-account-menu{display:none}
/* Shared icon menu for all viewport sizes. */
@media(min-width:0px){
 :is(body,body.portal-body)>header.site-header :is(.header-saved,.login,.portal-login-link,.portal-session){display:none!important}
 .mobile-account-menu{display:block;position:relative;color:#19324d}
 .mobile-account-menu>summary{list-style:none;min-width:44px;width:auto;padding:0 10px;gap:10px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px}
 .mobile-account-menu>summary::-webkit-details-marker{display:none}
 .mobile-account-menu>summary svg{display:block;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5}
 .mobile-account-menu[open]>summary{background:#e5ebef}
 .mobile-account-menu>nav{position:absolute;top:calc(100% + 6px);right:0;width:min(250px,calc(100vw - 28px));padding:8px;display:flex;flex-direction:column;gap:2px;background:#f7f5ef;border:1px solid #cbd6df;border-radius:12px;box-shadow:0 8px 28px #19324d24;z-index:40}
 .mobile-account-menu>nav>a,.mobile-account-menu>nav>button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;width:100%;padding:10px 12px;border:0;border-radius:6px;background:transparent;color:#19324d;font:400 15px/1.4 Arial,Helvetica,sans-serif;text-decoration:none;text-align:left;white-space:normal}
 .mobile-account-menu>nav>:is(a,button):is(:hover,:focus-visible){background:#e5ebef}
 .mobile-account-menu b{font:400 11px/1.4 Arial,Helvetica,sans-serif;background:#e5ebef;border-radius:9px;padding:1px 6px}
 .mobile-account-menu .account-menu-logout{border-top:1px solid #cbd6df;border-radius:0;margin-top:4px}
 .account-menu-status{font:400 12px/1.5 Arial,Helvetica,sans-serif;color:#64758a;padding:8px 12px;margin:0}
 .bottom-nav a{min-width:0}.bottom-nav a>span{max-width:100%;white-space:nowrap}
}

:is(body,body.portal-body)>header.site-header .header-saved[hidden]{display:none!important}
:is(body,body.portal-body)>header.site-header .header-saved:not([hidden]){display:inline-flex!important;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:10px;border-radius:8px}
.header-saved svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6}
:is(body,body.portal-body)>header.site-header .header-saved:hover{background:#e5ebef}
.account-welcome{max-width:165px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 14px/1.3 Arial,Helvetica,sans-serif}
.account-welcome[hidden]{display:none}
@media(max-width:1050px){.account-welcome{max-width:105px;font-size:12px}}
@media(max-width:760px){.account-welcome{display:none}.mobile-account-menu>summary{padding:0;width:44px}}
