/* ============================================================
   RUFINO HOME v2 — E2 (S4.7 · 2026-07-10)
   Port del mockup aprobado MOCKUP_HOME_E1_v2.html (E1, OK Pablo 10/07).
   Prefijo rfh- en todo para no colisionar con Anita / v6.
   Solo se encola en páginas con meta _rfv6_home_v2=1 (mu rufino-home-v2.php).
   ============================================================ */

/* ---------- scope: vars en la home Y en el resto del sitio (nav site-wide) ---------- */
body.rfh2-page, body.rfh-nav-site{
  --rfh-ink:#0E0E10; --rfh-ink2:#141416; --rfh-paper:#F5F2EC; --rfh-gold:#C99A48; --rfh-gold-soft:rgba(201,154,72,.14);
  --rfh-txt:#EDEAE4; --rfh-txt-dim:rgba(237,234,228,.62); --rfh-hair:rgba(237,234,228,.14);
  --rfh-oswald:'Oswald',sans-serif; --rfh-mont:'Montserrat',sans-serif;
  --rfh-ease-out:cubic-bezier(0.23,1,0.32,1); --rfh-ease-in-out:cubic-bezier(0.77,0,0.175,1);
}
body.rfh2-page{background:var(--rfh-ink);overflow-x:hidden}
/* header Anita fuera donde manda el nav pill (home + site-wide con la opción activa) */
body.rfh2-page #anita-header,
body.rfh2-page .anita-fullscreen-menu-wrap,
body.rfh-nav-site #anita-header,
body.rfh-nav-site .anita-fullscreen-menu-wrap{display:none!important}
/* contenedores del tema a sangre completa */
body.rfh2-page .anita-main,
body.rfh2-page .anita-content-wrap,
body.rfh2-page .rfv6-main{padding:0!important;margin:0!important;max-width:none!important;width:100%!important}

#rfh2{color:var(--rfh-txt);font-family:var(--rfh-mont);font-weight:300;line-height:1.65}
#rfh2 *,#rfh2 *::before,#rfh2 *::after{box-sizing:border-box}
#rfh2 h1,#rfh2 h2,#rfh2 h3,#rfh2 h4,#rfh2 h5,#rfh2 p,#rfh2 ul,#rfh2 li,#rfh2 figure,#rfh2 blockquote,#rfh2 cite{margin:0;padding:0}
#rfh2 ul{list-style:none}
#rfh2 img{max-width:100%;display:block} /* sin height:auto: el ID pisaba el height de .rfh-duo__photos img */
#rfh2 a{color:inherit;text-decoration:none;box-shadow:none}
#rfh2 section{padding:110px 0}

/* ---------- etiqueta aperçu (quitar en el swap E3) ---------- */
.rfh-mock-tag{position:fixed;bottom:14px;left:14px;z-index:99;background:var(--rfh-gold);color:var(--rfh-ink);font-family:var(--rfh-oswald);font-size:11px;letter-spacing:.14em;padding:6px 10px;text-transform:uppercase;border-radius:2px;opacity:.92}

