/* Relocation-services hub. The outer frame of every section is the shared
   .marketing-shell, so the page aligns with the homepage at every width. */
.relocation-services-hub-page{background:var(--color-page);color:var(--color-text)}
.relocation-services-hub-page main{overflow:clip}
.hub-breadcrumbs{padding:26px 0;border-bottom:1px solid var(--neutral-200)}

.hub-kicker{margin:0;color:var(--green-700);font-size:11px;font-weight:800;letter-spacing:.2em;line-height:1.3;text-transform:uppercase}

/* Hero */
.hub-hero{border-bottom:1px solid var(--neutral-200);background:var(--color-surface-soft)}
.hub-hero__inner{padding-top:84px;padding-bottom:88px}
.hub-hero h1{max-width:900px;margin:18px 0 0}
.hub-hero__lead{max-width:780px;margin:26px 0 0;color:var(--color-text-muted);font-size:19px;line-height:1.65}
.hub-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}

/* Section rhythm */
.hub-section{padding-top:74px;padding-bottom:96px}
.hub-section__head{max-width:780px;margin-bottom:38px}
.hub-section__head h2{margin:12px 0 14px;font-family:var(--font-display);font-size:clamp(32px,3.5vw,44px);font-weight:700;letter-spacing:-.035em;line-height:1.08}
.hub-section__head p:last-child{margin:0;color:var(--color-text-muted);font-size:16px;line-height:1.75}

/* Published guide cards */
.hub-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.hub-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:28px;border:1px solid var(--neutral-200);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-card)}
.hub-card__destination{display:flex;align-items:center;gap:10px;margin:0;color:var(--neutral-500);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.hub-card__destination img{width:24px;height:18px;object-fit:cover;box-shadow:0 0 0 1px var(--color-border)}
.hub-card h3{margin:0;font-family:var(--font-display);font-size:25px;font-weight:700;letter-spacing:-.02em;line-height:1.18}
.hub-card h3 a{color:var(--neutral-950);text-decoration:none}
.hub-card h3 a:hover{color:var(--green-700)}
.hub-card>p{margin:0;color:var(--color-text-muted);font-size:14px;line-height:1.7}
.hub-card__date{display:flex;flex-wrap:wrap;gap:8px;color:var(--neutral-500);font-size:10px;font-weight:800;letter-spacing:.08em;line-height:1.4;text-transform:uppercase}
.hub-card__date span{color:var(--neutral-600);font-weight:600;letter-spacing:0;text-transform:none}
.hub-card__link{display:inline-flex;align-items:center;gap:10px;margin-top:auto;padding-top:6px;color:var(--green-800);font-size:13px;font-weight:700;text-decoration:none}
.hub-card__link span{display:grid;width:18px;height:18px;flex:0 0 18px;place-items:center}
.hub-card__link svg{display:block;width:100%;height:100%}
.hub-card__link:hover{color:var(--color-action-hover);text-decoration:underline;text-underline-offset:3px}

.hub-note{margin:34px 0 0;padding:20px 22px;border-left:4px solid var(--green-400);background:var(--color-surface-soft);color:var(--neutral-700);font-size:14px;line-height:1.7}
.hub-note a{color:var(--green-800);font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* Coverage band */
.hub-band{padding-top:74px;padding-bottom:84px;border-block:1px solid var(--neutral-200);background:var(--color-surface-soft)}
.hub-covers{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:26px 32px;margin:0}
.hub-covers>div{padding-top:18px;border-top:2px solid var(--green-500)}
.hub-covers dt{color:var(--neutral-950);font-family:var(--font-display);font-size:19px;font-weight:700;line-height:1.25}
.hub-covers dd{margin:8px 0 0;color:var(--color-text-muted);font-size:14px;line-height:1.7}

/* Next steps */
.hub-paths{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px}
.hub-path{display:flex;flex-direction:column;gap:10px;min-width:0;padding:26px 22px 0 0;border-top:1px solid var(--neutral-200)}
.hub-path h3{margin:0;font-family:var(--font-display);font-size:21px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.hub-path p{margin:0;color:var(--color-text-muted);font-size:14px;line-height:1.7}
.hub-path a{margin-top:auto;padding-top:6px;color:var(--green-800);font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.hub-path a:hover{color:var(--color-action-hover)}

@media(min-width:1121px){
  /* Longer translated headings wrap inside the same hero block. */
  html:not([lang="en"]) .hub-hero h1{--site-heading-hero-size:clamp(38px,3.2vw,54px)}
}
@media(max-width:1120px){
  .hub-hero__inner{padding-top:62px;padding-bottom:66px}.hub-hero__lead{font-size:18px}
  .hub-section{padding-top:58px;padding-bottom:72px}
}
@media(max-width:680px){
  .hub-breadcrumbs{padding:18px 0}
  .hub-hero__inner{padding-top:46px;padding-bottom:52px}.hub-hero h1{margin-top:14px}.hub-hero__lead{margin-top:20px;font-size:17px;line-height:1.6}.hub-hero__actions{gap:10px;margin-top:26px}
  .hub-hero__actions .ui-button{width:100%}
  .hub-section__head{margin-bottom:28px}.hub-section__head h2{font-size:29px}
  .hub-cards{grid-template-columns:1fr;gap:16px}.hub-card{padding:22px}
  .hub-note{padding:18px}
  .hub-band{padding-top:54px;padding-bottom:60px}.hub-covers{grid-template-columns:1fr;gap:20px}
  .hub-paths{gap:16px}.hub-path{padding:20px 0 0}
}
