.logo-lockup{position:relative;display:block;width:100%}
.logo-lockup .logo-full{width:100%;height:auto;clip-path:inset(0 0 0 29.695%)}
.logo-lockup .logo-symbol{position:absolute;left:0;top:0;width:29.695%;height:100%;max-width:none;transform-origin:center}
footer .logo-lockup{width:122px}
.brand-play{padding:0;display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;border-radius:50%}
.brand-play .logo-symbol{width:100%;height:100%;transform-origin:center}
.brand-play:focus-visible{outline-color:var(--lime)}
.site-header.is-logo-playing{transform:none}

/* Full-width service layers overlap; each layer carries its own content gutters. */
.engagements{padding-block:120px 140px;overflow-anchor:auto;background:var(--paper)}
.engagement-heading{display:block;margin-bottom:54px}
.engagement-heading h2{font-size:clamp(15px,1.35vw,21px);line-height:1.2;font-weight:500;letter-spacing:-.01em;color:var(--muted)}
.engagement-heading:after{display:none;content:none}
.engagement-list{counter-reset:service;isolation:isolate}
.service-panel{counter-increment:service;position:sticky;top:var(--service-top,24px);min-height:min(900px,calc(100svh - 24px));background:var(--paper);border:0;z-index:1}
/* A top-only shadow spans the layer without revealing side or bottom card edges. */
.service-panel + .service-panel::before{content:'';position:absolute;inset-inline:0;bottom:100%;height:36px;background:linear-gradient(to bottom,rgba(9,20,38,0),rgba(9,20,38,.015) 45%,rgba(9,20,38,.065));pointer-events:none}
.service-panel:nth-child(2){z-index:2}.service-panel:nth-child(3){z-index:3}.service-panel:nth-child(4){z-index:4}
.engagement-list:has(:focus-visible) .service-panel{position:relative;top:auto}
.engagement-list .service-heading{display:grid;grid-template-columns:48px minmax(0,1fr) minmax(220px,.72fr);gap:24px;padding:58px 0}
.engagement-list .service-heading:before{content:'0' counter(service);display:block;align-self:start;padding-top:.65em;font-family:Delight,Arial,sans-serif;font-size:14px;line-height:1;color:var(--muted);font-variant-numeric:tabular-nums}
.engagement-list .engagement-name{width:auto;min-width:0;font-family:Delight,Arial,sans-serif;font-size:clamp(56px,7.1vw,112px);font-weight:400;line-height:1.1;letter-spacing:.005em;transition:color .25s}
.engagement-list .engagement-preview{justify-self:end;width:min(100%,400px);max-width:400px;margin:0;font-size:clamp(16px,1.35vw,21px);line-height:1.35}
.engagement-list .disclosure-icon{display:none}
.engagement-list .engagement-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.72fr);gap:8vw;align-items:start;padding:0 76px 84px 88px;font-size:clamp(18px,1.6vw,24px);line-height:1.45}
.engagement-copy{max-width:520px}
.engagement-copy .service-kicker{font-size:14px;margin:0 0 14px;font-weight:500;letter-spacing:.025em}
.engagement-copy p{max-width:480px}
.engagement-copy ul{display:block;margin:22px 0 26px}
.engagement-copy li{display:flex;align-items:center;gap:10px;padding:0;background:none;font-size:14px;line-height:1.7;color:var(--muted)}
.engagement-copy li:before{content:'';width:15px;height:15px;flex:0 0 15px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 7h10v10'/%3E%3Cpath d='M7 17 17 7'/%3E%3C/svg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 7h10v10'/%3E%3Cpath d='M7 17 17 7'/%3E%3C/svg%3E") center/contain no-repeat}
.engagement-copy>a{display:inline-flex;align-items:center;gap:24px;padding:4px 0;border-bottom:1px solid currentColor;font-size:16px}
.engagement-copy>a .icon{width:20px;height:20px}
.service-panel .engagement-name{color:var(--blue)}


.service-reel{width:100%;max-width:400px;margin:0 0 0 auto;aspect-ratio:4/3}
.service-reel .reel-heading{top:16px;left:16px;right:16px}
.service-reel .reel-title{display:none}
.service-reel .reel-label{font-size:12px}
.service-reel .reel-controls{left:10px;bottom:10px;gap:0;padding:1px}
.service-reel .reel-count{min-width:55px}
@media(min-width:761px) and (max-width:1100px){
  .engagement-list .service-heading{grid-template-columns:34px minmax(0,1fr) minmax(190px,.72fr);gap:16px;padding-block:52px}
  .engagement-list .engagement-name{font-size:clamp(52px,6.8vw,78px)}
  .engagement-list .engagement-content{padding-left:52px;padding-right:0;gap:5vw}
}
@media(max-width:760px){
  .engagements{padding-block:76px 84px}
  .engagement-heading{margin-bottom:40px}
  .engagement-heading h2{font-size:16px}
  .engagement-list .service-heading{grid-template-columns:24px minmax(0,1fr);gap:10px;padding:44px 0}
  .engagement-list .service-heading:before{display:block;padding-top:.55em;font-size:12px}
  .engagement-list .engagement-name{font-size:clamp(34px,8.5vw,65px)}
  .engagement-list .engagement-preview{display:block;grid-column:2;justify-self:start;width:min(100%,340px);max-width:340px}
  .engagement-list .disclosure-icon{display:none}
  .engagement-list .engagement-content{grid-template-columns:1fr;gap:30px;padding:0 0 58px 32px;font-size:18px}
  .engagement-copy .service-kicker{font-size:14px}
  .engagement-copy ul{margin:17px 0 20px}
  .engagement-copy li{font-size:14px}
  .service-reel{width:min(100%,340px);aspect-ratio:16/10;margin:0}
  .brand-play{width:36px;height:36px}
}
@media(prefers-reduced-motion:reduce){.engagement-list .engagement-name{transition:none}}
.engagement-heading h2{font-family:Delight,Arial,sans-serif;font-size:clamp(17px,1.5vw,24px);line-height:1.3;letter-spacing:.06em;font-weight:400}
.engagement-list .service-heading:before{font-family:Delight,Arial,sans-serif;letter-spacing:.08em}
.service-reel .reel-label{font-size:13px;letter-spacing:.12em}

@media(prefers-reduced-motion:reduce){.service-panel{position:relative;top:auto;min-height:0}}
