.notice-track[data-notice-track] { animation:none; transition:transform .55s ease; }
.notice-item { text-decoration:none; }
.service-viewport[data-stack] { overflow:visible; height:clamp(320px,65vw,540px); perspective:1100px; touch-action:pan-y; }
[data-stack] .service-track { position:relative; display:block; height:100%; transform-style:preserve-3d; }
[data-stack] .service-card { position:absolute; width:min(47%,290px); top:50%; left:50%; transform-style:preserve-3d; transform:translate(-50%,-50%); transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .6s,box-shadow .6s; box-shadow:5px 2px 0 #b5aaa0,8px 4px 0 #e2d9cf,0 20px 32px #3c333335; outline:1px solid #fff9; backface-visibility:hidden; }
[data-stack] .service-card::before { content:''; position:absolute; inset:0; border-radius:inherit; box-shadow:inset 1px 1px 1px #fffc,inset -3px 0 4px #0002; pointer-events:none; z-index:2; }
[data-stack] .service-coming { display:flex; align-items:center; justify-content:center; background:linear-gradient(125deg,#756c65,#393634); color:#ded7ce; font-size:clamp(18px,4vw,28px); letter-spacing:.15em; }
.service-section:has([data-stack]) .carousel-button { display:flex !important; }
@media(prefers-reduced-motion:reduce) { [data-stack] .service-card,.notice-track[data-notice-track] { transition:none; } }
