/* Tall photographic panels, natural warm color and native horizontal scrolling. */
.support-page{padding-block:230px 70px;overflow:clip}
.support-pending .support-intro{opacity:0}
.support-page>.source-notice{max-width:900px;margin:0 auto 30px}
.support-intro{width:min(1050px,calc(100% - 80px));margin:0 auto 95px;text-align:center}
.support-intro h1{font-size:clamp(38px,4.5vw,70px);font-weight:400;line-height:1.12;letter-spacing:-.045em;text-wrap:balance;margin:0 auto 35px;max-width:980px}
.support-intro-text{max-width:760px;margin:auto}
.support-intro-text p{font-size:17px;line-height:1.85;color:#b9b6b1;margin:0;text-wrap:pretty}
.support-track{--support-gap:20px;display:flex;gap:var(--support-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:8vw;padding:0 8vw 8px;scrollbar-width:none;touch-action:pan-x pan-y pinch-zoom}
.support-track::-webkit-scrollbar{display:none}
.support-track:focus-visible{outline:1px solid #b5a38a;outline-offset:-2px}
.support-card{position:relative;isolation:isolate;display:flex;flex:0 0 33vw;aspect-ratio:3/4;min-height:490px;max-height:750px;overflow:hidden;scroll-snap-align:start;background:#181713;color:#f5f0e8;user-select:none;-webkit-user-drag:none}
.support-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:sepia(.22) saturate(1.08) contrast(1.04) brightness(.97);transition:transform 1s cubic-bezier(.2,.65,.2,1);z-index:-2}
.support-card:nth-child(1)>img{object-position:57% center}.support-card:nth-child(2)>img{object-position:50% 40%}.support-card:nth-child(3)>img{object-position:50% 48%}
.support-card::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(145deg,#a465251f,#a465250a 55%,transparent),linear-gradient(180deg,#0b0a080a 25%,#0b0a0822 43%,#0b0a08bf 72%,#0b0a08f0 100%);pointer-events:none}
.support-card-copy{position:relative;align-self:end;width:100%;padding:36px 34px 40px}
.support-card h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3.1vw,49px);font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0 0 17px;overflow-wrap:anywhere;text-wrap:balance}
.support-card p{font-size:15px;line-height:1.6;color:#e0d9ce;margin:0;max-width:85%;text-wrap:pretty}
.support-card-arrow{display:grid;place-items:center start;width:24px;height:32px;margin-top:25px;transition:color .25s}
.support-card-arrow svg,.support-after svg{width:19px;height:19px}
.support-card:hover>img,.support-card:focus-visible>img{transform:scale(1.045)}
.support-card:hover .support-card-arrow,.support-card:focus-visible .support-card-arrow{color:#e2bd8a}
.support-card:focus-visible{outline:2px solid #f5f0e8;outline-offset:-6px}
.support-after{max-width:900px;width:calc(100% - 80px);margin:42px auto 20px;text-align:center}
.support-after h2{font-size:32px;margin:0 0 14px}.support-after .line-link{margin:0 12px;gap:22px;text-decoration:none}
.support-powder,.support-story-skip{display:none}
.support-readable{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.support-word{display:inline-block;white-space:nowrap}
.support-letter{opacity:1}
/* One sticky plane: typing, powder, entry, horizontal travel, then the overview. */
.support-page.is-scroll-story{padding-top:0}
.is-scroll-story .support-after{position:relative;z-index:1;margin-top:var(--support-outro-margin,28px)}
.support-story-document{scrollbar-gutter:stable}
.support-transition-locked{overflow:hidden!important;scroll-behavior:auto!important;overscroll-behavior:none}
.is-scroll-story>.source-notice{margin:calc(var(--festival-header-stack) + 24px) auto 24px}
.is-scroll-story .support-runway{position:relative;height:var(--support-runway-height)}
.is-scroll-story .support-stage{position:sticky;top:0;height:var(--support-scene-height,100svh);overflow:clip;isolation:isolate;background:#050505}
.is-scroll-story .support-type-area{position:absolute;inset:var(--support-scene-top,140px) 0 28px;overflow:clip;display:flex;align-items:center;justify-content:center;pointer-events:none}
.is-scroll-story .support-type-area.has-long-copy{align-items:flex-start;padding-top:16px}
.is-scroll-story .support-intro{flex:none;margin:0 auto;will-change:transform,opacity}
.is-scroll-story .support-powder{display:block;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
.is-scroll-story .support-gallery{position:absolute;inset:0;overflow:clip;visibility:hidden}
.is-scroll-story .support-track{position:absolute;inset:0;display:block;overflow:clip;padding:0;scroll-snap-type:none;direction:ltr;touch-action:pan-y pinch-zoom}
.is-scroll-story .support-card{position:absolute;inset:0 auto auto 0;width:var(--support-card-width);height:var(--support-card-render-height,var(--support-card-height));min-height:0;max-height:none;aspect-ratio:auto;transform-origin:0 0;will-change:transform;scroll-snap-align:none}
.is-scroll-story .support-card::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent 5%,#0009 36%,#0008);opacity:var(--support-overview-shade,0);pointer-events:none}
.is-scroll-story .support-card h2,.is-scroll-story .support-card p{text-wrap:wrap}
.is-scroll-story .support-runway{overflow-anchor:none}
.is-scroll-story .support-card{contain:layout paint}
.is-scroll-story:not(.is-support-settled) .support-card-copy{position:absolute;bottom:0;will-change:transform,opacity}
.support-card-overview-copy{opacity:0;pointer-events:none}
.support-card-overview-copy h2{visibility:hidden}
.is-scroll-story .support-story-skip{display:block}
.support-story-skip:focus-visible{position:absolute;inset:auto auto 20px 20px;width:auto;height:auto;clip:auto;clip-path:none;white-space:normal;padding:14px 22px;background:#fff;color:#111;z-index:5}
.festival-header.support-clear:not(.menu-open):not(.menu-transition){background:transparent!important;box-shadow:none!important}
.festival-header.support-clear:not(.menu-open):not(.menu-transition)::before{background:transparent!important;backdrop-filter:none!important;border:0!important;box-shadow:none!important}
.support-track.is-dragging{scroll-snap-type:none;cursor:grabbing}.support-track.is-dragging a{cursor:grabbing}
@media(min-width:1800px){.support-card{flex-basis:31vw}.support-intro{margin-bottom:110px}}
@media(max-width:1000px){.support-card{flex-basis:43vw;min-height:510px}.support-card-copy{padding:28px}.support-card h2{font-size:36px}}
@media(max-width:600px){.support-page{padding-block:175px 30px}.support-intro{width:calc(100% - 40px);margin-bottom:55px}.support-intro h1{font-size:clamp(31px,8.5vw,47px);margin-bottom:25px}.support-intro-text p{font-size:15px;line-height:1.8}.support-track{--support-gap:12px;scroll-padding-inline:20px;padding-inline:20px}.support-card{flex-basis:82vw;min-height:450px;max-height:none;aspect-ratio:3/4}.support-card-copy{padding:25px 24px 30px}.support-card h2{font-size:34px}.support-card p{font-size:14px;max-width:100%}.support-card-arrow{margin-top:23px}.support-after{width:calc(100% - 40px);margin-top:28px}.support-after .line-link{margin:8px 12px}.support-after h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.support-page *{transition:none!important;scroll-behavior:auto!important}.support-intro.is-waiting{opacity:1;transform:none}.support-card:hover>img,.support-card:focus-visible>img{transform:none}}

.is-scroll-story .support-card p{font-size:calc(15px * var(--support-caption-zoom,1))}
@media(max-width:600px){.is-scroll-story .support-card p{font-size:calc(14px * var(--support-caption-zoom,1))}}

/* After the first overview, keep its exact card sizes in an ordinary page. */
.support-page.is-scroll-story.is-support-settled{padding-top:230px}
.is-support-settled>.source-notice{margin:0 auto 30px}
.is-support-settled .support-runway{height:auto}
.is-support-settled .support-stage{position:relative;top:auto;height:auto;overflow:visible}
.is-support-settled .support-type-area{position:relative;inset:auto;display:block;overflow:visible;padding:0;pointer-events:auto}
.is-support-settled .support-intro{margin:0 auto 95px;will-change:auto}
.is-support-settled .support-gallery{position:relative;inset:auto;height:var(--support-settled-height);overflow:clip}
.is-support-settled .support-card{will-change:auto}
.is-support-settled .support-story-skip,.is-support-settled .support-powder{display:none}
@media(max-width:600px){.support-page.is-scroll-story.is-support-settled{padding-top:175px}.is-support-settled .support-intro{margin-bottom:55px}}
