/* Portadas de hogar y vehículos. */
.hero.hero-photo{margin:0;border-radius:0;background:#071d35;isolation:isolate;color:#fff}
.hero-photo .hero-photo-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;z-index:0}
.hero-photo .hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,20,40,.94) 0%,rgba(4,20,40,.84) 27%,rgba(4,20,40,.58) 51%,rgba(4,20,40,.12) 78%,rgba(4,20,40,.08) 100%)}
.hero-photo .wrap{position:relative;z-index:2;display:flex;align-items:center;min-height:680px;padding-top:76px;padding-bottom:86px}
.hero-photo .hero-copy{width:58%;max-width:650px}
.hero-photo .eyebrow{color:#ffe477;letter-spacing:1.5px}
.hero-photo .eyebrow .dot{background:var(--yellow);box-shadow:0 0 0 5px #ffd43815}
.hero-photo h1,.auto-page .hero-photo h1{color:white;font-size:clamp(44px,5.1vw,74px);letter-spacing:-3px;line-height:1.04;margin:25px 0}
.hero-photo h1 em{color:var(--yellow)}
.hero-photo .hero-description{color:#e3eaf3;max-width:490px;font-size:17px;line-height:1.75;margin-bottom:28px}
.hero-photo .hero-description strong{color:#fff}
.hero-photo .hero-note{color:#e5edf8;font-size:12px;margin-top:22px}
.hero-photo .hero-note .icon{color:var(--yellow)}
.hero-photo .button-white{background:#fff;color:var(--ink);border-color:#fff}
.hero-photo .button:focus-visible{outline-color:#fff}

/* La moto es un enlace real, disponible incluso sin JavaScript. */
.assistance-rider{--rider-size:116px;--rider-edge:18px;position:fixed;z-index:19;left:var(--rider-edge);bottom:20px;width:var(--rider-size);display:flex;flex-direction:column;align-items:center;gap:1px;text-align:center;border-radius:16px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.assistance-bike{width:100%;aspect-ratio:3/2;display:block;filter:drop-shadow(0 4px 5px #092b4930)}
.assistance-bike img{width:100%;height:100%;display:block;object-fit:contain}
.assistance-label{display:flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:7px 9px;border-radius:30px;background:var(--blue);color:#fff;border:2px solid #fff;box-shadow:0 3px 12px #082e6830;font-size:10px;font-weight:700;white-space:nowrap;line-height:1.2}
.assistance-label strong{color:var(--yellow);font-size:12px;font-weight:900}
.assistance-rider:hover .assistance-label{background:var(--deep)}
.assistance-rider:focus-visible{outline:3px solid var(--blue);outline-offset:5px;background:#fff}
.assistance-rider.is-riding{animation:assistance-arrive 3.4s cubic-bezier(.2,.65,.35,1) both}
.assistance-rider.is-riding .assistance-bike img{transform:scaleX(-1)}
.assistance-rider.is-riding:hover,.assistance-rider.is-riding:focus-visible{animation-play-state:paused}
@keyframes assistance-arrive{from{transform:translateX(calc(100vw - var(--rider-size) - var(--rider-edge) - var(--rider-edge) - 76px))}to{transform:translateX(0)}}
@media(max-width:1100px){.hero-photo .wrap{min-height:640px}.hero-photo .hero-copy{width:65%}.hero-photo h1,.auto-page .hero-photo h1{font-size:56px}.hero-photo .hero-shade{background:linear-gradient(90deg,#041428ed 0%,#041428b8 45%,#04142840 100%)}}
@media(max-width:760px){
 .hero-photo .wrap{width:calc(100% - 40px);min-height:660px;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;padding:180px 0 48px}
 .hero-photo .hero-copy{width:100%;max-width:540px}
 .hero-photo .hero-photo-media{object-position:76% center}
 .auto-page .hero-photo .hero-photo-media{object-position:72% center}
 .hero-photo .hero-shade{background:linear-gradient(180deg,rgba(4,20,40,.2) 0%,rgba(4,20,40,.55) 23%,rgba(4,20,40,.88) 54%,rgba(4,20,40,.97) 100%)}
 .hero-photo .eyebrow{font-size:9px;letter-spacing:1px;line-height:1.6}
 .hero-photo h1,.auto-page .hero-photo h1{font-size:clamp(39px,8.9vw,56px);letter-spacing:-1.8px;margin:19px 0}
 .hero-photo .hero-description{font-size:14px;line-height:1.7;max-width:480px;margin-bottom:24px}
 .hero-photo .hero-note{font-size:10px;margin-top:19px}
 .hero-photo .actions{gap:10px}
 .hero-photo .actions .button{padding:15px 13px;min-height:51px;font-size:12px}
 .assistance-rider{--rider-size:96px;--rider-edge:10px;bottom:calc(88px + env(safe-area-inset-bottom,0px))}
 .assistance-label{padding:6px 7px;gap:4px;min-height:28px;font-size:9px}
 .assistance-label strong{font-size:11px}
}
@media(max-width:360px){.hero-photo .actions{flex-direction:column;align-items:stretch}.hero-photo .hero-note{align-items:flex-start}.hero-photo .wrap{padding-top:145px}}
@media(prefers-reduced-motion:reduce){.assistance-rider.is-riding{animation:none}.assistance-rider.is-riding .assistance-bike img{transform:none}}
