.hero{min-height:680px}.hero-image{min-height:680px}.hero h1{font-size:clamp(35px,3.5vw,55px);line-height:1.5}.hero-copy .hero-detail{display:block;margin-top:25px;font:500 10px/1.6 Arial,sans-serif;letter-spacing:.17em;color:#536957}.hero-image:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 25px 0 50px #f8f5ef30}
.immersive-product{height:300svh;background:#ebece6;position:relative}.object-stage{height:calc(100svh - 76px);min-height:660px;position:sticky;top:76px;display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:4%;padding:45px max(32px,calc((100vw - 1180px)/2));overflow:hidden;background:radial-gradient(ellipse at 75% 45%,#fffefa,#eeeee7 60%,#e7e9e1)}.object-copy{position:relative;z-index:2}.object-copy h2{font:500 clamp(34px,3.5vw,54px)/1.6 var(--serif);letter-spacing:.03em;margin:25px 0}.object-copy p{color:#4f6353;max-width:350px;font-size:16px;line-height:2}.object-note{font-size:12px!important;line-height:1.8!important;margin:27px 0 0!important;color:#536552!important}.object-copy .btn{margin-top:15px}.object-progress{height:1px;background:#c2cbbb;max-width:220px;margin-top:30px}.object-progress i{display:block;width:100%;height:1px;background:#526849;transform:scaleX(var(--object-progress,0));transform-origin:left}.ring-experience{position:relative;min-width:0}.ring-view{position:relative;width:100%;aspect-ratio:1.05;isolation:isolate}.ring-view:after{content:"";position:absolute;bottom:5%;left:22%;right:22%;height:6%;background:#29392d30;filter:blur(16px);border-radius:50%;z-index:-1}.ring-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%;transition:opacity .5s}.ring-view:has(canvas.ready) .ring-fallback{opacity:0}.ring-view canvas{width:100%;height:100%;display:block;position:relative;opacity:0;cursor:grab;touch-action:pan-y}.ring-view canvas.ready{opacity:1}.ring-view canvas:active{cursor:grabbing}.ring-status{font-size:12px;line-height:1.8;text-align:center;color:#4f6250;margin:8px 0 17px}.ring-controls{max-width:440px;margin-inline:auto}.ring-controls[hidden]{display:none}.model-switch{display:flex;justify-content:center;gap:7px}.model-switch button,.ring-actions button,.room-buttons button{border:1px solid #aebda5;border-radius:100px;padding:9px 16px;background:transparent;color:#344936;font-size:12px;line-height:1.5}.model-switch button[aria-pressed=true]{background:#3b5142;color:#fff;border-color:#3b5142}.ring-actions{display:flex;gap:8px;justify-content:center;margin:12px 0}.ring-sliders{display:grid;grid-template-columns:1fr 1fr;gap:22px}.ring-sliders label{font-size:11px;color:#4c624e}.ring-sliders input,.room-controls input{display:block;width:100%;accent-color:#485e46;cursor:pointer;min-height:25px}.object-caption{position:absolute;right:32px;top:25px;color:#50654f;font:500 10px/1.5 Arial,sans-serif;letter-spacing:.14em}
.showroom{padding:100px 0 95px;background:#e7e6dd}.showroom .section-head{margin-bottom:30px}.showroom .subcopy{max-width:400px}.room-view{position:relative;overflow:hidden;height:600px;background:#d0c7b8;cursor:grab;touch-action:pan-y;border-radius:5px}.room-view:active{cursor:grabbing}.room-panorama{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% center;user-select:none;pointer-events:none}.room-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#12221422,transparent 30%,transparent 70%,#14291cd9);pointer-events:none}.room-caption{position:absolute;bottom:30px;left:32px;right:32px;display:flex;justify-content:space-between;gap:20px;align-items:end;color:#fff}.room-caption strong{display:block;font:400 29px/1.4 Georgia,serif}.room-caption span{font-size:12px;display:block;margin-top:8px}.room-caption small{padding:5px 9px;border:1px solid #ffffff75;border-radius:4px;font-size:11px}.room-indicator{position:absolute;top:23px;left:25px;background:#f8f5eff0;padding:8px 13px;border-radius:50px;font:500 10px/1.5 Arial,sans-serif;letter-spacing:.12em;color:#3e513f}.room-controls{display:grid;grid-template-columns:auto 1fr auto;gap:25px;align-items:center;padding:20px 0 0;color:#4c614c;font-size:11px}.room-controls>label{width:100%}.room-buttons{display:flex;gap:8px;margin-top:10px}.showroom-note{font-size:12px;color:#536454;margin:20px 0 0;line-height:1.9}.room-buttons button:hover,.ring-actions button:hover{background:#d8e0d0}
@media(max-width:900px){.object-stage{gap:20px;padding-inline:30px}.object-copy h2{font-size:35px}.room-view{height:480px}.object-caption{right:25px}.ring-status{font-size:11px}.ring-sliders{gap:15px}.object-copy p{font-size:15px}}
@media(max-width:640px){.hero{min-height:0}.hero-image{min-height:0;height:330px}.hero h1{font-size:clamp(32px,8.8vw,42px)}.hero-copy .hero-detail{font-size:9px;letter-spacing:.12em}.immersive-product{height:230svh}.object-stage{top:68px;height:calc(100svh - 68px);min-height:650px;display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:30px 24px 25px;gap:8px}.object-copy h2{font-size:29px;line-height:1.5;margin:12px 0}.object-copy p{font-size:14px;line-height:1.8;max-width:100%;margin:0}.object-copy .btn{display:none}.object-note{font-size:10px!important;margin-top:10px!important;line-height:1.7!important}.object-progress{margin-top:16px;max-width:120px}.object-caption{top:14px;right:20px;font-size:8px}.ring-experience{max-width:410px;width:100%;align-self:center}.ring-view{aspect-ratio:1.65}.ring-status{font-size:10px;margin:3px 0 10px}.ring-actions{margin:9px 0}.ring-actions button,.model-switch button{font-size:11px;padding:7px 13px}.ring-sliders label{font-size:10px}.showroom{padding:75px 0}.room-view{height:480px}.room-caption{left:20px;right:20px;bottom:23px;display:block}.room-caption strong{font-size:25px}.room-caption span{font-size:11px}.room-caption small{display:inline-block;margin-top:12px;font-size:10px}.room-controls{gap:15px}.room-indicator{left:16px;top:16px;font-size:9px}.room-buttons button{font-size:11px;padding:8px 13px}.showroom-note{font-size:11px}}
@media(max-height:740px) and (max-width:640px){.object-stage{min-height:0;gap:5px;padding-block:22px}.object-copy h2{font-size:25px;margin:9px 0}.object-copy p{font-size:12px}.object-progress{margin-top:10px}.ring-view{aspect-ratio:1.9}.ring-status{margin-bottom:7px}.ring-actions{margin:7px 0}.ring-sliders input{min-height:19px}.object-note{font-size:9px!important}}
@media(prefers-reduced-motion:reduce){.immersive-product{height:auto}.object-stage{position:relative;top:0;height:auto;min-height:0;padding-block:65px}.ring-fallback{transition:none}}
.scroll-linked .showroom{height:250svh;padding:0}.scroll-linked .showroom>.wrap{position:sticky;top:76px;height:calc(100svh - 76px);display:flex;flex-direction:column;justify-content:center;padding-block:32px;gap:0}.scroll-linked .showroom .section-head{margin-bottom:22px;flex-shrink:0}.scroll-linked .showroom .section-title{font-size:clamp(28px,2.8vw,40px);line-height:1.5;margin-top:12px}.scroll-linked .showroom .subcopy{font-size:14px;line-height:1.85}.scroll-linked .room-view{height:auto;flex:1;min-height:220px;max-height:55svh;flex-shrink:1}.scroll-linked .room-controls{padding-top:14px;gap:20px;flex-shrink:0}.scroll-linked .room-controls .eyebrow{display:none}.scroll-linked .room-buttons{margin-top:6px;flex-shrink:0}.scroll-linked .showroom-note{font-size:11px;margin-top:12px;line-height:1.7;flex-shrink:0}
@media(max-width:640px){.scroll-linked .showroom{height:230svh}.scroll-linked .showroom>.wrap{top:68px;height:calc(100svh - 68px);padding-block:23px}.scroll-linked .showroom .section-title{font-size:28px;line-height:1.45;margin-top:10px}.scroll-linked .showroom .section-head{margin-bottom:18px}.scroll-linked .showroom .subcopy{font-size:12px;line-height:1.7;margin-top:12px}.scroll-linked .room-view{min-height:190px;max-height:45svh}.scroll-linked .room-caption{bottom:18px}.scroll-linked .room-caption strong{font-size:20px}.scroll-linked .room-caption span{font-size:10px}.scroll-linked .room-caption small{margin-top:8px;font-size:9px}.scroll-linked .room-controls{padding-top:10px}.scroll-linked .room-buttons button{padding:6px 12px;font-size:10px}.scroll-linked .showroom-note{font-size:10px;margin-top:10px;line-height:1.6}}
@media(max-height:650px){.scroll-linked .showroom .subcopy{display:none}.scroll-linked .showroom .section-title br{display:none}.scroll-linked .showroom .section-title{font-size:25px}.scroll-linked .showroom>.wrap{padding-block:18px}.scroll-linked .room-view{min-height:160px}.scroll-linked .showroom-note{font-size:9px}}

/* An uninterrupted, scroll-only presentation. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ring-view canvas,.ring-view canvas:active,.room-view,.room-view:active{cursor:default;touch-action:auto}.ring-view canvas{pointer-events:none}.ring-view{aspect-ratio:1}.ring-experience{padding-block:30px}.room-caption{bottom:27px}.scroll-linked .room-view{max-height:65svh}.scroll-linked .showroom-note{margin-top:17px}.object-copy .object-progress{display:none}
@media(max-width:640px){.ring-experience{padding-block:0}.ring-view{aspect-ratio:1.3}.object-stage{gap:20px}.scroll-linked .room-view{max-height:58svh}.room-caption strong{font-size:22px}}
@media(max-height:740px) and (max-width:640px){.object-stage{gap:10px}.ring-view{aspect-ratio:1.65}}

/* Scroll-driven, real mesh product view. */
.cg-ring-view{aspect-ratio:1;overflow:hidden;border-radius:12px;background:#0e1113;box-shadow:0 20px 60px #253a291a}.cg-ring-view:after{display:none}.cg-ring-view .ring-fallback{border-radius:0;object-fit:contain}.cg-ring-view canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.cg-ring-view.model-ready .ring-fallback{opacity:0}.cg-caption{position:absolute;bottom:20px;left:22px;color:#b4c1bc;font:500 9px/1.5 Arial,sans-serif;letter-spacing:.14em;pointer-events:none}.ring-experience{padding-block:0}.object-copy .object-note{font-size:11px!important;line-height:1.85!important;color:#55634f!important}
@media(max-width:640px){.cg-ring-view{aspect-ratio:1.2;width:min(100%,390px);margin-inline:auto}.object-stage{gap:20px}.cg-caption{font-size:8px;left:16px;bottom:16px}.object-copy .object-note{font-size:10px!important;margin-top:12px!important}}
@media(max-height:740px) and (max-width:640px){.cg-ring-view{aspect-ratio:1.5}.object-stage{gap:14px}}
