/* Provider branding: original company logo, proportional and uncropped. */
.header-inner{display:grid;grid-template-columns:290px minmax(0,1fr) auto;gap:24px;padding-top:20px;padding-bottom:20px}
.header-inner>.brand:has(.logo){max-width:100%}
.provider-brand{min-width:0;text-align:center;justify-self:center;max-width:430px}
.provider-logo-row{display:flex;justify-content:center;align-items:center;gap:13px}
.powered-label{font-size:10px;letter-spacing:1.2px;white-space:nowrap;color:var(--muted)}
.provider-logo{display:block;width:180px;height:auto;max-width:65%;object-fit:contain}
.provider-brand p{font-size:11px;line-height:1.65;color:var(--muted);margin:9px 0 0;text-wrap:pretty}
.provider-brand strong{font-weight:650;color:var(--ink)}
.header-inner>nav{justify-self:end;gap:18px}
.header-inner>.header-note{justify-self:end}
@media(max-width:1100px) and (min-width:701px){.header-inner{grid-template-columns:260px minmax(0,1fr);gap:16px 28px}.header-inner>nav{grid-column:1/-1;justify-self:end}.header-inner>.header-note{display:none}.header-inner .brand .logo{width:260px}}
@media(max-width:700px){.header-inner{grid-template-columns:1fr;gap:18px;padding:18px 20px}.header-inner>.brand{justify-self:center}.header-inner>.brand:has(.logo){max-width:100%}.header-inner .brand .logo{width:250px;max-width:100%}.provider-brand{grid-column:1;max-width:400px;width:100%;padding-top:16px;border-top:1px solid var(--line)}.provider-logo{width:170px}.provider-brand p{font-size:11px;margin-top:10px}.header-inner>.header-note{display:none}.header-inner>nav{grid-column:1;justify-self:stretch;gap:10px;padding-top:4px}.powered-label{font-size:10px}}
/* The entire provider block is one accessible external link. */
a.provider-brand{display:block;color:inherit;text-decoration:none;border-radius:8px}
a.provider-brand:hover{text-decoration:none}
a.provider-brand:hover p{color:var(--blue)}
a.provider-brand:focus-visible{outline:3px solid var(--blue);outline-offset:6px}

footer{flex-wrap:wrap}
.legal-links{display:flex;justify-content:center;gap:18px;flex-basis:100%;font-size:11px}
.legal-links a{color:inherit;text-underline-offset:3px}
.legal-links a:hover{text-decoration:underline}
@media(max-width:700px){.legal-links{margin-top:8px;justify-content:flex-start}}

/* Keep the mobile account control and its popup inside the header viewport. */
@media(max-width:700px){
 .header-inner>nav{justify-content:flex-end;min-width:0}
 .header-inner>nav .account{width:min(280px,100%);min-width:0}
 .header-inner>nav .account summary{max-width:none;display:flex;align-items:center;gap:8px;list-style:none}
 .header-inner>nav .account summary::-webkit-details-marker{display:none}
 .header-inner>nav .account summary::before{content:'▸';flex:0 0 auto}
 .header-inner>nav .account[open] summary::before{content:'▾'}
 .header-inner>nav .account-identity{display:flex;flex:1;min-width:0}
 .header-inner>nav .account-menu{right:0;left:auto;width:100%;min-width:0;max-width:calc(100vw - 40px);max-height:65vh;max-height:65dvh;overflow:auto;overflow-wrap:anywhere;z-index:20}
}
