/* Studio K: mobile-first photographic motion, revision 2. */
.cinema{display:block;position:relative;height:calc(100svh - 100px);min-height:660px;max-height:1080px;padding:0;background:#25161e;color:#fff7f2;isolation:isolate}.cinema-stage{position:absolute;inset:0;overflow:hidden}.cinema-shot{position:absolute;inset:0 0 0 29%;margin:0;opacity:0;transition:opacity 1.2s cubic-bezier(.22,1,.36,1);overflow:hidden;pointer-events:none}.cinema-shot.is-active{opacity:1;z-index:1}.cinema-shot img{width:100%;height:100%;object-position:center 47%;transform:scale(1.08);animation:none;clip-path:none}.cinema-shot.is-active img{animation:cinema-breathe 7s linear both;animation-play-state:paused}.cinema-shade{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,#25161e 4%,#25161ef2 23%,#25161e65 59%,#25161e18 100%),linear-gradient(0deg,#25161ec2 0%,transparent 27%);pointer-events:none}.cinema-frame{position:absolute;inset:24px;border:1px solid #fbf7f430;z-index:3;pointer-events:none}.cinema .hero-copy{position:absolute;left:7.1%;top:50%;transform:translateY(-50%);z-index:4;max-width:65%}.cinema h1{margin-bottom:30px;font-size:clamp(64px,7.7vw,110px);font-weight:500;line-height:.96;letter-spacing:-.03em}.cinema h1 em{color:#eebacb}.hero-line{display:block;overflow:hidden;padding-bottom:6px}.hero-line>span{display:block;animation:none}.cinema .hero-copy>p{font-size:14px;color:#f5e4eb;line-height:1.8;margin-bottom:29px;max-width:380px}.cinema .button{background:#f3dfdf;color:#482735;border-color:#f3dfdf;min-height:57px;padding:17px 26px;font-size:12px}.cinema .button:hover{background:#fff7f2}.cinema-bottom{position:absolute;left:7.1%;right:7.1%;bottom:48px;display:flex;justify-content:space-between;align-items:center;gap:25px;z-index:4}.cinema-scroll{display:flex;align-items:center;gap:20px;font-size:11px;color:#f5e4eb}.cinema-scroll svg{width:20px;height:35px}.scene-controls{display:flex;align-items:center;gap:17px}.scene-dot{padding:10px 0;background:none;border:0;color:#e6d8dd;min-width:57px;text-align:left;font-size:11px;line-height:1.3}.scene-dot span{display:block;margin-bottom:9px}.scene-dot i{display:block;height:2px;width:100%;background:#fbf7f445;position:relative;overflow:hidden}.scene-dot i:after{content:'';position:absolute;inset:0;background:#efbbc9;transform:scaleX(0);transform-origin:left}.scene-dot[aria-pressed=true]{color:#fff7f2}.scene-dot[aria-pressed=true] i:after{animation:scene-progress 6.8s linear both;animation-play-state:paused}.motion-toggle{width:44px;height:44px;border:1px solid #fbf7f477;border-radius:50%;display:grid;place-items:center;color:inherit;background:#25161e30}.motion-toggle svg{width:19px;height:19px}.motion-toggle .play-icon{display:none}.motion-toggle[aria-pressed=true] .play-icon{display:block}.motion-toggle[aria-pressed=true] .pause-icon{display:none}.cinema :focus-visible{outline-color:#fff7f2}.beauty-ribbon{overflow:hidden;background:var(--wine);color:#f3dee4;padding:20px 0;contain:paint}.ribbon-track{display:flex;width:max-content;align-items:center;gap:37px;animation:ribbon-flow 32s linear infinite;animation-play-state:paused}.ribbon-track span{font-family:var(--serif);font-size:30px;white-space:nowrap;font-style:italic;line-height:1.1}.ribbon-track svg{width:18px;height:18px;color:#ce9fae;flex:none}.ribbon-track.is-running{animation-play-state:running}.motion-running .cinema-shot.is-active img,.motion-running .scene-dot[aria-pressed=true] i:after{animation-play-state:running}.motion-active .hero-line>span{animation:hero-line-in 1.1s cubic-bezier(.16,1,.3,1) both}.motion-active .hero-line:nth-child(2)>span{animation-delay:.12s}.motion-active .hero-line:nth-child(3)>span{animation-delay:.24s}.motion-active .cinema-frame{animation:frame-in 1.8s var(--ease) both}.motion-active .cinema-scroll svg{animation:scroll-invitation 2.2s ease-in-out infinite;animation-play-state:paused}.motion-running .cinema-scroll svg{animation-play-state:running}.motion-ready [data-motion=reveal]{opacity:1;transform:translate3d(0,0,0);transition:opacity .9s var(--ease),transform .9s var(--ease),clip-path 1.2s var(--ease)}.motion-ready [data-motion=reveal]:not(.is-revealed){opacity:.24;transform:translate3d(0,40px,0)}.motion-ready [data-motion=photo]{clip-path:inset(0);transition:clip-path 1.1s var(--ease)}.motion-ready [data-motion=photo]:not(.is-revealed){clip-path:inset(12% 0 12% 0)}.intro h2,.section-heading h2,.reservation h2{transform:translate3d(0,var(--heading-shift,0px),0)}.service-photo img{transform:scale(1.02) translate3d(0,var(--photo-shift,0px),0)}.service-photo{overflow:hidden}.gallery-item{transform:translate3d(0,var(--gallery-shift,0px),0)}.gallery-item img{transform:scale(1.045) translate3d(0,var(--image-shift,0px),0);aspect-ratio:3/4}.gallery-item:hover img{transform:scale(1.07) translate3d(0,var(--image-shift,0px),0)}.gallery-filters{position:relative}.gallery-filters button{position:relative;z-index:1;transition:color .25s,border .25s}.gallery-filters button[aria-pressed=true]{background:var(--wine)}.service-content{overflow:hidden}.button:active,.gallery-filters button:active,.scene-dot:active{transform:scale(.97)}.menu-button span{transition:transform .35s var(--ease)}.site-header nav.open{animation:menu-arrive .4s var(--ease) both}.photo-dialog-arriving{animation:lightbox-arrive .45s var(--ease) both}.motion-paused [data-motion]{transform:none!important;clip-path:none!important;opacity:1!important}.motion-paused .ribbon-track{animation-play-state:paused}.motion-paused .hero-line>span{animation:none}.motion-paused .cinema-frame{animation:none}.motion-paused .cinema-scroll svg{animation-play-state:paused}.motion-paused .scene-dot[aria-pressed=true] i:after{transform:scaleX(1);animation:none}.motion-paused .cinema-shot img{animation:none;transform:scale(1.04)}
@keyframes cinema-breathe{from{transform:scale(1.04) translate3d(0,0,0)}to{transform:scale(1.16) translate3d(-1%,-1%,0)}}@keyframes scene-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes hero-line-in{from{transform:translate3d(0,105%,0);opacity:.4}to{transform:translate3d(0,0,0);opacity:1}}@keyframes frame-in{from{clip-path:inset(50%)}to{clip-path:inset(0)}}@keyframes scroll-invitation{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}@keyframes ribbon-flow{to{transform:translateX(-33.333333%)}}@keyframes menu-arrive{from{opacity:.4;clip-path:inset(0 0 100%)}to{opacity:1;clip-path:inset(0)}}@keyframes lightbox-arrive{from{opacity:.3;transform:translateY(25px) scale(.96)}to{opacity:1;transform:none}}
@media(max-width:1100px){.cinema{min-height:640px}.cinema h1{font-size:clamp(66px,8vw,92px)}}@media(max-width:760px){.cinema{height:calc(100svh - 83px);min-height:600px;max-height:900px;padding:0}.cinema-shot{inset:0}.cinema-shot img{object-position:52% 42%}.cinema-shade{background:linear-gradient(0deg,#25161eee 0%,#25161eaf 28%,#25161e40 67%,#25161e20 100%)}.cinema-frame{inset:14px}.cinema .hero-copy{left:8%;right:8%;top:auto;bottom:130px;transform:none;max-width:none}.cinema h1{font-size:clamp(61px,14vw,84px);line-height:.93;margin-bottom:20px}.hero-line{padding-bottom:5px}.cinema .hero-copy>p{font-size:12px;line-height:1.75;margin-bottom:22px;max-width:320px}.cinema .button{min-height:50px;padding:14px 21px;font-size:12px;gap:34px}.cinema-bottom{left:8%;right:8%;bottom:36px;gap:15px;align-items:flex-end}.cinema-scroll{font-size:11px;max-width:70px;gap:10px;line-height:1.45}.cinema-scroll svg{width:17px;height:31px}.scene-controls{gap:12px}.scene-dot{min-width:44px;font-size:11px}.motion-toggle{width:36px;height:36px}.beauty-ribbon{padding:17px 0}.ribbon-track{gap:24px}.ribbon-track span{font-size:26px}.ribbon-track svg{width:15px;height:15px}.intro{padding-top:72px}.section-heading h2{font-size:50px}.gallery-item:nth-child(even){margin-top:28px}.motion-ready [data-motion=reveal]:not(.is-revealed){transform:translate3d(0,30px,0)}.whatsapp-float{bottom:15px;right:15px}.photo-note{display:none}}
@media(max-width:380px){.cinema{min-height:590px}.cinema .hero-copy{bottom:132px}.cinema h1{font-size:clamp(52px,15.5vw,59px)}.cinema-scroll{display:none}.cinema-bottom{justify-content:flex-end}.scene-controls{width:100%;justify-content:space-between}.scene-dot{min-width:55px}.section-heading h2{font-size:44px}}
@media(prefers-reduced-motion:reduce){.cinema-shot{transition:opacity .18s!important}.cinema-shot img{animation:none!important;transform:none}.motion-ready [data-motion=reveal],.motion-ready [data-motion=photo]{opacity:1!important;transform:none!important;clip-path:none!important}.ribbon-track{animation:none!important}.motion-active .hero-line>span,.motion-active .cinema-frame,.motion-active .cinema-scroll svg{animation:none!important}.scene-dot[aria-pressed=true] i:after{animation:none!important;transform:scaleX(1)}body.motion-active.motion-user-enabled .cinema-shot.is-active img{animation:cinema-breathe 7s linear both!important;animation-play-state:paused!important}body.motion-active.motion-user-enabled.motion-running .cinema-shot.is-active img{animation-play-state:running!important}body.motion-active.motion-user-enabled .ribbon-track{animation:ribbon-flow 32s linear infinite!important;animation-play-state:paused!important}body.motion-active.motion-user-enabled .ribbon-track.is-running{animation-play-state:running!important}}
/* Native layout and touch targets remain stable while the photography moves. */
@media(max-width:760px){.scene-dot{min-height:44px}.cinema-bottom{bottom:28px}.motion-toggle{width:44px;height:44px}.scene-controls{gap:10px}.gallery-filters button{min-height:44px}.menu-button{width:44px;height:44px}}

.motion-paused .site-header nav.open,.motion-paused .photo-dialog-arriving{animation:none!important}.motion-active .service-page h1{animation:type-enter .8s var(--ease) both}

.motion-toggle{position:relative}.motion-label{position:absolute;right:0;bottom:53px;width:max-content;max-width:190px;font-size:11px;background:#25161edb;padding:7px 12px;color:#fff7f2;border:1px solid #fbf7f455}.motion-label:empty{display:none}
/* Editorial typography keeps the mobile content as considered as the opening scene. */
.intro-copy p,.section-heading>p,.service-content p,.reservation>div>p,.faq details p{font-size:14px;line-height:1.85}.service-content ul{font-size:13px;line-height:1.7;gap:11px 22px}.service-content .text-link,.catalog-link,.insta-link{font-size:12px}.location address{font-size:14px}.hours dl{font-size:13px}.faq summary{font-size:14px;min-height:62px}.field label{font-size:12px}.gallery-item span{font-size:12px;line-height:1.6}.button,.cinema .button{font-size:13px}.form-note{font-size:12px;line-height:1.7}.verified{font-size:11px}.service-page-layout>div>p:first-of-type{font-size:15px;line-height:1.8}.service-page ul{font-size:14px}
@media(max-width:760px){.intro-copy p,.section-heading>p,.service-content p,.reservation>div>p,.faq details p{font-size:14px}.service-content ul{font-size:12px}.gallery-item span{font-size:12px}.cinema .hero-copy>p{font-size:13px}}

/* Automatic business map and direct Google review invitation. */
.map-shell{position:relative;display:block;overflow:hidden}.map-shell iframe{position:absolute;inset:0;width:100%;height:100%;min-height:0;border:0}.review-invitation{margin-top:22px;padding:25px;background:var(--paper);color:var(--wine)}.review-rating{display:flex;align-items:center;gap:10px;font-size:12px;margin-bottom:17px}.review-rating svg{width:18px;height:18px}.review-invitation h3{font-family:var(--serif);font-size:34px;font-weight:500;line-height:1.1;letter-spacing:-.02em}.review-invitation p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:13px;max-width:390px}.review-button{display:flex;width:100%;margin-top:21px;min-height:52px;font-size:14px}.location .review-invitation :focus-visible{outline-color:var(--wine)}
