/* ISI-LOAN RentCar · CTA & motion upgrades · 2026-10-11
   Progressive enhancement: original site CSS remains the foundation. */
:root { --cta-green:#0eaf68; --cta-green-dark:#087647; }
html { scroll-padding-top: 115px; }
#reserva, #rental-request, #cotizar-vehiculo { scroll-margin-top: 120px; }
.btn { isolation:isolate; position:relative; overflow:hidden; transition:background .25s ease,color .25s ease,box-shadow .25s ease,transform .22s ease; }
.btn-primary, .nav-cta.btn-primary { color:#081e34; background:linear-gradient(125deg,#ffe27b 0%,#ffd13e 58%,#ffbc27 100%); box-shadow:0 12px 26px rgba(236,170,19,.22); }
.btn-primary:hover, .nav-cta.btn-primary:hover {background:linear-gradient(125deg,#ffec98,#ffd54b);box-shadow:0 17px 34px rgba(236,170,19,.3); transform:translateY(-3px);}
.btn-whatsapp, .banner-wa { background:linear-gradient(125deg,#16bb76,#068953); color:#fff; box-shadow:0 12px 28px rgba(5,124,74,.2); }
.btn-whatsapp:hover, .banner-wa:hover { background:linear-gradient(125deg,#13a86b,#087148);box-shadow:0 18px 34px rgba(5,124,74,.28);transform:translateY(-3px); }
.btn:active, .vehicle-ctas a:active {transform:translateY(0) scale(.98);}
.nav-cta {white-space:nowrap; font-weight:850;}
.nav-cta .arrow {margin-left:2px;}
.cta-shine::after {content:"";position:absolute;inset:-45% auto -45% -85%;width:45%;transform:skewX(-25deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.46),transparent);pointer-events:none;animation:cta-shimmer 6.5s ease-in-out infinite;}
.hero-copy {animation:slide-fade-up .8s cubic-bezier(.2,.7,.2,1) both;}
.hero-visual {animation:slide-fade-in .85s cubic-bezier(.2,.7,.2,1) .2s both;}
.hero-video-shell {border:1px solid rgba(147,212,255,.27);box-shadow:0 46px 76px rgba(0,0,0,.29),0 0 36px rgba(32,165,240,.09);transition:transform .5s ease,box-shadow .5s ease;}
.hero-video-shell:hover {transform:translateY(-4px);box-shadow:0 50px 85px rgba(0,0,0,.31),0 0 48px rgba(32,165,240,.17);}
.hero-visual::after {content:"";position:absolute;z-index:0;inset:13% -2% -5% 18%;pointer-events:none;background:radial-gradient(ellipse,rgba(22,154,255,.14),transparent 65%);animation:ambient-glow 9s ease-in-out infinite alternate;}
.hero-actions {margin:4px 0 0;gap:12px;align-items:stretch;}
.hero-actions .btn {min-height:57px;padding-inline:22px;font-size:14px;}
.hero-actions .hero-wa {background:linear-gradient(125deg,#14be77,#079359);}
.hero-explore-link {display:inline-flex;align-items:center;margin-top:15px;font-size:13px;font-weight:800;color:#e3f2ff;border-bottom:1px solid rgba(255,255,255,.3);transition:color .2s,border-color .2s,transform .2s;}
.hero-explore-link:hover {color:#ffe381;border-color:#ffe381;transform:translateX(3px);}
.hero-checks {margin-top:25px;}
.hero-checks span::before {display:none;}
.page-hero-actions {position:relative;z-index:1;display:flex;gap:12px;flex-wrap:wrap;margin-top:25px;}
.page-hero-actions .btn {min-height:49px;padding:12px 18px;}
.vehicle-card {box-shadow:0 10px 34px rgba(3,34,62,.07);}
.vehicle-card:hover {box-shadow:0 22px 50px rgba(3,34,62,.13);}
.vehicle-card .vehicle-image {background:linear-gradient(140deg,#f7f9fc,#ebf2f8);}
.vehicle-card .vehicle-image::after {content:"";position:absolute;left:-35%;top:0;width:23%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform:skewX(-22deg);pointer-events:none;transition:left .75s ease;}
.vehicle-card:hover .vehicle-image::after {left:132%;}
.vehicle-card .vehicle-image .pill {font-size:11px;}
.vehicle-ctas {display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;}
.vehicle-ctas a {display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 7px;border-radius:10px;font-size:12px;font-weight:850;line-height:1.25;text-align:center;transition:transform .2s,background .2s,box-shadow .2s;white-space:nowrap;}
.vehicle-ctas .vehicle-reserve {background:#ffda55;color:#08213a;box-shadow:0 5px 13px rgba(241,179,32,.19);}
.vehicle-ctas .vehicle-reserve:hover {background:#ffc530;transform:translateY(-2px);box-shadow:0 7px 17px rgba(241,179,32,.26);}
.vehicle-ctas .vehicle-whatsapp {background:#0da768;color:#fff;box-shadow:0 5px 13px rgba(5,124,74,.14);}
.vehicle-ctas .vehicle-whatsapp:hover {background:#098351;transform:translateY(-2px);box-shadow:0 8px 17px rgba(5,124,74,.23);}
.vehicle-footer small {font-weight:750;}
.showcase-grid .vehicle-content {padding:17px;}
.showcase-grid .vehicle-content p {min-height:3.4em;}
.showcase-grid .vehicle-footer {gap:7px;}
.showcase-grid .vehicle-ctas a {font-size:11px;min-height:40px;padding:9px 5px;}
.detail-card {border:1px solid #c9e1ee;box-shadow:0 24px 60px rgba(3,38,69,.14);background:linear-gradient(155deg,#ffffff 35%,#f8fcff 100%);}
.detail-card .btn-whatsapp {font-size:14px;min-height:54px;}
.detail-card .pill {background:#e8fff3;border-color:#b5e8cd;color:#0a804d;}
.detail-card:target {outline:3px solid rgba(15,185,118,.33);outline-offset:5px;}
.quote-card {border:1px solid #d9e9f4;box-shadow:0 28px 66px rgba(6,34,63,.18);}
.quote-card .quote-btn {font-size:13px;min-height:55px;}
.cta-banner {box-shadow:0 14px 42px rgba(7,38,77,.17);}
.cta-banner .banner-wa {margin-left:0;}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#0c9ed6;box-shadow:0 0 0 3px rgba(12,158,214,.12);}
.service-card:hover .icon-badge{transform:translateY(-4px) rotate(-5deg);background:#d4f0ff;}
.icon-badge{transition:transform .35s ease,background .3s ease;}
.floating-wa {box-shadow:0 15px 38px rgba(4,118,76,.27);border:1px solid rgba(255,255,255,.2);transition:transform .2s ease,box-shadow .2s ease;animation:wa-halo 5.5s ease-in-out infinite;}
.floating-wa:hover {box-shadow:0 20px 46px rgba(4,118,76,.35);}
.mobile-action-bar{display:none;}
@keyframes cta-shimmer{0%,72%,100%{left:-85%;opacity:0}76%{opacity:1}86%{left:145%;opacity:0}}
@keyframes slide-fade-up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes slide-fade-in{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
@keyframes ambient-glow{from{opacity:.45;transform:scale(.96)}to{opacity:1;transform:scale(1.04)}}
@keyframes wa-halo{0%,70%,100%{box-shadow:0 15px 38px rgba(4,118,76,.27)}82%{box-shadow:0 15px 38px rgba(4,118,76,.28),0 0 0 9px rgba(16,185,112,.075)}}
@media(max-width:1140px){.showcase-grid .vehicle-ctas a{font-size:12px;padding:10px 8px}}
@media(max-width:920px){
  body{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px));}
  .mobile-action-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:center;position:fixed;z-index:48;bottom:0;left:0;right:0;padding:10px max(14px,env(safe-area-inset-left,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-right,0px));background:rgba(255,255,255,.96);border-top:1px solid #dbe6ec;box-shadow:0 -11px 35px rgba(7,24,44,.16);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);}
  .mobile-action-bar a{display:flex;align-items:center;justify-content:center;min-height:49px;border-radius:12px;padding:10px 12px;font-size:14px;font-weight:850;text-align:center;box-shadow:0 7px 16px rgba(0,0,0,.08);}
  .mobile-book{background:linear-gradient(115deg,#ffe685,#ffcb36);color:#082036;}
  .mobile-whatsapp{background:linear-gradient(115deg,#19ba75,#088a55);color:#fff;}
  .mobile-action-bar a:hover{filter:brightness(.97);}
  .floating-wa{display:none!important;}
}
@media(max-width:760px){
  .hero-content {padding-bottom:142px;}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;}
  .hero-actions .btn{padding:12px 9px;font-size:12px;min-height:55px;}
  .page-hero-actions .btn{font-size:12px;padding:10px 14px;}
  .hero-checks{gap:12px;}
  .vehicle-ctas{gap:10px;}
}
@media(max-width:540px){
  .page-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;}
  .page-hero-actions .btn{padding:10px 8px;min-height:53px;font-size:12px;line-height:1.35;white-space:normal;}
  .hero h1 {line-height:1.08;}
  .hero-actions .btn {font-size:12px;}
  .mobile-action-bar a {font-size:13px;}
  .cta-banner .banner-wa{margin-top:12px;}
  .vehicle-ctas a{font-size:12px;}
}
@media(max-width:350px){.hero-actions .btn,.mobile-action-bar a{font-size:11px}.vehicle-ctas a{font-size:11px}}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
 .hero-copy,.hero-visual{opacity:1!important;transform:none!important}
}
