/* Immigration dashboard only. The production navigation and other guides retain
   their own styles; every rule below is bounded to this page. */
main.im-page.site-magazine-page {
  --im-blue: #0567e8;
  --im-ink: #15335d;
  --im-navy: #082c55;
  --im-muted: #526986;
  --im-line: #c6dafa;
  --im-pale: #f3f8ff;
  --im-gold: #bd7a00;
  --im-anchor-offset: 132px;
  max-width: none;
  margin: 0;
  padding: 0;
  color: var(--im-ink);
  background: #fff;
  color-scheme: light;
  font: 15px/1.55 Arial, Helvetica, sans-serif;
}
main.im-page.site-magazine-page *,
main.im-page.site-magazine-page *::before,
main.im-page.site-magazine-page *::after { box-sizing: border-box; }
main.im-page.site-magazine-page [hidden] { display: none !important; }
main.im-page.site-magazine-page [id] { scroll-margin-top: var(--im-anchor-offset); }
/* The retained production section navigation uses this variable on headings.
   Keep its anchor clearance in sync with this page's wrapping jump links. */
main.im-page.site-magazine-page.site-space-page[data-site-space] { --ss-anchor-offset: var(--im-anchor-offset); }
main.im-page.site-magazine-page :is(.im-main,.im-sidebar,.im-panel,.im-side-panel,.im-field,.im-layout,.im-finder-layout) { min-width: 0; }
main.im-page.site-magazine-page :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline: 3px solid #d18a09; outline-offset: 3px; }
main.im-page.site-magazine-page .im-container { width: calc(100% - 48px); max-width: 1500px; margin-inline: auto; }
main.im-page.site-magazine-page :is(.im-main,.im-sidebar,.im-alerts,.im-trust,.im-hero-copy) :is(h1,h2,h3,h4) { font-family: Arial, Helvetica, sans-serif; line-height: 1.25; letter-spacing: -.025em; }
main.im-page.site-magazine-page :is(.im-main,.im-sidebar,.im-alerts,.im-trust) :is(p,ul,ol) { margin-top: 0; }
main.im-page.site-magazine-page :is(.im-main,.im-sidebar,.im-alerts,.im-trust) p { margin-bottom: 10px; }
main.im-page.site-magazine-page :is(.im-main,.im-sidebar,.im-alerts,.im-trust) a { color: #005acb; text-underline-offset: 3px; }
main.im-page.site-magazine-page :is(.im-main,.im-sidebar,.im-alerts,.im-trust) a:hover { color: #00449a; }
main.im-page.site-magazine-page .im-icon { display: inline-block; width: 22px; height: 22px; flex: 0 0 22px; vertical-align: -.2em; }
main.im-page.site-magazine-page .im-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); border: 0; white-space: nowrap; }
main.im-page.site-magazine-page :is(.im-small,.im-note,.im-source-note) { color: var(--im-muted); font-size: 13px; line-height: 1.55; }
main.im-page.site-magazine-page :is(.im-eyebrow,.im-kicker) { margin: 0 0 8px; font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }

