/* Regional acquisition pages reuse the two worlds and their native components. */
.regional-navigation { display: flex; align-items: center; gap: 28px; padding-block: 18px; }
.regional-country { color: var(--text-secondary); font-size: .82rem; }
.regional-navigation-links { display: flex; flex-wrap: wrap; gap: 6px 22px; min-width: 0; }
.regional-navigation a { display: inline-flex; align-items: center; min-height: 44px; font-size: .86rem; border-bottom: 2px solid transparent; }
.regional-navigation a:hover, .regional-navigation a[aria-current="page"] { color: var(--accent); border-color: var(--accent); }
.regional-content .regional-hero-grid { display: block; }
.page-interior .regional-content .regional-hero { padding-block: 32px 52px; }
.page-interior .regional-content .regional-hero h1 { max-width: 23ch; font-size: clamp(2.15rem, 3.2vw, 3.35rem); }
.page-interior .regional-content .content-intro { font-size: 1rem; max-width: 62ch; }
.regional-benefit { color: var(--accent); font-size: .88rem; max-width: 65ch; margin-top: 22px; }
.regional-preparation { background: var(--bg-card); border: 1px solid var(--border-color); border-top: 2px solid var(--accent); border-radius: var(--world-radius); padding: 28px 30px; min-width: 0; }
.regional-start .regional-preparation { max-width: 860px; }
.regional-preparation > summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; cursor: pointer; list-style: none; min-height: 44px; }
.regional-preparation > summary::-webkit-details-marker { display: none; }
.page-interior .regional-content .regional-preparation > summary h2 { margin: 0; font-size: 1.15rem; }
.regional-preparation > summary > span { color: var(--accent); font-size: 1.5rem; }
.regional-preparation[open] > summary > span { transform: rotate(45deg); }
.regional-preparation > summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 5px; }
.regional-preparation > div { padding-top: 20px; }
.regional-step { font-size: .75rem; letter-spacing: .12em; color: var(--accent); margin-bottom: 22px; }
.page-interior .regional-content .regional-preparation h2 { font-size: 1.4rem; line-height: 1.4; margin-bottom: 14px; }
.regional-preparation p:not(.regional-step) { font-size: .9rem; line-height: 1.6; }
.regional-preparation ol { list-style: none; counter-reset: preparation; padding: 0; margin: 24px 0 0; }
.regional-preparation li { counter-increment: preparation; position: relative; border-top: 1px solid var(--border-color); padding: 16px 0 16px 28px; font-size: .88rem; line-height: 1.6; }
.regional-preparation li::before { content: counter(preparation); position: absolute; left: 0; top: 16px; color: var(--accent); font-size: .8rem; }
.regional-preparation li:last-child { padding-bottom: 0; }
.regional-content .regional-projects { border-top: 0; }
.regional-single-project { grid-template-columns: minmax(0, 1fr); }
.regional-single-project .ux-card-link { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); column-gap: 36px; }
.regional-single-project .ux-card-thumbnail { grid-column: 1; grid-row: 1 / 5; margin-bottom: 0; align-self: center; }
.regional-single-project .card-top, .regional-single-project h3, .regional-single-project p, .regional-single-project .ux-card-action { grid-column: 2; }
.regional-content .ux-reading-grid { border-top: 1px solid var(--border-color); }
.regional-content .ux-reading-section h2 { max-width: 36ch; }
.regional-faq { border-top: 1px solid var(--border-color); }
.regional-faq-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.5fr); gap: 60px; }
.regional-faq-grid > h2 { max-width: 20ch; }
.regional-navigation a:focus-visible, .regional-faq summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 5px; }
.regional-content #regional-projects { scroll-margin-top: 24px; }
@media (max-width: 960px) {
  .regional-content .regional-hero-grid { gap: 32px; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
  .regional-preparation { padding: 24px; }
  .regional-faq-grid { gap: 32px; }
}
@media (max-width: 800px) {
  .regional-navigation { align-items: flex-start; gap: 18px; }
  .regional-country { padding-top: 13px; }
  .regional-content .regional-hero-grid, .regional-faq-grid { grid-template-columns: minmax(0, 1fr); }
  .regional-content .regional-hero-grid { gap: 30px; }
  .regional-faq-grid > h2 { max-width: none; }
  .regional-single-project .ux-card-link { display: flex; }
  .regional-single-project .ux-card-thumbnail { margin-bottom: 22px; }
}
@media (max-width: 600px) {
  .regional-navigation { display: block; padding-block: 8px 12px; }
  .regional-country { display: block; padding-top: 0; margin-bottom: 8px; }
  .regional-navigation-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .regional-navigation a { font-size: .85rem; min-height: 48px; padding: 8px 12px; border: 1px solid var(--border-color); border-radius: 10px; line-height: 1.4; }
  .regional-navigation a[aria-current] { background: var(--bg-card); }
  .page-interior .regional-content .regional-hero { padding-block: 18px 28px; }
  .page-interior .regional-content .regional-hero h1 { font-size: clamp(2rem, 8vw, 2.55rem); max-width: 100%; }
  .regional-preparation { padding: 20px; }
  .regional-step { display: none; }
  .regional-preparation ol { margin-top: 16px; }
  .regional-preparation li { padding-block: 12px; font-size: .96rem; }
  .regional-preparation li::before { top: 12px; }
  .regional-single-project .ux-card-thumbnail { margin-bottom: 16px; }
  .regional-faq-grid { gap: 22px; }
}
@media print {
  .regional-navigation, .regional-step, .regional-content .ux-hero-actions { display: none; }
  .regional-content .regional-hero-grid, .regional-faq-grid { display: block; }
  .regional-preparation { margin-top: 28px; break-inside: avoid; }
}
