/* Fase 2: separación de casos de éxito y plantilla indexable */
.portfolio-section-heading p{margin-top:8px;max-width:48ch;color:rgba(255,255,255,.56);font-size:14px;line-height:1.55}
.portfolio-collections-heading{margin-top:clamp(64px,9vw,112px)}
.project-card--case{display:block}

.case-study-page{background:var(--dark);color:#fff}
.case-intro{padding:clamp(132px,18vw,220px) 0 clamp(64px,9vw,112px);background:radial-gradient(circle at 84% 18%,rgba(0,174,239,.14),transparent 32%),#07090c}
.case-back{display:inline-block;margin-bottom:clamp(52px,8vw,92px);color:rgba(255,255,255,.62);font-size:13px;font-weight:700;transition:color .2s ease,transform .25s var(--ease)}
.case-back:hover{color:#fff;transform:translateX(-3px)}
.case-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-bottom:24px;color:var(--cyan-l);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.case-meta span+span:before{content:'·';margin-right:22px;color:rgba(255,255,255,.28)}
.case-intro h1{max-width:1000px;font-size:clamp(44px,7.2vw,96px);font-weight:900;line-height:.94;letter-spacing:-.04em;text-wrap:balance}
.case-cover{width:100%;max-height:88dvh;overflow:hidden;background:var(--dark2)}
.case-cover img{width:100%;height:min(78vw,88dvh);object-fit:cover}
.case-narrative{padding:clamp(88px,12vw,160px) 0;background:var(--dark2)}
.case-narrative-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:clamp(56px,9vw,128px)}
.case-narrative article{max-width:68ch}
.case-narrative h2,.case-services h2,.case-execution h2,.case-results h2,.case-testimonials h2{margin-bottom:24px;font-size:clamp(26px,3.5vw,46px);line-height:1;letter-spacing:-.025em;text-wrap:balance}
.case-narrative p{color:rgba(255,255,255,.74);font-size:clamp(17px,1.7vw,21px);line-height:1.72;text-wrap:pretty}
.case-services{padding:56px 0;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09)}
.case-services-row{display:flex;align-items:flex-start;justify-content:space-between;gap:48px}
.case-services h2{margin:5px 0 0;font-size:24px}
.case-services ul{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;max-width:720px}
.case-services li{padding:10px 15px;border-radius:999px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.82);font-size:13px;font-weight:700}
.case-execution{padding:clamp(88px,11vw,144px) 0}
.case-execution>.wrap:first-child{margin-bottom:40px}
.case-media-grid{columns:2 400px;column-gap:18px}
.case-media-item{display:inline-block;width:100%;margin:0 0 18px;overflow:hidden;break-inside:avoid;background:var(--dark2);vertical-align:top}
.case-media-item img,.case-media-item video{display:block;width:100%;height:auto}
.case-media-item video{max-height:82dvh;object-fit:contain;background:#000}
.case-media-video.is-portrait video{width:min(100%,560px);margin:0 auto;aspect-ratio:9/16}
.case-document,.case-youtube{position:relative;color:#fff}
.case-document span,.case-youtube span{position:absolute;right:12px;bottom:12px;padding:9px 12px;border-radius:8px;background:rgba(7,9,12,.86);font-size:12px;font-weight:800}
.case-document img,.case-youtube img{transition:transform .5s var(--ease)}
.case-document:hover img,.case-youtube:hover img{transform:scale(1.02)}
.case-results{padding:clamp(80px,11vw,140px) 0;background:#031522}
.case-results ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:rgba(255,255,255,.12)}
.case-results li{min-height:170px;padding:32px;background:#031522;display:flex;align-items:flex-end;color:#fff;font-size:clamp(20px,2.4vw,32px);font-weight:800;line-height:1.15}
.case-testimonials{padding:clamp(88px,12vw,150px) 0;background:var(--dark2)}
.case-testimonials blockquote{max-width:900px}
.case-testimonials blockquote+blockquote{margin-top:64px}
.case-testimonials blockquote p{font-size:clamp(28px,4vw,54px);font-weight:700;line-height:1.12;letter-spacing:-.03em;text-wrap:balance}
.case-testimonials blockquote footer{margin-top:26px;color:rgba(255,255,255,.58);font-size:14px}
.case-cta{padding:clamp(72px,10vw,120px) 0;background:var(--cyan);color:#04101a}
.case-cta>.wrap{display:flex;align-items:flex-end;justify-content:space-between;gap:56px}
.case-cta h2{max-width:700px;font-size:clamp(34px,5vw,68px);line-height:.98;letter-spacing:-.035em;text-wrap:balance}
.case-cta p{max-width:62ch;margin-top:18px;font-size:17px;line-height:1.6;color:rgba(4,16,26,.76)}
.case-cta-actions{display:flex;flex-wrap:wrap;gap:12px;flex:0 0 auto}
.case-cta .btn-primary{background:#07101a;color:#fff}
.case-cta .btn-primary:hover{background:#111f2b}
.case-cta .btn-secondary{border-color:rgba(4,16,26,.28);color:#04101a}
.case-discovery{padding:64px 0;background:#05070a;border-top:1px solid rgba(255,255,255,.08)}
.case-discovery>.wrap{display:flex;justify-content:space-between;gap:56px}
.case-discovery>div>div{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center}
.case-discovery span{width:100%;margin-bottom:5px;color:rgba(255,255,255,.42);font-size:12px;font-weight:700}
.case-discovery a{color:rgba(255,255,255,.82);font-size:14px;font-weight:700;transition:color .2s ease}
.case-discovery a:hover{color:var(--cyan-l)}
.case-next{margin-left:auto;text-align:right}
.case-next span{display:block}
.case-next strong{font-size:clamp(22px,3vw,36px)}

@media(max-width:768px){
  .portfolio-section-heading p{font-size:13px}
  .case-intro{padding:104px 0 60px}
  .case-back{margin-bottom:48px}
  .case-meta{gap:8px 12px;letter-spacing:.05em}
  .case-meta span+span:before{margin-right:12px}
  .case-intro h1{font-size:clamp(40px,12vw,60px)}
  .case-cover img{height:72dvh;min-height:420px}
  .case-services-row,.case-cta>.wrap,.case-discovery>.wrap{align-items:flex-start;flex-direction:column}
  .case-services ul{justify-content:flex-start}
  .case-media-grid{columns:1;column-gap:0}
  .case-media-item{margin-bottom:12px}
  .case-results ul{grid-template-columns:1fr}
  .case-results li{min-height:128px}
  .case-cta-actions{width:100%}
  .case-cta-actions a{flex:1 1 180px;text-align:center}
  .case-next{margin-left:0;text-align:left}
}

@media(prefers-reduced-motion:reduce){.case-back,.case-document img,.case-youtube img{transition:none}}
