.protection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.protection-column{min-width:0}.protection-card{border:1px solid #d8e3ea;border-radius:18px;background:#fff;overflow:hidden}.protection-disclosure summary{padding:24px;cursor:pointer;list-style-position:inside}.protection-disclosure summary:focus-visible{outline:3px solid #087e8b;outline-offset:-3px}.protection-disclosure h2{font-size:1.25rem;margin:0 0 12px;display:inline}.protection-disclosure summary p{margin-top:12px}.protection-disclosure-hint{display:block;color:#12668b;font-size:.9rem}.protection-disclosure-body{padding:0 24px 24px}.protection-disclosure[open] .protection-disclosure-hint{display:none}.branch-banner{margin:24px auto 48px}.branch-banner img{width:100%;height:300px;object-fit:cover;border-radius:20px}.public-footer .footer-grid>div:first-child>a{display:block;margin-bottom:10px}.fleet-branch-filter{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 24px}.fleet-branch-filter select{padding:10px;border:1px solid #b9cbd6;border-radius:8px}.branch-row.is-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.branch-row.is-split #return-location{min-width:0}.branch-row [hidden]{display:none!important}@media(max-width:1000px){.protection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.protection-grid{grid-template-columns:1fr}.branch-row.is-split{grid-template-columns:1fr!important}.branch-banner img{height:200px}}

.public-content .hero-section{padding:36px 0;min-height:0}
.public-content .hero-section .section-kicker,.public-content .hero-section h1,.public-content .hero-section .lead{text-align:left;margin-left:0;margin-right:0;max-width:100%}
.public-content .hero-section .section-kicker{margin-bottom:12px}
.public-content .hero-section .lead{margin-top:16px;margin-bottom:20px}
.protection-model-picker{padding:20px;border:1px solid #d8e3ea;background:#fff;border-radius:18px;margin-bottom:24px;display:flex;align-items:end;gap:14px;flex-wrap:wrap}
.protection-model-picker label{display:grid;gap:8px;font-weight:600;flex:1;min-width:220px}
.protection-model-picker select{font:inherit;min-height:48px;border:1px solid #c7c7cc;border-radius:12px;background:#f2f2f7;padding:10px;width:100%}
.protection-model-intro{margin:0 0 16px;text-align:left}
.customer-profile{border:0;padding:0;margin:20px 0}.customer-profile legend{font-weight:700;margin-bottom:12px}
.customer-profile label.customer-check{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.5;margin-top:14px}
.customer-check input{min-width:20px;min-height:20px;width:20px;height:20px;margin-top:3px;accent-color:#007aff}
.customer-condition{padding:14px;background:#fff6df;border:1px solid #eed39d;border-radius:14px;margin-top:12px;line-height:1.5}
@media(max-width:600px){.public-content .hero-section{padding:28px 0}.protection-model-picker{display:block}.protection-model-picker .btn{margin-top:12px;width:100%}}

.public-content .fleet-branch-filter{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px;background:#fff;border:1px solid #d9dce3;border-radius:18px}
.public-content .fleet-branch-filter label{margin:0;font-weight:600;color:#1c1c1e}
.public-content .fleet-branch-filter select{width:100%;min-width:0;min-height:52px;padding:12px 42px 12px 16px;font:inherit;color:#1c1c1e;background-color:#f2f2f7;border:1px solid #b8bec9;border-radius:14px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23555d6b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.public-content .fleet-branch-filter select:focus-visible{outline:3px solid #007aff;outline-offset:3px}
.public-content .fleet-branch-filter .btn{min-height:52px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;margin:0}
.protection-grid{grid-template-columns:minmax(0,1fr);gap:12px}
.protection-disclosure summary{display:grid;grid-template-columns:minmax(0,1fr) 24px;column-gap:16px;align-items:center;list-style:none;padding:22px 24px}
.protection-disclosure summary::-webkit-details-marker{display:none}
.protection-disclosure summary::marker{content:''}
.protection-disclosure summary::after{content:'';grid-column:2;grid-row:1 / span 2;width:10px;height:10px;border-right:2px solid #007aff;border-bottom:2px solid #007aff;transform:rotate(45deg);justify-self:center;transition:transform .18s ease}
.protection-disclosure[open] summary::after{transform:rotate(225deg)}
.protection-disclosure summary h2{display:block;grid-column:1;margin:0;font-size:1.1rem;line-height:1.4;color:#1c1c1e}
.protection-disclosure-hint{grid-column:1;margin-top:4px}
.protection-disclosure[open] summary{background:#f2f7ff;border-bottom:1px solid #d9e4f5}
.protection-disclosure-body{padding:22px 24px 24px;line-height:1.7}

@media(max-width:600px){.public-content .fleet-branch-filter{grid-template-columns:minmax(0,1fr);gap:10px;padding:16px}.public-content .fleet-branch-filter select,.public-content .fleet-branch-filter .btn{width:100%}.protection-disclosure summary{padding:18px}.protection-disclosure-body{padding:18px}}
@media(prefers-reduced-motion:reduce){.protection-disclosure summary::after{transition:none}}

html body main.public-content :is(.hero-section,.about-hero,.promo-hero,.page-intro){background:linear-gradient(105deg,rgba(5,31,52,.98) 0%,rgba(7,48,78,.94) 48%,rgba(6,49,78,.56) 100%),url('/fachada-enfoque-sin-piso-20261030.jpg') center center/cover no-repeat;background-color:#07304e;color:#fff;border:0;border-bottom:1px solid #184f72;border-radius:0 0 28px 28px;min-height:0;padding:44px 0;text-shadow:none;text-align:left}
html body main.public-content :is(.hero-section,.about-hero,.promo-hero,.page-intro) :is(h1,p,.lead,.text-muted,.section-kicker,.about-eyebrow){color:#fff;text-align:left;text-shadow:none}
html body main.public-content :is(.hero-section,.about-hero,.promo-hero,.page-intro) h1{max-width:1000px;margin:0;font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.15;letter-spacing:-.035em}
html body main.public-content :is(.hero-section,.about-hero,.promo-hero,.page-intro) p{max-width:76ch;margin:16px 0 0;color:#dfedf8;line-height:1.65}
html body main.public-content :is(.hero-section,.about-hero,.promo-hero,.page-intro) :is(.section-kicker,.about-eyebrow){margin:0 0 12px;color:#a8d9ff;font-weight:700;letter-spacing:.1em;font-size:.8rem}
html body main.public-content :is(.hero-section,.about-hero,.promo-hero) .container{text-align:left}
html body main.public-content :is(.hero-section,.about-hero,.promo-hero) :is(.hero-actions,.btn){margin-top:20px}
html body main.public-content .page-intro{padding:28px;border-radius:22px;margin-bottom:24px}
@media(max-width:600px){html body main.public-content :is(.hero-section,.about-hero,.promo-hero){padding:32px 0;border-radius:0 0 20px 20px;background-position:62% 65%}html body main.public-content .page-intro{padding:22px;border-radius:18px}html body main.public-content :is(.hero-section,.about-hero,.promo-hero,.page-intro) h1{font-size:1.9rem;overflow-wrap:break-word}}

html body #v4-checkout-form .customer-profile label.customer-check:not([hidden]){display:flex;flex-direction:row;align-items:flex-start;gap:10px;text-align:left;line-height:1.5}
html body #v4-checkout-form .customer-profile label.customer-check input[type="checkbox"]{flex:0 0 20px;width:20px;height:20px;margin:2px 0 0}

html body .field-grid > :nth-child(odd of :not([hidden],.full,.full-width,.branch-row,legend,p,aside,[type="hidden"])):nth-last-child(1 of :not([hidden],.full,.full-width,.branch-row,legend,p,aside,[type="hidden"])){grid-column:1/-1;min-width:0}

.checkout-loading{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:24px;background:#17253766;backdrop-filter:blur(6px)}.checkout-loading-card{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px;width:min(100%,420px);background:#fff;border-radius:24px;box-shadow:0 20px 80px #0002;text-align:center;color:#1c1c1e}.checkout-loading-card strong{font-size:21px;line-height:1.3}.checkout-loading-card p{margin:0;color:#64748b;line-height:1.5}.checkout-spinner{width:36px;height:36px;border:4px solid #e5edfa;border-top-color:#007aff;border-radius:50%;animation:v4-payment-spin .8s linear infinite}@keyframes v4-payment-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.checkout-spinner{animation:none}}

/* Keep the Free Pass extension condition visible beside its selection and total. */
.free-pass-notice{grid-column:1 / -1;margin:12px 0 16px;padding:16px 18px;border:1px solid #e5c36b;border-left:4px solid #ad7400;border-radius:14px;background:#fff5db;color:#594000;line-height:1.6;overflow-wrap:anywhere}
.free-pass-notice>strong{display:block;margin-bottom:6px;color:#674300;font-size:1rem;font-weight:700}
.free-pass-notice>p{margin:0;color:inherit;font-size:.95rem;font-weight:500;line-height:1.6}

.v4-block-notice{padding:16px;margin:12px 0;background:#fff5f5;border:1px solid #efcaca;border-left:4px solid #c43b3b;border-radius:10px;color:#7f1d1d;text-align:left;overflow-wrap:anywhere;min-width:0}
.v4-block-notice__title{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;line-height:1.3;color:#7f1d1d}
.v4-block-notice__title i{flex-shrink:0;font-size:18px}
.v4-block-notice__message{margin:8px 0 0;font-size:14px;line-height:1.5;color:#863535}
.v4-block-notice__range{display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #efcaca}
.v4-block-notice__range>i{margin-top:3px;font-size:18px;flex-shrink:0}
.v4-block-notice__label{font-size:11px;font-weight:600;letter-spacing:.04em;line-height:1.4;text-transform:uppercase;color:#9a4949}
.v4-block-notice__dates{display:flex;flex-wrap:wrap;gap:2px 6px;margin-top:3px;font-size:14px;font-weight:700;line-height:1.5;color:#7f1d1d}
.v4-block-notice__dates span{white-space:nowrap}

/* Approved public presentation, V4 only. */
.site-header .brand img{width:160px;max-width:100%;height:auto}.public-footer img{width:180px;height:auto}.public-footer .footer-grid{gap:2rem}.home-photo-strip img{object-position:center 65%}.branch-banner img{width:100%;height:clamp(260px,34vw,520px);display:block;object-fit:cover;object-position:center 70%}.fleet-reference{font-size:1.1rem;font-weight:700;color:#005cb9}.fleet-tile .btn{margin-bottom:.5rem}
@media(max-width:600px){.site-header .brand img{width:142px}.public-footer img{width:165px}}

.rental-benefits{margin-top:1rem;line-height:1.65}.rental-benefits summary{font-weight:700;cursor:pointer;color:#005cb9}.rental-benefits ul{padding-left:1.3rem}.rental-benefits li{margin:.5rem 0}.contact-social{display:flex;flex-wrap:wrap;gap:1rem;padding:2rem;justify-content:center}.contact-social a{padding:.75rem 1rem;border-radius:.5rem;background:#005cb9;color:#fff}.public-main .contact-details a[href^="tel:"]{color:#005cb9;font-weight:700}

header.site-header.public-header .brand img{width:160px;height:auto}.public-footer img{width:180px;height:auto}.whatsapp-agent-prompt{position:fixed;right:92px;bottom:26px;z-index:999;display:flex;align-items:center;gap:.5rem;padding:.65rem .9rem;border-radius:2rem;background:#128c4a;color:#fff!important;font-weight:700;box-shadow:0 4px 16px #0003;text-decoration:none}.whatsapp-agent-prompt i{font-size:1.8rem}@media(max-width:600px){header.site-header.public-header .brand img{width:142px}.whatsapp-agent-prompt{right:80px;bottom:22px;font-size:.8rem;max-width:165px;padding:.5rem .65rem}.whatsapp-agent-prompt i{font-size:1.6rem}}

.whatsapp-agent-prompt{bottom:102px;right:22px}@media(max-width:600px){.whatsapp-agent-prompt{bottom:102px;right:18px}}

/* Client Word: larger branch banner and complete reservation presentation. */
.home-story .banner{height:clamp(400px,40vw,560px);min-height:400px}.home-story .banner-slide{height:100%;min-height:100%;background-size:auto,cover;background-position:0 0,center 58%;justify-content:center}.home-story .banner-slide:first-child{background-image:linear-gradient(90deg,rgba(7,63,102,.78),rgba(7,63,102,.08)),url('/fachada-enfoque-sin-piso-20261030.jpg')}.home-story .banner-slide:nth-child(2){background-image:linear-gradient(90deg,rgba(7,63,102,.78),rgba(7,63,102,.08)),url('/equipo-arrendamientos-20261030.png')}.extra-hours-note{padding:16px;margin-top:16px;background:#eef5ff;border:1px solid #c9defb;border-radius:10px;line-height:1.55}.extra-hours-note p{margin:.5rem 0}.extra-hours-note summary{cursor:pointer;font-weight:700}.public-content .callcenter-wrap.v4-callcenter{position:relative;overflow:hidden;background:#005cb9;color:#fff;border:0;border-radius:18px;padding:32px 24px;text-align:center}.v4-callcenter:before{content:"";position:absolute;right:16px;bottom:12px;width:220px;height:90px;background:url('/logo-24-webv4.png') center/contain no-repeat;opacity:.12;filter:grayscale(1)brightness(0)invert(1);pointer-events:none}.v4-callcenter>*{position:relative}.public-content .callcenter-wrap.v4-callcenter .callcenter-title{color:#fff;text-transform:none;font-size:1.8rem;font-weight:700}.public-content .callcenter-wrap.v4-callcenter .contact-number,.public-content .callcenter-wrap.v4-callcenter .contact-sub,.public-content .callcenter-wrap.v4-callcenter .hours-title,.public-content .callcenter-wrap.v4-callcenter .hours-text,.public-content .callcenter-wrap.v4-callcenter i{color:#fff}.v4-callcenter .contact-row{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}.public-content .branch-banner img{width:100%;height:clamp(280px,35vw,460px);object-fit:cover;object-position:center 60%}
@media(max-width:600px){.home-story .banner{height:340px;min-height:340px}.home-story .banner-slide{padding:24px}.public-content .callcenter-wrap.v4-callcenter{padding:26px 18px}}

/* Desktop spacing requested by the client; mobile dimensions remain unchanged. */
@media (min-width: 1024px) {
 #home-view .home-grid { align-items: start; }
 #home-view .booking-panel { padding: 40px 34px; }
 #home-view .booking-panel .eyebrow { margin-bottom: 16px; }
 #home-view .booking-panel h1 { font-size: clamp(2rem, 2.8vw, 2.75rem); line-height: 1.16; margin-bottom: 18px; }
 #home-view .booking-panel .panel-lead { line-height: 1.6; }
 #home-view #search-form { margin-top: 34px; }
 #home-view #search-form .field-grid { gap: 24px 20px; }
 #home-view #search-form .branch-row { column-gap: 20px; }
 #home-view #search-form .field > span { margin-bottom: 10px; }
 #home-view #search-form .driver-age-field { margin-top: 24px; }
 #home-view #search-form #date-note { margin: 18px 0 20px; }
}

/* Fluid branding sized for the available screen, preserving the source proportions. */
header.site-header.public-header .header-inner{height:auto;min-height:clamp(104px,10vw,160px);padding-block:12px}
header.site-header.public-header .brand{flex:0 0 auto;width:clamp(210px,24vw,360px);max-width:calc(100vw - 128px);line-height:0}
header.site-header.public-header .brand img{display:block;width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain;aspect-ratio:79/30}
.public-footer img{display:block;width:clamp(220px,22vw,340px);max-width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:79/30}

/* Readable vehicle features and native links to each model detail. */
html body main.public-content .fleet-features .badge{color:#123b55}
.public-content .fleet-model-image{display:block}

/* Keep the desktop logo and navigation together as screen width changes. */
@media(min-width:1024px){header.site-header.public-header .header-inner{flex-wrap:nowrap;}header.site-header.public-header .desktop-nav{display:flex;flex:1 1 auto;min-width:0;flex-wrap:nowrap;justify-content:flex-end;gap:clamp(4px,.6vw,16px);font-size:clamp(18px,1.5vw,27px);}header.site-header.public-header .desktop-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px clamp(4px,.5vw,12px);line-height:1.15;white-space:nowrap;box-sizing:border-box;}}


.home-story .banner-slide:first-child{background-position:0 0,center center}.public-content .branch-banner img{object-position:center center}

/* Match the Panapass selector to the accessory cards without changing the control. */
html body #pending-options>.field{display:grid!important;grid-template-columns:32px minmax(0,1fr);column-gap:13px;row-gap:8px;border:1px solid #e5e5ea;border-radius:16px;padding:14px;background:#fff;font-size:15px;font-weight:700;line-height:1.35;min-width:0;}
html body #pending-options>.field::before{content:'🛣️';grid-column:1;grid-row:1 / 3;font-size:32px;font-weight:400;line-height:1;align-self:center;}
html body #pending-options>.field>select{grid-column:2;grid-row:2;font-weight:400;width:100%;min-width:0;}

html body .deposit-conditions.alert-danger{display:block;color:#9f1239!important;background:#fff1f2!important;border:2px solid #dc2626!important;border-left-width:6px!important;border-radius:12px;padding:16px!important;font-size:16px!important;line-height:1.55!important;font-weight:700!important;margin:16px 0!important;}html body .deposit-holder-warning{display:block;margin-top:12px;padding-top:12px;border-top:1px solid #fda4af;font-size:18px;}

#pending-options .panapass-options{grid-column:1/-1;min-width:0;margin:0;padding:0;border:0}#pending-options .panapass-options legend{float:none;width:auto;margin:0 0 10px;padding:0;font-size:15px;font-weight:700;line-height:1.35}#pending-options .panapass-icon{font-size:2rem;line-height:1;flex:none}#pending-options .panapass-terms{grid-column:1/-1;min-width:0}

html body .free-pass-notice .free-pass-colon-warning,html body .free-pass-notice .free-pass-colon-warning strong{color:#b91c1c!important;font-size:17px;font-weight:800}.free-pass-colon-warning{padding:12px;border:2px solid #dc2626;border-radius:8px;background:#fff1f2}.package-guide{padding:14px;margin:20px 0;border:1px solid #9ac8f7;border-radius:12px;background:#eff6ff;color:#153f69}.package-guide strong{display:block;font-size:17px}.package-guide p{margin:8px 0;font-weight:700}.package-guide small{display:block;line-height:1.5}


.deposit-complete{display:block;margin-top:10px;color:#9f1239;text-decoration:underline;font-weight:700}
.summary-car{display:flex;align-items:center;justify-content:space-between;gap:12px}.summary-car-edit{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;border:1px solid #bfd8ff;border-radius:10px;background:#edf5ff;color:#0069c9;cursor:pointer}.summary-car-edit:focus-visible{outline:3px solid #80bdff;outline-offset:2px}
.counter-deposit-row{margin-top:16px;color:#a61126;font-weight:700}.counter-grand-total{margin-top:12px;color:#173e53}
.home-story .banner-slide:nth-child(2){background-position:0 0,center top}
@media(max-width:600px){.home-story .banner-slide:nth-child(2){background-size:auto,contain;background-repeat:no-repeat;background-position:0 0,center 16px;background-color:#0862c3;justify-content:flex-end;padding-bottom:50px}}

.public-content h3.branch-title{font-size:clamp(1.8rem,2.6vw,2.6rem);line-height:1.2;font-weight:800;margin-bottom:20px}
.public-content .contact-social a{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;padding:0;color:#fff!important;font-size:25px;border-radius:12px}.public-content .contact-social a:hover{background:#004d9f}.public-content .contact-social a:focus-visible{outline:3px solid #80bdff;outline-offset:3px}

.journey-title-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}.journey-title-row h1{margin:0}#close-reservation.journey-close{display:inline-grid;place-items:center;width:44px!important;height:44px;min-height:44px;padding:0;flex:0 0 44px;border-radius:12px}.journey-close svg{display:block;width:20px;height:20px;flex:none}

/* Compact counter totals, including pending values, on every screen. */
.counter-grand-total,.counter-deposit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.counter-grand-total>span,.counter-deposit-row>span{min-width:0;font-size:.95rem;line-height:1.35}
.counter-grand-total>strong,.counter-deposit-row>strong{white-space:nowrap;text-align:right}
.counter-grand-total.is-pending>strong,.counter-deposit-row.is-pending>strong{font-size:1rem;font-weight:400}

/* Compact cards and full width when a single rate is available. */
.car-list{align-items:start}.car-rates{margin-top:0}.car-rates>.car-rate:only-child{grid-column:1/-1}

/* Keep the counter notice normal weight; retain holder warnings. */
[data-deposit-summary] > strong:first-child:not(.deposit-holder-warning){font-weight:400;}
