/* Regional guidance shares the established blue theme and readable type. */
.area-intro{padding:64px 0;background:var(--pale);border-block:1px solid var(--line)}
.area-intro h2{margin-bottom:22px}
.area-intro p:not(.section-label){max-width:980px}
.area-links{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0}
.area-links a{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:9px 20px;border:1px solid #97bad3;background:#fff;border-radius:4px;color:var(--navy);font-size:1.25rem;font-weight:700}
.area-links a:hover{background:var(--ice)}
.area-breadcrumb{padding-block:22px;font-size:1.125rem;color:var(--muted)}
.area-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px 18px}
.area-breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.area-hero{padding:34px 0 64px;background:linear-gradient(180deg,#fff,var(--pale))}
.area-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:42px;align-items:center}
.area-hero h1{font:600 clamp(2rem,3.3vw,3rem)/1.6 var(--serif);color:var(--navy);margin-bottom:22px}
.area-hero figure{min-width:0}
.area-hero img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px}
.area-hero figcaption{margin-top:12px;color:var(--muted)}
.area-hero .area-links{margin-bottom:0}
.area-guide-section{padding:68px 0}
.area-guide-section h2{margin-bottom:24px}
.area-table{width:100%;border-collapse:collapse;table-layout:fixed;margin-top:30px;font-size:1.25rem}
.area-table caption{text-align:left;font-weight:700;color:var(--navy);padding:0 0 18px}
.area-table thead{background:var(--navy);color:#fff}
.area-table th,.area-table td{text-align:left;vertical-align:top;padding:24px 20px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.area-table thead th:first-child{width:25%}
.area-table thead th:last-child{width:75%}
.area-table tbody th{background:#f2f8fc}
.area-table tbody th h3{font-size:1.5rem}
.area-table tbody th p{font-size:1.125rem;font-weight:400;margin-top:10px}
.area-table tbody tr{scroll-margin-top:125px}
.area-route-options{display:grid;gap:14px}
.area-route{min-width:0;border:1px solid #97bad3;border-radius:5px;background:#fff;scroll-margin-top:125px}
.area-route>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:14px 20px;list-style:none;color:var(--blue);background:var(--pale);font-size:1.375rem;line-height:1.6;font-weight:700;cursor:pointer;border-radius:4px}
.area-route>summary::-webkit-details-marker{display:none}
.area-route>summary::marker{content:''}
.area-route>summary:hover{background:var(--ice)}
.area-route>summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.area-route[open]>summary{border-bottom:1px solid var(--line);border-radius:4px 4px 0 0}
.area-route-state{flex-shrink:0;white-space:nowrap;font-size:1.125rem;font-weight:600}
.area-route-close{display:none}
.area-route[open] .area-route-open{display:none}
.area-route[open] .area-route-close{display:inline}
.area-route-body{padding:22px 24px;font-size:1.375rem;line-height:1.9;overflow-wrap:anywhere}
.area-route-overview{color:var(--navy);font-weight:700;margin-bottom:20px}
.area-route-steps{list-style:decimal;padding-left:1.5em}
.area-route-steps li{padding-left:.25em;margin-bottom:20px}
.area-route-steps li::marker{font-weight:700;color:var(--blue)}
.area-route-steps strong{display:block;color:var(--navy)}
.area-route-destination{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}
.area-route-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:22px;font-size:1.125rem}
.area-route-links a{display:inline-block;color:var(--blue);text-decoration:underline;text-underline-offset:4px;padding-block:8px}
.area-route-help{padding:18px 22px;background:var(--pale);border-left:4px solid var(--blue);margin-top:20px}
.area-common-route{margin-top:28px;max-width:900px}
.area-note{font-size:1.125rem;color:var(--muted);margin-top:22px}
.area-cost{background:var(--pale)}
.area-cost-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;align-items:start}
.area-cost .price-panel{min-width:0}
.area-cost-copy>p{margin-bottom:20px}
.area-location{padding:26px 30px;border-left:5px solid var(--blue);background:var(--pale);margin:28px 0}
.area-location address{margin:12px 0 22px}
.area-visit-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:28px}
.area-source-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:18px;font-size:1.125rem}
.area-source-links a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
@media(max-width:820px){
 .area-hero-grid,.area-cost-grid{grid-template-columns:minmax(0,1fr);gap:30px}
 .area-hero{padding-top:20px}
 .area-hero figure{max-width:640px}
 .area-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .area-table,.area-table tbody,.area-table tr,.area-table th,.area-table td{display:block;width:100%}
 /* Keep the caption in the same full-width block flow as the mobile rows. */
 .area-table caption{display:block;width:100%;max-width:none}
 .area-table tbody tr{border:1px solid var(--line);margin-bottom:22px;border-radius:5px;overflow:hidden}
 .area-table th,.area-table td{padding:18px 20px;border:0}
 .area-table tbody th p{margin-top:4px}
 .area-table td:last-child{padding-top:18px}
 .area-guide-section{padding:52px 0}
 .area-location{padding:20px}
}
@media(max-width:480px){
 .area-intro{padding:48px 0}
 .area-links{gap:10px}
 .area-links a{padding:10px 16px}
 .area-breadcrumb{font-size:1.125rem}
 .area-hero h1{font-size:2rem}
 .area-visit-actions .button{width:100%}
 .area-table th,.area-table td{padding:18px 14px}
 .area-route>summary{padding:14px 12px;gap:8px;font-size:1.25rem}
 .area-route-state{font-size:1.125rem}
 .area-route-body{padding:20px 16px}
}
