@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--cream:#f7f5ec;--paper:#fffdf6;--green:#204a38;--dark:#172e25;--ink:#24382c;--muted:#687164;--yellow:#f1cf58;--orange:#c75f36;--line:#d8ddce;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.12;letter-spacing:-.055em}h1{font-size:clamp(42px,5.8vw,84px)}h2{font-size:clamp(34px,3.8vw,56px)}h3{font-size:23px;letter-spacing:-.035em}em{font-family:var(--serif);font-weight:400}p+p{margin-top:18px}button{color:inherit}button:disabled{opacity:.45;cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}::selection{background:var(--yellow);color:var(--dark)}[hidden]{display:none!important}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.eyebrow{font:700 11px/1.6 var(--sans);letter-spacing:.15em;text-transform:uppercase;display:block;margin-bottom:22px}.eyebrow.light{color:#fff6d9}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 3.8%;background:var(--cream);gap:30px;position:relative;z-index:10;border-bottom:1px solid rgba(32,74,56,.08)}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;line-height:1.12}.brand svg{width:53px;height:49px;color:var(--green)}.brand>span{font-family:var(--serif);font-size:24px;letter-spacing:-.8px}.brand small{display:block;font:600 9px/1.6 var(--sans);letter-spacing:.23em;margin-top:6px}.site-header nav{display:flex;align-items:center;gap:26px;font-size:13px;font-weight:500}.site-header nav>a:not(.button){padding-block:10px;position:relative}.site-header nav>a:not(.button):after{content:'';position:absolute;bottom:3px;left:0;width:0;height:1px;background:var(--green);transition:width .2s}.site-header nav>a:hover:after,.site-header nav>a[aria-current]:after{width:100%}.plan-count{display:inline-grid;place-items:center;min-width:21px;height:21px;border:1px solid var(--line);border-radius:50%;font-size:10px;margin-left:2px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--green);color:white;border:1px solid transparent;padding:16px 24px;font-size:13px;font-weight:600;border-radius:4px;line-height:1.5;transition:background .2s,transform .2s}.button:hover{background:#315d43;transform:translateY(-2px)}.button>span{font-size:23px;font-weight:400;line-height:1}.button.small{padding:12px 17px;gap:22px}.button.yellow{background:var(--yellow);color:var(--dark)}.button.yellow:hover{background:#f7db79}.button.cream{background:var(--cream);color:var(--green)}.text-link{display:inline-flex;align-items:center;gap:24px;font-size:13px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:6px}.text-link span{font-size:23px;line-height:1}.text-link:hover{color:var(--orange)}.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:3px;font-size:23px;padding:3px 11px}.skip{position:fixed;top:-100px;left:20px;background:white;z-index:100;padding:10px}.skip:focus{top:10px}.hero{position:relative;min-height:680px;height:calc(100svh - 100px);max-height:960px;color:var(--paper);overflow:hidden;background:var(--green)}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo img{width:100%;height:100%;object-position:center 56%;animation:arrive 10s cubic-bezier(.2,.6,.3,1) both}.hero-shade{background:linear-gradient(90deg,rgba(16,36,23,.7) 0%,rgba(12,35,19,.37) 55%,rgba(12,35,19,.1) 100%),linear-gradient(0deg,rgba(12,30,20,.6),transparent 35%)}.hero-content{position:relative;padding-top:clamp(80px,12vh,160px);z-index:1}.hero h1{font-size:clamp(54px,7.2vw,110px);letter-spacing:-.06em;line-height:1.02;max-width:880px}.hero h1 em{color:#f9de8b;font-size:1.16em;letter-spacing:-.065em}.hero-content>p:not(.eyebrow){max-width:415px;font-size:16px;line-height:1.8;margin-top:30px;color:#f4f3e6}.hero-content>.button{margin-top:30px}.sun-dot{display:inline-block;width:9px;height:9px;background:var(--yellow);border-radius:50%;margin-right:10px}.hero-foot{position:absolute;bottom:42px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.06em;border-top:1px solid #ffffff40;padding-top:22px}.hero-foot i{font-style:normal;display:block;opacity:.75;font-size:11px;letter-spacing:0;margin-top:2px}.hero-foot a{display:flex;align-items:center;gap:24px}.hero-foot a>span{font-size:25px}.hero-caption{position:absolute;right:14px;top:50%;writing-mode:vertical-rl;font-size:8px;letter-spacing:.15em;opacity:.8}.ribbon{background:var(--yellow);display:flex;align-items:center;justify-content:center;gap:42px;padding:20px 30px;font-size:13px;font-weight:500}.ribbon b{font-size:24px;font-weight:400}.intro{padding-block:108px 100px;display:grid;grid-template-columns:1.1fr 1fr;gap:110px}.intro-text{padding-top:38px;font-size:16px;max-width:480px}.intro-text .text-link{margin-top:26px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}.section-heading>.text-link{margin-bottom:7px}.section-heading .eyebrow{margin-bottom:17px}.discover{padding-bottom:100px}.experience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.experience{height:400px;position:relative;overflow:hidden;border-radius:4px;color:white;background:var(--green)}.experience>img{height:100%;width:100%;transition:transform .6s}.experience:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b2115b8,transparent 80%)}.experience>div{position:absolute;bottom:28px;left:25px;right:23px;z-index:1}.experience>div>span:first-child{font-size:9px;text-transform:uppercase;letter-spacing:.09em}.experience h3{font-size:27px;margin-top:14px;line-height:1.16}.circle-arrow{border:1px solid #ffffff70;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:21px;margin-top:20px}.experience:hover img{transform:scale(1.05)}.palm-story{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:var(--cream);min-height:710px}.palm-image{overflow:hidden}.palm-image img{width:100%;height:100%;max-height:820px;object-position:60% center}.palm-copy{padding:76px max(56px,calc((100vw - 1280px)/2)) 70px 72px;position:relative}.palm-copy .eyebrow{color:#d7dbbc;font-size:10px}.palm-copy h2{font-size:clamp(50px,5.6vw,82px);margin-bottom:28px;line-height:1.02}.palm-copy h2 em{color:var(--yellow)}.palm-copy p{max-width:390px;color:#dee4d6;font-size:14px}.palm-copy .button{margin-top:30px}.handwritten{display:block;font-family:var(--serif);font-style:italic;color:var(--yellow);font-size:23px;margin-top:32px;transform:rotate(-4deg)}.favorites{padding-block:100px}.heading-note{font-size:14px;max-width:250px;color:var(--muted)}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}.place-card{min-width:0}.card-image{position:relative;display:block;overflow:hidden;border-radius:4px;background:#d5decb;aspect-ratio:1.3}.card-image>a{display:block;height:100%}.card-image img{height:100%;width:100%;transition:transform .5s}.place-card:hover .card-image img{transform:scale(1.035)}.photo-category{position:absolute;bottom:17px;left:17px;padding:5px 11px;background:var(--cream);font-size:9px;letter-spacing:.03em;border-radius:2px}.save{display:inline-grid;place-items:center;border-radius:50%;width:39px;height:39px;border:1px solid #cad3c6;background:var(--cream);font-size:23px;line-height:1;transition:background .2s}.card-image>.save{position:absolute;right:14px;top:14px}.save:hover,.save[aria-pressed=true]{background:var(--yellow);border-color:var(--yellow);color:var(--dark)}.card-body{padding:21px 0 0}.card-body h3{display:flex;justify-content:space-between;gap:12px;font-size:22px;line-height:1.25;letter-spacing:-.035em}.card-body h3 span{font-size:23px}.card-body p{margin-top:10px;color:var(--muted);font-size:13px;line-height:1.7;max-width:90%}.history-strip{padding-block:0 100px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.history-frame{padding:18px;background:#ede7d7;transform:rotate(-3deg);box-shadow:0 8px 20px #2339230b}.history-frame img{width:100%;height:350px}.history-frame span{display:block;text-align:center;font-size:8px;letter-spacing:.1em;padding:20px 0 5px}.history-strip h2{margin-bottom:25px}.history-strip p:not(.eyebrow){font-size:14px;color:var(--muted)}.history-strip .text-link{margin-top:28px}.trip-band{background:#eceede;padding:55px;border-radius:5px;margin-bottom:100px;display:grid;grid-template-columns:1fr 1.1fr;gap:60px}.trip-band h2{font-size:40px}.trip-options{display:grid;grid-template-columns:1fr 1fr;gap:30px}.trip-options>a,.trip-options>article{position:relative;border-top:1px solid #53694660;padding-top:20px}.trip-options>*>span:first-child{font-size:9px;letter-spacing:.1em}.trip-options h3{font-size:23px;margin-top:14px;line-height:1.2}.trip-options p{font-size:13px;margin-top:12px;color:#637158}.trip-options>a>span:last-child{font-size:27px;display:block;margin-top:10px}.closing{min-height:540px;background:linear-gradient(90deg,#172e25a8,#172e2540),var(--closing) center 55%/cover;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--cream);padding:75px 25px}.closing h2{font-size:clamp(52px,6vw,86px);line-height:1.05;margin-bottom:32px}.closing h2 em{color:var(--yellow)}.closing-link{display:block;font-size:12px;margin-top:22px;text-decoration:underline;text-underline-offset:5px}footer{background:#183c2d;color:var(--cream);padding:65px max(56px,calc((100vw - 1280px)/2)) 25px}footer .brand svg{color:var(--yellow)}footer .brand>span{font-size:30px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:45px;border-bottom:1px solid #f7f5ec30}.footer-top>p{font-family:var(--serif);font-style:italic;font-size:26px;line-height:1.3;letter-spacing:-.03em}.round-link{display:grid;place-items:center;width:62px;height:62px;border:1px solid #f7f5ec70;border-radius:50%;font-size:32px}.round-link:hover{background:var(--yellow);color:var(--green)}.footer-links{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:70px;padding-block:45px}.footer-links .eyebrow{font-size:9px;color:#bdcbb4}.footer-links a{display:block;font-size:12px;margin-top:10px}.footer-links p{font-size:12px;color:#cbd5c3;max-width:300px}.footer-bottom{padding-top:22px;border-top:1px solid #f7f5ec30;display:flex;gap:28px;font-size:9px;color:#c7d0bd}.footer-bottom>span{margin-right:auto}.page-intro{padding-top:75px;padding-bottom:65px}.page-intro h1{max-width:1050px}.page-intro .lede{max-width:610px;margin-top:30px;font-size:17px;color:var(--muted)}.lede{font-size:20px;line-height:1.6;letter-spacing:-.02em}.explorer{padding-bottom:100px}.filter-top{display:flex;justify-content:space-between;align-items:center;gap:30px}.search-field{display:flex;align-items:center;gap:14px;border:1px solid #cbd2c2;border-radius:3px;padding:13px 18px;width:min(530px,100%);background:#fffdf666}.search-field span{font-size:27px;line-height:1}.search-field input{border:0;background:none;width:100%;min-width:0;outline:none;font-size:14px;color:var(--ink)}.search-field:focus-within{outline:2px solid var(--green);outline-offset:3px}.filter-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px;margin-bottom:24px}.filter-tabs button{border:1px solid #cbd2c2;border-radius:30px;background:none;padding:9px 19px;font-size:12px}.filter-tabs button[aria-pressed=true]{background:var(--green);color:var(--cream);border-color:var(--green)}.result-count{font-size:12px;color:var(--muted);margin-bottom:26px}.empty{padding:55px;text-align:center;background:#e9eddf;border-radius:4px;margin-block:30px}.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;font-size:10px;color:var(--muted);padding-top:30px}.detail-hero{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;align-items:center;padding-block:55px 60px}.detail-hero h1{font-size:clamp(40px,5vw,72px);overflow-wrap:anywhere}.detail-hero .lede{margin-top:25px;max-width:440px;color:var(--muted)}.detail-hero figure>img{width:100%;height:435px;border-radius:4px}.detail-hero figcaption{font-size:9px;color:var(--muted);margin-top:10px;line-height:1.5}.detail-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:30px;font-size:11px}.detail-actions .text-link{font-size:11px;margin-top:8px}.detail-body{display:grid;grid-template-columns:minmax(0,1.5fr) 1fr;gap:100px;padding-block:35px 80px}.prose{font-size:16px;line-height:1.9;overflow-wrap:anywhere}.prose h2{margin-bottom:30px}.prose p{color:#5c6758}.prose p+p{margin-top:20px}.prose .text-link{margin-top:25px}.visit-note{align-self:start;background:#eceede;padding:35px;border-radius:4px;font-size:13px}.visit-note h3{font-size:28px;margin-bottom:20px}.visit-note p{margin-top:15px}.visit-note a:not(.button){display:block;font-size:12px;text-decoration:underline;text-underline-offset:5px;margin-top:22px;overflow-wrap:anywhere}.visit-note h2{font-size:37px}.visit-note .button{margin-top:20px;font-size:12px;padding:12px 16px}.small-copy{font-size:11px;line-height:1.75;color:var(--muted)}details{border-top:1px solid var(--line);padding:20px 0}details:last-of-type{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:600;font-size:14px;line-height:1.6;padding-right:20px}details p{font-size:14px;margin-top:18px}details .archive-note{margin-block:20px}.original{margin-top:40px}.original p{font-size:13px}.archive-note,.soft-note{padding:20px 24px;background:#eceede;font-size:12px;line-height:1.8;border-left:3px solid #9cae80;border-radius:2px}.soft-note{margin-bottom:30px}.soft-note strong{display:block}.detail-gallery{padding-bottom:80px}.detail-gallery h2{margin-bottom:30px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:30px}.photo-grid>button{display:block;position:relative;background:#dae0cf;border:0;padding:0;border-radius:3px;overflow:hidden;aspect-ratio:4/3}.photo-grid img{width:100%;height:100%;transition:transform .4s}.photo-grid button:hover img{transform:scale(1.04)}.photo-grid button>span{position:absolute;bottom:12px;right:12px;background:var(--cream);border-radius:50%;width:29px;height:29px;display:grid;place-items:center;font-size:20px}.related{padding-block:35px 100px}.muted{font-size:12px;color:var(--muted);margin-block:25px}.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;padding-bottom:100px}.album-card{background:#eceede;border-radius:4px;overflow:hidden}.album-card img{width:100%;aspect-ratio:4/3}.album-card>div{padding:23px}.album-card>div>span{font-size:9px;letter-spacing:.12em}.album-card h2{font-size:23px;display:flex;justify-content:space-between;gap:15px;line-height:1.3;letter-spacing:-.03em;margin-top:12px}.album-card h2 span{font-size:23px}.lodging-detail{display:grid;grid-template-columns:1.4fr 1fr;gap:45px}.lodging-detail>figure>img{width:100%;height:500px;border-radius:4px}.lodging-description{max-width:780px;padding-block:75px}.back-link{padding-bottom:100px}.history-wide{position:relative;height:550px;color:white;overflow:hidden;border-radius:4px}.history-wide>img{width:100%;height:100%}.history-wide:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#10251abd,transparent)}.history-wide>div{position:absolute;z-index:1;bottom:40px;left:40px}.history-wide span{font-size:10px;letter-spacing:.13em}.history-wide h2{margin-top:15px}.history-narrative{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-block:85px}.large-copy{font-family:var(--serif);font-size:33px;line-height:1.5;letter-spacing:-.03em}.history-color{background:#e9eddf}.history-documents{max-width:800px;padding-bottom:100px}.history-documents>p{margin-bottom:25px}.arrival-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;padding-bottom:90px}.arrival-visual{position:relative;min-height:570px;border-radius:4px;overflow:hidden;color:var(--cream)}.arrival-visual>img{height:100%;width:100%;position:absolute}.arrival-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0f2c20dd,transparent)}.arrival-visual>div{position:absolute;bottom:38px;left:35px;right:25px;z-index:1}.arrival-visual>div>span{font-size:10px;letter-spacing:.16em}.arrival-visual h2{margin-block:20px 30px;font-size:60px}.arrival-info{padding-top:10px}.arrival-info h2{margin-bottom:30px}.arrival-info details p{color:var(--muted);font-size:14px;line-height:1.8}.arrival-info>.text-link{margin-top:30px}.travel-tips{padding-block:30px 90px}.tips-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.tips-grid article{border-top:1px solid var(--line);padding-top:25px}.tips-grid article>span{font-family:var(--serif);font-size:25px;color:var(--orange)}.tips-grid h3{font-size:22px;line-height:1.3;margin-top:18px;min-height:58px}.tips-grid p{font-size:13px;color:var(--muted);margin-top:15px}.planning-links{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding-bottom:100px}.planning-links>a{background:#e9eddf;padding:35px}.planning-links span{display:block;font-size:12px;margin-top:15px}.map-section{padding-bottom:100px}.map-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:25px;margin-top:30px}.map-canvas{position:sticky;top:25px;align-self:start}.map-canvas iframe{width:100%;height:600px;border:1px solid var(--line);border-radius:4px;background:#dbe2ca}.map-canvas p{font-size:10px;color:var(--muted);margin-top:10px}.point-list{max-height:650px;overflow:auto}.point-list>a{display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding:19px 10px}.point-list h3{font-size:17px;line-height:1.3;letter-spacing:-.025em}.point-list>a>span:last-child{font-size:22px;margin-left:auto}.point-list div>span{font-size:9px;color:var(--muted)}.point-number{font-family:var(--serif);color:var(--orange);font-size:22px}.trip-planner{padding-bottom:70px}.planner-bar{display:flex;justify-content:space-between;align-items:center;padding-bottom:25px;border-bottom:1px solid var(--line);gap:25px;margin-bottom:35px}.planner-bar>div{display:flex;gap:25px;align-items:center}.text-button{background:none;border:0;border-bottom:1px solid currentColor;padding:5px 0;font-size:12px;font-weight:600}.empty-plan{text-align:center;padding-block:40px 70px}.empty-plan>span{font-size:55px;color:var(--orange)}.empty-plan h2{margin-top:15px}.empty-plan p{font-size:14px;color:var(--muted);max-width:450px;margin:25px auto}.empty-plan .button{margin-top:5px}.trip-planner>.soft-note{margin-top:40px}.suggested{padding-block:10px 100px}.suggested>.trip-options{margin-top:40px;gap:45px}.suggested>.trip-options>article{background:#e9eddf;padding:30px;border:0}.suggested .text-button{margin-top:25px}.archive-list{padding-bottom:100px}.archive-list>a{display:flex;align-items:center;gap:35px;border-bottom:1px solid var(--line);padding:27px 0}.archive-list>a>span:first-child{font-size:11px;min-width:100px;color:var(--muted)}.archive-list small{display:block;margin-top:5px;font-size:10px}.archive-list h2{font-size:23px;letter-spacing:-.025em;line-height:1.3}.archive-list>a>span:last-child{font-size:25px;margin-left:auto}.archive-document{max-width:820px;padding-bottom:100px}.archive-document>.archive-note{margin-bottom:35px}.archive-document h2{margin-top:40px}.archive-photo{border:0;padding:0;background:none;margin-block:25px;max-width:100%}.archive-photo img{height:auto;max-height:600px}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);background:var(--green);border:1px solid #b4c3a1;color:white;padding:13px 25px;border-radius:5px;z-index:30;box-shadow:0 7px 20px #10251a30;font-size:13px;opacity:0;pointer-events:none;transition:.2s;max-width:calc(100% - 30px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{background:#14291ff5;color:white;border:0;max-width:100vw;max-height:100svh;width:100vw;height:100svh;margin:0;padding:50px 80px}dialog::backdrop{background:#14291ff5}dialog[open]{display:grid;grid-template-columns:45px minmax(0,1fr) 45px;align-items:center;gap:25px}dialog figure{min-width:0;text-align:center}dialog figure img{max-height:calc(100svh - 140px);max-width:100%;width:auto;height:auto;margin:auto;object-fit:contain}dialog figcaption{font-size:12px;margin-top:15px}dialog button{border:1px solid #ffffff50;background:none;border-radius:50%;color:white;width:44px;height:44px;font-size:25px;display:grid;place-items:center}.lightbox-close{position:absolute;right:25px;top:20px}.lightbox-prev,.lightbox-next{position:relative}body:has(dialog[open]){overflow:hidden}@keyframes arrive{from{transform:scale(var(--hero-zoom-start,1.22))}to{transform:scale(1)}}@media(min-width:1600px){.hero-content{padding-top:16vh}}@media(max-width:1180px){.site-header{height:90px;padding-inline:30px;gap:15px}.site-header nav{gap:17px;font-size:12px}.brand>span{font-size:21px}.brand svg{width:43px}.site-header .button{padding:10px 13px;gap:12px}.wrap{width:calc(100% - 80px)}.intro{gap:60px}.experience{height:340px}.experience h3{font-size:23px}.experience>div{left:20px;right:15px}.palm-copy{padding:60px 40px}.palm-story{min-height:680px}.history-strip{gap:60px}.trip-band{padding:35px;gap:35px}.trip-band h2{font-size:34px}.detail-body{gap:55px}.detail-hero{gap:40px}.footer-links{gap:45px}}@media(max-width:960px){.site-header{height:84px;padding-inline:26px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--cream);padding:25px;box-shadow:0 12px 15px #172e2515;font-size:15px;align-items:stretch;gap:12px;flex-direction:column;border-top:1px solid var(--line)}.site-header nav.open{display:flex}.site-header .button{justify-content:space-between;padding:14px 18px}.hero{height:calc(100svh - 84px);min-height:660px}.hero-content{padding-top:110px}.hero h1{font-size:82px}.hero-caption{display:none}.intro{gap:40px;padding-block:80px}.experience-grid{grid-template-columns:repeat(2,1fr);gap:20px}.experience{height:370px}.experience h3{font-size:30px}.palm-copy{padding:45px 30px}.palm-copy h2{font-size:62px}.palm-story{min-height:660px}.cards-grid{gap:35px 20px}.card-body h3{font-size:20px}.favorites{padding-block:80px}.history-strip{gap:40px}.history-frame img{height:300px}.trip-band{display:block}.trip-band>.trip-options{margin-top:35px}.heading-note{max-width:210px;font-size:12px}.detail-hero{grid-template-columns:1fr 1fr;gap:30px}.detail-hero figure>img{height:350px}.detail-body{gap:35px;grid-template-columns:1.4fr 1fr}.visit-note{padding:25px}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.arrival-grid{gap:35px}.arrival-visual{min-height:560px}.arrival-visual h2{font-size:48px}.tips-grid{grid-template-columns:repeat(2,1fr);gap:35px}.tips-grid h3{min-height:0}.history-narrative{gap:45px}.large-copy{font-size:29px}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lodging-detail{gap:30px}.lodging-detail>figure>img{height:420px}.map-layout{grid-template-columns:1fr 1fr}.map-canvas iframe{height:550px}}@media(max-width:640px){body{font-size:15px}.wrap{width:calc(100% - 40px)}.site-header{padding-inline:20px;height:78px}.brand>span{font-size:21px}.brand small{font-size:8px}.brand svg{width:41px;height:43px}.site-header nav{top:78px}.hero{height:calc(100svh - 78px);min-height:640px;max-height:850px}.hero-photo img{object-position:63% center}.hero-shade{background:linear-gradient(90deg,#102519a8,#10251955),linear-gradient(0deg,#102519c4,transparent 60%)}.hero-content{padding-top:90px}.hero h1{font-size:clamp(49px,12.2vw,76px)}.hero-content>.eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:24px}.sun-dot{width:7px;height:7px;margin-right:5px}.hero-content>p:not(.eyebrow){font-size:14px;max-width:310px;line-height:1.8;margin-top:27px}.hero-content>.button{margin-top:27px}.hero-foot{bottom:26px;padding-top:18px;font-size:9px;gap:15px}.hero-foot i{font-size:9px;max-width:150px}.hero-foot a{max-width:150px;font-size:10px;gap:12px;line-height:1.6}.ribbon{justify-content:flex-start;overflow:hidden;white-space:nowrap;padding:14px 20px;gap:23px;font-size:11px}.ribbon b{font-size:20px}.intro{display:block;padding-block:65px}.eyebrow{font-size:9px;margin-bottom:18px}h2{font-size:37px}.intro-text{padding-top:28px;font-size:14px}.intro-text .text-link{margin-top:25px}.section-heading{display:block;margin-bottom:30px}.section-heading>.text-link{margin-top:25px}.discover{padding-bottom:65px}.experience-grid{gap:12px}.experience{height:285px}.experience>div{left:15px;right:12px;bottom:20px}.experience>div>span:first-child{font-size:8px;line-height:1.6;display:block;max-width:120px}.experience h3{font-size:22px;letter-spacing:-.04em}.circle-arrow{width:27px;height:27px;font-size:19px;margin-top:16px}.palm-story{display:flex;flex-direction:column;min-height:0}.palm-image{height:360px}.palm-image img{object-position:center 45%}.palm-copy{padding:45px 30px 55px}.palm-copy h2{font-size:64px}.palm-copy p{font-size:14px}.handwritten{font-size:24px;margin-top:35px}.favorites{padding-block:65px}.heading-note{margin-top:22px;max-width:100%;font-size:13px}.cards-grid{grid-template-columns:1fr;gap:35px}.card-image{aspect-ratio:1.35}.card-body{padding-top:18px}.card-body h3{font-size:25px}.card-body p{font-size:14px;max-width:100%}.history-strip{grid-template-columns:1fr;gap:50px;padding-block:5px 70px}.history-frame{margin-inline:6px;padding:13px}.history-frame img{height:280px}.history-frame span{font-size:7px;padding-block:16px 5px}.history-strip p:not(.eyebrow){font-size:14px}.trip-band{width:calc(100% - 30px);padding:35px 25px;margin-bottom:65px}.trip-band h2{font-size:35px}.trip-options{gap:25px;grid-template-columns:1fr}.trip-options>a{padding-top:20px;padding-bottom:8px}.trip-options>a>span:last-child{position:absolute;bottom:6px;right:0}.trip-options p{max-width:88%}.closing{min-height:480px;padding:65px 20px}.closing h2{font-size:60px}.closing .eyebrow{font-size:9px}footer{padding:45px 25px 25px}.footer-top{flex-wrap:wrap;gap:30px;padding-bottom:30px;position:relative}.footer-top .brand>span{font-size:25px}.footer-top>p{font-size:25px;width:100%}.round-link{position:absolute;right:0;bottom:35px;width:43px;height:43px;font-size:25px}.footer-links{grid-template-columns:1fr 1fr;gap:30px 20px;padding-block:30px}.footer-links>div:last-child{grid-column:1/-1;max-width:320px}.footer-bottom{flex-wrap:wrap;gap:18px}.footer-bottom>span{width:100%;font-size:8px}.page-intro{padding-top:50px;padding-bottom:45px}.page-intro h1{font-size:44px;line-height:1.08}.page-intro .lede{font-size:15px;margin-top:25px}.filter-top{flex-wrap:wrap;gap:22px}.search-field{padding:11px 15px}.search-field input{font-size:12px}.filter-tabs{gap:8px;margin-top:23px}.filter-tabs button{font-size:11px;padding:8px 13px}.explorer{padding-bottom:65px}.breadcrumbs{font-size:9px;gap:8px;padding-top:20px}.detail-hero{grid-template-columns:1fr;gap:30px;padding-top:35px;padding-bottom:35px}.detail-hero h1{font-size:46px;overflow-wrap:normal}.detail-hero .lede{font-size:19px;margin-top:20px}.detail-hero figure>img{height:290px}.detail-actions{margin-top:23px}.detail-actions .text-link{margin-left:6px}.detail-body{grid-template-columns:1fr;gap:35px;padding-block:15px 55px}.prose{font-size:15px}.prose h2{font-size:36px}.visit-note{padding:28px}.detail-gallery{padding-bottom:55px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:25px}.photo-grid button>span{width:23px;height:23px;font-size:17px;bottom:8px;right:8px}.detail-gallery .section-heading>span{font-size:11px;display:block;margin-top:20px}.related{padding-bottom:65px}.album-grid{gap:25px;grid-template-columns:1fr;padding-bottom:65px}.album-card h2{font-size:25px}.album-card>div{padding:23px}.soft-note,.archive-note{padding:18px;font-size:11px}.lodging-detail{grid-template-columns:1fr;gap:25px}.lodging-detail>figure>img{height:290px}.lodging-description{padding-block:50px}.back-link{padding-bottom:65px}.history-wide{height:380px}.history-wide>div{left:25px;bottom:28px}.history-wide h2{font-size:36px}.history-narrative{grid-template-columns:1fr;gap:30px;padding-block:55px}.large-copy{font-size:29px}.history-documents{padding-bottom:65px}.arrival-grid{grid-template-columns:1fr;gap:45px;padding-bottom:55px}.arrival-visual{min-height:420px}.arrival-visual>div{left:25px;bottom:30px}.arrival-visual h2{font-size:54px}.arrival-info h2{font-size:37px}.travel-tips{padding-bottom:55px}.tips-grid{gap:30px 20px}.tips-grid h3{font-size:20px}.tips-grid p{font-size:12px}.planning-links{grid-template-columns:1fr;gap:15px;padding-bottom:65px}.planning-links>a{padding:25px}.map-layout{grid-template-columns:1fr;gap:20px}.map-canvas{position:static}.map-canvas iframe{height:340px}.point-list{max-height:500px}.map-section{padding-bottom:65px}.planner-bar{align-items:flex-start;flex-direction:column;gap:20px}.planner-bar>div{gap:20px}.planner-bar .button{font-size:11px;padding:12px 17px}.empty-plan{padding-block:20px 45px}.empty-plan h2{font-size:35px}.empty-plan p{font-size:13px}.suggested{padding-bottom:65px}.suggested>.trip-options{gap:20px}.suggested>.trip-options>article{padding:25px}.trip-options p{max-width:100%}.archive-list>a{gap:15px;flex-wrap:wrap;padding:22px 0}.archive-list>a>span:first-child{width:100%;display:flex;gap:20px;align-items:center;font-size:10px}.archive-list small{margin-top:0}.archive-list h2{font-size:22px;max-width:87%}.archive-list>a>span:last-child{margin-left:auto}.archive-document{padding-bottom:65px}.archive-list{padding-bottom:65px}.empty{padding:30px 20px}dialog{padding:60px 10px}dialog[open]{gap:7px;grid-template-columns:30px minmax(0,1fr) 30px}dialog button{width:30px;height:30px;font-size:21px}.lightbox-close{right:15px;top:20px}dialog figcaption{font-size:10px}.toast{font-size:11px;bottom:15px;padding:12px 17px}.suggested h2{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Logo original completo, sin recortes ni cambios de color. */
.brand.brand-official{display:block;width:180px;padding:4px 7px;background:transparent;border-radius:3px;line-height:0}
.brand.brand-official img{width:100%;height:auto;object-fit:contain}
.site-header{height:124px}
.hero{height:calc(100svh - 124px)}
footer .brand.brand-official{width:240px;padding:9px 12px}
@media(max-width:960px){.site-header{height:114px}.site-header nav{top:114px}.hero{height:calc(100svh - 114px)}.site-header .brand.brand-official{width:166px}}
@media(max-width:640px){.site-header{height:100px}.site-header nav{top:100px}.site-header .brand.brand-official{width:145px;padding:3px 6px}.hero{height:calc(100svh - 100px)}footer .brand.brand-official{width:215px;padding:8px 12px}}

