/* Six selected pieces, with portrait and landscape formats intact. */
.projects{grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 22px}
.project-wide{grid-column:span 2}
.project-meta h3{font-size:20px;line-height:1.25}
.project-meta>span{font-size:14px}
.project-wide .project-meta{display:block}
.project .video-facade{border-color:#41453a}
.clients-section{padding-top:80px}
.clients-caption{font-size:16px;color:var(--muted);margin:0 0 24px;text-align:center}
.client-logos{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.client-logo{flex:0 0 calc(20% - 10px);height:126px;background:#fff;display:flex;justify-content:center;align-items:center;padding:28px 22px;border:1px solid #e3e4df;border-radius:2px;transition:transform .28s ease,box-shadow .28s ease}
.client-logo--dark{background:#153d7c;border-color:#153d7c}
.logo-window{position:relative;overflow:hidden;width:100%;max-width:190px;aspect-ratio:var(--logo-ratio)}
.logo-window img{position:absolute;max-width:none;display:block}
.client-logo--compact .logo-window{max-width:90px}
.client-logo--medium .logo-window{max-width:145px}
.client-logo--mendoza{background:#f8f9fa}
.pill,.nav-contact,.text-link{transition:background .25s ease,color .25s ease,transform .25s ease}
.hero-photo img{transform:scale(1.025) translate(var(--portrait-x,0px),var(--portrait-y,0px));transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.reveal-pending{opacity:0;transform:translateY(22px)}
.reveal-ready{transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
@media(hover:hover) and (pointer:fine){.client-logo:hover{transform:translateY(-4px);box-shadow:0 12px 28px #0003}.pill:hover,.nav-contact:hover{transform:translateY(-2px)}}
@media(max-width:1050px){.projects{grid-template-columns:repeat(2,minmax(0,1fr))}.project-wide{grid-column:1/-1}.client-logo{flex-basis:calc(25% - 9px)}}
@media(max-width:650px){.projects{grid-template-columns:1fr;gap:32px}.project-wide{grid-column:1}.clients-section{padding-top:60px}.client-logo{flex-basis:calc(50% - 6px);height:114px;padding:24px 16px}.logo-window{max-width:145px}.client-logo--compact .logo-window{max-width:72px}.client-logo--medium .logo-window{max-width:110px}.clients-caption{font-size:15px}.hero-photo img{transform:none}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none}.reveal-ready,.hero-photo img,.client-logo,.pill,.nav-contact,.text-link{transition:none}.hero-photo img{transform:none}.client-logo:hover,.pill:hover,.nav-contact:hover{transform:none}}

/* Editorial portrait opening */
.hero{position:relative;grid-template-columns:1.15fr 1fr;grid-template-rows:auto 1fr;gap:0 7%;padding-top:52px;padding-bottom:48px;align-items:start}
.hero-heading{grid-column:1;grid-row:1;position:relative;z-index:2;padding-top:12px}
.hero h1{font-size:clamp(64px,7.8vw,112px);line-height:.98;margin:25px 0 38px;letter-spacing:-.065em}
.hero h1 em{color:var(--fg)}
.hero-photo{grid-column:2;grid-row:1/3;height:590px;border-radius:180px 180px 0 0;background:#080808}
.hero-photo img{object-position:center 25%}
.hero-photo figcaption{justify-content:center;font-size:12px;letter-spacing:.12em;padding-bottom:25px}
.hero-copy{grid-column:1;grid-row:2;border-top:1px solid var(--line);padding-top:24px}
.hero-index{font:12px monospace;letter-spacing:.08em;color:var(--acid)}
.hero-copy>p{font-size:clamp(28px,3vw,42px);line-height:1.15;color:var(--fg);margin:18px 0;letter-spacing:-.035em;max-width:none}
.hero-description{color:var(--muted);max-width:370px;font-size:16px}
.hero-services{display:inline-block;margin:20px 0 0 22px;font-size:14px;border-bottom:1px solid var(--line)}
.client-logo--cocir .logo-window{background:#153d7c;mask:url('imagenes/clientes/cocir.png') center/contain no-repeat;-webkit-mask:url('imagenes/clientes/cocir.png') center/contain no-repeat}
.client-logo--cocir img{opacity:0}
.client-logo--mendoza{padding:10px 16px}
.client-logo--mendoza .logo-window{max-width:190px}
@media(max-width:850px){.hero{gap:0 4%}.hero h1{font-size:clamp(54px,8vw,85px)}.hero-photo{height:560px}.hero-services{margin-left:0;display:block;width:fit-content}}
@media(max-width:650px){.hero{grid-template-columns:1fr 1fr;gap:24px 20px;padding-top:28px;padding-bottom:22px}.hero-heading{grid-column:1/-1;grid-row:1;padding:0}.hero .eyebrow{font-size:12px}.hero h1{font-size:clamp(56px,14vw,86px);margin:15px 0 0}.hero-photo{grid-column:1;grid-row:2;height:290px;border-radius:90px 90px 0 0}.hero-photo img{object-position:center center}.hero-photo figcaption{font-size:9px;letter-spacing:0;padding:28px 8px 15px;text-align:center}.hero-copy{grid-column:2;grid-row:2;padding-top:15px}.hero-index{font-size:10px;letter-spacing:0}.hero-copy>p{font-size:26px;margin:14px 0}.hero-description{font-size:14px;line-height:1.45}.hero .pill{padding:12px 14px;font-size:13px;margin-top:16px}.hero-services{font-size:12px;margin-top:16px}.client-logo--mendoza .logo-window{max-width:155px}}
@media(max-width:370px){.hero{grid-template-columns:1fr}.hero-photo{grid-column:1;grid-row:2;height:340px}.hero-copy{grid-column:1;grid-row:3}.hero-description{max-width:none}}

.playback-shell{min-width:0;align-self:start}.playback-shell iframe{width:100%;display:block}.playback-shell.portrait iframe{aspect-ratio:9/16}.playback-shell.landscape iframe{aspect-ratio:16/9;min-height:200px}.playback-help{font-size:12px;line-height:1.4;padding:10px 0;display:flex;flex-wrap:wrap;gap:8px 12px;color:var(--muted)}.playback-help a{margin-left:auto;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.playback-status:empty{display:none}

.playback-shell iframe[hidden]{display:none}.playback-error-poster{display:block;width:100%;object-fit:cover}.portrait .playback-error-poster{aspect-ratio:9/16}.landscape .playback-error-poster{aspect-ratio:16/9}

/* Client identities are visible without JavaScript or scroll callbacks. */
.clients-section,.clients-section.reveal-pending{opacity:1;transform:none}