/* ---------- NAV pill (P-E · aprobado 10/07) ---------- */
.rfh-nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:24px clamp(34px,8vw,170px);transition:background .4s ease, padding .4s ease}
.rfh-nav.scrolled{background:rgba(14,14,16,.86);backdrop-filter:blur(12px);padding:12px clamp(34px,8vw,170px);border-bottom:1px solid var(--rfh-hair)}
.rfh-nav.scrolled .rfh-nav__logo img{height:64px}
.rfh-nav__logo{display:flex;align-items:center;gap:12px;font-family:var(--rfh-oswald);font-size:20px;letter-spacing:.02em;font-weight:500;color:var(--rfh-txt)}
.rfh-nav__logo img{height:92px;width:auto;display:block;transition:height .35s ease}
.rfh-nav__logo b{color:var(--rfh-gold);font-weight:600}
.rfh-nav__pill{display:flex;align-items:center;gap:5px;background:rgba(20,20,22,.55);border:1px solid var(--rfh-hair);border-radius:999px;padding:7px;backdrop-filter:blur(10px)}
.rfh-nav__pill a{display:inline-flex;align-items:center;font-family:var(--rfh-oswald);font-size:14px;letter-spacing:.12em;text-transform:uppercase;padding:10px 20px;border-radius:999px;color:var(--rfh-txt-dim);transition:color .2s ease,background .2s ease;line-height:1;white-space:nowrap}
.rfh-nav__pill a:hover{color:var(--rfh-txt)}
.rfh-nav__pill a.on{background:var(--rfh-gold-soft);color:var(--rfh-gold)}
.rfh-nav__right{display:flex;align-items:center;gap:16px}
.rfh-nav__lang{font-family:var(--rfh-oswald);font-size:13.5px;letter-spacing:.12em;color:var(--rfh-txt-dim)}
.rfh-nav__lang:hover{color:var(--rfh-gold)}
.rfh-btn{display:inline-block;font-family:var(--rfh-oswald);font-size:13px;letter-spacing:.16em;text-transform:uppercase;padding:13px 26px;border-radius:999px;border:1px solid var(--rfh-hair);color:var(--rfh-txt);transition:transform 160ms var(--rfh-ease-out),box-shadow .3s ease,color .3s ease,border-color .3s ease;cursor:pointer;background:transparent}
.rfh-btn:active{transform:scale(.97)}
.rfh-btn--gold{background:var(--rfh-gold);color:var(--rfh-ink);border-color:var(--rfh-gold);box-shadow:0 0 24px rgba(201,154,72,.25)}
.rfh-btn--gold:hover{box-shadow:0 0 40px rgba(201,154,72,.45);transform:translateY(-1px);color:var(--rfh-ink)}
.rfh-btn--ghost:hover{border-color:var(--rfh-gold);color:var(--rfh-gold)}
/* !important: Anita estila los <button> a nivel de tema (display/border/min-height) y ganaría */
.rfh-nav__burger{display:none!important;flex-direction:column;gap:5px;background:none!important;border:none!important;box-shadow:none!important;min-width:0!important;min-height:0!important;width:auto!important;height:auto!important;cursor:pointer;padding:6px!important}
.rfh-nav__burger span{width:24px;height:1.5px;background:var(--rfh-txt);transition:background .25s;display:block}
.rfh-nav__burger:hover span{background:var(--rfh-gold)}
.rfh-nav__client{font-family:var(--rfh-oswald);font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--rfh-txt-dim)}
.rfh-nav__client:hover{color:var(--rfh-gold)}
.rfh-nav .rfh-btn{font-size:14px;padding:15px 30px}
/* pill anclado al centro real del viewport (≥1280px); debajo, flujo flex normal */
@media (min-width:1560px){
  .rfh-nav{justify-content:space-between}
  .rfh-nav__pill{position:absolute;left:50%;transform:translateX(-50%)}
}
/* desplegables — fluidos (Emil): scale desde el origen, puente anti-parpadeo, stagger */
.rfh-nav__pill .rfh-has{position:relative;display:inline-flex;align-items:center}
.rfh-nav__pill .rfh-has>a::after{content:"▾";display:inline-block;margin-left:7px;font-size:8.5px;color:var(--rfh-gold);transition:transform .25s var(--rfh-ease-out)}
.rfh-has:hover>a::after,.rfh-has:focus-within>a::after{transform:rotate(180deg)}
.rfh-dd{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%) translateY(8px) scale(.96);transform-origin:50% 0;background:rgb(17,17,19);border:1px solid var(--rfh-hair);border-radius:14px;padding:9px;min-width:250px;opacity:0;pointer-events:none;transition:opacity .15s ease .14s,transform .15s ease .14s;box-shadow:0 18px 44px rgba(0,0,0,.5);will-change:opacity,transform}
.rfh-dd::before{content:"";position:absolute;top:-14px;left:-10px;right:-10px;height:14px}
.rfh-has:hover .rfh-dd,.rfh-has:focus-within .rfh-dd{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0) scale(1);transition:opacity .22s var(--rfh-ease-out),transform .22s var(--rfh-ease-out)}
.rfh-dd a{display:block;padding:12px 16px;border-radius:9px;font-family:var(--rfh-oswald);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--rfh-txt-dim);opacity:0;transform:translateY(-5px);transition:opacity .18s ease .14s,transform .18s ease .14s,background .2s ease,color .2s ease}
.rfh-has:hover .rfh-dd a,.rfh-has:focus-within .rfh-dd a{opacity:1;transform:none;transition:opacity .25s var(--rfh-ease-out),transform .25s var(--rfh-ease-out),background .2s ease,color .2s ease}
.rfh-has:hover .rfh-dd a:nth-child(1){transition-delay:30ms,30ms,0s,0s}
.rfh-has:hover .rfh-dd a:nth-child(2){transition-delay:60ms,60ms,0s,0s}
.rfh-has:hover .rfh-dd a:nth-child(3){transition-delay:90ms,90ms,0s,0s}
.rfh-has:hover .rfh-dd a:nth-child(4){transition-delay:120ms,120ms,0s,0s}
.rfh-has:hover .rfh-dd a:nth-child(5){transition-delay:150ms,150ms,0s,0s}
.rfh-dd a:hover{background:var(--rfh-gold-soft);color:var(--rfh-gold)}

