/* PROA RENT A CAR — tipografías de la marca (OFL, en /assets/proa) y película del caso. */
@font-face{font-family:'Bricolage Grotesque';src:url(/assets/proa/proa-bricolage.woff) format('woff');font-weight:400 800;font-display:swap}
@font-face{font-family:'Atkinson Hyperlegible';src:url(/assets/proa/proa-atkinson-400.woff) format('woff');font-weight:400;font-display:swap}
@font-face{font-family:'Atkinson Hyperlegible';src:url(/assets/proa/proa-atkinson-700.woff) format('woff');font-weight:700;font-display:swap}

/* Lienzo fijo (1920×1080 o 1080×1920) escalado al contenedor */
.cf-film{position:relative;width:100%}
.rf-film .cf-screen{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#0f3a47;border-radius:6px;box-shadow:0 40px 90px -50px #10232bcc;isolation:isolate}
.rf-film.is-v .cf-screen{aspect-ratio:9/16}
.rf-film .cf-stage{position:absolute;inset:0}
.rf-film .cf-controls{display:flex;align-items:center;gap:14px;margin-top:14px;color:#10232b}
.rf-film .cf-play{flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#0f3a47;color:#f5b700;border:0;cursor:pointer;transition:transform .2s}
.rf-film .cf-play:hover{transform:scale(1.06)}
.rf-film .cf-ic{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.rf-film .cf-play .i-play .cf-ic{fill:currentColor;stroke:none}
.rf-film .cf-play .i-play,.rf-film .cf-play.is-paused .i-pause{display:none}
.rf-film .cf-play.is-paused .i-play{display:block}
.rf-film .cf-play:focus-visible,.rf-film .cf-chapters button:focus-visible{outline:2px solid #6552df;outline-offset:3px}
.rf-film .cf-chapters{flex:1;display:flex;gap:6px;min-width:0}
.rf-film .cf-chapters button{flex:var(--w) 1 0;min-width:0;background:none;border:0;padding:6px 0;cursor:pointer;text-align:left;font:500 11px/1.3 'DM Mono',monospace;letter-spacing:.06em;color:#55666d;text-transform:uppercase}
.rf-film .cf-chapters button span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:7px}
.rf-film .cf-chapters button.is-on{color:#10232b}
.rf-film .cf-chapters i{display:block;height:3px;background:#0f3a471f;border-radius:2px;overflow:hidden}
.rf-film .cf-chapters b{display:block;height:100%;width:calc(var(--p,0) * 100%);background:#0f3a47}
.rf-film .cf-time{flex:none;font:500 12px 'DM Mono',monospace;color:#55666d;min-width:3.4em;text-align:right}
@media (max-width:719px){.rf-film .cf-chapters button span{font-size:0;margin:0}.rf-film .cf-chapters{gap:4px}.rf-film .cf-screen{border-radius:4px}}

.rf-canvas{--r:#0f3a47;--r2:#17505f;--y:#f5b700;--n:#eef2f3;--k:#10232b;--g:#55666d;position:absolute;left:0;top:0;transform-origin:0 0;overflow:hidden;background:var(--n);font-family:'Atkinson Hyperlegible',Arial,sans-serif;color:var(--k);-webkit-font-smoothing:antialiased}
.rf-canvas *{box-sizing:border-box;margin:0}
.rf-scene{position:absolute;inset:0;visibility:hidden;overflow:hidden;background:var(--n)}
.rf-dark{background:radial-gradient(ellipse at 70% 40%,var(--r2),var(--r) 70%);color:#fff}
.rf-yellow{background:var(--y);color:var(--k)}
.rf-ic{width:1em;height:1em;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rf-sym{display:block;overflow:visible}
.rf-sym-bg{fill:var(--r);transform-box:fill-box;transform-origin:50% 50%}
.rf-sym-p{fill:none;stroke:var(--y);stroke-width:4.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}
.rf-demo-note{position:absolute;right:36px;bottom:26px;z-index:60;font:500 15px 'DM Mono',monospace;letter-spacing:.06em;color:var(--g);background:#eef2f3e0;padding:6px 12px;border-radius:30px;opacity:0}
.rf-copy{position:absolute;left:150px;top:300px;width:760px;z-index:3}
.rf-kick{font:500 20px 'DM Mono',monospace;letter-spacing:.2em;opacity:.7}
.rf-h{margin-top:22px!important;font:800 104px/.98 'Bricolage Grotesque',sans-serif;letter-spacing:-.04em}
.rf-h em{font-style:normal;color:var(--r2)}
.rf-dark .rf-h em{color:var(--y)}
.rf-l{display:block;overflow:hidden;padding-bottom:.06em}.rf-l>span{display:block}
.rf-p{margin-top:30px!important;font-size:32px;line-height:1.4;max-width:640px;opacity:.85}

/* S1 */
.rf-glow{position:absolute;left:50%;top:50%;width:1400px;height:1400px;margin:-700px 0 0 -700px;border-radius:50%;background:radial-gradient(#17505f,transparent 65%)}
.rf-s1-logo{position:absolute;left:50%;top:50%;display:flex;align-items:center;gap:56px;transform-origin:50% 50%;translate:-50% -62%}
.rf-sym.is-big{width:300px;height:300px}
.rf-s1-logo .rf-sym-bg{fill:#17505f}
.rf-s1-word{display:grid;gap:6px}
.rf-s1-word b{font:800 250px/.85 'Bricolage Grotesque',sans-serif;letter-spacing:-.05em}
.rf-s1-word span{font-size:40px;letter-spacing:.06em;opacity:.8}
.rf-s1-tag{position:absolute;left:0;right:0;top:calc(50% + 200px);text-align:center;font:500 46px 'Atkinson Hyperlegible',sans-serif}
.rf-s1-tag em{font-style:normal;color:var(--y)}

/* S2 */
.rf-s2-art{position:absolute;right:190px;top:150px;width:700px;height:780px;border-radius:120px;background:var(--r)}
.rf-s2-art svg{position:absolute;inset:60px;width:calc(100% - 120px);height:calc(100% - 120px);overflow:visible}
.rf-s2-p{fill:none;stroke:var(--y);stroke-width:4.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1}
.rf-s2-guide{fill:none;stroke:#ffffff80;stroke-width:.5;stroke-dasharray:1;stroke-linecap:round}
.rf-s2-tag{position:absolute;font:500 20px 'DM Mono',monospace;letter-spacing:.18em;color:#fff;padding:8px 14px;border-radius:30px;background:#ffffff1f}
.rf-s2-tag.t1{left:60px;bottom:120px}.rf-s2-tag.t2{right:-40px;top:350px;background:var(--y);color:var(--k)}.rf-s2-tag.t3{left:280px;top:70px}

/* S3 */
.rf-s3 .rf-copy{top:120px}
.rf-car{position:absolute;left:330px;top:300px;width:1340px}
.rf-car img{display:block;width:100%;height:auto}
.rf-car-shadow{position:absolute;left:8%;right:6%;bottom:-10px;height:50px;border-radius:50%;background:radial-gradient(#10232b55,transparent 70%);z-index:-1}
.rf-specs{position:absolute;left:150px;right:150px;bottom:90px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.rf-spec{display:grid;align-content:start;gap:4px;padding-top:22px;border-top:3px solid var(--r)}
.rf-spec b{font:800 88px/1 'Bricolage Grotesque',sans-serif;letter-spacing:-.04em;color:var(--r)}
.rf-spec:last-child b{color:var(--k)}.rf-spec:last-child{border-color:var(--y)}
.rf-spec small{font:500 20px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--g)}
.rf-spec span{font-size:24px;color:var(--g)}

/* teléfono y portátil con capturas reales */
.rf-phone{--ph:translate(0,0);position:absolute;right:260px;top:70px;width:460px;height:940px;padding:14px;border-radius:66px;background:#0a171c;box-shadow:0 60px 120px -40px #000a,inset 0 0 0 3px #ffffff1f;transform:var(--ph)}
.rf-screen{position:relative;height:100%;border-radius:54px;overflow:hidden;background:#fff}
.rf-screen img{display:block;width:100%;height:auto}
.rf-shot{position:absolute;left:0;top:0;width:100%}
.rf-chip{position:absolute;left:150px;bottom:120px;display:grid;gap:4px;padding:26px 34px;border-radius:30px;background:#fff;color:var(--k);box-shadow:0 30px 60px -30px #000}
.rf-chip small{font:500 17px 'DM Mono',monospace;letter-spacing:.12em;color:var(--g)}.rf-chip b{font:800 66px/1 'Bricolage Grotesque',sans-serif;letter-spacing:-.03em}.rf-chip span{display:inline-block;justify-self:start;margin-top:6px;padding:6px 14px;border-radius:30px;background:var(--y);font-weight:700;font-size:20px}
.rf-s5 .rf-copy{top:110px}.rf-s5 .rf-h{font-size:92px}.rf-s5 .rf-p{font-size:28px;margin-top:22px!important}
.rf-sign{position:absolute;left:150px;bottom:70px;width:780px;padding:22px 30px;border-radius:30px;background:#fff;box-shadow:0 30px 70px -40px #10232b88}
.rf-sign small{font:500 16px 'DM Mono',monospace;letter-spacing:.14em;color:var(--g)}
.rf-sign>svg{display:block;width:100%;height:130px;border-bottom:2px dashed #10232b22}
.rf-sign path{fill:none;stroke:var(--k);stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1}
.rf-hash{display:grid;gap:6px;margin-top:16px}.rf-hash span{display:flex;align-items:center;gap:10px;font:500 16px 'DM Mono',monospace;letter-spacing:.12em;color:#1f7a4d}.rf-hash .rf-ic{font-size:24px}
.rf-hash code{min-height:1.4em;font:500 19px 'DM Mono',monospace;word-break:break-all;color:var(--k)}
.rf-laptop{--lp:translate(0,0);position:absolute;right:110px;top:250px;width:1000px;transform:var(--lp)}
.rf-lap-screen{position:relative;aspect-ratio:16/10;overflow:hidden;border:16px solid #0a171c;border-radius:26px 26px 0 0;background:#fff;box-shadow:0 60px 120px -40px #000a}
.rf-lap-screen img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left}
.rf-lap-base{display:block;height:26px;margin:0 -60px;border-radius:0 0 30px 30px;background:linear-gradient(#cfd6d9,#8f9ba0)}
.rf-s6 .rf-copy{width:620px}.rf-s6 .rf-h{font-size:90px}

/* S7 */
.rf-end{position:absolute;left:150px;top:180px;font:800 190px/.92 'Bricolage Grotesque',sans-serif;letter-spacing:-.05em}
.rf-end-line{position:absolute;left:150px;top:780px;font-size:40px}
.rf-end-sign{position:absolute;left:150px;bottom:70px;font:500 20px 'DM Mono',monospace;letter-spacing:.22em;opacity:.7}
.rf-end-sym{position:absolute;right:170px;top:200px;width:380px}
.rf-end-sym .rf-sym{width:100%;height:auto}

/* vertical */
.rf-canvas.is-v .rf-copy{left:90px;top:150px;width:900px}
.rf-canvas.is-v .rf-h{font-size:108px}.rf-canvas.is-v .rf-p{font-size:38px;max-width:880px}
.rf-canvas.is-v .rf-s4 .rf-p,.rf-canvas.is-v .rf-s5 .rf-p,.rf-canvas.is-v .rf-s6 .rf-p{display:none}
.rf-canvas.is-v .rf-s1-logo{flex-direction:column;gap:40px;translate:-50% -60%;text-align:center}
.rf-canvas.is-v .rf-s1-word{justify-items:center}.rf-canvas.is-v .rf-s1-word b{font-size:220px}
.rf-canvas.is-v .rf-s1-tag{top:calc(50% + 380px);font-size:50px;padding:0 80px}
.rf-canvas.is-v .rf-s2-art{left:50%;right:auto;top:auto;bottom:170px;width:620px;height:690px;margin-left:-310px}
.rf-canvas.is-v .rf-car{left:-60px;top:640px;width:1200px}
.rf-canvas.is-v .rf-specs{left:90px;right:90px;bottom:120px;grid-template-columns:1fr 1fr;row-gap:50px}
.rf-canvas.is-v .rf-phone{right:auto;left:50%;top:600px;margin-left:-250px;width:500px;height:1020px}
.rf-canvas.is-v .rf-chip{left:auto;right:60px;bottom:140px}
.rf-canvas.is-v .rf-sign{left:90px;right:90px;width:auto;bottom:60px}
.rf-canvas.is-v .rf-s5 .rf-phone{top:470px;height:900px}
.rf-canvas.is-v .rf-laptop{left:40px;right:40px;width:auto;top:820px}
.rf-canvas.is-v .rf-s6 .rf-copy{width:900px}
.rf-canvas.is-v .rf-end{left:90px;top:220px;font-size:200px}
.rf-canvas.is-v .rf-end-line{left:90px;right:90px;top:960px;font-size:48px}
.rf-canvas.is-v .rf-end-sym{right:auto;left:90px;top:auto;bottom:220px;width:300px}
.rf-canvas.is-v .rf-end-sign{left:90px}
