/* Review 6: S4–S7 cinematic redesign. v0.2 */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.cinematic-scene{position:relative;min-height:clamp(760px,62.5vw,900px);overflow:hidden;background:#111;color:#fff;isolation:isolate}
.cinematic-scene__media{position:absolute;inset:0;z-index:-3}
.cinematic-scene__media img{width:100%;height:100%;object-fit:cover}
.cinematic-scene__overlay{position:absolute;inset:0;z-index:-2;pointer-events:none}
.cinematic-scene__content{position:relative;width:min(calc(100% - 3rem),var(--content-wide));min-height:inherit;margin-inline:auto}
.cinematic-copy{display:grid;gap:1.35rem}
.cinematic-title,.cinematic-subtitle{margin:0;font-weight:700;letter-spacing:.005em;text-wrap:balance}
.cinematic-title{font-size:clamp(3.75rem,5.3vw,4.8rem);line-height:1.28}
.cinematic-title--xl{font-size:clamp(5rem,7.25vw,6.5rem);line-height:1.16}
.cinematic-subtitle{font-size:clamp(3rem,4.1vw,3.75rem);line-height:1.3}
.cinematic-body{margin:0;font-size:clamp(1rem,1.42vw,1.25rem);line-height:2;color:#e5e5df}
.cinematic-number{font-size:.78rem;letter-spacing:.3em;color:rgba(255,255,255,.68)}

.s5-cinematic__overlay{background:linear-gradient(0deg,rgba(12,12,11,.68),rgba(12,12,11,.15) 48%,rgba(12,12,11,.4))}
.s5-cinematic__content{display:flex;align-items:center;justify-content:space-between;padding-block:5rem}
.s5-cinematic__copy{max-width:900px}
.week-pulse{display:flex;flex-direction:column;align-items:center;gap:1.55rem;padding-right:.75rem}
.week-pulse span{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.42)}
.week-pulse .week-pulse__selected{width:27px;height:27px;background:#fff;box-shadow:0 0 26px rgba(255,255,255,.58)}

.s6-cinematic{display:grid;grid-template-columns:52% 48%;min-height:900px;background:#0c0c0b}
.s6-cinematic__copy-panel{display:flex;align-items:center;padding:6rem 4rem 6rem max(3rem,calc((100vw - var(--content-wide))/2));z-index:2}
.s6-cinematic__media{position:relative;overflow:hidden}
.s6-cinematic__media img{width:100%;height:100%;object-fit:cover;filter:brightness(.64) contrast(1.06)}
.s6-cinematic__media-overlay{position:absolute;inset:0 0 0 52%;z-index:1;background:linear-gradient(90deg,#0c0c0b 0%,rgba(12,12,11,.25) 26%,transparent 62%);pointer-events:none}
.reduce-words{display:grid;gap:.35rem;margin-top:1rem;font-size:clamp(2.8rem,3.5vw,3.2rem);font-weight:700;line-height:1.35}
.reduce-words span:nth-child(1){color:#fff}.reduce-words span:nth-child(2){color:rgba(255,255,255,.66)}.reduce-words span:nth-child(3){color:rgba(255,255,255,.46)}

.s7-cinematic{background:#111;color:#fff}
.s7-scene{min-height:clamp(760px,58.3vw,860px)}
.s7-scene--office__overlay{background:linear-gradient(90deg,rgba(12,12,11,.05),rgba(12,12,11,.14) 54%,rgba(12,12,11,.76))}
.s7-scene--office__content{display:flex;align-items:center;justify-content:flex-end}
.s7-scene__copy{width:min(560px,44vw)}
.s7-scene--office .s7-scene__copy{text-align:right;justify-items:end}
.s7-scene--dayflow{min-height:840px}
.dayflow{position:absolute;inset:0;display:grid;grid-template-columns:1fr 220px 1.2fr}
.dayflow__panel{position:relative;overflow:hidden}
.dayflow__panel--am{background:linear-gradient(160deg,#deded8,#aaa9a1)}
.dayflow__panel--work{background:linear-gradient(160deg,#87877f,#45453f);display:flex;align-items:center;justify-content:center}
.dayflow__panel--pm picture,.dayflow__panel--pm img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dayflow__panel--pm img{object-position:center 22%;filter:brightness(.82)}
.dayflow__panel--pm::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,12,11,.05),rgba(12,12,11,.65))}
.dayflow__label{position:absolute;z-index:2;display:grid;gap:.6rem;color:#2b2b28}
.dayflow__label span{font-size:.8rem;letter-spacing:.3em;font-weight:700}.dayflow__label strong{font-size:1.3rem;letter-spacing:.24em}.dayflow__label small{font-size:.82rem;color:#55554f}
.dayflow__panel--am .dayflow__label{left:clamp(3rem,5.5vw,5rem);top:6rem}
.dayflow__panel--work .dayflow__label{position:static;color:#eee;text-align:center}
.dayflow__panel--work .dayflow__label small{color:#d1d1ca}
.dayflow__panel--pm .dayflow__label{right:clamp(3rem,5vw,4.5rem);bottom:6rem;text-align:right;color:#fff}
.dayflow__panel--pm .dayflow__label small{color:#e2e2dd}
.s7-scene--dayflow__copy{position:absolute;z-index:4;left:max(3rem,calc((100vw - var(--content-wide))/2));right:max(3rem,calc((100vw - var(--content-wide))/2));bottom:6rem;text-align:center;text-shadow:0 2px 16px rgba(0,0,0,.65)}
.cinematic-subtitle--single{font-size:clamp(2.7rem,3.35vw,3rem);white-space:nowrap}
.s7-scene--walk .cinematic-scene__media img{object-position:center 30%;filter:brightness(.9)}
.s7-scene--walk__overlay{background:linear-gradient(0deg,rgba(12,12,11,.74),rgba(12,12,11,.1) 52%,rgba(12,12,11,.34))}
.s7-scene--walk__content{display:flex;align-items:flex-end;padding-bottom:7.5rem}
.run-walk{display:flex;align-items:center;gap:1rem;margin:.45rem 0 0;font-size:.8rem;font-weight:700;letter-spacing:.28em;color:rgba(255,255,255,.72)}
.run-walk i{display:block;width:72px;height:1px;background:rgba(255,255,255,.56);font-size:0}
.s7-cinematic__closing{padding:3rem 1.5rem;text-align:center;font-size:clamp(1rem,1.45vw,1.2rem);line-height:1.9;background:#111;color:#e2e2dc}

/* One-pass cinematic animations, activated by JS. */
.week-pulse span{opacity:.48;transform:scale(.82)}
.reduce-words span{opacity:0;transform:translateY(16px)}
.dayflow__panel{opacity:.34}.dayflow__panel--pm img{transform:scale(1.025)}
.run-walk span:last-child{opacity:.36}
.is-scene-visible .week-pulse span{animation:dotSettle .45s ease-out forwards}.is-scene-visible .week-pulse span:nth-child(1){animation-delay:.1s}.is-scene-visible .week-pulse span:nth-child(2){animation-delay:.2s}.is-scene-visible .week-pulse span:nth-child(3){animation-delay:.3s}.is-scene-visible .week-pulse span:nth-child(4){animation-delay:.48s}.is-scene-visible .week-pulse span:nth-child(5){animation-delay:.58s}.is-scene-visible .week-pulse span:nth-child(6){animation-delay:.68s}.is-scene-visible .week-pulse span:nth-child(7){animation-delay:.78s}
.is-scene-visible .reduce-words span{animation:wordRise .58s ease-out forwards}.is-scene-visible .reduce-words span:nth-child(1){animation-delay:.15s}.is-scene-visible .reduce-words span:nth-child(2){animation-delay:.48s}.is-scene-visible .reduce-words span:nth-child(3){animation-delay:.81s}
.is-scene-visible .dayflow__panel{animation:panelReveal .75s ease-out forwards}.is-scene-visible .dayflow__panel--am{animation-delay:.05s}.is-scene-visible .dayflow__panel--work{animation-delay:.45s}.is-scene-visible .dayflow__panel--pm{animation-delay:.85s}.is-scene-visible .dayflow__panel--pm img{animation:sceneScale 4s ease-out forwards .85s}
.is-scene-visible .run-walk span:last-child{animation:walkReveal .6s ease-out forwards .65s}
@keyframes dotSettle{to{opacity:1;transform:scale(1)}}@keyframes wordRise{to{opacity:1;transform:none}}@keyframes panelReveal{to{opacity:1}}@keyframes sceneScale{to{transform:scale(1)}}@keyframes walkReveal{to{opacity:1}}

@media(max-width:900px){
  .cinematic-scene,.s7-scene{min-height:100svh}
  .cinematic-scene__content{width:100%;padding-inline:1.375rem}
  .cinematic-title{font-size:clamp(3rem,13vw,4rem);line-height:1.25}.cinematic-title--xl{font-size:clamp(3.5rem,15vw,4.8rem);line-height:1.16}.cinematic-subtitle{font-size:clamp(2.45rem,11vw,3.35rem);line-height:1.28}.cinematic-body{font-size:.9rem;line-height:1.9}
  .s5-cinematic__content{align-items:flex-end;padding-block:4.5rem 4rem}
  .s5-cinematic__copy{align-self:center;max-width:100%}
  .week-pulse{position:absolute;right:1.6rem;top:50%;transform:translateY(-50%);gap:1.25rem;padding:0}
  .week-pulse span{width:8px;height:8px}.week-pulse .week-pulse__selected{width:22px;height:22px}
  .s6-cinematic{display:block;min-height:100svh}
  .s6-cinematic__media{position:absolute;inset:0}.s6-cinematic__media img{filter:brightness(.55) contrast(1.04);object-position:center}
  .s6-cinematic__media-overlay{inset:0;background:linear-gradient(to top,rgba(10,10,9,.9) 0%,rgba(10,10,9,.48) 55%,rgba(10,10,9,.12))}
  .s6-cinematic__copy-panel{position:relative;z-index:2;min-height:100svh;align-items:flex-end;padding:3.25rem 1.375rem max(7.5rem,calc(6.75rem + env(safe-area-inset-bottom)))}
  .s6-cinematic__title{font-size:clamp(2.8rem,12vw,3.6rem)}
  .reduce-words{font-size:clamp(2.4rem,11vw,3.2rem);gap:.15rem}.reduce-words span:nth-child(3){color:rgba(255,255,255,.58)}
  .s7-scene--office__overlay{background:linear-gradient(to top,rgba(12,12,11,.8),rgba(12,12,11,.06) 62%)}
  .s7-scene--office__content{align-items:flex-end;padding-bottom:max(7.5rem,calc(6.75rem + env(safe-area-inset-bottom)))}.s7-scene__copy{width:100%}.s7-scene--office .s7-scene__copy{text-align:left;justify-items:start}
  .s7-scene--dayflow{min-height:100svh}
  .dayflow{grid-template-columns:1fr;grid-template-rows:30% 18% 52%}
  .dayflow__panel--am .dayflow__label{left:1.5rem;top:2.3rem}.dayflow__panel--work .dayflow__label{display:flex;align-items:center;gap:1rem}.dayflow__panel--pm .dayflow__label{right:1.5rem;bottom:2.6rem}
  .dayflow__panel--pm img{object-position:center 18%}
  .s7-scene--dayflow__copy{left:1.375rem;right:1.375rem;bottom:max(7.5rem,calc(6.75rem + env(safe-area-inset-bottom)));text-align:left;text-shadow:0 2px 14px rgba(0,0,0,.8)}
  .cinematic-subtitle--single{font-size:clamp(1.85rem,7.8vw,2.5rem);white-space:normal}
  .s7-scene--walk .cinematic-scene__media img{object-position:center 32%}
  .s7-scene--walk__overlay{background:linear-gradient(to top,rgba(12,12,11,.82),rgba(12,12,11,.08) 64%)}
  .s7-scene--walk__content{align-items:flex-end;padding-bottom:max(7.5rem,calc(6.75rem + env(safe-area-inset-bottom)))}
  .s7-cinematic__closing{padding-block:2.4rem}
}
@media(max-width:380px){
  .cinematic-scene,.s7-scene{min-height:667px}
  .cinematic-title{font-size:2.9rem}.cinematic-title--xl{font-size:3.45rem}.cinematic-subtitle{font-size:2.35rem}.cinematic-body{font-size:.84rem}
  .cinematic-copy{gap:.9rem}
  .s6-cinematic__copy-panel{min-height:667px;padding-top:2rem;padding-bottom:6.8rem}.s6-cinematic__title{font-size:2.72rem}.reduce-words{font-size:2.35rem}
  .s7-scene--office__content,.s7-scene--walk__content{padding-bottom:6.8rem}.s7-scene--dayflow__copy{bottom:6.8rem}.cinematic-subtitle--single{font-size:1.78rem}
}
@media(prefers-reduced-motion:reduce){
  .week-pulse span,.reduce-words span,.dayflow__panel,.run-walk span:last-child{opacity:1!important;transform:none!important;animation:none!important}.dayflow__panel--pm img{transform:none!important;animation:none!important}
}
