:root{color-scheme:light;--paper:#fff;--ink:#000;--muted:#686868;--line:#dedede;--font:'Faith Grotesk','Helvetica Neue',Helvetica,Arial,sans-serif;--header:60px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--font);-webkit-font-smoothing:antialiased}body.menu-open,body.bag-open{overflow:hidden}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:default}img{max-width:100%;display:block}[hidden]{display:none!important}::selection{background:#d4cce3;color:#111}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #79619c;outline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-100px;z-index:300;background:#fff;color:#111;padding:12px 18px}.skip-link:focus{top:12px}
.site-header{height:var(--header);position:fixed;inset:0 0 auto;z-index:30;background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;mix-blend-mode:difference;color:#fff;pointer-events:none}.site-header a,.site-header button{pointer-events:auto}.header-inner{height:100%;padding:0 40px;display:grid;grid-template-columns:1fr 96px 1fr;align-items:center}.menu-button{justify-self:start;display:flex;align-items:center;gap:10px;min-height:44px;min-width:44px;padding:0;background:none;border:0;font-size:11px;line-height:20px;letter-spacing:.08em;text-transform:uppercase}.menu-icon{width:12px;height:12px;display:block}.brand-link{display:flex;align-items:center;justify-content:center;width:96px;height:60px;margin:auto}.brand-link img{width:96px;height:60px;object-fit:contain}.header-right{justify-self:end;display:flex;align-items:center}.small-link{font-size:14px;letter-spacing:.04em;text-transform:uppercase;min-height:44px;display:flex;align-items:center}.small-link:hover{text-decoration:underline;text-underline-offset:4px}
.hero{position:relative;isolation:isolate;min-height:100svh;background:#151416;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:90px 24px 90px;color:#f0edf2;text-align:center;overflow:hidden}.hero:before{content:'';position:absolute;z-index:-2;inset:0;background:radial-gradient(ellipse at 48% 15%,#aa9cbe27,transparent 48%),linear-gradient(110deg,#08080b 0%,#15131a 22%,#333139 47%,#16141b 65%,#09090c 100%)}.hero:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#100e160a 15%,#16131b13 40%,#09070cbb 100%);pointer-events:none}.eyebrow{font-size:12px;line-height:1.6;letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px;color:var(--muted)}.hero .eyebrow{color:#c4becd;letter-spacing:.16em;margin-bottom:20px}.realm-title{font:italic 400 clamp(36px,4vw,54px)/1.15 'Times New Roman',Times,serif;letter-spacing:-.05em;margin:0 .04em 0 0}.hero-soon{font-size:12px;line-height:1.7;letter-spacing:.12em;color:#d2cdd8;margin:25px 0 0}.hero-link{font-size:14px;letter-spacing:.04em;text-transform:uppercase;margin-top:30px;padding:7px 0;border-bottom:1px solid #eee9f2a6;min-height:40px}.hero-link:hover{border-bottom-color:white;color:white}.hero-link span{display:none}.collection-index{display:none}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:0 0 30px}.section-heading h2{font-size:14px;letter-spacing:.045em;font-weight:400;text-transform:uppercase;margin:0}.section-heading p{font-size:12px;color:var(--muted);margin:0;text-transform:uppercase;letter-spacing:.05em}.category-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 38px}.category-row{display:inline-flex;align-items:center;min-height:42px;font-size:14px;text-transform:uppercase;letter-spacing:.04em}.category-row:hover{text-decoration:underline;text-underline-offset:6px}.category-number,.category-status,.category-arrow{display:none}.category-hero{min-height:calc(100svh - 200px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:90px 24px;text-align:center}.category-hero h1{font-size:clamp(26px,4vw,50px);font-weight:400;letter-spacing:.035em;line-height:1.2;text-transform:uppercase;margin:10px 0 24px}.collection-signature{font:italic 24px/1.3 'Times New Roman',Times,serif;margin:0 0 25px;color:#626066}.category-hero .eyebrow{display:none}.coming-soon{font-size:14px;text-transform:uppercase;letter-spacing:.09em;color:#555258;margin:0}.category-message{display:none}.text-link{font-size:14px;text-decoration:underline;text-underline-offset:5px}.back-link{margin-top:42px;text-transform:uppercase;letter-spacing:.035em}
.mobile-menu{position:fixed;inset:0 auto 0 0;width:min(470px,100%);height:100dvh;max-width:100%;max-height:100dvh;margin:0;padding:0;border:0;border-right:0;border-radius:0;color:var(--ink);background:var(--paper);box-shadow:none;overflow:hidden}.mobile-menu::backdrop{background:#0005}.mobile-menu[open]{display:flex;flex-direction:column;animation:drawer-in .2s ease-out}.mobile-menu>header{flex-shrink:0;min-height:var(--header);display:flex;align-items:center;justify-content:space-between;padding:0 40px;border-bottom:0;font-size:11px;letter-spacing:.05em;text-transform:uppercase}.mobile-menu>header button{display:flex;gap:12px;align-items:center;background:none;border:0;padding:0;min-height:44px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.close-icon{font:26px/1 Arial,sans-serif}.drawer-scroll{overflow-y:auto;overscroll-behavior:contain;padding:20px 40px 38px;flex:1;min-height:0}.drawer-section{border:0;padding:0 0 12px;margin-bottom:12px}.drawer-section summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;cursor:pointer;list-style:none;font-size:14px;letter-spacing:.035em;text-transform:uppercase}.drawer-section summary::-webkit-details-marker{display:none}.drawer-section summary:after{content:'+';font:20px/1 Arial}.drawer-section[open] summary:after{content:'−'}.drawer-section nav{display:flex;flex-direction:column;align-items:stretch;padding:12px 0 2px}.drawer-section nav a,.drawer-section nav button{display:block;padding:9px 0;min-height:40px;font-size:14px;letter-spacing:.025em;text-transform:uppercase;background:none;border:0;text-align:left}.drawer-section nav a:hover,.drawer-section nav button:hover{text-decoration:underline;text-underline-offset:5px}.drawer-section nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px;font-weight:500}.drawer-section .menu-collection-name{font:italic 24px/1.3 'Times New Roman',Times,serif;text-transform:none;margin:0 0 8px}.drawer-contact{font-size:12px;letter-spacing:.02em;text-transform:uppercase;overflow-wrap:anywhere}.drawer-note{font-size:12px;letter-spacing:.06em;color:var(--muted);text-transform:uppercase;margin-top:24px}@keyframes drawer-in{from{transform:translateX(-20px);opacity:.6}to{transform:translateX(0);opacity:1}}
.site-footer{padding:24px 40px 20px;border:0;background:var(--paper)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr .7fr 1fr;gap:45px}.footer-brand{font-size:14px;letter-spacing:.07em;margin:0 0 18px}.footer-note{font-size:12px;text-transform:uppercase;letter-spacing:.035em;color:var(--muted);margin:0 0 24px}.footer-email{font-size:14px;letter-spacing:.015em;overflow-wrap:anywhere}.footer-heading{font-size:12px;letter-spacing:.04em;font-weight:400;color:var(--muted);text-transform:uppercase;margin:0 0 20px}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin:0 0 8px}.footer-links a,.footer-links button{font:400 14px/1.7 var(--font);letter-spacing:.03em;text-transform:uppercase;color:var(--ink);background:none;border:0;padding:4px 0;min-height:28px;text-align:left}.footer-links a:hover,.footer-links button:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:24px;padding-top:0;border:0;font-size:12px;letter-spacing:.035em;color:var(--muted)}.footer-bottom p{margin:0}.footer-bottom em{font-family:'Times New Roman',Times,serif;font-size:15px;text-transform:none}
.document-wrap{max-width:1470px;margin:0 auto;padding:112px 40px 100px}.document-top{border-bottom:1px solid var(--line);padding-bottom:32px;margin-bottom:40px}.document-top h1{font-size:clamp(26px,4vw,44px);font-weight:400;line-height:1.25;letter-spacing:.015em;text-transform:uppercase;margin:0 0 18px}.document-top .updated{font-size:12px;color:var(--muted);margin:0}.document-grid{display:grid;grid-template-columns:210px minmax(0,800px);gap:clamp(45px,7vw,110px)}.document-nav{position:sticky;top:110px;height:max-content;max-height:calc(100vh - 140px);overflow:auto;display:flex;flex-direction:column;align-items:flex-start;gap:14px;font-size:14px;line-height:1.6;color:#65615d;text-transform:uppercase;letter-spacing:.02em}.document-nav a:hover,.document-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:4px;color:#181818}.document-body{font-size:16px;line-height:1.8;color:#353332;min-width:0}.document-body h2{font-size:17px;font-weight:500;line-height:1.5;letter-spacing:.015em;text-transform:uppercase;margin:44px 0 16px;color:#171717;scroll-margin-top:100px}.document-body h2:first-child{margin-top:0}.document-body h3{font-size:16px;font-weight:500;line-height:1.5;margin:27px 0 12px;color:#222}.document-body p{margin:0 0 20px}.document-body ul,.document-body ol{padding-left:22px;margin:0 0 24px}.document-body li{margin-bottom:10px}.document-body strong{font-weight:500;color:#202020}.document-body a{color:#29262d;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.document-body .quiet-box,.policy-overview{padding:22px 24px;border:1px solid var(--line);background:#e7e5e06b;margin:0 0 32px}.document-body .quiet-box p:last-child,.policy-overview p:last-child{margin-bottom:0}.policy-toc{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:30px 0 42px;padding:22px 0}.policy-toc h2{font-size:14px!important;margin:0 0 18px!important;font-weight:500}.policy-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:8px 25px;list-style:none;padding:0!important;margin:0!important}.policy-toc li{font-size:14px;line-height:1.55;margin:0!important}.policy-toc a{text-decoration:none}.policy-toc a:hover{text-decoration:underline}.policy-source{font-size:13px;color:#696463;margin-top:-8px!important}.table-scroll{max-width:100%;overflow-x:auto;margin:24px 0 30px;border:1px solid var(--line)}.policy-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6;text-align:left}.policy-table th{font-weight:500;background:#e8e5df}.policy-table th,.policy-table td{padding:16px;vertical-align:top;border-bottom:1px solid var(--line)}.policy-table tr:last-child td{border-bottom:0}.policy-table td:first-child{min-width:125px}.policy-table code{font:12px/1.6 ui-monospace,monospace;overflow-wrap:anywhere}.inline-policy-button{font:inherit;color:#29262d;border:0;background:none;padding:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.policy-action{font:14px/1.5 var(--font);text-transform:uppercase;color:#181818;border:1px solid #3d383b;border-radius:0;padding:13px 20px;background:transparent;cursor:pointer}.policy-action:hover{color:#fff;background:#262228}.contact-email{display:inline-block;font-size:clamp(16px,2.4vw,24px);letter-spacing:.015em;margin:6px 0 24px;overflow-wrap:anywhere}.contact-socials{display:flex;flex-wrap:wrap;gap:24px;margin:25px 0}.faq-item{border-top:1px solid var(--line);padding:24px 0}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item summary{list-style:none;display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-size:16px;color:#171717}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:'+';font:22px/1.3 Arial}.faq-item[open] summary:after{content:'−'}.faq-item p{margin:18px 25px 0 0}.not-found{min-height:65vh}.shop-locked body{visibility:hidden}
@media(max-width:1000px){.footer-grid{grid-template-columns:1fr 1fr 1fr;gap:34px}.footer-intro{grid-column:1/-1}.document-grid{grid-template-columns:180px minmax(0,1fr);gap:40px}.policy-toc ol{grid-template-columns:1fr}.header-inner{padding:0 16px}}
@media(max-width:650px){:root{--header:60px}.header-inner{padding:0 16px;grid-template-columns:1fr 84px 1fr}.menu-button{gap:0}.menu-button>span{display:none}.brand-link,.brand-link img{width:84px;height:60px}.small-link{font-size:14px}.hero{padding:70px 20px 74px}.realm-title{font-size:38px}.hero-soon{font-size:12px;max-width:240px;line-height:1.8}.hero .eyebrow{font-size:12px}.hero-link{font-size:14px}.collection-index{padding:36px 22px 42px}.section-heading{display:block;margin-bottom:20px}.section-heading p{margin-top:8px}.category-list{display:grid;grid-template-columns:1fr 1fr;gap:3px 15px}.category-row{font-size:14px}.category-hero{padding:75px 22px;min-height:calc(100svh - 175px)}.category-hero h1{font-size:30px}.site-footer{padding:38px 22px 22px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-legal{grid-column:1/-1}.footer-legal .footer-links{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.footer-links a,.footer-links button{font-size:14px;min-height:36px;display:inline-flex;align-items:center}.footer-bottom{flex-direction:column;gap:8px;margin-top:24px}.document-wrap{padding:95px 22px 70px}.document-top{padding-bottom:26px;margin-bottom:30px}.document-grid{display:block}.document-nav{position:static;max-height:none;flex-direction:row;flex-wrap:wrap;gap:9px 18px;font-size:14px;margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid var(--line)}.document-body{font-size:16px;line-height:1.8}.document-body h2{font-size:16px;margin-top:35px}.policy-toc ol{grid-template-columns:1fr}.policy-overview,.document-body .quiet-box{padding:19px}.policy-table th,.policy-table td{padding:12px}.mobile-menu>header{padding:0 22px}.drawer-scroll{padding:20px 24px 30px}}
@media print{.site-header,.site-footer,.document-nav,.policy-toc,.consent-banner,.mobile-menu,.bag-drawer,.skip-link{display:none!important}.document-wrap{max-width:none;padding:0}.document-grid{display:block}.document-body{color:#000}.document-body a{color:#000}body{background:#fff}.policy-table{font-size:11px}.table-scroll{overflow:visible}h2,h3{break-after:avoid}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Shop 03: unboxed overlay controls and a minimal, product-free bag. */
.site-header :is(button,a):focus-visible{outline:2px solid #fff;outline-offset:3px}
.bag-button{border:0;background:none;padding:0;min-height:44px;font:400 11px/20px var(--font);letter-spacing:.08em;color:inherit;white-space:nowrap;text-transform:uppercase}
.bag-button .bag-word,.bag-button .bag-count{display:inline}.bag-button .bag-count{font-variant-numeric:tabular-nums}
.bag-button:hover,.menu-button:hover{text-decoration:underline;text-underline-offset:3px}
.hero .eyebrow{display:none}.hero{padding-bottom:56px}.hero-soon{margin-top:16px;letter-spacing:.08em}.hero-link{margin-top:18px;font-size:11px;letter-spacing:.08em;border:0}.hero-link:hover{text-decoration:underline;text-underline-offset:4px}
.category-hero{min-height:100svh;padding-top:100px}.not-found{padding-top:100px}
.bag-drawer{position:fixed;inset:0 0 0 auto;width:min(440px,100%);height:100dvh;max-width:100%;max-height:100dvh;margin:0;padding:0;border:0;border-radius:0;background:var(--paper);color:var(--ink);overflow:auto}
.bag-drawer::backdrop{background:#0005}.bag-drawer[open]{display:flex;flex-direction:column;animation:bag-in .18s ease-out}
.bag-drawer>header{min-height:60px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.bag-drawer h2{margin:0;font:400 11px/20px var(--font);letter-spacing:.08em;text-transform:uppercase}
.bag-drawer>header button{background:none;border:0;padding:0;min-height:44px;display:flex;align-items:center;gap:12px;font:400 11px/20px var(--font);text-transform:uppercase;letter-spacing:.08em}.bag-drawer>header button span{font-size:24px}
.bag-content{padding:90px 32px 40px;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.bag-content>p:first-child{font-size:14px;text-transform:uppercase;letter-spacing:.05em;margin:0 0 32px}.bag-collection{margin:0;color:var(--muted)}.bag-collection em{font:italic 28px/1.4 'Times New Roman',Times,serif;display:block}.bag-collection span{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-top:10px}.bag-continue{margin-top:44px;background:none;border:0;border-bottom:1px solid currentColor;padding:10px 0;min-height:44px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.footer-utility{display:flex;align-items:flex-start;justify-content:space-between;gap:18px 32px;flex-wrap:wrap}.footer-utility>a,.footer-utility>button,.footer-group>summary{font:400 11px/20px var(--font);letter-spacing:.08em;text-transform:uppercase;min-height:32px;padding:6px 0;background:none;border:0;text-align:left}.footer-group{min-width:110px}.footer-group>summary{cursor:pointer;list-style:none}.footer-group>summary::-webkit-details-marker{display:none}.footer-group>summary:after{content:' +';margin-left:8px}.footer-group[open]>summary:after{content:' −'}.footer-group nav{display:flex;flex-direction:column;gap:0;padding:12px 0}.footer-group nav a{display:block;font-size:12px;line-height:1.5;letter-spacing:.04em;text-transform:uppercase;padding:8px 0}.footer-group a:hover,.footer-utility>a:hover,.footer-utility>button:hover{text-decoration:underline;text-underline-offset:3px}
@keyframes bag-in{from{transform:translateX(16px);opacity:.7}to{transform:translateX(0);opacity:1}}
@media(max-width:1023px){.menu-icon{width:16px;height:16px}.menu-button>span{display:none}.bag-button{font-size:12px}.mobile-menu>header{padding:0 24px}.drawer-scroll{padding-left:24px;padding-right:24px}}
@media(max-width:650px){.site-footer{padding:24px 20px 20px}.footer-utility{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.footer-utility>a{grid-column:1/-1}.footer-utility>a,.footer-utility>button,.footer-group>summary{font-size:12px;min-height:40px}.bag-drawer>header{padding:0 24px}.bag-content{padding:70px 24px 30px}.footer-bottom{font-size:12px}.hero{padding-top:100px;padding-bottom:50px}}
@media(prefers-reduced-motion:reduce){.bag-drawer[open]{animation:none}}

/* Match the reference bag label: spaces inside the counter and underline only BAG. */
.bag-button:hover{ text-decoration:none; }
.bag-button:hover .bag-word{ text-decoration:underline; text-underline-offset:3px; }
.bag-button:hover .bag-count{ text-decoration:none !important; }
.bag-button .bag-word{ display:inline-block; position:relative; }
.bag-button:hover .bag-word{ text-decoration:none !important; }
.bag-button:hover .bag-word::after{ content:''; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:currentColor; pointer-events:none; }

/* Shop 27: Realm I X-ray showroom background on every product/category page. */
body.product-page{
  position:relative;
  min-height:100svh;
  background:#08090b;
  color:#f2f2f2;
}
body.product-page::before{
  content:'';
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(0,0,0,.16),rgba(0,0,0,.30)),
    url('/assets/realm-i-product-background.png') center center / cover no-repeat;
}
body.product-page main,
body.product-page .site-footer{
  position:relative;
  z-index:1;
}
body.product-page .category-hero{
  min-height:100svh;
  background:transparent;
  color:#f4f4f4;
  text-shadow:0 1px 16px rgba(0,0,0,.92),0 1px 3px rgba(0,0,0,.85);
}
body.product-page .category-hero .collection-signature{
  color:#eeeeee;
}
body.product-page .category-hero .coming-soon{
  color:#e2e2e2;
}
body.product-page .category-hero .text-link{
  color:#f2f2f2;
}
body.product-page .site-footer{
  background:rgba(7,8,10,.58);
  color:#ededed;
  border:0;
}
body.product-page .footer-direct a,
body.product-page .footer-direct button,
body.product-page .site-footer .footer-bottom,
body.product-page .site-footer .footer-bottom a{
  color:#d3d3d3;
}
@media(max-width:650px){
  body.product-page::before{
    background-position:center center;
  }
}


/* Product-background header: preserve the logo's original artwork colours.
   Text/icons keep the original difference blend so they remain readable. */
body.product-page .site-header{
  mix-blend-mode:normal;
}
body.product-page .site-header .header-left,
body.product-page .site-header .header-right{
  color:#fff;
  mix-blend-mode:difference;
}
body.product-page .site-header .brand-link img{
  opacity:1!important;
}
body.product-page .site-header .brand-link::after{
  opacity:0!important;
}