/* drawer fullscreen (menú completo; burger solo ≤1020px) */
.rfh-drawer{position:fixed;inset:0;z-index:90;background:rgba(10,10,12,.985);padding:100px 8vw 60px;opacity:0;pointer-events:none;transition:opacity .4s ease;overflow-y:auto}
.rfh-drawer.open{opacity:1;pointer-events:auto}
.rfh-drawer__close{position:absolute;top:24px;right:32px;background:none!important;border:none!important;box-shadow:none!important;min-width:0!important;min-height:0!important;padding:6px!important;color:var(--rfh-txt);font-size:26px;cursor:pointer;line-height:1}
.rfh-drawer__close:hover{color:var(--rfh-gold)}
.rfh-drawer a.rfh-it{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;font-family:var(--rfh-oswald);font-size:clamp(24px,3vw,40px);font-weight:600;text-transform:uppercase;color:var(--rfh-txt);padding:7px 0;opacity:0;transform:translateY(22px);transition:opacity .5s var(--rfh-ease-out),transform .5s var(--rfh-ease-out),color .25s;text-decoration:none}
.rfh-drawer.open a.rfh-it{opacity:1;transform:none;transition-delay:calc(var(--d)*50ms),calc(var(--d)*50ms),0s}
.rfh-drawer a.rfh-it:hover{color:var(--rfh-gold)}
.rfh-drawer .rfh-num{font-size:12px;color:var(--rfh-gold);font-weight:400;letter-spacing:.14em}
.rfh-drawer .rfh-subs{display:flex;gap:14px;flex-wrap:wrap;padding:0 0 10px 44px;opacity:0;transition:opacity .5s var(--rfh-ease-out)}
.rfh-drawer.open .rfh-subs{opacity:1;transition-delay:calc(var(--d)*50ms + 80ms)}
.rfh-drawer .rfh-subs a{font-family:var(--rfh-oswald);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--rfh-txt-dim);text-decoration:none}
.rfh-drawer .rfh-subs a:hover{color:var(--rfh-gold)}