/* Skyline arrival masthead. The gradient keeps both languages legible. */
main.im-page.site-magazine-page .im-hero { position: relative; isolation: isolate; overflow: hidden; min-height: 350px; padding: 26px 0 30px; color: #fff; background: #092f59; }
main.im-page.site-magazine-page .im-hero-image { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center 48%; }
main.im-page.site-magazine-page .im-hero::before { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(3,29,61,.96) 0%,rgba(4,36,72,.91) 43%,rgba(5,38,75,.65) 72%,rgba(6,37,69,.2) 100%); }
main.im-page.site-magazine-page .im-hero-copy { position: relative; width: 72%; max-width: 1000px; }
main.im-page.site-magazine-page .im-breadcrumb { display: flex; flex-wrap: wrap; gap: 6px 10px; margin-bottom: 22px; font-size: 13px; }
main.im-page.site-magazine-page .im-breadcrumb a { color: #d0e7ff; text-underline-offset: 3px; }
main.im-page.site-magazine-page .im-hero :is(.im-eyebrow,.im-kicker) { color: #c5e2ff; }
main.im-page.site-magazine-page .im-hero h1 { max-width: 940px; margin: 0 0 14px; color: #fff; font-size: clamp(35px,3.5vw,48px); font-weight: 800; line-height: 1.12; letter-spacing: -.035em; text-wrap: balance; }
main.im-page.site-magazine-page :is(.im-hero-deck,.im-deck) { max-width: 840px; margin: 0 0 16px; color: #edf5ff; font-size: 17px; line-height: 1.55; }
main.im-page.site-magazine-page .im-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
main.im-page.site-magazine-page .im-hero-meta { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-top: 16px; color: #d7eaff; font-size: 13px; }
main.im-page.site-magazine-page .im-hero-meta a { color: #fff; text-underline-offset: 3px; }
main.im-page.site-magazine-page .im-hero .im-small { color: #d7eaff; }

/* The local guide navigation sits beneath the retained shared navigation. */
main.im-page.site-magazine-page :is(.ss-toc,.ss-page-topics,.site-section-toc,.section-toc,.page-toc) { display: none !important; }
main.im-page.site-magazine-page .im-jump-nav { position: sticky; z-index: 30; top: 56px; padding: 10px 0; border-bottom: 1px solid var(--im-line); background: #fff; box-shadow: 0 3px 12px #0b32600a; }
main.im-page.site-magazine-page .im-jump-nav .im-container { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
main.im-page.site-magazine-page .im-jump-nav a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 9px 13px; border: 1px solid #c0d7f7; border-radius: 6px; color: #0755b5; background: #f7faff; font-size: 14px; font-weight: 700; line-height: 1.25; text-decoration: none; }
main.im-page.site-magazine-page .im-jump-nav a:hover { color: #00439b; border-color: #76a8eb; background: #eaf3ff; }
main.im-page.site-magazine-page .im-trust { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 22px; padding-block: 15px; color: #47627f; font-size: 13px; }
main.im-page.site-magazine-page .im-trust > :is(span,div,p) { display: flex; align-items: center; gap: 7px; margin: 0; }
main.im-page.site-magazine-page .im-trust .im-icon { color: #0561d5; width: 19px; height: 19px; flex-basis: 19px; }
main.im-page.site-magazine-page .im-alerts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-bottom: 14px; }
main.im-page.site-magazine-page .im-alert { display: flex; align-items: flex-start; gap: 10px; min-width: 0; padding: 13px 15px; border: 1px solid #edcd7b; border-radius: 7px; color: #654719; background: #fff9e9; font-size: 14px; }
main.im-page.site-magazine-page .im-alert .im-icon { margin-top: 2px; color: #956300; }
main.im-page.site-magazine-page .im-alert p { margin: 3px 0 0; }
main.im-page.site-magazine-page :is(.im-alert-blue,.im-alert-info) { border-color: #bbd4fa; color: #254d79; background: #f0f7ff; }
main.im-page.site-magazine-page :is(.im-alert-blue,.im-alert-info) .im-icon { color: #0060d7; }
main.im-page.site-magazine-page .im-layout { display: grid; grid-template-columns: minmax(0,1fr) 270px; align-items: start; gap: 14px; padding-bottom: 30px; }
main.im-page.site-magazine-page .im-main { display: grid; gap: 12px; }
main.im-page.site-magazine-page .im-sidebar { display: grid; align-content: start; gap: 12px; }
main.im-page.site-magazine-page :is(.im-panel,.im-side-panel) { padding: 16px; border: 1px solid var(--im-line); border-radius: 8px; background: linear-gradient(180deg,#fff,#fbfdff); }
main.im-page.site-magazine-page :is(.im-panel,.im-side-panel) > :last-child { margin-bottom: 0; }
main.im-page.site-magazine-page .im-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 12px; color: #0052c9; font-size: 22px; font-weight: 800; line-height: 1.25; }
main.im-page.site-magazine-page .im-heading :is(.im-icon,svg) { width: 24px; height: 24px; flex: 0 0 24px; }
main.im-page.site-magazine-page .im-heading small { color: var(--im-muted); font-size: 13px; font-weight: 400; line-height: 1.5; letter-spacing: 0; }
main.im-page.site-magazine-page .im-section-heading { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; margin-bottom: 12px; }
main.im-page.site-magazine-page .im-section-heading .im-heading { margin-bottom: 0; }
main.im-page.site-magazine-page .im-section-heading > p { margin: 0; color: var(--im-muted); font-size: 13px; }
main.im-page.site-magazine-page .im-side-panel h2 { margin: 0 0 10px; color: #0053c5; font-size: 19px; }
main.im-page.site-magazine-page .im-side-panel h3 { margin: 14px 0 7px; font-size: 16px; }
main.im-page.site-magazine-page .im-side-panel :is(p,li) { font-size: 14px; }
main.im-page.site-magazine-page .im-side-panel ul { padding-left: 20px; margin-bottom: 0; }
main.im-page.site-magazine-page .im-side-panel li + li { margin-top: 7px; }
main.im-page.site-magazine-page :is(.im-panel,.im-side-panel) img { max-width: 100%; }
main.im-page.site-magazine-page :is(.im-side-image,.im-side-panel > img) { display: block; width: 100%; height: 138px; margin-bottom: 12px; border-radius: 5px; object-fit: cover; }

/* Six purpose cards and six document reminders share a calm visual rhythm. */
main.im-page.site-magazine-page :is(.im-routes,.im-docs) { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 10px; }
main.im-page.site-magazine-page .im-route { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #d2e1f5; border-radius: 7px; background: #fff; }
main.im-page.site-magazine-page .im-route > img { display: block; width: 100%; height: 100px; object-fit: cover; }
main.im-page.site-magazine-page :is(.im-route-body,.im-route > div) { display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 8px; padding: 11px 10px; }
main.im-page.site-magazine-page .im-route h3 { margin: 0; color: #143763; font-size: 16px; line-height: 1.3; overflow-wrap: anywhere; }
main.im-page.site-magazine-page .im-route p { margin: 0; color: #536b85; font-size: 13px; line-height: 1.5; }
main.im-page.site-magazine-page .im-route .im-btn { width: 100%; margin-top: auto; padding-inline: 7px; font-size: 13px; }
main.im-page.site-magazine-page .im-doc { min-width: 0; padding: 12px 10px; border: 1px solid #d9e5f5; border-radius: 7px; background: #fff; }
main.im-page.site-magazine-page .im-doc .im-icon { width: 29px; height: 29px; margin-bottom: 8px; color: #0567e8; }
main.im-page.site-magazine-page .im-doc:nth-child(2n) .im-icon { color: #168269; }
main.im-page.site-magazine-page .im-doc:nth-child(3n) .im-icon { color: #a36a00; }
main.im-page.site-magazine-page .im-doc strong { display: block; margin-bottom: 6px; font-size: 15px; line-height: 1.3; }
main.im-page.site-magazine-page .im-doc h3 { margin: 0 0 6px; color: #163c6c; font-size: 16px; line-height: 1.3; overflow-wrap: anywhere; }
main.im-page.site-magazine-page .im-doc p { margin: 0; color: #536b85; font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
main.im-page.site-magazine-page .im-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; counter-reset: im-step; }
main.im-page.site-magazine-page .im-step { position: relative; min-width: 0; padding: 13px; border: 1px solid #d6e4f7; border-radius: 7px; background: #f8fbff; }
main.im-page.site-magazine-page :is(.im-step-number,.im-step > span:first-child) { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin-bottom: 9px; border-radius: 50%; color: #fff; background: var(--im-blue); font-size: 14px; font-weight: 700; }
main.im-page.site-magazine-page .im-step h3 { margin: 0 0 8px; font-size: 16px; }
main.im-page.site-magazine-page .im-step p { margin: 0; color: var(--im-muted); font-size: 14px; }
main.im-page.site-magazine-page .im-triple { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
main.im-page.site-magazine-page .im-duo { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
main.im-page.site-magazine-page :is(.im-card,.im-mini-card) { min-width: 0; padding: 13px; border: 1px solid #d3e2f6; border-radius: 7px; background: #fff; }
main.im-page.site-magazine-page :is(.im-card,.im-mini-card) h3 { margin: 0 0 8px; font-size: 17px; }
main.im-page.site-magazine-page :is(.im-card,.im-mini-card) ul { padding-left: 20px; margin-bottom: 0; }
main.im-page.site-magazine-page :is(.im-card,.im-mini-card) li + li { margin-top: 7px; }
main.im-page.site-magazine-page .im-bullets { padding-left: 20px; margin-bottom: 12px; }
main.im-page.site-magazine-page .im-bullets li + li { margin-top: 7px; }
main.im-page.site-magazine-page .im-feature-image { display: block; width: 100%; height: 135px; margin-bottom: 12px; border-radius: 5px; object-fit: cover; }
main.im-page.site-magazine-page .im-source-link { display: inline-block; margin: 5px 0; font-size: 13px; line-height: 1.5; }

/* All form controls stay usable at browser zoom and the smallest screen. */
main.im-page.site-magazine-page :is(button,input,select,textarea) { font-family: Arial, Helvetica, sans-serif; }
main.im-page.site-magazine-page :is(.im-btn,.im-main button,.im-sidebar button) { cursor: pointer; }
main.im-page.site-magazine-page .im-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; max-width: 100%; padding: 10px 14px; border: 1px solid #95baf0; border-radius: 6px; color: #0758be; background: #fff; font-size: 14px; font-weight: 700; line-height: 1.35; text-align: center; text-decoration: none; overflow-wrap: anywhere; }
main.im-page.site-magazine-page .im-btn:hover { color: #034394; border-color: #4d91ed; background: #edf5ff; text-decoration: none; }
main.im-page.site-magazine-page :is(.im-btn-primary,.im-primary,.im-btn.im-btn-primary) { color: #fff; border-color: #0563dd; background: #0563dd; box-shadow: 0 3px 9px #005ce21c; }
main.im-page.site-magazine-page :is(.im-btn-primary,.im-primary):hover { color: #fff; border-color: #004eae; background: #004eae; }
main.im-page.site-magazine-page :is(.im-btn-white,.im-hero .im-btn:not(.im-btn-primary):not(.im-primary)) { color: #124274; border-color: #d7e8fa; background: #fff; }
main.im-page.site-magazine-page :is(.im-btn-quiet,.im-btn-small) { padding-inline: 11px; font-size: 13px; box-shadow: none; }
main.im-page.site-magazine-page :is(.im-btn-danger,.im-danger) { border-color: #ddadb0; color: #a02c32; background: #fff7f7; }
main.im-page.site-magazine-page button:disabled { opacity: .6; cursor: not-allowed; }
main.im-page.site-magazine-page .im-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; }
main.im-page.site-magazine-page .im-finder-layout { display: grid; grid-template-columns: minmax(0,3fr) minmax(230px,1.3fr); gap: 14px; align-items: start; }
main.im-page.site-magazine-page :is(.im-fields,.im-wallet-form,.im-dates-form) { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; align-items: start; }
main.im-page.site-magazine-page fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
main.im-page.site-magazine-page .im-field { display: flex; flex-direction: column; gap: 6px; margin: 0; color: #2b496c; font-size: 14px; font-weight: 700; line-height: 1.45; }
main.im-page.site-magazine-page .im-field > :is(span,strong) { display: block; }
main.im-page.site-magazine-page .im-field :is(input:not([type=checkbox]),select,textarea) { display: block; width: 100%; min-width: 0; min-height: 44px; margin: 0; padding: 10px 11px; border: 1px solid #aebfda; border-radius: 5px; color: #1e3e64; background: #fff; font-size: 15px; font-weight: 400; line-height: 1.4; }
main.im-page.site-magazine-page .im-field select { padding-right: 29px; }
main.im-page.site-magazine-page .im-field :is(textarea,input[type=file]) { min-height: 72px; }
main.im-page.site-magazine-page .im-field textarea { resize: vertical; }
main.im-page.site-magazine-page .im-field input[type=file] { padding: 8px; font-size: 13px; overflow: hidden; }
main.im-page.site-magazine-page .im-field input[type=file]::file-selector-button { min-height: 36px; margin: 0 8px 4px 0; padding: 7px; border: 1px solid #b3ccec; border-radius: 4px; color: #18477d; background: #eef5ff; font: inherit; }
main.im-page.site-magazine-page :is(.im-span-full,.im-full,.im-wallet-form > .im-actions,.im-dates-form > .im-actions) { grid-column: 1 / -1; }
main.im-page.site-magazine-page .im-field small { color: var(--im-muted); font-size: 13px; font-weight: 400; line-height: 1.5; }
main.im-page.site-magazine-page .im-check { display: flex; align-items: flex-start; gap: 9px; min-height: 44px; padding: 8px 0; color: #2d4a6d; font-size: 14px; line-height: 1.5; }
main.im-page.site-magazine-page .im-check label { display: flex; align-items: flex-start; gap: 9px; min-height: 44px; }
main.im-page.site-magazine-page input[type=checkbox] { appearance: auto; -webkit-appearance: checkbox; position: static; flex: 0 0 19px; width: 19px; height: 19px; margin: 2px 0 0; padding: 0; border-radius: 3px; opacity: 1; clip-path: none; accent-color: #0567e8; cursor: pointer; }
main.im-page.site-magazine-page :is(.im-result,.im-route-result,[data-immigration-route-result]) { min-width: 0; padding: 14px; border: 1px solid #bcd5f7; border-radius: 7px; background: #f2f7ff; overflow-wrap: anywhere; }
main.im-page.site-magazine-page [data-immigration-route-result] h3 { margin: 0 0 8px; color: #114379; font-size: 18px; }
main.im-page.site-magazine-page [data-immigration-route-result] h4 { margin: 0 0 5px; color: #19416c; font-size: 15px; }
main.im-page.site-magazine-page [data-immigration-route-result] :is(p,li) { font-size: 14px; }
main.im-page.site-magazine-page .im-result-intro { min-width: 0; padding: 14px; border: 1px solid #d1e1f7; border-radius: 7px; background: #f3f8ff; }
main.im-page.site-magazine-page .im-result-intro h3 { margin: 0 0 10px; color: #1c497b; font-size: 18px; }
main.im-page.site-magazine-page .im-result-intro > .im-icon { width: 38px; height: 38px; margin-bottom: 10px; color: #0965d8; }
main.im-page.site-magazine-page .im-result-intro p { font-size: 14px; }
main.im-page.site-magazine-page .immigration-route-steps { padding-left: 23px; margin: 12px 0 0; }
main.im-page.site-magazine-page .immigration-route-steps > li { padding-left: 3px; margin-bottom: 13px; }
main.im-page.site-magazine-page .immigration-route-steps p { margin: 3px 0 6px; }
main.im-page.site-magazine-page .immigration-route-sources { display: flex; flex-wrap: wrap; gap: 6px 12px; padding-top: 10px; border-top: 1px solid #cfdef4; font-size: 13px; }
main.im-page.site-magazine-page [data-immigration-expiry] { padding: 12px; margin-top: 10px; border: 1px solid #cbdcf4; border-radius: 6px; background: #f7faff; }
main.im-page.site-magazine-page [data-immigration-expiry][data-expiry-state=past] { border-color: #e8b6a8; background: #fff4ed; }

/* Native disclosure panels are useful without JavaScript as well. */
main.im-page.site-magazine-page .im-checklist { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; align-items: start; }
main.im-page.site-magazine-page :is(.im-checklist,.im-faq,.im-appendix) details { min-width: 0; border: 1px solid #d0e0f5; border-radius: 6px; background: #fff; }
main.im-page.site-magazine-page :is(.im-checklist,.im-faq,.im-appendix) summary { min-height: 44px; padding: 12px; color: #1b487e; font-size: 15px; font-weight: 700; line-height: 1.45; cursor: pointer; overflow-wrap: anywhere; }
main.im-page.site-magazine-page :is(.im-checklist,.im-faq,.im-appendix) details[open] > summary { border-bottom: 1px solid #e0eafa; background: #f7faff; }
main.im-page.site-magazine-page .im-checklist :is(ul,ol) { list-style: none; margin: 0; padding: 6px 12px 9px; }
main.im-page.site-magazine-page .im-checklist li + li { border-top: 1px solid #e6eef9; }
main.im-page.site-magazine-page .im-checklist li label { display: flex; align-items: flex-start; gap: 9px; min-height: 44px; padding: 10px 0; color: #315070; font-size: 14px; line-height: 1.5; cursor: pointer; }
main.im-page.site-magazine-page .im-checklist li:has(input:checked) label { color: #275c48; }
main.im-page.site-magazine-page .im-check-category > fieldset { padding: 5px 12px 8px; }
main.im-page.site-magazine-page .im-check-category .im-check + .im-check { border-top: 1px solid #e6eef9; }
main.im-page.site-magazine-page .im-check-category summary small { color: var(--im-muted); font-size: 13px; font-weight: 400; }
main.im-page.site-magazine-page .im-faq { display: grid; gap: 9px; }
main.im-page.site-magazine-page .im-faq details > :not(summary) { margin: 0; padding: 12px; color: #385676; }
main.im-page.site-magazine-page .im-progress { display: flex; align-items: center; gap: 12px; margin-bottom: 13px; }
main.im-page.site-magazine-page :is(.im-progress-ring,[data-immigration-progress]) { --progress: 0; display: grid; flex: 0 0 66px; width: 66px; height: 66px; place-items: center; border-radius: 50%; background: conic-gradient(#0567e8 calc(var(--progress) * 1%),#e0ebf9 0); }
main.im-page.site-magazine-page :is(.im-progress-ring,[data-immigration-progress]) > :is(span,strong) { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 50%; background: #fff; color: #0952aa; font-size: 17px; font-weight: 800; }
main.im-page.site-magazine-page .im-progress-copy strong { display: block; font-size: 15px; }
main.im-page.site-magazine-page .im-progress-copy p { margin: 3px 0 0; font-size: 13px; }
main.im-page.site-magazine-page .im-date-cards { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-bottom: 14px; }
main.im-page.site-magazine-page .im-date-card { min-width: 0; padding: 12px; border: 1px solid #cbdff7; border-radius: 6px; background: #f7faff; }
main.im-page.site-magazine-page .im-date-card .im-icon { margin-bottom: 7px; color: #1764c4; }
main.im-page.site-magazine-page .im-date-card strong { display: block; font-size: 14px; line-height: 1.35; }
main.im-page.site-magazine-page .im-date-card h3 { margin: 0 0 8px; color: #244c7a; font-size: 16px; line-height: 1.3; overflow-wrap: anywhere; }
main.im-page.site-magazine-page .im-date-card p { margin: 6px 0 9px; color: var(--im-muted); font-size: 13px; }
main.im-page.site-magazine-page .im-date-card .im-btn { width: 100%; padding-inline: 8px; font-size: 13px; }
main.im-page.site-magazine-page :is(.im-wallet-list,[data-immigration-wallet-list]) { display: grid; gap: 10px; margin-top: 14px; }
main.im-page.site-magazine-page .immigration-wallet-row { min-width: 0; padding: 13px; border: 1px solid #cbdff5; border-radius: 6px; background: #f7faff; overflow-wrap: anywhere; }
main.im-page.site-magazine-page .immigration-wallet-row :is(h3,h4,strong) { margin: 0 0 7px; color: #234e7d; font-size: 16px; }
main.im-page.site-magazine-page .immigration-wallet-row p { margin: 5px 0; font-size: 14px; white-space: pre-wrap; }
main.im-page.site-magazine-page .immigration-wallet-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
main.im-page.site-magazine-page .immigration-wallet-actions button { min-height: 44px; padding: 8px 13px; border: 1px solid #a5c4ee; border-radius: 5px; color: #0755b3; background: #fff; font: 700 14px/1.4 Arial,Helvetica,sans-serif; }
main.im-page.site-magazine-page :is(.im-tabs,[role=tablist]) { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 13px; }
main.im-page.site-magazine-page [data-immigration-view] { min-height: 44px; padding: 10px 13px; border: 1px solid #a9c9ef; border-radius: 5px; color: #1455a2; background: #fff; font: 700 14px/1.4 Arial,Helvetica,sans-serif; }
main.im-page.site-magazine-page [data-immigration-view][aria-selected=true] { border-color: #0860d6; color: #fff; background: #0860d6; }
main.im-page.site-magazine-page :is([data-immigration-save-status],[data-immigration-status],[data-immigration-live]) { font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
main.im-page.site-magazine-page :is(.im-clear-confirm,[data-immigration-clear-confirm],[data-immigration-clear-confirmation]) { margin-top: 12px; padding: 13px; border: 1px solid #deb8ae; border-radius: 6px; background: #fff6f1; }
main.im-page.site-magazine-page .im-main noscript { display: block; margin: 12px 0; padding: 12px; border: 1px solid #dfc787; border-radius: 6px; color: #674b1d; background: #fff8e6; font-size: 14px; }

/* The original legal article remains intact inside the source appendix. */
main.im-page.site-magazine-page .im-appendix { min-width: 0; }
main.im-page.site-magazine-page .im-appendix > summary { min-height: 44px; margin: -16px; padding: 16px; color: #145096; font-size: 17px; font-weight: 700; line-height: 1.4; cursor: pointer; }
main.im-page.site-magazine-page .im-appendix[open] > summary { margin-bottom: 0; border-bottom: 1px solid #d1e1f7; background: #f7faff; }
main.im-page.site-magazine-page .im-appendix .lw-page { min-width: 0; padding-top: 14px; background: #fff; }
main.im-page.site-magazine-page .im-appendix .lw-hero { display: none; }
main.im-page.site-magazine-page .im-appendix .lw-wrap { width: calc(100% - 28px); max-width: none; }
main.im-page.site-magazine-page .im-appendix .lw-content { padding-top: 0; }
main.im-page.site-magazine-page .im-appendix .lw-reading-layout { grid-template-columns: minmax(0,1fr); gap: 14px; }
main.im-page.site-magazine-page .im-appendix .lw-sidebar { grid-template-columns: repeat(3,minmax(0,1fr)); }
main.im-page.site-magazine-page .im-appendix .lw-sidebar > section:first-child { grid-column: auto; }
main.im-page.site-magazine-page .im-appendix .lw-sources ul { grid-template-columns: minmax(0,1fr); }
main.im-page.site-magazine-page .im-appendix .lw-topic-nav { position: static; gap: 7px; margin-bottom: 15px; }
main.im-page.site-magazine-page .im-appendix .lw-topic-nav a { min-height: 44px; padding: 10px; font-size: 13px; }
main.im-page.site-magazine-page .im-appendix .lw-topic-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
main.im-page.site-magazine-page .im-appendix :is(.lw-scope,.lw-urgent,.lw-editorial,.lw-inline-sources,.lw-small,.lw-sources li,.lw-topic-card p) { font-size: 13px; }
main.im-page.site-magazine-page .im-appendix :is(.lw-scenarios p,.lw-scenarios li,.lw-explainer p,.lw-explainer li,.lw-panel p,.lw-panel li,.lw-faq p) { font-size: 15px; }
main.im-page.site-magazine-page .im-appendix .lw-page h2 { font-size: 22px !important; }
main.im-page.site-magazine-page .im-appendix .lw-page h3 { font-size: 18px; }
main.im-page.site-magazine-page .im-appendix .lw-sources li a { overflow-wrap: anywhere; }
main.im-page.site-magazine-page [data-immigration-print-copy] { white-space: pre-wrap; overflow-wrap: anywhere; }
main.im-page.site-magazine-page .im-bottom-banner { padding: 28px 0 30px; color: #fff; background: linear-gradient(115deg,#08315c,#0757ac); }
main.im-page.site-magazine-page .im-bottom-banner h2 { max-width: 950px; margin: 0 0 10px; color: #fff; font: 800 28px/1.25 Arial,Helvetica,sans-serif; letter-spacing: -.025em; }
main.im-page.site-magazine-page .im-bottom-banner p { margin: 0; color: #e1eeff; font-size: 16px; }

@media (max-width: 1100px) {
  main.im-page.site-magazine-page .im-layout { grid-template-columns: minmax(0,1fr); }
  main.im-page.site-magazine-page .im-sidebar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  main.im-page.site-magazine-page .im-hero-copy { width: 83%; }
}
@media (max-width: 1023px) {
  /* The retained shared navigation stops sticking at this same breakpoint. */
  main.im-page.site-magazine-page .im-jump-nav { top: 0; }
  html:has(main.im-page.site-magazine-page),body:has(main.im-page.site-magazine-page) { max-width: 100%; overflow-x: clip; }
}
@media (max-width: 900px) {
  main.im-page.site-magazine-page { --im-anchor-offset: 184px; }
  main.im-page.site-magazine-page :is(.im-routes,.im-docs) { grid-template-columns: repeat(3,minmax(0,1fr)); }
  main.im-page.site-magazine-page .im-route > img { height: 118px; }
  main.im-page.site-magazine-page .im-finder-layout { grid-template-columns: minmax(0,1fr); }
  main.im-page.site-magazine-page .im-hero-copy { width: 92%; }
  main.im-page.site-magazine-page .im-appendix .lw-sidebar { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 639px) {
  main.im-page.site-magazine-page { font-size: 16px; }
  main.im-page.site-magazine-page { --im-anchor-offset: 176px; }
  main.im-page.site-magazine-page .im-container { width: calc(100% - 28px); }
  main.im-page.site-magazine-page .im-hero { min-height: 0; padding: 21px 0 25px; }
  main.im-page.site-magazine-page .im-hero-copy { width: 100%; }
  main.im-page.site-magazine-page .im-hero::before { background: linear-gradient(90deg,rgba(3,29,61,.96),rgba(4,36,72,.82)); }
  main.im-page.site-magazine-page .im-hero h1 { font-size: 35px; line-height: 1.12; }
  main.im-page.site-magazine-page :is(.im-hero-deck,.im-deck) { font-size: 16px; }
  main.im-page.site-magazine-page .im-breadcrumb { margin-bottom: 17px; }
  main.im-page.site-magazine-page .im-hero-actions { display: grid; grid-template-columns: minmax(0,1fr); }
  main.im-page.site-magazine-page .im-hero-actions .im-btn { width: 100%; }
  main.im-page.site-magazine-page .im-jump-nav { top: 0; padding: 8px 0; }
  main.im-page.site-magazine-page .im-jump-nav .im-container { gap: 6px; }
  main.im-page.site-magazine-page .im-jump-nav a { flex: 1 1 auto; padding: 8px 10px; font-size: 13px; }
  main.im-page.site-magazine-page .im-trust { gap: 8px; padding-block: 12px; }
  main.im-page.site-magazine-page .im-alerts { grid-template-columns: minmax(0,1fr); gap: 9px; }
  main.im-page.site-magazine-page :is(.im-panel,.im-side-panel) { padding: 14px; }
  main.im-page.site-magazine-page .im-heading { align-items: flex-start; font-size: 22px; }
  main.im-page.site-magazine-page .im-heading .im-icon { margin-top: 1px; }
  main.im-page.site-magazine-page :is(.im-routes,.im-docs,.im-steps,.im-date-cards) { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  main.im-page.site-magazine-page .im-route > img { height: 95px; }
  main.im-page.site-magazine-page :is(.im-route-body,.im-route > div) { padding: 10px 9px; }
  main.im-page.site-magazine-page .im-route h3 { font-size: 16px; }
  main.im-page.site-magazine-page :is(.im-triple,.im-duo,.im-fields,.im-wallet-form,.im-dates-form,.im-checklist,.im-sidebar) { grid-template-columns: minmax(0,1fr); }
  main.im-page.site-magazine-page .im-field { font-size: 14px; }
  main.im-page.site-magazine-page .im-field :is(input:not([type=checkbox]),select,textarea) { min-height: 46px; font-size: 16px; }
  main.im-page.site-magazine-page .im-field > span { overflow-wrap: anywhere; }
  main.im-page.site-magazine-page :is(.im-checklist li label,.im-result p,.im-route-result p,.im-side-panel p,.im-side-panel li) { font-size: 15px; }
  main.im-page.site-magazine-page .im-actions { align-items: stretch; }
  main.im-page.site-magazine-page .im-actions > .im-btn { flex: 1 1 125px; }
  main.im-page.site-magazine-page .im-date-card { padding: 10px; }
  main.im-page.site-magazine-page .im-appendix .lw-wrap { width: calc(100% - 18px); }
  main.im-page.site-magazine-page .im-appendix > summary { margin: -14px; padding: 14px; }
  main.im-page.site-magazine-page .im-appendix[open] > summary { margin-bottom: 0; }
  main.im-page.site-magazine-page .im-bottom-banner h2 { font-size: 24px; }
  main.im-page.site-magazine-page .im-appendix .lw-topic-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  main.im-page.site-magazine-page .im-appendix .lw-scenarios article { grid-template-columns: minmax(0,1fr); }
  main.im-page.site-magazine-page .im-appendix :is(.lw-scenarios p,.lw-scenarios li,.lw-explainer p,.lw-explainer li,.lw-panel p,.lw-panel li,.lw-faq p) { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  main.im-page.site-magazine-page *,main.im-page.site-magazine-page *::before,main.im-page.site-magazine-page *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
@media print {
  @page { margin: 14mm; }
  main.im-page.site-magazine-page { color: #000; background: #fff; font-size: 11pt; }
  main.im-page.site-magazine-page :is(.im-jump-nav,.im-sidebar,.im-hero-actions,.im-actions,.im-tabs,[role=tablist],[data-immigration-action],[data-immigration-view],.immigration-wallet-actions,.ss-toc,[data-google-consent],.google-consent-banner) { display: none !important; }
  main.im-page.site-magazine-page :is(.layout-nav,.layout-footer,.site-nav,.site-footer,.nav,.home-nav,.experience-compass,header[data-layout-nav],footer) { display: none !important; }
  main.im-page.site-magazine-page .im-container { width: 100%; max-width: none; }
  main.im-page.site-magazine-page .im-hero { min-height: 0; padding: 0 0 15pt; color: #000; background: #fff; }
  main.im-page.site-magazine-page :is(.im-hero-image,.im-breadcrumb),main.im-page.site-magazine-page .im-hero::before { display: none; }
  main.im-page.site-magazine-page .im-hero-copy { width: 100%; max-width: none; }
  main.im-page.site-magazine-page .im-hero :is(h1,p,a,span),main.im-page.site-magazine-page .im-heading { color: #000; }
  main.im-page.site-magazine-page .im-hero h1 { font-size: 27pt; }
  main.im-page.site-magazine-page :is(.im-layout,.im-main,.im-sidebar,.im-finder-layout) { display: block; }
  main.im-page.site-magazine-page :is(.im-panel,.im-side-panel) { margin-bottom: 12pt; padding: 10pt; border-color: #aaa; box-shadow: none; background: #fff; }
  main.im-page.site-magazine-page :is(.im-routes,.im-docs,.im-steps,.im-date-cards) { grid-template-columns: repeat(3,minmax(0,1fr)); }
  main.im-page.site-magazine-page :is(.im-route,.im-doc,.im-step,.im-date-card,.immigration-wallet-row,.im-faq details,.im-checklist details) { break-inside: avoid; }
  main.im-page.site-magazine-page .im-heading { break-after: avoid; }
  main.im-page.site-magazine-page :is(.im-main,.im-sidebar) a { color: #000; }
  main.im-page.site-magazine-page :is(.im-checklist,.im-duo,.im-triple) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  main.im-page.site-magazine-page :is(.im-progress-ring,[data-immigration-progress]) { border: 2px solid #666; background: #fff; }
  main.im-page.site-magazine-page [data-immigration-print-copy] { margin: 0; color: #000; font: 11pt/1.6 Arial,Helvetica,sans-serif; white-space: pre-wrap; }
  main.im-page.site-magazine-page[data-immigration-print=checklist] > :not([data-immigration-print-copy]):not(:has([data-immigration-print-copy])) { display: none !important; }
  main.im-page.site-magazine-page[data-immigration-print=checklist] :has([data-immigration-print-copy]) > :not([data-immigration-print-copy]):not(:has([data-immigration-print-copy])) { display: none !important; }
  main.im-page.site-magazine-page[data-immigration-print=checklist] :has([data-immigration-print-copy]) { display: block !important; width: 100%; margin: 0; padding: 0; border: 0; }
  main.im-page.site-magazine-page[data-immigration-print=checklist] [data-immigration-print-copy] { display: block !important; width: 100%; }
}
