/* r25 full-tile mineral cards; approved E/B/F surfaces and original-pixel product cutouts.
   BARBOR storefront. One shared layout system for every route and viewport. */
@font-face { font-family: InterVariable; font-style: normal; font-weight: 100 900; font-display: swap; src: url('/assets/fonts/InterVariable-4.1.woff2') format('woff2'); }
:root {
  color-scheme: dark;
  --ink: #17130f; --ink2: #211b16; --earth: #332820;
  --bronze: #9b7043; --bronze2: #ffdfac; --sand: #fff1da;
  --ivory: #fff8ee; --muted: #f4e8da; --olive: #9a8a75;
  --olive-grain: url('/assets/textures/mineral-grain-r24.webp');
  --mineral-stage: url('/assets/textures/mineral-stage-r24.webp');
  --mineral-tile: url('/assets/textures/mineral-tile-r25.webp');
  --olive-material: linear-gradient(#9a8a75ed,#9a8a75ed),var(--olive-grain) center / 384px 384px repeat,var(--olive); --burgundy: #71342e;
  --line: rgba(255,239,215,.25);
  --canvas: #b3a38e; --canvas-lit: #b3a38e;
  --editorial: #555550;
  --canvas-material: linear-gradient(#b3a38ef5,#b3a38ef5),var(--olive-grain) center / 384px 384px repeat,var(--canvas);
  --action-bg: #fff1da; --action-fg: #211b15; --focus: #ffdfac;
  --field-bg: rgba(24,20,16,.80); --option-bg: #28231e;
  --control-line: #f0dfc4;
  --glass-nav: linear-gradient(160deg,#fff7e810,#fff7e803),rgba(31,27,23,.88);
  --glass-panel: linear-gradient(150deg,#fff6e506,transparent 65%),rgba(37,32,27,.96);
  --glass-control: linear-gradient(155deg,#fff1da0a,#fff1da02),rgba(14,12,10,.32);
  --glass-sheet: linear-gradient(150deg,#fff6e508,transparent 65%),rgba(32,28,24,.97);
  --glass-fallback: #28231e;
  --glass-shadow: inset 0 1px 0 #fff1,0 8px 28px #20160e14; --ease: cubic-bezier(.2,.75,.2,1);
  --gutter: clamp(16px,4vw,48px);
  --shell: min(1320px,calc(100vw - 2 * var(--gutter)));
  --section-space: clamp(64px,7vw,104px);
  --radius: clamp(18px,2vw,28px);
  --header-clearance: 152px;
  --font-body: InterVariable,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
/* Approved E / B / F mineral hierarchy. B needs dark ink; nested panels retain ivory. */
.picks-section,.form-section,.continue-section {
  color-scheme: light; --ivory: #211b15; --muted: #33291f; --sand: #2e241b; --bronze2: #33271b;
  --line: rgba(33,27,21,.25); --action-bg: #29231c; --action-fg: #fff8ed; --focus: #211b15;
  --control-line: #51412f; color: var(--ivory);
}
/* Espresso foreground surfaces keep their own semantic colors. */
.topbar,.desktop-nav,.bottom-dock,.feature-board,.hero,.product-card,.split-story,.form-stage,.lounge-section,.lounge-department,.mini-rail > a,.continue-card,.origin-teaser,.site-footer,.values-grid > article,.guide-grid > article,.knowledge-grid > article,.support-form,.wholesale-intro,.partnership-card,.partnership-request,.app-dialog,#image-viewer,.gallery-stage,.gallery-thumbs {
  color-scheme: dark;
  --ivory: #fbf3e7; --muted: #d8c9b4; --sand: #f0dfc4; --bronze2: #edc990;
  --line: rgba(238,218,186,.22); --control-line: #b59c7a;
  --action-bg: #f0dfc4; --action-fg: #211b15; --focus: #edc990;
  --glass-control: linear-gradient(155deg,#fff1da0a,#fff1da02),rgba(14,12,10,.32);
  --field-bg: rgba(18,15,11,.76); --option-bg: #28231e;
  color: var(--ivory);
}
.feature-board {
  --olive: #302a23;
  --olive-material: linear-gradient(#302a23f0,#302a23f0),var(--olive-grain) center / 384px 384px repeat,var(--olive);
}
*,*::before,*::after { box-sizing: border-box; }
html { background: var(--canvas); color: var(--ivory); scroll-behavior: smooth; scroll-padding-top: var(--header-clearance); }
body { margin: 0; font-family: var(--font-body); font-optical-sizing: auto; line-height: 1.5; background: var(--canvas); color: var(--ivory); -webkit-font-smoothing: antialiased; }
img,video,canvas { display: block; max-width: 100%; }
button,input,textarea,select { font: inherit; }
button,a { color: inherit; }
button { cursor: pointer; }
a { text-underline-offset: 4px; }
button:disabled { opacity: .45; cursor: default; }
button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
[hidden] { display: none !important; }
.app-shell { min-height: 100svh; background: var(--canvas-material); }
main { min-height: 50vh; min-width: 0; outline: none; }
main:not([data-route="/"]) { padding-top: var(--header-clearance); }
main > section { min-width: 0; }
body.modal-open { overflow: hidden; }
.is-navigating main { opacity: .65; }
.skip { position: fixed; left: 16px; top: -70px; z-index: 200; background: var(--action-bg); color: var(--action-fg); padding: 12px 18px; border-radius: 8px; }
.skip:focus { top: 12px; }
.topbar { position: fixed; z-index: 80; inset: max(12px,env(safe-area-inset-top)) auto auto 50%; transform: translateX(-50%); width: min(1180px,calc(100vw - 2 * var(--gutter))); height: 66px; display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; padding: 0 14px; border: 1px solid var(--line); border-radius: 18px; background: var(--glass-nav); -webkit-backdrop-filter: blur(18px) saturate(120%); backdrop-filter: blur(18px) saturate(120%); box-shadow: var(--glass-shadow); }
.top-logo { display: block; width: 148px; height: 52px; }
.top-logo img { width: 100%; height: 100%; object-fit: contain; }
.top-actions { justify-self: end; display: flex; gap: 6px; align-items: center; }
.topbar button { min-width: 44px; min-height: 44px; }
.menu-trigger { justify-self: start; }
.icon-btn,.bag-btn { border: 0; background: transparent; color: var(--ivory); padding: 10px; font-size: 13px; }
.bag-btn { border: 1px solid var(--line); border-radius: 999px; padding: 8px 12px; white-space: nowrap; }
.bag-btn span { display: inline-grid; place-items: center; min-width: 20px; height: 20px; margin-left: 3px; border-radius: 999px; background: var(--bronze); color: #130f0c; font-size: 12px; font-weight: 700; }
.desktop-nav { position: fixed; z-index: 70; top: 88px; left: 50%; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; gap: 3px; width: max-content; max-width: var(--shell); padding: 3px; border: 1px solid var(--line); border-radius: 999px; background: var(--glass-nav); -webkit-backdrop-filter: blur(18px) saturate(120%); backdrop-filter: blur(18px) saturate(120%); box-shadow: var(--glass-shadow); font-size: 11px; font-weight: 550; letter-spacing: .065em; text-transform: uppercase; }
.desktop-nav a { min-height: 44px; display: inline-flex; align-items: center; padding: 7px clamp(12px,1.5vw,22px); border-radius: 999px; text-decoration: none; color: var(--ivory); transition: background .2s,color .2s; }
.desktop-nav a:hover,.desktop-nav a:focus-visible { color: var(--ivory); background: #e7d7bd0f; }
.desktop-nav a:focus-visible { outline-offset: -2px; }
.bottom-dock { display: none; }
.kicker,.eyebrow { margin: 0 0 14px; color: var(--bronze2); text-transform: uppercase; letter-spacing: .16em; font-size: 12px; font-weight: 650; line-height: 1.5; }
.btn { display: inline-flex; justify-content: center; align-items: center; gap: 6px; min-height: 48px; padding: 10px 22px; border-radius: 999px; border: 1px solid var(--control-line); text-decoration: none; text-align: center; font-size: 14px; line-height: 1.4; background: var(--glass-control); transition: transform .2s var(--ease),border-color .2s; }
.btn.primary { background: var(--action-bg); color: var(--action-fg); border-color: var(--action-bg); font-weight: 650; }
.btn.compact { min-height: 44px; padding: 9px 16px; font-size: 13px; }
.btn.full { width: 100%; }
.quick,.text-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 12px; padding: 0; border: 0; background: transparent; color: var(--sand); text-decoration: underline; text-underline-offset: 5px; }
.hero { isolation: isolate; position: relative; display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(24px,4vw,56px); padding: 176px max(var(--gutter),calc((100vw - 1320px)/2)) 88px; min-height: min(780px,100svh); background: radial-gradient(circle at 72% 34%,#a9764b17,transparent 40%),#100d0a; }
.hero-vignette { position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(0deg,#0e0b0955,transparent 45%); }
.hero-inner { min-width: 0; width: 100%; container-type: inline-size; }
.hero h1 { margin: 0; font-size: clamp(48px,16cqi,96px); line-height: .91; letter-spacing: -.055em; font-weight: 780; white-space: nowrap; }
.hero h1 em { color: var(--bronze2); font-style: normal; font-weight: 420; }
.hero-copy { max-width: 34em; margin: 28px 0; font-size: clamp(16px,1.5vw,20px); line-height: 1.65; color: var(--muted); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-family { position: relative; width: 100%; height: auto; aspect-ratio: 1672/941; object-fit: contain; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 24px 70px #0004; }
.scroll-cue { position: absolute; bottom: 28px; left: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 10px; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); white-space: nowrap; }
.scroll-cue span { width: 32px; height: 1px; background: var(--bronze); }
.rail-section,.picks-section,.knowledge-section,.continue-section { padding: var(--section-space) 0; }
.section-title { width: var(--shell); margin: 0 auto 32px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 16px; }
.section-title > div { min-width: 0; }
.section-title h2,.origin-teaser h2 { margin: 0; font-size: clamp(34px,4.4vw,64px); line-height: 1.02; letter-spacing: -.04em; }
.section-title > p:not(.kicker),.section-title > div + p { max-width: 580px; margin: 0 auto; color: var(--muted); font-size: 15px; line-height: 1.6; }
.section-title.centered { display: block; text-align: center; }
.section-title.centered > .kicker { max-width: none; margin: 0 auto 14px; }
.section-title.centered > p:not(.kicker) { margin: 16px auto 0; max-width: 560px; }
.launch-offer-strip { width: var(--shell); margin: 0 auto 42px; padding: 16px 0; border-block: 1px solid #76634c; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.launch-offer-strip strong { font-size: 16px; font-weight: 500; line-height: 1.5; }
.launch-offer-strip small,.pdp-member-offer small { display: block; font-size: 12px; color: var(--muted); line-height: 1.6; margin-top: 4px; }
.launch-offer-strip button { flex: 0 0 auto; margin: 0; font-size: 13px; }
.rail-controls { width: var(--shell); margin: 0 auto 16px; display: flex; justify-content: end; gap: 8px; }
.rail-controls button { min-width: 44px; min-height: 44px; border: 1px solid var(--control-line); border-radius: 50%; color: var(--sand); background: var(--glass-control); font-size: 22px; }
.product-rail { --rail-gap: 18px; --rail-columns: 4; width: 100%; display: grid; grid-auto-flow: column; grid-auto-columns: calc((var(--shell) - (var(--rail-columns) - 1) * var(--rail-gap)) / var(--rail-columns)); gap: var(--rail-gap); padding: 6px max(var(--gutter),calc((100vw - 1320px)/2)) 12px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: var(--bronze) transparent; }
.product-rail.is-dragging { cursor: grabbing; scroll-snap-type: none; user-select: none; }
.product-rail.is-dragging a { pointer-events: none; }
/* Full-tile product cards: one continuous scene, with original cutouts and live text. */
.product-card { min-width: 0; position: relative; display: flex; flex-direction: column; scroll-snap-align: start; border: 1px solid var(--line); border-radius: var(--radius); padding: 0; overflow: hidden; background: linear-gradient(180deg,transparent 43%,#17110d38 59%,#17110dbb 76%,#17110de6 100%),var(--mineral-tile) center / cover no-repeat,#332820; box-shadow: inset 0 1px 0 #fff3,0 8px 28px #20160e14; }
.product-authentic-stage { position: relative; display: grid; place-items: center; width: 100%; aspect-ratio: 3/4; overflow: hidden; border-radius: 0; border: 0; background: none; box-shadow: none; }
.product-authentic-stage:focus-visible { outline-offset: -5px; }
.product-authentic-image { position: absolute; inset: 0; display: block; width: 100%; height: 100%; min-width: 0; min-height: 0; padding: clamp(28px,3vw,44px); object-fit: contain; object-position: 50% 100%; image-rendering: auto; transition: transform .25s var(--ease); }
.card-copy { flex: 1; display: flex; flex-direction: column; align-items: center; padding: 12px 20px 20px; text-align: center; background: none; }
.card-copy .quick { margin-top: auto; padding-top: 12px; min-height: 56px; }
.card-copy > span { font-size: 11px; color: var(--bronze2); }
.card-copy h3 { font-size: clamp(22px,2vw,28px); line-height: 1.2; margin: 8px 0; }
.card-copy h3 a { text-decoration: none; }
.card-copy p { font-size: 13px; line-height: 1.5; color: var(--muted); margin: 0; }
.rail-progress { width: var(--shell); height: 2px; margin: 20px auto 0; background: var(--line); }
.rail-progress span { display: block; height: 100%; background: var(--bronze); }
.fine-copy { font-size: 12px; line-height: 1.7; color: var(--muted); }
[data-comb-accessory] { width: var(--shell); margin: 20px auto 0; }
.split-story { width: var(--shell); margin: 0 auto var(--section-space); display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: var(--glass-panel); box-shadow: var(--glass-shadow); }
.media-panel { min-width: 0; min-height: 0; display: grid; place-items: center; background: #100e0c; }
.media-panel video { width: 100%; height: 100%; min-height: 100%; object-fit: contain; aspect-ratio: 4/3; }
.story-copy { padding: clamp(24px,4vw,56px); display: flex; flex-direction: column; justify-content: center; }
.story-copy h2,.lounge-copy h2 { font-size: clamp(34px,4.3vw,64px); line-height: 1.03; letter-spacing: -.04em; margin: 0 0 22px; }
.story-copy > p:not(.kicker),.lounge-copy > p:not(.kicker) { font-size: 16px; line-height: 1.75; color: var(--muted); }
.form-section { padding: var(--section-space) 0; background: var(--olive-material); }
.form-stage { width: var(--shell); margin: 36px auto 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: #100e0c; }
.beard-portrait { position: relative; min-width: 0; min-height: 0; height: clamp(400px,44vw,580px); display: grid; grid-template-rows: minmax(0,1fr) auto; place-items: center; overflow: hidden; background: #080807; }
.beard-portrait img { grid-area: 1/1; width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.beard-controls { min-width: 0; align-self: center; padding: clamp(24px,3vw,44px); }
.beard-controls h3 { font-size: clamp(30px,3.4vw,48px); line-height: 1.1; letter-spacing: -.025em; margin: 0 0 16px; }
.beard-controls > p:not(.kicker) { color: var(--muted); font-size: 15px; line-height: 1.65; }
.form-options { display: flex; flex-wrap: wrap; gap: 8px; margin: 24px 0; }
.form-options button { min-height: 44px; padding: 9px 16px; border: 1px solid var(--control-line); border-radius: 999px; color: var(--sand); background: var(--glass-control); font-size: 14px; }
.form-options button.active { background: var(--sand); color: #17130f; border-color: var(--sand); }
.recommendation { padding: 24px 0 0; border-top: 1px solid var(--line); }
.recommendation span { display: block; margin-bottom: 8px; font-size: 12px; color: var(--muted); }
.recommendation strong { display: block; margin-bottom: 18px; font-size: clamp(20px,2.3vw,28px); line-height: 1.35; }
[data-ritual-links] { display: flex; flex-wrap: wrap; gap: 8px; }
.form-3d-wrap { position: relative; grid-area: 1/1; width: 100%; height: 100%; min-height: 0; background: #080807; }
.form-3d-wrap canvas { display: block; width: 100%; height: 100%; touch-action: pan-y; outline: none; }
.form-spatial-controls { grid-area: 2/1; width: 100%; min-width: 0; padding: 12px; text-align: center; }
.form-spatial-controls .btn { background: var(--glass-control); border-color: #8a735c; color: var(--sand); }
[data-3d-controls] { display: flex; justify-content: center; flex-wrap: wrap; gap: 5px; }
[data-3d-controls] button { min-height: 44px; min-width: 44px; padding: 6px 9px; border: 1px solid var(--control-line); border-radius: 10px; background: var(--glass-control); color: var(--sand); font-size: 12px; }
[data-3d-status] { display: block; margin-top: 6px; font-size: 10px; line-height: 1.5; color: var(--sand); }
.lounge-section { position: relative; display: flex; align-items: end; min-height: clamp(500px,50vw,760px); overflow: hidden; background: #111 url('/assets/v2/barbor-lounge.webp') center/cover no-repeat; }
.lounge-bg,.lounge-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.lounge-bg { object-fit: cover; object-position: 56% center; }
.lounge-shade { background: linear-gradient(90deg,#0d0b09d6,#0d0b092e 70%),linear-gradient(0deg,#0d0b09d9,transparent 80%); }
.lounge-copy { position: relative; z-index: 1; width: var(--shell); margin: 0 auto; padding: 64px 0; }
.lounge-copy h2 { max-width: 680px; }
.lounge-copy > p:not(.kicker) { max-width: 580px; color: #d1c1ad; }
.picks-section { background: var(--olive-material); }
.mini-rail,.knowledge-grid { width: var(--shell); margin: 0 auto; display: grid; gap: 16px; }
.mini-rail { grid-template-columns: repeat(4,minmax(0,1fr)); }
.mini-rail a { display: flex; flex-direction: column; justify-content: space-between; gap: 36px; min-height: 160px; min-width: 0; padding: 24px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--glass-panel); text-decoration: none; }
.mini-rail span { color: var(--bronze2); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.mini-rail strong { font-size: clamp(20px,2vw,26px); line-height: 1.25; }
.knowledge-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.knowledge-grid article { display: flex; flex-direction: column; min-width: 0; padding: 26px 18px; border-top: 1px solid var(--bronze); background: var(--glass-panel); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--glass-shadow); }
.knowledge-grid article > span { color: var(--bronze2); font-size: 12px; }
.knowledge-grid h3 { font-size: clamp(23px,2.4vw,32px); line-height: 1.2; letter-spacing: -.02em; margin: 24px 0; }
.knowledge-grid a { display: inline-flex; align-items: center; min-height: 44px; margin-top: auto; color: var(--sand); }
.continue-section { padding: 28px 0; background: var(--olive-material); }
.continue-slot { width: var(--shell); margin: auto; display: flex; gap: 12px; overflow-x: auto; padding: 6px 0 12px; }
.continue-card { display: inline-flex; flex: 0 0 auto; max-width: 100%; gap: 16px; align-items: center; border: 1px solid var(--line); border-radius: 18px; padding: 16px; background: var(--glass-panel); text-decoration: none; }
.continue-card img { width: 48px; height: 64px; object-fit: contain; }
.continue-card strong,.continue-card small { display: block; }
.continue-card small { font-size: 11px; color: var(--muted); margin-bottom: 6px; }
.continue-card > span { font-size: 12px; }
.origin-teaser { padding: var(--section-space) var(--gutter); text-align: center; background: var(--glass-panel); }
.origin-teaser > p:not(.kicker) { max-width: 640px; margin: 26px auto; color: var(--muted); font-size: 16px; line-height: 1.75; }
.site-footer { padding: 64px var(--gutter) 44px; border-top: 1px solid var(--line); text-align: center; background: #211d18; }
.site-footer > img { width: 190px; height: 72px; object-fit: contain; margin: auto; }
.site-footer > p { color: var(--bronze2); font-size: 12px; letter-spacing: .16em; }
.site-footer > div { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 24px; max-width: 900px; margin: 24px auto; }
.site-footer a { display: inline-flex; align-items: center; min-height: 44px; color: var(--muted); font-size: 14px; text-decoration: none; }
.site-footer small { color: var(--muted); font-size: 12px; line-height: 1.6; }
.content-hero,.reading-body,.editorial-body,.values-grid,.guide-grid,.contact-layout,.policy-content,.breadcrumbs,.pdp-layout,.next-ritual { width: var(--shell); margin: 0 auto; }
.breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 12px 0 28px; font-size: 12px; color: var(--muted); }
.breadcrumbs a { display: inline-flex; align-items: center; min-height: 32px; color: var(--sand); }
.content-hero { padding: 32px 0 56px; text-align: center; }
.content-hero h1 { max-width: 1050px; margin: 0 auto; font-size: clamp(40px,6.5vw,92px); line-height: 1.03; letter-spacing: -.045em; text-wrap: balance; }
.content-hero h1 em { font-style: normal; color: var(--bronze2); font-weight: 400; }
.content-lede { max-width: 760px; margin: 26px auto 0; color: var(--muted); font-size: clamp(18px,2vw,23px); line-height: 1.7; }
.reading-body { max-width: min(800px,var(--shell)); padding-bottom: var(--section-space); font-size: 18px; line-height: 1.8; color: var(--muted); }
.reading-body h2 { margin-top: 44px; font-size: 30px; line-height: 1.2; letter-spacing: -.025em; color: var(--ivory); }
.reading-body a,.editorial-body a,.policy-content a { color: var(--sand); }
.reading-body .btn { margin: 18px 8px 0 0; }
.editorial-body { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,2fr); gap: clamp(32px,6vw,80px); padding-bottom: var(--section-space); color: var(--muted); font-size: 18px; line-height: 1.8; }
.editorial-body aside { border-top: 1px solid var(--bronze); padding-top: 24px; font-size: 25px; line-height: 1.5; color: var(--sand); }
.editorial-body aside span { font-size: 12px; color: var(--muted); }
.values-grid,.guide-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; padding-bottom: var(--section-space); }
.values-grid article,.guide-grid article { min-width: 0; border: 1px solid var(--line); border-radius: var(--radius); padding: clamp(24px,3vw,32px); background: var(--glass-panel); box-shadow: var(--glass-shadow); }
.values-grid span { color: var(--bronze2); font-size: 12px; }
.values-grid h2,.guide-grid h2 { font-size: 30px; line-height: 1.15; margin: 18px 0; }
.values-grid p,.guide-grid p { color: var(--muted); line-height: 1.7; }
.guide-grid h2 a { text-decoration: none; }
.next-ritual { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 24px; padding: 40px 0 56px; border-top: 1px solid var(--line); }
.next-ritual h2 { font-size: clamp(30px,4vw,48px); letter-spacing: -.03em; line-height: 1.15; margin: 0; }
.contact-layout { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(32px,5vw,64px); padding-bottom: var(--section-space); }
.contact-layout h2 { font-size: clamp(32px,4vw,46px); line-height: 1.15; margin: 0 0 24px; }
.contact-layout p { color: var(--muted); line-height: 1.75; }
.contact-layout a { color: var(--sand); }
.contact-email { font-size: clamp(17px,2vw,27px); overflow-wrap: anywhere; }
.contact-social { display: flex; gap: 24px; flex-wrap: wrap; margin-top: 24px; }
.contact-social a { min-height: 44px; display: inline-flex; align-items: center; }
.support-form { display: grid; gap: 18px; padding: 26px; border: 1px solid var(--line); border-radius: 22px; background: var(--glass-panel); box-shadow: var(--glass-shadow); }
.support-form label { display: grid; gap: 9px; font-size: 13px; color: var(--sand); }
.support-form input,.support-form textarea,.support-form select { width: 100%; min-width: 0; padding: 14px; border: 1px solid #7c6b59; border-radius: 10px; background: var(--field-bg); color: var(--ivory); font-size: 16px; }
.support-form textarea { resize: vertical; }
.support-form label span { font-size: 12px; line-height: 1.5; color: var(--muted); }
.form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.form-note { color: var(--muted); font-size: 12px !important; line-height: 1.7; }
.policy-content { max-width: min(850px,var(--shell)); padding-bottom: var(--section-space); font-size: 17px; line-height: 1.8; color: var(--muted); }
.policy-content .shell { width: 100%; margin: 0; padding: 0; }
.policy-content .about-hero { padding: 30px 0; }
.policy-content h1 { font-size: clamp(40px,6vw,72px); line-height: 1.05; letter-spacing: -.04em; color: var(--ivory); }
.policy-content h2 { font-size: 28px; line-height: 1.25; color: var(--sand); }
.faq { border-bottom: 1px solid var(--line); padding: 20px 0; }
.faq summary { cursor: pointer; font-size: 20px; line-height: 1.5; min-height: 44px; color: var(--sand); }
.pdp-layout { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: start; gap: clamp(28px,4vw,56px); padding-bottom: var(--section-space); }
.pdp-media { position: sticky; top: var(--header-clearance); min-width: 0; }
.pdp-copy { min-width: 0; text-align: center; }
.sheet-meta { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 16px; padding: 14px 0; border-block: 1px solid var(--line); color: var(--muted); font-size: 12px; line-height: 1.6; }
.sheet-meta span { display: inline-block; }
.pdp-copy h1 { font-size: clamp(40px,5vw,72px); line-height: 1.02; letter-spacing: -.04em; margin: 0 0 24px; overflow-wrap: anywhere; }
.pdp-copy > p { color: var(--muted); font-size: 17px; line-height: 1.75; }
.pdp-copy .pdp-lede { font-size: 22px; color: var(--sand); }
.product-price { display: flex; justify-content: center; align-items: baseline; flex-wrap: wrap; gap: 8px 12px; margin-top: 24px; font-size: 27px; font-weight: 500; font-variant-numeric: tabular-nums; }
.product-price strong { font-weight: 500; }
.product-price .fine-copy { font-size: 13px; font-weight: 400; }
.stock-state { font-size: 13px !important; }
.pdp-member-offer { margin: 12px 0 20px; }
.pdp-member-offer button { padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.purchase-controls { display: flex; justify-content: center; align-items: end; flex-wrap: wrap; gap: 12px; margin: 24px 0; }
.purchase-controls label { display: grid; gap: 7px; font-size: 12px; }
.purchase-controls input { width: 72px; min-height: 48px; border-radius: 12px; border: 1px solid var(--control-line); padding: 12px; background: var(--field-bg); color: var(--sand); font-size: 17px; }
.save-btn { min-height: 48px; border: 1px solid var(--control-line); border-radius: 999px; padding: 10px 18px; background: var(--glass-control); color: var(--sand); }
.pdp-assurance { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px 20px; font-size: 12px; }
.pdp-assurance a { display: inline-flex; align-items: center; min-height: 44px; color: var(--muted); }
.pdp-facts { margin-top: 24px; border-top: 1px solid var(--line); text-align: left; }
.pdp-facts details { padding: 20px 0; border-bottom: 1px solid var(--line); }
.pdp-facts summary { min-height: 44px; cursor: pointer; font-size: 19px; line-height: 1.5; color: var(--sand); }
.ingredient-list { margin: 12px 0 0; padding: 0; list-style: none; font-size: 15px; line-height: 1.7; color: var(--muted); }
.ingredient-list li { padding: 10px 0 10px 18px; position: relative; overflow-wrap: anywhere; border-bottom: 1px solid var(--line); }
.ingredient-list li::before { content: ''; position: absolute; width: 4px; height: 4px; border-radius: 50%; left: 2px; top: 21px; background: var(--bronze2); }
.ingredient-list li:last-child { border-bottom: 0; }
.pdp-facts p { font-size: 16px; line-height: 1.75; color: var(--muted); }
.pdp-facts a { color: var(--sand); }
.pdp-member-offer button { text-align: center; }
.beard-controls { text-align: center; }
.form-options,[data-ritual-links] { justify-content: center; }
.policy-content h1 { text-align: center; text-wrap: balance; }
.lounge-department-copy { text-align: center; }
.lounge-department-copy > p:last-child { margin-inline: auto; }
.menu-preferences { border-top: 1px solid var(--line); padding-top: 20px; }
.motion-preference { display: flex; gap: 12px; align-items: center; min-height: 44px; cursor: pointer; }
.motion-preference input { width: 20px; height: 20px; accent-color: var(--bronze2); }
.motion-preference small { display: block; color: var(--muted); font-size: 12px; }
html[data-motion=reduced] *,html[data-motion=reduced] *::before,html[data-motion=reduced] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
.viewer-zoom { position: absolute; top: 10px; left: 16px; min-height: 44px; border: 1px solid var(--line); border-radius: 999px; background: var(--ink2); color: var(--sand); padding: 8px 16px; font-size: 13px; }
.product-gallery { display: flex; flex-direction: column; gap: 12px; width: 100%; }
.gallery-stage { position: relative; height: clamp(300px,36vw,480px); overflow: hidden; border-radius: 18px; background: #0d0c0a; }
.gallery-main { width: 100%; height: 100%; display: grid; grid-template: minmax(0,1fr) / minmax(0,1fr); place-items: center; padding: 24px 52px; border: 0; background: none; overflow: hidden; }
.gallery-main img { display: block; width: 100%; height: 100%; max-width: min(100%,var(--native-width,100%)); max-height: min(100%,var(--native-height,100%)); min-width: 0; min-height: 0; margin: auto; object-fit: contain; object-position: 50% 50%; image-rendering: auto; border-radius: 8px; }
.gallery-main img.detail-view { transform: scale(1.18); transform-origin: 50% 72%; }
.gallery-prev,.gallery-next { position: absolute; top: calc(50% - 24px); width: 44px; height: 48px; border: 1px solid var(--control-line); border-radius: 50%; background: var(--glass-control); color: var(--ivory); font-size: 28px; }
.gallery-prev { left: 8px; } .gallery-next { right: 8px; }
.gallery-status { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.gallery-thumbs { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 8px; }
.gallery-thumbs button { min-width: 0; padding: 5px; border: 1px solid var(--control-line); border-radius: 10px; background: var(--glass-panel); color: var(--sand); }
.gallery-thumbs button[aria-pressed=true] { border-color: var(--sand); box-shadow: 0 0 0 1px var(--sand); }
.gallery-thumbs img { display: block; width: 100%; height: 60px; object-fit: contain; object-position: 50% 50%; image-rendering: auto; border-radius: 5px; background: #181410; }
.gallery-thumbs .is-label-detail img { object-fit: cover; object-position: 50% 72%; }
.gallery-thumbs span { display: block; font-size: 10px; line-height: 1.3; margin: 6px 0 3px; }
.app-dialog { position: fixed; inset: 0 0 0 auto; margin: 0; width: min(460px,100vw); height: 100dvh; max-height: 100dvh; max-width: 100vw; padding: 24px; border: 0; border-left: 1px solid var(--line); background: var(--glass-sheet); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); color: var(--ivory); overflow: auto; overscroll-behavior: contain; }
.app-dialog::backdrop { background: #24170e66; }
.drawer-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; border-bottom: 1px solid var(--line); padding-bottom: 16px; }
.drawer-head h2 { font-size: 28px; line-height: 1.2; margin: 0; }
.drawer-head button,.viewer-close { flex: 0 0 auto; width: 44px; height: 44px; border: 1px solid var(--control-line); border-radius: 50%; background: var(--glass-control); color: var(--sand); font-size: 26px; }
.menu-links { display: grid; gap: 8px; padding: 24px 0; }
.menu-links a { min-height: 48px; padding: 10px 0; text-decoration: none; font-size: 24px; }
.search-box { display: grid; gap: 9px; padding: 24px 0; }
.search-box span { font-size: 12px; color: var(--bronze2); }
.search-box input { width: 100%; min-height: 52px; padding: 12px 14px; border: 1px solid var(--control-line); border-radius: 12px; background: var(--field-bg); color: var(--ivory); font-size: 18px; }
.search-results { display: grid; gap: 10px; }
.search-results a { display: grid; gap: 8px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--glass-panel); color: var(--sand); text-align: left; text-decoration: none; box-shadow: var(--glass-shadow); }
.search-results a span { font-size: 12px; color: var(--muted); }
.bag-row { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; gap: 12px; align-items: start; padding: 24px 0; border-bottom: 1px solid var(--line); }
.bag-row img { width: 48px; height: 84px; object-fit: contain; }
.bag-row a { color: var(--sand); text-decoration: none; }
.bag-row small { display: block; color: var(--muted); font-size: 11px; margin: 8px 0; }
.bag-row > strong { font-size: 13px; max-width: 88px; text-align: right; }
.quantity-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.quantity-controls button { min-width: 44px; min-height: 44px; border: 1px solid var(--control-line); border-radius: 10px; background: var(--glass-control); color: var(--sand); }
.quantity-controls .remove-item { padding: 0 9px; font-size: 11px; }
.cart-footer { padding-top: 20px; }
.cart-total { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 16px; font-size: 18px; }
.bag-note,.commerce-note { font-size: 12px; line-height: 1.7; color: var(--muted); }
.bag-offer { padding: 14px 0; border-block: 1px solid #76634c; margin: 18px 0; }
.bag-offer p { font-size: 14px; line-height: 1.6; }
.bag-pricing-label { font-size: 12px; color: var(--muted); line-height: 1.6; }
.empty-state { padding: 28px 0; }
.empty-state h3 { font-size: 25px; }
.empty-state p { color: var(--muted); line-height: 1.7; }
.community-form .consent-checkbox { display: flex; align-items: start; gap: 10px; font-size: 13px; line-height: 1.5; }
.community-form .consent-checkbox input { width: 18px; height: 18px; flex: 0 0 18px; accent-color: #b89766; }
.community-form .consent-checkbox span { color: inherit; font-size: 13px; }
#image-viewer { width: min(1100px,96vw); height: 92dvh; max-width: 96vw; max-height: 96dvh; padding: 64px 16px 16px; border: 1px solid var(--line); border-radius: 18px; background: #100e0c; color: var(--sand); }
#image-viewer::backdrop { background: #000d; }
.viewer-close { position: absolute; right: 12px; top: 10px; }
.viewer-scroll { height: calc(100% - 30px); display: grid; grid-template: minmax(0,1fr) / minmax(0,1fr); place-items: center; overflow: auto; touch-action: pan-x pan-y; }
.viewer-scroll img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; object-position: 50% 50%; image-rendering: auto; margin: auto; cursor: zoom-in; }
#image-viewer.zoomed .viewer-scroll { display: block; }
#image-viewer.zoomed img { max-width: none; max-height: none; width: max(100%,calc(var(--native-width,640px) * 2)); height: auto; margin: 0 auto; cursor: zoom-out; }
#image-viewer p { text-align: center; font-size: 12px; }
.toast { position: fixed; z-index: 1000; bottom: 28px; left: 50%; transform: translateX(-50%); width: max-content; max-width: calc(100vw - 32px); padding: 16px 22px; border-radius: 16px; background: var(--action-bg); color: var(--action-fg); font-size: 14px; line-height: 1.6; box-shadow: 0 12px 44px #0008; }
@media (hover:hover) {
  .btn:hover:not(:disabled) { transform: translateY(-2px); }
  .product-card:hover { border-color: #a9764b; }
  .authentic-card:hover .product-authentic-image { transform: scale(1.025); }
}
@media (max-width:1100px) { .product-rail { --rail-columns: 3; } .mini-rail { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:959px) {
  :root { --header-clearance: 96px; }
  .topbar { top: max(8px,env(safe-area-inset-top)); height: 62px; }
  .top-logo { width: 128px; height: 46px; }
  .desktop-nav { display: none; }
  .hero { padding-top: 118px; padding-bottom: 80px; min-height: 580px; }
  .bottom-dock { position: fixed; z-index: 90; left: 50%; bottom: max(10px,env(safe-area-inset-bottom)); transform: translateX(-50%); display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); width: min(600px,calc(100vw - 24px)); min-height: 62px; padding: 6px; border: 1px solid var(--line); border-radius: 18px; background: var(--glass-nav); -webkit-backdrop-filter: blur(18px) saturate(120%); backdrop-filter: blur(18px) saturate(120%); box-shadow: var(--glass-shadow); }
  .bottom-dock a,.bottom-dock button { display: flex; align-items: center; justify-content: center; gap: 4px; min-height: 44px; min-width: 0; padding: 6px 2px; border: 0; border-radius: 12px; background: transparent; color: var(--ivory); font-size: 12px; text-decoration: none; }
  .site-footer { padding-bottom: calc(108px + env(safe-area-inset-bottom)); }
  .toast { bottom: calc(90px + env(safe-area-inset-bottom)); }
  .pdp-layout { grid-template-columns: 1fr; }
  .pdp-media { position: static; }
  .gallery-stage { height: clamp(320px,60vw,500px); }
  .knowledge-grid { grid-template-columns: 1fr; }
  .knowledge-grid h3 { margin: 20px 0; }
}
@media (max-width:819px) { .product-rail { --rail-columns: 2; } }
@media (max-width:767px) {
  .hero { grid-template-columns: 1fr; gap: 32px; min-height: 0; }
  .hero h1 { font-size: clamp(48px,16cqi,88px); }
  .hero-copy { font-size: 17px; margin: 24px 0; }
  .hero-family { max-width: 640px; margin: auto; }
  .section-title { display: block; }
  .section-title > p,.section-title > div + p { max-width: 100%; margin-top: 16px; }
  .split-story,.form-stage,.editorial-body,.values-grid,.guide-grid,.contact-layout { grid-template-columns: 1fr; }
  .media-panel video { aspect-ratio: 16/9; }
  .story-copy { padding: 28px; }
  .story-copy h2,.lounge-copy h2 { font-size: clamp(34px,7vw,48px); }
  .beard-portrait { height: clamp(360px,100vw,480px); }
  .beard-controls { padding: 28px; }
  .lounge-section { min-height: 560px; }
  .lounge-copy { padding-bottom: 56px; }
  .next-ritual { align-items: center; }
  .reading-body,.editorial-body { font-size: 17px; }
  .content-hero { padding-top: 24px; }
  .contact-layout { gap: 32px; }
}
@media (max-width:599px) {
  .product-rail { --rail-columns: 1.16; --rail-gap: 14px; }
  .topbar { width: calc(100vw - 24px); padding-inline: 10px; }
  .top-logo { width: 116px; height: 44px; }
  .top-actions .icon-btn { display: none; }
  .topbar .icon-btn { padding: 8px 4px; }
  .bag-btn { font-size: 12px; padding: 8px; }
  .launch-offer-strip { gap: 12px; margin-bottom: 32px; }
  .launch-offer-strip strong { font-size: 14px; }
  .launch-offer-strip small { font-size: 11px; }
  .launch-offer-strip button { max-width: 94px; font-size: 12px; }
  .card-copy h3 { font-size: 25px; }
  .mini-rail { gap: 12px; }
  .mini-rail a { min-height: 144px; padding: 20px 16px; }
  .beard-controls { padding: 24px; }
  .support-form { padding: 20px; }
  .app-dialog { padding: 20px; padding-bottom: calc(24px + env(safe-area-inset-bottom)); }
  .gallery-stage { height: 320px; }
  .gallery-thumbs { gap: 5px; }
  .gallery-thumbs img { height: 48px; }
  .gallery-thumbs span { font-size: 9px; }
  .bag-row { grid-template-columns: 40px minmax(0,1fr) auto; gap: 8px; }
  .bag-row img { width: 40px; }
  .bag-row > strong { font-size: 12px; }
  .hero-actions .btn { flex: 1; padding-inline: 14px; }
}
@media (max-width:359px) {
  .hero h1 { font-size: 46px; }
  .hero-actions { flex-direction: column; }
  .mini-rail { grid-template-columns: 1fr; }
  .purchase-controls .btn { padding-inline: 16px; }
  .form-options button { padding-inline: 13px; }
  .bag-row { grid-template-columns: minmax(0,1fr) auto; }
  .bag-row img { display: none; }
}
@media (max-height:500px) and (orientation:landscape) {
  .hero { min-height: 0; padding-top: 110px; }
  .scroll-cue { display: none; }
  .app-dialog { padding-bottom: 24px; }
  .gallery-stage { height: 280px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  *:not(.feature-board[data-auto-motion=true] *),*:not(.feature-board[data-auto-motion=true] *)::before,*:not(.feature-board[data-auto-motion=true] *)::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .deferred-video:not(.feature-board[data-auto-motion=true] *) { visibility: hidden; }
  .media-panel { aspect-ratio: 16/9; background: #100e0c url('/assets/v2/product-family.webp') center/contain no-repeat; }
}

/* BARBOR campaign system: one canvas, seven art-directed invitations. */
.feature-board { position: relative; margin-top: calc(var(--header-clearance) - 8px); scroll-margin-top: var(--header-clearance); background: var(--ink); }
.feature-toolbar { position: absolute; z-index: 6; top: 0; left: 50%; transform: translateX(-50%); width: var(--shell); padding: 6px 17px 18px; background: none; }
.feature-tabs { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 8px; max-width: 100%; margin: 0 auto; overflow-x: auto; scrollbar-width: none; }
.feature-tabs::-webkit-scrollbar { display: none; }
.feature-tabs a { display: inline-flex; align-items: center; justify-content: center; min-width: 0; min-height: 52px; padding: 8px; border: 1px solid transparent; border-radius: 12px; background: linear-gradient(150deg,#dec6a51c,transparent),#594b3f70; box-shadow: none; text-decoration: none; white-space: nowrap; text-align: center; color: #fff8ee; text-shadow: 0 1px 5px #0009; font-size: clamp(11px,.9vw,13px); line-height: 1.35; letter-spacing: .015em; transition: background-color .18s; }
@media(hover:hover) { .feature-tabs a:hover { color: #fff8ee; background-color: #8a715480; } }
.feature-tabs a[aria-selected=true] { color: #fff8ee; background: linear-gradient(150deg,#dec6a51c,transparent),#80634470; box-shadow: none; }
.feature-tabs a:focus-visible { outline: 2px solid #fff1da; outline-offset: -4px; }
.feature-tabs a:active { background-color: #9b7b5580; }
@media(max-width:959px) {
 .feature-toolbar { padding-inline: 13px; }
 .feature-tabs { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: clamp(128px,30vw,156px); }
 .feature-tabs a { min-height: 48px; font-size: 12px; }
}
@media(prefers-reduced-motion:reduce) { .feature-tabs a { transition: none!important; } }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) { .feature-tabs a { background: #44382e; } .feature-tabs a[aria-selected=true] { background: #68503a; } }

.feature-stage { --campaign-height: clamp(512px,calc(36vw + 52px),632px); position: relative; width: 100%; max-width: 1600px; height: var(--campaign-height); margin-inline: auto; overflow: hidden; isolation: isolate; }
.feature-stage > .campaign { position: relative; width: 100%; height: 100%; min-height: 0; margin: 0; padding: 0; overflow: hidden; isolation: isolate; scroll-margin-top: var(--header-clearance); background: #1c1611; }

.campaign-art { position: absolute; inset: 0; pointer-events: none; }
.campaign-art > img,.campaign-art > video { position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: 65% 50%; }
.campaign-link { position: absolute; inset: 0; z-index: 2; display: flex; align-items: end; padding: 44px clamp(56px,6vw,96px); text-decoration: none; background: linear-gradient(90deg,#100c09db 0%,#100c0980 36%,#100c0900 75%),linear-gradient(0deg,#100c0970,transparent 55%); }
.campaign-link:focus-visible { outline-offset: -5px; }
.campaign-copy { width: min(490px,70%); color: var(--ivory); text-shadow: 0 2px 20px #0005; }
.campaign-copy .kicker { color: var(--sand); margin: 0 0 14px; font-size: 11px; letter-spacing: .19em; }
.campaign-copy h1,.campaign-copy h2 { margin: 0 0 24px; font-size: clamp(42px,4.8vw,72px); line-height: 1.02; font-weight: 560; letter-spacing: -.045em; }
.campaign-copy h1 { font-weight: 760; line-height: .94; }
.campaign-copy h1 em { color: var(--bronze2); font-style: normal; font-weight: 420; }
.campaign-cta { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 46px; padding: 11px 18px; border: 1px solid #e7d7bd85; border-radius: 8px; background: var(--sand); color: #18130f; font-size: 13px; font-weight: 650; line-height: 1.5; text-shadow: none; transition: background .2s; }
.campaign-link:hover .campaign-cta { background: var(--ivory); }
.campaign-cta > span { font-size: 18px; line-height: 1; }
.campaign-note { max-width: 320px; margin: 14px 0 0; font-size: 11px; line-height: 1.6; color: var(--sand); }
.campaign-collection .campaign-art { left: 19%; }
.campaign-collection .campaign-art img { object-position: 75% 50%; mask-image: linear-gradient(90deg,transparent,#000 16%); }
.campaign-texture .campaign-art > * { object-position: 70% 50%; }
.campaign-form { background: var(--olive-material)!important; }
.campaign-form-art { position: absolute; inset: 0 0 0 42%; overflow: hidden; }
.campaign-orbit { position: absolute; width: 75%; aspect-ratio: 1; border: 1px solid #c49a7040; border-radius: 50%; left: 12%; top: 10%; box-shadow: 0 0 90px #c49a7010,inset 0 0 60px #c49a7008; }
.form-silhouette { position: absolute; height: 105%; width: 100%; object-fit: contain; object-position: center bottom; bottom: -4%; opacity: 0; }
.form-silhouette-0 { opacity: 1; }
.campaign-form:not([hidden]) .form-silhouette { animation: form-silhouette-cycle 9s linear infinite; }
.campaign-form:not([hidden]) .form-silhouette-1 { animation-delay: -6s; }
.campaign-form:not([hidden]) .form-silhouette-2 { animation-delay: -3s; }
@keyframes form-silhouette-cycle { 0%,28% { opacity: 1; } 33%,95% { opacity: 0; } 100% { opacity: 1; } }
[data-motion-paused=true] .form-silhouette { animation-play-state: paused; }
.campaign-lounge .campaign-art > * { object-position: 60% 18%; }
.campaign-knowledge { background: var(--olive-material)!important; }
.campaign-knowledge .campaign-art { left: 42%; }
.campaign-knowledge .campaign-art img { object-position: 55% 16%; mask-image: linear-gradient(90deg,transparent,#000 18%); }
.campaign-knowledge .campaign-link { background: linear-gradient(90deg,#332b2080 12%,#332b2066 36%,#332b2020 64%,transparent),linear-gradient(0deg,#2d251c66,transparent 65%); }
.campaign-origin .campaign-art > * { object-position: 72% 45%; }
.campaign-year { position: absolute; top: 11%; right: 8%; font-size: clamp(120px,19vw,280px); line-height: 1; font-weight: 300; letter-spacing: -.09em; color: #e7d7bdc9; text-shadow: 0 5px 80px #100c0980; }
.campaign-year > span { display: block; margin: 0 0 12px; padding-left: .7em; text-align: center; font-size: 10px; font-weight: 550; letter-spacing: .3em; }
.feature-playback { position: absolute; z-index: 5; inset: 0; color: var(--ivory); pointer-events: none; }
.feature-playback button { position: absolute; opacity: 0; pointer-events: none; filter: drop-shadow(0 1px 3px #000b); transition: opacity .24s ease,background .2s; }
.feature-board[data-controls=hover] .feature-playback button,.feature-board[data-controls=touch] .feature-playback button,.feature-playback:has(:focus-visible) button { opacity: 1; pointer-events: auto; }
.feature-playback button:focus-visible { outline-offset: 2px; }
.feature-playback button,.edit-controls button { display: inline-grid; place-items: center; width: 44px; height: 44px; min-width: 44px; padding: 0; border: 0; border-radius: 50%; color: inherit; background: transparent; cursor: pointer; }
.feature-playback [data-feature-prev],.feature-playback [data-feature-next] { top: calc(50% - 28px); width: 48px; height: 56px; border-radius: 12px; background: #17130f0a; }
.feature-playback [data-feature-prev] { left: 4px; }
.feature-playback [data-feature-next] { right: 4px; }
.feature-playback [data-feature-prev] .player-icon,.feature-playback [data-feature-next] .player-icon { width: 26px; height: 26px; stroke-width: 1.8; }
.feature-playback button:hover,.edit-controls button:hover { background: #e7d7bd16; }
.player-icon { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; pointer-events: none; }
.player-icon.icon-play { fill: currentColor; stroke: none; }
[data-paused=false] > .icon-play,[data-paused=true] > .icon-pause { display: none; }
.feature-count,.feature-status { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.department-form { padding: 24px 0 56px; }
.department-form h1 { font-size: clamp(40px,5vw,64px); line-height: 1.05; letter-spacing: -.04em; margin: 0; }
.lounge-department { position: relative; isolation: isolate; min-height: 480px; width: var(--shell); margin: 0 auto; overflow: hidden; border-radius: var(--radius); display: flex; align-items: end; background: #211b16; }
.lounge-department-art,.lounge-department-art > * { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lounge-department-copy { z-index: 1; width: 100%; padding: clamp(24px,5vw,64px); background: linear-gradient(0deg,#100c09ed,transparent); }
.lounge-department h1 { font-size: clamp(38px,5vw,68px); margin: 0; letter-spacing: -.045em; line-height: 1.05; }
.lounge-department-copy > p:last-child { max-width: 480px; font-size: 16px; line-height: 1.6; color: var(--sand); }
.lounge-paths .text-link { font-size: 13px; }
@media(max-width:959px) {
  .feature-toolbar { width: calc(100vw - 24px); padding-inline: 10px; }
  .feature-stage { --campaign-height: 512px; }
  .campaign-link { padding: 30px 44px; }
  .campaign-copy { width: min(430px,75%); }
  .campaign-copy h1,.campaign-copy h2 { font-size: 48px; }
  .campaign-year { right: 6%; top: 12%; }
}
@media(max-width:599px) {
  .feature-stage { --campaign-height: 512px; }
  .campaign-link { padding: 24px; background: linear-gradient(0deg,#100c09f2 0%,#100c09b0 23%,#100c0900 66%); }
  .campaign-copy { width: calc(100% - 10px); }
  .campaign-copy .kicker { font-size: 10px; margin-bottom: 10px; }
  .campaign-copy h1,.campaign-copy h2 { font-size: clamp(34px,9.8vw,46px); margin-bottom: 18px; }
  .campaign-cta { min-height: 44px; font-size: 12px; padding: 10px 14px; gap: 20px; }
  .campaign-note { max-width: 245px; font-size: 10px; margin-top: 11px; }
  .campaign-collection .campaign-art { inset: 0 0 auto; height: 74%; }
  .campaign-collection .campaign-art img { object-fit: contain; object-position: center 22%; mask-image: linear-gradient(0deg,transparent,#000 34%); }
  .campaign-texture .campaign-art > * { object-position: 56% 50%; }
  .campaign-form-art { inset: -4% -6% 24% 12%; }
  .form-silhouette { height: 100%; bottom: 0; }
  .campaign-orbit { top: 8%; }
  .campaign-lounge .campaign-art > * { object-position: 56% 38%; }
  .campaign-knowledge .campaign-art { inset: 0 0 13% 18%; }
  .campaign-knowledge .campaign-art img { object-position: 59% 21%; mask-image: linear-gradient(90deg,transparent,#000 12%); }
  .campaign-knowledge .campaign-link { background: linear-gradient(0deg,#332b20bb 0%,#332b2088 24%,#332b2010 64%),linear-gradient(90deg,#332b2066,transparent 65%); }
  .campaign-year { top: 15%; right: 12%; font-size: 31vw; }
  .campaign-year > span { font-size: 8px; margin: 0 0 10px; letter-spacing: .22em; }
  .lounge-department { min-height: 450px; }
}

main[data-route="/"] > .rail-section { padding: 28px 0 32px; background: transparent; border-top: 1px solid #a9764b55; }
main[data-route="/"] .launch-offer-strip { margin-bottom: 24px; padding: 10px 0; border-top: 0; }
main[data-route="/"] > .rail-section > .section-title { margin-bottom: 18px; }
main[data-route="/"] > .rail-section h2 { font-size: clamp(30px,3.4vw,46px); }
main[data-route="/"] > .picks-section { padding: 28px 0; border-block: 0; }
main[data-route="/"] > .continue-section { padding: 28px 0; background: var(--olive-material); }
.picks-section .section-title,.continue-section .section-title { margin-bottom: 18px; }
.picks-section h2,.continue-section h2 { font-size: clamp(28px,3vw,40px); }
.mini-rail { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.mini-rail a { display: flex; flex: 1 1 calc(25% - 12px); flex-direction: row; align-items: center; justify-content: center; gap: 12px; min-height: 112px; padding: 16px; border: 1px solid #a9764b40; border-radius: 10px; background: var(--glass-panel); }
.mini-rail img { width: 60px; height: 84px; flex: 0 0 60px; object-fit: contain; }
.mini-pick-copy { min-width: 0; text-transform: none; letter-spacing: normal; }
.mini-rail .mini-pick-copy > span { display: block; margin-bottom: 8px; color: var(--bronze2); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.mini-rail strong { font-size: 18px; line-height: 1.2; }
.barbor-edit { padding: 24px 0; border-top: 1px solid var(--line); background: linear-gradient(#555550ed,#555550ed),var(--olive-grain) center / 384px 384px repeat,var(--editorial); overflow: hidden; }
.edit-heading { width: var(--shell); display: flex; gap: 20px; align-items: center; justify-content: space-between; margin: 0 auto 14px; }
.edit-heading h2 { font-size: clamp(22px,2.5vw,32px); letter-spacing: -.025em; margin: 4px 0; }
.edit-heading .kicker { margin: 0; }
.edit-controls { display: flex; align-items: center; gap: 12px; color: var(--sand); }
.edit-controls p { color: var(--muted); font-size: 12px; margin: 0; }
.edit-controls button { border: 1px solid var(--line); }
.edit-viewport { overflow: hidden; }
.edit-track { display: flex; width: max-content; animation: barbor-edit-scroll 65s linear infinite; animation-play-state: paused; }
.barbor-edit[data-running=true] .edit-track { animation-play-state: running; }
.edit-group { display: flex; justify-content: space-around; min-width: 100vw; gap: 0; }
.edit-card { display: flex; align-items: center; gap: 18px; flex: 0 0 clamp(260px,28vw,380px); width: clamp(260px,28vw,380px); min-height: 104px; padding: 18px 26px; border: 0; border-right: 1px solid #a9764b55; border-radius: 0; background: none; text-decoration: none; }
.edit-card > span { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.edit-card small { text-transform: uppercase; font-size: 10px; letter-spacing: .15em; color: var(--bronze2); }
.edit-card strong { font-size: 18px; line-height: 1.35; color: var(--sand); font-weight: 500; }
.edit-card > b { margin-left: auto; color: var(--bronze2); font-size: 20px; font-weight: 400; }
.barbor-edit[data-static=true] .edit-viewport { overflow-x: auto; }
.barbor-edit[data-static=true] .edit-track { animation: none; transform: none; width: max-content; }
.barbor-edit[data-static=true] .edit-group[aria-hidden=true] { display: none; }
@keyframes barbor-edit-scroll { to { transform: translateX(-50%); } }
@media(max-width:1100px) {
  .mini-rail a { flex-basis: calc(50% - 6px); max-width: calc(50% - 6px); }
}
@media(max-width:599px) { .mini-rail a { flex-basis: 100%; max-width: 100%; } }
@media(max-width:1199px) {
  .mini-rail a { gap: 8px; padding: 10px; }
  .mini-rail img { width: 42px; flex-basis: 42px; height: 68px; }
  .mini-rail strong { font-size: 16px; }
  .edit-controls p { display: none; }
  .edit-card { width: 280px; flex-basis: 280px; }
}
@media(prefers-reduced-motion:reduce) {
  .barbor-edit [data-edit-pause] { display: none; }
  .barbor-edit .edit-viewport { overflow-x: auto; }
  .barbor-edit .edit-group[aria-hidden=true] { display: none; }
  .barbor-edit .edit-track { animation: none; }
}

@media(scripting:none) {
  .feature-stage { height: auto; overflow: visible; }
  .feature-stage > [data-feature-panel],.feature-stage > [data-feature-panel][hidden] { display: block!important; height: var(--campaign-height); overflow: hidden; }
  .feature-toolbar,.feature-playback { display: none; }
  .edit-viewport { overflow-x: auto; }
  .edit-track { animation: none!important; }
}


/* Motion standard v1: artwork moves; copy and actions remain fixed. */
.feature-stage { touch-action: pan-y pinch-zoom; }
.campaign-collection:not([hidden]) .campaign-art img { animation: campaign-camera 9s ease-in-out infinite; transform-origin: 55% 55%; }
.campaign-knowledge:not([hidden]) .campaign-art img { animation: campaign-camera 9s ease-in-out infinite; transform-origin: 60% 35%; }
@keyframes campaign-camera { 0%,100% { transform: scale(1.015) translateX(-.5%); } 50% { transform: scale(1.075) translateX(.5%); } }
.campaign-light { position: absolute; inset: -15%; pointer-events: none; background: linear-gradient(112deg,transparent 32%,#e9c99c12 46%,#ffe6bd24 50%,transparent 65%); opacity: .35; }
.campaign-collection:not([hidden]) .campaign-light { animation: campaign-light-pass 9s ease-in-out infinite; }
@keyframes campaign-light-pass { 0%,100% { transform: translateX(-24%); opacity: .2; } 50% { transform: translateX(24%); opacity: .9; } }
.form-light { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(ellipse at 55% 45%,#dec29624,transparent 55%); transform: translate(var(--light-x,0px),var(--light-y,0px)); }
.campaign-form:not([hidden]) .campaign-orbit { animation: form-orbit-breathe 9s ease-in-out infinite; }
@keyframes form-orbit-breathe { 0%,100% { transform: scale(.98); opacity: .5; } 50% { transform: scale(1.025); opacity: 1; } }
.ritual-cues { position: absolute; top: 78px; right: 32px; width: 190px; height: 40px; pointer-events: none; }
.ritual-cue { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: 10px; border: 1px solid #e7d7bd24; border-radius: 20px; color: var(--ivory); background: var(--olive-material); font-size: 12px; letter-spacing: .02em; opacity: 0; }
.ritual-cue small { color: var(--sand); font-size: 10px; }
.ritual-cue:first-child { opacity: 1; }
.campaign-knowledge:not([hidden]) .ritual-cue { animation: ritual-step 9s linear infinite; }
.campaign-knowledge:not([hidden]) .ritual-cue:nth-child(2) { animation-delay: -6s; }
.campaign-knowledge:not([hidden]) .ritual-cue:nth-child(3) { animation-delay: -3s; }
@keyframes ritual-step { 0%,25% { opacity: 1; transform: translateY(0); } 30%,96% { opacity: 0; transform: translateY(3px); } 100% { opacity: 1; transform: translateY(0); } }
.feature-board[data-motion-paused=true] .campaign * { animation-play-state: paused!important; }
@media(max-width:599px) {
  .campaign-collection:not([hidden]) .campaign-art img { transform-origin: center 35%; }
  .ritual-cues { top: 70px; right: 16px; width: 166px; height: 34px; }
  .ritual-cue { font-size: 11px; }
}
@media(prefers-reduced-motion:reduce) {
  .feature-board:not([data-auto-motion=true]) .campaign * { animation: none!important; }
  .feature-board:not([data-auto-motion=true]) :is(.form-silhouette,.ritual-cue) { opacity: 0; }
  .feature-board:not([data-auto-motion=true]) :is(.form-silhouette-0,.ritual-cue:first-child) { opacity: 1; }
  .feature-board:not([data-auto-motion=true]) :is(.campaign-light,.form-light) { display: none; }
}

/* Media failure retains a moving house-art composition, never an empty player. */
.campaign[data-video-state] .campaign-art > video { opacity: 0; transition: opacity .35s; }
.campaign[data-video-state=playing] .campaign-art > video { opacity: 1; }
.campaign[data-video-state]:not([hidden]):not([data-video-state=playing]) .campaign-art > img { animation: campaign-fallback-pan 6s ease-in-out infinite alternate; }
@keyframes campaign-fallback-pan { from { transform: scale(1.025) translateX(-.8%); } to { transform: scale(1.09) translateX(.8%); } }



/* Touch edge targets remain available before the contextual arrow reveal. */
@media (hover:none),(pointer:coarse) {
  .feature-playback button { pointer-events: auto; }
}


/* Member campaign: exact product photography, composed as a moving editorial triptych. */
.campaign-offer { background: linear-gradient(112deg,#1b100f 4%,#351b1b 45%,#61302e 100%)!important; }
.campaign-offer .campaign-link { background: linear-gradient(90deg,#170f0bd9 0%,#170f0b80 33%,transparent 61%); }
.campaign-offer .campaign-copy { width: min(490px,43%); }
.campaign-offer .campaign-copy h2 { font-size: clamp(42px,4.4vw,66px); }
.sale-showcase { position: absolute; inset: 64px 3% 24px 44%; pointer-events: none; }
.sale-backdrop { position: absolute; inset: 0 -35% -30% 13%; background: linear-gradient(145deg,#b1825b44,transparent 48%),linear-gradient(135deg,#ad796139,#ad796105 70%); transform: rotate(-12deg); border-left: 1px solid #c49a7040; }
.sale-edition { position: absolute; top: 0; left: 2%; color: #e7d7bd; font-size: 10px; letter-spacing: .24em; text-transform: uppercase; }
.sale-product { position: absolute; margin: 0; isolation: isolate; }
.sale-product img { display: block; width: 100%; height: auto; }
.sale-oil img { clip-path: polygon(39% 4%,45% 3%,52% 3%,58% 4%,62% 7%,63% 17.5%,74% 17.5%,75% 29%,68% 31%,67% 33.5%,83% 36%,88% 39%,89% 45%,89% 80%,87% 83%,80% 84%,20% 84%,14% 82.5%,12% 80%,12% 44%,14% 40%,18% 37%,33% 34%,35% 31%,25% 30%,25% 18%,37% 17%,38% 9%); }
.sale-serum img { clip-path: polygon(24% 4%,32% 2.5%,57% 1.5%,75% 1.5%,75% 4%,70% 5%,70% 14%,77% 15%,77% 30.5%,70% 31.5%,86% 32%,91% 34%,92% 88%,89% 92%,83% 94%,16% 94%,5% 92%,3% 88%,3% 34%,8% 32%,19% 31%,19% 15%,23% 14%); }
.sale-balm img { clip-path: polygon(3% 11%,15% 10%,86% 10%,96% 11%,96% 30%,95% 32%,97% 35%,97% 85%,94% 89%,86% 92%,14% 92%,6% 90%,3% 87%,2% 35%,3% 32%); }
.sale-product figcaption { display: none; }
.sale-product figcaption span { color: #d4ae84; font-size: 9px; }
.sale-oil { width: clamp(96px,10.2vw,146px); left: 9%; top: 15%; z-index: 2; }
.sale-serum { width: clamp(94px,9.8vw,146px); left: 41%; top: 3%; z-index: 1; }
.sale-balm { width: min(38%,250px); right: 0; bottom: 12%; z-index: 3; }
.sale-stamp { position: absolute; right: 2%; top: 6%; color: #e7d7bd; text-align: right; font-size: clamp(46px,5.3vw,78px); font-weight: 350; letter-spacing: -.07em; line-height: .9; }
.sale-stamp small { display: block; margin-top: 9px; font-size: 9px; font-weight: 600; letter-spacing: .22em; }
.sale-baseline { position: absolute; bottom: 0; left: 9%; right: 2%; display: flex; align-items: center; gap: 12px; color: #e7d7bd; font-size: 9px; letter-spacing: .19em; }
.sale-baseline::before { content: ''; width: 34px; height: 1px; background: #c49a70; }
.campaign-offer:not([hidden]) .sale-oil { animation: sale-oil 9s cubic-bezier(.45,0,.25,1) infinite; }
.campaign-offer:not([hidden]) .sale-serum { animation: sale-serum 9s cubic-bezier(.45,0,.25,1) infinite; }
.campaign-offer:not([hidden]) .sale-balm { animation: sale-balm 9s cubic-bezier(.45,0,.25,1) infinite; }
.campaign-offer:not([hidden]) .sale-backdrop { animation: sale-light-plane 9s ease-in-out infinite; }
@keyframes sale-oil { 0% { transform: translate(-45px,48px); opacity: .2; } 14%,28% { transform: translate(0,0); opacity: 1; } 58% { transform: translate(9px,-27px); opacity: 1; } 88%,100% { transform: translate(0,0); opacity: 1; } }
@keyframes sale-serum { 0% { transform: translate(22px,-60px); opacity: .2; } 20%,34% { transform: translate(0,0); opacity: 1; } 65% { transform: translate(-8px,29px); opacity: 1; } 90%,100% { transform: translate(0,0); opacity: 1; } }
@keyframes sale-balm { 0% { transform: translate(65px,35px); opacity: .2; } 26%,40% { transform: translate(0,0); opacity: 1; } 72% { transform: translate(-26px,-18px); opacity: 1; } 92%,100% { transform: translate(0,0); opacity: 1; } }
@keyframes sale-light-plane { 0%,100% { transform: translateX(-32px) rotate(-12deg); opacity: .6; } 55% { transform: translateX(40px) rotate(-12deg); opacity: 1; } }
@media(min-width:1600px) { .sale-showcase { left: 46%; right: 4%; } }
@media(min-width:600px) and (max-width:959px) {
  .sale-showcase { inset: 86px 2% 32px 46%; }
  .campaign-offer .campaign-copy { width: 47%; }
  .campaign-offer .campaign-copy h2 { font-size: 40px; }
  .sale-oil { width: 25%; top: 24%; left: 3%; }
  .sale-serum { width: 24%; left: 35%; top: 14%; }
  .sale-balm { width: 40%; bottom: 17%; }
  .sale-product figcaption { font-size: 9px; gap: 5px; letter-spacing: .06em; }
  .sale-edition { font-size: 8px; }
  .sale-stamp { font-size: 48px; top: 6%; }
}
@media(max-width:599px) {
  .sale-showcase { inset: 65px auto 224px 50%; width: 84%; max-width: 380px; transform: translateX(-50%); }
  .sale-edition,.sale-baseline { display: none; }
  .sale-oil { width: min(22%,70px); top: 12%; left: 3%; }
  .sale-serum { width: min(22%,70px); top: -4%; left: 35%; }
  .sale-balm { width: 36%; bottom: 2%; right: 0; }
  .sale-stamp { font-size: 43px; right: 0; top: 3%; }
  .sale-stamp small { font-size: 7px; margin-top: 7px; }
  .sale-product figcaption { margin-top: 6px; font-size: 8px; gap: 4px; letter-spacing: .05em; }
  .sale-product figcaption span { font-size: 7px; }
  .campaign-offer .campaign-copy { width: 100%; }
  .campaign-offer .campaign-copy h2 { font-size: clamp(32px,8.7vw,38px); }
  .campaign-offer .campaign-link { background: linear-gradient(0deg,#1b100f 0%,#1b100fe8 26%,transparent 55%); }
  .sale-backdrop { inset: -10px -40% -70% 10%; }
}


/* Founder portrait and biography */
.founder-hero { padding: 24px 0 40px; }
.founder-hero h1 { font-size: clamp(40px,5.5vw,76px); }
.founder-hero .content-lede { margin-top: 18px; }
.founder-profile { width: min(1160px,var(--shell)); margin: 0 auto; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: clamp(32px,5vw,72px); align-items: center; padding-bottom: 48px; }
.founder-portrait { width: 100%; margin: 0; min-width: 0; }
.founder-portrait img { display: block; width: 100%; height: auto; aspect-ratio: 1275 / 1233; object-fit: contain; border: 1px solid var(--line); }
.founder-portrait figcaption { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 12px; margin-top: 16px; text-align: center; color: var(--muted); font-size: 12px; line-height: 1.6; }
.founder-portrait figcaption strong { color: var(--sand); font-weight: 500; }
.founder-story { min-width: 0; }
.founder-story h2 { margin: 0 0 24px; font-size: clamp(30px,3.5vw,44px); line-height: 1.12; letter-spacing: -.035em; text-wrap: balance; }
.founder-story > p:not(.kicker):not(.founder-signature) { margin: 0 0 18px; font-size: 16px; line-height: 1.8; color: var(--muted); }
.founder-story .founder-signature { margin: 26px 0 0; color: var(--bronze2); font-size: 11px; letter-spacing: .16em; font-weight: 650; }
.founder-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.founder-next .founder-inquiries { margin: 2px 0 0; color: var(--muted); font-size: 12px; line-height: 1.8; }
.founder-inquiries a { display: inline-flex; align-items: center; min-height: 44px; color: var(--sand); text-underline-offset: 4px; }
@media (max-width: 900px) {
 .founder-profile { grid-template-columns: 1fr; gap: 32px; max-width: min(680px,var(--shell)); }
 .founder-portrait { max-width: 520px; margin-inline: auto; }
 .founder-story .kicker,.founder-story h2,.founder-story .founder-signature { text-align: center; }
 .founder-hero { padding-bottom: 28px; }
}
@media (max-width: 420px) {
 .founder-actions { width: 100%; }
 .founder-actions .btn { width: 100%; max-width: 320px; }
}

/* Wholesale consultation menu: shared BARBOR type, shell and palette. */
.wholesale-shell { width: min(1160px,var(--shell)); margin-inline: auto; }
.wholesale-hero { padding-bottom: 32px; }
.wholesale-hero h1 { font-size: clamp(44px,6.5vw,84px); }
.wholesale-audience { color: var(--muted); font-size: 12px; line-height: 2; margin: 22px auto 12px; text-wrap: balance; }
.wholesale-audience span { padding-inline: 8px; color: var(--bronze2); }
.wholesale-menu { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 20px; margin-top: 20px; }
.wholesale-menu a { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; color: var(--sand); }
.wholesale-intro { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); align-items: center; gap: 24px; padding: 28px clamp(20px,3vw,36px); border: 1px solid var(--line); border-radius: var(--radius); background: var(--glass-panel); box-shadow: var(--glass-shadow); }
.wholesale-intro h2 { margin: 0 0 12px; font-size: clamp(24px,3vw,32px); letter-spacing: -.025em; }
.wholesale-intro p:not(.kicker) { margin: 0; max-width: 600px; color: var(--muted); line-height: 1.7; }
.wholesale-intro .wholesale-small { font-size: 12px; margin-top: 10px!important; }
.wholesale-actions { display: flex; align-items: center; justify-content: center; flex-direction: column; }
.partnership-planning { padding-top: 56px; }
.wholesale-heading { margin: 0 auto 28px; max-width: 680px; text-align: center; }
.wholesale-heading h2 { font-size: clamp(30px,4vw,48px); letter-spacing: -.035em; line-height: 1.1; margin: 0 0 18px; text-wrap: balance; }
.wholesale-heading > p:not(.kicker) { color: var(--muted); font-size: 15px; line-height: 1.7; margin: 0; }
.partnership-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.partnership-card { display: flex; flex-direction: column; padding: clamp(20px,2.5vw,30px); border: 1px solid var(--line); border-radius: 20px; background: var(--glass-panel); min-width: 0; box-shadow: var(--glass-shadow); }
.partnership-card h3 { font-size: clamp(21px,2.2vw,27px); line-height: 1.2; min-height: 2.4em; letter-spacing: -.025em; margin: 0; text-wrap: balance; }
.partnership-price { color: var(--sand); font-size: clamp(34px,4vw,46px); font-weight: 550; line-height: 1.2; letter-spacing: -.04em; margin: 20px 0 12px; }
.partnership-price span { font-size: 11px; font-weight: 500; letter-spacing: .06em; color: var(--muted); }
.partnership-summary { font-size: 14px; color: var(--muted); margin: 0; min-height: 3em; line-height: 1.6; }
.partnership-card ul { margin: 22px 0 28px; padding-left: 18px; font-size: 13px; line-height: 1.7; color: var(--sand); }
.partnership-card li + li { margin-top: 9px; }
.partnership-card li::marker { color: var(--bronze2); }
.partnership-card .btn { margin-top: auto; width: 100%; }
.partnership-expanded { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 0; border-bottom: 1px solid var(--line); }
.partnership-expanded h3 { font-size: 20px; margin: 0 0 6px; font-weight: 550; }
.partnership-expanded p { max-width: 650px; margin: 0; font-size: 13px; color: var(--muted); line-height: 1.7; }
.partnership-expanded .btn { flex-shrink: 0; }
.wholesale-terms { max-width: 960px; margin: 20px auto 0; font-size: 12px; line-height: 1.8; text-align: center; color: var(--muted); }
.partnership-process { padding-block: 40px; }
.partnership-process ol { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; }
.partnership-process li { display: flex; gap: 14px; }
.partnership-process li > span { color: var(--bronze2); font-size: 12px; padding-top: 4px; }
.partnership-process h3 { font-size: 15px; margin: 0 0 6px; font-weight: 600; }
.partnership-process p { font-size: 12px; color: var(--muted); line-height: 1.7; margin: 0; }
.partnership-request { padding: 32px clamp(20px,4vw,48px); border: 1px solid var(--line); border-radius: var(--radius); background: var(--glass-panel); margin-bottom: 32px; box-shadow: var(--glass-shadow); }
.partnership-form { padding: 0; border: 0; background: transparent; width: min(100%,880px); margin-inline: auto; }
.partnership-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 24px; }
.partnership-fields label { min-width: 0; }
.partnership-fields input,.partnership-fields select,.partnership-fields textarea { min-width: 0; width: 100%; }
.partnership-fields label > span { font-size: 12px; line-height: 1.6; color: var(--muted); }
.partnership-wide { grid-column: 1 / -1; }
.partnership-form-actions { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 10px 20px; margin-top: 12px; text-align: center; }
.partnership-form > .form-note { text-align: center; }
.partnership-review { border-top: 1px solid var(--line); padding-top: 24px; margin-top: 4px; }
.partnership-review h3 { font-size: 23px; margin: 0 0 18px; }
.partnership-review textarea { font-size: 13px; line-height: 1.6; }
.partnership-review-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.wholesale-direct,.wholesale-nojs { text-align: center; color: var(--muted); font-size: 13px; line-height: 1.8; }
.wholesale-direct a { display: inline-flex; align-items: center; min-height: 44px; color: var(--sand); }
@media (max-width: 900px) {
 .partnership-grid { grid-template-columns: 1fr; }
 .partnership-card { width: 100%; max-width: 620px; margin-inline: auto; }
 .partnership-card h3,.partnership-summary { min-height: 0; }
 .partnership-card .btn { max-width: 340px; }
 .partnership-expanded { flex-direction: column; text-align: center; gap: 16px; }
 .wholesale-intro { grid-template-columns: 1fr; text-align: center; }
 .wholesale-intro p:not(.kicker) { margin-inline: auto; }
}
@media (max-width: 600px) {
 .partnership-fields,.partnership-process ol { grid-template-columns: 1fr; }
 .partnership-process { padding-block: 30px; }
 .partnership-process ol { gap: 20px; }
 .partnership-planning { padding-top: 40px; }
 .partnership-review-actions .btn { width: 100%; }
 .partnership-request { padding-inline: 16px; }
}

/* Inputs and optional high-contrast mode inherit the same mineral surface system. */
input::placeholder,textarea::placeholder { color: var(--muted); opacity: .8; }
select option { background: var(--option-bg); color: var(--ivory); }
/* One mineral stage for cards, recommendations and isolated gallery views. */

.gallery-stage.is-product-cutout { background: linear-gradient(145deg,#fff8e50a,#160f0922),var(--mineral-stage) center / cover no-repeat,#4a4034; box-shadow: inset 0 1px 0 #fff3; }
.gallery-stage.is-product-cutout .gallery-main { padding: 32px 56px; }
.gallery-stage.is-product-cutout .gallery-main img { max-width: 100%; max-height: 100%; border-radius: 0; object-position: 50% 100%; }
.mini-rail a,.continue-card { background: linear-gradient(100deg,#211b17d9,#211b17ed),var(--mineral-stage) center / cover no-repeat,#29231c; box-shadow: inset 0 1px 0 #fff2; }
.mini-rail img,.continue-card img { background: none; border-radius: 0; }
.gallery-thumbs img[src*="isolated-r24"],.gallery-thumbs img[src*="comb-360/front"] { background: linear-gradient(#211b1720,#211b1738),var(--mineral-stage) center / cover no-repeat; }
#image-viewer.is-product-cutout .viewer-scroll { background: linear-gradient(#211b1718,#211b1728),var(--mineral-stage) center / cover no-repeat; border-radius: 12px; }
.barbor-edit { --ivory: #fff8ee; --muted: #f4e8da; --sand: #fff1da; --bronze2: #ffdfac; --control-line: #f0dfc4; --focus: #ffdfac; color: var(--ivory); }
@media (max-width: 599px) { .gallery-stage.is-product-cutout .gallery-main { padding: 24px 54px; } }
@media (prefers-contrast: more) {
 .topbar,.desktop-nav,.bottom-dock,.app-dialog { background: var(--glass-fallback); -webkit-backdrop-filter: none; backdrop-filter: none; }
 :root { --line: #fff1da; --muted: #fff8ee; }
 .picks-section,.form-section,.continue-section { --line: #33291f; --muted: #211b15; }
 .topbar,.desktop-nav,.bottom-dock,.feature-board,.hero,.product-card,.split-story,.form-stage,.lounge-section,.lounge-department,.mini-rail > a,.continue-card,.origin-teaser,.site-footer,.values-grid > article,.guide-grid > article,.knowledge-grid > article,.support-form,.wholesale-intro,.partnership-card,.partnership-request,.app-dialog,#image-viewer,.gallery-stage,.gallery-thumbs { --line: #c9aa86; --muted: #fbf3e7; }
}

@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .topbar,.desktop-nav,.bottom-dock,.app-dialog { background: var(--glass-fallback); }
}
@media(prefers-reduced-transparency:reduce) {
  .topbar,.desktop-nav,.bottom-dock,.app-dialog { background: var(--glass-fallback); -webkit-backdrop-filter: none; backdrop-filter: none; }
  .product-card,.split-story,.values-grid article,.guide-grid article,.support-form,.mini-rail a,.continue-card,.search-results a,.wholesale-intro,.partnership-card,.partnership-request { background: var(--glass-fallback); }
  .partnership-form { background: transparent; }
}

/* Product guides: shared full-frame 4:3 artwork, without detail zoom or clipping. */
.product-gallery .gallery-stage { height: auto; aspect-ratio: 4/3; }
.gallery-stage.is-product-info { background: #302820; }
.gallery-stage.is-product-info .gallery-main { padding: 0; }
.gallery-stage.is-product-info .gallery-image { max-width: 100%; max-height: 100%; border-radius: 0; object-fit: contain; transform: none; }
.gallery-stage.is-product-info .gallery-prev,.gallery-stage.is-product-info .gallery-next { top: auto; bottom: 3px; width: 32px; height: 32px; font-size: 22px; opacity: 0; transition: opacity .15s; }
.gallery-stage.is-product-info:hover .gallery-prev,.gallery-stage.is-product-info:hover .gallery-next,.gallery-stage.is-product-info:focus-within .gallery-prev,.gallery-stage.is-product-info:focus-within .gallery-next { opacity: 1; }
@media (hover:none) { .gallery-stage.is-product-info .gallery-prev,.gallery-stage.is-product-info .gallery-next { opacity: .75; } }
#image-viewer.is-product-info.zoomed img { width: max(100%,1100px); }

/* Approved comb master r27: shared mineral stage, deliberate product scale. */
.product-gallery[data-gallery="comb"] .gallery-thumbs{display:flex;overflow-x:auto;gap:8px;padding-bottom:4px;scrollbar-width:thin;scroll-snap-type:x proximity}
.product-gallery[data-gallery="comb"] .gallery-thumbs button{flex:1 0 76px;min-width:76px;scroll-snap-align:center}
.product-gallery[data-gallery="comb"] .gallery-thumbs img{height:60px;width:100%;object-fit:contain}
.comb-explore{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 0;padding:14px 18px;border:1px solid #f7e8d12b;border-radius:14px;background:#221d172e;box-shadow:inset 0 1px #fff1d810}
.comb-explore p{margin:0;font-size:.82rem;color:#f2e7d6}.comb-explore button,.comb-story button,.comb-viewer button{border:1px solid #f6e4cc45;border-radius:999px;background:#f9e9d30c;color:#fff8ee;cursor:pointer;font:inherit;padding:11px 18px;min-height:44px}.comb-explore button:hover,.comb-story button:hover,.comb-viewer button:hover{background:#f9e9d322}.comb-explore button{white-space:nowrap;font-size:.84rem}
.comb-story{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,5vw,76px);padding:clamp(24px,5vw,64px);margin:56px auto;border:1px solid #f7e8d125;border-radius:24px;background:linear-gradient(130deg,#352c24ab,#555550a6),var(--mineral-stage);overflow:hidden}
.comb-story-art{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:20px;min-width:0}.comb-story-art img{height:clamp(240px,30vw,440px);width:100%;object-fit:contain;filter:drop-shadow(0 16px 14px #0003)}
.comb-story h2{font-size:clamp(1.7rem,3vw,2.8rem);line-height:1.15;margin:12px 0 20px;max-width:15ch}.comb-story p{line-height:1.75;color:#f2e7d6}.comb-story .kicker{font-size:.68rem;letter-spacing:.16em;color:#e6c397}.comb-story-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0;padding:20px 0;border-top:1px solid #f7e8d12b;border-bottom:1px solid #f7e8d12b}.comb-story-facts div{font-size:.76rem;line-height:1.6;color:#e9dcc8}.comb-story-facts strong{display:block;font-size:1rem;color:#fff8ee;font-weight:500}
.comb-viewer{box-sizing:border-box;width:min(900px,calc(100vw - 24px));max-width:900px;max-height:calc(100dvh - 24px);padding:24px;border:1px solid #f6e4cc40;border-radius:22px;color:#fff8ee;background:linear-gradient(135deg,#555047f5,#332b24fa),var(--mineral-stage);box-shadow:0 28px 100px #0008;overflow:auto}.comb-viewer::backdrop{background:#171410b8;backdrop-filter:blur(7px)}.comb-viewer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.comb-viewer-head h2{font-size:clamp(1.2rem,3vw,1.7rem);line-height:1.3;margin:6px 0 0}.comb-viewer-head .kicker{font-size:.62rem;margin:0;color:#e6c397}.comb-viewer .comb-close{flex:0 0 44px;width:44px;height:44px;padding:0;font-size:1.8rem;line-height:1}.comb-viewer-stage{position:relative;width:100%;height:min(52dvh,490px);min-height:220px;margin:16px 0 0}.comb-viewer canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.comb-viewer canvas:active{cursor:grabbing}.comb-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:20px;box-sizing:border-box}.comb-viewer [hidden]{display:none!important}.comb-viewer-status{text-align:center;font-size:.78rem;color:#eadbc6;margin:10px 0 14px}.comb-viewer-controls{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.comb-viewer-controls button{min-width:64px;padding:8px 14px;font-size:.8rem}.comb-rotation{display:flex;align-items:center;gap:12px;margin:18px auto 0;max-width:520px;font-size:.75rem}.comb-rotation input{flex:1;min-width:40px;accent-color:#d5b48b;min-height:32px}.comb-rotation output{min-width:35px}.comb-viewer-note{text-align:center;font-size:.7rem;color:#dfd0ba;margin:14px 0 0}.comb-viewer :focus-visible,.comb-explore :focus-visible,.comb-story :focus-visible{outline:2px solid #f4d3a1;outline-offset:4px}
@media(max-width:700px){.comb-story{grid-template-columns:1fr;margin:32px auto;gap:22px}.comb-story-art img{height:270px}.comb-story h2{max-width:20ch}.comb-story-facts{gap:12px}.comb-explore{padding:12px;gap:10px}.comb-explore p{font-size:.72rem}.comb-explore button{font-size:.76rem;padding:10px 12px}.comb-viewer{padding:18px}.comb-viewer-stage{height:44dvh;min-height:180px}.comb-rotation{flex-wrap:wrap}.product-gallery[data-gallery="comb"] .gallery-thumbs button{flex:0 0 76px}}

.comb-story,.comb-viewer{background-size:cover;background-position:center;background-repeat:no-repeat}
.product-gallery[data-gallery="comb"] .gallery-thumbs img[src*="/comb-360/"]{background-image:var(--mineral-stage);background-size:cover;background-position:center}

/* Gallery descriptions remain available to assistive technology. */
.gallery-announcement { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

/* Shop r29: collection and exploration controls visible on entry. */
.shop-navigation,.collection-switcher,.shop-collection { width:var(--shell); margin-inline:auto; }
.shop-navigation { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; }
.collection-back { font-size:13px; color:var(--ivory); text-decoration:none; }
.product-pagination { display:flex; align-items:center; gap:4px; }
.product-pagination a { display:flex; align-items:center; justify-content:center; gap:16px; min-height:44px; min-width:44px; padding:0 12px; border:1px solid var(--control-line); border-radius:99px; background:var(--glass-control); text-decoration:none; font-size:12px; }
.collection-switcher { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-top:10px; margin-bottom:20px; }
.collection-switcher a { display:flex; align-items:center; justify-content:center; gap:10px; min-height:52px; border:1px solid var(--control-line); border-radius:12px; background:#201a1540; text-decoration:none; font-size:13px; color:var(--ivory); }
.collection-switcher a[aria-current] { background:#e9d5b724; border-color:#f0ddbd; box-shadow:inset 0 0 0 1px #f0ddbd33; }
.collection-switcher img { width:36px; height:40px; object-fit:contain; }
.shop-product-layout { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); grid-template-areas:'media heading' 'media buy' 'media details'; column-gap:clamp(24px,4vw,56px); row-gap:16px; padding-bottom:40px; }
.shop-product-layout .pdp-media { grid-area:media; }
.product-heading { grid-area:heading; }
.product-buy { grid-area:buy; }
.product-details { grid-area:details; color:var(--muted); line-height:1.7; font-size:15px; }
.shop-product-layout .pdp-copy { text-align:left; }
.shop-product-layout .pdp-copy h1 { font-size:clamp(32px,3.5vw,52px); line-height:1.08; margin:6px 0 10px; }
.shop-product-layout .pdp-copy .kicker { margin:0; font-size:10px; }
.shop-product-layout .pdp-copy .pdp-lede { font-size:16px; line-height:1.4; margin:0; }
.shop-product-layout .sheet-meta { justify-content:space-between; padding:10px 0; font-size:11px; }
.shop-product-layout .product-price { justify-content:flex-start; margin-top:14px; gap:8px 12px; }
.shop-product-layout .pdp-member-offer { margin:8px 0; }
.shop-product-layout .stock-state { font-size:11px; margin:8px 0; }
.shop-product-layout .purchase-controls { justify-content:flex-start; margin:12px 0; gap:10px; }
.shop-product-layout .pdp-assurance { justify-content:flex-start; font-size:11px; gap:14px; }
.shop-product-layout .pdp-facts { margin-top:18px; }
.shop-product-layout .pdp-facts details { padding:14px 0; }
.shop-product-layout .pdp-facts summary { font-size:16px; }
.gallery-tools { display:flex; align-items:center; gap:6px; min-height:44px; }
.gallery-tools button { padding:8px 13px; min-height:44px; border:1px solid var(--control-line); background:var(--glass-control); color:var(--ivory); border-radius:99px; font-size:12px; white-space:nowrap; }
.gallery-tools button[aria-pressed=true] { border-color:#f0ddbd; background:#e9d5b724; }
.gallery-tools [data-comb360] { margin-left:auto; }
.shop-product-layout .gallery-stage { height:clamp(280px,43svh,470px); aspect-ratio:auto; }
.shop-product-layout .gallery-thumbs { gap:7px; }
.shop-product-layout .gallery-thumbs img { height:48px; }
.shop-intro { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:10px 0 24px; }
.shop-intro .kicker { font-size:10px; margin:0 0 6px; }
.shop-intro h1 { font-size:clamp(34px,4vw,56px); line-height:1.05; margin:0 0 8px; }
.shop-intro p:not(.kicker) { font-size:14px; margin:0; color:var(--muted); }
.shop-studio { display:flex; align-items:center; gap:14px; padding:10px 20px 10px 10px; border:1px solid var(--control-line); border-radius:16px; background:var(--glass-control); text-decoration:none; }
.shop-studio img { width:64px; height:64px; object-fit:cover; border-radius:10px; }
.shop-studio small,.shop-studio strong { display:block; }
.shop-studio small { color:var(--muted); font-size:9px; letter-spacing:.13em; margin-bottom:7px; }
.shop-studio strong { font-size:17px; }
.shop-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.shop-grid .product-authentic-stage { height:clamp(180px,30svh,290px); aspect-ratio:auto; }
.shop-grid .product-authentic-image { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; padding:24px 32px 4px; }
.shop-grid .card-copy { padding:16px 12px 12px; }
.shop-grid .card-copy h2 { font-size:clamp(19px,1.8vw,26px); line-height:1.2; margin:6px 0 10px; }
.shop-grid .card-copy h2 a { text-decoration:none; }
.shop-grid .shop-card-price { font-size:16px; color:var(--ivory); }
.shop-card-price span { display:block; font-size:10px; color:var(--muted); margin-top:3px; }
.shop-card-explore { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:44px; margin-top:10px; padding:0 8px; font-size:12px; text-decoration:none; border-top:1px solid var(--line); }
.shop-360 { position:absolute; top:10px; right:10px; min-height:44px; border-radius:99px; border:1px solid var(--control-line); padding:0 12px; background:var(--glass-control); color:var(--ivory); font-size:12px; }
.shop-member-note { display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; margin:18px 0 40px; font-size:11px; color:var(--muted); }
.shop-member-note button { min-height:44px; }
@media(max-width:959px) {
 .shop-product-layout { grid-template-columns:minmax(0,1fr); grid-template-areas:'heading' 'media' 'buy' 'details'; row-gap:12px; }
 .shop-product-layout .pdp-media { position:static; }
 .shop-product-layout .pdp-copy h1 { font-size:30px; margin:4px 0; }
 .shop-product-layout .pdp-copy .pdp-lede { font-size:13px; }
 .collection-switcher { gap:6px; margin-bottom:12px; margin-top:6px; }
 .collection-switcher a { font-size:12px; gap:6px; min-height:48px; }
 .collection-switcher img { width:24px; height:32px; }
 .shop-product-layout .product-gallery { gap:7px; }
 .shop-product-layout .gallery-stage { height:clamp(180px,25svh,290px); }
 .shop-product-layout .gallery-stage.is-product-cutout .gallery-main { padding:14px 52px; }
 .shop-product-layout .gallery-thumbs img { height:36px; }
 .shop-product-layout .gallery-thumbs button { padding:3px; min-height:44px; }
 .shop-product-layout .gallery-thumbs { margin:0; }
 .shop-product-layout .sheet-meta { padding:7px 0; }
 .shop-product-layout .product-price { margin-top:8px; font-size:23px; }
 .shop-product-layout .product-price .fine-copy { font-size:10px; }
 .shop-product-layout .pdp-member-offer { font-size:11px; line-height:1.3; margin:5px 0; }
 .shop-product-layout .pdp-member-offer small { font-size:9px; line-height:1.4; }
 .shop-product-layout .purchase-controls { margin:8px 0; }
 .shop-product-layout .purchase-controls .btn { min-height:44px; padding:10px 18px; }
 .shop-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .shop-grid .product-authentic-stage { height:clamp(130px,18svh,190px); }
 .shop-grid .product-authentic-image { padding:16px 26px 0; }
 .shop-grid .card-copy { padding:8px 10px 0; }
 .shop-grid .card-copy h2 { font-size:20px; margin:4px 0 7px; }
 .shop-grid .card-copy > span { font-size:9px; }
 .shop-grid .shop-card-price { font-size:14px; display:flex; align-items:center; gap:6px; }
 .shop-card-price span { font-size:8px; margin:0; }
 .shop-card-explore { margin-top:7px; }
 .shop-intro { gap:12px; padding:4px 0 16px; }
 .shop-intro h1 { font-size:32px; }
 .shop-intro .kicker { font-size:8px; }
 .shop-intro p:not(.kicker) { font-size:12px; }
 .shop-studio { gap:8px; padding:8px; }
 .shop-studio img { width:40px; height:56px; }
 .shop-studio strong { font-size:12px; }
 .shop-studio small { font-size:8px; letter-spacing:.06em; margin-bottom:5px; }
}
@media(max-width:359px) {
 .collection-back,.product-pagination a { font-size:11px; }
 .product-pagination a { padding-inline:9px; }
 .collection-switcher a { gap:3px; font-size:11px; }
 .shop-studio img { display:none; }
 .shop-intro h1 { font-size:28px; }
 .shop-grid .card-copy h2 { font-size:17px; }
 .gallery-tools button { padding-inline:9px; font-size:11px; }
 .shop-product-layout .purchase-controls { gap:6px; }
}

/* First-screen refinements after measured mobile and desktop review. */
.shop-product-layout .pdp-member-offer button { margin-top:0; }
.shop-product-layout .product-price { line-height:1.3; }
.shop-product-layout .product-price .fine-copy { line-height:1.4; }
@media(max-width:959px) {
 .shop-product-layout { row-gap:8px; }
 .shop-product-layout .gallery-stage { height:clamp(145px,22svh,230px); }
 .shop-product-layout .product-gallery[data-gallery="comb"] .gallery-thumbs img { height:36px; }
 .shop-product-layout .product-gallery[data-gallery="comb"] .gallery-thumbs { padding-bottom:0; }
 .shop-product-layout .product-gallery[data-gallery="comb"] .gallery-thumbs button { flex:0 0 58px; min-width:58px; }
 .shop-product-layout .purchase-controls label { font-size:10px; gap:2px; }
 .shop-product-layout .purchase-controls input { width:54px; min-height:44px; padding:8px; font-size:15px; }
 .shop-product-layout .save-btn { min-height:44px; padding:10px 14px; font-size:12px; }
 .shop-grid .product-authentic-stage { height:clamp(112px,15.5svh,160px); }
 .shop-grid .card-copy h2 { font-size:19px; }
 .shop-grid .product-authentic-image { padding-top:10px; }
}

@media(max-width:359px) {
 .shop-grid .product-authentic-stage { height:94px; }
 .shop-grid .card-copy h2 { font-size:16px; line-height:1.2; white-space:nowrap; }
 .shop-grid .shop-card-price { font-size:12px; gap:4px; }
 .shop-card-price span { font-size:7px; }
 .shop-intro { gap:6px; }
 .shop-intro h1 { font-size:25px; }
}

@media(max-width:359px) {
 .shop-product-layout .pdp-copy h1 { font-size:24px; }
 .shop-product-layout .pdp-copy .pdp-lede { font-size:12px; }
 .shop-product-layout .gallery-stage { height:128px; }
 .shop-product-layout .product-gallery .gallery-thumbs { display:none; }
 .shop-product-layout .product-price { gap:4px 8px; }
 .shop-grid .shop-card-price { font-size:14px; }
 .shop-card-price span { font-size:9px; }
}

@media(min-width:360px) and (max-width:599px) { .shop-product-layout .pdp-copy h1 { font-size:26px; } }

/* Three recommendations share one row across every product page. */
.mini-rail.ritual-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.mini-rail.ritual-links > a { flex:none; width:100%; max-width:none; min-width:0; margin:0; min-height:112px; }
@media(max-width:599px) {
 .mini-rail.ritual-links { gap:8px; }
 .mini-rail.ritual-links > a { flex-direction:column; justify-content:center; gap:9px; padding:16px 8px; text-align:center; min-height:108px; }
 .mini-rail.ritual-links > a > span { font-size:9px; letter-spacing:.08em; }
 .mini-rail.ritual-links strong { font-size:14px; line-height:1.3; }
}

/* Owner-approved paired product tiles: texture stays inside these two surfaces. */
.shop-product-layout.pdp-card-layout { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:none; align-items:stretch; gap:16px; }
.pdp-card-layout > .pdp-tile { grid-area:auto; position:relative; top:auto; min-width:0; border:1px solid #d6bea080; border-radius:20px; padding:16px; background:linear-gradient(#6d5d4fd1,#6d5d4fd1),url('/assets/textures/mineral-grain-r24.webp') center / 384px repeat; box-shadow:inset 0 1px 0 #fff4; }
.pdp-card-layout > .pdp-media { display:flex; }
.pdp-card-layout .product-gallery { flex:1; min-height:0; gap:12px; }
.pdp-card-layout .gallery-stage { flex:1; height:auto; min-height:300px; aspect-ratio:auto; }
.pdp-card-layout .gallery-main { position:absolute; inset:0; }
.pdp-card-layout .gallery-thumbs { margin:0; }
.pdp-card-layout .gallery-thumbs img { height:54px; }
.pdp-card-layout .pdp-information { padding:18px 24px; text-align:center; }
.pdp-card-layout .pdp-copy,.pdp-card-layout .product-details { text-align:center; }
.pdp-card-layout .product-heading h1 { font-size:clamp(30px,3.25vw,46px); line-height:1.06; margin:8px 0 6px; overflow-wrap:normal; }
.pdp-card-layout .product-heading .kicker { font-size:9px; letter-spacing:.14em; }
.pdp-card-layout .product-heading .pdp-lede { font-size:14px; line-height:1.5; }
.pdp-card-layout .sheet-meta { justify-content:center; border-top:0; padding:10px 0; gap:4px 9px; font-size:10px; }
.pdp-card-layout .sheet-meta span + span::before { content:'·'; margin-right:9px; }
.pdp-card-layout .product-price { display:grid; justify-content:center; gap:2px; margin:12px 0 0; }
.pdp-card-layout .product-price strong { font-size:30px; font-weight:650; }
.pdp-card-layout .product-price .fine-copy { font-size:11px; }
.pdp-card-layout .product-price .fine-copy:first-child { text-decoration:line-through; }
.pdp-card-layout .purchase-controls { display:grid; grid-template-columns:minmax(96px,.85fr) minmax(0,1.55fr) minmax(68px,.85fr); align-items:end; gap:9px; margin:14px 0 12px; }
.pdp-quantity { min-width:0; display:grid; gap:5px; }
.pdp-card-layout .pdp-quantity label { display:block; margin:0; font-size:11px; }
.pdp-quantity-control { display:grid; grid-template-columns:30px minmax(0,1fr) 30px; align-items:center; height:46px; border:1px solid #ead8bca6; border-radius:13px; background:#211a1524; }
.pdp-card-layout .pdp-quantity-control input { appearance:textfield; -moz-appearance:textfield; width:100%; min-width:0; min-height:44px; padding:0; border:0; border-radius:0; color:var(--ivory); background:transparent; text-align:center; font:inherit; font-size:14px; }
.pdp-quantity-control input::-webkit-inner-spin-button,.pdp-quantity-control input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.pdp-quantity-control button { min-width:28px; height:44px; border:0; border-radius:12px; padding:0; color:var(--ivory); background:transparent; font-size:19px; }
.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn { width:100%; min-height:46px; padding:10px 8px; border:1px solid #ead8bca6; border-radius:13px; background:#211a1524; color:var(--ivory); font-size:13px; box-shadow:none; transform:none; transition:background-color .18s,color .18s; }
.pdp-card-layout .purchase-controls .btn:focus-visible,.pdp-card-layout .purchase-controls .btn:active { background:#fff0d9; color:#2c241c; }
@media(hover:hover) { .pdp-card-layout .purchase-controls .btn:hover { background:#fff0d9; color:#2c241c; transform:none; } }
:is(.pdp-card-layout,.shop-collection) .pdp-member-offer { margin:0; }
:is(.pdp-card-layout,.shop-collection) .pdp-member-offer button { position:relative; isolation:isolate; overflow:hidden; display:block; width:100%; min-height:48px; border:1px solid #d7b58e; border-radius:13px; background:#261d1724; padding:10px 12px; text-decoration:none; text-align:center; color:var(--ivory); font-size:14px; line-height:1.35; }
:is(.pdp-card-layout,.shop-collection) .pdp-member-offer button::before { content:''; position:absolute; inset:0; z-index:-1; border-radius:inherit; pointer-events:none; box-shadow:inset 0 0 17px 4px #e8bb7b68; background:linear-gradient(transparent 35%,#efc89416); opacity:.2; animation:barbor-member-breathe 5.5s ease-in-out infinite; animation-play-state:paused; }
:is(.pdp-card-layout,.shop-collection) .pdp-member-offer button[data-glow-running=true]::before { animation-play-state:running; }
@keyframes barbor-member-breathe { 0%,100% { opacity:.18; } 50% { opacity:.62; } }
:is(.pdp-card-layout,.shop-collection) .pdp-member-offer small { font-size:11px; line-height:1.55; margin:8px 0 0; }
.pdp-card-layout .stock-state { margin:4px 0; font-size:11px; }
.pdp-card-layout .pdp-assurance { justify-content:center; gap:16px; font-size:11px; }
.pdp-card-layout .pdp-assurance a { min-height:32px; }
.pdp-card-layout .product-details { font-size:13px; line-height:1.6; }
.pdp-card-layout .product-details > p { margin:10px 0; padding:10px 0; border-block:1px solid #dfc8a84d; }
.pdp-card-layout .pdp-facts { border:0; margin:0; text-align:center; }
.fact-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
.fact-controls button { display:flex; align-items:center; justify-content:space-between; gap:5px; min-width:0; min-height:44px; padding:8px 10px; border:1px solid #ead8bca6; border-radius:12px; background:#211a1524; color:var(--ivory); font:inherit; font-size:11px; line-height:1.3; }
.fact-controls button span { flex:1; }
.fact-controls svg { flex:none; width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:1.8; transition:transform .15s; }
.fact-controls button[aria-expanded=true] { border-color:#f2ddbe; background:#eed4ad12; box-shadow:inset 0 0 0 1px #f2ddbe24; }
.fact-controls button[aria-expanded=true] svg { transform:rotate(180deg); }
.fact-panel { margin-top:7px; padding:11px 14px; border:1px solid #d6bea066; border-radius:12px; background:#201a1512; min-height:94px; font-size:12px; line-height:1.6; }
.pdp-card-layout .fact-panel p { font-size:12px; line-height:1.65; margin:0; }
.fact-panel[hidden] { display:none; }
.fact-panel > a { display:inline-flex; align-items:center; min-height:32px; }
.fact-panel .ingredient-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 12px; margin:0; font-size:11px; line-height:1.45; }
.fact-panel .ingredient-list li { padding:6px 0; }
.fact-panel .ingredient-list li::before { display:none; }
@media(max-width:959px) {
 .shop-product-layout.pdp-card-layout { grid-template-columns:minmax(0,1fr); gap:12px; }
 .pdp-card-layout > .pdp-tile { padding:10px; border-radius:16px; }
 .pdp-card-layout .product-gallery { gap:7px; }
 .pdp-card-layout .gallery-stage { flex:none; height:clamp(128px,18svh,190px); min-height:0; }
 .pdp-card-layout .gallery-tools { min-height:38px; }
 .pdp-card-layout .gallery-tools button { min-height:38px; padding:6px 10px; }
 .pdp-card-layout .gallery-thumbs { display:grid; }
 .pdp-card-layout .gallery-thumbs img { height:32px; }
 .pdp-card-layout .pdp-information { padding:14px; }
 .pdp-card-layout .product-heading h1 { font-size:28px; margin:5px 0; }
 .pdp-card-layout .product-heading .pdp-lede { font-size:12px; }
 .pdp-card-layout .product-heading .kicker { font-size:8px; }
 .pdp-card-layout .sheet-meta { padding:7px 0; font-size:9px; }
 .pdp-card-layout .product-price { margin-top:7px; gap:1px; }
 .pdp-card-layout .product-price strong { font-size:25px; }
 .pdp-card-layout .product-price .fine-copy { font-size:10px; }
 .pdp-card-layout .purchase-controls { margin:10px 0; gap:6px; grid-template-columns:minmax(90px,.9fr) minmax(0,1.5fr) minmax(58px,.7fr); }
 .pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn { font-size:12px; min-height:44px; padding:8px 5px; }
 .pdp-quantity-control { height:44px; grid-template-columns:28px minmax(0,1fr) 28px; }
 :is(.pdp-card-layout,.shop-collection) .pdp-member-offer button { min-height:44px; font-size:12px; }
 :is(.pdp-card-layout,.shop-collection) .pdp-member-offer small { font-size:10px; }
 .pdp-card-layout .fact-controls button { padding:6px; gap:3px; font-size:10px; }
 .pdp-card-layout .fact-controls svg { width:10px; height:10px; }
}
@media(prefers-reduced-motion:reduce) { :is(.pdp-card-layout,.shop-collection) .pdp-member-offer button::before { animation:none; opacity:.25; } .fact-controls svg { transition:none; } }
html[data-motion=reduced] :is(.pdp-card-layout,.shop-collection) .pdp-member-offer button::before { animation:none; opacity:.25; }
@media(prefers-contrast:more) { .pdp-card-layout > .pdp-tile { background:#594b3f; border-color:#fff8ee; } .fact-controls button,.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn { border-color:#fff8ee; } }

@media(max-width:359px) {
 .pdp-card-layout .gallery-stage { height:100px; }
 .pdp-card-layout .product-heading h1 { font-size:24px; }
 .pdp-card-layout .purchase-controls { margin:8px 0; }
}

/* Owner-selected edge-to-edge gallery composition, shared by every published product. */
.pdp-card-layout > .pdp-media { padding:8px 10px 12px; }
.pdp-card-layout .product-gallery { gap:8px; }
.pdp-gallery-title { margin:0; text-align:center; font-size:18px; line-height:24px; font-weight:550; color:var(--ivory); }
.pdp-card-layout .gallery-stage { border-radius:14px; }
.pdp-card-layout .gallery-stage.is-product-cutout { background:url('/assets/textures/gallery-scene-r32.webp') center / cover no-repeat; }
.pdp-card-layout .gallery-tools { position:absolute; inset:3px 4px auto; z-index:3; min-height:40px; pointer-events:none; }
.pdp-card-layout .gallery-tools button { pointer-events:auto; min-height:40px; padding:7px 12px; background:#29231ecc; border:1px solid #ead8bca6; font-size:12px; }
.pdp-card-layout .gallery-tools button[aria-pressed=true] { background:#9a8a7577; border-color:#fff0d9; }
.pdp-card-layout .gallery-stage.is-product-cutout .gallery-main { padding:18px 24px 20px; }
.pdp-card-layout .gallery-stage.is-product-cutout .gallery-image { width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; object-position:center; }
.pdp-card-layout .product-gallery[data-gallery=balm] .gallery-stage.is-product-cutout .gallery-main { padding:48px 60px 22px; }
.pdp-card-layout .gallery-stage.is-product-info .gallery-main { padding:44px 0 0; }
.pdp-card-layout .gallery-prev,.pdp-card-layout .gallery-next { z-index:2; width:46px; height:46px; top:calc(50% - 23px); background:#29231e80; border-color:#ead8bca6; }
.pdp-card-layout .gallery-thumbs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:7px; margin:0; padding:0; overflow:visible; }
.pdp-card-layout .gallery-thumbs button { min-width:0; padding:4px; min-height:44px; border-radius:10px; background:#443a306b; border-color:#c8af8c99; }
.pdp-card-layout .gallery-thumbs button[aria-pressed=true] { border-color:#fff0d9; box-shadow:0 0 0 1px #fff0d9; }
.pdp-card-layout .gallery-thumbs img { width:100%; height:54px; border-radius:6px; }
.pdp-card-layout .gallery-thumbs button:first-child img { background:url('/assets/textures/gallery-scene-r32.webp') center / cover; }
.pdp-card-layout .product-gallery[data-gallery=comb] .gallery-thumbs { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); overflow:visible; padding:0; }
.pdp-card-layout .product-gallery[data-gallery=comb] .gallery-thumbs button { min-width:0; }
.pdp-card-layout .product-gallery[data-gallery=comb] .gallery-thumbs img { height:54px; }
@media(max-width:959px) {
 .pdp-card-layout > .pdp-media { padding:8px; }
 .pdp-gallery-title { display:none; }
 .pdp-card-layout .gallery-stage { height:clamp(150px,23svh,205px); }
 .pdp-card-layout .gallery-tools { inset:2px 3px auto; min-height:38px; gap:4px; }
 .pdp-card-layout .gallery-tools button { min-height:38px; padding:6px 9px; font-size:10px; }
 .pdp-card-layout .gallery-stage.is-product-cutout .gallery-main { padding:12px 22px; }
 .pdp-card-layout .product-gallery[data-gallery=balm] .gallery-stage.is-product-cutout .gallery-main { padding:36px 30px 12px; }
 .pdp-card-layout .gallery-thumbs { gap:5px; }
 .pdp-card-layout .gallery-thumbs img,.pdp-card-layout .product-gallery[data-gallery=comb] .gallery-thumbs img { height:34px; }
 .pdp-card-layout .gallery-thumbs button { padding:3px; }
 .pdp-card-layout .gallery-prev,.pdp-card-layout .gallery-next { width:44px; height:44px; top:calc(50% - 22px); }
}
@media(max-width:359px) {
 .pdp-card-layout .gallery-stage { height:94px; }
 .pdp-card-layout .gallery-tools { inset:1px 2px auto; gap:3px; }
 .pdp-card-layout .gallery-tools button { min-height:34px; padding:5px 7px; font-size:9px; }
 .pdp-card-layout .product-gallery .gallery-thumbs { display:grid; gap:4px; }
 .pdp-card-layout .gallery-thumbs img,.pdp-card-layout .product-gallery[data-gallery=comb] .gallery-thumbs img { height:28px; }
 .pdp-card-layout .gallery-stage.is-product-cutout .gallery-main { padding:6px 20px; }
 .pdp-card-layout .product-gallery[data-gallery=balm] .gallery-stage.is-product-cutout .gallery-main { padding:27px 28px 5px; }
}

/* Collection offer shares the approved product-card membership control. */
.shop-collection .shop-member-note.pdp-member-offer { display:block; width:min(100%,640px); margin:24px auto 32px; text-align:center; }
.shop-collection .shop-member-note small { display:block; }
.shop-collection .shop-member-note .commerce-note { margin:4px 0 0; font-size:12px; line-height:1.55; }
@media(max-width:959px) { .shop-collection .shop-member-note.pdp-member-offer { margin-top:16px; } .shop-collection .shop-member-note .commerce-note { font-size:11px; } }

/* Owner-approved matching header and footer. One static mineral material; no moving texture or live blur. */
:root { --header-clearance:172px; --shell-material:linear-gradient(135deg,#7b6857b8,#56483dd9),url('/assets/textures/mineral-grain-r24.webp') center / 384px repeat; --shell-border:#dfc29a9c; }
.site-header-shell,.site-footer-shell { color:var(--ivory); border:1px solid var(--shell-border); border-radius:24px; background:var(--shell-material); box-shadow:inset 0 1px 0 #fff0d966,0 8px 20px #21180f24; }
.site-header-shell { position:fixed; z-index:80; top:max(12px,env(safe-area-inset-top)); left:50%; transform:translateX(-50%); width:var(--shell); padding:10px 16px 12px; }
.site-header-shell .topbar { position:relative; inset:auto; transform:none; z-index:auto; width:100%; height:66px; padding:0 0 10px; border:0; border-radius:0; border-bottom:1px solid #dfc29a55; background:none; box-shadow:none; -webkit-backdrop-filter:none; backdrop-filter:none; }
.site-header-shell .top-logo { display:flex; flex-direction:column; align-items:center; justify-content:center; width:180px; height:56px; gap:3px; text-decoration:none; }
.site-header-shell .top-logo img { width:180px; height:42px; }
.site-header-shell .top-logo .brand-slogan { color:#edc990; font-size:8px; line-height:1.2; letter-spacing:.22em; white-space:nowrap; }
.shell-icon { width:20px; height:20px; flex:none; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .footer-links a { border:1px solid #dec29a99; border-radius:13px; background:linear-gradient(150deg,#fff2dc0a,transparent),#30251c24; box-shadow:inset 0 1px 0 #fff2dc26; color:#fff8ee; text-decoration:none; transition:background-color .18s,border-color .18s; }
.site-header-shell .topbar button { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; padding:8px 16px; font-size:13px; }
.site-header-shell .top-actions { gap:10px; }
.site-header-shell .bag-btn [data-cart-count] { display:inline-grid; min-width:21px; height:21px; padding-inline:3px; margin-left:0; border:1px solid #dfc29a99; color:#edc990; background:transparent; font-weight:500; }
.site-header-shell .desktop-nav { position:relative; inset:auto; transform:none; z-index:auto; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; width:100%; max-width:none; padding:10px 0 0; border:0; border-radius:0; background:none; box-shadow:none; -webkit-backdrop-filter:none; backdrop-filter:none; }
.site-header-shell .desktop-nav a { display:flex; justify-content:center; min-width:0; min-height:44px; padding:8px 5px; border-radius:12px; text-align:center; font-size:11px; line-height:1.35; letter-spacing:.065em; }
.site-footer-shell { width:var(--shell); margin:32px auto; padding:32px 22px 22px; text-align:center; }
.site-footer-shell .barbor-edit { padding:0; border:0; background:none; overflow:visible; }
.site-footer-shell .edit-heading { display:block; width:100%; margin:0 auto 26px; text-align:center; }
.site-footer-shell .edit-heading .kicker { font-size:10px; letter-spacing:.2em; }
.site-footer-shell .edit-heading h2 { margin:8px 0; font-size:clamp(26px,3vw,38px); line-height:1.2; }
.site-footer-shell .edit-controls { justify-content:center; }
.site-footer-shell .edit-controls p { margin:0; color:#f4e8da; font-size:13px; }
.site-footer-shell .edit-viewport { overflow:visible; }
.site-footer-shell .edit-track { display:block; width:100%; animation:none; transform:none; }
.site-footer-shell .edit-group { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); width:100%; min-width:0; gap:10px; }
.site-footer-shell .edit-card { position:relative; display:flex; align-items:center; justify-content:center; width:auto; min-width:0; min-height:126px; padding:28px 14px 20px; border-radius:16px; text-align:center; }
.site-footer-shell .edit-card > span { display:flex; align-items:center; gap:11px; width:100%; }
.site-footer-shell .edit-card small { color:#edc990; font-size:9px; line-height:1.5; letter-spacing:.14em; }
.site-footer-shell .edit-card small.origin-label { text-transform:none; }
.site-footer-shell .edit-card strong { font-size:15px; line-height:1.45; font-weight:450; color:#fff8ee; }
.site-footer-shell .edit-card > b { position:absolute; top:8px; right:13px; margin:0; font-size:18px; }
.site-footer-shell .site-footer { position:relative; margin-top:22px; padding:25px 0 0; border:0; border-radius:0; background:none; box-shadow:none; text-align:center; }
.site-footer-shell .site-footer::before { content:''; position:absolute; top:0; left:calc(50% - 38px); width:76px; height:1px; background:linear-gradient(90deg,transparent,#dfbd87,transparent); }
.site-footer-shell .site-footer > img { width:210px; height:58px; margin:0 auto; }
.site-footer-shell .site-footer > p { margin:5px 0 24px; color:#edc990; font-size:10px; letter-spacing:.24em; }
.site-footer-shell .site-footer > .footer-links { display:flex; flex-direction:column; align-items:center; gap:8px; max-width:860px; margin:0 auto 23px; }
.site-footer-shell .footer-link-row { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; }
.site-footer-shell .footer-links a { display:flex; align-items:center; justify-content:center; min-height:44px; min-width:100px; padding:8px 16px; border-radius:10px; font-size:12px; line-height:1.3; text-align:center; }
.site-footer-shell .site-footer > small { color:#f4e8da; font-size:11px; }
.site-header-shell :is(button,a):focus-visible,.site-footer-shell a:focus-visible { outline:2px solid #fff1da; outline-offset:3px; }
@media(hover:hover) {
 .site-header-shell .topbar button:hover,.site-header-shell .desktop-nav a:hover,.site-footer-shell .edit-card:hover,.site-footer-shell .footer-links a:hover { background-color:#f2d4a826; border-color:#f4d9b2; }
}
.site-header-shell .topbar button:active,.site-header-shell .desktop-nav a:active,.site-footer-shell a:active { background-color:#f2d4a838; }
@media(max-width:1100px) and (min-width:960px) { .site-footer-shell { padding-inline:16px; } .site-footer-shell .edit-card { padding-inline:10px; } .site-footer-shell .edit-card strong { font-size:13px; } .site-footer-shell .edit-card small { font-size:8px; } }
@media(max-width:959px) {
 :root { --header-clearance:100px; }
 .site-header-shell { top:max(8px,env(safe-area-inset-top)); padding:8px 12px; border-radius:18px; }
 .site-header-shell .topbar { height:62px; padding:0; border:0; }
 .site-header-shell .top-logo { width:150px; height:54px; }
 .site-header-shell .top-logo img { width:150px; height:38px; }
 .site-header-shell .top-logo .brand-slogan { font-size:7px; }
 .site-header-shell .desktop-nav { display:none; }
 .site-footer-shell { padding:28px 18px 22px; margin-bottom:calc(96px + env(safe-area-inset-bottom)); border-radius:20px; }
 .site-footer-shell .edit-group { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .site-footer-shell .edit-card:last-child { grid-column:1/-1; }
 .site-footer-shell .edit-card { min-height:116px; padding:26px 16px 18px; }
 .site-footer-shell .edit-card strong { font-size:14px; }
 .bottom-dock { background:var(--shell-material); border-color:var(--shell-border); -webkit-backdrop-filter:none; backdrop-filter:none; box-shadow:inset 0 1px 0 #fff0d940,0 6px 18px #21180f24; }
 .bottom-dock a,.bottom-dock button { border:1px solid #dec29a55; background:#30251c24; }
}
@media(max-width:599px) {
 .site-header-shell { width:calc(100vw - 24px); padding:6px 10px; }
 .site-header-shell .topbar { width:100%; height:58px; padding:0; }
 .site-header-shell .top-logo { width:124px; height:50px; gap:2px; }
 .site-header-shell .top-logo img { width:124px; height:34px; }
 .site-header-shell .top-logo .brand-slogan { font-size:6px; }
 .site-header-shell .topbar button { padding:8px 10px; gap:5px; }
 .site-header-shell .top-actions { gap:0; }
 .site-header-shell .top-actions .icon-btn { display:none; }
 .site-header-shell .utility-label { display:none; }
 .site-header-shell .shell-icon { width:19px; height:19px; }
 .site-header-shell .bag-btn [data-cart-count] { font-size:11px; min-width:18px; height:18px; }
 .site-footer-shell { width:calc(100vw - 24px); padding:24px 12px 20px; }
 .site-footer-shell .edit-heading { margin-bottom:20px; }
 .site-footer-shell .edit-heading h2 { font-size:26px; }
 .site-footer-shell .edit-heading .kicker { font-size:9px; }
 .site-footer-shell .edit-controls p { font-size:12px; }
 .site-footer-shell .edit-group { gap:8px; }
 .site-footer-shell .edit-card { padding:28px 9px 16px; min-height:124px; }
 .site-footer-shell .edit-card small { font-size:8px; letter-spacing:.1em; }
 .site-footer-shell .edit-card strong { font-size:13px; }
 .site-footer-shell .edit-card:last-child { min-height:100px; }
 .site-footer-shell .footer-link-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; }
 .site-footer-shell .footer-link-row:first-child a:last-child { grid-column:1/-1; }
 .site-footer-shell .site-footer > .footer-links { width:100%; gap:8px; }
 .site-footer-shell .footer-links a { min-width:0; padding:9px 5px; font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { .site-header-shell *,.site-footer-shell * { transition:none!important; } }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) { .site-header-shell,.site-footer-shell,.bottom-dock { background:#594b3f; border-color:#f4dfbf; } .site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .footer-links a { background:#44382e; border-color:#f4dfbf; } }

/* Preserve the exact logo pixels while clipping only its transparent canvas padding. */
.site-header-shell .bag-btn .utility-label { min-width:0; width:auto; height:auto; margin:0; padding:0; border:0; border-radius:0; background:none; color:inherit; font-size:inherit; font-weight:inherit; }
.site-header-shell .top-logo { width:210px; }
.site-header-shell .brand-mark { display:block; position:relative; width:100%; height:40px; flex:none; overflow:hidden; }
.site-header-shell .brand-mark img,.site-footer-shell .footer-brand-mark img { position:absolute; left:0; top:50%; transform:translateY(-50%); width:100%; height:auto; max-width:none; margin:0; }
.site-footer-shell .footer-brand-mark { position:relative; display:block; overflow:hidden; width:220px; height:50px; margin:0 auto; }
.site-footer-shell .edit-controls p { display:block; }
.site-footer-shell .edit-card > span { display:grid; grid-template-rows:20px minmax(44px,auto); align-items:center; align-content:center; justify-items:center; gap:7px; }
.site-footer-shell .edit-card strong { display:flex; align-items:center; justify-content:center; min-height:44px; }
@media(max-width:959px) { .site-header-shell .top-logo { width:160px; } .site-header-shell .brand-mark { height:36px; } }
@media(max-width:599px) { .site-header-shell .top-logo { width:124px; } .site-header-shell .brand-mark { height:32px; } }

/* Owner-approved collection console. The shortcut never participates in the heading/offer layout. */
main[data-route="/"] > .ritual-console { position:relative; padding:30px 0 34px; border:0; }
.ritual-console .ritual-heading { gap:10px; text-align:center; }
.ritual-console .ritual-heading .kicker { display:flex; align-items:center; justify-content:center; gap:20px; margin:0 0 10px; color:#edc990; }
.ritual-console .ritual-heading .kicker::before,.ritual-console .ritual-heading .kicker::after { content:''; width:38px; height:1px; background:#d9b487; }
.ritual-console .ritual-offer { width:var(--shell); margin:0 auto 12px; padding:12px 16px 10px; display:flex; flex-direction:column; align-items:center; gap:5px; text-align:center; border:1px solid #e2caaa26; border-radius:18px; background:linear-gradient(140deg,#dec6a518,transparent),#99816b4d; }
.ritual-console .ritual-offer button,.ritual-console .ritual-shortcut,.ritual-console .card-copy .quick { color:#fff8ee; background:linear-gradient(150deg,#dec6a51c,transparent),#99816b70; border:1px solid transparent; box-shadow:none; border-radius:12px; text-decoration:none; text-align:center; transition:background-color .18s; }
.ritual-console .ritual-offer button { position:relative; isolation:isolate; overflow:hidden; min-height:44px; width:min(100%,400px); padding:9px 14px; font-size:15px; line-height:1.4; }
.ritual-console .ritual-offer button span { margin-left:8px; }
.ritual-console .ritual-offer button::before { content:''; position:absolute; inset:0; z-index:-1; border-radius:inherit; pointer-events:none; box-shadow:inset 0 0 17px 4px #e8bb7b68; background:linear-gradient(transparent 35%,#efc89416); opacity:.2; animation:barbor-member-breathe 5.5s ease-in-out infinite paused; }
.ritual-console .ritual-offer button[data-glow-running=true]::before { animation-play-state:running; }
.ritual-console .ritual-offer small { display:block; margin:0; color:#fff8ee; font-size:12px; line-height:1.5; }
.ritual-console .ritual-shortcut { position:absolute; z-index:4; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; width:208px; min-height:56px; padding:9px 10px; }
.ritual-console .ritual-shortcut small { font-size:11px; line-height:1.3; }
.ritual-console .ritual-shortcut strong { font-size:14px; line-height:1.3; font-weight:550; }
.ritual-console .ritual-shortcut-wide { right:max(var(--gutter),calc((100vw - 1320px)/2)); top:36px; }
.ritual-console .ritual-shortcut-compact { display:none; }
.ritual-gallery { position:relative; width:var(--shell); margin:0 auto; }
.ritual-console .product-rail { --rail-gap:16px; width:100%; margin:0; padding:0; grid-auto-columns:calc((100% - 3 * var(--rail-gap))/4); gap:var(--rail-gap); scrollbar-width:none; }
.ritual-console .product-rail::-webkit-scrollbar { display:none; }
.ritual-console .product-card { border:0; border-radius:18px; }
.ritual-console .product-authentic-stage { aspect-ratio:5/6; }
.ritual-console .product-authentic-image { padding:36px 36px 18px; }
.ritual-console .card-copy { padding:12px 18px 18px; }
.ritual-console .card-copy h3 { margin:6px 0; }
.ritual-console .card-copy .quick { width:100%; min-height:44px; padding:8px 10px; margin:12px 0 0; justify-content:center; font-size:14px; }
.ritual-console .rail-controls { position:absolute; inset:0; width:auto; margin:0; pointer-events:none; display:block; }
.ritual-console .rail-controls button { position:absolute; top:50%; transform:translateY(-50%); width:48px; height:48px; padding:10px; pointer-events:auto; display:grid; place-items:center; background:#3d3329aa; border:1px solid #cdb89880; color:#fff8ee; }
.ritual-console .rail-controls [data-rail-prev] { left:-24px; }
.ritual-console .rail-controls [data-rail-next] { right:-24px; }
.ritual-console .rail-controls button:disabled { opacity:.4; cursor:default; }
.ritual-console .rail-controls .player-icon { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.7; }
.ritual-console .rail-progress { display:none; }
.ritual-console :is(a,button):focus-visible { outline:2px solid #ffdfac; outline-offset:3px; }
.ritual-console .product-rail:focus-visible { outline:2px solid #ffdfac; outline-offset:4px; }
@media(hover:hover) { .ritual-console :is(.ritual-shortcut,.ritual-offer button,.card-copy .quick):hover { background-color:#b3927199; } }
@media(max-width:959px) {
 .ritual-console .ritual-shortcut-wide { display:none; }
 .ritual-console .ritual-shortcut-compact { display:flex; top:6px; right:6px; width:calc(100% - 12px); max-width:208px; min-height:48px; padding:6px 4px; gap:2px; }
 .ritual-console .ritual-shortcut small { font-size:10px; }
 .ritual-console .ritual-shortcut strong { font-size:clamp(11px,3vw,14px); }
 .ritual-console .product-rail { --rail-gap:10px; grid-auto-columns:calc((100% - var(--rail-gap))/2); }
 .ritual-console [data-product=oil] { order:0; }
 .ritual-console [data-product=comb] { order:1; }
 .ritual-console [data-product=balm] { order:2; }
 .ritual-console [data-product=serum] { order:3; }
 .ritual-console .product-authentic-stage { aspect-ratio:2/3; max-height:400px; }
 .ritual-console .product-authentic-image { padding:64px 18px 18px; }
 .ritual-console .card-copy { padding:10px 10px 12px; }
 .ritual-console .card-copy h3 { font-size:clamp(18px,4.4vw,26px); margin:5px 0; }
 .ritual-console .card-copy > span { font-size:10px; }
 .ritual-console .card-copy p { min-height:36px; font-size:11px; }
 .ritual-console .card-copy .quick { margin-top:8px; font-size:13px; }
 .ritual-console .rail-controls button { width:44px; height:44px; }
 .ritual-console .rail-controls [data-rail-prev] { left:-12px; }
 .ritual-console .rail-controls [data-rail-next] { right:-12px; }
}
@media(max-width:599px) {
 main[data-route="/"] > .ritual-console { padding:24px 0 28px; }
 .ritual-console .ritual-heading { gap:8px; }
 .ritual-console .ritual-heading > p { font-size:13px; }
 .ritual-console .ritual-offer { border-radius:15px; padding:9px 10px; }
 .ritual-console .ritual-offer button { font-size:13px; padding:8px 5px; }
 .ritual-console .ritual-offer small { font-size:10px; }
 .ritual-console .product-card { border-radius:15px; }
}
@media(prefers-reduced-motion:reduce) { .ritual-console .ritual-offer button::before { animation:none; } }
html[data-motion=reduced] .ritual-console .ritual-offer button::before { animation:none; }
@media(prefers-reduced-transparency:reduce) { .ritual-console :is(.ritual-offer,.ritual-shortcut,.card-copy .quick) { background:#786450; } }
@media(forced-colors:active) { .ritual-console :is(.ritual-offer button,.ritual-shortcut,.card-copy .quick) { border:1px solid ButtonText; } }

/* One discovery system continues the approved neutral homepage and glass collection. */
main[data-route="/"] .discovery-region { --discovery-gap:16px; --discovery-columns:4; --discovery-height:128px; padding:0 0 6px; background:transparent; }
main[data-route="/"] .discovery-section { color-scheme:dark; --ivory:#fff8ee; --muted:#f4e8da; --sand:#fff1da; --bronze2:#edc990; --focus:#ffdfac; color:var(--ivory); padding:30px 0; background:transparent; border:0; }
.discovery-section[hidden] { display:none; }
.discovery-section .section-title { display:flex; align-items:center; gap:10px; margin-bottom:22px; text-align:center; }
.discovery-section .section-title h2 { color:#fff8ee; font-size:clamp(30px,3.4vw,46px); line-height:1.12; }
.discovery-section .section-title .kicker { display:flex; align-items:center; justify-content:center; gap:20px; margin:0 0 10px; color:#edc990; }
.discovery-section .section-title .kicker::before,.discovery-section .section-title .kicker::after { content:''; width:38px; height:1px; flex:none; background:#d9b487; }
.discovery-section .section-title > p { margin:0 auto; color:#f4e8da; font-size:15px; line-height:1.6; }
.discovery-section .discovery-grid { display:flex; flex-wrap:wrap; justify-content:center; gap:var(--discovery-gap); width:var(--shell); margin:0 auto; padding:0; overflow:visible; }
.discovery-section .discovery-card { position:relative; flex:0 0 calc((100% - (var(--discovery-columns) - 1) * var(--discovery-gap)) / var(--discovery-columns)); display:grid; grid-template-columns:56px minmax(0,1fr) auto; align-items:center; gap:12px; width:auto; min-width:0; max-width:none; height:var(--discovery-height); min-height:var(--discovery-height); margin:0; padding:16px; border:1px solid transparent; border-radius:16px; color:#fff8ee; background:linear-gradient(150deg,#dec6a51c,transparent),#99816b70; box-shadow:none; text-decoration:none; transition:background-color .18s; }
.discovery-section .discovery-art { display:block; width:56px; height:90px; margin:0 auto; object-fit:contain; background:none; border:0; border-radius:0; }
.discovery-section .discovery-copy { display:flex; flex-direction:column; justify-content:center; min-width:0; gap:6px; text-align:left; }
.discovery-section .discovery-eyebrow { display:block; margin:0; color:#edc990; font-size:10px; line-height:1.35; letter-spacing:.12em; text-transform:uppercase; }
.discovery-section .discovery-name { display:block; margin:0; color:#fff8ee; font-size:clamp(14px,1.2vw,18px); line-height:1.3; font-weight:600; letter-spacing:-.02em; text-transform:none; overflow-wrap:normal; }
.discovery-section .discovery-action { color:#fff8ee; margin:0; font-size:21px; line-height:1.3; text-transform:none; white-space:nowrap; }
.discovery-section .continue-card .discovery-eyebrow { color:#f4e8da; letter-spacing:0; text-transform:none; font-size:11px; }
.discovery-section .continue-card .discovery-action { font-size:11px; }
.discovery-section .discovery-card:focus-visible { outline:2px solid #ffdfac; outline-offset:3px; }
@media(hover:hover) { .discovery-section .discovery-card:hover,.lounge-paths .lounge-path-card:hover,.mineral-link:hover { background-color:#b3927199; } }
@media(max-width:1199px) {
 main[data-route="/"] .discovery-region { --discovery-columns:2; }
 .discovery-section .discovery-name { font-size:18px; }
}
@media(max-width:599px) {
 main[data-route="/"] .discovery-region { --discovery-gap:10px; --discovery-height:192px; }
 main[data-route="/"] .discovery-section { padding:24px 0; }
 .discovery-section .section-title { gap:8px; margin-bottom:16px; }
 .discovery-section .section-title .kicker { gap:10px; font-size:9px; letter-spacing:.15em; }
 .discovery-section .section-title .kicker::before,.discovery-section .section-title .kicker::after { width:24px; }
 .discovery-section .section-title > p { font-size:13px; }
 .discovery-section .discovery-card { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:8px; padding:12px 8px; border-radius:15px; text-align:center; }
 .discovery-section .discovery-art { width:52px; height:72px; }
 .discovery-section .discovery-copy { min-height:40px; gap:4px; text-align:center; }
 .discovery-section .discovery-name { font-size:16px; }
 .discovery-section .discovery-eyebrow { font-size:9px; }
 .discovery-section .discovery-action { min-height:18px; font-size:17px; line-height:18px; }
 .discovery-section .continue-card .discovery-eyebrow { font-size:10px; }
 .discovery-section .continue-card .discovery-action { font-size:11px; }
}
@media(prefers-reduced-transparency:reduce) { .discovery-section .discovery-card { background:#786450; } }
@media(forced-colors:active) { .discovery-section .discovery-card { border:1px solid LinkText; } }

/* Approved r39: header-matched material and darker Lounge controls; geometry is inherited unchanged. */
.ritual-console .ritual-offer {
 background:var(--shell-material);
 border-color:var(--shell-border);
 box-shadow:inset 0 1px 0 #fff0d966,0 8px 20px #21180f24;
}
.ritual-console .ritual-offer button,.ritual-console .ritual-shortcut {
 background:linear-gradient(150deg,#fff2dc0a,transparent),#30251c24;
 border-color:#dec29a99;
 box-shadow:inset 0 1px 0 #fff2dc26;
 color:#fff8ee;
 transition:background-color .18s,border-color .18s;
}
.ritual-console .ritual-shortcut {
 background:linear-gradient(150deg,#fff2dc0a,transparent),linear-gradient(var(--ritual-control-tint,#30251c24),var(--ritual-control-tint,#30251c24)),var(--shell-material);
}
.ritual-console .ritual-offer button::before {
 background:none;
 box-shadow:inset 0 0 17px 4px #e8bb7b26;
}
@media(hover:hover) {
 .ritual-console .ritual-offer button:hover,.ritual-console .ritual-shortcut:hover {
  --ritual-control-tint:#f2d4a826;
  background-color:#f2d4a826;
  border-color:#f4d9b2;
 }
}
.ritual-console .ritual-offer button:active,.ritual-console .ritual-shortcut:active { --ritual-control-tint:#f2d4a838; background-color:#f2d4a838; }
.ritual-console .ritual-offer button:focus-visible,.ritual-console .ritual-shortcut:focus-visible { outline-color:#fff1da; }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
 .ritual-console .ritual-offer { background:#594b3f; border-color:#f4dfbf; }
 .ritual-console .ritual-offer button,.ritual-console .ritual-shortcut { background:#44382e; border-color:#f4dfbf; }
}
@media(forced-colors:active) {
 .ritual-console .ritual-offer { background:Canvas; border-color:CanvasText; }
 .ritual-console .ritual-offer button,.ritual-console .ritual-shortcut { background:ButtonFace; border-color:ButtonText; color:ButtonText; box-shadow:none; }
}

/* Approved r40: the same mineral-backed Lounge finish on every discovery link. Geometry remains inherited. */
.discovery-section .discovery-card,.mineral-link,.lounge-paths .lounge-path-card {
 background:linear-gradient(150deg,#fff2dc0a,transparent),linear-gradient(var(--discovery-control-tint,#30251c24),var(--discovery-control-tint,#30251c24)),var(--shell-material);
 border-color:#dec29a99;
 box-shadow:inset 0 1px 0 #fff2dc26;
 color:#fff8ee;
 transition:background-color .18s,border-color .18s;
}
@media(hover:hover) {
 .discovery-section .discovery-card:hover,.mineral-link:hover,.lounge-paths .lounge-path-card:hover { --discovery-control-tint:#f2d4a826; border-color:#f4d9b2; }
}
.discovery-section .discovery-card:active,.mineral-link:active,.lounge-paths .lounge-path-card:active { --discovery-control-tint:#f2d4a838; }
.discovery-section .discovery-card:focus-visible,.mineral-link:focus-visible,.lounge-paths .lounge-path-card:focus-visible { outline-color:#fff1da; }
@media(prefers-reduced-motion:reduce) { .discovery-section .discovery-card,.mineral-link,.lounge-paths .lounge-path-card { transition:none; } }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
 .discovery-section .discovery-card,.mineral-link,.lounge-paths .lounge-path-card { background:#44382e; border-color:#f4dfbf; }
}
@media(forced-colors:active) {
 .discovery-section .discovery-card,.mineral-link,.lounge-paths .lounge-path-card { background:Canvas; border-color:LinkText; color:LinkText; box-shadow:none; }
}

/* Owner-approved compact shared footer and capsule shortcuts — r41. */
.site-footer-shell { padding:10px 16px 12px; }
.site-footer-shell .footer-masthead { position:relative; display:flex; justify-content:center; align-items:center; min-height:54px; }
.site-footer-shell .footer-brand { display:flex; flex-direction:column; align-items:center; gap:3px; color:#edc990; text-decoration:none; }
.site-footer-shell .footer-brand-mark { width:210px; height:40px; }
.site-footer-shell .footer-slogan { font-size:8px; line-height:1.2; letter-spacing:.22em; }
.site-footer-shell .footer-top { position:absolute; right:0; top:6px; display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; padding:8px 16px; border:1px solid #dec29a99; border-radius:13px; background:linear-gradient(150deg,#fff2dc0a,transparent),#30251c24; box-shadow:inset 0 1px 0 #fff2dc26; color:#fff8ee; font-size:13px; text-decoration:none; transition:background-color .18s,border-color .18s; }
.site-footer-shell .footer-top-arrow { font-size:19px; line-height:1; }
.site-footer-shell .edit-heading { margin:1px auto 6px; }
.site-footer-shell .edit-heading .kicker { margin:0; font-size:9px; line-height:1.35; letter-spacing:.14em; }
.site-footer-shell .edit-heading h2 { margin:1px 0; font-size:18px; line-height:1.25; }
.site-footer-shell .edit-controls p { font-size:12px; line-height:1.4; }
.site-footer-shell .edit-viewport { padding-top:8px; border-top:1px solid #dfc29a55; }
.site-footer-shell .edit-group { grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.site-footer-shell .edit-card,.site-footer-shell .edit-card:last-child { min-height:44px; padding:8px 28px 8px 12px; border-radius:12px; grid-column:auto; }
.site-footer-shell .edit-card > span { display:block; width:100%; }
.site-footer-shell .edit-card small { font-size:9px; line-height:1.4; letter-spacing:.1em; }
.site-footer-shell .edit-card > b { top:50%; right:12px; transform:translateY(-50%); }
.site-footer-shell .site-footer { margin-top:6px; padding:0; }
.site-footer-shell .site-footer::before { display:none; }
.site-footer-shell .site-footer > .footer-links { flex-direction:row; justify-content:center; flex-wrap:wrap; gap:7px; max-width:none; width:100%; margin:0 auto 5px; }
.site-footer-shell .footer-link-row { display:contents; }
.site-footer-shell .footer-link-row:first-child a:last-child { grid-column:auto; }
.site-footer-shell .footer-links a { min-height:32px; min-width:0; padding:5px 16px; border-radius:9px; font-size:11px; line-height:1.3; }
.site-footer-shell .site-footer > small { display:block; font-size:11px; line-height:1.4; }
.ritual-console .ritual-shortcut,.shop-studio { border-radius:999px; }
@media(hover:hover) { .site-footer-shell .footer-top:hover { background-color:#f2d4a826; border-color:#f4d9b2; } }
.site-footer-shell .footer-top:active { background-color:#f2d4a838; }
@media(max-width:959px) {
 .site-footer-shell { padding:10px 14px 12px; }
 .site-footer-shell .footer-brand-mark { width:160px; height:36px; }
 .site-footer-shell .footer-slogan { font-size:7px; }
 .site-footer-shell .footer-links a { min-height:44px; }
}
@media(max-width:759px) {
 .site-footer-shell .edit-group { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
 .site-footer-shell .edit-card:last-child { grid-column:1/-1; }
 .site-footer-shell .edit-card small { font-size:10px; letter-spacing:.07em; }
}
@media(max-width:599px) {
 .site-footer-shell { padding:10px 12px 12px; }
 .site-footer-shell .footer-masthead { min-height:48px; }
 .site-footer-shell .footer-brand-mark { width:124px; height:32px; }
 .site-footer-shell .footer-slogan { font-size:6px; }
 .site-footer-shell .footer-top { top:0; min-width:44px; padding:8px; }
 .site-footer-shell .footer-top-label { display:none; }
 .site-footer-shell .edit-heading h2 { font-size:18px; }
 .site-footer-shell .edit-controls p { font-size:11px; }
 .site-footer-shell .site-footer > .footer-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
 .site-footer-shell .footer-links a { padding:6px 4px; font-size:11px; }
 .site-footer-shell .site-footer > small { font-size:10px; }
}
@media(pointer:coarse) { .site-footer-shell .footer-links a { min-height:44px; } }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) { .site-footer-shell .footer-top { background:#44382e; border-color:#f4dfbf; } }
@media(forced-colors:active) { .site-footer-shell .footer-top { background:ButtonFace; color:ButtonText; border-color:ButtonText; box-shadow:none; } }

/* Approved Lounge composition — r42. The card material is shared with discovery above. */
main[data-route="/lounge/"] .breadcrumbs { padding:0 0 12px; }
main[data-route="/lounge/"] + .site-footer-shell { margin-top:16px; }
.lounge-department-art > * { object-position:center top; }
.lounge-department { min-height:clamp(340px,34vw,448px); }
.lounge-department-copy { padding:28px clamp(20px,4vw,48px); }
.lounge-department h1 { font-size:clamp(34px,3.6vw,54px); line-height:1.08; }
.lounge-department-copy .kicker { margin-bottom:8px; }
.lounge-department-copy > p:last-child { max-width:680px; margin:12px auto 0; }
.lounge-paths { grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:1fr; gap:12px; margin-top:12px; padding-bottom:0; }
.lounge-paths > article { display:flex; padding:0; border:0; background:none; box-shadow:none; }
.lounge-paths .lounge-path-card { display:flex; flex-direction:column; width:100%; min-width:0; min-height:244px; padding:24px; border:1px solid #dec29a99; border-radius:var(--radius); text-align:center; text-decoration:none; }
.lounge-paths .lounge-path-kicker { color:#edc990; font-size:11px; font-weight:650; letter-spacing:.16em; text-transform:uppercase; }
.lounge-paths h2 { margin:12px 0 10px; font-size:clamp(24px,2.2vw,30px); line-height:1.15; letter-spacing:-.035em; }
.lounge-paths p { margin:0 auto; max-width:34em; color:#f4e8da; font-size:15px; line-height:1.6; }
.lounge-paths .lounge-path-action { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto; padding-top:24px; width:100%; color:inherit; font-size:14px; line-height:1.4; text-align:left; }
.lounge-paths .lounge-path-action > span { color:inherit; font-size:inherit; }
.lounge-paths .lounge-path-arrow { flex:none; width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.8; }
@media(max-width:959px) {
 .lounge-department { min-height:400px; }
 .lounge-paths { grid-template-columns:minmax(0,1fr); }
 .lounge-paths .lounge-path-card { min-height:220px; padding:22px; }
 .lounge-paths h2 { font-size:26px; }
}
@media(max-width:359px) {
 .lounge-department-copy { padding:24px 16px; }
 .lounge-paths .lounge-path-card { padding:20px; }
 .lounge-paths h2 { font-size:24px; }
}
@media(forced-colors:active) {
 .lounge-paths .lounge-path-kicker,.lounge-paths p { color:LinkText; }
}

/* Owner-approved Story, Founder, Knowledge and complete page index — r43. */
.site-header-shell .desktop-nav { grid-template-columns:repeat(6,minmax(0,1fr)); }
.site-header-shell .desktop-nav a[aria-current=page] { background-color:#f2d4a826; border-color:#f4d9b2; color:#ffdfac; }
.editorial-system { --ivory:#fff8ee; --muted:#f4e8da; --bronze2:#edc990; }
.editorial-topline { width:var(--shell); margin:0 auto 12px; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.editorial-topline .breadcrumbs { width:auto; margin:0; padding:0; }
.chapter-links { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:4px 16px; font-size:12px; color:#f4e8da; }
.chapter-links a { display:inline-flex; align-items:center; min-height:32px; text-decoration:none; }
.chapter-links a[aria-current=page] { color:#ffdfac; text-decoration:underline; text-underline-offset:5px; }
.mineral-panel { min-width:0; border:1px solid var(--shell-border); border-radius:24px; background:var(--shell-material); box-shadow:inset 0 1px 0 #fff0d926; color:#fff8ee; }
.editorial-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:14px; width:var(--shell); margin:0 auto; }
.story-pair { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
.editorial-copy { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:28px clamp(22px,3vw,42px); text-align:center; }
.editorial-copy .kicker { margin:0 0 16px; color:#edc990; font-size:11px; letter-spacing:.16em; }
.editorial-copy h1 { margin:0 0 20px; font-size:clamp(36px,3.7vw,54px); line-height:1.08; letter-spacing:-.045em; text-wrap:balance; }
.editorial-copy h2 { margin:0 0 22px; font-size:clamp(25px,2.6vw,36px); line-height:1.15; letter-spacing:-.035em; text-wrap:balance; }
.editorial-copy .content-lede { margin:0 0 22px; font-size:20px; line-height:1.4; color:#fff8ee; }
.editorial-copy p { max-width:56ch; margin:0 0 18px; color:#f4e8da; font-size:16px; line-height:1.75; }
.editorial-copy p:last-child { margin-bottom:0; }
.editorial-disclosure { width:100%; text-align:center; }
.editorial-disclosure summary { display:flex; align-items:center; justify-content:center; gap:12px; min-height:44px; padding:6px; color:#edc990; font-size:14px; cursor:pointer; list-style:none; }
.editorial-disclosure summary::-webkit-details-marker,.principle-card summary::-webkit-details-marker { display:none; }
.editorial-disclosure[open] summary { margin-bottom:12px; }
.disclosure-chevron { width:16px; height:16px; flex:none; fill:none; stroke:currentColor; stroke-width:1.8; transform:rotate(180deg); }
details[open] > summary .disclosure-chevron { transform:none; }
.editorial-copy blockquote { margin:12px 0 22px; color:#ffdfac; font-size:16px; line-height:1.6; }
.editorial-copy .founder-signature { margin:12px 0; color:#edc990; font-size:11px; letter-spacing:.16em; }
.editorial-copy .founder-inquiries { font-size:12px; line-height:1.7; }
.editorial-copy .founder-inquiries a { display:inline-flex; min-height:32px; align-items:center; }
.founder-link { display:flex; flex-direction:column; overflow:hidden; text-decoration:none; }
.founder-link img { width:100%; height:auto; aspect-ratio:1275 / 1233; object-fit:contain; object-position:center; filter:none; }
.founder-link-copy { display:flex; flex-direction:column; gap:3px; padding:15px 22px; }
.founder-link-copy .kicker { margin:0; font-size:9px; color:#edc990; }
.founder-link-copy strong { font-size:clamp(21px,2vw,28px); line-height:1.2; letter-spacing:-.03em; }
.founder-link-copy .integrated-action { margin-top:4px; }
.integrated-action { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; font-size:14px; }
.integrated-action svg,.index-link svg,.world-card svg { flex:none; width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; }
.editorial-values { width:var(--shell); margin:12px auto 0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.principle-card { min-width:0; border:1px solid #dec29a99; border-radius:20px; text-align:center; }
.principle-card summary { min-height:132px; padding:20px; list-style:none; cursor:pointer; }
.principle-card .kicker { display:block; font-size:10px; margin:0 0 10px; color:#edc990; }
.principle-card strong { display:block; font-size:20px; line-height:1.25; letter-spacing:-.03em; }
.principle-card .disclosure-chevron { margin:10px auto 0; }
.principle-card > p { padding:0 20px 20px; margin:0; font-size:14px; line-height:1.6; color:#f4e8da; }
.editorial-actions { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:18px; }
.editorial-actions > a,.related-editorial > a { display:flex; align-items:center; justify-content:center; gap:10px; min-height:48px; padding:10px 16px; border:1px solid #dec29a99; border-radius:13px; font-size:14px; text-decoration:none; text-align:center; }
.editorial-actions svg,.related-editorial svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; }
.story-actions { max-width:760px; margin:12px auto 0; }
.founder-pair { grid-template-areas:'portrait bio'; }
.founder-pair .founder-biography { grid-area:bio; }
.founder-pair .founder-portrait { grid-area:portrait; display:flex; flex-direction:column; justify-content:center; overflow:hidden; max-width:none; margin:0; }
.founder-pair .founder-portrait img { display:block; width:100%; height:auto; aspect-ratio:1275 / 1233; object-fit:contain; border:0; filter:none; }
.founder-pair .founder-portrait figcaption { margin:0; padding:12px; color:#f4e8da; font-size:12px; text-align:center; }
.founder-biography h1 { font-size:clamp(34px,3.2vw,48px); }
.founder-biography .editorial-actions { margin-top:auto; padding-top:18px; border-top:1px solid #dfc29a55; }
.editorial-system + .site-footer-shell { margin-top:16px; }
.knowledge-heading { position:relative; width:var(--shell); margin:12px auto 24px; text-align:center; }
.knowledge-heading .kicker { margin:0 0 10px; color:#edc990; }
.knowledge-heading h1 { margin:0 0 8px; font-size:clamp(38px,4.5vw,64px); line-height:1.1; letter-spacing:-.045em; }
.knowledge-heading > p:last-of-type { margin:0; font-size:18px; color:#f4e8da; }
.knowledge-shortcut { position:absolute; right:0; top:-46px; display:flex; align-items:center; justify-content:center; gap:10px; min-height:40px; padding:7px 16px; border:1px solid #dec29a99; border-radius:999px; text-decoration:none; font-size:12px; }
.knowledge-shortcut svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; }
.guide-filter { width:var(--shell); margin:0 auto 12px; position:relative; }
.guide-filter input,#menu-dialog .index-search input { width:100%; min-height:46px; border:1px solid #dec29a99; border-radius:13px; background:#30251c24; color:#fff8ee; padding:10px 16px 10px 44px; font-size:16px; box-shadow:inset 0 1px 0 #fff2dc26; }
.guide-filter > svg,#menu-dialog .index-search > svg { position:absolute; top:14px; left:15px; width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; pointer-events:none; }
.guide-filter input::placeholder,#menu-dialog input::placeholder { color:#f4e8da; opacity:1; }
.guide-results { width:var(--shell); margin:0 auto; font-size:13px; color:#f4e8da; }
.guide-results:not(:empty) { padding:0 0 12px; }
.visual-guides { grid-auto-rows:1fr; width:var(--shell); margin:0 auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.visual-guide { display:flex; flex-direction:column; min-width:0; border:1px solid #dec29a99; border-radius:20px; overflow:hidden; text-decoration:none; }
.visual-guide img { width:100%; height:clamp(190px,20vw,280px); object-fit:cover; object-position:center 28%; }
.visual-guide-copy { display:flex; flex-direction:column; flex:1; padding:20px; }
.visual-guide .kicker { color:#edc990; font-size:10px; margin:0 0 12px; }
.visual-guide h2 { margin:0 0 10px; font-size:clamp(21px,2.05vw,29px); line-height:1.15; letter-spacing:-.03em; }
.visual-guide p { margin:0 0 20px; font-size:14px; line-height:1.6; color:#f4e8da; }
.visual-guide .integrated-action { margin-top:auto; min-height:32px; color:#ffdfac; }
.related-editorial { width:var(--shell); margin:18px auto 0; text-align:center; }
.related-editorial .kicker { color:#edc990; margin:0 0 8px; font-size:10px; }
.related-editorial > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.related-editorial a { display:flex; align-items:center; justify-content:center; gap:10px; min-height:44px; padding:9px 16px; border:1px solid #dec29a99; border-radius:13px; text-decoration:none; font-size:14px; }
.home-world { width:var(--shell); margin:0 auto 24px; text-align:center; }
.home-world h2 { font-size:28px; letter-spacing:-.035em; margin:0 0 16px; }
.home-world-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.world-card { display:flex; align-items:center; justify-content:space-between; min-width:0; gap:12px; min-height:96px; padding:18px; border:1px solid #dec29a99; border-radius:18px; text-decoration:none; text-align:left; }
.world-card strong { font-size:19px; line-height:1.2; display:block; }
.world-card small { color:#edc990; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.world-card img { flex:none; width:58px; height:auto; aspect-ratio:1275 / 1233; object-fit:contain; border-radius:8px; filter:none; }
#menu-dialog { inset:12px 12px 12px auto; width:min(560px,calc(100vw - 24px)); height:calc(100dvh - 24px); max-height:calc(100dvh - 24px); padding:18px 20px; border:1px solid var(--shell-border); border-radius:24px; background:var(--shell-material); color:#fff8ee; box-shadow:inset 0 1px 0 #fff0d966,0 8px 20px #21180f24; -webkit-backdrop-filter:none; backdrop-filter:none; }
#menu-dialog .drawer-head { position:relative; justify-content:center; padding-bottom:14px; border-color:#dfc29a55; }
.index-brand { display:flex; align-items:center; flex-direction:column; text-decoration:none; gap:3px; }
.index-brand img { width:180px; height:42px; object-fit:contain; }
.index-brand span { font-size:8px; line-height:1.3; letter-spacing:.22em; color:#edc990; }
#menu-dialog .drawer-head button { position:fixed; z-index:3; right:28px; top:26px; width:40px; height:44px; border:1px solid #dec29a99; border-radius:13px; background:#6d5d4f; color:#fff8ee; font-size:28px; }
#menu-dialog h2 { text-align:center; font-size:30px; line-height:1.2; letter-spacing:-.035em; margin:16px 0; }
#menu-dialog .index-search { display:block; position:relative; }
.index-status { font-size:12px; line-height:1.5; margin:0; }
.index-status:not(:empty) { margin:10px 0 0; }
.index-group { padding:16px 0 0; margin-top:16px; border-top:1px solid #dfc29a55; }
.index-group h3 { font-size:10px; font-weight:550; text-transform:uppercase; letter-spacing:.14em; line-height:1.4; color:#edc990; margin:0 0 10px; }
.index-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.index-guides { grid-template-columns:minmax(0,1fr); }
.index-link { display:flex; align-items:center; justify-content:space-between; gap:10px; min-width:0; min-height:44px; padding:10px 12px; border:1px solid #dec29a99; border-radius:13px; font-size:14px; line-height:1.4; text-decoration:none; }
.index-link span { min-width:0; overflow-wrap:anywhere; }
.index-link[aria-current=page] { border-color:#f4d9b2; color:#ffdfac; }
.index-policy .index-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.index-policy .index-link { font-size:12px; justify-content:center; padding-inline:6px; }
#menu-dialog .menu-preferences { padding-top:12px; margin-top:16px; border-color:#dfc29a55; }
#menu-dialog .motion-preference { font-size:13px; min-height:44px; }
#menu-dialog .motion-preference small { font-size:11px; color:#f4e8da; }
@media(max-width:959px) {
 .editorial-topline { gap:4px; }
 .chapter-links { width:100%; gap:4px 14px; font-size:11px; }
 .editorial-pair,.story-pair { grid-template-columns:minmax(0,1fr); }
 .founder-pair { grid-template-areas:'bio' 'portrait'; }
 .editorial-copy { padding:24px; }
 .editorial-copy h1 { font-size:36px; }
 .editorial-copy h2 { font-size:28px; }
 .editorial-copy .content-lede { font-size:18px; }
 .editorial-copy p { font-size:14px; line-height:1.7; }
 .founder-link { max-width:100%; }
 .editorial-values { grid-template-columns:minmax(0,1fr); }
 .principle-card summary { min-height:110px; }
 .visual-guides { grid-template-columns:minmax(0,1fr); }
 .visual-guide img { height:auto; aspect-ratio:16 / 9; }
 .visual-guide h2 { font-size:25px; }
 .knowledge-heading { margin-top:52px; }
 .knowledge-shortcut { top:-46px; }
 .knowledge-heading h1 { font-size:40px; }
 .knowledge-heading > p:last-of-type { font-size:16px; }
 .home-world-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .world-card { padding:14px; min-height:96px; }
 .world-card strong { font-size:17px; }
 .world-card img { display:none; }
}
@media(max-width:599px) {
 #menu-dialog { inset:8px 8px 8px auto; width:calc(100vw - 16px); height:calc(100dvh - 16px); max-height:calc(100dvh - 16px); padding:16px; border-radius:20px; }
 #menu-dialog h2 { font-size:28px; }
 #menu-dialog .drawer-head button { top:18px; right:18px; }
 .index-link { padding:10px; font-size:13px; }
 .index-link svg { width:16px; height:16px; }
 .editorial-actions > a { font-size:12px; padding:10px 8px; }
 .editorial-copy { padding:22px; }
 .founder-biography h1 { font-size:32px; }
 .story-actions { width:var(--shell); }
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
 .mineral-panel,#menu-dialog { background:#594b3f; border-color:#f4dfbf; }
}
@media(forced-colors:active) {
 .mineral-panel,#menu-dialog { background:Canvas; color:CanvasText; border-color:CanvasText; box-shadow:none; }
 .editorial-system p,.editorial-system .kicker,#menu-dialog h3,.index-brand span { color:CanvasText; }
 .guide-filter input,#menu-dialog .index-search input { background:Field; color:FieldText; border-color:ButtonText; }
}

.principle-card { display:flex; flex-direction:column; padding:20px; text-decoration:none; }
.principle-card > p { padding:0; margin:10px 0 0; }
.principle-card .integrated-action { margin-top:auto; justify-content:flex-end; padding-top:8px; }

/* r44: compact, left-anchored translucent Menu; shared page chrome stays unchanged. */
#menu-dialog {
 --menu-panel-width:min(432px,calc(100vw - 24px));
 --menu-panel-height:min(860px,calc(100dvh - 24px));
 inset:12px auto auto 12px;
 width:var(--menu-panel-width); height:var(--menu-panel-height); max-height:calc(100dvh - 24px);
 padding:14px 16px; border-radius:20px;
 background:transparent;
 box-shadow:inset 0 1px 0 #fff0d940,0 12px 32px #21180f2b;
 scrollbar-width:thin; scrollbar-color:#dec29a88 transparent;
}
#menu-dialog::backdrop { background:#24170e26; }
#menu-dialog::before {
 content:""; position:fixed; z-index:-1; pointer-events:none;
 inset:12px auto auto 12px; width:var(--menu-panel-width); height:var(--menu-panel-height);
 border-radius:20px; background:linear-gradient(135deg,#695848d1,#40362de0);
 -webkit-backdrop-filter:blur(7px); backdrop-filter:blur(7px);
}
#menu-dialog::after {
 content:""; position:fixed; z-index:-1; pointer-events:none;
 inset:12px auto auto 12px; width:var(--menu-panel-width); height:var(--menu-panel-height);
 border-radius:20px; background:url('/assets/textures/mineral-grain-r24.webp') center / 384px repeat; opacity:.045;
}
#menu-dialog .drawer-head { padding-bottom:10px; }
#menu-dialog .index-brand { gap:2px; }
#menu-dialog .index-brand img { width:144px; height:34px; }
#menu-dialog .index-brand span { font-size:7px; letter-spacing:.2em; }
#menu-dialog .drawer-head button {
 top:23px; right:auto; left:calc(12px + var(--menu-panel-width) - 58px);
 width:44px; height:44px; border-radius:12px; background:#594b3fe8; font-size:26px;
}
#menu-dialog h2 { font-size:25px; margin:10px 0; }
#menu-dialog .index-search input { min-height:44px; padding-block:9px; background:#211a1552; }
#menu-dialog .index-search > svg { top:13px; }
#menu-dialog .index-group { padding-top:10px; margin-top:10px; }
#menu-dialog .index-group h3 { font-size:9px; margin-bottom:6px; }
#menu-dialog .index-grid { gap:6px; grid-auto-rows:1fr; }
#menu-dialog .index-link {
 min-height:44px; padding:8px 10px; gap:8px; font-size:13px; border-radius:12px;
 background:linear-gradient(150deg,#fff2dc08,transparent),#30251c3d;
}
#menu-dialog .index-link svg { width:17px; height:17px; }
#menu-dialog .index-link[aria-current=page] { background-color:#c5a16a2b; }
#menu-dialog .index-policy .index-link { font-size:12px; padding-inline:6px; }
#menu-dialog .menu-preferences { padding-top:10px; margin-top:10px; }
#menu-dialog .motion-preference { font-size:12px; }
#menu-dialog .motion-preference small { font-size:11px; }
@media(hover:hover) { #menu-dialog .index-link:hover { background-color:#b3927147; } }
#menu-dialog .index-link:active { background-color:#b3927166; }
@media(max-width:599px) {
 #menu-dialog { padding:12px; border-radius:18px; }
 #menu-dialog::before,#menu-dialog::after { border-radius:18px; }
 #menu-dialog h2 { font-size:23px; }
 #menu-dialog .index-link { padding-inline:8px; }
 #menu-dialog .drawer-head button { top:21px; left:calc(12px + var(--menu-panel-width) - 56px); }
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
 #menu-dialog { background:#594b3f; border-color:#f4dfbf; }
 #menu-dialog::before,#menu-dialog::after { display:none; }
 #menu-dialog .index-link { background:#44382e; border-color:#f4dfbf; }
 #menu-dialog .index-search input { background:#44382e; }
}
@media(forced-colors:active) {
 #menu-dialog { background:Canvas; color:CanvasText; border-color:CanvasText; box-shadow:none; }
 #menu-dialog::before,#menu-dialog::after { display:none; }
 #menu-dialog .index-link,#menu-dialog .index-link[aria-current=page],#menu-dialog .drawer-head button { background:Canvas; color:LinkText; border-color:LinkText; }
 #menu-dialog .index-search input { background:Field; color:FieldText; border-color:ButtonText; }
}

/* r45: owner-approved complete Menu in one responsive popup. */
#menu-dialog {
 --menu-panel-width:min(900px,calc(100vw - 24px));
 --menu-panel-height:min(704px,calc(100dvh - 24px));
 width:var(--menu-panel-width); height:var(--menu-panel-height); padding:18px 20px;
}
#menu-dialog #menu-title {
 position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden;
 clip-path:inset(50%); white-space:nowrap; border:0;
}
#menu-dialog .index-brand img { width:204px; height:60px; }
#menu-dialog .index-search { margin-top:10px; }
#menu-dialog #barbor-page-index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; margin-top:16px; }
#menu-dialog .index-column { position:relative; display:flex; flex-direction:column; gap:18px; min-width:0; }
#menu-dialog .index-column + .index-column::before { content:""; position:absolute; left:-18px; top:0; bottom:0; width:1px; background:#dfc29a44; }
#menu-dialog .index-group { margin:0; padding:0; border:0; }
#menu-dialog .index-group h3 { display:flex; align-items:center; gap:10px; font-size:10.5px; line-height:1.2; margin-bottom:10px; }
#menu-dialog .index-group h3::after { content:""; flex:1; height:1px; background:#dfc29a55; }
#menu-dialog .index-grid { grid-template-columns:minmax(0,1fr); grid-auto-rows:1fr; gap:6px; }
#menu-dialog .index-link { min-height:48px; font-size:15px; padding:8px 10px; }
#menu-dialog .index-policy .index-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; }
#menu-dialog .index-policy .index-link { font-size:12px; padding-inline:6px; gap:4px; }
#menu-dialog .index-policy .index-link svg { width:14px; height:14px; }
#menu-dialog .menu-preferences { padding-top:10px; margin-top:12px; }
#menu-dialog .motion-preference small { display:none; }
@media(max-width:767px) {
 #menu-dialog { --menu-panel-width:min(432px,calc(100vw - 24px)); --menu-panel-height:min(812px,calc(100dvh - 24px)); padding:8px 12px; }
 #menu-dialog .drawer-head { padding-bottom:6px; }
 #menu-dialog .index-brand img { width:200px; height:54px; }
 #menu-dialog .index-brand span { font-size:7px; }
 #menu-dialog .index-search { margin-top:4px; }
 #menu-dialog #barbor-page-index { display:block; margin-top:6px; }
 #menu-dialog .index-column { display:contents; }
 #menu-dialog .index-column + .index-column::before { display:none; }
 #menu-dialog .index-group { margin:4px 0 0; }
 #menu-dialog .index-group h3 { font-size:9.5px; line-height:1.2; margin-bottom:4px; }
 #menu-dialog .index-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:3px; }
 #menu-dialog .index-link { min-height:44px; font-size:13px; padding:8px; }
 #menu-dialog .index-guides .index-link:last-child,#menu-dialog .index-help .index-link:last-child { grid-column:1 / -1; }
 #menu-dialog .index-policy .index-grid { gap:4px; }
 #menu-dialog .menu-preferences { margin-top:2px; padding-top:2px; }
}

/* r47: retain the accepted r46 translucent glass; original r45 lettering. */
:root {
 --bronze-glass:linear-gradient(135deg,#695848d1,#40362de0);
 --bronze-control:linear-gradient(150deg,#fff2dc10,transparent 70%),#30251c3d;
 --shell-material:var(--bronze-glass);
 --glass-panel:var(--bronze-glass);
 --glass-nav:var(--bronze-glass);
 --glass-sheet:linear-gradient(135deg,#594b3fe6,#352d26eb);
}
.site-header-shell,.site-footer-shell,.bottom-dock {
 background:var(--bronze-glass);
 -webkit-backdrop-filter:blur(7px); backdrop-filter:blur(7px);
 box-shadow:inset 0 1px 0 #fff0d959,inset 0 -1px 0 #24170e26,0 8px 20px #21180f24;
}
.site-footer-shell { position:relative; isolation:isolate; }
.site-header-shell::before,.site-footer-shell::before {
 content:""; position:absolute; z-index:-1; inset:0; border-radius:inherit; pointer-events:none;
 background:url('/assets/textures/mineral-grain-r24.webp') center / 384px repeat; opacity:.045;
}
:is(.mineral-panel,.pdp-card-layout > .pdp-tile,.discovery-section .discovery-card,.mineral-link,.lounge-paths .lounge-path-card,.ritual-console .ritual-offer,.ritual-console .ritual-shortcut,.shop-studio) {
 background:var(--bronze-glass);
 box-shadow:inset 0 1px 0 #fff2dc40,0 5px 16px #21180f14;
}
:is(.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .footer-links a,.site-footer-shell .footer-top,.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn,.fact-controls button,.gallery-tools button,.gallery-tools a) {
 background:var(--bronze-control); color:#fff8ee;
 box-shadow:inset 0 1px 0 #fff2dc30;
}
:is(.app-dialog,#image-viewer) { background:var(--glass-sheet); }
#menu-dialog { background:transparent; }
@media(hover:hover) {
 :is(.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .footer-links a,.site-footer-shell .footer-top,.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,.fact-controls button):hover { background-color:#b3927147; }
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
 :is(.site-header-shell,.site-footer-shell,.bottom-dock,.mineral-panel,.pdp-card-layout > .pdp-tile,.discovery-section .discovery-card,.mineral-link,.lounge-paths .lounge-path-card,.ritual-console .ritual-offer,.ritual-console .ritual-shortcut,.shop-studio,.app-dialog,#image-viewer) { background:#44382e; -webkit-backdrop-filter:none; backdrop-filter:none; border-color:#f4dfbf; }
 .site-header-shell::before,.site-footer-shell::before { display:none; }
 #menu-dialog { background:#594b3f; }
}
@media(forced-colors:active) {
 :is(.site-header-shell,.site-footer-shell,.bottom-dock,.mineral-panel,.pdp-card-layout > .pdp-tile,.discovery-section .discovery-card,.mineral-link,.lounge-paths .lounge-path-card,.ritual-console .ritual-offer,.ritual-console .ritual-shortcut,.shop-studio,.app-dialog,#image-viewer) { background:Canvas; color:CanvasText; border-color:CanvasText; box-shadow:none; -webkit-backdrop-filter:none; backdrop-filter:none; }
 .site-header-shell::before,.site-footer-shell::before { display:none; }
 :is(.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .footer-links a,.site-footer-shell .footer-top,.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn,.fact-controls button,.gallery-tools button,.gallery-tools a) { background:ButtonFace; color:ButtonText; border-color:ButtonText; box-shadow:none; }
}
/* Owner-confirmed two-column discovery cards at desktop and compact sizes. */
main[data-route="/"] .discovery-region { --discovery-columns:2; }

/* r48: one compact proportion system, retaining approved r47 color and glass. */
:root {
 --refine-shell-radius:16px;
 --refine-card-radius:16px;
 --refine-control-radius:999px;
 --refine-shell-inset:12px;
 --refine-brand-width:180px;
 --refine-brand-height:36px;
 --refine-panel-pad:clamp(16px,2vw,24px);
 --radius:var(--refine-card-radius);
 --header-clearance:148px;
}
.site-header-shell,.site-footer-shell {
 border-radius:var(--refine-shell-radius);
 padding-inline:var(--refine-shell-inset);
}
.site-header-shell { padding-block:6px 8px; }
.site-header-shell .topbar { height:54px; padding-bottom:6px; }
.site-header-shell .top-logo { width:var(--refine-brand-width); height:46px; gap:2px; }
.site-header-shell .brand-mark,.site-footer-shell .footer-brand-mark {
 width:var(--refine-brand-width); height:var(--refine-brand-height);
}
.site-header-shell .desktop-nav { gap:6px; padding-top:6px; }
.site-header-shell .desktop-nav a { padding-block:6px; min-height:44px; }
.site-header-shell .topbar button { padding:6px 14px; }
.site-header-shell .top-actions { gap:6px; }
.site-footer-shell { padding-block:8px 10px; }
.site-footer-shell .footer-masthead { min-height:46px; }
.site-footer-shell .footer-brand { gap:2px; }
.site-footer-shell .footer-slogan { font-size:8px; }
.site-footer-shell .footer-top { top:0; padding:6px 14px; }
.site-footer-shell .edit-heading { margin:0 auto 4px; }
.site-footer-shell .edit-viewport { padding-top:6px; }
.site-footer-shell .edit-group { gap:6px; }
.site-footer-shell .edit-card,.site-footer-shell .edit-card:last-child { padding-block:6px; }
.site-footer-shell .site-footer { margin-top:5px; }
.site-footer-shell .site-footer > .footer-links { gap:5px 6px; margin-bottom:4px; }
.site-footer-shell .footer-links a { padding-inline:12px; }
:is(.site-header-shell .topbar button,.site-header-shell .desktop-nav a,
.site-footer-shell .edit-card,.site-footer-shell .footer-links a,.site-footer-shell .footer-top) {
 border-radius:var(--refine-control-radius);
}
:is(.mineral-panel,.principle-card,.visual-guide,.world-card,.support-form,
.partnership-card,.partnership-request,.wholesale-intro,.product-card,.split-story,
.form-stage,.values-grid > article,.guide-grid > article,.knowledge-grid > article,
.lounge-paths .lounge-path-card,.discovery-section .discovery-card,
.ritual-console .ritual-offer,.ritual-console .product-card,
.pdp-card-layout > .pdp-tile,.bottom-dock) { border-radius:var(--refine-card-radius); }
.editorial-copy { padding:var(--refine-panel-pad); }
.support-form,.values-grid > article,.guide-grid > article,.knowledge-grid > article,
.partnership-card,.partnership-request { padding:var(--refine-panel-pad); }
.lounge-paths .lounge-path-card { padding:var(--refine-panel-pad); min-height:220px; }
.lounge-paths .lounge-path-action { padding-top:18px; }
.world-card { padding:14px; min-height:88px; }
.principle-card summary { padding:16px; min-height:116px; }
.principle-card > p { padding:0 16px 16px; }
main[data-route="/"] .discovery-region { --discovery-gap:12px; --discovery-height:116px; }
.discovery-section .discovery-card { padding:12px; gap:10px; }
:is(.editorial-actions > a,.related-editorial > a,
.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,
.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn,
.pdp-card-layout .pdp-member-offer button,.shop-collection .pdp-member-offer button) {
 border-radius:var(--refine-control-radius);
}
@media(max-width:959px) {
 :root { --refine-brand-width:160px; --refine-brand-height:34px; --header-clearance:88px; }
 .site-header-shell { padding-block:6px; }
 .site-header-shell .topbar { height:52px; padding:0; }
 .site-header-shell .top-logo { height:44px; }
 .site-footer-shell .footer-slogan { font-size:7px; }
 .site-footer-shell .footer-links a { min-height:44px; }
 .lounge-paths .lounge-path-card { min-height:200px; }
}
@media(max-width:599px) {
 :root { --refine-brand-width:124px; --refine-brand-height:30px; --refine-shell-inset:10px; --header-clearance:84px; }
 .site-header-shell .topbar { height:48px; }
 .site-header-shell .topbar button { padding:6px 10px; }
 .site-header-shell .top-actions { gap:0; }
 .site-footer-shell .footer-masthead { min-height:44px; }
 .site-footer-shell .footer-slogan { font-size:6px; }
 .site-footer-shell .footer-top { padding:6px; }
 .site-footer-shell .footer-links a { padding-inline:4px; }
 main[data-route="/"] .discovery-region { --discovery-gap:10px; --discovery-height:180px; }
 .discovery-section .discovery-card { padding:10px 8px; gap:6px; }
 .world-card { padding:12px; }
}

/* r49 — owner reference: 360 pill. Shared action finish; content panels retain their hierarchy. */
:root { --round-action-glass:linear-gradient(155deg,#fff1da0a,#fff1da02),rgba(14,12,10,.32); --round-action-edge:#b59c7a; }
:is(.shop-360,.shop-studio,.ritual-console .ritual-shortcut,.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .edit-card:last-child,.site-footer-shell .footer-links a,.site-footer-shell .footer-top,.bottom-dock a,.bottom-dock button,.editorial-actions > a,.related-editorial > a,.mineral-link:not(.world-card),.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn,.fact-controls button,.gallery-tools button,.gallery-tools a) {
 background:var(--round-action-glass); border:1px solid var(--round-action-edge);
 border-radius:999px; box-shadow:none;
 transition:background-color .18s,border-color .18s;
}
.site-header-shell .top-actions [data-open="search"],.site-footer-shell .footer-top,.bottom-dock [data-open="search"] {
 width:44px; height:44px; min-width:44px; min-height:44px; padding:0; gap:0;
 flex:none; border-radius:50%; align-items:center; justify-content:center;
}
.site-footer-shell .footer-top { display:inline-flex; top:0; }
.site-footer-shell { margin-top:24px; }
.shop-intro { padding-bottom:16px; }
.shop-studio { gap:10px; padding:8px 16px 8px 8px; }
.shop-studio img { width:48px; height:48px; border-radius:50%; }
.shop-studio small { margin-bottom:4px; }
.shop-studio strong { white-space:nowrap; }
.ritual-console .ritual-shortcut-wide { min-height:52px; padding:7px 14px; }
@media(max-width:959px) {
 .bottom-dock { grid-template-columns:repeat(3,minmax(0,1fr)) 44px minmax(0,1fr); gap:4px; align-items:center; }
 .shop-intro { padding-bottom:12px; }
 .shop-studio { gap:8px; padding:8px 12px; }
 .shop-studio img { width:40px; height:40px; }
}
@media(hover:hover) {
:is(.shop-360,.shop-studio,.ritual-console .ritual-shortcut,.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .edit-card:last-child,.site-footer-shell .footer-links a,.site-footer-shell .footer-top,.bottom-dock a,.bottom-dock button,.editorial-actions > a,.related-editorial > a,.mineral-link:not(.world-card),.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn,.fact-controls button,.gallery-tools button,.gallery-tools a):hover { background-color:rgba(14,12,10,.46); border-color:#dfc29a; }
}
:is(.shop-360,.shop-studio,.ritual-console .ritual-shortcut,.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .edit-card:last-child,.site-footer-shell .footer-links a,.site-footer-shell .footer-top,.bottom-dock a,.bottom-dock button,.editorial-actions > a,.related-editorial > a,.mineral-link:not(.world-card),.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn,.fact-controls button,.gallery-tools button,.gallery-tools a):active { background-color:rgba(14,12,10,.54); }
:is(.shop-360,.shop-studio,.ritual-console .ritual-shortcut,.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .edit-card:last-child,.site-footer-shell .footer-links a,.site-footer-shell .footer-top,.bottom-dock a,.bottom-dock button,.editorial-actions > a,.related-editorial > a,.mineral-link:not(.world-card),.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn,.fact-controls button,.gallery-tools button,.gallery-tools a):focus-visible { outline:2px solid var(--focus); outline-offset:3px; }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
:is(.shop-360,.shop-studio,.ritual-console .ritual-shortcut,.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .edit-card:last-child,.site-footer-shell .footer-links a,.site-footer-shell .footer-top,.bottom-dock a,.bottom-dock button,.editorial-actions > a,.related-editorial > a,.mineral-link:not(.world-card),.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn,.fact-controls button,.gallery-tools button,.gallery-tools a) { background:#44382e; border-color:#f4dfbf; }
}
@media(forced-colors:active) {
:is(.shop-360,.shop-studio,.ritual-console .ritual-shortcut,.site-header-shell .topbar button,.site-header-shell .desktop-nav a,.site-footer-shell .edit-card,.site-footer-shell .edit-card:last-child,.site-footer-shell .footer-links a,.site-footer-shell .footer-top,.bottom-dock a,.bottom-dock button,.editorial-actions > a,.related-editorial > a,.mineral-link:not(.world-card),.ritual-console .ritual-offer button,.ritual-console .card-copy .quick,.pdp-card-layout .purchase-controls .btn,.pdp-card-layout .purchase-controls .save-btn,.fact-controls button,.gallery-tools button,.gallery-tools a) { background:ButtonFace; color:ButtonText; border-color:ButtonText; box-shadow:none; }
}

/* r50 — Founder-aligned shortcuts and centered rectangular Knowledge cards. */
:root { --founder-slot-width:calc((var(--shell) - 2 * var(--refine-shell-inset) - 32px) / 6); --shortcut-height:44px; }
.ritual-console .ritual-shortcut { height:var(--shortcut-height); min-height:var(--shortcut-height); padding:4px 8px; gap:1px; }
.ritual-console .ritual-shortcut small { font-size:10px; line-height:1.25; }
.ritual-console .ritual-shortcut strong { font-size:12px; line-height:1.25; }
.knowledge-heading .knowledge-shortcut { height:var(--shortcut-height); min-height:var(--shortcut-height); right:calc(var(--refine-shell-inset) + 1px); }
@media(min-width:960px) {
 .ritual-console .ritual-shortcut-wide { width:var(--founder-slot-width); max-width:none; right:calc((100vw - var(--shell)) / 2 + var(--refine-shell-inset) + 1px); }
 .knowledge-heading .knowledge-shortcut { width:var(--founder-slot-width); }
}
@media(max-width:959px) {
 .knowledge-heading .knowledge-shortcut { width:min(208px,calc((var(--shell) - 12px) / 2)); padding-inline:8px; }
}
main[data-route="/knowledge/"] .visual-guides .visual-guide { border-radius:var(--refine-card-radius); text-align:center; }
.visual-guides .visual-guide img { width:100%; height:auto; aspect-ratio:16 / 10; object-fit:cover; object-position:center; flex:none; }
.visual-guides .visual-guide-copy { align-items:center; padding:clamp(18px,2vw,24px); text-align:center; }
.visual-guides .visual-guide-copy > * { width:100%; }
.visual-guides .visual-guide h2 { min-height:2.3em; display:flex; align-items:center; justify-content:center; text-wrap:balance; }
.visual-guides .visual-guide-copy > p:not(.kicker) { min-height:3.2em; text-wrap:balance; }
.visual-guides .visual-guide .integrated-action { justify-content:center; gap:8px; min-height:44px; }
@media(max-width:959px) { .visual-guides .visual-guide img { aspect-ratio:16 / 9; } }

/* r51 — one restrained lettering relief across the shared site. */
:root {
 --lettering-edge:rgba(0,0,0,.32);
 --lettering-title-edge:rgba(0,0,0,.44);
 --lettering-shadow-soft:0 .5px 0 rgba(0,0,0,.18),0 1px 2px rgba(0,0,0,.14);
 --lettering-shadow-raised:0 1px 0 rgba(0,0,0,.28),0 2px 3px rgba(0,0,0,.22);
}
body {
 -webkit-text-stroke:.2px var(--lettering-edge);
 text-shadow:var(--lettering-shadow-soft);
 paint-order:stroke fill;
}
body :is(h1,h2,h3,h4,h5,h6,.kicker,.discovery-eyebrow,.campaign-year) {
 -webkit-text-stroke:.4px var(--lettering-title-edge);
 text-shadow:var(--lettering-shadow-raised);
}
body :is(button,input,textarea,select,.feature-tabs a,.campaign-cta) {
 -webkit-text-stroke:.18px var(--lettering-edge);
 text-shadow:var(--lettering-shadow-soft);
 paint-order:stroke fill;
}
.campaign-copy {text-shadow:var(--lettering-shadow-soft);}
@media(prefers-contrast:more),(forced-colors:active) {
 body,body * { -webkit-text-stroke:0 !important;text-shadow:none !important; }
}

/* The owner's referenced headings share roles; component geometry stays local. */
:root {
 --lettering-primary:#fff8ee;
 --lettering-secondary:#f4e8da;
 --lettering-accent:#edc990;
 --lettering-page-size:clamp(40px,4.5vw,64px);
 --lettering-section-size:clamp(30px,3.4vw,46px);
 --lettering-label-size:clamp(10px,.85vw,12px);
}
main[data-route] :is(h1,h2,h3,h4,h5,h6) {color:var(--lettering-primary);}
main[data-route] :is(.kicker,.eyebrow,.discovery-eyebrow) {color:var(--lettering-accent);}
main[data-route] :is(.department-form > .section-title,.knowledge-heading) h1 {
 font-size:var(--lettering-page-size);font-weight:700;
 line-height:1.1;letter-spacing:-.045em;
}
main[data-route] :is(.section-title,.next-ritual,.home-world) h2 {
 font-size:var(--lettering-section-size);font-weight:700;
 line-height:1.12;letter-spacing:-.04em;
}
main[data-route] :is(.section-title,.knowledge-heading,.related-editorial) .kicker {
 color:var(--lettering-accent);font-size:var(--lettering-label-size);
 font-weight:650;line-height:1.5;letter-spacing:.16em;
}
main[data-route] :is(.department-form > .section-title,.knowledge-heading) > p:not(.kicker) {
 color:var(--lettering-secondary);font-size:clamp(16px,1.25vw,18px);line-height:1.6;
}
main[data-route] .section-title > p:not(.kicker) {color:var(--lettering-secondary);}
@media(forced-colors:active) {
 main[data-route] :is(h1,h2,h3,h4,h5,h6,.kicker,.eyebrow,.discovery-eyebrow),
 main[data-route] :is(.section-title,.knowledge-heading,.related-editorial) .kicker,
 main[data-route] :is(.department-form > .section-title,.knowledge-heading) > p:not(.kicker),
 main[data-route] .section-title > p:not(.kicker) {color:CanvasText;}
}

/* r52 approved page layouts, now inherited on every entry path. */
/* Six-page visual proposal. Only opt-in pages; r51 shared chrome and functions stay intact. */
main[data-uniformity="r52"] {
 --page-card-gap:16px;
 --page-card-edge:rgba(29,22,16,.28);
 --page-card-shadow:inset 0 1px 0 #fff2dc30,0 5px 16px #21180f14;
 --ivory:#fff8ee; --muted:#f4e8da; --bronze2:#edc990;
}
main[data-uniformity] .page-topline { width:var(--shell); min-height:44px; margin:0 auto 8px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
main[data-uniformity] .page-topline .breadcrumbs { width:auto; margin:0; padding:0; }
main[data-uniformity] .page-topline .knowledge-shortcut { position:static; width:var(--founder-slot-width); height:44px; min-height:44px; margin-right:calc(var(--refine-shell-inset) + 1px); }
main[data-uniformity] .page-topline .shop-studio { width:var(--founder-slot-width); height:44px; min-height:44px; padding:4px 8px; gap:8px; margin-right:calc(var(--refine-shell-inset) + 1px); justify-content:center; }
main[data-uniformity] .shop-studio img { width:32px; height:32px; }
main[data-uniformity] .shop-studio small { font-size:8px; margin-bottom:2px; }
main[data-uniformity] .shop-studio strong { font-size:12px; line-height:1.2; }
main[data-uniformity] .page-heading { width:var(--shell); min-height:148px; margin:0 auto 20px; padding:12px 0 18px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; text-align:center; }
main[data-uniformity] .page-heading .kicker { margin:0; color:var(--lettering-accent); font-size:var(--lettering-label-size); font-weight:650; letter-spacing:.16em; line-height:1.5; }
main[data-uniformity] .page-heading h1 { margin:0; max-width:100%; font-size:clamp(36px,4.1vw,56px); font-weight:700; line-height:1.1; letter-spacing:-.045em; text-wrap:balance; }
main[data-uniformity] .page-heading > :is(p:not(.kicker),h2) { margin:0; max-width:850px; font-size:clamp(16px,1.25vw,18px); font-weight:400; line-height:1.6; letter-spacing:normal; color:var(--lettering-secondary); text-wrap:balance; -webkit-text-stroke:.2px var(--lettering-edge); text-shadow:var(--lettering-shadow-soft); }
main[data-uniformity] :is(.form-stage,.mineral-panel,.visual-guides .visual-guide,.lounge-path-card,.principle-card) { border:1px solid var(--page-card-edge); border-radius:16px; background:var(--bronze-glass); box-shadow:var(--page-card-shadow); }
main[data-uniformity] :is(.visual-guides,.editorial-values,.lounge-paths,.editorial-pair,.shop-grid) { gap:var(--page-card-gap); }
main[data-uniformity] :is(.lounge-paths,.editorial-values,.related-editorial,.story-actions) { width:var(--shell); margin:16px auto 0; padding:0; }
main[data-uniformity] .lounge-paths > article { padding:0; }
main[data-uniformity] :is(.lounge-path-card,.principle-card,.visual-guide-copy) { padding:24px; text-align:center; }
main[data-uniformity] :is(.lounge-path-kicker,.principle-card .kicker,.visual-guide .kicker) { margin:0 0 12px; color:var(--lettering-accent); font-size:11px; font-weight:650; letter-spacing:.16em; line-height:1.5; }
main[data-uniformity] :is(.lounge-path-card h2,.principle-card strong,.visual-guide h2) { display:flex; align-items:center; justify-content:center; min-height:2.3em; margin:0 0 12px; font-size:clamp(22px,2vw,28px); font-weight:700; line-height:1.15; letter-spacing:-.035em; text-wrap:balance; }
main[data-uniformity] :is(.lounge-path-card > p,.principle-card > p,.visual-guide-copy > p:not(.kicker)) { padding:0; margin:0 0 16px; font-size:15px; line-height:1.6; min-height:3.2em; color:var(--lettering-secondary); text-wrap:balance; }
main[data-uniformity] :is(.lounge-path-action,.principle-card .integrated-action,.visual-guide .integrated-action) { justify-content:center; margin-top:auto; padding-top:0; min-height:44px; gap:8px; color:var(--lettering-accent); }
main[data-uniformity] .principle-card { display:flex; flex-direction:column; min-height:244px; }
main[data-uniformity] .lounge-path-card { min-height:244px; }
main[data-uniformity] .department-form { padding:0; background:none; }
main[data-uniformity] .department-form .form-stage { margin:0 auto; background:none; border:0; box-shadow:none; gap:var(--page-card-gap); overflow:visible; }
main[data-uniformity] :is(.beard-portrait,.beard-controls) { border:1px solid var(--page-card-edge); border-radius:16px; box-shadow:var(--page-card-shadow); overflow:hidden; }
main[data-uniformity] .beard-portrait { height:528px; background:#080807; }
main[data-uniformity] .beard-controls { align-self:stretch; display:flex; flex-direction:column; justify-content:center; padding:24px; background:var(--bronze-glass); }
main[data-uniformity] .beard-controls .kicker { color:var(--lettering-accent); }
main[data-uniformity] .beard-controls h3 { font-size:clamp(28px,3vw,40px); }
main[data-uniformity] .beard-controls :is(button,.btn),main[data-uniformity] .form-spatial-controls button { background:var(--round-action-glass); border:1px solid var(--round-action-edge); border-radius:999px; color:var(--lettering-primary); }
main[data-uniformity] .beard-controls button.active { background:#f2e0c2; color:#211c16; }
main[data-uniformity] .next-ritual { width:var(--shell); margin:16px auto 0; padding:24px 0 0; gap:16px; border:0; }
main[data-uniformity] .next-ritual h2 { font-size:clamp(28px,3vw,40px); }
main[data-uniformity] .lounge-department { width:var(--shell); min-height:0; height:420px; margin:0 auto; border:1px solid var(--page-card-edge); border-radius:16px; box-shadow:var(--page-card-shadow); }
main[data-uniformity] .lounge-department-art > * { object-position:center top; }
main[data-uniformity] .lounge-department::after { background:none; }
main[data-uniformity] .editorial-pair { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:'portrait bio'; }
main[data-uniformity] .story-pair .founder-link { grid-area:portrait; }
main[data-uniformity] .story-pair .editorial-copy { grid-area:bio; }
main[data-uniformity] :is(.founder-link,.founder-pair .founder-portrait) { justify-content:flex-start; min-height:528px; }
main[data-uniformity] :is(.founder-link img,.founder-pair .founder-portrait img) { width:100%; height:420px; aspect-ratio:auto; object-fit:contain; }
main[data-uniformity] .founder-link-copy { padding:14px 24px; min-height:106px; align-items:center; justify-content:center; text-align:center; }
main[data-uniformity] .founder-pair .founder-portrait figcaption { min-height:106px; display:flex; align-items:center; justify-content:center; }
main[data-uniformity] .founder-link .integrated-action { justify-content:center; gap:8px; }
main[data-uniformity] .editorial-copy { padding:28px; }
main[data-uniformity] .editorial-copy > p { font-size:16px; line-height:1.75; max-width:48ch; }
main[data-uniformity] .founder-biography .editorial-actions { margin-top:16px; }
main[data-uniformity] .story-actions { max-width:none; }
main[data-uniformity] .shop-collection { padding-top:0; }
main[data-uniformity] .shop-member-note.pdp-member-offer { margin:20px auto 0; }
main[data-uniformity] + .site-footer-shell { margin-top:24px; }
@media(max-width:959px) {
 main[data-uniformity] .page-topline { flex-wrap:wrap; gap:8px; }
 main[data-uniformity] .page-topline .chapter-links { width:100%; justify-content:center; }
 main[data-uniformity] .page-topline :is(.knowledge-shortcut,.shop-studio) { width:min(208px,calc((var(--shell) - 12px)/2)); margin-right:0; }
 main[data-uniformity] .page-heading { min-height:0; padding:20px 0; margin-bottom:12px; }
 main[data-uniformity] .page-heading h1 { font-size:36px; }
 main[data-uniformity] .editorial-pair { grid-template-columns:minmax(0,1fr); grid-template-areas:'portrait' 'bio'; }
 main[data-uniformity] .form-stage { grid-template-columns:minmax(0,1fr); }
 main[data-uniformity] :is(.founder-link,.founder-pair .founder-portrait) { min-height:0; }
 main[data-uniformity] .founder-pair .founder-portrait figcaption { min-height:0; }
 main[data-uniformity] :is(.founder-link img,.founder-pair .founder-portrait img) { height:auto; aspect-ratio:1275/1233; }
 main[data-uniformity] .beard-portrait { height:420px; }
 main[data-uniformity] .lounge-department { height:300px; }
 main[data-uniformity] :is(.lounge-path-card,.principle-card,.visual-guide-copy,.editorial-copy,.beard-controls) { padding:22px; }
 main[data-uniformity] .editorial-copy > p { font-size:15px; }
}
@media(forced-colors:active) {
 main[data-uniformity] :is(.mineral-panel,.visual-guide,.lounge-path-card,.principle-card,.beard-controls) { background:Canvas; border-color:CanvasText; box-shadow:none; }
 main[data-uniformity] .page-heading > :is(p,h1,h2),main[data-uniformity] .page-heading .kicker { color:CanvasText; text-shadow:none; -webkit-text-stroke:0; }
}

/* r53: owner-requested natural, centered contents for the two existing shortcuts. */
main[data-uniformity] .page-topline :is(.knowledge-shortcut,.shop-studio) {
 container-type:inline-size;
 padding:1px 6px;
 gap:6px;
 align-items:center;
 justify-content:center;
 text-align:center;
 flex-shrink:0;
}
main[data-uniformity] .knowledge-shortcut .shortcut-label {
 font-size:clamp(12px,8.2cqi,16px);
 font-weight:600;
 line-height:1.2;
 white-space:nowrap;
}
main[data-uniformity] .knowledge-shortcut > svg {
 width:18px;
 height:18px;
 flex:none;
}
main[data-uniformity] .page-topline .shop-studio > img {
 display:block;
 width:40px;
 height:40px;
 flex:none;
 object-fit:contain;
 object-position:center;
 border-radius:0;
}
main[data-uniformity] .shop-studio > .shortcut-copy {
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 gap:2px;
 min-width:0;
}
main[data-uniformity] .shop-studio small {
 display:flex;
 align-items:center;
 justify-content:center;
 gap:3px;
 margin:0;
 font-size:clamp(8px,4.7cqi,9px);
 line-height:1.1;
 letter-spacing:.06em;
 white-space:nowrap;
}
main[data-uniformity] .shop-studio small svg {
 width:10px;
 height:10px;
 flex:none;
 fill:none;
 stroke:currentColor;
 stroke-width:1.8;
}
main[data-uniformity] .shop-studio strong {
 font-size:clamp(12px,8cqi,16px);
 line-height:1.15;
 white-space:nowrap;
}

/* r54: shared alignment invariants, after the preserved r52/r53 component styles. */
.site-header-shell,.site-footer-shell { width:var(--shell); }
.site-footer-shell .edit-card,.site-footer-shell .edit-card:last-child {
 display:grid;
 grid-template-columns:18px minmax(0,1fr) 18px;
 align-items:center;
 justify-items:center;
 gap:4px;
 padding:6px 8px;
 min-height:44px;
}
.site-footer-shell .edit-card::before { content:''; width:18px; grid-column:1; grid-row:1; }
.site-footer-shell .edit-card > span { grid-column:2; grid-row:1; width:100%; min-width:0; text-align:center; }
.site-footer-shell .edit-card small { display:block; overflow-wrap:normal; text-wrap:balance; }
.site-footer-shell .edit-card > b {
 position:static;
 grid-column:3;
 grid-row:1;
 width:18px;
 margin:0;
 transform:none;
 text-align:center;
 line-height:1;
}
main:is([data-route="/knowledge/"],[data-route="/shop/"]) .page-topline { flex-wrap:nowrap; }
main:is([data-route="/knowledge/"],[data-route="/shop/"]) .page-topline > .breadcrumbs { min-width:0; flex:1 1 auto; flex-wrap:wrap; }
main:is([data-route="/knowledge/"],[data-route="/shop/"]) .page-topline :is(.knowledge-shortcut,.shop-studio) { flex:0 0 auto; margin-left:auto; }
@media(max-width:599px) {
 .site-footer-shell .footer-links a { overflow-wrap:normal; text-wrap:balance; }
}


/* r55: one precomposed product scene; no nested SVG, moving mask or separate light layer. */
.campaign-collection .campaign-art img {
 mask-image:none; -webkit-mask-image:none;
 backface-visibility:hidden; -webkit-backface-visibility:hidden;
}
.campaign-collection .campaign-art::after {
 content:''; position:absolute; inset:0; pointer-events:none;
 background:linear-gradient(90deg,#1c1611,transparent 16%);
}
.campaign-collection .campaign-light { display:none; animation:none!important; }
.campaign-collection:not([hidden]) .campaign-art img { animation-name:collection-scene-camera; will-change:transform; }
@keyframes collection-scene-camera {
 0%,100% { transform:scale(.94) translateX(-.5%); }
 50% { transform:scale(1) translateX(.5%); }
}
.feature-board[data-motion-paused=true] .campaign-collection .campaign-art img { will-change:auto; }
@media(min-width:960px) {
 .campaign-collection .campaign-art { inset:64px 0 0 32%; }
 .campaign-collection .campaign-art img { object-fit:contain; object-position:center bottom; transform-origin:center bottom; }
}
@media(min-width:600px) and (max-width:959px) {
 .campaign-collection .campaign-art { inset:48px 0 auto; height:53%; }
 .campaign-collection .campaign-art img { object-fit:contain; object-position:center; transform-origin:center; }
 .campaign-collection .campaign-art::after { background:linear-gradient(0deg,#1c1611,transparent 16%); }
}
@media(max-width:599px) {
 .campaign-collection .campaign-art::after { background:linear-gradient(0deg,#1c1611,transparent 34%); }
}

/* People — scoped extension of the approved editorial system, r56. */
main[data-route="/founder/"] .people-team { width:var(--shell); margin:var(--page-card-gap,20px) auto 0; }
main[data-route="/founder/"] .people-team > p { max-width:60ch; }
main[data-route="/founder/"] .team-curation { width:100%; max-width:680px; margin-top:4px; padding-top:20px; border-top:1px solid var(--shell-border); text-align:center; }
main[data-route="/founder/"] .team-curation h3 { margin:0 0 10px; font-size:clamp(16px,1.5vw,19px); line-height:1.5; }
main[data-route="/founder/"] .team-curation p { max-width:56ch; margin:0 auto; }
