/* Lioma Studio CMS v4.2 repair */
:root{
  --bg:#fffaf3;--paper:#fff;--ink:#1a2430;--muted:#61717d;--line:rgba(26,36,48,.14);
  --blue:#a9ddeb;--blue-2:#d6f2f7;--yellow:#ffe6a3;--pink:#ffd8e2;--green:#e2f1cf;--lilac:#e8ddff;
  --shadow:0 18px 42px rgba(26,36,48,.10);--radius:28px;--max:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:radial-gradient(circle at 8% 4%,rgba(169,221,235,.45),transparent 24rem),radial-gradient(circle at 92% 10%,rgba(255,216,226,.5),transparent 26rem),linear-gradient(180deg,#fffaf3,#fffdf9 38%,#fffaf3);line-height:1.55;text-rendering:optimizeLegibility}
a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 32px));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:16px;top:16px;width:auto;height:auto;z-index:999;background:var(--ink);color:#fff;padding:10px 14px;border-radius:999px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,250,243,.9);backdrop-filter:blur(18px);border-bottom:2px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:950;letter-spacing:-.05em;font-size:1.24rem}.logo-mark{width:46px;height:46px;border:2px solid var(--ink);border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,var(--blue),var(--yellow));box-shadow:5px 5px 0 var(--ink);transform:rotate(-2deg);font-weight:950}.nav-toggle{display:none;appearance:none;border:2px solid var(--ink);background:#fff;border-radius:14px;padding:9px 11px;font-weight:900;box-shadow:3px 3px 0 var(--ink)}.nav-links{display:flex;align-items:center;gap:18px;list-style:none;margin:0;padding:0;flex-wrap:wrap;justify-content:flex-end}.nav-links a{text-decoration:none;color:var(--muted);font-weight:850;font-size:.95rem}.nav-links a:hover{color:var(--ink)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 18px;border:2px solid var(--ink);border-radius:999px;text-decoration:none;font-weight:950;background:var(--yellow);color:var(--ink);box-shadow:5px 5px 0 var(--ink);transition:transform .15s ease,box-shadow .15s ease}.button:hover,.button:focus-visible{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}.button.secondary{background:var(--blue-2)}.button.dark{background:var(--ink);color:#fff;box-shadow:5px 5px 0 rgba(26,36,48,.3)}.button.small{min-height:40px;padding:9px 14px;font-size:.9rem;box-shadow:4px 4px 0 var(--ink)}.button.external:after{content:"↗";font-weight:900}.back-link{position:fixed;left:18px;top:92px;z-index:40;background:#fff;border:2px solid var(--ink);border-radius:999px;padding:10px 14px;text-decoration:none;font-weight:950;box-shadow:4px 4px 0 var(--ink)}
h1,h2,h3{line-height:.98;letter-spacing:-.055em;margin:0;text-wrap:balance}h1{font-size:clamp(2.9rem,8vw,6.4rem);max-width:880px}h2{font-size:clamp(2.15rem,5.2vw,4.25rem)}h3{font-size:clamp(1.45rem,2.8vw,2.1rem)}.lead{font-size:clamp(1.05rem,2.4vw,1.28rem);color:var(--muted);max-width:760px;margin:24px 0 28px}.hero{padding:54px 0 38px;display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center;overflow:hidden}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--ink);border-radius:999px;padding:8px 12px;font-weight:950;box-shadow:4px 4px 0 var(--ink);transform:rotate(-1.5deg);margin-bottom:18px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 24px}.hero-card{position:relative;min-height:330px;max-height:460px;border:2px solid var(--ink);border-radius:38px;overflow:hidden;background:linear-gradient(145deg,var(--blue),var(--pink));box-shadow:10px 10px 0 var(--ink);padding:26px;display:flex;align-items:flex-end}.hero-card:before,.hero-card:after{content:"";position:absolute;border:2px solid rgba(26,36,48,.18);background:rgba(255,255,255,.38);border-radius:999px}.hero-card:before{width:210px;height:210px;right:-58px;top:44px}.hero-card:after{width:300px;height:300px;left:-105px;bottom:-100px}.mascot{position:absolute;right:34px;top:72px;width:150px;height:205px;border:2px solid var(--ink);border-radius:50% 50% 42% 42%;background:var(--paper);box-shadow:7px 7px 0 rgba(26,36,48,.18);transform:rotate(3deg)}.mascot:before{content:"";position:absolute;left:38px;top:58px;width:17px;height:17px;background:var(--ink);border-radius:50%;box-shadow:56px 0 0 var(--ink)}.mascot:after{content:"";position:absolute;left:51px;top:105px;width:54px;height:13px;border-bottom:4px solid var(--ink);border-radius:0 0 90px 90px}.speech{position:relative;z-index:2;background:rgba(255,255,255,.88);border:2px solid var(--ink);border-radius:28px;padding:24px;box-shadow:6px 6px 0 rgba(26,36,48,.25)}.speech p:last-child{margin-bottom:0}
section{padding:64px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:28px}.section-head p{max-width:500px;margin:0;color:var(--muted);font-size:1.06rem}.panel{background:rgba(255,255,255,.78);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:8px 8px 0 var(--ink);padding:26px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:var(--paper);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:6px 6px 0 var(--ink);padding:22px}.card p{color:var(--muted);margin:.75rem 0 0}.mini-label{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:950;color:#426a76;margin:0 0 10px}.subtitle{font-weight:850;color:var(--muted);margin:.35rem 0 .7rem}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.tag{display:inline-flex;border:1px solid rgba(26,36,48,.16);border-radius:999px;background:rgba(255,255,255,.65);padding:5px 9px;font-size:.82rem;font-weight:850;color:#38505c;box-shadow:none;cursor:default}
.about-block{display:grid;grid-template-columns:.82fr 1.18fr;gap:22px;align-items:stretch}.about-photo{min-height:360px;border:2px solid var(--ink);border-radius:34px;overflow:hidden;background:linear-gradient(145deg,var(--yellow),var(--blue),var(--pink));box-shadow:8px 8px 0 var(--ink);display:grid;place-items:center}.about-photo img{width:100%;height:100%;object-fit:cover}.photo-fallback{font-size:4rem;font-weight:950}.black-card{background:var(--ink);color:#fff;border:2px solid var(--ink);border-radius:36px;box-shadow:8px 8px 0 rgba(26,36,48,.28);padding:30px}.black-card p{color:rgba(255,255,255,.78);font-size:1.06rem;white-space:pre-line}.black-card .tag{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.25)}
.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.project-card{display:grid;grid-template-columns:210px 1fr;gap:18px;background:#fff;border:2px solid var(--ink);border-radius:32px;box-shadow:8px 8px 0 var(--ink);padding:14px;min-height:260px}.project-media{border:2px solid var(--ink);border-radius:24px;overflow:hidden;background:linear-gradient(145deg,var(--yellow),var(--blue));text-decoration:none}.project-media img{width:100%;height:100%;object-fit:cover}.poster-fallback{height:100%;min-height:230px;display:grid;place-items:center;padding:18px;text-align:center;background:linear-gradient(145deg,var(--yellow),var(--blue),var(--pink))}.poster-fallback span{font-size:clamp(1.8rem,4vw,3rem);font-weight:950;line-height:.9;letter-spacing:-.07em;transform:rotate(-3deg)}.project-copy{padding:8px 8px 8px 0;display:flex;flex-direction:column;align-items:flex-start}.project-copy h3 a{text-decoration:none}.project-copy p{color:var(--muted);margin:.6rem 0 1rem}.project-copy .button{margin-top:auto}
.social-overview{display:grid;grid-template-columns:.7fr 1.3fr;gap:18px}.social-total{background:linear-gradient(145deg,var(--blue),var(--yellow));border:2px solid var(--ink);border-radius:30px;box-shadow:7px 7px 0 var(--ink);padding:24px}.social-total strong{display:block;font-size:clamp(2.4rem,7vw,5rem);line-height:.92;letter-spacing:-.07em}.social-accounts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.social-card{text-decoration:none;background:#fff;border:2px solid var(--ink);border-radius:24px;box-shadow:5px 5px 0 var(--ink);padding:18px;display:flex;flex-direction:column;gap:8px}.social-card:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}.social-card strong{font-size:1.3rem}.social-card .followers{font-size:1.6rem;font-weight:950;letter-spacing:-.04em}.social-card p{margin:0;color:var(--muted);font-weight:700}.contact-box{text-align:center;background:linear-gradient(145deg,var(--blue),var(--yellow),var(--pink));border:2px solid var(--ink);border-radius:40px;box-shadow:10px 10px 0 var(--ink);padding:38px 28px;overflow:hidden}.contact-box p{max-width:720px;margin:14px auto 22px;color:#33424d;font-size:1.1rem}.email-visual{display:inline-flex;align-items:center;justify-content:center;margin:10px auto 18px;padding:9px 12px;border:2px solid var(--ink);border-radius:16px;background:rgba(255,255,255,.82);font-weight:950;letter-spacing:.01em;user-select:none;-webkit-user-select:none;max-width:100%;overflow-wrap:anywhere}.socials{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:18px}.seo-text{font-size:.98rem;color:var(--muted)}.site-footer{padding:36px 0 54px;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:2px solid var(--line);padding-top:20px}.footer-inner a{font-weight:900}
.project-hero{padding:54px 0 26px;display:grid;grid-template-columns:.45fr .55fr;gap:32px;align-items:center}.project-poster{border:2px solid var(--ink);border-radius:34px;overflow:hidden;box-shadow:8px 8px 0 var(--ink);background:linear-gradient(145deg,var(--yellow),var(--blue));min-height:430px}.project-poster img{width:100%;height:100%;object-fit:cover}.detail-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.video-block{margin-top:18px}.video-frame{position:relative;aspect-ratio:16/9;border:2px solid var(--ink);border-radius:24px;overflow:hidden;background:#000;box-shadow:5px 5px 0 var(--ink)}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.spec-table{width:100%;border-collapse:collapse}.spec-table th,.spec-table td{text-align:left;border-bottom:1px solid var(--line);padding:11px 0;vertical-align:top}.spec-table th{width:42%;font-weight:950}.timeline{display:grid;gap:12px}.timeline-item{background:#fff;border:2px solid var(--ink);border-radius:22px;padding:16px;box-shadow:5px 5px 0 var(--ink)}.timeline-item strong{display:block;font-size:1.06rem}.timeline-item span{color:var(--muted);font-weight:800}.timeline-item p{margin:.35rem 0 0}.press-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.press-card{display:flex;flex-direction:column;gap:8px;text-decoration:none;background:#fff;border:2px solid var(--ink);border-radius:22px;box-shadow:5px 5px 0 var(--ink);padding:18px}.press-card:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}.press-card strong{font-size:1.05rem;line-height:1.18}.press-card span{color:var(--muted);font-weight:850}
@media(max-width:980px){.hero,.about-block,.social-overview,.project-hero,.detail-layout{grid-template-columns:1fr}.hero{padding-top:44px}.hero-card{min-height:360px}.projects-grid,.grid-3,.social-accounts{grid-template-columns:1fr}.project-card{grid-template-columns:170px 1fr}.section-head{display:block}.section-head p{margin-top:12px}.back-link{position:static;display:inline-flex;margin:16px 0 0 16px}.project-hero{padding-top:30px}}
@media(max-width:760px){.wrap{width:min(var(--max),calc(100% - 24px))}.nav{min-height:64px}.nav-toggle{display:inline-flex}.nav-links{display:none;position:absolute;left:12px;right:12px;top:72px;background:#fff;border:2px solid var(--ink);border-radius:22px;box-shadow:6px 6px 0 var(--ink);padding:12px;flex-direction:column;align-items:stretch}.nav-links.is-open{display:flex}.nav-links a{display:block;padding:10px 12px}.hero-actions .button,.contact-box .button{width:100%}.project-card{grid-template-columns:1fr}.project-media{min-height:260px}.project-copy{padding:8px}.grid-2,.press-grid{grid-template-columns:1fr}.contact-box{padding:32px 18px}.mascot{opacity:.28}.site-footer{padding-bottom:38px}}

/* Reparación anti-mezcla de versiones */
body > .email-visual:first-child{display:none!important}
.hero-card,.contact-box{isolation:isolate}
main{display:block;min-height:60vh}
@media(max-width:980px){.hero-card{min-height:260px;max-height:none}}

/* V4.6 · Fotogramas por proyecto */
.stills-block{margin-top:28px}
.stills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:12px}
.still-card{display:block;border:2px solid var(--ink);border-radius:22px;overflow:hidden;background:#fff;box-shadow:5px 5px 0 var(--ink);aspect-ratio:16/9;text-decoration:none}
.still-card:hover,.still-card:focus-visible{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}
.still-card img{width:100%;height:100%;object-fit:cover}
@media(max-width:680px){.stills-grid{grid-template-columns:1fr}.back-link{position:static;display:inline-flex;margin:14px 16px 0}}


/* V4.8 · Proyecto más respirado, discreto y compacto */
body.project-page .wrap{width:min(1060px,calc(100% - 40px))}
body.project-page section{padding:42px 0}
body.project-page .project-hero{padding:46px 0 22px;gap:36px;align-items:center}
body.project-page .project-hero h1{font-size:clamp(2.5rem,6vw,5.2rem)}
body.project-page .project-hero .lead{font-size:clamp(1rem,2vw,1.16rem);margin:16px 0 18px;line-height:1.55}
body.project-page .project-hero p:not(.lead){font-size:1rem;color:var(--muted);max-width:680px}
body.project-page .project-poster{min-height:360px;box-shadow:6px 6px 0 var(--ink);border-radius:28px}
body.project-page .detail-layout{grid-template-columns:minmax(0,1.05fr) minmax(260px,.56fr);gap:20px;align-items:start}
body.project-page .panel{padding:22px;border-radius:24px;box-shadow:5px 5px 0 var(--ink)}
body.project-page .panel h2{font-size:clamp(1.9rem,3vw,2.8rem)}
body.project-page .panel .lead{font-size:clamp(1rem,1.7vw,1.12rem);line-height:1.62;margin:14px 0 22px;max-width:820px}
body.project-page .mini-label{font-size:.72rem;letter-spacing:.12em;margin-bottom:12px;color:#476f7a}
body.project-page .stills-block{margin-top:28px;margin-bottom:34px}
body.project-page .stills-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px;align-items:start}
body.project-page .stills-grid.stills-count-1{grid-template-columns:minmax(260px,440px)}
body.project-page .stills-grid.stills-count-2{grid-template-columns:repeat(2,minmax(220px,360px))}
body.project-page .still-card{border-radius:18px;box-shadow:3px 3px 0 var(--ink);border-width:2px}
body.project-page .still-card:hover,body.project-page .still-card:focus-visible{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--ink)}
body.project-page .stills-block + .mini-label{margin-top:36px;display:block}
body.project-page .video-block{margin-top:12px;max-width:880px}
body.project-page .video-frame{border-radius:20px;box-shadow:4px 4px 0 var(--ink)}
body.project-page .spec-table th,body.project-page .spec-table td{padding:9px 0;font-size:.94rem}
body.project-page .spec-table th{width:38%}
body.project-page .section-head{align-items:center;margin-bottom:18px;gap:22px}
body.project-page .section-head h2{font-size:clamp(2rem,3.6vw,3rem);letter-spacing:-.05em}
body.project-page .section-head p{font-size:.96rem;line-height:1.5;max-width:420px}
body.project-page .grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:960px}
body.project-page .grid-2 .card{padding:14px 16px;border-radius:18px;box-shadow:3px 3px 0 var(--ink)}
body.project-page .grid-2 .card h3{font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.15;letter-spacing:-.035em;font-weight:950}
body.project-page .timeline{gap:8px;max-width:840px}
body.project-page .timeline-item{padding:12px 14px;border-radius:16px;box-shadow:3px 3px 0 var(--ink)}
body.project-page .timeline-item strong{font-size:.98rem;line-height:1.2}
body.project-page .timeline-item span{display:block;font-size:.9rem;line-height:1.25;margin-top:2px}
body.project-page .timeline-item p{font-size:.92rem;line-height:1.35;margin:.35rem 0 0;color:#233240}
body.project-page .press-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:900px}
body.project-page .press-card{padding:13px 14px;border-radius:16px;box-shadow:3px 3px 0 var(--ink);gap:5px}
body.project-page .press-card:hover{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--ink)}
body.project-page .press-card span{font-size:.82rem;line-height:1.25}
body.project-page .press-card strong{font-size:.94rem;line-height:1.18;letter-spacing:-.01em}
body.project-page .contact-box{padding:30px 22px;border-radius:30px;box-shadow:6px 6px 0 var(--ink)}
@media(max-width:980px){
  body.project-page .wrap{width:min(1060px,calc(100% - 28px))}
  body.project-page section{padding:34px 0}
  body.project-page .project-hero,.detail-layout{grid-template-columns:1fr}
  body.project-page .project-poster{min-height:260px;max-width:520px}
  body.project-page .stills-grid,body.project-page .stills-grid.stills-count-1,body.project-page .stills-grid.stills-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  body.project-page .wrap{width:min(1060px,calc(100% - 22px))}
  body.project-page .project-hero h1{font-size:clamp(2.25rem,13vw,3.6rem)}
  body.project-page .project-poster{border-radius:24px}
  body.project-page .panel{padding:18px;border-radius:22px}
  body.project-page .stills-grid,body.project-page .stills-grid.stills-count-1,body.project-page .stills-grid.stills-count-2{grid-template-columns:1fr}
  body.project-page .grid-2,body.project-page .press-grid{grid-template-columns:1fr}
  body.project-page .section-head h2{font-size:clamp(1.8rem,11vw,2.7rem)}
}


/* V4.9 · Laureles visuales en proyectos */
body.project-page .awards-section{padding-top:42px;padding-bottom:42px}
body.project-page .compact-head{margin-bottom:18px}
body.project-page .laurels-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px;align-items:center;max-width:980px}
body.project-page .laurel-card{display:flex;align-items:center;justify-content:center;min-height:96px;padding:14px;border:1px solid rgba(24,35,46,.14);border-radius:18px;background:rgba(255,255,255,.74);text-decoration:none;box-shadow:none;transition:transform .16s ease,border-color .16s ease,background .16s ease}
body.project-page .laurel-card:hover,body.project-page .laurel-card:focus-visible{transform:translateY(-2px);border-color:var(--ink);background:#fff}
body.project-page .laurel-card img{display:block;width:100%;max-width:165px;max-height:82px;object-fit:contain}
body.project-page .awards-mini-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0;max-width:980px}
body.project-page .awards-mini-list li{border:1px solid rgba(24,35,46,.18);border-radius:999px;background:rgba(255,255,255,.72);padding:8px 11px;font-weight:850;font-size:.9rem;line-height:1.2;color:#253543}
@media(max-width:760px){body.project-page .laurels-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body.project-page .laurel-card{min-height:82px;padding:10px;border-radius:15px}body.project-page .laurel-card img{max-height:66px}}


/* V4.10 · Laureles transparentes y login admin sin pista pública */
body.project-page .laurels-grid{
  grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
  gap:20px 24px;
  align-items:center;
  justify-items:center;
  max-width:980px;
  margin-top:6px;
}
body.project-page .laurel-card,
body.project-page .laurel-card:hover,
body.project-page .laurel-card:focus-visible{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:0;
  padding:0;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  text-decoration:none;
  outline-offset:6px;
}
body.project-page .laurel-card:hover,
body.project-page .laurel-card:focus-visible{
  transform:translateY(-2px);
  opacity:.86;
}
body.project-page .laurel-card img{
  width:auto;
  max-width:170px;
  max-height:88px;
  object-fit:contain;
  background:transparent!important;
}
@media(max-width:760px){
  body.project-page .laurels-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}
  body.project-page .laurel-card{padding:0!important;min-height:0!important}
  body.project-page .laurel-card img{max-width:150px;max-height:76px}
}


/* V4.12 · Reparación real mobile de páginas de proyecto
   Evita que la sinopsis y la ficha técnica se queden en dos columnas estrechas en móvil. */
@media (max-width: 900px){
  body.project-page{
    overflow-x:hidden;
  }
  body.project-page .wrap{
    width:calc(100% - 28px)!important;
    max-width:100%!important;
  }
  body.project-page .project-hero,
  body.project-page .detail-layout{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  body.project-page .detail-layout > .panel,
  body.project-page .project-hero > *{
    min-width:0!important;
    width:100%!important;
  }
  body.project-page .panel{
    padding:18px!important;
    border-radius:22px!important;
    box-shadow:4px 4px 0 var(--ink)!important;
  }
  body.project-page .panel h2{
    font-size:clamp(2rem,10vw,3rem)!important;
    line-height:.98!important;
  }
  body.project-page .panel .lead{
    font-size:1.05rem!important;
    line-height:1.58!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:auto;
  }
  body.project-page .stills-block{
    margin-top:24px!important;
    margin-bottom:30px!important;
  }
  body.project-page .stills-grid,
  body.project-page .stills-grid.stills-count-1,
  body.project-page .stills-grid.stills-count-2{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.project-page .still-card{
    width:100%!important;
    border-radius:18px!important;
  }
  body.project-page .video-block,
  body.project-page .video-frame{
    width:100%!important;
    max-width:100%!important;
  }
  body.project-page .spec-table,
  body.project-page .spec-table tbody,
  body.project-page .spec-table tr,
  body.project-page .spec-table th,
  body.project-page .spec-table td{
    display:block!important;
    width:100%!important;
  }
  body.project-page .spec-table tr{
    padding:10px 0!important;
    border-bottom:1px solid var(--line)!important;
  }
  body.project-page .spec-table th,
  body.project-page .spec-table td{
    border-bottom:0!important;
    padding:0!important;
    text-align:left!important;
  }
  body.project-page .spec-table th{
    font-size:.92rem!important;
    margin-bottom:3px!important;
  }
  body.project-page .spec-table td{
    font-size:1rem!important;
    color:#263542!important;
  }
  body.project-page .laurels-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px 14px!important;
    justify-items:center!important;
  }
  body.project-page .laurel-card img{
    max-width:140px!important;
    max-height:72px!important;
  }
  body.project-page .press-grid,
  body.project-page .grid-2{
    grid-template-columns:1fr!important;
  }
  body.project-page .section-head{
    display:block!important;
    margin-bottom:18px!important;
  }
  body.project-page .section-head p{
    margin-top:10px!important;
  }
}
@media (max-width: 480px){
  body.project-page .wrap{
    width:calc(100% - 22px)!important;
  }
  body.project-page section{
    padding:30px 0!important;
  }
  body.project-page .project-hero{
    padding-top:24px!important;
  }
  body.project-page .panel{
    padding:16px!important;
    box-shadow:3px 3px 0 var(--ink)!important;
  }
  body.project-page .project-hero h1{
    font-size:clamp(2.35rem,14vw,3.7rem)!important;
  }
  body.project-page .laurel-card img{
    max-width:128px!important;
    max-height:68px!important;
  }
}

/* V4.13 · URL limpias, logo editable, vídeo arriba y ajustes visuales */
.brand-logo-img{
  display:block;
  width:auto;
  height:54px;
  max-width:260px;
  object-fit:contain;
}
@media(max-width:760px){.brand-logo-img{height:44px;max-width:210px}}

/* Los textos explicativos de cada sección dejan de flotar raro en mitad de la página */
.section-head{
  display:block!important;
  margin-bottom:26px!important;
}
.section-head p{
  margin:12px 0 0!important;
  max-width:760px!important;
}
body.project-page .section-head p{max-width:720px!important}

/* Los pósters en la home se ven completos, no amputados por el contenedor. Qué concepto tan revolucionario. */
.project-media{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fffdf8;
}
.project-media img{
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center center;
  padding:4px;
}
.project-card{align-items:stretch}

/* Carrusel lento de fotogramas en la tarjeta hero */
.hero-card-carousel{
  background:linear-gradient(145deg,var(--blue),var(--pink));
  isolation:isolate;
}
.hero-carousel{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
}
.hero-carousel:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,rgba(255,250,243,.86),rgba(255,250,243,.52)), radial-gradient(circle at 80% 20%,rgba(255,216,226,.5),transparent 38%);
  z-index:2;
}
.hero-carousel img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0;
  transform:scale(1.05);
  animation-name:liomaHeroFade;
  animation-timing-function:ease-in-out;
  animation-iteration-count:infinite;
}
@keyframes liomaHeroFade{
  0%,100%{opacity:0;transform:scale(1.05)}
  7%,22%{opacity:.42;transform:scale(1.01)}
  30%{opacity:0;transform:scale(1)}
}
.hero-card-carousel .speech{
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(8px);
}
.hero-card-carousel:before,.hero-card-carousel:after{z-index:1;pointer-events:none}

/* Vídeo antes de la ficha y la sinopsis */
.project-video-section{
  padding-top:22px!important;
  padding-bottom:28px!important;
}
.project-video-section .video-block{
  max-width:960px;
  margin:0 auto;
}
.project-video-section .video-frame{
  border-radius:26px;
  box-shadow:6px 6px 0 var(--ink);
}
body.project-page .detail-layout{margin-top:8px}

/* Evita que laureles que se hayan colado en fotogramas parezcan parte del material visual */
body.project-page .stills-grid{align-items:stretch}

@media(max-width:980px){
  .hero-card{max-height:none}
  .project-card{grid-template-columns:170px 1fr;min-height:230px}
}
@media(max-width:760px){
  .section-head h2{font-size:clamp(2.15rem,12vw,3.25rem)}
  .section-head p{font-size:1rem!important;line-height:1.5}
  .project-card{grid-template-columns:1fr;min-height:0}
  .project-media{min-height:0;aspect-ratio:2/3;max-height:420px}
  .project-media img{max-height:420px}
  .project-video-section{padding-top:18px!important;padding-bottom:22px!important}
  .project-video-section .video-frame{border-radius:20px;box-shadow:4px 4px 0 var(--ink)}
}


/* V4.14 · Home más compacta, secciones limpias, relacionados e indexación */
.hero{
  padding:42px 0 30px!important;
  grid-template-columns:1.02fr .98fr!important;
  gap:30px!important;
}
.hero h1{
  font-size:clamp(2.65rem,5.35vw,4.75rem)!important;
  line-height:1.01!important;
  max-width:720px!important;
}
.hero .lead{
  font-size:clamp(1rem,1.65vw,1.16rem)!important;
  line-height:1.55!important;
  max-width:680px!important;
  margin:18px 0 22px!important;
}
.hero .eyebrow{margin-bottom:16px!important}
.hero-card{min-height:300px!important;max-height:390px!important}
.section-head{
  max-width:850px;
}
.section-head p{
  max-width:680px!important;
  font-size:1.02rem!important;
}
.project-media{
  aspect-ratio:2/3;
  min-height:0!important;
}
.project-media img{
  object-fit:contain!important;
  background:#fffdf8;
}
.project-card{
  grid-template-columns:minmax(170px,220px) 1fr!important;
}
body.project-page .project-video-section{
  padding-top:18px!important;
}
body.project-page .related-projects-section{
  padding-top:46px;
}
.related-projects-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.related-project-card{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:16px;
  align-items:center;
  text-decoration:none;
  background:#fff;
  border:2px solid var(--ink);
  border-radius:26px;
  box-shadow:6px 6px 0 var(--ink);
  padding:12px;
  transition:transform .15s ease,box-shadow .15s ease;
}
.related-project-card:hover,.related-project-card:focus-visible{
  transform:translate(2px,2px);
  box-shadow:4px 4px 0 var(--ink);
}
.related-media{
  display:flex;
  align-items:center;
  justify-content:center;
  aspect-ratio:2/3;
  border:2px solid var(--ink);
  border-radius:20px;
  overflow:hidden;
  background:#fffdf8;
}
.related-media img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.related-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.related-copy strong{font-size:clamp(1.45rem,2.4vw,2rem);letter-spacing:-.05em;line-height:1}
.related-copy em{font-style:normal;color:#455e6d;font-weight:850;line-height:1.25}
.related-copy span:not(.mini-label){color:var(--muted);font-weight:650;line-height:1.35}
.poster-fallback.mini{width:100%;height:100%;min-height:0}
@media(max-width:980px){
  .hero{grid-template-columns:1fr!important;padding-top:34px!important}
  .hero h1{font-size:clamp(2.65rem,10vw,4.25rem)!important;max-width:760px!important}
  .hero-card{min-height:260px!important;max-height:none!important}
}
@media(max-width:760px){
  .hero h1{font-size:clamp(2.35rem,12vw,3.45rem)!important}
  .hero .lead{font-size:1rem!important}
  .project-card{grid-template-columns:1fr!important}
  .related-projects-grid{grid-template-columns:1fr!important}
  .related-project-card{grid-template-columns:104px 1fr;border-radius:22px;gap:12px}
  .related-media{border-radius:16px}
}


/* V4.15 · Reparación de URL robusta, tarjetas de home y cartelas menos agresivas */
.hero{
  padding-top:36px!important;
  padding-bottom:28px!important;
}
.hero h1{
  font-size:clamp(2.35rem,4.45vw,4.05rem)!important;
  max-width:680px!important;
  letter-spacing:-.06em!important;
}
.hero .lead{
  max-width:620px!important;
  font-size:clamp(.98rem,1.35vw,1.08rem)!important;
}
.hero-card-carousel .speech{
  max-width:82%;
}
.hero-carousel:after{
  background:linear-gradient(0deg,rgba(255,250,243,.92),rgba(255,250,243,.72)),radial-gradient(circle at 80% 20%,rgba(255,216,226,.42),transparent 38%)!important;
}
.hero-carousel img{
  opacity:0;
  filter:saturate(.85) contrast(.96);
}
@keyframes liomaHeroFade{
  0%,100%{opacity:0;transform:scale(1.03)}
  7%,24%{opacity:.28;transform:scale(1.01)}
  32%{opacity:0;transform:scale(1)}
}

/* Tarjetas de proyectos en home: nada de textos montándose sobre pósters, que ya bastante hace la gravedad. */
.projects-grid{
  align-items:stretch!important;
}
.project-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(150px,190px) minmax(0,1fr)!important;
  gap:16px!important;
  overflow:hidden!important;
  min-width:0!important;
  min-height:0!important;
  padding:12px!important;
}
.project-card > .project-media{
  grid-column:1!important;
  grid-row:1!important;
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:auto!important;
  align-self:stretch!important;
  aspect-ratio:2/3!important;
  overflow:hidden!important;
  background:#fffdf8!important;
}
.project-card > .project-media img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:0!important;
  background:#fffdf8!important;
}
.project-card > .project-copy{
  grid-column:2!important;
  grid-row:1!important;
  position:relative!important;
  z-index:2!important;
  min-width:0!important;
  width:100%!important;
  padding:14px 12px!important;
  background:rgba(255,255,255,.94)!important;
  border-radius:20px!important;
}
.project-copy .mini-label{
  font-size:.68rem!important;
  line-height:1.25!important;
  letter-spacing:.11em!important;
}
.project-copy h3{font-size:clamp(1.45rem,2.35vw,2rem)!important;line-height:.98!important}
.project-copy p{font-size:.98rem!important;line-height:1.4!important}
.project-copy .subtitle{font-size:1rem!important;line-height:1.25!important}