/* ---------- HERO «film d'ouverture» ---------- */
.rfh-hero{position:relative;height:100vh;min-height:640px;overflow:hidden;background:#000;cursor:default}
.rfh-hero__shots{position:absolute;inset:-30px;transition:transform .3s ease-out;will-change:transform}
.rfh-shot{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}
.rfh-shot.on{opacity:1}
.rfh-shot--duo{transition:opacity 1.4s ease}
.rfh-shot .rfh-img{position:absolute;inset:0;background-size:cover;background-position:center 32%;filter:blur(7px);transition:filter .9s var(--rfh-ease-out)}
.rfh-shot.on .rfh-img{filter:blur(0)} /* rack focus */
.rfh-shot--duo .rfh-img.rfh-gray{transition:filter .9s var(--rfh-ease-out)}
.rfh-shot.rfh-s1.on .rfh-img{animation:rfhPanA 3.4s var(--rfh-ease-out) both}
.rfh-shot.rfh-s2.on .rfh-img{animation:rfhPanB 3.4s var(--rfh-ease-out) both}
.rfh-shot.rfh-s3.on .rfh-img{animation:rfhPanC 3.4s var(--rfh-ease-out) both}
.rfh-shot--duo.on .rfh-img{animation:rfhSettleZoom 18s linear both}
@keyframes rfhPanA{from{transform:scale(1.2) translateX(2.2%) rotate(.5deg)}to{transform:scale(1.07) translateX(-1%) rotate(0)}}
@keyframes rfhPanB{from{transform:scale(1.2) translateX(-2.2%) rotate(-.5deg)}to{transform:scale(1.07) translateX(1%) rotate(0)}}
@keyframes rfhPanC{from{transform:scale(1.22) translateY(2.4%) rotate(.4deg)}to{transform:scale(1.07) translateY(-1%) rotate(0)}}
@keyframes rfhSettleZoom{from{transform:scale(1.1)}to{transform:scale(1.0)}}
/* crédito de apertura */
.rfh-hero__credit{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;pointer-events:none;opacity:0;transition:opacity .8s ease}
.rfh-hero__credit.on{opacity:1}
.rfh-hero__credit .rfh-cmark{font-family:var(--rfh-oswald);font-size:15px;letter-spacing:.55em;text-transform:uppercase;color:var(--rfh-txt);text-indent:.55em}
.rfh-hero__credit .rfh-cmark b{color:var(--rfh-gold);font-weight:500}
.rfh-hero__credit .rfh-csub{font-family:Georgia,serif;font-style:italic;font-size:15px;color:var(--rfh-txt-dim);letter-spacing:.08em}
.rfh-hero__credit .rfh-crule{width:56px;height:1px;background:var(--rfh-gold);opacity:.7}
/* etalonado + viñeta */
.rfh-hero__grade{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(180deg,rgba(26,44,62,.16),rgba(201,154,72,.07));mix-blend-mode:overlay}
.rfh-hero__vignette{position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(ellipse at 50% 42%,transparent 52%,rgba(0,0,0,.55) 100%)}
/* light leak dorado */
.rfh-hero__leak{position:absolute;inset:-10%;z-index:8;pointer-events:none;background:linear-gradient(115deg,transparent 38%,rgba(240,214,160,.32) 50%,rgba(201,154,72,.14) 56%,transparent 66%);filter:blur(22px);transform:translateX(-160%);mix-blend-mode:screen}
.rfh-hero.open .rfh-hero__leak{animation:rfhLeak 1.5s var(--rfh-ease-in-out) .1s both}
@keyframes rfhLeak{to{transform:translateX(160%)}}
/* cue scroll */
.rfh-hero__cue{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:8;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0;transition:opacity 1s ease .8s}
.rfh-hero.done .rfh-hero__cue{opacity:1}
.rfh-hero__cue span{font-family:var(--rfh-oswald);font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--rfh-txt-dim);text-indent:.3em}
.rfh-hero__cue i{width:1px;height:34px;background:linear-gradient(var(--rfh-gold),transparent);display:block;animation:rfhCue 2s var(--rfh-ease-in-out) infinite}
@keyframes rfhCue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media (max-height:880px){.rfh-hero__cue{display:none}}
/* dualité photo/film : N&B + couleur bajo el cursor */
.rfh-shot--duo .rfh-img.rfh-gray{filter:grayscale(.85) brightness(.82)}
.rfh-shot--duo .rfh-img.rfh-color{-webkit-mask-image:radial-gradient(circle 240px at var(--rfh-mx,62%) var(--rfh-my,38%),#000 0 42%,transparent 74%);mask-image:radial-gradient(circle 240px at var(--rfh-mx,62%) var(--rfh-my,38%),#000 0 42%,transparent 74%)}
.rfh-hero__grain{position:absolute;inset:-60px;z-index:4;pointer-events:none;opacity:.09;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/></filter><rect width='240' height='240' filter='url(%23n)' opacity='.9'/></svg>");animation:rfhGrain .9s steps(4) infinite}
@keyframes rfhGrain{25%{transform:translate(-2%,1%)}50%{transform:translate(2%,-2%)}75%{transform:translate(-1%,-1%)}}
.rfh-hero__scrim{position:absolute;inset:0;z-index:3;background:linear-gradient(180deg,rgba(14,14,16,.5) 0%,rgba(14,14,16,.12) 42%,rgba(14,14,16,.8) 88%,var(--rfh-ink) 100%)}
/* letterbox + metadatos de rodaje */
.rfh-bar{position:absolute;left:0;right:0;z-index:5;background:#000;transition:height 1.2s cubic-bezier(.7,0,.2,1);overflow:hidden}
.rfh-bar-t{top:0;height:50.5%}.rfh-bar-b{bottom:0;height:50.5%}
.rfh-hero.letter .rfh-bar-t,.rfh-hero.letter .rfh-bar-b{height:9vh}
.rfh-hero.open .rfh-bar-t,.rfh-hero.open .rfh-bar-b{height:0}
.rfh-bar__meta{position:absolute;left:34px;right:34px;display:flex;justify-content:space-between;font-family:var(--rfh-oswald);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:rgba(237,234,228,.4);opacity:0;transition:opacity .8s ease .6s}
.rfh-bar-t .rfh-bar__meta{bottom:12px}.rfh-bar-b .rfh-bar__meta{top:12px}
.rfh-hero.letter .rfh-bar__meta{opacity:1}
.rfh-bar__meta .rfh-tcw b{color:var(--rfh-gold);font-weight:500}
.rfh-bar__meta .rfh-rec::before{content:"●";color:#c0392b;margin-right:8px;animation:rfhBlink 1.6s steps(1) infinite}
@keyframes rfhBlink{50%{opacity:.25}}
.rfh-hero__progress{position:absolute;bottom:0;left:0;height:2px;width:0;background:var(--rfh-gold);z-index:6;opacity:.85}
.rfh-hero.letter .rfh-hero__progress{transition:width 7.4s linear;width:100%}
.rfh-hero.open .rfh-hero__progress{opacity:0;transition:opacity .4s}
/* líneas narrativas tipo títulos de film */
.rfh-films{position:absolute;inset:0;z-index:6;display:flex;align-items:center;justify-content:center;pointer-events:none}
.rfh-fl{position:absolute;max-width:94%;text-align:center;font-family:var(--rfh-oswald);font-weight:600;text-transform:uppercase;font-size:clamp(54px,9vw,150px);line-height:.98;letter-spacing:.01em;color:#F5F2EC;opacity:0;transition:opacity .4s ease;filter:drop-shadow(0 4px 24px rgba(0,0,0,.5))}
.rfh-fl b{color:var(--rfh-gold);font-weight:600}
.rfh-fl .rfh-fwm{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.06em;margin-bottom:-.06em}
.rfh-fl .rfh-fw{display:inline-block;transform:translateY(112%) rotate(1.2deg);transition:transform .8s var(--rfh-ease-out)}
.rfh-fl.on{opacity:1}
.rfh-fl.on .rfh-fw{transform:none;transition-delay:calc(var(--j)*110ms)}
.rfh-fl.off{opacity:0;filter:blur(6px);transform:translateY(-26px) scale(.985);transition:all .6s var(--rfh-ease-in-out)}
.rfh-fl .rfh-sc{display:block;font-size:clamp(12px,1vw,15px);font-weight:400;letter-spacing:.44em;color:var(--rfh-gold);margin-bottom:22px;text-indent:.44em}
/* estado final (la venta) */
.rfh-hero__settle{position:absolute;left:0;right:0;bottom:0;z-index:7;padding:0 34px 56px;max-width:1280px;margin:0 auto} /* centrado como .rfh-wrap: márgenes reales en pantallas anchas */
.rfh-st{opacity:0;filter:blur(12px);transform:translateY(26px);transition:all .9s cubic-bezier(.16,1,.3,1)}
.rfh-hero__settle.go .rfh-st{opacity:1;filter:blur(0);transform:none}
.rfh-hero__settle.go .rfh-st.rfh-t1{transition-delay:.15s}
.rfh-hero__settle.go .rfh-st.rfh-t2{transition-delay:.32s}
.rfh-hero__settle.go .rfh-st.rfh-t3{transition-delay:.5s}
.rfh-hero__settle.go .rfh-st.rfh-t4{transition-delay:.68s}
.rfh-hero__settle.go .rfh-st.rfh-t5{transition-delay:.9s}
.rfh-hero__overline{font-family:var(--rfh-oswald);font-size:13px;letter-spacing:.32em;text-transform:uppercase;color:var(--rfh-gold);margin-bottom:16px}
.rfh-hero h1{font-family:var(--rfh-oswald);font-weight:500;text-transform:uppercase;font-size:clamp(42px,6.6vw,96px);line-height:1.02;letter-spacing:.01em;color:var(--rfh-txt)}
.rfh-hero h1 .rfh-k{display:block;font-size:13px;font-weight:400;letter-spacing:.34em;text-transform:uppercase;color:var(--rfh-gold);margin-bottom:16px;text-indent:.02em}
.rfh-hero h1 .rfh-w{display:inline-block;opacity:0}
.rfh-hero__settle.go h1 .rfh-w{animation:rfhWordUp .75s var(--rfh-ease-out) both;animation-delay:calc(.3s + var(--i)*75ms)}
@keyframes rfhWordUp{from{opacity:0;filter:blur(7px);transform:translateY(26px);letter-spacing:.06em}to{opacity:1;filter:blur(0);transform:none;letter-spacing:.01em}}
.rfh-hero h1 .rfh-w.rfh-g{color:var(--rfh-gold)}
.rfh-hero__sub{max-width:580px;font-size:17px;color:var(--rfh-txt);margin:22px 0 30px;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.rfh-hero__ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px}
.rfh-hero__proof{display:flex;gap:34px;flex-wrap:wrap;border-top:1px solid var(--rfh-hair);padding-top:18px;font-family:var(--rfh-oswald);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--rfh-txt-dim)}
.rfh-hero__proof span b{color:var(--rfh-gold);font-weight:500}
.rfh-hero__hint{position:absolute;right:34px;bottom:56px;z-index:8;font-family:var(--rfh-oswald);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--rfh-txt-dim);border:1px solid var(--rfh-hair);border-radius:999px;padding:9px 14px;opacity:0;transition:opacity .8s}
.rfh-hero__hint.on{opacity:1}.rfh-hero__hint b{color:var(--rfh-gold);font-weight:500}
.rfh-hero__skip{position:absolute;right:34px;bottom:14px;z-index:9;background:none!important;border:none!important;box-shadow:none!important;min-width:0!important;min-height:0!important;width:auto!important;padding:6px!important;color:var(--rfh-txt-dim);font-family:var(--rfh-oswald);font-size:11px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;opacity:.75}
.rfh-hero__skip:hover{color:var(--rfh-gold)}
.rfh-hero.done .rfh-hero__skip{display:none}

/* ---------- secciones comunes ---------- */
.rfh-wrap{max-width:1280px;margin:0 auto;padding:0 34px}
.rfh-numhead{display:flex;align-items:baseline;gap:18px;margin-bottom:14px}
.rfh-numhead .rfh-n{font-family:var(--rfh-oswald);font-size:64px;font-weight:600;color:var(--rfh-gold);line-height:1}
.rfh-numhead .rfh-ol{font-family:var(--rfh-oswald);font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--rfh-txt-dim)}
.rfh-numhead .rfh-ol::before{content:"";display:inline-block;width:34px;height:1px;background:var(--rfh-gold);vertical-align:middle;margin-right:12px}
#rfh2 h2{font-family:var(--rfh-oswald);font-weight:500;text-transform:uppercase;font-size:clamp(30px,3.6vw,52px);line-height:1.1;margin-bottom:18px;color:var(--rfh-txt)}
.rfh-lead{max-width:640px;color:var(--rfh-txt-dim);font-size:16.5px}
/* reveals IO (P-B) */
.rfh-rv{opacity:0;transform:translateY(34px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}
.rfh-rv.in{opacity:1;transform:none}
.rfh-rv.rfh-lag1{transition-delay:.12s}.rfh-rv.rfh-lag2{transition-delay:.24s}.rfh-rv.rfh-lag3{transition-delay:.36s}

/* ---------- 01 · les trois mondes ---------- */
.rfh-mondes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:54px}
.rfh-monde{position:relative;height:560px;overflow:hidden;border-radius:4px;display:flex;align-items:flex-end}
.rfh-monde__bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.rfh-monde:hover .rfh-monde__bg{transform:scale(1.06)}
.rfh-monde__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,14,16,.05) 30%,rgba(14,14,16,.88) 100%)}
.rfh-monde__txt{position:relative;padding:28px;z-index:2}
.rfh-monde__txt .rfh-ol{font-family:var(--rfh-oswald);font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--rfh-gold);display:block;margin-bottom:8px}
.rfh-monde__txt h3{font-family:var(--rfh-oswald);font-weight:500;font-size:30px;text-transform:uppercase;margin-bottom:8px;color:var(--rfh-txt)}
.rfh-monde__txt p{font-size:14px;color:var(--rfh-txt-dim);margin-bottom:14px;max-width:300px}
.rfh-monde__txt .rfh-lnk{font-family:var(--rfh-oswald);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--rfh-gold)}
.rfh-monde__txt .rfh-lnk::after{content:" →";transition:margin .25s}
.rfh-monde:hover .rfh-lnk::after{margin-left:6px}

