/* Readable questions and native disclosures, with no script dependency. */
.faq-section{padding-block:clamp(48px,6vw,88px);background:#edf6f9;border-block:1px solid #d7e5e9;scroll-margin-top:20px}
.faq-layout{display:flex;flex-wrap:wrap;align-items:flex-start;gap:clamp(32px,5vw,80px)}
.faq-intro,.faq-list{min-width:0}
.faq-intro{flex:1 1 19rem}
.faq-list{flex:1.78 1 32rem}
.faq-intro::before{content:"";display:block;width:48px;height:3px;margin-bottom:24px;background:var(--red)}
.faq-intro .eyebrow{color:var(--blue-dark);margin-bottom:14px}
.faq-intro h2{font-size:clamp(2.25rem,3.4vw,3.5rem);line-height:1.14;color:var(--blue-dark);margin:0;overflow-wrap:normal}
.faq-intro>p{max-width:36ch;margin-top:20px;font-size:1rem;line-height:1.8;overflow-wrap:normal}
.faq-intro .faq-context-link{display:inline-flex;align-items:center;min-height:44px;max-width:100%;margin-top:18px;color:var(--blue-dark);font-size:.9375rem;font-weight:600;text-decoration:underline;text-decoration-color:#729da9;text-underline-offset:5px;overflow-wrap:normal}
/* The home introduction offers a clear starting point for the menu and the three locations. */
.faq-guide{margin-top:26px;padding:clamp(20px,2.2vw,30px);border:1px solid #c5dce4;border-top:3px solid var(--red-dark);border-radius:8px 28px 8px 8px;background:#fff}
.faq-guide-heading{display:flex;align-items:center;gap:14px}
.faq-guide-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid #ecd8dc;border-radius:50%;color:var(--red-dark);background:#fff7f8}
.faq-guide-icon svg{display:block;width:22px;height:22px}
.faq-guide-heading h3{min-width:0;font:500 1.25rem/1.4 var(--display);color:var(--blue-dark);text-wrap:balance;overflow-wrap:normal}
.faq-guide .faq-guide-copy{margin-top:20px;max-width:52ch;font-size:1rem;line-height:1.85;text-wrap:pretty;overflow-wrap:normal}
.faq-guide-copy strong{font-weight:650;color:var(--blue-dark)}
.faq-guide-copy a{color:var(--blue-dark);text-decoration:underline;text-decoration-color:#87aeba;text-decoration-thickness:1px;text-underline-offset:4px}
@media(hover:hover) and (pointer:fine){.faq-guide-copy a:hover{color:var(--red-dark);text-decoration-color:currentColor}}
.faq-intro .faq-guide .faq-context-link{display:flex;justify-content:space-between;gap:16px;width:100%;min-height:52px;margin-top:24px;padding:13px 18px;border:1px solid var(--blue-dark);border-radius:6px;background:var(--blue-dark);color:#fff;line-height:1.6;text-decoration:none}
.faq-guide .faq-context-link>span:first-child{min-width:0;overflow-wrap:normal}
.faq-guide .faq-context-link .arrow{flex:none}
@media(hover:hover) and (pointer:fine){.faq-intro .faq-guide .faq-context-link:hover{background:#073b4b;border-color:#073b4b;color:#fff;text-decoration:none}}
@media(max-width:359px){.faq-guide-heading{flex-direction:column;align-items:flex-start;gap:12px}.faq-intro .faq-guide .faq-context-link{padding-inline:14px}}
@media print{.faq-guide{background:none;border-color:#bbb}.faq-guide-icon{display:none}}
.faq-list{display:grid;gap:12px}
.faq-item{min-width:0;border:1px solid #c5dce4;border-radius:8px;background:#ffffffb3;scroll-margin-top:20px}
.faq-item[open]{border-color:#91bbc9;background:#fff}
.faq-item>summary{display:grid;grid-template-columns:1.5rem minmax(0,1fr) 32px;align-items:center;gap:16px;min-height:76px;padding:20px 24px;list-style:none;cursor:pointer;border-radius:7px}
.faq-item>summary::-webkit-details-marker{display:none}
.faq-item>summary::marker{content:""}
@media(hover:hover) and (pointer:fine){.faq-item>summary:hover{background:#dceef45c}}
.faq-number{align-self:start;padding-top:2px;color:#4c7a89;font:500 .9375rem/1.6 var(--display);font-variant-numeric:tabular-nums}
.faq-item h3{min-width:0;margin:0;color:var(--blue-dark);font:600 1rem/1.65 var(--body);text-transform:none;letter-spacing:normal;overflow-wrap:normal}
.faq-toggle{position:relative;display:block;width:32px;height:32px;border:1px solid #b7d2dc;border-radius:50%;color:var(--blue-dark)}
.faq-toggle::before,.faq-toggle::after{content:"";position:absolute;inset:0;margin:auto;background:currentColor}
.faq-toggle::before{width:12px;height:2px}
.faq-toggle::after{width:2px;height:12px;transition:transform .18s ease}
.faq-item[open] .faq-toggle{background:var(--blue-dark);border-color:var(--blue-dark);color:#fff}
.faq-item[open] .faq-toggle::after{transform:scaleY(0)}
.faq-answer{padding:0 24px 24px calc(24px + 1.5rem + 16px);overflow-wrap:normal}
.faq-answer p{max-width:68ch;margin:0;font-size:1rem;line-height:1.8}
.faq-answer p+p{margin-top:12px}
.faq-answer a{color:var(--blue-dark);text-decoration:underline;text-decoration-color:#729da9;text-underline-offset:4px}
@media(hover:hover) and (pointer:fine){.faq-answer a:hover,.faq-intro .faq-context-link:hover{color:var(--red-dark);text-decoration-color:currentColor}}
.faq-item>summary:focus-visible,.faq-section a:focus-visible{outline:3px solid var(--blue-dark);outline-offset:4px}
.page-menu .faq-section{scroll-margin-top:var(--jump-height,0px)}
.page-menu .faq-item{scroll-margin-top:calc(var(--jump-height,0px) + 20px)}
.large-text .page-menu .faq-section{scroll-margin-top:0}
.large-text .page-menu .faq-item{scroll-margin-top:20px}
@media(max-height:500px){.page-menu .faq-section{scroll-margin-top:0}.page-menu .faq-item{scroll-margin-top:20px}}
@media(max-width:900px){.faq-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.faq-intro>p{max-width:60ch}}
@media(max-width:430px){
 .faq-intro::before{margin-bottom:20px}
 .faq-item>summary{grid-template-columns:1.2rem minmax(0,1fr) 28px;gap:10px;padding:18px 16px}
 .faq-toggle{width:28px;height:28px}
 .faq-answer{padding:0 16px 20px}
}
.large-text .faq-layout{display:grid;grid-template-columns:minmax(0,1fr)}
@media(prefers-reduced-motion:reduce){.faq-toggle::after{transition:none}}
@media print{.faq-section{padding-block:24px;background:none;border:0}.faq-layout{display:block}.faq-intro{margin-bottom:20px}.faq-intro::before,.faq-context-link,.faq-toggle{display:none!important}.faq-item{break-inside:avoid;margin-bottom:10px}.faq-item::details-content{content-visibility:visible}.faq-answer{display:block!important;padding-top:8px}}
