/* MMP Case Study Showcase v2.2.0 - dark-theme first */
.mmp-cs{--mmp-red:#ff3b3b;--mmp-white:#fff;--mmp-muted:rgba(255,255,255,.66);--mmp-line:rgba(255,255,255,.15);--mmp-glass:rgba(255,255,255,.055);width:100%;position:relative;color:#fff;isolation:isolate}
.mmp-cs *,.mmp-cs *:before,.mmp-cs *:after{box-sizing:border-box}
.mmp-cs a{color:inherit;text-decoration:none}
.mmp-cs__intro{max-width:800px;margin:0 0 44px}
.mmp-cs__eyebrow{color:var(--mmp-red);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}
.mmp-cs__heading{margin:0 0 14px!important;color:#fff!important;-webkit-text-fill-color:#fff;font-size:clamp(34px,5vw,62px)!important;line-height:.98!important;letter-spacing:-.05em;font-weight:600!important}
.mmp-cs__description{margin:0;color:var(--mmp-muted)!important;font-size:16px;line-height:1.6}
.mmp-cs__empty{padding:32px;border:1px dashed rgba(255,255,255,.22);border-radius:22px;color:rgba(255,255,255,.65);background:rgba(255,255,255,.025)}
/* STACK */
.mmp-cs__stack{position:relative;min-height:480px;max-width:900px;margin:0 auto;padding:15px 0 0;display:flex;align-items:center;justify-content:center}
.mmp-cs__stack-card{position:absolute;width:min(72%,720px);aspect-ratio:16/9;border-radius:22px;overflow:visible;transition:transform .65s cubic-bezier(.18,.85,.2,1),filter .5s ease,opacity .5s ease;transform-origin:center bottom}
.mmp-cs__stack-card:nth-child(1){transform:translateY(0) rotate(-1deg);z-index:8}
.mmp-cs__stack-card:nth-child(2){transform:translate(24px,18px) rotate(1.4deg) scale(.965);z-index:7}
.mmp-cs__stack-card:nth-child(3){transform:translate(-28px,35px) rotate(-2deg) scale(.93);z-index:6}
.mmp-cs__stack-card:nth-child(4){transform:translate(32px,52px) rotate(2.3deg) scale(.895);z-index:5}
.mmp-cs__stack-card:nth-child(5){transform:translate(-35px,69px) rotate(-2.7deg) scale(.86);z-index:4}
.mmp-cs__stack-card:nth-child(6){transform:translate(38px,85px) rotate(3deg) scale(.825);z-index:3}
.mmp-cs__stack-card:nth-child(7){transform:translate(-40px,99px) rotate(-3deg) scale(.79);z-index:2}
.mmp-cs__stack-card:nth-child(8){transform:translate(42px,112px) rotate(3deg) scale(.755);z-index:1}
.mmp-cs__stack:hover .mmp-cs__stack-card{filter:saturate(.72) brightness(.65);transform:translateY(105px) scale(.78)!important}
.mmp-cs__stack .mmp-cs__stack-card:hover{filter:none;transform:translate(0,-12px) rotate(0) scale(1.035)!important;z-index:20}
.mmp-cs__media-link{display:block;width:100%;height:100%;position:relative;border-radius:inherit}
.mmp-cs__media{width:100%;height:100%;overflow:hidden;border:1px solid rgba(255,255,255,.20);border-radius:inherit;background:#0b0b0e;box-shadow:0 25px 70px rgba(0,0,0,.42),0 0 40px rgba(255,59,59,.08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.mmp-cs__media img{display:block;width:100%;height:100%;object-fit:cover}
.mmp-cs__overlay{position:absolute;left:18px;right:18px;bottom:18px;padding:19px 20px;border:1px solid rgba(255,255,255,.16);border-radius:17px;background:linear-gradient(135deg,rgba(9,9,12,.78),rgba(9,9,12,.48));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);opacity:0;transform:translateY(10px);transition:.4s ease}
.mmp-cs__stack-card:hover .mmp-cs__overlay{opacity:1;transform:none}
.mmp-cs__meta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:7px;color:rgba(255,255,255,.52);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.mmp-cs__overlay h3{margin:0 0 12px;color:#fff;font-size:22px;line-height:1.05;letter-spacing:-.035em}
.mmp-cs__cta{display:inline-flex;gap:8px;align-items:center;color:var(--mmp-red);font-size:11px;font-weight:800;letter-spacing:.05em}
.mmp-cs__cta b{font-size:15px}
.mmp-cs__stack-hint{text-align:center;color:rgba(255,255,255,.35);font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-top:10px}
/* CELLULAR */
.mmp-cs__cells{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(70px,6.5vw);gap:12px;max-width:1100px;margin:0 auto}
.mmp-cs__cell{position:relative;min-width:0;transition:transform .5s cubic-bezier(.18,.85,.2,1),opacity .45s ease,filter .45s ease;z-index:1}
.mmp-cs__cell:nth-child(1){grid-column:1/span 3;grid-row:2/span 4}.mmp-cs__cell:nth-child(2){grid-column:4/span 4;grid-row:1/span 4}.mmp-cs__cell:nth-child(3){grid-column:8/span 3;grid-row:2/span 3}.mmp-cs__cell:nth-child(4){grid-column:11/span 2;grid-row:4/span 3}.mmp-cs__cell:nth-child(5){grid-column:2/span 3;grid-row:6/span 3}.mmp-cs__cell:nth-child(6){grid-column:5/span 4;grid-row:5/span 4}.mmp-cs__cell:nth-child(7){grid-column:9/span 3;grid-row:7/span 3}.mmp-cs__cell:nth-child(8){grid-column:1/span 3;grid-row:9/span 3}.mmp-cs__cell:nth-child(9){grid-column:4/span 4;grid-row:9/span 4}.mmp-cs__cell:nth-child(10){grid-column:8/span 3;grid-row:10/span 3}
.mmp-cs__cell-link{display:block;width:100%;height:100%;position:relative}
.mmp-cs__cell-image{height:100%;width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:#0b0b0e;box-shadow:0 18px 50px rgba(0,0,0,.32);transition:.5s cubic-bezier(.18,.85,.2,1)}
.mmp-cs__cell-image img{width:100%;height:100%;object-fit:cover;display:block}
.mmp-cs__cell-info{position:absolute;left:10px;right:10px;bottom:10px;padding:12px 13px;border-radius:13px;background:rgba(7,7,10,.68);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);opacity:0;transform:translateY(8px);transition:.35s ease}
.mmp-cs__cell-info span,.mmp-cs__cell-info strong,.mmp-cs__cell-info em{display:block}.mmp-cs__cell-info span{font-size:8px;color:rgba(255,255,255,.5);letter-spacing:.12em;text-transform:uppercase}.mmp-cs__cell-info strong{font-size:15px;line-height:1.05;margin-top:4px}.mmp-cs__cell-info em{font-style:normal;color:var(--mmp-red);font-size:9px;margin-top:8px;font-weight:800}
.mmp-cs__cells:hover .mmp-cs__cell{opacity:.46;filter:blur(1px) saturate(.65)}.mmp-cs__cells .mmp-cs__cell:hover{opacity:1;filter:none;transform:scale(1.12);z-index:20}.mmp-cs__cell:hover .mmp-cs__cell-image{border-color:rgba(255,59,59,.48);box-shadow:0 28px 70px rgba(0,0,0,.48),0 0 45px rgba(255,59,59,.14)}.mmp-cs__cell:hover .mmp-cs__cell-info{opacity:1;transform:none}
/* FILM */
.mmp-cs__film-viewport{width:100%;overflow:hidden;padding:20px 0 45px;position:relative}
.mmp-cs__film-viewport:before,.mmp-cs__film-viewport:after{content:"";position:absolute;top:0;bottom:0;width:12%;z-index:5;pointer-events:none}.mmp-cs__film-viewport:before{left:0;background:linear-gradient(90deg,#050507,transparent)}.mmp-cs__film-viewport:after{right:0;background:linear-gradient(-90deg,#050507,transparent)}
.mmp-cs__film-track{display:flex;gap:18px;width:max-content;animation:mmpFilmRTL 28s linear infinite;will-change:transform}
.mmp-cs--film[data-direction="ltr"] .mmp-cs__film-track{animation-name:mmpFilmLTR}
.mmp-cs--film[data-speed="slow"] .mmp-cs__film-track{animation-duration:42s}.mmp-cs--film[data-speed="fast"] .mmp-cs__film-track{animation-duration:18s}
.mmp-cs--film[data-pause="yes"] .mmp-cs__film-viewport:hover .mmp-cs__film-track{animation-play-state:paused}
.mmp-cs__film-card{width:clamp(260px,30vw,430px);aspect-ratio:16/11;flex:0 0 auto;transition:transform .45s cubic-bezier(.18,.85,.2,1);position:relative}
.mmp-cs__film-link{display:block;width:100%;height:100%;position:relative}
.mmp-cs__film-image{width:100%;height:100%;overflow:hidden;border:1px solid rgba(255,255,255,.17);border-radius:20px;background:#0b0b0e;box-shadow:0 20px 60px rgba(0,0,0,.36);transition:.45s ease}
.mmp-cs__film-image img{width:100%;height:100%;display:block;object-fit:cover}
.mmp-cs__film-info{position:absolute;left:13px;right:13px;bottom:13px;padding:14px 15px;border-radius:14px;background:rgba(7,7,10,.72);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);opacity:0;transform:translateY(10px);transition:.35s ease}
.mmp-cs__film-info span{display:block;color:rgba(255,255,255,.52);font-size:8px;letter-spacing:.12em;text-transform:uppercase}.mmp-cs__film-info strong{display:block;font-size:17px;margin-top:4px}.mmp-cs__film-info em{display:block;color:var(--mmp-red);font-style:normal;font-size:9px;font-weight:800;margin-top:7px}
.mmp-cs__film-card:hover{transform:scale(1.09);z-index:10}.mmp-cs__film-card:hover .mmp-cs__film-image{border-color:rgba(255,59,59,.52);box-shadow:0 28px 80px rgba(0,0,0,.48),0 0 48px rgba(255,59,59,.14)}.mmp-cs__film-card:hover .mmp-cs__film-info{opacity:1;transform:none}
@keyframes mmpFilmRTL{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes mmpFilmLTR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
/* CONSTELLATION — each project is a "system": first slide = sun, rest of the deck = orbiting planets */
.mmp-cs__constellation{position:relative;min-height:640px;border-radius:28px;overflow:hidden;background:radial-gradient(120% 90% at 50% 15%,rgba(255,59,59,.06),transparent 60%),radial-gradient(70% 55% at 82% 82%,rgba(255,255,255,.04),transparent 70%),#050507;isolation:isolate}
.mmp-cs__constellation:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.85;background-image:radial-gradient(1.6px 1.6px at 20% 30%,rgba(255,255,255,.55),transparent),radial-gradient(1.4px 1.4px at 70% 16%,rgba(255,255,255,.35),transparent),radial-gradient(1.2px 1.2px at 46% 72%,rgba(255,255,255,.42),transparent),radial-gradient(1.2px 1.2px at 87% 60%,rgba(255,255,255,.3),transparent),radial-gradient(1.6px 1.6px at 11% 86%,rgba(255,255,255,.4),transparent),radial-gradient(1.2px 1.2px at 61% 92%,rgba(255,255,255,.28),transparent),radial-gradient(1.4px 1.4px at 35% 8%,rgba(255,255,255,.3),transparent),radial-gradient(1.2px 1.2px at 93% 20%,rgba(255,255,255,.25),transparent)}
.mmp-cs__constellation[data-orbit="slow"]{--mmp-orbit-mult:1.65}
.mmp-cs__constellation[data-orbit="fast"]{--mmp-orbit-mult:.6}
.mmp-cs__system{position:absolute;left:var(--mmp-sys-left,50%);top:var(--mmp-sys-top,50%);translate:-50% -50%;scale:var(--mmp-sys-scale,1);width:clamp(150px,20vw,260px);height:clamp(150px,20vw,260px);transition:filter .5s ease,opacity .5s ease;z-index:2}
.mmp-cs__constellation:hover .mmp-cs__system{filter:saturate(.5) brightness(.55);opacity:.45}
.mmp-cs__system:hover,.mmp-cs__system:focus-within{filter:none!important;opacity:1!important;z-index:30}
.mmp-cs__sun{position:absolute;left:50%;top:50%;translate:-50% -50%;width:50%;aspect-ratio:16/9;border-radius:12px;display:block;z-index:6}
.mmp-cs__sun-image{display:block;width:100%;height:100%;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.22);background:#0b0b0e;box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 50px rgba(255,59,59,.12);transition:transform .5s cubic-bezier(.18,.85,.2,1),box-shadow .5s ease}
.mmp-cs__sun-image img{width:100%;height:100%;object-fit:cover;display:block}
.mmp-cs__sun:hover .mmp-cs__sun-image,.mmp-cs__sun:focus .mmp-cs__sun-image{transform:scale(1.14);box-shadow:0 25px 70px rgba(0,0,0,.55),0 0 60px rgba(255,59,59,.22)}
.mmp-cs__sun-info{position:absolute;left:50%;bottom:-14px;translate:-50% 100%;width:max-content;max-width:180px;text-align:center;padding:10px 13px;border-radius:13px;background:rgba(7,7,10,.85);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;pointer-events:none;transition:.35s ease;z-index:9}
.mmp-cs__sun-info span{display:block;color:rgba(255,255,255,.5);font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.mmp-cs__sun-info strong{display:block;color:#fff;font-size:13px;line-height:1.15;margin-top:3px}
.mmp-cs__sun-info em{display:block;font-style:normal;color:var(--mmp-red);font-size:8px;font-weight:800;margin-top:6px}
.mmp-cs__sun:hover .mmp-cs__sun-info,.mmp-cs__sun:focus .mmp-cs__sun-info{opacity:1}
.mmp-cs__orbits{position:absolute;inset:0}
.mmp-cs__orbit-ring{position:absolute;left:50%;top:50%;translate:-50% -50%;border:1px dashed rgba(255,255,255,.1);border-radius:50%;pointer-events:none}
.mmp-cs__orbit-ring[data-planet="0"]{width:88%;height:88%}.mmp-cs__orbit-ring[data-planet="1"]{width:114%;height:114%}.mmp-cs__orbit-ring[data-planet="2"]{width:140%;height:140%}.mmp-cs__orbit-ring[data-planet="3"]{width:166%;height:166%}.mmp-cs__orbit-ring[data-planet="4"]{width:192%;height:192%}
.mmp-cs__orbit{position:absolute;inset:0;pointer-events:none;animation:mmpOrbitSpin var(--dur,20s) linear infinite;will-change:transform}
.mmp-cs__orbit[data-planet="0"]{--dur:calc(15s * var(--mmp-orbit-mult,1));--radius:clamp(66px,8.8vw,114px);animation-delay:-2s}
.mmp-cs__orbit[data-planet="1"]{--dur:calc(20s * var(--mmp-orbit-mult,1));--radius:clamp(86px,11.4vw,148px);animation-delay:-9s;animation-direction:reverse}
.mmp-cs__orbit[data-planet="2"]{--dur:calc(25s * var(--mmp-orbit-mult,1));--radius:clamp(105px,14vw,182px);animation-delay:-4s}
.mmp-cs__orbit[data-planet="3"]{--dur:calc(30s * var(--mmp-orbit-mult,1));--radius:clamp(125px,16.6vw,216px);animation-delay:-15s;animation-direction:reverse}
.mmp-cs__orbit[data-planet="4"]{--dur:calc(35s * var(--mmp-orbit-mult,1));--radius:clamp(144px,19.2vw,250px);animation-delay:-6s}
.mmp-cs__planet{position:absolute;left:50%;top:50%;translate:calc(-50% + var(--radius,80px)) -50%;width:clamp(56px,7vw,88px);aspect-ratio:16/9;display:block;border-radius:7px;pointer-events:auto;animation:mmpOrbitSpin var(--dur,20s) linear infinite reverse}
.mmp-cs__orbit[data-planet="1"] .mmp-cs__planet,.mmp-cs__orbit[data-planet="3"] .mmp-cs__planet{animation-direction:normal}
.mmp-cs__planet-image{display:block;width:100%;height:100%;border-radius:7px;overflow:hidden;border:1px solid rgba(255,255,255,.24);background:#0b0b0e;box-shadow:0 10px 26px rgba(0,0,0,.45);transition:transform .4s cubic-bezier(.18,.85,.2,1),box-shadow .4s ease}
.mmp-cs__planet-image img{width:100%;height:100%;object-fit:cover;display:block}
.mmp-cs__planet:hover .mmp-cs__planet-image,.mmp-cs__planet:focus .mmp-cs__planet-image{transform:scale(1.45);box-shadow:0 16px 40px rgba(0,0,0,.55),0 0 30px rgba(255,59,59,.22);z-index:12}
.mmp-cs__system:hover .mmp-cs__orbit,.mmp-cs__system:hover .mmp-cs__planet,.mmp-cs__system:focus-within .mmp-cs__orbit,.mmp-cs__system:focus-within .mmp-cs__planet{animation-play-state:paused}
@keyframes mmpOrbitSpin{from{rotate:0deg}to{rotate:360deg}}
@media(max-width:900px) and (min-width:601px){.mmp-cs__constellation{min-height:520px}.mmp-cs__system{width:clamp(120px,24vw,200px);height:clamp(120px,24vw,200px)}}
@media(max-width:600px){.mmp-cs__constellation{min-height:0;padding:20px 0;background:none;border-radius:0}.mmp-cs__constellation:before{display:none}.mmp-cs__system{position:static!important;width:100%;height:auto;translate:none;scale:1;display:flex;align-items:center;gap:14px;padding:12px 6px;border-bottom:1px solid rgba(255,255,255,.08)}.mmp-cs__constellation:hover .mmp-cs__system{filter:none;opacity:1}.mmp-cs__sun{position:static;translate:none;width:104px;aspect-ratio:16/9;flex:0 0 auto}.mmp-cs__sun-info{position:static;translate:none;opacity:1;text-align:left;background:none;border:0;backdrop-filter:none;padding:0}.mmp-cs__orbits,.mmp-cs__orbit-ring{display:none}}
@media(max-width:900px) and (min-width:601px){.mmp-cs__stack{min-height:390px}.mmp-cs__cells{grid-template-columns:repeat(6,1fr);grid-auto-rows:90px}.mmp-cs__cell:nth-child(n){grid-column:auto;grid-row:auto}.mmp-cs__cell:nth-child(3n+1){grid-column:span 2;grid-row:span 2}.mmp-cs__cell:nth-child(3n+2){grid-column:span 3;grid-row:span 2}.mmp-cs__cell:nth-child(3n){grid-column:span 1;grid-row:span 2}}
@media(max-width:600px){
    .mmp-cs__heading{font-size:clamp(34px,11vw,48px)!important}
    .mmp-cs__stack{min-height:310px;padding-top:8px}
    .mmp-cs__stack-card{width:90%;border-radius:16px}
    .mmp-cs__stack-card:nth-child(2){transform:translate(10px,14px) rotate(1.2deg) scale(.96)}
    .mmp-cs__stack-card:nth-child(3){transform:translate(-10px,27px) rotate(-1.6deg) scale(.92)}
    .mmp-cs__stack-card:nth-child(n+4){transform:translate(0,38px) scale(.88)}
    .mmp-cs__stack:hover .mmp-cs__stack-card{transform:translateY(45px) scale(.86)!important}
    .mmp-cs__stack .mmp-cs__stack-card:hover{transform:translateY(-5px) scale(1.02)!important}
    .mmp-cs__overlay{opacity:1;transform:none;left:8px;right:8px;bottom:8px;padding:12px}.mmp-cs__overlay h3{font-size:16px}.mmp-cs__meta{font-size:7px}.mmp-cs__cta{font-size:9px}
    .mmp-cs__cells{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:150px;gap:9px}
    .mmp-cs__cell:nth-child(n){grid-column:auto;grid-row:auto}.mmp-cs__cell:nth-child(3n+1){grid-row:span 2}.mmp-cs__cell:nth-child(4n){grid-column:span 2}
    .mmp-cs__cells:hover .mmp-cs__cell{opacity:1;filter:none}.mmp-cs__cell:hover{transform:none!important}
    .mmp-cs__cell-info{opacity:1;transform:none;padding:9px}.mmp-cs__cell-info strong{font-size:12px}.mmp-cs__cell-info em{font-size:8px}
    .mmp-cs__film-card{width:78vw}.mmp-cs__film-info{opacity:1;transform:none;padding:11px}.mmp-cs__film-info strong{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.mmp-cs__film-track{animation:none!important}.mmp-cs__orbit,.mmp-cs__planet{animation:none!important}.mmp-cs__stack-card,.mmp-cs__cell,.mmp-cs__film-card,.mmp-cs__overlay,.mmp-cs__cell-info,.mmp-cs__film-info,.mmp-cs__sun-image,.mmp-cs__planet-image,.mmp-cs__system{transition:none!important}}
