/* Case studies share the start page's light studio design system. */
.os-case-hero { padding-top:160px; padding-bottom:0; }
.os-case-back { display:inline-flex; gap:12px; align-items:center; font-size:15px; text-decoration:none; color:var(--studio-muted) !important; margin-bottom:45px; }
.os-case-back:hover { color:var(--studio-orange) !important; }
.os-case-intro { display:grid; grid-template-columns:1.2fr 1fr; gap:7%; align-items:end; }
.os-case-intro h1 { font:500 clamp(42px,4.8vw,78px)/1.05 'Google Sans',sans-serif; letter-spacing:-.05em; margin:0; color:var(--studio-ink); }
.os-case-intro > p { font-size:clamp(18px,1.5vw,22px); max-width:540px; }
.os-case-facts { display:flex; flex-wrap:wrap; gap:25px 70px; border-top:1px solid var(--studio-line); padding-top:24px; margin:42px 0; }
.os-case-facts div { min-width:110px; }
.os-case-facts dt { color:var(--studio-muted); font-size:13px; margin-bottom:5px; }
.os-case-facts dd { font:500 17px/1.5 'Google Sans',sans-serif; margin:0; }
.os-case-cover { margin:0; border-radius:16px; overflow:hidden; background:var(--studio-soft); }
.os-case-cover img { display:block; width:100%; height:auto; max-height:820px; object-fit:contain; }
.os-case-body { display:grid; grid-template-columns:240px minmax(0,900px); justify-content:space-between; gap:7%; }
.os-case-aside { position:sticky; top:120px; border-top:1px solid var(--studio-line); padding-top:22px; }
.os-case-aside p { font-size:16px; margin-top:15px; }
.os-case-aside h2 { font-size:26px; letter-spacing:-.025em; }
.os-case-story { min-width:0; }
.os-case-chapter + .os-case-chapter { margin-top:65px; }
.os-case-chapter h2 { font-size:clamp(30px,3vw,44px); margin:0 0 28px; }
.os-case-chapter p { font:400 18px/1.8 'Roboto',sans-serif; margin:0 0 25px; }
.os-case-chapter figure { display:block; width:100%; max-width:100% !important; margin:35px 0; border-radius:12px; overflow:hidden; }
.os-case-chapter figure img { width:100%; height:auto; display:block; }
.os-case-chapter .w-richtext-figure-type-video { position:relative; height:auto; padding:0 !important; aspect-ratio:16/9; }
.os-case-chapter .w-richtext-figure-type-video > div { position:absolute; inset:0; }
.os-case-chapter iframe { display:block; position:absolute; width:100%; height:100%; border:0; }
.os-case-next { background:var(--studio-soft); }
.os-case-next .os-section-head { grid-template-columns:1fr auto; }
.os-case-next .os-text-link { margin:0; }
.os-case-next h2 { font-size:clamp(36px,3.8vw,60px); }
.os-case .os-project-title h3 { font-size:clamp(21px,1.7vw,27px); }
.os-case .os-invitation h2 { font-size:clamp(42px,5vw,76px); }
@media (max-width:1000px) { .os-case-intro { grid-template-columns:1fr; gap:25px; } .os-case-intro > p { max-width:700px; } .os-case-body { grid-template-columns:190px minmax(0,1fr); gap:40px; } }
@media (max-width:700px) {
  .os-case-hero { padding-top:125px; padding-bottom:0; }
  .os-case-back { margin-bottom:30px; }
  .os-case-intro h1 { font-size:clamp(36px,10.5vw,55px); overflow-wrap:break-word; }
  .os-case-intro > p { font-size:17px; }
  .os-case-facts { gap:20px 30px; margin:30px 0; }
  .os-case-facts dd { font-size:16px; }
  .os-case-cover { border-radius:10px; }
  .os-case-body { display:flex; flex-direction:column-reverse; gap:50px; }
  .os-case-aside { position:static; }
  .os-case-chapter p { font-size:17px; line-height:1.75; }
  .os-case-chapter + .os-case-chapter { margin-top:42px; }
  .os-case-next .os-section-head { grid-template-columns:1fr; align-items:start; }
  .os-case-next .os-text-link { justify-self:start; }
}
