/* Editorial collections and restrained motion; no external animation runtime. */
:root{--editorial-ease:cubic-bezier(.2,.7,.1,1)}
.slide{animation:none}
.slide.active .heading>p,.slide.active .cover-copy>p,.slide.active .closing-grid{animation:editorial-fade 650ms var(--editorial-ease) both}
.slide.active .type-char{animation:editorial-letter 600ms var(--editorial-ease) both;animation-delay:calc(var(--letter)*16ms)}
@keyframes editorial-letter{from{opacity:0;transform:translateY(.18em)}to{opacity:1;transform:none}}
@keyframes editorial-fade{from{opacity:0}to{opacity:1}}
@keyframes editorial-reveal{from{opacity:0;clip-path:inset(9% 0 91% 0);transform:translateY(12px)}to{opacity:1;clip-path:inset(0);transform:none}}
@keyframes editorial-settle{from{transform:scale(1.08)}to{transform:scale(1)}}
@keyframes editorial-static{from{opacity:0;clip-path:inset(10% 0 90% 0);transform:scale(1.08)}to{opacity:1;clip-path:inset(0);transform:scale(1)}}
[data-reveal]{opacity:0}
[data-reveal].is-revealed{animation:editorial-reveal 800ms var(--editorial-ease) var(--stagger,0ms) both}
[data-reveal].is-revealed .media-visual img{animation:editorial-settle 900ms var(--editorial-ease) var(--stagger,0ms) both}
.slide.active figure:not(.gallery-card):not(:has([data-reveal]))>img{animation:editorial-static 900ms var(--editorial-ease) both}
.collection-label{font-size:10px;letter-spacing:.17em;color:#81705d}
.overview-heading h1{font-size:clamp(2.5rem,4.4vw,4.4rem)}
.overview .heading{margin-bottom:23px}
.overview-grid{display:grid;grid-template-columns:1fr 1.18fr 1.05fr 1.25fr;gap:16px;align-items:start}
.overview-block{padding:0;border:0;border-top:1px solid #756c60;text-align:left;min-width:0;background:none}
.overview-label{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:11px 0;font-size:12px}
.overview-label b{font-weight:500;white-space:nowrap}
.overview-label small{font-size:10px;color:#786d5f;white-space:nowrap}
.overview-pictures{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;height:clamp(270px,41vh,415px);gap:5px;overflow:hidden}
.overview-model{margin-top:27px}.overview-life{margin-top:62px}.overview-shot{margin-top:7px}
.overview-model .overview-pictures{height:clamp(300px,45vh,450px)}
.overview-garment .overview-pictures{height:clamp(240px,34vh,350px);grid-auto-flow:row;grid-auto-rows:minmax(0,1fr)}
.overview-garment .media-frame img{object-fit:contain}
.overview-pictures>.media-frame{height:100%;width:100%;min-height:0}
.overview-pictures>.media-frame:nth-child(2){display:none}
.overview-garment .overview-pictures>.media-frame:nth-child(2){display:block}
.overview-pictures video{height:100%;width:100%;object-fit:cover;min-width:0}
.overview-caption{display:block;padding:11px 0;font-size:9px;letter-spacing:.1em;color:#70665a;transition:transform 650ms var(--editorial-ease)}
.overview-block:hover .overview-caption{transform:translateX(4px)}
.overview-foot{border-top:1px solid var(--line);margin-top:23px;padding-top:14px;font-size:10px;letter-spacing:.15em;display:flex;justify-content:space-between;color:#7d7265}
.overview-foot span{letter-spacing:.06em}
.asset-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;align-items:start;min-width:0}
.gallery-card{min-width:0;position:relative}
.media-frame{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;overflow:hidden;text-align:left;isolation:isolate}
.media-visual{display:block;width:100%;height:100%;transition:transform 700ms var(--editorial-ease)}
.media-visual img{width:100%;height:100%;object-fit:cover}
.gallery-card>.media-frame{height:clamp(220px,37vh,410px)}
.gallery-card figcaption{padding:11px 0 0}
.gallery-card h3{font:500 17px/1.4 var(--serif);margin:0 0 6px}
.gallery-card figcaption p{font-size:11px;color:#736a60;line-height:1.75;margin:0}
.media-hint{position:absolute;right:10px;bottom:10px;background:#f5f1e9ed;color:#4c4236;padding:7px 10px;font-size:10px;opacity:0;transform:translateY(8px);transition:opacity 500ms var(--editorial-ease),transform 500ms var(--editorial-ease)}
.media-frame:hover .media-hint,.media-frame:focus-visible .media-hint{opacity:1;transform:none}
.garment-gallery{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.garment-gallery .media-frame img{object-fit:contain}
.garment-gallery>.gallery-card:only-child>.media-frame{height:min(46vh,470px)}
.garment-gallery .gallery-card h3{font-size:15px}
.garment-gallery .gallery-card:last-child:not(:first-child):nth-child(3){grid-column:1/-1;display:grid;grid-template-columns:35% 1fr;gap:14px;align-items:center}
.garment-gallery .gallery-card:nth-child(3)>.media-frame{height:120px}
.model-chapter .model-layout{grid-template-columns:30% minmax(0,1fr) 27%;gap:28px;align-items:start}
.model-chapter .model-layout>figure{height:min(45vh,460px)}
.model-chapter .model-copy{padding:0}
.model-chapter .model-copy .small-tabs{margin-bottom:12px}
.model-chapter .model-copy h2{font-size:clamp(1.4rem,2.5vw,2.5rem);margin:12px 0}
.model-chapter .model-copy h2 br{display:none}
.model-chapter .model-copy p{margin:0 0 12px}
.model-gallery{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:16px}
.model-gallery .gallery-card>.media-frame{height:clamp(160px,23vh,230px)}
.model-gallery .gallery-card:only-child>.media-frame{height:min(45vh,460px)}
.model-gallery .gallery-card:only-child>.media-frame img{object-fit:contain}
.model-layout .gallery-card{height:auto;background:transparent}
.life-gallery{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px}
.life-gallery>.gallery-card:only-child{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:32px;max-width:1030px;align-items:center}
.life-gallery>.gallery-card:only-child>.media-frame{grid-row:1/3;height:min(48vh,500px)}
.life-gallery>.gallery-card:only-child>.media-frame img{object-fit:contain}
.life-gallery>.gallery-card:only-child h3{font-size:clamp(1.8rem,3vw,3rem)}
.life-gallery>.gallery-card:only-child figcaption p{font-size:13px;line-height:1.85}
.gallery-references{border-top:1px solid var(--line);padding-top:11px;margin-top:15px;font-size:11px;color:#6f6254}
.gallery-references summary{cursor:pointer;line-height:1.8}
.gallery-references[open] .reference-strip{animation:editorial-fade 500ms var(--editorial-ease)}
.reference-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.reference-thumb{padding:0;background:transparent;border:1px solid #928473;width:64px;height:85px;overflow:hidden}
.reference-thumb img{width:100%;height:100%;object-fit:cover}
.gallery-tail{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:23px;padding-top:13px;font-size:11px;color:#786d60}
.lightbox{position:fixed;inset:0;width:94vw;max-width:1500px;height:91svh;max-height:1000px;padding:20px 26px;background:#eeeae3;color:var(--ink);border:1px solid #b1a594;overflow:auto}
.lightbox::backdrop{background:#181815dd}
.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.12em;border-bottom:1px solid var(--line);padding-bottom:12px}
.lightbox-toolbar button{background:none;border:0;font-size:12px}
.lightbox-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:32px;margin-top:18px;align-items:center}
.lightbox-picture{position:relative;height:calc(91svh - 110px);max-height:860px;display:flex;align-items:center;justify-content:center;min-width:0}
#lightbox-image{max-width:100%;max-height:100%;height:auto;width:auto;object-fit:contain;transform-origin:top left}
.lightbox-picture>button{position:absolute;top:50%;border:1px solid #aaa08f;background:#eee9e0ed;width:36px;height:40px;font-size:20px;z-index:1}
#lightbox-prev{left:0}#lightbox-next{right:0}
.lightbox aside small{font-size:10px;letter-spacing:.12em;color:#81715c}
.lightbox aside h2{font:500 28px/1.4 var(--serif);margin:18px 0}
.lightbox aside p{font-size:12px;line-height:1.85;color:#73685b}
.shot-list{gap:7px}
.shot-list button{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr;grid-template-rows:68px auto auto;align-content:start;padding:7px;gap:3px 5px;min-width:0}
.shot-list button:not(:has(img)):not(:has(video)){grid-template-rows:auto auto}
.shot-list button img,.shot-list button video{grid-column:1/-1;grid-row:1;width:100%;height:68px;object-fit:cover}
.shot-list button video{position:relative;z-index:1;opacity:0;transition:opacity 500ms var(--editorial-ease)}
.shot-list button:hover video,.shot-list button[aria-pressed=true] video{opacity:1}
.shot-list button b{grid-column:1;grid-row:auto;font-size:11px}
.shot-list button>span{font-size:10px;align-self:center}
.shot-list button small{grid-column:1/-1;font-size:9px;line-height:1.5}
.video-preview{height:min(43vh,415px)}
.video-preview video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.video-preview:has(video:not([hidden])) .shot-overlay{display:none}
.video-preview{background:#d6cfc4}
.slide:has(.video-layout) .heading h1{font-size:clamp(2.5rem,4.4vw,4.6rem)}
.slide:has(.video-layout) .heading{margin-bottom:23px}
.selected-shot textarea{height:90px;min-height:70px}
.video-local video{max-height:170px}
.video-preview:has(img[hidden]):before{content:none}
.video-preview:has(img[hidden]):not(:has(video:not([hidden]))){background:transparent;border:1px solid var(--line)}
.cover-copy>p{min-width:0;overflow-wrap:anywhere;word-break:normal}
.cover-copy>p:not(.kicker){max-width:100%}
@media(max-width:1300px) and (min-width:1101px){.topbar{gap:14px;padding-inline:25px}.chapters{gap:13px}.top-actions{gap:12px}.top-actions a{font-size:10px}}
@media(max-width:1100px){.overview-grid{gap:12px}.overview-label{align-items:start;flex-direction:column;gap:5px}.lightbox-layout{grid-template-columns:minmax(0,1fr) 210px;gap:20px}}
@media(max-width:760px){
  .cover-copy{width:100%;max-width:100%;padding:27px 20px 24px}
  .cover-copy>p:not(.kicker){font-size:13px;line-height:1.85;margin:18px 0;white-space:normal;width:100%}
  .cover-photo{background:transparent;width:100%;height:auto;aspect-ratio:2/3}
  .cover-photo img{height:100%;width:100%;object-fit:cover;object-position:center}
  .overview-heading h1{font-size:1.9rem;line-height:1.3}.overview .heading{margin-bottom:16px}
  .overview-life .media-visual img{object-fit:contain}
  .overview-grid{grid-template-columns:1fr 1fr;gap:16px 12px}
  .overview-model,.overview-life,.overview-shot{margin-top:0}
  .overview-pictures,.overview-model .overview-pictures,.overview-garment .overview-pictures{height:145px}
  .overview-model{margin-top:10px}.overview-shot{margin-top:10px}
  .overview-label{flex-direction:row;align-items:center;flex-wrap:wrap}
  .overview-caption{font-size:8px;letter-spacing:.02em}
  .overview-foot{line-height:1.6;flex-direction:column;gap:4px;margin-top:10px;padding-top:10px}
  .garment-gallery{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
  .garment-gallery .gallery-card>.media-frame{height:260px}
  .model-chapter .model-layout{grid-template-columns:1fr}
  .model-chapter .model-layout figure{height:36vh}
  .model-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
  .model-gallery .gallery-card:only-child{grid-column:1/-1}
  .model-gallery .gallery-card:only-child{max-width:none}
  .model-gallery .gallery-card>.media-frame{height:230px}
  .model-gallery .gallery-card:only-child>.media-frame{height:400px}
  .life-gallery{grid-template-columns:1fr}
  .life-gallery>.gallery-card:only-child{display:block}
  .life-gallery .gallery-card>.media-frame,.life-gallery>.gallery-card:only-child>.media-frame{height:430px}
  .gallery-card h3{font-size:17px}
  .gallery-tail{gap:15px;line-height:1.7}
  .lightbox{width:96vw;height:94svh;padding:15px}
  .lightbox-layout{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-top:12px}
  .lightbox-picture{height:52svh}
  .lightbox aside h2{font-size:23px;margin:10px 0}
  .lightbox aside small{font-size:9px}
  .lightbox .reference-thumb{height:65px;width:48px}
  .shot-list button small{font-size:9px}
}
@media(hover:none){.media-hint{opacity:1;transform:none}}
[data-motion=off] [data-reveal]{opacity:1;clip-path:none;transform:none;animation:none!important}
[data-motion=off] .type-char,[data-motion=off] .media-visual,[data-motion=off] .media-visual img{opacity:1;transform:none!important;animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  [data-reveal]{opacity:1;clip-path:none;transform:none}.type-char,.media-visual{opacity:1;transform:none!important}
}

/* Task 6: real line breaks, bounded tracks, and an identity-to-motion story. */
[data-type]{line-break:strict;word-break:normal;overflow-wrap:normal;text-wrap:pretty}
.type-char{white-space:pre;max-width:100%;vertical-align:baseline}
.slide :where(div,article,aside,figure,button,span,p,h1,h2,h3,label,form){min-width:0}
.slide :where(p,figcaption,small,label,.status,.button,.text-link){overflow-wrap:anywhere}
.task-tabs,.small-tabs{flex-wrap:wrap}
.task-tabs button,.small-tabs button{flex:1 1 auto;padding-inline:14px;white-space:normal}
.actions>.button{max-width:100%;flex-wrap:wrap}
.overview-label{width:100%;border:0;background:none;text-align:left;color:inherit;cursor:pointer}
.overview-block{cursor:pointer}
.overview-block .actual-video{height:100%;min-height:0}
.actual-video{position:relative;overflow:hidden;background:#c5bdb0;width:100%;height:100%}
.actual-video video{width:100%;height:100%;object-fit:cover;display:block}
.video-badge{position:absolute;z-index:2;left:10px;right:10px;bottom:10px;width:fit-content;max-width:calc(100% - 20px);background:#eeebe5ec;padding:6px 8px;color:#423b32;font-size:10px;line-height:1.5;overflow-wrap:anywhere;pointer-events:none}
.video-play{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #eee9df;background:#eeebe5ed;color:#322c25;padding:10px 16px;font-size:12px;white-space:nowrap}
.is-playing>.video-play{display:none}
.identity-story{display:grid;grid-template-columns:minmax(0,228px) minmax(0,340px) minmax(0,1fr);gap:26px;align-items:start}
#model-motion{height:405px}
#model-motion video{object-fit:contain}
.overview-shot video{object-position:center 15%}
.identity-crop{margin-top:38px}
#model-face{height:280px;overflow:hidden}
#model-face .media-frame{height:100%}
#model-face img{object-fit:cover;object-position:center 24%;width:100%;height:100%}
.identity-crop figcaption{font-size:10px;line-height:1.6;padding-top:10px;color:#736858}
.model-chapter .model-copy h2{font:500 clamp(1.4rem,2.4vw,2.6rem)/1.45 var(--serif);margin:13px 0}
.identity-sources{border-top:1px solid var(--line);padding-top:13px;margin:18px 0 9px}
.identity-sources>span{font-size:11px}
#identity-thumbs{display:flex;gap:9px;margin:10px 0}
#identity-thumbs .media-frame{width:46px;height:62px;flex:none}
#identity-thumbs img{object-fit:contain}
#identity-thumbs .media-hint{display:none}
.identity-sources p{font-size:10px;line-height:1.7}
.portrait-heading{border-top:1px solid var(--line);padding-top:17px;margin:27px 0 16px}
.model-gallery{grid-template-columns:repeat(5,minmax(0,1fr))}
.model-gallery .gallery-card>.media-frame{height:210px}
.shot-list button img,.shot-list button video{object-position:center 25%}
.shot-list button[data-shot="S04"] img,.shot-list button[data-shot="S04"] video{object-position:center 5%}
.shot-list .has-video video{opacity:1}
.shot-list .has-video small{font-size:9px}
.video-preview>.video-badge{top:10px;bottom:auto}
.face-layout{grid-template-columns:minmax(0,.7fr) minmax(0,1fr)}
.face-images{max-width:310px;align-self:start}
.face-images img{height:180px;object-fit:contain}
.reference-cards button:has(img[src$="model-master.png"]) img{width:104px;height:140px;object-fit:contain;align-self:center}
.qa-images img[src$="model-master.png"]{width:130px;height:175px;object-fit:contain}
.tryon-inputs img[src$="model-master.png"]{object-fit:contain}
.toast{max-width:calc(100vw - 24px);width:max-content;text-align:center;overflow-wrap:anywhere}
@media(max-width:760px){
  .heading h1,.cover h1,.closing h1,.overview-heading h1,.slide:has(.video-layout) .heading h1{font-size:clamp(1.85rem,8.8vw,3.6rem);line-height:1.3}
  .heading h1 em{display:block}
  .heading>p:last-child{max-width:100%;line-height:1.8}
  .reference-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .reference-cards img{height:160px}
  .reference-cards button:has(img[src$="model-master.png"]) img{width:65px;height:100px}
  .garment-gallery{grid-template-columns:repeat(auto-fit,minmax(min(130px,100%),1fr))}
  .identity-story{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:12px}
  #model-motion{height:290px}
  .identity-crop{margin-top:28px}
  #model-face{height:190px}
  .identity-story>.model-copy{grid-column:1/-1;padding:6px 0 0}
  .identity-story>.model-copy h2{font-size:1.55rem;margin:8px 0}
  .identity-story>.model-copy h2 br{display:none}
  .identity-sources{display:grid;grid-template-columns:60px 1fr;align-items:center;gap:0 12px;margin-top:15px}
  #identity-thumbs{grid-column:2;grid-row:1/3;margin:0}
  .identity-sources p{grid-column:1/-1;margin:9px 0 0}
  .model-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .model-gallery .gallery-card>.media-frame{height:210px}
  .model-gallery .gallery-card:only-child>.media-frame{height:260px}
  .video-badge{left:6px;right:6px;bottom:6px;max-width:calc(100% - 12px);font-size:8px;padding:4px 5px}
  .overview .video-badge{font-size:7px}
  .overview-label b,.overview-label small{white-space:normal}
  .face-layout{grid-template-columns:1fr}
  .face-images{max-width:250px}.face-images img{height:140px}
  .shot-list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .shot-list button{padding:5px;column-gap:3px}
  .shot-list button>span{font-size:9px}
  .shot-meta{flex-wrap:wrap;line-height:1.6}
  .workflow form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .flow-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .flow-steps button{padding:12px;font-size:11px}
  .button{gap:10px;padding-inline:13px}
}
