.country-review-document { scroll-padding-top: 0; }
.country-review { background: #fff; }
.country-review main { overflow-wrap: anywhere; }
/* Long source names must reflow inside evidence cards at enlarged text sizes. */
.country-review .ex-detail-grid > article { min-width: 0; overflow-wrap: anywhere; }
.country-review .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.country-review-header, .country-review-footer, .ng-buying { width: min(1120px, calc(100% - 32px)); margin-inline: auto; }
.country-review-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding-block: 18px; }
.country-review-header > a:last-child { display: inline-flex; align-items: center; min-height: 44px; }
.country-review-notice { padding: 12px max(16px, calc((100% - 1120px) / 2)); background: #fff5ef; border-block: 1px solid #ecd6c8; font-size: .9rem; }
.ng-buying { padding-block: 36px; overflow-wrap: anywhere; }
.ng-buying h1 { max-width: 27ch; margin: 12px 0 20px; font-size: clamp(1.9rem, 3.2vw, 2.75rem); line-height: 1.16; }
.ng-buying header .lead { margin-block: 16px; }
.country-review .brand-copy small { display: block; }
.ng-buying h2 { max-width: 36ch; font-size: clamp(1.45rem, 2.7vw, 2rem); line-height: 1.25; }
.ng-buying p, .ng-buying li { max-width: 76ch; line-height: 1.75; }
.ng-buying section { padding-block: 26px; border-top: 1px solid #dbe4ee; scroll-margin-top: 16px; }
.ng-buying nav { display: flex; flex-wrap: wrap; gap: 4px 20px; padding-block: 12px; }
.ng-buying nav a { min-height: 44px; display: inline-flex; align-items: center; }
.ng-buying .ng-first-decision { display: grid; grid-template-columns: 1.15fr 1fr; gap: 28px; align-items: start; }
.ng-first-decision figure { margin: 0; }
.ng-first-decision img { display: block; width: 100%; height: auto; }
.ng-first-decision figcaption { font-size: .875rem; margin-top: 10px; line-height: 1.6; }
.ng-buying .ng-checkpoint { border-left: 4px solid #075fcb; padding: 14px 20px; background: #f4f8fd; }
.ng-buying .table-scroll { width: 100%; overflow-x: auto; }
.ng-buying table { width: 100%; min-width: 620px; border-collapse: collapse; }
.ng-buying caption { text-align: left; font-weight: 700; padding: 12px 0; }
.ng-buying th, .ng-buying td { vertical-align: top; text-align: left; padding: 14px; border: 1px solid #dbe4ee; line-height: 1.65; }
.ng-buying th { background: #f4f8fd; }
.ng-buying th:first-child { min-width: 145px; width: 23%; overflow-wrap: normal; }
.ng-buying tbody th { position: sticky; left: 0; z-index: 1; }
.ng-buying details { padding: 12px 0; border-bottom: 1px solid #dbe4ee; }
.ng-buying summary { cursor: pointer; min-height: 44px; padding-block: 10px; font-weight: 700; }
.country-review-footer { padding-block: 24px; border-top: 2px solid #dbe4ee; overflow-wrap: anywhere; }
.country-review-footer p, .country-review-footer li { max-width: 85ch; line-height: 1.7; }
.country-review-footer nav { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.country-review-footer nav a { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 750px) { .ng-buying .ng-first-decision { grid-template-columns: 1fr; } .ng-first-decision figure { max-width: 480px; } .ng-buying { padding-block: 24px; } }
.edition-home { width: min(1120px, calc(100% - 32px)); margin-inline: auto; padding: 36px 0; overflow-wrap: anywhere; }
.edition-home h1 { font-size: clamp(2.25rem, 5vw, 4rem); line-height: 1.12; margin: 10px 0 20px; letter-spacing: -.035em; }
.edition-home h2 { font-size: clamp(1.5rem, 2.5vw, 2.15rem); line-height: 1.2; margin-top: 0; }
.edition-home h3 { font-size: 1.2rem; line-height: 1.35; }
.edition-home p, .edition-home li { max-width: 78ch; line-height: 1.8; }
.edition-home section { padding: 36px 0; border-top: 1px solid #dce4ed; scroll-margin-top: 20px; }
.edition-home figure { margin: 0; }
.edition-home figure img { display: block; width: 100%; height: auto; }
.edition-home figcaption, .small-note { font-size: .85rem; line-height: 1.6; }
.edition-jumps { display: flex; flex-wrap: wrap; gap: 6px 20px; padding: 22px 0; }
.edition-jumps a, .edition-story-link { display: inline-flex; align-items: center; min-height: 44px; }
.edition-two-col, .ng-home-opening, .ng-motor-feature { display: grid; grid-template-columns: 1.3fr 1fr; gap: 36px; }
.edition-three-col { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; }
.ng-verification-desk { align-self: center; padding: 24px; border-left: 4px solid #075fcb; background: #f5f8fc; }
.ng-verification-desk h2 { font-size: 1.4rem; }
.ng-motor-margin { grid-column: 1 / -1; border-left: 3px solid #a9bdd4; padding-left: 20px; }
.edition-home table { width: 100%; min-width: 650px; border-collapse: collapse; }
.edition-home caption { text-align: left; padding: 12px 0; font-weight: 700; }
.edition-home th, .edition-home td { text-align: left; vertical-align: top; padding: 15px; border: 1px solid #dce4ed; line-height: 1.7; }
.edition-home th { background: #f5f8fc; }
.edition-home th:first-child { min-width: 150px; }
.edition-home tbody th { position: sticky; left: 0; z-index: 1; }
@media (max-width: 750px) { .edition-two-col, .ng-home-opening, .ng-motor-feature, .edition-three-col { grid-template-columns: 1fr; gap: 22px; } .edition-home { padding-top: 24px; } .edition-home h1 { font-size: clamp(2rem, 7vw, 3rem); } .edition-home figure { max-width: 480px; } }

.country-feature { width: min(1120px, calc(100% - 32px)); margin: 0 auto; padding: 28px 0 36px; overflow-wrap: anywhere; }
.country-feature h1 { max-width: 30ch; font-size: clamp(2rem, 3.6vw, 2.85rem); line-height: 1.16; letter-spacing: -.025em; margin: 14px 0 20px; }
.country-feature h2 { font-size: clamp(1.5rem, 2.8vw, 2.15rem); line-height: 1.25; max-width: 34ch; }
.country-feature h3 { font-size: 1.15rem; line-height: 1.4; }
.country-feature p, .country-feature li { line-height: 1.75; }
.country-feature p { max-width: 80ch; }
.country-feature > section { padding: 36px 0; border-top: 1px solid #dbe4ee; scroll-margin-top: 18px; }
.country-feature .country-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; font-size: .9rem; }
.country-breadcrumb a { display: inline-flex; min-height: 44px; align-items: center; }
.country-category-visual { width: min(620px, 100%); margin: 34px auto 8px; padding-top: 26px; border-top: 1px solid #dbe4ee; }
.country-category-visual img { display: block; width: 100%; height: auto; }
.country-category-visual figcaption { margin-top: 10px; font-size: .875rem; line-height: 1.6; color: #355570; }
.country-feature figure { margin: 0; }
.country-feature figure img { width: 100%; height: auto; display: block; }
.country-feature figcaption { font-size: .85rem; line-height: 1.6; margin-top: 12px; }
.country-feature .table-scroll, .catalogue-dialog .table-scroll { width: 100%; overflow-x: auto; }
.country-feature table, .catalogue-dialog table { width: 100%; min-width: 640px; border-collapse: collapse; }
.country-feature th, .country-feature td, .catalogue-dialog th, .catalogue-dialog td { text-align: left; vertical-align: top; padding: 14px; line-height: 1.65; border: 1px solid #dbe4ee; min-width: 145px; }
.country-feature th, .catalogue-dialog th { background: #f3f7fc; }
.country-feature tbody th, .catalogue-dialog tbody th { position: sticky; left: 0; z-index: 1; max-width: 220px; }
.country-feature caption, .catalogue-dialog caption { padding: 12px 0; text-align: left; font-weight: 700; }
.country-feature summary { cursor: pointer; min-height: 44px; padding-block: 10px; font-weight: 700; }
.country-faq details { border-bottom: 1px solid #dbe4ee; padding: 10px 0; }
.country-faq p { margin-top: 8px; }
.edition-home .country-faq summary { cursor: pointer; min-height: 44px; padding-block: 10px; font-weight: 700; line-height: 1.6; }
@media (max-width: 750px) {
  .ng-home-family-table table, .ng-home-family-table tbody, .ng-home-family-table tr, .ng-home-family-table th, .ng-home-family-table td { display: block; width: 100%; min-width: 0; max-width: none; box-sizing: border-box; }
  .ng-home-family-table thead { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
  .ng-home-family-table caption { display: block; width: 100%; }
  .ng-home-family-table tbody th { position: static; border-bottom: 0; }
  .ng-home-family-table td { border-top: 0; }
  .ng-home-family-table tr { margin-bottom: 20px; }
  .ng-home-family-table td::before { display: block; font-size: .85em; font-weight: 700; color: #314c67; margin-bottom: 8px; }
  .ng-home-family-table td:nth-child(2)::before { content: "Decision to make"; }
  .ng-home-family-table td:nth-child(3)::before { content: "Evidence to request"; }
}
.ng-motor-brief { display: flex; align-items: center; gap: 28px; margin: 24px 0 16px; padding: 20px 0; border-block: 1px solid #ccdcec; }
.ng-motor-brief p { margin: 0; flex: 1; }
.ng-motor-brief > a { flex: 0 0 auto; }
.ng-motor-note { padding: 16px 20px; border-left: 4px solid #075fcb; background: #f5f8fc; margin-block: 24px; }
.ng-motor-value { display: grid; grid-template-columns: 1.4fr 1fr; align-items: start; gap: 36px; }
.ng-motor-value figure { margin-top: 45px; }
.ng-motor-start-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
.ng-claim-sequence { padding-left: 24px; }
.ng-claim-sequence li { padding-left: 12px; margin-bottom: 24px; }
.ng-claim-sequence h3 { margin-bottom: 8px; }
.ng-claim-sequence p { margin-top: 0; }
.ng-motor-closing { border-top: 2px solid #075fcb; margin-top: 24px; padding-top: 16px; }
.country-catalogue { margin-top: 22px; }
.catalogue-count { color: #143858; }
.catalogue-need { padding: 22px; margin-top: 22px; border-top: 3px solid #164f86; background: #f3f7fc; scroll-margin-top: 18px; }
.catalogue-need label { display: block; font-weight: 700; margin-bottom: 10px; }
.catalogue-need select, .catalogue-need button { min-height: 44px; min-width: 0; max-width: 100%; font: inherit; padding: 10px 12px; border: 1px solid #7895b4; border-radius: 4px; background: white; color: #102c45; }
.catalogue-need select { width: min(100%, 360px); }
.catalogue-need button { cursor: pointer; margin: 8px 0 0 8px; }
.catalogue-need p { margin-block: 12px 0; }
.catalogue-need [data-catalogue-matches] { font-weight: 700; }
.catalogue-need > p:last-of-type { font-size: .85rem; }
.catalogue-retained { border-top: 1px solid #c3d3e4; margin-top: 18px; padding-top: 4px; }
.catalogue-retained > p { font-weight: 700; }
.catalogue-retained ul { padding: 0; list-style: none; margin-bottom: 0; }
.catalogue-retained li { display: flex; flex-wrap: wrap; gap: 6px 18px; align-items: center; margin-block: 10px; }
.catalogue-retained button { margin: 0; width: auto; font-size: .875rem; }
@media (max-width: 750px) {
  .catalogue-need { padding: 16px; }
  .catalogue-need select { width: 100%; }
  .catalogue-need button { margin: 12px 0 0; width: 100%; }
}
.catalogue-method { border-block: 1px solid #dbe4ee; padding: 6px 0; }
.catalogue-method p { font-size: .925rem; }
.catalogue-toolbar { display: flex; align-items: end; flex-wrap: wrap; gap: 12px; padding-top: 24px; scroll-margin-top: 18px; }
.catalogue-toolbar label { display: block; font-weight: 700; margin-bottom: 8px; }
.catalogue-toolbar select, .catalogue-toolbar button, .catalogue-dialog button { min-height: 44px; font: inherit; padding: 10px 14px; max-width: 100%; border: 1px solid #93abc7; border-radius: 5px; background: #fff; color: #102c45; cursor: pointer; }
.catalogue-toolbar .primary, .catalogue-bottom .primary, .catalogue-dialog .primary { background: #075fcb; color: #fff; border-color: #075fcb; }
.catalogue-toolbar > div { max-width: 100%; }
.catalogue-help, .catalogue-status { font-size: .9rem; }
.catalogue-status { border-left: 3px solid #075fcb; padding-left: 12px; min-height: 26px; }
.catalogue-records { list-style: none; padding: 0; margin: 22px 0; }
.catalogue-records > li { padding: 26px 0; border-top: 1px solid #ccdcec; }
.catalogue-records > li:last-child { border-bottom: 1px solid #ccdcec; }
.catalogue-records article { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.55fr) minmax(145px, .6fr); gap: 28px; }
.catalogue-records p { margin-top: 0; font-size: .925rem; }
.catalogue-records .catalogue-provider { font-weight: 700; color: #075fcb; margin-bottom: 5px; }
.catalogue-records h3 { margin: 0 0 10px; font-size: 1.22rem; }
.catalogue-kind { font-size: .82rem !important; color: #42586f; }
.catalogue-records .catalogue-price { font-size: 1.15rem; font-weight: 700; line-height: 1.45; margin-bottom: 6px; }
.catalogue-records .catalogue-price-basis { font-size: .85rem; }
.catalogue-records dl { margin: 18px 0 8px; }
.catalogue-records dl > div { margin-bottom: 14px; }
.catalogue-records dt { font-weight: 700; font-size: .9rem; }
.catalogue-records dd { margin: 4px 0 0; font-size: .9rem; line-height: 1.7; }
.catalogue-evidence { border-top: 1px solid #dbe4ee; }
.catalogue-evidence summary { font-size: .9rem; }
.catalogue-evidence nav { display: flex; flex-wrap: wrap; gap: 4px 14px; }
.catalogue-evidence nav a, .catalogue-provider-state a, .catalogue-dialog nav a { min-height: 44px; display: inline-flex; align-items: center; font-size: .9rem; }
.catalogue-evidence > p { margin-top: 12px; font-size: .8rem; }
.catalogue-comparison .catalogue-evidence-links, .catalogue-provider-state nav { display: flex; flex-wrap: wrap; gap: 4px 14px; }
.catalogue-comparison .catalogue-evidence-links a, .catalogue-provider-state nav a { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 750px) {
  .ng-motor-cover-map table, .ng-repair-ledger table,
  .ng-motor-cover-map tbody, .ng-repair-ledger tbody,
  .ng-motor-cover-map tr, .ng-repair-ledger tr,
  .ng-motor-cover-map th, .ng-repair-ledger th,
  .ng-motor-cover-map td, .ng-repair-ledger td { display: block; width: 100%; min-width: 0; max-width: none; }
  .ng-motor-cover-map thead, .ng-repair-ledger thead { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
  .ng-motor-cover-map caption, .ng-repair-ledger caption { display: block; width: 100%; padding: 14px; }
  .ng-motor-cover-map tbody th, .ng-repair-ledger tbody th { position: static; width: 100%; max-width: none; }
  .ng-motor-cover-map td, .ng-repair-ledger td { border-top: 0; }
  .ng-motor-cover-map tr, .ng-repair-ledger tr { margin-bottom: 20px; }
  .ng-motor-cover-map tr:last-child, .ng-repair-ledger tr:last-child { margin-bottom: 0; }
  .ng-motor-cover-map td::before, .ng-repair-ledger td::before { display: block; color: #355570; font-size: .875em; font-weight: 700; margin-bottom: 6px; }
  .ng-motor-cover-map td:nth-child(2)::before { content: "What it can address"; }
  .ng-motor-cover-map td:nth-child(3)::before { content: "What still needs funding"; }
  .ng-repair-ledger td:nth-child(2)::before { content: "Maximum used in this example"; }
  .ng-repair-ledger td:nth-child(3)::before { content: "At least this much left to fund"; }
  .ng-health-payment-table, .ng-health-payment-table tbody,
  .ng-health-payment-table tr, .ng-health-payment-table th,
  .ng-health-payment-table td { display: block; width: 100%; min-width: 0; max-width: none; }
  .country-feature .ng-health-payment-table { min-width: 0; }
  .ng-health-payment-table thead { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
  .ng-health-payment-table caption { display: block; width: 100%; padding: 14px; }
  .ng-health-payment-table tbody th { position: static; width: 100%; max-width: none; }
  .ng-health-payment-table td { border-top: 0; }
  .ng-health-payment-table tr { margin-bottom: 20px; }
  .ng-health-payment-table tr:last-child { margin-bottom: 0; }
  .ng-health-payment-table td:not([colspan])::before { display: block; color: #355570; font-size: .875em; font-weight: 700; margin-bottom: 6px; }
  .ng-health-payment-table td:nth-child(2):not([colspan])::before { content: "Upfront annual payment"; }
  .ng-health-payment-table td:nth-child(3)::before { content: "Four quarterly payments"; }
}
.catalogue-signals { list-style: none; padding: 0; }
.catalogue-signals li { font-size: .8rem; margin: 6px 0; }
.catalogue-score strong { display: block; font-size: 1.4rem; }
.catalogue-actions .btn { display: inline-flex; justify-content: center; min-width: 100px; min-height: 44px; }
.catalogue-records .catalogue-handoff-note { font-size: .8rem; margin: 10px 0; }
.catalogue-select { display: inline-flex; align-items: center; min-height: 44px; gap: 10px; padding: 8px; margin-left: -8px; cursor: pointer; font-weight: 600; }
.catalogue-select input { width: 22px; height: 22px; accent-color: #075fcb; margin: 0; }
.catalogue-bottom { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; }
.catalogue-bottom button { cursor: pointer; font: inherit; }
.catalogue-bottom a { min-height: 44px; display: inline-flex; align-items: center; }
.catalogue-comparison, .catalogue-provider-state { margin-top: 30px; padding: 24px; border: 1px solid #b8cde3; scroll-margin-top: 18px; }
.catalogue-provider-state { background: #f5f8fc; }
.catalogue-chosen-plan { font-weight: 700; }
.catalogue-dialog { padding: 0; border: 1px solid #93abc7; border-radius: 8px; width: min(1120px, calc(100vw - 16px)); max-width: none; max-height: calc(100dvh - 16px); color: #102c45; background: #fff; box-sizing: border-box; overflow: hidden; }
.catalogue-dialog[open] { display: flex; flex-direction: column; }
.catalogue-dialog::backdrop { background: rgb(8 30 52 / .58); }
.catalogue-dialog-top { display: flex; align-items: start; justify-content: space-between; gap: 16px; padding: 16px; border-bottom: 1px solid #ccdcec; background: #fff; flex: 0 0 auto; }
.country-review .catalogue-dialog-top h2 { font-family: inherit; font-weight: 700; font-size: clamp(1.15rem, 3vw, 1.5rem); line-height: 1.3; margin: 0; overflow-wrap: anywhere; }
.catalogue-dialog-top button { flex: 0 0 auto; }
.catalogue-dialog-body { min-height: 0; overflow: auto; padding: 18px; overscroll-behavior: contain; }
.catalogue-dialog-body p { line-height: 1.7; }
.catalogue-dialog-body nav { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.catalogue-dialog table { min-width: 760px; }
.catalogue-dialog td { min-width: 220px; }
.catalogue-dialog button, .catalogue-dialog a { overflow-wrap: anywhere; }
.catalogue-dialog :focus-visible, .country-catalogue :focus-visible { outline: 3px solid #075fcb; outline-offset: 3px; }
.catalogue-mobile-comparison { display: none; }
.catalogue-mobile-comparison article { padding: 22px 0; border-top: 2px solid #ccdcec; }
.catalogue-mobile-comparison h3, .catalogue-mobile-comparison h4 { margin: 0 0 20px; line-height: 1.4; font-size: 1.2em; }
.catalogue-mobile-comparison dl > div { margin: 0 0 20px; }
.catalogue-mobile-comparison dt { font-weight: 700; line-height: 1.5; }
.catalogue-mobile-comparison dd { margin: 5px 0 0; line-height: 1.75; }
.catalogue-mobile-comparison p { font-size: .9em; }
.catalogue-mobile-comparison nav { display: flex; flex-wrap: wrap; gap: 10px; }
.catalogue-mobile-comparison nav a { min-height: 44px; display: inline-flex; align-items: center; }
.catalogue-mobile-comparison .primary { font: inherit; min-height: 44px; }
@media (max-width: 750px) {
  .catalogue-dialog-top { flex-direction: column-reverse; gap: 8px; padding: 12px; }
  .catalogue-dialog-top button { align-self: flex-end; }
  .catalogue-mobile-comparison { display: block; }
  .catalogue-dialog .table-scroll, .catalogue-comparison > .table-scroll { display: none; }
}
@media (max-width: 850px) {
  .catalogue-records article { grid-template-columns: 1fr; gap: 14px; }
  .catalogue-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 24px; }
  .catalogue-actions .catalogue-score { margin: 0; }
  .catalogue-actions .catalogue-score strong { display: inline; font-size: 1.1rem; }
  .catalogue-actions .catalogue-handoff-note { flex-basis: 100%; order: 2; margin: 0; }
  .ng-motor-value, .ng-motor-start-grid { grid-template-columns: 1fr; gap: 18px; }
  .ng-motor-value figure { max-width: 480px; margin-top: 0; }
}
@media (max-width: 600px) {
  .ng-motor-brief { align-items: start; flex-direction: column; gap: 18px; }
  .country-feature { padding-top: 12px; }
  .country-feature h1 { font-size: 2.05rem; }
  .country-feature > section { padding-block: 28px; }
  .catalogue-toolbar > div { width: 100%; }
  .catalogue-toolbar select { width: 100%; }
  .catalogue-toolbar { align-items: stretch; }
  .catalogue-toolbar button { flex: 1 1 auto; }
  .catalogue-comparison, .catalogue-provider-state { padding: 16px; }
  .catalogue-dialog-top { gap: 10px; padding: 12px; }
  .catalogue-dialog-body { padding: 12px; }
}
.ng-renewal h1 { max-width: 26ch; }
.ng-renewal-desk { display: grid; grid-template-columns: 1.5fr 1fr; gap: 36px; align-items: start; }
.ng-renewal-paper { padding: 24px; background: #f6f9fc; border-top: 4px solid #075fcb; }
.ng-renewal-paper h3 { margin-top: 0; }
.ng-renewal-paper ol { padding-left: 20px; }
.ng-renewal-paper li { margin: 12px 0; padding-left: 6px; }
.ng-renewal-fork { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 36px; }
.ng-renewal-fork > h2 { grid-column: 1 / -1; }
.ng-renewal-fork > div { padding-top: 12px; border-top: 3px solid #b5cbe1; }
.ng-renewal-handover { display: grid; grid-template-columns: 1.5fr 1fr; gap: 36px; align-items: start; }
.ng-renewal-handover li { margin-bottom: 18px; padding-left: 5px; }
.ng-renewal-handover figure { margin-top: 50px; }
.ng-renewal-conclusion { border-top: 2px solid #075fcb; padding-top: 22px; }
.ng-health-opening-columns { display: grid; grid-template-columns: 1.6fr 1fr; gap: 42px; align-items: start; }
.ng-health-opening-columns aside { border-left: 3px solid #0c7974; padding: 6px 0 6px 22px; }
.ng-health-opening-columns aside p { margin-bottom: 0; }
.ng-health-hospital { display: grid; grid-template-columns: 1.7fr 1fr; gap: 36px; align-items: start; }
.ng-health-call-note { padding: 24px; background: #eef7f6; border-top: 4px solid #0c7974; }
.ng-health-call-note h3 { margin-top: 0; }
.ng-health-limit-path { float: right; width: 265px; margin: 0 0 22px 36px; background: #f3f7fc; padding: 22px; display: grid; gap: 8px; text-align: center; font-weight: 700; }
.ng-health-limit-path [aria-hidden] { color: #0c7974; font-size: 1.3em; }
.ng-health #benefit-limits .table-scroll { clear: both; }
.ng-health-source-conflict { border-left: 3px solid #58738f; padding-left: 22px; margin-top: 30px; }
.ng-health .table-reading-note { font-size: .9rem; color: #3b526a; }
.ng-health-family { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 38px; }
.ng-health-family > .eyebrow, .ng-health-family > h2 { grid-column: 1 / -1; }
.ng-health-family figure { grid-column: 1 / -1; max-width: 600px; margin: 20px auto 0; }
.ng-health-visit { list-style: none; padding: 0; margin: 30px 0; }
.ng-health-visit li { display: grid; grid-template-columns: 66px 1fr; gap: 20px; border-top: 1px solid #dbe4ee; padding: 24px 0 8px; }
.ng-health-visit li > span { font-size: 1.65em; font-weight: 700; color: #0c7974; }
.ng-health-visit h3 { margin-top: 0; }
.ng-health-closing { border-top: 3px solid #0c7974; padding-top: 20px; }
@media (max-width: 750px) {
  .ng-health-opening-columns, .ng-health-hospital, .ng-health-family { grid-template-columns: 1fr; gap: 20px; }
  .ng-health-opening-columns aside { padding-left: 16px; }
  .ng-health-call-note { padding: 18px; }
  .ng-health-limit-path { float: none; width: 100%; margin: 0 0 24px; }
  .ng-health tbody th { position: static; }
  .ng-health-visit li { grid-template-columns: 42px 1fr; gap: 12px; }
}
/* The change register is read one risk at a time on a phone. Keep the table's
   row and column semantics while giving each complete answer room to breathe. */
@media (max-width: 750px) {
  .ng-renewal-register table { min-width: 0; }
  .ng-renewal-register thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .ng-renewal-register tbody, .ng-renewal-register tr { display: block; }
  .ng-renewal-register tr + tr { margin-top: 22px; }
  .ng-renewal-register th, .ng-renewal-register td { display: block; min-width: 0; max-width: none; }
  .ng-renewal-register tbody th { position: static; max-width: none; border-top: 3px solid #b5cbe1; }
  .ng-renewal-register td { border-top: 0; }
  .ng-renewal-register td::before { display: block; font-weight: 700; color: #314c67; margin-bottom: .4em; }
  .ng-renewal-register td:nth-child(2)::before { content: "Ask the insurer"; }
  .ng-renewal-register td:nth-child(3)::before { content: "Evidence to retain"; }
  .ng-renewal-price tbody th { position: static; }
}
@media (max-width: 750px) {
  .ng-renewal-desk, .ng-renewal-fork, .ng-renewal-handover { grid-template-columns: 1fr; gap: 20px; }
  .ng-renewal-handover figure { margin-top: 0; max-width: 480px; }
  .ng-renewal-paper { padding: 18px; }
}
.home-guide-link{margin:1.75rem 0;padding:1rem 1.15rem;border-left:4px solid #146452;background:#edf4ef}.home-guide-link a{font-weight:750;text-underline-offset:.18em}.home-guide-link p{margin:.25rem 0 0;color:#43565b}

/* Source-backed detail sheets shared by private country category pages. */
.ex-market-detail{padding:28px 30px;margin-top:54px;background:#f5fafb;border:1px solid #c7dce2;border-top:5px solid #2c8490}.ex-market-detail h2{max-width:28ch}.ex-detail-intro{max-width:900px;color:#526d7a}.ex-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin:24px 0}.ex-detail-grid article{padding:18px;background:#fff;border:1px solid #d5e3e7;box-shadow:0 5px 0 #e9f1f2}.ex-detail-grid article h3{margin-top:0}.ex-detail-grid article p:last-child{margin-bottom:0}.ex-detail-flow article{border-top:4px solid #b96538}.ex-detail-flow article:nth-child(2){border-top-color:#4f8a5d}.ex-detail-flow article:nth-child(3){border-top-color:#2c8490}.ex-detail-number{display:block;font-size:.78rem;font-weight:800;letter-spacing:.08em;color:#2c8490}.ex-detail-note{padding:17px 19px;margin-top:20px;background:#fff6e2;border-left:4px solid #bc792f}.ex-detail-sources{padding-top:17px;border-top:1px solid #c7dce2;color:#526d7a;font-size:.93rem}.ex-market-detail .ex-table-wrap{margin-top:20px}.ex-market-detail table{min-width:760px}.ex-market-detail caption{text-align:left;font-weight:750;padding:0 0 10px;color:#173e52}.ex-market-detail .ex-detail-sources a{font-weight:650}@media(max-width:900px){.ex-detail-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.ex-market-detail{padding:22px 16px}.ex-detail-grid{grid-template-columns:1fr}.ex-market-detail table{min-width:0}.ex-market-detail .ex-table-wrap thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}

.country-policy-detail{margin:0 0 clamp(3.8rem,8vw,6.8rem);padding:clamp(1.4rem,4vw,3.2rem);background:#f5fafb;border:1px solid #c7dce2;border-top:5px solid #2c8490;scroll-margin-top:1rem}.country-policy-detail h2{max-width:900px}.country-policy-detail-intro{max-width:940px;color:#607583}.country-policy-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.6rem 0}.country-policy-detail-grid article{padding:1.2rem;background:#fff;border:1px solid #d5e3e7;border-top:4px solid #b96538}.country-policy-detail-grid article:nth-child(2){border-top-color:#4f8a5d}.country-policy-detail-grid article:nth-child(3){border-top-color:#2c8490}.country-policy-detail-grid span{display:block;color:#2c8490;font:500 1.4rem/1 Georgia,serif}.country-policy-detail-grid h3{margin:.5rem 0}.country-policy-detail-grid p{margin:0;color:#607583;font-size:.92rem}.country-policy-detail-table{max-width:100%;overflow-x:auto;margin-top:1.3rem;border:1px solid #b5cbd4;background:#fff}.country-policy-detail-table table{width:100%;min-width:760px;border-collapse:collapse;text-align:left}.country-policy-detail-table caption{padding:1rem;background:#edf6f7;text-align:left;font-weight:750}.country-policy-detail-table th,.country-policy-detail-table td{padding:.9rem 1rem;border-bottom:1px solid #e1e9ec;vertical-align:top;line-height:1.6}.country-policy-detail-table thead th{background:#f4f8f9}.country-policy-detail-table tbody th{min-width:190px;background:#fbfdfd}.country-policy-detail-note{padding:1rem 1.2rem;margin-top:1.2rem;border-left:5px solid #bc792f;background:#fff6e2}.country-policy-detail-sources{padding-top:1rem;border-top:1px solid #c7dce2;color:#607583;font-size:.92rem}.country-policy-detail-sources a{font-weight:650}
@media(max-width:760px){.country-policy-detail-grid{grid-template-columns:1fr}.country-policy-detail{padding:1.2rem}}
/* Caption dimensions are shared, but display belongs to each table mode.
   Forcing every caption to block breaks native tables at intermediate widths. */
@media (max-width: 750px) {
  .country-review table caption {
    width: 100%;
    box-sizing: border-box;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  /* Shared evidence desks have the same three-column decision structure.
     Keep each complete row together on a phone instead of squeezing its
     caption and three answers into narrow anonymous table columns. */
  .country-review .ex-market-detail .ex-table-wrap table,
  .country-review .ex-market-detail .ex-table-wrap tbody,
  .country-review .ex-market-detail .ex-table-wrap tr,
  .country-review .ex-market-detail .ex-table-wrap th,
  .country-review .ex-market-detail .ex-table-wrap td {
    display: block;
    width: 100%;
    min-width: 0;
    max-width: none;
    box-sizing: border-box;
  }
  .country-review .ex-market-detail .ex-table-wrap caption {
    display: block;
    width: 100%;
  }
  .country-review .ex-market-detail .ex-table-wrap tbody tr {
    margin: 0 0 1rem;
    border: 1px solid #c7dce2;
    background: #fff;
  }
  .country-review .ex-market-detail .ex-table-wrap tbody th {
    position: static;
    padding: .8rem .9rem;
    border: 0;
    border-bottom: 1px solid #d5e3e7;
    background: #eaf3f6;
  }
  .country-review .ex-market-detail .ex-table-wrap tbody td {
    padding: .8rem .9rem;
    border: 0;
    border-bottom: 1px solid #e4ecef;
    overflow-wrap: anywhere;
  }
  .country-review .ex-market-detail .ex-table-wrap tbody td:last-child {
    border-bottom: 0;
  }
  .country-review .ex-market-detail .ex-table-wrap tbody td::before {
    display: block;
    margin-bottom: .3rem;
    color: #355570;
    font-size: .78rem;
    font-weight: 800;
    line-height: 1.4;
  }
  .country-review .ex-market-detail .ex-table-wrap tbody td:nth-child(2)::before {
    content: "What to understand";
  }
  .country-review .ex-market-detail .ex-table-wrap tbody td:nth-child(3)::before {
    content: "What to verify";
  }
}
@media(max-width:520px){.country-policy-detail-table table{min-width:0}.country-policy-detail-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.country-policy-detail-table tbody,.country-policy-detail-table tr,.country-policy-detail-table th,.country-policy-detail-table td{display:block;width:auto}.country-policy-detail-table tr+tr{margin-top:1rem}.country-policy-detail-table tbody th{min-width:0;border-bottom:0}.country-policy-detail-table td{border-top:0}.country-policy-detail-table td:before{display:block;margin-bottom:.25rem;color:#607583;font-size:.8rem;font-weight:800}.country-policy-detail-table td:nth-child(2):before{content:"Public source"}.country-policy-detail-table td:nth-child(3):before{content:"Settle before relying"}}

/* A released page may refer to a researched desk that is not released yet. */
.country-review .country-unreleased-link {
  display: inline-block;
  max-width: 100%;
  padding: .28rem .55rem;
  border: 1px solid #c9d7df;
  border-radius: .45rem;
  color: #40596a;
  background: #f3f7f9;
  overflow-wrap: anywhere;
}
.country-review .country-unreleased-note {
  display: block;
  margin-top: .12rem;
  color: #526c7d;
  font-size: .76rem;
  line-height: 1.35;
}
