/* Videos del estudio. Mantiene la paleta y las tipografías originales. */
.studio-film{display:grid;grid-template-columns:minmax(124px,32%) minmax(0,1fr);margin:26px 0;border:1px solid var(--line);border-radius:18px;background:var(--paper,#fffdf8);overflow:hidden;isolation:isolate}
.studio-film-preview{position:relative;display:block;aspect-ratio:9/16;align-self:stretch;overflow:hidden;background:var(--green-2,#0d2922);color:white}
.studio-film-preview>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.studio-film-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.5));pointer-events:none}
.studio-film-preview:hover>img{transform:scale(1.025)}
.studio-film-play{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--paper,#fffdf8);color:var(--green);box-shadow:0 4px 25px #0003;transition:background .2s ease}
.studio-film-play svg{width:23px;height:23px;margin-left:3px;fill:currentColor}
.studio-film-preview:hover .studio-film-play{background:var(--gold,#e8d7a4)}
.studio-film-duration{position:absolute;z-index:1;left:14px;bottom:14px;padding:4px 9px;border:1px solid #ffffff50;border-radius:6px;background:#102c24d9;color:#fff;font:600 12px/1.3 var(--sans,system-ui)}
.studio-film-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:26px;min-width:0}
.studio-film-copy .eyebrow{font-size:10px;letter-spacing:.14em;margin:0 0 12px;color:var(--muted)}
.studio-film-copy h3{font-size:clamp(23px,2.15vw,30px);line-height:1.17;color:var(--green);margin:0 0 12px;text-wrap:balance}
.studio-film-copy p:not(.eyebrow){font-size:15px;line-height:1.6;color:var(--muted);margin:0 0 18px}
.studio-film-link{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 17px;border:1px solid var(--green);border-radius:999px;color:var(--green);font-size:13px;font-weight:700;text-decoration:none;transition:background .2s ease,color .2s ease}
.studio-film-link:hover{background:var(--green);color:var(--paper)}
.studio-film-link svg{width:13px;height:13px;fill:currentColor}
.studio-film a:focus-visible,.studio-player button:focus-visible,.studio-player video:focus-visible{outline:3px solid var(--gold,#d9bc71);outline-offset:4px}
.contact-details>.studio-film{margin-top:24px}
.about-strip>.studio-film{margin:0;width:100%}
body.has-video-open{overflow:hidden}
.studio-player{position:fixed;inset:0;margin:auto;width:min(860px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #ffffff2e;border-radius:20px;background:var(--green-2,#0d2922);color:#fff;box-shadow:0 24px 100px #0006;overflow:auto;overscroll-behavior:contain}
.studio-player:not([open]){display:none}
.studio-player::backdrop{background:rgba(7,20,16,.86);backdrop-filter:blur(6px)}
.studio-player-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;border-bottom:1px solid #ffffff20}
.studio-player-head p{margin:0 0 4px;color:#cbd7cf;font:600 10px/1.4 var(--sans,system-ui);letter-spacing:.15em;text-transform:uppercase}
.studio-player-head h2{margin:0;color:#fff;font-size:24px;line-height:1.15}
.studio-player-close{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:none;min-height:44px;padding:8px 13px;border:1px solid #ffffff5c;border-radius:999px;background:transparent;color:#fff;font:600 13px/1.2 var(--sans,system-ui);cursor:pointer}
.studio-player-close:hover{background:#ffffff15}
.studio-player-close span{font-size:25px;font-weight:400;line-height:1}
.studio-player-stage{display:flex;justify-content:center;align-items:center;min-height:200px;background:#080f0c;padding:12px}
.studio-player-video{display:block;width:auto;height:min(61dvh,620px);max-width:100%;aspect-ratio:9/16;object-fit:contain;background:#000;border-radius:8px}
.studio-player-status{margin:0;padding:12px 22px;text-align:center;font-size:14px;color:#fff}
.studio-player-status[hidden]{display:none}
.studio-player-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:15px 22px 18px}
.studio-player-nav:has(>button:only-child){grid-template-columns:1fr}
.studio-player-choice{display:flex;align-items:center;gap:10px;min-width:0;min-height:48px;padding:10px 13px;border:1px solid #ffffff32;border-radius:11px;background:transparent;color:#d8e2db;text-align:left;font:600 13px/1.35 var(--sans,system-ui);cursor:pointer}
.studio-player-choice span{color:#a7bdb1;font-size:11px;flex:none}
.studio-player-choice[aria-pressed=true]{background:var(--paper,#fffdf8);color:var(--green-2);border-color:var(--paper)}
.studio-player-choice[aria-pressed=true] span{color:var(--green)}
.studio-player-choice:hover:not([aria-pressed=true]){background:#ffffff12}
@media(max-width:600px){.studio-film{grid-template-columns:124px minmax(0,1fr);border-radius:15px}.studio-film-copy{padding:18px 16px}.studio-film-copy h3{font-size:23px}.studio-film-copy .eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:9px}.studio-film-copy p:not(.eyebrow){font-size:13px;line-height:1.5;margin-bottom:14px}.studio-film-link{font-size:12px;padding-inline:13px}.studio-film-play{width:50px;height:50px}.studio-film-duration{left:9px;bottom:10px}.studio-player{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:15px}.studio-player-head{padding:14px;gap:12px}.studio-player-head h2{font-size:21px}.studio-player-head p{font-size:9px;letter-spacing:.1em}.studio-player-close{padding:8px 10px}.studio-player-stage{padding:8px}.studio-player-video{height:min(61dvh,640px);border-radius:5px}.studio-player-nav{padding:12px;gap:8px}.studio-player-choice{font-size:12px;padding:10px;gap:7px}}
@media(max-width:360px){.studio-film{grid-template-columns:108px minmax(0,1fr)}.studio-film-copy{padding:15px 12px}.studio-film-copy h3{font-size:21px}.studio-film-copy p:not(.eyebrow){font-size:12px}.studio-player-head h2{font-size:19px}.studio-player-close{font-size:12px}}
@media(max-height:550px) and (orientation:landscape){.studio-player-video{height:calc(100dvh - 178px);min-height:140px}.studio-player-head{padding:10px 16px}.studio-player-head h2{font-size:20px}.studio-player-nav{padding:10px 16px}.studio-player-stage{min-height:0;padding:4px}}
@media(prefers-reduced-motion:reduce){.studio-film-preview>img,.studio-film-play,.studio-film-link{transition:none}.studio-player::backdrop{backdrop-filter:none}}
