/* Full-width surfaces; only the outgoing inner sheet recedes. */
.services-page .pin-fidelity-body .service-catalogue{padding:0;background:var(--musou-backdrop)}
.services-page.has-service-stack .service-editorial-sheet{padding:0;background:transparent}
.has-service-stack .service-chapters{position:relative;isolation:isolate;padding:0}
.services-page .service-offering-toggle .service-offering-mark{grid-column:-1}
.services-page.has-service-stack .pin-fidelity-body .service-offering{position:sticky;top:var(--chapter-top,0px);z-index:var(--chapter-layer,1);min-height:100svh;margin:0;border:0;background:transparent;box-shadow:none}
.has-service-stack .service-offering::details-content{transition:none;overflow:visible}
.services-page.has-service-stack .service-offering-body{--sheet-top:clamp(96px,11svh,120px);--sheet-bottom:clamp(40px,5svh,64px);display:block;position:relative;isolation:isolate;min-height:100svh;padding:var(--sheet-top) var(--agency-gutter) var(--sheet-bottom);background:var(--studio-surface);color:var(--studio-ink);transform:translateY(var(--chapter-lift,0px)) scale(var(--chapter-scale,1));transform-origin:50% 0%}
.has-service-stack .service-offering[data-chapter-receding] .service-offering-body{will-change:transform}
.has-service-stack .service-offering-body::after{content:"";position:absolute;inset:0;z-index:3;background:var(--musou-color-black);opacity:var(--chapter-shade,0);pointer-events:none}
.has-service-stack .service-offering:focus-within .service-offering-body{transform:none}
.has-service-stack .service-offering:focus-within .service-offering-body::after{opacity:0}
/* One short thought and three highlights, with space around the image. */
.has-service-stack .service-card-stage{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:1fr auto auto 1fr;column-gap:2vw;min-height:calc(100svh - var(--sheet-top) - var(--sheet-bottom));min-width:0}
.has-service-stack .service-card-opening{grid-column:1/6;grid-row:2;min-width:0;margin:0 0 clamp(32px,4svh,48px)}
.has-service-stack .service-panel-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start;border:0;padding:0;margin:0;min-width:0}
.service-panel-intro[hidden]{display:none}
.has-service-stack .service-stack-number{grid-column:2;grid-row:1;padding-top:clamp(8px,.65vw,12px);font-size:13px;font-weight:400;line-height:1;letter-spacing:0;font-variant-numeric:tabular-nums;opacity:.65}
.has-service-stack .service-panel-title{grid-column:1;grid-row:1;font-size:clamp(60px,5.5vw,104px);font-weight:500;line-height:1;letter-spacing:-.035em;margin:0;min-width:0;overflow-wrap:anywhere;text-wrap:balance}
.has-service-stack .service-panel-title .heading-highlight-word{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.services-page.has-service-stack .service-proof-layout{display:contents}
.has-service-stack .service-delivery{grid-column:1/6;grid-row:3;min-width:0;align-self:start;margin:0}
.services-page.has-service-stack .service-description{font-size:clamp(24px,1.6vw,30px);line-height:1.4;letter-spacing:-.015em;max-width:27ch;margin:0 0 32px;text-wrap:pretty}
.has-service-stack .service-deliverables{display:flex;flex-direction:column;gap:10px;list-style:none;padding:0;margin:0;border:0}
.has-service-stack .service-deliverables li{font-size:clamp(15px,1vw,18px);line-height:1.5;letter-spacing:0;padding:0;border:0;min-width:0;overflow-wrap:anywhere}
.has-service-stack .service-delivery .agency-link{margin-top:32px}
/* The source photographs determine their proportions, rather than three identical boxes. */
.has-service-stack .service-example-visual{display:flex;grid-column:7/12;grid-row:1/-1;align-self:center;height:clamp(380px,66svh,720px);padding:0;margin:0;min-width:0}
.services-page.has-service-stack .service-band{position:relative;flex:1;width:100%;height:100%;max-height:none;min-height:0;margin:0;background:transparent;overflow:hidden;border:0;box-shadow:none}
.services-page.has-service-stack .service-band img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.services-page.has-service-stack #web .service-band img{object-position:50% 70%}
.has-service-stack #creative .service-card-opening,.has-service-stack #creative .service-delivery{grid-column:8/-1}
.has-service-stack #creative .service-example-visual{grid-column:1/7;height:clamp(340px,56svh,620px)}
.has-service-stack #marketing .service-example-visual{grid-column:9/-1;height:clamp(380px,66svh,720px)}
.has-service-stack .service-example-visual:has(.service-band:empty){display:none}
.has-service-stack .service-card-stage:not(:has(.service-band img)) :is(.service-card-opening,.service-delivery){grid-column:1/-1;max-width:660px}
@media(min-width:701px) and (max-width:1100px){
 .has-service-stack .service-panel-title{font-size:6vw}
 .services-page.has-service-stack .service-description{font-size:24px}
 .has-service-stack .service-example-visual{grid-column:7/-1}
 .has-service-stack #creative .service-example-visual{grid-column:1/7}
 .has-service-stack #creative .service-card-opening,.has-service-stack #creative .service-delivery{grid-column:8/-1}
 .has-service-stack #marketing .service-example-visual{grid-column:8/-1}
}
@media(max-width:700px){
 .services-page.has-service-stack .service-offering-body{--sheet-top:100px;--sheet-bottom:44px;padding-inline:24px}
 .has-service-stack .service-card-stage{display:flex;flex-direction:column;min-height:0}
 .has-service-stack .service-card-opening{order:0;margin:0 0 28px;width:100%}
 .has-service-stack .service-panel-intro{gap:16px}
 .has-service-stack .service-stack-number{padding-top:6px;font-size:12px}
 .has-service-stack .service-panel-title{font-size:clamp(48px,10vw,72px)}
 .has-service-stack .service-delivery{order:1;align-self:stretch}
 .services-page.has-service-stack .service-description{font-size:24px;max-width:28ch;margin-bottom:24px}
 .has-service-stack .service-deliverables{gap:8px}
 .has-service-stack .service-deliverables li{font-size:16px}
 .has-service-stack .service-delivery .agency-link{margin-top:28px}
 .has-service-stack .service-example-visual,.has-service-stack #marketing .service-example-visual{order:2;align-self:stretch;height:clamp(320px,98vw,580px);margin:40px 0 0}
 .has-service-stack #creative .service-example-visual{height:clamp(260px,78vw,450px)}
}
@media(prefers-reduced-motion:reduce){
 .services-page.has-service-stack .pin-fidelity-body .service-offering{position:relative;top:auto;min-height:0}
 .services-page.has-service-stack .service-offering-body{transform:none;min-height:0;will-change:auto}
 .has-service-stack .service-card-stage{min-height:0}
 .has-service-stack .service-offering-body::after{display:none}
}
@media print{
 .services-page .pin-fidelity-body .service-catalogue{padding:0;background:#fff!important}
 .services-page.has-service-stack .service-offering{position:relative!important;top:auto!important;min-height:0;break-before:page}
 .services-page.has-service-stack .service-offering-body{--studio-surface:#fff;--studio-ink:#000;--studio-muted:#000;--musou-ink:#000;--musou-muted:#000;--musou-page:#fff;--agency-rule:#777;display:block;min-height:0;padding:0;transform:none;will-change:auto;background:#fff!important;color:#000!important}
 .has-service-stack .service-offering-body,.has-service-stack .service-offering-body *{transition:none!important}
 .has-service-stack .service-offering-body a{color:#000!important}
 .has-service-stack .service-offering-body::after{display:none}
 .has-service-stack .service-card-stage,.has-service-stack .service-card-opening,.has-service-stack .service-panel-intro{display:block;min-height:0;margin-bottom:5mm}
 .has-service-stack .service-panel-title{font-size:30pt}
 .services-page.has-service-stack .service-description{font-size:13pt;margin-top:4mm}
 .services-page.has-service-stack .service-proof-layout{display:block}
 .has-service-stack .service-example-visual,.has-service-stack #creative .service-example-visual,.has-service-stack #marketing .service-example-visual{display:block;height:75mm;margin-block:6mm}
 .has-service-stack .service-stack-number{display:none}
 .has-service-stack .service-deliverables{display:block}
 .has-service-stack .service-deliverables li{font-size:11pt}
}
