/* The whole page is the canvas. Decorative surfaces never intercept unrelated clicks. */
.floating-scene.living-scene{display:block;position:relative;min-height:630px;padding:68px 55px;background:#f1e6d4;overflow:hidden;border:0;border-radius:34px;isolation:isolate}.living-copy{position:relative;z-index:2;width:56%;pointer-events:none}.living-copy button{pointer-events:auto}.living-kicker{font-size:10px;font-weight:700;letter-spacing:.16em;color:#a17c57;margin:0 0 22px}.living-copy h3{font-family:Georgia,serif;font-size:clamp(40px,4.2vw,64px);line-height:1.05;letter-spacing:-.055em;font-weight:400;color:#59412d}.living-copy p:not(.living-kicker){font-size:15px;line-height:1.8;color:#806247;margin-top:24px}.living-explore{margin-top:27px;background:#79563b;border:0;border-radius:30px;padding:17px 24px;color:#fff9ed;font:600 13px inherit;cursor:pointer}.living-explore span{margin-left:24px}.living-landscape{position:absolute;width:70%;height:80%;object-fit:cover;right:-5%;bottom:-6%;border-radius:47% 0 0 0;z-index:-1;transform:rotate(-3deg);opacity:.95}.living-caption{position:absolute;bottom:80px;left:55px;font:italic 19px Georgia,serif;color:#97734f;max-width:210px;rotate:-6deg}.living-ticket{position:absolute;right:45px;top:55px;z-index:2;text-align:left;padding:24px;background:#fff9ed;border:0;border-radius:18px;box-shadow:0 15px 30px #79563b15;rotate:7deg;cursor:pointer;transition:rotate .3s,transform .3s}.living-ticket:hover{rotate:2deg;transform:translateY(-4px)}.living-ticket>span{display:block;font:9px monospace;letter-spacing:.12em;color:#b08b62}.living-ticket strong{display:block;font:27px Georgia,serif;color:#79563b;margin:10px 0}.living-ticket small{font-size:11px;color:#a17c57}.season-switch{position:absolute;left:48px;bottom:24px;display:flex;gap:5px;background:#fff8ecaa;padding:5px;border-radius:30px;z-index:2}.season-switch button{font:11px inherit;border:0;padding:9px 14px;color:#9b7a56;background:transparent;border-radius:25px;cursor:pointer}.season-switch button[aria-pressed=true]{background:#dec6a4;color:#715137}
.living-layer{position:fixed;inset:0;pointer-events:none;z-index:40}.living-layer button{pointer-events:auto;border:0;background:transparent;cursor:pointer;font:inherit;padding:0;-webkit-tap-highlight-color:transparent}.season-float{position:absolute;right:18px;top:34%;width:92px;filter:drop-shadow(0 8px 10px #79563b22)}.season-icon{display:block;animation:leafSway 5s ease-in-out infinite;transform-origin:50% 10%}.season-icon svg{display:block;width:100%;height:auto}.season-tooltip{position:absolute;right:75px;top:42px;white-space:nowrap;background:#fff9ed;color:#916541;box-shadow:0 6px 20px #79563b18;padding:10px 15px;border-radius:20px;font-size:12px;opacity:0;transform:translateX(8px);transition:opacity .2s,transform .2s;pointer-events:none}.season-float:hover .season-tooltip,.season-float:focus-visible .season-tooltip{opacity:1;transform:none}.season-float:hover .season-icon,.season-float:focus-visible .season-icon{animation-play-state:paused}.walking-cat{position:absolute;bottom:15px;left:14px;width:164px;will-change:transform;filter:drop-shadow(0 5px 5px #432e1815)}.walking-cat>svg{display:block;width:100%;transform:scaleX(var(--cat-facing,1));transition:transform .55s ease-in-out}.cat-label{display:block;width:max-content;margin:0 auto -2px;background:#302d2c;color:#f3dab0;border-radius:15px;padding:8px 13px;font-size:13px;box-shadow:0 4px 0 #302d2c22;text-shadow:0 2px 3px #0008;letter-spacing:.02em}.cat-label i{font-style:normal;color:#cbac7b}.cat-tail{transform-origin:45px 62px;animation:tailSway 4.5s ease-in-out infinite}.leg-a,.leg-b{transform-box:fill-box;transform-origin:50% 0;animation:catStep 1.3s ease-in-out infinite alternate}.leg-b{animation-delay:-1.3s}.walking-cat:hover,.walking-cat:focus-visible,.walking-cat:hover *,.walking-cat:focus-visible *{animation-play-state:paused!important}.corner-gift{position:absolute;right:20px;bottom:20px;display:flex;align-items:center;gap:3px;filter:drop-shadow(0 8px 10px #714d3620)}.corner-gift>svg{width:97px;height:97px;overflow:visible}.corner-gift>span{background:#fff7e8;border:1px solid #e2cfb1;border-radius:18px 18px 18px 4px;padding:13px 17px;text-align:left;color:#977453;font-size:12px;line-height:1.55}.corner-gift b{font:20px Georgia,serif;color:#79563b}.corner-gift i{font-style:normal}.gift-top{transform-origin:60px 35px;transition:transform .35s}.corner-gift:hover .gift-top,.corner-gift:focus-visible .gift-top,.gift-options button:hover .gift-top,.gift-options button:focus-visible .gift-top{transform:translateY(-9px) rotate(-7deg)}.corner-gift>svg{animation:giftNudge 7s ease-in-out infinite}.living-layer button:focus-visible{outline:2px solid #9b7046;outline-offset:4px;border-radius:20px}.dialog-active{visibility:hidden}.motion-paused *{animation-play-state:paused!important}
@keyframes leafSway{0%,100%{transform:translateY(0) rotate(-13deg)}50%{transform:translateY(14px) rotate(12deg)}}

@keyframes catStep{from{transform:rotate(-6deg)}to{transform:rotate(6deg)}}@keyframes tailSway{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(8deg)}}@keyframes giftNudge{0%,85%,100%{transform:rotate(0)}89%{transform:rotate(-5deg)}94%{transform:rotate(4deg)}}
.living-dialog{width:min(560px,calc(100% - 28px));max-height:90dvh;padding:50px 32px 36px;background:#fff9ee;border:1px solid #dcc3a1;border-radius:28px;box-shadow:0 30px 100px #3b291a44;color:#79563b;overflow:auto}.living-dialog::backdrop{background:#34271dc4;backdrop-filter:blur(8px)}.living-dialog[open]{animation:atelierOpen .3s ease-out}.living-dialog-body{position:relative;text-align:center}.living-close{position:absolute;right:16px;top:14px;z-index:3;background:#eee0c8;color:#79563b;border:0;border-radius:50%;width:36px;height:36px;cursor:pointer}.living-dialog h2{font:400 42px/1.08 Georgia,serif;letter-spacing:-.045em;color:#715137;margin:0 0 20px}.offer-description{max-width:360px;margin:0 auto 18px;color:#806247;font-size:15px;line-height:1.7}.offer-example{font-size:11px;line-height:1.6;color:#896b4e;margin:16px auto;max-width:330px}.offer-art{width:105px;margin:0 auto 20px}.offer-art svg{display:block;width:100%;max-height:140px}.offer-link{display:block;margin:24px auto 0;width:fit-content;max-width:100%;padding:16px 25px;border-radius:30px;background:#79563b;color:#fff8e8;text-decoration:none;font-size:14px}.gift-options{display:flex;gap:10px;justify-content:center;margin:30px 0}.gift-options button{min-width:0;width:31%;background:#f4e6d0;border:1px solid #e6d0af;border-radius:22px;padding:10px;cursor:pointer}.gift-options button:nth-child(2){background:#ead1b1}.gift-options button:nth-child(3){background:#e4dfc9}.gift-options svg{width:100%;overflow:visible}.gift-options span{font:11px monospace;color:#a08361}.opened-gift{width:140px;margin:0 auto 20px}.opened-gift svg{width:100%;overflow:visible}.opened-gift .gift-top{transform:translateY(-14px) rotate(-12deg)}.try-wheel{display:block;border:0;background:none;color:#a17b53;font-size:12px;margin:20px auto 0;cursor:pointer;text-decoration:underline}.living-dialog .play-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.living-dialog .play-confetti i{position:absolute;left:50%;top:10%;background:var(--c);width:8px;height:12px;animation:livingConfetti 1.4s ease-out both;animation-delay:var(--delay)}@keyframes livingConfetti{from{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translate(var(--x),300px) rotate(var(--r))}}
@media(max-width:900px){.living-copy{width:65%}.living-ticket{right:25px;top:auto;bottom:135px;padding:18px}.living-ticket strong{font-size:22px}.living-landscape{width:85%;height:70%;right:-15%}.living-caption{display:none}}
@media(max-width:700px){.floating-scene.living-scene{min-height:680px;padding:36px 25px}.living-copy{width:100%}.living-copy h3{font-size:43px}.living-kicker{font-size:8px;letter-spacing:.12em}.living-copy p:not(.living-kicker){font-size:13px}.living-explore{font-size:12px;padding:15px 20px}.living-landscape{width:145%;height:54%;right:-45%;bottom:0;rotate:0deg}.living-ticket{bottom:110px;right:25px;max-width:80%;rotate:5deg}.season-switch{left:15px;right:15px;bottom:20px;justify-content:center}.season-switch button{font-size:10px;padding:9px}.season-float{width:66px;right:4px;top:38%}.season-tooltip{right:52px;font-size:11px}.walking-cat{width:105px;bottom:8px;left:5px;}.cat-label{font-size:10px;padding:6px 9px}.corner-gift{right:8px;bottom:12px;gap:0}.corner-gift>svg{width:62px;height:70px}.corner-gift>span{font-size:9px;padding:9px 10px}.corner-gift b{font-size:15px}.corner-gift i{display:none}.living-dialog{padding:48px 20px 28px}.living-dialog h2{font-size:34px}.offer-description{font-size:14px}.gift-options{gap:7px}.gift-options button{padding:5px;border-radius:15px}.foot{padding-bottom:110px}.lab-heading button{display:block;font-size:10px}.living-copy h3{overflow-wrap:normal}}

@media(prefers-reduced-motion:reduce){.living-layer *,.living-dialog *{animation:none!important;transition:none!important}.season-tooltip{opacity:1;transform:none}.living-dialog[open]{animation:none}}

.dialog-active *{animation-play-state:paused!important}.product-dialog{overflow-x:hidden}

.walking-cat.is-turning .cat-legs *{animation-play-state:paused!important}

/* Four offset hip/knee cycles and a subtle shoulder rise make a walking silhouette. */
.walking-cat .cat-gait{animation:catBreathe 2.4s ease-in-out infinite}
.cat-leg{fill:none;stroke:#252526;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;transform-box:view-box}
.cat-leg.hind-far,.cat-leg.front-far{stroke:#454243;stroke-width:6}
.walking-cat .cat-leg{animation:catHip 2.4s ease-in-out infinite}
.walking-cat .cat-leg .cat-shin{transform-box:view-box;animation:catKnee 2.4s ease-in-out infinite}
.hind-near{transform-origin:68px 64px}.hind-far{transform-origin:69px 62px}.front-near{transform-origin:148px 62px}.front-far{transform-origin:141px 61px}
.hind-near .cat-shin{transform-origin:76px 88px}.hind-far .cat-shin{transform-origin:74px 88px}.front-near .cat-shin{transform-origin:150px 87px}.front-far .cat-shin{transform-origin:139px 87px}
.walking-cat .front-far,.walking-cat .front-far .cat-shin{animation-delay:-1.2s}.walking-cat .hind-near,.walking-cat .hind-near .cat-shin{animation-delay:-.6s}.walking-cat .hind-far,.walking-cat .hind-far .cat-shin{animation-delay:-1.8s}
@keyframes catHip{0%,100%{transform:rotate(-19deg)}50%{transform:rotate(19deg)}}
@keyframes catKnee{0%,50%,100%{transform:rotate(0)}72%{transform:rotate(-32deg)}88%{transform:rotate(-12deg)}}
@keyframes catBreathe{0%,50%,100%{transform:translateY(0)}25%,75%{transform:translateY(-1.2px)}}
.walking-cat.is-turning .cat-gait,.walking-cat.is-turning .cat-leg,.walking-cat.is-turning .cat-shin{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.walking-cat *{animation:none!important}}
/* Seasonal characters occupy separate edges; all share pause/modal behaviour. */
.snowboard-float{position:absolute;left:5px;top:43%;width:133px;filter:drop-shadow(0 6px 8px #283d3918)}.snowboard-ride{display:block;animation:snowboardGlide 7s ease-in-out infinite}.snowboard-ride svg{display:block;width:100%;overflow:visible}.rider{transform-origin:85px 130px;animation:riderLean 3.5s ease-in-out infinite}.rider-scarf{transform-origin:73px 53px;animation:scarfWave 1.8s ease-in-out infinite}.snowboard-label{display:block;background:#fffdf4;border:1px solid #b7c6c7;border-radius:14px;padding:9px 7px;color:#284b56;font-size:11px;line-height:1.45;text-align:center;box-shadow:0 5px 15px #283d3910}.snowboard-float:hover *,.snowboard-float:focus-visible *,.spider-float:hover,.spider-float:focus-visible,.spider-float:hover *,.spider-float:focus-visible *{animation-play-state:paused!important}
@keyframes snowboardGlide{0%,100%{transform:translate(0,-8px) rotate(-5deg)}50%{transform:translate(15px,16px) rotate(5deg)}}@keyframes riderLean{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(5deg)}}@keyframes scarfWave{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(12deg)}}
.spider-float{position:absolute;right:25%;top:0;width:134px;transform:translateY(-260px);animation:spiderVisit 26s ease-in-out infinite;filter:drop-shadow(0 6px 7px #23351720)}.spider-thread{position:absolute;bottom:calc(100% - 10px);left:50%;height:330px;width:1px;background:#7a8866;pointer-events:none}.spider-character{display:block;transform-origin:50% 5%;animation:spiderWiggle 1.6s ease-in-out infinite}.spider-character svg{display:block;width:100%;overflow:visible}.spider-legs{transform-origin:80px 65px;animation:spiderFeet .7s ease-in-out infinite alternate}.spider-sign{display:block;position:relative;margin:-6px -10px 0;background:#30451c;color:#edffbe;border:2px solid #a1c65e;border-radius:9px;padding:8px 5px;font-size:11px;line-height:1.4;box-shadow:0 3px 0 #1c2b12;animation:spiderSign 26s ease-in-out infinite}.spider-sign b{font-size:14px}.spider-sign:before,.spider-sign:after{content:'';position:absolute;top:-10px;width:5px;height:15px;border-radius:5px;background:#8dd52f}.spider-sign:before{left:24px}.spider-sign:after{right:24px}
@keyframes spiderVisit{0%,5%,89%,100%{transform:translateY(-260px)}12%{transform:translateY(42px)}15%{transform:translateY(33px)}20%{transform:translateY(83px)}23%{transform:translateY(72px)}28%,70%{transform:translateY(96px)}78%{transform:translateY(60px)}}
@keyframes spiderSign{0%,23%{transform:rotateY(180deg);opacity:0}29%,73%{transform:rotateY(0);opacity:1}85%,100%{transform:rotateY(180deg);opacity:0}}
@keyframes spiderWiggle{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes spiderFeet{from{transform:scaleX(.95)}to{transform:scaleX(1.04)}}
.spider-float:focus-visible{animation:none;transform:translateY(96px)}.spider-float:focus-visible .spider-sign{animation:none;opacity:1;transform:none}
@media(max-width:700px){.snowboard-float{width:86px;left:2px;top:50%}.snowboard-label{font-size:9px;padding:6px 3px;border-radius:10px}.spider-float{width:85px;right:22%}.spider-sign{padding:6px 3px;font-size:9px;margin-inline:-5px}.spider-sign b{font-size:10px}.spider-thread{height:300px}}
@media(prefers-reduced-motion:reduce){.spider-float{animation:none;transform:translateY(90px)}.spider-sign{animation:none;transform:none;opacity:1}.snowboard-float *,.spider-float *{animation:none!important}}
.living-kicker,.living-copy p:not(.living-kicker),.living-caption,.living-ticket>span,.living-ticket small,.season-switch button,.corner-gift>span,.offer-description,.offer-example,.gift-options span,.try-wheel{color:#70543f}.season-switch button[aria-pressed=true]{color:#493526}.offer-link{color:#fff8e8}.cat-label{color:#f3dab0}.living-dialog .living-kicker{color:#70543f}