/* En tarjetas sin póster, el bloque de texto provisional no invade el contenido. */
.project-media .poster-fallback{
  min-height:0!important;
  height:100%!important;
}
.project-media .poster-fallback span{
  font-size:clamp(1.35rem,2.8vw,2.2rem)!important;
}

@media(max-width:1180px){
  .projects-grid{grid-template-columns:1fr!important;max-width:880px!important}
  .project-card{grid-template-columns:minmax(150px,210px) minmax(0,1fr)!important}
}
@media(max-width:760px){
  .hero{padding-top:28px!important}
  .hero h1{font-size:clamp(2.15rem,10vw,3.25rem)!important;line-height:1!important}
  .hero-card-carousel .speech{max-width:100%}
  .project-card{grid-template-columns:1fr!important;gap:12px!important}
  .project-card > .project-media,
  .project-card > .project-copy{grid-column:1!important;grid-row:auto!important}
  .project-card > .project-media{max-height:420px!important}
  .project-card > .project-copy{padding:14px!important}
}

/* Si por datos antiguos algún laurel se quedó metido como fotograma, se filtra en PHP; esto solo mantiene la galería compacta. */
body.project-page .stills-grid{align-items:stretch!important}
body.project-page .still-card img{object-fit:cover!important}

/* V4.16 · Reparación de tarjetas, sección de colaboraciones y home menos invasiva */
.hero h1{
  font-size:clamp(2.05rem,3.7vw,3.45rem)!important;
  line-height:1.02!important;
  max-width:620px!important;
}
.hero{
  gap:36px!important;
}
.hero .lead{
  max-width:600px!important;
}

