/* Shared presentation for generated service-area pages. */
.regional-refresh-page .regional-hero { min-height:0; padding:64px 0; }
.regional-refresh-page .regional-hero-grid { min-height:0; align-items:center; }
.regional-refresh-page .regional-hero-copy { padding-bottom:0; }
.regional-refresh-page .regional-hero h1 { line-height:1.08; text-wrap:balance; }
.regional-refresh-page .regional-hero-art { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:22px; min-height:0; align-self:center; }
.regional-refresh-page .regional-hero-art img { position:static; width:auto; height:330px; max-width:100%; object-fit:contain; transform:none; }
.regional-refresh-page .regional-location-chip { position:static; width:auto; max-width:100%; border-radius:16px; transform:none; }
.regional-refresh-page .regional-kicker { background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.22); border-radius:999px; padding:10px 14px; line-height:1.5; }
.regional-refresh-page .regional-content { padding:72px 0; background:radial-gradient(ellipse at 0 0,#eee6ff 0,transparent 38%),#f8f6fc; }
.regional-refresh-page .regional-section { margin-bottom:72px; }
.regional-refresh-page .regional-section:last-child { margin-bottom:0; }
.regional-refresh-page .regional-section-head { max-width:820px; margin:0 auto 32px; text-align:center; }
.regional-refresh-page .regional-section-head h2 { max-width:none; margin-inline:auto; text-wrap:balance; }
.regional-refresh-page .regional-section-head p { margin-inline:auto; }
.regional-refresh-page .regional-copy h2 { text-wrap:balance; }
.regional-refresh-page .regional-content .eyebrow { display:inline-flex; align-items:center; gap:9px; padding:9px 13px; margin-bottom:18px; border-radius:6px; background:#6023b7; color:#fff; font-size:.76rem; font-weight:800; line-height:1.4; letter-spacing:.055em; text-transform:uppercase; }
.regional-refresh-page .regional-content .eyebrow::before { content:""; width:14px; height:2px; background:#d7c4ff; }
.regional-refresh-page .regional-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.regional-refresh-page :is(.regional-fact,.regional-workload,.regional-hub-card) { border:1px solid #e4d8f8; border-radius:20px; padding:28px; background:linear-gradient(145deg,#fff,#fcfaff); box-shadow:0 12px 28px -20px rgba(44,15,80,.3); }
.regional-refresh-page :is(.regional-fact,.regional-workload,.regional-service-card)>i { display:grid; place-items:center; width:48px; height:48px; margin:0 0 20px; border-radius:14px; background:#ede5fb; color:#6323bc; font-size:1.1rem; }
.regional-refresh-page .regional-fact strong { font-size:1.1rem; }
.regional-refresh-page .regional-fact span { color:#595273; font-size:.96rem; line-height:1.7; }
.regional-refresh-page :is(.regional-workload,.regional-hub-card) p { font-size:.95rem; line-height:1.7; color:#595273; }
.regional-refresh-page .regional-workload h3 { margin-top:0; }
.regional-refresh-page .regional-hub-card { display:flex; flex-direction:column; gap:12px; border-top:3px solid #9c6aff; }
.regional-refresh-page .regional-hub-card h2 { margin:0; line-height:1.3; font-size:1.2rem; }
.regional-refresh-page .regional-hub-card p { margin:0 0 10px; }
.regional-refresh-page .regional-hub-card a { margin-top:auto; line-height:1.5; }
.regional-refresh-page .regional-city-distance { color:#6323bc; font-size:.8rem; line-height:1.5; }
.regional-refresh-page :is(.regional-related-grid,.regional-hub-grid,.regional-service-grid) { display:flex; flex-wrap:wrap; justify-content:center; gap:20px; }
.regional-refresh-page :is(.regional-related-grid,.regional-hub-grid,.regional-service-grid)>* { flex:0 1 calc((100% - 40px)/3); min-width:0; }
.regional-refresh-page .regional-related-link { border-radius:16px; font-size:.93rem; }
.regional-refresh-page :is(.regional-route-note,.regional-origin-panel) { border-radius:20px; padding:28px; }
.regional-refresh-page .regional-origin-panel { background:#f0e9fb; }
.regional-refresh-page .regional-origin-panel a { line-height:1.6; }
.regional-refresh-page .regional-faq { margin-inline:auto; max-width:920px; gap:14px; }
.regional-refresh-page .regional-faq details { border-radius:16px; overflow:hidden; }
.regional-refresh-page .regional-faq summary { padding:22px; line-height:1.5; }
.regional-refresh-page .regional-faq details[open] { border-color:#aa83e9; }
.regional-refresh-page .regional-planning { display:grid; grid-template-columns:1.2fr 1fr; gap:32px; padding:32px; border:1px solid #e4d8f8; border-radius:24px; background:#fff; }
.regional-refresh-page .regional-planning ol { margin:0; padding-left:24px; color:#595273; line-height:1.75; }
.regional-refresh-page .regional-planning li+li { margin-top:18px; }
.regional-refresh-page .regional-planning li::marker { color:#6323bc; font-weight:800; }
.regional-refresh-page .regional-planning aside { padding:24px; border-radius:16px; background:#f4effc; }
.regional-refresh-page .regional-planning h3 { margin:0 0 16px; font-size:1.1rem; }
.regional-refresh-page .regional-planning a { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 0; border-bottom:1px solid #ded3f1; color:#6323bc; font-weight:650; line-height:1.5; }
.regional-refresh-page .regional-planning a:last-child { border-bottom:0; }
.regional-refresh-page .regional-main a:focus-visible,.regional-refresh-page summary:focus-visible { outline:3px solid #8b5cf6; outline-offset:4px; }
@media(max-width:980px) {
  .regional-refresh-page .regional-hero-grid { gap:36px; }
  .regional-refresh-page .regional-hero-art img { height:280px; }
  .regional-refresh-page :is(.regional-related-grid,.regional-hub-grid,.regional-service-grid)>* { flex-basis:calc((100% - 20px)/2); }
  .regional-refresh-page .regional-planning { grid-template-columns:1fr; }
}
@media(max-width:680px) {
  .regional-refresh-page .regional-hero { padding:44px 0; }
  .regional-refresh-page .regional-hero-art img { height:240px; }
  .regional-refresh-page .regional-content { padding:48px 0; }
  .regional-refresh-page .regional-section { margin-bottom:48px; }
  .regional-refresh-page .regional-facts { grid-template-columns:1fr; }
  .regional-refresh-page :is(.regional-related-grid,.regional-hub-grid,.regional-service-grid)>* { flex-basis:100%; }
  .regional-refresh-page :is(.regional-planning,.regional-fact,.regional-workload,.regional-hub-card,.regional-origin-panel,.regional-route-note) { padding:24px; }
}
