/* ---- base reset (replaces the Tailwind preflight the original build shipped) ---- */
*,::before,::after{box-sizing:border-box;border:0 solid}
html{-webkit-text-size-adjust:100%;line-height:1.5}
img,video,svg{display:block;max-width:100%;height:auto}
button,input,textarea,select{font:inherit;color:inherit;background:none;border:0;padding:0;margin:0}
button{cursor:pointer}
ol,ul{list-style:none;margin:0;padding:0}
a{color:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
figure,figcaption,h1,h2,h3,h4,p{margin:0}
textarea{resize:vertical}
::placeholder{color:inherit;opacity:.55}

/* ---- board styles (ported from the original build) ---- */
:root{--teal:#58b39f;--navy:#1d2540;--red:#f44725;--yellow:#ffc21b;--soft:#f5f5f3;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--navy);background:var(--soft);margin:0;font:16px Arial,Helvetica,sans-serif}button,input{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.025em;font-family:Impact,Arial Narrow,Arial,sans-serif;font-weight:500;line-height:.88}.wrap{width:min(1240px,100% - 48px);margin:auto}.eyebrow{color:var(--red);letter-spacing:.04em;font:800 12px Arial Narrow,Arial,sans-serif}.masthead{z-index:20;background:var(--teal);border-bottom:2px solid var(--navy);position:sticky;top:0}.masthead>div{align-items:center;gap:9px;width:min(1240px,100% - 48px);height:58px;margin:auto;font:800 12px Arial Narrow,Arial,sans-serif;display:flex}.masthead i{color:var(--red);font-size:20px}.masthead nav{height:58px;margin-left:auto;display:flex}.masthead nav a,.masthead nav span{color:var(--navy);border-left:1px solid #1d254055;place-items:center;padding:0 15px;font-size:10px;text-decoration:none;display:grid}.masthead nav a:hover,.masthead nav a.active{background:var(--yellow)}.masthead nav span{opacity:.45}.project-hero{background:var(--white);border-bottom:2px solid var(--navy);padding:70px 0 0;overflow:hidden}.project-hero h1{letter-spacing:-.035em;margin:18px 0 50px;font-size:clamp(78px,13vw,190px);line-height:.9}.project-hero h1 em{color:var(--red);font-style:normal}.overview-grid{grid-template-columns:1.05fr 1.25fr .82fr;align-items:start;gap:42px;padding-bottom:54px;display:grid}.overview-lead{letter-spacing:-.025em;font-size:clamp(25px,2.5vw,38px);font-weight:700;line-height:1.05}.overview-copy{gap:16px;font-size:17px;line-height:1.42;display:grid}.overview-grid aside{border:2px solid var(--navy);background:var(--yellow);padding:18px}.overview-grid aside b{color:var(--red);margin-bottom:11px;font:800 12px Arial Narrow,Arial,sans-serif;display:block}.overview-grid aside p{font-size:15px;font-weight:700;line-height:1.35}.project-meta{border:2px solid var(--navy);border-bottom:0;grid-template-columns:repeat(3,1fr);display:grid}.project-meta span{border-right:2px solid var(--navy);align-items:center;gap:12px;min-height:68px;padding:15px 17px;font:700 12px/1.25 Arial Narrow,Arial,sans-serif;display:flex}.project-meta span:last-child{border-right:0}.project-meta b{color:var(--red)}.music-section{background:var(--teal);border-bottom:2px solid var(--navy);padding:92px 0 100px}.section-heading{max-width:910px;margin-bottom:40px}.section-heading h2{margin:14px 0 22px;font-size:clamp(52px,7.4vw,104px)}.section-heading h2 em{color:var(--yellow);font-style:normal}.section-heading p{max-width:780px;font-size:18px;line-height:1.42}.track-list{border-top:2px solid var(--navy)}.track-list article{border-bottom:2px solid var(--navy);grid-template-columns:58px 44px minmax(230px,.9fr) 1.2fr 176px;align-items:center;gap:20px;min-height:142px;padding:20px 0;transition:background .18s,padding .18s;display:grid}.track-play{border:2px solid var(--navy);background:var(--white);width:52px;height:52px;color:var(--navy);cursor:pointer;border-radius:50%;place-items:center;display:grid}.track-play:hover{background:var(--red);color:#fff}.track-play span{font-size:17px;transform:translate(1px)}.track-number{color:var(--red);font:800 13px Arial Narrow,Arial,sans-serif}.track-title>span{color:var(--red);font:800 10px Arial Narrow,Arial,sans-serif}.track-title h3{margin:7px 0 6px;font-size:clamp(28px,3vw,43px)}.track-title p{font:800 11px/1.2 Arial Narrow,Arial,sans-serif}.track-note{max-width:460px;font-size:14px;line-height:1.36}.track-select{border:2px solid var(--navy);min-height:43px;color:var(--navy);cursor:pointer;background:0 0;padding:10px 12px;font:800 11px Arial Narrow,Arial,sans-serif}.track-select:hover,.is-selected .track-select{background:var(--navy);color:#fff}.selection-note{background:var(--navy);color:#fff;justify-content:space-between;gap:20px;padding:18px 20px;display:flex}.selection-note b{color:var(--yellow);font:800 11px Arial Narrow,Arial,sans-serif}.selection-note span{text-align:right;font:800 11px Arial Narrow,Arial,sans-serif}.storyboard-section{background:var(--navy);color:#fff;padding:96px 0 110px;scroll-margin-top:58px}.storyboard-heading{grid-template-columns:1fr 1fr;align-items:end;gap:28px 60px;margin-bottom:46px;display:grid}.storyboard-heading>.eyebrow{color:var(--yellow);grid-column:1/-1}.storyboard-heading h2{font-size:clamp(55px,7.8vw,108px)}.storyboard-heading h2 em{color:var(--yellow);font-style:normal}.storyboard-heading>div{color:#edf0f4;gap:16px;max-width:520px;padding-bottom:7px;font-size:17px;line-height:1.4;display:grid}.story-spine{z-index:10;background:var(--navy);border:2px solid #fff;grid-template-columns:repeat(7,1fr);margin-bottom:54px;display:grid;position:sticky;top:58px}.story-spine a{color:#fff;border-right:1px solid #fff8;grid-template-rows:1fr auto;grid-template-columns:auto 1fr;gap:4px 8px;min-height:84px;padding:12px;text-decoration:none;display:grid}.story-spine a:last-child{border-right:0}.story-spine a:hover{background:var(--yellow);color:var(--navy)}.story-spine b{color:var(--yellow);font:800 12px Arial Narrow,Arial,sans-serif}.story-spine a:hover b{color:var(--red)}.story-spine span{font:800 11px/1.1 Arial Narrow,Arial,sans-serif}.story-spine small{opacity:.65;grid-column:2;font:800 9px Arial Narrow,Arial,sans-serif}.scene-list{border-top:2px solid #fff}.scene{border-bottom:2px solid #fff;grid-template-columns:minmax(320px,.9fr) 1.5fr;min-height:640px;scroll-margin-top:160px;display:grid}.scene-copy{flex-direction:column;padding:36px 40px 42px 0;display:flex}.scene-index{justify-content:space-between;align-items:center;margin-bottom:40px;display:flex}.scene-index b{color:var(--yellow);font:500 clamp(38px,4vw,58px) Impact,Arial Narrow,Arial,sans-serif}.scene-index span,.scene-location{color:var(--yellow);font:800 11px Arial Narrow,Arial,sans-serif}.scene-copy h3{color:#fff;margin:12px 0 22px;font-size:clamp(48px,5.6vw,80px)}.scene-story{max-width:480px;font-size:21px;font-weight:700;line-height:1.25}.scene-direction{border-top:1px solid #fff8;margin:30px 0 20px;padding-top:15px}.scene-direction b{color:var(--yellow);margin-bottom:8px;font:800 11px Arial Narrow,Arial,sans-serif;display:block}.scene-direction p{color:#e5e8ef;max-width:500px;font-size:15px;line-height:1.4}.scene-copy ol{counter-reset:shot;grid-template-columns:repeat(2,1fr);gap:6px 18px;margin:0 0 28px;padding:0;list-style:none;display:grid}.scene-copy li{counter-increment:shot;color:#f0f1f4;border-top:1px solid #fff5;padding-top:7px;font-size:13px;line-height:1.25}.scene-copy li:before{content:counter(shot, decimal-leading-zero) " / ";color:var(--yellow);font:800 10px Arial Narrow,Arial,sans-serif}.scene-review{border-top:2px solid #fff;margin-top:auto;padding-top:20px}.scene-review>span{color:var(--yellow);margin-bottom:9px;font:800 11px Arial Narrow,Arial,sans-serif;display:block}.scene-review>div{gap:7px;margin-bottom:9px;display:flex}.scene-review button{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff;min-height:35px;padding:7px 10px;font:800 10px Arial Narrow,Arial,sans-serif}.scene-review button:hover,.scene-review button.like{background:var(--teal);color:var(--navy)}.scene-review button.work{background:var(--red);color:#fff}.scene-review textarea{resize:vertical;color:#fff;background:#ffffff10;border:1px solid #fffa;width:100%;min-height:58px;padding:10px;font:14px/1.35 Arial,sans-serif}.scene-review textarea::placeholder{color:#fff9}.scene-frames{flex-direction:column;align-self:start;gap:8px;padding:36px 0 36px 36px;display:flex}.scene-frames button{cursor:zoom-in;background:#0f1426;border:0;width:100%;padding:0;position:relative;overflow:hidden}.scene-frames img{object-fit:contain;width:100%;height:auto;transition:transform .35s,opacity .35s;display:block}.scene-frames button:hover img{opacity:.82;transform:scale(1.025)}.scene-frames button>span{background:var(--yellow);color:var(--navy);padding:7px 9px;font:800 9px Arial Narrow,Arial,sans-serif;transition:transform .2s;position:absolute;bottom:0;left:0;transform:translateY(100%)}.scene-frames button:hover>span{transform:translateY(0)}.lightbox{z-index:60;color:#fff;background:#0d1222f5;grid-template-columns:58px minmax(0,1.5fr) minmax(280px,.55fr) 58px;align-items:center;gap:20px;padding:72px 28px 28px;display:grid;position:fixed;inset:0}.lightbox-close{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff;padding:9px 13px;font:800 11px Arial Narrow,Arial,sans-serif;position:absolute;top:22px;right:28px}.lightbox-close:hover{background:var(--red)}.lightbox-arrow{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff;border-radius:50%;width:52px;height:52px;font-size:22px}.lightbox-arrow:hover{background:var(--yellow);color:var(--navy)}.lightbox-image{background:#000;height:min(76vh,760px);position:relative}.lightbox-image img{object-fit:contain;width:100%;height:100%;display:block}.lightbox-image>span{background:var(--yellow);color:var(--navy);padding:8px 11px;font:800 10px Arial Narrow,Arial,sans-serif;position:absolute;bottom:0;left:0}.lightbox aside{border:1px solid #fff7;flex-direction:column;justify-content:center;align-self:stretch;padding:30px;display:flex}.lightbox aside>span{color:var(--yellow);font:800 11px/1.25 Arial Narrow,Arial,sans-serif}.lightbox aside h3{margin:18px 0 22px;font-size:clamp(42px,4.8vw,72px)}.lightbox aside>p{font-size:18px;font-weight:700;line-height:1.3}.lightbox aside>div{border-top:1px solid #fff7;margin-top:26px;padding-top:18px}.lightbox aside b{color:var(--yellow);margin-bottom:8px;font:800 10px Arial Narrow,Arial,sans-serif;display:block}.lightbox aside div p{color:#e5e8ef;font-size:14px;line-height:1.4}.treatment-section{background:var(--soft);border-bottom:2px solid var(--navy);padding:100px 0 110px;scroll-margin-top:58px}.treatment-heading{grid-template-columns:1.15fr .85fr;align-items:end;gap:28px 70px;margin-bottom:54px;display:grid}.treatment-heading>.eyebrow{grid-column:1/-1}.treatment-heading h2{font-size:clamp(58px,8vw,112px)}.treatment-heading h2 em,.motion-chapter h3 em,.journal-layer h3 em{color:var(--red);font-style:normal}.treatment-heading>div{gap:16px;max-width:520px;padding-bottom:7px;font-size:17px;line-height:1.42;display:grid}.treatment-rules{border:2px solid var(--navy);grid-template-columns:repeat(4,1fr);margin-bottom:100px;display:grid}.treatment-rules article{border-right:2px solid var(--navy);flex-direction:column;min-height:310px;padding:18px;display:flex}.treatment-rules article:last-child{border-right:0}.treatment-rules b{color:var(--red);font:800 11px Arial Narrow,Arial,sans-serif}.treatment-rules h3{margin:38px 0 18px;font-size:clamp(30px,3vw,43px)}.treatment-rules p{margin-top:auto;font-size:14px;line-height:1.38}.motion-chapter{margin-bottom:100px}.motion-chapter>header{grid-template-columns:1fr .9fr;align-items:end;gap:12px 70px;margin-bottom:28px;display:grid}.motion-chapter>header>span,.journal-layer header>span,.grade-direction span,.treatment-review span{color:var(--red);grid-column:1/-1;font:800 11px Arial Narrow,Arial,sans-serif}.motion-chapter>header h3,.journal-layer header h3{font-size:clamp(48px,6.3vw,86px)}.motion-chapter>header p,.journal-layer header p{max-width:520px;padding-bottom:6px;font-size:17px;line-height:1.42}.spatial-grid{grid-template-rows:1fr 1fr;grid-template-columns:1.35fr .65fr;gap:8px;display:grid}.spatial-grid article{background:var(--navy);color:#fff;min-height:280px;position:relative;overflow:hidden}.spatial-grid article:first-child{grid-row:1/-1;min-height:570px}.spatial-grid video{object-fit:cover;width:100%;height:100%;display:block}.spatial-grid article>div{background:linear-gradient(#0000,#0e1426e8);padding:42px 18px 18px;position:absolute;inset:auto 0 0}.spatial-grid article>div span{color:var(--yellow);font:800 10px Arial Narrow,Arial,sans-serif}.spatial-grid h4{letter-spacing:-.02em;margin:7px 0 5px;font:500 clamp(24px,3vw,38px)/.92 Impact,Arial Narrow,Arial,sans-serif}.spatial-grid p{color:#eef0f4;max-width:520px;font-size:13px;line-height:1.34}.insert-grid{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.insert-grid article{background:var(--navy);min-height:240px;position:relative;overflow:hidden}.insert-grid article:first-child,.insert-grid article:nth-child(2){grid-column:span 3;min-height:360px}.insert-grid article:nth-child(n+3){grid-column:span 2}.insert-grid video{object-fit:cover;width:100%;height:100%;display:block}.insert-grid span{background:var(--yellow);color:var(--navy);padding:8px 10px;font:800 9px Arial Narrow,Arial,sans-serif;position:absolute;bottom:0;left:0}.journal-layer{border-block:2px solid var(--navy);margin-bottom:100px;padding:72px 0}.journal-layer>header{grid-template-columns:1fr .9fr;align-items:end;gap:12px 70px;margin-bottom:28px;display:grid}.texture-collage{grid-template-columns:repeat(12,1fr);grid-auto-rows:130px;gap:8px;display:grid}.texture-collage figure{background:var(--navy);margin:0;position:relative;overflow:hidden}.texture-collage figure:first-child{grid-area:span 3/span 5}.texture-collage figure:nth-child(2){grid-area:span 2/span 4}.texture-collage figure:nth-child(3),.texture-collage figure:nth-child(4){grid-area:span 2/span 3}.texture-collage figure:nth-child(5){grid-area:span 2/span 4}.texture-collage img{object-fit:cover;width:100%;height:100%;display:block}.texture-collage figcaption{background:var(--red);color:#fff;padding:7px 9px;font:800 9px Arial Narrow,Arial,sans-serif;position:absolute;bottom:0;left:0}.grade-direction{grid-template-columns:.75fr 1.25fr;gap:32px 70px;margin-bottom:100px;display:grid}.grade-direction>div:first-child span{margin-bottom:15px;display:block}.grade-direction h3{font-size:clamp(46px,5.5vw,76px)}.grade-direction>p{grid-column:2;max-width:650px;font-size:17px;line-height:1.42}.grade-swatches{border:2px solid var(--navy);grid-template-columns:repeat(4,1fr);display:grid}.grade-swatches span{border-right:2px solid var(--navy);min-height:220px;color:var(--navy);flex-direction:column;padding:10px;display:flex}.grade-swatches span:last-child{border-right:0}.grade-swatches i{background:#8fa4b1;flex:1;margin:-10px -10px 12px;display:block}.grade-swatches span:nth-child(2) i{background:#d7c3a1}.grade-swatches span:nth-child(3) i{background:#c56d3c}.grade-swatches span:nth-child(4) i{background:#344e6c}.grade-swatches b{font:800 10px/1.2 Arial Narrow,Arial,sans-serif}.grade-swatches small{opacity:.7;margin-top:4px;font:800 9px/1.2 Arial Narrow,Arial,sans-serif}.treatment-review{background:var(--yellow);border:2px solid var(--navy);grid-template-columns:1fr 1fr;gap:60px;padding:48px;display:grid}.treatment-review h3{margin-top:12px;font-size:clamp(45px,5.5vw,76px)}.treatment-review-buttons{gap:8px;margin-bottom:10px;display:flex}.treatment-review button{border:2px solid var(--navy);min-height:40px;color:var(--navy);cursor:pointer;background:0 0;padding:9px 13px;font:800 11px Arial Narrow,Arial,sans-serif}.treatment-review button:hover,.treatment-review button.like{background:var(--teal)}.treatment-review button.work{background:var(--red);color:#fff}.treatment-review textarea{resize:vertical;border:2px solid var(--navy);width:100%;min-height:150px;color:var(--navy);background:#fff;padding:13px;font:15px/1.38 Arial,sans-serif}.next-section{background:var(--navy);color:#fff;align-items:center;min-height:48vh;padding:70px 0;display:grid}.next-section span{color:var(--yellow);font:800 12px Arial Narrow,Arial,sans-serif}.next-section h2{color:var(--yellow);margin:14px 0 18px;font-size:clamp(64px,12vw,170px)}.next-section p{max-width:530px;font-size:18px;line-height:1.38}.has-player{padding-bottom:92px}.persistent-player{z-index:30;background:var(--yellow);border-top:2px solid var(--navy);grid-template-columns:58px minmax(250px,.7fr) 1fr 142px;align-items:center;gap:20px;min-height:92px;padding:13px max(24px,50vw - 620px);display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -10px 30px #1d254022}.player-toggle{border:2px solid var(--navy);background:var(--red);color:#fff;cursor:pointer;border-radius:50%;width:52px;height:52px}.player-track{gap:2px;min-width:0;display:grid}.player-track span{color:var(--red);font:800 9px Arial Narrow,Arial,sans-serif}.player-track b{white-space:nowrap;text-overflow:ellipsis;font:800 15px Arial Narrow,Arial,sans-serif;overflow:hidden}.player-track small{white-space:nowrap;text-overflow:ellipsis;font:800 10px Arial Narrow,Arial,sans-serif;overflow:hidden}.player-progress{grid-template-columns:36px 1fr 36px;align-items:center;gap:10px;font:800 10px Arial Narrow,Arial,sans-serif;display:grid}.player-progress input{width:100%;accent-color:var(--red);cursor:pointer}.player-select{border:2px solid var(--navy);min-height:40px;color:var(--navy);cursor:pointer;background:0 0;font:800 10px Arial Narrow,Arial,sans-serif}.player-select:hover,.player-select.selected{background:var(--navy);color:#fff}@media (width<=900px){.overview-grid{grid-template-columns:1fr 1fr}.overview-grid aside{grid-column:1/-1}.track-list article{grid-template-columns:52px 32px 1fr 150px}.track-note{grid-column:3/-1}.storyboard-heading{grid-template-columns:1fr}.storyboard-heading>.eyebrow{grid-column:auto}.story-spine{grid-template-columns:repeat(7,minmax(145px,1fr));overflow-x:auto}.scene{grid-template-columns:1fr}.scene-copy{min-height:620px;padding-right:0}.scene-frames{padding:0 0 36px}.lightbox{grid-template-columns:46px 1fr 46px}.lightbox aside{grid-column:2;padding:20px}.lightbox-image{height:56vh}.treatment-heading,.motion-chapter>header,.journal-layer>header{grid-template-columns:1fr}.treatment-heading>.eyebrow,.motion-chapter>header>span{grid-column:auto}.treatment-rules{grid-template-columns:repeat(2,1fr)}.treatment-rules article:nth-child(2){border-right:0}.treatment-rules article:nth-child(-n+2){border-bottom:2px solid var(--navy)}.spatial-grid{grid-template-rows:auto;grid-template-columns:1fr}.spatial-grid article:first-child{grid-row:auto}.grade-direction{grid-template-columns:1fr}.grade-direction>p{grid-column:auto}.treatment-review{grid-template-columns:1fr}.persistent-player{grid-template-columns:52px 1fr 110px}.player-progress{grid-column:2/-1}}@media (width<=640px){.wrap,.masthead>div{width:min(100% - 28px,1240px)}.masthead>div{font-size:9px}.masthead nav span{display:none}.masthead nav a{padding:0 8px;font-size:8px}.project-hero{padding-top:48px}.project-hero h1{margin-bottom:36px;font-size:clamp(64px,24vw,108px)}.overview-grid{grid-template-columns:1fr;gap:28px}.overview-grid aside{grid-column:auto}.project-meta{grid-template-columns:1fr;margin-inline:-14px}.project-meta span{border-right:0;border-bottom:2px solid var(--navy);min-height:54px}.project-meta span:last-child{border-bottom:0}.music-section{padding:62px 0 76px}.section-heading h2{font-size:clamp(46px,17vw,76px)}.track-list article{grid-template-columns:52px 1fr;gap:14px;padding:20px 0}.track-number{display:none}.track-title,.track-note,.track-select{grid-column:2}.track-note{font-size:15px}.track-select{width:100%}.selection-note{flex-direction:column}.selection-note span{text-align:left}.storyboard-section{padding:64px 0 76px}.story-spine{margin-inline:-14px;top:58px}.scene{scroll-margin-top:150px}.scene-copy{min-height:0;padding:32px 0}.scene-copy ol{grid-template-columns:1fr}.scene-frames{height:auto}.lightbox{grid-template-columns:42px 1fr 42px;gap:6px;padding:64px 8px 14px;overflow-y:auto}.lightbox-image{height:46vh}.lightbox aside{padding:16px}.lightbox aside h3{font-size:42px}.lightbox aside>p{font-size:16px}.lightbox-arrow{width:40px;height:40px}.lightbox-close{top:12px;right:10px}.treatment-section{padding:66px 0 76px}.treatment-heading{margin-bottom:38px}.treatment-rules{grid-template-columns:1fr;margin-bottom:70px}.treatment-rules article{border-right:0;border-bottom:2px solid var(--navy);min-height:240px}.treatment-rules article:last-child{border-bottom:0}.motion-chapter,.journal-layer,.grade-direction{margin-bottom:70px}.spatial-grid article,.spatial-grid article:first-child{min-height:360px}.insert-grid{grid-template-columns:1fr}.insert-grid article:nth-child(n){grid-column:auto;min-height:280px}.texture-collage{grid-template-columns:1fr 1fr;grid-auto-rows:190px}.texture-collage figure:nth-child(n){grid-area:auto}.texture-collage figure:first-child{grid-column:1/-1}.grade-swatches{grid-template-columns:1fr 1fr}.grade-swatches span:nth-child(2){border-right:0}.grade-swatches span:nth-child(-n+2){border-bottom:2px solid var(--navy)}.treatment-review{gap:30px;padding:24px}.persistent-player{grid-template-columns:48px 1fr 100px;gap:12px;min-height:112px;padding:10px 14px}.player-toggle{width:46px;height:46px}.player-progress{grid-column:1/-1}.has-player{padding-bottom:112px}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-scroll-snap-strictness{syntax:"*";inherits:false;initial-value:proximity}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}


/* ============================================================
   padding-fix.css — text padding pass for the local clone.
   Loaded AFTER index-Daxm14gy.css so every rule here wins.
   Original values are noted in comments so they can be tuned.
   ============================================================ */

/* 1. Small screens: side gutter 14px -> 20px so copy no longer hugs the screen edge.
      Full-bleed strips keep the same negative margin so their inner text stays padded. */
@media (width<=640px){
  .wrap{width:min(100% - 40px,1240px)}                 /* was 100% - 28px; masthead bar keeps 14px so its brand still fits */
  .project-meta,.story-spine{margin-inline:-20px}      /* was -14px */
  .scene-copy{padding:36px 0}                          /* was 32px 0 */
  .lightbox{padding:64px 14px 20px}                    /* was 64px 8px 14px */
  .lightbox aside{padding:20px}                        /* was 16px */
}

/* 2. Display headings use Impact at line-height .77-.88, which eats most of the
      margin above them. Give eyebrows / titles room to breathe. */
.project-hero h1{margin-top:28px}        /* was 18px */
.section-heading h2{margin-top:22px}     /* was 14px */
.scene-copy h3{margin-top:16px}          /* was 12px */
.lightbox aside h3{margin-top:22px}      /* was 18px */
.treatment-rules h3{margin:38px 0 22px}  /* was 38px 0 18px */
.next-section h2{margin-top:20px}        /* was 14px */

/* 3. Text inside bordered / filled boxes: minimum ~16px, cards 24px. */
.overview-grid aside{padding:24px}                 /* was 18px */
.project-meta span{padding:16px 20px}              /* was 15px 17px */
.selection-note{padding:20px 24px}                 /* was 18px 20px */
.story-spine a{padding:14px}                       /* was 12px */
.treatment-rules article{padding:24px}             /* was 18px */
.grade-swatches span{padding:14px}                 /* was 10px */
.grade-swatches i{margin:-14px -14px 14px}         /* was -10px -10px 12px (must match the padding above) */
.lightbox aside{padding:32px}                      /* was 30px */
.treatment-review{padding:56px}                    /* was 48px */
.persistent-player{padding-block:16px}             /* was 13px */

/* 4. Form controls and buttons that hold text. */
.scene-review textarea{padding:12px 14px}          /* was 10px */
.treatment-review textarea{padding:14px 16px}      /* was 13px */
.scene-review button{padding:8px 12px}             /* was 7px 10px */
.track-select{padding:10px 16px}                   /* was 10px 12px */
.treatment-review button{padding:9px 16px}         /* was 9px 13px */
.lightbox-close{padding:9px 14px}                  /* was 9px 13px */
.masthead nav a,.masthead nav span{padding:0 18px} /* was 0 15px (desktop) */

/* 5. Captions / labels sitting on top of video and images. */
.spatial-grid article>div{padding:48px 24px 22px}  /* was 42px 18px 18px */
.insert-grid span,
.texture-collage figcaption,
.scene-frames button>span,
.lightbox-image>span{padding:8px 12px}             /* was 7-8px 9-11px */

/* 6. Music rows: the active / selected states used to ADD 18px of padding, which
      shoved the text sideways. Bleed the highlight outward instead so text stays put. */



@media (width<=640px){
  .masthead nav a{padding:0 8px}                   /* re-assert the original mobile value after the desktop rule above */
}

/* 7. Tablet widths (641-900px): the original grid auto-placed the SELECT button into
      the 52px play-button column, so its label broke one word per line. Give the button
      its own column on the first row and let the note run underneath the title. */
@media (width<=900px) and (width>640px){
  .track-list article{grid-template-columns:52px 32px 1fr 176px}   /* was 52px 32px 1fr 150px */
  .track-title{grid-column:3}
  .track-select{grid-column:4;grid-row:1;align-self:center}
  .track-note{grid-column:3/-1}
}

/* ============================================================
   canvas additions: hidden helper, send section, small fixes
   ============================================================ */
[hidden]{display:none!important}
.masthead nav a.active{background:var(--yellow)}
.scene-frames button>span{pointer-events:none}
.lightbox{display:grid}
.lightbox .previous,.lightbox .next{justify-self:center}

.send-section{background:var(--teal);border-bottom:2px solid var(--navy);padding:96px 0 110px;scroll-margin-top:58px}
.send-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 70px;align-items:start}
.send-grid h2{margin:14px 0 22px;font-size:clamp(52px,7.4vw,104px)}
.send-grid h2 em{color:var(--yellow);font-style:normal}
.send-grid>div>p{max-width:520px;font-size:17px;line-height:1.42;margin-bottom:14px}
.send-form{background:var(--white);border:2px solid var(--navy);padding:28px;display:grid;gap:14px}
.send-form>b{color:var(--red);font:800 11px Arial Narrow,Arial,sans-serif}
.send-summary{display:grid;border:1px solid var(--navy);margin-bottom:8px}
.send-summary li{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:10px 14px;border-top:1px solid #1d254033;font-size:14px;line-height:1.35}
.send-summary li:first-child{border-top:0}
.send-summary b{color:var(--red);font:800 11px/1.5 Arial Narrow,Arial,sans-serif}
.send-form label{display:grid;gap:6px;font:800 11px Arial Narrow,Arial,sans-serif;color:var(--navy)}
.send-form label small{font:800 9px Arial Narrow,Arial,sans-serif;opacity:.6}
.send-form input{border:2px solid var(--navy);padding:11px 13px;font:15px Arial,sans-serif;background:#fff;width:100%}
.send-form input:focus{outline:3px solid var(--yellow);outline-offset:0}
.send-button{border:2px solid var(--navy);background:var(--red);color:#fff;min-height:52px;padding:12px 18px;font:800 13px Arial Narrow,Arial,sans-serif;margin-top:6px;letter-spacing:.02em}
.send-button:hover{background:var(--navy)}
.send-button:disabled{opacity:.6;cursor:wait}
.send-status{font-size:14px;line-height:1.4;min-height:1.4em}
.send-fallback{display:grid;gap:10px;border-top:2px solid var(--navy);padding-top:14px}
.send-fallback p{font-size:14px;line-height:1.4}
.send-fallback textarea{border:2px solid var(--navy);width:100%;padding:12px;font:13px/1.45 ui-monospace,Menlo,Consolas,monospace;background:var(--soft)}
.send-fallback>div{display:flex;gap:8px;flex-wrap:wrap}
.send-fallback button,.send-fallback a{border:2px solid var(--navy);padding:9px 14px;font:800 11px Arial Narrow,Arial,sans-serif;color:var(--navy);display:inline-grid;place-items:center}
.send-fallback button:hover,.send-fallback a:hover{background:var(--navy);color:#fff}
@media (width<=900px){.send-grid{grid-template-columns:1fr}}
@media (width<=640px){.send-section{padding:64px 0 76px}.send-form{padding:20px}.send-summary li{grid-template-columns:1fr;gap:2px}}
/* player at tablet/phone widths: keep the select button on row 1, progress bar on row 2 */
@media (width<=900px){
  .persistent-player{grid-template-columns:52px 1fr 120px}
  .player-select{grid-column:3;grid-row:1;padding:0 10px;white-space:nowrap}
  .player-progress{grid-column:1/-1;grid-row:2}
}
/* phone masthead: five nav items now, so drop the client name from the bar (the h1 below carries it) */
@media (width<=640px){
  .masthead>div>i,.masthead>div>b:nth-of-type(2){display:none}
  .masthead>div>b{white-space:nowrap}
  .masthead nav a{padding:0 7px}
}

/* music rows: same treatment as the original board — the active row fills yellow exactly between
   the list rules, the selected row carries a red bar inside the left edge. */
.track-list article{transition:background .18s,padding .18s}
.track-list article.is-active{background:var(--yellow);padding-inline:18px}
.track-list article.is-selected:not(.is-active){box-shadow:inset 6px 0 0 var(--red);padding-left:18px}
@media (width<=640px){.track-list article.is-active{padding-inline:12px}.track-list article.is-selected:not(.is-active){padding-left:12px}}

/* ---- ambience toggle in the masthead ---- */
.masthead nav .ambience-toggle{display:flex;align-items:center;gap:7px;height:100%;border-left:1px solid #1d254055;padding:0 16px;color:var(--navy);font:800 10px Arial Narrow,Arial,sans-serif;letter-spacing:.02em;cursor:pointer;white-space:nowrap}
.masthead nav .ambience-toggle i{font-style:normal;font-size:15px;line-height:1;color:var(--red);transform:translateY(-1px)}
.masthead nav .ambience-toggle span{opacity:1;border:0;padding:0;display:inline;font:inherit;color:inherit}
.masthead nav .ambience-toggle:hover{background:#1d254014}
.masthead nav .ambience-toggle[aria-pressed="true"]{background:var(--navy);color:#fff}
.masthead nav .ambience-toggle[aria-pressed="true"] i{color:var(--yellow)}
@media (width<=900px){.masthead nav .ambience-toggle{padding:0 12px}.masthead nav .ambience-toggle span{display:none}.masthead nav .ambience-toggle i{font-size:16px}}
@media (width<=640px){.masthead nav .ambience-toggle{padding:0 9px}}

/* ---- reveal animations for grids and frames ---- */
@media (prefers-reduced-motion:no-preference){
  [data-reveal]{opacity:0;transform:translateY(28px) scale(.985);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0) * 90ms)}
  [data-reveal].in{opacity:1;transform:none}
  .scene-frames [data-reveal]{clip-path:inset(0 0 12% 0);transition-property:opacity,transform,clip-path}
  .scene-frames [data-reveal].in{clip-path:inset(0)}
  .texture-collage [data-reveal],.insert-grid [data-reveal],.spatial-grid [data-reveal]{transform:translateY(22px) scale(.96)}
  .treatment-rules [data-reveal]{transform:translateY(16px)}
}
