/* ELO18 V10 — fita de cases */
.projects.cases{--case-line:rgba(255,255,255,.13);padding:clamp(7rem,12vh,10rem) 0 clamp(6rem,11vh,9rem);overflow:hidden;background:radial-gradient(circle at 10% 22%,rgba(72,169,166,.16),transparent 29%),radial-gradient(circle at 92% 78%,rgba(216,92,50,.12),transparent 30%),linear-gradient(160deg,#233a4d 0%,#102536 48%,#071421 100%)}
.projects.cases::before,.projects.cases::after{opacity:.32;filter:blur(72px)}
.cases-header{position:relative;z-index:3;margin-bottom:clamp(3.5rem,7vh,5.5rem)}
.cases-header .display-title{max-width:920px}.cases-header .display-title em{color:var(--aqua-soft)}
.cases-intro{max-width:760px;margin:clamp(1.5rem,3vh,2.25rem) 0 0;color:rgba(255,255,255,.67);font-size:clamp(.96rem,1.2vw,1.1rem);line-height:1.78}
.case-ribbon-wrap{position:relative;z-index:4;width:100vw;margin-left:calc(50% - 50vw);margin-bottom:clamp(3rem,6vh,5rem);padding:16px 0;background:rgba(2,8,13,.72);}
.case-ribbon-wrap::before,.case-ribbon-wrap::after{content:"";position:absolute;z-index:5;top:16px;bottom:16px;width:min(12vw,170px);pointer-events:none}.case-ribbon-wrap::before{left:0;background:linear-gradient(90deg,#071421 0%,rgba(7,20,33,.88) 32%,transparent 100%)}.case-ribbon-wrap::after{right:0;background:linear-gradient(270deg,#071421 0%,rgba(7,20,33,.88) 32%,transparent 100%)}
.case-ribbon__edge{position:absolute;z-index:2;left:0;right:0;height:8px;opacity:.24;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 18px,rgba(255,255,255,.46) 18px 32px,transparent 32px 54px)}.case-ribbon__edge--top{top:4px}.case-ribbon__edge--bottom{bottom:4px}
.case-ribbon{position:relative;z-index:3;display:flex;gap:12px;width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none;padding:18px max(8vw,calc((100vw - 1140px)/2)) 20px}.case-ribbon::-webkit-scrollbar{display:none}
.case-tab{position:relative;flex:0 0 clamp(190px,16vw,240px);height:clamp(96px,8vw,122px);padding:0;border:1px solid rgba(255,255,255,.13);border-radius:0 12px 3px 3px;overflow:visible;cursor:pointer;scroll-snap-align:center;background:#0d2132;box-shadow:0 10px 32px rgba(0,0,0,.22);transform:translateY(10px);transition:transform .4s var(--ease),border-color .4s var(--ease),box-shadow .4s var(--ease)}
.case-tab::before{content:"";position:absolute;z-index:-1;top:-13px;left:-1px;width:42%;height:15px;border:1px solid rgba(255,255,255,.13);border-bottom:0;border-radius:10px 10px 0 0;background:#0d2132;transition:.4s var(--ease)}
.case-tab img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit;filter:saturate(.72) contrast(.9) brightness(.72);opacity:.72;transition:filter .4s var(--ease),opacity .4s var(--ease),transform .55s var(--ease)}
.case-tab__index{position:absolute;z-index:4;right:8px;top:8px;display:grid;place-items:center;min-width:28px;height:24px;padding:0 6px;border:1px solid rgba(255,255,255,.22);background:rgba(4,11,18,.62);color:rgba(255,255,255,.8);font-size:.58rem;letter-spacing:.1em;backdrop-filter:blur(6px)}
.case-tab:hover,.case-tab:focus-visible{transform:translateY(4px);border-color:rgba(141,212,207,.52);box-shadow:0 18px 44px rgba(0,0,0,.32),0 0 24px rgba(72,169,166,.08)}.case-tab:hover img,.case-tab:focus-visible img{filter:saturate(.95) contrast(.98) brightness(.9);opacity:.9}.case-tab:focus-visible{outline:2px solid var(--aqua-soft);outline-offset:4px}
.case-tab.is-active{transform:translateY(-2px);border-color:rgba(141,212,207,.82);box-shadow:0 24px 52px rgba(0,0,0,.38),0 0 34px rgba(72,169,166,.14)}.case-tab.is-active::before{border-color:rgba(141,212,207,.82);background:var(--aqua)}.case-tab.is-active img{filter:none;opacity:1;transform:scale(1.015)}
.case-ribbon__hint{position:absolute;z-index:7;right:max(20px,calc((100vw - 1140px)/2));bottom:-2.05rem;display:flex;align-items:center;gap:.65rem;color:rgba(255,255,255,.42);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;pointer-events:none}.case-ribbon__hint i{font-style:normal;font-size:1rem;color:var(--aqua-soft)}
.case-stage,.case-controls{position:relative;z-index:3;width:var(--container);max-width:1140px;margin-inline:auto}.case-stage{min-height:clamp(590px,72vh,760px);border:1px solid var(--case-line);background:rgba(4,11,18,.5);box-shadow:0 32px 100px rgba(0,0,0,.28);overflow:hidden;isolation:isolate}.case-stage::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.025),transparent 32%),radial-gradient(circle at 72% 28%,rgba(72,169,166,.08),transparent 34%)}
.case-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);min-height:clamp(590px,72vh,760px);opacity:0;transform:translateY(24px) scale(.99)}.case-panel.is-active{animation:casePanelIn .68s var(--ease) both}@keyframes casePanelIn{to{opacity:1;transform:none}}
.case-panel__visual{position:relative;min-width:0;margin:0;overflow:hidden;background:#071421}.case-panel__visual::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 58%,rgba(4,11,18,.28) 100%),linear-gradient(180deg,rgba(4,11,18,.06),transparent 30%,rgba(4,11,18,.18))}.case-panel__visual img{width:100%;height:100%;min-height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.case-panel:hover .case-panel__visual img{transform:scale(1.018)}
.case-panel__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2.75rem,4.6vw,5rem);background:linear-gradient(180deg,rgba(7,20,33,.97),rgba(4,11,18,.92))}.case-panel__meta{display:block;margin-bottom:clamp(1.5rem,3vh,2.5rem);color:var(--aqua-soft);font-size:.64rem;letter-spacing:.15em;line-height:1.5;text-transform:uppercase}.case-panel__copy h3{margin:0;font-family:var(--font-display);font-size:clamp(3.4rem,5.5vw,6.5rem);font-weight:400;line-height:.82;letter-spacing:-.055em;color:var(--sand)}.case-panel__lead{margin:clamp(1.5rem,3vh,2.3rem) 0 1.4rem;font-family:var(--font-display);font-size:clamp(1.35rem,2vw,2rem);line-height:1.1;color:rgba(255,255,255,.9)}.case-panel__copy>p:not(.case-panel__lead){margin:1.5rem 0 0;color:rgba(255,255,255,.64);font-size:.92rem;line-height:1.72}
.case-panel__scope{display:flex;flex-wrap:wrap;gap:8px}.case-panel__scope span{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid rgba(141,212,207,.2);border-radius:999px;background:rgba(72,169,166,.05);color:rgba(255,255,255,.7);font-size:.65rem;line-height:1.25}.case-panel__copy>a{display:inline-flex;align-items:center;gap:.65rem;align-self:flex-start;margin-top:clamp(1.75rem,3.5vh,2.75rem);padding-bottom:.35rem;border-bottom:1px solid rgba(141,212,207,.48);color:var(--aqua-soft);font-size:.72rem;font-weight:500;letter-spacing:.11em;text-transform:uppercase;transition:.25s}.case-panel__copy>a:hover{gap:.9rem;color:#fff;border-color:#fff}
.case-controls{display:flex;justify-content:flex-end;align-items:center;gap:18px;margin-top:1.5rem}.case-controls button{width:48px;height:48px;border:1px solid rgba(255,255,255,.18);background:rgba(4,11,18,.32);color:#fff;cursor:pointer;transition:.25s}.case-controls button:hover,.case-controls button:focus-visible{background:#fff;color:var(--ink);border-color:#fff;transform:translateY(-2px)}.case-controls span{min-width:68px;text-align:center;color:rgba(255,255,255,.58);font-size:.68rem;letter-spacing:.14em}
.projects.cases .project-film,.projects.cases .project-controls,.projects.cases .project-frame{display:none!important}
@media(max-width:820px){.case-ribbon-wrap::before,.case-ribbon-wrap::after{width:34px}.case-ribbon{padding-inline:22px}.case-ribbon__hint{right:22px}.case-tab{flex-basis:190px;height:96px}.case-stage{min-height:0}.case-panel{grid-template-columns:1fr;min-height:0}.case-panel__visual{min-height:clamp(300px,52vw,470px);aspect-ratio:16/10}.case-panel__copy{padding:clamp(2.4rem,7vw,4rem)}.case-controls{justify-content:center}}
@media(max-width:560px){.projects.cases{padding-top:5.5rem;padding-bottom:5.5rem}.cases-header{margin-bottom:3rem}.cases-intro{font-size:.91rem}.case-ribbon-wrap{margin-bottom:3.7rem}.case-ribbon{gap:9px;padding:16px 18px 18px}.case-tab{flex-basis:160px;height:82px}.case-tab::before{top:-10px;height:12px}.case-tab__index{right:5px;top:5px;min-width:24px;height:21px;font-size:.52rem}.case-ribbon__hint{bottom:-1.8rem;font-size:.55rem}.case-panel__visual{min-height:260px}.case-panel__copy{padding:2.25rem 1.25rem 2.6rem}.case-panel__copy h3{font-size:clamp(3rem,15vw,4.5rem)}.case-panel__lead{font-size:clamp(1.3rem,6.5vw,1.7rem)}.case-panel__copy>p:not(.case-panel__lead){font-size:.86rem}.case-panel__scope{gap:6px}.case-panel__scope span{font-size:.59rem}}
@media(prefers-reduced-motion:reduce){.case-panel.is-active{animation:none;opacity:1;transform:none}.case-tab,.case-tab img,.case-panel__visual img{transition:none!important}}
