/* Clear subjects, readable proportions and full-size inspection. */
.photo-open{display:block;position:relative;border:0;padding:0;background:#f4f6f3;color:inherit;width:100%;cursor:zoom-in;overflow:hidden;border-radius:0}
.photo-open:hover{filter:none}.photo-open img{transition:transform .2s ease}.photo-open:hover img{transform:scale(1.025)}
.photo-zoom-label{position:absolute;right:9px;bottom:9px;border-radius:4px;background:#fffef4ed;color:#294d3a;box-shadow:0 1px 5px #0001;font-size:10px;padding:4px 7px;pointer-events:none}
.card .photo-open{padding:0;border:0;border-radius:0;width:100%;background:#eff3ee}.card .photo-open img{height:240px;object-fit:cover;display:block;width:100%}
.compact-destinations{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.compact-destinations>a,.compact-destinations>button{display:block}.compact-destinations img{height:215px;object-fit:cover}.compact-destinations>*>div{padding:14px}.compact-destinations h3{font-size:19px}
.destination-photo-card{padding:0;overflow:hidden}.destination-photo-card>img{height:245px;width:100%;object-fit:cover;display:block}.destination-photo-card>.card-content{padding:18px}
.vehicle-row{grid-template-columns:245px minmax(0,1fr) 180px;min-height:220px}.vehicle-photo{min-height:220px;background:#fff}.vehicle-photo .photo-open{height:220px;background:#fff}.vehicle-photo img{height:210px;width:100%;object-fit:contain;padding:10px}.vehicle-photo figcaption{bottom:4px;font-size:8px;background:#ffffffde;max-width:180px}
.vehicle-photo .photo-zoom-label{bottom:22px}.option-photo{padding:12px;min-width:0}.option-photo .photo-open{background:#edf3ee;border-radius:5px}.option-photo img{height:135px;width:100%;object-fit:cover}.route-option{grid-template-columns:minmax(0,1fr) 195px 205px}.option-photo small{font-size:9px;text-align:left}
.option-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:5px}.option-photo-pair .photo-open img{height:120px}.option-photo-pair .photo-zoom-label{font-size:8px;right:3px;bottom:4px;padding:3px}.option-photo-pair+.transport-photo-caption{margin-top:5px}
.route-masthead{background-size:cover;background-position:center 50%}.booking-masthead{background-position:center 57%}.hero{background-position:center 55%}
#photo-viewer{width:min(1050px,95vw);max-width:95vw;max-height:94vh;border:0;border-radius:12px;background:#fafcf9;color:#243e2c;padding:12px;overflow:auto}
#photo-viewer::backdrop{background:#061e18dd}#photo-viewer figure{margin:0}#photo-viewer img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain;border-radius:5px;background:#fff}
#photo-viewer figcaption{font-size:13px;padding:13px 6px 3px}#photo-viewer form{display:flex;justify-content:flex-end;margin-bottom:8px}.photo-close{border:0;border-radius:50%;width:36px;height:36px;background:#e5eee7;color:#26563b;font-size:25px;cursor:pointer}
@media(max-width:1050px){.route-option{grid-template-columns:minmax(0,1fr) 155px 170px}.option-photo{display:flex;padding:8px}.option-photo img{height:115px}.vehicle-row{grid-template-columns:200px minmax(0,1fr)}.vehicle-photo{grid-row:span 2}.compact-destinations img{height:180px}.compact-destinations>*>div{padding:11px}.compact-destinations h3{font-size:17px}.vehicle-book{grid-column:2}}
@media(max-width:700px){.compact-destinations{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px}.compact-destinations>a,.compact-destinations>button{display:block;flex:0 0 78%;scroll-snap-align:start}.compact-destinations img{height:200px}.compact-destinations>*>div{padding:13px}.compact-destinations h3{font-size:19px}.card .photo-open img{height:250px}.destination-photo-card>img{height:220px}.vehicle-row{grid-template-columns:155px minmax(0,1fr)}.vehicle-photo,.vehicle-photo .photo-open{min-height:195px;height:100%}.vehicle-photo img{height:180px;padding:6px}.vehicle-photo figcaption{font-size:7px;max-width:135px}.vehicle-description{padding:13px 11px}.vehicle-description h3{font-size:17px}.vehicle-book{padding:10px}.vehicle-book .primary{font-size:11px}.route-option{grid-template-columns:minmax(0,1fr) 135px}.option-main{grid-column:1;grid-row:1}.option-photo{grid-column:1;grid-row:2;padding:0 11px 12px;display:block}.option-photo .photo-open img{height:120px}.option-photo small{display:block;font-size:8px}.option-action{grid-column:2;grid-row:1/span 2}.option-photo-pair .photo-open img{height:95px}.option-photo-pair+.transport-photo-caption{font-size:8px}.photo-zoom-label{font-size:9px}.route-masthead{background-position:center}.vehicle-photo .photo-zoom-label{bottom:20px}#photo-viewer{padding:9px}#photo-viewer figcaption{font-size:12px}}
@media(prefers-reduced-motion:reduce){.photo-open img{transition:none}}
/* Real Koh Lanta photograph: preserve the bright bay on the right. */
.lanta-home-photo{position:relative;background:#07534d!important;min-height:320px;padding:30px!important;isolation:isolate}.lanta-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;z-index:-2}.lanta-home-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,30,35,.7),rgba(0,30,35,.08) 72%),linear-gradient(0deg,rgba(0,25,30,.5),transparent 50%);z-index:-1}.lanta-home-photo h1{font-size:32px;max-width:620px;text-shadow:0 1px 6px #001c2560}.lanta-home-photo .compact-search{margin-top:70px}.hero-enlarge{position:absolute;top:20px;right:20px;background:#fffef4ed;color:#145242;border:0;border-radius:4px;padding:8px 12px;font:inherit;font-size:11px;cursor:zoom-in}.lanta-home-photo>.eyebrow{padding-right:145px}
@media(max-width:700px){.lanta-home-photo{padding:22px!important;min-height:400px}.lanta-home-photo h1{font-size:27px;padding-top:7px}.lanta-home-photo .compact-search{margin-top:50px}.hero-enlarge{position:relative;top:auto;right:auto;float:right;font-size:9px;padding:6px}.lanta-home-photo>.eyebrow{padding-right:0;font-size:8px;max-width:170px}.lanta-hero-image{object-position:60% center}.lanta-home-photo:before{background:linear-gradient(90deg,#00262c99,#00262c15),linear-gradient(0deg,#00262c99,transparent 70%)}}
@media(min-width:701px){.lanta-hero-image{object-position:center 30%}.lanta-home-photo:before{background:linear-gradient(90deg,rgba(0,30,35,.58),rgba(0,30,35,.02) 72%),linear-gradient(0deg,rgba(0,25,30,.35),transparent 55%)}}
.home-local-services{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.home-local-services article{padding:22px;border:1px solid #d7e4db;border-radius:6px;background:#fff}.home-local-services .home-delivery{background:#eff7ed}.home-local-services .home-map{background:#eaf3f4}.home-local-services h2{font-size:25px;margin:8px 0}.home-local-services p{font-size:14px;line-height:1.6}.home-local-services small{display:block;font-size:10px;line-height:1.6;margin-top:12px;color:#5c7365}.home-local-services .primary{font-size:13px}.app-downloads{display:inline-flex;gap:13px;font-size:12px;margin:12px 0 0 12px}.app-downloads a{color:#0d5c3a}#restored-lanta-map{width:100%;height:850px;border:1px solid #d2dfd7;border-radius:6px;background:#f3f7f4}@media(max-width:700px){.home-local-services{grid-template-columns:1fr}.home-local-services article{padding:18px}.app-downloads{display:flex;margin-left:0}#restored-lanta-map{height:780px}}