/* ---------- banda pains → solución ---------- */
.rfh-pains{padding:64px 0!important;border-top:1px solid var(--rfh-hair)}
.rfh-pains ul{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.rfh-pains li p{color:var(--rfh-txt-dim);font-size:15px;margin-bottom:10px}
.rfh-pains li .rfh-sol{font-family:var(--rfh-oswald);font-size:16px;letter-spacing:.06em;text-transform:uppercase;color:var(--rfh-txt)}
.rfh-pains li .rfh-sol::before{content:"→ ";color:var(--rfh-gold)}
@media (max-width:1020px){.rfh-pains ul{grid-template-columns:1fr;gap:24px}}

/* ---------- 02 · le duo ---------- */
.rfh-duo{background:var(--rfh-ink2)}
.rfh-duo__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;margin-top:54px}
.rfh-duo__photos{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rfh-duo__photos figure{position:relative;overflow:hidden;border-radius:4px}
.rfh-duo__photos img{height:460px!important;width:100%;object-fit:cover;filter:grayscale(12%)} /* !important: el tema trae height:auto!important */
.rfh-duo__photos figcaption{position:absolute;bottom:0;left:0;right:0;padding:14px;font-family:var(--rfh-oswald);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--rfh-gold);background:linear-gradient(180deg,transparent,rgba(14,14,16,.85))}
.rfh-duo__txt p{color:var(--rfh-txt-dim);margin-bottom:16px}
.rfh-duo__txt .rfh-strong{color:var(--rfh-txt);font-weight:400}
.rfh-mark{background:linear-gradient(180deg,transparent 62%,var(--rfh-gold-soft) 62%);color:var(--rfh-gold);padding:0 2px}

