@font-face{font-family:"Montserrat";src:url("/assets/fonts/Montserrat-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/assets/fonts/Montserrat-Medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/assets/fonts/Montserrat-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/assets/fonts/Montserrat-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/assets/fonts/Montserrat-Italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/assets/fonts/Montserrat-BoldItalic.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}




@font-face{font-family:"Brown";src:url("/assets/fonts/Brown-Light.woff") format("woff");font-weight:300;font-display:swap}
body{margin:0}
a{color:inherit}
.pg{font-family:"Montserrat",Helvetica,Arial,sans-serif;color:#3a3a3a;background:#fff;-webkit-font-smoothing:antialiased}
.pg *{box-sizing:border-box}
.pg :focus-visible{outline:2px solid #d18518;outline-offset:2px}
.wrap{max-width:1248px;margin:0 auto}
.eyebrow{margin:0;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.navy .eyebrow{color:#d18518}
.h2{margin:16px 0 0;font-size:40px;line-height:1.22;font-weight:700;color:#17202d}
.navy .h2{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:16px 26px;border-radius:6px;font:700 19px/1 "Montserrat",sans-serif;text-decoration:none;border:1px solid transparent;transition:background-color 160ms ease-out,border-color 160ms ease-out;cursor:pointer}
.btn-p{background:#d18518;color:#fff}.btn-p:hover{background:#b87314}
.btn-g{background:transparent;color:#fff;border-color:#9e9087}.btn-g:hover{background:rgba(255,255,255,.06)}
.lang{display:flex;gap:2px;border:1px solid #3a4657;border-radius:6px;padding:2px}
.lang button{font:600 13px/1 "Montserrat",sans-serif;letter-spacing:.06em;background:transparent;color:#c9c0b8;border:0;border-radius:4px;padding:9px 10px;min-width:40px;cursor:pointer}
.lang button.on{background:#d18518;color:#fff}
.nav a{font-size:15px;font-weight:600;color:#fff;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover{color:#d18518}
.nav a.on{color:#d18518;border-bottom-color:#d18518}

/* Hero por audiencias */
.hero{background-color:#17202d;background-image:url("/assets/img/11be7576d20dabf8d30bbf1e36a05f50.webp");background-size:cover;background-position:center}
.slide-img{width:100%;height:100%;object-fit:cover;display:block;animation:fadein 600ms ease-out}
.slide-txt{animation:fadein 500ms ease-out}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.aud-tab{flex:1 1 0;min-width:0;background:transparent;border:0;border-top:2px solid #3a4657;padding:18px 4px 0;text-align:left;cursor:pointer;color:#9e9087;font:600 15px/1.3 "Montserrat",sans-serif;transition:color 160ms ease-out,border-color 160ms ease-out}
.aud-tab:hover{color:#fff}
.aud-tab.on{color:#fff;border-top-color:#d18518}
.aud-tab .n{display:block;font-size:12px;letter-spacing:.18em;color:#d18518;margin-bottom:6px}
.chip{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.04em}

/* Qué estructuramos */
.tile{border-radius:12px;overflow:hidden;position:relative}

/* Frases de cine */
.quote{animation:fadein 700ms ease-out}
.qdot{width:44px;height:44px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.qdot span{width:10px;height:10px;border-radius:50%;background:rgba(23,32,45,.35);transition:background-color 160ms ease-out,transform 160ms ease-out}
.qdot.on span{background:#17202d;transform:scale(1.3)}
.qarrow{width:52px;height:52px;border-radius:50%;border:1px solid #17202d;background:transparent;color:#17202d;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.qarrow:hover{background:#17202d;color:#d18518}

/* Cómo trabajamos: línea de montaje */
.tl{background:#0e141d;border-radius:12px;padding:20px 24px 28px;position:relative}
.tl-ruler{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-left:132px;font-size:11px;letter-spacing:.12em;color:#606f82;border-bottom:1px solid #2c3746;padding-bottom:10px}
.tl-ruler span{border-left:1px solid #2c3746;padding-left:8px}
.tl-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;margin-top:12px}
.tl-label{font-size:11px;font-weight:700;letter-spacing:.14em;color:#9e9087;text-transform:uppercase}
.tl-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;position:relative}
.clip{height:64px;border-radius:6px;border:0;padding:0 14px;text-align:left;background:#2c3746;color:#c9c0b8;font:600 15px/1.25 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,color 160ms ease-out;display:flex;align-items:center;gap:10px}
.clip:hover{background:#3a4657;color:#fff}
.clip.on{background:#d18518;color:#17202d}
.clip .cn{font-size:12px;letter-spacing:.14em;opacity:.8}
.wave{height:26px;border-radius:4px;background-color:#1f2a3a;background-image:repeating-linear-gradient(90deg,#4a5566 0 2px,transparent 2px 6px);opacity:.9}
.wave.on{background-image:repeating-linear-gradient(90deg,#9e9087 0 2px,transparent 2px 6px)}
.wave.off{background:transparent}
.playhead{position:absolute;top:8px;bottom:8px;width:2px;background:#d18518;transition:left 400ms ease-out;pointer-events:none}
.playhead::before{content:"";position:absolute;top:-2px;left:-7px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #d18518}

/* Vídeo */
.vposter{position:relative;display:block;width:100%;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:#000}
.vposter img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform 500ms ease-out}
.vposter:hover img{transform:scale(1.02)}
.play{width:88px;height:88px;border-radius:50%;background:#d18518;display:flex;align-items:center;justify-content:center;transition:background-color 160ms ease-out}
.vposter:hover .play{background:#b87314}
.play::before{content:"";margin-left:6px;border-left:26px solid #fff;border-top:16px solid transparent;border-bottom:16px solid transparent}
.backdrop{position:fixed;inset:0;background:rgba(14,20,29,.92);z-index:40;animation:fadein 200ms ease-out}
.vbox{position:fixed;z-index:41;background:#0e141d;border-radius:12px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.35)}
.vbox.modal{left:50%;top:50%;transform:translate(-50%,-50%);width:min(1100px,92vw)}
.vbox.mini{right:24px;bottom:24px;width:360px}
.vbox video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.vbar{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 18px;color:#fff;font-size:14px;font-weight:600}
.vbtn{min-width:44px;height:44px;border-radius:6px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 13px/1 "Montserrat",sans-serif;padding:0 12px;cursor:pointer}
.vbtn:hover{border-color:#d18518;color:#d18518}


.flink{color:#17202d;text-decoration:none}.flink:hover{text-decoration:underline;text-underline-offset:3px}

.aud-tab{font-size:17px}
/* ── Movimiento: revelado al hacer scroll + parallax (CSS ligado al scroll) ── */
@keyframes upin{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes sealin{from{opacity:0;transform:rotate(-120deg) scale(.7)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: no-preference) {
  .hero .hero-grid > div > *{animation:upin 1000ms cubic-bezier(.2,.7,.2,1) both}
  .hero .hero-grid > div > *:nth-child(1){animation-delay:150ms}
  .hero .hero-grid > div > *:nth-child(2){animation-delay:350ms}
  .hero .hero-grid > div > *:nth-child(3){animation-delay:600ms}
  .hero .hero-grid > div > *:nth-child(4){animation-delay:850ms}
  .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both}
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes rv{from{opacity:0;transform:translateY(90px)}to{opacity:1;transform:none}}
    @keyframes wipe{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
    @keyframes pan{from{object-position:50% 0%}to{object-position:50% 100%}}
    @keyframes zoomout{from{transform:scale(1.3)}to{transform:scale(1)}}
    @keyframes bgdrift{from{background-position:50% 50%}to{background-position:50% 120%}}
    @keyframes sealturn{from{transform:none}to{transform:rotate(-70deg) translateY(60px)}}
    .what-grid > figure:nth-child(2),.g3 > .person:nth-child(2){animation-range:entry 15% cover 45%}
    .g3 > .person:nth-child(3){animation-range:entry 30% cover 55%}
    .what-grid > figure img,.g3 > .person img{animation:pan linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
    .vposter img{animation:zoomout linear both;animation-timeline:view();animation-range:entry 0% cover 60%}
    .hero{animation:bgdrift linear both;animation-timeline:view();animation-range:exit}
    .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both,sealturn linear both;animation-timeline:auto,view();animation-range:normal,exit}
  }
}
/* ── Pie: el anillo del sello ── */
.foot{position:relative;background:#17202d;color:#c9c0b8;padding:24px 64px 28px;overflow:hidden}
.fring-wrap{position:relative;width:min(840px,100%);aspect-ratio:840/470;margin:0 auto;overflow:hidden}
.fring{position:absolute;left:0;top:0;width:100%;height:auto;overflow:visible}
.fring circle{fill:none;stroke:rgba(255,255,255,.55);stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-dasharray:1 1;stroke-dashoffset:0}
.fring circle.inner{stroke:rgba(158,144,135,.28);stroke-width:1}
.fin{position:absolute;inset:0;padding:11% 18% 0;display:flex;flex-direction:column;align-items:center;text-align:center}
.fmark{height:50px;width:auto;display:block}
.fdesc{margin-top:10px;font-family:"Brown",Montserrat,sans-serif;font-weight:300;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:#9e9087}
.fnav{display:grid;grid-template-columns:repeat(3,auto);justify-content:center;margin-top:34px;row-gap:4px}
.fnav a{color:#fff;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:7px 26px;border-left:1px solid rgba(255,255,255,.14);transition:color 200ms}
.fnav a:nth-child(3n+1){border-left:0}
.fnav a:hover,.fnav a.on{color:#d18518}
.frule{display:block;width:56px;height:1px;background:#d18518;margin:30px 0 22px}
.ftag{margin:0;font-size:15px;line-height:1.5;font-style:italic;color:#9e9087;max-width:440px}
.fmail{margin-top:12px;color:#fff;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:.02em}.fmail:hover{color:#d18518}
.ftop{position:absolute;right:40px;bottom:130px;writing-mode:vertical-rl;transform:rotate(180deg);background:none;border:0;color:#c9c0b8;font:700 11px/1 inherit;font-family:inherit;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:8px}.ftop:hover{color:#d18518}
.fbar{border-top:1px solid #2c3746;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:#9e9087;max-width:1312px;margin:0 auto}
.fbar a{color:#9e9087;text-decoration:none}.fbar a:hover{color:#fff}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes ringdraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
    @keyframes finup{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
    .fring-wrap{view-timeline-name:--ring}
    .fring circle.inner{animation-range:entry 15% cover 65%}
  }
}
.jsmotion .fring-wrap.rv-js{transform:none}
.jsmotion .fring-wrap.rv-js circle{stroke-dashoffset:1;transition:stroke-dashoffset 2400ms cubic-bezier(.4,0,.2,1)}
.jsmotion .fring-wrap.in circle{stroke-dashoffset:0}
@media (max-width:1100px){
  .foot{padding:56px 16px 24px}
  .fring-wrap{aspect-ratio:auto;width:100%;overflow:hidden}
  .fring{width:170%;left:-35%;top:0}
  .fin{position:relative;inset:auto;padding:48px 4px 56px}
  .fnav{grid-template-columns:repeat(2,auto)}
  .fnav a{padding:7px 18px;border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(3n+1){border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(2n+1){border-left:0}
  .ftop{display:none}
  .fbar{flex-direction:column}
}
/* ── Menú móvil ── */
html{scroll-behavior:smooth}
#quien,#cierre{scroll-margin-top:84px}
.burger{display:none;width:44px;height:44px;border:1px solid #3a4657;border-radius:6px;background:transparent;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0}
.burger span{display:block;width:20px;height:2px;background:#fff;transition:transform 200ms ease-out,opacity 200ms ease-out}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mmenu{position:fixed;left:0;right:0;top:64px;bottom:0;z-index:19;background:#17202d;padding:32px 16px calc(32px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:4px;overflow-y:auto;animation:fadein 200ms ease-out}
.mmenu a.ml{display:block;padding:14px 0;border-bottom:1px solid #2c3746;font-size:26px;font-weight:700;color:#fff;text-decoration:none}
.mmenu a.ml.on{color:#d18518}
@media (max-width:1100px){
  .burger{display:flex}
  .pg > header{height:64px !important;padding:0 16px !important;gap:12px !important}
  .pg > header > a:first-child img{height:38px !important;width:auto !important}
  .pg > header .lang{margin-left:auto}
  .pg > header > .btn{display:none !important}
  .hero-seal{display:none !important}
  .hero .btn,.sec .btn{width:100%}
  .hero{padding-top:48px !important}
  #cierre h2{font-size:34px !important}
  .hero-title{font-size:36px !important}
  .mmenu{top:64px}
}
@media (min-width:1281px){.mmenu{display:none}}
@media (min-width:821px) and (max-width:1280px){
  .burger{display:flex}
  .nav{display:none !important}
  .pg > header .lang{margin-left:auto}
  .mmenu{top:84px;padding-left:64px;padding-right:64px}
}

/* ── Páginas de perfil ── */
.pimg{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#f2f1ef}
.pimg img{display:block;width:100%;height:100%;object-fit:cover}
.pimg .col{position:absolute;inset:0;clip-path:inset(0 0 0 0);transition:clip-path 900ms cubic-bezier(.6,0,.2,1)}
.pimg:hover .col{clip-path:inset(0 0 0 100%)}
.pimg .sweep{position:absolute;top:0;bottom:0;left:0;width:3px;background:#d18518;box-shadow:0 0 18px rgba(209,133,24,.8);opacity:0;pointer-events:none}
@media (prefers-reduced-motion: no-preference){
  @keyframes colorin{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
  @keyframes sweep{0%{left:0;opacity:1}90%{opacity:1}100%{left:100%;opacity:0}}
  .pimg .col{animation:colorin 1900ms cubic-bezier(.6,0,.2,1) 900ms backwards}
  .pimg .sweep{animation:sweep 1900ms cubic-bezier(.6,0,.2,1) 900ms both}
}
.faqgrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:72px;align-items:start}
.faqink{margin:0;aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:#f2f1ef}
.faqink img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;mix-blend-mode:multiply;filter:contrast(1.08) brightness(1.04)}
@media (max-width:1024px){
  .faqgrid{grid-template-columns:1fr !important;gap:40px}
  .faqink{order:-1;aspect-ratio:16/9}
}
.pimg .esc{position:absolute;left:16px;top:16px;background:#17202d;color:#d18518;border-radius:3px;padding:7px 10px;font-size:12px;font-weight:700;letter-spacing:.18em}
.keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #c9c0b8;margin-top:48px}
.key{padding:40px 40px 8px 0;display:flex;flex-direction:column;gap:14px;min-width:0}
.key + .key{padding-left:40px;border-left:1px solid #c9c0b8}
.kdisc{width:52px;height:52px;border-radius:50%;background:#17202d;display:flex;align-items:center;justify-content:center}
.kdisc img{width:24px;height:24px;filter:brightness(0) invert(1)}
.key h3{margin:8px 0 0;font-size:28px;line-height:1.2;font-weight:700;color:#17202d}
.key p{margin:0;font-size:17px;line-height:1.5}
/* flujo de financiación */
.flow{display:grid;grid-template-columns:minmax(0,1fr) 112px minmax(0,1fr) 112px minmax(0,1fr);align-items:stretch;margin-top:48px}
.fnode{background:#1f2a3a;border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:10px}
.fnode.mid{background:#d18518}
.fnode.mid h3,.fnode.mid p{color:#17202d !important}
.fnode h3{margin:0;font-size:23px;font-weight:700;color:#fff}
.fnode p{margin:0;font-size:16px;line-height:1.5;color:#c9c0b8}
.farrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#d18518}
.farrow i{display:block;width:72px;height:2px;background:#d18518;position:relative}
.farrow i::after{content:"";position:absolute;right:-2px;top:-5px;border-left:10px solid #d18518;border-top:6px solid transparent;border-bottom:6px solid transparent}
.checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 40px}
.checks li{display:grid;grid-template-columns:24px 1fr;gap:10px;font-size:17px;line-height:1.45;color:#fff}
.checks li::before{content:"✔";color:#d18518;font-weight:700}
/* calculadora */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:start;margin-top:48px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.amt{min-height:48px;padding:0 20px;border-radius:999px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 16px/1 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,border-color 160ms ease-out}
.amt:hover{border-color:#d18518}
.amt.on{background:#d18518;border-color:#d18518;color:#17202d}
.calc-panel{background:#1f2a3a;border-radius:14px;padding:12px 32px}
.crow{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:22px 0;border-bottom:1px solid #2c3746}
.crow:last-child{border-bottom:0}
.crow span{font-size:15px;color:#9e9087}
.crow b{font-size:40px;line-height:1;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap}
.crow.big b{font-size:60px;color:#d18518}
.points{display:grid;gap:20px;margin-top:40px}
.point h3{margin:0;font-size:19px;font-weight:700;color:#fff}
.point p{margin:6px 0 0;font-size:16px;line-height:1.5;color:#9e9087}
/* guion */
.paper{max-width:820px;margin:48px auto 0;background:#fdfcf9;color:#1b1b1b;border-radius:4px;padding:72px 88px 64px;box-shadow:0 6px 22px rgba(0,0,0,.35);font-family:"Courier Prime","Courier New",monospace;font-size:18px;line-height:1.5;position:relative;transform:rotate(-.6deg)}
.paper .pno{position:absolute;right:56px;top:32px;color:#606060}
.scene{margin:0 0 28px}
.scene b{display:block;font-weight:700;letter-spacing:.02em}
.scene p{margin:8px 0 0}
.fade{text-align:right;font-weight:700;margin-top:8px}
.fadetxt{margin-top:24px;text-align:center;font-weight:700;color:#896614}
/* entradas */
.tickets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px}
.ticket{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);background:#f3eee8;border-radius:12px;min-height:280px;color:#3a3a3a}
.ticket::before,.ticket::after{content:"";position:absolute;left:61px;width:22px;height:22px;border-radius:50%;background:#17202d}
.ticket::before{top:-11px}.ticket::after{bottom:-11px}
.stub{border-right:2px dashed #c9c0b8;display:flex;align-items:center;justify-content:center}
.stub span{transform:rotate(-90deg);white-space:nowrap;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.tbody{padding:28px 28px 28px 32px;display:flex;flex-direction:column;gap:10px;min-width:0}
.tbody .tk{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#896614}
.tbody .tb{font-size:56px;line-height:1;font-weight:700;color:#d18518}
.tbody p{margin:0;font-size:16px;line-height:1.5}
/* preguntas */
.faqs{border-top:1px solid #c9c0b8;margin-top:40px}
.faq{border-bottom:1px solid #c9c0b8}
.faq button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;background:transparent;border:0;padding:26px 0;text-align:left;cursor:pointer;font:700 21px/1.35 "Montserrat",sans-serif;color:#17202d}
.faq button:hover{color:#896614}
.faq .sg{flex:0 0 auto;width:36px;height:36px;border-radius:50%;border:1px solid #c9c0b8;display:flex;align-items:center;justify-content:center;font-size:20px;color:#d18518}
.faq.on .sg{background:#17202d;border-color:#17202d}
.faq .ans{margin:0;padding:0 64px 28px 0;max-width:780px;font-size:17px;line-height:1.6;animation:fadein 300ms ease-out}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .keys > .key:nth-child(2),.tickets > .ticket:nth-child(2),.flow > .fnode:nth-child(3){animation-range:entry 15% cover 45%}
    .keys > .key:nth-child(3),.tickets > .ticket:nth-child(3),.flow > .fnode:nth-child(5){animation-range:entry 30% cover 55%}
    @keyframes inkin{from{clip-path:inset(50% 50% 50% 50% round 12px);opacity:.2}to{clip-path:inset(0 0 0 0 round 12px);opacity:1}}
  }
}
@media (max-width:1100px){
  .keys,.tickets,.checks,.calc{grid-template-columns:1fr !important}
  .key + .key{padding-left:0;border-left:0;border-top:1px solid #c9c0b8}
  .key{padding:28px 0 8px}
  .flow{grid-template-columns:1fr}
  .farrow{flex-direction:row;padding:14px 0}.farrow i{width:2px;height:40px}.farrow i::after{right:-5px;top:auto;bottom:-2px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:10px solid #d18518;border-bottom:0}
  .paper{padding:48px 24px 40px;font-size:15px;transform:none}
  .crow b{font-size:30px}.crow.big b{font-size:42px}
  .faq button{font-size:18px}.faq .ans{padding-right:0}
}
@media (prefers-reduced-motion:reduce){.slide-img,.slide-txt,.quote,.backdrop{animation:none}.playhead{transition:none}}
@media (max-width:1100px){
  .nav{display:none !important}
  .hero-grid,.what-grid,.video-box{grid-template-columns:1fr !important}
  .hero-art{height:auto !important}
  .hero-title{font-size:38px !important}
  .aud-tabs{flex-wrap:wrap}.aud-tab{flex:1 1 45%}
  .g3,.foot-grid{grid-template-columns:1fr !important}
  .sec{padding-left:16px !important;padding-right:16px !important;padding-top:64px !important;padding-bottom:64px !important}
  .h2{font-size:30px}
  .qtext{font-size:36px !important}
  .q-big{font-size:44px !important}
  .hero-seal{width:120px !important;height:120px !important;order:-1}
  .tl-ruler{margin-left:0}.tl-row{grid-template-columns:1fr}.tl-label{display:none}.clip .ct{display:none}
  .vbox.mini{width:calc(100vw - 32px);right:16px;bottom:16px}
}






@font-face{font-family:"Brown";src:url("/assets/fonts/Brown-Light.woff") format("woff");font-weight:300;font-display:swap}
body{margin:0}
a{color:inherit}
.pg{font-family:"Montserrat",Helvetica,Arial,sans-serif;color:#3a3a3a;background:#fff;-webkit-font-smoothing:antialiased}
.pg *{box-sizing:border-box}
.pg :focus-visible{outline:2px solid #d18518;outline-offset:2px}
.wrap{max-width:1248px;margin:0 auto}
.eyebrow{margin:0;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.navy .eyebrow{color:#d18518}
.h2{margin:16px 0 0;font-size:40px;line-height:1.22;font-weight:700;color:#17202d}
.navy .h2{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:16px 26px;border-radius:6px;font:700 19px/1 "Montserrat",sans-serif;text-decoration:none;border:1px solid transparent;transition:background-color 160ms ease-out,border-color 160ms ease-out;cursor:pointer}
.btn-p{background:#d18518;color:#fff}.btn-p:hover{background:#b87314}
.btn-g{background:transparent;color:#fff;border-color:#9e9087}.btn-g:hover{background:rgba(255,255,255,.06)}
.lang{display:flex;gap:2px;border:1px solid #3a4657;border-radius:6px;padding:2px}
.lang button{font:600 13px/1 "Montserrat",sans-serif;letter-spacing:.06em;background:transparent;color:#c9c0b8;border:0;border-radius:4px;padding:9px 10px;min-width:40px;cursor:pointer}
.lang button.on{background:#d18518;color:#fff}
.nav a{font-size:15px;font-weight:600;color:#fff;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover{color:#d18518}
.nav a.on{color:#d18518;border-bottom-color:#d18518}

/* Hero por audiencias */
.hero{background-color:#17202d;background-image:url("/assets/img/11be7576d20dabf8d30bbf1e36a05f50.webp");background-size:cover;background-position:center}
.slide-img{width:100%;height:100%;object-fit:cover;display:block;animation:fadein 600ms ease-out}
.slide-txt{animation:fadein 500ms ease-out}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.aud-tab{flex:1 1 0;min-width:0;background:transparent;border:0;border-top:2px solid #3a4657;padding:18px 4px 0;text-align:left;cursor:pointer;color:#9e9087;font:600 15px/1.3 "Montserrat",sans-serif;transition:color 160ms ease-out,border-color 160ms ease-out}
.aud-tab:hover{color:#fff}
.aud-tab.on{color:#fff;border-top-color:#d18518}
.aud-tab .n{display:block;font-size:12px;letter-spacing:.18em;color:#d18518;margin-bottom:6px}
.chip{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.04em}

/* Qué estructuramos */
.tile{border-radius:12px;overflow:hidden;position:relative}

/* Frases de cine */
.quote{animation:fadein 700ms ease-out}
.qdot{width:44px;height:44px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.qdot span{width:10px;height:10px;border-radius:50%;background:rgba(23,32,45,.35);transition:background-color 160ms ease-out,transform 160ms ease-out}
.qdot.on span{background:#17202d;transform:scale(1.3)}
.qarrow{width:52px;height:52px;border-radius:50%;border:1px solid #17202d;background:transparent;color:#17202d;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.qarrow:hover{background:#17202d;color:#d18518}

/* Cómo trabajamos: línea de montaje */
.tl{background:#0e141d;border-radius:12px;padding:20px 24px 28px;position:relative}
.tl-ruler{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-left:132px;font-size:11px;letter-spacing:.12em;color:#606f82;border-bottom:1px solid #2c3746;padding-bottom:10px}
.tl-ruler span{border-left:1px solid #2c3746;padding-left:8px}
.tl-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;margin-top:12px}
.tl-label{font-size:11px;font-weight:700;letter-spacing:.14em;color:#9e9087;text-transform:uppercase}
.tl-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;position:relative}
.clip{height:64px;border-radius:6px;border:0;padding:0 14px;text-align:left;background:#2c3746;color:#c9c0b8;font:600 15px/1.25 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,color 160ms ease-out;display:flex;align-items:center;gap:10px}
.clip:hover{background:#3a4657;color:#fff}
.clip.on{background:#d18518;color:#17202d}
.clip .cn{font-size:12px;letter-spacing:.14em;opacity:.8}
.wave{height:26px;border-radius:4px;background-color:#1f2a3a;background-image:repeating-linear-gradient(90deg,#4a5566 0 2px,transparent 2px 6px);opacity:.9}
.wave.on{background-image:repeating-linear-gradient(90deg,#9e9087 0 2px,transparent 2px 6px)}
.wave.off{background:transparent}
.playhead{position:absolute;top:8px;bottom:8px;width:2px;background:#d18518;transition:left 400ms ease-out;pointer-events:none}
.playhead::before{content:"";position:absolute;top:-2px;left:-7px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #d18518}

/* Vídeo */
.vposter{position:relative;display:block;width:100%;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:#000}
.vposter img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform 500ms ease-out}
.vposter:hover img{transform:scale(1.02)}
.play{width:88px;height:88px;border-radius:50%;background:#d18518;display:flex;align-items:center;justify-content:center;transition:background-color 160ms ease-out}
.vposter:hover .play{background:#b87314}
.play::before{content:"";margin-left:6px;border-left:26px solid #fff;border-top:16px solid transparent;border-bottom:16px solid transparent}
.backdrop{position:fixed;inset:0;background:rgba(14,20,29,.92);z-index:40;animation:fadein 200ms ease-out}
.vbox{position:fixed;z-index:41;background:#0e141d;border-radius:12px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.35)}
.vbox.modal{left:50%;top:50%;transform:translate(-50%,-50%);width:min(1100px,92vw)}
.vbox.mini{right:24px;bottom:24px;width:360px}
.vbox video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.vbar{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 18px;color:#fff;font-size:14px;font-weight:600}
.vbtn{min-width:44px;height:44px;border-radius:6px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 13px/1 "Montserrat",sans-serif;padding:0 12px;cursor:pointer}
.vbtn:hover{border-color:#d18518;color:#d18518}

/* Equipo */
.person{position:relative;border-radius:12px;overflow:hidden;background:#17202d;margin:0;outline:none;cursor:default}
.person img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform 600ms ease-out}
.person::after{content:"";position:absolute;inset:0;background:#17202d;opacity:0;transition:opacity 300ms ease-out;z-index:1}
.person .mono{position:absolute;top:20px;right:24px;z-index:2;font-size:96px;line-height:1;font-weight:700;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1.5px #d18518;opacity:0;transition:opacity 300ms ease-out}
.person .cap{position:absolute;left:0;right:0;bottom:0;z-index:3;background:#17202d;padding:22px 28px 26px}
.person .role{display:block;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#d18518}
.person .name{display:block;margin-top:8px;font-size:28px;line-height:1.15;font-weight:700;letter-spacing:-.01em;color:#fff}
.person .more{display:block;max-height:0;opacity:0;overflow:hidden;transition:max-height 400ms ease-out,opacity 250ms ease-out}
.person .rule{display:block;width:48px;height:2px;background:#d18518;margin:18px 0 14px}
.person .bio{display:block;font-size:16px;line-height:1.55;color:#c9c0b8}
.person:hover::after,.person:focus::after,.person:focus-within::after{opacity:.55}
.person:hover .mono,.person:focus .mono,.person:focus-within .mono{opacity:.9}
.person:hover .more,.person:focus .more,.person:focus-within .more{max-height:260px;opacity:1}
.person:hover img{transform:scale(1.04)}
.flink{color:#17202d;text-decoration:none}.flink:hover{text-decoration:underline;text-underline-offset:3px}

.aud-tab{font-size:17px}
.qs-arena{--qby:#896614;--qbg:#f3eee8;--qink:#17202d;--qdim:rgba(23,32,45,.3);background:var(--qbg);border-top:1px solid #c9c0b8;border-bottom:1px solid #c9c0b8}
.qs-noche{--qby:#d18518;--qbg:#0e141d;--qink:#ffffff;--qdim:rgba(255,255,255,.3);background:var(--qbg)}
.qmark{display:block;font-size:120px;line-height:.6;font-weight:700;color:#d18518}
.qby{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:28px;font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--qby)}.qby cite{font-style:normal}.qby .qline{display:block;width:36px;height:1px;background:currentColor}.qby .qyear{font-weight:500;opacity:.75}.qby .qyear::before{content:"·";margin-right:14px}
.qtext{margin:0;font-size:60px;line-height:1.12;font-weight:700;font-style:italic;color:var(--qink)}
.qdot span{background:var(--qdim)}
.qdot.on span{background:#d18518}
.qarrow{border-color:var(--qink) !important;color:var(--qink) !important}
.qarrow:hover{background:var(--qink) !important;color:#d18518 !important}
/* ── Movimiento: revelado al hacer scroll + parallax (CSS ligado al scroll) ── */
@keyframes upin{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes sealin{from{opacity:0;transform:rotate(-120deg) scale(.7)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: no-preference) {
  .hero .hero-grid > div > *{animation:upin 1000ms cubic-bezier(.2,.7,.2,1) both}
  .hero .hero-grid > div > *:nth-child(1){animation-delay:150ms}
  .hero .hero-grid > div > *:nth-child(2){animation-delay:350ms}
  .hero .hero-grid > div > *:nth-child(3){animation-delay:600ms}
  .hero .hero-grid > div > *:nth-child(4){animation-delay:850ms}
  .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both}
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes rv{from{opacity:0;transform:translateY(90px)}to{opacity:1;transform:none}}
    @keyframes wipe{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
    @keyframes pan{from{object-position:50% 0%}to{object-position:50% 100%}}
    @keyframes zoomout{from{transform:scale(1.3)}to{transform:scale(1)}}
    @keyframes bgdrift{from{background-position:50% 50%}to{background-position:50% 120%}}
    @keyframes sealturn{from{transform:none}to{transform:rotate(-70deg) translateY(60px)}}
    .what-grid > figure:nth-child(2),.g3 > .person:nth-child(2){animation-range:entry 15% cover 45%}
    .g3 > .person:nth-child(3){animation-range:entry 30% cover 55%}
    .what-grid > figure img,.g3 > .person img{animation:pan linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
    .vposter img{animation:zoomout linear both;animation-timeline:view();animation-range:entry 0% cover 60%}
    .hero{animation:bgdrift linear both;animation-timeline:view();animation-range:exit}
    .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both,sealturn linear both;animation-timeline:auto,view();animation-range:normal,exit}
  }
}
/* ── Pie: el anillo del sello ── */
.foot{position:relative;background:#17202d;color:#c9c0b8;padding:24px 64px 28px;overflow:hidden}
.fring-wrap{position:relative;width:min(840px,100%);aspect-ratio:840/470;margin:0 auto;overflow:hidden}
.fring{position:absolute;left:0;top:0;width:100%;height:auto;overflow:visible}
.fring circle{fill:none;stroke:rgba(255,255,255,.55);stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-dasharray:1 1;stroke-dashoffset:0}
.fring circle.inner{stroke:rgba(158,144,135,.28);stroke-width:1}
.fin{position:absolute;inset:0;padding:11% 18% 0;display:flex;flex-direction:column;align-items:center;text-align:center}
.fmark{height:50px;width:auto;display:block}
.fdesc{margin-top:10px;font-family:"Brown",Montserrat,sans-serif;font-weight:300;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:#9e9087}
.fnav{display:grid;grid-template-columns:repeat(3,auto);justify-content:center;margin-top:34px;row-gap:4px}
.fnav a{color:#fff;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:7px 26px;border-left:1px solid rgba(255,255,255,.14);transition:color 200ms}
.fnav a:nth-child(3n+1){border-left:0}
.fnav a:hover,.fnav a.on{color:#d18518}
.frule{display:block;width:56px;height:1px;background:#d18518;margin:30px 0 22px}
.ftag{margin:0;font-size:15px;line-height:1.5;font-style:italic;color:#9e9087;max-width:440px}
.fmail{margin-top:12px;color:#fff;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:.02em}.fmail:hover{color:#d18518}
.ftop{position:absolute;right:40px;bottom:130px;writing-mode:vertical-rl;transform:rotate(180deg);background:none;border:0;color:#c9c0b8;font:700 11px/1 inherit;font-family:inherit;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:8px}.ftop:hover{color:#d18518}
.fbar{border-top:1px solid #2c3746;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:#9e9087;max-width:1312px;margin:0 auto}
.fbar a{color:#9e9087;text-decoration:none}.fbar a:hover{color:#fff}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes ringdraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
    @keyframes finup{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
    .fring-wrap{view-timeline-name:--ring}
    .fring circle.inner{animation-range:entry 15% cover 65%}
  }
}
.jsmotion .fring-wrap.rv-js{transform:none}
.jsmotion .fring-wrap.rv-js circle{stroke-dashoffset:1;transition:stroke-dashoffset 2400ms cubic-bezier(.4,0,.2,1)}
.jsmotion .fring-wrap.in circle{stroke-dashoffset:0}
@media (max-width:1100px){
  .foot{padding:56px 16px 24px}
  .fring-wrap{aspect-ratio:auto;width:100%;overflow:hidden}
  .fring{width:170%;left:-35%;top:0}
  .fin{position:relative;inset:auto;padding:48px 4px 56px}
  .fnav{grid-template-columns:repeat(2,auto)}
  .fnav a{padding:7px 18px;border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(3n+1){border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(2n+1){border-left:0}
  .ftop{display:none}
  .fbar{flex-direction:column}
}
/* ── Menú móvil ── */
html{scroll-behavior:smooth}
#quien,#cierre{scroll-margin-top:84px}
.burger{display:none;width:44px;height:44px;border:1px solid #3a4657;border-radius:6px;background:transparent;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0}
.burger span{display:block;width:20px;height:2px;background:#fff;transition:transform 200ms ease-out,opacity 200ms ease-out}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mmenu{position:fixed;left:0;right:0;top:64px;bottom:0;z-index:19;background:#17202d;padding:32px 16px calc(32px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:4px;overflow-y:auto;animation:fadein 200ms ease-out}
.mmenu a.ml{display:block;padding:14px 0;border-bottom:1px solid #2c3746;font-size:26px;font-weight:700;color:#fff;text-decoration:none}
.mmenu a.ml.on{color:#d18518}
@media (max-width:1100px){
  .burger{display:flex}
  .tl-detail{grid-template-columns:1fr !important;gap:20px !important}
  .tl-detail > span{font-size:72px !important}
  .pg > header{height:64px !important;padding:0 16px !important;gap:12px !important}
  .pg > header > a:first-child img{height:38px !important;width:auto !important}
  .pg > header .lang{margin-left:auto}
  .pg > header > .btn{display:none !important}
  .hero-seal{display:none !important}
  .hero .btn,.sec .btn{width:100%}
  .hero{padding-top:48px !important}
  #cierre h2{font-size:34px !important}
  .hero-title{font-size:36px !important}
  .mmenu{top:64px}
}
@media (min-width:1281px){.mmenu{display:none}}
@media (min-width:821px) and (max-width:1280px){
  .burger{display:flex}
  .nav{display:none !important}
  .pg > header .lang{margin-left:auto}
  .mmenu{top:84px;padding-left:64px;padding-right:64px}
}
@media (prefers-reduced-motion:reduce){.slide-img,.slide-txt,.quote,.backdrop{animation:none}.playhead{transition:none}}
@media (max-width:1100px){
  .nav{display:none !important}
  .hero-grid,.what-grid,.video-box{grid-template-columns:1fr !important}
  .hero-art{height:320px !important}
  .hero-title{font-size:38px !important}
  .aud-tabs{flex-wrap:wrap}.aud-tab{flex:1 1 45%}
  .g3,.foot-grid{grid-template-columns:1fr !important}
  .sec{padding-left:16px !important;padding-right:16px !important;padding-top:64px !important;padding-bottom:64px !important}
  .h2{font-size:30px}
  .qtext{font-size:36px !important}
  .q-big{font-size:44px !important}
  .hero-seal{width:120px !important;height:120px !important;order:-1}
  .tl-ruler{margin-left:0}.tl-row{grid-template-columns:1fr}.tl-label{display:none}.clip .ct{display:none}
  .vbox.mini{width:calc(100vw - 32px);right:16px;bottom:16px}
}






@font-face{font-family:"Brown";src:url("/assets/fonts/Brown-Light.woff") format("woff");font-weight:300;font-display:swap}
body{margin:0}
a{color:inherit}
.pg{font-family:"Montserrat",Helvetica,Arial,sans-serif;color:#3a3a3a;background:#fff;-webkit-font-smoothing:antialiased}
.pg *{box-sizing:border-box}
.pg :focus-visible{outline:2px solid #d18518;outline-offset:2px}
.wrap{max-width:1248px;margin:0 auto}
.eyebrow{margin:0;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.navy .eyebrow{color:#d18518}
.h2{margin:16px 0 0;font-size:40px;line-height:1.22;font-weight:700;color:#17202d}
.navy .h2{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:16px 26px;border-radius:6px;font:700 19px/1 "Montserrat",sans-serif;text-decoration:none;border:1px solid transparent;transition:background-color 160ms ease-out,border-color 160ms ease-out;cursor:pointer}
.btn-p{background:#d18518;color:#fff}.btn-p:hover{background:#b87314}
.btn-gl{background:transparent;color:#17202d;border-color:#c9c0b8}.btn-gl:hover{background:#f4f6f9}
.btn-g{background:transparent;color:#fff;border-color:#9e9087}.btn-g:hover{background:rgba(255,255,255,.06)}
.lang{display:flex;gap:2px;border:1px solid #3a4657;border-radius:6px;padding:2px}
.lang button{font:600 13px/1 "Montserrat",sans-serif;letter-spacing:.06em;background:transparent;color:#c9c0b8;border:0;border-radius:4px;padding:9px 10px;min-width:40px;cursor:pointer}
.lang button.on{background:#d18518;color:#fff}
.nav a{font-size:15px;font-weight:600;color:#fff;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover{color:#d18518}
.nav a.on{color:#d18518;border-bottom-color:#d18518}

/* Hero por audiencias */
.hero{background-color:#17202d;background-image:url("/assets/img/11be7576d20dabf8d30bbf1e36a05f50.webp");background-size:cover;background-position:center}
.slide-img{width:100%;height:100%;object-fit:cover;display:block;animation:fadein 600ms ease-out}
.slide-txt{animation:fadein 500ms ease-out}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.aud-tab{flex:1 1 0;min-width:0;background:transparent;border:0;border-top:2px solid #3a4657;padding:18px 4px 0;text-align:left;cursor:pointer;color:#9e9087;font:600 15px/1.3 "Montserrat",sans-serif;transition:color 160ms ease-out,border-color 160ms ease-out}
.aud-tab:hover{color:#fff}
.aud-tab.on{color:#fff;border-top-color:#d18518}
.aud-tab .n{display:block;font-size:12px;letter-spacing:.18em;color:#d18518;margin-bottom:6px}
.chip{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.04em}

/* Qué estructuramos */
.tile{border-radius:12px;overflow:hidden;position:relative}

/* Frases de cine */
.quote{animation:fadein 700ms ease-out}
.qdot{width:44px;height:44px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.qdot span{width:10px;height:10px;border-radius:50%;background:rgba(23,32,45,.35);transition:background-color 160ms ease-out,transform 160ms ease-out}
.qdot.on span{background:#17202d;transform:scale(1.3)}
.qarrow{width:52px;height:52px;border-radius:50%;border:1px solid #17202d;background:transparent;color:#17202d;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.qarrow:hover{background:#17202d;color:#d18518}

/* Cómo trabajamos: línea de montaje */
.tl{background:#0e141d;border-radius:12px;padding:20px 24px 28px;position:relative}
.tl-ruler{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-left:132px;font-size:11px;letter-spacing:.12em;color:#606f82;border-bottom:1px solid #2c3746;padding-bottom:10px}
.tl-ruler span{border-left:1px solid #2c3746;padding-left:8px}
.tl-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;margin-top:12px}
.tl-label{font-size:11px;font-weight:700;letter-spacing:.14em;color:#9e9087;text-transform:uppercase}
.tl-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;position:relative}
.clip{height:64px;border-radius:6px;border:0;padding:0 14px;text-align:left;background:#2c3746;color:#c9c0b8;font:600 15px/1.25 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,color 160ms ease-out;display:flex;align-items:center;gap:10px}
.clip:hover{background:#3a4657;color:#fff}
.clip.on{background:#d18518;color:#17202d}
.clip .cn{font-size:12px;letter-spacing:.14em;opacity:.8}
.wave{height:26px;border-radius:4px;background-color:#1f2a3a;background-image:repeating-linear-gradient(90deg,#4a5566 0 2px,transparent 2px 6px);opacity:.9}
.wave.on{background-image:repeating-linear-gradient(90deg,#9e9087 0 2px,transparent 2px 6px)}
.wave.off{background:transparent}
.playhead{position:absolute;top:8px;bottom:8px;width:2px;background:#d18518;transition:left 400ms ease-out;pointer-events:none}
.playhead::before{content:"";position:absolute;top:-2px;left:-7px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #d18518}

/* Vídeo */
.vposter{position:relative;display:block;width:100%;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:#000}
.vposter img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform 500ms ease-out}
.vposter:hover img{transform:scale(1.02)}
.play{width:88px;height:88px;border-radius:50%;background:#d18518;display:flex;align-items:center;justify-content:center;transition:background-color 160ms ease-out}
.vposter:hover .play{background:#b87314}
.play::before{content:"";margin-left:6px;border-left:26px solid #fff;border-top:16px solid transparent;border-bottom:16px solid transparent}
.backdrop{position:fixed;inset:0;background:rgba(14,20,29,.92);z-index:40;animation:fadein 200ms ease-out}
.vbox{position:fixed;z-index:41;background:#0e141d;border-radius:12px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.35)}
.vbox.modal{left:50%;top:50%;transform:translate(-50%,-50%);width:min(1100px,92vw)}
.vbox.mini{right:24px;bottom:24px;width:360px}
.vbox video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.vbar{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 18px;color:#fff;font-size:14px;font-weight:600}
.vbtn{min-width:44px;height:44px;border-radius:6px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 13px/1 "Montserrat",sans-serif;padding:0 12px;cursor:pointer}
.vbtn:hover{border-color:#d18518;color:#d18518}


.flink{color:#17202d;text-decoration:none}.flink:hover{text-decoration:underline;text-underline-offset:3px}

.aud-tab{font-size:17px}
/* ── Movimiento: revelado al hacer scroll + parallax (CSS ligado al scroll) ── */
@keyframes upin{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes sealin{from{opacity:0;transform:rotate(-120deg) scale(.7)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: no-preference) {
  .hero .hero-grid > div > *{animation:upin 1000ms cubic-bezier(.2,.7,.2,1) both}
  .hero .hero-grid > div > *:nth-child(1){animation-delay:150ms}
  .hero .hero-grid > div > *:nth-child(2){animation-delay:350ms}
  .hero .hero-grid > div > *:nth-child(3){animation-delay:600ms}
  .hero .hero-grid > div > *:nth-child(4){animation-delay:850ms}
  .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both}
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes rv{from{opacity:0;transform:translateY(90px)}to{opacity:1;transform:none}}
    @keyframes wipe{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
    @keyframes pan{from{object-position:50% 0%}to{object-position:50% 100%}}
    @keyframes zoomout{from{transform:scale(1.3)}to{transform:scale(1)}}
    @keyframes bgdrift{from{background-position:50% 50%}to{background-position:50% 120%}}
    @keyframes sealturn{from{transform:none}to{transform:rotate(-70deg) translateY(60px)}}
    .what-grid > figure:nth-child(2),.g3 > .person:nth-child(2){animation-range:entry 15% cover 45%}
    .g3 > .person:nth-child(3){animation-range:entry 30% cover 55%}
    .what-grid > figure img,.g3 > .person img{animation:pan linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
    .vposter img{animation:zoomout linear both;animation-timeline:view();animation-range:entry 0% cover 60%}
    .hero{animation:bgdrift linear both;animation-timeline:view();animation-range:exit}
    .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both,sealturn linear both;animation-timeline:auto,view();animation-range:normal,exit}
  }
}
/* ── Pie: el anillo del sello ── */
.foot{position:relative;background:#17202d;color:#c9c0b8;padding:24px 64px 28px;overflow:hidden}
.fring-wrap{position:relative;width:min(840px,100%);aspect-ratio:840/470;margin:0 auto;overflow:hidden}
.fring{position:absolute;left:0;top:0;width:100%;height:auto;overflow:visible}
.fring circle{fill:none;stroke:rgba(255,255,255,.55);stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-dasharray:1 1;stroke-dashoffset:0}
.fring circle.inner{stroke:rgba(158,144,135,.28);stroke-width:1}
.fin{position:absolute;inset:0;padding:11% 18% 0;display:flex;flex-direction:column;align-items:center;text-align:center}
.fmark{height:50px;width:auto;display:block}
.fdesc{margin-top:10px;font-family:"Brown",Montserrat,sans-serif;font-weight:300;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:#9e9087}
.fnav{display:grid;grid-template-columns:repeat(3,auto);justify-content:center;margin-top:34px;row-gap:4px}
.fnav a{color:#fff;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:7px 26px;border-left:1px solid rgba(255,255,255,.14);transition:color 200ms}
.fnav a:nth-child(3n+1){border-left:0}
.fnav a:hover,.fnav a.on{color:#d18518}
.frule{display:block;width:56px;height:1px;background:#d18518;margin:30px 0 22px}
.ftag{margin:0;font-size:15px;line-height:1.5;font-style:italic;color:#9e9087;max-width:440px}
.fmail{margin-top:12px;color:#fff;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:.02em}.fmail:hover{color:#d18518}
.ftop{position:absolute;right:40px;bottom:130px;writing-mode:vertical-rl;transform:rotate(180deg);background:none;border:0;color:#c9c0b8;font:700 11px/1 inherit;font-family:inherit;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:8px}.ftop:hover{color:#d18518}
.fbar{border-top:1px solid #2c3746;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:#9e9087;max-width:1312px;margin:0 auto}
.fbar a{color:#9e9087;text-decoration:none}.fbar a:hover{color:#fff}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes ringdraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
    @keyframes finup{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
    .fring-wrap{view-timeline-name:--ring}
    .fring circle.inner{animation-range:entry 15% cover 65%}
  }
}
.jsmotion .fring-wrap.rv-js{transform:none}
.jsmotion .fring-wrap.rv-js circle{stroke-dashoffset:1;transition:stroke-dashoffset 2400ms cubic-bezier(.4,0,.2,1)}
.jsmotion .fring-wrap.in circle{stroke-dashoffset:0}
@media (max-width:1100px){
  .foot{padding:56px 16px 24px}
  .fring-wrap{aspect-ratio:auto;width:100%;overflow:hidden}
  .fring{width:170%;left:-35%;top:0}
  .fin{position:relative;inset:auto;padding:48px 4px 56px}
  .fnav{grid-template-columns:repeat(2,auto)}
  .fnav a{padding:7px 18px;border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(3n+1){border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(2n+1){border-left:0}
  .ftop{display:none}
  .fbar{flex-direction:column}
}
/* ── Menú móvil ── */
html{scroll-behavior:smooth}
#quien,#cierre{scroll-margin-top:84px}
.burger{display:none;width:44px;height:44px;border:1px solid #3a4657;border-radius:6px;background:transparent;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0}
.burger span{display:block;width:20px;height:2px;background:#fff;transition:transform 200ms ease-out,opacity 200ms ease-out}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mmenu{position:fixed;left:0;right:0;top:64px;bottom:0;z-index:19;background:#17202d;padding:32px 16px calc(32px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:4px;overflow-y:auto;animation:fadein 200ms ease-out}
.mmenu a.ml{display:block;padding:14px 0;border-bottom:1px solid #2c3746;font-size:26px;font-weight:700;color:#fff;text-decoration:none}
.mmenu a.ml.on{color:#d18518}
@media (max-width:1100px){
  .burger{display:flex}
  .pg > header{height:64px !important;padding:0 16px !important;gap:12px !important}
  .pg > header > a:first-child img{height:38px !important;width:auto !important}
  .pg > header .lang{margin-left:auto}
  .pg > header > .btn{display:none !important}
  .hero-seal{display:none !important}
  .hero .btn,.sec .btn{width:100%}
  .hero{padding-top:48px !important}
  #cierre h2{font-size:34px !important}
  .hero-title{font-size:36px !important}
  .mmenu{top:64px}
}
@media (min-width:1281px){.mmenu{display:none}}
@media (min-width:821px) and (max-width:1280px){
  .burger{display:flex}
  .nav{display:none !important}
  .pg > header .lang{margin-left:auto}
  .mmenu{top:84px;padding-left:64px;padding-right:64px}
}

/* ── Páginas de perfil ── */
.pimg{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#f2f1ef}
.pimg img{display:block;width:100%;height:100%;object-fit:cover}
.pimg .col{position:absolute;inset:0;clip-path:inset(0 0 0 0);transition:clip-path 900ms cubic-bezier(.6,0,.2,1)}
.pimg:hover .col{clip-path:inset(0 0 0 100%)}
.pimg .sweep{position:absolute;top:0;bottom:0;left:0;width:3px;background:#d18518;box-shadow:0 0 18px rgba(209,133,24,.8);opacity:0;pointer-events:none}
@media (prefers-reduced-motion: no-preference){
  @keyframes colorin{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
  @keyframes sweep{0%{left:0;opacity:1}90%{opacity:1}100%{left:100%;opacity:0}}
  .pimg .col{animation:colorin 1900ms cubic-bezier(.6,0,.2,1) 900ms backwards}
  .pimg .sweep{animation:sweep 1900ms cubic-bezier(.6,0,.2,1) 900ms both}
}
.faqgrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:72px;align-items:start}
.faqink{margin:0;aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:#f2f1ef}
.faqink img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;mix-blend-mode:multiply;filter:contrast(1.08) brightness(1.04)}
@media (max-width:1024px){
  .faqgrid{grid-template-columns:1fr !important;gap:40px}
  .faqink{order:-1;aspect-ratio:16/9}
}
.pimg .esc{position:absolute;left:16px;top:16px;background:#17202d;color:#d18518;border-radius:3px;padding:7px 10px;font-size:12px;font-weight:700;letter-spacing:.18em}
.keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #c9c0b8;margin-top:48px}
.key{padding:40px 40px 8px 0;display:flex;flex-direction:column;gap:14px;min-width:0}
.key + .key{padding-left:40px;border-left:1px solid #c9c0b8}
.kdisc{width:52px;height:52px;border-radius:50%;background:#17202d;display:flex;align-items:center;justify-content:center}
.kdisc img{width:24px;height:24px;filter:brightness(0) invert(1)}
.key h3{margin:8px 0 0;font-size:28px;line-height:1.2;font-weight:700;color:#17202d}
.key p{margin:0;font-size:17px;line-height:1.5}
/* flujo de financiación */
.flow{display:grid;grid-template-columns:minmax(0,1fr) 112px minmax(0,1fr) 112px minmax(0,1fr);align-items:stretch;margin-top:48px}
.fnode{background:#1f2a3a;border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:10px}
.fnode.mid{background:#d18518}
.fnode.mid h3,.fnode.mid p{color:#17202d !important}
.fnode h3{margin:0;font-size:23px;font-weight:700;color:#fff}
.fnode p{margin:0;font-size:16px;line-height:1.5;color:#c9c0b8}
.farrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#d18518}
.farrow i{display:block;width:72px;height:2px;background:#d18518;position:relative}
.farrow i::after{content:"";position:absolute;right:-2px;top:-5px;border-left:10px solid #d18518;border-top:6px solid transparent;border-bottom:6px solid transparent}
.checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 40px}
.checks li{display:grid;grid-template-columns:24px 1fr;gap:10px;font-size:17px;line-height:1.45;color:#fff}
.checks li::before{content:"✔";color:#d18518;font-weight:700}
/* calculadora */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:start;margin-top:48px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.amt{min-height:48px;padding:0 20px;border-radius:999px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 16px/1 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,border-color 160ms ease-out}
.amt:hover{border-color:#d18518}
.amt.on{background:#d18518;border-color:#d18518;color:#17202d}
.calc-panel{background:#1f2a3a;border-radius:14px;padding:12px 32px}
.crow{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:22px 0;border-bottom:1px solid #2c3746}
.crow:last-child{border-bottom:0}
.crow span{font-size:15px;color:#9e9087}
.crow b{font-size:40px;line-height:1;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap}
.crow.big b{font-size:60px;color:#d18518}
.points{display:grid;gap:20px;margin-top:40px}
.point h3{margin:0;font-size:19px;font-weight:700;color:#fff}
.point p{margin:6px 0 0;font-size:16px;line-height:1.5;color:#9e9087}
/* guion */
.paper{max-width:820px;margin:48px auto 0;background:#fdfcf9;color:#1b1b1b;border-radius:4px;padding:72px 88px 64px;box-shadow:0 6px 22px rgba(0,0,0,.35);font-family:"Courier Prime","Courier New",monospace;font-size:18px;line-height:1.5;position:relative;transform:rotate(-.6deg)}
.paper .pno{position:absolute;right:56px;top:32px;color:#606060}
.scene{margin:0 0 28px}
.scene b{display:block;font-weight:700;letter-spacing:.02em}
.scene p{margin:8px 0 0}
.fade{text-align:right;font-weight:700;margin-top:8px}
.fadetxt{margin-top:24px;text-align:center;font-weight:700;color:#896614}
/* entradas */
.tickets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px}
.ticket{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);background:#f3eee8;border-radius:12px;min-height:280px;color:#3a3a3a}
.ticket::before,.ticket::after{content:"";position:absolute;left:61px;width:22px;height:22px;border-radius:50%;background:#17202d}
.ticket::before{top:-11px}.ticket::after{bottom:-11px}
.stub{border-right:2px dashed #c9c0b8;display:flex;align-items:center;justify-content:center}
.stub span{transform:rotate(-90deg);white-space:nowrap;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.tbody{padding:28px 28px 28px 32px;display:flex;flex-direction:column;gap:10px;min-width:0}
.tbody .tk{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#896614}
.tbody .tb{font-size:56px;line-height:1;font-weight:700;color:#d18518}
.tbody p{margin:0;font-size:16px;line-height:1.5}
/* preguntas */
.faqs{border-top:1px solid #c9c0b8;margin-top:40px}
.faq{border-bottom:1px solid #c9c0b8}
.faq button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;background:transparent;border:0;padding:26px 0;text-align:left;cursor:pointer;font:700 21px/1.35 "Montserrat",sans-serif;color:#17202d}
.faq button:hover{color:#896614}
.faq .sg{flex:0 0 auto;width:36px;height:36px;border-radius:50%;border:1px solid #c9c0b8;display:flex;align-items:center;justify-content:center;font-size:20px;color:#d18518}
.faq.on .sg{background:#17202d;border-color:#17202d}
.faq .ans{margin:0;padding:0 64px 28px 0;max-width:780px;font-size:17px;line-height:1.6;animation:fadein 300ms ease-out}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .keys > .key:nth-child(2),.tickets > .ticket:nth-child(2),.flow > .fnode:nth-child(3){animation-range:entry 15% cover 45%}
    .keys > .key:nth-child(3),.tickets > .ticket:nth-child(3),.flow > .fnode:nth-child(5){animation-range:entry 30% cover 55%}
    @keyframes inkin{from{clip-path:inset(50% 50% 50% 50% round 12px);opacity:.2}to{clip-path:inset(0 0 0 0 round 12px);opacity:1}}
  }
}
@media (max-width:1100px){
  .keys,.tickets,.checks,.calc{grid-template-columns:1fr !important}
  .key + .key{padding-left:0;border-left:0;border-top:1px solid #c9c0b8}
  .key{padding:28px 0 8px}
  .flow{grid-template-columns:1fr}
  .farrow{flex-direction:row;padding:14px 0}.farrow i{width:2px;height:40px}.farrow i::after{right:-5px;top:auto;bottom:-2px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:10px solid #d18518;border-bottom:0}
  .paper{padding:48px 24px 40px;font-size:15px;transform:none}
  .crow b{font-size:30px}.crow.big b{font-size:42px}
  .faq button{font-size:18px}.faq .ans{padding-right:0}
}

/* ── Contacto ── */
.cmap{display:block;background:#0e141d;overflow:hidden}
.cmap img{display:block;width:100%;aspect-ratio:1920/938;max-height:72vh;object-fit:cover;object-position:20% 30%}
.chero{position:relative;min-height:640px;display:flex;align-items:flex-end;background-color:#0e141d;background-image:url("/assets/img/1495205f0f834d114e5b349a90021a53.webp");background-size:cover;background-position:20% 30%;padding:0 64px;justify-content:flex-end}
.chero-box{position:relative;max-width:640px;background:#17202d;border-radius:12px 12px 0 0;padding:48px 48px 40px}
.channels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ch{display:flex;flex-direction:column;gap:6px;background:#1f2a3a;border-radius:12px;padding:22px 24px;text-decoration:none;transition:background-color 160ms ease-out}
a.ch:hover{background:#2c3746}
a.ch:hover .v{color:#d18518}
.ch .k{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#d18518}
.ch .v{font-size:15px;font-weight:600;color:#fff;overflow-wrap:anywhere;transition:color 160ms ease-out}
.dest{margin:18px 0 0;font-size:14px;color:#606060}
.dest b{color:#17202d}
@supports (animation-timeline: view()) { @media (prefers-reduced-motion: no-preference) {
  @keyframes cpan{from{background-position:20% 20%}to{background-position:20% 60%}}
  @keyframes mapzoom{from{transform:scale(1.12)}to{transform:scale(1)}}
  .cmap img{animation:mapzoom linear both;animation-timeline:view();animation-range:exit 0% exit 100%}
} }
.cinfo{display:grid;gap:14px}
.cbox{background:#1f2a3a;border-radius:12px;padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.cbox .k{display:block;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#d18518}
.cbox .v{display:block;margin-top:6px;font-size:19px;font-weight:600;color:#fff;word-break:break-word}
.copy{min-height:44px;padding:0 16px;border-radius:6px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 14px/1 "Montserrat",sans-serif;cursor:pointer}
.copy:hover{border-color:#d18518;color:#d18518}
.cgrid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:32px;align-items:stretch}
.cform{background:#fff;border-radius:12px;box-shadow:0 2px 10px rgba(23,32,45,.07);padding:44px}
.who{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 32px}
.who button{min-height:56px;border-radius:6px;border:1px solid #c9c0b8;background:#fff;color:#17202d;font:600 15px/1.2 "Montserrat",sans-serif;cursor:pointer;padding:8px 10px;transition:border-color 160ms ease-out,background-color 160ms ease-out}
.who button:hover{border-color:#17202d}
.who button.on{background:#17202d;border-color:#17202d;color:#fff}
.frow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.fld{display:flex;flex-direction:column;gap:8px;min-width:0}
.fld.full{grid-column:1/-1}
.fld label{font-size:14px;font-weight:600;color:#17202d}
.fld label i{color:#896614;font-style:normal}
.fld input,.fld select,.fld textarea{font:400 16px/1.4 "Montserrat",sans-serif;color:#17202d;background:#fff;border:1px solid #8a7f77;border-radius:6px;padding:13px 14px;min-height:48px;width:100%}
.fld textarea{min-height:140px;resize:vertical}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:2px solid #d18518;outline-offset:1px;border-color:#17202d}
.priv{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;margin:26px 0 28px;font-size:14px;line-height:1.5;color:#606060}
.priv input{width:20px;height:20px;margin:2px 0 0;accent-color:#d18518}
.ok{text-align:center;padding:40px 8px}
.ok .okmark{width:72px;height:72px;border-radius:50%;background:#d18518;color:#fff;font-size:34px;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}
.side{display:flex;flex-direction:column;gap:24px}
.scard{flex:1 1 auto;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;background:#17202d}
.scard img{display:block;flex:1 1 0;min-height:320px;width:100%;object-fit:cover;object-position:50% 45%}
.scard .sb{padding:24px 26px 28px}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
  }
}
@media (max-width:1100px){
  .cgrid,.frow,.channels{grid-template-columns:1fr !important}
  .cmap img{max-height:none;aspect-ratio:4/3;object-position:22% 40%}
  .who{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scard img{flex:none;min-height:0;aspect-ratio:4/3}
  .cform{padding:28px 20px}
}
@media (prefers-reduced-motion:reduce){.slide-img,.slide-txt,.quote,.backdrop{animation:none}.playhead{transition:none}}
@media (max-width:1100px){
  .nav{display:none !important}
  .hero-grid,.what-grid,.video-box{grid-template-columns:1fr !important}
  .hero-art{height:auto !important}
  .hero-title{font-size:38px !important}
  .aud-tabs{flex-wrap:wrap}.aud-tab{flex:1 1 45%}
  .g3,.foot-grid{grid-template-columns:1fr !important}
  .sec{padding-left:16px !important;padding-right:16px !important;padding-top:64px !important;padding-bottom:64px !important}
  .h2{font-size:30px}
  .qtext{font-size:36px !important}
  .q-big{font-size:44px !important}
  .hero-seal{width:120px !important;height:120px !important;order:-1}
  .tl-ruler{margin-left:0}.tl-row{grid-template-columns:1fr}.tl-label{display:none}.clip .ct{display:none}
  .vbox.mini{width:calc(100vw - 32px);right:16px;bottom:16px}
}






@font-face{font-family:"Brown";src:url("/assets/fonts/Brown-Light.woff") format("woff");font-weight:300;font-display:swap}
body{margin:0}
a{color:inherit}
.pg{font-family:"Montserrat",Helvetica,Arial,sans-serif;color:#3a3a3a;background:#fff;-webkit-font-smoothing:antialiased}
.pg *{box-sizing:border-box}
.pg :focus-visible{outline:2px solid #d18518;outline-offset:2px}
.wrap{max-width:1248px;margin:0 auto}
.eyebrow{margin:0;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.navy .eyebrow{color:#d18518}
.h2{margin:16px 0 0;font-size:40px;line-height:1.22;font-weight:700;color:#17202d}
.navy .h2{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:16px 26px;border-radius:6px;font:700 19px/1 "Montserrat",sans-serif;text-decoration:none;border:1px solid transparent;transition:background-color 160ms ease-out,border-color 160ms ease-out;cursor:pointer}
.btn-p{background:#d18518;color:#fff}.btn-p:hover{background:#b87314}
.btn-g{background:transparent;color:#fff;border-color:#9e9087}.btn-g:hover{background:rgba(255,255,255,.06)}
.lang{display:flex;gap:2px;border:1px solid #3a4657;border-radius:6px;padding:2px}
.lang button{font:600 13px/1 "Montserrat",sans-serif;letter-spacing:.06em;background:transparent;color:#c9c0b8;border:0;border-radius:4px;padding:9px 10px;min-width:40px;cursor:pointer}
.lang button.on{background:#d18518;color:#fff}
.nav a{font-size:15px;font-weight:600;color:#fff;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover{color:#d18518}
.nav a.on{color:#d18518;border-bottom-color:#d18518}

/* Hero por audiencias */
.hero{background-color:#17202d;background-image:url("/assets/img/11be7576d20dabf8d30bbf1e36a05f50.webp");background-size:cover;background-position:center}
.slide-img{width:100%;height:100%;object-fit:cover;display:block;animation:fadein 600ms ease-out}
.slide-txt{animation:fadein 500ms ease-out}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.aud-tab{flex:1 1 0;min-width:0;background:transparent;border:0;border-top:2px solid #3a4657;padding:18px 4px 0;text-align:left;cursor:pointer;color:#9e9087;font:600 15px/1.3 "Montserrat",sans-serif;transition:color 160ms ease-out,border-color 160ms ease-out}
.aud-tab:hover{color:#fff}
.aud-tab.on{color:#fff;border-top-color:#d18518}
.aud-tab .n{display:block;font-size:12px;letter-spacing:.18em;color:#d18518;margin-bottom:6px}
.chip{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.04em}

/* Qué estructuramos */
.tile{border-radius:12px;overflow:hidden;position:relative}

/* Frases de cine */
.quote{animation:fadein 700ms ease-out}
.qdot{width:44px;height:44px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.qdot span{width:10px;height:10px;border-radius:50%;background:rgba(23,32,45,.35);transition:background-color 160ms ease-out,transform 160ms ease-out}
.qdot.on span{background:#17202d;transform:scale(1.3)}
.qarrow{width:52px;height:52px;border-radius:50%;border:1px solid #17202d;background:transparent;color:#17202d;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.qarrow:hover{background:#17202d;color:#d18518}

/* Cómo trabajamos: línea de montaje */
.tl{background:#0e141d;border-radius:12px;padding:20px 24px 28px;position:relative}
.tl-ruler{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-left:132px;font-size:11px;letter-spacing:.12em;color:#606f82;border-bottom:1px solid #2c3746;padding-bottom:10px}
.tl-ruler span{border-left:1px solid #2c3746;padding-left:8px}
.tl-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;margin-top:12px}
.tl-label{font-size:11px;font-weight:700;letter-spacing:.14em;color:#9e9087;text-transform:uppercase}
.tl-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;position:relative}
.clip{height:64px;border-radius:6px;border:0;padding:0 14px;text-align:left;background:#2c3746;color:#c9c0b8;font:600 15px/1.25 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,color 160ms ease-out;display:flex;align-items:center;gap:10px}
.clip:hover{background:#3a4657;color:#fff}
.clip.on{background:#d18518;color:#17202d}
.clip .cn{font-size:12px;letter-spacing:.14em;opacity:.8}
.wave{height:26px;border-radius:4px;background-color:#1f2a3a;background-image:repeating-linear-gradient(90deg,#4a5566 0 2px,transparent 2px 6px);opacity:.9}
.wave.on{background-image:repeating-linear-gradient(90deg,#9e9087 0 2px,transparent 2px 6px)}
.wave.off{background:transparent}
.playhead{position:absolute;top:8px;bottom:8px;width:2px;background:#d18518;transition:left 400ms ease-out;pointer-events:none}
.playhead::before{content:"";position:absolute;top:-2px;left:-7px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #d18518}

/* Vídeo */
.vposter{position:relative;display:block;width:100%;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:#000}
.vposter img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform 500ms ease-out}
.vposter:hover img{transform:scale(1.02)}
.play{width:88px;height:88px;border-radius:50%;background:#d18518;display:flex;align-items:center;justify-content:center;transition:background-color 160ms ease-out}
.vposter:hover .play{background:#b87314}
.play::before{content:"";margin-left:6px;border-left:26px solid #fff;border-top:16px solid transparent;border-bottom:16px solid transparent}
.backdrop{position:fixed;inset:0;background:rgba(14,20,29,.92);z-index:40;animation:fadein 200ms ease-out}
.vbox{position:fixed;z-index:41;background:#0e141d;border-radius:12px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.35)}
.vbox.modal{left:50%;top:50%;transform:translate(-50%,-50%);width:min(1100px,92vw)}
.vbox.mini{right:24px;bottom:24px;width:360px}
.vbox video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.vbar{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 18px;color:#fff;font-size:14px;font-weight:600}
.vbtn{min-width:44px;height:44px;border-radius:6px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 13px/1 "Montserrat",sans-serif;padding:0 12px;cursor:pointer}
.vbtn:hover{border-color:#d18518;color:#d18518}


.flink{color:#17202d;text-decoration:none}.flink:hover{text-decoration:underline;text-underline-offset:3px}

.aud-tab{font-size:17px}
/* ── Movimiento: revelado al hacer scroll + parallax (CSS ligado al scroll) ── */
@keyframes upin{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes sealin{from{opacity:0;transform:rotate(-120deg) scale(.7)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: no-preference) {
  .hero .hero-grid > div > *{animation:upin 1000ms cubic-bezier(.2,.7,.2,1) both}
  .hero .hero-grid > div > *:nth-child(1){animation-delay:150ms}
  .hero .hero-grid > div > *:nth-child(2){animation-delay:350ms}
  .hero .hero-grid > div > *:nth-child(3){animation-delay:600ms}
  .hero .hero-grid > div > *:nth-child(4){animation-delay:850ms}
  .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both}
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes rv{from{opacity:0;transform:translateY(90px)}to{opacity:1;transform:none}}
    @keyframes wipe{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
    @keyframes pan{from{object-position:50% 0%}to{object-position:50% 100%}}
    @keyframes zoomout{from{transform:scale(1.3)}to{transform:scale(1)}}
    @keyframes bgdrift{from{background-position:50% 50%}to{background-position:50% 120%}}
    @keyframes sealturn{from{transform:none}to{transform:rotate(-70deg) translateY(60px)}}
    .what-grid > figure:nth-child(2),.g3 > .person:nth-child(2){animation-range:entry 15% cover 45%}
    .g3 > .person:nth-child(3){animation-range:entry 30% cover 55%}
    .what-grid > figure img,.g3 > .person img{animation:pan linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
    .vposter img{animation:zoomout linear both;animation-timeline:view();animation-range:entry 0% cover 60%}
    .hero{animation:bgdrift linear both;animation-timeline:view();animation-range:exit}
    .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both,sealturn linear both;animation-timeline:auto,view();animation-range:normal,exit}
  }
}
/* ── Pie: el anillo del sello ── */
.foot{position:relative;background:#17202d;color:#c9c0b8;padding:24px 64px 28px;overflow:hidden}
.fring-wrap{position:relative;width:min(840px,100%);aspect-ratio:840/470;margin:0 auto;overflow:hidden}
.fring{position:absolute;left:0;top:0;width:100%;height:auto;overflow:visible}
.fring circle{fill:none;stroke:rgba(255,255,255,.55);stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-dasharray:1 1;stroke-dashoffset:0}
.fring circle.inner{stroke:rgba(158,144,135,.28);stroke-width:1}
.fin{position:absolute;inset:0;padding:11% 18% 0;display:flex;flex-direction:column;align-items:center;text-align:center}
.fmark{height:50px;width:auto;display:block}
.fdesc{margin-top:10px;font-family:"Brown",Montserrat,sans-serif;font-weight:300;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:#9e9087}
.fnav{display:grid;grid-template-columns:repeat(3,auto);justify-content:center;margin-top:34px;row-gap:4px}
.fnav a{color:#fff;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:7px 26px;border-left:1px solid rgba(255,255,255,.14);transition:color 200ms}
.fnav a:nth-child(3n+1){border-left:0}
.fnav a:hover,.fnav a.on{color:#d18518}
.frule{display:block;width:56px;height:1px;background:#d18518;margin:30px 0 22px}
.ftag{margin:0;font-size:15px;line-height:1.5;font-style:italic;color:#9e9087;max-width:440px}
.fmail{margin-top:12px;color:#fff;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:.02em}.fmail:hover{color:#d18518}
.ftop{position:absolute;right:40px;bottom:130px;writing-mode:vertical-rl;transform:rotate(180deg);background:none;border:0;color:#c9c0b8;font:700 11px/1 inherit;font-family:inherit;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:8px}.ftop:hover{color:#d18518}
.fbar{border-top:1px solid #2c3746;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:#9e9087;max-width:1312px;margin:0 auto}
.fbar a{color:#9e9087;text-decoration:none}.fbar a:hover{color:#fff}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes ringdraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
    @keyframes finup{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
    .fring-wrap{view-timeline-name:--ring}
    .fring circle.inner{animation-range:entry 15% cover 65%}
  }
}
.jsmotion .fring-wrap.rv-js{transform:none}
.jsmotion .fring-wrap.rv-js circle{stroke-dashoffset:1;transition:stroke-dashoffset 2400ms cubic-bezier(.4,0,.2,1)}
.jsmotion .fring-wrap.in circle{stroke-dashoffset:0}
@media (max-width:1100px){
  .foot{padding:56px 16px 24px}
  .fring-wrap{aspect-ratio:auto;width:100%;overflow:hidden}
  .fring{width:170%;left:-35%;top:0}
  .fin{position:relative;inset:auto;padding:48px 4px 56px}
  .fnav{grid-template-columns:repeat(2,auto)}
  .fnav a{padding:7px 18px;border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(3n+1){border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(2n+1){border-left:0}
  .ftop{display:none}
  .fbar{flex-direction:column}
}
/* ── Menú móvil ── */
html{scroll-behavior:smooth}
#quien,#cierre{scroll-margin-top:84px}
.burger{display:none;width:44px;height:44px;border:1px solid #3a4657;border-radius:6px;background:transparent;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0}
.burger span{display:block;width:20px;height:2px;background:#fff;transition:transform 200ms ease-out,opacity 200ms ease-out}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mmenu{position:fixed;left:0;right:0;top:64px;bottom:0;z-index:19;background:#17202d;padding:32px 16px calc(32px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:4px;overflow-y:auto;animation:fadein 200ms ease-out}
.mmenu a.ml{display:block;padding:14px 0;border-bottom:1px solid #2c3746;font-size:26px;font-weight:700;color:#fff;text-decoration:none}
.mmenu a.ml.on{color:#d18518}
@media (max-width:1100px){
  .burger{display:flex}
  .pg > header{height:64px !important;padding:0 16px !important;gap:12px !important}
  .pg > header > a:first-child img{height:38px !important;width:auto !important}
  .pg > header .lang{margin-left:auto}
  .pg > header > .btn{display:none !important}
  .hero-seal{display:none !important}
  .hero .btn,.sec .btn{width:100%}
  .hero{padding-top:48px !important}
  #cierre h2{font-size:34px !important}
  .hero-title{font-size:36px !important}
  .mmenu{top:64px}
}
@media (min-width:1281px){.mmenu{display:none}}
@media (min-width:821px) and (max-width:1280px){
  .burger{display:flex}
  .nav{display:none !important}
  .pg > header .lang{margin-left:auto}
  .mmenu{top:84px;padding-left:64px;padding-right:64px}
}
@media (prefers-reduced-motion:reduce){.slide-img,.slide-txt,.quote,.backdrop{animation:none}.playhead{transition:none}}
@media (max-width:1100px){
  .nav{display:none !important}
  .hero-grid,.what-grid,.video-box{grid-template-columns:1fr !important}
  .hero-art{height:auto !important}
  .hero-title{font-size:38px !important}
  .aud-tabs{flex-wrap:wrap}.aud-tab{flex:1 1 45%}
  .g3,.foot-grid{grid-template-columns:1fr !important}
  .sec{padding-left:16px !important;padding-right:16px !important;padding-top:64px !important;padding-bottom:64px !important}
  .h2{font-size:30px}
  .qtext{font-size:36px !important}
  .q-big{font-size:44px !important}
  .hero-seal{width:120px !important;height:120px !important;order:-1}
  .tl-ruler{margin-left:0}.tl-row{grid-template-columns:1fr}.tl-label{display:none}.clip .ct{display:none}
  .vbox.mini{width:calc(100vw - 32px);right:16px;bottom:16px}
}






@font-face{font-family:"Brown";src:url("/assets/fonts/Brown-Light.woff") format("woff");font-weight:300;font-display:swap}
body{margin:0}
a{color:inherit}
.pg{font-family:"Montserrat",Helvetica,Arial,sans-serif;color:#3a3a3a;background:#fff;-webkit-font-smoothing:antialiased}
.pg *{box-sizing:border-box}
.pg :focus-visible{outline:2px solid #d18518;outline-offset:2px}
.wrap{max-width:1248px;margin:0 auto}
.eyebrow{margin:0;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.navy .eyebrow{color:#d18518}
.h2{margin:16px 0 0;font-size:40px;line-height:1.22;font-weight:700;color:#17202d}
.navy .h2{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:16px 26px;border-radius:6px;font:700 19px/1 "Montserrat",sans-serif;text-decoration:none;border:1px solid transparent;transition:background-color 160ms ease-out,border-color 160ms ease-out;cursor:pointer}
.btn-p{background:#d18518;color:#fff}.btn-p:hover{background:#b87314}
.btn-g{background:transparent;color:#fff;border-color:#9e9087}.btn-g:hover{background:rgba(255,255,255,.06)}
.lang{display:flex;gap:2px;border:1px solid #3a4657;border-radius:6px;padding:2px}
.lang button{font:600 13px/1 "Montserrat",sans-serif;letter-spacing:.06em;background:transparent;color:#c9c0b8;border:0;border-radius:4px;padding:9px 10px;min-width:40px;cursor:pointer}
.lang button.on{background:#d18518;color:#fff}
.nav a{font-size:15px;font-weight:600;color:#fff;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover{color:#d18518}
.nav a.on{color:#d18518;border-bottom-color:#d18518}

/* Hero por audiencias */
.hero{background-color:#17202d;background-image:url("/assets/img/11be7576d20dabf8d30bbf1e36a05f50.webp");background-size:cover;background-position:center}
.slide-img{width:100%;height:100%;object-fit:cover;display:block;animation:fadein 600ms ease-out}
.slide-txt{animation:fadein 500ms ease-out}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.aud-tab{flex:1 1 0;min-width:0;background:transparent;border:0;border-top:2px solid #3a4657;padding:18px 4px 0;text-align:left;cursor:pointer;color:#9e9087;font:600 15px/1.3 "Montserrat",sans-serif;transition:color 160ms ease-out,border-color 160ms ease-out}
.aud-tab:hover{color:#fff}
.aud-tab.on{color:#fff;border-top-color:#d18518}
.aud-tab .n{display:block;font-size:12px;letter-spacing:.18em;color:#d18518;margin-bottom:6px}
.chip{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.04em}

/* Qué estructuramos */
.tile{border-radius:12px;overflow:hidden;position:relative}

/* Frases de cine */
.quote{animation:fadein 700ms ease-out}
.qdot{width:44px;height:44px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.qdot span{width:10px;height:10px;border-radius:50%;background:rgba(23,32,45,.35);transition:background-color 160ms ease-out,transform 160ms ease-out}
.qdot.on span{background:#17202d;transform:scale(1.3)}
.qarrow{width:52px;height:52px;border-radius:50%;border:1px solid #17202d;background:transparent;color:#17202d;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.qarrow:hover{background:#17202d;color:#d18518}

/* Cómo trabajamos: línea de montaje */
.tl{background:#0e141d;border-radius:12px;padding:20px 24px 28px;position:relative}
.tl-ruler{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-left:132px;font-size:11px;letter-spacing:.12em;color:#606f82;border-bottom:1px solid #2c3746;padding-bottom:10px}
.tl-ruler span{border-left:1px solid #2c3746;padding-left:8px}
.tl-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;margin-top:12px}
.tl-label{font-size:11px;font-weight:700;letter-spacing:.14em;color:#9e9087;text-transform:uppercase}
.tl-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;position:relative}
.clip{height:64px;border-radius:6px;border:0;padding:0 14px;text-align:left;background:#2c3746;color:#c9c0b8;font:600 15px/1.25 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,color 160ms ease-out;display:flex;align-items:center;gap:10px}
.clip:hover{background:#3a4657;color:#fff}
.clip.on{background:#d18518;color:#17202d}
.clip .cn{font-size:12px;letter-spacing:.14em;opacity:.8}
.wave{height:26px;border-radius:4px;background-color:#1f2a3a;background-image:repeating-linear-gradient(90deg,#4a5566 0 2px,transparent 2px 6px);opacity:.9}
.wave.on{background-image:repeating-linear-gradient(90deg,#9e9087 0 2px,transparent 2px 6px)}
.wave.off{background:transparent}
.playhead{position:absolute;top:8px;bottom:8px;width:2px;background:#d18518;transition:left 400ms ease-out;pointer-events:none}
.playhead::before{content:"";position:absolute;top:-2px;left:-7px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #d18518}

/* Vídeo */
.vposter{position:relative;display:block;width:100%;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:#000}
.vposter img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform 500ms ease-out}
.vposter:hover img{transform:scale(1.02)}
.play{width:88px;height:88px;border-radius:50%;background:#d18518;display:flex;align-items:center;justify-content:center;transition:background-color 160ms ease-out}
.vposter:hover .play{background:#b87314}
.play::before{content:"";margin-left:6px;border-left:26px solid #fff;border-top:16px solid transparent;border-bottom:16px solid transparent}
.backdrop{position:fixed;inset:0;background:rgba(14,20,29,.92);z-index:40;animation:fadein 200ms ease-out}
.vbox{position:fixed;z-index:41;background:#0e141d;border-radius:12px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.35)}
.vbox.modal{left:50%;top:50%;transform:translate(-50%,-50%);width:min(1100px,92vw)}
.vbox.mini{right:24px;bottom:24px;width:360px}
.vbox video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.vbar{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 18px;color:#fff;font-size:14px;font-weight:600}
.vbtn{min-width:44px;height:44px;border-radius:6px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 13px/1 "Montserrat",sans-serif;padding:0 12px;cursor:pointer}
.vbtn:hover{border-color:#d18518;color:#d18518}


.flink{color:#17202d;text-decoration:none}.flink:hover{text-decoration:underline;text-underline-offset:3px}

.aud-tab{font-size:17px}
/* ── Movimiento: revelado al hacer scroll + parallax (CSS ligado al scroll) ── */
@keyframes upin{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes sealin{from{opacity:0;transform:rotate(-120deg) scale(.7)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: no-preference) {
  .hero .hero-grid > div > *{animation:upin 1000ms cubic-bezier(.2,.7,.2,1) both}
  .hero .hero-grid > div > *:nth-child(1){animation-delay:150ms}
  .hero .hero-grid > div > *:nth-child(2){animation-delay:350ms}
  .hero .hero-grid > div > *:nth-child(3){animation-delay:600ms}
  .hero .hero-grid > div > *:nth-child(4){animation-delay:850ms}
  .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both}
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes rv{from{opacity:0;transform:translateY(90px)}to{opacity:1;transform:none}}
    @keyframes wipe{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
    @keyframes pan{from{object-position:50% 0%}to{object-position:50% 100%}}
    @keyframes zoomout{from{transform:scale(1.3)}to{transform:scale(1)}}
    @keyframes bgdrift{from{background-position:50% 50%}to{background-position:50% 120%}}
    @keyframes sealturn{from{transform:none}to{transform:rotate(-70deg) translateY(60px)}}
    .what-grid > figure:nth-child(2),.g3 > .person:nth-child(2){animation-range:entry 15% cover 45%}
    .g3 > .person:nth-child(3){animation-range:entry 30% cover 55%}
    .what-grid > figure img,.g3 > .person img{animation:pan linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
    .vposter img{animation:zoomout linear both;animation-timeline:view();animation-range:entry 0% cover 60%}
    .hero{animation:bgdrift linear both;animation-timeline:view();animation-range:exit}
    .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both,sealturn linear both;animation-timeline:auto,view();animation-range:normal,exit}
  }
}
/* ── Pie: el anillo del sello ── */
.foot{position:relative;background:#17202d;color:#c9c0b8;padding:24px 64px 28px;overflow:hidden}
.fring-wrap{position:relative;width:min(840px,100%);aspect-ratio:840/470;margin:0 auto;overflow:hidden}
.fring{position:absolute;left:0;top:0;width:100%;height:auto;overflow:visible}
.fring circle{fill:none;stroke:rgba(255,255,255,.55);stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-dasharray:1 1;stroke-dashoffset:0}
.fring circle.inner{stroke:rgba(158,144,135,.28);stroke-width:1}
.fin{position:absolute;inset:0;padding:11% 18% 0;display:flex;flex-direction:column;align-items:center;text-align:center}
.fmark{height:50px;width:auto;display:block}
.fdesc{margin-top:10px;font-family:"Brown",Montserrat,sans-serif;font-weight:300;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:#9e9087}
.fnav{display:grid;grid-template-columns:repeat(3,auto);justify-content:center;margin-top:34px;row-gap:4px}
.fnav a{color:#fff;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:7px 26px;border-left:1px solid rgba(255,255,255,.14);transition:color 200ms}
.fnav a:nth-child(3n+1){border-left:0}
.fnav a:hover,.fnav a.on{color:#d18518}
.frule{display:block;width:56px;height:1px;background:#d18518;margin:30px 0 22px}
.ftag{margin:0;font-size:15px;line-height:1.5;font-style:italic;color:#9e9087;max-width:440px}
.fmail{margin-top:12px;color:#fff;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:.02em}.fmail:hover{color:#d18518}
.ftop{position:absolute;right:40px;bottom:130px;writing-mode:vertical-rl;transform:rotate(180deg);background:none;border:0;color:#c9c0b8;font:700 11px/1 inherit;font-family:inherit;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:8px}.ftop:hover{color:#d18518}
.fbar{border-top:1px solid #2c3746;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:#9e9087;max-width:1312px;margin:0 auto}
.fbar a{color:#9e9087;text-decoration:none}.fbar a:hover{color:#fff}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes ringdraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
    @keyframes finup{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
    .fring-wrap{view-timeline-name:--ring}
    .fring circle.inner{animation-range:entry 15% cover 65%}
  }
}
.jsmotion .fring-wrap.rv-js{transform:none}
.jsmotion .fring-wrap.rv-js circle{stroke-dashoffset:1;transition:stroke-dashoffset 2400ms cubic-bezier(.4,0,.2,1)}
.jsmotion .fring-wrap.in circle{stroke-dashoffset:0}
@media (max-width:1100px){
  .foot{padding:56px 16px 24px}
  .fring-wrap{aspect-ratio:auto;width:100%;overflow:hidden}
  .fring{width:170%;left:-35%;top:0}
  .fin{position:relative;inset:auto;padding:48px 4px 56px}
  .fnav{grid-template-columns:repeat(2,auto)}
  .fnav a{padding:7px 18px;border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(3n+1){border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(2n+1){border-left:0}
  .ftop{display:none}
  .fbar{flex-direction:column}
}
/* ── Menú móvil ── */
html{scroll-behavior:smooth}
#quien,#cierre{scroll-margin-top:84px}
.burger{display:none;width:44px;height:44px;border:1px solid #3a4657;border-radius:6px;background:transparent;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0}
.burger span{display:block;width:20px;height:2px;background:#fff;transition:transform 200ms ease-out,opacity 200ms ease-out}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mmenu{position:fixed;left:0;right:0;top:64px;bottom:0;z-index:19;background:#17202d;padding:32px 16px calc(32px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:4px;overflow-y:auto;animation:fadein 200ms ease-out}
.mmenu a.ml{display:block;padding:14px 0;border-bottom:1px solid #2c3746;font-size:26px;font-weight:700;color:#fff;text-decoration:none}
.mmenu a.ml.on{color:#d18518}
@media (max-width:1100px){
  .burger{display:flex}
  .pg > header{height:64px !important;padding:0 16px !important;gap:12px !important}
  .pg > header > a:first-child img{height:38px !important;width:auto !important}
  .pg > header .lang{margin-left:auto}
  .pg > header > .btn{display:none !important}
  .hero-seal{display:none !important}
  .hero .btn,.sec .btn{width:100%}
  .hero{padding-top:48px !important}
  #cierre h2{font-size:34px !important}
  .hero-title{font-size:36px !important}
  .mmenu{top:64px}
}
@media (min-width:1281px){.mmenu{display:none}}
@media (min-width:821px) and (max-width:1280px){
  .burger{display:flex}
  .nav{display:none !important}
  .pg > header .lang{margin-left:auto}
  .mmenu{top:84px;padding-left:64px;padding-right:64px}
}

/* ── Páginas de perfil ── */
.pimg{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#f2f1ef}
.pimg img{display:block;width:100%;height:100%;object-fit:cover}
.pimg .col{position:absolute;inset:0;clip-path:inset(0 0 0 0);transition:clip-path 900ms cubic-bezier(.6,0,.2,1)}
.pimg:hover .col{clip-path:inset(0 0 0 100%)}
.pimg .sweep{position:absolute;top:0;bottom:0;left:0;width:3px;background:#d18518;box-shadow:0 0 18px rgba(209,133,24,.8);opacity:0;pointer-events:none}
@media (prefers-reduced-motion: no-preference){
  @keyframes colorin{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
  @keyframes sweep{0%{left:0;opacity:1}90%{opacity:1}100%{left:100%;opacity:0}}
  .pimg .col{animation:colorin 1900ms cubic-bezier(.6,0,.2,1) 900ms backwards}
  .pimg .sweep{animation:sweep 1900ms cubic-bezier(.6,0,.2,1) 900ms both}
}
.faqgrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:72px;align-items:start}
.faqink{margin:0;aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:#f2f1ef}
.faqink img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;mix-blend-mode:multiply;filter:contrast(1.08) brightness(1.04)}
@media (max-width:1024px){
  .faqgrid{grid-template-columns:1fr !important;gap:40px}
  .faqink{order:-1;aspect-ratio:16/9}
}
.pimg .esc{position:absolute;left:16px;top:16px;background:#17202d;color:#d18518;border-radius:3px;padding:7px 10px;font-size:12px;font-weight:700;letter-spacing:.18em}
.keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #c9c0b8;margin-top:48px}
.key{padding:40px 40px 8px 0;display:flex;flex-direction:column;gap:14px;min-width:0}
.key + .key{padding-left:40px;border-left:1px solid #c9c0b8}
.kdisc{width:52px;height:52px;border-radius:50%;background:#17202d;display:flex;align-items:center;justify-content:center}
.kdisc img{width:24px;height:24px;filter:brightness(0) invert(1)}
.key h3{margin:8px 0 0;font-size:28px;line-height:1.2;font-weight:700;color:#17202d}
.key p{margin:0;font-size:17px;line-height:1.5}
/* flujo de financiación */
.flow{display:grid;grid-template-columns:minmax(0,1fr) 112px minmax(0,1fr) 112px minmax(0,1fr);align-items:stretch;margin-top:48px}
.fnode{background:#1f2a3a;border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:10px}
.fnode.mid{background:#d18518}
.fnode.mid h3,.fnode.mid p{color:#17202d !important}
.fnode h3{margin:0;font-size:23px;font-weight:700;color:#fff}
.fnode p{margin:0;font-size:16px;line-height:1.5;color:#c9c0b8}
.farrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#d18518}
.farrow i{display:block;width:72px;height:2px;background:#d18518;position:relative}
.farrow i::after{content:"";position:absolute;right:-2px;top:-5px;border-left:10px solid #d18518;border-top:6px solid transparent;border-bottom:6px solid transparent}
.checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 40px}
.checks li{display:grid;grid-template-columns:24px 1fr;gap:10px;font-size:17px;line-height:1.45;color:#fff}
.checks li::before{content:"✔";color:#d18518;font-weight:700}
/* calculadora */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:start;margin-top:48px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.amt{min-height:48px;padding:0 20px;border-radius:999px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 16px/1 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,border-color 160ms ease-out}
.amt:hover{border-color:#d18518}
.amt.on{background:#d18518;border-color:#d18518;color:#17202d}
.calc-panel{background:#1f2a3a;border-radius:14px;padding:12px 32px}
.crow{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:22px 0;border-bottom:1px solid #2c3746}
.crow:last-child{border-bottom:0}
.crow span{font-size:15px;color:#9e9087}
.crow b{font-size:40px;line-height:1;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap}
.crow.big b{font-size:60px;color:#d18518}
.points{display:grid;gap:20px;margin-top:40px}
.point h3{margin:0;font-size:19px;font-weight:700;color:#fff}
.point p{margin:6px 0 0;font-size:16px;line-height:1.5;color:#9e9087}
/* guion */
.paper{max-width:820px;margin:48px auto 0;background:#fdfcf9;color:#1b1b1b;border-radius:4px;padding:72px 88px 64px;box-shadow:0 6px 22px rgba(0,0,0,.35);font-family:"Courier Prime","Courier New",monospace;font-size:18px;line-height:1.5;position:relative;transform:rotate(-.6deg)}
.paper .pno{position:absolute;right:56px;top:32px;color:#606060}
.scene{margin:0 0 28px}
.scene b{display:block;font-weight:700;letter-spacing:.02em}
.scene p{margin:8px 0 0}
.fade{text-align:right;font-weight:700;margin-top:8px}
.fadetxt{margin-top:24px;text-align:center;font-weight:700;color:#896614}
/* entradas */
.tickets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px}
.ticket{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);background:#f3eee8;border-radius:12px;min-height:280px;color:#3a3a3a}
.ticket::before,.ticket::after{content:"";position:absolute;left:61px;width:22px;height:22px;border-radius:50%;background:#17202d}
.ticket::before{top:-11px}.ticket::after{bottom:-11px}
.stub{border-right:2px dashed #c9c0b8;display:flex;align-items:center;justify-content:center}
.stub span{transform:rotate(-90deg);white-space:nowrap;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.tbody{padding:28px 28px 28px 32px;display:flex;flex-direction:column;gap:10px;min-width:0}
.tbody .tk{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#896614}
.tbody .tb{font-size:56px;line-height:1;font-weight:700;color:#d18518}
.tbody p{margin:0;font-size:16px;line-height:1.5}
/* preguntas */
.faqs{border-top:1px solid #c9c0b8;margin-top:40px}
.faq{border-bottom:1px solid #c9c0b8}
.faq button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;background:transparent;border:0;padding:26px 0;text-align:left;cursor:pointer;font:700 21px/1.35 "Montserrat",sans-serif;color:#17202d}
.faq button:hover{color:#896614}
.faq .sg{flex:0 0 auto;width:36px;height:36px;border-radius:50%;border:1px solid #c9c0b8;display:flex;align-items:center;justify-content:center;font-size:20px;color:#d18518}
.faq.on .sg{background:#17202d;border-color:#17202d}
.faq .ans{margin:0;padding:0 64px 28px 0;max-width:780px;font-size:17px;line-height:1.6;animation:fadein 300ms ease-out}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .keys > .key:nth-child(2),.tickets > .ticket:nth-child(2),.flow > .fnode:nth-child(3){animation-range:entry 15% cover 45%}
    .keys > .key:nth-child(3),.tickets > .ticket:nth-child(3),.flow > .fnode:nth-child(5){animation-range:entry 30% cover 55%}
    @keyframes inkin{from{clip-path:inset(50% 50% 50% 50% round 12px);opacity:.2}to{clip-path:inset(0 0 0 0 round 12px);opacity:1}}
  }
}
@media (max-width:1100px){
  .keys,.tickets,.checks,.calc{grid-template-columns:1fr !important}
  .key + .key{padding-left:0;border-left:0;border-top:1px solid #c9c0b8}
  .key{padding:28px 0 8px}
  .flow{grid-template-columns:1fr}
  .farrow{flex-direction:row;padding:14px 0}.farrow i{width:2px;height:40px}.farrow i::after{right:-5px;top:auto;bottom:-2px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:10px solid #d18518;border-bottom:0}
  .paper{padding:48px 24px 40px;font-size:15px;transform:none}
  .crow b{font-size:30px}.crow.big b{font-size:42px}
  .faq button{font-size:18px}.faq .ans{padding-right:0}
}
@media (prefers-reduced-motion:reduce){.slide-img,.slide-txt,.quote,.backdrop{animation:none}.playhead{transition:none}}
@media (max-width:1100px){
  .nav{display:none !important}
  .hero-grid,.what-grid,.video-box{grid-template-columns:1fr !important}
  .hero-art{height:auto !important}
  .hero-title{font-size:38px !important}
  .aud-tabs{flex-wrap:wrap}.aud-tab{flex:1 1 45%}
  .g3,.foot-grid{grid-template-columns:1fr !important}
  .sec{padding-left:16px !important;padding-right:16px !important;padding-top:64px !important;padding-bottom:64px !important}
  .h2{font-size:30px}
  .qtext{font-size:36px !important}
  .q-big{font-size:44px !important}
  .hero-seal{width:120px !important;height:120px !important;order:-1}
  .tl-ruler{margin-left:0}.tl-row{grid-template-columns:1fr}.tl-label{display:none}.clip .ct{display:none}
  .vbox.mini{width:calc(100vw - 32px);right:16px;bottom:16px}
}






@font-face{font-family:"Brown";src:url("/assets/fonts/Brown-Light.woff") format("woff");font-weight:300;font-display:swap}
body{margin:0}
a{color:inherit}
.pg{font-family:"Montserrat",Helvetica,Arial,sans-serif;color:#3a3a3a;background:#fff;-webkit-font-smoothing:antialiased}
.pg *{box-sizing:border-box}
.pg :focus-visible{outline:2px solid #d18518;outline-offset:2px}
.wrap{max-width:1248px;margin:0 auto}
.eyebrow{margin:0;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.navy .eyebrow{color:#d18518}
.h2{margin:16px 0 0;font-size:40px;line-height:1.22;font-weight:700;color:#17202d}
.navy .h2{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:16px 26px;border-radius:6px;font:700 19px/1 "Montserrat",sans-serif;text-decoration:none;border:1px solid transparent;transition:background-color 160ms ease-out,border-color 160ms ease-out;cursor:pointer}
.btn-p{background:#d18518;color:#fff}.btn-p:hover{background:#b87314}
.btn-g{background:transparent;color:#fff;border-color:#9e9087}.btn-g:hover{background:rgba(255,255,255,.06)}
.lang{display:flex;gap:2px;border:1px solid #3a4657;border-radius:6px;padding:2px}
.lang button{font:600 13px/1 "Montserrat",sans-serif;letter-spacing:.06em;background:transparent;color:#c9c0b8;border:0;border-radius:4px;padding:9px 10px;min-width:40px;cursor:pointer}
.lang button.on{background:#d18518;color:#fff}
.nav a{font-size:15px;font-weight:600;color:#fff;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover{color:#d18518}
.nav a.on{color:#d18518;border-bottom-color:#d18518}

/* Hero por audiencias */
.hero{background-color:#17202d;background-image:url("/assets/img/11be7576d20dabf8d30bbf1e36a05f50.webp");background-size:cover;background-position:center}
.slide-img{width:100%;height:100%;object-fit:cover;display:block;animation:fadein 600ms ease-out}
.slide-txt{animation:fadein 500ms ease-out}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.aud-tab{flex:1 1 0;min-width:0;background:transparent;border:0;border-top:2px solid #3a4657;padding:18px 4px 0;text-align:left;cursor:pointer;color:#9e9087;font:600 15px/1.3 "Montserrat",sans-serif;transition:color 160ms ease-out,border-color 160ms ease-out}
.aud-tab:hover{color:#fff}
.aud-tab.on{color:#fff;border-top-color:#d18518}
.aud-tab .n{display:block;font-size:12px;letter-spacing:.18em;color:#d18518;margin-bottom:6px}
.chip{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.04em}

/* Qué estructuramos */
.tile{border-radius:12px;overflow:hidden;position:relative}

/* Frases de cine */
.quote{animation:fadein 700ms ease-out}
.qdot{width:44px;height:44px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.qdot span{width:10px;height:10px;border-radius:50%;background:rgba(23,32,45,.35);transition:background-color 160ms ease-out,transform 160ms ease-out}
.qdot.on span{background:#17202d;transform:scale(1.3)}
.qarrow{width:52px;height:52px;border-radius:50%;border:1px solid #17202d;background:transparent;color:#17202d;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.qarrow:hover{background:#17202d;color:#d18518}

/* Cómo trabajamos: línea de montaje */
.tl{background:#0e141d;border-radius:12px;padding:20px 24px 28px;position:relative}
.tl-ruler{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-left:132px;font-size:11px;letter-spacing:.12em;color:#606f82;border-bottom:1px solid #2c3746;padding-bottom:10px}
.tl-ruler span{border-left:1px solid #2c3746;padding-left:8px}
.tl-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;margin-top:12px}
.tl-label{font-size:11px;font-weight:700;letter-spacing:.14em;color:#9e9087;text-transform:uppercase}
.tl-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;position:relative}
.clip{height:64px;border-radius:6px;border:0;padding:0 14px;text-align:left;background:#2c3746;color:#c9c0b8;font:600 15px/1.25 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,color 160ms ease-out;display:flex;align-items:center;gap:10px}
.clip:hover{background:#3a4657;color:#fff}
.clip.on{background:#d18518;color:#17202d}
.clip .cn{font-size:12px;letter-spacing:.14em;opacity:.8}
.wave{height:26px;border-radius:4px;background-color:#1f2a3a;background-image:repeating-linear-gradient(90deg,#4a5566 0 2px,transparent 2px 6px);opacity:.9}
.wave.on{background-image:repeating-linear-gradient(90deg,#9e9087 0 2px,transparent 2px 6px)}
.wave.off{background:transparent}
.playhead{position:absolute;top:8px;bottom:8px;width:2px;background:#d18518;transition:left 400ms ease-out;pointer-events:none}
.playhead::before{content:"";position:absolute;top:-2px;left:-7px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #d18518}

/* Vídeo */
.vposter{position:relative;display:block;width:100%;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:#000}
.vposter img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform 500ms ease-out}
.vposter:hover img{transform:scale(1.02)}
.play{width:88px;height:88px;border-radius:50%;background:#d18518;display:flex;align-items:center;justify-content:center;transition:background-color 160ms ease-out}
.vposter:hover .play{background:#b87314}
.play::before{content:"";margin-left:6px;border-left:26px solid #fff;border-top:16px solid transparent;border-bottom:16px solid transparent}
.backdrop{position:fixed;inset:0;background:rgba(14,20,29,.92);z-index:40;animation:fadein 200ms ease-out}
.vbox{position:fixed;z-index:41;background:#0e141d;border-radius:12px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.35)}
.vbox.modal{left:50%;top:50%;transform:translate(-50%,-50%);width:min(1100px,92vw)}
.vbox.mini{right:24px;bottom:24px;width:360px}
.vbox video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.vbar{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 18px;color:#fff;font-size:14px;font-weight:600}
.vbtn{min-width:44px;height:44px;border-radius:6px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 13px/1 "Montserrat",sans-serif;padding:0 12px;cursor:pointer}
.vbtn:hover{border-color:#d18518;color:#d18518}


.flink{color:#17202d;text-decoration:none}.flink:hover{text-decoration:underline;text-underline-offset:3px}

.aud-tab{font-size:17px}
/* ── Movimiento: revelado al hacer scroll + parallax (CSS ligado al scroll) ── */
@keyframes upin{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes sealin{from{opacity:0;transform:rotate(-120deg) scale(.7)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: no-preference) {
  .hero .hero-grid > div > *{animation:upin 1000ms cubic-bezier(.2,.7,.2,1) both}
  .hero .hero-grid > div > *:nth-child(1){animation-delay:150ms}
  .hero .hero-grid > div > *:nth-child(2){animation-delay:350ms}
  .hero .hero-grid > div > *:nth-child(3){animation-delay:600ms}
  .hero .hero-grid > div > *:nth-child(4){animation-delay:850ms}
  .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both}
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes rv{from{opacity:0;transform:translateY(90px)}to{opacity:1;transform:none}}
    @keyframes wipe{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
    @keyframes pan{from{object-position:50% 0%}to{object-position:50% 100%}}
    @keyframes zoomout{from{transform:scale(1.3)}to{transform:scale(1)}}
    @keyframes bgdrift{from{background-position:50% 50%}to{background-position:50% 120%}}
    @keyframes sealturn{from{transform:none}to{transform:rotate(-70deg) translateY(60px)}}
    .what-grid > figure:nth-child(2),.g3 > .person:nth-child(2){animation-range:entry 15% cover 45%}
    .g3 > .person:nth-child(3){animation-range:entry 30% cover 55%}
    .what-grid > figure img,.g3 > .person img{animation:pan linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
    .vposter img{animation:zoomout linear both;animation-timeline:view();animation-range:entry 0% cover 60%}
    .hero{animation:bgdrift linear both;animation-timeline:view();animation-range:exit}
    .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both,sealturn linear both;animation-timeline:auto,view();animation-range:normal,exit}
  }
}
/* ── Pie: el anillo del sello ── */
.foot{position:relative;background:#17202d;color:#c9c0b8;padding:24px 64px 28px;overflow:hidden}
.fring-wrap{position:relative;width:min(840px,100%);aspect-ratio:840/470;margin:0 auto;overflow:hidden}
.fring{position:absolute;left:0;top:0;width:100%;height:auto;overflow:visible}
.fring circle{fill:none;stroke:rgba(255,255,255,.55);stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-dasharray:1 1;stroke-dashoffset:0}
.fring circle.inner{stroke:rgba(158,144,135,.28);stroke-width:1}
.fin{position:absolute;inset:0;padding:11% 18% 0;display:flex;flex-direction:column;align-items:center;text-align:center}
.fmark{height:50px;width:auto;display:block}
.fdesc{margin-top:10px;font-family:"Brown",Montserrat,sans-serif;font-weight:300;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:#9e9087}
.fnav{display:grid;grid-template-columns:repeat(3,auto);justify-content:center;margin-top:34px;row-gap:4px}
.fnav a{color:#fff;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:7px 26px;border-left:1px solid rgba(255,255,255,.14);transition:color 200ms}
.fnav a:nth-child(3n+1){border-left:0}
.fnav a:hover,.fnav a.on{color:#d18518}
.frule{display:block;width:56px;height:1px;background:#d18518;margin:30px 0 22px}
.ftag{margin:0;font-size:15px;line-height:1.5;font-style:italic;color:#9e9087;max-width:440px}
.fmail{margin-top:12px;color:#fff;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:.02em}.fmail:hover{color:#d18518}
.ftop{position:absolute;right:40px;bottom:130px;writing-mode:vertical-rl;transform:rotate(180deg);background:none;border:0;color:#c9c0b8;font:700 11px/1 inherit;font-family:inherit;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:8px}.ftop:hover{color:#d18518}
.fbar{border-top:1px solid #2c3746;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:#9e9087;max-width:1312px;margin:0 auto}
.fbar a{color:#9e9087;text-decoration:none}.fbar a:hover{color:#fff}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes ringdraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
    @keyframes finup{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
    .fring-wrap{view-timeline-name:--ring}
    .fring circle.inner{animation-range:entry 15% cover 65%}
  }
}
.jsmotion .fring-wrap.rv-js{transform:none}
.jsmotion .fring-wrap.rv-js circle{stroke-dashoffset:1;transition:stroke-dashoffset 2400ms cubic-bezier(.4,0,.2,1)}
.jsmotion .fring-wrap.in circle{stroke-dashoffset:0}
@media (max-width:1100px){
  .foot{padding:56px 16px 24px}
  .fring-wrap{aspect-ratio:auto;width:100%;overflow:hidden}
  .fring{width:170%;left:-35%;top:0}
  .fin{position:relative;inset:auto;padding:48px 4px 56px}
  .fnav{grid-template-columns:repeat(2,auto)}
  .fnav a{padding:7px 18px;border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(3n+1){border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(2n+1){border-left:0}
  .ftop{display:none}
  .fbar{flex-direction:column}
}
/* ── Menú móvil ── */
html{scroll-behavior:smooth}
#quien,#cierre{scroll-margin-top:84px}
.burger{display:none;width:44px;height:44px;border:1px solid #3a4657;border-radius:6px;background:transparent;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0}
.burger span{display:block;width:20px;height:2px;background:#fff;transition:transform 200ms ease-out,opacity 200ms ease-out}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mmenu{position:fixed;left:0;right:0;top:64px;bottom:0;z-index:19;background:#17202d;padding:32px 16px calc(32px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:4px;overflow-y:auto;animation:fadein 200ms ease-out}
.mmenu a.ml{display:block;padding:14px 0;border-bottom:1px solid #2c3746;font-size:26px;font-weight:700;color:#fff;text-decoration:none}
.mmenu a.ml.on{color:#d18518}
@media (max-width:1100px){
  .burger{display:flex}
  .pg > header{height:64px !important;padding:0 16px !important;gap:12px !important}
  .pg > header > a:first-child img{height:38px !important;width:auto !important}
  .pg > header .lang{margin-left:auto}
  .pg > header > .btn{display:none !important}
  .hero-seal{display:none !important}
  .hero .btn,.sec .btn{width:100%}
  .hero{padding-top:48px !important}
  #cierre h2{font-size:34px !important}
  .hero-title{font-size:36px !important}
  .mmenu{top:64px}
}
@media (min-width:1281px){.mmenu{display:none}}
@media (min-width:821px) and (max-width:1280px){
  .burger{display:flex}
  .nav{display:none !important}
  .pg > header .lang{margin-left:auto}
  .mmenu{top:84px;padding-left:64px;padding-right:64px}
}

/* ── Páginas de perfil ── */
.pimg{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#f2f1ef}
.pimg img{display:block;width:100%;height:100%;object-fit:cover}
.pimg .col{position:absolute;inset:0;clip-path:inset(0 0 0 0);transition:clip-path 900ms cubic-bezier(.6,0,.2,1)}
.pimg:hover .col{clip-path:inset(0 0 0 100%)}
.pimg .sweep{position:absolute;top:0;bottom:0;left:0;width:3px;background:#d18518;box-shadow:0 0 18px rgba(209,133,24,.8);opacity:0;pointer-events:none}
@media (prefers-reduced-motion: no-preference){
  @keyframes colorin{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
  @keyframes sweep{0%{left:0;opacity:1}90%{opacity:1}100%{left:100%;opacity:0}}
  .pimg .col{animation:colorin 1900ms cubic-bezier(.6,0,.2,1) 900ms backwards}
  .pimg .sweep{animation:sweep 1900ms cubic-bezier(.6,0,.2,1) 900ms both}
}
.faqgrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:72px;align-items:start}
.faqink{margin:0;aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:#f2f1ef}
.faqink img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;mix-blend-mode:multiply;filter:contrast(1.08) brightness(1.04)}
@media (max-width:1024px){
  .faqgrid{grid-template-columns:1fr !important;gap:40px}
  .faqink{order:-1;aspect-ratio:16/9}
}
.pimg .esc{position:absolute;left:16px;top:16px;background:#17202d;color:#d18518;border-radius:3px;padding:7px 10px;font-size:12px;font-weight:700;letter-spacing:.18em}
.keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #c9c0b8;margin-top:48px}
.key{padding:40px 40px 8px 0;display:flex;flex-direction:column;gap:14px;min-width:0}
.key + .key{padding-left:40px;border-left:1px solid #c9c0b8}
.kdisc{width:52px;height:52px;border-radius:50%;background:#17202d;display:flex;align-items:center;justify-content:center}
.kdisc img{width:24px;height:24px;filter:brightness(0) invert(1)}
.key h3{margin:8px 0 0;font-size:28px;line-height:1.2;font-weight:700;color:#17202d}
.key p{margin:0;font-size:17px;line-height:1.5}
/* flujo de financiación */
.flow{display:grid;grid-template-columns:minmax(0,1fr) 112px minmax(0,1fr) 112px minmax(0,1fr);align-items:stretch;margin-top:48px}
.fnode{background:#1f2a3a;border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:10px}
.fnode.mid{background:#d18518}
.fnode.mid h3,.fnode.mid p{color:#17202d !important}
.fnode h3{margin:0;font-size:23px;font-weight:700;color:#fff}
.fnode p{margin:0;font-size:16px;line-height:1.5;color:#c9c0b8}
.farrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#d18518}
.farrow i{display:block;width:72px;height:2px;background:#d18518;position:relative}
.farrow i::after{content:"";position:absolute;right:-2px;top:-5px;border-left:10px solid #d18518;border-top:6px solid transparent;border-bottom:6px solid transparent}
.checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 40px}
.checks li{display:grid;grid-template-columns:24px 1fr;gap:10px;font-size:17px;line-height:1.45;color:#fff}
.checks li::before{content:"✔";color:#d18518;font-weight:700}
/* calculadora */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:start;margin-top:48px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.amt{min-height:48px;padding:0 20px;border-radius:999px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 16px/1 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,border-color 160ms ease-out}
.amt:hover{border-color:#d18518}
.amt.on{background:#d18518;border-color:#d18518;color:#17202d}
.calc-panel{background:#1f2a3a;border-radius:14px;padding:12px 32px}
.crow{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:22px 0;border-bottom:1px solid #2c3746}
.crow:last-child{border-bottom:0}
.crow span{font-size:15px;color:#9e9087}
.crow b{font-size:40px;line-height:1;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap}
.crow.big b{font-size:60px;color:#d18518}
.points{display:grid;gap:20px;margin-top:40px}
.point h3{margin:0;font-size:19px;font-weight:700;color:#fff}
.point p{margin:6px 0 0;font-size:16px;line-height:1.5;color:#9e9087}
/* guion */
.paper{max-width:820px;margin:48px auto 0;background:#fdfcf9;color:#1b1b1b;border-radius:4px;padding:72px 88px 64px;box-shadow:0 6px 22px rgba(0,0,0,.35);font-family:"Courier Prime","Courier New",monospace;font-size:18px;line-height:1.5;position:relative;transform:rotate(-.6deg)}
.paper .pno{position:absolute;right:56px;top:32px;color:#606060}
.scene{margin:0 0 28px}
.scene b{display:block;font-weight:700;letter-spacing:.02em}
.scene p{margin:8px 0 0}
.fade{text-align:right;font-weight:700;margin-top:8px}
.fadetxt{margin-top:24px;text-align:center;font-weight:700;color:#896614}
/* entradas */
.tickets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px}
.ticket{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);background:#f3eee8;border-radius:12px;min-height:280px;color:#3a3a3a}
.ticket::before,.ticket::after{content:"";position:absolute;left:61px;width:22px;height:22px;border-radius:50%;background:#17202d}
.ticket::before{top:-11px}.ticket::after{bottom:-11px}
.stub{border-right:2px dashed #c9c0b8;display:flex;align-items:center;justify-content:center}
.stub span{transform:rotate(-90deg);white-space:nowrap;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.tbody{padding:28px 28px 28px 32px;display:flex;flex-direction:column;gap:10px;min-width:0}
.tbody .tk{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#896614}
.tbody .tb{font-size:56px;line-height:1;font-weight:700;color:#d18518}
.tbody p{margin:0;font-size:16px;line-height:1.5}
/* preguntas */
.faqs{border-top:1px solid #c9c0b8;margin-top:40px}
.faq{border-bottom:1px solid #c9c0b8}
.faq button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;background:transparent;border:0;padding:26px 0;text-align:left;cursor:pointer;font:700 21px/1.35 "Montserrat",sans-serif;color:#17202d}
.faq button:hover{color:#896614}
.faq .sg{flex:0 0 auto;width:36px;height:36px;border-radius:50%;border:1px solid #c9c0b8;display:flex;align-items:center;justify-content:center;font-size:20px;color:#d18518}
.faq.on .sg{background:#17202d;border-color:#17202d}
.faq .ans{margin:0;padding:0 64px 28px 0;max-width:780px;font-size:17px;line-height:1.6;animation:fadein 300ms ease-out}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .keys > .key:nth-child(2),.tickets > .ticket:nth-child(2),.flow > .fnode:nth-child(3){animation-range:entry 15% cover 45%}
    .keys > .key:nth-child(3),.tickets > .ticket:nth-child(3),.flow > .fnode:nth-child(5){animation-range:entry 30% cover 55%}
    @keyframes inkin{from{clip-path:inset(50% 50% 50% 50% round 12px);opacity:.2}to{clip-path:inset(0 0 0 0 round 12px);opacity:1}}
  }
}
@media (max-width:1100px){
  .keys,.tickets,.checks,.calc{grid-template-columns:1fr !important}
  .key + .key{padding-left:0;border-left:0;border-top:1px solid #c9c0b8}
  .key{padding:28px 0 8px}
  .flow{grid-template-columns:1fr}
  .farrow{flex-direction:row;padding:14px 0}.farrow i{width:2px;height:40px}.farrow i::after{right:-5px;top:auto;bottom:-2px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:10px solid #d18518;border-bottom:0}
  .paper{padding:48px 24px 40px;font-size:15px;transform:none}
  .crow b{font-size:30px}.crow.big b{font-size:42px}
  .faq button{font-size:18px}.faq .ans{padding-right:0}
}
@media (prefers-reduced-motion:reduce){.slide-img,.slide-txt,.quote,.backdrop{animation:none}.playhead{transition:none}}
@media (max-width:1100px){
  .nav{display:none !important}
  .hero-grid,.what-grid,.video-box{grid-template-columns:1fr !important}
  .hero-art{height:auto !important}
  .hero-title{font-size:38px !important}
  .aud-tabs{flex-wrap:wrap}.aud-tab{flex:1 1 45%}
  .g3,.foot-grid{grid-template-columns:1fr !important}
  .sec{padding-left:16px !important;padding-right:16px !important;padding-top:64px !important;padding-bottom:64px !important}
  .h2{font-size:30px}
  .qtext{font-size:36px !important}
  .q-big{font-size:44px !important}
  .hero-seal{width:120px !important;height:120px !important;order:-1}
  .tl-ruler{margin-left:0}.tl-row{grid-template-columns:1fr}.tl-label{display:none}.clip .ct{display:none}
  .vbox.mini{width:calc(100vw - 32px);right:16px;bottom:16px}
}






@font-face{font-family:"Brown";src:url("/assets/fonts/Brown-Light.woff") format("woff");font-weight:300;font-display:swap}
body{margin:0}
a{color:inherit}
.pg{font-family:"Montserrat",Helvetica,Arial,sans-serif;color:#3a3a3a;background:#fff;-webkit-font-smoothing:antialiased}
.pg *{box-sizing:border-box}
.pg :focus-visible{outline:2px solid #d18518;outline-offset:2px}
.wrap{max-width:1248px;margin:0 auto}
.eyebrow{margin:0;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.navy .eyebrow{color:#d18518}
.h2{margin:16px 0 0;font-size:40px;line-height:1.22;font-weight:700;color:#17202d}
.navy .h2{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:16px 26px;border-radius:6px;font:700 19px/1 "Montserrat",sans-serif;text-decoration:none;border:1px solid transparent;transition:background-color 160ms ease-out,border-color 160ms ease-out;cursor:pointer}
.btn-p{background:#d18518;color:#fff}.btn-p:hover{background:#b87314}
.btn-g{background:transparent;color:#fff;border-color:#9e9087}.btn-g:hover{background:rgba(255,255,255,.06)}
.lang{display:flex;gap:2px;border:1px solid #3a4657;border-radius:6px;padding:2px}
.lang button{font:600 13px/1 "Montserrat",sans-serif;letter-spacing:.06em;background:transparent;color:#c9c0b8;border:0;border-radius:4px;padding:9px 10px;min-width:40px;cursor:pointer}
.lang button.on{background:#d18518;color:#fff}
.nav a{font-size:15px;font-weight:600;color:#fff;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover{color:#d18518}
.nav a.on{color:#d18518;border-bottom-color:#d18518}

/* Hero por audiencias */
.hero{background-color:#17202d;background-image:url("/assets/img/11be7576d20dabf8d30bbf1e36a05f50.webp");background-size:cover;background-position:center}
.slide-img{width:100%;height:100%;object-fit:cover;display:block;animation:fadein 600ms ease-out}
.slide-txt{animation:fadein 500ms ease-out}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.aud-tab{flex:1 1 0;min-width:0;background:transparent;border:0;border-top:2px solid #3a4657;padding:18px 4px 0;text-align:left;cursor:pointer;color:#9e9087;font:600 15px/1.3 "Montserrat",sans-serif;transition:color 160ms ease-out,border-color 160ms ease-out}
.aud-tab:hover{color:#fff}
.aud-tab.on{color:#fff;border-top-color:#d18518}
.aud-tab .n{display:block;font-size:12px;letter-spacing:.18em;color:#d18518;margin-bottom:6px}
.chip{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.04em}

/* Qué estructuramos */
.tile{border-radius:12px;overflow:hidden;position:relative}

/* Frases de cine */
.quote{animation:fadein 700ms ease-out}
.qdot{width:44px;height:44px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.qdot span{width:10px;height:10px;border-radius:50%;background:rgba(23,32,45,.35);transition:background-color 160ms ease-out,transform 160ms ease-out}
.qdot.on span{background:#17202d;transform:scale(1.3)}
.qarrow{width:52px;height:52px;border-radius:50%;border:1px solid #17202d;background:transparent;color:#17202d;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.qarrow:hover{background:#17202d;color:#d18518}

/* Cómo trabajamos: línea de montaje */
.tl{background:#0e141d;border-radius:12px;padding:20px 24px 28px;position:relative}
.tl-ruler{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-left:132px;font-size:11px;letter-spacing:.12em;color:#606f82;border-bottom:1px solid #2c3746;padding-bottom:10px}
.tl-ruler span{border-left:1px solid #2c3746;padding-left:8px}
.tl-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;margin-top:12px}
.tl-label{font-size:11px;font-weight:700;letter-spacing:.14em;color:#9e9087;text-transform:uppercase}
.tl-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;position:relative}
.clip{height:64px;border-radius:6px;border:0;padding:0 14px;text-align:left;background:#2c3746;color:#c9c0b8;font:600 15px/1.25 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,color 160ms ease-out;display:flex;align-items:center;gap:10px}
.clip:hover{background:#3a4657;color:#fff}
.clip.on{background:#d18518;color:#17202d}
.clip .cn{font-size:12px;letter-spacing:.14em;opacity:.8}
.wave{height:26px;border-radius:4px;background-color:#1f2a3a;background-image:repeating-linear-gradient(90deg,#4a5566 0 2px,transparent 2px 6px);opacity:.9}
.wave.on{background-image:repeating-linear-gradient(90deg,#9e9087 0 2px,transparent 2px 6px)}
.wave.off{background:transparent}
.playhead{position:absolute;top:8px;bottom:8px;width:2px;background:#d18518;transition:left 400ms ease-out;pointer-events:none}
.playhead::before{content:"";position:absolute;top:-2px;left:-7px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #d18518}

/* Vídeo */
.vposter{position:relative;display:block;width:100%;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:#000}
.vposter img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform 500ms ease-out}
.vposter:hover img{transform:scale(1.02)}
.play{width:88px;height:88px;border-radius:50%;background:#d18518;display:flex;align-items:center;justify-content:center;transition:background-color 160ms ease-out}
.vposter:hover .play{background:#b87314}
.play::before{content:"";margin-left:6px;border-left:26px solid #fff;border-top:16px solid transparent;border-bottom:16px solid transparent}
.backdrop{position:fixed;inset:0;background:rgba(14,20,29,.92);z-index:40;animation:fadein 200ms ease-out}
.vbox{position:fixed;z-index:41;background:#0e141d;border-radius:12px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.35)}
.vbox.modal{left:50%;top:50%;transform:translate(-50%,-50%);width:min(1100px,92vw)}
.vbox.mini{right:24px;bottom:24px;width:360px}
.vbox video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.vbar{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 18px;color:#fff;font-size:14px;font-weight:600}
.vbtn{min-width:44px;height:44px;border-radius:6px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 13px/1 "Montserrat",sans-serif;padding:0 12px;cursor:pointer}
.vbtn:hover{border-color:#d18518;color:#d18518}


.flink{color:#17202d;text-decoration:none}.flink:hover{text-decoration:underline;text-underline-offset:3px}

.aud-tab{font-size:17px}
/* ── Movimiento: revelado al hacer scroll + parallax (CSS ligado al scroll) ── */
@keyframes upin{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes sealin{from{opacity:0;transform:rotate(-120deg) scale(.7)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: no-preference) {
  .hero .hero-grid > div > *{animation:upin 1000ms cubic-bezier(.2,.7,.2,1) both}
  .hero .hero-grid > div > *:nth-child(1){animation-delay:150ms}
  .hero .hero-grid > div > *:nth-child(2){animation-delay:350ms}
  .hero .hero-grid > div > *:nth-child(3){animation-delay:600ms}
  .hero .hero-grid > div > *:nth-child(4){animation-delay:850ms}
  .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both}
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes rv{from{opacity:0;transform:translateY(90px)}to{opacity:1;transform:none}}
    @keyframes wipe{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
    @keyframes pan{from{object-position:50% 0%}to{object-position:50% 100%}}
    @keyframes zoomout{from{transform:scale(1.3)}to{transform:scale(1)}}
    @keyframes bgdrift{from{background-position:50% 50%}to{background-position:50% 120%}}
    @keyframes sealturn{from{transform:none}to{transform:rotate(-70deg) translateY(60px)}}
    .what-grid > figure:nth-child(2),.g3 > .person:nth-child(2){animation-range:entry 15% cover 45%}
    .g3 > .person:nth-child(3){animation-range:entry 30% cover 55%}
    .what-grid > figure img,.g3 > .person img{animation:pan linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
    .vposter img{animation:zoomout linear both;animation-timeline:view();animation-range:entry 0% cover 60%}
    .hero{animation:bgdrift linear both;animation-timeline:view();animation-range:exit}
    .hero-seal{animation:sealin 1600ms cubic-bezier(.2,.7,.2,1) 300ms both,sealturn linear both;animation-timeline:auto,view();animation-range:normal,exit}
  }
}
/* ── Pie: el anillo del sello ── */
.foot{position:relative;background:#17202d;color:#c9c0b8;padding:24px 64px 28px;overflow:hidden}
.fring-wrap{position:relative;width:min(840px,100%);aspect-ratio:840/470;margin:0 auto;overflow:hidden}
.fring{position:absolute;left:0;top:0;width:100%;height:auto;overflow:visible}
.fring circle{fill:none;stroke:rgba(255,255,255,.55);stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-dasharray:1 1;stroke-dashoffset:0}
.fring circle.inner{stroke:rgba(158,144,135,.28);stroke-width:1}
.fin{position:absolute;inset:0;padding:11% 18% 0;display:flex;flex-direction:column;align-items:center;text-align:center}
.fmark{height:50px;width:auto;display:block}
.fdesc{margin-top:10px;font-family:"Brown",Montserrat,sans-serif;font-weight:300;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:#9e9087}
.fnav{display:grid;grid-template-columns:repeat(3,auto);justify-content:center;margin-top:34px;row-gap:4px}
.fnav a{color:#fff;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:7px 26px;border-left:1px solid rgba(255,255,255,.14);transition:color 200ms}
.fnav a:nth-child(3n+1){border-left:0}
.fnav a:hover,.fnav a.on{color:#d18518}
.frule{display:block;width:56px;height:1px;background:#d18518;margin:30px 0 22px}
.ftag{margin:0;font-size:15px;line-height:1.5;font-style:italic;color:#9e9087;max-width:440px}
.fmail{margin-top:12px;color:#fff;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:.02em}.fmail:hover{color:#d18518}
.ftop{position:absolute;right:40px;bottom:130px;writing-mode:vertical-rl;transform:rotate(180deg);background:none;border:0;color:#c9c0b8;font:700 11px/1 inherit;font-family:inherit;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:8px}.ftop:hover{color:#d18518}
.fbar{border-top:1px solid #2c3746;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:#9e9087;max-width:1312px;margin:0 auto}
.fbar a{color:#9e9087;text-decoration:none}.fbar a:hover{color:#fff}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes ringdraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
    @keyframes finup{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
    .fring-wrap{view-timeline-name:--ring}
    .fring circle.inner{animation-range:entry 15% cover 65%}
  }
}
.jsmotion .fring-wrap.rv-js{transform:none}
.jsmotion .fring-wrap.rv-js circle{stroke-dashoffset:1;transition:stroke-dashoffset 2400ms cubic-bezier(.4,0,.2,1)}
.jsmotion .fring-wrap.in circle{stroke-dashoffset:0}
@media (max-width:1100px){
  .foot{padding:56px 16px 24px}
  .fring-wrap{aspect-ratio:auto;width:100%;overflow:hidden}
  .fring{width:170%;left:-35%;top:0}
  .fin{position:relative;inset:auto;padding:48px 4px 56px}
  .fnav{grid-template-columns:repeat(2,auto)}
  .fnav a{padding:7px 18px;border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(3n+1){border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(2n+1){border-left:0}
  .ftop{display:none}
  .fbar{flex-direction:column}
}
/* ── Menú móvil ── */
html{scroll-behavior:smooth}
#quien,#cierre{scroll-margin-top:84px}
.burger{display:none;width:44px;height:44px;border:1px solid #3a4657;border-radius:6px;background:transparent;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0}
.burger span{display:block;width:20px;height:2px;background:#fff;transition:transform 200ms ease-out,opacity 200ms ease-out}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mmenu{position:fixed;left:0;right:0;top:64px;bottom:0;z-index:19;background:#17202d;padding:32px 16px calc(32px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:4px;overflow-y:auto;animation:fadein 200ms ease-out}
.mmenu a.ml{display:block;padding:14px 0;border-bottom:1px solid #2c3746;font-size:26px;font-weight:700;color:#fff;text-decoration:none}
.mmenu a.ml.on{color:#d18518}
@media (max-width:1100px){
  .burger{display:flex}
  .pg > header{height:64px !important;padding:0 16px !important;gap:12px !important}
  .pg > header > a:first-child img{height:38px !important;width:auto !important}
  .pg > header .lang{margin-left:auto}
  .pg > header > .btn{display:none !important}
  .hero-seal{display:none !important}
  .hero .btn,.sec .btn{width:100%}
  .hero{padding-top:48px !important}
  #cierre h2{font-size:34px !important}
  .hero-title{font-size:36px !important}
  .mmenu{top:64px}
}
@media (min-width:1281px){.mmenu{display:none}}
@media (min-width:821px) and (max-width:1280px){
  .burger{display:flex}
  .nav{display:none !important}
  .pg > header .lang{margin-left:auto}
  .mmenu{top:84px;padding-left:64px;padding-right:64px}
}

/* ── Páginas de perfil ── */
.pimg{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#f2f1ef}
.pimg img{display:block;width:100%;height:100%;object-fit:cover}
.pimg .col{position:absolute;inset:0;clip-path:inset(0 0 0 0);transition:clip-path 900ms cubic-bezier(.6,0,.2,1)}
.pimg:hover .col{clip-path:inset(0 0 0 100%)}
.pimg .sweep{position:absolute;top:0;bottom:0;left:0;width:3px;background:#d18518;box-shadow:0 0 18px rgba(209,133,24,.8);opacity:0;pointer-events:none}
@media (prefers-reduced-motion: no-preference){
  @keyframes colorin{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
  @keyframes sweep{0%{left:0;opacity:1}90%{opacity:1}100%{left:100%;opacity:0}}
  .pimg .col{animation:colorin 1900ms cubic-bezier(.6,0,.2,1) 900ms backwards}
  .pimg .sweep{animation:sweep 1900ms cubic-bezier(.6,0,.2,1) 900ms both}
}
.faqgrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:72px;align-items:start}
.faqink{margin:0;aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:#f2f1ef}
.faqink img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;mix-blend-mode:multiply;filter:contrast(1.08) brightness(1.04)}
@media (max-width:1024px){
  .faqgrid{grid-template-columns:1fr !important;gap:40px}
  .faqink{order:-1;aspect-ratio:16/9}
}
.pimg .esc{position:absolute;left:16px;top:16px;background:#17202d;color:#d18518;border-radius:3px;padding:7px 10px;font-size:12px;font-weight:700;letter-spacing:.18em}
.keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #c9c0b8;margin-top:48px}
.key{padding:40px 40px 8px 0;display:flex;flex-direction:column;gap:14px;min-width:0}
.key + .key{padding-left:40px;border-left:1px solid #c9c0b8}
.kdisc{width:52px;height:52px;border-radius:50%;background:#17202d;display:flex;align-items:center;justify-content:center}
.kdisc img{width:24px;height:24px;filter:brightness(0) invert(1)}
.key h3{margin:8px 0 0;font-size:28px;line-height:1.2;font-weight:700;color:#17202d}
.key p{margin:0;font-size:17px;line-height:1.5}
/* flujo de financiación */
.flow{display:grid;grid-template-columns:minmax(0,1fr) 112px minmax(0,1fr) 112px minmax(0,1fr);align-items:stretch;margin-top:48px}
.fnode{background:#1f2a3a;border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:10px}
.fnode.mid{background:#d18518}
.fnode.mid h3,.fnode.mid p{color:#17202d !important}
.fnode h3{margin:0;font-size:23px;font-weight:700;color:#fff}
.fnode p{margin:0;font-size:16px;line-height:1.5;color:#c9c0b8}
.farrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#d18518}
.farrow i{display:block;width:72px;height:2px;background:#d18518;position:relative}
.farrow i::after{content:"";position:absolute;right:-2px;top:-5px;border-left:10px solid #d18518;border-top:6px solid transparent;border-bottom:6px solid transparent}
.checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 40px}
.checks li{display:grid;grid-template-columns:24px 1fr;gap:10px;font-size:17px;line-height:1.45;color:#fff}
.checks li::before{content:"✔";color:#d18518;font-weight:700}
/* calculadora */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:start;margin-top:48px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.amt{min-height:48px;padding:0 20px;border-radius:999px;border:1px solid #3a4657;background:transparent;color:#fff;font:600 16px/1 "Montserrat",sans-serif;cursor:pointer;transition:background-color 160ms ease-out,border-color 160ms ease-out}
.amt:hover{border-color:#d18518}
.amt.on{background:#d18518;border-color:#d18518;color:#17202d}
.calc-panel{background:#1f2a3a;border-radius:14px;padding:12px 32px}
.crow{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:22px 0;border-bottom:1px solid #2c3746}
.crow:last-child{border-bottom:0}
.crow span{font-size:15px;color:#9e9087}
.crow b{font-size:40px;line-height:1;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap}
.crow.big b{font-size:60px;color:#d18518}
.points{display:grid;gap:20px;margin-top:40px}
.point h3{margin:0;font-size:19px;font-weight:700;color:#fff}
.point p{margin:6px 0 0;font-size:16px;line-height:1.5;color:#9e9087}
/* guion */
.paper{max-width:820px;margin:48px auto 0;background:#fdfcf9;color:#1b1b1b;border-radius:4px;padding:72px 88px 64px;box-shadow:0 6px 22px rgba(0,0,0,.35);font-family:"Courier Prime","Courier New",monospace;font-size:18px;line-height:1.5;position:relative;transform:rotate(-.6deg)}
.paper .pno{position:absolute;right:56px;top:32px;color:#606060}
.scene{margin:0 0 28px}
.scene b{display:block;font-weight:700;letter-spacing:.02em}
.scene p{margin:8px 0 0}
.fade{text-align:right;font-weight:700;margin-top:8px}
.fadetxt{margin-top:24px;text-align:center;font-weight:700;color:#896614}
/* entradas */
.tickets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px}
.ticket{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);background:#f3eee8;border-radius:12px;min-height:280px;color:#3a3a3a}
.ticket::before,.ticket::after{content:"";position:absolute;left:61px;width:22px;height:22px;border-radius:50%;background:#17202d}
.ticket::before{top:-11px}.ticket::after{bottom:-11px}
.stub{border-right:2px dashed #c9c0b8;display:flex;align-items:center;justify-content:center}
.stub span{transform:rotate(-90deg);white-space:nowrap;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#896614}
.tbody{padding:28px 28px 28px 32px;display:flex;flex-direction:column;gap:10px;min-width:0}
.tbody .tk{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#896614}
.tbody .tb{font-size:56px;line-height:1;font-weight:700;color:#d18518}
.tbody p{margin:0;font-size:16px;line-height:1.5}
/* preguntas */
.faqs{border-top:1px solid #c9c0b8;margin-top:40px}
.faq{border-bottom:1px solid #c9c0b8}
.faq button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;background:transparent;border:0;padding:26px 0;text-align:left;cursor:pointer;font:700 21px/1.35 "Montserrat",sans-serif;color:#17202d}
.faq button:hover{color:#896614}
.faq .sg{flex:0 0 auto;width:36px;height:36px;border-radius:50%;border:1px solid #c9c0b8;display:flex;align-items:center;justify-content:center;font-size:20px;color:#d18518}
.faq.on .sg{background:#17202d;border-color:#17202d}
.faq .ans{margin:0;padding:0 64px 28px 0;max-width:780px;font-size:17px;line-height:1.6;animation:fadein 300ms ease-out}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .keys > .key:nth-child(2),.tickets > .ticket:nth-child(2),.flow > .fnode:nth-child(3){animation-range:entry 15% cover 45%}
    .keys > .key:nth-child(3),.tickets > .ticket:nth-child(3),.flow > .fnode:nth-child(5){animation-range:entry 30% cover 55%}
    @keyframes inkin{from{clip-path:inset(50% 50% 50% 50% round 12px);opacity:.2}to{clip-path:inset(0 0 0 0 round 12px);opacity:1}}
  }
}
@media (max-width:1100px){
  .keys,.tickets,.checks,.calc{grid-template-columns:1fr !important}
  .key + .key{padding-left:0;border-left:0;border-top:1px solid #c9c0b8}
  .key{padding:28px 0 8px}
  .flow{grid-template-columns:1fr}
  .farrow{flex-direction:row;padding:14px 0}.farrow i{width:2px;height:40px}.farrow i::after{right:-5px;top:auto;bottom:-2px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:10px solid #d18518;border-bottom:0}
  .paper{padding:48px 24px 40px;font-size:15px;transform:none}
  .crow b{font-size:30px}.crow.big b{font-size:42px}
  .faq button{font-size:18px}.faq .ans{padding-right:0}
}
@media (prefers-reduced-motion:reduce){.slide-img,.slide-txt,.quote,.backdrop{animation:none}.playhead{transition:none}}
@media (max-width:1100px){
  .nav{display:none !important}
  .hero-grid,.what-grid,.video-box{grid-template-columns:1fr !important}
  .hero-art{height:auto !important}
  .hero-title{font-size:38px !important}
  .aud-tabs{flex-wrap:wrap}.aud-tab{flex:1 1 45%}
  .g3,.foot-grid{grid-template-columns:1fr !important}
  .sec{padding-left:16px !important;padding-right:16px !important;padding-top:64px !important;padding-bottom:64px !important}
  .h2{font-size:30px}
  .qtext{font-size:36px !important}
  .q-big{font-size:44px !important}
  .hero-seal{width:120px !important;height:120px !important;order:-1}
  .tl-ruler{margin-left:0}.tl-row{grid-template-columns:1fr}.tl-label{display:none}.clip .ct{display:none}
  .vbox.mini{width:calc(100vw - 32px);right:16px;bottom:16px}
}



:root{--page:#ffffff;--ink:#3a3a3a}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--page);color:var(--ink)}
.pg > header{padding-left:max(64px,env(safe-area-inset-left,0px)) !important;padding-right:max(64px,env(safe-area-inset-right,0px)) !important}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:#17202d}
.vbox.mini{right:calc(24px + env(safe-area-inset-right,0px));bottom:calc(24px + env(safe-area-inset-bottom,0px))}
.jsmotion .rv-js{opacity:0;transform:translateY(90px);transition:opacity 1100ms cubic-bezier(.2,.7,.2,1),transform 1100ms cubic-bezier(.2,.7,.2,1)}
.jsmotion .rv-js.in{opacity:1;transform:none}
.jsmotion .rv-js img{clip-path:inset(0 0 100% 0);transition:clip-path 1300ms cubic-bezier(.2,.7,.2,1) 200ms}
.jsmotion .rv-js.in img{clip-path:inset(0 0 0 0)}
.jsmotion .rv-js.now,.jsmotion .rv-js.now img{transition:none}
.jsmotion .hero-seal{animation-fill-mode:backwards !important}
.lang a{display:inline-block;font:600 13px/1 "Montserrat",sans-serif;letter-spacing:.06em;background:transparent;color:#c9c0b8;border-radius:4px;padding:9px 10px;min-width:40px;text-align:center;text-decoration:none;box-sizing:border-box}
.lang a:hover{color:#fff}
.lang a.on{background:#d18518;color:#fff}
.privlink{display:inline-block;margin-left:4px;color:#896614;font-weight:600}
.ferr{margin:14px 0 0;color:#a2341f;font-size:15px}
.ferr a{color:inherit}
.skip{position:absolute;left:-9999px;top:8px;z-index:99;background:#d18518;color:#fff;padding:10px 14px;border-radius:6px;font-weight:700}
.skip:focus{left:16px}
.legal{background:#fff;padding:96px 64px 112px}
.lwrap{max-width:820px;margin:0 auto;font-size:17px;line-height:1.65;color:#3a3a3a}
.lwrap h1{margin:14px 0 24px;font-size:48px;line-height:1.1;font-weight:700;color:#17202d}
.lwrap h2{margin:40px 0 10px;font-size:22px;font-weight:700;color:#17202d}
.lwrap p{margin:0 0 14px}
.lwrap a{color:#896614;font-weight:600}
.lwrap .btn{color:#fff;margin-top:12px}
.ldata{display:grid;grid-template-columns:max-content 1fr;gap:8px 24px;margin:24px 0 8px;padding:24px 28px;background:#f3eee8;border-radius:12px}
.ldata dt{font-weight:700;color:#17202d}
.ldata dd{margin:0}
@media (max-width:820px){
  .pg > header{padding-left:max(16px,env(safe-area-inset-left,0px)) !important;padding-right:max(16px,env(safe-area-inset-right,0px)) !important}
  .legal{padding:56px 16px 72px}
  .lwrap h1{font-size:34px}
  .ldata{grid-template-columns:1fr;gap:2px;padding:20px}
  .ldata dd{margin-bottom:10px}
}

/* ── Tablet (601–1100 px): una columna, pero con aire y tipografía de tablet ── */
@media (min-width:601px) and (max-width:1100px){
  .pg > header{height:72px !important;padding-left:max(40px,env(safe-area-inset-left,0px)) !important;padding-right:max(40px,env(safe-area-inset-right,0px)) !important}
  .pg > header > a:first-child img{height:42px !important}
  .mmenu{top:72px !important;padding-left:40px !important;padding-right:40px !important}
  .sec{padding-left:max(48px,env(safe-area-inset-left,0px)) !important;padding-right:max(48px,env(safe-area-inset-right,0px)) !important;padding-top:88px !important;padding-bottom:88px !important}
  .hero{padding-top:72px !important}
  .hero .btn,.sec .btn{width:auto}
  .hero-title{font-size:clamp(44px,6.6vw,60px) !important;line-height:1.08 !important}
  .q-big{font-size:clamp(46px,6.8vw,60px) !important}
  .h2{font-size:clamp(32px,4.6vw,40px)}
  #cierre h2{font-size:44px !important}
  .qtext{font-size:clamp(38px,5.6vw,48px) !important}
  .hero-art{height:auto !important;aspect-ratio:16/10}
  .hero-grid{gap:48px !important}
  .what-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .aud-tabs{flex-wrap:nowrap}
  .aud-tab{flex:1 1 0}
  /* Equipo: tres columnas con el texto bajo la foto, nunca encima de la cara */
  .g3{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important}
  .person .cap{position:relative;padding:16px 18px 20px}
  .person .role{font-size:10.5px;letter-spacing:.14em}
  .person .name{font-size:21px}
  .person .mono,.person::after{display:none}
  .person:hover img{transform:none}
  .channels{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .frow{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .who{grid-template-columns:repeat(4,minmax(0,1fr))}
  .cmap img{aspect-ratio:16/9}
  .scard img{aspect-ratio:16/9}
  .cform{padding:40px 36px}
  .fnav{grid-template-columns:repeat(3,auto)}
  .fnav a{padding:7px 24px}
  .fnav a:nth-child(2n+1){border-left:1px solid rgba(255,255,255,.14)}
  .fnav a:nth-child(3n+1){border-left:0}
  .fbar{flex-direction:row}
  .foot{padding:64px 48px 28px}
  .fring{width:120%;left:-10%}
  .legal{padding:72px 48px 88px}
}
/* Equipo en móvil: texto bajo la foto */
@media (max-width:600px){
  .g3{gap:20px !important}
  .person .cap{position:relative}
  .person .mono,.person::after{display:none}
  .person img{aspect-ratio:1/1;object-position:50% 30%}
}
/* Móvil en horizontal: pantallas bajas */
@media (max-height:500px) and (orientation:landscape){
  .pg > header{height:60px !important}
  .pg > header > a:first-child img{height:34px !important}
  .mmenu{top:60px !important}
  .mmenu a.ml{font-size:20px;padding:10px 0}
  .hero{padding-top:40px !important}
  .hero-title{font-size:40px !important}
  .q-big{font-size:42px !important}
  .sec{padding-top:56px !important;padding-bottom:56px !important}
  .hero-art{max-height:70vh}
  .cmap img{max-height:80vh}
}
/* Escritorio estrecho y tablet en horizontal (1101–1280 px) */
@media (min-width:1101px) and (max-width:1280px){
  .hero-title{font-size:60px !important}
  .q-big{font-size:60px !important}
  .ftop{right:16px}
}
/* Pantallas táctiles: sin cursor, las biografías del equipo se muestran siempre */
@media (hover:none){
  .thint{display:none}
  .person .cap{position:relative}
  .person .more{max-height:none;opacity:1}
  .person .mono,.person::after{display:none}
  .person:hover img{transform:none}
}
/* Ratón: un clic fija la biografía y un segundo clic la recoge */
.person.shut .more{max-height:0 !important;opacity:0 !important}
.person.shut .mono{opacity:0 !important}
.person.shut::after{opacity:0 !important}
.person.shut img{transform:none !important}
/* Móvil */
@media (max-width:600px){
  .hero-grid{gap:28px !important}
  .qby{flex-wrap:wrap;gap:4px 10px;font-size:11px;letter-spacing:.14em}
  .qby .qline{display:none}
  .qby .qyear::before{margin-right:10px}
}
/* Calculadora: que las cifras grandes nunca ensanchen la página */
@media (max-width:1100px){
  .calc,.keys,.tickets,.checks{grid-template-columns:minmax(0,1fr) !important}
}
@media (max-width:600px){
  .calc-panel{padding:8px 20px}
  .crow b{font-size:clamp(22px,7.2vw,30px)}
  .crow.big b{font-size:clamp(30px,9.6vw,42px)}
  .amt{padding:0 16px;font-size:15px}
}
/* Perfiles en escritorio: el título respira en dos o tres líneas */
@media (min-width:1101px){
  .hero-grid:has(.pimg){grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) !important}
  .hero-grid:has(.pimg) .hero-title{font-size:58px !important}
}
@media (min-width:1101px) and (max-width:1280px){
  .hero-grid:has(.pimg) .hero-title{font-size:52px !important}
}
