
/* Brand Media Consulting — Editorial case studies */
.case-body{background:var(--paper)}
.case-intro{padding-top:38px;padding-bottom:62px}
.case-crumb{display:flex;align-items:center;gap:16px;font-size:10px;letter-spacing:.16em;font-weight:700;color:#70766d}
.case-crumb a{color:var(--ink);border-bottom:1px solid currentColor;padding-bottom:6px}
.case-intro__top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:60px 0 22px}
.case-mini-label{font-size:10px;letter-spacing:.14em;font-weight:700;color:#647155;border:1px solid #c3cebb;padding:9px 12px}
.case-intro__index{font-size:10px;font-weight:800;letter-spacing:.14em}
.case-intro h1{font-size:clamp(calc(45px * var(--case-title-scale,1)),calc(7.1vw * var(--case-title-scale,1)),calc(108px * var(--case-title-scale,1)));letter-spacing:-.094em;line-height:.90;font-weight:800;margin:0;max-width:1200px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
.case-intro h1 em{font:inherit;font-style:normal;letter-spacing:inherit}
.case-intro__bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-top:45px}
.case-deck{font-size:clamp(21px,2.7vw,34px);letter-spacing:-.04em;line-height:1.17;max-width:490px;margin:0}
.case-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:420px}
.case-tags span{font-size:10px;letter-spacing:.055em;font-weight:700;padding:10px 12px;border:1px solid #bbc0b5;border-radius:99px}
.case-hero{margin-bottom:125px}
.case-photo{position:relative;margin:0;overflow:hidden;background:#252a27;color:#fff;isolation:isolate}
.case-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1);filter:saturate(.77)}
.case-photo:hover img{transform:scale(1.025)}
.case-photo figcaption{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;gap:16px;padding:24px 28px 20px;align-items:center;font-size:10px;letter-spacing:.16em;font-weight:800;text-shadow:0 1px 10px rgba(0,0,0,.65);background:linear-gradient(transparent,rgba(0,0,0,.38))}
.case-photo--hero{height:clamp(440px,59vw,720px)}
.case-photo--hero:after{content:'BMC / CONCEPT STUDY';position:absolute;left:32px;top:32px;color:white;font-size:10px;letter-spacing:.2em;font-weight:800;text-shadow:0 2px 8px #0008}
.case-story{display:grid;grid-template-columns:.37fr .63fr;gap:85px;padding-bottom:128px}
.case-story__aside{align-self:start;position:sticky;top:130px;display:flex;flex-direction:column;gap:24px}
.case-story__aside-num{font-size:11px;letter-spacing:.16em;color:#6a716b}
.case-lead{font-size:clamp(25px,3vw,40px);font-weight:500;line-height:1.26;letter-spacing:-.054em;max-width:720px;margin:0 0 48px}
.case-details{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:14px;border-top:1px solid #c7ccc1;border-bottom:1px solid #c7ccc1;padding:25px 0 27px}
.case-details>div{display:flex;flex-direction:column;gap:12px}
.detail-label{font-size:9px;color:#7c8179;letter-spacing:.16em;font-weight:700}
.case-details strong{font-size:12px;line-height:1.45;max-width:180px}
.case-chapters{margin-top:53px}
.case-chapter{display:grid;grid-template-columns:55px 1fr;gap:15px;border-bottom:1px solid #cdd0c7;padding:26px 0 33px}
.case-chapter__num{font-size:10px;color:#7d857c;padding-top:7px}
.case-chapter h2{margin:0 0 14px;font-size:clamp(24px,2.6vw,36px);letter-spacing:-.055em}
.case-chapter p{font-size:15px;max-width:530px;line-height:1.67;color:#515951;margin:0}
.case-gallery{padding-bottom:124px}
.case-gallery__head{display:flex;justify-content:space-between;align-items:center;padding-bottom:28px;font-size:11px;font-weight:700;letter-spacing:.14em}
.case-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.case-photo--wide{grid-column:1/-1;height:clamp(320px,55vw,650px)}
.case-photo--half{height:clamp(270px,40vw,520px)}
.gallery-disclaimer{font-size:11px;color:#646e61;margin:22px 0 0;line-height:1.6}
.case-pull{background:#dce5cf;padding:110px 0 120px}
.case-pull .container{display:flex;flex-direction:column;gap:16px}
.case-pull .container>span:first-child{font-size:56px;color:#8ead37}
.case-pull blockquote{font-size:clamp(42px,6.4vw,91px);line-height:1.09;letter-spacing:-.075em;max-width:1030px;margin:0;font-weight:700}
.case-pull__credit{font-size:10px;font-weight:700;letter-spacing:.2em;color:#616c5d;margin-top:30px}
.case-next{padding-top:110px;padding-bottom:124px}
.case-next__top{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:800;letter-spacing:.19em;margin-bottom:42px}
.case-next__top a{text-decoration:underline;text-underline-offset:5px}
.case-next__link{display:flex;align-items:end;justify-content:space-between;gap:20px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:52px 0;color:var(--ink)}
.case-next__link>span:first-child{font-size:clamp(47px,7vw,104px);letter-spacing:-.075em;line-height:.97;font-weight:750;max-width:900px}
.case-next__arrow{font-size:clamp(40px,6vw,80px);transition:transform .2s}
.case-next__link:hover .case-next__arrow{transform:translate(7px,-7px)}
.case-bottom{background:#171917;color:#f5f4ef;padding:90px 0 0}
.case-bottom p{font-size:11px;letter-spacing:.19em;margin:0 0 16px}
.case-bottom .case-contact-link{font-size:clamp(27px,4.2vw,60px);font-weight:600;letter-spacing:-.05em;text-decoration:underline;text-underline-offset:10px}
.case-bottom footer{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #626560;margin-top:100px;padding:28px 0;font-size:10px;letter-spacing:.12em}
.case-bottom footer>a:first-child{font-weight:900;font-size:27px;letter-spacing:-.07em}
@media(max-width:960px){.case-story{gap:30px;grid-template-columns:.28fr .72fr}.case-details{grid-template-columns:1fr 1fr}.case-details>div:last-child{grid-column:1/-1}}
@media(max-width:800px){.case-intro{padding-top:27px;padding-bottom:36px}.case-intro__top{margin:45px 0 25px}.case-intro h1{font-size:clamp(52px,11vw,89px)}.case-intro__bottom{margin-top:35px;display:block}.case-tags{justify-content:flex-start;margin-top:24px}.case-hero{margin-bottom:75px}.case-photo--hero{height:60vh;min-height:410px}.case-story{display:block;padding-bottom:80px}.case-story__aside{position:static;gap:15px;margin-bottom:34px}.case-gallery{padding-bottom:80px}.case-pull{padding:75px 0 90px}.case-next{padding:75px var(--edge) 85px}.case-bottom footer{margin-top:72px}}
@media(max-width:580px){.case-mini-label{font-size:8px;letter-spacing:.08em;padding:8px}.case-intro__index{font-size:9px}.case-intro h1{font-size:clamp(48px,12vw,70px)}.case-deck{font-size:24px}.case-tags span{font-size:9px;padding:8px 10px}.case-photo--hero{min-height:335px;height:65svh}.case-photo figcaption{padding:15px;font-size:8px}.case-details{gap:24px 10px}.case-chapter{grid-template-columns:34px 1fr}.case-chapter p{font-size:14px}.case-photo-grid{gap:9px}.case-photo--wide{height:310px}.case-photo--half{height:280px}.case-pull blockquote{font-size:47px}.case-next__link>span:first-child{font-size:48px}.case-next__link{padding:35px 0}.case-bottom footer{flex-wrap:wrap;line-height:1.6}}
@media(prefers-reduced-motion:reduce){.case-photo img,.case-next__arrow{transition:none}}

/* BMC multimedia projects: readable, responsive players and captions. */
.case-media{padding-block:clamp(40px,5vw,85px) clamp(56px,7vw,118px)}
.case-media__head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:38px}
.case-media__head #caseMediaCount{color:var(--muted,#797d76);font-size:12px;letter-spacing:.1em}
.case-media__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}
.case-media__item{min-width:0;margin:0}
.case-media__item--video{grid-column:span 2}
.case-media__surface{overflow:hidden;background:#111;border-radius:16px;display:flex;align-items:center;justify-content:center;min-width:0;aspect-ratio:16/9;box-shadow:0 18px 44px rgba(17,17,17,.12)}
.case-media__surface iframe,.case-media__surface video{display:block;width:100%;height:100%;border:0;background:#111}
.case-media__surface video{object-fit:cover;max-height:none}
.case-media__surface--audio{background:var(--work-bg,#ebede7);padding:clamp(20px,4vw,46px);min-height:138px;aspect-ratio:auto;box-shadow:none}
.case-media__surface audio{display:block;width:100%;height:48px}
.case-media__caption{font-size:clamp(12px,1.2vw,15px);line-height:1.5;color:var(--ink);padding-top:12px}
.case-media__caption span{color:var(--muted,#777);font-size:11px;letter-spacing:.12em;margin-right:12px}
@media(max-width:760px){.case-media__grid{grid-template-columns:1fr;gap:27px}.case-media__item--video{grid-column:auto}.case-media__head{padding-bottom:18px;margin-bottom:23px}.case-media__surface--audio{padding:20px}}

/* BMC case study refresh */
.case-intro__copy p{font-size:clamp(16px,1.4vw,20px);line-height:1.68;color:var(--muted)}
.case-facts{padding-top:22px;border-top:1px solid var(--line)}
.case-chapter{padding-top:24px;border-top:1px solid rgba(23,25,23,.08)}
.case-photo-grid figure{background:rgba(255,255,255,.44);border-radius:16px;overflow:hidden;border:1px solid rgba(23,25,23,.08);box-shadow:0 12px 32px rgba(23,25,23,.05)}
.case-photo img{width:100%;height:100%;object-fit:cover;display:block}
.case-pull{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:clamp(34px,5vw,56px)}
.case-next__link{padding:44px 0;border-top:1px solid var(--line)}
/* Empty photo sections occupy no space, including their headings and padding. */
.case-gallery[hidden],.case-hero[hidden]{display:none!important}

/* BMC: no visible photo labels, captions, numbering or photo-only disclaimers. */
.case-photo figcaption,.gallery-disclaimer{display:none!important}
.case-photo::before,.case-photo::after{content:none!important;display:none!important}

/* BMC multi-example case study */
.case-examples{padding-bottom:clamp(82px,10vw,150px)}
.case-examples__head{display:flex;justify-content:space-between;align-items:center;padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:52px;font-size:11px;font-weight:700;letter-spacing:.14em}
.case-example{padding:0 0 clamp(72px,9vw,132px);margin:0 0 clamp(72px,9vw,132px);border-bottom:1px solid var(--line)}
.case-example:last-child{margin-bottom:0}
.case-example__index{font-size:11px;letter-spacing:.14em;color:var(--muted,#777);margin-bottom:20px}
.case-example__intro{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,6vw,88px);align-items:start}
.case-example__lead-image{margin:0;overflow:hidden;background:var(--work-bg,#eaece5);min-height:260px;aspect-ratio:4/3}
.case-example__lead-image img{display:block;width:100%;height:100%;object-fit:cover}
.case-example__copy{min-width:0}
.case-example__description{font-size:clamp(22px,2.4vw,38px);line-height:1.12;letter-spacing:-.035em;margin:clamp(28px,3.5vw,48px) 0 0;white-space:pre-line}
.case-example__facts{margin-top:0;border-top:1px solid var(--line)}
.case-example__fact{display:grid;grid-template-columns:minmax(110px,.27fr) minmax(0,.73fr);gap:24px;padding:19px 0;border-bottom:1px solid var(--line)}
.case-example__fact-label{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.case-example__fact p{margin:0;font-size:clamp(16px,1.55vw,22px);line-height:1.5;white-space:pre-line}
.case-example__gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:clamp(38px,5vw,66px)}
.case-example__gallery figure{margin:0;overflow:hidden;background:var(--work-bg,#eaece5)}
.case-example__gallery img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}
.case-example__media{margin-top:clamp(38px,5vw,66px)}
.case-example__media .case-media__grid{margin-top:0}
@media(max-width:800px){.case-example__intro{grid-template-columns:1fr;gap:28px}.case-example__fact{grid-template-columns:1fr;gap:8px}.case-example__gallery{grid-template-columns:1fr}.case-examples__head{margin-bottom:34px}}

/* BMC media repair 2026-11-08 */
.case-media__direct{display:inline-block;margin-top:11px;color:var(--ink);font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.case-media__warning{grid-column:1/-1;padding:22px;border:1px solid #d3a25c;background:#fff8e9;color:#5e4724;line-height:1.6}
