/* Persistent display controls; keep both controls reachable outside the mobile menu. */
.m2-preferences{display:flex;align-items:center;gap:4px;flex-shrink:0}
.m2-preferences :is(button,a){display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #ffffff40;background:#ffffff0a;color:#fff;font:700 12px 'DM Sans',Arial,sans-serif;cursor:pointer;border-radius:3px}
.m2-preferences :is(button,a):hover{background:#ffffff20;border-color:#ffffff80}
.m2-theme-sun{display:none}
html[data-theme=dark] .m2-theme-sun{display:block}
html[data-theme=dark] .m2-theme-moon{display:none}
html:not([data-theme=dark]){color-scheme:light}
html[data-theme=dark]{color-scheme:dark}
html[data-theme=dark] .main2-page{--m2-ink:#edf2ee;--m2-muted:#b2beb6;--m2-paper:#111817;--m2-dark:#0b1010;--m2-white:#1b2522;--m2-line:rgba(230,243,233,.15);background:#111817;color:#edf2ee}
html[data-theme=dark] .m2-booking{background:#1b2522;color:#edf2ee;box-shadow:0 30px 70px #0007}
html[data-theme=dark] :is(.m2-booking__head p,.m2-control__icon,.m2-eyebrow--dark,.m2-location>span){color:#ff8780}
html[data-theme=dark] :is(.m2-field label,.m2-live,.m2-check,.m2-promo,.m2-timezone,.m2-booking__note){color:#b9c6bc}
html[data-theme=dark] .m2-control :is(input,select){background-color:#121b18;color:#edf2ee;border-color:#46554b;color-scheme:dark}
html[data-theme=dark] .m2-control :is(input,select):focus{background-color:#202f27;border-color:#ff8780}
html[data-theme=dark] .m2-check span{background:#121b18;border-color:#87988b}
html[data-theme=dark] .m2-check input:checked+span{background:var(--m2-red);border-color:var(--m2-red);box-shadow:inset 0 0 0 3px #1b2522}
html[data-theme=dark] :is(.m2-car__body p,.m2-car ul,.m2-car__top,.m2-location p,.m2-review__score p){color:#b4c2b8}
html[data-theme=dark] .m2-car__body{border-color:#ffffff26}
html[data-theme=dark] .m2-pill--light{background:#334638;color:#e5ede7}
html[data-theme=dark] .m2-location:hover{background:#1b2522}
html[data-theme=dark] .m2-location b{border-color:#526558}
html[data-theme=dark] .m2-review{background:#1b2522}
html[data-theme=dark] .m2-button--white{background:#f5f4f0;color:#16201a!important}
html[data-theme=dark] .m2-button--white:hover{background:#dce6dc}
html[data-theme=dark] .m2-form-status{color:#ffb4a9}
/* Booking panels, native controls, selected extras and error states. */
html[data-theme=dark] :is(.bk-trip-summary,.bk-edit-trip,.bk-filters,.bk-panel,.bk-empty,.bk-loading,.bk-modal-panel){background:#1b2522;border-color:#39483e;color:#edf2ee}
html[data-theme=dark] .booking-page .prestige-vehicle-card{background:#1b2522;border-color:#39483e}
html[data-theme=dark] :is(.bk-label,.bk-heading>p:last-child,.bk-muted,.bk-car-info p,.bk-rate-unit,.bk-price-note,.bk-filter-head,.bk-help,.bk-help>span,.bk-action-total,.bk-results-toolbar label,.prestige-vehicle-rate small,.bk-trip-summary .date,.bk-trip-summary .time){color:#b9c7be}
html[data-theme=dark] .bk-eyebrow{color:#ff9088}
html[data-theme=dark] .bk-filter-head button{color:#ffaba4}
html[data-theme=dark] .bk-results-toolbar select{background:#121b18;color:#edf2ee;border-color:#526558}
html[data-theme=dark] .bk-specs li{background:#304336;color:#e6eee8}
html[data-theme=dark] .bk-car-image{background:#f6f6f1;border-radius:3px;padding:8px}
html[data-theme=dark] .bk-selected-car .car-preview{background:#f6f6f1;border-radius:3px}
html[data-theme=dark] .booking-page .extra-option-group{border-color:#506053;background:#19241e}
html[data-theme=dark] .extra-option-group:has(input:checked){background:#293f2e;border-color:#789480}
html[data-theme=dark] .extra-option-group input:disabled+label:after{color:#c1dfc6}
html[data-theme=dark] .booking-page .bk-cdw-warning{background:#392e1c;border-color:#e4ac57;color:#ffdda6}
html[data-theme=dark] .booking-page .prestige-price-table li{border-color:#39483e}
html[data-theme=dark] :is(.booking-page .form-group>label,.bk-modal-panel>label,.bk-modal-panel>p){color:#c0cec4}
html[data-theme=dark] :is(.booking-page .form-group input,.booking-page .form-group select,.booking-page .form-group textarea,.bk-modal-panel>input){background:#121b18;border-color:#526558;color:#edf2ee;color-scheme:dark}
html[data-theme=dark] .booking-page .form-group>label>span{color:#ffaba4}
html[data-theme=dark] :is(.bk-secondary,.bk-steps b){border-color:#789480}
html[data-theme=dark] .bk-steps :is(li>a,li>span){color:#bccbc1}
html[data-theme=dark] .bk-steps li[aria-current] span{color:#fff}
html[data-theme=dark] .booking-page .prestige-booking-error{background:#3c2623;border-color:#b87365;color:#ffd0c5}
html[data-theme=dark] .booking-page .prestige-reservation-success{background:#253e2a;border-color:#73927a;color:#eef5ef}
html[data-theme=dark] .bk-price-panel{border-top-color:var(--m2-red)}
html[data-theme=dark] .main2-page :focus-visible{outline-color:#ffaba4}
html[lang=es] .extra-option-group input:disabled+label:after{content:'Obligatorio · incluido en el total'}
/* Spanish labels need a little more room than their English counterparts. */
.m2-header__inner{gap:20px}
.m2-header__actions{gap:12px}
.m2-nav{gap:22px}
html[lang=es] .m2-booking__head{flex-wrap:wrap;gap:8px}
html[lang=es] .m2-hero h1{font-size:clamp(42px,4.4vw,64px)}
html[lang=es] .m2-car__top{gap:10px;flex-wrap:wrap}
html[lang=es] .m2-car ul{gap:12px;flex-wrap:wrap}
html[lang=es] .m2-car li+li:before{margin-right:12px}
html[lang=es] .bk-results-toolbar{flex-wrap:wrap}
@media(max-width:1200px){.m2-phone{display:none}.m2-nav{gap:16px}.m2-nav a{font-size:13px}}
@media(max-width:1000px){
 .m2-header__inner,.booking-page .m2-header__inner{height:74px}
 .m2-brand{width:160px;height:60px}.m2-brand img{width:160px;transform:translateY(-16px)}
 .m2-header__actions>.m2-button{display:none}.m2-menu{display:block}
 .m2-nav{position:fixed;inset:74px 0 auto;background:#101313;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:15px 18px 26px;border-top:1px solid #ffffff20;transform:translateY(-130%);opacity:0;visibility:hidden;transition:.25s}
 .m2-nav{max-height:calc(100dvh - 74px);overflow-y:auto;overscroll-behavior:contain}
 .m2-nav.is-open{transform:none;opacity:1;visibility:visible}
 .m2-nav a{padding:14px 8px;font-size:16px;border-bottom:1px solid #ffffff16}
 .m2-menu-open{overflow:hidden}
 .m2-menu[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
 .m2-menu[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
}
@media(max-width:560px){
 .m2-header__inner{gap:8px}.m2-header__actions{gap:4px}
 html[lang=es] .m2-hero h1{font-size:clamp(42px,11vw,62px)}
 html[lang=es] .bk-steps ol{gap:6px}
 html[lang=es] .bk-steps li{min-width:0;flex:1}
 html[lang=es] .bk-steps li>a,html[lang=es] .bk-steps li>span{font-size:10px}
 html[lang=es] .prestige-vehicle-rate small{font-size:11px}
}
@media(max-width:380px){
 .m2-brand{width:122px;height:56px}.m2-brand img{width:150px;transform:translate(-8px,-16px)}
 .m2-preferences{gap:3px}
 .m2-booking__grid{grid-template-columns:minmax(0,1fr)}
 .bk-edit-inner .m2-booking__grid{grid-template-columns:minmax(0,1fr)}
 html[lang=es] .booking-page .prestige-vehicle-rate{grid-template-columns:1fr 135px}
}
@media(prefers-reduced-motion:reduce){.m2-nav{transition:none}}
@media print{
 html[data-theme=dark] .booking-page{background:#fff;color:#151819;--m2-ink:#151819;--m2-line:#ddd;color-scheme:light}
 html[data-theme=dark] :is(.bk-panel,.bk-trip-summary,.bk-selected-car,.prestige-reservation-success){background:#fff!important;color:#151819!important;border-color:#ccc!important}
 html[data-theme=dark] :is(.bk-label,.bk-muted,.bk-eyebrow,.bk-trip-summary .date,.bk-trip-summary .time){color:#444}
}

html[data-theme=dark] :is(.m2-car__category,.m2-car__link b,.m2-car__link:hover,.m2-how__steps span,.m2-faq summary:after){color:#ffaaa3}

html[data-theme=dark] .m2-category-selection button{color:#ffaaa3}

.seo-consent{position:fixed;bottom:1rem;left:1rem;right:1rem;max-width:34rem;z-index:1000;background:#fff;color:#14251e;border:1px solid #9bb3a7;border-radius:.8rem;padding:1rem;box-shadow:0 8px 32px #0003}.seo-consent p{margin:0 0 .75rem;line-height:1.5}.seo-consent button,.seo-statistics{font:inherit;cursor:pointer;padding:.7rem 1rem;min-height:44px;border:1px solid currentColor;border-radius:.4rem;margin-right:.5rem}.seo-statistics{display:block;margin:1rem auto;background:transparent;color:inherit}.seo-consent button{background:#174f3c;color:white}
.seo-consent a{display:block;width:fit-content;color:inherit;text-decoration:underline;padding:.5rem 0;margin-bottom:.5rem;min-height:44px;box-sizing:border-box}.seo-consent{max-height:calc(100dvh - 2rem);overflow:auto}.seo-consent :focus-visible{outline:3px solid #b86600;outline-offset:3px}
