﻿@font-face{font-family:Sora;src:url('/assets/sora-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Sora;src:url('/assets/sora-600.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Sora;src:url('/assets/sora-700.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:'DM Sans';src:url('/assets/dm-sans-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:'DM Sans';src:url('/assets/dm-sans-500.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:'DM Sans';src:url('/assets/dm-sans-700.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
:root{--crt-bg:#101713;--crt-surface:#20392c;--crt-surface-deep:#182a20;--crt-ink:#f5f7f2;--crt-muted:#cedbd0;--crt-action:#b8ef65;--crt-gold:#c9a55c;--crt-border:#53685a;--crt-radius:14px;--crt-ease:cubic-bezier(.23,1,.32,1);--primary:#b8ef65;--forest:#101713;--ink:#f5f7f2;--muted:#cedbd0;--line:#53685a;--sand:#20392c;--cream:#101713}
*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:1rem}body.adventure-home,body.public-page,body.admin-page,body.gallery-page{margin:0;background:var(--crt-bg);color:var(--crt-ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65;color-scheme:dark}body :is(h1,h2,h3,h4),body.public-page :is(h1,h2,h3,h4),body.public-page .inside-main :is(h1,h2,h3),body.admin-page :is(h1,h2,h3){font-family:Sora,sans-serif;color:var(--crt-ink)!important;letter-spacing:-.025em;font-weight:600;line-height:1.16;text-wrap:balance}body :is(h1 em,h2 em){color:inherit!important;font-style:normal}h1{font-size:clamp(2.35rem,5vw,4.6rem)}h2{font-size:clamp(1.8rem,3.3vw,3rem)}h3{font-size:clamp(1.15rem,1.5vw,1.45rem)}p{line-height:1.7}a{color:inherit}button,input,select,textarea{font-family:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--crt-action)!important;outline-offset:3px}::selection{background:var(--crt-action);color:#101713}
/* Shared actions */
body :is(.primary-link,.button),body.public-page :is(.button,.whatsapp-float),body.admin-page .button,body.gallery-page .button{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:48px;padding:.8rem 1.3rem;border:1px solid var(--crt-action);border-radius:999px;background:var(--crt-action);color:#14200f;font:700 .95rem/1.35 'DM Sans',sans-serif;text-decoration:none;box-shadow:none;cursor:pointer;transition:background-color 180ms ease,border-color 180ms ease,transform 150ms var(--crt-ease)}body :is(.primary-link,.button):hover,body.public-page :is(.button,.whatsapp-float):hover{background:#cbf890;color:#14200f;border-color:#cbf890}body :is(.primary-link,.button):active,body button:active{transform:scale(.98)}body :is(button,.inside-menu,.menu,.language,.site-language,.clear,.text-button,.carousel-controls button,.privacy-settings){min-height:44px;border-radius:999px;font-family:'DM Sans',sans-serif}body button:disabled{opacity:.55;cursor:not-allowed;transform:none!important}body :is(.clear,.text-button,.inside-menu,.menu,.site-language,.carousel-controls button,.privacy-settings){background:transparent;color:var(--crt-ink);border:1px solid #718578;padding:.65rem 1rem}body :is(.text-link,.underlink,.secondary-link,.card-link),body.public-page :is(.card-link,.secondary-link,.underlink,.inside-main .contact-list a,.consent a){color:var(--crt-action)}body :is(.text-link,.underlink,.secondary-link,.card-link):hover{color:#dbffa9}body .primary-link span,body .text-link span,body .header-contact span{color:inherit}
/* Shared navigation, footer and layouts */
body.public-page :is(.inside-header,.admin-header,.header),body.gallery-page .gallery-admin-header,body.admin-page .admin-header{background:#111d16;color:var(--crt-ink);border-color:#415649}body.public-page :is(.inside-main,.booking-shell,.legal){background:transparent;color:var(--crt-ink)}body.public-page :is(.inside-main p,.inside-intro,.booking-intro,.booking-shell label small,.card-content p,.inside-card small,.service-card small),body .filter-note{color:var(--crt-muted)}body.public-page :is(.inside-card,.service-card,.booking-card,.review-item,.catalog-filters,.detail-aside,.notice,.booking-summary),body.admin-page :is(#login,.panel,.review-admin-card),body.gallery-page .gallery-admin{background:var(--crt-surface);color:var(--crt-ink);border:1px solid #405b49;border-radius:var(--crt-radius);box-shadow:none}body.public-page .booking-shell .notice{background:var(--crt-surface-deep);color:var(--crt-ink);border-color:#53685a}body.public-page :is(.filters label,.catalog-filters label,.empty,.empty-state,.empty h3,.empty p,.review-item p){color:var(--crt-ink)}body.public-page :is(.booking-shell input:not([type=checkbox]),.booking-shell select,.booking-shell textarea,.catalog-filters input,.catalog-filters select,.filters select,.inside-main select,.review-form input,.review-form select,.review-form textarea),body.admin-page .admin-shell :is(input:not([type=checkbox]),select,textarea),body.gallery-page .gallery-admin :is(input:not([type=checkbox]),select,textarea){min-height:48px;background:#14251b;color:var(--crt-ink);border:1px solid #738a79;border-radius:10px;padding:.75rem .9rem;font:400 1rem/1.5 'DM Sans',sans-serif}body :is(input,textarea)::placeholder{color:#c0d0c3;opacity:1}body input[type=checkbox]{accent-color:var(--crt-action)}body.public-page :is(footer,.mobile-reserve),body.adventure-home footer{background:#0c120e;color:var(--crt-ink);border-color:#405649}body.public-page :is(.footer-main p,.footer-main h3,.footer-bottom),body.adventure-home :is(.footer-inner p,.footer-bottom){color:var(--crt-muted)}body.public-page .booking-shell :is(#booking-error,#send-error),body #transfer-error{color:#ffd5c9}
/* Home */
body.adventure-home .header{left:6%;right:6%;gap:2rem;color:#fff}body.adventure-home .header nav{font-size:.9rem;gap:1.8rem}body.adventure-home .hero{min-height:680px}body.adventure-home .hero-photo{background-image:linear-gradient(90deg,rgba(8,17,11,.84),rgba(8,17,11,.2)),url('/assets/playa.jpg')}body.adventure-home .hero-copy{max-width:790px}body.adventure-home .hero h1{font-size:clamp(2.9rem,5.9vw,5.7rem);color:#fff!important;line-height:1.08}body.adventure-home .hero-copy p{color:#f5f7f2}body.adventure-home .hero-bottom{color:#e7eee7}body.adventure-home .hero-bottom span{color:var(--crt-gold)}body.adventure-home :is(.intro,.place,.search-section,.journey,.homepage-reviews,.home-faq){background:transparent}body.adventure-home :is(.intro p,.place-top p,.concierge p,.journey p,.home-faq p,.search-section>p){color:var(--crt-muted)}body.adventure-home .home-search{background:var(--crt-surface);border:1px solid #405b49;border-radius:var(--crt-radius);padding:1.25rem}body.adventure-home .home-search label{color:var(--crt-ink)}body.adventure-home .home-search :is(input,select){background:#14251b;color:var(--crt-ink);border-color:#718878}body.adventure-home .place{border-color:#405649}body.adventure-home .place-top img{border-radius:var(--crt-radius)}body.adventure-home .tour-heading h3,body.adventure-home .tour-card h4{font-family:Sora,sans-serif;color:var(--crt-ink);font-weight:600}body.adventure-home .tour-picture{background:var(--crt-surface);color:var(--crt-muted);border-radius:var(--crt-radius)}body.adventure-home .tour-card h4{font-size:clamp(1.05rem,1.4vw,1.3rem)}body.adventure-home .concierge{background:var(--crt-surface-deep)}body.adventure-home .journey h3,body.adventure-home .homepage-reviews h3{color:var(--crt-ink)}body.adventure-home .review-form :is(input,select,textarea){background:#14251b;color:var(--crt-ink);border-color:#718878}body.adventure-home .review-form button{background:var(--crt-action);color:#14200f}body.adventure-home :is(.journey,.homepage-reviews,.home-faq,.home-faq details){border-color:#405649}body.adventure-home .site-language,body.adventure-home .menu{background:#14251b;color:var(--crt-ink);border-color:#819487}
/* Privacy controls and floating actions */
body .privacy-choice{background:#20392c;color:#f5f7f2;border:1px solid #718878;border-radius:14px;box-shadow:0 12px 35px #0008}body .privacy-choice button{background:transparent;color:#f5f7f2;border:1px solid #9eb2a0}body .privacy-choice button[data-accept]{background:var(--crt-action);color:#14200f;border-color:var(--crt-action)}body .privacy-choice input{accent-color:var(--crt-action)}body .privacy-settings{color:var(--crt-ink);border-color:#718878}body .whatsapp-float{z-index:30}body .privacy-choice{z-index:100}
/* Administrative workspaces */
body.admin-page{--forest:#101713;--ink:#f5f7f2;--muted:#cedbd0;--line:#53685a;--sand:#20392c;--primary:#b8ef65}body.admin-page .tabs{background:#17281e}body.admin-page .tabs button{color:#f5f7f2!important;background:transparent!important}body.admin-page .tabs button:hover,body.admin-page .tabs button[aria-current=page]{background:#304a38!important;color:#fff!important}body.admin-page .admin-shell button:not(.button),body.gallery-page .gallery-admin button:not(.button){background:#263e2e;color:#f5f7f2;border:1px solid #718878;padding:.7rem 1rem}body.admin-page .list-row,body.gallery-page .gallery-edit-row{border-color:#53685a}body.admin-page #message,body.gallery-page #feedback{color:#ffe0ac}body.gallery-page .gallery-admin{margin:2rem auto;padding:2rem}
body .transfer-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center;padding:4rem 0;border-top:1px solid #405649}body .transfer-feature img{width:100%;height:360px;object-fit:cover;border-radius:var(--crt-radius)}body .transfer-feature p{color:var(--crt-muted);max-width:55ch}body .transfer-feature .primary-link{margin-top:.6rem}
@media(max-width:1000px){body.adventure-home .header{gap:1rem}body.adventure-home .header nav{gap:.9rem;font-size:.82rem}body.adventure-home .header-contact{display:none}}
@media(max-width:850px){body.public-page .inside-header nav,body.public-page .header nav,body.adventure-home .header nav{background:#15271b;color:#f5f7f2}body.adventure-home .header nav{padding:1.25rem 6%}body.adventure-home .hero{min-height:650px}body .transfer-feature{grid-template-columns:1fr}body .transfer-feature img{height:300px}}
@media(max-width:650px){body.public-page .mobile-reserve{background:#101713;border-color:#405649}body.public-page .whatsapp-float{bottom:calc(92px + env(safe-area-inset-bottom));right:16px}body .privacy-choice{bottom:1rem;max-height:75vh;overflow:auto}body.adventure-home .home-search{grid-template-columns:1fr}body .transfer-feature{padding:3rem 0}body .transfer-feature img{height:240px}body.gallery-page .gallery-admin{margin:1rem 5%;padding:1.25rem}body.adventure-home .header{gap:.6rem}body.adventure-home .hero h1{font-size:clamp(2.6rem,10vw,3.7rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.home-search [hidden]{display:none!important}body:has(.privacy-choice:not([hidden])) :is(.mobile-reserve,.whatsapp-float){visibility:hidden}.home-search{grid-template-columns:repeat(4,minmax(0,1fr)) auto}@media(max-width:850px){.home-search{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.home-search{grid-template-columns:1fr}}
.legal-shell-header{padding:1rem 6%;border-bottom:1px solid #405649;background:#111d16}.legal-shell-header img{object-fit:contain}.legal-shell{width:min(1100px,88%);margin:0 auto;min-height:60vh;padding:clamp(4rem,9vw,8rem) 0}.legal-shell p{max-width:58ch;color:var(--crt-muted);margin:1rem 0 2rem}
body.adventure-home .hero h1{font-family:Sora,sans-serif;font-weight:600;letter-spacing:-.035em}body.adventure-home .header .brand img{background:#f5f7f2;border-radius:12px;padding:4px}body.adventure-home .site-language{max-width:none;min-width:112px}body.adventure-home .hero-photo{background-image:linear-gradient(90deg,rgba(8,17,11,.8),rgba(8,17,11,.2)),url('/assets/playa.jpg')}@media(max-width:550px){body.adventure-home .header{gap:.4rem}body.adventure-home .site-language{min-width:108px;padding:.55rem .65rem}}
/* Lectura y controles en todas las rutas. */
body.public-page .inside-header nav a,body.public-page .header nav a{color:#f5f7f2!important}body.public-page .inside-header nav a[aria-current=page]{color:#b8ef65!important}body.public-page .inside-header nav a:hover{color:#b8ef65!important}body.public-page :is(.inside-card,.service-card) :is(p,small,.card-price),body.public-page .booking-shell p.notice,body.public-page .booking-shell .booking-summary,body.public-page .booking-shell legend,body.public-page .transfer-shell legend{color:#e5eee5!important}body.public-page :is(.inside-card,.service-card) a.card-link{color:#b8ef65!important}body.public-page :is(input,textarea)::placeholder{color:#b9cbbd!important;opacity:1}body.public-page :is(input,select,textarea){color-scheme:dark}body.public-page :is(.clear,.text-button,.inside-menu,.menu){background:transparent!important;color:#f5f7f2!important;border:1px solid #8da293!important}body.public-page :is(#open-maps,#use-location,#edit-transfer){min-height:44px;padding:.7rem 1rem;background:transparent;color:#f5f7f2;border:1px solid #8da293;border-radius:999px}body.public-page .mobile-reserve{display:none!important}body.public-page{padding-bottom:0!important}body.public-page .whatsapp-float{bottom:20px;right:20px}body.admin-page .admin-header,body.gallery-page .gallery-admin-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 6%}body :is(.admin-header,.inside-header,.gallery-admin-header) .brand img{background:#f5f7f2;border-radius:10px;padding:4px}body.public-page .site-language{min-width:120px}body.adventure-home .home-search input::placeholder{color:#b9cbbd!important}body.public-page .booking-shell .consent a{color:#d2fba0}body.public-page .booking-shell .notice{border-color:#718878}@media(max-width:850px){body.public-page .inside-header{gap:.7rem}body.public-page .inside-header .site-language{margin-left:auto}body.public-page .inside-header nav{flex-basis:100%}}@media(max-width:650px){body.public-page .whatsapp-float{bottom:16px;right:16px}body .privacy-choice{bottom:1rem}}
@media(max-width:850px){body.public-page .inside-header > .button{display:none!important}body.public-page .inside-header .inside-menu{margin-left:auto}body.public-page .inside-header .site-language{margin-left:0}}body.public-page input[type=date]::-webkit-calendar-picker-indicator,body.public-page input[type=time]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.9}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;max-width:1320px;margin:0 auto}.footer-main>div{min-width:0}.footer-main a:not(.brand){display:block;margin:.5rem 0}.footer-main p{max-width:32ch}.footer-main h3{font-size:.9rem;color:#d6e5d8!important}.footer-bottom{max-width:1320px;margin:2rem auto 0;padding-top:1.25rem;border-top:1px solid #405649}.footer-brand img{background:#f5f7f2;border-radius:10px;padding:4px}@media(max-width:650px){.footer-main{grid-template-columns:1fr 1fr}.footer-main>div:first-child{grid-column:1/-1}}
[hidden]{display:none!important}body.public-page .legal p,body.public-page .legal-shell p{color:#cedbd0!important}body.public-page .legal :is(.underlink,a),body.public-page .inside-main :is(.underlink,.secondary-link){color:#b8ef65!important}body.public-page .inside-main .tour-rating,body.public-page .inside-main .empty-rating{color:#cedbd0!important}body.admin-page:has(#dashboard[hidden]) #logout{display:none!important}body.public-page .inside-header nav{gap:clamp(.65rem,1.1vw,1.25rem);font-size:.82rem}body.public-page .inside-header nav a{white-space:nowrap}body .form-progress{display:inline-block;margin:0 0 1.25rem;color:#d7e9d8!important;font-size:.9rem;font-weight:700}body .form-progress::before{content:'';display:inline-block;width:.5rem;height:.5rem;margin-right:.55rem;background:#c9a55c;border-radius:50%;vertical-align:middle}@media(max-width:1100px){body.public-page .inside-header{flex-wrap:wrap}body.public-page .inside-header .inside-menu{display:block;margin-left:auto}body.public-page .inside-header > .button{display:none!important}body.public-page .inside-header nav{display:none;flex-basis:100%;flex-direction:column;margin:0;padding:.5rem 0;background:#15271b}body.public-page .inside-header nav.open{display:flex}body.public-page .inside-header .site-language{margin-left:0}}
body :is(#booking-form button[type=submit],#send,#transfer-form button[type=submit],#send-transfer){min-width:14rem}@media(max-width:550px){body :is(#booking-form button[type=submit],#transfer-form button[type=submit]){width:100%}}
body .skip:focus,body .skip:focus-visible{z-index:200;background:#b8ef65!important;color:#101713!important;padding:.75rem 1rem;border-radius:8px;outline:3px solid #f5f7f2!important;top:1rem;left:1rem}
body.public-page input[type=date]::-webkit-calendar-picker-indicator,body.public-page input[type=time]::-webkit-calendar-picker-indicator{filter:none;opacity:1}body.admin-page :is([data-delete-service],#clear-demo){background:#4b2522!important;border:1px solid #d98f83!important;color:#ffe3dc!important}body.admin-page :is([data-delete-service],#clear-demo):hover{background:#66312c!important}
/* Legibilidad de enlaces y estados sin experiencias en la portada. */
body.adventure-home .tour-empty{color:#cedbd0!important}body.adventure-home .tour-empty a,body.adventure-home .tour-heading a{color:#b8ef65!important}body.adventure-home .footer-inner img{background:#f5f7f2;border-radius:10px;padding:4px}
