.lazo-cases { --case-wine: #7b2935; --case-ink: #0b0b0b; --case-paper: #f4f2ef; }
.case-hero { min-height: 100svh; padding: calc(80px + clamp(36px, 6vw, 104px)) 0 clamp(56px, 8vw, 108px); background: radial-gradient(ellipse at 95% 10%, #e9d6d8, transparent 60%), var(--case-paper); }
.case-back { display: inline-block; margin-bottom: clamp(28px, 4vw, 56px); color: var(--case-wine); font-size: .85rem; font-weight: 650; }
.case-hero-grid { display: grid; grid-template-columns: minmax(0, .83fr) minmax(0, 1.17fr); align-items: center; gap: clamp(24px, 5vw, 80px); }
.case-kicker { color: var(--case-wine); text-transform: uppercase; letter-spacing: .15em; font-size: .72rem; font-weight: 750; margin: 0 0 1rem; }
.lazo-cases h1 { font-size: clamp(3.6rem, 8vw, 8rem); line-height: .94; letter-spacing: -.075em; margin: 0 0 1.45rem; }
.lazo-cases h2 { font-size: clamp(2.4rem, 5.6vw, 5.5rem); line-height: 1; letter-spacing: -.065em; max-width: 17ch; margin: 0 0 1.7rem; }
.case-intro { font-size: clamp(1.05rem, 1.55vw, 1.42rem); line-height: 1.65; max-width: 66ch; margin: 0; }
.case-logo { display: block; width: 142px; height: auto; background: #fff; margin-bottom: 24px; border-radius: 12px; }
.case-hero-photo { position: relative; overflow: hidden; border-radius: 24px; background: #32161c; box-shadow: 0 28px 75px #35171c24; }
.case-hero-photo img, .case-gallery-grid img, .case-card img { display: block; width: 100%; height: auto; }

.case-hero-photo img { transform: translateY(clamp(-6px, var(--parallax, 0px), 6px)) scale(1.035); }
.case-photo-tag { position: absolute; left: 18px; bottom: 18px; color: #fff; background: #211419b8; border: 1px solid #ffffff59; box-shadow: inset 0 1px 0 #ffffff46; backdrop-filter: blur(16px) saturate(145%); padding: .6rem 1rem; border-radius: 99px; font-size: .75rem; font-weight: 650; }
.case-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 920px; gap: clamp(12px, 2vw, 24px); margin: clamp(32px, 5vw, 72px) 0 0; }
.case-metrics > div { display: flex; flex-direction: column; padding: clamp(18px, 3vw, 34px); border: 1px solid #fff; border-radius: 20px; background: linear-gradient(145deg, #ffffffba, #ffffff4d); backdrop-filter: blur(16px) saturate(135%); box-shadow: 0 10px 36px #35171c0d, inset 0 1px 0 #fff; }
.case-metrics dt { font-weight: 700; margin-top: .65rem; }
.case-metrics dd { margin: 0; display: contents; }
.case-metrics strong { order: -1; color: var(--case-wine); font-size: clamp(2.9rem, 5.5vw, 5.5rem); line-height: .9; letter-spacing: -.06em; }
.case-metrics span { margin-top: .45rem; font-size: .9rem; color: #514a4a; }
.case-story, .case-gallery { padding: clamp(72px, 10vw, 155px) 0; }
.case-story { background: #fff; }
.case-tracks, .case-gallery-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(20px, 4vw, 62px); margin-top: clamp(30px, 5vw, 68px); }
.case-tracks article { border-top: 2px solid var(--case-wine); padding-top: 18px; }
.case-tracks h3 { margin: 0 0 .65rem; font-size: clamp(1.3rem, 2vw, 2rem); letter-spacing: -.03em; }
.case-tracks p { margin: 0; max-width: 52ch; line-height: 1.7; }
.case-gallery { background: var(--case-ink); color: #fff; }
.case-gallery .case-kicker { color: #e4a9b1; }
.case-gallery-grid figure { margin: 0; }
.case-gallery-grid img { border-radius: 14px; }
.case-gallery-grid figcaption { margin-top: .9rem; color: #e5dfe0; font-size: .9rem; }
.case-contact { display: inline-block; margin-top: 45px; padding: .9rem 1.2rem; background: #fff; color: var(--case-wine); border-radius: 99px; font-weight: 750; }
.case-card { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 28px; align-items: center; background: #ffffff96; border: 1px solid #fff; border-radius: 22px; overflow: hidden; box-shadow: 0 20px 65px #35171c16; max-width: 1100px; margin-top: 40px; }
.case-card > div { padding: 22px; }
.case-card h2 { font-size: clamp(2rem, 4vw, 3.6rem); margin-bottom: .8rem; }
.case-card p { line-height: 1.5; }
.case-card span { display: inline-block; color: var(--case-wine); font-weight: 750; margin-top: .65rem; }
@media (max-width: 820px) {
  .case-hero-grid, .case-tracks, .case-gallery-grid, .case-card { grid-template-columns: 1fr; }
  .case-card { gap: 0; }
  .case-hero-photo img { transform: none; }
}
@media (max-width: 560px) {
  .case-metrics { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .case-hero-photo img { transform: none; }
}

.lazo-cases a { text-decoration: none; }
.case-card { color: #0b0b0b; }
.case-card:focus-visible, .case-back:focus-visible, .case-contact:focus-visible { outline: 3px solid #b25767; outline-offset: 5px; }
