/* Language selector and travel concierge */
.language-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:68px;max-width:none;padding:0 6px;font-size:12px;white-space:nowrap}
.language-trigger>span:first-child{max-width:75px;overflow:hidden;text-overflow:ellipsis}
.language-dialog{width:min(660px,calc(100% - 36px));max-width:none;max-height:min(760px,calc(100dvh - 36px));padding:0;border:1px solid #dfdfd3;border-radius:18px;background:#fbfaf5;color:#21372e;box-shadow:0 26px 95px #10251c45}
.language-dialog::backdrop{background:#10251f99;backdrop-filter:blur(5px)}
.language-dialog-head{padding:36px 38px 20px;display:flex;justify-content:space-between;gap:20px}
.language-kicker{font-size:9px;letter-spacing:.19em;font-weight:700;color:#a0504d}
.language-dialog h2{font:500 35px/1.15 Georgia,'Songti SC',serif;letter-spacing:-.03em;margin:13px 0 9px}
.language-dialog-head p{color:#69796b;font-size:13px;line-height:1.7;margin:0}
.language-close{flex:none;display:grid;place-items:center;width:40px;height:40px;border:1px solid #dce3d8;border-radius:50%;background:#fff;color:#354e3c;font-size:24px;line-height:1}
.language-close:hover{background:#e7ede4}
.language-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:8px 38px 15px}
.language-option{display:flex;align-items:center;gap:13px;min-height:72px;border:1px solid #e0e6dc;border-radius:10px;background:#fff;text-align:left;color:#243a2e;padding:12px;transition:border-color .25s,background .25s,transform .25s}
.language-option:hover{border-color:#a5b7a4;background:#f2f5ed;transform:translateY(-2px)}
.language-option[aria-current=true]{border-color:#476b53;background:#edf3eb;box-shadow:inset 0 0 0 1px #476b53}
.language-code{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:#edf1e8;color:#44634c;font-size:10px;font-weight:700;letter-spacing:.03em}
.language-option strong{display:block;font-size:14px;font-weight:600}.language-option small{display:block;font-size:10px;color:#728075;margin-top:4px;line-height:1.3}.language-check{margin-left:auto;color:#915047;font-size:15px}
.language-note{margin:0;padding:10px 38px 27px;color:#7d8a7d;font-size:11px}
.language-coverage{background:#eef2ea;color:#405e4a;text-align:center;padding:9px 20px;font-size:11px;line-height:1.4}
body[data-page=home] .language-coverage{position:absolute;top:90px;left:0;right:0;z-index:39;background:#eff2e9e8}
.chat-trigger{display:flex;align-items:center;gap:8px;padding:13px 20px;background:#953d45;box-shadow:0 12px 30px #293c2c35;transition:transform .25s,box-shadow .25s,background .25s}
.chat-trigger span{margin-left:0;font-weight:600}.chat-trigger:hover{transform:translateY(-3px);background:#80353d;box-shadow:0 17px 35px #293c2c45}
.chat-panel{width:380px;max-width:calc(100vw - 30px);border:1px solid #dce4d9;border-radius:18px;overflow:auto;box-shadow:0 24px 65px #152f2560;background:#fbfaf5}
.chat-head{padding:23px 25px;background:#26483a;align-items:start}.chat-head b{font-size:19px;font-weight:600;letter-spacing:.01em}.chat-head small{font-size:11px;line-height:1.5;margin-top:6px;color:#d4e2d3}.chat-close{border:1px solid #ffffff50;border-radius:50%;font-size:22px;line-height:1;width:38px;height:38px}
.chat-close:hover{background:#ffffff20}.chat-body{padding:24px}.chat-body p{font-size:22px;line-height:1.45;letter-spacing:-.025em;margin:0 0 21px;max-width:270px;font-weight:500}
.chat-body>a,.chat-body>.wechat-copy{position:relative;border:1px solid #e3e9dd;border-radius:10px;margin-top:8px;background:#fff;min-height:52px;padding:14px 15px 14px 48px;font-size:12px;font-weight:600;line-height:1.5;transition:background .25s,border-color .25s,transform .25s}
.chat-body>a::before,.chat-body>.wechat-copy::before{position:absolute;left:16px;top:50%;translate:0 -50%;font-size:17px;line-height:1;color:#597961;content:'✉'}

.chat-body>a:hover,.chat-body>.wechat-copy:hover{border-color:#93aa95;background:#f1f5ed;transform:translateX(3px)}
.chat-body details{margin-top:12px;color:#587061}.chat-body summary{padding:10px 0}.chat-body details a{min-height:38px;padding:8px 0}.chat-body>small{border-top:1px solid #e1e7dc;padding-top:15px;margin-top:13px;font-size:10px;line-height:1.7;color:#728272}
@media(max-width:850px){body[data-page=home] .language-coverage{top:76px}.language-trigger{min-width:42px}.language-trigger>span:first-child{max-width:40px}.language-dialog-head{padding:28px 25px 17px}.language-options{padding:6px 25px 12px}.language-note{padding:10px 25px 24px}}
@media(max-width:520px){.language-dialog{border-radius:15px}.language-dialog h2{font-size:29px}.language-options{grid-template-columns:1fr;gap:7px}.language-option{min-height:61px;padding:9px 12px}.language-code{width:36px;height:36px;flex-basis:36px}.chat-panel{right:15px;bottom:76px;width:calc(100% - 30px)}.chat-body{padding:19px}.chat-head{padding:19px 20px}}
@media(prefers-reduced-motion:reduce){.language-option,.chat-trigger,.chat-body>a,.chat-body>.wechat-copy{transition:none}.language-option:hover,.chat-trigger:hover,.chat-body>a:hover,.chat-body>.wechat-copy:hover{transform:none}}
/* Contact options remain concise and readable on every viewport. */
.chat-body .chat-whatsapp{background:#276649;color:#fff;border-radius:10px;padding:14px 16px;text-decoration:none}.chat-body .chat-whatsapp:hover{background:#1c5139}
.lead-extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.lead-extra-grid label,.lead-needs legend{font-size:12px;font-weight:600}.lead-extra-grid input{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #a9b6a9;padding:14px 0;font:inherit}.lead-needs{border:0;padding:0;margin:24px 0 8px;display:flex;flex-wrap:wrap;gap:10px 18px}.lead-needs legend{margin-bottom:12px}.lead-needs label{font-size:13px;display:flex;gap:7px;align-items:center}.lead-needs input{accent-color:#355c48}.lead-direct-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lead-direct-actions button{font-family:inherit;justify-content:center;text-align:center}.lead-direct-actions .lead-wa{background:#276649;border-color:#276649}.lead-direct-actions button:focus-visible{outline:3px solid #b97058;outline-offset:3px}@media(max-width:600px){.lead-extra-grid,.lead-direct-actions{grid-template-columns:1fr}}
.chat-icon{width:20px;height:20px;flex:0 0 20px}.chat-trigger.is-footer-visible:not([aria-expanded=true]){opacity:0;pointer-events:none}@media(max-width:650px){.chat-trigger{width:48px;height:48px;min-height:48px;padding:0;right:14px;bottom:14px;justify-content:center;border-radius:50%;background:#276649}.chat-trigger span{display:none}.chat-trigger .chat-icon{width:23px;height:23px;flex-basis:23px}}

.chat-body .chat-whatsapp{gap:9px}.chat-whatsapp svg{width:19px;height:19px;flex:0 0 19px}.lead-direct-actions-top{margin-bottom:24px}

.chat-body>a.chat-whatsapp{background:#276649;border-color:#276649;color:#fff}.chat-body>a.chat-whatsapp:hover{background:#1c5139;color:#fff}.chat-body>a.chat-whatsapp::before{content:none}

.language-note button{min-height:42px;padding:0;background:transparent;border:0;color:#355d4a;font:inherit;font-weight:600;font-size:13px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.language-note button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.language-code{white-space:nowrap}
@media(max-width:520px){.language-dialog{max-height:calc(100dvh - 28px)}.language-option{min-height:55px}.language-dialog-head{padding-bottom:12px}}

/* Live support inbox. The panel is a conversation, not a contact-link list. */
.chat-panel{max-height:min(720px,calc(100dvh - 34px));overflow:hidden}
.support-chat{display:flex;flex-direction:column;min-height:0}
.support-log{display:flex;flex-direction:column;gap:9px;max-height:300px;overflow:auto;padding:4px 2px 14px;scrollbar-width:thin}
.support-log:empty{display:none}
.support-bubble{max-width:88%;padding:10px 12px 9px;border-radius:12px;background:#eef3ea;color:#263d31}
.support-bubble.visitor{align-self:flex-end;background:#285c47;color:#fffdf4;border-bottom-right-radius:4px}
.support-bubble.admin{align-self:flex-start;border-bottom-left-radius:4px}
.support-bubble small{display:block;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.62;margin-bottom:4px}
.support-bubble p{margin:0;font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;letter-spacing:0;max-width:none}
.support-start,.support-compose{display:flex;flex-direction:column;gap:9px}
.support-start[hidden],.support-compose[hidden]{display:none}
.support-start label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:700;color:#5d7162;letter-spacing:.04em}
.support-start input,.support-start textarea,.support-compose textarea{width:100%;border:1px solid #d8e2d5;border-radius:8px;background:#fff;padding:10px 11px;font:inherit;font-size:13px;color:#203a2c;resize:vertical;min-height:42px}
.support-start textarea,.support-compose textarea{min-height:72px}
.support-start input:focus,.support-start textarea:focus,.support-compose textarea:focus{outline:2px solid #9cb69a;outline-offset:1px;border-color:#7f9f80}
.support-welcome{font-size:15px!important;line-height:1.55!important;font-weight:600!important;color:#274537!important;margin:0 0 3px!important;max-width:none!important;letter-spacing:-.01em!important}
.support-send{align-self:flex-end;border:0;border-radius:7px;background:#8d3e49;color:#fff;padding:10px 18px;font-size:12px;font-weight:700;cursor:pointer}
.support-send:hover{background:#73343d}.support-send:disabled{opacity:.65;cursor:default}
.support-note{margin:0!important;font-size:10px!important;line-height:1.6!important;color:#7c8d7d!important;max-width:none!important}
.support-status{margin:0!important;font-size:11px!important;line-height:1.5!important;color:#9a4c50!important;max-width:none!important}
.support-status:empty{display:none}
.support-fallback{margin-top:12px;padding-top:10px;border-top:1px solid #e2e9de;font-size:10px;color:#748474}
.support-fallback:empty{display:none}
.support-fallback a{display:inline-flex;margin-right:10px;padding:5px 0;color:#286347;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.support-fallback p{margin:5px 0 0!important;font-size:10px!important;line-height:1.6!important;color:#748474!important;max-width:none!important}
.support-compose textarea{min-height:62px}
.support-compose .support-status{min-height:0}
@media(max-width:520px){
 .chat-panel{max-height:calc(100dvh - 28px)}
 .support-log{max-height:34vh}
 .support-bubble{max-width:94%}
}