/* ---------- 03 · chapitres du jour J ---------- */
.rfh-chapitres{border-top:1px solid var(--rfh-hair);border-bottom:1px solid var(--rfh-hair)}
.rfh-chap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:54px;border-left:1px solid var(--rfh-hair)}
.rfh-chap{border-right:1px solid var(--rfh-hair);padding:0 22px 26px}
.rfh-chap__media{height:190px;margin:0 -22px 20px;background-size:cover;background-position:center;position:relative;overflow:hidden}
.rfh-chap__media::after{content:"▸ micro-film";position:absolute;bottom:10px;right:10px;font-family:var(--rfh-oswald);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--rfh-txt);background:rgba(14,14,16,.65);padding:4px 8px;border-radius:2px}
.rfh-chap .rfh-cn{font-family:var(--rfh-oswald);font-size:13px;letter-spacing:.2em;color:var(--rfh-gold)}
.rfh-chap h4{font-family:var(--rfh-oswald);font-size:21px;font-weight:500;text-transform:uppercase;margin:8px 0 8px;color:var(--rfh-txt)}
.rfh-chap p{font-size:13.5px;color:var(--rfh-txt-dim)}

/* ---------- 04 · chiffres + citation ---------- */
.rfh-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin:54px 0 90px;text-align:center}
.rfh-stat .rfh-v{font-family:var(--rfh-oswald);font-weight:300;font-size:clamp(46px,5.5vw,76px);color:var(--rfh-txt);line-height:1}
.rfh-stat .rfh-v em{font-style:normal;color:var(--rfh-gold)}
.rfh-stat .rfh-sk{font-family:var(--rfh-oswald);font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--rfh-txt-dim);margin-top:10px;display:block}
.rfh-quote{max-width:900px;margin:0 auto;text-align:center}
.rfh-quote blockquote{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;font-size:clamp(22px,2.6vw,34px);line-height:1.45;color:var(--rfh-txt);border:none;background:none;padding:0}
.rfh-quote cite{display:block;margin-top:22px;font-family:var(--rfh-oswald);font-style:normal;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--rfh-txt-dim)}
.rfh-quote cite b{color:var(--rfh-gold);font-weight:500}