/* Pie claro para conservar el contraste de las letras del logo transparente. */
footer{background:#e7ecdf;color:var(--green)}
.footer-top,.footer-bottom{border-color:#bdcbb6}
.footer-links .eyebrow,.footer-links p,.footer-bottom{color:#4d6149}
.round-link{border-color:#7e9276}

/* Mapa y referencias sincronizadas. */
#destination-map{height:600px;width:100%;border:1px solid var(--line);border-radius:4px;background:#e3e8d9;z-index:0;font-family:var(--sans)}
.map-toolbar{display:flex;gap:10px;justify-content:space-between;margin-top:12px;flex-wrap:wrap}
.map-toolbar button{border:1px solid var(--line);background:var(--paper);padding:7px 12px;border-radius:3px;font-size:11px}
.map-toolbar button:hover{background:#e9eddf}
.map-canvas #map-status{font-size:11px;min-height:35px;margin-top:12px}
.map-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:10px;line-height:1.7}
.map-legend span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;background:var(--legend-color)}
.map-legend .agua{--legend-color:#1979a3}.map-legend .lugares{--legend-color:#2c6b44}.map-legend .alojamiento{--legend-color:#af6a18}.map-legend .servicios{--legend-color:#9b4e79}
.destination-pin{background:none;border:0}
.destination-pin>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--pin-color);color:transparent;border:2px solid #fff;box-shadow:0 2px 5px #152c2440;font-size:0}
.destination-pin>span:after{content:attr(data-number)}
.destination-pin>span>b{font:700 11px/1 var(--sans);color:white;transform:rotate(45deg)}
.point-list>a.point-selected{background:#e3e9d7;border-left:3px solid var(--green);padding-left:7px}
.point-list>a:hover{background:#ecefe4}
.map-popup{min-width:150px;max-width:220px;font:13px/1.6 var(--sans);color:var(--green)}
.map-popup strong{font-size:15px;line-height:1.4;display:block}
.map-popup p{font-size:11px!important;margin:9px 0!important;color:var(--muted)}
.map-popup a{font-weight:600;color:var(--green)!important;text-decoration:underline}
.leaflet-container .leaflet-control-attribution{font-size:9px;background:#fffef3ed}
@media(max-width:960px){#destination-map{height:550px}}
@media(max-width:640px){#destination-map{height:370px}.map-toolbar button{font-size:10px}.map-legend{gap:12px}.map-canvas #map-status{font-size:10px}.map-canvas{scroll-margin-top:20px}}

.map-layer-label{display:flex;align-items:center;gap:9px;font-size:11px;width:100%;font-weight:600}
.map-layer-label select{font:400 12px var(--sans);padding:9px 32px 9px 12px;color:var(--green);background:var(--paper);border:1px solid #b7c6ab;border-radius:4px;min-width:200px;cursor:pointer}
.map-layer-label select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
@media(max-width:640px){.map-layer-label{justify-content:space-between}.map-layer-label select{min-width:0;max-width:70%;font-size:11px}}

.site-header nav>a.nav-map{display:inline-flex;align-items:center;gap:7px;color:var(--green);font-weight:700}
.nav-map svg{flex-shrink:0}
@media(min-width:961px) and (max-width:1300px){.site-header nav{gap:15px;font-size:12px}.site-header .button.small{gap:12px;padding:10px 13px}}
@media(min-width:961px) and (max-width:1100px){.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:124px;left:0;right:0;background:var(--cream);padding:25px;box-shadow:0 12px 15px #172e2515;border-top:1px solid var(--line);font-size:15px;align-items:stretch;gap:12px;flex-direction:column}.site-header nav.open{display:flex}.site-header nav .button{justify-content:space-between}}

.property-home{padding-block:0 100px}
.property-home .section-heading h2{font-size:clamp(32px,3.2vw,47px)}
.property-intro{max-width:650px;font-size:15px;color:var(--muted);margin-top:-14px;margin-bottom:35px}
.property-status{position:absolute;top:17px;left:17px;padding:6px 13px;border-radius:3px;background:var(--green);color:white;font-size:11px;font-weight:700;letter-spacing:.03em}
.property-status.vendido{background:#5e655a}
.property-status.static{position:static;display:inline-block;margin-bottom:22px}
.property-area{position:absolute;bottom:17px;left:17px;background:var(--cream);padding:5px 12px;font-size:11px;border-radius:3px}
.property-location{display:block;font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}
.property-directory{padding-bottom:100px}
.property-detail{display:grid;grid-template-columns:1.35fr 1fr;gap:45px;align-items:start}
.property-detail figure img{width:100%;height:520px;border-radius:4px}
.property-features{padding-left:18px;margin-block:22px;font-size:13px;line-height:2}
.property-contact,.property-sold-note{border-top:1px solid #bec8ae;padding-top:23px;margin-top:23px}
.property-contact h3,.property-sold-note h3{font-size:25px}
.property-contact .button,.property-sold-note .button{margin-top:20px;color:white;text-decoration:none}
.property-story{max-width:800px;padding-block:65px}
@media(max-width:800px){.property-detail{grid-template-columns:1fr;gap:25px}.property-detail figure img{height:380px}}
@media(max-width:640px){.property-home{padding-bottom:65px}.property-home .section-heading h2{font-size:35px}.property-intro{font-size:14px;margin-top:0}.property-directory{padding-bottom:65px}.property-detail figure img{height:290px}.property-story{padding-block:45px}}

.favorites-more{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}
.favorites-more p{font-size:14px;color:var(--muted)}
.tourism-menu:not([open]) .tourism-dropdown{display:none}
.tourism-menu{position:relative}.tourism-menu summary{cursor:pointer;list-style:none;padding-block:10px;font-size:13px;font-weight:500;display:flex;gap:7px;align-items:center}.tourism-menu summary::-webkit-details-marker{display:none}.tourism-menu summary.is-current{text-decoration:underline;text-underline-offset:7px}.tourism-dropdown{position:absolute;left:-20px;top:100%;min-width:285px;padding:10px;background:var(--paper);border:1px solid var(--line);border-radius:6px;box-shadow:0 12px 35px #172e2520;display:flex;flex-direction:column;gap:2px;z-index:30}.tourism-dropdown a{display:block;padding:11px 14px;border-radius:3px;font-size:13px}.tourism-dropdown a:hover,.tourism-dropdown a[aria-current]{background:#e9eddf}.tourism-dropdown a:first-child{font-size:11px;color:var(--muted);border-bottom:1px solid var(--line);border-radius:0}.tourism-dropdown a:last-child{border-top:1px solid var(--line);font-size:11px;margin-top:5px}.tourism-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:38px}.tourism-tabs a{padding:10px 17px;border:1px solid var(--line);border-radius:25px;font-size:12px}.tourism-tabs a:hover,.tourism-tabs a[aria-current]{background:var(--green);color:white;border-color:var(--green)}.tourism-hub{padding-bottom:85px}.tourism-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:40px}.tourism-tile{display:block;background:var(--paper);border:1px solid var(--line);border-radius:6px;overflow:hidden}.tourism-tile>img{width:100%;height:290px;transition:filter .3s}.tourism-tile:hover>img{filter:brightness(1.06)}.tourism-tile>div{padding:32px}.tourism-tile h2{font-size:32px;letter-spacing:-.04em}.tourism-tile h2>span{font-size:23px}.tourism-tile p{font-size:15px;color:var(--muted);margin-top:20px;margin-bottom:25px}.tourism-intro{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:65px;padding-bottom:65px}.tourism-intro figure img{width:100%;height:410px;border-radius:6px}.tourism-intro .button{margin-top:25px}.tourism-tabs+#experiencias{scroll-margin-top:35px}@media(max-width:960px){.tourism-menu{width:100%}.tourism-menu summary{font-size:15px;justify-content:space-between}.tourism-dropdown{position:static;min-width:0;box-shadow:none;margin-bottom:10px}.tourism-intro{gap:30px}.tourism-tile>div{padding:25px}}@media(max-width:640px){.tourism-grid,.tourism-intro{grid-template-columns:1fr}.tourism-grid{gap:22px}.tourism-tile>img{height:230px}.tourism-tile h2{font-size:29px}.tourism-hub{padding-bottom:55px}.tourism-intro{padding-bottom:45px;gap:25px}.tourism-intro figure img{height:280px}.tourism-tabs{gap:8px;margin-bottom:30px}.tourism-tabs a{font-size:11px;padding:8px 12px}}
.arrival-location{font-size:13px;line-height:1.8;color:var(--muted);margin-top:24px;margin-bottom:24px}
@media(min-width:768px){.prose p:not(.eyebrow):not(.lede):not(.small-copy),.arrival-info details p,.transport-intro,.palm-copy p:not(.eyebrow),.about-intro{text-align:justify;text-align-last:start;hyphens:auto;-webkit-hyphens:auto}}
.about-intro{margin-top:25px;font-size:17px;color:var(--muted)}.about-photo img{width:100%;height:380px;border-radius:6px}.about-photo figcaption{font-size:11px;color:var(--muted);margin-top:10px}.about-copy{max-width:850px;padding-bottom:85px}.about-copy .button{margin-top:30px}@media(max-width:640px){.about-photo img{height:280px}.about-copy{padding-bottom:55px}}
.inauguration-story{max-width:900px}.inauguration-photo{margin-bottom:45px}.inauguration-photo .archive-photo{display:block;width:100%;margin:0;cursor:zoom-in;text-align:left}.inauguration-photo img{width:100%;height:auto;max-height:none;border-radius:6px}.inauguration-photo button span{display:block;margin-top:9px;font:600 12px var(--sans);color:var(--green)}.inauguration-photo figcaption{font-size:12px;color:var(--muted);margin-top:9px}.dam-facts{margin:25px 0 40px}.dam-facts>div{padding:18px 0;border-bottom:1px solid var(--line)}.dam-facts dt{font-weight:600;font-size:16px}.dam-facts dd{margin:6px 0 0;font-size:15px;color:var(--muted)}.inauguration-sources{margin:40px 0 30px}.inauguration-sources a{text-decoration:underline;text-underline-offset:3px}.inauguration-story>.button{margin-top:30px;margin-bottom:10px}
.transport-section{padding-bottom:85px;scroll-margin-top:35px}.transport-intro{max-width:840px;margin-bottom:30px;color:var(--muted);font-size:15px}.transport-table-wrap{overflow-x:auto;margin-bottom:32px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.transport-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;min-width:680px}.transport-table caption{text-align:left;font-family:var(--display);font-size:23px;font-weight:500;padding:23px}.transport-table th,.transport-table td{padding:17px 22px;border-top:1px solid var(--line);vertical-align:top}.transport-table thead{background:var(--green);color:var(--paper);font-size:11px}.transport-table tbody th{font-weight:600;min-width:165px}.transport-table td:last-child{min-width:175px}.transport-table tbody tr:nth-child(even){background:#eef0e5}.transport-table-wrap:focus-visible{outline:3px solid var(--orange);outline-offset:3px}@media(max-width:640px){.transport-section{padding-bottom:55px}.transport-table caption{font-size:20px;padding:18px}.transport-table th,.transport-table td{padding:14px 16px}.transport-intro{font-size:14px}}
.hero-photo .hero-slide{position:absolute;inset:0;opacity:0;animation:none;transform:scale(1);transition:opacity 1.4s ease;pointer-events:none}
.hero-photo .hero-slide.is-active{opacity:1;animation:arrive 10s cubic-bezier(.2,.6,.3,1) both}
.hero-slide[data-caption="EL RINCÓN"]{--hero-zoom-start:1.06}
.hero-slide[data-caption="DIQUE LAS PALMERAS"]{--hero-zoom-start:1.07;object-position:center 58%}
.hero-slide[data-caption="SALTO ESCONDIDO"],.hero-slide[data-caption="RÍO SOCOSCORA"]{--hero-zoom-start:1.07}
.hero-photo .hero-slide[data-caption="SALTO ESCONDIDO"]{--hero-zoom-start:1.04;object-position:55% 55%}
.hero-slide[data-caption="RÍO GÓMEZ"],.hero-slide[data-caption="RODEO DE CADENAS"]{--hero-zoom-start:1.05}
.hero-photo.is-starting{opacity:0}
.hero.is-paused .hero-slide,.hero.is-tab-hidden .hero-slide{animation-play-state:paused}
.hero-pause{position:absolute;z-index:2;right:56px;bottom:115px;border:1px solid #ffffff80;border-radius:4px;background:#172e2566;color:#fffdf6;padding:7px 13px;font-size:11px;backdrop-filter:blur(6px)}
@media(max-width:640px){.hero-pause{right:25px;bottom:100px}}
@media(prefers-reduced-motion:reduce){.hero-photo .hero-slide{transform:none;transition:none;animation:none}.hero-photo .hero-slide.is-active{animation:none}}
@media(max-width:640px){.favorites-more{align-items:flex-start;flex-direction:column;gap:18px}.favorites-more p{font-size:13px}}

.site-header nav>a.nav-services{color:var(--green);font-weight:700}
.site-header nav>a.nav-services[aria-current="page"]{text-decoration:underline;text-underline-offset:7px}
.service-directory{padding-bottom:100px}
.service-emergency{background:#e7ecdf;border:1px solid #cdd8bf;border-radius:6px;padding:27px 32px;margin-bottom:40px}
.service-emergency .eyebrow{margin-bottom:16px}
.service-emergency>div{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-emergency a{display:flex;align-items:baseline;gap:14px;padding:13px 17px;background:#f9f8f0;border-radius:4px;color:var(--green)}
.service-emergency a:hover{background:#fff}
.service-emergency strong{font:600 28px var(--display)}
.service-emergency span{font-size:13px}
.service-emergency>a.service-emergency-source{display:inline-block;background:none;padding:0;margin-top:14px;font-size:11px;text-decoration:underline;text-underline-offset:3px}
.service-intro{max-width:840px;color:var(--muted);font-size:15px;line-height:1.8;margin-bottom:28px}
.service-jumps{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:65px}
.service-jumps a{border:1px solid var(--line);padding:9px 14px;border-radius:25px;font-size:12px}
.service-jumps a:hover{color:white;background:var(--green);border-color:var(--green)}
.service-group{scroll-margin-top:25px;margin-bottom:70px}
.service-group h2{font-size:clamp(28px,3vw,42px);margin:5px 0 25px;letter-spacing:-.035em}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.service-card{display:flex;flex-direction:column;min-height:255px;padding:26px 28px;border:1px solid var(--line);border-radius:5px;background:var(--paper)}
.service-card h3{font:600 23px/1.25 var(--display);letter-spacing:-.02em;margin:0 0 20px;color:var(--green)}
.service-address{font-size:14px;margin:0 0 20px;color:var(--green)}
.service-address>span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:4px}
.service-address small{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-top:5px}
.service-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:auto}
.service-actions a{font-size:12px;font-weight:700;color:var(--green);text-decoration:underline;text-underline-offset:4px}
.service-actions a.service-phone{font-size:16px;text-decoration:none}
.service-no-phone{font-size:12px;color:var(--muted)}
.service-evidence{border-top:1px solid var(--line);padding-top:12px;margin:18px 0 0;font-size:11px;line-height:1.5;color:var(--muted)}
.service-evidence a{text-decoration:underline;color:var(--green)}
.service-last{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:25px}
.service-last p{max-width:600px;color:var(--muted);font-size:13px;line-height:1.6}
@media(max-width:960px){.service-emergency>div{gap:9px}.service-emergency a{display:block}.service-emergency span{display:block}}
@media(max-width:640px){.service-directory{padding-bottom:55px}.service-emergency{padding:20px}.service-emergency>div{grid-template-columns:1fr}.service-emergency a{display:flex;align-items:center}.service-emergency span{display:inline}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.service-jumps{margin-bottom:45px}.service-group{margin-bottom:55px}.service-last{align-items:flex-start;flex-direction:column}}

/* El selector del menú comparte el lenguaje visual de los botones principales. */
.site-header nav .tourism-menu{border:0;padding:0;background:transparent}
.site-header nav .tourism-menu summary{min-height:46px;padding:11px 17px;border:1px solid transparent;border-radius:4px;background:var(--yellow);color:var(--dark);font-size:13px;font-weight:700;line-height:1.5;gap:14px;transition:background .2s,transform .2s}
.site-header nav .tourism-menu summary:hover{background:#f7db79;transform:translateY(-2px)}
.site-header nav .tourism-menu summary.is-current{text-decoration:none;background:var(--green);color:#fff}
.site-header nav .tourism-menu summary.is-current:hover{background:#315d43}
.site-header nav .tourism-menu summary::marker{content:''}
.site-header nav .tourism-menu summary>span{font-size:18px;line-height:1}
@media(max-width:960px){.site-header nav .tourism-menu summary{width:100%;justify-content:space-between}}

/* Empresas: una ficha editorial por proyecto, con fotografías y contacto directo. */
.site-header nav>a.nav-companies{font-weight:700;color:var(--green)}
.empresas-directory,.empresas-news{padding-bottom:85px}
.empresas-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px}
.empresa-card{display:block;background:var(--paper);border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:transform .2s,box-shadow .2s}
.empresa-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #172e251a}
.empresa-card-photo{height:250px;background:#e5ebdc;overflow:hidden}
.empresa-card-photo img{width:100%;height:100%;object-fit:cover}
.empresa-card-logo{background:#f5f2e9;padding:18px}
.empresa-card-logo img{object-fit:contain}
.empresa-card-monogram{display:grid;place-items:center;color:var(--green);font:italic 120px var(--serif)}
.empresa-card-body{padding:27px}
.empresa-card-body .eyebrow{color:var(--orange);margin-bottom:12px}
.empresa-card-body h3{display:flex;justify-content:space-between;gap:15px;align-items:baseline}
.empresa-card-body h3 span{font:22px var(--sans);color:var(--green)}
.empresa-card-body p{font-size:14px;color:var(--muted);margin-top:15px}
.empresas-empty{background:#e9eddf;border-radius:6px;padding:50px;max-width:740px;margin-top:30px}
.empresas-empty>span{font-size:34px;color:var(--orange)}
.empresas-empty h3{margin:14px 0}
.empresas-empty p{max-width:520px;color:var(--muted)}
.empresas-invite{background:var(--green);color:var(--paper);border-radius:6px;padding:50px 60px;margin-bottom:85px}
.empresas-invite .eyebrow{color:var(--yellow)}
.empresas-invite h2{font-size:clamp(30px,3.5vw,48px);max-width:24ch;max-width:min(100%,24ch);line-height:1.18;text-wrap:balance;overflow-wrap:break-word}
.empresas-invite p{max-width:610px;margin-top:22px}
.empresa-hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-block:60px}
.empresa-hero h1{overflow-wrap:anywhere}
.empresa-hero .lede{margin-top:25px;color:var(--muted)}
.empresa-hero figure img{width:100%;height:430px;border-radius:6px}
.empresa-hero figure.empresa-logo{width:min(100%,350px);justify-self:center}
.empresa-hero figure.empresa-logo img{height:auto;max-height:350px;object-fit:contain;background:var(--paper);padding:20px}
.lodging-invite{margin-top:75px}
.empresa-hero-art{min-height:430px;border-radius:6px;background:radial-gradient(circle at 75% 25%,#efd46f 0 10%,transparent 10.5%),linear-gradient(145deg,#1a4033,#0d241f);color:var(--paper);display:flex;flex-direction:column;justify-content:space-between;padding:40px;overflow:hidden;position:relative}
.empresa-hero-art:after{content:'';position:absolute;width:80%;height:85%;border:1px solid #ffffff35;border-radius:50%;right:-25%;bottom:-45%;box-shadow:0 0 0 35px #ffffff0c,0 0 0 85px #ffffff08}
.empresa-hero-art span{font:italic clamp(100px,13vw,190px)/1 var(--serif);letter-spacing:-.13em;position:relative;z-index:1}
.empresa-hero-art small{font:700 11px var(--sans);letter-spacing:.25em;position:relative;z-index:1}
.empresa-actions{display:flex;flex-wrap:wrap;gap:20px;margin-top:35px}
.empresa-story{display:grid;grid-template-columns:minmax(0,1.5fr) 1fr;gap:80px;padding-block:25px 80px}
.empresa-story .prose h2{margin-bottom:25px}
.empresa-story .visit-note>*+*{margin-top:17px}
.empresa-story .visit-note ul{padding-left:18px}
.empresa-gallery{max-width:1100px;padding-bottom:65px}
.empresa-gallery h2{margin-bottom:28px}
.empresa-article{max-width:800px;padding-block:70px 100px}
.empresa-article h1{margin-bottom:35px}
.empresa-article figure{margin-bottom:40px}
.empresa-article figure img{width:100%;max-height:530px;border-radius:6px}
.empresa-card-photo.empresa-card-campaign{background:#0d2338}
.empresa-card-photo.empresa-card-campaign img{object-fit:contain}
.empresa-article-campaign{max-width:1100px}
.empresa-article-campaign>.lede{max-width:760px;margin-bottom:38px}
.empresa-campaign{display:grid;gap:34px;margin:34px 0 50px}
.empresa-campaign figure{margin:0}
.empresa-campaign button{display:block;width:100%;padding:0;border:0;background:none;border-radius:6px;overflow:hidden}
.empresa-campaign button img{width:100%;height:auto;max-height:none;aspect-ratio:1672/941;object-fit:contain;border-radius:6px}
.empresa-campaign figcaption{font-size:12px;color:var(--muted);margin-top:9px}
.empresa-article .text-link{margin-top:35px}
.empresas-home{padding-bottom:100px}
.empresa-form-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:55px;padding-bottom:100px;align-items:start}
.empresa-form{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:38px;display:grid;gap:22px}
.empresa-form label{display:grid;gap:8px;font-size:13px;font-weight:600}
.empresa-form label strong{color:var(--orange)}
.empresa-form input:not([type=checkbox]),.empresa-form textarea,.empresa-form select{width:100%;border:1px solid #bac8b6;border-radius:4px;background:#fff;color:var(--ink);padding:12px 14px;outline:none;font:14px/1.5 var(--sans)}
.empresa-form input:focus,.empresa-form textarea:focus,.empresa-form select:focus{border-color:var(--green)}
.empresa-upload-group{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:24px;border:1px solid var(--line);border-radius:6px;background:#f4f5ed}
.empresa-upload-group label span{font-weight:400;color:var(--muted)}
.empresa-upload-group input[type=file]{background:var(--paper);font-size:12px;min-height:50px}
.empresa-upload-group input[type=file]::file-selector-button{border:0;border-radius:3px;background:var(--green);color:white;padding:8px 12px;margin-right:12px;font:600 11px var(--sans);cursor:pointer}
.empresa-upload-group>div p,.empresa-upload-limit{font-size:11px;color:var(--muted);margin-top:8px}
.empresa-upload-group .empresa-upload-limit{grid-column:1/-1;margin:0}
.empresa-form textarea{resize:vertical;min-height:160px}
.empresa-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.empresa-form .empresa-form-consent{display:flex;align-items:flex-start;gap:12px;font-size:12px;line-height:1.55;font-weight:400}
.empresa-form-consent input{margin-top:3px;accent-color:var(--green)}
.empresa-form .form-challenge{background:#eef1e7;border:1px solid var(--line);border-radius:5px;padding:18px 20px;max-width:390px}
.form-challenge-label{font-weight:600}
.empresa-form .form-challenge input{max-width:130px}
.empresa-form-help,.empresa-form-status{font-size:12px;color:var(--muted)}
.empresa-form-status:empty{display:none}
.empresa-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.empresa-form .button{justify-self:start}
.request-success{padding-bottom:100px}
.empresa-form-aside{padding:35px;background:#e9eddf;border-radius:6px}
.empresa-form-aside h2{font-size:clamp(29px,3vw,43px)}
.empresa-form-aside ol{padding:0;margin:30px 0 0;list-style:none;counter-reset:steps}
.empresa-form-aside li{counter-increment:steps;display:grid;grid-template-columns:32px 1fr;column-gap:15px;margin-top:25px}
.empresa-form-aside li:before{content:counter(steps,decimal-leading-zero);color:var(--orange);font-size:11px;font-weight:700;grid-row:span 2;padding-top:2px}
.empresa-form-aside li strong{font-size:13px}
.empresa-form-aside li span{font-size:12px;color:var(--muted)}
@media(max-width:1350px) and (min-width:961px){.site-header .menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:124px;left:0;right:0;background:var(--cream);padding:25px;box-shadow:0 12px 15px #172e2515;border-top:1px solid var(--line);font-size:15px;align-items:stretch;gap:12px;flex-direction:column}.site-header nav.open{display:flex}.site-header nav .button{justify-content:space-between}.site-header nav .tourism-menu{width:100%}.site-header nav .tourism-menu summary{justify-content:space-between}.site-header nav .tourism-dropdown{position:static;box-shadow:none;margin-bottom:10px}}
@media(max-width:960px){.empresas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.empresa-hero,.empresa-story{gap:30px}.empresa-form-layout{grid-template-columns:1fr;gap:30px}.empresa-form-aside{order:-1}}
@media(max-width:640px){.empresas-grid,.empresa-hero,.empresa-story,.empresa-form-row,.empresa-upload-group{grid-template-columns:1fr}.empresas-directory,.empresas-news,.empresas-home{padding-bottom:55px}.empresas-empty{padding:30px}.empresas-invite{padding:35px 25px;margin-bottom:55px}.empresa-hero{padding-block:35px}.empresa-hero figure img,.empresa-hero-art{height:280px;min-height:280px}.empresa-story{padding-bottom:55px}.empresa-article{padding-block:40px 70px}.empresa-card-photo{height:210px}.empresa-form{padding:25px}.empresa-form-layout{padding-bottom:65px}}

/* Jerarquía editorial en tablets y pantallas medianas. */
@media (min-width:641px) and (max-width:1500px){
  .hero h1{font-size:clamp(82px,calc(4.8vw + 36px),110px)}
  .closing h2{font-size:clamp(70px,calc(4vw + 30px),86px)}
}
@media (min-width:1101px) and (max-width:1500px){
  .palm-copy{padding:70px 40px 70px}
  .palm-copy h2{font-size:clamp(72px,calc(3vw + 39px),84px)}
}
@media (min-width:641px) and (max-width:1100px){
  .palm-story{grid-template-columns:minmax(0,1fr)}
  .palm-image{height:clamp(340px,43vw,480px)}
  .palm-image img{max-height:none;object-fit:cover}
  .palm-copy{padding:clamp(56px,7vw,82px) max(56px,calc((100vw - 980px)/2)) 80px}
  .palm-copy h2{font-size:clamp(74px,8vw,90px);max-width:900px}
  .palm-copy p{max-width:610px;font-size:15px}
}

/* Separación entre el buscador de alojamientos y la primera fila de fichas. */
.album-card img{display:block;width:100%;height:clamp(210px,25vw,300px);aspect-ratio:auto;object-fit:cover}
.search-field + .cards-grid{margin-top:30px}
@media (max-width:640px){.search-field + .cards-grid{margin-top:24px}}

/* Las invitaciones a publicar necesitan aire antes del llamado a la acción. */
.empresas-invite .button{margin-top:30px}
@media (max-width:640px){.empresas-invite .button{margin-top:24px}}

/* Mantener la navegación a mano durante todo el recorrido. */
.site-header{position:sticky;top:0;z-index:50;box-shadow:0 3px 16px #172e2512}
html{scroll-padding-top:136px}
@media (max-width:960px){html{scroll-padding-top:102px}}
@media (max-width:640px){html{scroll-padding-top:112px}}
@media (max-width:1350px){.site-header nav.open{max-height:calc(100dvh - 124px);overflow-y:auto;overscroll-behavior:contain}}
@media (max-width:640px){.site-header nav.open{max-height:calc(100dvh - 100px)}}
