.cases-header { position:relative; background:#17130f; }
.cases-hero { position:relative; overflow:hidden; padding:92px 0 80px; color:#fff5df; background:radial-gradient(ellipse at 83% 4%,rgba(196,145,58,.3),transparent 36%),linear-gradient(120deg,#17120e,#362514); }
.cases-hero::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(118deg,transparent 35%,rgba(255,230,177,.06) 52%,transparent 68%); background-size:220% 100%; animation:caseSheen 13s ease-in-out infinite; }
.cases-hero .container { position:relative; z-index:1; }.cases-hero .eyebrow { color:#edc776; }.cases-hero h1,.case-gallery h2,.cases-cta h2 { margin:0; font-family:var(--serif); font-weight:600; letter-spacing:.05em; }.cases-hero h1 { font-size:clamp(38px,5vw,62px); }.cases-hero p:not(.eyebrow) { margin:12px 0 0; color:#d8ccba; letter-spacing:.05em; }
.case-gallery { padding:86px 0 102px; background:linear-gradient(135deg,#f8f4eb,#e8dfd0); }.case-gallery__heading { margin-bottom:34px; }.case-gallery__heading h2 { font-size:clamp(27px,3vw,39px); }.case-gallery__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.case-card { position:relative; min-height:320px; overflow:hidden; color:#fff; background:#2b2117; opacity:0; transform:translate3d(0,28px,0); transition:opacity .85s cubic-bezier(.22,1,.36,1) var(--delay),transform .85s cubic-bezier(.22,1,.36,1) var(--delay),box-shadow .5s ease; }.case-card.is-visible { opacity:1; transform:none; }.case-card:hover { transform:translateY(-6px); box-shadow:0 18px 32px rgba(62,42,18,.22); }.case-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .8s cubic-bezier(.22,1,.36,1); }.case-card:hover img { transform:scale(1.055); }.case-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(13,10,7,.04) 28%,rgba(14,10,6,.88) 100%); }.case-card div { position:absolute; z-index:1; inset:auto 26px 24px; }.case-card p { margin:0 0 6px; color:#e4bc67; font-size:10px; font-weight:700; letter-spacing:.18em; }.case-card h3 { margin:0; font-family:var(--serif); font-size:25px; font-weight:600; letter-spacing:.06em; }.case-card span { display:block; margin-top:4px; color:#e8dfd0; font-size:13px; }.case-card--wide { grid-column:span 2; }.case-card--wide img { object-position:center 40%; }.cases-cta { padding:100px 0; text-align:center; background:#201913; color:#fff7e6; }.cases-cta h2 { margin-bottom:28px; font-size:clamp(29px,3.2vw,43px); line-height:1.5; }.cases-cta .eyebrow { color:#e7be6c; }
@keyframes caseSheen { 0%,20% { background-position:130% 0; } 65%,100% { background-position:-130% 0; } }
@media (max-width:760px) { .cases-hero { padding:68px 0 56px; }.case-gallery { padding:62px 0 72px; }.case-gallery__grid { grid-template-columns:1fr; gap:14px; }.case-card,.case-card--wide { min-height:300px; grid-column:auto; }.case-card div { inset:auto 20px 20px; }.case-card h3 { font-size:22px; }.cases-cta { padding:78px 0; } }
