:root{color-scheme:dark;--gold:#e1c27b;--white:#f8f6ef;--muted:#ddd9d0;--line:#514a3d;--black:#10100f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:'Source Sans 3',sans-serif;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}::selection{background:var(--gold);color:#111}.skip{position:absolute;top:-100px;left:1rem;background:#fff;color:#111;padding:.5rem;z-index:100}.skip:focus{top:1rem}.wrap{width:min(1320px,88%);margin:auto}.header{height:96px;display:flex;align-items:center;gap:3rem;position:absolute;z-index:3;top:0;left:6%;right:6%;border-bottom:1px solid #ffffff55}.brand img{width:90px;height:90px;object-fit:contain}.header nav{display:flex;gap:2rem;margin:auto;font-size:.9rem}.header nav a,.header-contact,.text-link,.tour a,.tour-heading a{transition:color 180ms ease}.header nav a:hover,.header-contact:hover,.text-link:hover,.tour a:hover,.tour-heading a:hover{color:var(--gold)}.header-contact{font-size:.9rem;border-bottom:1px solid var(--gold);padding-bottom:.4rem}.menu{display:none}.hero{position:relative;min-height:700px;height: min(900px,100svh);display:flex;align-items:center}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.24)),url('/assets/playa.jpg') center/cover}.hero-copy{position:relative;margin:80px 6% 0;max-width:830px}.hero h1,h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.03em;line-height:1.06;color:var(--gold);text-wrap:balance}.hero h1{font-size:clamp(3.5rem,7.2vw,6.8rem);margin:0 0 1.5rem}.hero h1 em,h2 em{font-weight:400}.hero-copy p{font-size:clamp(1.1rem,1.5vw,1.3rem);max-width:520px;margin:0 0 2rem;color:#fff}.primary-link{display:inline-flex;gap:2.5rem;align-items:center;background:var(--gold);color:#17130c;padding:1rem 1.3rem;font-weight:700;transition:background 180ms ease,transform 150ms ease}.primary-link:hover{background:#f3d99d}.primary-link:active{transform:scale(.98)}.hero-bottom{position:absolute;bottom:2rem;left:6%;font-size:.75rem;letter-spacing:.17em}.hero-bottom span{color:var(--gold);padding:0 .5rem}.intro{padding:120px 0 90px;display:grid;grid-template-columns:1.1fr .7fr;align-items:end;gap:8%}.intro h2,.concierge h2{font-size:clamp(2.8rem,5vw,5rem);margin:0}.intro p,.place-top p,.concierge p{color:var(--muted);max-width:490px;font-size:1.13rem;margin:0;line-height:1.7}.place{padding:55px 0 110px;border-top:1px solid var(--line)}.place-top{display:grid;grid-template-columns:1fr 1.15fr;gap:8%;align-items:center}.place-top h2{font-size:clamp(3.3rem,6vw,6rem);margin:0 0 1.4rem}.place-top p{margin-bottom:2rem}.text-link,.tour a,.tour-heading a{display:inline-block;color:var(--gold);border-bottom:1px solid #9e8757;padding-bottom:.25rem;font-weight:600}.place-top img{width:100%;height:380px;object-fit:cover}.tour-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:4.5rem 0 1.4rem}.tour-heading h3{font:400 clamp(1.5rem,2.4vw,2rem) Georgia,serif;color:var(--gold);margin:0}.tour-heading a{white-space:nowrap}.tour-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);gap:2.5rem}.tour{padding:1.5rem 0}.tour h4{font:400 1.5rem/1.2 Georgia,serif;color:var(--gold);margin:0 0 .8rem}.tour p,.tour-empty{color:var(--muted);margin:0 0 1.4rem}.tour-empty{grid-column:1/-1;padding-top:1.5rem;max-width:640px}.concierge{background:#201d17;padding:110px 0}.concierge-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:8%;align-items:center}.concierge .primary-link{margin-top:1.7rem}.concierge .note{font-size:.9rem;margin-top:1.5rem;color:#d4cbb9}footer{padding:65px 0 25px;background:#090909}.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}.footer-inner img{object-fit:contain}.footer-inner p{max-width:290px;color:var(--muted)}.footer-inner a{display:block;margin:.5rem 0}.footer-inner a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.5rem;display:flex;justify-content:space-between;color:#d4cbb9;font-size:.85rem}@media(max-width:800px){.header{height:78px;gap:1rem}.brand img{width:76px;height:76px}.menu{display:block;margin-left:auto;background:none;color:white;border:1px solid #b5a781;padding:.5rem .8rem;font:inherit}.header-contact{display:none}.header nav{display:none;position:absolute;top:77px;left:-7%;right:-7%;margin:0;padding:1.5rem 6%;background:#151410;flex-direction:column;gap:1rem}.header nav.open{display:flex}.hero{min-height:650px;height:90svh}.hero-copy{margin-top:65px}.intro,.place-top,.concierge-inner{grid-template-columns:1fr;gap:2rem}.intro{padding:80px 0 65px}.place{padding:45px 0 75px}.place-top img{height:330px}.tour-heading{margin-top:3rem}.tour-list{gap:1.5rem}.concierge{padding:75px 0}}@media(max-width:550px){.hero h1{font-size:clamp(3.1rem,12vw,4.2rem)}.hero-photo{background-position:60% center}.hero-copy p{font-size:1.05rem}.place-top img{height:250px}.tour-list{grid-template-columns:1fr;gap:0}.tour{border-bottom:1px solid var(--line)}.tour-heading{align-items:flex-start}.tour-heading h3{font-size:1.45rem}.footer-inner{grid-template-columns:1fr 1fr;gap:1rem}.footer-inner>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}
/* Final typography and touch-target refinements. */
.hero h1 em,.intro h2 em,.concierge h2 em{font-style:normal}
.hero h1{font-size:clamp(3.2rem,7vw,6rem)}
.hero-photo{background-image:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.32)),url('/assets/playa.jpg')}
.menu{min-height:44px;min-width:68px;padding:10px 16px;cursor:pointer}
.header nav a,.footer-inner a{padding:8px 0}
.tour-empty a{color:var(--gold);text-decoration:underline;text-underline-offset:4px}
.tour{display:flex;flex-direction:column;align-items:flex-start}.tour a{margin-top:auto}.tour p{max-width:38ch}
@media(max-width:550px){.hero h1{font-size:clamp(2.8rem,11vw,4rem)}.tour-heading{flex-wrap:wrap}.hero-photo{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url('/assets/playa.jpg')}}
/* Carrusel de experiencias */
.tour-list{display:block;border:0}.carousel-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 1.5rem)/2);gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b79b60 #26231d;overscroll-behavior-inline:contain;padding-bottom:1rem}.tour-card{scroll-snap-align:start;min-width:0}.tour-card-link{display:block}.tour-picture{aspect-ratio:16/10;overflow:hidden;background:#28251f;display:grid;place-items:center;color:#e1d6c0}.tour-picture span{font-size:.95rem;padding:1rem;text-align:center}.tour-picture img{width:100%;height:100%;object-fit:cover;transition:transform 250ms ease}.tour-card-link:hover img{transform:scale(1.025)}.tour-card h4{font:400 clamp(1.35rem,2.1vw,1.8rem)/1.25 Georgia,serif;color:var(--gold);margin:1rem 0 .4rem}.tour-card-link:focus-visible{outline-offset:-3px}.carousel-controls{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}.carousel-controls button{min-width:48px;min-height:44px;background:transparent;border:1px solid #a18d65;color:#f8f6ef;padding:.6rem 1rem;font:600 1rem 'Source Sans 3',sans-serif;cursor:pointer}.carousel-controls button:hover{background:#332d21}.carousel-controls button:active{transform:scale(.97)}.tour-empty{border-top:1px solid var(--line);padding-top:1.5rem}@media(max-width:600px){.carousel-track{grid-auto-columns:88%;gap:1rem}.tour-card h4{font-size:1.4rem}}@media(prefers-reduced-motion:reduce){.tour-picture img{transition:none}}
/* Tamaño y desplazamiento continuo de las experiencias. */
.carousel-track{grid-auto-columns:calc((100% - 2.25rem)/3.15);gap:1.125rem;scroll-snap-type:none;scroll-behavior:auto}.tour-picture{aspect-ratio:4/3}.tour-card h4{font-size:clamp(1.15rem,1.5vw,1.45rem);margin-top:.75rem}.carousel-controls{margin-top:.6rem}@media(max-width:800px){.carousel-track{grid-auto-columns:43%;gap:1rem}}@media(max-width:550px){.carousel-track{grid-auto-columns:68%;gap:.8rem}.tour-card h4{font-size:1.2rem}}
/* Botones redondeados en la portada. */
.primary-link,.menu,.carousel-controls button{border-radius:999px}
.site-language{min-height:44px;max-width:120px;padding:.55rem .7rem;border:1px solid #a18d65;border-radius:999px;background:#171612;color:#f8f6ef;font:600 .9rem Source Sans 3,sans-serif;cursor:pointer}.site-language:focus-visible{outline:3px solid #e1c27b;outline-offset:3px}@media(max-width:800px){.header .menu{margin-left:auto}.site-language{font-size:.85rem;max-width:98px}}.search-section{padding:4rem 0 0}.search-section h2{font-size:clamp(2rem,3vw,2.7rem);margin:0 0 1.5rem}.home-search{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:1rem;align-items:end}.home-search label{display:grid;gap:.4rem;color:#f8f6ef;font-weight:600}.home-search input,.home-search select{width:100%;min-height:50px;padding:.7rem 1rem;border:1px solid #8e7a54;border-radius:10px;background:#201d17;color:#f8f6ef;font:inherit}.home-search button{min-height:50px;border:0;cursor:pointer}.search-section>p{color:#ddd9d0;font-size:.95rem;margin:.8rem 0 0}@media(max-width:800px){.home-search{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.home-search{grid-template-columns:1fr}.home-search button{justify-content:center}}/* Portada: blanco, verde y negro. */
body{--gold:#1d663b;--white:#15251b;--muted:#42574a;--line:#cad8cd;--black:#fff;color-scheme:light}.header{color:#fff}.hero h1{color:#fff}.hero-copy p,.hero-bottom{color:#fff}.hero-bottom span{color:#d0eacb}.primary-link{background:#176438;color:#fff}.primary-link:hover{background:#104c29;color:#fff}.intro,.place{background:#fff}.tour-picture{background:#eaf2ea;color:#344b3a}.carousel-controls button{color:#173d27;border-color:#78957f}.carousel-controls button:hover{background:#e1eee3}.concierge{background:#eaf3eb}.concierge .note{color:#42574a}footer{background:#102b1d;color:#fff}footer .footer-inner p,footer .footer-bottom{color:#e4eee5}.menu,.site-language{background:#102b1d;color:#fff;border-color:#d3e1d5}.home-search label{color:#15251b}.home-search input,.home-search select{background:#fff;color:#15251b;border-color:#78957f}.search-section>p{color:#42574a}@media(max-width:800px){.header nav{background:#102b1d;color:#fff}}
.journey,.homepage-reviews,.home-faq{padding:4.5rem 0;border-top:1px solid #cad8cd}.journey h2,.homepage-reviews h2,.home-faq h2{font-size:clamp(2rem,3.5vw,3.3rem);margin:0 0 1.5rem}.journey-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.journey h3,.homepage-reviews h3{color:#163d25;font-size:1.2rem}.journey p,.home-faq p{color:#42574a}.home-faq details{padding:1rem 0;border-top:1px solid #cad8cd}.home-faq summary{cursor:pointer;font-weight:700}.review-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:760px}.review-form label{display:grid;gap:.4rem}.review-form input,.review-form select,.review-form textarea{width:100%;padding:.8rem;border:1px solid #78957f;border-radius:10px;background:white;color:#15251b;font:inherit}.review-form .review-trap{position:absolute;left:-10000px}.review-form button{border:0;border-radius:999px;background:#176438;color:#fff;padding:.8rem 1.2rem;cursor:pointer}.review-list{display:grid;gap:1rem}.review-item{border-top:1px solid #cad8cd;padding:1rem 0}@media(max-width:650px){.journey-steps,.review-form{grid-template-columns:1fr}}.privacy-choice{bottom:5.5rem;max-height:70vh;overflow:auto}}

[data-caribe][hidden]{display:none!important}
