/* Lakásköltöztetés landing – új jelenetek (a csaladi.css és a style.css tokenjeire épít) */

/* közös kisteherautó a jelenetekben */
.s7 .tk-box,.s8 .tk-box{fill:#4169e1}
.s7 .tk-cab,.s8 .tk-cab{fill:#f3f5fb;stroke:#cdd2e0;stroke-width:1.5}
.s7 .tk-win,.s8 .tk-win{fill:#1d2a6e}
.s7 .tk-wh,.s8 .tk-wh{stroke-width:3}
.s6 .road,.s7 .road,.s8 .road{stroke:#d5ddf6;stroke-width:12;stroke-linecap:round}
.s6 .road-d,.s7 .road-d,.s8 .road-d{stroke:#fff;stroke-width:2;stroke-dasharray:10 12}
.fx .ok circle{fill:#1f8a43}
.fx .ok path{fill:none;stroke:#fff;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}

/* S6 – nincs emeletdíj: lépcsőház + nyugta */
.s6 .bld{fill:#fff;stroke:#cdd2e0;stroke-width:2}
.s6 .bld-top{fill:#4169e1}
.s6 .win{fill:#dfe6fb}
.s6 .door{fill:#ffc21a}
.s6 .fl{font:600 11px Poppins,system-ui,sans-serif;fill:#8a91ad}
.s6 .hl{fill:#ffc21a;opacity:.28}
.s6 .box{fill:#d6a467;stroke:#b8833f;stroke-width:1.5}
.s6 .box-t{stroke:#f3dcb4;stroke-width:3}
.s6 .up{transform:translate(0,252px)}
.fx-scene.s6.on .up{animation:s6Up 6.4s .3s ease-in-out infinite}
@keyframes s6Up{0%,6%{transform:translate(0,252px)}14%{transform:translate(0,210px)}22%{transform:translate(0,168px)}30%{transform:translate(0,126px)}38%{transform:translate(0,84px)}46%,80%{transform:translate(0,42px)}94%,100%{transform:translate(0,252px)}}
.s6 .rc{fill:#fff;stroke:#dbe2fa;stroke-width:1.5}
.s6 .rc-t{font:700 18px Poppins,system-ui,sans-serif;fill:#0b1030}
.s6 .rc-l{stroke:#e3e8f8;stroke-width:1.5;stroke-dasharray:5 5}
.s6 .rc-r{font:500 15px Poppins,system-ui,sans-serif;fill:#4a526e}
.s6 .rc-v{font:700 15px Poppins,system-ui,sans-serif;fill:#1f8a43}
.s6 .rc-sum{font:600 15px Poppins,system-ui,sans-serif;fill:#0b1030}
.s6 .rc-big{font:800 32px Manrope,Poppins,system-ui,sans-serif;fill:#4169e1;letter-spacing:-1px}
.s6 .row{opacity:0}
.fx-scene.s6.on .row{animation:fxFade .4s forwards;animation-delay:var(--d,.4s)}

/* S7 – akár holnap: naptárlap fordul, jön az autó */
.s7 .pg{fill:#fff;stroke:#dbe2fa;stroke-width:1.5}
.s7 .pg-h{fill:#4169e1}
.s7 .pg-h.grey{fill:#9aa1b5}
.s7 .ring{fill:#0b1030}
.s7 .pg-ht{font:700 20px Poppins,system-ui,sans-serif;fill:#fff;letter-spacing:2px}
.s7 .pg-big{font:800 52px Manrope,Poppins,system-ui,sans-serif;fill:#0b1030;letter-spacing:-2px}
.s7 .pg-sub{font:500 15px Poppins,system-ui,sans-serif;fill:#4a526e}
.s7 .front{transform-box:fill-box;transform-origin:50% 0}
.fx-scene.s7.on .front{animation:s7Flip .7s 1.1s cubic-bezier(.5,0,.6,1) forwards}
@keyframes s7Flip{to{opacity:0;transform:translateY(-26px) rotate(-9deg) scale(.96)}}
.s7 .ok{opacity:0;transform-box:fill-box;transform-origin:center}
.fx-scene.s7.on .ok{animation:fxPop .45s 1.75s cubic-bezier(.3,1.6,.5,1) forwards}
.s7 .drv{opacity:0}
.fx-scene.s7.on .drv{animation:s7Drive 1.7s 2s cubic-bezier(.3,.1,.2,1) forwards}
@keyframes s7Drive{0%{opacity:1;transform:translateX(-180px)}100%{opacity:1;transform:translateX(196px)}}

/* S8 – lomtalanítás ugyanazzal a kiszállással */
.s8 .t-big{font:800 30px Manrope,Poppins,system-ui,sans-serif;fill:#0b1030;letter-spacing:-1px}
.s8 .t-sub{font:600 15px Poppins,system-ui,sans-serif;fill:#4169e1}
.s8 .bld{fill:#fff;stroke:#cdd2e0;stroke-width:2}
.s8 .bld-top{fill:#4169e1}
.s8 .win{fill:#f6e3a8}
.s8 .door{fill:#ffc21a}
.s8 .bin{fill:#3b4268}
.s8 .bin-l{fill:#2a3157}
.s8 .bin-t{font:700 13px Poppins,system-ui,sans-serif;fill:#fff;letter-spacing:1px}
.s8 .lbl{font:600 14px Poppins,system-ui,sans-serif;fill:#0b1030}
.s8 .arc{fill:none;stroke:#b9c7f3;stroke-width:2.5;stroke-dasharray:6 6}
.s8 .sofa-a{fill:#4169e1}.s8 .sofa-b{fill:#2c48b0}
.s8 .bag{fill:#5a6070}.s8 .bag-k{fill:none;stroke:#5a6070;stroke-width:2.5;stroke-linecap:round}
.s8 .mv{opacity:0}
.fx-scene.s8.on .mv-a{animation:s8A 4.2s .5s ease-in-out infinite}
.fx-scene.s8.on .mv-b{animation:s8B 4.2s .9s ease-in-out infinite}
@keyframes s8A{0%{opacity:0;transform:translate(228px,250px)}10%{opacity:1;transform:translate(220px,238px)}45%{transform:translate(160px,190px)}75%{opacity:1;transform:translate(96px,282px)}86%,100%{opacity:0;transform:translate(96px,292px)}}
@keyframes s8B{0%{opacity:0;transform:translate(282px,250px)}10%{opacity:1;transform:translate(292px,238px)}45%{transform:translate(360px,190px)}75%{opacity:1;transform:translate(442px,256px)}86%,100%{opacity:0;transform:translate(442px,270px)}}
.s8 .ok{opacity:0;transform-box:fill-box;transform-origin:center}
.fx-scene.s8.on .ok-a{animation:fxPop .45s 3.4s cubic-bezier(.3,1.6,.5,1) forwards}
.fx-scene.s8.on .ok-b{animation:fxPop .45s 3.8s cubic-bezier(.3,1.6,.5,1) forwards}
.s8 .arc{stroke-dashoffset:0}

@media (prefers-reduced-motion:reduce){
.s6 .row,.s7 .ok,.s8 .ok{opacity:1}
.s7 .front{opacity:0}
.s7 .drv{opacity:1;transform:translateX(196px)}
}

/* telefonon az utolsó előny is a szokásos képarányt kapja (a családi házas oldalon ott interaktív jelenet volt) */
@media (max-width:1000px){.fx-step[data-i="4"] .fx-slot{aspect-ratio:520/420;height:auto}}
@media (max-width:640px){.fx-step[data-i="4"] .fx-slot{height:auto}}

/* árak: az emeletdíj csempe kiemelve */
#arak .info-tile.free.floor{border:2px solid #4169e1}

/* számsor: áthúzott kör (nincs emeleti díj, hétvégi felár) */
.stats .stat-no{display:inline-flex;align-items:center;justify-content:center;height:1em}
.stats .stat-no svg{width:.92em;height:.92em;display:block;fill:none;stroke:currentColor;stroke-width:7;stroke-linecap:round}

/* hero: sárga badge jobb felül (csak gépen) */
.hero-wkend{position:absolute;top:48px;right:max(32px,calc((100vw - 1240px)/2 + 24px));z-index:4;padding:14px 24px;border-radius:16px;background:linear-gradient(100deg,#ffd34a 0,#ffb21a 100%);color:#fff;font:800 clamp(18px,1.5vw,24px)/1.15 Poppins,Manrope,system-ui,sans-serif;letter-spacing:-.01em;box-shadow:0 18px 32px -14px rgba(255,140,0,.9);transform:rotate(3deg);white-space:nowrap;pointer-events:none}
@media (max-width:1000px){.hero-wkend{display:none}}

/* 05 Minden egy kézben: költözés + raktározás + lomtalanítás */
.s8 .wh{fill:#eef2fb;stroke:#cdd2e0;stroke-width:2}
.s8 .wh-roof{fill:#2c48b0}
.s8 .wh-door{fill:#c9d3ee}
.s8 .wh-ln{stroke:#a9b6dd;stroke-width:2}
.s8 .box{fill:#d9a866}
.s8 .box-t{fill:none;stroke:#a87a3d;stroke-width:2}
.fx-scene.s8.on .mv-h{animation:s8H 4.2s .5s ease-in-out infinite}
.fx-scene.s8.on .mv-r{animation:s8R 4.2s .75s ease-in-out infinite}
.fx-scene.s8.on .mv-l{animation:s8L 4.2s 1s ease-in-out infinite}
.fx-scene.s8.on .ok-h{animation:fxPop .45s 3.3s cubic-bezier(.3,1.6,.5,1) forwards}
.fx-scene.s8.on .ok-r{animation:fxPop .45s 3.55s cubic-bezier(.3,1.6,.5,1) forwards}
.fx-scene.s8.on .ok-l{animation:fxPop .45s 3.8s cubic-bezier(.3,1.6,.5,1) forwards}
@keyframes s8H{0%{opacity:0;transform:translate(184px,262px)}10%{opacity:1;transform:translate(176px,250px)}45%{transform:translate(130px,206px)}75%{opacity:1;transform:translate(80px,284px)}86%,100%{opacity:0;transform:translate(80px,294px)}}
@keyframes s8R{0%{opacity:0;transform:translate(218px,262px)}10%{opacity:1;transform:translate(226px,250px)}45%{transform:translate(280px,214px)}75%{opacity:1;transform:translate(334px,262px)}86%,100%{opacity:0;transform:translate(334px,272px)}}
@keyframes s8L{0%{opacity:0;transform:translate(244px,262px)}10%{opacity:1;transform:translate(256px,246px)}45%{transform:translate(352px,180px)}75%{opacity:1;transform:translate(456px,262px)}86%,100%{opacity:0;transform:translate(456px,274px)}}
