/* v116: poster overlays, fluid wallpaper, quieter chapter dividers. */
.chapter-marquee{opacity:.5}
html .ambient-wallpaper{inset:-25%;contain:none;overflow:visible;transform:none;background:none;filter:blur(45px)}
html .ambient-wallpaper::before,html .ambient-wallpaper::after{display:block;inset:0;animation:none;transform:translate3d(var(--fluid-x,0%),var(--fluid-y,0%),0) rotate(var(--fluid-turn,0deg)) scale(1.1);background:radial-gradient(ellipse at 27% 35%,rgba(49,170,116,.23) 0%,rgba(49,170,116,.09) 30%,transparent 67%),radial-gradient(ellipse at 78% 69%,rgba(72,102,166,.18) 0%,rgba(72,102,166,.05) 35%,transparent 72%)}
html .ambient-wallpaper::after{transform:translate3d(calc(var(--fluid-x,0%) * -.7),calc(var(--fluid-y,0%) * -.8),0) scale(1.12);background:radial-gradient(ellipse at 65% 23%,rgba(96,208,159,.17),rgba(96,208,159,.05) 38%,transparent 74%)}
html[data-theme="light"] .ambient-wallpaper::before{background:radial-gradient(ellipse at 27% 35%,rgba(110,233,177,.34),rgba(110,233,177,.1) 34%,transparent 72%),radial-gradient(ellipse at 78% 69%,rgba(151,186,218,.27),rgba(151,186,218,.06) 38%,transparent 76%)}
html[data-theme="light"] .ambient-wallpaper::after{background:radial-gradient(ellipse at 65% 23%,rgba(150,228,194,.27),rgba(150,228,194,.05) 40%,transparent 76%)}
html[data-theme="light"] body .site-header.glass{background:linear-gradient(135deg,rgba(213,237,224,.66),rgba(229,245,235,.62));border-color:rgba(92,145,115,.21);box-shadow:inset .5px .7px 0 rgba(248,255,251,.62),inset -.5px -.5px 0 rgba(72,124,94,.08),0 10px 32px rgba(31,71,49,.07)}
html[data-theme="light"] body #site-nav a{color:#14351f}
html[data-theme="light"] body .glass:is(.about-grid,.contact-heading,.contact-card,.archive-master,.production-item,.screening),html[data-theme="light"] body .film-card{background:linear-gradient(135deg,rgba(255,255,255,.15),rgba(255,255,255,.025) 55%,rgba(211,245,228,.07));box-shadow:inset .5px .7px 0 rgba(245,255,249,.57),inset -.5px -.5px 0 rgba(71,123,93,.07),0 12px 38px rgba(24,69,45,.05)}
html body::before{background:linear-gradient(135deg,#090d0c,#111816 52%,#070908)}
html[data-theme="light"] body::before{background:linear-gradient(120deg,#f1f8f3,#e3eee7)}
html #app .film-card.poster-card{height:auto;display:block;overflow:visible;align-self:start;min-height:0;background:none;box-shadow:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
html #app .poster-card .film-poster{aspect-ratio:2/3;width:100%;height:auto;min-height:0;border-radius:clamp(20px,3vw,36px);border:1px solid var(--control-edge);background:#111;cursor:pointer;isolation:isolate;touch-action:pan-y}
html #app .poster-card .film-poster img,html #app .poster-card:hover .film-poster img{object-fit:cover;transform:none;filter:none;transition:filter .65s cubic-bezier(.22,1,.36,1)}
html #app .poster-card .film-poster::after{background:#000;opacity:0;transition:opacity .6s cubic-bezier(.22,1,.36,1);pointer-events:none;z-index:1}
html #app .poster-card.poster-open .film-poster::after{opacity:.87}
html #app .poster-card .film-details{display:none!important}
.poster-caption{margin:0;padding:18px 4px 8px;color:var(--ink);font-size:clamp(1.1rem,2vw,1.8rem);font-weight:500;line-height:1.15;letter-spacing:-.035em}
.poster-info{position:absolute;inset:0;z-index:2;overflow-y:auto;overscroll-behavior:contain;padding:clamp(22px,3vw,40px);color:#f3fff8;opacity:0;visibility:hidden;transition:opacity .45s,visibility 0s .65s;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent;touch-action:pan-y}
.poster-open .poster-info{opacity:1;visibility:visible;transition:opacity .45s,visibility 0s}
.poster-info__block{opacity:0;transform:translateY(14px);filter:blur(3px);transition:opacity .4s,transform .5s cubic-bezier(.22,1,.36,1),filter .4s;transition-delay:calc((2 - var(--item))*35ms);margin-bottom:26px}
.poster-open .poster-info__block{opacity:1;transform:none;filter:none;transition-delay:calc(70ms + var(--item)*90ms)}
.poster-info__block small{display:block;font:500 10px/1.4 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#a2e8c0;margin-bottom:9px}
.poster-info__block p{margin:0;font-size:clamp(.95rem,1.3vw,1.15rem);line-height:1.6;letter-spacing:0}
.film-poster:focus-visible{outline:2px solid var(--mint);outline-offset:5px}
@media(prefers-reduced-motion:reduce){.poster-info,.poster-info__block,.film-poster::after{transition:none!important;filter:none!important}}
.ui-roll{display:inline-block;position:relative;overflow:hidden;vertical-align:bottom;max-width:none;line-height:inherit;padding:.3em .18em;margin:-.3em -.18em;mask-image:linear-gradient(to bottom,transparent,#000 .12em,#000 calc(100% - .12em),transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 .12em,#000 calc(100% - .12em),transparent)}
.ui-roll__first,.ui-roll__second{display:block;transition:transform .68s cubic-bezier(.25,.8,.25,1);line-height:inherit;backface-visibility:hidden}
.ui-roll__second{position:absolute;inset:.3em .18em;transform:translateY(calc(-100% - .6em))}
@media(hover:hover){.roll-control:hover .ui-roll__first{transform:translateY(calc(100% + .6em))}.roll-control:hover .ui-roll__second{transform:translateY(0)}}
.roll-control:focus-visible .ui-roll__first{transform:translateY(calc(100% + .6em))}.roll-control:focus-visible .ui-roll__second{transform:translateY(0)}
html .site-header.glass{box-shadow:inset .35px .35px 0 rgba(235,255,245,.12),0 10px 32px rgba(0,0,0,.13),0 2px 6px rgba(0,0,0,.045);backdrop-filter:blur(11px) saturate(145%) contrast(1.025);-webkit-backdrop-filter:blur(11px) saturate(145%) contrast(1.025)}
html[data-theme="light"] .site-header.glass{background:linear-gradient(135deg,rgba(213,237,224,.80),rgba(229,245,235,.68));border-color:rgba(60,111,84,.19);box-shadow:inset .35px .35px 0 rgba(236,255,244,.32),0 10px 32px rgba(31,71,49,.085),0 2px 6px rgba(31,71,49,.025)}
html[data-theme="light"] #site-nav a{color:#1c3e2b;font-weight:500}
html[data-theme="light"] #site-nav a:is(.active,.nav-highlight,:hover,:focus-visible){color:#103d27;text-shadow:none}
html[data-theme="light"] #site-nav::before{background:linear-gradient(135deg,rgba(224,249,234,.32),rgba(66,135,95,.09));box-shadow:inset 0 0 0 .5px rgba(61,121,88,.2),inset 0 .5px 1px rgba(231,255,242,.3),0 3px 10px rgba(31,71,49,.035)}
html .brand-logo,html[data-theme="light"] .brand-logo{filter:none}
html .theme-toggle,html[data-theme="light"] .theme-toggle{box-shadow:var(--control-shadow),0 9px 24px rgba(20,47,33,.09)}
html .desktop-cursor__surface,html:not([data-theme="light"]) .desktop-cursor__surface{background:linear-gradient(140deg,rgba(228,255,240,.08),rgba(171,216,195,.025));border-color:rgba(177,212,192,.23);box-shadow:inset .35px .35px 0 rgba(255,255,255,.16),0 3px 14px rgba(18,41,28,.025);backdrop-filter:blur(3px) saturate(120%);-webkit-backdrop-filter:blur(3px) saturate(120%)}
html[data-theme="light"] .desktop-cursor__surface{background:linear-gradient(140deg,rgba(255,255,255,.17),rgba(180,218,199,.05));border-color:rgba(62,110,84,.2)}
@supports(backdrop-filter:url("#chngqan-liquid-optics") blur(12px)){
 html.glass-optics-supported .liquid-surface,html.glass-optics-supported[data-theme="light"] .liquid-surface{backdrop-filter:url("#chngqan-liquid-optics") blur(12px) saturate(145%) contrast(1.025)}
 html.glass-optics-supported .site-header.glass,html.glass-optics-supported[data-theme="light"] .site-header.glass{backdrop-filter:url("#chngqan-liquid-optics") blur(11px) saturate(145%) contrast(1.025)}
}
.glass-optics-defs{position:absolute;overflow:hidden;pointer-events:none}
.ambient-wallpaper::before{animation-duration:13s;animation-name:ambient-fluid}
.ambient-wallpaper::after{animation-duration:19s;animation-name:ambient-fluid}
@keyframes ambient-fluid{0%{transform:translate3d(-7%,-5%,0) scale(1.02) rotate(-2deg)}50%{transform:translate3d(1%,3%,0) scale(1.1) rotate(1deg)}100%{transform:translate3d(9%,6%,0) scale(1.04) rotate(3deg)}}
.chapter-marquee{overflow:hidden;width:100%;margin:12px 0;contain:layout paint}
.chapter-marquee__track{display:flex;width:max-content;animation:chapter-drift var(--marquee-duration,65s) linear infinite;animation-play-state:paused}
.chapter-marquee__track.is-running{animation-play-state:running}
.chapter-marquee__group{display:flex;flex:none;align-items:center;min-width:100vw;justify-content:space-around}
.chapter-marquee__unit{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;white-space:nowrap;color:var(--muted);font-size:10px;letter-spacing:.065em;line-height:1.4}
.chapter-marquee__unit img{width:18px;height:18px;object-fit:contain}
.chapter-marquee__brand{font-weight:700;letter-spacing:.12em;color:var(--ink)}
@keyframes chapter-drift{to{transform:translateX(-50%)}}
.hero-contact-shortcut{position:absolute;inset:0;z-index:3;border:0;border-radius:inherit;background:transparent;cursor:pointer}
.hero-contact-shortcut:focus-visible{outline:2px solid var(--mint);outline-offset:-8px}
.social-icon--vimeo{-webkit-mask-size:119.07%;mask-size:119.07%}
.social-icon--facebook{-webkit-mask-size:103.1%;mask-size:103.1%}
html .resume-preview-glass{background:rgba(5,12,9,.26);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
html .resume-preview-glass .resume-modal__panel,html[data-theme="light"] .resume-preview-glass .resume-modal__panel{background:var(--control-glass);border-color:var(--control-edge);box-shadow:var(--control-shadow),0 24px 80px rgba(0,0,0,.2);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);isolation:isolate}
html .resume-preview-glass .resume-modal__viewport,html[data-theme="light"] .resume-preview-glass .resume-modal__viewport{background:transparent}
.resume-preview-glass .resume-modal__viewport img{mix-blend-mode:screen;opacity:.98}
html[data-theme="light"] .resume-preview-glass{background:rgba(34,74,49,.12)}
html[data-theme="light"] .resume-preview-glass .resume-modal__viewport img{mix-blend-mode:multiply}
.cursor-loading__label{display:none;position:absolute;inset:0;place-items:center;color:var(--ink);font:500 8px/1 Arial,sans-serif;letter-spacing:.01em}
.cursor-is-loading .cursor-loading__label{display:grid}
.cursor-is-loading .desktop-cursor__surface::after{opacity:0}
.cursor-is-loading .desktop-cursor__surface::before{inset:-2px;opacity:1;background:none;border:1.5px solid rgba(135,180,154,.2);border-top-color:var(--mint);animation:cursor-busy .8s linear infinite}
@keyframes cursor-busy{to{transform:rotate(360deg)}}
.site-loading{top:0;left:0;width:100%;height:2px;transform:none;display:block;overflow:hidden}
.site-loading>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.site-loading__spinner{display:block;width:28%;height:2px;border:0;border-radius:0;background:var(--mint);animation:loading-edge 1.1s ease-in-out infinite}
@keyframes loading-edge{from{transform:translateX(-100%)}to{transform:translateX(460%)}}
@media(hover:hover) and (pointer:fine){html.cursor-load-capable.custom-cursor-on .site-loading{width:1px;height:1px;clip-path:inset(50%)}html.cursor-load-capable.custom-cursor-on .site-loading__spinner{display:none}}
.polish-paused .chapter-marquee__track{animation-play-state:paused}
@media(max-width:560px){.chapter-marquee{margin:7px 0}.chapter-marquee__unit{font-size:9px;padding:4px 10px}}
/* Shared main-heading scale, independent of home versus standalone route. */
html #app .page-title{font-size:clamp(3.4rem,8vw,7.6rem);line-height:1.04;letter-spacing:-.05em}
@media(max-width:560px){html #app .page-title{font-size:clamp(2.8rem,13vw,3.4rem)}}
/* Light-only clarity; dark materials deliberately unchanged. */
html[data-theme="light"] .glass:is(.about-grid,.contact-heading,.contact-card,.archive-master,.production-item,.screening),html[data-theme="light"] .film-card{background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,.055) 55%,rgba(211,245,228,.10));border-color:rgba(109,160,130,.24);box-shadow:inset .35px .35px 0 rgba(245,255,249,.42),inset -.35px -.35px 0 rgba(255,255,255,.08),0 12px 38px rgba(24,69,45,.05)}
:root[data-theme="light"]{--control-glass:linear-gradient(140deg,rgba(255,255,255,.28),rgba(230,255,243,.10) 55%,rgba(194,230,221,.08));--control-edge:rgba(101,157,126,.26)}
html[data-theme="light"] .site-header.glass{background:linear-gradient(135deg,rgba(213,237,224,.74),rgba(229,245,235,.68));backdrop-filter:blur(8px) saturate(145%) contrast(1.025);-webkit-backdrop-filter:blur(8px) saturate(145%) contrast(1.025)}
html.glass-optics-supported[data-theme="light"] .site-header.glass{backdrop-filter:url("#chngqan-liquid-optics") blur(8px) saturate(145%) contrast(1.025)}
@media(hover:none),(pointer:coarse),(max-width:760px){
 .site-loading{top:50%;left:50%;width:72px;height:72px;box-sizing:border-box;transform:translate(-50%,-50%);display:grid;place-items:center;gap:0;overflow:visible;padding:0;border-radius:50%;background:var(--control-glass);border:1px solid var(--control-edge);box-shadow:var(--control-shadow);backdrop-filter:blur(8px) saturate(130%);-webkit-backdrop-filter:blur(8px) saturate(130%);clip-path:none}
 .site-loading>span:last-child{position:static;width:auto;height:auto;overflow:visible;clip-path:none;color:var(--ink);font:500 10px/1 Arial,sans-serif;letter-spacing:.01em}
 .site-loading__spinner{position:absolute;inset:-3px;display:block;width:auto;height:auto;box-sizing:border-box;background:none;border:1.5px solid var(--control-edge);border-top-color:var(--mint);border-right-color:var(--mint);border-radius:50%;animation:loading-spin .8s linear infinite}
}
@media(prefers-reduced-motion:reduce){.ui-roll__first,.ui-roll__second{transition:none}.roll-control .ui-roll__first{transform:none!important}.roll-control .ui-roll__second{display:none}.chapter-marquee__track,.ambient-wallpaper::before,.ambient-wallpaper::after{animation:none}.chapter-marquee__group:nth-child(2){display:none}.cursor-is-loading .desktop-cursor__surface::before{animation:none}}
/* v117: one inspectable full-document gradient map, no stacked fixed blobs. */
html body{position:relative}
html body::before{content:none}
html body .ambient-wallpaper{position:absolute;inset:0;z-index:-1;filter:none;overflow:hidden;contain:paint;background:#0b1411}
html body .ambient-wallpaper::before{inset:-24px;background:url('/assets/gradient-dark.svg') center/100% 100% no-repeat;transform:translate3d(calc(var(--fluid-x,0px) * 3),calc(var(--fluid-y,0px) * 3),0) scale(1.02);animation:none}
html[data-theme="light"] body .ambient-wallpaper{background:#edf5ef}
html[data-theme="light"] body .ambient-wallpaper::before{background-image:url('/assets/gradient-light.svg')}
html body .ambient-wallpaper::after{display:none}
html #app .poster-card.placeholder .film-poster{background:linear-gradient(145deg,rgba(162,255,208,.12),rgba(154,194,219,.025) 58%,rgba(162,255,208,.04));backdrop-filter:blur(8px) saturate(135%);-webkit-backdrop-filter:blur(8px) saturate(135%);box-shadow:var(--control-shadow)}
html #app .poster-card.placeholder .film-poster::before{background:radial-gradient(ellipse,rgba(162,255,208,.07),transparent 70%)}
.poster-caption{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:18px 0 8px}
.poster-caption h2{margin:0;font:inherit;letter-spacing:inherit;line-height:inherit}
.poster-year{flex:none;margin-left:auto;text-align:right;color:var(--mint);font-size:.5em;line-height:1;letter-spacing:.025em}
/* Keep the parent visible until every reversed child transition has finished. */
.poster-info{opacity:1;transition:visibility 0s .65s}
.poster-open .poster-info{opacity:1;transition:visibility 0s}
.poster-info__block{transition:opacity .42s ease,transform .55s cubic-bezier(.22,1,.36,1),filter .42s;transition-delay:calc((2 - var(--item))*40ms)}
html #app .poster-card .film-poster::after{transition:opacity .65s cubic-bezier(.22,1,.36,1) .08s}
html #app .poster-card.poster-open .film-poster::after{transition-delay:0s}
/* Shared reflective glass material for all small floating controls. */
:root{--unified-glass:linear-gradient(140deg,rgba(222,255,237,.09),rgba(46,91,69,.075) 55%,rgba(151,203,181,.04));--unified-edge:rgba(181,225,201,.22);--unified-shadow:inset .5px .7px 0 rgba(235,255,244,.28),inset -.5px -.5px 0 rgba(13,35,23,.1),0 8px 25px rgba(0,0,0,.08)}
:root[data-theme="light"]{--unified-glass:linear-gradient(140deg,rgba(255,255,255,.19),rgba(211,239,224,.08) 55%,rgba(151,203,181,.055));--unified-edge:rgba(83,139,107,.22);--unified-shadow:inset .5px .7px 0 rgba(248,255,251,.62),inset -.5px -.5px 0 rgba(72,124,94,.08),0 8px 25px rgba(31,71,49,.055)}
html body .desktop-cursor__surface,html body .theme-toggle,html body .theme-toggle__thumb,html body .journey-end button{background:var(--unified-glass);border-color:var(--unified-edge);box-shadow:var(--unified-shadow);backdrop-filter:blur(8px) saturate(140%) contrast(1.025);-webkit-backdrop-filter:blur(8px) saturate(140%) contrast(1.025)}
/* v118: editorial three-line caption, same corner treatment as About portrait. */
html #app .poster-card .film-poster{border-radius:20px}
.poster-caption{display:grid;justify-content:stretch;align-items:start;gap:8px;padding:18px 0 12px}
.poster-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;font-size:clamp(.75rem,1.05vw,.95rem);line-height:1.4;letter-spacing:.025em;color:var(--mint)}
.poster-caption .poster-year{margin:0;text-align:left;font-size:inherit;line-height:inherit}
.poster-original{display:inline-flex;align-items:baseline;gap:12px}
.poster-original::before{content:'·';opacity:.6}
.poster-director{margin:0;font-size:clamp(.72rem,.95vw,.85rem);line-height:1.5;letter-spacing:.015em;color:var(--muted)}
/* v120: v118 wallpaper restored; shared inset and integrated poster/caption shell. */
body{--heading-inset:clamp(16px,1.8vw,26px)}
html #app .page>.page-title{padding-inline:var(--heading-inset)}
html #app .page>.eyebrow{margin-inline:var(--heading-inset)}
html #app .film-card.poster-card{overflow:hidden;border:1px solid var(--unified-edge);border-radius:20px;background:var(--unified-glass);box-shadow:var(--unified-shadow);backdrop-filter:blur(8px) saturate(140%);-webkit-backdrop-filter:blur(8px) saturate(140%)}
html #app .poster-card .film-poster{border:0;border-radius:20px 20px 0 0}
html #app .poster-card .poster-caption{padding:18px clamp(18px,1.8vw,26px) 20px;gap:8px}
@media(max-width:860px){
 .site-header.menu-folding{box-sizing:border-box;overflow:hidden;align-items:flex-start;padding:15px 18px;min-height:64px;will-change:height,border-radius}
 .site-header.menu-folding .brand{height:34px;align-items:center}
 .site-header.menu-folding #site-nav{display:flex;position:absolute;left:18px;right:18px;top:58px;padding:14px 0 4px;transform-origin:top center;pointer-events:none}
}
/* v121: slightly clearer light materials; dark palette is green-only. */
html[data-theme="light"] body .glass:is(.about-grid,.contact-heading,.contact-card,.archive-master,.production-item,.screening){background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.018) 55%,rgba(211,245,228,.05))}
html[data-theme="light"] body .site-header.glass{background:linear-gradient(135deg,rgba(213,237,224,.64),rgba(229,245,235,.62))}
:root[data-theme="light"]{--unified-glass:linear-gradient(140deg,rgba(255,255,255,.16),rgba(211,239,224,.06) 55%,rgba(151,203,181,.04));--control-glass:linear-gradient(140deg,rgba(255,255,255,.23),rgba(230,255,243,.075) 55%,rgba(194,230,221,.06))}
/* v122: the menu and its highlight share one permanent layout coordinate system. */
@media(max-width:860px){
 html body .site-header{height:64px;padding:15px 18px;align-items:flex-start;overflow:hidden}
 html body .site-header .brand{height:34px;align-items:center}
 html body .site-header #site-nav{display:flex;position:absolute;left:18px;right:18px;top:58px;width:auto;flex-basis:auto;visibility:hidden;pointer-events:none;padding:14px 0 4px;transform-origin:top center}
 html body .site-header:has(#site-nav.open){height:var(--mobile-menu-height,324px);padding:15px 18px;border-radius:28px}
 html body .site-header #site-nav.open,html body .site-header.menu-folding #site-nav{visibility:visible;pointer-events:auto}
 html body .site-header.menu-folding #site-nav{pointer-events:none}
 #site-nav.nav-morphing::before{animation:none;transform:none}
}
/* v123: clear hero, unified thin glass and draggable edge control. */
html body .hero-visual.glass{background:transparent;border-color:var(--unified-edge);box-shadow:var(--unified-shadow)}
html body .hero-visual::before{z-index:1;background:linear-gradient(to top,rgba(4,38,29,.78),rgba(10,67,48,.32) 44%,transparent 74%);mix-blend-mode:normal}
html body .hero-visual::after{z-index:1;background:linear-gradient(to top,rgba(2,9,7,.58),rgba(2,8,6,.13) 48%,transparent 72%)}
html[data-theme="light"] body .hero-visual::before{background:radial-gradient(ellipse at 45% 35%,rgba(162,255,208,.25),transparent 72%)}
html[data-theme="light"] body .hero-visual::after{background:linear-gradient(to top,rgba(235,248,239,.36),transparent 55%)}
html body .hero-name{background:transparent}
.theme-toggle{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.theme-toggle.theme-dragging{cursor:grabbing;transition:none!important;scale:1!important}
html body .desktop-cursor__surface{box-shadow:inset .35px .5px 0 rgba(239,255,246,.22),0 3px 18px rgba(20,45,30,.012);backdrop-filter:blur(5px) saturate(125%);-webkit-backdrop-filter:blur(5px) saturate(125%)}
.desktop-cursor__surface::after{box-shadow:0 0 3px 1px rgba(130,157,141,.08);filter:blur(.2px)}
.cursor-is-loading iframe{pointer-events:none}
html body .site-header.glass{border-width:.7px;box-shadow:inset .5px .8px 0 rgba(233,255,243,.25),inset -.4px -.4px 0 rgba(15,52,32,.08),0 12px 34px rgba(0,0,0,.115),0 2px 5px rgba(0,0,0,.025)}
html[data-theme="light"] body .site-header.glass{background:linear-gradient(135deg,rgba(213,237,224,.59),rgba(229,245,235,.58));box-shadow:inset .5px .8px 0 rgba(248,255,251,.66),inset -.4px -.4px 0 rgba(65,116,86,.09),0 12px 34px rgba(31,71,49,.085),0 2px 5px rgba(31,71,49,.02)}
html[data-theme="light"] body #site-nav a{color:#0d2818}
html[data-theme="light"] body .glass:is(.about-grid,.contact-heading,.contact-card,.archive-master,.production-item,.screening){background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.012) 55%,rgba(211,245,228,.035))}
@property --nav-loading-angle{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes nav-border-loading{to{--nav-loading-angle:360deg}}
@media(max-width:860px),(hover:none){
 html.mobile-nav-loading .site-loading{display:none!important}
 #site-nav.nav-is-loading::after{content:'';position:absolute;left:0;top:0;width:var(--nav-w);height:var(--nav-h);translate:var(--nav-x) var(--nav-y);box-sizing:border-box;padding:1.5px;border-radius:999px;background:conic-gradient(from var(--nav-loading-angle),transparent 0 50%,var(--mint) 78%,transparent 100%);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;pointer-events:none;animation:nav-border-loading .85s linear infinite}
}
@media(prefers-reduced-motion:reduce){#site-nav.nav-is-loading::after{animation:none}}
/* v124: static unpromoted background paint; no viewport-sized GPU tile joins. */
html body .ambient-wallpaper{contain:none;overflow:hidden;transform:none;filter:none;will-change:auto}
html body .ambient-wallpaper::before{inset:0;transform:none;animation:none;will-change:auto}
@media(max-width:560px){html body .hero-visual img{object-position:54% center}}
.nav-loading-ring{position:absolute;left:0;top:0;translate:var(--nav-x,0px) var(--nav-y,0px);width:var(--nav-w,0px);height:var(--nav-h,0px);overflow:visible;opacity:0;pointer-events:none;transition:translate .42s cubic-bezier(.22,1,.36,1),width .42s cubic-bezier(.22,1,.36,1),height .3s ease,opacity .14s ease}
.nav-loading-ring rect{width:calc(100% - 2px);height:calc(100% - 2px);fill:none;stroke:var(--mint);stroke-width:1.5;stroke-linecap:round;stroke-dasharray:26 74}
#site-nav.nav-is-loading::after{display:none}
#site-nav.nav-is-loading .nav-loading-ring{opacity:1}
#site-nav.nav-is-loading .nav-loading-ring rect{animation:loading-stroke 1s linear infinite}
.cursor-loading-ring{position:absolute;inset:-2px;width:56px;height:56px;opacity:0;pointer-events:none;transition:opacity .12s ease}
.cursor-loading-ring circle{fill:none;stroke:var(--mint);stroke-width:1.5;stroke-linecap:round;stroke-dasharray:26 74}
.cursor-is-loading .cursor-loading-ring{opacity:1}
.cursor-is-loading .cursor-loading-ring circle{animation:loading-stroke 1s linear infinite}
.cursor-is-loading .desktop-cursor__surface::before{opacity:0!important;animation:none!important}
@keyframes loading-stroke{to{stroke-dashoffset:-100}}
@media(prefers-reduced-motion:reduce){.cursor-loading-ring circle,.nav-loading-ring rect{animation:none!important}}
/* v125: mobile loading is the selected glass pill's border, not an SVG stroke. */
@media(max-width:860px),(hover:none){
 #site-nav.nav-is-loading::after{display:block;padding:1px;transition:translate .42s cubic-bezier(.22,1,.36,1),width .42s cubic-bezier(.22,1,.36,1),height .3s ease;filter:none;background:conic-gradient(from var(--nav-loading-angle),transparent 0deg 165deg,color-mix(in srgb,var(--mint) 12%,transparent) 185deg,color-mix(in srgb,var(--mint) 55%,transparent) 215deg,var(--mint) 255deg,color-mix(in srgb,var(--mint) 55%,transparent) 285deg,color-mix(in srgb,var(--mint) 12%,transparent) 315deg,transparent 340deg 360deg);animation:nav-border-loading 1.15s linear infinite}
}
/* Viewport-sized native gradients avoid oversized SVG/backdrop raster tiles. */
html body .ambient-wallpaper{position:fixed;inset:0;contain:strict;background:#0b1411;pointer-events:none}
html body .ambient-wallpaper::before{background:radial-gradient(ellipse at 8% 12%,rgba(40,103,75,.42),rgba(40,103,75,.16) 36%,rgba(40,103,75,0) 72%),radial-gradient(ellipse at 94% 65%,rgba(41,78,55,.5),rgba(41,78,55,.14) 40%,rgba(41,78,55,0) 76%),radial-gradient(ellipse at 22% 108%,rgba(54,86,65,.38),rgba(54,86,65,.1) 40%,rgba(54,86,65,0) 75%)}
html[data-theme="light"] body .ambient-wallpaper{background:#edf5ef}
html[data-theme="light"] body .ambient-wallpaper::before{background:radial-gradient(ellipse at 8% 12%,rgba(169,229,195,.56),rgba(169,229,195,.19) 36%,rgba(169,229,195,0) 72%),radial-gradient(ellipse at 94% 65%,rgba(191,213,216,.46),rgba(191,213,216,.13) 40%,rgba(191,213,216,0) 76%),radial-gradient(ellipse at 22% 108%,rgba(191,217,200,.49),rgba(191,217,200,.14) 40%,rgba(191,217,200,0) 75%)}
/* Keep the material, avoid expensive turbulence sampling over entire sections. */
html.glass-optics-supported .liquid-surface,html.glass-optics-supported[data-theme="light"] .liquid-surface{backdrop-filter:blur(12px) saturate(145%) contrast(1.025);-webkit-backdrop-filter:blur(12px) saturate(145%) contrast(1.025)}
html.glass-optics-supported .site-header.glass{backdrop-filter:blur(11px) saturate(145%) contrast(1.025);-webkit-backdrop-filter:blur(11px) saturate(145%) contrast(1.025)}
html.glass-optics-supported[data-theme="light"] .site-header.glass{backdrop-filter:blur(8px) saturate(145%) contrast(1.025);-webkit-backdrop-filter:blur(8px) saturate(145%) contrast(1.025)}
html #app .poster-card{cursor:pointer;touch-action:pan-y;transform-origin:center center}
html #app .poster-card:focus-visible{outline:2px solid var(--mint);outline-offset:5px}
