:root{--rh-black:#0A0A0A;--rh-graphite:#111112;--rh-orange:#FF5A1F;--rh-silver:#C9CDD2;--rh-bone:#F4F4F2;--rh-dim:#6B7078;--rh-display:"Michroma","Eurostile","Arial Black",system-ui,sans-serif;--rh-body:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
html,body{margin:0;background:var(--rh-black)}
.rh{position:fixed;inset:0;overflow:hidden;background:var(--rh-black);color:var(--rh-bone);font-family:var(--rh-body);-webkit-font-smoothing:antialiased;touch-action:none;overscroll-behavior:none}
.rh ::selection{background:var(--rh-orange);color:var(--rh-black)}
.rh :focus-visible{outline:2px solid var(--rh-orange);outline-offset:3px}
.rh button{font-family:inherit}
.rh-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rh-screen1{position:absolute;inset:0;z-index:10}
.rh-media{position:absolute;inset:0;overflow:hidden;background:var(--rh-black)}
.rh-par{position:absolute;inset:0;will-change:transform;transform:scale(1.06)}
.rh-video{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;background:var(--rh-black)}
.rh-shade{position:absolute;inset:0;pointer-events:none}
.rh-shade-hero{background:linear-gradient(90deg,rgba(10,10,10,.82) 0%,rgba(10,10,10,.35) 36%,rgba(10,10,10,0) 58%),linear-gradient(0deg,rgba(10,10,10,.92) 0%,rgba(10,10,10,0) 34%),linear-gradient(180deg,rgba(10,10,10,.6) 0%,rgba(10,10,10,0) 22%)}
.rh-shade-drum{background:linear-gradient(90deg,rgba(17,17,18,.94) 0%,rgba(17,17,18,.62) 38%,rgba(17,17,18,0) 60%),linear-gradient(0deg,rgba(17,17,18,.85) 0%,rgba(17,17,18,0) 30%)}
.rh-glow{position:absolute;left:52%;top:78%;width:74vw;height:20vw;transform:translate(-50%,-50%);background:radial-gradient(closest-side,rgba(255,90,31,.16),rgba(255,90,31,0));animation:rh-breathe 4s ease-in-out infinite;pointer-events:none;mix-blend-mode:screen}
@keyframes rh-breathe{0%,100%{opacity:.55}50%{opacity:1}}
.rh-grain{position:absolute;inset:-50%;z-index:80;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:rh-grain .9s steps(3) infinite}
@keyframes rh-grain{0%{transform:translate(0,0)}33%{transform:translate(-3%,2%)}66%{transform:translate(2%,-3%)}100%{transform:translate(0,0)}}
/* title */
.rh-title{position:absolute;left:1%;right:1%;bottom:40px;z-index:20;margin:0;text-align:center;pointer-events:none;user-select:none;font-family:var(--rh-display);font-weight:400;font-size:12.4vw;line-height:1;letter-spacing:-.07em;white-space:nowrap;text-transform:uppercase;color:var(--rh-bone)}
.rh-char{display:inline-block;will-change:transform,opacity;transform-origin:50% 0%}
/* intro */
.rh-intro-pos{position:absolute;z-index:30;left:64px;top:44%;transform:translateY(-50%);max-width:480px}
.rh-intro{will-change:transform,opacity}
.rh-h1{margin:0;font-weight:600;font-size:clamp(40px,5vw,78px);line-height:.98;letter-spacing:-.045em;text-wrap:balance}
.rh-h1 i{font-style:normal;color:var(--rh-orange)}
.rh-lead{margin:22px 0 30px;font-size:18px;line-height:1.5;color:var(--rh-silver);max-width:36ch}
.rh-btn{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 26px;border-radius:999px;background:var(--rh-orange);color:var(--rh-black);font-weight:700;font-size:15px;letter-spacing:.01em;border:0;cursor:pointer;text-decoration:none;transition:background .25s,color .25s,border-color .25s}
.rh-btn:hover{background:var(--rh-bone)}
.rh-btn svg{width:16px;height:16px}
.rh-btn-ghost{background:transparent;color:var(--rh-bone);border:1px solid rgba(201,205,210,.35)}
.rh-btn-ghost:hover{background:transparent;border-color:var(--rh-bone)}
.rh-hint{position:absolute;z-index:30;left:50%;bottom:calc(12.4vw + 64px);transform:translateX(-50%);display:flex;align-items:center;gap:12px;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--rh-silver);white-space:nowrap;pointer-events:none}
.rh-ring{width:22px;height:22px;border-radius:50%;border:1.5px solid rgba(201,205,210,.3);border-top-color:var(--rh-orange);animation:rh-spin 1.6s linear infinite}
.rh-hint.is-loading{color:var(--rh-orange)}
.rh-hint.is-loading .rh-ring{animation-duration:.8s}
@keyframes rh-spin{to{transform:rotate(360deg)}}
/* tiles */
.rh-tiles{position:absolute;z-index:40;left:64px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-start;gap:10px;pointer-events:none}
.rh-tile{will-change:transform,opacity,filter;opacity:0}
.rh-tile-in{height:138px;padding:0 56px;border-radius:34px;background:var(--rh-bone);color:var(--rh-black);display:flex;align-items:center;gap:20px;white-space:nowrap;transform-origin:left center;transition:transform .4s cubic-bezier(.16,1,.3,1),background .3s;font-family:var(--rh-display);font-size:23px;line-height:34px;letter-spacing:-.03em}
.rh-tile-in .rh-dot{width:10px;height:10px;border-radius:50%;background:var(--rh-orange);flex:none;transition:background .3s}
.rh-tile-in.is-hot{background:var(--rh-orange)}
.rh-tile-in.is-hot .rh-dot{background:var(--rh-black)}
/* header */
.rh-header{position:absolute;z-index:60;top:64px;left:64px;right:64px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.rh-header>*{pointer-events:auto}
.rh-brand{display:flex;align-items:center;gap:14px;background:none;border:0;padding:0;color:inherit;cursor:pointer;text-align:left}
.rh-logo{width:48px;height:48px;flex:none}
.rh-sub{font-size:12px;line-height:16px;letter-spacing:.02em;color:var(--rh-silver)}
.rh-nav{display:flex;gap:4px}
.rh-nav-btn{font-weight:500;font-size:12px;line-height:16px;letter-spacing:.06em;color:var(--rh-bone);background:transparent;border:0;padding:9px 16px;border-radius:999px;cursor:pointer;transition:background .3s,color .3s}
.rh-nav-btn:hover,.rh-nav-btn.is-active{background:var(--rh-bone);color:var(--rh-black)}
.rh-burger{display:none;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:var(--rh-bone);align-items:center;justify-content:center;cursor:pointer}
.rh-burger svg{width:18px;height:18px}
.rh-menu{position:absolute;inset:0;z-index:55;background:rgba(17,17,18,.98);backdrop-filter:blur(20px);padding:96px 0 0}
.rh-menu button{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid rgba(255,255,255,.06);color:var(--rh-bone);font-family:var(--rh-display);font-size:16px;letter-spacing:.2em;text-transform:uppercase;padding:18px 24px;cursor:pointer}
.rh-menu button.is-active{color:var(--rh-orange)}
/* panel */
.rh-panel{position:absolute;inset:0;z-index:45;background:var(--rh-graphite);border-radius:48px 48px 0 0;overflow:hidden;transform:translate3d(0,100%,0);visibility:hidden;will-change:transform}
.rh-handle{position:absolute;top:20px;left:50%;width:64px;height:5px;margin-left:-32px;background:var(--rh-bone);border-radius:99px;z-index:50;pointer-events:none}
.rh-drum{position:absolute;top:0;bottom:0;left:0;width:60%;z-index:30;padding-left:80px;perspective:1000px;perspective-origin:25% 50%;pointer-events:none;user-select:none}
.rh-drum-in{position:relative;height:100%;transform-style:preserve-3d}
.rh-line{position:absolute;left:0;top:50%;margin:-.5em 0 0;font-weight:600;font-size:32px;line-height:.9;letter-spacing:-.035em;white-space:nowrap;transform-origin:left center;color:var(--rh-dim);will-change:transform,opacity;opacity:0}
.rh-line b{color:var(--rh-bone);font-weight:700}
.rh-line.is-accent,.rh-line.is-accent b{color:var(--rh-orange)}
.rh-bottom{position:absolute;z-index:50;left:0;bottom:64px;width:60%;padding:0 64px 0 80px}
.rh-marquee{border-top:1px solid rgba(255,255,255,.08);padding-top:24px;overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 15%,#000 85%,transparent);mask-image:linear-gradient(to right,transparent,#000 15%,#000 85%,transparent)}
.rh-track{display:flex;width:max-content;animation:rh-marquee 25s linear infinite}
.rh-mq{display:inline-flex;align-items:center;gap:40px;padding-right:40px;font-family:var(--rh-display);font-size:12px;letter-spacing:.18em;color:var(--rh-silver);white-space:nowrap}
.rh-mq i{width:4px;height:4px;border-radius:50%;background:var(--rh-orange)}
@keyframes rh-marquee{to{transform:translateX(-50%)}}
.rh-close{position:absolute;left:80px;right:64px;bottom:0;opacity:0;pointer-events:none}
.rh-h2{margin:0;font-weight:600;font-size:clamp(30px,3.2vw,46px);line-height:1;letter-spacing:-.04em}
.rh-close p{margin:14px 0 0;font-size:17px;line-height:1.5;color:var(--rh-silver);max-width:40ch}
.rh-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.rh-foot{margin-top:28px;font-size:11px;letter-spacing:.04em;color:var(--rh-dim)}
@media (max-width:1023px){.rh-line{font-size:28px}}
/* ===== MÓVIL ===== */
@media (max-width:767px){
:root{--m-top:env(safe-area-inset-top,0px);--m-bot:env(safe-area-inset-bottom,0px);--m-gut:20px}
/* header */
.rh-header{top:calc(var(--m-top) + 16px);left:var(--m-gut);right:var(--m-gut)}
.rh-nav{display:none}.rh-burger{display:inline-flex}
.rh-logo{width:40px;height:40px}.rh-brand{gap:12px}
.rh-sub{font-size:10px;line-height:13px}
.rh-menu{padding-top:calc(var(--m-top) + 88px)}
.rh-menu button{padding:20px var(--m-gut);font-size:15px}
/* hero: vídeo en la mitad inferior para ver el coche entero */
.rh-screen1 .rh-par{top:auto;bottom:calc(var(--m-bot) + 6px);height:min(98vw,54%);transform:none!important;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 26%,#000 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 26%,#000 100%)}
.rh-video-hero{object-position:58% 50%}
.rh-shade-hero{background:linear-gradient(0deg,rgba(10,10,10,.9) 0%,rgba(10,10,10,0) 22%)}
.rh-glow{top:auto;bottom:calc(var(--m-bot) + 14vw);width:120vw;height:40vw;transform:translateX(-50%)}
.rh-intro-pos{left:var(--m-gut);right:var(--m-gut);top:calc(var(--m-top) + 96px);transform:none;max-width:none}
.rh-h1{font-size:clamp(34px,10.4vw,46px);line-height:1}
.rh-lead{font-size:clamp(15px,4.1vw,17px);line-height:1.5;margin:14px 0 22px;max-width:34ch}
.rh-btn{height:50px;padding:0 24px;font-size:15px}
.rh-title{bottom:calc(var(--m-bot) + 22px)}
.rh-hint{bottom:calc(var(--m-bot) + 12.4vw + 40px);font-size:10px;letter-spacing:.2em;gap:10px}
.rh-ring{width:18px;height:18px}
/* ventajas: en el hueco del texto de intro, el coche queda visible debajo */
.rh-tiles{left:var(--m-gut);right:var(--m-gut);top:calc(var(--m-top) + 96px);transform:none;align-items:stretch;gap:10px}
.rh-tile-in{height:auto;min-height:66px;padding:14px 22px;border-radius:20px;font-size:clamp(11px,3.35vw,14px);line-height:1.35;gap:14px;white-space:normal;letter-spacing:-.02em}
/* panel proceso */
.rh-panel{border-radius:28px 28px 0 0}
.rh-handle{top:12px;width:48px;margin-left:-24px;height:4px}
.rh-panel .rh-par{top:auto;bottom:calc(var(--m-bot) + 70px);height:min(92vw,50%);transform:none!important;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 80%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 80%,transparent 100%)}
.rh-video-drum{object-position:64% 50%}
.rh-shade-drum{background:linear-gradient(180deg,rgba(17,17,18,.96) 0%,rgba(17,17,18,.96) calc(var(--m-top) + 62px),rgba(17,17,18,0) calc(var(--m-top) + 130px)),linear-gradient(180deg,rgba(17,17,18,.55) 0%,rgba(17,17,18,.2) 45%,rgba(17,17,18,.55) 75%,rgba(17,17,18,.92) 100%)}
.rh-drum{width:100%;padding-left:var(--m-gut);padding-right:var(--m-gut);box-sizing:border-box;top:calc(var(--m-top) + 64px);bottom:auto;height:56%;perspective-origin:20% 50%;-webkit-mask:linear-gradient(180deg,transparent 0,#000 56px,#000 72%,transparent 100%) no-repeat;mask:linear-gradient(180deg,transparent 0,#000 56px,#000 72%,transparent 100%) no-repeat}
.rh-line{font-size:min(24px,5vw)}
.rh-bottom{left:0;right:0;width:auto;padding:0 var(--m-gut);bottom:calc(var(--m-bot) + 24px)}
.rh-marquee{padding-top:18px}.rh-mq{font-size:10px;gap:28px;padding-right:28px}.rh-mq-item{gap:28px}
.rh-close{left:var(--m-gut);right:var(--m-gut)}
.rh-h2{font-size:clamp(28px,8.4vw,38px)}
.rh-close p{font-size:15px;margin-top:10px}
.rh-actions{flex-direction:column;gap:10px;margin-top:20px}
.rh-actions .rh-btn{width:100%;justify-content:center;box-sizing:border-box}
.rh-foot{margin-top:18px;font-size:10px;line-height:1.5}
}
@media (max-width:767px) and (max-height:700px){
.rh-intro-pos,.rh-tiles{top:calc(var(--m-top) + 80px)}
.rh-h1{font-size:clamp(30px,9vw,40px)}.rh-lead{font-size:14px;margin:10px 0 18px}
.rh-tile-in{min-height:56px;padding:10px 20px}
.rh-close p{display:none}
}
@media (max-width:374px){.rh-sub{display:none}:root{--m-gut:16px}}
/* móvil en horizontal */
@media (min-width:768px) and (max-height:520px){
.rh-header{top:18px;left:32px;right:32px}.rh-logo{width:36px;height:36px}
.rh-intro-pos{left:32px;top:57%;max-width:360px}.rh-h1{font-size:30px}.rh-lead{font-size:14px;margin:10px 0 16px}
.rh-tiles{left:32px;top:54%;gap:8px}.rh-tile-in{height:56px;padding:0 26px;border-radius:18px;font-size:13px}
.rh-title{bottom:12px;font-size:10vw}.rh-hint{left:auto;right:32px;top:72px;bottom:auto;transform:none}
.rh-shade-drum{background:linear-gradient(180deg,rgba(17,17,18,.95) 0%,rgba(17,17,18,.95) 58px,rgba(17,17,18,0) 110px),linear-gradient(90deg,rgba(17,17,18,.94) 0%,rgba(17,17,18,.62) 38%,rgba(17,17,18,0) 60%),linear-gradient(0deg,rgba(17,17,18,.85) 0%,rgba(17,17,18,0) 30%)}
.rh-drum{padding-left:32px;-webkit-mask:linear-gradient(180deg,transparent 0,transparent 52px,#000 100px) no-repeat;mask:linear-gradient(180deg,transparent 0,transparent 52px,#000 100px) no-repeat}.rh-line{font-size:20px}
.rh-bottom{bottom:18px;padding:0 32px}.rh-close{left:32px;right:32px}.rh-h2{font-size:26px}.rh-close p{font-size:14px;margin-top:6px}.rh-actions{margin-top:12px}.rh-btn{height:42px}.rh-foot{margin-top:10px}
}
@media (prefers-reduced-motion:reduce){.rh-glow,.rh-grain,.rh-track,.rh-ring{animation:none}}
.rh-mq-item{display:inline-flex;align-items:center;gap:40px}
/* preguntas frecuentes */
.rh-faq{position:absolute;inset:0;z-index:70;background:rgba(10,10,10,.97);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;opacity:0;visibility:hidden;transform:translateY(24px);transition:opacity .35s,transform .45s cubic-bezier(.16,1,.3,1),visibility 0s .45s}
.rh-faq.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .35s,transform .45s cubic-bezier(.16,1,.3,1)}
.rh-faq-in{position:relative;max-width:760px;margin:0 auto;padding:140px 64px 96px}
.rh-faq-x{position:fixed;top:64px;right:64px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:var(--rh-bone);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;z-index:2}
.rh-faq-x svg{width:18px;height:18px}
.rh-faq-kicker{margin:0 0 14px;font-family:var(--rh-display);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--rh-orange)}
.rh-faq .rh-h2{margin-bottom:28px}
.rh-faq-item{border-top:1px solid rgba(255,255,255,.08);padding:24px 0}
.rh-faq-item h3{margin:0 0 10px;font-size:19px;line-height:1.3;font-weight:600;letter-spacing:-.02em;color:var(--rh-bone)}
.rh-faq-item p{margin:0;font-size:16px;line-height:1.65;color:var(--rh-silver)}
.rh-faq-cta{display:flex;flex-wrap:wrap;gap:12px;border-top:1px solid rgba(255,255,255,.08);padding-top:32px}
a.rh-nav-btn{text-decoration:none;display:inline-block}
.rh-menu a{display:block;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.06);color:var(--rh-bone);font-family:var(--rh-display);font-size:16px;letter-spacing:.2em;text-transform:uppercase;padding:18px 24px}
.rh-foot a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.rh-foot a:hover{color:var(--rh-bone)}
@media (max-width:767px){
.rh-faq-in{padding:calc(env(safe-area-inset-top,0px) + 84px) 20px calc(env(safe-area-inset-bottom,0px) + 48px)}
.rh-faq-x{top:calc(env(safe-area-inset-top,0px) + 16px);right:20px;width:40px;height:40px}
.rh-faq-item{padding:20px 0}.rh-faq-item h3{font-size:17px}.rh-faq-item p{font-size:15px}
.rh-faq-cta{flex-direction:column}.rh-faq-cta .rh-btn{width:100%;justify-content:center;box-sizing:border-box}
.rh-menu a{padding:20px 20px;font-size:15px}
}
