/* Selected work detail pages */
.case-page { background:#fff; }
.case-page .hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); align-items:center; }
.case-page .media-panel { display:grid; gap:.65rem; }
.case-page .media-caption { display:flex; flex-wrap:wrap; gap:.5rem; }
.case-page .media-caption span { border:1px solid rgba(255,255,255,.16); border-radius:99px; background:rgba(255,255,255,.07); color:#ded8ee; }
.case-page .metric-strip { position:relative; z-index:2; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); background:#fff; border:1px solid var(--hairline); }
.case-page .story-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.case-page .story-card { display:grid; align-content:start; border:1px solid var(--hairline); }
.case-page .story-card .label { width:fit-content; border-radius:99px; background:var(--lavender); color:var(--electric); font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.case-page .detail-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); align-items:center; }
.case-page .detail-card { padding:clamp(1.25rem,3vw,2rem); background:#fff; border:1px solid var(--hairline); }
.case-page .check-list { display:grid; list-style:none; }
.case-page .check-list li { position:relative; padding-left:1.55rem; color:var(--text-light); }
.case-page .check-list li::before { content:"✓"; position:absolute; left:0; color:var(--electric); font-weight:800; }
.case-page .page-hero { margin:.55rem; padding:8.5rem 0 5.3rem; border-radius:26px; background:radial-gradient(circle at 78% 18%,rgba(121,85,230,.45),transparent 36%),linear-gradient(135deg,#150e37,#261653 66%,#121128); }
.case-page .page-hero::before { opacity:.55; }
.case-page .hero-grid { gap:clamp(1.5rem,3vw,3rem); }
.case-page .hero-copy h1 { max-width:18ch; font-size:clamp(2.25rem,4vw,4rem); line-height:1.08; }
.case-page .hero-lede { margin-top:1.1rem; max-width:52ch; font-size:clamp(.96rem,1.2vw,1.08rem); line-height:1.65; }
.case-page .hero-actions { margin-top:1.5rem; }
.case-page .hero-actions .magnetic-btn { font-size:.81rem; }
.case-page .client-strip { margin-top:1.6rem; border-radius:12px; }
.case-page .media-frame { position:relative; border-radius:18px; }
.case-page .media-frame img { aspect-ratio:5/4; object-fit:cover; }
.case-page .media-frame::after { content:""; position:absolute; inset:35% 0 0; pointer-events:none; background:linear-gradient(transparent,rgba(11,8,27,.72)); }
.case-page .media-route { position:absolute; z-index:1; left:1rem; right:1rem; bottom:1rem; display:flex; align-items:center; justify-content:center; gap:.4rem; padding:.65rem; border:1px solid rgba(255,255,255,.25); border-radius:11px; background:rgba(20,14,44,.65); backdrop-filter:blur(14px); color:#fff; font:700 .63rem/1.3 'Sora',sans-serif; text-align:center; }
.case-page .media-route span { min-width:0; flex:1; }
.case-page .media-route i { color:#bb9eff; font-size:.55rem; }
.case-page .media-caption span { padding:.42rem .65rem; font-size:.68rem; }
.case-page .metric-strip { gap:0; margin-top:-2rem; padding:.65rem; border-radius:17px; box-shadow:0 22px 48px -38px rgba(40,27,96,.45); }
.case-page .metric { display:flex; align-items:center; gap:.65rem; text-align:left; padding:.55rem .85rem; }
.case-page .metric+ .metric { border-left:1px solid var(--hairline); }
.case-page .metric strong { flex:none; font-size:1.25rem; }
.case-page .metric span { margin:0; font-size:.76rem; font-weight:700; line-height:1.35; }
.case-page .section { padding:clamp(3rem,5vw,5rem) 0; }
.case-page .section-header { max-width:780px; margin-bottom:1.55rem; }
.case-page .section-header h2 { max-width:18ch; font-size:clamp(1.8rem,3vw,2.85rem); line-height:1.14; }
.case-page .section-header p { max-width:63ch; font-size:.93rem; line-height:1.65; }
.case-page .story-grid { gap:.75rem; }
.case-page .story-card { gap:.45rem; padding:1.3rem; border-radius:16px; box-shadow:none; background:#fcfbfe; }
.case-page .story-card:nth-child(2) { border-color:#d4c4f7; background:#f7f3ff; }
.case-page .story-card h3 { margin:.35rem 0 0; font-size:1.05rem; line-height:1.3; }
.case-page .story-card p { margin:0; font-size:.82rem; line-height:1.55; }
.case-page .story-card .label { padding:.33rem .55rem; font-size:.59rem; }
.case-page .detail-band { margin:0 .55rem; border-radius:25px; background:#f4f1fa; }
.case-page .detail-card { border-radius:17px; box-shadow:0 16px 38px -32px rgba(32,20,84,.5); }
.case-page .detail-card h3 { font-size:1.08rem; }
.case-page .check-list { padding:0; gap:.7rem; }
.case-page .check-list li { font-size:.82rem; line-height:1.5; }
.case-page .cta-section { padding:3rem 0 4.5rem; }
.case-page .cta-band { border-radius:20px; box-shadow:0 20px 46px -30px rgba(41,28,98,.55); }
.case-page .cta-band h2 { font-size:clamp(1.6rem,2.5vw,2.35rem); }
.case-page .cta-band p { margin-bottom:0; font-size:.9rem; line-height:1.6; }
.case-scaleib .hero-copy h1 .figure { color:#cdb7ff; }
.case-scaleib .media-panel { min-width:0; }
.case-scaleib .case-system-screen { display:grid; place-items:center; min-height:410px; padding:1.5rem; border:1px solid rgba(255,255,255,.18); border-radius:18px; background:radial-gradient(circle at 78% 15%,rgba(171,143,246,.32),transparent 38%),#211b42; }
.case-scaleib .case-system-screen .scaleib-site-phone { width:min(58%,240px); }
@media(max-width:1024px){
  .case-page .page-hero { padding:7rem 0 4rem; }
  .case-page .media-panel { max-width:none; }
}
@media(max-width:768px){
  .case-page .hero-grid,.case-page .detail-grid { grid-template-columns:1fr; }
  .case-page .page-hero { margin:.35rem; padding:6rem 0 2.35rem; border-radius:20px; }
  .case-page .hero-grid { gap:1.25rem; }
  .case-page .hero-copy h1 { max-width:none; font-size:clamp(2rem,7vw,2.7rem); }
  .case-page .hero-lede { margin-top:.7rem; font-size:.88rem; line-height:1.55; }
  .case-page .hero-actions { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.1rem; }
  .case-page .hero-actions .magnetic-btn { width:100%; min-height:42px; padding:.65rem .85rem; font-size:.72rem; justify-content:center; }
  .case-page .client-strip { margin-top:1rem; padding:.45rem .75rem .45rem .45rem; }
  .case-page .client-strip img { width:32px; height:32px; }
  .case-page .client-strip span { font-size:.72rem; }
  .case-page .media-frame img { aspect-ratio:16/9; }
  .case-page .media-route { left:.6rem; right:.6rem; bottom:.6rem; font-size:.54rem; }
  .case-page .media-caption { display:none; }
  .case-page .metric-strip { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; margin-top:-.9rem; padding:.4rem; border-radius:12px; }
  .case-page .metric { display:block; padding:.42rem .35rem; text-align:center; }
  .case-page .metric + .metric { border-top:0; border-left:1px solid var(--hairline); padding-top:.42rem; }
  .case-page .metric strong { font-size:1.05rem; }
  .case-page .metric span { font-size:.6rem; line-height:1.3; }
  .case-page .section { padding:2.6rem 0; }
  .case-page .section-header { margin-bottom:1rem; }
  .case-page .section-header h2 { max-width:none; font-size:clamp(1.7rem,6vw,2.25rem); }
  .case-page .section-header p { font-size:.82rem; }
  .case-page .story-grid { grid-template-columns:1fr; gap:.6rem; }
  .case-page .story-card { padding:1rem; }
  .case-page .story-card h3 { font-size:.95rem; }
  .case-page .story-card p { font-size:.76rem; }
  .case-page .detail-band { margin:0 .35rem; border-radius:17px; }
  .case-page .detail-grid { gap:1rem; }
  .case-page .detail-card { padding:1.15rem; }
  .case-page .check-list li { font-size:.77rem; }
  .case-page .cta-section { padding:2.3rem 0 3rem; }
  .case-page .cta-band { gap:1rem; padding:1.25rem; border-radius:15px; }
  .case-page .cta-band h2 { font-size:1.55rem; }
  .case-page .cta-band p { font-size:.78rem; }
  .case-scaleib .case-system-screen { min-height:380px; padding:.8rem; }
  .case-scaleib .case-system-screen .scaleib-site-phone { width:min(55%,190px); }
}
@media(max-width:400px){ .case-page .media-route { font-size:.48rem; gap:.2rem; } }
