/* Motion is a response to touch. Native scroll, zoom, and browser gestures remain intact. */
:root{--f-ease:cubic-bezier(.22,1,.36,1);--f-copper:#c7956a;--f-ink:#ddd4c9;--f-dim:#aaa29a}
.f-screen-tools{display:flex;gap:15px;align-items:center}.hero-aside a.play{color:inherit;text-decoration:none}
html{scroll-behavior:auto;scroll-padding-top:26px}
body{overflow-x:clip}
#falu-page{min-height:100svh}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,a{-webkit-touch-callout:default}
button{touch-action:manipulation}
button:active,.j-button:active,.f-branch:active,.collection-card:active{transform:scale(.985);transition-duration:90ms!important}
button,a{transition:transform 240ms var(--f-ease),color 180ms,background-color 180ms,border-color 180ms}
button:focus-visible,a:focus-visible{outline:2px solid #c7956a;outline-offset:5px}
.j-riri-strip,.riri-track,.f-filter-rail{scroll-snap-type:x proximity;scroll-padding-inline:24px}
.j-riri-strip a,.riri-card,.f-filter-rail button{scroll-snap-align:start}
.j-riri-strip,.riri-track{overscroll-behavior-x:contain}
.j-app-art,.j-photo-hero{view-transition-name:none}
::view-transition-old(root){animation:180ms ease both f-depart}
::view-transition-new(root){animation:300ms var(--f-ease) both f-arrive}
@keyframes f-depart{to{opacity:0}}
@keyframes f-arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.f-navigating:before{content:'';position:fixed;z-index:9999;left:0;top:0;width:65%;height:2px;background:#c7956a;animation:f-load 1.8s ease-in-out infinite}
@keyframes f-load{from{transform:translateX(-110%)}to{transform:translateX(155%)}}
.direction-pocket{bottom:calc(18px + env(safe-area-inset-bottom));right:calc(74px + env(safe-area-inset-right))}
.j-toast{bottom:calc(85px + env(safe-area-inset-bottom));max-width:calc(100vw - 40px)}
.f-sound{position:fixed;z-index:90;right:calc(18px + env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));width:46px;height:46px;display:grid;place-items:center;color:#ddd4c9;background:#1b1511e8;border:1px solid #ddd4c93b;border-radius:50%;cursor:pointer;box-shadow:0 6px 20px #0003}
.f-sound[hidden]{display:none}.f-sound-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.f-sound-bars{display:flex;gap:3px;align-items:center;height:17px}.f-sound-bars i{width:2px;height:5px;background:currentColor;border-radius:2px}.f-sound-bars i:nth-child(2){height:13px}.f-sound-bars i:nth-child(3){height:8px}.f-sound.is-playing i{animation:f-sound .95s ease-in-out infinite alternate}.f-sound.is-playing i:nth-child(2){animation-delay:-.45s}.f-sound.is-playing i:nth-child(3){animation-delay:-.7s}@keyframes f-sound{to{height:17px}}
.journey em,.f-home-invitation em{font-style:normal;color:transparent;-webkit-text-stroke:1px #c7956a}
.journey h1:focus,.journey main:focus{outline:none}
.f-room-opening{padding:65px 5vw 48px;display:grid;grid-template-columns:1.5fr 1fr;gap:6vw;align-items:end}
.f-room-opening h1{font-size:clamp(105px,15vw,220px);line-height:.82;margin:30px 0 0}.f-room-note{padding:0 0 12px}.f-room-note p{font-size:20px;line-height:1.65}.f-room-note .j-script-note{margin:24px 0 32px}
.f-filter-rail{position:sticky;top:0;z-index:20;display:flex;gap:8px;padding:20px 5vw;overflow-x:auto;scrollbar-width:none;background:#0e0b09f5;border-bottom:1px solid #ddd4c928;backdrop-filter:blur(12px)}
.f-filter-rail button{flex:0 0 auto;min-height:44px;padding:10px 19px;border:1px solid #ddd4c92b;border-radius:28px;color:#aaa29a;font-size:14px;white-space:nowrap}
.f-filter-rail button[aria-pressed=true]{color:#0e0b09;background:#c7956a;border-color:#c7956a}
.f-film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 30px;padding:42px 5vw 80px;align-items:start}
.f-film-card{min-width:0}.f-film-card:first-child{grid-column:span 2}.f-film-card[hidden]{display:none!important}
.f-film-image{position:relative;display:block;isolation:isolate;width:100%;padding:0;overflow:hidden;border-radius:7px;background:#211811;aspect-ratio:var(--film-ratio);max-height:550px}
.f-film-image img,.f-film-image video{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity 240ms var(--f-ease),transform 600ms var(--f-ease)}
.f-film-image video{opacity:0;pointer-events:none}.f-film-image video.is-ready{opacity:1}.f-film-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0006);pointer-events:none}
.f-play-disc{position:absolute;z-index:2;right:18px;bottom:18px;width:44px;height:44px;border:1px solid #ddd4c977;border-radius:50%;display:grid;place-items:center;background:#17110b66;font-size:23px;backdrop-filter:blur(8px)}
.f-runtime{position:absolute;z-index:2;bottom:22px;left:20px;font-size:13px;letter-spacing:.05em;color:#f0e5d9}
.f-card-copy{position:relative;padding:20px 55px 0 0}.f-card-copy h2{font-size:clamp(27px,2.7vw,42px);line-height:1.02;margin:8px 0}.f-card-copy h2 button{text-align:left;font:inherit;padding:0;min-height:44px}.f-collect{position:absolute;right:0;top:18px;width:44px;height:44px;border:1px solid #ddd4c938!important;border-radius:50%;font-size:24px!important}.f-collect[aria-pressed=true]{background:#c7956a!important;color:#0e0b09!important;border-color:#c7956a!important}
.f-selection-section{border-top:1px solid #ddd4c92b;margin:0 5vw;padding:65px 0 80px;display:grid;grid-template-columns:1fr 1.1fr;gap:20px 7vw}.f-selection-section>.j-kicker{grid-column:1/-1}.f-selection-section h2{font-size:clamp(70px,8vw,120px)}.f-selection-section>p{grid-column:1;margin:10px 0}.f-selection-section #film-selection{grid-column:2;grid-row:2/4}.f-selection-actions{grid-column:1/-1;display:flex;gap:30px;align-items:center;flex-wrap:wrap;padding-top:24px}.f-selection-actions button:disabled{opacity:.38;cursor:default;transform:none}
.f-selected-list{list-style:none;padding:0;margin:0}.f-selected-list li{display:grid;grid-template-columns:25px 68px 1fr 44px;gap:15px;align-items:center;border-bottom:1px solid #ddd4c929;padding:14px 0}.f-selected-number{color:#c7956a;font-size:12px}.f-selected-list img{width:68px;height:64px;object-fit:cover;border-radius:4px}.f-selected-list b{font-size:15px;font-weight:500}.f-selected-list small{display:block;color:#aaa29a;font-size:12px;margin-top:3px}.f-selected-list button{width:44px;height:44px;font-size:25px}.f-selection-empty{padding:40px;border:1px dashed #ddd4c936;border-radius:8px;font-size:16px}.f-share-fallback{grid-column:1/-1}.f-share-fallback input{display:block;box-sizing:border-box;width:100%;padding:14px;background:#211811;color:#ddd4c9;border:1px solid #ddd4c947;font-size:16px}.f-share-fallback label{font-size:14px}
.f-screen{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;padding:24px 5vw calc(24px + env(safe-area-inset-bottom));color:#ddd4c9;background:#0e0b09;overflow-y:auto;box-sizing:border-box}.f-screen::backdrop{background:#080604ef}.f-screen[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px}.f-screen-top{display:flex;justify-content:space-between;align-items:center;gap:24px}.f-screen-top button{min-height:44px;padding:10px 0 10px 20px;font-size:14px}.f-screen-body{min-height:240px;position:relative;display:grid;place-items:center;align-self:stretch}.f-screen video{width:100%;height:100%;max-height:65dvh;object-fit:contain;background:#080604}.f-screen-retry{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#c7956a!important;color:#0e0b09!important;padding:16px 24px;min-height:48px;border-radius:24px}.f-screen-error{position:absolute;left:5%;right:5%;bottom:8%;text-align:center;background:#0e0b09dd;padding:15px}.f-screen-bottom{display:flex;justify-content:space-between;gap:30px}.f-screen-count{font-size:12px;color:#c7956a;letter-spacing:.05em}.f-screen-bottom h2{font-size:40px;line-height:1;margin-top:10px}.f-screen-bottom p{font-size:14px;max-width:680px;margin:10px 0}.f-screen-related{font-size:14px;padding:8px 0}.f-screen-arrows{display:flex;gap:10px;align-items:flex-start;padding-top:15px}.f-screen-arrows button{width:48px;height:48px;border:1px solid #ddd4c94a!important;border-radius:50%;font-size:22px}.f-screen-arrows button:disabled{opacity:.25;cursor:default}
.f-eyes-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:60px 6vw 45px}.f-eyes-intro h1{font-size:clamp(85px,11vw,165px);margin:24px 0}.f-eyes-intro p{font-size:18px}.f-eyes-intro>.j-script-note{margin-bottom:25px;font-size:50px}
.f-perspective{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center;margin:0 6vw 90px}.f-perspective-stage{position:relative;min-width:0;border-radius:10px;background:#1a140f;overflow:hidden;border:1px solid #ddd4c931;height:min(76svh,760px)}
.f-pov-side,.f-finished-side{position:absolute;inset:0 0 76px;margin:0}.f-pov-side video{width:100%;height:100%;object-fit:contain}.f-pov-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:35px;background:#17110bed!important;border:1px solid #ddd4c967!important;padding:18px 28px;white-space:nowrap;font-size:15px;min-height:56px}.f-pov-play small{display:block;font-size:12px;color:#aaa29a;margin-top:3px}.f-pov-play:active{transform:translate(-50%,-50%) scale(.985)}
.f-finished-side{display:grid;grid-template-rows:1fr auto;align-items:center;padding:24px;animation:f-arrive 340ms var(--f-ease)}.f-finished-side img{width:100%;height:100%;min-height:0;object-fit:contain}.f-finished-side figcaption{text-align:center;font-size:12px;color:#aaa29a;padding-top:18px}
.f-perspective-switch{position:absolute;bottom:16px;left:16px;right:16px;display:flex;border-radius:30px;background:#100c09;border:1px solid #ddd4c926;padding:5px;gap:5px}.f-perspective-switch button{flex:1;min-height:44px;padding:10px 14px;border-radius:24px;font-size:14px;color:#aaa29a;white-space:nowrap}.f-perspective-switch button[aria-pressed=true]{background:#c7956a;color:#0e0b09}.f-perspective-switch .f-ready{border:1px solid #c7956a66}.f-perspective-copy h2{font-size:clamp(55px,7vw,100px);margin:25px 0}.f-perspective-copy p{font-size:17px}.f-view-count{display:block;font-size:12px;color:#c7956a;margin:30px 0 16px}
.f-branches{padding:60px 6vw 85px;border-top:1px solid #ddd4c929;display:grid;grid-template-columns:.8fr 1fr 1fr;gap:35px;align-items:start}.f-branches h2{font-size:clamp(60px,6.5vw,100px);margin-top:25px}.f-branch{display:block;border-radius:6px;overflow:hidden;background:#1b1511}.f-branch img{width:100%;aspect-ratio:4/3;object-fit:cover}.f-branch>span{padding:24px;display:block;font-size:13px;color:#aaa29a}.f-branch strong{display:block;font-size:26px;line-height:1.1;font-family:'Barlow Condensed',sans-serif;font-weight:500;color:#ddd4c9;margin-top:12px}
.f-custom-hero{position:relative;min-height:min(83svh,900px);display:flex;align-items:flex-end;padding:65px 6vw;background:#17110d;isolation:isolate}.f-custom-hero>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}.f-custom-hero:after{content:'';z-index:-1;position:absolute;inset:0;background:linear-gradient(90deg,#0e0b09cc,#0e0b0910),linear-gradient(0deg,#0e0b09bb,transparent 55%)}.f-custom-hero h1{font-size:clamp(80px,10vw,160px);margin:20px 0 30px}.f-custom-intro{display:grid;grid-template-columns:1.5fr 1fr;gap:25px 8vw;padding:70px 6vw}.f-custom-intro>.j-kicker{grid-column:1/-1}.f-custom-intro h2{font-size:clamp(70px,8vw,120px)}.f-custom-intro>p{align-self:end;font-size:18px}.f-custom-screen{padding:20px 6vw 70px}.f-custom-screen video{aspect-ratio:16/9;object-fit:contain}.f-after-film{display:flex;gap:35px;justify-content:space-between;padding-top:16px}
.f-home-invitation{padding:80px 6vw;color:#ddd4c9}.f-home-invitation>a:first-child{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:8vw;color:inherit;text-decoration:none}.f-invitation-image{background:#1b1511;border-radius:7px;padding:30px}.f-invitation-image img{display:block;width:100%;height:auto}.f-home-invitation h2{font-family:'Barlow Condensed',sans-serif;font-size:clamp(75px,10vw,150px);font-weight:600;line-height:.85;letter-spacing:-.02em;margin:25px 0}.f-home-invitation p{color:#aaa29a;font-size:17px;line-height:1.6}.f-room-door{display:grid;grid-template-columns:1fr 1fr auto;gap:25px;align-items:center;color:#ddd4c9;text-decoration:none;padding:38px 0;margin-top:65px;border-top:1px solid #ddd4c932;border-bottom:1px solid #ddd4c932}.f-room-door strong{font:500 45px/.95 'Barlow Condensed',sans-serif}.f-room-door>span:last-child{font-size:14px}.f-home-invitation .j-text-link{margin-top:15px}#film-brief-selection{font-size:15px;margin-top:24px}#film-brief-selection a{display:block;min-height:44px;padding-top:8px;color:#ddd4c9}
@media(hover:hover) and (pointer:fine){.f-film-image:hover img{transform:scale(1.025)}.f-branch:hover{transform:translateY(-3px)}.f-collect:hover{background:#c7956a26}.f-screen button:hover{color:#c7956a}}
@media(hover:none){.j-button:hover{transform:none;filter:none}.project-media:hover,.collection-card:hover{transform:none}.f-play-disc{background:#17110b99}}
@media(max-width:1000px){.f-film-grid{gap:38px 22px}.f-perspective{gap:5vw}.f-perspective-switch button{font-size:13px;padding:10px}.j-header nav{gap:20px}}
@media(max-width:760px){
 .journey .j-header{padding:18px 22px;gap:14px}.j-header nav{gap:18px;overflow-x:auto;white-space:nowrap;max-width:calc(100vw - 130px);scrollbar-width:none}.j-header nav a{font-size:13px;flex:0 0 auto}.j-header nav a:nth-child(2){display:inline-flex}.j-header nav a:last-child{max-width:none}.j-brand{flex-shrink:0}
 .f-room-opening{display:block;padding:42px 24px 28px}.f-room-opening h1{font-size:clamp(95px,28vw,180px);margin:25px 0;line-height:.83}.f-room-note p{font-size:16px}.f-room-note .j-script-note{display:none}.f-room-note .j-text-link{margin-top:5px}.f-filter-rail{padding:14px 24px;gap:7px}.f-filter-rail button{padding:10px 17px}
 .f-film-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:33px 17px;padding:28px 22px 55px}.f-film-card:first-child{grid-column:1/-1}.f-film-image{max-height:430px;border-radius:6px}.f-card-copy{padding:15px 0 0}.f-card-copy h2{font-size:28px;max-width:calc(100% - 34px);margin:7px 0}.f-card-copy h2 button{min-height:44px}.f-collect{width:44px;height:44px;right:-5px;top:34px}.f-card-copy .j-kicker{font-size:11px}.f-play-disc{right:12px;bottom:12px;width:36px;height:36px;font-size:21px}.f-runtime{left:12px;bottom:15px;font-size:12px}
 .f-selection-section{display:block;margin:0 24px;padding:45px 0 55px}.f-selection-section h2{font-size:77px;margin:25px 0}.f-selection-section>p{margin:20px 0 30px}.f-selection-actions{gap:15px 25px;align-items:stretch}.f-selection-actions>.j-button{width:100%}.f-selected-list li{gap:10px;grid-template-columns:20px 55px 1fr 44px}.f-selected-list img{width:55px;height:55px}.f-selected-list b{font-size:14px}.f-selection-empty{padding:25px}
 .f-screen{padding:calc(12px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));}.f-screen[open]{gap:10px;grid-template-rows:auto minmax(200px,1fr) auto}.f-screen-top .j-kicker{font-size:11px}.f-screen video{max-height:59dvh}.f-screen-body{min-height:200px}.f-screen-bottom{gap:14px}.f-screen-bottom h2{font-size:31px}.f-screen-bottom p{font-size:13px;line-height:1.45;max-width:270px}.f-screen-arrows{gap:7px;flex-direction:column;padding-top:20px}.f-screen-arrows button{width:44px;height:44px}.f-screen-related{font-size:13px;line-height:1.4}
 .f-eyes-intro{display:block;padding:40px 24px 25px}.f-eyes-intro h1{font-size:clamp(73px,20vw,130px);margin:22px 0}.f-eyes-intro p{font-size:16px}.f-eyes-intro>.j-script-note{font-size:38px;margin:28px 0 5px}.f-perspective{grid-template-columns:1fr;gap:30px;margin:0 20px 50px}.f-perspective-stage{height:min(74svh,640px)}.f-perspective-copy{padding:0 4px}.f-perspective-copy h2{font-size:65px;margin:20px 0}.f-perspective-copy p{font-size:16px}.f-view-count{margin:24px 0 8px}.f-perspective-switch{left:10px;right:10px;bottom:12px}.f-perspective-switch button{font-size:13px}.f-finished-side{padding:18px}.f-finished-side figcaption{font-size:12px;line-height:1.45}
 .f-branches{grid-template-columns:1fr 1fr;gap:22px 16px;padding:40px 24px 60px}.f-branches>div{grid-column:1/-1}.f-branches h2{font-size:69px;margin:20px 0 10px}.f-branch img{aspect-ratio:4/5}.f-branch>span{padding:17px 14px;font-size:12px}.f-branch strong{font-size:25px;line-height:1.1}.f-custom-hero{min-height:68svh;padding:45px 24px}.f-custom-hero>img{object-position:center}.f-custom-hero h1{font-size:22vw}.f-custom-intro{display:block;padding:45px 24px 25px}.f-custom-intro h2{font-size:72px;margin:22px 0}.f-custom-intro>p{font-size:16px}.f-custom-screen{padding:20px 20px 50px}.f-after-film{gap:15px}.f-after-film .j-text-link{font-size:13px}.f-custom-screen .j-section-heading h2{font-size:48px}.f-custom-screen .j-script-note{font-size:33px;margin-top:20px}
 .f-home-invitation{padding:50px 24px}.f-home-invitation>a:first-child{grid-template-columns:1fr;gap:28px}.f-invitation-image{padding:15px}.f-home-invitation h2{font-size:100px}.f-home-invitation p{font-size:16px}.f-room-door{grid-template-columns:1fr;gap:18px;padding:27px 0;margin-top:40px}.f-room-door strong{font-size:48px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}button:active,a:active{transform:none!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.f-navigating:before{width:100%}.f-pov-play:active{transform:translate(-50%,-50%)!important}}
