/* Plantilla de página de compañía · FINBA 2026 (la arma compania.js) */
body{background:var(--crema);color:var(--azul)}

/* ── HERO ── */
.cp-hero{position:relative;min-height:760px;background:var(--noche);color:#fff;display:flex;flex-direction:column;overflow:hidden}
.cp-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cp-hero-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,63,.75) 0%,rgba(11,31,63,.1) 30%,rgba(11,31,63,.15) 50%,rgba(11,31,63,.96) 88%)}
.cp-hero-in{position:relative;margin-top:auto;width:100%;max-width:1300px;margin-left:auto;margin-right:auto;padding:150px var(--pad) 56px;display:flex;flex-direction:column;gap:14px}
.cp-crumbs{font-weight:600;font-size:16px;color:#dbe3ef}
.cp-crumbs a:hover{color:var(--amarillo)}
.cp-crumbs b{color:#fff;font-weight:700}
.cp-country{display:flex;align-items:center;gap:18px;font-family:'Bebas Neue',sans-serif;font-size:clamp(120px,15vw,230px);line-height:.8;color:var(--amarillo);text-shadow:0 4px 30px rgba(0,0,0,.35)}
.cp-country .fx-flag{width:72px;height:48px;border-radius:5px}
.cp-country.long{font-size:clamp(90px,10vw,150px)}
.cp-h1{font-family:'Bebas Neue',sans-serif;font-weight:400;font-size:clamp(64px,6.5vw,96px);line-height:.9;margin:0}
.cp-tag{font-size:21px;line-height:1.4;max-width:640px;margin:0}
.cp-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}
.cp-pill{font-weight:700;font-size:16px;padding:9px 16px;border-radius:30px;border:2px solid transparent;white-space:nowrap}

/* ── DATOS ── */
.cp-facts{background:var(--azul);color:#fff;padding:36px var(--pad)}
.cp-facts-in{max-width:1300px;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.cp-fact{border-left:3px solid var(--naranja);padding-left:16px}
.cp-fact .l{font-weight:600;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:var(--celeste)}
.cp-fact .v{font-family:'Bebas Neue',sans-serif;font-size:clamp(30px,2.6vw,38px);line-height:1.05;margin-top:4px}
.cp-fact .s{font-size:16px;color:#c9d6ea}

/* ── LA COMPAÑÍA ── */
.cp-about{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:clamp(28px,5vw,72px);align-items:start}
.cp-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.cp-about-txt{display:flex;flex-direction:column;gap:18px}
.cp-about-txt p{margin:0;font-size:19px;line-height:1.6;color:var(--cuerpo)}

/* ── FUNCIONES ── */
.cp-shows{background:var(--naranja);color:#fff}
.cp-shows .fx-kicker{color:var(--azul)}
.cp-free{background:var(--azul);color:#fff;font-weight:700;font-size:16px;padding:10px 18px;border-radius:30px}
.cp-show-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:18px}
.cp-show{display:flex;gap:22px;align-items:stretch;background:var(--c);color:var(--t);border-radius:18px;padding:26px 28px;box-shadow:0 16px 34px rgba(11,31,63,.25)}
.cp-show-date{min-width:100px;text-align:center;font-family:'Bebas Neue',sans-serif;display:flex;flex-direction:column;justify-content:center}
.cp-show-date .w{font-size:26px;line-height:1}
.cp-show-date .d{font-size:96px;line-height:.8;margin:6px 0 4px}
.cp-show-date .m{font-size:24px;line-height:1}
.cp-show-sep{width:2px;background:currentColor;opacity:.5;flex:none}
.cp-show-body{display:flex;flex-direction:column;gap:6px;justify-content:center;min-width:0}
.cp-show-body .tg{font-weight:700;font-size:16px;letter-spacing:.04em;text-transform:uppercase;opacity:.92}
.cp-show-body h3{font-family:'Bebas Neue',sans-serif;font-weight:400;font-size:38px;line-height:.95;margin:0}
.cp-show-body p{margin:0;font-size:16px;line-height:1.45}
.cp-show-body .pl{font-weight:700;font-size:16px}
.cp-reg{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:28px}
.cp-reg p{margin:0;font-size:16px;font-weight:600}

/* ── REPERTORIO ── */
.cp-intro{font-size:19px;line-height:1.55;color:var(--gris);max-width:760px;margin:0}
.cp-rep{display:flex;flex-direction:column;gap:14px}
.cp-obra{background:#fff;border-radius:18px;padding:28px 32px;display:grid;grid-template-columns:110px minmax(0,1fr) minmax(0,1.5fr);gap:28px;align-items:start;box-shadow:0 8px 24px rgba(18,48,94,.06)}
.cp-obra.nodesc{grid-template-columns:110px minmax(0,1fr)}
.cp-obra .n{font-family:'Bebas Neue',sans-serif;font-size:clamp(64px,6vw,88px);line-height:.8;color:var(--naranja)}
.cp-obra h3{font-family:'Bebas Neue',sans-serif;font-weight:400;font-size:clamp(36px,3.4vw,48px);line-height:.95;margin:0}
.cp-obra h3 small{font-size:.6em;color:var(--gris)}
.cp-obra .st{display:inline-block;background:var(--azul);color:#fff;font-weight:700;font-size:15px;padding:5px 12px;border-radius:20px;margin-top:10px}
.cp-obra .cr{font-size:16px;line-height:1.5;color:var(--gris);margin-top:10px}
.cp-obra .cr b{color:var(--azul)}
.cp-obra .ds{font-size:17px;line-height:1.55;color:var(--cuerpo);margin:0}

/* ── GALERÍA ── */
.cp-gal{background:var(--noche);color:#fff}
.cp-gal .fx-kicker{color:var(--amarillo)}
.cp-credit{font-size:16px;color:#8fa3c2}
.cp-gal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:240px;gap:14px}
.cp-gal-grid button{border:0;padding:0;border-radius:14px;overflow:hidden;cursor:zoom-in;background:#1a3a6b}
.cp-gal-grid img{width:100%;height:100%;object-fit:cover;object-position:center 22%;display:block;transition:transform .4s}
.cp-gal-grid button:hover img{transform:scale(1.04)}
.cp-gal-grid .big{grid-column:span 2;grid-row:span 2}
.cp-gal-grid .wide{grid-column:span 2}
.cp-gal-grid .tall{grid-column:span 2;grid-row:span 2}
.cp-lb{position:fixed;inset:0;z-index:2000;background:rgba(5,12,28,.92);display:none;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.cp-lb.open{display:flex}
.cp-lb img{max-width:100%;max-height:100%;object-fit:contain;border-radius:10px}
.cp-lb button{position:absolute;top:18px;right:18px;width:48px;height:48px;border-radius:12px;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:22px;cursor:pointer}

/* ── EQUIPO ── */
.cp-team{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:40px;align-items:start}
.cp-team h3{font-family:'Bebas Neue',sans-serif;font-weight:400;font-size:clamp(44px,4vw,60px);line-height:.9;margin:0 0 18px}
.cp-names{display:flex;flex-wrap:wrap;gap:8px}
.cp-names span{background:#fff;font-size:17px;padding:8px 14px;border-radius:30px;color:var(--azul)}
.cp-sub{font-weight:600;font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--naranja);margin:22px 0 10px}
.cp-crew{background:#fff;border-radius:18px;overflow:hidden}
.cp-crew div{display:grid;grid-template-columns:1fr 1.3fr;gap:12px;padding:14px 20px;border-bottom:1px solid #ece7d6;font-size:17px}
.cp-crew div:last-child{border-bottom:0}
.cp-crew b{font-weight:700}
.cp-thanks{font-size:16px;line-height:1.55;color:var(--gris);margin:18px 0 0}

/* ── SIGUIENTE ── */
.cp-next{background:var(--amarillo);color:var(--azul)}
.cp-next-in{max-width:1300px;margin:0 auto;padding:36px var(--pad);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.cp-next .all{font-weight:700;font-size:18px}
.cp-next .all:hover,.cp-next .nx:hover .nm{color:var(--naranja)}
.cp-next .nx{text-align:right}
.cp-next .nx small{display:block;font-weight:600;font-size:15px;letter-spacing:.14em;text-transform:uppercase}
.cp-next .nm{font-family:'Bebas Neue',sans-serif;font-size:clamp(36px,4vw,52px);line-height:1}

@media (max-width:759px){
  /* En celular la foto va completa arriba (debajo del menú) con un encuadre elegido por compañía, y el texto debajo */
  .cp-hero{min-height:0;padding-top:86px}
  .cp-hero-img{position:relative;inset:auto;height:auto;aspect-ratio:var(--mr,1);object-position:var(--mp,50%) 50% !important;-webkit-mask-image:linear-gradient(180deg,#000 72%,transparent);mask-image:linear-gradient(180deg,#000 72%,transparent)}
  .cp-hero-ov{display:none}
  .cp-hero-in{margin-top:-46px;padding:0 18px 34px}
  .cp-country{font-size:clamp(52px,19vw,96px);gap:12px;flex-wrap:wrap}
  .cp-country.long{font-size:clamp(40px,12.5vw,60px);flex-wrap:nowrap}
  .cp-country .fx-flag{width:48px;height:32px}
  .cp-h1{font-size:60px}
  .cp-tag{font-size:18px}
  .cp-facts-in{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px}
  .cp-show{padding:20px;gap:16px}
  .cp-show-date{min-width:76px}
  .cp-show-date .d{font-size:76px}
  .cp-show-body h3{font-size:32px}
  .cp-obra,.cp-obra.nodesc{grid-template-columns:1fr;padding:22px;gap:12px}
  .cp-gal-grid{grid-template-columns:1fr;grid-auto-rows:auto}
  .cp-gal-grid button{min-height:240px;grid-column:auto !important;grid-row:auto !important}
  .cp-gal-grid img{min-height:240px;max-height:420px}
  .cp-next .nx{text-align:left}
  .cp-crew div{grid-template-columns:1fr;gap:2px}
}
