/* Destination-led presentation: local images, progressively enhanced motion. */
.visual-intro{position:relative;isolation:isolate;max-width:none;width:100%;padding:100px max(32px,calc((100vw - 1180px)/2));gap:60px;min-height:620px;overflow:hidden}
.visual-intro::before{content:'';position:absolute;inset:0;z-index:-2;background:url('assets/destinations/thailand-ltr.webp') center 52%/cover no-repeat}
.visual-intro::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,13,27,.95),rgba(7,13,27,.70) 55%,rgba(7,13,27,.28)),linear-gradient(0deg,#0a0e1a,transparent 40%)}
.visual-intro .lead{color:#e0e6f0;max-width:560px}.visual-intro h1{text-wrap:balance;text-shadow:0 3px 22px #0005}
.visual-intro .starting{background:rgba(13,23,42,.86);backdrop-filter:blur(12px);box-shadow:0 20px 70px #0003;border-radius:12px}
.topics{background:#101929}.topics span::before{content:'◆';font-size:.6rem;color:var(--gold);margin-right:12px}
.programs{padding-top:55px}.programs>.immigration-subnav{background:none;border-top:0;margin-bottom:55px}.immigration-subnav a{min-height:48px;transition:color .2s,border-color .2s}
.programs h2{max-width:760px;text-wrap:balance}.filters{padding:14px 0;border-block:1px solid var(--line);gap:8px}
.filters button{border-radius:24px;border-color:transparent;background:#152039}.filters button:hover{background:#253652}.filters button[aria-pressed=true]{background:#c9a962;color:#0a0e1a;border-color:#c9a962}
.programme-grid{gap:26px}.program-card{padding:0!important;overflow:hidden;border:1px solid #30415c;border-radius:12px;background:#121d30;box-shadow:0 10px 35px #0001;transition:transform .25s,border-color .25s,box-shadow .25s}
.destination-visual{display:block;position:relative;aspect-ratio:3/2;overflow:hidden;background:#23334c}.destination-visual::after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(6,15,29,.85))}
.destination-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.65,.3,1)}
.destination-name{position:absolute;z-index:1;left:24px;right:24px;bottom:20px;display:flex;justify-content:space-between;align-items:center;font-size:1.45rem;font-weight:500;color:white}.destination-name>span{font-size:.72rem;letter-spacing:.15em;border:1px solid #ffffff60;border-radius:4px;padding:3px 8px}
.program-summary{padding:24px;display:flex;flex:1;flex-direction:column}.program-summary>.tag{margin:0;align-self:start;color:#dfc991;border:0;padding:0;font-size:.8rem;letter-spacing:.08em}.program-summary h3{margin:14px 0 13px;font-size:1.3rem}.program-summary>p{font-size:.95rem;line-height:1.8}.program-actions{padding-top:16px}.program-actions .text-link{justify-content:space-between;text-decoration:none;color:#e2c992}.program-actions .text-link span{font-size:1.3rem}
.program-card:focus-within{border-color:#dfc991}.program-summary h3 a:focus-visible{outline-offset:3px}
@media(hover:hover){.program-card:hover{transform:translateY(-5px);border-color:#9b895e;box-shadow:0 18px 38px #0003}.program-card:hover .destination-visual img{transform:scale(1.045)}.starting a:hover{color:#ead2a0}.insight-card:hover{border-color:#9b895e}}
.destination-banner{position:relative;margin:0 0 38px;overflow:hidden;aspect-ratio:3/1;border-radius:12px;background:#1b2941}.destination-banner img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 53%}.destination-banner figcaption{position:absolute;bottom:12px;right:14px;background:#0a1427cc;border-radius:4px;color:#e0e6ef;padding:4px 9px;font-size:.7rem}
.detail-hero{padding-top:30px}.detail-hero .breadcrumb{margin-bottom:24px}.detail-hero .fact-strip{background:#111c30;border-radius:8px;padding-inline:24px}.reading-nav a.is-reading{color:#e2c992}.reading-nav a{transition:color .2s}
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:15;border:1px solid #8a7850;background:#142139;color:#e8d4aa;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font-size:1.3rem;box-shadow:0 6px 25px #0004}.back-to-top[hidden]{display:none}.back-to-top:focus-visible{outline:3px solid #81e4ee;outline-offset:3px}
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:50;background:#c9a962;transform:scaleX(0);transform-origin:left;pointer-events:none}
.insight-card{transition:border-color .25s}.steps li{position:relative}.steps .index{display:inline-grid;place-items:center;border:1px solid #6c6048;border-radius:50%;width:44px;height:44px;background:#202b3e}
@media(min-width:761px){.reading-nav{top:112px}.reveal-visible{animation:arrive .55s ease both}@keyframes arrive{from{opacity:.55;transform:translateY(12px)}to{opacity:1;transform:none}}}
@media(max-width:1000px){.visual-intro{gap:32px;padding:70px 24px;min-height:540px}.programme-grid{gap:18px}}
@media(max-width:760px){.visual-intro{padding:45px 20px;min-height:0}.visual-intro::after{background:linear-gradient(180deg,#091323df,#091323c9 60%,#0a0e1a)}.visual-intro .starting{backdrop-filter:none}.programs>.immigration-subnav{margin-bottom:32px}.programs{padding-top:30px}.immigration-subnav .wrap{gap:18px;justify-content:space-between}.immigration-subnav a{font-size:.8rem}.program-summary{padding:22px}.destination-banner{aspect-ratio:3/2;margin-bottom:25px}.detail-hero .fact-strip{padding-inline:18px}.back-to-top{right:14px;bottom:16px;width:44px;height:44px}.reading-nav{border-left:0;padding:16px;background:#131f34;border-radius:8px}.filters button{font-size:.8rem;padding:8px 12px}.head{padding-bottom:0}.detail-hero{padding-top:22px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:760px){.head{display:flex;flex-wrap:nowrap;gap:12px;min-height:72px;padding-block:10px}.head .brand{margin-right:auto;flex-shrink:0}.head nav{display:flex!important;min-height:0;margin:0;flex-shrink:0}.head .language{margin:0}.head nav a{font-size:.8rem}.head>.button{padding:9px 11px}.head img{width:90px}.reading section{scroll-margin-top:100px}html{scroll-padding-top:95px}}
