@media (width>=1200px){.hotels .hotel-chapter--finisterra .resort-layout .gallery-shell--8 .hotel-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}.hotels .hotel-chapter--finisterra .resort-layout .gallery-shell--8 .hotel-gallery__item,.hotels .hotel-chapter--finisterra .resort-layout .gallery-shell--8 .hotel-gallery__item:nth-child(-n+2){grid-column:span 1}.hotels .hotel-chapter--finisterra .resort-layout .gallery-shell--8 .hotel-gallery__item:nth-child(-n+2) img{aspect-ratio:4/3}.hotels .hotel-chapter--cancun .resort-layout .gallery-shell--11 .hotel-gallery{grid-template-columns:repeat(12,minmax(0,1fr))}.hotels .hotel-chapter--cancun .resort-layout .gallery-shell--11 .hotel-gallery__item{grid-column:span 3}.hotels .hotel-chapter--cancun .resort-layout .gallery-shell--11 .hotel-gallery__item:nth-child(-n+3){grid-column:span 4}.hotels .hotel-chapter--cancun .resort-layout .gallery-shell--11 .hotel-gallery__item:nth-child(-n+3) img{aspect-ratio:16/9}}.chooser.section{padding-bottom:clamp(1.5rem,2.5vw,2.5rem)}.hotels>.section-heading.section{padding-top:clamp(1.5rem,2.5vw,2.5rem)}@media (width<=900px){.chooser.section{padding-bottom:1rem}.hotels>.section-heading.section{padding-top:1.25rem}.hotel-chapter .resort-layout.section{padding-top:0}.resort-splash{grid-template-rows:auto auto;margin-top:0}.resort-splash>img{aspect-ratio:16/10;object-fit:cover;object-position:var(--splash-mobile-position,80% 42%);width:100%;height:auto;position:relative;inset:auto}.hotel-chapter--caracol .resort-splash>img{object-position:96% 42%}.hotel-chapter--playacar .resort-splash>img{object-position:90% 42%}.hotel-chapter--cancun .resort-splash>img{object-position:86% 40%}.hotel-chapter--finisterra .resort-splash>img{object-position:96% 46%}.hotel-chapter--buganvilias .resort-splash>img{object-position:86% 42%}}:root{--palm:#05b084;--orange:#fe771d;--palm-soft:#eaf8f3;--sun-soft:#fff2cd;--orange-soft:#fff0e5;--deep:#013d59;--deep-2:#012f45;--aqua:#00bdd1;--aqua-soft:#e9fafc;--sun:#feb804;--cream:#fffcf5;--white:#fff;--ink:#013d59;--muted:#496a78;--line:#013d592e;--serif:"Fraunces",Georgia,serif;--sans:"Manrope",Arial,sans-serif;--shadow:0 18px 55px #012f452e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--sans);margin:0;font-size:16px;line-height:1.55}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{color:inherit}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:1000;background:#fff;border-radius:4px;padding:.75rem 1rem;position:fixed;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:none}.section{padding:clamp(5rem,9vw,9rem) max(5vw,50vw - 660px)}.eyebrow{letter-spacing:.18em;color:var(--sun);margin:0 0 1.2rem;font-size:.75rem;font-weight:800}.eyebrow--dark{color:var(--deep)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);letter-spacing:-.045em;font-weight:600;line-height:.96}h2{margin-bottom:1.5rem;font-size:clamp(3rem,6vw,6.6rem)}h2 em,h3 em{font-weight:500}svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.1rem}.button{letter-spacing:.11em;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:1.3rem;min-height:3.7rem;padding:.8rem 1.5rem;font-size:.74rem;font-weight:800;transition:transform .25s,background .25s,color .25s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:focus-visible,.text-link:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--sun);outline-offset:4px}.mode-card:has(input:focus-visible){outline:3px solid var(--sun);outline-offset:4px}.button--sun{background:var(--sun);color:var(--deep)}.button--deep{background:var(--deep);color:#fff}.text-link{letter-spacing:.1em;border-bottom:1px solid;align-items:center;gap:.9rem;padding:.5rem 0;font-size:.75rem;font-weight:800;display:inline-flex}.text-link--light{color:#fff}.site-header{z-index:100;color:#fff;grid-template-columns:1fr auto 1fr;align-items:center;height:96px;padding:0 clamp(1.25rem,4vw,4rem);transition:background .3s,height .3s;display:grid;position:fixed;inset:0 0 auto}.site-header.is-solid{background:#012f45f7;height:76px;box-shadow:0 6px 22px #0000001f}.menu-button{color:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:.75rem;padding:.6rem 0;display:flex}.menu-button span{background:currentColor;width:1.8rem;height:2px;position:absolute}.menu-button span:first-child{transform:translateY(-5px)}.menu-button span:nth-child(2){transform:translateY(5px)}.menu-button b{letter-spacing:.16em;margin-left:2.5rem;font-size:.7rem}.header-logo{width:150px;transition:width .3s}.brand-logo{display:block;position:relative}.brand-logo img{width:100%;height:auto}.brand-logo__white,.brand-logo--light .brand-logo__dark{display:none}.brand-logo--light .brand-logo__white{display:block}.mobile-menu{z-index:90;background:var(--deep);color:#fff;visibility:hidden;opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:1.1rem;transition:all .3s;display:flex;position:fixed;inset:0}.mobile-menu.is-open{visibility:visible;opacity:1}.mobile-menu a{font-family:var(--serif);font-size:clamp(2.3rem,6vw,5rem);line-height:1}.mobile-menu p{color:var(--sun);letter-spacing:.15em;text-transform:uppercase;font-size:.75rem}.hero{background:var(--deep);align-items:flex-end;height:max(720px,100svh);min-height:640px;display:flex;position:relative;overflow:hidden}.hero__image,.hero__shade{width:100%;height:100%;position:absolute;inset:0}.hero__image{object-fit:cover;object-position:center 48%;animation:1.5s cubic-bezier(.2,.7,.2,1) both hero-in}.hero__shade{background:linear-gradient(90deg,#012536d1 0%,#01253661 48%,#01253614 75%),linear-gradient(#0000 45%,#01253694)}.hero__content{z-index:2;color:#fff;width:min(950px,88vw);padding:0 0 clamp(5rem,9vw,8rem) max(5vw,50vw - 660px);position:relative}.hero h1{max-width:11ch;margin:0 0 1.7rem;font-size:clamp(4rem,8.2vw,8.9rem)}.hero-line{display:block;overflow:hidden}.hero-line span{animation:.85s .15s both rise-in;display:block}.hero-line--sun{color:var(--sun)}.hero-line--sun span{animation-delay:.26s}.hero__intro{max-width:38rem;margin-bottom:2rem;font-size:clamp(1.05rem,1.8vw,1.3rem)}.hero__actions{flex-wrap:wrap;align-items:center;gap:1.6rem;display:flex}.hero__scroll{z-index:3;color:#fff;letter-spacing:.18em;flex-direction:column;align-items:center;gap:.7rem;font-size:.65rem;font-weight:700;display:flex;position:absolute;bottom:3rem;right:3rem}.hero__scroll svg{height:1.7rem}.hero-enter{animation:.8s .65s both fade-in}.hero-enter--intro{animation-delay:.72s}.hero-enter--actions{animation-delay:.82s}@keyframes hero-in{0%{opacity:0;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes rise-in{0%{transform:translateY(110%)}to{transform:none}}@keyframes fade-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.promise-strip{background:var(--sun);border-bottom:1px solid #013d5933;grid-template-columns:repeat(3,1fr);display:grid}.promise-strip div{text-align:center;border-right:1px solid #013d5933;padding:1.6rem 4vw}.promise-strip div:last-child{border:0}.promise-strip strong,.promise-strip span{display:block}.promise-strip strong{letter-spacing:.14em;font-size:.76rem}.promise-strip span{margin-top:.25rem;font-size:.82rem}.chooser__intro{grid-template-columns:1fr 3fr;display:grid}.chooser__intro .eyebrow{padding-top:.7rem}.chooser__intro h2{grid-column:2;max-width:12ch}.mode-picker{width:100%;min-width:0;max-width:100%;border:0;min-inline-size:0;margin:0;padding:0}.mode-rail{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.mode-card{cursor:pointer;color:#fff;background:var(--deep);min-height:430px;box-shadow:0 0 0 0 var(--sun);border-radius:4px;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.mode-card:hover{transform:translateY(-5px)}.mode-card input{opacity:0;pointer-events:none;position:absolute}.mode-card img,.mode-card__shade{width:100%;height:100%;position:absolute;inset:0}.mode-card img{object-fit:cover;transition:transform .6s}.mode-card:hover img{transform:scale(1.04)}.mode-card__shade{background:linear-gradient(#0127390d 32%,#012739eb)}.mode-card__copy{flex-direction:column;align-items:flex-start;display:flex;position:absolute;inset:auto 1.3rem 1.3rem}.mode-card__copy b{letter-spacing:.16em;margin-bottom:4rem;font-size:.68rem}.mode-card__copy strong{font-family:var(--serif);font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:1}.mode-card__copy small{margin:.75rem 0 1rem;font-size:.82rem}.mode-card__copy em{background:var(--sun);color:var(--deep);text-transform:uppercase;padding:.45rem .65rem;font-size:.67rem;font-style:normal;font-weight:800}.recommendation{background:var(--deep);color:#fff;border-radius:4px;justify-content:space-between;align-items:center;gap:2rem;min-height:110px;margin-top:1.2rem;padding:1.4rem 1.6rem;display:flex}.recommendation>div span,.recommendation>div strong{display:block}.recommendation>div span{letter-spacing:.17em;color:var(--sun);font-size:.66rem}.recommendation>div strong{font-family:var(--serif);font-size:2rem}.recommendation>div p{color:#ddf4f8;margin:0;font-size:.84rem}.recommendation__prompt{color:#ddf4f8;margin:0}.section-heading{background:var(--cream)}.section-heading h2{margin-bottom:0}.hotel-chapter{border-top:10px solid var(--sun);scroll-margin-top:76px}.hotel-chapter__name{z-index:10;background:var(--deep);color:#fff;grid-template-columns:120px 1fr auto;align-items:center;gap:1rem;padding:1rem max(5vw,50vw - 660px);display:grid;position:sticky;top:76px}.hotel-chapter__name span{letter-spacing:.13em;font-size:.67rem;font-weight:700}.hotel-chapter__name strong{font-family:var(--serif);letter-spacing:-.03em;font-size:1.7rem}.hotel-chapter__layout{grid-template-columns:minmax(280px,.75fr) minmax(0,1.55fr);align-items:center;gap:clamp(2.5rem,6vw,6rem);display:grid}.hotel-copy h3{max-width:9ch;margin-bottom:1.5rem;font-size:clamp(3.1rem,5.4vw,6rem)}.hotel-copy>p:not(.eyebrow){max-width:34rem;font-size:1.05rem}.hotel-copy ul{grid-template-columns:repeat(2,1fr);gap:.6rem;margin:2rem 0;padding:0;list-style:none;display:grid}.hotel-copy li{border-top:1px solid var(--line);text-transform:uppercase;padding:.65rem .75rem;font-size:.78rem;font-weight:800}.hotel-copy>small{max-width:25rem;color:var(--muted);margin-top:1rem;font-size:.72rem;display:block}.hotel-gallery{grid-template-rows:1fr 1fr;grid-template-columns:1.25fr .75fr;gap:10px;height:650px;display:grid}.hotel-gallery__item{background:#c5e8ee;margin:0;position:relative;overflow:hidden}.hotel-gallery__item img{object-fit:cover;width:100%;height:100%;transition:transform .7s}.hotel-gallery__item:hover img{transform:scale(1.025)}.hotel-gallery__item figcaption{color:#fff;letter-spacing:.1em;text-transform:uppercase;background:#012f45e6;padding:.45rem .65rem;font-size:.66rem;font-weight:800;position:absolute;bottom:1rem;left:1rem}.included header{grid-template-columns:1fr 3fr;display:grid}.included header .eyebrow{padding-top:.7rem}.included h2{grid-column:2}.included-rail{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.included-rail article{background:var(--cream);overflow:hidden}.included-rail img{object-fit:cover;width:100%;height:260px}.included-rail article>div{min-height:220px;padding:1.3rem}.included-rail span{letter-spacing:.15em;font-size:.68rem;font-weight:800}.included-rail h3{margin:2.5rem 0 .65rem;font-size:1.7rem}.included-rail p{color:var(--muted);margin:0;font-size:.85rem}.process{background:var(--deep);color:#fff;grid-template-columns:1fr 1fr;gap:7vw;padding:clamp(5rem,9vw,9rem) max(5vw,50vw - 660px);display:grid}.process h2{font-size:clamp(3rem,5vw,5.7rem)}.process ol{margin:0;padding:0;list-style:none}.process li{border-top:1px solid #fff3;grid-template-columns:55px 1fr;gap:1rem;padding:1.7rem 0;display:grid}.process li span{color:var(--sun);letter-spacing:.15em;font-size:.7rem;font-weight:800}.process li p{margin:0}.process li strong{font-family:var(--serif);margin-bottom:.35rem;font-size:1.55rem;display:block}.faq{background:var(--cream);grid-template-columns:1fr 1.2fr;gap:7vw;display:grid}.faq__list details{border-top:1px solid var(--line)}.faq__list details:last-child{border-bottom:1px solid var(--line)}.faq__list summary{cursor:pointer;font-family:var(--serif);justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 0;font-size:1.45rem;list-style:none;display:flex}.faq__list summary::-webkit-details-marker{display:none}.faq__list summary span{font-family:var(--sans);font-size:1.3rem;transition:transform .2s}.faq__list details[open] summary span{transform:rotate(45deg)}.faq__list details p{color:var(--muted);padding:0 2rem 1.4rem 0}.quote{background:var(--aqua);color:var(--deep);grid-template-columns:1fr 1fr;gap:7vw;display:grid}.quote h2{font-size:clamp(3rem,5vw,5.5rem)}.quote__contact{flex-direction:column;align-items:flex-start;gap:.4rem;margin-top:2rem;font-weight:700;display:flex}.quote-form{background:var(--deep);color:#fff;padding:clamp(1.5rem,4vw,3rem)}.quote-form>label,.form-more label{margin-bottom:1.1rem;display:block}.quote-form label span{letter-spacing:.08em;text-transform:uppercase;margin-bottom:.45rem;font-size:.72rem;font-weight:700;display:block}.quote-form input,.quote-form select{color:#fff;background:0 0;border:1px solid #ffffff47;border-radius:0;width:100%;min-height:3.3rem;padding:.7rem .9rem}.quote-form select option{color:#111}.form-more{border-top:1px solid #fff3;margin:1rem 0 1.5rem}.form-more summary{cursor:pointer;letter-spacing:.08em;justify-content:space-between;padding:1rem 0;font-size:.78rem;font-weight:800;display:flex}.form-more>div{padding-top:.5rem}.quote-form>.button{width:100%}.quote-form>small{text-align:center;color:#bdd9e5;margin-top:1rem;display:block}.quote-form>small a{text-decoration:underline}.selected-intent{background:var(--sun);color:var(--deep);grid-template-columns:1fr auto;margin-bottom:1rem;padding:1rem;display:grid;position:relative}.selected-intent span,.selected-intent strong{display:block}.selected-intent span{letter-spacing:.14em;font-size:.65rem}.selected-intent strong{font-family:var(--serif);grid-column:1;font-size:1.3rem}.selected-intent button{background:0 0;border:0;grid-area:1/2/3;font-size:1.5rem}.honeypot{display:none}.footer{background:var(--deep-2);color:#fff;grid-template-columns:2fr repeat(3,1fr);gap:2rem;padding:5rem max(5vw,50vw - 660px) 2rem;display:grid}.footer__brand{width:180px}.footer__brand p{color:#b7d6e4;margin-top:1.2rem;font-size:.82rem}.footer h3{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sun);margin-bottom:1.1rem;font-size:.67rem}.footer>div:not(.footer__brand):not(.footer__bottom){flex-direction:column;align-items:flex-start;gap:.5rem;font-size:.82rem;display:flex}.footer__bottom{color:#a8c9da;border-top:1px solid #ffffff26;grid-column:1/-1;justify-content:space-between;margin-top:2rem;padding-top:1.5rem;font-size:.7rem;display:flex}.whatsapp{z-index:80;color:#fff;width:58px;height:58px;box-shadow:var(--shadow);background:#20bf62;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:1.2rem;right:1.2rem}.whatsapp svg{fill:currentColor;stroke:none;width:28px}.motion-ready [data-reveal].is-visible{opacity:1;transform:none}.motion-ready [data-reveal=stagger]>*{opacity:0;transition:opacity .65s,transform .65s;transform:translateY(24px)}.motion-ready [data-reveal=stagger].is-visible>*{opacity:1;transform:none}.motion-ready [data-reveal=stagger].is-visible>:nth-child(2){transition-delay:80ms}.motion-ready [data-reveal=stagger].is-visible>:nth-child(3){transition-delay:.16s}.motion-ready [data-reveal=stagger].is-visible>:nth-child(4){transition-delay:.24s}@media (width<=900px){body{padding-bottom:env(safe-area-inset-bottom)}.section{padding:4.6rem 1.1rem}.site-header{grid-template-columns:1fr auto 1fr;height:72px;padding:0 1rem}.site-header.is-solid{height:64px}.menu-button b{display:none}.header-logo{width:122px}.hero{align-items:flex-end;height:88svh;min-height:620px}.hero__image{object-position:59% center}.hero__shade{background:linear-gradient(#0125361a 0%,#01253659 42%,#012536e0 100%)}.hero__content{width:auto;padding:0 1.1rem 5.4rem}.hero h1{max-width:9ch;font-size:clamp(3.25rem,15vw,5.25rem)}.hero__intro{font-size:1rem}.hero__actions{flex-direction:column;align-items:flex-start;gap:.7rem}.hero__scroll{display:none}.promise-strip{grid-template-columns:1fr}.promise-strip div{border-bottom:1px solid #013d592e;border-right:0;padding:1rem}.promise-strip div:last-child{border:0}.promise-strip span{font-size:.76rem}.chooser__intro,.included header{display:block}.chooser__intro h2,.included h2{max-width:10ch;font-size:clamp(2.9rem,13vw,4.5rem)}.mode-rail,.included-rail,.hotel-gallery{scroll-snap-type:x mandatory;scrollbar-width:none;gap:10px;margin-right:-1.1rem;padding-right:1.1rem;display:flex;overflow-x:auto}.mode-rail::-webkit-scrollbar{display:none}.included-rail::-webkit-scrollbar{display:none}.hotel-gallery::-webkit-scrollbar{display:none}.mode-card{scroll-snap-align:start;flex:0 0 84vw;min-height:460px}.mode-card__copy strong{font-size:2.5rem}.recommendation{flex-direction:column;align-items:stretch;min-height:0}.recommendation .button{width:100%}.hotel-chapter{scroll-margin-top:64px}.hotel-chapter__name{grid-template-columns:auto 1fr;padding:.7rem 1.1rem;top:64px}.hotel-chapter__name strong{font-size:1.3rem}.hotel-chapter__name span:last-child{display:none}.hotel-chapter__layout{flex-direction:column;padding-top:3.4rem;padding-bottom:4.5rem;display:flex}.hotel-copy{width:100%}.hotel-copy h3{max-width:9ch;font-size:clamp(3rem,13vw,4.6rem)}.hotel-copy ul{margin:1.5rem 0}.hotel-copy .button{width:100%}.hotel-gallery{order:-1;width:calc(100% + 1.1rem);height:auto}.hotel-gallery__item,.hotel-gallery__item--4{scroll-snap-align:start;flex:0 0 84vw;height:58vh;min-height:420px;max-height:560px;display:block}.hotel-gallery__item img{height:100%}.included-rail article{scroll-snap-align:start;flex:0 0 84vw}.included-rail img{height:48vw;min-height:220px}.process,.faq,.quote{grid-template-columns:1fr;gap:2rem;padding:4.6rem 1.1rem}.process h2,.quote h2{font-size:clamp(2.9rem,13vw,4.5rem)}.faq__list summary{font-size:1.25rem}.quote-form{padding:1.3rem}.footer{grid-template-columns:1fr 1fr;padding:4rem 1.1rem 2rem}.footer__brand{grid-column:1/-1}.footer__bottom{flex-direction:column;gap:.4rem}.whatsapp{display:none}.motion-ready [data-reveal]{transform:translateY(18px)}}@media (width<=380px){.hero h1{font-size:3.3rem}.mode-card,.hotel-gallery__item,.hotel-gallery__item--4,.included-rail article{flex-basis:88vw}.hotel-copy ul{grid-template-columns:1fr}.hotel-gallery__item,.hotel-gallery__item--4{min-height:380px}.header-logo{width:108px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero__image,.hero-line span,.hero-enter{animation:none}.motion-ready [data-reveal],.motion-ready [data-reveal=stagger]>*{opacity:1;transition:none;transform:none}.mode-card img,.hotel-gallery__item img,.button{transition:none}}html,body{overflow-x:clip}.mode-card.is-active{box-shadow:inset 0 0 0 5px var(--sun)}.mode-card:has(input:focus-visible){box-shadow:inset 0 0 0 5px var(--sun)}[tabindex="-1"]:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid var(--sun);outline-offset:3px}.hotel-chapter{border-top-width:5px}.gallery-shell{min-width:0}.hotel-gallery{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr)}.hotel-gallery__item--1{grid-row:auto}.hotel-gallery__item--4{display:block}.hotel-gallery__item figcaption{font-size:.75rem}.rail-controls{display:none}.selected-intent button{cursor:pointer;place-items:center;min-width:44px;min-height:44px;padding:0;display:grid}@media (width<=900px){body{padding-bottom:env(safe-area-inset-bottom)}.menu-button{width:44px;min-width:44px;height:44px;padding:0;position:relative}.menu-button span{left:7px}.hero{min-height:max(560px,88svh)}.hero__image{object-position:56% center}.mode-rail,.included-rail,.hotel-gallery{overscroll-behavior-inline:contain;scroll-padding-inline:1.1rem}.mode-card{scroll-snap-stop:always;height:clamp(350px,108vw,430px);min-height:0}.hotel-chapter__name strong{white-space:nowrap;min-width:0;font-size:clamp(1.05rem,5vw,1.3rem)}.gallery-shell{order:-1;width:calc(100% + 1.1rem)}.hotel-gallery{order:initial;width:100%;height:auto}.hotel-gallery__item,.hotel-gallery__item--4{scroll-snap-stop:always;height:clamp(350px,105vw,500px);min-height:0}.rail-controls{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:.65rem 1.1rem .2rem 0;font-size:.75rem;font-weight:800;display:flex}.rail-controls>div{gap:.45rem;display:flex}.rail-controls button{border:1px solid var(--deep);cursor:pointer;background:0 0;border-radius:50%;width:44px;height:44px}.rail-controls button:disabled{opacity:.3}}@media (width>=901px){.hotel-gallery__item[role=button]{cursor:zoom-in}.hotel-gallery__item[role=button]:focus-visible{outline:3px solid var(--sun);outline-offset:3px}.hotel-lightbox{z-index:300;color:var(--white);background:#012f45f5;place-items:center;padding:48px 96px;display:grid;position:fixed;inset:0}.hotel-lightbox__figure{flex-direction:column;justify-content:center;align-items:center;width:min(1180px,100vw - 192px);min-width:0;height:calc(100dvh - 96px);margin:0;display:flex}.hotel-lightbox__figure>img{object-fit:contain;width:auto;max-width:100%;height:auto;min-height:0;max-height:calc(100% - 58px);display:block;box-shadow:0 24px 70px #01182380}.hotel-lightbox__figure figcaption{letter-spacing:.03em;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;width:100%;padding-top:16px;font-size:.82rem;display:grid}.hotel-lightbox__figure figcaption strong{font-family:var(--serif);font-size:1.25rem}.hotel-lightbox__figure figcaption span{color:#d7e8eb}.hotel-lightbox__figure figcaption small{letter-spacing:.12em;font-weight:800}.hotel-lightbox button{color:var(--white);cursor:pointer;background:#fffefa1f;border:1px solid #ffffff80;place-items:center;display:grid;position:absolute}.hotel-lightbox button:hover{background:var(--sun);border-color:var(--sun);color:var(--deep)}.hotel-lightbox button:focus-visible{outline:3px solid var(--sun);outline-offset:4px}.hotel-lightbox__close{border-radius:50%;width:48px;height:48px;font-size:2rem;line-height:1;top:22px;right:28px}.hotel-lightbox__arrow{border-radius:50%;width:54px;height:54px;font-size:1.45rem;top:50%;transform:translateY(-50%)}.hotel-lightbox__arrow--previous{left:24px}.hotel-lightbox__arrow--next{right:24px}}@media (width>=600px) and (width<=900px){.mode-card,.included-rail article{flex-basis:46vw}.hotel-gallery__item,.hotel-gallery__item--4{flex-basis:74vw}}@media (width<=380px){.hero h1{font-size:2.95rem}.hotel-copy ul{grid-template-columns:repeat(2,1fr)}.hotel-copy li{padding:.55rem .35rem;font-size:.68rem}}@media (prefers-reduced-motion:reduce){.mode-card:hover{transition:none;transform:none}}@media (width<=900px){.header-logo{width:94px}.hero{align-items:flex-start;height:auto;min-height:760px}.hero__image{object-position:56% center;animation:none;transform:none}.hero__shade{background:linear-gradient(270deg,#0125368a 0%,#01253621 72%),linear-gradient(#0125360d 0%,#0125362e 38%,#012536a8 100%)}.hero__content{text-align:right;width:min(91%,430px);margin-left:auto;padding:8.25rem 1.1rem 5.5rem 0}.hero h1{max-width:10ch;margin:0 0 1.25rem auto;font-size:clamp(2.85rem,12.5vw,3.65rem);line-height:.94}.hero__intro{max-width:25rem;margin:0 0 1.5rem auto;line-height:1.45}.hero__actions{align-items:flex-end;gap:.9rem}.hero__actions .button{width:auto;max-width:100%;min-height:3.45rem;padding:.75rem 1.25rem}}@media (width<=380px){.header-logo{width:88px}.hero{min-height:735px}.hero__content{padding-top:7.75rem}.hero h1{font-size:2.72rem}.hero__actions .button{letter-spacing:.08em;font-size:.68rem}}h1,h2,h3{letter-spacing:-.035em;font-variation-settings:"SOFT" 45,"WONK" 0;line-height:1.03}h2>span,h2>em{display:block}h2 em{letter-spacing:-.02em;max-width:15ch;margin-top:.18em;font-size:.64em;font-style:normal;font-weight:500;line-height:1.08}.process h2 em{color:var(--sun)}.hero-line{overflow:visible}.hotel-copy h3{font-size:clamp(2.85rem,5vw,5.4rem);line-height:1.01}.rail-controls button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;appearance:none}.rail-controls button:focus:not(:focus-visible){outline:none}.rail-controls button:focus-visible{outline:3px solid var(--sun);outline-offset:3px}.included .rail-controls button:focus-visible{outline-color:var(--deep)}@media (width<=900px){h2 em{font-size:.62em;line-height:1.1}.chooser__intro h2,.included h2,.process h2,.faq h2,.quote h2{font-size:clamp(2.7rem,11.6vw,4.1rem);line-height:1.02}.hotel-copy h3{font-size:clamp(2.65rem,11.2vw,4rem);line-height:1.02}.mode-rail,.hotel-gallery,.included-rail{-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overflow-x:scroll}.mode-rail{width:100%;min-width:0;max-width:100%}.rail-controls{justify-content:flex-end;padding-top:.75rem}.rail-controls--modes{display:flex}.rail-controls--modes button{background:var(--deep);border-color:var(--deep);color:#fff}.rail-controls button:disabled{opacity:1;border-color:var(--deep);color:var(--deep);cursor:default;background:0 0!important}}@media (width>=901px){.hero__shade{background:linear-gradient(270deg,#012536c2 0%,#0125365c 48%,#0125360f 78%),linear-gradient(#0000 45%,#01253680)}.hero__content{text-align:right;width:min(880px,56vw);margin-left:auto;padding:0 max(5vw,50vw - 660px) clamp(5rem,9vw,8rem) 0}.hero h1{max-width:10ch;margin-left:auto;font-size:clamp(4rem,6.5vw,7rem)}.hero__intro{margin-left:auto}.hero__actions{justify-content:flex-end}}@media (width<=900px){.site-header.is-solid .header-logo{width:70px}}@media (width<=599px){.mode-rail,.hotel-gallery,.included-rail{width:100%;max-width:100%;margin-right:0;padding-right:0;scroll-padding-inline:0}.gallery-shell{width:100%}.mode-card,.hotel-gallery__item,.hotel-gallery__item--4,.included-rail article{backface-visibility:hidden;flex:0 0 100%;transform:translateZ(0)}.mode-card img,.hotel-gallery__item img,.included-rail img{backface-visibility:hidden;transform:translateZ(0)}}@media (hover:none) and (pointer:coarse){.mode-card:hover img,.hotel-gallery__item:hover img{transform:translateZ(0)}}:where(a,button,summary,label,[role=button],[tabindex]){-webkit-tap-highlight-color:transparent}:where(a,button,summary,[role=button],[tabindex]):focus:not(:focus-visible){outline:none}:where(a,button,summary,[role=button],[tabindex]):focus-visible{outline:3px solid var(--sun);outline-offset:3px}summary{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}body.loader-active{overflow:hidden}.site-loader{isolation:isolate;opacity:1;will-change:opacity;transform:none}.site-loader:after{content:"";z-index:3;pointer-events:none;opacity:0;background:#fff;transition:opacity .42s ease-in-out;position:absolute;inset:0}.site-loader.is-handoff:after{opacity:1}.site-loader__video{opacity:1;transition:opacity .6s;transform:none}.site-loader__veil{background:linear-gradient(#0127390a,#01273940)}.site-loader__mark{filter:drop-shadow(0 5px 22px #01273940);transition:opacity .32s}.site-loader__mark>span:not(.site-loader__line){color:#fff;text-shadow:0 2px 14px #0127396b}.site-loader.is-handoff .site-loader__mark{opacity:0}.site-loader.is-exiting{pointer-events:none;opacity:0;transition:opacity .68s ease-in-out .2s;transform:none}@media (width<=600px){.site-loader__video{object-position:center}.site-loader__mark img{width:min(52vw,190px)}}@media (prefers-reduced-motion:reduce){.site-loader__video,.site-loader:after{display:none}.site-loader.is-exiting{opacity:0;transition:opacity .18s linear;transform:none}}:root{--aqua-soft:#e9fafc;--line:#013d5929}.site-header.is-solid{background:var(--cream);color:var(--ink);box-shadow:0 1px 0 var(--line)}.site-header.is-solid .brand-logo__dark{display:block}.site-header.is-solid .brand-logo__white{display:none}.chooser{background:var(--cream)}.chooser__intro{margin-bottom:2rem}.mode-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.5rem);display:grid}.mode-card{height:auto;min-height:0;color:var(--ink);background:0 0;border-radius:0;flex-direction:column;display:flex;overflow:visible;box-shadow:none!important;transform:none!important}.mode-card img{aspect-ratio:4/3;object-fit:cover;border-radius:3px;width:100%;height:auto;transition:none;position:static;transform:none!important}.mode-card__copy{flex:1;align-items:flex-start;padding:1rem 0 0;display:flex;position:static}.mode-card__copy strong{font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.08}.mode-card__copy small{color:var(--muted);margin:.65rem 0 .9rem;font-size:.8rem}.mode-card__copy em{border-bottom:2px solid var(--line);background:0 0;margin-top:auto;padding:.45rem 0;font-size:.64rem;line-height:1.5}.mode-card.is-active img{outline:4px solid var(--sun);outline-offset:-4px}.mode-card.is-active em{border-color:var(--ink);font-weight:800}.mode-card:has(input:focus-visible){outline:3px solid var(--deep);outline-offset:6px}.recommendation{background:var(--sun-soft);color:var(--ink);border-left:4px solid var(--sun);border-radius:0;margin-top:2rem}.recommendation>div span,.recommendation>div p,.recommendation__prompt{color:var(--ink)}.section-heading{padding-top:4rem;padding-bottom:3rem}.hotel-chapter{border-top:1px solid var(--line)}.hotel-chapter__name{background:var(--cream);color:var(--ink);border-bottom:1px solid var(--line)}.hotel-chapter--caracol{background:var(--palm-soft)}.hotel-chapter--cancun{background:var(--cream)}.hotel-chapter--finisterra{background:var(--aqua-soft)}.hotel-gallery__item figcaption{background:var(--cream);color:var(--ink);letter-spacing:.04em;font-size:.66rem;bottom:.65rem;left:.65rem}.hotel-gallery__item img{transition:none;transform:none!important}.hotel-gallery__item{backface-visibility:visible;transform:none}.included{background:#ffe5a6}.included header{margin-bottom:2rem}.included-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 3rem;display:grid}.included-grid article{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:1.3rem;padding:1.4rem 0;display:grid}.included-grid img{aspect-ratio:1;object-fit:cover;width:100%}.included-grid article:nth-child(2) img{border-radius:50%}.included-grid article:nth-child(3) img{border-radius:50% 50% 3px 3px}.included-grid h3{margin:0 0 .7rem;font-size:clamp(1.5rem,2.3vw,2.15rem);line-height:1.06}.included-grid p{color:var(--ink);margin:0;font-size:.86rem}.process{background:var(--aqua-soft);color:var(--ink)}.process h2 em,.process li span{color:var(--ink)}.process li{border-color:var(--line)}.quote{background:var(--aqua-soft)}.quote-form{background:var(--cream);color:var(--ink)}.quote-form input,.quote-form select{color:var(--ink);background:var(--white);border-color:#7895a3}.quote-form input::placeholder,.quote-form>small{color:var(--muted)}.form-more{border-color:var(--line)}.quote .eyebrow{color:var(--ink)}:where(.site-header.is-solid,.chooser,.quote,.faq,.hotel-chapter,.process) :where(a,button,summary,input,select,[tabindex]):focus-visible{outline-color:var(--deep)}.motion-ready [data-reveal]{opacity:1;transition:transform .35s;transform:translateY(10px)}.motion-ready [data-reveal].is-visible{transform:none}body.loader-active .hero-line span,body.loader-active .hero-enter{animation-play-state:paused}.hero__image{animation:none}@media (width>=901px){.hotel-chapter--caracol .hotel-gallery{grid-template-rows:1.65fr 1fr;grid-template-columns:repeat(3,minmax(0,1fr));height:600px}.hotel-chapter--caracol .hotel-gallery__item--1{grid-column:1/-1}.hotel-chapter--cancun .hotel-gallery{grid-template-rows:repeat(3,1fr);grid-template-columns:1fr 1fr;height:670px}.hotel-chapter--cancun .hotel-gallery__item--1{grid-row:1/3}.hotel-chapter--cancun .hotel-gallery__item--4{grid-area:2/2/4}.hotel-chapter--finisterra .hotel-chapter__layout{grid-template-columns:1fr;gap:2.5rem}.hotel-chapter--finisterra .hotel-copy{grid-template-columns:1.2fr 1fr;align-items:start;column-gap:5rem;display:grid}.hotel-chapter--finisterra .hotel-copy>.eyebrow{grid-column:1/-1}.hotel-chapter--finisterra .hotel-copy h3{grid-area:2/1/6;max-width:14ch}.hotel-chapter--finisterra .hotel-copy>:not(h3):not(.eyebrow){grid-column:2}.hotel-chapter--finisterra .hotel-copy .button{justify-self:start}.hotel-chapter--finisterra .hotel-gallery{grid-template-rows:1fr 1fr;grid-template-columns:1.7fr 1fr 1fr;height:530px}.hotel-chapter--finisterra .hotel-gallery__item--1{grid-row:1/3}.hotel-chapter--finisterra .hotel-gallery__item--4{grid-column:2/4}.hotel-chapter--buganvilias .hotel-gallery{grid-template-rows:1fr 1fr;grid-template-columns:1.2fr .8fr .8fr;height:610px}.hotel-chapter--buganvilias .hotel-gallery__item--1{grid-area:1/1/3}.hotel-chapter--buganvilias .hotel-gallery__item--2{grid-area:1/2/auto/4}.hotel-chapter--buganvilias .hotel-gallery__item--3{grid-area:2/2}.hotel-chapter--buganvilias .hotel-gallery__item--4{grid-area:2/3;display:block}}@media (width<=1200px) and (width>=901px){.mode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem 1rem}.mode-card{flex:none;height:auto;min-height:0}.mode-card__copy{padding-top:.8rem}.mode-card__copy strong{font-size:clamp(1.2rem,4.9vw,1.9rem)}.mode-card__copy small{margin:.5rem 0 .65rem;font-size:.75rem}.mode-card__copy em{font-size:.58rem}.chooser__intro h2{max-width:15ch}.hotel-chapter__layout{gap:1.8rem;padding-top:2rem}.hotel-copy h3{max-width:15ch}.hotel-gallery{scroll-snap-type:x mandatory;gap:12px;margin:0;padding:0;scroll-padding:0;overflow-x:auto}.gallery-shell{width:100%}.hotel-gallery__item,.hotel-gallery__item--4{aspect-ratio:4/3;scroll-snap-stop:normal;flex:0 0 100%;height:auto;min-height:0;max-height:none}.hotel-chapter--cancun .hotel-gallery__item{aspect-ratio:4/5;max-height:540px}.hotel-chapter--finisterra .hotel-gallery__item{aspect-ratio:16/10}.hotel-gallery__item figcaption{max-width:calc(100% - 1.3rem)}.included header{margin-bottom:1rem}.included-grid{grid-template-columns:1fr;gap:0}.included-grid article{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:1.25rem;padding:1.5rem 0}.included-grid h3{font-size:clamp(1.4rem,5.6vw,2rem)}.included-grid p{font-size:.8rem}.recommendation{gap:1rem;padding:1.1rem}.rail-controls{display:flex}}@media (prefers-reduced-motion:reduce){.motion-ready [data-reveal]{transition:none;transform:none}.site-loader__line i{animation:none!important}.site-loader.is-handoff .site-loader__mark{filter:none;transition:none;transform:none}.site-loader__video{transition:none;transform:none}}.included-grid h3{overflow-wrap:anywhere}.trust-strip{background:var(--cream);border-bottom:1px solid var(--line);color:var(--ink);flex-wrap:wrap;align-items:center;gap:1rem 2rem;padding:1.5rem max(5vw,50vw - 660px);display:flex}.trust-strip strong{font-family:var(--serif);font-size:1.6rem}.trust-strip p{margin:0;font-size:.85rem}.trust-strip a{align-items:center;gap:.75rem;margin-left:auto;font-size:.8rem;display:flex}.trust-strip svg,.promotion-note svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:22px;height:22px}.chooser__intro--choices{display:block}.chooser__intro--choices h2{max-width:18ch;margin-bottom:1rem}.chooser__intro--choices>p{color:var(--muted);max-width:40ch;font-size:clamp(1rem,1.8vw,1.25rem)}.mode-card__choice{z-index:1;border:2px solid var(--cream);width:30px;height:30px;color:var(--deep);background:#012f4559;border-radius:50%;place-items:center;font-size:1rem;font-weight:800;display:grid;position:absolute;top:.65rem;right:.65rem;box-shadow:0 1px 6px #00000026}.mode-card.is-active .mode-card__choice{background:var(--sun);border-color:var(--sun)}@media (hover:hover){.mode-card:hover .mode-card__choice{border-color:var(--sun)}}.promotion-note{background:var(--cream);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:2rem;padding-top:2rem;padding-bottom:2rem;display:flex}.promotion-note p{max-width:47rem;margin:0;font-size:1rem}.promotion-note a{text-underline-offset:5px;align-items:center;gap:.75rem;font-size:.85rem;text-decoration:underline;display:flex}.calendar-benefit{width:80px;height:80px;color:var(--deep);stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;flex:none}@media (width<=900px){.trust-strip{gap:.5rem 1rem;padding:1.3rem 1.1rem}.trust-strip a{margin-left:0}.trust-strip p{flex-basis:100%}.promotion-note{flex-direction:column;align-items:flex-start;gap:1rem}.calendar-benefit{width:64px;height:64px}.chooser__intro--choices h2{max-width:16ch}}.header-actions{justify-self:end;align-items:center;gap:1.25rem;min-width:0;display:flex}.country-switch{border:1px solid;border-radius:999px;gap:2px;padding:3px;display:flex}.country-switch a{letter-spacing:.06em;border-radius:999px;place-items:center;min-width:44px;min-height:38px;padding:.35rem .45rem;font-size:.68rem;font-weight:800;display:grid}.country-switch a[aria-current]{background:var(--sun);color:var(--deep)}.hotel-price{margin:0 0 1.5rem}.hotel-price>span,.booking-summary>span{letter-spacing:.1em;font-size:.68rem;font-weight:800;display:block}.hotel-price>strong,.booking-summary>strong{font-family:var(--serif);letter-spacing:-.035em;font-size:clamp(2rem,3.3vw,3.3rem);font-weight:600;line-height:1.25;display:block}.hotel-price p,.booking-summary p{margin:.35rem 0 0;font-size:.88rem}.hotel-price .hotel-price__occupancy{border-left:4px solid var(--sun);color:var(--deep);background:#ffffff9e;margin-top:.7rem;padding:.5rem .7rem;font-weight:800;display:inline-block}.flexibility-benefit{border-top:1px solid var(--line);align-items:center;gap:2rem;margin-top:2rem;padding-top:2rem;display:flex}.flexibility-benefit>span{font-family:var(--serif);color:var(--deep);letter-spacing:-.07em;font-size:6rem;line-height:1}.flexibility-benefit h3{margin-bottom:.65rem;font-size:clamp(1.8rem,3.5vw,3rem)}.flexibility-benefit p{max-width:43rem;margin:0}#plan{scroll-margin-top:76px}.booking-form{min-width:0}.booking-form label{min-width:0;margin-bottom:1.1rem;display:block}.booking-form select{min-width:0;max-width:100%;font-size:.85rem}.booking-form textarea{font:inherit;resize:vertical;background:var(--white);width:100%;min-height:5rem;color:var(--ink);border:1px solid #7895a3;padding:.7rem .9rem}.booking-summary{background:var(--sun-soft);border-left:3px solid var(--sun);margin:1rem 0 1.5rem;padding:1.1rem}.booking-summary>small{color:var(--muted);margin-top:.65rem;font-size:.75rem;line-height:1.5;display:block}.party-fields{border:0;grid-template-columns:1fr 1fr;gap:.9rem 1rem;min-width:0;margin:0 0 1rem;padding:0;display:grid}.party-fields legend{font-family:var(--serif);margin-bottom:.7rem;font-size:1.6rem}.party-fields label{grid-template-rows:auto 3.35rem;align-self:start;gap:.35rem;min-width:0;margin:0;display:grid}.party-fields label>span{align-self:end;line-height:1.3}.party-fields label>input,.party-fields label>select{height:3.35rem;margin:0}.party-fields__heading{border-top:1px solid var(--line);letter-spacing:.08em;text-transform:uppercase;grid-column:1/-1;margin:.35rem 0 -.25rem;padding-top:.75rem;font-size:.78rem;font-weight:800}.booking-flexibility{border-top:1px solid var(--line);padding:1rem 0;font-size:.85rem}.booking-error{color:#9a351d;background:#fff0e5;padding:.85rem;font-size:.85rem}.booking-feedback{margin-top:1rem;font-size:.85rem}.whatsapp>span{font-size:1.75rem;font-weight:700}@media (width>=901px){.hotel-chapter--playacar .hotel-gallery{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;height:650px}.hotel-chapter--playacar .hotel-gallery__item--4{display:none}.hotel-chapter--playacar .hotel-gallery{grid-template-rows:repeat(3,1fr);grid-template-columns:1fr 1fr}.hotel-chapter--playacar .hotel-gallery__item--1{grid-area:1/1/3}.hotel-chapter--playacar .hotel-gallery__item--2{grid-area:1/2/3}.hotel-chapter--playacar .hotel-gallery__item--3{grid-area:3/1}.hotel-chapter--playacar .hotel-gallery__item--4{grid-area:3/2;display:block}}@media (width<=900px){.site-header{grid-template-columns:44px minmax(0,1fr) auto;gap:.3rem}.header-logo{justify-self:center;width:88px}.site-header.is-solid .header-logo{width:68px}.country-switch a{letter-spacing:0;min-width:40px;min-height:40px;padding:.3rem;font-size:.62rem}.country-switch{gap:0;padding:2px}.header-actions{gap:0}#plan{scroll-margin-top:64px}.hotel-price>strong{font-size:2.6rem}.booking-form>.button{letter-spacing:.04em;padding:.85rem .6rem;font-size:.72rem}.flexibility-benefit{align-items:flex-start;gap:1.25rem}.flexibility-benefit>span{font-size:4.5rem}.flexibility-benefit p{font-size:.88rem}.hotel-chapter--playacar .hotel-gallery__item{aspect-ratio:4/3}.rail-controls button{color:var(--deep);border-color:var(--deep);background:0 0}.party-fields{gap:.8rem .75rem}.party-fields legend{font-size:clamp(1.55rem,7vw,2rem)}.party-fields label{grid-template-rows:minmax(2.5rem,auto) 3.1rem}.party-fields label>input,.party-fields label>select{height:3.1rem}.party-fields__heading{font-size:.72rem}}.included-grid .reservation-benefit img{border-radius:50%}.site-header{color:var(--ink);box-shadow:0 1px 0 var(--line);background:#fffffff7}.site-header.is-solid{background:var(--white)}.header-logo{width:190px}.site-header.is-solid .header-logo{width:152px}.button--sun:hover{background:#ffd064}.button--deep:hover{background:var(--deep-2)}.country-switch{border-color:var(--line)}.footer__brand{width:220px;max-width:100%}.footer-cookie-link{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:block}.footer-cookie-link:hover{text-decoration:underline}.site-loader__mark img{width:min(44vw,230px)}.hotel-chapter{--chapter-accent:var(--sun)}.hotel-chapter--caracol{--chapter-accent:var(--palm)}.hotel-chapter--cancun{--chapter-accent:var(--aqua)}.hotel-chapter--finisterra{--chapter-accent:var(--orange);background:var(--orange-soft)}.hotel-chapter--playacar{background:var(--sun-soft)}.hotel-chapter--buganvilias{--chapter-accent:var(--palm);background:var(--aqua-soft)}.hotel-chapter__name{border-top:4px solid var(--chapter-accent);background:var(--white)}.hotel-chapter__name>span:first-child{border-left:3px solid var(--chapter-accent);padding-left:.75rem}.process li>span{background:var(--sun);width:42px;height:42px;color:var(--ink);border-radius:50%;place-items:center;display:grid}.process li:nth-child(2)>span{background:var(--aqua)}.process li:nth-child(3)>span{background:var(--palm)}.quote-form{background:var(--white);border:1px solid var(--line)}.quote-form input:focus-visible,.quote-form select:focus-visible,.quote-form textarea:focus-visible{outline:2px solid var(--deep);outline-offset:3px}.whatsapp{background:var(--palm);color:var(--deep)}@media (width<=900px){.site-header{height:64px;padding-inline:12px}.site-header.is-solid{height:58px}.header-logo{width:clamp(88px,25vw,104px);max-width:100%}.site-header.is-solid .header-logo{width:clamp(84px,23vw,96px)}.menu-button span{width:24px;left:8px}.country-switch{gap:0;padding:2px}.country-switch a{min-width:32px;min-height:32px;padding:0 3px;font-size:.56rem}.site-loader__mark img{width:min(44vw,170px)}.site-loader__mark{gap:16px}.footer__brand{width:100%}.footer__brand .brand-logo{width:150px;max-width:100%}.footer{padding-top:2.8rem}.hotel-chapter__name{top:58px}.hotel-chapter,#plan{scroll-margin-top:58px}}.caly-launcher{z-index:85;color:#173e4c;cursor:pointer;font:inherit;text-align:left;background:#fffefa;border:1px solid #d8e5dd;border-radius:999px;align-items:center;gap:11px;padding:6px 20px 6px 6px;font-size:15px;font-weight:600;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 7px 25px #173e4c24}.caly-launcher>span:first-child{position:relative}.caly-launcher img{object-fit:cover;border-radius:50%;display:block}.caly-launcher i{background:#559a70;border:2px solid #fff;border-radius:50%;width:11px;height:11px;position:absolute;bottom:0;right:0}.caly-launcher small{margin-top:2px;font-size:11px;font-weight:400;display:block}.caly-launcher:focus-visible,.caly-help-link:focus-visible{outline-offset:4px;outline:2px solid #21667a}.caly-help-link{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;min-height:44px;padding:0;text-decoration:underline;display:inline-flex}.caly-help-link svg{fill:none;stroke:currentColor;width:20px;height:20px}.booking-unsure{background:#f2f6ed;border-radius:12px;padding:14px;font-size:14px;line-height:1.5}.caly-starting{z-index:220;color:#173e4c;background:#fffefa;border-radius:18px;padding:16px;position:fixed;bottom:100px;right:24px;box-shadow:0 8px 30px #173e4c26}.caly-launcher[aria-expanded=true]{visibility:hidden}.promotion-note .caly-help-link{flex:none}@media (width<=600px){.caly-launcher{bottom:calc(16px + env(safe-area-inset-bottom));padding:5px;right:16px}.caly-launcher>span:last-child{display:none}.caly-launcher img{width:48px;height:48px}}.trust-strip--heritage{background:#eaf3ee;border-top:1px solid #c9ddd2;border-bottom:1px solid #c9ddd2;flex-wrap:nowrap;gap:1.7rem;padding-top:1.8rem;padding-bottom:1.8rem}.trust-strip__year{border-left:4px solid var(--sun);flex:none;padding-left:1.1rem;line-height:1}.trust-strip__year>span{letter-spacing:.2em;margin-bottom:.4rem;font-size:.62rem;font-weight:800;display:block}.trust-strip__year strong{letter-spacing:-.04em;font-size:3rem}.trust-strip__story .trust-strip__title{font-family:var(--serif);margin-bottom:.35rem;font-size:1.35rem;line-height:1.25}.trust-strip__story p:last-child{max-width:43rem;font-size:.83rem}@media (width>=901px){.hotel-chapter .gallery-shell--5 .hotel-gallery,.hotel-chapter .gallery-shell--6 .hotel-gallery{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));height:650px}.hotel-chapter .gallery-shell--7 .hotel-gallery,.hotel-chapter .gallery-shell--8 .hotel-gallery{grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));height:760px}.hotel-chapter .gallery-shell--5 .hotel-gallery__item,.hotel-chapter .gallery-shell--6 .hotel-gallery__item,.hotel-chapter .gallery-shell--7 .hotel-gallery__item,.hotel-chapter .gallery-shell--8 .hotel-gallery__item{grid-area:auto;min-width:0;min-height:0;display:block}.hotel-chapter .gallery-shell--5 .hotel-gallery__item--1,.hotel-chapter .gallery-shell--7 .hotel-gallery__item--1{grid-column:1/-1}}@media (width<=900px){.trust-strip--heritage{align-items:center;gap:1rem;padding:1.5rem 1.1rem}.trust-strip__year{padding-left:.7rem}.trust-strip__year strong{font-size:2.5rem}.trust-strip__story .trust-strip__title{font-size:1.1rem}.trust-strip__story p:last-child{font-size:.74rem}.hotel-gallery__item figcaption{max-width:none;min-height:2.6rem;margin:0;padding:.65rem .8rem;font-size:.64rem;position:relative;inset:auto}.hotel-chapter .hotel-gallery__item{aspect-ratio:auto;flex-direction:column;max-height:none;display:flex}.hotel-gallery__item img{aspect-ratio:4/3;object-fit:cover;flex:none;width:100%;height:auto}}.resort-layout{grid-template-columns:minmax(0,1fr) minmax(0,2fr);grid-template-areas:"splash splash""story gallery""offer gallery""offer highlights""note note";align-items:start;gap:1.8rem 2.5rem;padding-top:2rem;padding-bottom:2.5rem;display:grid}.resort-splash{background:var(--deep);color:#fff;grid-area:splash;min-height:clamp(480px,58vw,720px);position:relative;overflow:hidden}.resort-splash>img{object-fit:cover;object-position:var(--splash-position,center);width:100%;height:100%;position:absolute;inset:0}.resort-splash__shade{background:linear-gradient(90deg,#012334bd 0%,#01233457 38%,#01233405 64%);position:absolute;inset:0}.resort-splash__copy{z-index:1;border-left:4px solid var(--sun);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#012334d6;width:min(510px,100% - 3rem);padding:clamp(1.2rem,2.2vw,1.7rem);position:absolute;inset:auto auto clamp(1.5rem,3vw,2.5rem) clamp(1.5rem,3vw,2.5rem)}.resort-splash__copy>p{letter-spacing:.14em;margin:0 0 1rem;font-size:.68rem;font-weight:800}.resort-splash__copy h3{color:#fff;text-wrap:balance;max-width:11ch;margin:0 0 1.15rem;font-size:clamp(2.8rem,4.7vw,4.9rem);line-height:.94}.resort-splash__copy ul{flex-wrap:wrap;gap:.55rem;margin:0 0 1.6rem;padding:0;list-style:none;display:flex}.resort-splash__copy li{letter-spacing:.04em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0123346b;border:1px solid #ffffff8c;border-radius:999px;padding:.55rem .75rem;font-size:.69rem;font-weight:800}.resort-splash__offer{border-top:1px solid #ffffff73;justify-content:space-between;align-items:flex-end;gap:1.25rem;padding-top:1rem;display:flex}.resort-splash__offer span{max-width:22rem;font-size:.78rem;line-height:1.45}.resort-splash__offer strong{font-family:var(--serif);white-space:nowrap;font-size:clamp(1.15rem,1.9vw,1.75rem)}.resort-splash__offer small{color:#ffffffc7;max-width:18rem;font-size:.72rem;font-weight:800;line-height:1.4}.resort-splash__cta{min-height:48px;margin-top:1rem;padding:.75rem 1.05rem;font-size:.68rem}.resort-story{grid-area:story;min-width:0}.resort-story .eyebrow{letter-spacing:.12em;margin-bottom:1rem;font-size:.63rem}.resort-story h3{text-wrap:balance;max-width:16ch;margin:0 0 1.25rem;font-size:clamp(2.25rem,3.35vw,3.6rem);line-height:1.04}.resort-story>p:last-child{max-width:40ch;margin:0;font-size:.96rem;line-height:1.65}.resort-layout>.gallery-shell{grid-area:gallery;width:100%;min-width:0}.resort-highlights{border-top:1px solid var(--line);grid-area:highlights;padding-top:1.25rem}.resort-highlights h4{letter-spacing:.15em;margin:0 0 1rem;font-size:.64rem}.resort-highlights ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem 1.25rem;margin:0;padding:0;list-style:none;display:grid}.resort-highlights li{align-items:flex-start;gap:.6rem;font-size:.78rem;font-weight:700;line-height:1.45;display:flex}.resort-highlights li>span{background:var(--sun);border-radius:50%;flex:0 0 1.4rem;place-items:center;height:1.4rem;font-size:.8rem;display:grid}.resort-offer{border-top:1px solid var(--line);grid-area:offer;min-width:0;padding-top:1.25rem}.resort-offer .hotel-price{margin-bottom:1rem}.resort-offer .hotel-price>strong{font-size:clamp(2rem,2.9vw,2.9rem)}.resort-offer .hotel-price p{font-size:.8rem}.hotel-price--pending{border-top:3px solid var(--sun);padding:.9rem 0}.hotel-price--pending>span{letter-spacing:.08em;font-size:.7rem}.resort-offer .button{gap:.6rem;width:100%;min-height:3.1rem;padding:.8rem 1rem;font-size:.68rem}.resort-note{border-top:1px solid var(--line);color:var(--muted);grid-area:note;padding-top:1rem;font-size:.69rem;line-height:1.55;display:block}@media (width>=901px){.hotel-chapter .resort-layout .hotel-gallery{grid-template-rows:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;height:auto;margin:0;padding:0;display:grid;overflow:visible}.hotel-chapter .resort-layout .hotel-gallery__item{aspect-ratio:auto;background:#ffffffb3;flex-direction:column;grid-area:auto;min-width:0;height:auto;min-height:0;display:flex}.hotel-chapter .resort-layout .hotel-gallery__item[aria-hidden=true]{display:none}.hotel-chapter .resort-layout .hotel-gallery__item img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.hotel-chapter .resort-layout .hotel-gallery__item figcaption{max-width:none;min-height:2.65rem;color:var(--deep);letter-spacing:.045em;background:0 0;margin:0;padding:.65rem .7rem;font-size:.61rem;line-height:1.45;position:static}.resort-layout .rail-controls{display:none}}@media (width>=1200px){.hotel-chapter .resort-layout .gallery-shell--7 .hotel-gallery,.hotel-chapter .resort-layout .gallery-shell--8 .hotel-gallery{grid-template-columns:repeat(6,minmax(0,1fr))}.hotel-chapter .resort-layout .gallery-shell--7 .hotel-gallery__item,.hotel-chapter .resort-layout .gallery-shell--8 .hotel-gallery__item{grid-column:span 2}.hotel-chapter .resort-layout .gallery-shell--7 .hotel-gallery__item:nth-child(-n+4),.hotel-chapter .resort-layout .gallery-shell--8 .hotel-gallery__item:nth-child(-n+2){grid-column:span 3}.hotel-chapter .resort-layout .gallery-shell--7 .hotel-gallery__item:nth-child(-n+4) img,.hotel-chapter .resort-layout .gallery-shell--8 .hotel-gallery__item:nth-child(-n+2) img{aspect-ratio:16/9}.hotel-chapter .resort-layout .gallery-shell--9 .hotel-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.hotel-chapter .resort-layout .gallery-shell--10 .hotel-gallery,.hotel-chapter .resort-layout .gallery-shell--11 .hotel-gallery,.hotel-chapter .resort-layout .gallery-shell--12 .hotel-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}.hotel-chapter .resort-layout .gallery-shell--10 .hotel-gallery__item:nth-child(-n+2){grid-column:span 2}.hotel-chapter .resort-layout .gallery-shell--10 .hotel-gallery__item:nth-child(-n+2) img{aspect-ratio:16/9}}@media (width>=901px) and (width<=1199px){.resort-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);gap:1.5rem}.hotel-chapter .resort-layout .hotel-gallery,.resort-highlights ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.resort-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"splash""story""gallery""highlights""offer""note";gap:1.5rem;padding:1.1rem 1.1rem 2.5rem}.resort-splash{grid-template-rows:clamp(330px,46svh,380px) auto;grid-template-columns:minmax(0,1fr);min-height:0;margin:0 -1.1rem;display:grid;overflow:hidden}.resort-splash>img{object-position:var(--splash-mobile-position,var(--splash-position,center));grid-area:1/1;width:100%;height:100%;position:relative;inset:auto}.resort-splash__shade{z-index:1;pointer-events:none;background:linear-gradient(#0000 62%,#01233433);grid-area:1/1;position:relative;inset:auto}.resort-splash__copy{z-index:2;border-left:0;border-top:4px solid var(--sun);background:var(--deep);-webkit-backdrop-filter:none;backdrop-filter:none;grid-area:2/1;width:auto;padding:1.15rem 1.1rem 1.35rem;position:relative;inset:auto}.resort-splash__copy>p{letter-spacing:.08em;margin-bottom:.75rem;font-size:.64rem;line-height:1.35}.resort-splash__copy h3{margin-bottom:1rem;font-size:clamp(2.4rem,10.5vw,3rem);line-height:.96}.resort-splash__offer{flex-direction:column;align-items:flex-start;gap:.55rem}.resort-splash__offer strong{white-space:normal}.resort-splash__cta{width:100%}.resort-story h3{max-width:19ch;font-size:clamp(2.4rem,9vw,3.5rem)}.resort-story>p:last-child{max-width:42rem}.resort-highlights ul{grid-template-columns:repeat(2,minmax(0,1fr))}.resort-offer .hotel-price>strong{font-size:2.5rem}.resort-layout .rail-controls{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.75rem 0 0;display:grid}.resort-layout .rail-controls__caption{letter-spacing:.045em;min-width:0;font-size:.72rem}.resort-layout .rail-controls__count{letter-spacing:.04em;white-space:nowrap;font-size:.72rem}}.hero.hero--offer{align-items:center;height:auto;min-height:100svh;padding:128px 0 70px}.hero__picture{width:100%;height:100%;display:block;position:absolute;inset:0}.hero--offer .hero__image{object-fit:cover;object-position:left center;width:100%;height:100%;position:absolute;inset:0;transform:none}.hero--offer .hero__shade{background:linear-gradient(90deg,#0000 30%,#002c451f 45%,#002c45a8 76%,#002c45cc)}.hero--offer .hero__content{text-align:right;width:43%;max-width:680px;margin:0 4.5% 0 auto;padding:0}.hero--offer .eyebrow{letter-spacing:.12em;margin:0 0 1rem;font-size:.8rem}.hero--offer h1{letter-spacing:-.035em;text-wrap:balance;max-width:16ch;margin:0 0 1.2rem auto;font-size:clamp(3rem,4.8vw,5.5rem);line-height:1}.hero--offer .hero__stay{white-space:nowrap;max-width:none;margin:0 0 1.4rem auto;font-size:clamp(1.3rem,2.3vw,2rem);line-height:1.2}.hero__occupancy{width:fit-content;color:var(--deep);text-align:right;background:#ffbf02f5;justify-items:end;gap:.1rem;margin:0 0 1rem auto;padding:.55rem .8rem;display:grid}.hero__occupancy span{letter-spacing:.15em;font-size:.58rem;font-weight:800}.hero__occupancy strong{font-size:clamp(.95rem,1.35vw,1.15rem);line-height:1.2}.hero__price{gap:.15rem;margin:0 0 1.5rem;display:grid}.hero__price>span{font-size:.95rem}.hero__price strong{color:var(--sun);letter-spacing:-.045em;white-space:nowrap;font-size:clamp(2.2rem,3.6vw,3.9rem);font-weight:800;line-height:1.12}.hero__price sup{vertical-align:top;font-size:1rem}.hero__price small{color:#fff;font-size:.85rem}.hero__tariff-pending{border-left:4px solid var(--sun);color:#fff;background:#012f45c7;max-width:30rem;margin:0 0 1.5rem auto;padding:.8rem 1rem;font-size:.85rem;font-weight:700;line-height:1.45}.hero--offer .hero__actions{justify-content:flex-end;align-items:flex-end}.hero--offer .button{letter-spacing:.015em;text-transform:none;min-height:54px;padding:.8rem 1.8rem;font-size:1rem}.included.section{padding-top:clamp(3rem,4vw,4.5rem);padding-bottom:clamp(2.5rem,4vw,4rem)}#incluye{scroll-margin-top:76px}.included .included__intro{max-width:48rem;margin-bottom:2rem;display:block}.included__intro h2{max-width:20ch;font-family:var(--serif);letter-spacing:-.035em;text-transform:none;text-wrap:balance;margin:0 0 1rem;font-size:clamp(2.5rem,4.4vw,4rem);font-weight:500;line-height:1.08}.included__intro>p{max-width:36ch;font-family:var(--sans);letter-spacing:-.015em;text-wrap:pretty;margin:0;font-size:clamp(1.125rem,1.6vw,1.35rem);font-weight:500;line-height:1.5}.included-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 2rem}.included-grid article{grid-template-columns:96px minmax(0,1fr);gap:1rem;padding:1rem 0}.included-grid img{aspect-ratio:auto;width:96px;height:96px}.included-grid h3{margin-bottom:.45rem;font-size:clamp(1.25rem,1.65vw,1.65rem)}.included-grid p{font-size:.76rem;line-height:1.45}.included__note{color:var(--ink);margin:.7rem 0 0;font-size:.72rem}.included__payoff{border-top:1px solid var(--line);font-family:var(--serif);justify-content:flex-end;gap:.35em;margin:1rem 0 0;padding-top:1rem;font-size:clamp(1.7rem,2.6vw,2.8rem);line-height:1.05;display:flex}.included__payoff strong{font-style:italic;font-weight:400}.resorts-disclaimer.section{color:var(--muted);border-top:1px solid var(--line);margin:0;padding-top:1.2rem;padding-bottom:1.2rem;font-size:.78rem}.promotion-truth{background:var(--deep);color:#fff;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(3rem,7vw,7rem);display:grid}.promotion-truth.section{padding-top:clamp(3.5rem,5vw,5.5rem);padding-bottom:clamp(3.5rem,5vw,5.5rem)}.promotion-truth__intro{align-self:start;position:static}.promotion-truth .eyebrow{color:var(--sun)}.promotion-truth h2{text-wrap:balance;margin:0 0 1.6rem;font-size:clamp(3.2rem,5vw,5.7rem);line-height:.97}.promotion-truth h2 span,.promotion-truth h2 em{display:block}.promotion-truth h2 em{color:var(--sun)}.promotion-truth__intro>p:last-child{color:#d9ebf2;max-width:34rem;margin:0;font-size:1rem;line-height:1.7}.promotion-truth__steps{margin:0;padding:0;list-style:none}.promotion-truth__steps li{border-top:1px solid #ffffff38;grid-template-columns:56px 1fr;gap:1.2rem;padding:1.8rem 0;display:grid}.promotion-truth__steps li:last-child{border-bottom:1px solid #ffffff38}.promotion-truth__steps li>span{background:var(--sun);width:48px;height:48px;color:var(--deep);letter-spacing:.08em;border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid}.promotion-truth__steps h3{color:#fff;font-family:var(--serif);margin:0 0 .55rem;font-size:clamp(1.6rem,2.3vw,2.2rem);line-height:1.08}.promotion-truth__steps p{color:#cde1e9;max-width:42rem;margin:0;font-size:.9rem;line-height:1.65}.promotion-truth__closing{background:var(--sun);color:var(--deep);font-family:var(--serif);text-align:center;grid-column:1/-1;margin:0;padding:clamp(1.4rem,3vw,2.2rem);font-size:clamp(1.7rem,3.2vw,3.2rem);line-height:1.08}.country-confirm{align-items:flex-start;gap:.6rem;display:flex!important}.country-confirm input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--deep);flex-shrink:0;margin:.15rem 0 0}.country-confirm span{font-size:.875rem;line-height:1.4}.party-fields input{width:100%;min-width:0}.traveller-intake{color:#173e51;background:#f5fafc;border:1px solid #c7dce4;border-radius:12px;padding:1rem}.traveller-intake h3{font:700 1.25rem var(--sans);letter-spacing:0;line-height:1.3}.traveller-intake>p{font-size:.95rem}.traveller-intake label{margin-bottom:.8rem;font-size:.875rem;display:block}.traveller-intake input,.traveller-intake select{color:#173e51;width:100%;min-width:0;min-height:44px;font:inherit;background:#fff;border:1px solid #8caab8;border-radius:6px;padding:.5rem;display:block}.traveller-intake .party-fields{border:1px solid #c7dce4;grid-template-columns:1fr 1fr;gap:.6rem;min-width:0;margin:1rem 0;padding:.7rem;display:grid}.traveller-intake small{margin-bottom:1rem;font-size:.8rem;line-height:1.5;display:block}.traveller-intake .caly-primary{margin-top:1rem}.traveller-intake .booking-error{color:#8d2626;font-size:.9rem}.promotion-offer{z-index:80;background:var(--deep);color:#fff;border-radius:18px;width:min(360px,100vw - 32px);padding:1.5rem;position:fixed;bottom:30px;left:24px;box-shadow:0 12px 45px #002c4540}.promotion-offer__close{color:#fff;cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;font-size:1.7rem;position:absolute;top:8px;right:10px}.promotion-offer .eyebrow{max-width:85%;font-size:.75rem}.promotion-offer h2{margin:0 0 .8rem;font-size:2.3rem;line-height:1.1}.promotion-offer p{margin-bottom:.5rem}.promotion-offer small{font-size:.8rem}.promotion-offer details{margin:1rem 0;font-size:.875rem}.promotion-offer summary{cursor:pointer}.promotion-offer .button{font-size:.875rem}@media (width<=900px){.hero.hero--offer{height:auto;min-height:100svh;padding:105px 0 48px}.hero--offer .hero__content{text-align:right;width:48%;max-width:430px;margin:0 5% 0 auto;padding:0}.hero--offer h1{font-size:clamp(2.4rem,5.2vw,3.8rem)}.hero--offer .hero__stay{font-size:clamp(1.1rem,2.8vw,1.65rem)}.hero--offer .hero__actions .button{width:auto;max-width:100%;font-size:.95rem}.promotion-offer{max-height:65svh;bottom:80px;left:16px;overflow:auto}}@media (width<=600px) and (orientation:portrait){.hero.hero--offer{align-items:flex-start;min-height:100svh;padding:86px 0 32px}.hero--offer .hero__image{object-position:left bottom}.hero--offer .hero__shade{background:linear-gradient(#00233761,#0023372e 50%,#0000 68%),linear-gradient(270deg,#0023377a,#0000 95%);display:block}.hero--offer .hero__content{flex-direction:column;align-items:flex-end;width:88%;max-width:390px;min-height:calc(100svh - 118px);margin:0 5% 0 auto;display:flex}.hero--offer .eyebrow{letter-spacing:.1em;margin-bottom:.65rem;font-size:.65rem}.hero--offer h1{max-width:16ch;margin-bottom:.85rem;font-size:clamp(2rem,8.7vw,3.1rem);line-height:1.02}.hero--offer .hero__stay{margin-bottom:.8rem;font-size:clamp(1.15rem,5.4vw,1.8rem)}.hero__occupancy{max-width:100%;margin-bottom:.7rem;padding:.45rem .65rem}.hero__occupancy strong{font-size:clamp(.82rem,3.7vw,1rem)}.hero__price{margin-bottom:1rem}.hero__price>span{font-size:.85rem}.hero__price strong{font-size:clamp(2rem,8.5vw,3rem)}.hero__price small{font-size:.72rem}.hero__tariff-pending{max-width:22rem;margin-bottom:1rem;padding:.68rem .8rem;font-size:.76rem}.hero--offer .hero__actions .button{min-height:48px;padding:.7rem 1.35rem}.hero--offer .hero__actions{margin-top:auto}}@media (width<=600px) and (height<=700px) and (orientation:portrait){.hero.hero--offer{padding-top:78px}.hero--offer h1{margin-bottom:.6rem;font-size:1.95rem}.hero--offer .hero__stay{margin-bottom:.6rem;font-size:1.15rem}.hero__occupancy{margin-bottom:.45rem;padding:.35rem .5rem}.hero__occupancy strong{font-size:.78rem}.hero__price{margin-bottom:.7rem}.hero__price strong{font-size:2rem}.hero--offer .eyebrow{margin-bottom:.5rem}}@media (width<=900px){.resort-layout .hotel-gallery{gap:12px;width:100%;margin:0;padding:0;scroll-padding-inline:0}.hotel-chapter .resort-layout .hotel-gallery__item{flex:0 0 100%;height:auto;min-height:0;max-height:none}.resort-layout .rail-controls{background:var(--cream);justify-content:space-between;align-items:center;gap:.5rem;padding:.25rem .65rem;display:flex}.rail-controls__caption{letter-spacing:.04em;min-width:0;font-size:.64rem;line-height:1.4}.resort-layout .rail-controls>div{flex-shrink:0;gap:.35rem}.resort-layout .rail-controls button{border:1px solid var(--deep);width:36px;height:36px;color:var(--deep);background:0 0;border-radius:50%;place-items:center;padding:0;display:grid}.resort-layout .rail-controls button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}}.hero--offer .hero-reveal--title{--hero-delay:80ms}.hero--offer .hero-reveal--eyebrow{--hero-delay:.14s}.hero--offer .hero-reveal--stay{--hero-delay:.34s}.hero--offer .hero-reveal--occupancy{--hero-delay:.5s}.hero--offer .hero-reveal--price{--hero-delay:.68s}.hero--offer .hero-reveal--action{--hero-delay:.9s}@media (prefers-reduced-motion:no-preference){.hero--offer[data-entered=false] .hero-reveal{opacity:0;visibility:hidden}.hero--offer[data-entered=true] .hero-reveal{animation:offer-arrive .6s cubic-bezier(.2,.7,.2,1) var(--hero-delay,0s) both}.hero--offer[data-entered=true] .hero-reveal--eyebrow{animation-name:offer-caption-arrive;animation-duration:.5s}.hero--offer[data-entered=true]:focus-within .hero-reveal{opacity:1;visibility:visible;animation:none;transform:none}}@keyframes offer-arrive{0%{opacity:0;visibility:hidden;transform:translateY(14px)}to{opacity:1;visibility:visible;transform:translateY(0)}}@keyframes offer-caption-arrive{0%{opacity:0;visibility:hidden}to{opacity:1;visibility:visible}}@media (prefers-reduced-motion:reduce){.hero--offer .hero-reveal{opacity:1;visibility:visible;animation:none;transform:none}}@media (prefers-reduced-motion:no-preference){.motion-ready .included-grid[data-reveal=stagger].is-visible>article:nth-child(5){transition-delay:.32s}.motion-ready .included-grid[data-reveal=stagger].is-visible>article:nth-child(6){transition-delay:.4s}}@media (width<=900px){.included.section{padding-top:3rem;padding-bottom:3rem}#incluye{scroll-margin-top:64px}.included .included__intro{margin-bottom:1.7rem}.included__intro h2{max-width:20ch;font-size:clamp(2.1rem,8.8vw,3.25rem);line-height:1.1}.included-grid{grid-template-columns:1fr;gap:0}.included-grid article{grid-template-columns:78px minmax(0,1fr);gap:1rem;padding:.9rem 0}.included-grid img{width:78px;height:78px}.included-grid h3{font-size:clamp(1.3rem,5.5vw,1.8rem)}.included__payoff{margin-top:1.4rem;font-size:clamp(2rem,9vw,3.1rem);display:block}.included__payoff span,.included__payoff strong{display:block}.promotion-truth{grid-template-columns:1fr;gap:2.4rem;padding:4.5rem 1.1rem}.promotion-truth__intro{position:static}.promotion-truth h2{font-size:clamp(2.9rem,12vw,4.3rem)}.promotion-truth__steps li{grid-template-columns:44px 1fr;gap:.9rem;padding:1.4rem 0}.promotion-truth__steps li>span{width:40px;height:40px}.promotion-truth__steps h3{font-size:clamp(1.5rem,7vw,2rem)}.promotion-truth__closing{margin:0 -.1rem;padding:1.4rem 1rem;font-size:clamp(1.8rem,8vw,2.6rem)}}.traveller-intake .party-fields>label{grid-template-rows:minmax(2.8em,auto) auto;align-content:end;gap:.25rem;min-width:0;display:grid}.traveller-intake .party-fields>label>span{align-self:end;line-height:1.35}.traveller-intake .party-fields>label>input,.traveller-intake .party-fields>label>select{margin:0}@media (width<=600px) and (orientation:portrait){.hero--offer .hero__content{padding-top:clamp(24px,7svh,65px)}}@media (width>=901px){.hero--offer .hero__content{transform:translateY(24px)}}
