.hub-hero{padding-block:clamp(58px,6.5vw,92px)}
.hub-hero__inner{max-width:1120px}
.hub-hero .display{max-width:1000px;font-size:clamp(40px,4.9vw,64px);line-height:1}
.hub-hero .lede{max-width:820px;margin-top:24px}

.projects-hero{position:relative;min-height:540px;overflow:hidden;padding-block:clamp(62px,6vw,86px);background:#0f1416}
.projects-hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(15,20,22,.99) 0%,rgba(15,20,22,.96) 44%,rgba(15,20,22,.26) 72%,rgba(15,20,22,.08) 100%)}
.projects-hero__media{position:absolute;top:24px;right:max(var(--pad),calc((100vw - var(--max)) * .5));bottom:24px;left:calc(50% + 16px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr 1fr;gap:3px;overflow:hidden;background:#1a2123}
.projects-hero__media img{width:100%;height:100%;min-width:0;min-height:0;object-fit:cover;object-position:center;filter:saturate(.76) contrast(1.03)}
.projects-hero__image--main{grid-row:1/-1;object-position:center 48%!important}
.projects-hero .hub-hero__inner{position:relative;z-index:1;max-width:none}
.projects-hero .breadcrumb,.projects-hero .eyebrow,.projects-hero .display,.projects-hero .lede{max-width:620px}
.projects-hero .display{font-size:clamp(39px,3.6vw,52px);line-height:1.01}
.projects-hero .lede{color:var(--on-dark-body);font-size:18px;line-height:1.68}

@media(max-width:1100px){
  .projects-hero::after{background:linear-gradient(90deg,rgba(15,20,22,.98),rgba(15,20,22,.76))}
  .projects-hero__media{inset:0;opacity:.38}
}

.case-list{padding-block:clamp(28px,3vw,42px) clamp(58px,6vw,84px);background:var(--paper)}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:22px;align-items:stretch}
.case-card{display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden;background:#fff;border:1px solid var(--line);scroll-margin-top:105px;transition:border-color .25s var(--ease),box-shadow .25s var(--ease),transform .25s var(--ease)}
.case-card:hover{border-color:rgba(156,62,32,.42);box-shadow:0 18px 42px rgba(21,26,28,.08);transform:translateY(-2px)}
.case-card__media{position:relative;height:clamp(235px,20vw,290px);overflow:hidden;background:var(--ink)}
.case-card__media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(9,13,14,.4),transparent 48%)}
.case-card__media img{height:100%;object-fit:cover;filter:saturate(.78) contrast(1.02);transition:filter .35s var(--ease),transform .5s var(--ease)}
.case-card:hover .case-card__media img{filter:saturate(.92) contrast(1.02);transform:scale(1.018)}
.case-card__media>span{position:absolute;z-index:1;top:18px;left:18px;padding:8px 10px;color:#fff;background:rgba(156,62,32,.94);font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.case-card__media--gallery{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);grid-template-rows:1fr 1fr;gap:2px}
.case-card__media--gallery .case-gallery__main{grid-row:1/-1}
.case-card__media--gallery img{min-width:0;min-height:0}
.case-card__media--video::after{display:none}
.case-card__media--video video{display:block;width:100%;height:100%;object-fit:cover;background:var(--ink)}
.case-card__media--video>span{pointer-events:none}
.case-card__media--embed::after{display:none}
.case-card__media--embed iframe{display:block;width:100%;height:100%;border:0;background:var(--ink)}
.case-card__media--embed>span{pointer-events:none}
.youtube-consent{position:relative;width:100%;height:100%;overflow:hidden;background:var(--ink)}
.youtube-consent::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,14,15,.92),rgba(10,14,15,.62) 62%,rgba(10,14,15,.38))}
.youtube-consent.is-loaded::after{display:none}
.youtube-consent>img{width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.04);transform:scale(1.02)}
.youtube-consent__content{position:absolute;z-index:1;inset:auto 28px 24px;max-width:470px;color:#fff}
.youtube-consent__content strong{display:block;font-size:20px;line-height:1.15}
.youtube-consent__content p{max-width:430px;margin:9px 0 16px;color:rgba(255,255,255,.82);font-size:12px;line-height:1.5}
.youtube-consent__content .button{min-height:43px;padding:11px 16px}

.case-card__content{display:flex;flex:1;flex-direction:column;min-width:0;padding:clamp(24px,2.6vw,34px)}
.case-card__content header{min-height:190px;padding-bottom:25px}
.case-card__content header small{color:var(--copper-dark);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.case-card__content h2{max-width:560px;margin:13px 0 0;font-size:clamp(23px,2vw,29px);letter-spacing:-.04em;line-height:1.08;overflow-wrap:anywhere}
.case-card__content header p{max-width:590px;margin:16px 0 0;color:var(--text);font-size:14px;line-height:1.62}

.case-points{display:grid;margin:0;padding:0;border-top:1px solid var(--line);list-style:none}
.case-points li{position:relative;min-height:48px;display:flex;align-items:center;padding:11px 12px 11px 28px;color:var(--text);border-bottom:1px solid var(--line);font-size:12.5px;font-weight:700;line-height:1.45}
.case-points li::before{content:"";position:absolute;left:8px;width:8px;height:2px;background:var(--copper-dark)}
.case-card__service{margin:18px 0 0;color:var(--text);font-size:13px;line-height:1.55}
.case-card__service strong{color:var(--copper-dark)}
.case-card__content>.text-link{align-self:flex-start;margin-top:auto;padding-top:24px}

.case-guide{padding-block:clamp(48px,5vw,70px);background:#fff}
.case-guide__inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,7vw,100px);align-items:start}
.case-guide__heading .section-title{max-width:610px;margin-bottom:0;font-size:clamp(30px,3.2vw,44px)}
.case-guide__copy{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-top:18px;border-top:1px solid var(--line)}
.case-guide__copy p{margin:0;color:var(--text);font-size:15.5px;line-height:1.72}

@media(max-width:1050px){
  .case-grid{grid-template-columns:1fr;grid-auto-rows:auto}
  .case-card{height:auto}
  .case-card__media{height:320px}
  .case-card__content header{min-height:0}
  .case-guide__inner{grid-template-columns:1fr;gap:28px}
  .case-guide__copy{max-width:860px}
}

@media(max-width:660px){
  .hub-hero{padding-block:42px 54px}
  .projects-hero{min-height:0;padding-block:42px 54px}
  .hub-hero .display{font-size:clamp(35px,10vw,44px)}
  .projects-hero .lede{font-size:16px;line-height:1.62}
  .projects-hero__media{display:block}
  .projects-hero__media .projects-hero__image:not(.projects-hero__image--main){display:none}
  .case-list{padding-block:20px 48px}
  .case-guide{padding-block:44px}
  .case-guide__copy{grid-template-columns:1fr;gap:14px}
  .case-grid{gap:16px}
  .case-card__media{height:220px}
  .case-card__media>span{top:13px;left:13px}
  .youtube-consent__content{inset:auto 16px 15px}
  .youtube-consent__content strong{font-size:17px}
  .youtube-consent__content p{margin:7px 0 11px;font-size:11px}
  .youtube-consent__content .button{width:auto;min-height:44px;padding:10px 13px;font-size:11px}
  .case-card__content{padding:22px 18px 24px}
  .case-card__content h2{font-size:23px}
}

@media(prefers-reduced-motion:reduce){
  .case-card,.case-card__media img{transition:none}
}
