/* A footer grounded in the supplied logo's green, charcoal and amber. */
.site-footer{scroll-margin-top:128px;background:linear-gradient(125deg,#2e5f42 0%,#294f39 72%,#254632 100%);color:#f7f4e9;border-top:4px solid var(--amber)}
.site-footer .footer-help-strip{background:var(--amber);border:0;padding:36px 0;color:#fff9ef}
.site-footer .footer-help-strip .eyebrow{color:#fff9ef;font-size:29px;line-height:1.4}
.site-footer .footer-help-strip p{color:#fff5e8;font-family:var(--sans);font-size:14px;line-height:1.9;max-width:750px}
.site-footer .footer-help-strip .button{background:#f7f4e9;border:1px solid #f7f4e9;color:var(--green);padding:16px 22px;font-weight:800}
.site-footer .footer-help-strip .button:hover{background:#fff;box-shadow:0 8px 24px #3b21052b}
.site-footer .footer-top{padding-top:64px;padding-bottom:48px}
.site-footer .footer-brand .brand-full{box-shadow:0 8px 28px #142d1e25;border-radius:5px;overflow:hidden}
.site-footer .footer-brand>p{color:#f7f4e9cc;font:400 13px/1.95 var(--sans);max-width:310px}
.site-footer .footer-column h3{color:#fff8e7;font-size:14px;letter-spacing:.005em;margin-bottom:24px}
.site-footer .footer-column h3:after{content:'';display:block;width:30px;height:2px;margin-top:13px;background:#d49a54}
.site-footer .footer-column .footer-link,.site-footer .footer-top>div>a.footer-link,.site-footer .footer-contact .footer-hours{color:#f7f4e9cf;font-family:var(--sans);font-size:13px;line-height:1.85}
.site-footer .footer-link>svg,.site-footer .footer-hours>svg{color:#f5d5ab;opacity:.9}
.site-footer .footer-link:hover,.site-footer .footer-column .footer-link:hover{color:#fff}
.site-footer .social-links{gap:12px;margin-top:24px}
.site-footer .social-links>a{color:#fff7e8;font:600 11px/1.5 var(--sans);padding:10px 11px;border:1px solid #ffffff30;border-radius:8px;background:#ffffff06}
.site-footer .social-links>a:hover{background:#ffffff12;border-color:#ffffff70}
.site-footer .social-links svg{color:#f5d5ab}
.site-footer .footer-payments{border-color:#ffffff25;padding-top:32px;padding-bottom:35px}
.site-footer .footer-payment-copy>span{background:var(--amber);border:1px solid #ffffff30;color:#fff;border-radius:12px;width:47px;height:47px}
.site-footer .footer-payment-copy h3{color:#fff8e7;font-family:var(--sans);font-size:17px;font-weight:800}
.site-footer .footer-payment-copy p{color:#f7f4e9c9;font-family:var(--sans);font-size:12px}
.site-footer .payment-badge{background:#ffffff0b;color:#fff8e7;border-color:#ffffff36;border-radius:9px;font-family:var(--sans);font-size:12px;font-weight:700;min-height:45px;padding:10px 13px}
.site-footer .payment-badge>svg{color:#f5d5ab}
.site-footer .payment-badge:hover{background:#ffffff18;border-color:#ffffff85}
.site-footer .payment-note{color:#f7f4e9ad;font:400 12px/1.9 var(--sans)}
.site-footer .footer-payments>.footer-link{color:#fff8e7;font-family:var(--sans);font-weight:700}
.site-footer .footer-bottom-wrap{background:#203e2c;border-top:1px solid #ffffff1c}
.site-footer .footer-bottom{padding:24px 0;color:#f7f4e9b8}
.site-footer .footer-bottom p,.site-footer .footer-bottom>span{color:#f7f4e9b8;font-family:var(--sans);font-size:10px;line-height:1.85}
.site-footer .footer-bottom .footer-link{color:#f7f4e9df;font-family:var(--sans);font-size:11px}
.site-footer .footer-bottom .footer-link>svg{color:#f5d5ab}
.site-footer :focus-visible{outline:2px solid #fff3cf;outline-offset:4px}
.section-description{max-width:780px;font:400 15px/1.95 var(--sans);color:var(--charcoal);margin:18px 0 30px;text-wrap:pretty}
.section-description.compact{font-size:14px;margin:15px 0 25px}.reviews-layout .section-description{font-size:14px;max-width:390px;margin-bottom:22px}
.guide-lead{font-family:var(--sans);line-height:1.95}.destination-intro>.prose{margin-top:23px}.destination-card p,.destination-card:hover p,.destination-card:focus p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.booking-form-panel fieldset>.section-description{margin-top:-8px;margin-bottom:4px;font-size:14px}
.contact-form-panel>.section-description{font-size:14px;margin-bottom:25px}
/* A compact, non-modal conversation panel opens directly above its launcher. */
.whatsapp-concierge{position:relative;z-index:85}
.whatsapp-launcher{right:22px;bottom:23px;width:55px;height:55px;border:1px solid #ffffff65;background:var(--green);color:#fff;box-shadow:0 6px 25px #18382340;cursor:pointer;transition:background .2s,box-shadow .2s,transform .2s}
.whatsapp-launcher:hover,.whatsapp-launcher[aria-expanded=true]{background:#254d36;box-shadow:0 8px 30px #18382355}
.whatsapp-launcher>span{display:block;position:absolute;right:calc(100% + 13px);white-space:nowrap;border:1px solid #2e5f4220;padding:9px 12px;border-radius:8px;background:#f7f4e9;color:var(--green);font:700 11px/1.5 var(--sans);opacity:0;pointer-events:none;translate:5px 0;transition:opacity .2s,translate .2s}
.whatsapp-launcher:hover>span,.whatsapp-launcher:focus-visible>span{opacity:1;translate:0}
.whatsapp-panel{position:fixed;right:22px;bottom:91px;width:380px;max-width:calc(100% - 40px);max-height:calc(100dvh - 118px);overflow-y:auto;overscroll-behavior:contain;z-index:46;background:#fcfaf3;color:var(--charcoal);border:1px solid #2e5f4226;border-radius:18px;box-shadow:0 20px 70px #152b2440;font:400 14px/1.7 var(--sans);animation:concierge-open .22s cubic-bezier(.2,.65,.3,1);transform-origin:bottom right;scrollbar-width:thin;scrollbar-color:#2e5f4260 transparent}
.whatsapp-panel-header{display:flex;align-items:center;gap:13px;padding:23px 21px;background:var(--green);color:#fff8e7;border-bottom:3px solid var(--amber)}
.whatsapp-panel-mark{display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;border:1px solid #ffffff40;background:#ffffff0a;border-radius:50%}
.whatsapp-panel-header .eyebrow{font:800 8px/1.7 var(--sans);color:#fff8e7c9;letter-spacing:.12em;margin:0 0 4px;display:block}
body:not(.admin-body):not(.login-body) .whatsapp-panel h2{font-family:var(--editorial);font-size:23px;font-weight:700;line-height:1.3;letter-spacing:-.025em;color:#fff8e7;margin:0}
.whatsapp-close{align-self:flex-start;margin-left:auto;display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border:1px solid #ffffff3d;border-radius:50%;color:#fff;background:transparent;cursor:pointer}
.whatsapp-close:hover{background:#ffffff18}.whatsapp-panel-body{padding:22px}
.whatsapp-panel-body>p{font:400 13px/1.85 var(--sans);color:#687367;margin:0 0 20px}
.whatsapp-panel form{display:flex;flex-direction:column;gap:0}
.whatsapp-panel label{font:800 12px/1.6 var(--sans);color:var(--green);margin:15px 0 7px}.whatsapp-panel label:first-child{margin-top:0}.whatsapp-panel label>span:not(.whatsapp-optional){color:var(--amber)}
.whatsapp-panel .whatsapp-optional{font:500 10px/1.6 var(--sans);color:#6d756e;margin-left:5px}
.whatsapp-panel input,.whatsapp-panel textarea{width:100%;min-width:0;border:1px solid #2e5f4230;border-radius:8px;background:#fff;color:#354a3b;padding:12px 13px;font:400 14px/1.6 var(--sans);min-height:46px;box-shadow:none}
.whatsapp-panel textarea{min-height:100px;resize:vertical;max-height:220px}
.whatsapp-panel input:focus,.whatsapp-panel textarea:focus{outline:2px solid #af641435;outline-offset:1px;border-color:var(--green)}
.whatsapp-panel input::placeholder,.whatsapp-panel textarea::placeholder{color:#879087;opacity:1}
.whatsapp-panel form>small{font:400 10px/1.7 var(--sans);color:#7a837a;margin-top:6px}
.whatsapp-panel .whatsapp-continue{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:20px;border-radius:9px;min-height:49px;padding:13px;font:800 12px/1.6 var(--sans);color:#fff;background:var(--green);border:1px solid var(--green)}
.whatsapp-panel .whatsapp-continue>svg:last-child{margin-left:auto}.whatsapp-panel .whatsapp-continue:hover{background:#244e35}
.whatsapp-handoff-note{display:flex;gap:8px;align-items:flex-start;margin-top:14px;color:#758071;font:400 10px/1.9 var(--sans)}
.whatsapp-handoff-note>svg{flex-shrink:0;margin-top:3px;color:var(--amber)}.whatsapp-handoff-note a{color:var(--green);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.whatsapp-ready{border-top:1px solid #2e5f4220;margin-top:18px;padding-top:15px;font:400 12px/1.8 var(--sans)}
.whatsapp-ready p{font:inherit;color:var(--green)}.whatsapp-ready a{display:inline-flex;align-items:center;gap:9px;margin-top:8px;font-weight:800;color:var(--green);text-decoration:underline;text-underline-offset:4px}
.whatsapp-panel[hidden],.whatsapp-launcher[hidden],.whatsapp-ready[hidden]{display:none!important}
.back-to-top{bottom:91px;right:32px}.whatsapp-panel:not([hidden])~.back-to-top{display:none}
@keyframes concierge-open{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:1020px){.site-footer .footer-brand>p{font-size:13px}.site-footer .footer-help-strip .eyebrow{font-size:26px}.site-footer .footer-help-strip p{max-width:600px}}
@media(max-width:760px){.site-footer .footer-help-strip{padding:32px 0}.site-footer .footer-help-strip .eyebrow{font-size:26px;line-height:1.5}.site-footer .footer-help-strip p{font-size:14px;line-height:1.9}.site-footer .footer-help-strip .button{margin-top:23px;font-size:13px}.site-footer .footer-top{padding-top:43px;padding-bottom:36px;gap:34px 22px}.site-footer .footer-brand>p{font-size:14px;max-width:350px}.site-footer .footer-column h3{font-size:14px}.site-footer .footer-column .footer-link,.site-footer .footer-top>div>a.footer-link,.site-footer .footer-contact .footer-hours{font-size:13px;line-height:1.95}.site-footer .payment-badge{font-size:12px;min-height:46px}.site-footer .footer-bottom{padding:25px 0 34px}.site-footer .footer-bottom p{max-width:285px}.site-footer .footer-bottom>div{padding-right:55px}.section-description{font-size:14px;line-height:1.95;margin-top:17px;margin-bottom:26px}.whatsapp-launcher{width:52px;height:52px;right:16px;bottom:max(18px,env(safe-area-inset-bottom))}.whatsapp-launcher>span{display:none}.whatsapp-panel{right:14px;bottom:83px;width:370px;max-width:calc(100% - 28px);max-height:calc(100dvh - 105px)}.whatsapp-panel-header{padding:20px 18px;gap:11px}.whatsapp-panel-body{padding:21px}.whatsapp-panel input,.whatsapp-panel textarea{font-size:16px}.whatsapp-panel .whatsapp-continue{font-size:12px}.back-to-top{right:24px;bottom:81px}}
@media(prefers-reduced-motion:reduce){.whatsapp-panel{animation:none}.whatsapp-launcher,.whatsapp-launcher>span{transition:none}}
@media print{.whatsapp-concierge{display:none!important}}
