/* Homepage-only product scene. Native layers; no video or 3D runtime. */
.home-cinema{overflow:hidden;background:linear-gradient(180deg,#fff 55%,#f4f8fb);padding:calc(var(--header-h) + 28px) 24px 44px;color:#0b1b34}
.cinema-intro{text-align:center;max-width:1000px;margin:auto;position:relative;z-index:2}
.cinema-eyebrow{font-size:12px;font-weight:700;letter-spacing:.15em;color:#0e7490}
.cinema-intro h1{font-family:var(--font-heading);font-size:clamp(42px,5.7vw,78px);font-weight:700;letter-spacing:-.05em;line-height:1.04;margin:24px 0 20px}
.cinema-intro h1 span{background:linear-gradient(90deg,var(--accent-start),var(--accent-end));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.cinema-tagline{font-size:clamp(18px,2vw,23px);font-weight:600;margin:0 0 16px}.cinema-lead{max-width:640px;margin:0 auto;color:#475569;font-size:17px;line-height:1.65}
.cinema-actions{display:flex;align-items:center;justify-content:center;gap:26px;margin-top:25px}.cinema-call{color:#0b1b34;font-weight:600;font-size:15px;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;gap:8px}.cinema-call:hover{text-decoration:underline}.cinema-rating{font-size:13px;color:#5d6b80;margin:20px 0 0}.cinema-rating>span{color:#986500;letter-spacing:2px;margin-right:8px}.cinema-rating strong{color:#0b1b34}
.cinema-stage{position:relative;max-width:1160px;height:560px;margin:18px auto 0;isolation:isolate;perspective:1300px;--tilt:-7deg}
.cinema-glow{position:absolute;inset:8% 8% 0;background:radial-gradient(ellipse,#c9f0f8 0,transparent 65%);z-index:-1}
.cinema-map{position:absolute;width:830px;height:400px;top:94px;left:calc(50% - 415px);transform:rotateX(49deg) rotateZ(var(--tilt));border-radius:48px;box-shadow:0 5px 0 #d3e1eb,0 11px 0 #e7eff5,0 40px 45px -30px #607c92;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.cinema-map svg{display:block;width:100%;height:100%;border:2px solid white;border-radius:48px}

.cinema-pin{position:absolute;width:156px;top:85px;left:calc(50% - 122px);filter:drop-shadow(10px 22px 13px #255b7833);transform:rotate(-9deg);z-index:2;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.cinema-profile{position:absolute;top:60px;right:82px;width:338px;border:1px solid #fff;border-radius:29px;overflow:hidden;background:#fff;box-shadow:3px 7px 0 #d6e3ec,0 30px 60px -30px #52758f;transform:rotateY(-12deg) rotateZ(4deg);transition:transform .7s cubic-bezier(.2,.7,.2,1);z-index:4}
.cinema-cover{height:134px;background:linear-gradient(125deg,#117e9b,#0b2946);text-align:center;color:white}.cinema-cover svg{display:block;width:100%;height:98px}.cinema-cover>span{font-size:12px;color:#fff}.cinema-profile-body{padding:23px}.cinema-small{font-size:9px;letter-spacing:.13em;color:#53657a;font-weight:700}.cinema-business{display:block;font-family:var(--font-heading);font-size:28px;letter-spacing:-.03em;margin-top:5px}.cinema-profile-body p{font-size:12px;margin:4px 0 15px;color:#53657a}.cinema-profile-stars{font-size:17px;color:#986500;letter-spacing:1px}.cinema-profile-stars span{color:#53657a;font-size:10px;letter-spacing:0;margin-left:5px}.cinema-profile-actions{display:flex;gap:7px;margin-top:22px}.cinema-profile-actions span{flex:1;border-radius:18px;padding:9px 2px;text-align:center;background:#edf6fa;color:#0e627b;font-size:11px;font-weight:600}
.cinema-float{position:absolute;z-index:5;display:flex;align-items:center;gap:13px;padding:17px 22px;background:#fffffff2;border:1px solid #fff;border-radius:22px;box-shadow:0 4px 0 #e1ebf2,0 24px 38px -24px #577b94;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.cinema-float strong,.cinema-float div>span{display:block}.cinema-float strong{font-size:14px}.cinema-float div>span{font-size:11px;color:#53657a;margin-top:3px}.cinema-round{display:grid;place-items:center;background:#e8f7fb;color:#0e7490;border-radius:16px;width:40px;height:40px;font-size:24px}.cinema-review{left:27%;top:360px;transform:rotate(-5deg)}.cinema-contact{right:10px;top:420px;transform:rotate(4deg)}
.cinema-stage[data-step="1"] .cinema-profile{transform:rotateY(0) rotateZ(0) translateY(-12px)}.cinema-stage[data-step="1"] .cinema-review{transform:rotate(0) translateY(-24px) scale(1.06)}.cinema-stage[data-step="2"] .cinema-contact{transform:rotate(0) translateY(-28px) scale(1.06)}.cinema-stage[data-step="2"] .cinema-profile{transform:rotateY(0) rotateZ(-3deg)}.cinema-stage[data-step="0"] .cinema-pin{transform:rotate(-9deg) translateY(-14px)}
.cinema-illustration{position:absolute;bottom:5px;left:0;right:0;text-align:center;font-size:11px;color:#627386;margin:0}.cinema-controls{display:flex;justify-content:center;gap:8px;position:relative;z-index:6;margin:20px auto 0;flex-wrap:wrap}.cinema-controls button{font:600 14px var(--font-body);padding:14px 20px;min-height:48px;background:#fff;color:#475569;border:1px solid #dce5ec;border-radius:30px;transition:background .2s,color .2s;cursor:pointer}.cinema-controls button span{font-size:11px;margin-right:7px;opacity:1}.cinema-controls button[aria-pressed="true"]{background:#0b1b34;color:#fff;border-color:#0b1b34}.cinema-controls button:focus-visible,.cinema-call:focus-visible{outline:3px solid #0e7490;outline-offset:4px}.cinema-caption{font-size:15px;color:#475569;max-width:670px;min-height:48px;line-height:1.6;text-align:center;margin:20px auto 0}.cinema-audience{text-align:center;font-size:12px;color:#627386;margin:22px auto 0}
@media(max-width:999px){.home-cinema{padding-top:calc(var(--header-h) + 36px)}.cinema-stage{max-width:710px;height:500px}.cinema-map{width:650px;height:350px;left:calc(50% - 325px);top:90px}.cinema-profile{right:15px;width:300px;top:40px}.cinema-pin{display:none}.cinema-review{left:22px;top:360px}.cinema-contact{display:none}.cinema-illustration{bottom:3px}}
@media(max-width:600px){.home-cinema{padding:calc(var(--header-h) + 24px) 20px 32px}.cinema-eyebrow{font-size:10px;letter-spacing:.09em}.cinema-intro h1{font-size:clamp(32px,9.4vw,43px);margin-top:20px}.cinema-tagline{font-size:17px}.cinema-lead{font-size:15px}.cinema-actions{flex-direction:column;gap:8px;margin-top:23px}.cinema-actions .btn{width:100%;max-width:330px}.cinema-call{font-size:14px}.cinema-stage{height:auto;margin-top:30px;display:flex;flex-direction:column;align-items:center;gap:25px;perspective:none}.cinema-map,.cinema-glow,.cinema-float{display:none}.cinema-profile{position:relative;top:auto;right:auto;width:min(100%,338px);transform:none!important;box-shadow:0 15px 35px -23px #567489;order:1}.cinema-cover{height:108px}.cinema-cover svg{height:76px}.cinema-profile-body{padding:20px}.cinema-illustration{position:relative;bottom:auto;order:2;font-size:10px}.cinema-controls{margin-top:30px;gap:6px}.cinema-controls button{font-size:12px;padding:11px 13px}.cinema-controls button span{display:none}.cinema-caption{font-size:14px;min-height:68px}.cinema-audience{line-height:1.8;margin-top:8px}}
@media(prefers-reduced-motion:reduce){.home-cinema *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Portrait anchors the introduction, independently of the illustrative scene. */
.cinema-portrait{width:208px;height:238px;margin:18px auto -8px;filter:drop-shadow(0 9px 12px #12355124)}
.cinema-portrait img{display:block;width:100%;height:100%;object-fit:contain;mask-image:linear-gradient(to bottom,#000 68%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 68%,transparent 100%)}
@media(max-width:600px){.cinema-portrait{width:176px;height:202px;margin:14px auto -6px}.home-cinema{padding-top:calc(var(--header-h) + 18px)}}

/* Scroll assembles the scene; pointer depth stays separate from button transforms. */
@media(prefers-reduced-motion:no-preference){
.cinema-stage.has-motion .cinema-map{translate:calc(var(--mouse-x,0px)*-.4) calc(var(--rise,0px)*.45);rotate:var(--turn,0deg)}
.cinema-stage.has-motion .cinema-profile{translate:var(--mouse-x,0px) calc(var(--rise,0px) + var(--mouse-y,0px));rotate:var(--turn,0deg)}
.cinema-stage.has-motion .cinema-pin{translate:calc(var(--mouse-x,0px)*-1.1) calc(var(--rise,0px)*-.55 - var(--mouse-y,0px))}
.cinema-stage.has-motion .cinema-review{translate:calc(var(--mouse-x,0px)*-.8) calc(var(--rise,0px)*1.2 - var(--mouse-y,0px));opacity:calc(.2 + var(--reveal,1)*.8)}
.cinema-stage.has-motion .cinema-contact{translate:calc(var(--mouse-x,0px)*1.3) calc(var(--rise,0px)*1.5 + var(--mouse-y,0px));opacity:calc(.2 + var(--reveal,1)*.8)}
.cinema-stage.motion-visible .cinema-pin svg{animation:cinema-hover 4s ease-in-out infinite}
@keyframes cinema-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
@media(max-width:999px){.cinema-stage.has-motion .cinema-profile{translate:0 calc(var(--rise,0px)*.3);rotate:0deg}}
}

/* A compact mobile illustration, composed for a narrow screen. */
@media(max-width:600px){
 .cinema-stage{display:block;height:330px;max-width:370px;margin:22px auto 0;perspective:900px}
 .cinema-stage .cinema-profile{display:none}
 .cinema-stage .cinema-glow{display:block;inset:0;background:radial-gradient(ellipse,#d8f5fb,transparent 68%)}
 .cinema-stage .cinema-map{display:block;width:260px;height:155px;left:calc(50% - 130px);top:56px;border-radius:28px;transform:rotateX(40deg) rotateZ(-9deg);box-shadow:0 4px 0 #d3e1eb,0 22px 32px -23px #607c92}
 .cinema-stage .cinema-map svg{border-radius:28px}
 .cinema-stage .cinema-pin{display:block;width:92px;left:calc(50% - 46px);top:18px}
 .cinema-stage .cinema-float{display:flex;padding:13px 15px;gap:10px;border-radius:20px;max-width:calc(100% - 12px)}
 .cinema-stage .cinema-review{left:0;top:157px;transform:rotate(-4deg)}
 .cinema-stage .cinema-contact{right:0;top:232px;transform:rotate(3deg)}
 .cinema-stage .cinema-round{width:34px;height:34px;font-size:21px;border-radius:12px;flex-shrink:0}
 .cinema-stage .cinema-float strong{font-size:13px}
 .cinema-stage .cinema-float div>span{font-size:10px}
 .cinema-stage .cinema-illustration{position:absolute;bottom:0;left:0;right:0;font-size:9px}
 .cinema-controls{margin-top:18px}
 .cinema-stage[data-step="1"] .cinema-review{transform:rotate(0) translateY(-7px)}
 .cinema-stage[data-step="2"] .cinema-contact{transform:rotate(0) translateY(-7px)}
}
@media(max-width:600px) and (prefers-reduced-motion:no-preference){
 .cinema-stage.has-motion .cinema-map{translate:0 calc(var(--rise,0px)*.15);rotate:0deg}
 .cinema-stage.has-motion .cinema-pin{translate:0 calc(var(--rise,0px)*-.15)}
 .cinema-stage.has-motion .cinema-review{translate:0 calc(var(--rise,0px)*.45);opacity:clamp(.25,calc(var(--reveal,1)*1.6),1)}
 .cinema-stage.has-motion .cinema-contact{translate:0 calc(var(--rise,0px)*.8);opacity:clamp(.15,calc(var(--reveal,1)*1.4),1)}
 .cinema-stage.motion-visible .cinema-pin svg{animation-duration:5s}
}
