/* === v3.1 Phase 2 Immersive Portfolio & Case Study Engine === */
.phase2-theater-section{border-top:1px solid rgba(245,199,95,.16)}
.portfolio-theater{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;align-items:stretch}.theater-stage{min-height:480px;position:relative;overflow:hidden;padding:0}.stage-bg{position:absolute;inset:0;background:radial-gradient(circle at 64% 22%,rgba(245,199,95,.22),transparent 28%),linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02));background-size:cover;background-position:center;filter:saturate(1.1);transition:.45s ease}.stage-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,4,6,.94),rgba(3,4,6,.56),rgba(3,4,6,.25)),linear-gradient(0deg,rgba(3,4,6,.9),transparent 55%)}.stage-content{position:absolute;z-index:2;left:28px;right:28px;bottom:28px}.stage-content span{color:var(--saf-gold);font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.stage-content h3{font-size:clamp(28px,3vw,54px);line-height:.95;max-width:720px;margin:9px 0}.stage-content p{color:#d4d8e0;max-width:650px}.stage-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.theater-rail{display:grid;gap:10px;max-height:480px;overflow:auto;padding-right:6px}.theater-thumb{display:grid;grid-template-columns:112px 1fr;gap:12px;align-items:center;width:100%;text-align:left;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.045);color:#fff;padding:9px;cursor:pointer;transition:.22s ease}.theater-thumb:hover,.theater-thumb.is-active{border-color:rgba(245,199,95,.7);background:rgba(245,199,95,.08);transform:translateX(-2px)}.theater-thumb img{width:112px;height:66px;object-fit:cover;border-radius:10px;background:#111}.theater-thumb b{display:block;font-size:13px;line-height:1.2}.theater-thumb em{display:block;font-style:normal;color:var(--saf-muted);font-size:11px;margin-top:4px}.phase2-timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;position:relative}.timeline-node{padding:20px;min-height:230px;position:relative;overflow:hidden}.timeline-node span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(245,199,95,.45);color:var(--saf-gold);font-weight:900;margin-bottom:18px}.timeline-node h3{font-size:18px;line-height:1.1}.timeline-node p{color:var(--saf-muted);font-size:13px}.case-experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.case-experience-card{padding:24px;position:relative;overflow:hidden}.case-experience-card:before{content:"";position:absolute;right:-70px;top:-70px;width:180px;height:180px;border-radius:50%;background:rgba(245,199,95,.08)}.case-metric{display:inline-flex;margin-bottom:14px;padding:7px 10px;border:1px solid rgba(245,199,95,.4);border-radius:999px;color:var(--saf-gold);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.case-experience-card h3{font-size:24px}.case-columns{display:grid;gap:12px;margin:18px 0}.case-columns div{padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(0,0,0,.18)}.case-columns b{display:block;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.case-columns p{color:var(--saf-muted);font-size:13px;margin:7px 0 0}.phase2-roi{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;padding:32px;position:relative;overflow:hidden}.phase2-roi:before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 82% 20%,rgba(65,217,255,.16),transparent 24%),radial-gradient(circle at 12% 88%,rgba(245,199,95,.16),transparent 28%);pointer-events:none}.phase2-roi>div{position:relative;z-index:1}.roi-console{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.roi-console label{display:grid;gap:7px;color:var(--saf-gold);font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.roi-console input{background:rgba(0,0,0,.35);border:1px solid rgba(245,199,95,.22);border-radius:12px;color:#fff;padding:12px}.roi-console .strategy-result{grid-column:1/-1}.single-case-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:24px}.case-facts{position:sticky;top:100px;padding:22px}.case-facts strong{display:block;color:var(--saf-gold);font-size:30px;font-family:var(--saf-font-display)}@media(max-width:1080px){.portfolio-theater,.phase2-roi,.single-case-layout{grid-template-columns:1fr}.phase2-timeline{grid-template-columns:repeat(2,1fr)}.case-experience-grid{grid-template-columns:1fr}.roi-console{grid-template-columns:1fr 1fr}.theater-rail{max-height:none}}@media(max-width:640px){.theater-thumb{grid-template-columns:86px 1fr}.theater-thumb img{width:86px;height:54px}.phase2-timeline,.roi-console{grid-template-columns:1fr}.stage-content{left:18px;right:18px;bottom:20px}}
