/* Shared case-study refinements, deliberately separate from the archive engine. */
.case-player{position:relative;isolation:isolate;background:inherit;line-height:0}
.case-player video{opacity:1!important;filter:none!important}
.case-player__surface{position:absolute;inset:0;z-index:1;border:0;border-radius:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}
.case-player__surface:focus-visible{outline:3px solid #fff;outline-offset:-5px}
.case-player__controls{position:absolute;z-index:3;left:12px;right:12px;bottom:12px;display:flex;align-items:center;gap:12px;background:#101919ee;color:#fff;border:1px solid #ffffff40;border-radius:10px;padding:8px 12px;font:12px/1.4 system-ui,sans-serif}
.case-player__controls button,.case-player__play{border:1px solid #ffffff66;border-radius:6px;background:#172523;color:#fff;padding:10px 12px;font:500 12px/1.4 system-ui,sans-serif;cursor:pointer;min-height:44px;white-space:nowrap}
.case-player__controls input{flex:1;min-width:32px;min-height:44px;accent-color:#d2e2d0}
.case-player__controls output{min-width:3ch;color:#fff}
.case-player__play{position:absolute;z-index:2;bottom:16px;left:16px}
.case-player__notice{position:absolute;z-index:3;left:16px;right:16px;top:16px;background:#101919ee;color:#fff;padding:12px;font:14px/1.5 system-ui,sans-serif;margin:0}
.case-player__download{position:absolute;z-index:3;right:16px;bottom:16px;color:#fff;background:#101919;padding:12px;line-height:1.5}
.case-player [hidden]{display:none!important}
.case-player :is(button,input,a):focus-visible{outline:3px solid #fff;outline-offset:2px}
.case-player:fullscreen{display:grid;place-items:center;background:#07121a}
.case-player:fullscreen video{width:100%;height:100%;max-height:100vh;object-fit:contain}
.case-study-page :is(.og-film__frame,.mf-film-frame,.fz-film-frame,.cv-film){opacity:1!important;transform:none!important}

/* Remove excessive presentation padding without cropping project imagery. */
.civanta-case-page .cv-hero{padding:125px 0 36px}
.civanta-case-page .cv-section{min-height:0;padding:clamp(2.5rem,4.4vw,4rem) 0}
.civanta-case-page .cv-hero-art{max-height:470px;width:auto;max-width:100%;justify-self:center}
.civanta-case-page .cv-meta{margin-top:2rem;padding-top:1.2rem}
.civanta-case-page .cv-section-head{margin-bottom:1.4rem}
.civanta-case-page .cv-film{max-width:1100px;margin-inline:auto}
.civanta-case-page .cv-sequence{max-width:1060px;margin:1.6rem auto 0}
.civanta-case-page .cv-sequence-controls{flex-wrap:wrap;gap:1rem}
.civanta-case-page .cv-sequence-controls input{flex:1 1 180px;touch-action:pan-y}
.cv-sequence-toggle{border:1px solid #3da1ce88;border-radius:6px;background:#153342;color:#f6f5f1;min-height:44px;padding:8px 16px;font:500 .75rem/1.4 'Civanta Mono',monospace;cursor:pointer}
.cv-sequence-toggle:focus-visible{outline:3px solid #3da1ce;outline-offset:4px}
.civanta-case-page .cv-services{perspective:1200px}
.civanta-case-page .cv-service{transform-origin:50% 0;backface-visibility:hidden}
.cv-fold-ready .cv-service{opacity:.12;transform:rotateX(-38deg) translateY(24px);transition:transform .85s cubic-bezier(.22,.75,.2,1),opacity .7s ease;transition-delay:var(--fold-delay,0ms)}
.cv-fold-ready .cv-service.is-unfolded{opacity:1;transform:none}
.civanta-case-page .cv-service:nth-child(2){--fold-delay:100ms}
.civanta-case-page .cv-service:nth-child(3){--fold-delay:200ms}
.civanta-case-page .cv-service:nth-child(4){--fold-delay:300ms}
.fazenda-case-page .fz-grid{gap:2.5rem 4%}
.fazenda-case-page .fz-chapter .fz-3d-study{display:grid;grid-template-columns:1.2fr 1fr;gap:8px;margin:0 0 1.3rem;padding:10px;background:#33372c;border:1px solid #9ea68f66;border-radius:12px}
.fazenda-case-page .fz-3d-study figure{margin:0;min-width:0}
.fazenda-case-page .fz-3d-study img{height:auto;width:100%;aspect-ratio:1;object-fit:cover;margin:0;border-radius:6px}
.fazenda-case-page .fz-3d-study .fz-bean{object-fit:contain;background:radial-gradient(#686849,#252b22);padding:8px}
.fazenda-case-page .fz-3d-study figcaption{font:.65rem/1.5 'IBM Plex Mono',monospace;padding:8px 0 0;color:#d8dbc9}
.fazenda-case-page .fz-map-study{margin:1rem 0;border:1px solid #9ea68f66;border-radius:10px;overflow:hidden;background:#f2eddc}
.fazenda-case-page .fz-map-study img{aspect-ratio:1200/624;object-fit:contain;height:auto;margin:0;border-radius:0}
.fazenda-case-page .fz-map-study figcaption{padding:8px 12px;color:#1c211b;font:.68rem/1.5 'IBM Plex Mono',monospace}
.fazenda-case-page .fz-demo{height:720px;transition:none}
.case-study-page :is(.cv-close,.fz-close,.mf-close,.og-cta,.panel--contact.panel--seafloor){min-height:0;padding-block:clamp(2.5rem,5vw,5rem)}
@media(max-width:800px){
 .civanta-case-page .cv-hero{padding-top:110px;padding-bottom:30px}
 .civanta-case-page .cv-hero-grid{gap:1.6rem}
 .civanta-case-page .cv-hero-art{max-height:380px}
 .civanta-case-page .cv-film,.fazenda-case-page .fz-film-frame,.mf-case-page .mf-film-frame{max-width:min(100%,360px)}
 .case-player__controls{left:6px;right:6px;bottom:6px;gap:6px;padding:6px;flex-wrap:wrap}
 .case-player__controls input{flex-basis:35%}
 .case-player__controls button{padding:8px;font-size:11px}
 .civanta-case-page .cv-service{--fold-delay:0ms!important}
}
@media(prefers-reduced-motion:reduce){
 .cv-fold-ready .cv-service{opacity:1;transform:none;transition:none}
}
