body{font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Arial,sans-serif;font-weight:500}
h1,h2,h3,.brand,.footer-brand{font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Arial,sans-serif!important;font-weight:800!important}
.hero h1{font-size:clamp(64px,7.5vw,120px);line-height:1.18;letter-spacing:-.06em;top:18%;left:6%}
.hero-word{font-family:Arial,sans-serif;font-weight:900;font-size:12.5vw;letter-spacing:-.075em}
.section-heading h2,.intro h2,.feature h2{font-weight:800;letter-spacing:-.045em}
.price,.total strong{font-weight:700}.header nav,.filters button,.card-detail,.primary-button{font-weight:700}
.hero-sequence{height:230svh;background:#202820}
.hero-sequence .hero{position:sticky;top:88px;height:calc(100svh - 88px);min-height:540px;max-height:none}
.hero-frame{position:absolute;z-index:0;width:53%;left:43%;top:9%;bottom:19%;display:flex;align-items:center;pointer-events:none;opacity:0}
.hero-frame img{width:100%;height:100%;object-fit:contain;box-shadow:none}
.hero h1,.hero-bottom,.hero-top,.hero-cta{z-index:2}
.scene-copy{position:absolute;z-index:3;left:6%;top:36%;opacity:0;visibility:hidden;max-width:53%}
.scene-copy>span{font:700 10px Arial;letter-spacing:.12em}.scene-copy h2{font-size:clamp(42px,5.1vw,82px);line-height:1.35;letter-spacing:-.07em;margin:22px 0 30px;text-shadow:0 2px 30px #202820}
.scene-copy a{font-size:13px;font-weight:700;display:flex;gap:50px;align-items:center;border-bottom:1px solid #ffffff80;padding-bottom:15px;width:fit-content}
.scene-gallery{height:240svh;background:#dfe3d8;position:relative}
.gallery-pin{height:calc(100svh - 88px);min-height:550px;position:sticky;top:88px;overflow:hidden;padding:32px 0}
.gallery-heading{display:flex;justify-content:space-between;align-items:center;padding:0 5%;gap:20px}.gallery-heading>span{font:700 10px Arial;letter-spacing:.1em}.gallery-heading h2{font-size:clamp(22px,2.5vw,38px);letter-spacing:-.05em}
.gallery-track{display:flex;width:100%;height:calc(100% - 85px);margin-top:28px;will-change:transform}
.scene-panel{flex:0 0 100%;display:grid;grid-template-columns:62% 38%;padding:0 5%;align-items:center;gap:0}
.scene-image{height:100%;min-height:0;display:flex;align-items:center}.scene-image img{width:100%;height:100%;object-fit:contain}
.scene-panel-copy{padding:0 0 0 10%;}.scene-panel-copy>span{font:700 11px Arial;letter-spacing:.12em}.scene-panel-copy h3{font-size:clamp(34px,4.5vw,70px);letter-spacing:-.07em;line-height:1.35;margin:25px 0 35px}
.scene-panel-copy :is(button,a){border-bottom:2px solid;padding:14px 0;font-size:13px;font-weight:700;text-align:left}
.gallery-progress{height:2px;background:#22251f30;position:absolute;bottom:20px;left:5%;right:5%}.gallery-progress i{display:block;height:100%;background:var(--red);transform-origin:left}
@media(max-width:760px){.hero-sequence{height:185svh}.hero-sequence .hero{top:70px;height:calc(100svh - 70px);min-height:560px}.hero h1{font-size:64px;top:17%}.hero-word{font-size:12.2vw}.hero-frame{left:8%;width:84%;top:4%;bottom:38%}.scene-copy{top:auto;bottom:9%;left:7%;max-width:90%}.scene-copy h2{font-size:40px;margin:14px 0 20px}.scene-copy>span{font-size:8px}.scene-gallery{height:auto}.gallery-pin{height:auto;min-height:0;position:relative;top:0;padding:35px 0}.gallery-heading{align-items:flex-start;flex-wrap:wrap;gap:15px}.gallery-heading h2{font-size:25px;order:3;width:100%;line-height:1.4}.gallery-track{height:auto;overflow-x:auto;scroll-snap-type:x mandatory;will-change:auto;gap:16px;padding:0 6% 25px;margin-top:25px}.scene-panel{flex:0 0 90%;scroll-snap-align:center;display:flex;flex-direction:column;padding:0;align-items:stretch}.scene-image{height:auto}.scene-image img{height:auto;aspect-ratio:3/2;object-fit:contain}.scene-panel-copy{padding:22px 0 0}.scene-panel-copy h3{font-size:36px;margin:15px 0 20px}.gallery-progress{display:none}.scene-panel-copy :is(button,a){font-size:12px}.gallery-counter{display:none}}
@media(prefers-reduced-motion:reduce){.hero-sequence{height:auto}.hero-sequence .hero{position:relative;top:0}.hero-frame,.scene-copy{display:none}.scene-gallery{height:auto}.gallery-pin{position:relative;top:0;height:auto}.gallery-track{transform:none!important;overflow-x:auto;height:auto;will-change:auto}.scene-panel{min-height:450px}.gallery-progress{display:none}}
