/* DTC Services — clean final corrections (Revision 29)
   Loaded after styles.css so these rules intentionally replace legacy patches. */

/* ---------- clean section boundaries: no cross-section fade bridges ---------- */
.dtc-home-hero::after,
.about-reference-hero::after,
.insights-reference-hero::after,
.article-reference-hero::after,
.programmes-page-hero::after,
.faq-page-hero::after,
.programme-detail-page .programme-detail-hero::after{display:none!important;content:none!important}

/* ---------- ABOUT MAIN ---------- */
/* Keep the three specialist cards ivory and readable. */
.specialise-section .lux-card{
  background:#f3eee4!important;
  background-image:none!important;
  border:1px solid rgba(174,125,37,.24)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.12)!important;
  color:#17191d!important;
}
.specialise-section .lux-card h3{color:#17191d!important;text-shadow:none!important}
.specialise-section .lux-card p{color:#655f57!important;text-shadow:none!important}
.specialise-section .lux-card .num{color:rgba(177,126,34,.33)!important}
.specialise-section .lux-card .icon{background:#111318!important;color:#e5b85d!important}
/* Only this section is left aligned. */
.about-separator-global .about-separator-copy.align-right{margin-left:0!important;margin-right:auto!important;text-align:left!important}
.about-separator-global .about-separator-copy.align-right:before{left:-28px!important;right:auto!important}

/* ---------- ABOUT DETAIL PAGES: rebuilt cards ---------- */
.final-about-card-section,
.final-about-showcase-section{background:#090a0d!important;color:#fff!important;position:relative}
.final-about-card-head{max-width:780px;margin-bottom:38px}
.final-about-card-head h2{color:#fff0dc!important;margin:14px 0 16px;font-size:clamp(2.9rem,5vw,4.7rem)}
.final-about-card-head p{color:#bdb4a8!important;max-width:680px}
.final-about-card-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-rows:minmax(330px,auto) minmax(330px,auto);
  gap:18px;
}
.final-about-card{
  background:#0b0d10!important;
  border:1px solid rgba(230,184,78,.26)!important;
  border-radius:26px!important;
  overflow:hidden!important;
  box-shadow:0 22px 55px rgba(0,0,0,.26)!important;
  display:flex;
  flex-direction:column;
  min-width:0;
}
.final-about-card-1{grid-column:1/span 6;grid-row:1/span 2}
.final-about-card-2{grid-column:7/span 6;grid-row:1}
.final-about-card-3{grid-column:7/span 3;grid-row:2}
.final-about-card-4{grid-column:10/span 3;grid-row:2}
.final-about-card-media{position:relative;overflow:hidden;min-height:190px;background:#101216}
.final-about-card-1 .final-about-card-media{min-height:410px}
.final-about-card-2 .final-about-card-media{min-height:180px}
.final-about-card-media img{width:100%;height:100%;display:block;object-fit:cover;position:absolute;inset:0;filter:none!important}
.final-about-card-body{padding:24px 25px 27px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:#0b0d10!important;flex:1}
.final-about-number{
  display:grid!important;place-items:center!important;width:52px!important;height:52px!important;border-radius:50%!important;
  border:1px solid rgba(236,194,91,.42)!important;background:#111318!important;color:#efc66b!important;
  font:700 .92rem/1 Arial,Helvetica,sans-serif!important;margin:0 0 4px!important;position:static!important
}
.final-about-card h3{color:#fff1de!important;font-size:clamp(1.65rem,2.5vw,2.15rem)!important;margin:0!important;line-height:1.02!important}
.final-about-card p{color:#c9c0b5!important;font-size:.9rem!important;line-height:1.7!important;margin:0!important}
.final-about-card-3 p,.final-about-card-4 p{font-size:.82rem!important}

.final-about-showcase-grid{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:repeat(3,minmax(220px,auto));gap:18px}
.final-about-showcase-card{
  display:flex;flex-direction:column;overflow:hidden;border-radius:24px;background:#0b0d10!important;
  border:1px solid rgba(230,184,78,.24)!important;box-shadow:0 20px 52px rgba(0,0,0,.25)!important
}
.final-about-showcase-main{grid-column:1;grid-row:1/span 3}
.final-about-showcase-side{grid-column:2}
.final-about-showcase-2{grid-row:1}.final-about-showcase-3{grid-row:2}.final-about-showcase-4{grid-row:3}
.final-about-showcase-media{position:relative;min-height:125px;overflow:hidden;background:#101216}
.final-about-showcase-main .final-about-showcase-media{min-height:500px}
.final-about-showcase-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:none!important}
.final-about-showcase-body{background:#0b0d10!important;padding:20px 23px 23px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;flex:1}
.final-about-showcase-main .final-about-showcase-body{padding:28px 30px 31px}
.final-about-showcase-card h2,.final-about-showcase-card h3{color:#fff1de!important;margin:0!important;line-height:1.02!important}
.final-about-showcase-card h2{font-size:clamp(2.2rem,4vw,3.4rem)!important}.final-about-showcase-card h3{font-size:1.55rem!important}
.final-about-showcase-card p{color:#c8beb1!important;line-height:1.65!important;margin:0!important;font-size:.86rem!important}
.about-detail-hero-overlay{background:linear-gradient(90deg,rgba(5,6,8,.52),rgba(5,6,8,.20) 55%,rgba(5,6,8,.08))!important}

/* ---------- PROGRAMMES HUB: three options are visual, not dull ---------- */
.programme-hub-nav{background:#08090b!important}
.programme-hub-nav .container{gap:16px!important}
.programme-hub-nav a{
  min-height:168px!important;border-radius:24px!important;overflow:hidden!important;position:relative!important;
  border:1px solid rgba(232,188,87,.28)!important;box-shadow:0 20px 48px rgba(0,0,0,.25)!important;
  background-color:#0b0d10!important;background-size:cover!important;background-position:center!important;
}
.programme-hub-nav a:nth-child(1){background-image:linear-gradient(90deg,rgba(7,9,12,.88),rgba(7,9,12,.48)),url('programme-hub-explore-airport.png')!important;background-position:center center!important}
.programme-hub-nav a:nth-child(2){background-image:linear-gradient(90deg,rgba(6,18,36,.84),rgba(6,18,36,.36)),url('programme-hub-finder-desk.png')!important;background-position:center center!important}
.programme-hub-nav a:nth-child(3){background-image:linear-gradient(90deg,rgba(6,10,18,.84),rgba(6,10,18,.34)),url('programme-hub-compare-globe.png')!important;background-position:center center!important}
.programme-hub-nav a:before,.programme-hub-nav a:after{display:none!important;content:none!important}
.programme-hub-nav a>span,.programme-hub-nav a>div,.programme-hub-nav a>i{position:relative!important;z-index:2!important}
.programme-hub-nav a>span{background:rgba(7,9,12,.70)!important}
.programme-hub-nav a:hover{transform:translateY(-4px)!important;border-color:rgba(242,203,111,.58)!important}

/* ---------- PROGRAMME FINDER: integrated blue + gold global travel background ---------- */
.programmes-finder-section,.finder-section{background:#07080a!important}
.programmes-finder-section .finder-form-card,
.finder-section .finder-form-card,
.finder-form-card{
  position:relative!important;overflow:hidden!important;color:#f6efe5!important;
  background-image:
    linear-gradient(90deg,rgba(6,16,30,.96) 0%,rgba(8,27,50,.87) 46%,rgba(6,15,27,.52) 100%),
    url('night/finder-global-network.webp')!important;
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
  border:1px solid rgba(232,188,87,.36)!important;border-radius:34px!important;
  box-shadow:0 34px 90px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.05)!important;
}
.finder-form-card:before{
  content:''!important;display:block!important;position:absolute!important;inset:0!important;pointer-events:none!important;
  width:auto!important;height:auto!important;border-radius:inherit!important;background:
  radial-gradient(circle at 76% 30%,rgba(239,196,91,.24) 0 3px,transparent 4px),
  radial-gradient(circle at 84% 54%,rgba(239,196,91,.20) 0 3px,transparent 4px),
  radial-gradient(circle at 66% 68%,rgba(239,196,91,.18) 0 3px,transparent 4px)!important;
  opacity:1!important;mask-image:none!important;-webkit-mask-image:none!important;filter:none!important;z-index:0!important
}
.finder-form-card:after{content:''!important;display:block!important;position:absolute!important;inset:0!important;pointer-events:none!important;background:linear-gradient(118deg,transparent 0 59%,rgba(236,192,88,.05) 59.2% 59.4%,transparent 59.6%)!important;z-index:0!important}
.finder-form-card>*{position:relative!important;z-index:2!important}
.finder-intro h2,.finder-step legend b{color:#fff4e4!important}.finder-intro p,.finder-step legend small{color:#c6bdaf!important}
.finder-step{border-top-color:rgba(237,193,91,.18)!important;background:transparent!important;background-image:none!important}
/* remove the square/pointy parent behind rounded option cards */
.finder-form-card .choice-card,.finder-form-card .choice-pill{
  background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;padding:0!important;overflow:visible!important
}
.finder-form-card .choice-card>span,.finder-form-card .choice-pill>span{
  border-radius:20px!important;border:1px solid rgba(255,255,255,.12)!important;
  background:linear-gradient(145deg,rgba(15,19,27,.94),rgba(10,13,18,.94))!important;
  color:#efe8de!important;box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
}
.finder-form-card .choice-card>span{min-height:132px!important;padding:22px!important}
.finder-form-card .choice-card.compact>span,.finder-form-card .choice-card.choice-tile>span{min-height:90px!important}
.finder-form-card .choice-card b{color:#fff4e5!important}.finder-form-card .choice-card small{color:#aaa298!important}
.finder-form-card .choice-card:hover>span,.finder-form-card .choice-pill:hover>span{border-color:rgba(231,185,79,.48)!important;transform:translateY(-2px)}
.finder-form-card .choice-card input:checked+span,.finder-form-card .choice-pill input:checked+span{
  background:linear-gradient(145deg,rgba(63,45,20,.94),rgba(15,21,29,.96))!important;border-color:#d8a94d!important;
  box-shadow:0 14px 32px rgba(0,0,0,.24),inset 0 0 40px rgba(215,163,53,.08)!important;color:#f8e3a7!important
}
.choice-grid-card-options{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important}
.choice-grid-card-options .choice-card b{font-size:1.18rem!important;text-align:center!important}

/* ---------- COUNTRY PAGES ---------- */
/* Hero photo begins immediately behind the fixed nav; no empty strip. */
.programme-detail-page .site-header{background:linear-gradient(180deg,rgba(7,8,10,.80),rgba(7,8,10,.26))!important;border-bottom:1px solid rgba(255,255,255,.05)!important;box-shadow:none!important}
.programme-detail-page .programme-detail-hero{margin:0!important;padding-top:118px!important;min-height:720px!important;background:#07080a!important}
.programme-detail-page .programme-detail-bg{position:absolute!important;inset:0!important;top:0!important;background-size:cover!important;background-position:center 38%!important;filter:none!important;opacity:1!important}
.programme-detail-page .programme-detail-bg:before{display:none!important;content:none!important}
.programme-detail-page .programme-detail-bg:after{background:linear-gradient(90deg,rgba(5,6,8,.76),rgba(5,6,8,.28) 58%,rgba(5,6,8,.14))!important}
.programme-detail-page .lux-hero:before{display:none!important;content:none!important}
/* One clean night photograph only in Passport & Global Mobility. */
.programme-detail-page .mobility-visual-card{background:#0a0c0f!important;background-image:none!important;isolation:isolate!important}
.programme-detail-page .mobility-visual-card:before{content:''!important;position:absolute!important;inset:14px!important;border:1px solid rgba(234,196,98,.12)!important;border-radius:18px!important;background:none!important;z-index:4!important;pointer-events:none!important}
.programme-detail-page .mobility-visual-image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;opacity:1!important;filter:none!important;z-index:0!important}
.programme-detail-page .mobility-visual-overlay{background:linear-gradient(180deg,rgba(5,6,8,.02) 0%,rgba(5,6,8,.08) 58%,rgba(5,6,8,.64) 100%)!important;z-index:1!important}
.programme-detail-page .mobility-visual-orbit{z-index:2!important;opacity:.7!important}
.programme-detail-page .mobility-visual-badge{z-index:3!important;background:rgba(8,10,13,.88)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

/* ---------- HOW IT WORKS ---------- */
.how-reference-bg{filter:none!important;opacity:1!important;image-rendering:auto!important;transform:none!important;object-position:center top!important}
.how-reference-shade{background:linear-gradient(90deg,rgba(3,5,8,.38),rgba(3,5,8,.08) 48%,rgba(3,5,8,.22)),linear-gradient(180deg,rgba(3,5,8,.04),rgba(3,5,8,.02) 58%,rgba(3,5,8,.30))!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.how-flight-sparks{display:none!important;opacity:0!important;animation:none!important;filter:none!important}
.how-flight-glow{opacity:.07!important;filter:none!important}
.how-reference-route #howFlightPath{filter:drop-shadow(0 0 4px rgba(255,211,113,.62))!important}

@media(max-width:1100px){
  .final-about-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}
  .final-about-card-1,.final-about-card-2,.final-about-card-3,.final-about-card-4{grid-column:auto;grid-row:auto}
  .final-about-card-1 .final-about-card-media{min-height:300px}
  .final-about-showcase-grid{grid-template-columns:1fr;grid-template-rows:auto}
  .final-about-showcase-main,.final-about-showcase-side{grid-column:auto!important;grid-row:auto!important}
  .final-about-showcase-main .final-about-showcase-media{min-height:360px}
  .choice-grid-card-options{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:720px){
  .final-about-card-grid{grid-template-columns:1fr}
  .final-about-card-media,.final-about-card-1 .final-about-card-media{min-height:245px}
  .final-about-showcase-main .final-about-showcase-media{min-height:300px}
  .choice-grid-card-options{grid-template-columns:1fr!important}
  .programme-detail-page .programme-detail-hero{padding-top:110px!important}
  .programme-detail-page .programme-detail-bg{background-position:center!important}
}

/* ---------- REVISION 30: ABOUT DETAIL CARDS use text directly on images ---------- */
.about-detail-page .final-about-card,
.about-detail-page .final-about-showcase-card{
  position:relative!important;
  background:#090b10!important;
  isolation:isolate;
}
.about-detail-page .final-about-card{min-height:340px}
.about-detail-page .final-about-card-1{min-height:678px}
.about-detail-page .final-about-card-2{min-height:330px}
.about-detail-page .final-about-card-3,
.about-detail-page .final-about-card-4{min-height:330px}
.about-detail-page .final-about-showcase-card{min-height:220px}
.about-detail-page .final-about-showcase-main{min-height:714px}

.about-detail-page .final-about-card-media,
.about-detail-page .final-about-showcase-media{
  position:absolute!important;
  inset:0!important;
  min-height:unset!important;
  height:100%!important;
  z-index:0;
}
.about-detail-page .final-about-card-media img,
.about-detail-page .final-about-showcase-media img{
  transform:scale(1.01);
}
.about-detail-page .final-about-card-media::after,
.about-detail-page .final-about-showcase-media::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg, rgba(5,7,10,.06) 0%, rgba(5,7,10,.16) 24%, rgba(5,7,10,.36) 52%, rgba(5,7,10,.92) 100%),
    linear-gradient(90deg, rgba(5,7,10,.45) 0%, rgba(5,7,10,.10) 46%, rgba(5,7,10,.20) 100%);
}
.about-detail-page .final-about-card::before,
.about-detail-page .final-about-showcase-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  z-index:2;
  box-shadow:inset 0 0 0 1px rgba(232,188,87,.22);
}
.about-detail-page .final-about-card-body,
.about-detail-page .final-about-showcase-body{
  position:absolute!important;
  left:0;
  right:0;
  bottom:0;
  z-index:3;
  background:transparent!important;
  padding:28px 28px 30px!important;
  gap:10px;
}
.about-detail-page .final-about-card-3 .final-about-card-body,
.about-detail-page .final-about-card-4 .final-about-card-body,
.about-detail-page .final-about-showcase-side .final-about-showcase-body{
  padding:20px 20px 22px!important;
}
.about-detail-page .final-about-showcase-main .final-about-showcase-body{max-width:72%}
.about-detail-page .final-about-showcase-side .final-about-showcase-body{max-width:90%}
.about-detail-page .final-about-card-1 .final-about-card-body,
.about-detail-page .final-about-card-2 .final-about-card-body{max-width:82%}
.about-detail-page .final-about-card-3 .final-about-card-body,
.about-detail-page .final-about-card-4 .final-about-card-body{max-width:94%}

.about-detail-page .final-about-number{
  position:absolute!important;
  top:22px;
  right:22px;
  left:auto;
  z-index:4;
  margin:0!important;
  box-shadow:0 10px 26px rgba(0,0,0,.22);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.about-detail-page .final-about-card h2,
.about-detail-page .final-about-card h3,
.about-detail-page .final-about-showcase-card h2,
.about-detail-page .final-about-showcase-card h3{
  color:#fff4e6!important;
  text-shadow:0 10px 24px rgba(0,0,0,.42);
}
.about-detail-page .final-about-card p,
.about-detail-page .final-about-showcase-card p{
  color:#f1e5d7!important;
  text-shadow:0 8px 20px rgba(0,0,0,.38);
  max-width:58ch;
}
.about-detail-page .final-about-card .gold-text,
.about-detail-page .final-about-showcase-card .gold-text{color:#efc66b!important}

@media (max-width: 1100px){
  .about-detail-page .final-about-showcase-main .final-about-showcase-body,
  .about-detail-page .final-about-card-1 .final-about-card-body,
  .about-detail-page .final-about-card-2 .final-about-card-body{max-width:100%}
}
@media (max-width: 900px){
  .about-detail-page .final-about-card-1{min-height:420px}
  .about-detail-page .final-about-card,
  .about-detail-page .final-about-showcase-main{min-height:320px}
  .about-detail-page .final-about-showcase-card{min-height:260px}
}
@media (max-width: 640px){
  .about-detail-page .final-about-card,
  .about-detail-page .final-about-showcase-card,
  .about-detail-page .final-about-card-1,
  .about-detail-page .final-about-showcase-main{min-height:280px}
  .about-detail-page .final-about-card-body,
  .about-detail-page .final-about-showcase-body,
  .about-detail-page .final-about-card-3 .final-about-card-body,
  .about-detail-page .final-about-card-4 .final-about-card-body,
  .about-detail-page .final-about-showcase-side .final-about-showcase-body{
    padding:18px 18px 20px!important;
    max-width:100%;
  }
  .about-detail-page .final-about-number{top:16px;right:16px;left:auto;width:46px!important;height:46px!important;font-size:.84rem!important}
}


/* ---------- COUNTRY PAGE PRIVATE CONSULTATION CTA ---------- */
.programme-private-consult-section{background:#07080a!important;padding-top:38px!important;padding-bottom:24px!important}
.programme-private-consult-card{position:relative;display:flex;justify-content:space-between;align-items:center;gap:34px;padding:46px 52px;border-radius:34px;overflow:hidden;border:1px solid rgba(232,188,87,.28);background:radial-gradient(circle at 88% 34%,rgba(239,197,93,.10),transparent 22%),linear-gradient(135deg,#090b0f 0%,#101520 58%,#08090c 100%);box-shadow:0 28px 80px rgba(0,0,0,.26)}
.programme-private-consult-card:before{content:"";position:absolute;right:-120px;top:50%;transform:translateY(-50%);width:430px;height:430px;border-radius:50%;border:1px solid rgba(239,197,93,.12);box-shadow:0 0 0 55px rgba(239,197,93,.035),0 0 0 120px rgba(239,197,93,.018);pointer-events:none}
.programme-private-consult-card>*{position:relative;z-index:2}
.programme-private-consult-card h2{margin:16px 0 16px;color:#fff2df!important;font-size:clamp(2.8rem,5vw,5.5rem)!important;line-height:.98!important;max-width:930px}
.programme-private-consult-card p{margin:0;color:#c9c0b2!important;font-size:1rem!important;max-width:860px}
.programme-private-consult-card .btn{white-space:nowrap;min-width:170px;justify-content:center}
@media (max-width: 980px){.programme-private-consult-card{padding:34px 26px;flex-direction:column;align-items:flex-start}.programme-private-consult-card .btn{width:100%}.programme-private-consult-card:before{right:-160px;width:340px;height:340px}}
@media (max-width: 640px){.programme-private-consult-card h2{font-size:clamp(2.2rem,11vw,3.4rem)!important}.programme-private-consult-card p{font-size:.94rem!important}}


/* =========================================================
   REVISION 35 — final user-requested programme finder / insights polish
   ========================================================= */

/* Programme Finder: use the user-selected image, no blue tint, no contain borders. */
.programme-hub-nav a:nth-child(2){
  background-image:
    linear-gradient(90deg,rgba(5,5,6,.66) 0%,rgba(5,5,6,.34) 42%,rgba(5,5,6,.08) 100%),
    url('programme-hub-finder-user.png')!important;
  background-size:cover!important;
  background-position:center 52%!important;
  background-repeat:no-repeat!important;
  background-color:#0a0a0b!important;
  border-color:rgba(232,188,87,.30)!important;
}
.programme-hub-nav a:nth-child(2):before,
.programme-hub-nav a:nth-child(2):after{display:none!important;content:none!important;background:none!important;box-shadow:none!important}
.programme-hub-nav a:nth-child(2)>div{max-width:none!important}
.programme-hub-nav a:nth-child(2) b{white-space:nowrap!important}

/* Insights source buttons: multiple official-source links per card. */
.insight-source-note{margin-top:14px;color:#8f8981!important;font-size:.62rem!important;line-height:1.45!important}
.insight-source-links{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:8px}
.insights-reference-card .insight-source-links a{margin-top:0!important;color:#e8b958!important;font-size:.66rem!important;font-weight:700}

@media(max-width:760px){
  .programme-hub-nav a:nth-child(2) b{white-space:normal!important}
  .programme-hub-nav a:nth-child(2){background-position:center center!important}
}


/* =========================================================
   REVISION 53 — Step 08 uses full-image background
   ========================================================= */
.how-stage-8{
  left:34.8%!important;
  top:93.0%!important;
  width:min(30%,378px)!important;
  max-width:378px!important;
  padding:0!important;
  border-left:0!important;
  background:none!important;
  transform:none!important;
}
.how-stage-8.is-active{
  transform:translateX(3px)!important;
}
.how-stage-8 .how-finale-card{
  position:relative;
  display:block;
  overflow:hidden;
  min-height:176px;
  padding:18px 20px 18px;
  border:1px solid rgba(232,183,71,.34);
  border-radius:22px;
  background-image:
    linear-gradient(90deg,rgba(7,11,18,.94) 0%,rgba(7,11,18,.90) 32%,rgba(7,11,18,.70) 54%,rgba(7,11,18,.30) 100%),
    radial-gradient(circle at 88% 20%,rgba(239,197,93,.14),transparent 24%),
    url('how-step8-full-background.png');
  background-size:cover,cover,cover;
  background-position:center,center,center right;
  box-shadow:0 18px 42px rgba(0,0,0,.26),inset 0 0 0 1px rgba(255,239,198,.02);
}
.how-stage-8 .how-finale-card:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0));
  pointer-events:none;
}
.how-stage-8 .how-finale-copy{position:relative;z-index:2;max-width:58%}
.how-stage-8 b{font-size:2.2rem!important;line-height:.88!important}
.how-stage-8 h3{font-size:1.54rem!important;margin:6px 0 5px!important;line-height:1.02!important}
.how-stage-8 p{font-size:.82rem!important;line-height:1.48!important;max-width:28ch!important;margin:0!important}

.how-finale-visual,.how-finale-photo{display:none!important}
@media(max-width:1100px){
  .how-stage-8{left:34.5%!important;top:93.2%!important;width:35%!important;transform:none!important}
  .how-stage-8.is-active{transform:translateX(3px)!important}
}
@media(max-width:820px){
  .how-stage-8{left:33.5%!important;top:93.4%!important;width:40%!important;transform:none!important}
  .how-stage-8.is-active{transform:translateX(2px)!important}
  .how-stage-8 .how-finale-card{min-height:164px;padding:16px 18px 14px}
  .how-stage-8 .how-finale-copy{max-width:62%!important}
}
@media(max-width:620px){
  .how-stage-8{left:32%!important;top:93.6%!important;width:46%!important;transform:none!important}
  .how-stage-8.is-active{transform:none!important}
  .how-stage-8 .how-finale-card{min-height:154px;padding:15px 14px 14px}
  .how-stage-8 .how-finale-copy{max-width:100%!important}
  .how-stage-8 p{max-width:none!important}
}

/* =========================================================
   REVISION 57 — related programme image consistency + finder subtitle readability
   ========================================================= */

/* Country pages: use the same clean destination images seen on the Programmes page.
   This avoids the more layered visuals in the "Other public programmes" section. */
.related-programmes .related-programme-card > div{
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}

/* Programme Finder card: deepen the left-side shade and lift subtitle contrast
   so "Build a shortlist around your priorities" stays clearly readable. */
.programme-hub-nav a:nth-child(2){
  background-image:
    linear-gradient(90deg,rgba(5,5,6,.82) 0%,rgba(5,5,6,.60) 38%,rgba(5,5,6,.20) 72%,rgba(5,5,6,.08) 100%),
    url('programme-hub-finder-user.png')!important;
}
.programme-hub-nav a:nth-child(2) small{
  color:#ece6dc!important;
  text-shadow:0 2px 14px rgba(0,0,0,.72)!important;
}
.programme-hub-nav a:nth-child(2) b{
  text-shadow:0 3px 18px rgba(0,0,0,.48)!important;
}

/* =========================================================
   REVISION 60 — confirmed DTC Consultancy logo
   ========================================================= */
.site-header .brand{
  gap:0!important;
  min-width:150px;
}
.site-header .brand img{
  width:148px!important;
  height:64px!important;
  max-height:64px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:drop-shadow(0 8px 20px rgba(0,0,0,.34))!important;
}
.site-header .brand-copy{display:none!important}
.footer-brand img{
  width:190px!important;
  height:auto!important;
  object-fit:contain!important;
}
@media(max-width:980px){
  .site-header .brand{min-width:118px}
  .site-header .brand img{width:118px!important;height:54px!important;max-height:54px!important}
}
@media(max-width:620px){
  .site-header .brand{min-width:102px}
  .site-header .brand img{width:102px!important;height:48px!important;max-height:48px!important}
  .footer-brand img{width:165px!important}
}

/* =========================================================
   REVISION 62 — mobile/tablet responsive refinement
   Desktop/laptop layout remains unchanged above 980px.
   ========================================================= */
@media(max-width:980px){
  html,body{max-width:100%;overflow-x:hidden}
  .container{width:min(100% - 30px,1280px)!important}
  .section{padding-top:72px!important;padding-bottom:72px!important}
  .section-sm{padding-top:54px!important;padding-bottom:54px!important}

  /* Keep tablet typography balanced rather than desktop-sized. */
  .programme-head,.home-process-heading,.mobility-heading,.insights-editorial-head,
  .comparison-title,.faq-page-intro{max-width:100%!important}
  .programme-head,.home-process-heading,.mobility-heading,.insights-editorial-head{
    display:grid!important;grid-template-columns:1fr!important;gap:18px!important;align-items:start!important
  }
  .programme-head p,.home-process-heading p,.mobility-heading>p,.insights-editorial-head>p{padding:0!important;margin:0!important;max-width:720px!important}

  /* Main content grids */
  .programme-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
  .programme-card{grid-column:auto!important;transform:none!important}
  .about-feature-grid,.insights-reference-grid,.programme-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .related-programmes{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .home-process-journey{grid-template-columns:repeat(2,minmax(0,1fr))!important;min-height:0!important;gap:14px!important;padding-top:0!important}
  .home-process-line{display:none!important}
  .home-process-step{align-self:stretch!important;min-height:0!important}

  /* Forms and comparison areas */
  .finder-form-card{padding:32px 24px!important;border-radius:26px!important}
  .comparison-shell{padding:20px!important;border-radius:26px!important}
  .comparison-selectors{grid-template-columns:1fr!important;gap:12px!important;align-items:stretch!important}
  .selector-vs{margin:0 auto!important}
  .comparison-sticky-head{display:none!important}
  .comparison-row{grid-template-columns:1fr!important}
  .comparison-label,.comparison-value{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
  .comparison-value small{display:block!important}
  .comparison-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}

  /* Footer */
  .footer-grid{grid-template-columns:1fr!important;gap:42px!important}
  .footer-bottom{flex-direction:column!important;align-items:flex-start!important;margin-top:38px!important}
}

@media(max-width:680px){
  .container{width:min(100% - 24px,1280px)!important}
  .section{padding-top:54px!important;padding-bottom:54px!important}
  .section-sm{padding-top:44px!important;padding-bottom:44px!important}

  /* Header/navigation */
  .site-header{padding:7px 0!important}
  .nav{min-height:54px!important;gap:12px!important}
  .site-header .brand{min-width:96px!important}
  .site-header .brand img{width:96px!important;height:44px!important;max-height:44px!important}
  .menu-toggle{width:40px!important;height:40px!important;flex-basis:40px!important}
  .nav-links{inset:66px 10px auto 10px!important;max-height:calc(100dvh - 78px)!important;padding:10px!important}
  .nav-links a:not(.btn){padding:11px 10px!important;font-size:.86rem!important}
  .nav-links .btn{min-height:44px!important;padding:0 15px!important;font-size:.72rem!important}

  /* Buttons stay comfortable but not oversized. */
  .btn{min-height:44px!important;padding:0 17px!important;font-size:.7rem!important}
  .hero-actions,.programme-detail-actions{gap:9px!important}

  /* HOME + PROGRAMMES + FAQ hero images become a dedicated full-image band.
     This lets the whole hero artwork be visible on narrow screens instead of being heavily cropped. */
  .dtc-home-hero,.page-overlay-hero{
    display:block!important;min-height:0!important;padding:74px 0 0!important;background:#07080a!important
  }
  .dtc-home-hero:before,.page-overlay-hero:before{display:none!important;content:none!important}
  .dtc-hero-bg,.hero-bg-image{
    position:relative!important;inset:auto!important;width:100%!important;height:auto!important;
    aspect-ratio:16/9!important;background:#07080a!important;overflow:hidden!important
  }
  .dtc-hero-bg img,.hero-bg-image img{
    width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#07080a!important
  }
  .dtc-home-hero-inner,.overlay-hero-content{
    display:block!important;min-height:0!important;padding:30px 0 48px!important
  }
  .dtc-home-hero-copy,.overlay-hero-copy{max-width:none!important;padding:0!important}
  .dtc-home-hero-copy h1,.overlay-hero-copy h1,
  .programmes-page-hero .overlay-hero-copy h1,.faq-page-hero .overlay-hero-copy h1{
    font-size:clamp(2.65rem,13vw,3.55rem)!important;line-height:.95!important;letter-spacing:-.035em!important;margin:0 0 16px!important
  }
  .dtc-home-hero-copy p,.overlay-hero-copy p{font-size:.9rem!important;line-height:1.62!important}
  .hero-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important;margin-top:22px!important}
  .hero-actions .btn{width:100%!important;justify-content:center!important}

  /* About, Insights and article heroes use the same mobile image-first treatment. */
  .about-reference-hero,.insights-reference-hero,.article-reference-hero,
  .about-detail-reference-hero{
    display:block!important;min-height:0!important;padding:74px 0 0!important;background:#07080a!important
  }
  .about-reference-bg,.insights-reference-bg,.article-reference-bg,.about-detail-hero-bg{
    position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;
    aspect-ratio:16/9!important;object-fit:contain!important;object-position:center!important;background:#07080a!important;filter:none!important
  }
  .about-reference-overlay,.insights-reference-overlay,.article-reference-overlay,.about-detail-hero-overlay{display:none!important}
  .about-reference-copy,.insights-reference-copy,.article-reference-copy,
  .about-detail-reference-hero .container{padding-top:30px!important;padding-bottom:48px!important;max-width:none!important}
  .about-reference-copy h1,.insights-reference-copy h1,.article-reference-copy h1,
  .about-detail-reference-hero h1{
    font-size:clamp(2.55rem,12vw,3.45rem)!important;line-height:.98!important;margin:12px 0 16px!important
  }
  .about-reference-copy p,.insights-reference-copy p,.article-reference-copy p,
  .about-detail-reference-hero p{font-size:.9rem!important;line-height:1.65!important}

  /* Country/programme hero: image first, text second, no crop. */
  .programme-detail-page .programme-detail-hero{
    display:block!important;min-height:0!important;padding:74px 0 0!important;background:#07080a!important
  }
  .programme-detail-page .programme-detail-bg{
    position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;
    background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;background-color:#07080a!important;filter:none!important
  }
  .programme-detail-page .programme-detail-bg:after{display:none!important;content:none!important}
  .programme-detail-page .programme-detail-hero-inner{display:block!important;padding-top:28px!important;padding-bottom:48px!important}
  .programme-detail-hero h1{font-size:clamp(2.7rem,12vw,3.75rem)!important;line-height:.95!important;margin:11px 0 8px!important}
  .programme-type-line{font-size:1.45rem!important;margin-bottom:14px!important}
  .programme-detail-hero p{font-size:.88rem!important;line-height:1.62!important}
  .programme-detail-actions{display:grid!important;grid-template-columns:1fr!important;margin-top:20px!important}
  .programme-detail-actions .btn{width:100%!important;min-width:0!important;justify-content:center!important}

  /* Contact hero/background image also becomes fully visible. */
  .consultation-page{padding:74px 0 54px!important;min-height:0!important;overflow:hidden!important}
  .consultation-bg{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;background:#07080a!important}
  .consultation-bg img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;filter:none!important;background:#07080a!important}
  .consultation-overlay{display:none!important}
  .consultation-centered{padding-top:28px!important}
  .consultation-heading h1{font-size:clamp(2.55rem,12vw,3.5rem)!important;line-height:.98!important}
  .consult-simple-card{padding:22px 16px!important;border-radius:22px!important}
  .form-grid,.consult-simple-grid{grid-template-columns:1fr!important}

  /* Home content */
  .home-programme-preview,.home-process-heading{gap:20px!important}
  .home-featured-programmes,.programme-grid,.about-feature-grid,.insights-reference-grid,
  .programme-why-grid,.related-programmes,.programme-faq-grid,.mobility-stat-grid,
  .insight-feature-grid,.insights-topic-grid,.about-principles-grid{
    grid-template-columns:1fr!important
  }
  .home-featured-card{min-height:300px!important;padding-top:165px!important}
  .home-featured-card img{height:160px!important}
  .home-process-journey{grid-template-columns:1fr!important;gap:10px!important}
  .home-process-step{padding:20px 18px!important}

  /* Programme cards and hub options */
  .programme-hub-nav .container{grid-template-columns:1fr!important;gap:10px!important;padding:12px 0 18px!important}
  .programme-hub-nav a{min-height:112px!important;padding:16px!important;border-radius:18px!important;grid-template-columns:42px 1fr auto!important;gap:11px!important}
  .programme-hub-nav a>span{width:42px!important;height:42px!important;font-size:.78rem!important}
  .programme-hub-nav b{font-size:1.25rem!important;line-height:1.05!important}
  .programme-hub-nav small{font-size:.64rem!important;line-height:1.4!important;margin-top:5px!important}
  .programme-card{padding:11px!important;border-radius:20px!important;gap:13px!important}
  .programme-media{height:190px!important;border-radius:15px!important}
  .programme-card-copy{padding:0 7px 9px!important}
  .programme-card h3{font-size:2rem!important;margin:7px 0!important}
  .programme-card p{font-size:.8rem!important;line-height:1.55!important;margin-bottom:13px!important}

  /* Finder: smaller choices and spacing so options do not feel enlarged. */
  .finder-shell{width:100%!important}
  .finder-form-card{padding:22px 14px!important;border-radius:22px!important}
  .finder-intro h2{font-size:clamp(2.2rem,10vw,3rem)!important;line-height:1.02!important}
  .finder-intro p{font-size:.83rem!important;line-height:1.58!important}
  .finder-progress{margin:24px 0 10px!important}
  .finder-progress-dots small{font-size:.5rem!important}
  .finder-step{padding-top:24px!important}
  .finder-step legend{gap:10px!important}
  .finder-step legend>span{font-size:1.7rem!important}
  .choice-grid,.choice-grid-3,.choice-grid-region,.choice-grid-card-options{grid-template-columns:1fr!important;gap:9px!important}
  .finder-form-card .choice-card>span{min-height:74px!important;padding:15px 16px!important;border-radius:15px!important}
  .finder-form-card .choice-card.compact>span,.finder-form-card .choice-card.choice-tile>span{min-height:58px!important;padding:13px 15px!important}
  .finder-form-card .choice-card b{font-size:.84rem!important}
  .finder-form-card .choice-card small{font-size:.68rem!important;line-height:1.4!important}
  .finder-wizard-actions{gap:8px!important;margin-top:20px!important}
  .finder-wizard-actions .btn{min-width:0!important}

  /* Comparison */
  .comparison-shell{padding:14px!important;border-radius:20px!important;margin-top:28px!important}
  .compare-selector-card{min-width:0!important}
  .compare-selector-image{min-height:190px!important;height:190px!important}
  .comparison-row{border-bottom:1px solid rgba(255,255,255,.08)!important}
  .comparison-label,.comparison-value{padding:13px 14px!important;font-size:.72rem!important}

  /* Country pages */
  .country-facts-reference{padding:22px 18px!important;min-height:0!important}
  .country-facts-grid{grid-template-columns:1fr 1fr!important;gap:16px 12px!important}
  .country-facts-art{display:none!important}
  .programme-why-heading h3{font-size:clamp(2.2rem,10vw,3rem)!important}
  .programme-reason-card.programme-reason-image{min-height:300px!important;padding:184px 18px 20px!important}
  .programme-visual-break{min-height:360px!important;padding:46px 0!important;background-position:center!important}
  .related-programme-card>div{height:175px!important}
  .programme-private-consult-card{padding:28px 20px!important;border-radius:24px!important}
  .programme-private-consult-card h2{font-size:clamp(2.15rem,10vw,3rem)!important}
  .programme-private-consult-card .btn{width:100%!important}

  /* About cards */
  .about-feature-card{min-height:255px!important;border-radius:18px!important}
  .about-feature-copy{padding:24px 20px!important}
  .about-feature-copy h3{font-size:1.8rem!important}
  .about-feature-copy p{font-size:.82rem!important;line-height:1.55!important}
  .final-about-card-grid,.final-about-showcase-grid{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto!important;gap:14px!important}
  .final-about-card,.final-about-card-1,.final-about-card-2,.final-about-card-3,.final-about-card-4,
  .final-about-showcase-card,.final-about-showcase-main,.final-about-showcase-side,
  .final-about-showcase-2,.final-about-showcase-3,.final-about-showcase-4{
    grid-column:auto!important;grid-row:auto!important;min-height:0!important
  }
  .final-about-card-media,.final-about-card-1 .final-about-card-media,.final-about-card-2 .final-about-card-media,
  .final-about-showcase-media,.final-about-showcase-main .final-about-showcase-media{min-height:210px!important}

  /* Insights + FAQ */
  .insights-reference-card img{height:190px!important}
  .insights-reference-card>div{padding:18px!important}
  .insights-reference-card h3{font-size:1.7rem!important}
  .insights-filter-row{gap:7px!important}
  .insights-filter-row button{padding:8px 12px!important;font-size:.6rem!important}
  .faq-topic-nav{display:flex!important;overflow-x:auto!important;gap:8px!important;padding-bottom:4px!important;scrollbar-width:none}
  .faq-topic-nav::-webkit-scrollbar{display:none}
  .faq-topic-nav a{flex:0 0 auto!important;white-space:nowrap!important}
  .faq-category{margin-top:36px!important}
  .faq-category-head span{font-size:1.7rem!important}
  .faq-q{padding:17px 16px!important;gap:12px!important;font-size:.86rem!important}
  .faq-a p{padding:0 16px 18px!important;font-size:.8rem!important;line-height:1.6!important}

  /* How It Works gets a true mobile layout rather than squeezing the desktop flight path. */
  .how-reference-scene{min-height:0!important;padding:96px 0 52px!important;overflow:hidden!important}
  .how-reference-bg{object-position:center top!important;opacity:.34!important}
  .how-reference-shade{background:linear-gradient(180deg,rgba(3,5,8,.68),rgba(3,5,8,.94))!important}
  .how-reference-intro h1{font-size:clamp(2.7rem,12vw,3.65rem)!important;line-height:.96!important}
  .how-reference-intro p{font-size:.88rem!important}
  .how-reference-route-wrap{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;min-height:0!important;margin:36px 0 0!important}
  .how-reference-route{display:none!important}
  .how-stage,.how-stage-1,.how-stage-2,.how-stage-3,.how-stage-4,.how-stage-5,.how-stage-6,.how-stage-7,.how-stage-8{
    position:relative!important;left:auto!important;top:auto!important;width:100%!important;max-width:none!important;
    transform:none!important;display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:12px!important;
    padding:18px!important;margin:0!important;border:1px solid rgba(232,188,87,.20)!important;border-radius:18px!important;
    background:rgba(8,10,13,.78)!important
  }
  .how-stage.is-active,.how-stage-8.is-active{transform:none!important}
  .how-stage-node{width:42px!important;height:42px!important;box-shadow:none!important}
  .how-stage b{font-size:1.55rem!important;line-height:1!important}
  .how-stage h3{font-size:1.25rem!important;margin:5px 0!important}
  .how-stage p{font-size:.78rem!important;line-height:1.55!important;margin:0!important}
  .how-stage-8{padding:0!important;grid-template-columns:44px minmax(0,1fr)!important;background:transparent!important;border:0!important;align-items:start!important}
  .how-stage-8 .how-stage-node{margin-top:16px!important}
  .how-stage-8 .how-finale-card{min-height:190px!important;padding:20px 18px!important;border-radius:18px!important;background-position:center,center,center right!important}
  .how-stage-8 .how-finale-copy{max-width:66%!important}
  .how-stage-8 h3{font-size:1.28rem!important}
  .how-reference-close{padding:44px 0 56px!important}

  /* Footer */
  .footer{padding:52px 0 22px!important}
  .footer-grid{gap:32px!important}
  .footer-brand{display:block!important}
  .footer-brand img{width:150px!important;margin-bottom:16px!important}
  .footer h4{font-size:1.6rem!important}
  .footer-links{grid-template-columns:1fr 1fr!important;gap:11px 18px!important}
  .footer-links a{font-size:.76rem!important}
  .footer-bottom{font-size:.64rem!important;gap:8px!important}
}
