/* Cinematic layer — the source copy, navigation and typography remain intact. */
.hero{isolation:isolate}.cinema-hero{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 78% 15%,#fff8e2a6,transparent 52%),radial-gradient(ellipse at 15% 85%,#c2ab8d24,transparent 50%);transform:translateY(var(--hero-depth,0px)) scale(1.08)}
.cinema-window{position:absolute;inset:-30%;background:repeating-linear-gradient(105deg,transparent 0 15%,#63564c14 15.7% 19%,transparent 19.8% 30%),linear-gradient(145deg,transparent 25%,#fff9e660 47%,transparent 66%);filter:blur(17px);transform:rotate(-9deg);animation:window-light 24s ease-in-out infinite alternate}
.cinema-dust{position:absolute;inset:0;background-image:radial-gradient(circle,#fffefad9 1px,transparent 2px),radial-gradient(circle,#8f7e6038 .7px,transparent 1.4px);background-size:173px 139px,239px 191px;opacity:.32;mask-image:linear-gradient(100deg,transparent 25%,#000 80%);animation:paper-dust 28s linear infinite alternate}
.hero-orbit{opacity:.7}.hero-copy{position:relative;z-index:3}.hero-title,.hero-statement{text-shadow:0 2px 28px #eee9de40}
.world-card{isolation:isolate}.world-card:after{content:"";position:absolute;inset:-25%;z-index:1;pointer-events:none;background:linear-gradient(115deg,transparent 30%,#fff7df65 49%,transparent 65%);transform:translateX(-45%);transition:transform 1.5s ease,opacity 1s;opacity:0}
.world-card:hover:after,.world-card:focus-visible:after{opacity:.65;transform:translateX(35%)}
.world-index,.world-enter,.world-content,.teen-note{z-index:3;position:relative}
.child-doodle{z-index:2}.cine-ready .child-doodle path,.cine-ready .child-doodle circle{stroke-dasharray:var(--draw-length);stroke-dashoffset:var(--draw-length);transition:stroke-dashoffset 2.4s cubic-bezier(.2,.6,.3,1)}
.cine-ready .world-child.in-scene .child-doodle path,.cine-ready .world-child.in-scene .child-doodle circle{stroke-dashoffset:0}.child-doodle path:nth-child(2){transition-delay:.3s}.child-doodle circle{transition-delay:.55s}
.world-teen.in-scene .teen-note-a{animation:note-a 9s ease-in-out infinite alternate}.world-teen.in-scene .teen-note-b{animation:note-b 11s ease-in-out infinite alternate}
.world-adult:after{opacity:.6;transform:translateX(-15%);animation:adult-light 18s ease-in-out infinite alternate;background:linear-gradient(115deg,transparent 25%,#f7e9cb28 48%,#1b222119 60%,transparent 72%)}
.idea{isolation:isolate;background:#272824}.idea-inner{position:relative;z-index:3}.cinema-frost{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 82% 45%,#78685d25,transparent 60%)}
.cinema-frost i{position:absolute;width:48vw;height:75%;top:5%;right:-12%;border-radius:50%;background:radial-gradient(ellipse,#deba8b30,transparent 65%);filter:blur(45px);animation:frost-drift 24s ease-in-out infinite alternate}
.cinema-frost i:nth-child(2){right:18%;top:35%;background:radial-gradient(ellipse,#a6b3a520,transparent 65%);animation-delay:-12s}.cinema-frost i:nth-child(3){width:10%;right:45%;top:-15%;height:130%;background:#ddd0b40c;transform:rotate(25deg);filter:blur(18px);animation-duration:30s}
.idea-small{color:#ddd6cbe0}.idea-title{color:#f4eee5}.idea-title span{color:#d6b9b3}.idea .reveal:not(.visible){opacity:.82;transform:translateY(16px)}.idea-title.visible{transition-duration:1.4s}.idea-title>span{transition:transform 1.6s;transform:translateY(calc(var(--idea-depth,0px)*.12))}
.maria{isolation:isolate;position:relative}.maria:before{content:"";position:absolute;inset:8% 48% 5% -15%;background:radial-gradient(ellipse,#e4cda660,transparent 67%);pointer-events:none;animation:portrait-light 20s ease-in-out infinite alternate}
.maria-photo{z-index:2}.cine-ready .photo-placeholder{clip-path:inset(0 0 0 0 round 48% 52% 43% 57% / 58% 44% 56% 42%);transition:clip-path 1.6s cubic-bezier(.2,.7,.2,1)}
.cine-ready .maria-photo:not(.in-scene) .photo-placeholder{clip-path:inset(7% 7% 7% 7% round 48% 52% 43% 57% / 58% 44% 56% 42%)}
.photo-placeholder img{transform:scale(1.035) translateY(var(--photo-depth,0px));transition:transform 1.2s ease;will-change:auto}.maria-photo.in-scene .photo-placeholder img{transform:scale(1.015) translateY(var(--photo-depth,0px))}
.contact{position:relative;isolation:isolate;overflow:hidden;background:#60444b}.contact-inner{position:relative;z-index:3}.cinema-dawn{position:absolute;inset:-30%;background:radial-gradient(ellipse at 70% 80%,#d9b59755,transparent 60%),linear-gradient(135deg,transparent 35%,#e7c5a51a 60%,transparent 80%);transform:translateY(var(--contact-depth,0px));animation:dawn-light 22s ease-in-out infinite alternate;pointer-events:none}
.contact-title,.contact-copy{color:#fff5ed}.contact .main-button{box-shadow:0 10px 35px #2b1c2520;transition:transform .3s,box-shadow .3s}.contact .main-button:hover{transform:translateY(-3px);box-shadow:0 14px 40px #24162138}
html.cinema-paused .cinema-window,html.cinema-paused .cinema-dust,html.cinema-paused .cinema-frost i,html.cinema-paused .teen-note,html.cinema-paused .world-adult:after,html.cinema-paused .maria:before,html.cinema-paused .cinema-dawn{animation-play-state:paused}
@keyframes window-light{from{transform:translate3d(-3%,0,0) rotate(-9deg);opacity:.65}to{transform:translate3d(4%,2%,0) rotate(-6deg);opacity:1}}
@keyframes paper-dust{to{transform:translate3d(12px,-22px,0)}}
@keyframes note-a{from{translate:0 0;rotate:-1deg}to{translate:3px -7px;rotate:1deg}}
@keyframes note-b{from{translate:0 0;rotate:1deg}to{translate:-4px 5px;rotate:-1deg}}
@keyframes adult-light{to{transform:translateX(25%)}}
@keyframes frost-drift{from{translate:-3% 2%;scale:.95}to{translate:10% -5%;scale:1.1}}
@keyframes portrait-light{to{opacity:.65;transform:translateY(15px)}}
@keyframes dawn-light{from{opacity:.65;translate:0 1%}to{opacity:1;translate:-2% -2%}}
@media(max-width:760px){.cinema-window{filter:blur(10px);animation-duration:30s}.cinema-frost i{width:90vw;filter:blur(25px)}.cinema-dust{opacity:.22}.maria:before{inset:2% -20% 45%}.cinema-frost i:nth-child(3){display:none}}
@media(prefers-reduced-motion:reduce){.cinema-hero,.cinema-dawn,.photo-placeholder img,.idea-title>span{transform:none!important}.cine-ready .photo-placeholder{clip-path:none}.cine-ready .child-doodle path,.cine-ready .child-doodle circle{stroke-dashoffset:0}.idea .reveal{opacity:1;transform:none}}
.teen-note{position:absolute}
.gsap-cinema .cinema-window,.gsap-cinema .cinema-dust,.gsap-cinema .cinema-frost i,.gsap-cinema .teen-note,.gsap-cinema .cinema-dawn{animation:none;transform:none;translate:none;rotate:none;scale:none}
.gsap-cinema .photo-placeholder,.gsap-cinema .photo-placeholder img,.gsap-cinema .idea-title>span,.gsap-cinema .child-doodle path,.gsap-cinema .child-doodle circle{transition:none}
.gsap-cinema .photo-placeholder img{transform:none}
.cinema-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.cinema-hero .cinema-video{opacity:.62;mix-blend-mode:multiply}.cinema-frost .cinema-video{opacity:.85}
html,body{overflow-x:clip}.maria{overflow:clip}
.cinema-control{position:fixed;z-index:100;right:18px;bottom:18px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #978b7e70;border-radius:50%;background:#f5efe5ed;color:#594c47;box-shadow:0 3px 15px #201a1510;cursor:pointer;transition:background .2s}
.cinema-control:hover{background:#fff9ef}.cinema-control:focus-visible{outline:2px solid #684955;outline-offset:4px}.cinema-control[aria-pressed="true"]{color:#856d5b;background:#e4d8ca}.cinema-control[aria-pressed="true"] svg{opacity:.45}
@media(prefers-reduced-motion:reduce){.cinema-video{display:none}.cinema-control{display:none}}