/* ---------- 05 · portfolio strip ---------- */
.rfh-folio{background:var(--rfh-ink2)}
.rfh-folio__row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:54px 0 40px}
.rfh-folio__card{position:relative;height:400px;overflow:hidden;border-radius:4px;display:block}
.rfh-folio__card .rfh-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.rfh-folio__card:hover .rfh-bg{transform:scale(1.05)}
.rfh-folio__card .rfh-cap{position:absolute;bottom:0;left:0;right:0;padding:20px;background:linear-gradient(180deg,transparent,rgba(14,14,16,.9));font-family:var(--rfh-oswald)}
.rfh-folio__card .rfh-cap .rfh-t{font-size:19px;text-transform:uppercase;font-weight:500;color:var(--rfh-txt)}
.rfh-folio__card .rfh-cap .rfh-s{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--rfh-gold)}
.rfh-center{text-align:center}

/* ---------- CTA final ---------- */
.rfh-final{position:relative;min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:0!important}
.rfh-final__bg{position:absolute;inset:0;background-size:cover;background-position:center 35%;transform:scale(1.02)}
.rfh-final__scrim{position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(14,14,16,.45) 0%,rgba(14,14,16,.9) 100%)}
.rfh-final__inner{position:relative;z-index:2;padding:80px 34px}
.rfh-final h2{font-size:clamp(38px,5vw,72px)}
.rfh-final p{color:var(--rfh-txt-dim);max-width:520px;margin:0 auto 34px}
.rfh-final .rfh-micro{font-family:var(--rfh-oswald);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--rfh-txt-dim);margin-top:22px}
.rfh-final .rfh-micro b{color:var(--rfh-gold);font-weight:500}

/* ---------- bloque editorial SEO ---------- */
.rfh-seo{padding:84px 0!important;border-top:1px solid var(--rfh-hair)}
.rfh-seo .rfh-wrap{max-width:820px}
.rfh-seo h2{font-size:clamp(26px,3vw,40px)}
.rfh-seo__txt{color:var(--rfh-txt-dim);font-size:15.5px;display:grid;gap:16px;margin-top:22px}

