@font-face{font-family:'Archivo Black';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/archivo-black.ttf')}
@font-face{font-family:'Kaushan Script';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/kaushan-script.ttf')}
/* V11: JPEG film frames controlled directly by the scroll position. */
.film-scroll{position:relative;color:#fff5df;background:#100d0a}
.film-pin{position:relative;height:100vh;height:100svh;min-height:550px;overflow:hidden;background:#100d0a;isolation:isolate}
.film-scroll.is-scroll-film{height:var(--film-distance,550vh)}
.is-scroll-film .film-pin{height:var(--film-height,100vh);min-height:0;position:sticky;top:0}
.film-screen{position:absolute;inset:0;z-index:0;overflow:hidden}
.film-poster,.film-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.film-canvas{opacity:0}.film-scroll.is-ready .film-canvas{opacity:1}
.film-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#120909ba 0,#12090918 46%,transparent 75%),linear-gradient(0deg,#100808e0,transparent 34%,transparent 72%,#14090988)}
.film-intro{position:absolute;top:28%;left:0;right:0;z-index:3;pointer-events:none;will-change:transform,opacity}
.film-intro .eyebrow{font-size:11px;letter-spacing:.2em;color:#ffe4a7;margin-bottom:24px}
.film-intro h1{font-size:clamp(78px,9.8vw,154px);line-height:.84;letter-spacing:-.015em;text-shadow:0 2px 30px #16070530}
.film-intro h1>span{color:var(--yellow)}
.film-intro>p:last-child{font-size:16px;line-height:1.65;color:#f3dfc2;max-width:315px;margin-top:25px}
.film-scroll-hint{position:absolute;bottom:170px;left:0;right:0;z-index:4;pointer-events:none;will-change:opacity}
.film-scroll-hint span{display:inline-flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.13em;font-weight:600;color:#fff0cf}
.film-scroll-hint i{display:block;width:17px;height:26px;border:1px solid #fff0cf70;border-radius:12px;position:relative}
.film-scroll-hint i::after{content:'';position:absolute;width:2px;height:6px;left:6px;top:5px;background:var(--yellow);border-radius:2px}
.film-story{position:absolute;left:0;right:0;bottom:125px;z-index:3;display:flex;justify-content:space-between;align-items:flex-end;gap:35px;opacity:0;pointer-events:none;will-change:opacity,transform}
.film-story h2{font-size:clamp(36px,4vw,60px);line-height:.95;color:#fff3d5;max-width:400px}
.film-story .eyebrow{font-size:10px;color:var(--yellow);letter-spacing:.15em;margin-bottom:12px}
.film-story p:not(.eyebrow){font-size:14px;color:#f8e2bc;max-width:340px;margin-top:12px;line-height:1.6}
.film-order{position:absolute;left:0;right:0;bottom:130px;z-index:5;opacity:0;visibility:hidden;pointer-events:none;will-change:opacity,transform}
.film-order.is-visible{pointer-events:auto}
.film-order .eyebrow{font-size:10px;color:var(--yellow);margin-bottom:11px;letter-spacing:.14em}
.film-order h2{font-size:clamp(55px,5vw,78px);margin-bottom:22px;color:#fff4d9}
.film-order .button{font-size:14px;min-height:49px;padding:13px 21px;box-shadow:none}
.film-controls{position:absolute;bottom:27px;left:0;right:0;z-index:6;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding-bottom:22px}
.film-chapters{display:flex;gap:22px;list-style:none;margin:0;padding:0}
.film-chapter{padding:7px 0;font-size:12px;white-space:nowrap;background:none;color:#e7cbaa;border:0}
.film-chapter span{font-size:9px;color:#bd9b7b;margin-right:7px}.film-chapter.is-active,.film-chapter.is-active span{color:var(--yellow)}


.film-skip{justify-self:end;display:inline-block;font-size:12px;color:#f7d7b2;border-bottom:1px solid #f7d7b24a;padding-bottom:3px}
.film-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ebc68d28}
.film-progress>span{display:block;height:100%;background:var(--yellow);transform:scaleX(0);transform-origin:left}
.film-loading{position:absolute;right:0;left:0;top:calc(var(--header) + 18px);z-index:7;font-size:10px;letter-spacing:.08em;color:#fbe3ba;pointer-events:none;opacity:0;transition:opacity .2s}
.film-loading.is-visible{opacity:1}
.film-loading button{pointer-events:auto;background:transparent;color:var(--yellow);border:0;border-bottom:1px solid currentColor;margin-left:10px;padding:3px 0;font-size:inherit}
.film-scroll.is-static .film-intro,.film-scroll.is-static .film-story,.film-scroll.is-static .film-scroll-hint,.film-scroll.is-static .film-chapters{display:none}
.film-scroll.is-static .film-order{opacity:1;visibility:visible;pointer-events:auto}
.film-scroll.is-static .film-skip{grid-column:3}
.film-scroll.is-static .film-progress>span{transform:scaleX(1)}
body.site-v11 .site-header{background:rgba(24,10,9,.91);border-bottom-color:#ebbc5426}
@media(max-width:1050px){.film-chapters{gap:14px}.film-chapter{font-size:11px}.film-controls{gap:20px;grid-template-columns:1fr auto auto}.film-intro h1{font-size:104px}.film-intro{top:26%}.film-intro>p:last-child{font-size:14px;max-width:290px}.film-order h2{font-size:67px}}
@media(max-width:700px){
 .film-pin{height:740px;min-height:0}
 .film-screen{inset:auto 0;top:49%;height:62.5vw;aspect-ratio:16/10;transform:translateY(-50%)}
 .film-poster,.film-canvas{object-fit:contain}
 .film-shade{background:linear-gradient(0deg,#100d0af2 0,transparent 39%,transparent 72%,#100d0a44)}
 .film-intro{top:calc(var(--header) + 25px)}
 .film-intro .eyebrow{font-size:8px;letter-spacing:.11em;margin-bottom:13px}
 .film-intro h1{font-size:clamp(52px,15vw,76px);line-height:.83}
 .film-intro h1 br{display:none}.film-intro h1 span{display:block}
 .film-intro>p:last-child{font-size:12px;max-width:265px;margin-top:14px;line-height:1.5}
 .film-scroll-hint{bottom:130px}.film-scroll-hint span{font-size:9px;letter-spacing:.08em}
 .film-story{bottom:143px;gap:15px}.film-story h2{font-size:38px;max-width:300px}
 .film-story .eyebrow{font-size:8px;margin-bottom:10px}.film-story p:not(.eyebrow){font-size:12px;max-width:285px;margin-top:9px}
 .film-order{bottom:137px}.film-order h2{font-size:53px;margin-bottom:16px}.film-order .eyebrow{font-size:8px;margin-bottom:9px}
 .film-order .button{min-height:42px;font-size:12px;padding:11px 15px;gap:9px}.film-order .icon{width:19px;height:19px}
 .film-controls{bottom:20px;grid-template-columns:1fr 1fr;gap:17px 10px;padding-bottom:17px}
 .film-chapters{grid-column:1/-1;gap:10px;justify-content:space-between}
 .film-chapter{font-size:10px;padding:3px 0}.film-chapter span{font-size:8px;margin-right:4px}

 .film-skip{font-size:10px;grid-column:2!important}.film-loading{top:calc(var(--header) + 8px);font-size:8px}
}
@media(max-width:700px) and (max-height:680px){.film-intro{top:calc(var(--header) + 14px)}.film-intro h1{font-size:49px}.film-intro>p:last-child{display:none}.film-screen{top:48%;height:56.25vw;aspect-ratio:16/9}.film-story{bottom:125px}.film-story h2{font-size:32px}.film-story p:not(.eyebrow){display:none}.film-order{bottom:128px}.film-order h2{font-size:42px;margin-bottom:12px}.film-order .eyebrow{display:none}.film-scroll-hint{bottom:125px}.film-controls{bottom:14px;gap:12px}}
@media(max-height:480px) and (min-width:560px){.film-screen{inset:0;aspect-ratio:auto;height:100%;transform:none}.film-intro{top:26%}.film-intro h1{font-size:60px}.film-intro>p:last-child,.film-intro .eyebrow,.film-story p:not(.eyebrow),.film-scroll-hint{display:none}.film-order,.film-story{bottom:85px}.film-order h2{font-size:42px;margin-bottom:13px}.film-order .eyebrow,.film-story .eyebrow{font-size:8px}.film-order .button{min-height:36px;padding:8px 12px;font-size:11px}.film-story h2{font-size:32px}.film-controls{bottom:13px;grid-template-columns:1fr auto auto;padding-bottom:12px;gap:18px}.film-chapters{grid-column:auto;gap:15px}.film-chapter{font-size:10px}.film-chapter span{display:none}.film-skip{grid-column:auto!important;font-size:10px}}
@media(prefers-reduced-motion:reduce){.film-scroll{height:auto!important}.film-pin{position:relative!important}.film-intro,.film-story,.film-scroll-hint,.film-chapters{display:none!important}.film-order{opacity:1!important;visibility:visible!important;pointer-events:auto!important}.film-canvas{display:none!important}}

/* Lettering inspired by the user's reference: warm script + heavy slanted caps. */
.film-intro h1{font-size:inherit;line-height:1;max-width:600px;letter-spacing:0}
.film-intro h1 .hero-script{display:block;font-family:'Kaushan Script',cursive;font-size:clamp(52px,5.8vw,86px);font-weight:400;line-height:1.1;letter-spacing:-.04em;color:var(--yellow);padding-left:35px;transform:rotate(-5deg);transform-origin:left bottom;margin-bottom:1px}
.film-intro h1 .hero-bold{display:block;font-family:'Archivo Black',Impact,sans-serif;font-size:clamp(64px,7.4vw,112px);font-weight:400;line-height:1;letter-spacing:-.055em;color:#fffaf0;white-space:nowrap;transform:skewX(-7deg);transform-origin:left center}
.film-loading a{pointer-events:auto;color:var(--yellow);border-bottom:1px solid currentColor;margin-left:12px;padding:3px 0;display:inline-block}
.film-loading:not(.is-visible){visibility:hidden}
@media(max-width:700px){.film-intro h1 .hero-script{font-size:43px;padding-left:22px;line-height:1.05;margin-bottom:3px}.film-intro h1 .hero-bold{font-size:clamp(43px,12.5vw,76px)}.film-intro>p:last-child{margin-top:18px}}
@media(max-width:700px) and (max-height:680px){.film-intro h1 .hero-script{font-size:34px}.film-intro h1 .hero-bold{font-size:46px}}
@media(max-height:480px) and (min-width:560px){.film-intro h1 .hero-script{font-size:34px}.film-intro h1 .hero-bold{font-size:56px}}

/* The scene has no playback UI: scrolling is its only timeline. */
.film-canvas{pointer-events:none;user-select:none}
.film-controls{display:flex;justify-content:space-between;align-items:center;gap:30px}
.film-chapter{font-size:13px;line-height:1.5;white-space:nowrap;list-style:none}
.film-chapter span{font-size:10px}
.film-story{bottom:128px}
.film-story h2{font-size:clamp(76px,8.5vw,128px);line-height:.91;max-width:740px;letter-spacing:-.025em;text-wrap:balance}
.film-story .eyebrow{font-size:14px;margin-bottom:18px;letter-spacing:.12em}
.film-story p:not(.eyebrow){font-size:21px;line-height:1.5;max-width:490px;margin-top:19px}
.film-order h2{font-size:clamp(76px,8vw,116px)}
.film-order .eyebrow{font-size:14px}
.film-scroll-hint span{font-size:12px}
@media(max-width:700px){
 .film-controls{flex-direction:column;align-items:stretch;gap:12px}
 .film-chapters{justify-content:space-between;gap:9px}
 .film-chapter{font-size:12px}.film-chapter span{font-size:9px}
 .film-skip{align-self:flex-end;font-size:12px}
 .film-story{bottom:135px}.film-story h2{font-size:clamp(50px,14vw,68px);max-width:100%;line-height:.93}
 .film-story .eyebrow{font-size:11px;line-height:1.4;margin-bottom:13px;letter-spacing:.1em}
 .film-story p:not(.eyebrow){font-size:16px;line-height:1.45;max-width:335px;margin-top:13px}
 .film-order{bottom:137px}.film-order h2{font-size:clamp(59px,17vw,82px)}.film-order .eyebrow{font-size:11px}
 .film-scroll-hint span{font-size:11px}
}
@media(max-width:700px) and (max-height:680px){
 .film-story{bottom:120px}.film-story h2{font-size:46px}.film-story .eyebrow{font-size:10px;margin-bottom:10px}
 .film-story p:not(.eyebrow){display:block;font-size:14px;line-height:1.4;margin-top:10px}
 .film-order{bottom:122px}.film-order h2{font-size:57px}
}
@media(max-width:700px) and (max-height:580px){.film-story h2{font-size:43px}.film-story p:not(.eyebrow){display:none}.film-order h2{font-size:52px}}
@media(max-height:480px) and (min-width:560px){
 .film-controls{flex-direction:row;align-items:center;gap:20px}.film-chapters{gap:18px}
 .film-chapter{font-size:11px}.film-skip{align-self:center;font-size:11px}
 .film-story,.film-order{bottom:88px}.film-story h2{font-size:55px;max-width:560px}
 .film-story .eyebrow{font-size:11px;margin-bottom:10px}.film-story p:not(.eyebrow){display:none}
 .film-order h2{font-size:57px}.film-order .eyebrow{font-size:10px}
}
