:root {
  --relocation-navy: #062c56;
  --relocation-blue: #0b5ca9;
  --relocation-gold: #c8953e;
  --relocation-ink: #153b60;
  --relocation-muted: #587087;
  --relocation-line: #d6e1e9;
  --relocation-soft: #f2f6f9;
}

.relocation-country-page .country-formation-hero,
.relocation-country-page .country-formation-hero .shell { min-height: 560px; }
.relocation-country-page .country-formation-hero-copy { width: min(760px, 62%); }
.relocation-country-page .country-formation-hero h1 { max-width: 760px; font-size: clamp(50px, 5vw, 72px); }
.relocation-country-page .country-formation-hero-lead { max-width: 680px; font-size: 18px; }
.relocation-country-page .country-formation-hero::after { background: linear-gradient(90deg, rgba(3,28,57,.98) 0%, rgba(3,28,57,.91) 44%, rgba(3,28,57,.36) 76%, rgba(3,28,57,.15) 100%); }
.relocation-country-page .country-formation-facts { position: relative; z-index: 2; margin-top: -22px; }
.relocation-country-page .country-formation-facts-grid { box-shadow: 0 20px 48px rgba(5,37,70,.12); }

.relocation-country-page .country-guide-reading { padding: 76px 0 96px; background: #f3f6f8; }
.relocation-country-page .country-guide-reading > .shell { width: min(1320px, calc(100% - 96px)); max-width: 1320px; }
.relocation-country-page .country-guide-reading-grid { grid-template-columns: 280px minmax(0,1fr); gap: 48px; }
.relocation-country-page .country-guide-sidebar { top: 112px; max-height: calc(100vh - 132px); overflow: auto; border-top: 3px solid var(--relocation-gold); }
.relocation-country-page .country-guide-sidebar-head { padding: 24px 24px 20px; }
.relocation-country-page .country-guide-sidebar-head strong { font-size: 25px; }
.relocation-country-page .country-guide-toc a { padding: 11px 18px 11px 24px; font-size: 13px; }
.relocation-country-page .country-guide-article { overflow: visible; }
.relocation-country-page .country-guide-article > .country-formation-section { padding: 58px 62px; scroll-margin-top: 105px; }
.relocation-country-page .country-guide-article .country-formation-copy,
.relocation-country-page .country-guide-article .country-formation-heading { max-width: none; }
.relocation-country-page .country-guide-article .country-formation-copy > p,
.relocation-country-page .country-guide-article .country-formation-heading > p,
.relocation-country-page .relocation-prose > p { max-width: none; color: var(--relocation-muted); font-size: 16px; line-height: 1.85; }
.relocation-country-page .country-guide-article .country-formation-copy > p + p,
.relocation-country-page .relocation-prose > p + p { margin-top: 18px; }
.relocation-country-page .country-guide-article :is(h2,h3,h4) { color: var(--relocation-navy); }
.relocation-country-page .country-guide-article .country-formation-heading h2,
.relocation-country-page .country-guide-article .country-formation-copy h2 { max-width: 880px; font-size: clamp(34px,3.2vw,46px); }
.relocation-country-page .country-guide-article h3 { margin: 34px 0 12px; font-family: Georgia,"Times New Roman",serif; font-size: 27px; line-height: 1.25; }
.relocation-country-page .country-guide-article h4 { margin: 26px 0 10px; font-size: 18px; }
.relocation-country-page .country-guide-article ul,
.relocation-country-page .country-guide-article ol { color: var(--relocation-muted); font-size: 15px; line-height: 1.75; }
.relocation-country-page .country-guide-article li + li { margin-top: 8px; }

.relocation-lead-note { margin: 28px 0 0; padding: 24px 28px; border-left: 3px solid var(--relocation-gold); background: #eef4f8; }
.relocation-lead-note strong { display: block; color: var(--relocation-navy); font-family: Georgia,"Times New Roman",serif; font-size: 22px; line-height: 1.3; }
.relocation-lead-note p { margin: 9px 0 0; color: var(--relocation-muted); font-size: 15px; line-height: 1.75; }

.relocation-two-column { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-top: 30px; }
.relocation-detail-panel { padding: 28px 30px; border: 1px solid var(--relocation-line); border-top: 3px solid var(--relocation-gold); background: #fff; }
.relocation-detail-panel h3 { margin-top: 0 !important; font-size: 23px !important; }
.relocation-detail-panel p { color: var(--relocation-muted); font-size: 15px; line-height: 1.75; }
.relocation-detail-panel ul { padding-left: 20px; }

.relocation-steps { margin: 32px 0 0; padding: 0; list-style: none; counter-reset: relocation-step; }
.relocation-steps li { position: relative; padding: 0 0 28px 48px; border-left: 1px solid #cbd9e3; counter-increment: relocation-step; }
.relocation-steps li:last-child { padding-bottom: 0; border-left-color: transparent; }
.relocation-steps li::before { content: ""; position: absolute; left: -7px; top: 4px; width: 12px; height: 12px; border: 2px solid var(--relocation-gold); border-radius: 50%; background: #fff; }
.relocation-steps strong { display: block; color: var(--relocation-navy); font-family: Georgia,"Times New Roman",serif; font-size: 22px; line-height: 1.35; }
.relocation-steps p { margin: 7px 0 0; color: var(--relocation-muted); font-size: 15px; line-height: 1.75; }

.relocation-table-wrap { margin-top: 30px; overflow-x: auto; border: 1px solid var(--relocation-line); }
.relocation-table { width: 100%; border-collapse: collapse; min-width: 720px; }
.relocation-table th { padding: 17px 20px; color: #fff; background: var(--relocation-navy); font-size: 11px; letter-spacing: .08em; text-align: left; text-transform: uppercase; }
.relocation-table td { padding: 20px; border-right: 1px solid var(--relocation-line); border-top: 1px solid var(--relocation-line); color: var(--relocation-muted); font-size: 14px; line-height: 1.65; vertical-align: top; }
.relocation-table td:first-child { color: var(--relocation-navy); font-family: Georgia,"Times New Roman",serif; font-size: 18px; font-weight: 700; }
.relocation-table tr:nth-child(even) td { background: #f6f9fb; }

.relocation-checklist { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; margin-top: 30px; border: 1px solid var(--relocation-line); background: #fff; }
.relocation-checklist article { padding: 28px; border-right: 1px solid var(--relocation-line); }
.relocation-checklist article:last-child { border-right: 0; }
.relocation-checklist small { color: #a87521; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.relocation-checklist h3 { margin: 10px 0 !important; font-size: 23px !important; }
.relocation-checklist ul { padding-left: 18px; }

.relocation-source-note { padding: 34px 0; border-top: 1px solid var(--relocation-line); background: #fff; }
.relocation-source-note .shell { display: flex; justify-content: space-between; gap: 36px; color: var(--relocation-muted); font-size: 13px; line-height: 1.7; }
.relocation-source-links { display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-start; }
.relocation-source-links a { color: var(--relocation-blue); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }

.relocation-country-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-top: 42px; }
.relocation-country-card { position: relative; min-height: 330px; overflow: hidden; border-top: 2px solid var(--relocation-gold); background: var(--relocation-navy); color: #fff; }
.relocation-country-card--wide { grid-column: span 2; }
.relocation-country-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.relocation-country-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(2,25,51,.08) 22%,rgba(2,25,51,.92) 100%); }
.relocation-country-card span { position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; padding: 28px; }
.relocation-country-card small { display: block; color: #e3b763; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.relocation-country-card strong { display: block; margin-top: 7px; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: 30px; line-height: 1.12; }
.relocation-country-card em { display: block; max-height: 0; margin-top: 0; overflow: hidden; color: #d8e5ef; font-size: 13px; font-style: normal; line-height: 1.55; opacity: 0; transition: max-height .35s ease, margin .35s ease, opacity .35s ease; }
.relocation-country-card:hover img,
.relocation-country-card:focus-visible img { transform: scale(1.035); }
.relocation-country-card:hover em,
.relocation-country-card:focus-visible em { max-height: 70px; margin-top: 10px; opacity: 1; }

@media (max-width: 1060px) {
  .relocation-country-page .country-guide-reading > .shell { width: min(100% - 48px, 980px); }
  .relocation-country-page .country-guide-reading-grid { grid-template-columns: 1fr; }
  .relocation-country-page .country-guide-sidebar { position: static; max-height: none; }
  .relocation-country-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .relocation-country-page .country-formation-hero,
  .relocation-country-page .country-formation-hero .shell { min-height: 620px; }
  .relocation-country-page .country-formation-hero-copy { width: 100%; }
  .relocation-country-page .country-guide-reading > .shell { width: min(100% - 32px, 700px); }
  .relocation-country-page .country-guide-article > .country-formation-section { padding: 42px 24px; }
  .relocation-two-column,
  .relocation-checklist { grid-template-columns: 1fr; }
  .relocation-checklist article { border-right: 0; border-bottom: 1px solid var(--relocation-line); }
  .relocation-checklist article:last-child { border-bottom: 0; }
  .relocation-source-note .shell { flex-direction: column; }
  .relocation-country-grid { grid-template-columns: 1fr; }
  .relocation-country-card--wide { grid-column: auto; }
  .relocation-country-card { min-height: 300px; }
  .relocation-country-page .country-guide-sidebar { border: 1px solid var(--relocation-line); border-top: 3px solid var(--relocation-gold); }
  .relocation-country-page .country-guide-sidebar-head { padding: 20px 20px 16px; }
  .relocation-country-page .country-guide-sidebar-head strong { font-size: 22px; }
  .relocation-country-page .country-guide-toc { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .relocation-country-page .country-guide-toc a { padding: 12px 14px; border-right: 1px solid var(--relocation-line); font-size: 12px; }
  .relocation-country-page .country-guide-toc a:nth-child(even) { border-right: 0; }
  .relocation-country-page .country-guide-sidebar-cta { display: none; }
}
@media (max-width: 460px) {
  .relocation-country-page .country-guide-toc { grid-template-columns: 1fr; }
  .relocation-country-page .country-guide-toc a { border-right: 0; }
}
