/* A single cinematic canvas, with a shared deep-teal dissolve at the seam. */
.signature-hero{border-radius:28px 28px 0 0;background:#102d30;overflow:hidden}
.signature-hero::after{inset:auto 0 0;height:115px;z-index:1;background:linear-gradient(transparent,#102d30);pointer-events:none}
.signature-bottom{z-index:3}
.room-showcase{margin:0 18px;border-radius:0 0 28px 28px;background:#102d30;overflow:hidden;--chapter-enter:0}
.room-showcase::before{content:"";position:absolute;inset:0 0 auto;height:170px;z-index:2;pointer-events:none;background:linear-gradient(#102d30,rgba(16,45,48,.72) 22%,transparent)}
.room-showcase video{transform:scale(calc(1.035 - var(--chapter-enter)*.035));transform-origin:50% 35%}
.showcase-copy{transform:translate3d(0,calc((1 - var(--chapter-enter))*20px),0)}
.showcase-progress{opacity:.45}
.booking-date{position:relative;display:block;margin-top:6px;min-width:0;text-transform:none;letter-spacing:0}
.hero-reservation .booking-date input{display:block;width:100%;margin:0;color:transparent;caret-color:transparent;cursor:pointer;min-height:48px}
.booking-date input::-webkit-datetime-edit{color:transparent}
.booking-date input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer}
.date-display{position:absolute;left:12px;right:36px;top:50%;transform:translateY(-50%);pointer-events:none;font-size:15px;line-height:1.3;color:#193f38;white-space:nowrap}
.date-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;pointer-events:none;color:#32665b}
.booking-date:focus-within{border-radius:9px;outline:2px solid #128277;outline-offset:3px}
.booking-date input:focus-visible{color:#193f38;caret-color:auto}
.booking-date input:focus-visible::-webkit-datetime-edit{color:#193f38}
.booking-date input:focus-visible~.date-display{visibility:hidden}
.reservation-heading .free-transfer-badge{display:flex;align-items:center;gap:9px;text-decoration:none;color:#115f50;background:#e7f5ee;border:1px solid #c9e6d7;border-radius:13px;padding:8px 12px;flex-shrink:0}
.free-transfer-badge>svg{width:23px;height:23px;flex-shrink:0}
.reservation-heading .free-transfer-badge span{display:grid;gap:2px;color:inherit}
.free-transfer-badge b{font-size:12px;line-height:1.3;letter-spacing:0;font-weight:700}
.free-transfer-badge small{font-size:10px;line-height:1.4}
.display-settings{position:relative;flex-shrink:0}
.display-settings summary{display:grid;place-items:center;list-style:none;width:36px;height:36px;cursor:pointer;border:1px solid #cadcd4;border-radius:50%;background:#ffffffa8;color:#183e34}
.display-settings summary::-webkit-details-marker{display:none}
.display-settings svg{width:19px;height:19px}
.display-settings circle{fill:#f8fbf9}
.display-settings>div{position:absolute;right:0;top:calc(100% + 12px);width:230px;padding:17px;background:#fff;border:1px solid #dbe7df;border-radius:17px;box-shadow:0 18px 60px #102d3030;display:grid;gap:12px;z-index:20;color:#173f35}
.display-settings strong{font-size:13px}
.display-settings .motion-switch{color:#173f35;border:1px solid #b6cfc3;background:#edf6ef;font-size:12px;padding:12px}
.transfer-heading{grid-column:1;grid-row:1}
.transfer-form{grid-column:2;grid-row:1}
.transfer-vehicle-gallery{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:36px}
.transfer-vehicle-heading{grid-column:1/-1;max-width:700px}
.transfer-vehicle-heading h3{font-size:clamp(26px,3vw,42px);line-height:1.2;letter-spacing:-.04em;margin:12px 0}
.transfer-vehicle-heading>p:last-child{font-size:15px;line-height:1.7;color:#4b655a}
.transfer-vehicle-gallery figure{margin:0;border:1px solid #dbe3d9;border-radius:22px;overflow:hidden;background:#f3f2ea}
.transfer-vehicle-gallery img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.transfer-vehicle-gallery figcaption{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;font-size:18px;gap:12px}
.transfer-vehicle-gallery figcaption span{font-size:11px;letter-spacing:.12em;border:1px solid #c2d3c4;border-radius:30px;padding:5px 9px}
.service-photo-0{background-image:url('/assets/fleet/transfer-van.webp');background-size:cover;background-position:center}
.archive-note a{text-underline-offset:3px}
@media(max-width:850px){.room-showcase{margin-left:12px;margin-right:12px}.transfer-heading,.transfer-form,.transfer-vehicle-gallery{grid-column:1;grid-row:auto}.transfer-heading{order:0}.transfer-form{order:1}.transfer-vehicle-gallery{order:2}}
@media(max-width:1000px){.reservation-heading{gap:10px}.reservation-heading strong{font-size:19px}.free-transfer-badge b{font-size:11px}}
@media(max-width:700px){
 .signature-hero{margin:8px 8px 0!important;border-radius:22px 22px 0 0}
 .room-showcase{margin:0 8px;border-radius:0 0 22px 22px}
 .room-showcase::before{height:120px}.signature-hero::after{height:75px}
 .reservation-heading{display:flex;flex-wrap:wrap;gap:8px}.reservation-heading>strong{font-size:16px}
 .reservation-heading .free-transfer-badge{width:100%;padding:6px 9px;border-radius:9px;gap:7px}
 .reservation-heading .free-transfer-badge span{display:flex;align-items:center;flex-wrap:wrap;gap:3px 8px}
 .free-transfer-badge>svg{width:18px;height:18px}.free-transfer-badge b{font-size:10px}.free-transfer-badge small{font-size:9px}
 .hero-reservation .booking-date input{min-height:42px}.date-display{font-size:13px;left:9px;right:29px}.date-icon{right:9px;width:16px;height:16px}
 .transfer-heading,.transfer-form,.transfer-vehicle-gallery{grid-column:1;grid-row:auto}
 .transfer-heading{order:0}.transfer-form{order:1}.transfer-vehicle-gallery{order:2;margin-top:10px;gap:15px;grid-template-columns:1fr}
 .transfer-vehicle-heading{grid-column:1}.transfer-vehicle-gallery figcaption{font-size:16px;padding:16px 20px}
 .display-settings summary{width:31px;height:31px}.display-settings>div{right:-45px}
}
@media(prefers-reduced-motion:reduce){.room-showcase video,.showcase-copy{transform:none!important}}
html[data-motion=off] .room-showcase video,html[data-motion=off] .showcase-copy{transform:none!important}
