/* The same palette reaches every surface, including search and quote dialogs. */
:root{--skin-paper:#f5f8f4;--skin-card:#fff;--skin-soft:#eaf2ec;--skin-solid:#163f50;--skin-on-solid:#fffdf5;--skin-on-accent:#263127;--skin-title-font:"Trebuchet MS","Manrope",Arial,sans-serif;--skin-ui-font:"Trebuchet MS","Manrope",Arial,sans-serif;--skin-body-font:"Manrope",Arial,sans-serif;--skin-art-1:#4e9895;--skin-art-2:#dca957;--skin-art-3:#dc8f76;--skin-shadow:0 12px 35px #203d5010;color-scheme:light dark}
@media(prefers-color-scheme:dark){html:not([data-color-mode]){--background:#142621;--ink:#eff6ee;--navy:#a9ded6;--muted:#b6d0c5;--line:#3e5e50;--skin-paper:#142621;--skin-card:#1c352e;--skin-soft:#26443b;--skin-solid:#2c665e}}
body{font-family:var(--skin-body-font);background:var(--skin-paper);color:var(--ink);isolation:isolate}
button,input,select,textarea{color:inherit}
h1,h2,h3,.hero h1,.section-heading h2,.contact-content h2,.dialog h2{font-family:var(--skin-title-font)}
.button,.product-tabs,.category-tabs,.header nav,.travel-navigation,.service-grid strong,.campaign-button{font-family:var(--skin-ui-font)}
.header{background:color-mix(in srgb,var(--skin-card) 96%,transparent);border-color:var(--line)}
.header nav.open,.more-services-menu,.search-panel,.traveler-popover,.offer-card,.experience-card,.service-grid>button,dialog,.empty-state,.experience-empty,.directory-card,.directory-search,.directory-empty,.destination-choices button,.destination-extras button,.category-tabs button,.icon-button,.button-outline,.site-search-results>button,.car-category-choices button,.journey-shortcuts>button,.confirmed-partners>div>span{background:var(--skin-card);color:var(--ink);border-color:var(--line)}
.search-panel,.traveler-popover,.more-services-menu,dialog{box-shadow:var(--skin-shadow)}
.search-field,.quote-form input,.quote-form select,.quote-form textarea,.quote-preferences,.service-guide,.service-hint,.site-search-field,.journey-empty,.pending-contact,.detail-price,.form-context,.destination-dialog-choices button,.detail-experiences,.quote-result,.experience-visual,.experience-visual.is-framed{background:var(--skin-soft);color:var(--ink);border-color:var(--line)}
.quote-form input[readonly]{background:var(--skin-paper);color:var(--muted)}
.quote-form input::placeholder,.quote-form textarea::placeholder,.directory-search input::placeholder,.search-field input::placeholder,.site-search-field input::placeholder{color:var(--muted);opacity:1}
.search-field input,.search-field select,.directory-search input,.site-search-field>input{color:var(--ink);color-scheme:inherit}
.travel-navigation>button svg,.search-field>svg,.search-field small,.hero-destination small,.card-includes span,.destination-extras,.experience-disclosure,.detail-list li,.quote-contact-note,.journey-empty>svg{color:var(--muted)}
.search-field select option,.quote-form option{background:var(--skin-card);color:var(--ink)}
.button-navy,.category-tabs button.active,.destination-choices button[aria-pressed=true],.toast{background:var(--skin-solid);color:var(--skin-on-solid);border-color:var(--skin-solid)}
.button-yellow,.card-price button,.hero-link>span,.header-tool>b,.service-steps .is-active b,.skip-link{color:var(--skin-on-accent);background:var(--accent)}
.button-outline{color:var(--navy)}
.card-contact{background:var(--skin-soft);color:var(--teal)}
.button-whatsapp,.floating-contact{background:#16794f;color:#fff}
.button-whatsapp:hover,.floating-contact:hover{background:#126541}
.favorites-button>b,.benefit-icon,.service-icon,.service-grid>button:nth-child(n) .service-icon,.service-dialog-icon,.search-result-icon,.journey-entry-heading>span,.directory-symbol{background:var(--skin-soft);color:var(--navy)}
.experiences-section,footer{background:var(--skin-soft);border-color:var(--line)}
.hero,.inspiration-card,.experience-discover,.contact-section{background:var(--skin-solid);color:var(--skin-on-solid)}
.hero-shade{background:linear-gradient(90deg,color-mix(in srgb,var(--skin-solid) 96%,#041b30) 0%,color-mix(in srgb,var(--skin-solid) 83%,transparent) 33%,#041b301c 80%)}
.hero-destination{background:var(--skin-card);color:var(--navy)}
.destination-pin{background:var(--skin-soft);color:var(--teal)}
.contact-content .eyebrow,.contact-content h2,.contact-content p,.contact-art>span{color:var(--skin-on-solid)}
.contact-plan{color:var(--skin-on-solid);border-color:color-mix(in srgb,var(--skin-on-solid) 35%,transparent)}
.experience-art{background:linear-gradient(145deg,var(--skin-soft),var(--skin-paper));color:var(--teal)}
.detail-demo{background:var(--skin-soft);color:var(--muted)}
.copy-button,.service-review-tools>p{color:var(--teal)}
.journey-entry-actions>button:last-child,.favorite[aria-pressed=true],.favorites-button[aria-pressed=true]{color:#ab3d59}
html[data-color-mode=dark] :is(.journey-entry-actions>button:last-child,.favorite[aria-pressed=true],.favorites-button[aria-pressed=true]){color:#f3a4bb}
.service-steps b{background:var(--skin-soft);color:var(--muted)}
.service-steps .is-active b{color:var(--skin-on-accent)}
.car-category-choices button[aria-pressed=true]{background:var(--skin-soft);border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}
.quote-options,.quote-preferences,.experience-facts,.confirmed-partners,.service-guide details,.service-steps,.journey-entry,.quote-form input,.quote-form textarea,.quote-form select,.destination-dialog-choices button,.service-review-tools{border-color:var(--line)}
.site-search-results>button:hover,.site-search-results>button:focus-visible,.journey-shortcuts>button:hover,.header-tool:hover,.header nav a:hover,.more-services-menu button:hover,.more-services-menu a:hover,.icon-button:hover,.category-tabs button:hover{background:var(--skin-soft);color:var(--navy)}
.card-badge,.favorite,.experience-discover small{background:var(--skin-card);color:var(--navy)}
.experience-discover small{opacity:.96}
.directory-thumbnail.is-framed img{background:var(--skin-card)}
.directory-card h3,.car-category-choices button strong,.service-guide strong,.journey-empty h3{color:var(--navy)}
.directory-card:hover{border-color:var(--teal);box-shadow:var(--skin-shadow)}
dialog::backdrop{background:#081b32ab;backdrop-filter:blur(7px)}
input[type=checkbox],input[type=radio]{accent-color:var(--skin-solid)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:var(--teal);outline-offset:4px}
.quote-form [aria-invalid=true]{border-color:#cf6977}
html[data-skin=natal] :is(.hero,.contact-section){border:1px solid color-mix(in srgb,var(--skin-art-2) 48%,transparent)}
html[data-skin=natal] :is(.product-tabs,.section-heading){position:relative}
html[data-skin=natal] .section-heading h2,html[data-skin=reveillon] .section-heading h2{font-weight:500;letter-spacing:-1.5px;line-height:1.15}
html[data-skin=natal] .hero h1,html[data-skin=reveillon] .hero h1{font-weight:500;letter-spacing:-2px}
html[data-skin=natal] :is(.offer-card,.search-panel,.experience-card,.service-grid>button){border:1px solid var(--line);box-shadow:var(--skin-shadow)}
html[data-skin=natal] .eyebrow,html[data-skin=reveillon] .eyebrow{letter-spacing:2px}
html[data-skin=pascoa] :is(.offer-card,.search-panel,.experience-card,.service-grid>button,dialog){border-radius:25px}
html[data-skin=pascoa] .button,html[data-skin=familia] .button{border-radius:13px}
html[data-skin=familia] :is(.search-panel,.offer-card,.service-grid>button){box-shadow:var(--skin-shadow)}
html[data-skin=reveillon] :is(.offer-card,.search-panel,.service-grid>button){border:1px solid var(--line)}
html body[data-corner-style=straight] :is(.hero,.offer-card,.inspiration-card,.directory-card,.contact-section){border-radius:7px}
html body[data-corner-style=soft] :is(.hero,.offer-card,.inspiration-card,.directory-card,.contact-section){border-radius:30px}
/* Visitors can follow the OS, select a color mode, or pause decorative motion. */
.appearance-control{position:relative;color:var(--navy);flex:none}
.appearance-control>summary{display:flex;align-items:center;justify-content:center;gap:6px;list-style:none;cursor:pointer;border-radius:9px;min-width:34px;min-height:40px}
.appearance-control>summary::-webkit-details-marker{display:none}.appearance-control>summary:hover{background:var(--skin-soft)}
.appearance-control>summary svg{width:19px;height:19px}.appearance-control-label{display:none;font-size:10px;font-weight:750}
.appearance-popover{position:absolute;right:0;top:calc(100% + 17px);width:285px;max-width:calc(100vw - 24px);padding:20px;background:var(--skin-card);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 55px #081b3226;z-index:60;color:var(--ink)}
.appearance-popover>strong{font:700 17px var(--skin-title-font)}
.appearance-popover fieldset{border:0;padding:0;margin:15px 0 0}.appearance-popover legend{font-size:10px;color:var(--muted);margin-bottom:9px}
.appearance-popover fieldset label{display:flex;gap:10px;align-items:center;padding:11px 0;font-size:11px;cursor:pointer}.appearance-popover fieldset svg{width:17px;height:17px;color:var(--muted)}
.appearance-popover input{margin-left:auto;width:16px;height:16px;flex:none}
.appearance-animation{display:flex;align-items:center;gap:10px;padding-top:15px;border-top:1px solid var(--line);margin-top:9px;font-size:11px;cursor:pointer}
.appearance-animation small{display:block;font-size:9px;color:var(--muted);line-height:1.8;margin-top:5px}
.appearance-reset{padding:13px 0 0;margin-top:13px;border:0;border-top:1px solid var(--line);background:none;color:var(--navy);font-size:10px;font-weight:700;width:100%;text-align:left;text-decoration:underline;text-underline-offset:4px}
@media(min-width:1760px){.appearance-control-label{display:inline}}
@media(max-width:680px){.appearance-control{position:fixed;left:16px;bottom:18px;z-index:30;background:var(--skin-card);border:1px solid var(--line);border-radius:50%;box-shadow:var(--skin-shadow)}.appearance-control>summary{min-width:38px;min-height:38px;border-radius:50%}.appearance-control>summary svg{width:18px;height:18px}.appearance-popover{position:fixed;top:auto;bottom:70px;left:16px;right:auto}}
/* Campaigns are optional, scheduled, and draw their content from the chosen offer. */
.campaign{margin:0 auto 25px;color:var(--ink);position:relative;z-index:2}
.campaign-inner{display:grid;grid-template-columns:155px minmax(0,1fr) minmax(220px,.75fr);gap:27px;align-items:center;background:var(--skin-card);border:1px solid var(--line);border-radius:20px;padding:18px 40px 18px 18px;position:relative;box-shadow:var(--skin-shadow);overflow:hidden}
.campaign-inner:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent)}
.campaign-image{position:relative;height:145px;border-radius:13px;overflow:hidden;background:var(--skin-soft)}
.campaign-image img{width:100%;height:100%;object-fit:cover;display:block}
.campaign-image>span{position:absolute;left:9px;bottom:9px;right:9px;width:max-content;max-width:calc(100% - 18px);padding:5px 8px;font-size:9px;background:var(--skin-card);color:var(--navy);border-radius:7px;overflow-wrap:anywhere}
.campaign-eyebrow{display:flex;gap:8px;align-items:center;color:var(--teal);font-size:9px;font-weight:800;letter-spacing:1.8px}
.campaign-eyebrow i{width:6px;height:6px;background:var(--teal);border-radius:50%;flex:none}
.campaign h2{font-size:29px;letter-spacing:-.8px;line-height:1.2;margin:8px 0;color:var(--navy);overflow-wrap:anywhere}
.campaign-copy p{font-size:11px;line-height:1.8;color:var(--muted);margin:0;max-width:62ch;overflow-wrap:anywhere;white-space:pre-line}
.campaign-action{display:grid;gap:9px;justify-items:start;min-width:0}.campaign-price{display:grid;gap:2px}
.campaign-price strong{font-size:21px;color:var(--navy);line-height:1.5}.campaign-price small{font-size:9px;color:var(--muted);line-height:1.6}
.campaign-button{background:var(--accent);color:var(--skin-on-accent);font-size:11px;padding:11px 17px;gap:18px;min-height:40px;border:0;overflow-wrap:anywhere;max-width:100%}
.campaign-button span{font-size:17px}.campaign-conditions{font-size:9px;color:var(--muted);line-height:1.8;max-width:38ch}
.campaign-close{position:absolute;right:10px;top:10px;border:0;width:26px;height:26px;background:var(--skin-soft);color:var(--muted);border-radius:50%;font-size:19px;display:grid;place-items:center;line-height:1}
.campaign-inner:not(:has(.campaign-image)){grid-template-columns:minmax(0,1fr) minmax(240px,.5fr);padding-left:28px}
.campaign-ribbon .campaign-inner{grid-template-columns:minmax(0,1fr) auto;border-radius:14px;padding:16px 42px 16px 23px;gap:20px}
.campaign-ribbon h2{font-size:20px;margin:5px 0}.campaign-ribbon .campaign-copy p{font-size:10px}
.campaign-ribbon .campaign-action{grid-template-columns:auto auto;align-items:center;gap:7px 20px}.campaign-ribbon .campaign-conditions{grid-column:1/-1;max-width:100%;font-size:8px}.campaign-ribbon .campaign-price strong{font-size:16px}
.campaign[data-attention=soft] .campaign-inner{border-color:color-mix(in srgb,var(--skin-art-2) 65%,var(--line))}
.campaign[data-attention=pulse] .campaign-eyebrow i{animation:campaign-pulse 4s ease-in-out infinite}
@keyframes campaign-pulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--teal) 15%,transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--teal) 12%,transparent)}}
html[data-motion=off] .campaign[data-attention=pulse] .campaign-eyebrow i{animation:none}
@media(max-width:960px){.campaign-inner{grid-template-columns:115px minmax(0,1fr) minmax(170px,.75fr);gap:18px}.campaign h2{font-size:23px}.campaign-image{height:150px}.campaign-price strong{font-size:18px}}
@media(max-width:680px){.campaign{margin-bottom:18px}.campaign .campaign-inner{grid-template-columns:75px minmax(0,1fr);gap:15px;padding:17px;border-radius:17px}.campaign-image{height:100%;min-height:110px;grid-row:1/3}.campaign-image>span{display:none}.campaign h2{font-size:22px;padding-right:13px}.campaign-copy p{font-size:10px}.campaign-action{grid-column:2;gap:8px}.campaign-eyebrow{font-size:7px;letter-spacing:1.3px;padding-right:17px}.campaign-price strong{font-size:17px}.campaign-price small{font-size:8px}.campaign-button{padding:10px 12px;font-size:10px;width:100%;justify-content:space-between}.campaign-conditions{font-size:8px;max-width:none}.campaign-inner:not(:has(.campaign-image)){grid-template-columns:1fr}.campaign-inner:not(:has(.campaign-image)) .campaign-action{grid-column:auto}.campaign-ribbon .campaign-action{grid-template-columns:1fr}.campaign-ribbon .campaign-conditions{grid-column:auto}.campaign-close{right:8px;top:8px;width:23px;height:23px}}
@media(prefers-reduced-motion:reduce){.skin-flyer,.skin-sleigh,.skin-star,.skin-firework,.campaign[data-attention=pulse] .campaign-eyebrow i{animation:none!important}html{scroll-behavior:auto}}
