/* Full-width photographic cover with a clear, readable booking message. */
.hero-cover{position:relative;display:flex;flex-direction:column;padding:0;min-height:720px;min-height:clamp(700px,calc(100svh - 87px),820px);background:#0b1f3f;isolation:isolate;overflow:hidden;touch-action:auto}.hero-cover::before{content:none!important}.hero-cover .hero-grid{position:relative;z-index:2;display:flex;align-items:center;flex:1;min-height:605px;padding:64px 0 58px;pointer-events:none}.hero-cover .hero-copy{width:min(555px,48%);padding:0;text-align:left;pointer-events:auto}.hero-cover .hero-copy>.eyebrow{color:#e3c58e;justify-content:flex-start;margin-bottom:24px;letter-spacing:.11em}.hero-cover .little-dot{background:#e3c58e}.hero-cover h1{font-size:clamp(70px,6.3vw,89px);line-height:1.01;color:#fffaf1;margin-bottom:27px;letter-spacing:-.04em}.hero-cover h1 em{color:#e0bf83;background:none;-webkit-text-fill-color:initial}.hero-cover h1 em::after{background:linear-gradient(90deg,#d3b075,transparent);width:37%}.hero-cover .hero-description{color:#e2e5eb;max-width:480px;font-size:14px;line-height:1.95;margin-bottom:29px}.hero-cover .hero-description strong{color:#fffaf2}.hero-cover .hero-secondary{color:#f3eee4}.hero-cover .hero-microcopy{color:#cbd3df}.hero-cover .hero-assurance{border-color:#d7c4a63d;color:#e6e2d9}.hero-cover .hero-assurance svg{color:#e0bf83}.hero-cover .facts{position:relative;z-index:2;flex-shrink:0;margin-top:0;padding:24px 0 27px;border-top:1px solid #e0c99f45;background:rgba(6,20,40,.23)}.hero-cover .facts strong{color:#fffaf2;font-size:28px}.hero-cover .facts span{color:#d8dce3}.hero-cover .facts>div{border-right-color:#d3bf9b4a}
.hero-media{position:absolute;inset:0;z-index:0;overflow:hidden}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.15s ease;pointer-events:none}.hero-slide.is-active{opacity:1}.hero-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:72% 0%;filter:none}.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(6,20,40,.98) 0%,rgba(7,23,44,.9) 30%,rgba(7,23,44,.65) 48%,rgba(7,23,44,.12) 73%,rgba(7,23,44,.03) 100%),linear-gradient(0deg,rgba(6,20,40,.7),transparent 22%)}
.hero-controls{position:absolute;z-index:4;right:max(40px,calc((100vw - 1180px)/2));bottom:139px;display:flex;align-items:center;gap:9px;padding:7px;background:rgba(7,23,44,.72);border:1px solid #e5d2ad6e;border-radius:32px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);visibility:hidden}.carousel-ready .hero-controls{visibility:visible}.hero-controls button{border:0;background:transparent;color:#f4e7ce;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;min-width:44px;min-height:44px;border-radius:50%;transition:background .25s ease,color .25s ease}.hero-controls button:hover{background:#ddc9a122}.hero-controls button:focus-visible{outline:2px solid #ead09f;outline-offset:1px}.carousel-arrow svg{width:21px;height:21px}.carousel-prev svg{transform:rotate(180deg)}.carousel-dots{display:flex;gap:0;align-items:center}.hero-controls .carousel-dot{position:relative;min-width:29px;min-height:44px}.carousel-dot::before{content:'';width:6px;height:6px;display:block;background:#efe3d48a;border-radius:5px;transition:width .4s ease,background .4s ease}.carousel-dot.is-active::before{width:19px;background:#e3c58e}.carousel-pause{border-left:1px solid #e5d2ad3d!important;border-radius:0 24px 24px 0!important;margin-left:3px}.pause-symbol{display:block;width:12px;height:14px;position:relative}.pause-symbol::before,.pause-symbol::after{content:'';position:absolute;top:0;bottom:0;width:3px;background:currentColor;border-radius:1px}.pause-symbol::before{left:1px}.pause-symbol::after{right:1px}.carousel-pause.is-paused .pause-symbol{width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid currentColor;margin-left:2px}.carousel-pause.is-paused .pause-symbol::before,.carousel-pause.is-paused .pause-symbol::after{display:none}.carousel-pause:disabled{opacity:.5;cursor:default}.hero-disclosure{position:absolute;right:max(42px,calc((100vw - 1180px)/2));bottom:116px;z-index:4;color:#f2ede5;font-size:9px;line-height:1.6;letter-spacing:.04em;text-shadow:0 1px 4px #07172c}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* One compact contact shortcut on both desktop and mobile. */
.whatsapp-float{position:fixed;right:26px;bottom:calc(26px + env(safe-area-inset-bottom,0px));z-index:40;display:block;width:62px;height:62px;padding:0;gap:0;background:var(--gold);border:1px solid #ffffffa8;border-radius:40px;box-shadow:0 7px 23px #61491f33;color:var(--navy);text-decoration:none;overflow:hidden;transition:width .35s var(--ease-luxury),background .25s ease,box-shadow .35s ease}.whatsapp-float>svg{width:30px;height:30px;flex-shrink:0}.whatsapp-float>span{font:500 11px/1.5 var(--sans);white-space:nowrap;margin-left:12px;opacity:0;transition:opacity .2s ease .05s}.whatsapp-float:hover,.whatsapp-float:focus-visible{background:#d7b77f;box-shadow:0 10px 28px #61491f40}.whatsapp-float:hover>span,.whatsapp-float:focus-visible>span{opacity:1}.whatsapp-float:focus-visible{outline:3px solid var(--gold);outline-offset:4px}body.dialog-open .whatsapp-float{visibility:hidden}
@media(min-width:1700px){.hero-cover .hero-copy{width:565px}.hero-slide img{object-position:72% 0%}.hero-cover .hero-grid{min-height:650px}}
@media(max-width:1100px) and (min-width:1001px){.hero-cover .hero-copy{width:48%}.hero-cover .hero-grid{min-height:610px}.hero-cover .hero-description{font-size:13px}.hero-cover .hero-actions{gap:16px}.hero-controls{right:32px}.hero-disclosure{right:34px}}
@media(max-width:1000px){.hero-cover{--cover-height:340px;min-height:0;display:block}.hero-cover .hero-media{height:var(--cover-height);bottom:auto}.hero-cover .hero-grid{display:block;min-height:0;padding:calc(var(--cover-height) + 31px) 0 37px;pointer-events:none}.hero-cover .hero-copy{width:100%;max-width:650px;margin:0 auto;text-align:left}.hero-cover .hero-copy>.eyebrow{justify-content:flex-start;margin-bottom:20px}.hero-cover h1{font-size:64px;margin-bottom:24px}.hero-cover .hero-description{font-size:14px;max-width:590px;margin-bottom:25px}.hero-cover .hero-actions{justify-content:flex-start}.hero-cover .hero-microcopy{font-size:10px}.hero-cover .hero-assurance{max-width:590px;justify-content:flex-start;margin-top:24px;padding-top:20px}.hero-cover .hero-shade{background:linear-gradient(0deg,#0b1f3f 0%,rgba(11,31,63,.05) 28%,transparent 65%)}.hero-slide img{object-position:72% 0%}.hero-controls{left:32px;right:auto;bottom:23px;gap:6px;padding:5px}.hero-disclosure{right:32px;bottom:34px;font-size:9px}.hero-cover .facts{padding:23px 0 26px;background:transparent}.hero-cover .facts strong{font-size:25px}.hero-cover .facts span{font-size:9px}.hero-controls button{min-width:42px;min-height:42px}.hero-controls .carousel-dot{min-width:27px;min-height:42px}.whatsapp-float{right:22px;bottom:calc(22px + env(safe-area-inset-bottom,0px))}}
@media(max-width:760px){html{scroll-padding-bottom:88px}.hero-cover{--cover-height:clamp(250px,64vw,320px)}.hero-cover .hero-grid{padding:calc(var(--cover-height) + 26px) 0 29px}.hero-cover .hero-copy>.eyebrow{font-size:9px;letter-spacing:.06em;margin-bottom:18px}.hero-cover h1{font-size:clamp(52px,10.7vw,68px);line-height:1.03;margin-bottom:22px}.hero-cover .hero-description{font-size:14px;line-height:1.85;margin-bottom:23px}.hero-cover .hero-actions{flex-direction:row;gap:11px 21px;align-items:center}.hero-cover .hero-actions>.button{font-size:12px;min-height:55px;padding-inline:21px}.hero-cover .hero-secondary{font-size:11px;padding:5px 0}.hero-cover .hero-microcopy{font-size:9px;margin-top:12px}.hero-cover .hero-assurance{display:none}.hero-cover .facts{margin-top:0;padding:20px 0 22px}.hero-cover .facts strong{font-size:22px;line-height:1.1}.hero-cover .facts>div:last-child strong{font-size:20px}.hero-cover .facts span{font-size:8px}.hero-controls{left:20px;bottom:19px;gap:3px;border-radius:27px;padding:4px;backdrop-filter:none;-webkit-backdrop-filter:none}.hero-controls button{min-width:36px;min-height:40px}.hero-controls .carousel-dot{min-width:23px;min-height:40px}.carousel-dot::before{width:5px;height:5px}.carousel-dot.is-active::before{width:15px}.carousel-arrow svg{width:18px;height:18px}.hero-disclosure{right:20px;bottom:6px;font-size:8px;line-height:1.4}.hero-slide{transition:opacity .85s ease}.hero-shade{background:linear-gradient(0deg,#0b1f3f 0%,rgba(11,31,63,.08) 26%,transparent 61%)}.whatsapp-float,.whatsapp-float:hover,.whatsapp-float:focus-visible{right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:56px;height:56px;padding:0}.whatsapp-float>svg{width:28px;height:28px}.whatsapp-float>span{display:none}.footer{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}}
@media(max-width:380px){.hero-cover{--cover-height:250px}.hero-cover .hero-copy>.eyebrow{font-size:8px;letter-spacing:.055em}.hero-cover h1{font-size:50px}.hero-cover .hero-actions>.button{font-size:11px;padding-inline:21px}.hero-cover .hero-secondary{font-size:10px}.hero-cover .facts strong{font-size:19px}.hero-cover .facts>div:last-child strong{font-size:18px}.hero-cover .facts span{font-size:7px}.hero-controls{left:16px}.hero-disclosure{right:16px}.hero-cover .hero-grid{padding-bottom:27px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.carousel-dot::before,.whatsapp-float,.whatsapp-float>span{transition:none!important}.hero-cover .hero-slide img{transform:none!important}}
@media print{.hero-media,.whatsapp-float{display:none}.hero-cover{min-height:0;background:var(--cream)}.hero-cover .hero-grid{min-height:0;padding:25px 0;display:block}.hero-cover .hero-copy{width:100%;max-width:none}.hero-cover h1,.hero-cover .hero-description,.hero-cover .hero-description strong,.hero-cover .facts strong,.hero-cover .facts span{color:var(--navy)}.hero-cover .hero-assurance{display:none}.hero-cover .facts{padding:20px 0;border-color:var(--line)}}
.hero-disclosure{font-size:10px}
@media(max-width:760px){.hero-disclosure{font-size:10px;line-height:1.4;bottom:3px}}
