/* ---- full hero: the film (or render) runs full-bleed behind the opening copy; the zone is dark in every appearance ---- */
.service-detail .service-opening-chapter{position:relative;isolation:isolate;--pw-end:var(--bg)}
:root[data-appearance="light"] .service-detail .service-opening-chapter{--pw-end:var(--film-bg)}
.service-opening-chapter > :is(.service-breadcrumbs,.eyebrow,h1,.lead,.actions){--ink:var(--film-ink);--body:var(--film-body);--muted:color-mix(in srgb,var(--film-body) 84%,var(--film-bg));--accent-text:var(--film-accent);--btn-bg:var(--accent);--btn-bg-hover:color-mix(in srgb,var(--accent) 75%,#fff);--on-accent:var(--film-bg);--hi-edge:rgba(255,255,255,.18)}
.service-opening-chapter > .actions{pointer-events:none}
.service-opening-chapter > .actions > *{pointer-events:auto}
.pw-zone{display:none;position:absolute;z-index:-2;left:50%;width:100vw;margin-left:-50vw;top:calc(-1 * var(--pw-t,116px));height:var(--pw-h,620px);background:var(--film-bg);pointer-events:none}
.pw-zone::after{content:"";position:absolute;inset:auto 0 0 0;height:max(120px,24%);background:linear-gradient(to top,var(--pw-end) 0,color-mix(in srgb,var(--pw-end) 70%,transparent) 40%,transparent 100%)}
.service-detail .service-opening-chapter > .pw-full{position:absolute;z-index:-1;left:50%;width:100vw;margin:0 0 0 -50vw;top:calc(-1 * var(--pw-t,116px));height:var(--pw-h,620px);overflow:hidden;background:var(--film-bg);pointer-events:none}
.pw-media{position:absolute;inset:0}
.pw-stage{position:absolute;left:var(--sl,0px);top:var(--st,0px);width:var(--sw,100%);height:var(--sh,100%);overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 24%),linear-gradient(to bottom,transparent 0,#000 var(--mkt,12%));-webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right,transparent 0,#000 24%),linear-gradient(to bottom,transparent 0,#000 var(--mkt,12%));mask-composite:intersect}
.pw-stage picture{display:block;width:100%;height:100%}
.pw-film-poster img,.pw-film-video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.pw-film-video{opacity:0;transition:opacity var(--t-reveal) var(--ease)}
.pw-full.is-playing .pw-film-video{opacity:1}
.pw-shade{position:absolute;inset:0;pointer-events:none;background:
  linear-gradient(to right,color-mix(in srgb,var(--film-bg) 92%,transparent) 0,color-mix(in srgb,var(--film-bg) 86%,transparent) calc(var(--pw-sx,62%) - 140px),color-mix(in srgb,var(--film-bg) 30%,transparent) calc(var(--pw-sx,62%) + 30px),transparent calc(var(--pw-sx,62%) + 260px)),
  linear-gradient(to bottom,var(--film-bg) 0,color-mix(in srgb,var(--film-bg) 82%,transparent) 7%,color-mix(in srgb,var(--film-bg) 36%,transparent) 17%,transparent 30%)}
.pw-fade{position:absolute;left:0;right:0;bottom:0;height:max(150px,26%);pointer-events:none;background:linear-gradient(to top,var(--pw-end) 0,var(--pw-end) 6px,color-mix(in srgb,var(--pw-end) 72%,transparent) 40%,transparent 100%)}
.pw-foot{position:absolute;z-index:3;right:max(var(--gutter),calc((100% - var(--rail)) / 2));bottom:var(--pw-foot,12px);display:flex;align-items:center;gap:10px;pointer-events:none}
.pw-film-tag{display:inline-flex;align-items:center;min-height:28px;padding:3px 10px;border-radius:var(--r-pill);background:var(--film-glass);border:1px solid var(--film-line);color:var(--film-body);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.1em;text-transform:uppercase;line-height:1.2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.pw-film-toggle{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid var(--film-line-2);background:var(--film-glass);color:var(--film-ink);cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color var(--t-state) var(--ease)}
.pw-film-toggle:hover{border-color:var(--film-line-3)}
.pw-film-toggle:focus-visible{outline:2px solid var(--film-accent);outline-offset:2px}
.pw-film-toggle svg{width:18px;height:18px;fill:currentColor}
.pw-full .i-play,.pw-full.is-paused .i-pause{display:none}
.pw-full.is-paused .i-play{display:block}
html:not(.anim) .pw-film-toggle,html.lite .pw-film-toggle{display:none}
/* phones and portrait tablets (as the landing): the picture becomes a band between the headline and the lead, the zone stays dark behind all of it */
@media (max-width:699px),(max-aspect-ratio:5/4){
  .pw-zone{display:block}
  .service-detail .service-opening-chapter > .pw-full{position:relative;z-index:auto;left:auto;top:auto;width:auto;height:auto;overflow:visible;margin:14px calc(50% - 50vw) 0;background:none}
  .pw-media{position:relative;inset:auto;width:100%;aspect-ratio:10 / 7;max-height:clamp(260px,42svh,460px)}
  .pw-film-poster img,.pw-film-video{object-position:50% 62%}
  .pw-stage{left:0;top:0;width:100%;height:100%;-webkit-mask-image:none;mask-image:none}
  .pw-shade{background:linear-gradient(to bottom,var(--film-bg) 0,color-mix(in srgb,var(--film-bg) 72%,transparent) 9%,transparent 26%,transparent 78%,color-mix(in srgb,var(--film-bg) 78%,transparent) 93%,var(--film-bg) 100%)}
  .pw-fade{display:none}
  .pw-foot{position:static;justify-content:space-between;padding:0 max(var(--gutter),env(safe-area-inset-left));margin-top:2px}
}