@property --oc-colour{syntax:"<color>";inherits:true;initial-value:#213d5b}
/* Opening-only charcoal product theatre. Existing collection remains independent. */
#opening-collection{--oc-ink:#252724;--oc-ivory:#f5f1e7;--oc-gold:var(--gold,#bba574);--oc-colour:#213d5b;position:relative;isolation:isolate;background:var(--oc-ink);color:var(--oc-ivory);font-family:Manrope,Arial,sans-serif;overflow:hidden;scroll-margin-top:80px;transition:--oc-colour 1s ease}
#opening-collection *{box-sizing:border-box}
#opening-collection .oc-descent{height:160px;background:linear-gradient(180deg,#f7f5ee 0%,#e4e1d9 18%,#aaa99f 40%,#5b5e57 67%,#30332e 86%,#252724);position:relative}
#opening-collection .oc-descent span,#opening-collection .oc-return span{position:absolute;left:50%;top:0;width:1px;height:100%;background:linear-gradient(#bba57480,#bba574cc,#bba57430)}
#opening-collection .oc-content{padding:32px 4vw 76px;max-width:1800px;margin:auto;position:relative}
#opening-collection .oc-heading{text-align:center;position:relative;z-index:2}
#opening-collection .oc-heading>span{font-size:12px;font-weight:500;letter-spacing:.24em;color:var(--oc-gold)}
#opening-collection h2{font-family:Archivo,Arial,sans-serif!important;font-weight:900!important;font-size:clamp(38px,5.4vw,82px)!important;line-height:.98!important;letter-spacing:-.045em!important;margin:24px 0 20px!important;color:var(--oc-ivory);text-transform:uppercase}
#opening-collection h2 em{font:inherit!important;color:var(--oc-gold)}
#opening-collection .oc-heading p{font-size:14px;line-height:1.6;color:#bcbdb3;margin:0}
#opening-collection .oc-stage{--can-h:clamp(320px,34vw,475px);position:relative;width:100%;max-width:1450px;height:calc(var(--can-h) + 110px);margin:12px auto 0;touch-action:pan-y;isolation:isolate}
#opening-collection .oc-atmosphere{position:absolute;inset:-12% -8% -5%;z-index:-2;background:radial-gradient(ellipse at 50% 53%,color-mix(in srgb,var(--oc-colour) 55%,transparent),transparent 61%),radial-gradient(ellipse at 50% 68%,#bba57412,transparent 51%);transition:background 1s;pointer-events:none}
#opening-collection .oc-horizon{position:absolute;inset:0 -10% 0;z-index:-1;background:radial-gradient(ellipse at 50% 68%,#eee9d913,transparent 57%);pointer-events:none}
#opening-collection .oc-route{position:absolute;width:100%;height:100%;inset:0;fill:none;stroke:var(--oc-gold);stroke-width:.65;opacity:.19;pointer-events:none}
#opening-collection .oc-can{--x:0px;--y:0px;--s:1;position:absolute;bottom:57px;left:50%;width:calc(var(--can-h)*var(--ratio));height:var(--can-h);border:0;padding:0;margin:0;background:none;cursor:pointer;transform:translate3d(calc(-50% + var(--x)),var(--y),0) scale(var(--s));transform-origin:center bottom;transition:transform .9s cubic-bezier(.22,.68,.22,1),filter .9s,opacity .9s;will-change:transform;z-index:6;touch-action:pan-y;-webkit-tap-highlight-color:transparent;outline-offset:12px}
#opening-collection .oc-can[data-slot="1"]{--x:clamp(165px,19vw,275px);--y:-28px;--s:.79;z-index:4;filter:brightness(.84)}
#opening-collection .oc-can[data-slot="5"]{--x:clamp(-275px,-19vw,-165px);--y:-28px;--s:.79;z-index:4;filter:brightness(.84)}
#opening-collection .oc-can[data-slot="2"]{--x:clamp(295px,34vw,490px);--y:-85px;--s:.57;z-index:2;filter:brightness(.7)}
#opening-collection .oc-can[data-slot="4"]{--x:clamp(-490px,-34vw,-295px);--y:-85px;--s:.57;z-index:2;filter:brightness(.7)}
#opening-collection .oc-can[data-slot="3"]{--x:clamp(99px,10.3vw,150px);--y:calc(var(--can-h)*-.39);--s:.43;z-index:1;filter:brightness(.67)}
#opening-collection .oc-pack{display:block;position:absolute;inset:0;filter:drop-shadow(0 12px 9px #11130ed0)}
#opening-collection .oc-pack img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;pointer-events:none;user-select:none}
#opening-collection .oc-can-1 img{width:314.465%;height:auto;left:-107.547%;top:-13.263%;clip-path:url(#clip-cruizr)}
#opening-collection .oc-can-2 img{width:323.232%;height:auto;left:-111.919%;top:-12.443%}
#opening-collection .oc-can-5 img{width:436.681%;height:auto;left:-168.559%;top:-52.041%;clip-path:url(#clip-xplor)}
#opening-collection .oc-ground{position:absolute;bottom:-9px;left:-25%;width:150%;height:16px;border-radius:50%;background:#0f120ee0;filter:blur(8px);box-shadow:0 -1px 20px #bba57412}
#opening-collection .oc-glint{position:absolute;inset:1% 0 0;overflow:hidden;border-radius:18% 18% 10% 10% / 3% 3% 2% 2%;pointer-events:none}
#opening-collection .oc-glint:after{content:'';position:absolute;inset:0 -45%;background:linear-gradient(105deg,transparent 40%,#fff9e329 49%,transparent 58%);transform:translateX(-110%)}
#opening-collection .oc-can.is-selected .oc-glint:after{animation:oc-light-pass 1.3s .35s cubic-bezier(.2,.7,.2,1) both}
#opening-collection .oc-stage-caption{position:absolute;bottom:0;left:1%;right:1%;display:flex;justify-content:space-between;border-bottom:1px solid #bba57435;padding-bottom:17px;color:#b9b6a9;font-size:11px;letter-spacing:.15em;pointer-events:none}
#opening-collection .oc-instruction{font-size:11px;letter-spacing:.13em;text-align:center;color:#b0ada1;margin:25px 0 18px}
#opening-collection .oc-selector{display:flex;max-width:880px;margin:0 auto;gap:6px;justify-content:center;scrollbar-width:none;overflow:auto;scroll-snap-type:x proximity;padding:3px 0 12px}
#opening-collection .oc-selector::-webkit-scrollbar{display:none}
#opening-collection .oc-selector button{position:relative;flex:1 0 0;min-width:115px;min-height:67px;background:transparent;border:0;color:#b9b8ae;padding:13px 15px;cursor:pointer;transition:color .3s,background .3s;scroll-snap-align:center}
#opening-collection .oc-selector button span{font:800 16px/1.3 Archivo,Arial,sans-serif;letter-spacing:.03em}
#opening-collection .oc-selector button small{display:block;font:500 12px/1.6 Manrope,sans-serif;margin-top:2px;letter-spacing:.1em}
#opening-collection .oc-selector button[aria-pressed="true"]{background:var(--oc-ivory);color:var(--range-colour)}
#opening-collection .oc-selector button:after{content:'';position:absolute;bottom:-7px;width:22px;height:1px;left:calc(50% - 11px);background:var(--oc-gold);transform:scaleX(0);transition:transform .3s}
#opening-collection .oc-selector button[aria-pressed="true"]:after{transform:scaleX(1)}
#opening-collection button:focus-visible{outline:1px solid var(--oc-gold);outline-offset:2px}
#opening-collection .oc-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#opening-collection .oc-return{position:relative;height:130px;background:linear-gradient(#252724,#45473f 25%,#a4a399 66%,#f7f5ee)}
@keyframes oc-light-pass{to{transform:translateX(110%)}}

@media(max-width:700px){
 #opening-collection .oc-descent{height:130px}
 #opening-collection .oc-content{padding:28px 0 40px}
 #opening-collection .oc-heading{padding:0 20px}
 #opening-collection .oc-heading>span{font-size:11px;letter-spacing:.16em}
 #opening-collection h2{font-size:clamp(29px,8.8vw,56px)!important;margin:21px 0 17px!important;line-height:1.03!important}
 #opening-collection .oc-heading p{font-size:13px;max-width:270px;margin:auto}
 #opening-collection .oc-stage{--can-h:clamp(255px,71vw,350px);height:calc(var(--can-h) + 90px);margin-top:18px}
 #opening-collection .oc-can{bottom:50px}
 #opening-collection .oc-can[data-slot="1"]{--x:36vw;--y:-22px;--s:.67;filter:brightness(.79)}
 #opening-collection .oc-can[data-slot="5"]{--x:-36vw;--y:-22px;--s:.67;filter:brightness(.79)}
 #opening-collection .oc-can[data-slot="2"],#opening-collection .oc-can[data-slot="3"],#opening-collection .oc-can[data-slot="4"]{opacity:0;pointer-events:none;--s:.42;--y:-60px}
 #opening-collection .oc-can[data-slot="2"]{--x:65vw}#opening-collection .oc-can[data-slot="4"]{--x:-65vw}#opening-collection .oc-can[data-slot="3"]{--x:80vw}
 #opening-collection .oc-stage-caption{left:22px;right:22px;font-size:9px;letter-spacing:.08em;padding-bottom:15px}
 #opening-collection .oc-instruction{font-size:10px;letter-spacing:.05em;margin:22px 0 14px}
 #opening-collection .oc-selector{justify-content:flex-start;gap:7px;padding:3px calc(50% - 60px) 12px;max-width:100%;scroll-padding-inline:calc(50% - 60px)}
 #opening-collection .oc-selector button{min-width:120px;flex:0 0 120px;min-height:63px}
 #opening-collection .oc-selector button span{font-size:16px}
 #opening-collection .oc-return{height:100px}
}
@media(prefers-reduced-motion:reduce){#opening-collection *{transition:none!important;animation:none!important}}
.motion-paused #opening-collection *{transition:none!important;animation:none!important}