/* Tarjetas nuevas de la home, con nombres propios para no heredar reglas antiguas que montaban textos sobre pósters. */
.projects-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
}
.home-project-card{
  display:grid!important;
  grid-template-columns:minmax(180px,240px) minmax(0,1fr)!important;
  gap:20px!important;
  align-items:stretch!important;
  background:#fff!important;
  border:2px solid var(--ink)!important;
  border-radius:32px!important;
  box-shadow:8px 8px 0 var(--ink)!important;
  padding:16px!important;
  overflow:hidden!important;
  min-width:0!important;
}
.home-project-media{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  aspect-ratio:2/3!important;
  min-height:0!important;
  overflow:hidden!important;
  border:2px solid var(--ink)!important;
  border-radius:24px!important;
  background:#fffdf8!important;
  text-decoration:none!important;
}
.home-project-media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#fffdf8!important;
}
.home-poster-fallback{
  width:100%;height:100%;display:grid;place-items:center;padding:18px;text-align:center;background:linear-gradient(145deg,var(--yellow),var(--blue),var(--pink));
}
.home-poster-fallback span{
  font-size:clamp(1.4rem,3vw,2.4rem);font-weight:950;line-height:.9;letter-spacing:-.07em;transform:rotate(-3deg);
}
.home-project-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  min-width:0!important;
  width:100%!important;
  padding:10px 6px!important;
  background:transparent!important;
  border-radius:0!important;
  position:relative!important;
  z-index:1!important;
}
.home-project-copy h3{
  margin:.15rem 0 .35rem!important;
  font-size:clamp(1.65rem,2.5vw,2.25rem)!important;
  line-height:.98!important;
}
.home-project-copy h3 a{text-decoration:none!important}
.home-project-copy p{color:var(--muted);font-size:1rem!important;line-height:1.45!important;margin:.45rem 0!important}
.home-project-copy .subtitle{font-weight:850;color:#465b68!important;line-height:1.25!important}
.home-project-copy .button{margin-top:auto!important}

.collaborations-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.collab-card{
  display:grid;
  grid-template-columns:minmax(160px,220px) minmax(0,1fr);
  gap:20px;
  background:#fff;
  border:2px solid var(--ink);
  border-radius:32px;
  box-shadow:8px 8px 0 var(--ink);
  padding:16px;
  overflow:hidden;
}
.collab-media{
  aspect-ratio:9/16;
  border:2px solid var(--ink);
  border-radius:24px;
  overflow:hidden;
  background:#fffdf8;
  display:flex;
  align-items:center;
  justify-content:center;
}
.collab-media img{width:100%;height:100%;object-fit:contain;background:#fffdf8}
.collab-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(145deg,var(--blue),var(--yellow),var(--pink));padding:18px;text-align:center}
.collab-fallback span{font-size:clamp(1.3rem,2.6vw,2.1rem);font-weight:950;line-height:.95;letter-spacing:-.06em}
.collab-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:8px 4px}
.collab-copy h3{font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1;margin:.2rem 0 .4rem}
.collab-copy p{color:var(--muted);line-height:1.45;margin:.45rem 0}
.collab-copy .subtitle{font-weight:850;color:#465b68}
.collab-process{font-size:.95rem;background:#fff8ed;border:1px solid var(--line);border-radius:16px;padding:10px 12px}
.collab-thumbs{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}
.collab-thumbs img{width:52px;height:78px;object-fit:cover;border:1px solid var(--line);border-radius:12px;background:#fff}

@media(max-width:1180px){
  .projects-grid,.collaborations-grid{grid-template-columns:1fr!important;max-width:900px!important}
}
@media(max-width:760px){
  .hero h1{font-size:clamp(2rem,9vw,3.05rem)!important;max-width:100%!important}
  .home-project-card,.collab-card{grid-template-columns:1fr!important;gap:14px!important;padding:14px!important;border-radius:26px!important;box-shadow:5px 5px 0 var(--ink)!important}
  .home-project-media{max-height:440px!important;border-radius:20px!important}
  .home-project-copy{padding:6px 4px!important}
  .collab-media{max-height:520px;border-radius:20px}
}

/* V4.17 · Admin más ordenado, tarjetas de home realmente separadas y página de otros cortometrajes */
.hero h1{
  font-size:clamp(2rem,3.1vw,3.05rem)!important;
  max-width:560px!important;
}
.home-project-card,
.project-card{
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  gap:18px!important;
  overflow:hidden!important;
  min-width:0!important;
  isolation:isolate!important;
}
.home-project-card .home-project-media,
.project-card .project-media,
.home-project-media,
.project-media{
  flex:0 0 clamp(160px,36%,238px)!important;
  width:auto!important;
  min-width:0!important;
  max-width:238px!important;
  aspect-ratio:2/3!important;
  height:auto!important;
  position:relative!important;
  z-index:1!important;
  overflow:hidden!important;
}
.home-project-card .home-project-media img,
.project-card .project-media img,
.home-project-media img,
.project-media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  position:static!important;
  transform:none!important;
}
.home-project-card .home-project-copy,
.project-card .project-copy,
.home-project-copy,
.project-copy{
  flex:1 1 auto!important;
  min-width:0!important;
  position:relative!important;
  z-index:2!important;
  overflow-wrap:anywhere!important;
}
.home-project-copy .mini-label,
.project-copy .mini-label{font-size:.78rem!important;line-height:1.2!important;word-break:normal!important}
.home-project-copy h3,
.project-copy h3{font-size:clamp(1.45rem,2.1vw,2rem)!important;line-height:1.02!important}
.home-project-copy p,
.project-copy p{font-size:.96rem!important;line-height:1.38!important}

.other-short-block{background:#fff;border:2px solid var(--ink);border-radius:32px;box-shadow:8px 8px 0 var(--ink);padding:24px;margin-bottom:34px}
.other-short-main{display:grid;grid-template-columns:minmax(190px,310px) minmax(0,1fr);gap:26px;align-items:start}
.other-short-poster{border:2px solid var(--ink);border-radius:24px;overflow:hidden;background:#fffdf8}
.other-short-poster img{display:block;width:100%;height:auto;object-fit:contain;background:#fffdf8}
.other-short-copy h2{font-size:clamp(2rem,4vw,3.7rem);margin:.15rem 0 .5rem}
.other-short-copy .subtitle{font-weight:850;color:#465b68}
.other-short-section,.other-short-video{margin-top:24px}
.other-shorts-list{padding-top:30px}
.compact-page-hero{padding-top:58px;padding-bottom:24px}
.compact-page-hero h1{font-size:clamp(2.5rem,6vw,5.5rem)}
.compact-specs{max-width:820px}.compact-press{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-laurels{justify-content:flex-start}

@media(max-width:980px){
  .home-project-card,.project-card{flex-direction:column!important}
  .home-project-card .home-project-media,.project-card .project-media,.home-project-media,.project-media{flex:none!important;width:100%!important;max-width:none!important;max-height:520px!important}
  .other-short-main{grid-template-columns:1fr}
  .compact-press{grid-template-columns:1fr}
}
@media(max-width:760px){
  .hero h1{font-size:clamp(2rem,8.2vw,2.9rem)!important}
  .home-project-card,.project-card{padding:14px!important;border-radius:26px!important;box-shadow:5px 5px 0 var(--ink)!important}
  .home-project-card .home-project-media,.project-card .project-media,.home-project-media,.project-media{max-height:none!important}
  .other-short-block{padding:16px;border-radius:26px;box-shadow:5px 5px 0 var(--ink)}
}

/* V4.20 · Home estable, otros cortos con página propia y admin menos laberíntico */
.projects-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))!important;
  gap:28px!important;
  align-items:stretch!important;
}
.home-project-card,
.project-card{
  display:grid!important;
  grid-template-columns:minmax(150px,230px) minmax(0,1fr)!important;
  gap:20px!important;
  align-items:stretch!important;
  position:relative!important;
  overflow:hidden!important;
  min-width:0!important;
}
.home-project-card .home-project-media,
.project-card .project-media,
.home-project-media,
.project-media{
  grid-column:1!important;
  width:100%!important;
  max-width:230px!important;
  min-width:0!important;
  aspect-ratio:2/3!important;
  height:auto!important;
  position:relative!important;
  z-index:1!important;
  flex:none!important;
  overflow:hidden!important;
}
.home-project-card .home-project-media img,
.project-card .project-media img,
.home-project-media img,
.project-media img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  position:static!important;
  transform:none!important;
}
.home-project-card .home-project-copy,
.project-card .project-copy,
.home-project-copy,
.project-copy{
  grid-column:2!important;
  min-width:0!important;
  width:100%!important;
  position:relative!important;
  z-index:2!important;
  background:transparent!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.home-project-copy .mini-label,
.project-copy .mini-label{font-size:.72rem!important;letter-spacing:.12em!important;line-height:1.25!important}
.home-project-copy h3,
.project-copy h3{font-size:clamp(1.45rem,2vw,2rem)!important;line-height:1.02!important}
.home-project-copy p,
.project-copy p{font-size:.96rem!important;line-height:1.42!important}
@media(max-width:760px){
  .home-project-card,.project-card{grid-template-columns:1fr!important;padding:14px!important}
  .home-project-card .home-project-media,.project-card .project-media,.home-project-media,.project-media{grid-column:1!important;max-width:none!important;width:100%!important;max-height:520px!important}
  .home-project-card .home-project-copy,.project-card .project-copy,.home-project-copy,.project-copy{grid-column:1!important}
}
.other-short-card-link{padding:18px!important}
.other-short-clickable{display:grid;text-decoration:none;color:inherit}
.other-short-title{display:block;font-size:clamp(2rem,4vw,3.4rem);line-height:.96;letter-spacing:-.06em;margin:.2rem 0 .5rem}
.other-short-desc{display:block;color:var(--muted);line-height:1.45;margin:.4rem 0 1rem}
.other-short-card-link .button{align-self:flex-start;margin-top:10px}
.extra-videos-section{padding-top:18px!important}
.extra-videos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:22px}
.extra-video-card{background:#fff;border:2px solid var(--ink);border-radius:28px;box-shadow:6px 6px 0 var(--ink);padding:18px}
.extra-video-card h3{font-size:clamp(1.4rem,2.4vw,2rem);margin:0 0 8px}.extra-video-card p{color:var(--muted);margin:0 0 12px}.extra-video-card .video-block{margin:0}.extra-video-card .video-frame{border-radius:20px}
.admin-global-save{width:100%;margin:16px 0 6px!important;text-align:center;justify-content:center}.admin-global-save:disabled{opacity:.65;cursor:wait}.compact-repeat{padding:12px!important;margin:12px 0!important}

/* V4.21 · Ajustes de ficha, admin y vídeo ancho completo */
body.project-page .project-video-section .video-block{
  max-width:100%!important;
  width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
body.project-page .project-video-section .video-frame{
  width:100%!important;
}
body.project-page .extra-videos-section .video-block{
  max-width:100%!important;
  width:100%!important;
}
body.project-page .extra-videos-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr))!important;
}
body.project-page .awards-text-fallback,
body.project-page .timeline,
body.project-page .timeline-item{
  display:none!important;
}
/* Blindaje extra para que las tarjetas de la home no monten póster y texto */
.projects-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr))!important;
  gap:28px!important;
  align-items:stretch!important;
}
.home-project-card,
.project-card{
  display:grid!important;
  grid-template-columns:minmax(150px,220px) minmax(0,1fr)!important;
  gap:20px!important;
  align-items:stretch!important;
  overflow:hidden!important;
  min-width:0!important;
}
.home-project-card .home-project-media,
.project-card .project-media,
.home-project-media,
.project-media{
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  max-width:220px!important;
  min-width:0!important;
  position:relative!important;
  z-index:1!important;
  transform:none!important;
}
.home-project-card .home-project-copy,
.project-card .project-copy,
.home-project-copy,
.project-copy{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  position:relative!important;
  z-index:3!important;
  transform:none!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  margin:0!important;
  background:#fff!important;
  border-radius:20px!important;
  padding:12px!important;
}
.home-project-card .home-project-media img,
.project-card .project-media img,
.home-project-media img,
.project-media img{
  object-fit:contain!important;
  width:100%!important;
  height:100%!important;
  transform:none!important;
}
@media(max-width:760px){
  .home-project-card,
  .project-card{
    grid-template-columns:1fr!important;
  }
  .home-project-card .home-project-media,
  .project-card .project-media,
  .home-project-media,
  .project-media{
    grid-column:1!important;
    grid-row:auto!important;
    max-width:none!important;
    width:100%!important;
  }
  .home-project-card .home-project-copy,
  .project-card .project-copy,
  .home-project-copy,
  .project-copy{
    grid-column:1!important;
    grid-row:auto!important;
  }
}
.extra-video-list{display:grid;gap:10px;margin:12px 0}.extra-video-card-admin{border:0!important;margin:0!important;background:#fff!important}.extra-video-delete{margin-top:10px}.side a[href="#media"]{display:none!important}

/* V4.22 · Lightbox elegante para fotogramas */
.still-card{cursor:zoom-in}
.lioma-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:clamp(16px,4vw,48px);background:rgba(12,18,26,.72);backdrop-filter:blur(8px)}
.lioma-lightbox.is-open{display:flex}
.lioma-lightbox-frame{position:relative;max-width:min(1120px,94vw);max-height:88vh;background:#fff;border:2px solid var(--ink);border-radius:32px;box-shadow:10px 10px 0 rgba(24,35,46,.55);padding:12px;display:grid;gap:10px}
.lioma-lightbox img{display:block;max-width:100%;max-height:calc(88vh - 86px);object-fit:contain;border-radius:22px;background:#fff}
.lioma-lightbox-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.lioma-lightbox-close,.lioma-lightbox-open{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:2px solid var(--ink);border-radius:999px;background:#fff;box-shadow:4px 4px 0 var(--ink);padding:8px 12px;font-weight:900;text-decoration:none;color:var(--ink);cursor:pointer;font:inherit}
.lioma-lightbox-close{background:var(--yellow)}
.lioma-lightbox-caption{font-size:.9rem;color:var(--muted);font-weight:800;margin-right:auto}
body.lightbox-lock{overflow:hidden}
.project-press-list{display:grid;gap:12px;margin:12px 0}
@media(max-width:760px){.lioma-lightbox{padding:12px}.lioma-lightbox-frame{border-radius:24px;padding:8px}.lioma-lightbox img{border-radius:17px;max-height:calc(88vh - 96px)}}

/* V4.24 · Relacionados manuales y navegación de fotogramas */
.lioma-lightbox-frame{overflow:visible}
.lioma-lightbox-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:52px;
  height:52px;
  border:2px solid var(--ink);
  border-radius:999px;
  background:var(--yellow);
  color:var(--ink);
  box-shadow:5px 5px 0 rgba(24,35,46,.55);
  font-size:2.1rem;
  line-height:1;
  font-weight:950;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index:2;
}
.lioma-lightbox-prev{left:-24px}
.lioma-lightbox-next{right:-24px}
.lioma-lightbox-nav:hover,.lioma-lightbox-nav:focus-visible{transform:translateY(-50%) translate(2px,2px);box-shadow:3px 3px 0 rgba(24,35,46,.55)}
.lioma-lightbox-nav[hidden]{display:none!important}
@media(max-width:760px){
  .lioma-lightbox-nav{width:42px;height:42px;font-size:1.7rem;box-shadow:3px 3px 0 rgba(24,35,46,.55)}
  .lioma-lightbox-prev{left:-7px}
  .lioma-lightbox-next{right:-7px}
  .lioma-lightbox-actions{font-size:.88rem}
}

/* V4.26 · Home menos redundante */
.hero-card-carousel .speech p:last-child{
  max-width:42ch;
  font-size:clamp(.98rem,1.35vw,1.12rem);
  line-height:1.42;
  color:var(--ink);
}
.hero-card-carousel .speech h2{
  font-size:clamp(2.35rem,5vw,4.4rem);
  margin:.12em 0 .12em;
}
.hero-card-carousel .speech .mini-label{
  font-size:.86rem;
  line-height:1.2;
  max-width:34ch;
}
#estudio .section-head p{
  max-width:660px;
}
@media(max-width:760px){
  .hero-card-carousel .speech h2{font-size:clamp(2rem,12vw,3.1rem)}
  .hero-card-carousel .speech p:last-child{font-size:.98rem}
}

/* V4.27 · Otros vídeos como miniaturas y debajo de la ficha */
.extra-videos-compact-section{
  padding-top:28px!important;
  padding-bottom:36px!important;
}
.extra-video-thumbs-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));
  gap:16px;
  align-items:start;
}
.extra-video-thumb-card{
  background:#fff;
  border:2px solid var(--ink);
  border-radius:24px;
  box-shadow:5px 5px 0 var(--ink);
  padding:12px;
  display:grid;
  gap:10px;
}
.extra-video-thumb{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  border:2px solid var(--ink);
  border-radius:18px;
  overflow:hidden;
  background:#000;
  padding:0;
  cursor:pointer;
  display:block;
}
.extra-video-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(.96);
  transform:scale(1.01);
}
.extra-video-thumb:hover img,
.extra-video-thumb:focus-visible img{
  filter:saturate(1.05) brightness(.94);
}
.extra-video-play{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:54px;
  height:38px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:#ff0000;
  color:#fff;
  font-size:1.05rem;
  font-weight:950;
  box-shadow:0 8px 18px rgba(0,0,0,.22);
  padding-left:2px;
}
.extra-video-thumb-copy h3{
  font-size:clamp(1.08rem,1.65vw,1.35rem);
  line-height:1.05;
  margin:0 0 4px;
  letter-spacing:-.04em;
}
.extra-video-thumb-copy p{
  color:var(--muted);
  margin:0 0 6px;
  font-size:.9rem;
  line-height:1.38;
}
.extra-video-thumb-copy a{
  display:inline-flex;
  font-weight:900;
  font-size:.88rem;
  color:var(--ink);
  text-decoration:underline;
  text-underline-offset:3px;
}
.lioma-video-lightbox{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:clamp(16px,4vw,48px);background:rgba(12,18,26,.75);backdrop-filter:blur(8px)}
.lioma-video-lightbox.is-open{display:flex}
.lioma-video-lightbox-frame{position:relative;width:min(1040px,94vw);background:#000;border:2px solid var(--ink);border-radius:30px;box-shadow:10px 10px 0 rgba(24,35,46,.55);padding:10px}
.lioma-video-lightbox .video-frame{box-shadow:none!important;border-radius:22px!important;border:0!important;margin:0!important}
.lioma-video-lightbox-close{position:absolute;right:12px;top:12px;z-index:3;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--ink);border-radius:999px;background:var(--yellow);box-shadow:4px 4px 0 rgba(24,35,46,.55);padding:8px 12px;font-weight:950;cursor:pointer;color:var(--ink);font:inherit}
.lioma-video-lightbox-title{position:absolute;left:18px;top:14px;z-index:3;max-width:calc(100% - 120px);font-weight:950;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.55);line-height:1.1}
@media(max-width:760px){
  .extra-video-thumbs-grid{grid-template-columns:1fr 1fr;gap:12px}
  .extra-video-thumb-card{padding:8px;border-radius:20px;box-shadow:4px 4px 0 var(--ink)}
  .extra-video-thumb-copy h3{font-size:1rem}
  .extra-video-thumb-copy p{display:none}
  .extra-video-play{width:44px;height:32px;border-radius:11px;font-size:.9rem}
  .lioma-video-lightbox{padding:12px}
  .lioma-video-lightbox-frame{border-radius:22px;padding:7px;width:96vw}
  .lioma-video-lightbox-title{font-size:.92rem;top:10px;left:12px}
  .lioma-video-lightbox-close{right:8px;top:8px;padding:6px 10px;font-size:.9rem}
}

