.shopfront-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 74% 44%,#511322,#171115 55%,#09090b);min-height:700px}
.shopfront-hero::before,.product-page::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(110deg,transparent 0 75px,#ffffff08 76px 77px);pointer-events:none}
.shopfront-grid{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:4vw;min-height:700px}
.shopfront-hero h1{font-size:clamp(145px,15vw,230px);margin:20px 0 30px}
.shopfront-hero h1 em,.product-info h1 em{font-style:normal;color:transparent;-webkit-text-stroke:2px #fff}
.shopfront-hero .lede{max-width:550px}
.shopfront-note{font-size:14px;color:#d5cdd0;margin:24px 0 0}
.shopfront-image{height:610px;position:relative;display:grid;place-items:center;isolation:isolate}
.shopfront-image::before,.product-main-image::before{content:'';position:absolute;width:67%;aspect-ratio:1;border:1px solid #ffffff3d;border-radius:50%;box-shadow:0 0 0 75px #ffffff0a;z-index:-1}
.shopfront-image .ghost-number{font:900 clamp(340px,39vw,600px)/1 var(--display);color:#ffffff09;position:absolute;z-index:-1}
.shopfront-image img{height:94%;width:94%;object-fit:contain;filter:drop-shadow(0 30px 25px #000c);animation:float 6s ease-in-out infinite}
.shopfront-image small{position:absolute;right:0;bottom:10px;font:800 15px var(--display);text-transform:uppercase;letter-spacing:.14em;color:#e2d7da}
.shop-intro-strip{background:#c8102e;color:#fff}.shop-intro-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr)}.shop-intro-strip .wrap>div{display:flex;align-items:center;gap:15px;padding:18px 23px;border-right:1px solid #ffffff63}.shop-intro-strip .wrap>div:first-child{border-left:1px solid #ffffff63}.shop-intro-strip b{font:900 33px/.9 var(--display)}.shop-intro-strip span{font:800 14px/1.2 var(--body);text-transform:uppercase;letter-spacing:.07em}
.shop-collection{background:#fff;color:#171518;padding:105px 0 120px}.shop-collection .label,.shop-faq .label,.product-story .label{color:var(--red)}
.shop-collection-head,.shop-how-head,.shop-faq-grid,.product-story-grid{display:grid;grid-template-columns:1fr .6fr;gap:7vw;align-items:end;margin-bottom:40px}
.shop-collection h2,.shop-how h2,.shop-faq h2,.product-story h2,.product-other h2,.shop-end h2{font-size:clamp(65px,8vw,120px);margin:15px 0 0}
.shop-collection-head p,.shop-how-head p{font-size:19px;max-width:425px;color:#5e5658;margin:0 0 7px}
.shop-product-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:13px}
.shop-product-card{border:1px solid #2f252a;color:#171518;background:#fff;display:flex;flex-direction:column;transition:transform .3s,border-color .3s}
.shop-product-card:hover{transform:translateY(-6px);border-color:var(--red)}
.shop-card-stage{height:520px;position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 32%,#691b2b,#24131b 57%,#0b0b0d);color:#fff}
.shop-card-stage::before{content:'94';position:absolute;right:-.02em;top:-.55em;color:#ffffff08;font:900 480px var(--display);z-index:-1}
.shop-card-ring{position:absolute;width:65%;aspect-ratio:1;left:17.5%;top:10%;border:1px solid #ffffff42;border-radius:50%;box-shadow:0 0 0 65px #ffffff0b;z-index:-1}
.shop-card-index,.shop-card-side{position:absolute;z-index:2;font:800 14px/1 var(--display);text-transform:uppercase;letter-spacing:.13em}.shop-card-index{top:25px;left:25px}.shop-card-side{right:25px;bottom:22px}.shop-card-side i{font-style:normal;font-size:20px;vertical-align:middle;margin:0 5px}
.shop-card-stage img{position:absolute;top:9%;left:9%;width:82%;height:82%;object-fit:contain;filter:drop-shadow(0 26px 20px #000a);transition:transform .45s,opacity .45s}
.shop-product-card.reversible .shop-card-stage img.front{left:-9%;width:75%;transform:rotate(-8deg)}
.shop-product-card.reversible .shop-card-stage img.back{left:37%;width:75%;transform:rotate(8deg)}
.shop-product-card.reversible:hover img.front{transform:rotate(-11deg) translateY(-9px)}.shop-product-card.reversible:hover img.back{transform:rotate(11deg) translateY(-9px)}
.shop-product-card.violet .shop-card-stage{background:radial-gradient(circle at 50% 30%,#411324,#1c141a 59%,#0b0b0d)}
.shop-product-card.violet:hover .shop-card-stage img{transform:translateY(-9px) scale(1.04)}
.shop-card-copy{padding:29px 31px 31px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.shop-card-copy>span{font:800 13px var(--body);text-transform:uppercase;letter-spacing:.14em;color:#6a6064}
.shop-card-copy h3{font-size:clamp(54px,5vw,75px);margin:15px 0}.shop-card-copy p{max-width:470px;font-size:18px;color:#5c5558;margin:0 0 27px}
.shop-card-copy b{display:inline-flex;gap:30px;font:800 20px var(--display);text-transform:uppercase;letter-spacing:.07em;border-bottom:2px solid var(--red);padding-bottom:6px;margin-top:auto}
.shop-card-copy i{font-style:normal}
.shop-how{background:#101014;color:#fff;padding:105px 0 115px}.shop-how-head p{color:#d1c8cb}
.shop-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
.shop-how-grid>div{border:1px solid #514249;padding:30px;min-height:260px;display:flex;flex-direction:column;justify-content:space-between;background:#1b161b}
.shop-how-grid span{font:900 90px/.8 var(--display);color:#ffffff27}.shop-how-grid h3{font-size:46px;margin:25px 0 10px}.shop-how-grid p{color:#d1c9cc;margin:0}
.shop-faq{background:#fff;color:#171518;padding:105px 0}.shop-faq-grid{align-items:start;grid-template-columns:.8fr 1.2fr}.shop-faq-list{border-top:2px solid #1b171a}.shop-faq-list details{border-bottom:1px solid #d3cdd0;padding:24px 0}.shop-faq-list summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;font:800 30px/1 var(--display);text-transform:uppercase}.shop-faq-list summary::-webkit-details-marker{display:none}.shop-faq-list summary::after{content:'+';color:var(--red);font:900 32px var(--display)}.shop-faq-list details[open] summary::after{content:'−'}.shop-faq-list p{margin:16px 0 0;color:#5a5356;font-size:18px;max-width:610px}
.shop-end{background:#c8102e;color:#fff;padding:74px 0}.shop-end .wrap{display:flex;align-items:end;justify-content:space-between;gap:25px}.shop-end span{font:800 17px var(--display);letter-spacing:.12em;text-transform:uppercase}.shop-end h2{margin:15px 0 0}.shop-end .btn{white-space:nowrap}
.shop-breadcrumb{display:flex;gap:12px;align-items:center;padding-top:20px;padding-bottom:20px;font:800 13px var(--body);letter-spacing:.06em;text-transform:uppercase;color:#bcb0b5}.shop-breadcrumb a:hover{color:#fff}.shop-breadcrumb [aria-current=page]{color:#fff}
.product-page{position:relative;overflow:hidden;background:radial-gradient(circle at 23% 38%,#481323,#151014 55%,#09090b);color:#fff}
.product-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:6vw;padding-top:45px;padding-bottom:100px;align-items:start}
.product-gallery{min-width:0}.product-main-image{height:min(66vw,680px);max-height:680px;min-height:500px;position:relative;display:grid;place-items:center;overflow:hidden;isolation:isolate;border:1px solid #ffffff47;background:radial-gradient(circle at 50% 35%,#651b2b,#2a1520 53%,#100f13)}
.product-main-image .product-ghost{position:absolute;font:900 clamp(300px,34vw,550px)/1 var(--display);color:#ffffff0b;z-index:-1}
.product-main-image img{height:90%;width:90%;object-fit:contain;filter:drop-shadow(0 24px 24px #000b);transition:opacity .24s,transform .35s}
.product-main-image img.switching{opacity:.2;transform:scale(.96)}
.product-image-caption{position:absolute;bottom:19px;left:20px;font:800 14px var(--display);letter-spacing:.13em;text-transform:uppercase;color:#fff}
.product-thumbs{display:flex;gap:9px;margin-top:10px}.gallery-thumb{width:96px;height:98px;padding:7px;border:1px solid #776168;background:#21151d;transition:border-color .2s,transform .2s}.gallery-thumb img{width:100%;height:100%;object-fit:contain}.gallery-thumb:hover,.gallery-thumb:focus-visible,.gallery-thumb.active{border-color:#fff;transform:translateY(-2px)}.gallery-thumb.active{box-shadow:inset 0 0 0 2px #fff}
.product-info{padding-top:30px}.product-info h1{font-size:clamp(100px,9.5vw,155px);margin:20px 0 30px;max-width:700px}.product-lede{font-size:clamp(20px,1.9vw,26px);color:#d9d1d4;line-height:1.35;max-width:560px;margin-bottom:34px}
.product-facts{list-style:none;padding:0;margin:0 0 28px;border-top:1px solid #ffffff65}.product-facts li{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #ffffff65}.product-facts span{color:#c3b8bc}.product-facts strong{text-align:right;font-weight:800}
.product-request{border:1px solid #ffffff5a;padding:24px;background:#ffffff0b}.product-request label{display:block;font:800 19px var(--display);letter-spacing:.08em;text-transform:uppercase;margin-bottom:11px}.product-request label small{font:600 13px var(--body);letter-spacing:0;text-transform:none;color:#c9c0c3}.product-request input{width:100%;min-height:49px;border:1px solid #ffffff9c;background:#fff;color:#171518;padding:11px 14px;font:17px var(--body);margin-bottom:13px}.product-request .btn{width:100%;justify-content:space-between;text-align:left}.product-request p{font-size:13px;color:#cfc5c9;margin:17px 0 0;line-height:1.5}
.product-story{background:#fff;color:#171518;padding:105px 0}.product-story-grid{grid-template-columns:.8fr 1.2fr;align-items:start;margin-bottom:0}.product-story-copy{font-size:22px;line-height:1.5;max-width:650px}.product-story-copy p{margin-bottom:22px;color:#433c3f}
.product-other{background:#101014;color:#fff;padding:95px 0}.product-other .wrap{display:flex;align-items:end;justify-content:space-between;gap:30px}.product-other a{display:flex;flex-direction:column;gap:12px;border-bottom:2px solid var(--red);padding-bottom:12px;min-width:280px}.product-other a span{font:900 37px/1 var(--display);text-transform:uppercase}.product-other a b{font:800 18px var(--display);text-transform:uppercase;letter-spacing:.07em}.product-other a i{font-style:normal;margin-left:12px}.product-other a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.shopfront-hero h1{font-size:clamp(120px,15vw,180px)}.shopfront-image{height:500px}.shop-card-stage{height:430px}.product-info h1{font-size:clamp(90px,10vw,130px)}}
@media(max-width:700px){.shopfront-grid{display:block;min-height:0;padding-top:80px}.shopfront-hero h1{font-size:clamp(120px,23vw,170px)}.shopfront-image{height:380px;margin-top:28px}.shopfront-image small{bottom:10px;right:10px}.shop-intro-strip .wrap{display:block}.shop-intro-strip .wrap>div,.shop-intro-strip .wrap>div:first-child{border-left:0;border-right:0;border-bottom:1px solid #ffffff65;padding:14px 0}.shop-collection,.shop-how,.shop-faq,.product-story,.product-other{padding:70px 0}.shop-collection-head,.shop-how-head,.shop-faq-grid,.product-story-grid{display:block}.shop-collection-head p,.shop-how-head p{margin-top:22px}.shop-product-grid,.shop-how-grid{grid-template-columns:1fr}.shop-card-stage{height:410px}.shop-product-card.reversible .shop-card-stage img.front{left:-7%;width:73%}.shop-product-card.reversible .shop-card-stage img.back{left:35%;width:73%}.shop-how-grid>div{min-height:220px}.shop-faq-list{margin-top:30px}.shop-faq-list summary{font-size:26px}.shop-end .wrap,.product-other .wrap{display:block}.shop-end .btn{margin-top:28px}.product-grid{display:block;padding-top:10px;padding-bottom:70px}.product-main-image{height:430px;min-height:0}.product-thumbs{margin-bottom:35px}.product-info h1{font-size:clamp(82px,19vw,125px)}.product-story-copy{margin-top:28px;font-size:19px}.product-other a{margin-top:35px}.shop-breadcrumb{font-size:11px;flex-wrap:wrap}}
@media(max-width:360px){.shopfront-hero h1{font-size:94px}}
@media(prefers-reduced-motion:reduce){.shopfront-image img{animation:none}.shop-product-card,.shop-card-stage img,.gallery-thumb,.product-main-image img{transition:none}}
