:root{--sun:#FFC20E;--sun-d:#E5AC00;--asphalt:#121212;--ink:#1d1f22;--muted:#5b6168;--paper:#fff;--concrete:#EEF0F2;--line:#dde1e5;--wa:#168A45;--wa-d:#11733a;--sign:#0A4F9E;--r:14px;--dock:68px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 Figtree,system-ui,sans-serif;padding-bottom:calc(var(--dock) + env(safe-area-inset-bottom))}
img{display:block;max-width:100%;height:auto}a{color:inherit}
h1,h2,h3{font-family:"Barlow Condensed",Impact,sans-serif;line-height:1.02;margin:0;letter-spacing:.005em}
h2{font-size:clamp(2rem,5vw,3rem);font-weight:800;text-transform:uppercase}
h3{font-size:1.45rem;font-weight:700}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}
section{padding:56px 0}
:focus-visible{outline:3px solid var(--sign);outline-offset:3px;border-radius:6px}
svg{width:22px;height:22px;flex:none}
.ic{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
/* cabecera */
.top{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:var(--asphalt);color:#fff}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:700 1rem/1 "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.04em}
.brand img{width:44px;height:44px;border-radius:50%}
.top-act{display:flex;align-items:center;gap:8px}
.top-act a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:999px;text-decoration:none;font-weight:700}
.lang{border:1.5px solid #ffffff55}
.top-wa{background:var(--wa)}.top-call{background:var(--sun);color:var(--asphalt)}
.top-wa span,.top-call span{display:none}
/* hero */
.hero{padding:0;background:var(--asphalt);color:#fff;display:grid}
.hero-img img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:50% 70%}
.hero-txt{padding:20px 16px 30px}
.sign{display:inline-flex;align-items:center;gap:10px;margin:0 0 16px;padding:7px 14px 7px 9px;background:var(--sign);color:#fff;border:2px solid #fff;border-radius:7px;font:700 1.05rem/1 "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.06em;box-shadow:0 0 0 3px var(--sign)}
.sign-ic svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linejoin:round}
.sign-arrow{font-size:1.2rem}
.hero h1{font-size:clamp(2.5rem,10.5vw,5.4rem);font-weight:800;text-transform:uppercase;color:var(--sun)}
.lead{font-size:1.05rem;color:#e6e6e6;margin:12px 0 20px;max-width:38ch}
.cta{display:grid;gap:10px}
.btn{display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 18px;border-radius:var(--r);text-decoration:none;font-weight:700;transition:transform .15s ease,background .15s ease}
.btn span{display:flex;flex-direction:column;line-height:1.15}.btn b{font-size:1.1rem}.btn small{font-weight:500;opacity:.85}
.btn-call{background:var(--sun);color:var(--asphalt)}.btn-call:hover{background:var(--sun-d)}
.btn-wa{background:var(--wa);color:#fff}.btn-wa:hover{background:var(--wa-d)}
.btn:active{transform:scale(.98)}
.chips{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.chips li{padding:7px 12px;border:1.5px solid #ffffff40;border-radius:999px;font-size:.9rem;font-weight:600}
.chips li::before{content:"✓ ";color:var(--sun)}
/* flota */
.fleet{background:var(--concrete)}.sub{color:var(--muted);margin:10px 0 26px;max-width:60ch}
.grid{display:grid;gap:18px}
.car{position:relative;background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.car-photos{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.car-photos::-webkit-scrollbar{display:none}
.car-photos img{flex:0 0 100%;scroll-snap-align:start;aspect-ratio:4/3;object-fit:cover}
.car-count{position:absolute;top:10px;right:10px;padding:4px 9px;border-radius:999px;background:#121212cc;color:#fff;font-size:.78rem;font-weight:600}
.car-body{padding:16px}
.car-tag{margin:0 0 4px;color:var(--sign);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}
.car-act{display:flex;gap:10px;margin-top:14px}
.btn-sm{flex:1;min-height:50px;justify-content:center;font-size:1rem}
.btn-ic{display:grid;place-items:center;width:50px;min-height:50px;border-radius:var(--r);background:var(--sun);color:var(--asphalt)}
/* pasos */
.steps ol{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:22px}
.steps li{display:grid;grid-template-columns:auto 1fr;column-gap:16px}
.n{grid-row:span 2;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--asphalt);color:var(--sun);font:800 1.7rem/1 "Barlow Condensed",sans-serif}
.steps p{margin:4px 0 0;color:var(--muted)}
/* aeropuerto */
.airport{background:var(--sign);color:#fff}
.airport-in{display:grid;gap:24px;align-items:center}
.board{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-radius:10px;background:#0b0d10;font:800 2.6rem/1 "Barlow Condensed",sans-serif;color:var(--sun);letter-spacing:.08em;text-transform:uppercase}
.board span+span{font-size:1.2rem;color:#fff;letter-spacing:.15em}
.airport p{margin:12px 0 22px;max-width:52ch;color:#e3ecf7}
.airport .btn{display:inline-flex}
/* incluye */
.incl ul{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px}
.incl li{padding:20px;border-radius:var(--r);background:var(--concrete)}
.incl .ic{color:var(--sign);margin-bottom:10px}
.incl p{margin:6px 0 0;color:var(--muted)}
/* reseñas */
.reviews{padding-top:0}
.rv-slot{margin-top:20px;padding:22px;border:2px dashed var(--line);border-radius:var(--r);color:var(--muted)}
.rv-slot p{margin:0}
/* faq */
.faq{background:var(--concrete)}
.faq h2{margin-bottom:20px}
details{background:#fff;border-radius:var(--r);margin-bottom:10px;border:1px solid var(--line)}
summary{cursor:pointer;list-style:none;padding:18px 48px 18px 18px;font-weight:700;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--sign)}
details[open] summary::after{content:"−"}
details p{margin:0;padding:0 18px 18px;color:var(--muted)}
/* final */
.final{background:var(--asphalt);color:#fff}
.final h2{color:var(--sun)}.final p{color:#ddd;max-width:52ch}
.final .cta{margin-top:22px;max-width:640px}
.more{margin-top:22px;font-size:.95rem}
.more a{color:#fff}
.foot{padding:22px 0;font-size:.88rem;color:var(--muted)}.foot p{margin:4px 0}
/* barra fija móvil */
.dock{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -6px 20px #0000001f}
.dock a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-radius:12px;text-decoration:none;font-weight:700;font-size:1.05rem}
.d-call{background:var(--sun);color:var(--asphalt)}.d-wa{background:var(--wa);color:#fff}
@media (min-width:640px){
 .grid{grid-template-columns:1fr 1fr}.incl ul{grid-template-columns:1fr 1fr}.cta{grid-template-columns:1fr 1fr}
 .top-wa span,.top-call span{display:inline}
}
@media (min-width:960px){
 body{padding-bottom:0}.dock{display:none}
 section{padding:84px 0}
 .hero{grid-template-columns:1.1fr 1fr;min-height:620px}
 .hero-img img{height:100%;aspect-ratio:auto}
 .hero-txt{padding:56px 48px;align-self:center}
 .grid{grid-template-columns:repeat(3,1fr)}
 .steps ol{grid-template-columns:repeat(3,1fr)}
 .airport-in{grid-template-columns:1fr 1.4fr;gap:56px}
 .incl ul{grid-template-columns:repeat(4,1fr)}
 .reviews{padding-top:0}
 .faq .wrap{max-width:820px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
