.trip-discovery{padding-top:2.5rem;padding-bottom:4rem}.trip-invitation{max-width:48rem;margin:0 auto 2rem;text-align:center;font-size:clamp(1.1rem,2.4vw,1.45rem);line-height:1.7;color:#e9dfcf}.trip-card{display:grid;grid-template-columns:1.1fr 1fr;max-width:960px;margin:auto;border:1px solid #8f7449;border-radius:18px;overflow:hidden;text-decoration:none;color:inherit;background:#201b29;transition:border-color .25s,transform .25s}.trip-card:hover{border-color:#eac366;transform:translateY(-3px)}.trip-card:focus-visible{outline:3px solid #eac366;outline-offset:5px}.trip-card img{width:100%;height:100%;min-height:290px;object-fit:cover}.trip-card>div{padding:2rem}.trip-card h2{font-size:clamp(1.65rem,3vw,2.25rem);line-height:1.2;margin:.9rem 0}.trip-card p{font-size:1rem;line-height:1.7;color:#cbc4d0}.trip-intro{text-align:center;padding:1.5rem 0}.trip-intro h1{font-size:clamp(2rem,5vw,4rem);line-height:1.15;margin:1rem auto 1.5rem;max-width:900px}.trip-gallery{max-width:1050px;margin:0 auto}.trip-room{background:#090b0d;border:0;border-radius:16px;overflow:hidden;box-shadow:0 24px 70px #0006;perspective:1100px}.trip-room img{display:block;width:100%;height:100%;aspect-ratio:16/10;object-fit:cover}.trip-room.is-ready{position:relative;aspect-ratio:16/10}.trip-room.is-ready img{position:absolute;inset:0;height:100%;opacity:0;visibility:hidden;transform:translateZ(-320px) scale(.88);transition:opacity .8s ease,transform 3.3s cubic-bezier(.16,.55,.34,1),visibility .8s;will-change:transform,opacity}.trip-room.is-ready img.is-active{opacity:1;visibility:visible;transform:translateZ(0) scale(1);z-index:1}.trip-room.is-ready img.is-outgoing{visibility:visible;opacity:0;transform:translateZ(100px) scale(1.02);z-index:2}.trip-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem;margin:1rem 0}.trip-controls[hidden]{display:none}.trip-controls button{min-width:48px;min-height:48px;background:#241f2e;border:1px solid #71624d;border-radius:10px;color:#fff;font:inherit;padding:.6rem 1rem;cursor:pointer}.trip-controls button:hover,.trip-controls button:focus-visible{border-color:#eac366}.trip-controls span{font-size:.9rem;color:#c6bdce;min-width:4rem;text-align:center}.trip-story{max-width:850px;margin:3rem auto 5rem;font-size:1.1rem;line-height:1.85}.trip-lead{font-size:clamp(1.2rem,2.3vw,1.5rem);color:#ece2d1}.trip-story h2{font-size:2rem;margin:2rem 0 1rem}.trip-inclusions{display:grid;grid-template-columns:1fr 1fr;gap:.6rem 2rem;padding-left:1.4rem}.trip-inclusions li::marker{color:#eac366}.trip-note{border-left:2px solid #eac366;padding-left:1rem;color:#c9c0cd;margin:2rem 0}.trip-page .eyebrow{line-height:1.8}.trip-page .service-back{display:inline-block;margin-top:1.5rem}@media(max-width:640px){.trip-card{grid-template-columns:1fr}.trip-card img{min-height:0;max-height:310px;aspect-ratio:4/3}.trip-card>div{padding:1.5rem}.trip-room.is-ready{aspect-ratio:4/5}.trip-inclusions{grid-template-columns:1fr}.trip-story{margin-top:2rem}.trip-controls button{font-size:.95rem;padding:.6rem .7rem}}@media(prefers-reduced-motion:reduce){.trip-room.is-ready img{transition:none;transform:none}.trip-room.is-ready img.is-active,.trip-room.is-ready img.is-outgoing{transform:none}.trip-card{transition:none}.trip-card:hover{transform:none}}

/* Four real programme photos, kept large enough for phone screens. */
.trip-card>div.trip-collage{padding:0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:4px;aspect-ratio:1/1;min-width:0;align-self:stretch;background:#100e16}.trip-collage img{display:block;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;object-fit:cover}.trip-collage img:first-child{object-position:50% 48%}.trip-collage img:last-child{object-position:74% 32%}.trip-photo-caption{font-size:1rem;line-height:1.6;text-align:center;color:#e9dfcf;min-height:3.2em;margin:1rem auto .25rem;max-width:48rem}.trip-card-copy{min-width:0}@media(max-width:640px){.trip-card>div.trip-collage{aspect-ratio:1/1}.trip-collage img{height:100%;max-height:none;aspect-ratio:auto}.trip-card h2{font-size:1.7rem}}

/* Programme cards share the existing responsive layout. */
.trip-card+.trip-card{margin-top:2rem}
.trip-program-card .trip-collage img:last-child{object-position:center}
.trip-program article{margin:1.8rem 0}.trip-program h3{color:var(--gold,#e6c16a);margin-bottom:.4rem}.trip-program p{margin-top:0}

.trip-room img{object-position:var(--photo-position,50% 50%)}
.trip-card-hint{display:inline-block;font-size:.7rem;line-height:1.5;color:var(--theme-muted);margin-left:.35rem;font-weight:400;text-transform:none;letter-spacing:normal}
@media(max-width:640px){.trip-room img{aspect-ratio:4/5;object-position:var(--photo-mobile-position,var(--photo-position,50% 50%))}}

/* Reviewed focal points keep subjects visible in both gallery shapes. */
.trip-discovery .trip-card .trip-collage img{object-position:var(--photo-position,50% 50%)}
:is(.trip-room,.trip-collage) img[src="/assets/james-bond-1.webp"]{--photo-position:50% 43%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/james-bond-2.webp"]{--photo-position:50% 38%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/james-bond-5.webp"]{--photo-position:50% 38%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/james-bond-6.webp"]{--photo-position:70% 42%;--photo-mobile-position:70% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/james-bond-7.webp"]{--photo-position:50% 43%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/james-bond-8.webp"]{--photo-position:50% 57%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/james-bond-10.webp"]{--photo-position:50% 40%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/cheow-lan-5.webp"]{--photo-position:50% 62%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/cheow-lan-6.webp"]{--photo-position:50% 62%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/cheow-lan-10.webp"]{--photo-position:50% 62%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/cheow-lan-11.webp"]{--photo-position:50% 35%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/cheow-lan-13.webp"]{--photo-position:50% 47%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-nayak-1.webp"]{--photo-position:50% 65%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-nayak-2.webp"]{--photo-position:50% 65%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-nayak-3.webp"]{--photo-position:50% 60%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-nayak-4.webp"]{--photo-position:50% 61%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-nayak-6.webp"]{--photo-position:50% 50%;--photo-mobile-position:68% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-lak-trip-1.webp"]{--photo-position:50% 47%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-lak-trip-2.webp"]{--photo-position:50% 48%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-lak-trip-3.webp"]{--photo-position:50% 55%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-lak-trip-4.webp"]{--photo-position:50% 58%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-lak-trip-8.webp"]{--photo-position:50% 60%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-lak-trip-9.webp"]{--photo-position:50% 60%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/khao-lak-trip-15.webp"]{--photo-position:50% 60%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/05_khao-lak-programok_go-kart/khao-lak-programok_go-kart-01.webp"]{--photo-position:50% 58%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/05_khao-lak-programok_go-kart/khao-lak-programok_go-kart-02.webp"]{--photo-position:50% 56%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/05_khao-lak-programok_go-kart/khao-lak-programok_go-kart-03.webp"]{--photo-position:50% 58%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/01_similan/similan-01.webp"]{--photo-position:50% 67%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/02_surin/surin-01.webp"]{--photo-position:50% 50%;--photo-mobile-position:45% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/02_surin/surin-04.webp"]{--photo-position:65% 50%;--photo-mobile-position:65% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/03_phuket-egynapos/phuket-egynapos-01.webp"]{--photo-position:50% 53%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/03_phuket-egynapos/phuket-egynapos-02.webp"]{--photo-position:50% 58%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/03_phuket-egynapos/phuket-egynapos-03.webp"]{--photo-position:50% 64%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/03_phuket-egynapos/phuket-egynapos-04.webp"]{--photo-position:50% 65%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/06_horgaszat/horgaszat-01.webp"]{--photo-position:50% 38%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/06_horgaszat/horgaszat-02.webp"]{--photo-position:50% 48%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/06_horgaszat/horgaszat-03.webp"]{--photo-position:50% 38%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/06_horgaszat/horgaszat-04.webp"]{--photo-position:50% 42%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/06_horgaszat/horgaszat-05.webp"]{--photo-position:50% 60%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/06_horgaszat/horgaszat-06.webp"]{--photo-position:50% 34%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/06_horgaszat/horgaszat-07.webp"]{--photo-position:50% 42%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/06_horgaszat/horgaszat-08.webp"]{--photo-position:50% 42%;--photo-mobile-position:50% 50%}
:is(.trip-room,.trip-collage) img[src="/assets/new-tours/06_horgaszat/horgaszat-09.webp"]{--photo-position:72% 55%;--photo-mobile-position:72% 50%}