/* ---------- responsive ---------- */
@media (max-width:1020px){
  .rfh-nav__pill{display:none}
  .rfh-nav__burger{display:flex!important}
  .rfh-mondes{grid-template-columns:1fr;gap:14px}
  .rfh-monde{height:420px}
  .rfh-duo__grid{grid-template-columns:1fr;gap:44px}
  .rfh-chap-grid{grid-template-columns:1fr 1fr;border-left:none}
  .rfh-chap{border-left:1px solid var(--rfh-hair);margin-bottom:26px}
  .rfh-stats{grid-template-columns:1fr 1fr;gap:40px 16px}
  .rfh-folio__row{grid-template-columns:1fr}
  #rfh2 section{padding:80px 0}
}
/* escena 3 (piments-008, retrato): en el crop ancho de desktop prima el producto */
@media (min-width:1021px){
  .rfh-shot.rfh-s3 .rfh-img{background-position:58% 66%!important}
}
/* pantallas panorámicas: banda vertical más corta → caja centrada + laterales del hero alineados al contenedor */
@media (min-width:1700px){
  .rfh-shot.rfh-s3 .rfh-img{background-position:58% 74%!important}
}
@media (min-width:1348px){
  .rfh-hero__hint{right:calc((100vw - 1280px)/2 + 34px)}
  .rfh-hero__skip{right:calc((100vw - 1280px)/2 + 34px)}
}
@media (max-width:640px){
  .rfh-nav__logo img{height:52px}
  /* sin pans ni zoom en móvil: cover en vertical ya recorta bastante; el rack focus (blur) se mantiene */
  .rfh-shot.on .rfh-img{animation:none!important;transform:scale(1.03)}
  .rfh-shot--duo.on .rfh-img{animation:none!important;transform:none}
  .rfh-hero__shots{inset:-10px}
  .rfh-duo__photos img{height:280px!important}
  .rfh-nav{padding:16px 18px}
  .rfh-nav.scrolled{padding:10px 18px}
  .rfh-nav__client,.rfh-nav__lang{display:none} /* Client + ES viven en el drawer en móvil */
  .rfh-btn{padding:11px 18px;font-size:12px}
  .rfh-hero__settle{padding:0 18px 44px}
  .rfh-hero__hint{display:none}
  .rfh-wrap{padding:0 18px}
  .rfh-bar__meta{left:18px;right:18px}
  .rfh-hero__skip{right:18px}
}
/* reduced motion (P-H) */
@media (prefers-reduced-motion:reduce){
  .rfh-rv{opacity:1;transform:none;transition:none}
  .rfh-st{opacity:1;filter:none;transform:none;transition:none}
  .rfh-hero h1 .rfh-w{opacity:1}
  .rfh-shot .rfh-img,.rfh-shot--duo.on .rfh-img{animation:none!important}
  .rfh-hero__grain{animation:none}
  .rfh-hero__cue i{animation:none}
}

/* ============================================================
   S262 · MOTION EXTRAS (aprobado Pablo 12/07/2026)
   1) glow dorado H1 · 2) pills d'univers · 3) marquee lento
   Rollback: borrar este bloque (backup: home-v4.css.bak-s262)
   ============================================================ */
/* 1 · glow sutil en las palabras doradas del H1 */
.rfh-hero h1 .rfh-w.rfh-g{text-shadow:0 0 16px rgb(201 154 72/.4),0 0 44px rgb(201 154 72/.16)}

/* 2 · pills d'univers (bajo la línea de proof; solo desktop) */
.rfh-uni{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:24px}
.rfh-uni__lbl{font-family:var(--rfh-oswald);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--rfh-txt-dim);margin-right:6px}
.rfh-uni button{font-family:var(--rfh-oswald);font-weight:500;font-size:11px;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--rfh-txt-dim);background:rgb(14 14 16/.35)!important;border:1px solid var(--rfh-hair)!important;box-shadow:none!important;padding:9px 14px!important;min-width:0!important;min-height:0!important;width:auto!important;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:color .3s,border-color .3s,background .3s}
.rfh-uni button:hover{color:var(--rfh-txt)}
.rfh-uni button.on{color:var(--rfh-gold);border-color:rgb(201 154 72/.65)!important;background:rgb(201 154 72/.08)!important}
@media(max-width:739px){.rfh-uni{display:none}}

/* 3 · marquee lento (separador tras «les trois mondes») */
.rfh-marquee{overflow:hidden;padding:30px 0;border-top:1px solid var(--rfh-hair);border-bottom:1px solid var(--rfh-hair)}
.rfh-marquee__track{display:flex;width:max-content;animation:rfhMq 70s linear infinite}
.rfh-marquee__track span{font-family:var(--rfh-oswald);font-weight:400;font-size:20px;line-height:1;letter-spacing:.3em;text-transform:uppercase;color:rgb(201 154 72/.45);white-space:nowrap;padding-right:.3em}
.rfh-marquee:hover .rfh-marquee__track{animation-play-state:paused}
@keyframes rfhMq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.rfh-marquee__track{animation:none}}
