/* PA long-page system (9 Oct 2026): shared by destination and country pages. Module frame matched to
   refs/unischolars/LAYOUT.md (structure only). Less blue: white / tint-2 surfaces; the big-number strip is the
   page's one compact blue band; red for costs and accents. Motion: fade-and-rise only, none with reduced motion. */
.pa-ds { --ds-gut: 60px; --ds-ink: var(--pa-ink, #0b1033); --ds-text: #2b2f55; --ds-muted: #5b6080; --ds-line: #e3e6f5; --ds-blue: var(--pa-blue, #0012ff); --ds-deep: var(--pa-deep, #000db2); --ds-red: var(--pa-red, #ff3131); --ds-tint: var(--pa-tint-2, #f6f7ff); --pa-ds-top: 0px;
	font-family: Onest, system-ui, sans-serif; color: var(--ds-text); font-size: 16px; line-height: 1.5; }
.pa-ds *, .pa-ds *::before, .pa-ds *::after { box-sizing: border-box; }
.pa-ds h1, .pa-ds h2, .pa-ds h3 { font-family: Onest, system-ui, sans-serif; color: var(--ds-ink); margin: 0; }
.pa-ds-key { color: var(--ds-blue); }
.pa-ds-wrap { max-width: 1440px; margin-inline: auto; padding-inline: var(--ds-gut); }

/* Photo slots */
.pa-ds-photo { margin: 0; position: relative; overflow: hidden; background: var(--pa-tint, #eef0ff); border-radius: 8px; }
.pa-ds-photo--16x9 { aspect-ratio: 288 / 159; }
.pa-ds-photo--4x5 { aspect-ratio: 4 / 5; }
.pa-ds-photo__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

/* 1. Hero banner: 319px / 178px, photo + dark shade, breadcrumb top-left, title bottom-left */
.pa-ds-hero { position: relative; height: 319px; overflow: hidden; color: #fff; }
.pa-ds-hero .pa-ds-photo { position: absolute; inset: 0; border-radius: 0; aspect-ratio: auto; }
.pa-ds-hero__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5, 8, 30, .45) 0%, rgba(5, 8, 30, .05) 35%, rgba(5, 8, 30, .7) 100%); }
.pa-ds-hero::after { content: ""; position: absolute; left: 0; bottom: 0; width: 160px; height: 4px; background: linear-gradient(90deg, var(--ds-red) 0 50%, var(--ds-blue) 50%); }
.pa-ds-hero__in { position: relative; z-index: 2; height: 100%; max-width: 1440px; margin-inline: auto; padding: 20px var(--ds-gut) 20px; display: flex; flex-direction: column; justify-content: space-between; }
.pa-ds-crumbs { font-size: 12px; font-weight: 500; display: flex; gap: 8px; align-items: center; min-height: 21px; }
.pa-ds-crumbs a { color: #fff; text-decoration: none; opacity: .9; }
.pa-ds-hero__row { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 20px; min-height: 48px; }
.pa-ds .pa-ds-h1 { color: #fff; font-size: 32px; font-weight: 700; line-height: 1.4; letter-spacing: -.01em; }
.pa-ds-h1 .pa-ds-key { color: #fff; box-shadow: inset 0 -.22em 0 var(--ds-red); }
.pa-ds-from { position: relative; }
.pa-ds-from__chip { list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 14px; border-radius: 999px; background: #fff; color: var(--ds-ink); font-size: 14px; border: 1.5px solid #fff; }
.pa-ds-from__chip::-webkit-details-marker { display: none; }
.pa-ds-from__chip b { color: var(--ds-blue); }
.pa-ds-from__lbl { color: var(--ds-muted); }
.pa-ds-from__panel { position: absolute; z-index: 30; top: calc(100% + 8px); left: 0; width: min(560px, 90vw); max-height: 60vh; overflow: auto; background: #fff; color: var(--ds-text); border: 1px solid var(--ds-line); border-top: 4px solid var(--ds-blue); border-radius: 10px; padding: 14px 18px; box-shadow: 0 18px 40px rgba(5, 8, 30, .18); columns: 2; column-gap: 24px; }
.pa-ds-from__group { margin: 0 0 4px; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ds-muted); break-after: avoid; }
.pa-ds-from__panel ul { list-style: none; margin: 0 0 12px; padding: 0; break-inside: avoid; }
.pa-ds-from__panel li a { display: block; padding: 4px 0; color: var(--ds-ink); text-decoration: none; font-size: 14px; }
.pa-ds-from__panel li a[aria-current] { color: var(--ds-blue); font-weight: 700; }
.pa-ds-from__any { margin: 0; font-size: 13px; }
.pa-ds-from__any a { color: var(--ds-blue); }

/* 2. Overview (pad-top 25px) + highlights */
.pa-ds-ov { padding-top: 25px; }
.pa-ds-ov__text p { margin: 0 0 8px; font-size: 16px; line-height: 1.5; max-width: 1320px; }
.pa-ds-hl { list-style: none; margin: 16px 0 0; padding: 16px 0 0; border-top: 1px solid var(--ds-line); display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 16px; }
.pa-ds-hl__i { display: flex; flex-direction: column; gap: 4px; font-size: 13px; line-height: 1.4; color: var(--ds-muted); }
.pa-ds-hl__i svg { width: 28px; height: 28px; color: var(--ds-blue); }
.pa-ds-hl__i b { color: var(--ds-ink); font-size: 14px; }

/* Sticky section links: 36px, 16px/600, gap 20px, link pad 14px 16px */
.pa-ds-tabs { position: sticky; top: var(--pa-ds-top); z-index: 20; background: #fff; margin-top: 16px; border-bottom: 1px solid var(--ds-line); }
.pa-ds-tabs__list { list-style: none; margin: 0 auto; padding: 0 var(--ds-gut); max-width: 1440px; display: flex; gap: 20px; height: 36px; align-items: stretch; overflow-x: auto; scrollbar-width: none; }
.pa-ds-tabs__list::-webkit-scrollbar { display: none; }
.pa-ds-tabs__list li { display: flex; flex: none; }
.pa-ds-tabs a { display: flex; align-items: center; padding: 0 16px; font-size: 16px; font-weight: 600; color: var(--ds-text); text-decoration: none; border-bottom: 3px solid transparent; white-space: nowrap; }
.pa-ds-tabs li:first-child a { padding-left: 0; }
.pa-ds-tabs a:hover, .pa-ds-tabs a.is-on { color: var(--ds-blue); border-bottom-color: var(--ds-blue); }

/* Body: main 1008 (60px gutters -> 888) + aside 432 (form 373, sticky) */
.pa-ds-body { max-width: 1440px; margin-inline: auto; display: grid; grid-template-columns: minmax(0, 1fr) 432px; padding: 16px 0 48px; }
.pa-ds-main { padding-inline: var(--ds-gut); min-width: 0; }
.pa-ds-mod, .pa-ds-loan { padding-top: 32px; scroll-margin-top: calc(var(--pa-ds-top) + 44px); }
.pa-ds-mod__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 8px; }
.pa-ds .pa-ds-h2 { font-size: 24px; font-weight: 700; line-height: 1.45; letter-spacing: -.005em; }
.pa-ds-intro { margin: 0 0 16px; color: var(--ds-muted); }
.pa-ds-src { margin: 12px 0 0; font-size: 12px; color: var(--ds-muted); }
.pa-ds-arrows { display: flex; gap: 8px; flex: none; }
.pa-ds-arrow { display: inline-grid; place-items: center; width: 40px; height: 40px; padding: 0 0 3px; border-radius: 50%; border: 1px solid var(--ds-line); background: #fff; color: var(--ds-blue); font-size: 22px; line-height: 1; cursor: pointer; transition: background-color .2s, color .2s, border-color .2s; }
.pa-ds-arrow:hover { background: var(--ds-blue); border-color: var(--ds-blue); color: #fff; }
.pa-ds-arrow:focus-visible { outline: 3px solid rgba(0, 18, 255, .35); outline-offset: 2px; }

/* Carousels: card 288, slide 304 (gap 16); wide cards 298 */
.pa-ds-row { display: grid; grid-auto-flow: column; grid-auto-columns: 288px; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 8px 2px 12px; scrollbar-width: thin; }
.pa-ds-row--wide { grid-auto-columns: 298px; }
.pa-ds-row--wide .pa-ds-photo--16x9 { aspect-ratio: 298 / 173; }
.pa-ds-card { scroll-snap-align: start; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--ds-line); border-radius: 8px; overflow: hidden; color: inherit; text-decoration: none; box-shadow: 0 2px 8px rgba(11, 16, 51, .06); }
.pa-ds-card .pa-ds-photo { border-radius: 0; }
.pa-ds-card__b { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 6px; flex: 1; border-top: 3px solid var(--ds-blue); }
.pa-ds-card h3 { font-size: 16px; font-weight: 700; line-height: 1.35; }
.pa-ds-card p { margin: 0; font-size: 14px; line-height: 1.45; color: var(--ds-muted); }
.pa-ds-card--link:hover h3 { color: var(--ds-blue); }
.pa-ds-more { margin-top: auto; font-size: 14px; font-weight: 600; color: var(--ds-blue); }
.pa-ds-dl { margin: 4px 0 0; display: grid; gap: 6px; font-size: 13px; }
.pa-ds-dl div { display: grid; grid-template-columns: 84px 1fr; gap: 8px; border-top: 1px solid var(--ds-line); padding-top: 6px; }
.pa-ds-dl dt { color: var(--ds-muted); }
.pa-ds-dl dd { margin: 0; color: var(--ds-ink); font-weight: 600; }

/* Money: main currency first, then approximations */
.pa-ds-money { display: inline-flex; flex-wrap: wrap; gap: 2px 10px; align-items: baseline; }
.pa-ds-money__v { white-space: nowrap; }
.pa-ds-money__v:not(.is-main) { font-weight: 500; color: var(--ds-muted); font-size: .92em; }

/* Split: list + photo column */
.pa-ds-split { display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 32px; align-items: start; }
.pa-ds-num, .pa-ds-steps, .pa-ds-plain { list-style: none; margin: 0; padding: 0; }
.pa-ds-num li, .pa-ds-steps li { display: grid; grid-template-columns: 40px 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--ds-line); }
.pa-ds-num li:first-child, .pa-ds-steps li:first-child { padding-top: 4px; }
.pa-ds-num b, .pa-ds-steps b { display: block; color: var(--ds-ink); font-size: 16px; }
.pa-ds-num div span, .pa-ds-steps div span { font-size: 14px; color: var(--ds-muted); }
.pa-ds-num__n { font-size: 20px; font-weight: 800; color: var(--ds-blue); line-height: 1.2; }
.pa-ds-steps__n { width: 32px; height: 32px; border-radius: 50%; border: 2px solid var(--ds-blue); color: var(--ds-blue); font-weight: 800; display: grid; place-items: center; }
.pa-ds-plain { counter-reset: v; }
.pa-ds-plain li { counter-increment: v; position: relative; padding: 10px 0 10px 36px; border-bottom: 1px solid var(--ds-line); font-size: 15px; }
.pa-ds-plain li::before { content: counter(v); position: absolute; left: 0; top: 10px; width: 24px; height: 24px; border-radius: 6px; background: var(--ds-tint); color: var(--ds-blue); font-weight: 800; font-size: 13px; display: grid; place-items: center; }
.pa-ds-warn { margin: 14px 0 0; padding: 12px 14px; background: var(--ds-tint); border-left: 4px solid var(--ds-red); border-radius: 0 8px 8px 0; font-size: 14px; }
.pa-ds-warn a { color: var(--ds-blue); }
.pa-ds-rows { margin: 0; }
.pa-ds-rows div { display: grid; grid-template-columns: 150px 1fr; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--ds-line); }
.pa-ds-rows dt { font-weight: 700; color: var(--ds-ink); }
.pa-ds-rows dd { margin: 0; font-size: 15px; }

/* 7. Cost card: tint panel, pad 27px 32px; Training | Living; total underneath */
.pa-ds-cost { background: var(--ds-tint); border: 1px solid var(--ds-line); border-top: 4px solid var(--ds-red); border-radius: 8px; padding: 27px 32px; }
.pa-ds-cost__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.pa-ds-cost__card { background: #fff; border: 1px solid var(--ds-line); border-radius: 8px; padding: 16px 18px; }
.pa-ds-cost__card h3 { font-size: 18px; }
.pa-ds-cost__sub { margin: 2px 0 10px; font-size: 13px; color: var(--ds-muted); }
.pa-ds-cost__big { font-size: 22px; font-weight: 800; color: var(--ds-ink); line-height: 1.3; }
.pa-ds-cost__big .pa-ds-money { flex-direction: column; gap: 2px; }
.pa-ds-cost__note { margin: 10px 0 0; font-size: 12px; color: var(--ds-muted); }
.pa-ds-cost__rows { list-style: none; margin: 0; padding: 0; font-size: 14px; }
.pa-ds-cost__rows li { display: flex; justify-content: space-between; gap: 10px; padding: 7px 0; border-bottom: 1px solid var(--ds-line); }
.pa-ds-cost__rows li > span:first-child { color: var(--ds-ink); font-weight: 600; flex: none; max-width: 45%; }
.pa-ds-cost__rows .pa-ds-money { justify-content: flex-end; text-align: right; font-size: 13px; }
.pa-ds-cost__total { margin-top: 16px; padding: 14px 18px; background: #fff; border: 1.5px solid var(--ds-blue); border-radius: 8px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 16px; align-items: baseline; }
.pa-ds-cost__total > span:first-child { font-weight: 700; color: var(--ds-ink); }
.pa-ds-cost__total .pa-ds-money { font-size: 18px; font-weight: 800; color: var(--ds-ink); }

/* 8. Loan strip */
.pa-ds-loan { display: grid; grid-template-columns: 200px 1fr; gap: 20px; align-items: center; }
.pa-ds-loan > div { border-left: 4px solid var(--ds-blue); padding-left: 18px; }
.pa-ds-loan__k { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ds-blue); }
.pa-ds-loan h3 { font-size: 20px; margin: 2px 0 4px; }
.pa-ds-loan p { margin: 0 0 10px; font-size: 14px; color: var(--ds-muted); }
.pa-ds-btn { display: inline-flex; align-items: center; gap: 6px; min-height: 46px; padding: 0 22px; border-radius: 8px; font-weight: 700; text-decoration: none; }
.pa-ds-btn--line { border: 1.5px solid var(--ds-blue); color: var(--ds-blue); background: #fff; }

/* 13. FAQ accordion rows */
.pa-ds-faq details { border-bottom: 1px solid var(--ds-line); }
.pa-ds-faq summary { list-style: none; cursor: pointer; padding: 15px 28px 15px 0; position: relative; font-weight: 600; color: var(--ds-ink); }
.pa-ds-faq summary::-webkit-details-marker { display: none; }
.pa-ds-faq summary::after { content: "+"; position: absolute; right: 4px; top: 12px; font-size: 20px; color: var(--ds-blue); }
.pa-ds-faq details[open] summary::after { content: "−"; }
.pa-ds-faq__a p { margin: 0 0 14px; font-size: 15px; }

/* 14. Aside form: 373 wide, pad 24px 32px, radius 4, sticky */
.pa-ds-aside { padding-top: 48px; }
.pa-ds-formbox { position: sticky; top: calc(var(--pa-ds-top) + 60px); width: 373px; background: #fff; border: 1px solid var(--ds-line); border-top: 4px solid var(--ds-blue); border-radius: 4px; padding: 24px 32px; box-shadow: 0 6px 24px rgba(11, 16, 51, .08); }
.pa-ds .pa-ds-formbox__t { font-size: 20px; }
.pa-ds-formbox__p { margin: 4px 0 12px; font-size: 13px; color: var(--ds-muted); }
.pa-ds-formbox__alt { margin: 12px 0 0; font-size: 13px; text-align: center; }
.pa-ds-formbox__alt a { color: var(--ds-blue); font-weight: 600; }

/* Collapse: aside drops under the main column at <=1100 */
@media (max-width: 1279px) {
	.pa-ds-body { grid-template-columns: minmax(0, 1fr) 380px; }
	.pa-ds-aside { padding-right: 24px; }
	.pa-ds-formbox { width: 100%; padding: 20px 22px; }
	.pa-ds-hl { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.pa-ds-main { padding-inline: 32px; }
}
@media (max-width: 1023px) {
	.pa-ds-body { grid-template-columns: minmax(0, 1fr); }
	.pa-ds-main { padding-inline: var(--ds-gut); }
	.pa-ds-aside { padding: 32px var(--ds-gut) 0; }
	.pa-ds-formbox { position: static; width: auto; max-width: 560px; max-height: none; }
}
@media (max-width: 700px) {
	.pa-ds { --ds-gut: 15px; }
	.pa-ds-hero { height: 178px; }
	.pa-ds-hero__in { padding-top: 20px; padding-bottom: 14px; }
	.pa-ds .pa-ds-h1 { font-size: 20px; line-height: 1.3; }
	.pa-ds-from__chip { min-height: 30px; font-size: 13px; padding: 0 12px; }
	.pa-ds-hero__row { gap: 8px; }
	.pa-ds-ov { padding-top: 17px; }
	.pa-ds-hl { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 12px; }
	.pa-ds-tabs a { font-size: 12px; padding: 0 10px; }
	.pa-ds-body { padding: 16px 0 24px; }
	.pa-ds-mod, .pa-ds-loan { padding-top: 32px; }
	.pa-ds .pa-ds-h2 { font-size: 18px; line-height: 1.4; }
	.pa-ds-split { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.pa-ds-split > .pa-ds-photo--4x5 { aspect-ratio: 16 / 9; order: -1; }
	.pa-ds-cost { padding: 20px 14px; }
	.pa-ds-cost__grid { grid-template-columns: minmax(0, 1fr); }
	.pa-ds-loan { grid-template-columns: minmax(0, 1fr); }
	.pa-ds-rows div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
	.pa-ds-from__panel { columns: 1; width: calc(100vw - 30px); }
	.pa-ds-row { margin-right: -15px; padding-right: 15px; }
	.pa-ds-aside { padding-inline: 15px; }
	.pa-ds-formbox { padding: 20px 16px; }
}
/* Intakes: one horizontal card (photo + text) */
.pa-ds-row--one { grid-auto-flow: row; grid-template-columns: minmax(0, 1fr); overflow: visible; }
.pa-ds-row--one .pa-ds-card { flex-direction: row; }
.pa-ds-row--one .pa-ds-photo { width: 288px; flex: none; }
.pa-ds-row--one .pa-ds-card__b { border-top: 0; border-left: 3px solid var(--ds-blue); justify-content: center; padding: 16px 20px; }
.pa-ds-cost__rows small { display: block; font-weight: 500; font-size: 11px; color: var(--ds-muted); }
@media (max-width: 700px) { .pa-ds-row--one { margin-right: 0; padding-right: 2px; } .pa-ds-row--one .pa-ds-card { flex-direction: column; } .pa-ds-row--one .pa-ds-photo { width: 100%; } .pa-ds-row--one .pa-ds-card__b { border-left: 0; border-top: 3px solid var(--ds-blue); } }
/* Picker panel must not be clipped by the hero and must sit above the sticky links. */
.pa-ds-hero { overflow: visible; }
.pa-ds-hero > .pa-ds-photo { overflow: hidden; }
.pa-ds-hero__in { z-index: 25; }
.pa-ds-from:not([open]) .pa-ds-from__panel { display: none; }
@media (max-width: 700px) { .pa-ds-from { position: static; } .pa-ds-from__panel { left: 15px; right: 15px; width: auto; top: auto; margin-top: 8px; } }
.pa-ds .pa-ds-days { color: var(--ds-ink); font-size: 13px; }
.pa-ds-days b { font-size: 20px; font-weight: 800; color: var(--ds-blue); margin-right: 4px; }

/* Beat `.elementor img { height:auto; max-width:100% }` so photos fill their slot. */
.pa-ds .pa-ds-photo img.pa-ds-photo__img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }

/* ===== Long-page system additions (5:42 founder, 5:43 Marsha) ===== */
.pa-ds-photo--band { position: absolute; inset: 0; border-radius: 0; }
.pa-ds-photo--wide { aspect-ratio: 16 / 6; margin-bottom: 16px; }
.pa-ds-split--wide { grid-template-columns: minmax(0, 1fr) 300px; }
.pa-ds-split > .pa-ds-photo { position: sticky; top: calc(var(--pa-ds-top) + 60px); border-radius: 14px; }

/* Section skins: tint panel | white | photo band | blue strip. Never two white sections in a row. */
.pa-ds-mod--tint { background: var(--ds-tint); border: 1px solid var(--ds-line); border-radius: 16px; padding: 28px 32px 32px; margin-top: 32px; }
.pa-ds-mod--white { padding-top: 40px; padding-bottom: 8px; }
.pa-ds-mod--tint + .pa-ds-mod--white, .pa-ds-mod--strip + .pa-ds-mod--white, .pa-ds-mod--band + .pa-ds-mod--white { padding-top: 40px; }
.pa-ds-main > .pa-ds-mod:first-child { margin-top: 16px; }
.pa-ds-mod--tint .pa-ds-card, .pa-ds-mod--tint .pa-ds-cost__card { background: #fff; }
.pa-ds-mod--white .pa-ds-cost { background: var(--ds-tint); }

/* Brand stripe motif above each section title */
.pa-ds-mod__head { position: relative; padding-top: 14px; }
.pa-ds-mod__head::before { content: ""; position: absolute; left: 0; top: 0; width: 30px; height: 4px; border-radius: 2px; background: var(--ds-red); box-shadow: 36px 0 0 var(--ds-blue); }
.pa-ds-mod__head::after { content: none; }

/* Hero stripes (brand motif) */
.pa-lp-stripes { position: absolute; right: var(--ds-gut); top: 24px; display: flex; gap: 8px; transform: skewX(-24deg); pointer-events: none; }
.pa-lp-stripes i { display: block; width: 12px; height: 64px; background: var(--ds-red); opacity: .9; }
.pa-lp-stripes i + i { background: var(--ds-blue); }

/* Big-number strip: the one compact blue band */
.pa-ds-mod--strip { margin-top: 32px; padding: 22px 28px 16px; background: var(--ds-deep); border-radius: 16px; color: #fff; position: relative; overflow: hidden; }
.pa-ds-mod--strip::after { content: ""; position: absolute; right: -30px; top: -20px; width: 60px; height: 160%; background: var(--ds-red); transform: skewX(-24deg); opacity: .85; }
.pa-lp-strip { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; position: relative; z-index: 1; }
.pa-lp-strip li { display: flex; flex-direction: column; gap: 2px; padding-right: 24px; }
.pa-lp-strip b { font-size: 34px; font-weight: 800; line-height: 1.1; color: #fff; letter-spacing: -.02em; }
.pa-lp-strip span { font-size: 13px; color: #fff; opacity: .92; }
.pa-lp-strip__note { position: relative; z-index: 1; margin: 12px 0 0; font-size: 11px; color: #fff; opacity: .85; }

/* Full-width photo band with the local line */
.pa-ds-mod--band { position: relative; margin-top: 32px; min-height: 360px; border-radius: 16px; overflow: hidden; display: flex; align-items: flex-end; color: #fff; }
.pa-lp-band__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5, 8, 30, .05) 30%, rgba(5, 8, 30, .78) 100%); }
.pa-lp-band__sweep { position: absolute; left: 32px; top: 0; height: 100%; display: flex; gap: 10px; transform: skewX(-24deg); opacity: .9; }
.pa-lp-band__sweep i { width: 10px; background: var(--ds-red); }
.pa-lp-band__sweep i + i { background: var(--ds-blue); }
.pa-lp-band__in { position: relative; z-index: 2; padding: 28px 32px; }
.pa-lp-band__k { margin: 0 0 4px; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #fff; }
.pa-lp-band__line { margin: 0; font-size: 34px; font-weight: 800; line-height: 1.15; letter-spacing: -.02em; color: #fff; }
.pa-lp-band__line span { box-shadow: inset 0 -.18em 0 var(--ds-red); }
.pa-lp-band__sub { margin: 8px 0 0; font-size: 15px; color: #fff; max-width: 560px; }

/* Cards: hover lift, kicker and fee */
.pa-ds-card { transition: transform .25s ease, box-shadow .25s ease; }
.pa-ds-card:hover { transform: translateY(-4px); box-shadow: 0 14px 30px rgba(11, 16, 51, .14); }
.pa-ds-card__k { margin: 0; font-size: 11px !important; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ds-red) !important; }
.pa-ds-card__fee { margin-top: 6px !important; font-size: 13px !important; color: var(--ds-ink) !important; font-weight: 700; }
.pa-ds-card__fee small { display: block; font-weight: 500; color: var(--ds-muted); font-size: 11px; }
.pa-ds-steps--line li { position: relative; }
.pa-ds-steps--line li:not(:last-child)::after { content: ""; position: absolute; left: 15px; top: 46px; bottom: -10px; width: 2px; background: linear-gradient(var(--ds-red), var(--ds-blue)); opacity: .35; }
.pa-ds-loan__t h3 { font-size: 20px; margin: 0 0 6px; }
.pa-ds-loan__t p { margin: 0 0 14px; font-size: 15px; color: var(--ds-muted); }

/* Sticky form column: always inside its viewport, never over the content */
.pa-ds-formbox { max-height: calc(100vh - var(--pa-ds-top) - 76px); overflow: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.pa-lp-close { display: none; }
.pa-lp-bar { display: none; }

/* Below 1024: the form opens from one sticky bottom button (the page's only floating control) */
@media (max-width: 1023px) {
	.pa-lp-js .pa-ds-aside { display: none; }
	.pa-lp-js .pa-ds-aside.is-open { display: block; position: fixed; inset: 0; z-index: 10000; padding: 0; background: rgba(5, 8, 30, .55); overflow: auto; }
	.pa-lp-js .pa-ds-aside.is-open .pa-ds-formbox { max-width: 560px; margin: 24px auto; border-radius: 12px; }
	.pa-lp-js .pa-lp-close { display: grid; place-items: center; position: absolute; right: 10px; top: 10px; width: 40px; height: 40px; border: 0; border-radius: 50%; background: var(--ds-tint); color: var(--ds-ink); font-size: 24px; cursor: pointer; }
	.pa-lp-js .pa-ds-formbox { position: relative; }
	.pa-lp-js .pa-lp-bar { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990; padding: 10px 15px calc(10px + env(safe-area-inset-bottom)); background: #fff; box-shadow: 0 -6px 20px rgba(11, 16, 51, .12); }
	.pa-lp-bar__btn { display: flex; justify-content: center; align-items: center; gap: 8px; min-height: 48px; border-radius: 999px; background: #FF3131; color: #fff !important; font-weight: 800; font-size: 16px; text-decoration: none; }
	body.pa-lp-page .pa-float, body:has(.pa-lp) .pa-float { display: none !important; }
	body.pa-lp-page { padding-bottom: 70px; }
	.pa-ds-split--wide { grid-template-columns: minmax(0, 1fr) 240px; }
}
@media (max-width: 700px) {
	.pa-ds-mod--tint { padding: 22px 16px 24px; border-radius: 12px; margin-inline: -4px; }
	.pa-ds-split--wide { grid-template-columns: minmax(0, 1fr); }
	.pa-ds-split > .pa-ds-photo { position: relative; top: auto; aspect-ratio: 16 / 9; order: -1; }
	.pa-lp-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px; }
	.pa-lp-strip b { font-size: 26px; }
	.pa-lp-strip li { padding-right: 0; }
	.pa-ds-mod--strip { padding: 18px 16px 12px; }
	.pa-ds-mod--strip::after { width: 34px; right: -18px; }
	.pa-ds-mod--band { min-height: 280px; }
	.pa-lp-band__line { font-size: 24px; }
	.pa-lp-band__in { padding: 20px 18px; }
	.pa-lp-band__sweep { left: 14px; }
	.pa-lp-stripes { display: none; }
	.pa-ds-photo--wide { aspect-ratio: 16 / 8; }
}

/* Motion: fade-and-rise on scroll (JS adds .pa-lp-js); nothing moves with reduced motion */
.pa-lp-js .pa-rv { opacity: 0; transform: translateY(18px); transition: opacity .55s ease, transform .55s ease; }
.pa-lp-js .pa-rv.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	.pa-lp-js .pa-rv { opacity: 1; transform: none; transition: none; }
	.pa-ds-card, .pa-ds-card:hover { transition: none; transform: none; }
}

/* ===== Polish (founder 5:53): bold tight headings, eyebrows, consistent radius/shadow, generous spacing ===== */
.pa-ds .pa-ds-h2 { font-size: 28px; font-weight: 800; line-height: 1.18; letter-spacing: -.025em; }
.pa-ds-mod__head { padding-top: 0; }
.pa-ds-mod__head::before { content: none; }
.pa-lp-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--ds-red); }
.pa-lp-eyebrow b { display: inline-grid; place-items: center; height: 20px; padding: 0 6px; border-radius: 6px; background: linear-gradient(90deg, var(--ds-red) 0 50%, var(--ds-blue) 50%); color: #fff; font-size: 10px; letter-spacing: .04em; }
.pa-lp-eyebrow::after { content: ""; width: 34px; height: 3px; border-radius: 2px; background: var(--ds-blue); }
.pa-ds-intro { font-size: 16px; color: var(--ds-text); max-width: 640px; }
.pa-ds-mod--white { padding-top: 48px; padding-bottom: 12px; }
.pa-ds-mod--tint, .pa-ds-mod--strip, .pa-ds-mod--band { margin-top: 44px; }
.pa-ds-card, .pa-ds-cost__card, .pa-ds-photo { border-radius: 14px; }
.pa-ds-card .pa-ds-photo { border-radius: 0; }
.pa-ds-card { box-shadow: 0 6px 18px rgba(11, 16, 51, .07); border-color: #e7e9f6; }
.pa-ds-num__n { font-size: 24px; color: var(--ds-red); }
.pa-ds-num li:nth-child(even) .pa-ds-num__n { color: var(--ds-blue); }
.pa-ds-steps__n { border-color: var(--ds-red); color: var(--ds-red); }
.pa-ds-num b, .pa-ds-steps b { font-size: 17px; font-weight: 800; letter-spacing: -.01em; }
.pa-ds .pa-ds-h1 { font-size: 36px; font-weight: 800; letter-spacing: -.025em; }
@media (max-width: 700px) {
	.pa-ds .pa-ds-h2 { font-size: 22px; }
	.pa-ds .pa-ds-h1 { font-size: 22px; }
	.pa-ds-mod--white { padding-top: 36px; }
	.pa-ds-mod--tint, .pa-ds-mod--strip, .pa-ds-mod--band { margin-top: 32px; }
}

/* Desktop: the sticky form is the contact point, so the floating WhatsApp/call buttons would sit on top of it. Hide them on long pages. */
body:has(.pa-ds-formbox) .pa-float { display: none !important; }

/* ---- 9 Oct 2026 fixes (Marsha 6:10) ---- */
/* Fix 2: section links stick directly below the floating header (top = header height); when stuck, a white
   backdrop fills the band behind the header so content never shows between the header and the links. */
.pa-ds-tabs { top: var(--pa-ds-top); }
.pa-ds-tabs.is-stuck { box-shadow: 0 8px 18px -14px rgba(11, 16, 51, .35); }
.pa-ds-tabs.is-stuck::before { content: ""; position: absolute; left: 0; right: 0; bottom: 100%; height: var(--pa-ds-top); background: #fff; pointer-events: none; }
.pa-lp [id], .pa-lp .pa-ds-mod, .pa-lp .pa-ds-h2 { scroll-margin-top: calc(var(--pa-ds-top) + var(--pa-lp-tabs-h, 37px) + 16px); }
/* Fix 1: the sticky form card fits the viewport (max-height: 100vh - header - links - 24px), with a smaller
   photo; the card scrolls internally and the Next / Send button stays pinned at its bottom edge. */
@media (min-width: 1024px) {
	.pa-ds-formbox { top: calc(var(--pa-ds-top) + var(--pa-lp-tabs-h, 37px) + 12px); max-height: calc(100vh - var(--pa-ds-top) - var(--pa-lp-tabs-h, 37px) - 24px); overflow: auto; padding-bottom: 0; }
	.pa-ds-formbox .pa-fx-photo { height: 72px; margin-bottom: 12px; }
	.pa-ds-formbox .pa-fx-nav, .pa-ds-formbox .pa-fx-form[data-step="2"] .e-form__buttons { position: sticky; bottom: 0; z-index: 3; background: #fff; padding: 10px 0 12px; box-shadow: 0 -10px 12px -10px rgba(11, 16, 51, .18); }
	.pa-ds-formbox .pa-fx-note { margin-top: 6px; }
	.pa-ds-formbox .pa-ds-formbox__alt { padding-bottom: 16px; }
}
@media (min-width: 1024px) and (max-height: 860px) {
	.pa-ds-formbox .pa-fx-photo { height: 56px; }
	.pa-ds-formbox .pa-fx .pa-fx-title { font-size: 19px; margin: 4px 0 2px; }
	.pa-ds-formbox .pa-fx-lead { margin-bottom: 8px; font-size: 13px; }
	.pa-ds-formbox .pa-fx .elementor-field-group { margin-bottom: 10px !important; }
	.pa-ds-formbox .pa-fx .elementor-field-textual, .pa-ds-formbox .pa-fx select.elementor-field-textual { min-height: 50px; height: auto; padding-top: 19px !important; padding-bottom: 5px !important; }
	.pa-ds-formbox .pa-fx select.elementor-field-textual { height: 50px; }
	.pa-ds-formbox .pa-fx .pa-fx-float > .elementor-field-label { top: 14px; }
	.pa-ds-formbox .pa-fx .pa-fx-float.is-filled > .elementor-field-label, .pa-ds-formbox .pa-fx .pa-fx-float:focus-within > .elementor-field-label { top: 5px; }
	.pa-ds-formbox .pa-fx-chip { min-height: 38px; }
}
/* Fix 4: a photo slot never looks empty while its image loads. */
.pa-ds-photo { background: linear-gradient(135deg, #e9ecfb, #d9def5); }

/* Sticky Next/Send inside the scrolling card: the card clips without becoming a scroll container. */
@media (min-width: 1024px) { .pa-ds-formbox .pa-fx { overflow: clip; } }

/* Marsha 6:30 fix 1: the form card's sticky top = header + section bar + 12px gap (all widths >= 1024). */
@media (min-width: 1024px) {
	.pa-lp .pa-ds-formbox { top: calc(var(--pa-ds-top) + var(--pa-lp-tabs-h, 37px) + 12px); }
	.pa-ds-tabs { will-change: transform; }
}
/* Marsha 6:30 fix 2: icon-card grid ("Why train abroad"): 3 columns x 2 rows, 1 column on mobile. */
.pa-lp-icards { list-style: none; margin: 8px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.pa-lp-icard { background: #fff; border: 1px solid var(--ds-line); border-radius: 14px; padding: 20px; box-shadow: 0 6px 18px rgba(11, 16, 51, .06); transition: transform .2s ease, box-shadow .2s ease; }
.pa-lp-icard:hover { transform: translateY(-3px); box-shadow: 0 12px 26px rgba(11, 16, 51, .1); }
.pa-lp-icard__ic { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 12px; margin-bottom: 12px; }
.pa-lp-icard__ic svg { width: 26px; height: 26px; }
.pa-lp-icard--blue .pa-lp-icard__ic { color: var(--ds-blue); background: #eef0ff; }
.pa-lp-icard--red .pa-lp-icard__ic { color: var(--ds-red); background: #fff0f0; }
.pa-ds .pa-lp-icard h3 { margin: 0 0 4px; font-size: 16px; font-weight: 800; line-height: 1.3; color: var(--ds-ink); }
.pa-lp-icard p { margin: 0; font-size: 14px; line-height: 1.45; color: var(--ds-muted); }
@media (max-width: 1279px) and (min-width: 1024px) { .pa-lp-icards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) { .pa-lp-icards { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) { .pa-lp-icard { transition: none; } .pa-lp-icard:hover { transform: none; } }

/* ===== Inner pages (PA_Widget_Inner, 9 Oct 2026): programme, operator, path, fees, about, contact ===== */
.pa-in-badge { display: inline-flex; align-items: center; gap: 8px; align-self: center; padding: 7px 14px; border-radius: 999px; font-size: 13px; font-weight: 800; letter-spacing: .02em; background: #fff; color: var(--ds-ink); box-shadow: 0 4px 14px rgba(11, 16, 51, .18); white-space: nowrap; }
.pa-in-badge i { width: 9px; height: 9px; border-radius: 50%; background: #13795b; }
.pa-in-badge--dev i { background: #b35c00; }
/* Checklist */
.pa-in-check__lead { margin: 0 0 12px; color: var(--ds-text); }
.pa-in-check__h { margin: 22px 0 8px; font-weight: 800; color: var(--ds-ink); }
.pa-in-check__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.pa-in-check__list li { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: 10px; align-items: start; background: #fff; border: 1px solid var(--ds-line); border-radius: 10px; padding: 12px 14px; font-size: 15px; line-height: 1.45; color: var(--ds-text); }
.pa-in-check__list svg { width: 22px; height: 22px; color: var(--ds-blue); margin-top: 1px; }
.pa-in-check__list--no svg { color: var(--ds-red); }
.pa-ds-mod--white .pa-in-check__list li { background: var(--ds-tint); border-color: transparent; }
/* Included / not included */
.pa-in-scope { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.pa-in-scope__card { background: #fff; border: 1px solid var(--ds-line); border-radius: 14px; padding: 20px 22px; border-top: 4px solid var(--ds-blue); }
.pa-in-scope__card--exc { border-top-color: var(--ds-red); }
.pa-ds .pa-in-scope__card h3 { margin: 0 0 10px; font-size: 18px; font-weight: 800; color: var(--ds-ink); }
.pa-in-scope__card ul { margin: 0; padding: 0 0 0 18px; display: grid; gap: 8px; font-size: 15px; line-height: 1.45; color: var(--ds-text); }
.pa-in-scope__card--inc li::marker { color: var(--ds-blue); }
.pa-in-scope__card--exc li::marker { color: var(--ds-red); }
.pa-ds-mod--white .pa-in-scope__card { background: var(--ds-tint); }
/* Rows of three link cards fill the column */
.pa-in-row3 { grid-auto-flow: row; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: visible; }
.pa-in-row3 .pa-ds-card__k { color: var(--ds-red); }
/* Text split */
.pa-in-text p { margin: 0 0 12px; font-size: 16px; line-height: 1.6; color: var(--ds-text); }
.pa-in-bullets { list-style: none; margin: 4px 0 16px; padding: 0; display: grid; gap: 8px; }
.pa-in-bullets li { position: relative; padding-left: 22px; font-size: 15px; line-height: 1.5; color: var(--ds-text); }
.pa-in-bullets li::before { content: ""; position: absolute; left: 0; top: .5em; width: 12px; height: 4px; border-radius: 2px; background: var(--ds-red); box-shadow: 0 0 0 0 transparent; }
.pa-in-bullets li:nth-child(even)::before { background: var(--ds-blue); }
/* Who-does-what table */
.pa-in-table { border: 1px solid var(--ds-line); border-radius: 12px; overflow: hidden; background: #fff; }
.pa-in-table__r { display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 16px; padding: 11px 16px; border-top: 1px solid var(--ds-line); font-size: 15px; color: var(--ds-text); }
.pa-in-table__r:first-child { border-top: 0; }
.pa-in-table__r--h { background: var(--ds-ink); color: #fff; font-weight: 800; font-size: 13px; letter-spacing: .03em; text-transform: uppercase; }
.pa-in-table__r span[data-who] { font-weight: 700; color: var(--ds-ink); }
.pa-in-table__r span[data-who="airline"] { color: var(--ds-red); }
.pa-in-table__r span[data-who="pilotsassist"] { color: var(--ds-blue); }
/* Fee table + switches */
.pa-in-fees__ctl { display: flex; flex-wrap: wrap; gap: 10px 16px; justify-content: space-between; margin-bottom: 14px; }
.pa-in-seg { display: inline-flex; flex-wrap: wrap; gap: 6px; }
.pa-in-seg button { appearance: none; border: 1px solid var(--ds-line); background: #fff; color: var(--ds-ink); border-radius: 999px; padding: 7px 14px; font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; min-height: 36px; }
.pa-in-seg button[aria-pressed="true"] { background: var(--ds-ink); border-color: var(--ds-ink); color: #fff; }
.pa-in-seg button:focus-visible { outline: 3px solid var(--ds-blue); outline-offset: 2px; }
.pa-in-fees__t { border: 1px solid var(--ds-line); border-radius: 12px; overflow: hidden; background: #fff; }
.pa-in-fees__r { display: grid; grid-template-columns: minmax(0, 1fr) 140px minmax(0, 1.3fr); gap: 12px; padding: 13px 16px; border-top: 1px solid var(--ds-line); align-items: center; font-size: 15px; }
.pa-in-fees__r--h { border-top: 0; background: var(--ds-ink); color: #fff; font-size: 13px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }
.pa-in-fees__r a { color: var(--ds-ink); font-weight: 800; text-decoration: none; }
.pa-in-fees__r a:hover { text-decoration: underline; }
.pa-in-fees__m { display: none; font-weight: 800; color: var(--ds-ink); font-size: 16px; }
.pa-in-fees[data-cur="school"] .pa-in-fees__m[data-cur="school"], .pa-in-fees[data-cur="USD"] .pa-in-fees__m[data-cur="USD"], .pa-in-fees[data-cur="INR"] .pa-in-fees__m[data-cur="INR"], .pa-in-fees[data-cur="ZAR"] .pa-in-fees__m[data-cur="ZAR"] { display: block; }
.pa-in-fees__r.is-off { display: none; }
.pa-in-fees__note { margin: 10px 0 0; font-size: 13px; color: var(--ds-muted); }
.pa-ds-mod--tint .pa-in-fees__t, .pa-ds-mod--tint .pa-in-table { background: #fff; }
/* Contact cards */
.pa-in-contact { list-style: none; margin: 8px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.pa-in-contact .pa-lp-icard p { overflow-wrap: anywhere; }
.pa-in-contact__a { display: inline-block; margin-top: 10px; font-weight: 800; color: var(--ds-blue); text-decoration: none; }
.pa-in-contact__a:hover { text-decoration: underline; }
/* Company details */
.pa-in-company { margin: 0; display: grid; gap: 0; background: #fff; border: 1px solid var(--ds-line); border-radius: 12px; overflow: hidden; }
.pa-in-company > div { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 12px; padding: 12px 16px; border-top: 1px solid var(--ds-line); }
.pa-in-company > div:first-child { border-top: 0; }
.pa-in-company dt { font-weight: 800; color: var(--ds-ink); }
.pa-in-company dd { margin: 0; color: var(--ds-text); overflow-wrap: anywhere; }
.pa-ds-mod--white .pa-in-company { background: var(--ds-tint); }
@media (max-width: 1279px) and (min-width: 1024px) { .pa-in-contact, .pa-in-row3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) {
	.pa-in-scope, .pa-in-contact, .pa-in-row3 { grid-template-columns: minmax(0, 1fr); }
	.pa-in-row3 { margin-right: 0; padding-right: 2px; }
	.pa-in-table__r { grid-template-columns: minmax(0, 1fr); gap: 2px; }
	.pa-in-table__r--h { display: none; }
	.pa-in-fees__r { grid-template-columns: minmax(0, 1fr) auto; }
	.pa-in-fees__r > span:nth-child(2) { text-align: right; color: var(--ds-muted); font-size: 13px; }
	.pa-in-fees__r > .pa-in-fees__v { grid-column: 1 / -1; }
	.pa-in-fees__r--h > span:nth-child(3) { display: none; }
	.pa-in-company > div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
	.pa-in-badge { align-self: flex-start; }
}
/* Operator form variant */
.pa-op-head { position: relative; padding: 18px 20px 8px; }
.pa-op-head .pa-fx-stripe { position: absolute; left: 20px; top: 0; display: flex; gap: 6px; }
.pa-op-head .pa-fx-stripe i { display: block; width: 30px; height: 4px; border-radius: 0 0 2px 2px; background: var(--ds-red); }
.pa-op-head .pa-fx-stripe i + i { background: var(--ds-blue); }
.pa-op-head__k { margin: 0 0 4px; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--ds-red); }
.pa-ds .pa-op-head__t { margin: 0 0 6px; font-size: 22px; line-height: 1.25; font-weight: 800; color: var(--ds-ink); }
.pa-op-head__p { margin: 0; font-size: 13px; line-height: 1.45; color: var(--ds-muted); }
.pa-ds-aside--op .elementor-form { padding: 6px 20px 4px; }
.pa-ds-aside--op .elementor-field-group { margin-bottom: 10px; }
.pa-ds-aside--op .elementor-field-group > label { font-size: 13px; font-weight: 700; color: var(--ds-ink); }
.pa-ds-aside--op .elementor-field-textual { min-height: 44px; border-radius: 8px; border: 1px solid var(--ds-line); font-size: 15px; }
.pa-ds-aside--op .elementor-field-type-radio .elementor-field-subgroup { display: flex; flex-direction: column; gap: 6px; }
.pa-ds-aside--op .elementor-field-type-radio .elementor-field-option { display: flex; align-items: center; gap: 8px; border: 1px solid var(--ds-line); border-radius: 8px; padding: 8px 10px; font-size: 14px; }
.pa-ds-aside--op .elementor-field-type-acceptance { font-size: 12px; line-height: 1.4; color: var(--ds-muted); }
.pa-ds-aside--op .elementor-button { min-height: 46px; border-radius: 8px; background: var(--ds-red); font-weight: 800; }
.pa-ds-aside--op .pa-ds-formbox__alt { padding: 0 20px 14px; }

/* ---- Marsha inner-page review (9 Oct 2026, 6:58 IST) ---- */
/* Fix 2: the operator form (head + every field + Send) fits the sticky column at 1440x900 and 1280x800.
   Compact spacing; if a shorter window still overflows, the card scrolls internally and Send stays pinned. */
@media (min-width: 1024px) {
	.pa-ds-aside--op .pa-op-head { padding: 14px 20px 2px; }
	.pa-ds .pa-ds-aside--op .pa-op-head__t { margin: 0 0 4px; font-size: 19px; line-height: 1.2; }
	.pa-ds-aside--op .pa-op-head__p { font-size: 12.5px; line-height: 1.4; }
	.pa-ds-aside--op .elementor-form { padding: 6px 20px 0; }
	.pa-ds-aside--op .elementor-field-group { margin-bottom: 8px !important; }
	.pa-ds-aside--op .elementor-field-group > .elementor-field-label { margin: 0 0 3px !important; padding: 0 !important; font-size: 12.5px; line-height: 1.3; }
	.pa-ds-aside--op .elementor-field-textual { min-height: 38px !important; height: 38px; padding: 6px 10px !important; font-size: 14px; }
	.pa-ds-aside--op .elementor-field-type-radio .elementor-field-subgroup { flex-direction: row; flex-wrap: wrap; gap: 5px; }
	.pa-ds-aside--op .elementor-field-type-radio .elementor-field-option { margin: 0 !important; padding: 5px 10px; gap: 6px; border-radius: 999px; font-size: 13px; line-height: 1.25; }
	.pa-ds-aside--op .elementor-field-group-consent > .elementor-field-label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.pa-ds-aside--op .elementor-field-type-acceptance { font-size: 12px; line-height: 1.4; }
	.pa-ds-aside--op .elementor-field-type-submit, .pa-ds-aside--op .e-form__buttons { position: sticky; bottom: 0; z-index: 3; margin-bottom: 0 !important; padding-top: 6px !important; padding-bottom: 10px !important; background: #fff; }
	.pa-ds-aside--op .elementor-button { min-height: 42px; }
	.pa-ds-aside--op .pa-ds-formbox__alt { margin-top: 2px; padding: 0 20px 12px; }
}

/* Fix 3: CPL "Available on request" card beside Included / Not included. */
.pa-in-scope--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pa-in-scope__card--req { border-top-color: var(--ds-ink); }
.pa-in-scope__card--req li::marker { color: var(--ds-ink); }
@media (max-width: 1279px) { .pa-in-scope--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pa-in-scope--3 .pa-in-scope__card--exc { grid-column: 1 / -1; } }
@media (max-width: 767px) { .pa-in-scope--3 { grid-template-columns: minmax(0, 1fr); } }

/* Fix 4: Fees page. Off-white surfaces (blue only as accent) and the fee table as its single full-width red band,
   styled like the home costs band. White text on red is used only at large/bold sizes (AA large); the eyebrow is ink. */
.pa-ds.pa-lp--offwhite { --ds-tint: #f8f7f4; --ds-line: #e9e6df; }
.pa-in-redband { position: relative; isolation: isolate; overflow: hidden; margin: 24px 0 8px; padding: 56px 0 60px; background: var(--ds-red); color: #fff; }
.pa-in-redband__skew { position: absolute; z-index: -1; top: -10%; right: 4%; width: clamp(110px, 15vw, 230px); height: 60%; background: linear-gradient(90deg, var(--pa-deeper, #00087a) 0 42%, transparent 42% 58%, rgba(255, 255, 255, .22) 58%); transform: skewX(-22deg); pointer-events: none; }
.pa-in-redband .pa-lp-eyebrow { color: var(--ds-ink); }
.pa-in-redband .pa-lp-eyebrow b { background: var(--ds-ink); color: #fff; }
.pa-ds .pa-in-redband .pa-ds-h2 { color: #fff; font-size: 34px; }
.pa-ds .pa-in-redband .pa-ds-h2 .pa-ds-key { color: #fff; background: linear-gradient(transparent 70%, var(--pa-deeper, #00087a) 70% 92%, transparent 92%); padding: 0 .04em; }
.pa-in-redband .pa-ds-intro { max-width: 70ch; color: #fff; font-size: 19px; font-weight: 700; line-height: 1.5; }
.pa-in-redband .pa-in-fees { margin-top: 22px; padding: clamp(16px, 2.4vw, 28px); border-radius: 18px; background: #fff; border-top: 8px solid var(--pa-deeper, #00087a); box-shadow: 0 40px 70px -30px rgba(0, 0, 60, .55); color: var(--ds-text); }
.pa-in-redband .pa-in-fees__note { color: var(--ds-muted); }
@media (max-width: 767px) {
	.pa-in-redband { padding: 36px 0 40px; }
	.pa-in-redband .pa-ds-wrap { padding-inline: 16px; }
	.pa-ds .pa-in-redband .pa-ds-h2 { font-size: 26px; }
	.pa-in-redband .pa-ds-intro { font-size: 19px; }
}
/* Fix 2, short windows (<= 860px tall, e.g. 1280x800): Company and Role share a row so nothing scrolls. */
@media (min-width: 1024px) and (max-height: 860px) {
	.pa-ds-aside--op .elementor-field-group-company, .pa-ds-aside--op .elementor-field-group-role { width: 50% !important; flex: 0 0 50%; max-width: 50%; }
	.pa-ds-aside--op .elementor-field-group-company { padding-right: 4px !important; }
	.pa-ds-aside--op .elementor-field-group-role { padding-left: 4px !important; }
	.pa-ds-aside--op .pa-op-head { padding-top: 12px; }
	.pa-ds-aside--op .pa-op-head__k { margin-bottom: 2px; }
}

/* ---------- Inner pages: wide comparison table, verbatim legal text, embedded tools, pages without a form (9 Oct 2026) ---------- */
.pa-in-table--n .pa-in-table__r { grid-template-columns: repeat(var(--pa-cols, 4), minmax(0, 1fr)); align-items: start; }
.pa-in-table--n .pa-in-table__r span b { color: var(--ds-ink); }
.pa-in-table--n[style*="--pa-cols:4"] .pa-in-table__r { grid-template-columns: minmax(0, .85fr) minmax(0, .6fr) minmax(0, 1.5fr) minmax(0, 1.4fr); gap: 14px; }
@media (max-width: 760px) {
	.pa-in-table--n .pa-in-table__r, .pa-in-table--n[style*="--pa-cols:4"] .pa-in-table__r { grid-template-columns: minmax(0, 1fr); gap: 4px; padding: 14px 16px; }
	.pa-in-table--n .pa-in-table__r span[data-h]::before { content: attr(data-h); display: block; font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--ds-muted, #5b6180); }
}
.pa-in-legal { max-width: 78ch; color: var(--ds-text); font-size: 16px; line-height: 1.7; }
.pa-in-legal h2 { margin: 2.2em 0 .6em; font-size: clamp(1.35rem, 2.2vw, 1.7rem); line-height: 1.2; color: var(--ds-ink); }
.pa-in-legal h2:first-child { margin-top: 0; }
.pa-in-legal h3 { margin: 1.8em 0 .5em; font-size: 1.1rem; color: var(--ds-ink); }
.pa-in-legal p, .pa-in-legal ul, .pa-in-legal ol { margin: 0 0 1em; }
.pa-in-legal ul, .pa-in-legal ol { padding-left: 1.3em; }
.pa-in-legal li { margin: 0 0 .45em; }
.pa-in-legal a { color: var(--ds-blue); text-decoration: underline; text-underline-offset: 2px; }
.pa-in-tool .pa-section { padding-left: 0; padding-right: 0; background: transparent; }
.pa-in-tool .pa-wrap { max-width: none; padding-inline: 0; }
.pa-lp--noform .pa-ds-body { grid-template-columns: minmax(0, 1fr); }
.pa-lp--noform .pa-lp-bar { display: none; }

/* ---------- Legal pages: contents list, clause numbers, in-page search (9 Oct 2026) ---------- */
.pa-legal { display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 44px; align-items: start; }
.pa-legal__side { position: sticky; top: calc(var(--pa-ds-top) + 92px); max-height: calc(100vh - var(--pa-ds-top) - 116px); overflow: auto; overscroll-behavior: contain; scrollbar-width: thin; padding-right: 6px; }
.pa-legal__nav > summary { list-style: none; display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; font-size: 13px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--ds-ink); cursor: default; }
.pa-legal__nav > summary::-webkit-details-marker { display: none; }
.pa-legal__nav > summary span { font-size: 12px; font-weight: 700; color: var(--ds-muted); letter-spacing: 0; }
.pa-legal__search { position: relative; margin-bottom: 14px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; margin-bottom: 14px; }
.pa-legal__search input { grid-column: 1 / -1; width: 100%; min-height: 46px; padding: 0 14px; border: 1.5px solid var(--ds-line); border-radius: 10px; background: #fff; font: 500 15px/1 Onest, system-ui, sans-serif; color: var(--ds-ink); }
.pa-legal__search input:focus-visible { outline: 3px solid rgba(0, 18, 255, .3); outline-offset: 1px; border-color: var(--ds-blue); }
.pa-legal__count { font-size: 13px; color: var(--ds-muted); min-height: 18px; }
.pa-legal__step { display: inline-flex; gap: 6px; }
.pa-legal__step button { display: inline-grid; place-items: center; width: 34px; height: 34px; padding: 0 0 2px; border: 1px solid var(--ds-line); border-radius: 50%; background: #fff; color: var(--ds-blue); font-size: 20px; line-height: 1; cursor: pointer; }
.pa-legal__step button:hover:not(:disabled) { background: var(--ds-blue); border-color: var(--ds-blue); color: #fff; }
.pa-legal__step button:disabled { opacity: .35; cursor: default; }
.pa-legal__step button:focus-visible { outline: 3px solid rgba(0, 18, 255, .35); outline-offset: 2px; }
.pa-legal__toc, .pa-legal__toc ol { list-style: none; margin: 0; padding: 0; }
.pa-legal--num .pa-legal__toc { counter-reset: cl; }
.pa-legal__toc > li { margin: 0; border-left: 2px solid var(--ds-line); }
.pa-legal__toc a { display: flex; align-items: baseline; gap: 8px; padding: 7px 10px 7px 12px; font-size: 14px; line-height: 1.35; color: var(--ds-text); text-decoration: none; }
.pa-legal__toc a:hover { color: var(--ds-blue); }
.pa-legal__toc > li.is-current { border-left-color: var(--ds-blue); }
.pa-legal__toc > li.is-current > a { color: var(--ds-blue); font-weight: 700; }
.pa-legal--num .pa-legal__toc > li { counter-increment: cl; }
.pa-legal--num .pa-legal__n::before { content: counter(cl) "."; display: inline-block; min-width: 1.7em; font-weight: 700; color: var(--ds-muted); font-variant-numeric: tabular-nums; }
.pa-legal__n { display: contents; }
.pa-legal:not(.pa-legal--num) .pa-legal__n { display: none; }
.pa-legal__toc ol { margin: 0 0 4px 30px; }
.pa-legal__toc ol a { font-size: 13px; padding: 4px 10px; color: var(--ds-muted); }
.pa-legal__hits { margin-left: auto; font-style: normal; font-size: 12px; font-weight: 800; color: #5a4300; background: #ffe28a; border-radius: 999px; padding: 1px 7px; }
.pa-legal__hits:empty { display: none; }
.pa-legal.is-searching .pa-legal__toc > li.no-hit > a { opacity: .4; }
.pa-legal .pa-in-legal h2, .pa-legal .pa-in-legal h3 { scroll-margin-top: calc(var(--pa-ds-top) + 100px); }
.pa-legal--num .pa-in-legal { counter-reset: cl; }
.pa-legal--num .pa-in-legal h2 { counter-increment: cl; display: flex; gap: .55em; align-items: baseline; }
.pa-legal--num .pa-in-legal h2::before { content: counter(cl) "."; flex: none; min-width: 1.6em; color: var(--ds-blue); font-variant-numeric: tabular-nums; }
.pa-legal .pa-in-legal { max-width: 74ch; }
mark.pa-legal-hit { background: #ffe28a; color: inherit; padding: 0 1px; border-radius: 2px; }
mark.pa-legal-hit.is-active { background: #ffbf1f; outline: 2px solid #b87d00; outline-offset: 1px; }
@media (max-width: 1023px) {
	.pa-legal { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.pa-legal__side { position: static; max-height: none; overflow: visible; padding: 0; }
	.pa-legal__nav { border: 1px solid var(--ds-line); border-radius: 12px; background: #fff; padding: 12px 14px; }
	.pa-legal__nav > summary { margin-bottom: 0; cursor: pointer; min-height: 32px; }
	.pa-legal__nav[open] > summary { margin-bottom: 12px; }
	.pa-legal__nav > summary::after { content: "+"; font-size: 20px; font-weight: 500; }
	.pa-legal__nav[open] > summary::after { content: "\2212"; }
	.pa-legal__toc { max-height: 46vh; overflow: auto; }
}

/* ---------- Side form: fits the viewport, no inner scrollbar (9 Oct 2026) ---------- */
@media (min-width: 1024px) {
	.pa-lp .pa-ds-formbox { max-height: none; overflow: visible; padding: 14px 22px 6px; }
	.pa-lp .pa-ds-formbox .pa-fx-photo { height: 46px; margin-bottom: 8px; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-title { font-size: 19px; margin: 2px 0 0; }
	.pa-lp .pa-ds-formbox .pa-fx-lead { margin: 0 0 6px; font-size: 13px; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-group { margin-bottom: 8px !important; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-textual, .pa-lp .pa-ds-formbox .pa-fx select.elementor-field-textual { min-height: 48px; padding-top: 18px !important; padding-bottom: 4px !important; }
	.pa-lp .pa-ds-formbox .pa-fx select.elementor-field-textual { height: 48px; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-float > .elementor-field-label { top: 13px; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-float.is-filled > .elementor-field-label, .pa-lp .pa-ds-formbox .pa-fx .pa-fx-float:focus-within > .elementor-field-label { top: 5px; }
	.pa-lp .pa-ds-formbox .pa-fx-chip { min-height: 34px; padding-block: 0; }
	.pa-lp .pa-ds-formbox .pa-fx-nav, .pa-lp .pa-ds-formbox .pa-fx-form[data-step="2"] .e-form__buttons { position: static; box-shadow: none; padding: 4px 0 2px; background: transparent; }
	.pa-lp .pa-ds-formbox .pa-fx-btn, .pa-lp .pa-ds-formbox .pa-fx .elementor-button.pa-fx-btn { min-height: 50px; }
	.pa-lp .pa-ds-formbox .pa-fx-note { margin: 4px 0 0; font-size: 11.5px; line-height: 1.35; }
	.pa-lp .pa-ds-formbox .pa-ds-formbox__alt { margin-top: 6px; padding-bottom: 8px; font-size: 12.5px; }
}
/* Genuinely tiny windows keep an inner scroll as a last resort, rather than clipping the form. */
@media (min-width: 1024px) and (max-height: 600px) {
	.pa-lp .pa-ds-formbox { max-height: calc(100vh - var(--pa-ds-top) - var(--pa-lp-tabs-h, 37px) - 24px); overflow: auto; }
}

/* ---------- Eligibility checker (tool wrapped in the inner page) ---------- */
.pa-lp .pa-chk { padding: 0; background: transparent; }
.pa-lp .pa-chk .pa-wrap { max-width: none; padding: 0; }
.pa-lp .pa-chk .pa-section__head { text-align: left; margin: 0 0 20px; max-width: 62ch; }
.pa-lp .pa-chk .pa-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 10px; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #d3121a; }
.pa-lp .pa-chk .pa-eyebrow::before { content: ""; width: 22px; height: 3px; border-radius: 2px; background: var(--ds-red); }
.pa-lp .pa-chk .pa-section__title { font-size: clamp(1.7rem, 3vw, 2.3rem); line-height: 1.1; letter-spacing: -.02em; color: var(--ds-ink); margin: 0 0 10px; }
.pa-lp .pa-chk .pa-section__intro { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--ds-muted); }
.pa-chk__form { padding: clamp(18px, 2.4vw, 28px); border: 1px solid var(--ds-line); border-radius: 18px; background: #fff; box-shadow: 0 10px 30px -18px rgba(11, 16, 51, .25); }
.pa-chk__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 18px; }
.pa-chk__field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.pa-chk__field label { font-size: 13px; font-weight: 700; color: var(--ds-ink); }
.pa-chk__field input, .pa-chk__field select { width: 100%; min-height: 50px; padding: 0 14px; border: 1.5px solid var(--ds-line); border-radius: 10px; background: #fff; font: 500 15px/1.2 Onest, system-ui, sans-serif; color: var(--ds-ink); box-sizing: border-box; }
.pa-chk__field select { appearance: none; -webkit-appearance: none; padding-right: 40px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230012ff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 13px center / 18px; cursor: pointer; }
.pa-chk__field input:hover, .pa-chk__field select:hover { border-color: #c4caea; }
.pa-chk__field input:focus-visible, .pa-chk__field select:focus-visible { outline: 3px solid rgba(0, 18, 255, .25); outline-offset: 1px; border-color: var(--ds-blue); }
.pa-chk__actions { margin: 22px 0 0; display: flex; justify-content: flex-start; }
.pa-chk__actions .pa-btn { min-height: 52px; padding-inline: 28px; }
.pa-chk__result { margin-top: 20px; padding: clamp(18px, 2.4vw, 28px); border: 1px solid var(--ds-line); border-left: 5px solid var(--ds-red); border-radius: 18px; background: var(--ds-tint); }
.pa-chk__result[hidden] { display: none; }
.pa-chk__title { margin: 0 0 12px; font-size: 1.3rem; color: var(--ds-ink); }
.pa-chk__steps { margin: 0 0 14px; padding-left: 1.3em; display: grid; gap: 10px; line-height: 1.55; color: var(--ds-text); }
.pa-chk__steps a { color: var(--ds-blue); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.pa-chk__disclaimer { margin: 0 0 16px; font-size: 13px; color: var(--ds-muted); }
@media (max-width: 700px) {
	.pa-chk__grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.pa-chk__actions .pa-btn { width: 100%; }
}

/* Side form step 2 (contact, destination, message, consent) compacted to fit without scrolling. */
@media (min-width: 1024px) {
	.pa-lp .pa-ds-formbox .pa-fx-saved { margin: 0 0 8px; padding: 6px 10px; font-size: 12.5px; line-height: 1.35; gap: 8px; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-type-acceptance > .elementor-field-label, .pa-lp .pa-ds-formbox .pa-fx .pa-fx-pills > .elementor-field-label, .pa-lp .pa-ds-formbox .pa-fx .pa-fx-chips-g > .elementor-field-label { margin: 0 0 5px; font-size: 12.5px; }
	.pa-lp .pa-ds-formbox .pa-fx-chips { gap: 6px; }
	.pa-lp .pa-ds-formbox .pa-fx-chip, .pa-lp .pa-ds-formbox .pa-fx .pa-fx-pills .elementor-field-option label { min-height: 34px; padding-inline: 12px; font-size: 13px; }
	.pa-lp .pa-ds-formbox .pa-fx-chips--photo .pa-fx-chip { padding: 3px 12px 3px 3px; }
	.pa-lp .pa-ds-formbox .pa-fx-chips--photo img, .pa-lp .pa-ds-formbox .pa-fx-chip__q { width: 26px !important; height: 26px !important; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-pills .elementor-field-subgroup { gap: 6px; }
	.pa-lp .pa-ds-formbox .pa-fx textarea.elementor-field-textual { min-height: 56px !important; height: 56px !important; padding-top: 22px !important; resize: none; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-type-acceptance .elementor-field-option { font-size: 12px; line-height: 1.35; gap: 8px; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-type-acceptance input { width: 18px; height: 18px; }
	.pa-lp .pa-ds-formbox .pa-fx-back { margin: 0 0 4px; padding: 2px 0; }
	.pa-lp .pa-ds-formbox .pa-fx-trust { margin: 6px 0 0; }
}

/* Side form, final fit pass: tighter rhythm on both steps; step 2 drops the photo, lead and alt line; the optional
   message box and trust line yield on shorter windows. Measured: step 2 = 595px at an 800px-high window. */
@media (min-width: 1024px) {
	.pa-lp .pa-ds-formbox .pa-fx .elementor-form-fields-wrapper { row-gap: 0 !important; gap: 0 !important; margin-top: -14px !important; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-group { margin-bottom: 6px !important; padding-bottom: 0 !important; }
	.pa-lp .pa-ds-formbox .pa-fx-form { padding-bottom: 2px !important; }
	.pa-lp .pa-ds-formbox { padding-bottom: 2px; }
	.pa-lp .pa-ds-formbox .pa-fx-saved { display: none; }
	.pa-lp .pa-ds-formbox .pa-fx textarea.elementor-field-textual { min-height: 46px !important; height: 46px !important; padding-top: 20px !important; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-type-acceptance .elementor-field-option { font-size: 11.5px; line-height: 1.3; }
	.pa-lp .pa-ds-formbox .pa-fx-chips { gap: 5px; }
	.pa-lp .pa-ds-formbox .pa-fx-chips--photo .pa-fx-chip { font-size: 12px; padding: 2px 9px 2px 2px; min-height: 30px; gap: 6px; }
	.pa-lp .pa-ds-formbox .pa-fx-chips--photo img, .pa-lp .pa-ds-formbox .pa-fx-chip__q { width: 22px !important; height: 22px !important; }
	.pa-lp .pa-ds-formbox .pa-fx-btn, .pa-lp .pa-ds-formbox .pa-fx .elementor-button.pa-fx-btn { min-height: 46px; }
	.pa-lp .pa-ds-formbox .pa-fx-trust { margin-top: 4px; }
}
@media (min-width: 1024px) and (max-height: 880px) { .pa-lp .pa-ds-formbox .pa-ds-formbox__alt { display: none; } }
@media (min-width: 1024px) and (max-height: 870px) { .pa-lp .pa-ds-formbox .pa-fx .elementor-field-type-textarea { display: none; } }
@media (min-width: 1024px) and (max-height: 800px) { .pa-lp .pa-ds-formbox .pa-fx-trust { display: none; } }

/* ---------- Side form: premium pass (9 Oct 2026). Slim photo header with the brand label over it, room to breathe,
   softer fields, refined chips and button. Measured to fit without scrolling from an 800px-high window. ---------- */
@media (min-width: 1024px) {
	.pa-lp .pa-ds-formbox, .pa-lp .pa-ds-formbox.pa-fx-box { padding: 0; border: 0; background: transparent; box-shadow: none; }
	.pa-lp .pa-ds-formbox .pa-fx { border-radius: 22px; border: 1px solid rgba(11, 16, 51, .06); box-shadow: 0 30px 60px -28px rgba(11, 16, 51, .35), 0 2px 8px rgba(11, 16, 51, .05); }
	.pa-lp .pa-ds-formbox .pa-fx-head { padding: 0 24px; }
	.pa-lp .pa-ds-formbox .pa-fx-photo { display: block; height: 66px; margin: 0 -24px 0; }
	.pa-lp .pa-ds-formbox .pa-fx-photo::after { background: linear-gradient(180deg, rgba(6, 10, 38, .15) 0%, rgba(6, 10, 38, .72) 100%); }
	.pa-lp .pa-ds-formbox .pa-fx-brand { position: absolute; top: 36px; left: 24px; z-index: 2; gap: 8px; font-size: 10.5px; letter-spacing: .14em; color: #fff; text-shadow: 0 1px 6px rgba(0, 0, 0, .35); }
	.pa-lp .pa-ds-formbox .pa-fx-brand img { width: 20px; height: 20px; border-radius: 5px; background: #fff; padding: 2px; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-title { margin: 14px 0 3px; font-size: 21px; line-height: 1.18; letter-spacing: -.025em; }
	.pa-lp .pa-ds-formbox .pa-fx-lead { display: block; margin: 0 0 10px; font-size: 13px; line-height: 1.35; color: var(--fx-muted); }
	.pa-lp .pa-ds-formbox .pa-fx-prog { margin: 0 0 4px; gap: 10px; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--fx-muted); }
	.pa-lp .pa-ds-formbox .pa-fx-prog__bar { height: 3px; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-form { padding: 14px 24px 20px !important; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-form-fields-wrapper { margin-top: 0 !important; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-group { margin-bottom: 10px !important; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-textual, .pa-lp .pa-ds-formbox .pa-fx select.elementor-field-textual { min-height: 52px; height: 52px; border: 1px solid #dde1f2 !important; border-radius: 12px !important; background: #fbfbff !important; font-size: 15.5px !important; font-weight: 500; padding: 21px 16px 6px !important; transition: border-color .15s, box-shadow .15s, background-color .15s; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-textual:hover { border-color: #c2c9e6 !important; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-textual:focus { background: #fff !important; border-color: var(--fx-blue) !important; box-shadow: 0 0 0 4px rgba(0, 18, 255, .12) !important; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-float > .elementor-field-label { top: 17px; left: 17px; font-size: 14.5px; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-float.is-filled > .elementor-field-label, .pa-lp .pa-ds-formbox .pa-fx .pa-fx-float:focus-within > .elementor-field-label { top: 8px; font-size: 10.5px; letter-spacing: .05em; text-transform: uppercase; color: var(--fx-blue); }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-type-acceptance > .elementor-field-label, .pa-lp .pa-ds-formbox .pa-fx .pa-fx-pills > .elementor-field-label, .pa-lp .pa-ds-formbox .pa-fx .pa-fx-chips-g > .elementor-field-label { margin: 2px 0 7px; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; color: var(--fx-muted); }
	.pa-lp .pa-ds-formbox .pa-fx-chips { gap: 7px; }
	.pa-lp .pa-ds-formbox .pa-fx-chip, .pa-lp .pa-ds-formbox .pa-fx .pa-fx-pills .elementor-field-option label { min-height: 36px; padding: 0 14px; border: 1px solid #dde1f2; border-radius: 999px; background: #fff; font-size: 13px; font-weight: 600; letter-spacing: 0; }
	.pa-lp .pa-ds-formbox .pa-fx-chip:hover, .pa-lp .pa-ds-formbox .pa-fx .pa-fx-pills .elementor-field-option label:hover { border-color: var(--fx-blue); color: var(--fx-blue); transform: none; }
	.pa-lp .pa-ds-formbox .pa-fx-chip[aria-checked="true"], .pa-lp .pa-ds-formbox .pa-fx .pa-fx-pills .elementor-field-option input:checked + label { background: var(--fx-blue); border-color: var(--fx-blue); color: #fff; box-shadow: 0 6px 14px -6px rgba(0, 18, 255, .6); }
	.pa-lp .pa-ds-formbox .pa-fx-chips--photo .pa-fx-chip { padding: 2px 12px 2px 2px; min-height: 32px; }
	.pa-lp .pa-ds-formbox .pa-fx-nav, .pa-lp .pa-ds-formbox .pa-fx-form[data-step="2"] .e-form__buttons { padding: 8px 0 0; }
	.pa-lp .pa-ds-formbox .pa-fx-btn, .pa-lp .pa-ds-formbox .pa-fx .elementor-button.pa-fx-btn { min-height: 52px; border-radius: 14px !important; background: linear-gradient(180deg, #ee2a31 0%, #d3121a 100%) !important; font-size: 16px !important; font-weight: 700 !important; letter-spacing: .01em; box-shadow: 0 14px 26px -12px rgba(213, 18, 26, .65), inset 0 1px 0 rgba(255, 255, 255, .22); }
	.pa-lp .pa-ds-formbox .pa-fx-btn:hover { background: linear-gradient(180deg, #f23239 0%, #c40f16 100%) !important; box-shadow: 0 18px 30px -12px rgba(213, 18, 26, .75), inset 0 1px 0 rgba(255, 255, 255, .22); }
	.pa-lp .pa-ds-formbox .pa-fx-note { margin: 10px 0 0; font-size: 11.5px; line-height: 1.4; color: var(--fx-muted); }
	.pa-lp .pa-ds-formbox .pa-fx-back { color: var(--fx-muted); font-weight: 600; }
	.pa-lp .pa-ds-formbox .pa-fx-trust { margin-top: 8px; color: var(--fx-muted); }
}
/* Shorter windows give up the least important lines first. */
@media (min-width: 1024px) and (max-height: 760px) {
	.pa-lp .pa-ds-formbox .pa-fx-lead { display: none; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-group { margin-bottom: 8px !important; }
}
@media (min-width: 1024px) and (max-height: 700px) {
	.pa-lp .pa-ds-formbox .pa-fx-photo { height: 48px; }
	.pa-lp .pa-ds-formbox .pa-fx-brand { top: 20px; }
	.pa-lp .pa-ds-formbox .pa-fx-note { display: none; }
}

/* Step 2 on laptop-height windows: slimmer photo strip, no repeated lead, text-only destination chips (2 rows, not 3). */
@media (min-width: 1024px) and (max-height: 860px) {
	.pa-lp .pa-ds-formbox:has(form[data-step="2"]) .pa-fx-lead { display: none; }
	.pa-lp .pa-ds-formbox:has(form[data-step="2"]) .pa-fx-photo { height: 46px; }
	.pa-lp .pa-ds-formbox:has(form[data-step="2"]) .pa-fx-brand { top: 18px; }
	.pa-lp .pa-ds-formbox:has(form[data-step="2"]) .pa-fx-chips--photo img, .pa-lp .pa-ds-formbox:has(form[data-step="2"]) .pa-fx-chip__q { display: none; }
	.pa-lp .pa-ds-formbox:has(form[data-step="2"]) .pa-fx-chips--photo .pa-fx-chip { padding: 0 12px; min-height: 34px; }
	.pa-lp .pa-ds-formbox:has(form[data-step="2"]) .pa-fx .pa-fx-form { padding-top: 10px !important; }
}

/* Laptop height (<= 820px): drop the lead line, tighten rhythm, slimmer step-2 photo strip. Measured: step 2 = 614px of 618px at 800px high. */
@media (min-width: 1024px) and (max-height: 820px) {
	.pa-lp .pa-ds-formbox .pa-fx-lead { display: none; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-group { margin-bottom: 8px !important; }
	.pa-lp .pa-ds-formbox:has(form[data-step="2"]) .pa-fx-photo { height: 40px; }
	.pa-lp .pa-ds-formbox:has(form[data-step="2"]) .pa-fx-brand { top: 13px; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-form { padding-bottom: 16px !important; }
	.pa-lp .pa-ds-formbox .pa-fx .elementor-field-type-acceptance .elementor-field-option { font-size: 11px; line-height: 1.28; }
}
/* Very short windows: no photo strip; the brand label sits above the title in red, as in the original card. */
@media (min-width: 1024px) and (max-height: 740px) {
	.pa-lp .pa-ds-formbox .pa-fx-photo { display: none; }
	.pa-lp .pa-ds-formbox .pa-fx-brand { position: static; padding-top: 16px; color: var(--fx-red); text-shadow: none; }
	.pa-lp .pa-ds-formbox .pa-fx-brand img { background: none; padding: 0; }
	.pa-lp .pa-ds-formbox .pa-fx .pa-fx-title { margin-top: 6px; }
}

/* ---------- Costs (destination pages): Training as a full-width band, Living as an aligned price table (9 Oct 2026) ---------- */
.pa-ds-cost__grid:has(.pa-ds-cost__big) { grid-template-columns: minmax(0, 1fr); gap: 18px; }
.pa-ds-cost__card:has(> .pa-ds-cost__big) { display: grid; grid-template-columns: minmax(150px, .7fr) minmax(0, 2.3fr); grid-template-rows: auto auto auto; column-gap: 32px; align-items: center; padding: 22px 28px; border-left: 4px solid var(--ds-blue); }
.pa-ds-cost__card:has(> .pa-ds-cost__big) h3 { grid-column: 1; grid-row: 1; align-self: end; font-size: 20px; }
.pa-ds-cost__card:has(> .pa-ds-cost__big) .pa-ds-cost__sub { grid-column: 1; grid-row: 2; align-self: start; margin: 4px 0 0; }
.pa-ds-cost__card:has(> .pa-ds-cost__big) .pa-ds-cost__big { grid-column: 2; grid-row: 1 / span 2; }
.pa-ds-cost__card:has(> .pa-ds-cost__big) .pa-ds-cost__note { grid-column: 1 / -1; grid-row: 3; margin: 14px 0 0; padding-top: 12px; border-top: 1px solid var(--ds-line); }
.pa-ds-cost__big .pa-ds-money { display: flex; flex-wrap: wrap; gap: 4px 28px; align-items: baseline; }
.pa-ds-cost__big .pa-ds-money__v.is-main { flex: 1 0 100%; }
.pa-ds-cost__big .pa-ds-money__v { font-size: 20px; font-weight: 700; color: var(--ds-muted); letter-spacing: -.01em; }
.pa-ds-cost__big .pa-ds-money__v.is-main { font-size: clamp(26px, 2.8vw, 34px); font-weight: 800; color: var(--ds-ink); letter-spacing: -.02em; }
.pa-ds-cost__rows--table { font-size: 15px; }
.pa-ds-cost__rows--table li { display: grid; grid-template-columns: minmax(190px, 1.5fr) repeat(var(--pa-cc, 3), minmax(0, 1fr)); column-gap: 20px; align-items: baseline; padding: 11px 0; }
.pa-ds-cost__rows--table li > span:first-child { max-width: none; }
.pa-ds-cost__rows--table .pa-ds-money { display: contents; }
.pa-ds-cost__rows--table .pa-ds-money__v { text-align: right; font-size: 14.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.pa-ds-cost__rows--table .pa-ds-money__v.is-main { font-weight: 700; color: var(--ds-ink); }
.pa-ds-cost__rows--table .pa-ds-cost__head { padding: 0 0 8px; border-bottom: 2px solid var(--ds-ink); font-size: 11.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--ds-muted); }
.pa-ds-cost__rows--table .pa-ds-cost__head span { text-align: right; font-weight: 800; color: var(--ds-muted); max-width: none; }
.pa-ds-cost__rows--table .pa-ds-cost__head span:first-child { text-align: left; }
.pa-ds-cost__rows--table li:last-child { border-bottom: 0; }
@media (max-width: 760px) {
	.pa-ds-cost__card:has(> .pa-ds-cost__big) { display: block; padding: 18px; }
	.pa-ds-cost__card:has(> .pa-ds-cost__big) .pa-ds-cost__big { margin-top: 12px; }
	.pa-ds-cost__big .pa-ds-money { grid-template-columns: minmax(0, 1fr); gap: 4px; }
	.pa-ds-cost__rows--table .pa-ds-cost__head { display: none; }
	.pa-ds-cost__rows--table li { display: block; padding: 12px 0; }
	.pa-ds-cost__rows--table .pa-ds-money { display: flex; flex-wrap: wrap; justify-content: flex-start; text-align: left; gap: 2px 14px; margin-top: 4px; }
	.pa-ds-cost__rows--table .pa-ds-money__v { text-align: left; }
}

/* Country-page costs: Training and Living stacked, each an aligned price table (same treatment as the destination pages). */
.pa-ds-cost__grid--stack { grid-template-columns: minmax(0, 1fr); gap: 18px; }
.pa-ds-cost__grid--stack .pa-ds-cost__card { padding: 20px 26px 18px; }
.pa-ds-cost__grid--stack .pa-ds-cost__rows--table li > span:first-child small { display: block; margin-top: 2px; }

/* Fee blocks inside cards: headline figure on its own line, converted figures together below (same height on every card). */
.pa-ds-card__fee .pa-ds-money { display: flex; flex-wrap: wrap; gap: 1px 12px; align-items: baseline; }
.pa-ds-card__fee .pa-ds-money__v.is-main { flex: 1 0 100%; font-size: 1.12em; font-weight: 800; color: var(--ds-ink); }
.pa-ds-card__fee .pa-ds-money__v:not(.is-main) { font-size: .86em; }

/* Company details: stack label over value whenever the card itself is narrow (it sits beside a photo at some widths); links styled. */
.pa-in-company { container-type: inline-size; }
.pa-in-company dd a { color: var(--ds-blue); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
@container (max-width: 470px) {
	.pa-in-company > div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
	.pa-in-company dt { font-size: 13px; letter-spacing: .02em; color: var(--ds-muted); }
}

/* Company card keeps the full column on mid-width screens (form column beside it): photo drops below as a banner. */
@media (min-width: 1024px) and (max-width: 1320px) {
	.pa-ds-split:has(> .pa-in-company) { grid-template-columns: minmax(0, 1fr); }
	.pa-ds-split:has(> .pa-in-company) > .pa-ds-photo { position: relative; top: auto; aspect-ratio: 16 / 6; }
}

/* Country chooser pills (pages that follow the visitor's country, e.g. /cpl-conversion). */
.pa-cp { list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.pa-cp__pill { display: inline-flex; align-items: center; min-height: 38px; padding: 0 16px; border: 1px solid #dde1f2; border-radius: 999px; background: #fff; color: var(--ds-ink); font-size: 14px; font-weight: 600; text-decoration: none; transition: border-color .15s, color .15s, background-color .15s; }
.pa-cp__pill:hover { border-color: var(--ds-blue); color: var(--ds-blue); }
.pa-cp__pill.is-on { background: var(--ds-blue); border-color: var(--ds-blue); color: #fff; box-shadow: 0 6px 14px -6px rgba(0, 18, 255, .6); }
.pa-cp__pill:focus-visible { outline: 3px solid rgba(0, 18, 255, .35); outline-offset: 2px; }

/* Checker age field: "17 and above" hint and an inline message for an unusable age. */
.pa-chk__hint { font-size: 12.5px; color: var(--ds-muted); }
.pa-chk__err { margin: 0; font-size: 13px; font-weight: 600; color: #b42318; }
.pa-chk__err[hidden] { display: none; }
.pa-chk__field input[aria-invalid="true"] { border-color: #b42318; box-shadow: 0 0 0 3px rgba(180, 35, 24, .12); }

/* PA-REGION-20261014 region pages */
.pa-rg-chips { list-style: none; margin: 18px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; position: relative; z-index: 2; }
.pa-rg-chips a { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 999px; background: rgba(255,255,255,.94); color: #0b1530; font-weight: 600; font-size: 15px; text-decoration: none; }
.pa-rg-chips a:hover, .pa-rg-chips a:focus-visible { background: #fff; box-shadow: 0 0 0 2px #000db2; }
.pa-rg-head { scroll-margin-top: calc(var(--pa-ds-top, 80px) + 20px); }
.pa-rg-head .pa-ds-h2 { display: flex; align-items: center; gap: 10px; }
.pa-rg-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; }
.pa-rg-facts > div { background: #f4f6fb; border-radius: 12px; padding: 12px 14px; }
.pa-rg-facts dt { font-size: 13px; text-transform: uppercase; letter-spacing: .04em; color: #5b6478; }
.pa-rg-facts dd { margin: 4px 0 0; font-weight: 600; }
.pa-picker__label a { color: inherit; text-decoration: none; }
.pa-picker__label a:hover { text-decoration: underline; }
@media (max-width: 600px) { .pa-rg-facts { grid-template-columns: 1fr; } .pa-rg-chips a { font-size: 14px; padding: 7px 12px; } }

/* PA-CBACK-20261014 Region hub country list. */
.pa-rg-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; }
.pa-rg-card a { display: block; height: 100%; padding: 1.1rem 1.2rem; border: 1px solid rgba(10, 15, 46, .12); border-radius: 12px; color: inherit; text-decoration: none; background: #fff; transition: border-color .2s, box-shadow .2s; }
.pa-rg-card a:hover, .pa-rg-card a:focus-visible { border-color: #000db2; box-shadow: 0 6px 18px rgba(0, 13, 178, .08); }
.pa-rg-card h2 { margin: 0 0 .6rem; }
.pa-rg-card .pa-rg-facts { display: grid; gap: .35rem; margin: 0; }
.pa-rg-card .pa-rg-facts div { display: flex; gap: .5rem; } .pa-rg-card dt { font-size: .72rem; text-transform: uppercase; letter-spacing: .06em; opacity: .7; min-width: 5.5rem; } .pa-rg-card dd { margin: 0; font-size: .9rem; }
@media (prefers-reduced-motion: reduce) { .pa-rg-card a { transition: none; } }

/* PA-CUR-20261015: estimate column fits its cell */
html body .pa-ds-cost__rows--table .pa-ds-money__v--est{white-space:normal;overflow-wrap:anywhere;min-width:0}
html body .pa-ds-cost__rows--table .pa-ds-money{min-width:0}

/* PA-STRIP3 15 Oct 2026: three-item strip fills evenly */
html body .pa-lp-strip:has(>:nth-child(3):last-child){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important}
@media (max-width:767px){html body .pa-lp-strip:has(>:nth-child(3):last-child){grid-template-columns:1fr!important;gap:14px!important}}