/* V4.28 · Home más directa + página Estudio separada */
.hero-kicker{
  margin:0 0 14px;
  color:#426a76;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.88rem;
}
.home-page .hero,
.hero{
  padding-top:42px;
  padding-bottom:34px;
}
.hero h1{
  font-size:clamp(2.45rem,6.2vw,5.35rem);
  max-width:780px;
}
.hero .lead{
  max-width:700px;
  margin-top:18px;
  margin-bottom:24px;
}
.hero-card-carousel{
  min-height:300px;
}
#cortos.wrap{
  padding-top:42px;
}
.studio-page .studio-hero{
  padding-top:56px;
  padding-bottom:28px;
}
.studio-page .studio-hero h1{
  max-width:920px;
}
.studio-page .studio-about-section{
  padding-top:26px;
}
.studio-page .studio-cta-section{
  padding-top:36px;
}
.centered-actions{
  justify-content:center;
  margin-top:20px;
}
.studio-contact-box{
  max-width:920px;
  margin-inline:auto;
}
@media(max-width:900px){
  .hero{
    grid-template-columns:1fr!important;
    gap:24px!important;
    padding-top:34px!important;
    padding-bottom:30px!important;
  }
  .hero h1{
    font-size:clamp(2.25rem,10.5vw,3.45rem)!important;
    max-width:100%!important;
  }
  .hero .lead{
    font-size:1.02rem!important;
    line-height:1.5!important;
    margin:16px 0 20px!important;
  }
  .hero-card-carousel{
    min-height:220px!important;
    max-height:280px!important;
    border-radius:28px!important;
    box-shadow:6px 6px 0 var(--ink)!important;
  }
  .hero-card-carousel .speech{
    max-width:88%!important;
    padding:18px!important;
    border-radius:22px!important;
  }
  .hero-card-carousel .speech h2{
    font-size:clamp(2rem,11vw,3rem)!important;
  }
  .hero-card-carousel .speech p:last-child{
    font-size:.96rem!important;
    line-height:1.35!important;
  }
  #cortos.wrap{
    padding-top:34px!important;
  }
  .studio-page .about-block{
    grid-template-columns:1fr!important;
  }
  .studio-page .about-photo{
    min-height:0!important;
    max-height:none!important;
  }
  .studio-page .about-photo img{
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
  }
}

/* V4.29 · Home directa y Estudio editable */
.home-page .hero.hero-simple{
  display:block!important;
  max-width:1040px;
  padding-top:52px!important;
  padding-bottom:38px!important;
}
.home-page .hero.hero-simple h1{
  max-width:980px!important;
  font-size:clamp(2.35rem,6vw,5.1rem)!important;
}
.home-page .hero.hero-simple .lead{
  max-width:860px!important;
}
.home-page .hero.hero-simple .hero-kicker{
  max-width:980px;
  letter-spacing:.08em;
}
.studio-kicker{display:block!important;background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important;padding:0!important}
.studio-text-section{padding-top:26px!important}
.studio-info-panel{max-width:980px;margin-inline:auto}.studio-info-panel h2{font-size:clamp(2rem,4vw,3.7rem);max-width:880px}.studio-info-panel p{font-size:clamp(1.02rem,2vw,1.2rem);color:var(--muted);max-width:880px}
.studio-gallery-section,.studio-team-section{padding-top:46px!important}.studio-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.studio-gallery-item{display:block;text-decoration:none;color:inherit}.studio-gallery-item img{width:100%;aspect-ratio:16/10;object-fit:cover;border:2px solid var(--ink);border-radius:28px;box-shadow:5px 5px 0 var(--ink);background:#fff}.studio-gallery-item span{display:block;margin-top:8px;color:var(--muted);font-weight:850;font-size:.95rem}.studio-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.studio-team-card{background:#fff;border:2px solid var(--ink);border-radius:30px;box-shadow:7px 7px 0 var(--ink);padding:18px;display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:start}.studio-team-card img{width:150px;height:150px;object-fit:cover;border:2px solid var(--ink);border-radius:24px;background:#fffdf8}.studio-team-card h3{margin:.15rem 0 .55rem;font-size:clamp(1.55rem,3vw,2.3rem)}.studio-team-card p{color:var(--muted)}.team-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.team-links a{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:6px 9px;font-weight:900;text-decoration:none;background:#fff8ed;color:var(--ink)}
@media(max-width:900px){.home-page .hero.hero-simple{padding-top:34px!important;padding-bottom:26px!important}.home-page .hero.hero-simple h1{font-size:clamp(2.05rem,9vw,3.2rem)!important}.studio-gallery-grid,.studio-team-grid{grid-template-columns:1fr}.studio-team-card{grid-template-columns:1fr}.studio-team-card img{width:100%;height:auto;aspect-ratio:1/1}.studio-info-panel{padding:22px!important}}
