/** Shopify CDN: Minification failed

Line 1434:0 Unexpected "100%"
Line 1434:35 Unexpected "}"
Line 1438:34 Unexpected "92%"
Line 1438:68 Unexpected "100%"
Line 1438:133 Unexpected "}"
Line 1848:0 Unexpected "50%"
Line 1848:38 Unexpected "}"
Line 1849:40 Unexpected "}"
Line 1856:2 Unexpected "92%"
Line 1857:2 Unexpected "100%"
... and 3 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:announcement-bar (INDEX:0) */
.d-announce{
  position:relative; z-index:60;
  display:flex; align-items:center; justify-content:center;
  padding: 8px 20px; background:#050505;
  border-bottom:1px solid rgba(251,251,248,0.09);
}
.d-announce .d-chips{
  display:flex; align-items:center; gap:14px; flex-wrap:nowrap;
  overflow-x:auto; scrollbar-width:none; max-width:100%;
}
.d-announce .d-chips::-webkit-scrollbar{ display:none; }
.d-announce .d-chip{
  display:inline-flex; align-items:center; gap:8px;
  font-family:'Oswald',sans-serif; font-size:10px; letter-spacing:0.34em;
  text-transform:uppercase; color:rgba(251,251,248,0.55); white-space:nowrap;
}
.d-announce .d-chip.d-live{ color:#fbfbf8; }
.d-announce .d-pulse{
  width:7px; height:7px; border-radius:50%; background:#00d1a7;
  box-shadow:0 0 0 0 rgba(0,209,167,0.6);
  animation: d-pulse 1.8s infinite;
}
@keyframes d-pulse{
  0%{ box-shadow:0 0 0 0 rgba(0,209,167,0.55); }
  70%{ box-shadow:0 0 0 7px rgba(0,209,167,0); }
  100%{ box-shadow:0 0 0 0 rgba(0,209,167,0); }
}
.d-announce .d-sep{
  width:4px; height:4px; border-radius:50%; background:rgba(0,209,167,0.45);
  flex-shrink:0;
}
@media (max-width:900px){
  .d-announce{ padding: 7px 14px; }
  .d-announce .d-chips{ justify-content:flex-start; }
  .d-announce .d-chip{ font-size:9px; letter-spacing:0.28em; }
}
/* END_SECTION:announcement-bar */

/* START_SECTION:rn-directed-cart (INDEX:72) */
.rn-cart-page {
  position: relative; z-index: 3;
  color: #fbfbf8;
  font-family: 'Barlow Condensed', sans-serif;
  --cpg-tint-r: var(--chapter-r, 0);
  --cpg-tint-g: var(--chapter-g, 209);
  --cpg-tint-b: var(--chapter-b, 167);
  --cpg-tint: rgb(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b));
  --cpg-text: rgba(251,251,248,0.72);
  --cpg-text-dim: rgba(251,251,248,0.62);
  --cpg-border: rgba(251,251,248,0.62);
  --cpg-buy: #ffce12;
  --cpg-buy-ink: #0c0a07;
}
.rn-cart-page * { box-sizing: border-box; }

/* Breadcrumb */
.rn-cpg-crumb {
  padding: 96px 40px 0; max-width: 1440px; margin: 0 auto;
  font-family: 'Oswald', sans-serif; font-size: 11px;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--cpg-text-dim);
}
.rn-cpg-crumb a { color: var(--cpg-tint); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.rn-cpg-crumb .sep { margin: 0 10px; color: var(--cpg-text-dim); }

/* Hero */
.rn-cpg-hero {
  position: relative; padding: 40px 40px 20px; max-width: 1440px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 40px;
}
.rn-cpg-eyebrow {
  font-family: 'Oswald', sans-serif; font-size: 12px; letter-spacing: 0.36em;
  text-transform: uppercase; color: var(--cpg-tint); margin-bottom: 10px;
}
.rn-cpg-title {
  font-family: 'Oswald', sans-serif; font-size: clamp(54px, 8vw, 98px);
  font-weight: 700; line-height: 0.92; letter-spacing: 0.02em; text-transform: uppercase;
  margin: 0;
}
.rn-cpg-title em {
  color: var(--cpg-tint); font-weight: 400; font-style: italic;
  font-family: 'Cormorant Garamond', serif; text-transform: none; letter-spacing: -0.005em;
}
.rn-cpg-sub {
  font-family: 'Oswald', sans-serif; font-size: 14px; letter-spacing: 0.18em;
  text-transform: uppercase; color: var(--cpg-text-dim); margin-top: 14px;
}
.rn-cpg-meta {
  text-align: right; font-family: 'Oswald', sans-serif; font-size: 11px;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--cpg-text-dim); line-height: 1.8;
  display: grid; grid-template-columns: auto; gap: 0;
}
.rn-cpg-meta .k { color: var(--cpg-text-dim); }
.rn-cpg-meta .v { color: var(--cpg-tint); font-weight: 600; margin-bottom: 10px; }
.rn-cpg-hero-curve {
  position: absolute; left: 40px; right: 40px; bottom: 0; height: 2px; pointer-events: none;
}
.rn-cpg-hero-curve svg { width: 100%; height: 40px; overflow: visible; display: block; }

/* Stage */
.rn-cpg-stage {
  position: relative; padding: 40px; max-width: 1440px; margin: 0 auto;
  display: grid; grid-template-columns: 1.3fr 0.7fr; gap: 40px;
}

.rn-cpg-items-head {
  display: flex; justify-content: space-between;
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.28em;
  text-transform: uppercase; color: var(--cpg-text-dim);
  padding-bottom: 14px; border-bottom: 1px solid var(--cpg-border);
}
.rn-cpg-items-head .accent { color: var(--cpg-tint); }

/* Item */
.rn-cpg-item {
  position: relative; display: grid; grid-template-columns: 160px 1fr auto; gap: 28px;
  padding: 28px; margin-top: 18px;
  background: linear-gradient(180deg, rgba(251,251,248,0.62), rgba(251,251,248,0.62));
  border: 1px solid rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.14);
  clip-path: polygon(14px 0, 100% 0, 100% calc(100% - 14px), calc(100% - 14px) 100%, 0 100%, 0 14px);
  overflow: hidden;
}
.rn-cpg-item-num {
  position: absolute; left: 2px; top: 6px;
  font-family: 'Oswald', sans-serif; font-size: 150px; font-weight: 700; line-height: 0.9;
  color: rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.055);
  letter-spacing: -0.02em; pointer-events: none; z-index: 0;
}
.rn-cpg-item-img {
  position: relative; width: 160px; height: 200px; z-index: 1;
  background: linear-gradient(135deg, rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.22), rgba(12,10,7,0.6));
  clip-path: polygon(14px 0, 100% 0, 100% calc(100% - 14px), calc(100% - 14px) 100%, 0 100%, 0 14px);
  display: block; text-decoration: none;
}
.rn-cpg-item-img img { width: 100%; height: 100%; object-fit: cover; }
.rn-cpg-item-img::before, .rn-cpg-item-img::after {
  content: ''; position: absolute; width: 12px; height: 12px;
  border: 1px solid var(--cpg-tint); z-index: 2;
}
.rn-cpg-item-img::before { top: 6px; left: 6px; border-right: none; border-bottom: none; }
.rn-cpg-item-img::after  { bottom: 6px; right: 6px; border-left: none; border-top: none; }

.rn-cpg-item-body { min-width: 0; display: flex; flex-direction: column; gap: 6px; position: relative; z-index: 1; }
.rn-cpg-item-chapter {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.28em;
  text-transform: uppercase; color: var(--cpg-tint);
}
.rn-cpg-item-title {
  font-family: 'Oswald', sans-serif; font-size: 26px; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase; line-height: 1.05; margin: 0;
}
.rn-cpg-item-title a { color: #fbfbf8; text-decoration: none; }
.rn-cpg-item-title a:hover { color: var(--cpg-tint); }
.rn-cpg-item-variant {
  font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--cpg-text-dim);
}
.rn-cpg-item-spec {
  display: grid; grid-template-columns: repeat(3, auto); gap: 14px 24px;
  margin-top: 14px; padding: 14px 0;
  border-top: 1px solid var(--cpg-border); border-bottom: 1px solid var(--cpg-border);
}
.rn-cpg-item-spec .k {
  font-family: 'Oswald', sans-serif; font-size: 9px; letter-spacing: 0.24em;
  text-transform: uppercase; color: var(--cpg-text-dim);
}
.rn-cpg-item-spec .v {
  font-family: 'Oswald', sans-serif; font-size: 13px; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase; color: #fbfbf8; margin-top: 3px;
}
.rn-cpg-item-spec .v.a { color: var(--cpg-tint); }

.rn-cpg-item-actions { display: flex; gap: 18px; align-items: center; margin-top: 14px; }
.rn-cpg-qty {
  display: flex; align-items: center; background: rgba(251,251,248,0.62);
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
  border: 1px solid var(--cpg-border);
}
.rn-cpg-qty button {
  background: transparent; border: none; color: var(--cpg-text);
  width: 32px; height: 32px; cursor: pointer; font-size: 16px; font-family: 'Oswald', sans-serif;
}
.rn-cpg-qty button:hover { color: var(--cpg-tint); }
.rn-cpg-qty .val {
  width: 36px; text-align: center; font-family: 'Oswald', sans-serif; font-size: 15px; font-weight: 700;
}
.rn-cpg-remove {
  font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--cpg-text-dim); background: none; border: none; cursor: pointer; padding: 0;
}
.rn-cpg-remove:hover { color: var(--cpg-tint); }

.rn-cpg-item-right {
  display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between;
  position: relative; z-index: 1; text-align: right;
}
.rn-cpg-item-price {
  font-family: 'Oswald', sans-serif; font-size: 28px; font-weight: 700;
  color: var(--cpg-tint); letter-spacing: 0.02em;
}
.rn-cpg-item-compare {
  font-size: 13px; color: var(--cpg-text-dim); text-decoration: line-through;
  letter-spacing: 0.08em; margin-bottom: 4px;
}

.rn-cpg-curve-div {
  height: 24px; margin: 4px 28px; display: flex; align-items: center; justify-content: center;
}
.rn-cpg-curve-div svg { width: 100%; height: 24px; overflow: visible; }

.rn-cpg-note {
  width: 100%; margin-top: 22px; padding: 14px 18px;
  background: rgba(251,251,248,0.62); border: 1px solid var(--cpg-border);
  color: #fbfbf8; font-family: 'Barlow Condensed', sans-serif; font-size: 14px;
  line-height: 1.5; resize: vertical; min-height: 84px;
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
}
.rn-cpg-note:focus {
  outline: none; border-color: var(--cpg-tint);
  background: rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.04);
}
.rn-cpg-note::placeholder { color: var(--cpg-text-dim); }

/* Summary */
.rn-cpg-summary-col { position: sticky; top: 90px; align-self: start; }
.rn-cpg-summary {
  padding: 28px;
  background: linear-gradient(180deg, rgba(251,251,248,0.62), rgba(251,251,248,0.62));
  border: 1px solid rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.22);
  clip-path: polygon(18px 0, 100% 0, 100% calc(100% - 18px), calc(100% - 18px) 100%, 0 100%, 0 18px);
}
.rn-cpg-summary-head {
  display: flex; justify-content: space-between; align-items: baseline;
  padding-bottom: 14px; border-bottom: 1px solid var(--cpg-border); margin-bottom: 18px;
}
.rn-cpg-summary-head h3 {
  font-family: 'Oswald', sans-serif; font-size: 14px; font-weight: 700;
  letter-spacing: 0.26em; text-transform: uppercase; margin: 0;
}
.rn-cpg-summary-head span {
  font-size: 11px; letter-spacing: 0.18em; color: var(--cpg-text-dim); text-transform: uppercase;
}

.rn-cpg-ship {
  padding: 10px 14px; margin-bottom: 16px;
  border-left: 2px solid var(--cpg-tint);
  background: rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.06);
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.14em;
  text-transform: uppercase; color: #fbfbf8; font-weight: 600; line-height: 1.5;
  clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px);
}
.rn-cpg-ship em {
  color: var(--cpg-text-dim); font-style: normal; font-weight: 400;
  display: block; margin-top: 3px; font-size: 10px; letter-spacing: 0.18em;
}

.rn-cpg-totals { display: flex; flex-direction: column; gap: 6px; padding: 0 0 14px; }
.rn-cpg-totals .line {
  display: flex; justify-content: space-between;
  font-family: 'Oswald', sans-serif; font-size: 13px; letter-spacing: 0.14em;
  text-transform: uppercase; color: var(--cpg-text);
}
.rn-cpg-totals .line.small { font-size: 10px; color: var(--cpg-text-dim); }
.rn-cpg-totals .line.grand {
  padding-top: 14px; margin-top: 4px; border-top: 1px solid var(--cpg-border);
}
.rn-cpg-totals .line.grand .l {
  font-family: 'Oswald', sans-serif; font-size: 14px; letter-spacing: 0.24em;
  color: #fbfbf8; font-weight: 700;
}
.rn-cpg-totals .line.grand .v {
  font-family: 'Oswald', sans-serif; font-size: 28px; color: var(--cpg-tint);
  font-weight: 700; letter-spacing: 0.02em;
}
.rn-cpg-totals .line .v.free { color: var(--cpg-tint); font-weight: 700; letter-spacing: 0.2em; }
.rn-cpg-totals .line .v .strike {
  color: var(--cpg-text-dim); text-decoration: line-through; margin-right: 8px; font-weight: 400;
}

.rn-cpg-cta-rail { height: 14px; margin: 2px 0 6px; }
.rn-cpg-cta-rail svg { width: 100%; height: 14px; overflow: visible; display: block; }

.rn-cpg-cta {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  padding: 22px 30px; width: 100%; background: var(--cpg-buy); color: var(--cpg-buy-ink);
  font-family: 'Oswald', sans-serif; font-size: 15px; font-weight: 700;
  letter-spacing: 0.26em; text-transform: uppercase;
  border: none; cursor: pointer;
  transform: skew(-8deg); text-decoration: none;
  transition: filter 0.3s, transform 0.3s, background 0.3s;
}
.rn-cpg-cta > span { display: inline-block; transform: skew(8deg); }
.rn-cpg-cta:hover { filter: brightness(1.1); background: #ffd84a; transform: skew(-8deg) translateY(-2px); }
.rn-cpg-cta.ghost-cta {
  background: transparent; color: var(--cpg-tint);
  border: 1px solid var(--cpg-tint);
}
.rn-cpg-cta.ghost-cta:hover {
  background: rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.1);
}

.rn-cpg-express-divider {
  text-align: center; margin-top: 14px; position: relative;
}
.rn-cpg-express-divider::before {
  content: ''; position: absolute; top: 50%; left: 0; right: 0; height: 1px;
  background: rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.2);
}
.rn-cpg-express-divider span {
  position: relative; background: #0c0a07; padding: 0 12px;
  font-family: 'Oswald', sans-serif; font-size: 10px;
  letter-spacing: 0.22em; text-transform: uppercase; color: var(--cpg-text-dim);
}
.rn-cpg-express { margin-top: 12px; display: flex; flex-direction: column; gap: 8px; }

.rn-cpg-trust {
  display: flex; justify-content: space-between; gap: 8px;
  padding: 14px 0 0; margin-top: 14px; border-top: 1px solid var(--cpg-border);
  font-family: 'Oswald', sans-serif; font-size: 9px; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--cpg-text); text-align: center;
}
.rn-cpg-trust div span {
  color: var(--cpg-tint); font-weight: 600; display: block; font-size: 11px; margin-top: 3px;
}

/* Carry callout. always teal regardless of chapter */
.rn-cpg-carry-section { padding: 0 40px 40px; max-width: 1440px; margin: 0 auto; }
.rn-cpg-carry {
  padding: 22px 28px;
  background: linear-gradient(135deg, rgba(0,209,167,0.08), rgba(0,209,167,0.02));
  border-left: 3px solid #00d1a7;
  display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: center;
  clip-path: polygon(14px 0, 100% 0, 100% calc(100% - 14px), calc(100% - 14px) 100%, 0 100%, 0 14px);
}
.rn-cpg-carry .carry-label {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.32em;
  text-transform: uppercase; color: #00d1a7; margin-bottom: 8px;
}
.rn-cpg-carry .carry-body { font-size: 15px; color: var(--cpg-text); line-height: 1.5; }
.rn-cpg-carry .carry-body b { color: #fbfbf8; font-weight: 600; }
.rn-cpg-carry .carry-link {
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.24em;
  text-transform: uppercase; color: #00d1a7; text-decoration: none; white-space: nowrap;
  padding: 12px 22px; background: rgba(0,209,167,0.08); border: 1px solid #00d1a7;
  display: inline-block; transform: skew(-8deg);
  transition: background 0.2s, transform 0.2s;
}
.rn-cpg-carry .carry-link > span { display: inline-block; transform: skew(8deg); }
.rn-cpg-carry .carry-link:hover {
  background: rgba(0,209,167,0.16); transform: skew(-8deg) translateY(-2px);
}

/* Cross-sell */
.rn-cpg-xsell { padding: 60px 40px; max-width: 1440px; margin: 0 auto; }
.rn-cpg-xsell-head {
  display: flex; justify-content: space-between; align-items: baseline;
  padding-bottom: 18px; border-bottom: 1px solid var(--cpg-border); margin-bottom: 28px;
}
.rn-cpg-xsell-head .title {
  font-family: 'Oswald', sans-serif; font-size: 24px; font-weight: 700;
  letter-spacing: 0.16em; text-transform: uppercase;
}
.rn-cpg-xsell-head .title span { color: var(--cpg-tint); }
.rn-cpg-xsell-head .sub {
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--cpg-text-dim);
}
.rn-cpg-xsell-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.rn-xsc {
  position: relative; cursor: pointer; padding: 14px;
  background: rgba(251,251,248,0.62); border: 1px solid var(--cpg-border);
  transition: border-color 0.2s; display: flex; flex-direction: column; gap: 8px;
  clip-path: polygon(12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%, 0 12px);
  text-decoration: none; color: #fbfbf8;
}
.rn-xsc:hover { border-color: var(--cpg-tint); }
.rn-xsc .img {
  position: relative; height: 240px;
  background: linear-gradient(135deg, rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.2), rgba(12,10,7,0.55));
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
  overflow: hidden;
}
.rn-xsc .img img { width: 100%; height: 100%; object-fit: cover; }
.rn-xsc .img::before, .rn-xsc .img::after {
  content: ''; position: absolute; width: 8px; height: 8px; border: 1px solid var(--cpg-tint);
}
.rn-xsc .img::before { top: 4px; left: 4px; border-right: none; border-bottom: none; }
.rn-xsc .img::after { bottom: 4px; right: 4px; border-left: none; border-top: none; }
.rn-xsc .meta {
  font-family: 'Oswald', sans-serif; font-size: 9px; letter-spacing: 0.24em;
  text-transform: uppercase; color: var(--cpg-tint); margin-top: 4px;
}
.rn-xsc .name {
  font-family: 'Oswald', sans-serif; font-size: 14px; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase; line-height: 1.2;
}
.rn-xsc .foot {
  display: flex; justify-content: space-between; align-items: center; margin-top: 4px;
}
.rn-xsc .price {
  font-family: 'Oswald', sans-serif; font-size: 15px; font-weight: 700;
  color: var(--cpg-tint); letter-spacing: 0.02em;
}
.rn-xsc .add {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--cpg-tint);
  background: rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.05);
  padding: 8px 14px; border: 1px solid var(--cpg-tint);
  transform: skew(-8deg); transition: background 0.2s, color 0.2s, transform 0.2s;
}
.rn-xsc .add > span { display: inline-block; transform: skew(8deg); }
.rn-xsc:hover .add { background: var(--cpg-tint); color: #0c0a07; }

/* Assurance */
.rn-cpg-assure {
  padding: 30px 40px 80px; max-width: 1440px; margin: 0 auto;
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px;
}
.rn-cpg-assure .cell {
  background: rgba(251,251,248,0.62); padding: 22px 24px;
  display: flex; flex-direction: column; gap: 6px;
  border: 1px solid var(--cpg-border);
  clip-path: polygon(12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%, 0 12px);
}
.rn-cpg-assure .cell .k {
  font-family: 'Oswald', sans-serif; font-size: 9px; letter-spacing: 0.28em;
  text-transform: uppercase; color: var(--cpg-text-dim);
}
.rn-cpg-assure .cell .v {
  font-family: 'Oswald', sans-serif; font-size: 16px; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase; color: #fbfbf8;
}
.rn-cpg-assure .cell .v span { color: var(--cpg-tint); }

/* Empty state */
.rn-cpg-empty {
  position: relative; max-width: 960px; margin: 0 auto;
  padding: 100px 40px 160px; text-align: left;
}
.rn-cpg-empty .ghost {
  position: absolute; right: 40px; top: 40px;
  font-family: 'Oswald', sans-serif; font-weight: 700;
  font-size: clamp(220px, 32vw, 420px); line-height: 0.85;
  color: rgba(var(--cpg-tint-r), var(--cpg-tint-g), var(--cpg-tint-b), 0.06);
  letter-spacing: -0.04em; pointer-events: none; user-select: none;
}
.rn-cpg-empty .eyebrow {
  font-family: 'Oswald', sans-serif; font-size: 12px; letter-spacing: 0.36em;
  text-transform: uppercase; color: var(--cpg-tint); margin-bottom: 14px;
}
.rn-cpg-empty .title {
  font-family: 'Oswald', sans-serif; font-size: clamp(44px, 7vw, 84px);
  font-weight: 700; line-height: 1.02; letter-spacing: 0.02em; text-transform: uppercase;
  margin-bottom: 14px;
}
.rn-cpg-empty .title em {
  color: var(--cpg-tint); font-weight: 400; font-style: italic;
  font-family: 'Cormorant Garamond', serif; text-transform: none; letter-spacing: -0.005em;
}
.rn-cpg-empty .body {
  font-size: 15px; letter-spacing: 0.06em; color: var(--cpg-text); max-width: 480px; margin-bottom: 24px;
}
.rn-cpg-empty .ctas { display: flex; gap: 14px; flex-wrap: wrap; max-width: 500px; }

/* Mobile */
@media (max-width: 960px) {
  .rn-cpg-crumb { padding: 88px 20px 0; }
  .rn-cpg-hero { padding: 24px 20px; grid-template-columns: 1fr; gap: 16px; }
  .rn-cpg-meta { text-align: left; }
  .rn-cpg-stage { padding: 24px 20px; grid-template-columns: 1fr; gap: 24px; }
  .rn-cpg-summary-col { position: static; }
  .rn-cpg-item { grid-template-columns: 100px 1fr; gap: 16px; padding: 18px; }
  .rn-cpg-item-img { width: 100px; height: 128px; }
  .rn-cpg-item-num { font-size: 90px; }
  .rn-cpg-item-title { font-size: 18px; }
  .rn-cpg-item-right { grid-column: 2; align-items: flex-start; text-align: left; margin-top: 10px; }
  .rn-cpg-item-spec { grid-template-columns: repeat(2, 1fr); gap: 10px 16px; }
  .rn-cpg-carry-section, .rn-cpg-xsell, .rn-cpg-assure { padding-left: 20px; padding-right: 20px; }
  .rn-cpg-carry { grid-template-columns: 1fr; }
  .rn-cpg-xsell-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
  .rn-cpg-assure { grid-template-columns: repeat(2, 1fr); }
  .rn-cpg-empty { padding: 80px 20px 100px; }
}
/* END_SECTION:rn-directed-cart */

/* START_SECTION:rn-directed-collection (INDEX:74) */
/* =============================================================
   rn-directed-collection. scoped under .rn-col
   Cinematic collection with desktop sticky filter rail + mobile bottom-sheet.
   ============================================================= */
.rn-col {
  position: relative;
  background: var(--bg, #071211);
  color: #fbfbf8;
  font-family: 'Barlow Condensed', sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
.rn-col *, .rn-col *::before, .rn-col *::after { box-sizing: border-box; }

/* --- Disney bleed --- */
.rn-col::before {
  content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: radial-gradient(ellipse 80vw 60vh at 50% 20%, rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.08) 0%, transparent 60%);
}

/* --- Volumetric fog --- */
.rn-col-fog { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.rn-col-fog-layer {
  position: absolute; inset: -10%; opacity: 0.2;
  background:
    radial-gradient(ellipse 50% 30% at 30% 50%, rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.28), transparent 70%),
    radial-gradient(ellipse 40% 35% at 75% 60%, rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.22), transparent 70%);
  filter: blur(60px);
  animation: rn-col-fog-drift 100s ease-in-out infinite alternate;
}
@keyframes rn-col-fog-drift { 0% { transform: translate(0,0); } 100% { transform: translate(-6%, 3%); } }

/* --- Dust --- */
.rn-col-dust { position: absolute; inset: 0; z-index: 1; pointer-events: none; overflow: hidden; }
.rn-col-mote {
  position: absolute; width: 1.4px; height: 1.4px; border-radius: 50%;
  background: rgba(251,251,248,0.5);
  box-shadow: 0 0 3px rgba(251,251,248,0.35), 0 0 8px rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.22);
  animation: rn-col-mote-fall linear infinite; animation-duration: var(--md, 44s);
  will-change: transform, opacity;
}
@keyframes rn-col-mote-fall {
  0% { transform: translate3d(0,-10vh,0); opacity: 0; }
  10% { opacity: var(--mo, 0.6); }
  90% { opacity: var(--mo, 0.6); }
  100% { transform: translate3d(var(--mx, 0), 110vh, 0); opacity: 0; }
}

/* --- Parametric curve --- */
.rn-col-curve { position: absolute; left: 0; right: 0; top: 30vh; width: 100%; height: 100vh; z-index: 0; pointer-events: none; }
.rn-col-curve svg { width: 100%; height: 100%; }

/* ========== HERO ========== */
.rn-col-hero {
  position: relative; z-index: 3;
  padding: 120px 40px 80px;
  max-width: 1440px; margin: 0 auto;
  display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 80px; align-items: center;
  min-height: 80vh;
}
.rn-col-ghost {
  position: absolute; top: 60px; right: 40px; z-index: 0;
  font-family: 'Oswald', sans-serif; font-size: clamp(260px, 32vw, 460px); font-weight: 700;
  color: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b), 0.04);
  line-height: 0.8; letter-spacing: -0.04em; pointer-events: none; user-select: none;
}
.rn-col-hero-text { position: relative; z-index: 2; }
.rn-col-meta {
  font-family: 'Oswald', sans-serif; font-size: 11px; font-weight: 400;
  letter-spacing: 0.28em; text-transform: uppercase;
  color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  margin-bottom: 24px; display: flex; align-items: center; gap: 12px;
}
.rn-col-meta::before { content: ''; width: 40px; height: 1px; background: currentColor; opacity: 0.5; }
.rn-col-title {
  font-family: 'Oswald', sans-serif; font-weight: 700; text-transform: uppercase;
  font-size: clamp(48px, 7.5vw, 112px); line-height: 0.9; letter-spacing: -0.015em;
  margin-bottom: 24px; color: #fbfbf8;
}
.rn-col-tagline {
  font-family: 'Oswald', sans-serif; font-weight: 400; font-size: 17px;
  letter-spacing: 0.02em; color: rgba(251,251,248,0.72); max-width: 520px; line-height: 1.55;
  margin-bottom: 32px;
}
.rn-col-stats { display: flex; gap: 36px; margin-bottom: 40px; flex-wrap: wrap; }
.rn-col-stat-num {
  /* Bone for contrast. chapter tint was unreadable on dark bg (J 2026-04-17) */
  font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 32px;
  color: #fbfbf8; line-height: 1;
}
.rn-col-stat-num .rn-col-stat-accent {
  color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
}
.rn-col-stat-label {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.24em;
  text-transform: uppercase;
  color: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b), 0.72);
  margin-top: 6px;
}

/* Skewed CTA */
.rn-col-cta {
  display: inline-block; text-decoration: none;
  transform: skewX(-4deg);
  border: 1px solid rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  padding: 18px 44px; color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.26em;
  text-transform: uppercase; font-weight: 700; position: relative; overflow: hidden;
  transition: color 0.35s;
  background: transparent; cursor: pointer;
}
.rn-col-cta--sm { padding: 13px 30px; font-size: 10px; }
.rn-col-cta > span { display: inline-block; transform: skewX(4deg); position: relative; z-index: 1; }
.rn-col-cta::before {
  content: ''; position: absolute; inset: 0;
  background: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  transform: translateX(-101%); transition: transform 0.45s cubic-bezier(.2,.7,.3,1); z-index: 0;
}
.rn-col-cta:hover { color: var(--bg, #071211); }
.rn-col-cta:hover::before { transform: translateX(0); }
.rn-col-cta--ghost { border-color: rgba(251,251,248,0.25); color: rgba(251,251,248,0.68); }
.rn-col-cta--ghost:hover { color: var(--bg); }
.rn-col-cta--ghost::before { background: rgba(251,251,248,0.85); }

/* Flagship */
.rn-col-flagship { position: relative; z-index: 3; display: block; text-decoration: none; color: inherit; }
.rn-col-flagship-frame {
  position: relative; aspect-ratio: 3/4; overflow: hidden;
  border: 1px solid rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.3);
  background: rgba(10,10,10,0.8);
}
.rn-col-flagship-frame::before, .rn-col-flagship-frame::after {
  content: ''; position: absolute; width: 36px; height: 36px; z-index: 3;
  border: 1px solid rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
}
.rn-col-flagship-frame::before { top: 10px; left: 10px; border-right: 0; border-bottom: 0; }
.rn-col-flagship-frame::after { bottom: 10px; right: 10px; border-left: 0; border-top: 0; }
.rn-col-flagship-frame img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  filter: drop-shadow(0 20px 50px rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.18));
  transition: transform 0.9s cubic-bezier(.2,.7,.3,1);
}
.rn-col-flagship:hover .rn-col-flagship-frame img { transform: scale(1.03); }
.rn-col-flagship-placeholder {
  width: 100%; height: 100%;
  background:
    linear-gradient(135deg, rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.08), transparent 70%),
    #0f0d09;
}
.rn-col-flagship-label {
  position: absolute; bottom: 0; left: 0; right: 0; z-index: 4;
  padding: 48px 24px 24px;
  /* Readable-panel gradient so text holds against any product image (J 2026-04-17) */
  background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.72) 55%, rgba(0,0,0,0.92) 100%);
  font-family: 'Oswald', sans-serif; letter-spacing: 0.14em; text-transform: uppercase;
}
.rn-col-flagship-label .num {
  color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  font-size: 11px; font-weight: 700; letter-spacing: 0.3em;
  text-shadow: 0 1px 4px rgba(0,0,0,0.6);
}
.rn-col-flagship-label .title {
  font-size: 20px; font-weight: 700; margin-top: 6px; color: #fbfbf8;
  line-height: 1.15; letter-spacing: 0.06em;
  text-shadow: 0 2px 6px rgba(0,0,0,0.7);
}
.rn-col-flagship-label .price {
  font-size: 13px; color: rgba(251,251,248,0.9); margin-top: 6px; letter-spacing: 0.14em;
  text-shadow: 0 1px 3px rgba(0,0,0,0.6);
}

/* ========== SUB-NAV ========== */
.rn-col-subnav {
  position: relative; z-index: 3;
  display: flex; flex-wrap: wrap; gap: 0;
  border-top: 1px solid rgba(251,251,248,0.09);
  border-bottom: 1px solid rgba(251,251,248,0.09);
  max-width: 1440px; margin: 0 auto;
}
.rn-col-subnav a {
  flex: 1; min-width: 180px; text-align: center; padding: 18px 16px;
  font-family: 'Oswald', sans-serif; font-size: 11px; font-weight: 700;
  letter-spacing: 0.22em; text-transform: uppercase; color: rgba(251,251,248,0.68);
  text-decoration: none; border-right: 1px solid rgba(251,251,248,0.09);
  transition: color 0.3s, background 0.3s; position: relative;
}
.rn-col-subnav a:last-child { border-right: 0; }
.rn-col-subnav a.is-active, .rn-col-subnav a:hover, .rn-col-subnav a:focus-visible {
  color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  background: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.04);
  outline: none;
}
.rn-col-subnav a.is-active::before {
  content: ''; position: absolute; bottom: -1px; left: 0; right: 0; height: 1px;
  background: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
}
.rn-col-subnav-count {
  display: block; font-size: 9px; letter-spacing: 0.2em; color: rgba(251,251,248,0.38);
  font-weight: 400; margin-top: 4px;
}

/* ========== CATALOGUE SHELL ========== */
.rn-col-cat {
  position: relative; z-index: 3;
  padding: 80px 32px 80px;
  max-width: 1520px; margin: 0 auto;
}
.rn-col-shell {
  display: grid; grid-template-columns: 260px 1fr; gap: 40px; align-items: start;
}

/* ========== FILTER RAIL (left / bottom-sheet) ========== */
.rn-col-rail {
  position: sticky; top: 90px; align-self: start;
  max-height: calc(100vh - 110px); overflow-y: auto;
  padding-right: 10px;
}
.rn-col-rail-head {
  display: flex; justify-content: space-between; align-items: baseline;
  padding-bottom: 14px; border-bottom: 1px solid rgba(251,251,248,0.1);
  margin-bottom: 18px;
}
.rn-col-rail-title {
  font-family: 'Oswald', sans-serif; font-size: 12px; font-weight: 700;
  letter-spacing: 0.28em; text-transform: uppercase; color: #fbfbf8;
}
.rn-col-rail-close {
  display: none; background: none; border: 0; color: rgba(251,251,248,0.68);
  font-size: 22px; line-height: 1; cursor: pointer; padding: 0 4px;
}
.rn-col-rail-empty {
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.22em;
  text-transform: uppercase; color: rgba(251,251,248,0.38); padding: 12px 0;
}
.rn-col-rail-clear {
  display: inline-block; margin-top: 10px;
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.22em;
  text-transform: uppercase; color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  text-decoration: none; border-bottom: 1px dashed currentColor;
  padding-bottom: 2px;
}
.rn-col-rail-clear:hover { color: #fbfbf8; }
.rn-col-rail-apply-mobile { display: none; margin-top: 18px; }

/* Filter groups (details/summary) */
.rn-col-group { margin-bottom: 14px; border-bottom: 1px solid rgba(251,251,248,0.06); padding-bottom: 10px; }
.rn-col-group:last-of-type { border-bottom: 0; }
.rn-col-group summary {
  list-style: none; cursor: pointer; user-select: none;
  padding: 8px 0;
  font-family: 'Oswald', sans-serif; font-size: 11px; font-weight: 700;
  letter-spacing: 0.24em; text-transform: uppercase;
  color: rgba(251,251,248,0.88);
  display: flex; align-items: center; gap: 8px;
}
.rn-col-group summary::-webkit-details-marker { display: none; }
.rn-col-group-label { flex: 1; }
.rn-col-group-badge {
  font-size: 9px; font-weight: 700; letter-spacing: 0.1em;
  background: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  color: var(--bg, #071211);
  padding: 2px 7px; line-height: 1.4;
}
.rn-col-group-caret {
  width: 8px; height: 8px;
  border-right: 1px solid currentColor; border-bottom: 1px solid currentColor;
  transform: rotate(45deg); margin-top: -2px; transition: transform 0.25s;
}
.rn-col-group[open] .rn-col-group-caret { transform: rotate(-135deg); margin-top: 2px; }
.rn-col-group-body {
  display: flex; flex-direction: column; gap: 2px;
  padding: 6px 0 2px;
  max-height: 260px; overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.55) rgba(251,251,248,0.05);
}
.rn-col-group-body::-webkit-scrollbar { width: 6px; }
.rn-col-group-body::-webkit-scrollbar-track { background: rgba(251,251,248,0.04); }
.rn-col-group-body::-webkit-scrollbar-thumb {
  background: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.55);
  border-radius: 3px;
}

/* Checkboxes */
.rn-col-check {
  display: flex; align-items: center; gap: 10px;
  padding: 7px 0; cursor: pointer;
  font-family: 'Barlow Condensed', sans-serif; font-size: 14px;
  color: rgba(251,251,248,0.72); transition: color 0.2s;
  user-select: none;
}
.rn-col-check:hover { color: #fbfbf8; }
.rn-col-check input { position: absolute; opacity: 0; pointer-events: none; }
.rn-col-check-box {
  width: 14px; height: 14px; flex-shrink: 0;
  border: 1px solid rgba(251,251,248,0.28); position: relative;
  transition: border-color 0.2s, background 0.2s;
}
.rn-col-check input:checked ~ .rn-col-check-box {
  border-color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  background: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
}
.rn-col-check input:checked ~ .rn-col-check-box::after {
  content: ''; position: absolute; left: 4px; top: 1px;
  width: 4px; height: 8px;
  border: solid var(--bg, #071211); border-width: 0 2px 2px 0; transform: rotate(45deg);
}
.rn-col-check input:focus-visible ~ .rn-col-check-box {
  outline: 2px solid rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  outline-offset: 2px;
}
.rn-col-check-label { flex: 1; }
.rn-col-check-count {
  font-family: 'Oswald', sans-serif; font-size: 10px;
  color: rgba(251,251,248,0.38); letter-spacing: 0.1em;
}
.rn-col-check.is-active .rn-col-check-label { color: #fbfbf8; }
.rn-col-check.is-disabled { opacity: 0.35; cursor: not-allowed; }

/* Price inputs */
.rn-col-price-body { padding-top: 10px; }
.rn-col-price-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.rn-col-price-field {
  position: relative;
  border: 1px solid rgba(251,251,248,0.16); padding: 8px 10px 8px 26px;
  display: flex; flex-direction: column; gap: 2px;
  transition: border-color 0.2s;
}
.rn-col-price-field:focus-within { border-color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b)); }
.rn-col-price-lbl {
  font-family: 'Oswald', sans-serif; font-size: 9px; letter-spacing: 0.22em;
  text-transform: uppercase; color: rgba(251,251,248,0.38);
}
.rn-col-price-cur {
  position: absolute; left: 10px; bottom: 8px;
  font-family: 'Oswald', sans-serif; font-size: 12px; color: rgba(251,251,248,0.68);
}
.rn-col-price-field input {
  appearance: none; -webkit-appearance: none;
  background: transparent; border: 0; color: #fbfbf8;
  font-family: 'Oswald', sans-serif; font-size: 13px; letter-spacing: 0.06em;
  padding: 0; width: 100%;
}
.rn-col-price-field input:focus { outline: none; }
.rn-col-price-field input[type="number"]::-webkit-outer-spin-button,
.rn-col-price-field input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.rn-col-price-field input[type="number"] { -moz-appearance: textfield; }
.rn-col-price-hint {
  font-family: 'Oswald', sans-serif; font-size: 9px; letter-spacing: 0.18em;
  text-transform: uppercase; color: rgba(251,251,248,0.38); margin-top: 8px;
}

/* ========== RESULTS ========== */
.rn-col-results { min-width: 0; }
.rn-col-cat-head {
  display: flex; justify-content: space-between; align-items: flex-end;
  border-bottom: 1px solid rgba(251,251,248,0.09);
  padding-bottom: 20px; margin-bottom: 24px;
  flex-wrap: wrap; gap: 20px;
}
.rn-col-cat-title {
  font-family: 'Oswald', sans-serif; font-size: 14px; font-weight: 700;
  letter-spacing: 0.26em; text-transform: uppercase; color: #fbfbf8;
}
.rn-col-cat-title .accent { color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b)); }
.rn-col-cat-actions { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; }
.rn-col-mobile-filter {
  display: none;
  padding: 10px 20px;
  border: 1px solid rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  font-family: 'Oswald', sans-serif; font-size: 10px; font-weight: 700;
  letter-spacing: 0.22em; text-transform: uppercase;
  background: transparent; cursor: pointer;
  transform: skewX(-6deg);
}
.rn-col-mobile-filter > span { display: inline-block; transform: skewX(6deg); }
.rn-col-sort { display: flex; gap: 10px; align-items: center; }
.rn-col-sort-lbl {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.26em;
  text-transform: uppercase; color: rgba(251,251,248,0.38);
}
.rn-col-sort select {
  appearance: none; -webkit-appearance: none;
  background: transparent; border: 1px solid rgba(251,251,248,0.18);
  color: #fbfbf8; font-family: 'Oswald', sans-serif; font-size: 11px;
  letter-spacing: 0.18em; text-transform: uppercase; padding: 10px 36px 10px 14px;
  cursor: pointer;
  background-image: linear-gradient(45deg, transparent 50%, rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b)) 50%),
                    linear-gradient(135deg, rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b)) 50%, transparent 50%);
  background-position: calc(100% - 18px) 50%, calc(100% - 12px) 50%;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  transition: border-color 0.2s;
}
.rn-col-sort select:focus { outline: none; border-color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b)); }
.rn-col-sort select option { background: #121212; color: #fbfbf8; }

/* Active chips */
.rn-col-active-row {
  display: flex; flex-wrap: wrap; gap: 8px;
  margin-bottom: 24px;
}
.rn-col-active-chip {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 7px 12px; text-decoration: none;
  background: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.08);
  border: 1px solid rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.4);
  color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  font-family: 'Oswald', sans-serif; font-size: 10px; font-weight: 700;
  letter-spacing: 0.18em; text-transform: uppercase;
  transition: background 0.2s, color 0.2s;
}
.rn-col-active-chip:hover {
  background: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  color: var(--bg, #071211);
}
.rn-col-active-chip span { font-size: 14px; line-height: 0.8; }

/* Grid */
.rn-col-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px 24px; }
.rn-col-empty {
  grid-column: 1/-1; text-align: center; padding: 80px 20px;
  color: rgba(251,251,248,0.38);
  font-family: 'Oswald', sans-serif; font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase;
}

/* Pagination */
.rn-col-pagination {
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
  gap: 18px; margin-top: 60px;
}
.rn-col-page-label {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.24em;
  text-transform: uppercase; color: rgba(251,251,248,0.38);
}

/* ========== OUTRO ========== */
.rn-col-outro {
  position: relative; z-index: 3;
  padding: 120px 40px; max-width: 1200px; margin: 0 auto;
  text-align: center;
  border-top: 1px solid rgba(251,251,248,0.09);
}
.rn-col-outro-label {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.3em;
  text-transform: uppercase; color: rgba(251,251,248,0.38); margin-bottom: 16px;
}
.rn-col-outro-head {
  font-family: 'Oswald', sans-serif; font-weight: 700; text-transform: uppercase;
  font-size: clamp(32px, 5vw, 56px); line-height: 1; letter-spacing: -0.01em;
  margin-bottom: 28px; color: #fbfbf8;
}
.rn-col-outro-head .amp { color: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b)); font-weight: 400; }

/* ========== BADGE ========== */
.rn-col-badge {
  position: fixed; bottom: 32px; right: 32px; z-index: 40;
  width: 92px; height: 92px; opacity: 0.45;
  animation: none;
  pointer-events: none;
}
.rn-col-badge svg { width: 100%; height: 100%; filter: drop-shadow(0 0 6px rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.4)); }
@keyframes rn-col-badge-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* Drawer backdrop (mobile only) */
.rn-col-drawer-backdrop {
  position: fixed; inset: 0; z-index: 78;
  background: rgba(0,0,0,0.6);
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity 0.3s, visibility 0s linear 0.3s;
  display: none;
}
.rn-col-drawer-backdrop.is-open {
  opacity: 1; visibility: visible; pointer-events: auto;
  transition: opacity 0.3s;
}

/* Styled scrollbars throughout the scope */
.rn-col {
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.55) rgba(251,251,248,0.05);
}
.rn-col ::-webkit-scrollbar { width: 7px; height: 7px; }
.rn-col ::-webkit-scrollbar-track { background: rgba(251,251,248,0.04); }
.rn-col ::-webkit-scrollbar-thumb {
  background: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.55);
  border-radius: 3px;
}
.rn-col ::-webkit-scrollbar-thumb:hover {
  background: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
}

/* ========== TABLET ========== */
@media (max-width: 1100px) {
  .rn-col-shell { grid-template-columns: 220px 1fr; gap: 28px; }
  .rn-col-grid { grid-template-columns: repeat(2, 1fr); gap: 32px 18px; }
  .rn-col-hero { padding: 100px 32px 60px; gap: 48px; }
}

/* ========== MOBILE. bottom-sheet drawer ========== */
@media (max-width: 900px) {
  .rn-col-hero { grid-template-columns: 1fr; padding: 100px 20px 60px; gap: 40px; min-height: auto; }
  .rn-col-ghost { font-size: 220px; top: 80px; right: 20px; }
  .rn-col-subnav a { min-width: 140px; padding: 14px 10px; font-size: 10px; }
  .rn-col-cat { padding: 60px 20px 60px; }
  .rn-col-shell { grid-template-columns: 1fr; gap: 0; }
  .rn-col-grid { grid-template-columns: repeat(2, 1fr); gap: 28px 14px; }
  .rn-col-outro { padding: 80px 20px; }
  .rn-col-badge { width: 56px; height: 56px; bottom: 16px; right: 16px; }

  /* Rail → bottom-sheet */
  .rn-col-rail {
    position: fixed; top: auto; bottom: 0; left: 0; right: 0; z-index: 80;
    max-height: 82vh; width: 100%;
    background: #0b0b0b; border-top: 1px solid rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.4);
    padding: 20px 20px 30px;
    overflow-y: auto;
    transform: translateY(100%);
    transition: transform 0.35s cubic-bezier(.2,.7,.3,1);
    box-shadow: 0 -20px 60px rgba(0,0,0,0.6);
  }
  .rn-col-rail.is-open { transform: translateY(0); }
  .rn-col-rail-close { display: inline-block; }
  .rn-col-rail-apply-mobile { display: block; text-align: center; }
  .rn-col-drawer-backdrop { display: block; }
  .rn-col-mobile-filter { display: inline-flex; }
}

/* ========== REDUCED MOTION ========== */
@media (prefers-reduced-motion: reduce) {
  .rn-col *, .rn-col *::before, .rn-col *::after {
    animation-duration: 0.01s !important;
    transition-duration: 0.01s !important;
  }
  .rn-col-badge { animation: none; }
  .rn-col-fog-layer { animation: none; }
}

.rn-col-grid { position: relative; }
.rn-col-grid-ghost {
  position: absolute; pointer-events: none; z-index: 5;
  top: -40px; right: -20px;
  font-family: 'Oswald', sans-serif; font-weight: 700;
  font-size: clamp(320px, 42vw, 720px);
  line-height: 0.8; letter-spacing: -0.05em;
  color: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b), 0.09);
  mix-blend-mode: screen;
  user-select: none;
}
@media (max-width: 720px) {
  .rn-col-grid-ghost { font-size: clamp(220px, 60vw, 360px); top: -20px; right: -10px; }
}
@media (prefers-reduced-motion: reduce) {
  .rn-col-grid-ghost { opacity: 0.5; }
}

/* J 2026-04-19: filter rail removed across collection pages */
.rn-col .rn-col-rail, .rn-col [data-rn-col-rail] { display: none !important; }
.rn-col .rn-col-grid-wrap, .rn-col .rn-col-main { width: 100% !important; max-width: none !important; margin-left: 0 !important; }
.rn-col .rn-col-layout { grid-template-columns: 1fr !important; }
.rn-col .rn-col-rail-toggle, .rn-col [data-rn-col-rail-toggle] { display: none !important; }
/* END_SECTION:rn-directed-collection */

/* START_SECTION:rn-directed-footer (INDEX:77) */
.rn-footer {
  /* Public = teal green (brand). Account theme overrides to orange via body[data-account]. */
  --chapter-r: 0; --chapter-g: 209; --chapter-b: 167;
  --bg: #0c0a07; --bone: #fbfbf8; --teal: rgb(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167));
  --border: rgba(251,251,248,0.09); --text: rgba(251,251,248,0.7);
  --text-dim: rgba(251,251,248,0.4);
  --amber: rgb(var(--chapter-r),var(--chapter-g),var(--chapter-b));
  --buy-ink: #0c0a07;
  position: relative; z-index: 3;
  background: linear-gradient(180deg, rgba(12,10,7,0) 0%, rgba(8,6,4,0.85) 30%, rgba(6,4,2,1) 100%);
  border-top: 1px solid rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.18);
  padding: 0 40px;
  overflow: hidden;
  color: var(--bone);
  font-family: 'Barlow Condensed', sans-serif;
  line-height: 1.55;
}
.rn-footer * { box-sizing: border-box; }

.ft-divider {
  position: relative; z-index: 3; height: 80px; max-width: 1440px; margin: 0 auto 0;
  padding: 0 0 0 0;
}
.ft-divider svg { width: 100%; height: 100%; display: block; overflow: visible; }

.ft-monogram {
  position: absolute; right: -40px; bottom: -80px; z-index: 0;
  font-family: 'Oswald', sans-serif; font-weight: 700;
  font-size: clamp(360px, 40vw, 560px); line-height: 0.82;
  letter-spacing: -0.04em; color: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.04);
  pointer-events: none; user-select: none;
}

.ft-trust-wrap { position: relative; z-index: 2; max-width: 1440px; margin: 0 auto; padding: 20px 0 32px; }
.ft-trust {
  position: relative; padding: 22px 40px;
  border: 1px solid rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.22);
  background: linear-gradient(90deg, rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.04), transparent);
  display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; align-items: center;
  clip-path: polygon(20px 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 20px);
}
.ft-trust::before, .ft-trust::after {
  content: ''; position: absolute; width: 20px; height: 20px; border: 1px solid var(--amber);
}
.ft-trust::before { top: 14px; left: 14px; border-right: none; border-bottom: none; }
.ft-trust::after { bottom: 14px; right: 14px; border-left: none; border-top: none; }
.ft-trust-item {
  display: flex; align-items: center; gap: 10px;
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.26em;
  text-transform: uppercase; color: var(--text);
  border-right: 1px solid var(--border); padding-right: 20px;
}
.ft-trust-item:last-child { border-right: none; padding-right: 0; }
.ft-trust-item b { color: var(--amber); font-weight: 700; letter-spacing: 0.26em; }
.ft-trust-item .tick {
  width: 16px; height: 16px; flex-shrink: 0; display: inline-flex;
  align-items: center; justify-content: center;
  border: 1px solid var(--amber); color: var(--amber); font-size: 10px;
  clip-path: polygon(3px 0, 100% 0, 100% calc(100% - 3px), calc(100% - 3px) 100%, 0 100%, 0 3px);
}

.ft-reviews {
  position: relative; z-index: 2; max-width: 1440px; margin: 0 auto;
  padding: 18px 0 32px;
  display: flex; align-items: center; justify-content: center; gap: 16px;
  border-bottom: 1px solid var(--border);
}
.ft-stars { display: flex; gap: 2px; }
.ft-stars span { color: var(--amber); font-size: 16px; }
.ft-review-text {
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.24em;
  text-transform: uppercase; color: var(--text);
}
.ft-review-text b { color: var(--bone); font-weight: 700; }
.ft-review-text em {
  font-family: 'Cormorant Garamond', serif; font-style: italic; color: var(--amber);
  text-transform: none; font-size: 13px; letter-spacing: 0;
}

.ft-grid {
  position: relative; z-index: 2; max-width: 1440px; margin: 0 auto;
  padding: 56px 0 48px;
  display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr 1.6fr; gap: 56px;
}

.ft-brand .ft-wordmark {
  font-family: 'Oswald', sans-serif; font-size: 22px; font-weight: 700;
  letter-spacing: 0.32em; text-transform: uppercase; line-height: 1;
  margin-bottom: 18px;
}
.ft-brand .ft-wordmark span { color: var(--amber); }
.ft-brand .ft-tag {
  font-family: 'Cormorant Garamond', serif; font-style: italic;
  font-size: 17px; color: var(--text); line-height: 1.5; max-width: 300px; margin-bottom: 22px;
}
.ft-brand .ft-tag::first-letter { color: var(--amber); }
.ft-brand .ft-addr {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.28em;
  text-transform: uppercase; color: var(--text-dim); line-height: 1.8; margin-bottom: 22px;
}
.ft-brand .ft-addr b { color: var(--bone); font-weight: 600; }
.ft-brand .ft-addr .amber { color: var(--amber); }

.ft-social { display: flex; gap: 10px; }
.ft-social a {
  width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid var(--border); color: var(--text); cursor: pointer; text-decoration: none;
  clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px);
  transition: border-color 0.2s, color 0.2s, background 0.2s;
}
.ft-social a:hover {
  border-color: var(--amber); color: var(--amber);
  background: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.06);
}
.ft-social a svg { width: 16px; height: 16px; }
.ft-social a.ft-pinterest { width: auto; padding: 0 16px; gap: 10px; }
.ft-social a.ft-pinterest .ft-pinterest-label { font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.28em; text-transform: uppercase; }


.ft-col .ft-col-head {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.38em;
  text-transform: uppercase; color: var(--amber); margin-bottom: 18px; padding-bottom: 12px;
  border-bottom: 1px solid rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.22);
  display: flex; align-items: center; gap: 10px;
}
.ft-col .ft-col-head::before { content: ''; width: 14px; height: 1px; background: var(--amber); }
.ft-col ul { list-style: none; display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; }
.ft-col ul a {
  font-family: 'Barlow Condensed', sans-serif; font-size: 14px; letter-spacing: 0.04em;
  color: var(--text); text-decoration: none; cursor: pointer;
  transition: color 0.18s, padding-left 0.22s;
  display: inline-block;
}
.ft-col ul a:hover { color: var(--amber); padding-left: 6px; }
.ft-col ul a::before {
  content: '\203A'; color: var(--amber); opacity: 0; margin-right: 6px;
  transition: opacity 0.18s; display: inline-block;
}
.ft-col ul a:hover::before { opacity: 1; }

.ft-newsletter {
  position: relative; padding: 28px 30px;
  border: 1px solid rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.28);
  background: linear-gradient(135deg, rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.06), rgba(12,10,7,0.4));
  transform: skewX(-3deg);
}
.ft-newsletter-inner { transform: skewX(3deg); }
.ft-newsletter .nl-eyebrow {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.38em;
  text-transform: uppercase; color: var(--amber);
  margin-bottom: 10px; display: flex; align-items: center; gap: 10px;
}
.ft-newsletter .nl-eyebrow::before { content: ''; width: 14px; height: 1px; background: var(--amber); }
.ft-newsletter .nl-title {
  font-family: 'Oswald', sans-serif; font-size: 22px; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase; line-height: 1.12; margin-bottom: 8px;
}
.ft-newsletter .nl-title em {
  font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 400;
  color: var(--amber); text-transform: none; letter-spacing: -0.005em;
}
.ft-newsletter .nl-sub { font-size: 13.5px; color: var(--text); line-height: 1.5; margin-bottom: 18px; }
.ft-newsletter .nl-form { display: flex; gap: 0; align-items: stretch; }
.ft-newsletter .nl-form input {
  flex: 1; padding: 12px 14px; background: rgba(12,10,7,0.75);
  border: 1px solid var(--border); border-right: none; color: var(--bone);
  font-family: 'Barlow Condensed', sans-serif; font-size: 14px; letter-spacing: 0.06em;
  min-width: 0;
}
.ft-newsletter .nl-form input:focus { outline: none; border-color: var(--amber); }
.ft-newsletter .nl-form input::placeholder { color: var(--text-dim); }
.ft-newsletter .nl-form button {
  padding: 12px 24px; background: var(--amber); color: var(--buy-ink); border: none;
  font-family: 'Oswald', sans-serif; font-size: 11px; font-weight: 700;
  letter-spacing: 0.26em; text-transform: uppercase;
  cursor: pointer; position: relative; overflow: hidden;
  transform: skewX(-10deg); transform-origin: center;
  transition: filter 0.2s;
  white-space: nowrap;
}
.ft-newsletter .nl-form button span { display: inline-block; transform: skewX(10deg); position: relative; z-index: 2; }
.ft-newsletter .nl-form button::before {
  content: ''; position: absolute; inset: 0;
  background: var(--bone); transform: translateX(-101%);
  transition: transform 0.32s cubic-bezier(0.2,0.8,0.2,1);
}
.ft-newsletter .nl-form button:hover::before { transform: translateX(0); }
.ft-newsletter .nl-form button:hover { filter: brightness(1.05); }
.ft-newsletter .nl-fine {
  margin-top: 12px; font-family: 'Oswald', sans-serif; font-size: 9px;
  letter-spacing: 0.24em; text-transform: uppercase;
  color: var(--text-dim); line-height: 1.6;
}
.ft-newsletter .nl-fine b { color: var(--amber); font-weight: 700; }
.ft-newsletter .nl-success {
  padding: 16px 18px; border: 1px solid var(--amber); background: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.1);
  color: var(--amber); font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.3em; text-transform: uppercase;
}

.ft-signature {
  position: relative; z-index: 2; max-width: 1440px; margin: 0 auto;
  padding: 22px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
  display: flex; align-items: center; justify-content: center; gap: 18px; flex-wrap: wrap;
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.32em;
  text-transform: uppercase; color: var(--text);
}
.ft-signature b { color: var(--amber); font-weight: 700; }
.ft-signature em {
  font-family: 'Cormorant Garamond', serif; font-style: italic; color: var(--bone);
  text-transform: none; font-size: 14px; letter-spacing: 0.01em;
}
.ft-signature .sig-dot { width: 4px; height: 4px; border-radius: 50%; background: var(--amber); }

.ft-bottom {
  position: relative; z-index: 2; max-width: 1440px; margin: 0 auto;
  padding: 22px 0 34px;
  display: grid; grid-template-columns: 1fr auto 1fr; gap: 30px; align-items: center;
}
.ft-bottom-legal {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.24em;
  text-transform: uppercase; color: var(--text-dim);
  display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: center;
}
.ft-bottom-legal b { color: var(--text); font-weight: 600; }
.ft-bottom-legal a { color: var(--text-dim); text-decoration: none; }
.ft-bottom-legal a:hover { color: var(--amber); }
.ft-bottom-legal .dot { width: 3px; height: 3px; border-radius: 50%; background: rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.5); }

.ft-made-mark {
  display: inline-flex; align-items: center; gap: 10px; padding: 8px 16px;
  border: 1px solid rgba(var(--chapter-r),var(--chapter-g),var(--chapter-b),0.32);
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.32em;
  text-transform: uppercase; color: var(--amber);
}
.ft-made-mark .crown { font-size: 11px; }
.ft-made-mark b { color: var(--bone); font-weight: 700; }

.ft-pay { display: flex; gap: 8px; justify-content: flex-end; align-items: center; flex-wrap: wrap; }
.ft-pay .pay-chip {
  height: 26px; padding: 0 10px; display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid var(--border); background: rgba(251,251,248,0.03);
  font-family: 'Oswald', sans-serif; font-size: 9px; letter-spacing: 0.18em;
  text-transform: uppercase; color: var(--text); min-width: 54px;
}
.ft-pay .pay-chip.shop { color: #a98bff; border-color: rgba(169,139,255,0.4); }
.ft-pay .pay-chip.apple { color: var(--bone); }
.ft-pay .pay-chip.paypal { color: #ffc439; border-color: rgba(255,196,57,0.4); }
.ft-pay .pay-chip.visa { color: #1a1f71; background: #fbfbf8; border-color: #fbfbf8; }
.ft-pay .pay-chip.mc { color: #c8001b; background: #fbfbf8; border-color: #fbfbf8; font-weight: 700; }

@media (max-width: 1120px) {
  .ft-grid { grid-template-columns: 1fr 1fr 1fr; gap: 40px; }
  .ft-brand { grid-column: 1 / -1; }
  .ft-newsletter { grid-column: 1 / -1; }
}
@media (max-width: 720px) {
  .rn-footer { padding: 0 16px; }
  .ft-trust { grid-template-columns: 1fr 1fr; gap: 14px; padding: 20px 18px; }
  .ft-trust-item { border-right: none; padding-right: 0; font-size: 9px; }
  .ft-grid { grid-template-columns: 1fr; gap: 32px; padding: 40px 0 36px; }
  .ft-bottom { grid-template-columns: 1fr; text-align: center; }
  .ft-pay { justify-content: center; }
  .ft-monogram { font-size: 200px; right: -20px; }
  .ft-signature { font-size: 10px; gap: 8px; }
}
/* END_SECTION:rn-directed-footer */

/* START_SECTION:rn-directed-guides (INDEX:80) */
.rn-guides{position:relative;padding:96px 7vw 80px;background:#0a0a0a;color:#fbfbf8;overflow:hidden;}
.rn-guides__bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 40% at 50% 0%, rgba(0,209,167,0.08) 0%, transparent 60%);pointer-events:none;z-index:0;}
.rn-guides__head{position:relative;z-index:1;max-width:960px;margin:0 auto 64px;text-align:center;}
.rn-guides__eyebrow{font-family:'Oswald',sans-serif;font-size:11px;letter-spacing:0.32em;text-transform:uppercase;color:rgba(0,209,167,0.9);margin-bottom:28px;}
.rn-guides__title{font-family:'Oswald',sans-serif;font-size:clamp(40px,6.5vw,88px);font-weight:700;letter-spacing:0.01em;text-transform:uppercase;line-height:0.95;margin:0 0 24px;}
.rn-guides__title em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;text-transform:none;letter-spacing:-0.01em;color:#00d1a7;}
.rn-guides__lede{font-family:'Barlow Condensed',sans-serif;font-size:18px;line-height:1.6;color:rgba(251,251,248,0.75);max-width:620px;margin:0 auto 32px;}
.rn-guides__meta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.rn-guides__chip{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border:1px solid rgba(251,251,248,0.15);font-family:'Oswald',sans-serif;}
.rn-guides__chip--tint{border-color:rgba(0,209,167,0.5);color:#00d1a7;}
.rn-guides__chip-num{font-size:16px;font-weight:700;letter-spacing:0.02em;}
.rn-guides__chip-label{font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:rgba(251,251,248,0.7);}
.rn-guides__chip--tint .rn-guides__chip-label{color:rgba(0,209,167,0.8);}

.rn-guides__grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3, 1fr);gap:28px;max-width:1440px;margin:0 auto;}
.rn-guides__col{position:relative;border:1px solid rgba(251,251,248,0.09);padding:32px 28px;background:rgba(251,251,248,0.015);transition:border-color 0.3s;overflow:hidden;}
.rn-guides__col::before{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:rgb(var(--w-r),var(--w-g),var(--w-b));transform:scaleX(0);transform-origin:left;transition:transform 0.4s ease;}
.rn-guides__col:hover{border-color:rgba(var(--w-r),var(--w-g),var(--w-b),0.4);}
.rn-guides__col:hover::before{transform:scaleX(1);}
.rn-guides__col--wide{grid-column:1 / -1;}
.rn-guides__col-idx{position:absolute;top:18px;right:22px;font-family:'Oswald',sans-serif;font-size:13px;font-weight:700;letter-spacing:0.2em;color:rgba(var(--w-r),var(--w-g),var(--w-b),0.6);}
.rn-guides__col-head{margin-bottom:24px;}
.rn-guides__col-tag{font-family:'Oswald',sans-serif;font-size:10px;letter-spacing:0.28em;text-transform:uppercase;color:rgb(var(--w-r),var(--w-g),var(--w-b));margin-bottom:12px;}
.rn-guides__col-title{font-family:'Oswald',sans-serif;font-size:30px;font-weight:700;letter-spacing:0.01em;text-transform:uppercase;line-height:1;margin:0 0 10px;}
.rn-guides__col-title em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;text-transform:none;letter-spacing:-0.01em;color:rgb(var(--w-r),var(--w-g),var(--w-b));}
.rn-guides__col-lede{font-family:'Barlow Condensed',sans-serif;font-size:15px;line-height:1.5;color:rgba(251,251,248,0.62);margin:0;}
.rn-guides__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border-top:1px solid rgba(251,251,248,0.08);}
.rn-guides__list li{border-bottom:1px solid rgba(251,251,248,0.08);}
.rn-guides__list a{display:grid;grid-template-columns:32px 1fr 24px;gap:14px;align-items:center;padding:14px 0;text-decoration:none;color:#fbfbf8;transition:color 0.2s, padding 0.2s;}
.rn-guides__list a:hover{color:rgb(var(--w-r),var(--w-g),var(--w-b));padding-left:4px;}
.rn-g-ln{font-family:'Oswald',sans-serif;font-size:10px;letter-spacing:0.22em;color:rgba(var(--w-r),var(--w-g),var(--w-b),0.62);}
.rn-g-ti{font-family:'Barlow Condensed',sans-serif;font-size:16px;letter-spacing:0.02em;}
.rn-g-ar{font-family:'Oswald',sans-serif;font-size:16px;color:rgba(251,251,248,0.38);transition:transform 0.2s, color 0.2s;}
.rn-guides__list a:hover .rn-g-ar{color:rgb(var(--w-r),var(--w-g),var(--w-b));transform:translateX(4px);}
.rn-guides__list--two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;}
.rn-guides__list--two-col li{border-bottom:1px solid rgba(251,251,248,0.08);}
.rn-guides__list--two-col li:nth-last-child(2):nth-child(odd){border-bottom:none;}
.rn-guides__list--two-col li:last-child{border-bottom:none;}
.rn-guides__ghost{position:absolute;right:-2vw;bottom:-8vw;z-index:0;font-family:'Oswald',sans-serif;font-size:clamp(320px, 42vw, 720px);font-weight:700;letter-spacing:-0.02em;color:rgba(251,251,248,0.04);line-height:0.8;pointer-events:none;user-select:none;}

@media (max-width:1024px){
  .rn-guides__grid{grid-template-columns:repeat(2, 1fr);}
  .rn-guides__col--wide{grid-column:1 / -1;}
  .rn-guides__list--two-col{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .rn-guides{padding:56px 20px 48px;}
  .rn-guides__grid{grid-template-columns:1fr;gap:20px;}
  .rn-guides__col{padding:24px 20px;}
  .rn-guides__col-title{font-size:24px;}
  .rn-guides__title{font-size:40px;}
  .rn-guides__meta{gap:8px;}
  .rn-guides__chip{padding:8px 12px;}
  .rn-guides__ghost{font-size:40vw;}
}
/* END_SECTION:rn-directed-guides */

/* START_SECTION:rn-directed-header (INDEX:81) */
.d-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;padding:14px 40px;background:#0a0a0a;border-bottom:1px solid rgba(251,251,248,0.06);}
.d-header-left{flex-shrink:0;}
.d-header-center{display:flex;align-items:center;justify-content:center;gap:clamp(18px, 2.2vw, 40px);flex-wrap:nowrap;min-width:0;overflow-x:auto;scrollbar-width:none;}
.d-header-center::-webkit-scrollbar{display:none;}
.d-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.d-header .nav-link{white-space:nowrap;flex-shrink:0;}
.d-header .icon-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(251,251,248,0.12);color:#fbfbf8;cursor:pointer;padding:0;}
.d-header .icon-btn svg{width:18px;height:18px;}
.d-header .icon-btn:hover{border-color:var(--rn-teal,#00d1a7);color:var(--rn-teal,#00d1a7);}
.d-header .pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:transparent;border:1px solid rgba(251,251,248,0.18);color:#fbfbf8;font-family:'Oswald',sans-serif;font-size:11px;letter-spacing:0.28em;text-transform:uppercase;cursor:pointer;}
.d-header .pill.cart{background:rgba(251,251,248,0.02);}
.d-header .pill.account{background:rgba(251,251,248,0.02);}
.rn-header .pill.account{background:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.06);}
@media(max-width:899.98px){.rn-header .pill.account{display:none;}}

.d-header .pill .count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:18px;padding:0 6px;background:#ffb800;color:#0a0a0a;font-size:10px;font-weight:700;}
.d-header .d-hamburger{display:none;}
@media (max-width:960px){
  .d-header{padding:12px 16px;gap:12px;}
  .d-header-center{display:none;}
  .d-header .hide-m{display:none;}
  .d-header .d-hamburger{display:inline-flex;}
}

:root{
  --rn-bg:#0a0a0a; --rn-bone:#fbfbf8; --rn-teal:rgb(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167)); --rn-buy:#ffce12;
  --rn-border:rgba(251,251,248,0.09); --rn-text:rgba(251,251,248,0.72); --rn-text-dim:rgba(251,251,248,0.38);
}
html, body { background:#0a0a0a !important; color:#fbfbf8; font-family:'Barlow Condensed',sans-serif; -webkit-font-smoothing:antialiased; line-height:1.55; }
body { overflow-x:hidden; margin:0; padding:0; }
body::before{ content:''; position:fixed; inset:0; z-index:0; pointer-events:none;
  background: radial-gradient(ellipse 80vw 60vh at 50% 12%, rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.08) 0%, transparent 60%); }
body::after{ content:''; position:fixed; inset:0; z-index:99998; pointer-events:none; opacity:0.04;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

100%{transform:translate(-8%,4%);} }



 8%{opacity:var(--dust-max,0.7);} 92%{opacity:var(--dust-max,0.7);} 100%{transform:translate3d(var(--dust-x,0),110vh,0); opacity:0;} }

html{ scrollbar-width: thin; scrollbar-color: rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.35) rgba(0,0,0,0.2); }
html::-webkit-scrollbar{ width:8px; }
html::-webkit-scrollbar-track{ background:rgba(0,0,0,0.3); }
html::-webkit-scrollbar-thumb{ background:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.35); }

.ghost-mark{ position:fixed; top:12%; right:-4%; z-index:0; pointer-events:none; font-family:'Oswald',sans-serif; font-weight:700; font-size:min(32vw,320px); line-height:.85; letter-spacing:-0.06em; color:#fbfbf8; opacity:.035; text-transform:uppercase; user-select:none; white-space:nowrap;}

/* ===== DESKTOP HEADER ===== */
.rn-header{
  position:sticky; top:0; z-index:55;
  display:grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items:center;
  padding: 16px clamp(16px, 3vw, 40px); border-bottom:1px solid var(--rn-border);
  background: rgba(10,10,10,0.88); backdrop-filter: blur(14px);
}
.rn-header .header-left{ display:flex; align-items:center; gap:16px; }
.rn-header .header-center{ display:flex; gap:clamp(10px, 1.3vw, 24px); justify-content:center; flex-wrap:nowrap; min-width:0; align-items:center; overflow:hidden; }
.rn-header .header-right{ display:flex; gap:14px; justify-content:flex-end; align-items:center; }

.rn-header .brand, .rn-drawer .brand{
  font-family:'Oswald',sans-serif; font-weight:700; font-size:15px; letter-spacing:0.38em; color:var(--rn-bone);
  text-decoration:none; white-space:nowrap;
}
.rn-header .brand span, .rn-drawer .brand span{ color:var(--rn-teal); }

.rn-header .nav-link{
  font-family:'Oswald',sans-serif; font-size:10px; letter-spacing:0.22em; text-transform:uppercase;
  color:var(--rn-text); text-decoration:none; cursor:pointer; padding:6px 2px; border-bottom:1px solid transparent;
  transition: color 0.2s, border-color 0.2s;
 white-space:nowrap; flex-shrink:0;}
.rn-header .nav-link:hover{ color:var(--rn-bone); border-bottom-color: rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.4); }
.rn-header .nav-link.current{ color:var(--rn-teal); border-bottom-color:var(--rn-teal); }

.rn-header .pill{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding: 9px 16px; transform: skew(-9deg);
  background:transparent; border:1px solid var(--rn-border); color:var(--rn-bone); cursor:pointer; text-decoration:none;
  font-family:'Oswald',sans-serif; font-size:10px; letter-spacing:0.28em; text-transform:uppercase;
  transition: border-color 0.2s, background 0.2s;
}
.rn-header .pill > *{ transform: skew(9deg); }
.rn-header .pill:hover{ border-color:var(--rn-teal); background:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.06); }
.rn-header .pill.cart .count{
  display:inline-flex; align-items:center; justify-content:center; min-width:20px; padding: 2px 6px;
  background:var(--rn-buy); color:#000; font-weight:700; font-size:10px; letter-spacing:0.06em;
}

.rn-header .icon-btn{
  display:inline-flex; align-items:center; justify-content:center;
  width:38px; height:34px; transform: skew(-9deg);
  background:transparent; border:1px solid var(--rn-border); color:var(--rn-bone); cursor:pointer; text-decoration:none;
  transition: border-color 0.2s, background 0.2s;
}
.rn-header .icon-btn svg{ width:16px; height:16px; transform: skew(9deg); }
.rn-header .icon-btn:hover{ border-color:var(--rn-teal); background:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.06); }
.rn-header .hamburger{ display:none; }

.search-strip{
  display:none;
  padding: 14px 40px; border-bottom:1px solid var(--rn-border); background:#0d0d0d;
}
.search-strip.open{ display:flex; align-items:center; gap:12px; }
.search-strip input{
  flex:1; background:transparent; border:none; outline:none;
  font-family:'Barlow Condensed',sans-serif; font-size:18px; color:var(--rn-bone); letter-spacing:0.04em;
}
.search-strip .hint{ font-family:'Oswald',sans-serif; font-size:10px; letter-spacing:0.28em; color:var(--rn-text-dim); text-transform:uppercase; }

/* ===== SUB-NAV (collection pages) ===== */
.rn-subnav{
  position:sticky; top:71px; z-index:50;
  display:flex; align-items:center; gap:22px;
  padding: 12px 40px;
  background: linear-gradient(180deg, #0c0c0c 0%, #080808 100%);
  border-bottom:1px solid var(--rn-border);
  backdrop-filter: blur(12px);
  animation: rn-sub-in 0.6s cubic-bezier(0.2,0.7,0.2,1) both;
}
@keyframes rn-sub-in {
  from { opacity:0; transform:translateY(-3px); }
  to   { opacity:1; transform:translateY(0); }
}

/* Parent. cinematic cue-card style */
.rn-subnav .subnav-parent{
  flex-shrink:0; display:inline-flex; align-items:baseline; gap:10px;
  color:var(--rn-teal); text-decoration:none;
  font-family:'Oswald',sans-serif; font-size:10px; letter-spacing:0.32em; text-transform:uppercase;
  position:relative; padding:4px 2px;
  transition: letter-spacing 0.35s cubic-bezier(0.2,0.7,0.2,1);
}
.rn-subnav .subnav-parent .sp-cue{
  font-family:'JetBrains Mono', ui-monospace, monospace;
  font-size:9px; letter-spacing:0.18em; color:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.55);
  font-weight:400;
}
.rn-subnav .subnav-parent:hover{ letter-spacing:0.4em; }
.rn-subnav .subnav-parent:hover .sp-cue{ color:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.85); }

/* Static divider (no pulse) */
.rn-subnav .subnav-div{
  width:1px; height:14px; flex-shrink:0; opacity:0.55;
  background: linear-gradient(180deg, transparent, var(--rn-teal) 50%, transparent);
}

/* Children row */
.rn-subnav .subnav-links{
  display:flex; align-items:center; gap:30px; flex:1; min-width:0;
  overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:thin;
  scrollbar-color: rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.35) transparent;
  scroll-snap-type:x proximity;
}
.rn-subnav .subnav-links::-webkit-scrollbar{ height:2px; }
.rn-subnav .subnav-links::-webkit-scrollbar-thumb{ background:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.35); }
.rn-subnav .subnav-links::-webkit-scrollbar-track{ background:transparent; }

/* Sublink: plain text + bracket frame on hover/current */
.rn-subnav .sublink{
  position:relative; color:var(--rn-text-dim); text-decoration:none; white-space:nowrap;
  font-family:'Oswald',sans-serif; font-size:10px; letter-spacing:0.3em; text-transform:uppercase;
  flex-shrink:0; scroll-snap-align:start; padding:6px 2px;
  transition: color 0.3s ease, transform 0.35s cubic-bezier(0.2,0.7,0.2,1);
  opacity:0; transform:translateY(6px);
  animation: rn-chip-in 0.55s cubic-bezier(0.2,0.7,0.2,1) forwards;
  animation-delay: calc(120ms + var(--i, 0) * 55ms);
}
@keyframes rn-chip-in { to { opacity:1; transform:translateY(0); } }

/* Bracket corners. drawn in on hover/current, not pulsing */
.rn-subnav .sublink::before,
.rn-subnav .sublink::after{
  content:""; position:absolute; width:6px; height:6px;
  border:1px solid var(--rn-teal); opacity:0;
  transition: opacity 0.3s ease, transform 0.35s cubic-bezier(0.2,0.7,0.2,1);
  pointer-events:none;
}
.rn-subnav .sublink::before{
  top:0; left:-4px; border-right:none; border-bottom:none;
  transform: translate(3px, 3px);
}
.rn-subnav .sublink::after{
  bottom:0; right:-4px; border-left:none; border-top:none;
  transform: translate(-3px, -3px);
}
.rn-subnav .sublink:hover,
.rn-subnav .sublink.current{ color:var(--rn-bone); }
.rn-subnav .sublink:hover::before,
.rn-subnav .sublink:hover::after,
.rn-subnav .sublink.current::before,
.rn-subnav .sublink.current::after{
  opacity:1; transform: translate(0,0);
}

/* Shop All. skewed parallelogram, amber-ish teal outline, arrow extends */
.rn-subnav .sublink.shop-all{
  color:var(--rn-teal);
  display:inline-flex; align-items:center; gap:10px;
  padding:6px 14px; margin-left:4px;
  border:1px solid rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.4);
  background: rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.04);
  transform: skewX(-9deg);
  opacity:0; translate: 0 6px;
  animation: rn-chip-in 0.55s cubic-bezier(0.2,0.7,0.2,1) forwards;
  animation-delay: 400ms;
  transition: border-color 0.3s ease, background 0.3s ease, color 0.3s ease;
}
.rn-subnav .sublink.shop-all > *{ transform: skewX(9deg); }
.rn-subnav .sublink.shop-all:hover{
  border-color: var(--rn-teal);
  background: rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.12);
  color: var(--rn-bone);
}
/* kill the bracket treatment on shop-all so it doesn't double up */
.rn-subnav .sublink.shop-all::before,
.rn-subnav .sublink.shop-all::after{ display:none; }

.rn-subnav .sublink.shop-all .sa-track{
  position:relative; display:inline-flex; align-items:center;
  width:14px; height:12px;
  transition: width 0.4s cubic-bezier(0.2,0.7,0.2,1);
}
.rn-subnav .sublink.shop-all .sa-shaft{
  position:absolute; left:0; top:50%; height:1px; width:0;
  background:currentColor; transform:translateY(-50%);
  transition: width 0.4s cubic-bezier(0.2,0.7,0.2,1);
}
.rn-subnav .sublink.shop-all .sa-head{
  position:absolute; right:0; top:50%; transform:translateY(-50%);
  font-size:14px; line-height:1; color:currentColor;
  transition: transform 0.4s cubic-bezier(0.2,0.7,0.2,1);
}
.rn-subnav .sublink.shop-all:hover .sa-track{ width:30px; }
.rn-subnav .sublink.shop-all:hover .sa-shaft{ width:26px; }
.rn-subnav .sublink.shop-all:hover .sa-head{ transform: translateY(-50%) translateX(2px); }

@media (max-width: 900px){
  .rn-subnav{ padding: 10px 16px; gap:14px; }
  .rn-subnav .subnav-parent .sp-cue{ display:none; }
  .rn-subnav .subnav-links{ gap:22px; }
  .rn-subnav .sublink.shop-all{ padding:5px 11px; }
}
@media (prefers-reduced-motion: reduce){
  .rn-subnav, .rn-subnav .sublink, .rn-subnav .sublink.shop-all{
    animation:none; opacity:1; transform:none; translate:0 0;
  }
}

/* ===== V1 SLAB DRAWER. full-screen, flat list of main headings ===== */
.rn-drawer{
  position:fixed; inset:0; z-index:200; background:#0a0a0a;
  display:flex; flex-direction:column;
  opacity:0; visibility:hidden; pointer-events:none;
  transform:translateY(8px);
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0.3s;
  overflow:hidden;
}
.rn-drawer.open{
  opacity:1 !important; visibility:visible !important; pointer-events:auto !important;
  transform:translateY(0) !important;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0s;
}
body.rn-lock{ overflow:hidden; }

.rn-drawer .drawer-fog{ position:absolute; inset:0; pointer-events:none; z-index:1;
  background: radial-gradient(ellipse 60% 40% at 30% 10%, rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.07), transparent 70%),
              radial-gradient(ellipse 50% 30% at 70% 90%, rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.05), transparent 70%);
  animation: d-fog 22s ease-in-out infinite alternate;
}
@keyframes d-fog{ 0%{transform:translate3d(0,0,0);} 100%{transform:translate3d(-5%,3%,0);} }
.rn-drawer .drawer-grain{ position:absolute; inset:0; pointer-events:none; z-index:2; opacity:0.035; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.rn-drawer .drawer-ghost{ position:absolute; bottom:120px; right:-32px; font-family:'Oswald',sans-serif; font-weight:700; font-size:min(60vw,260px); line-height:.85; letter-spacing:-.04em; color:rgba(251,251,248,0.035); pointer-events:none; z-index:1; text-transform:uppercase; writing-mode:vertical-rl; transform:rotate(180deg); user-select:none; }

.rn-drawer .drawer-head{
  position:relative; z-index:3; flex-shrink:0;
  display:flex; align-items:center; justify-content:space-between;
  padding: 22px 20px 14px; border-bottom:1px solid #141414;
  background: rgba(10,10,10,0.6);
}
.rn-drawer .drawer-title{
  font-family:'Oswald',sans-serif; font-weight:700; font-size:13px;
  letter-spacing:0.34em; color:var(--rn-bone); text-transform:uppercase;
}
.rn-drawer .drawer-close{
  width:40px; height:36px; background:transparent; border:1px solid var(--rn-border); color:var(--rn-bone); cursor:pointer;
  display:inline-flex; align-items:center; justify-content:center;
  transition: border-color 0.2s, background 0.2s;
}
.rn-drawer .drawer-close:hover{ border-color:var(--rn-teal); background:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.06); }
.rn-drawer .drawer-close svg{ width:20px; height:20px; }

.rn-drawer .drawer-search{
  position:relative; z-index:3; flex-shrink:0;
  display:flex; align-items:center; gap:10px;
  padding: 14px 18px 8px;
}
.rn-drawer .drawer-search svg{ width:16px; height:16px; color:var(--rn-text-dim); flex-shrink:0; }
.rn-drawer .drawer-search input{
  flex:1; background:#141414; border:1px solid #222;
  padding:12px 14px; color:var(--rn-bone);
  font-family:'Barlow Condensed',sans-serif; font-size:14px; letter-spacing:0.04em; outline:none;
}
.rn-drawer .drawer-search input::placeholder{ color:#555; }

.rn-drawer .drawer-nav{
  position:relative; z-index:3; flex:1; overflow-y:auto;
  padding: 8px 20px 20px;
}
.rn-drawer .drawer-nav::-webkit-scrollbar{ width:2px; }
.rn-drawer .drawer-nav::-webkit-scrollbar-thumb{ background:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.3); }

.rn-drawer .slab-item{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 0; border-bottom:1px solid #141414;
  text-decoration:none; color:var(--rn-bone);
  font-family:'Oswald',sans-serif; font-size:30px; letter-spacing:-0.3px;
  text-transform:uppercase; font-weight:500;
  opacity:1 !important; visibility:visible !important;
}
.rn-drawer .slab-item .slab-row{ display:inline-flex; align-items:baseline; gap:10px; }
.rn-drawer .slab-item .slab-num{
  font-family:'Oswald',sans-serif; font-size:10px; letter-spacing:2px;
  color:var(--rn-teal); opacity:0.85; font-weight:500;
}
.rn-drawer .slab-item .slab-chev{
  font-size:20px; line-height:1;
  color:rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.55);
  transition: transform 0.3s cubic-bezier(0.2,0.7,0.2,1), color 0.2s;
}
.rn-drawer .slab-item:hover,
.rn-drawer .slab-item.current{ color:var(--rn-teal); }
.rn-drawer .slab-item:hover .slab-chev,
.rn-drawer .slab-item.current .slab-chev{ color:var(--rn-teal); transform: translateX(4px); }

/* Stagger-in when drawer opens */
.rn-drawer.open .slab-item{
  animation: rn-slab-in 0.5s cubic-bezier(0.2,0.7,0.2,1) both;
  animation-delay: calc(120ms + var(--i, 0) * 55ms);
}
@keyframes rn-slab-in {
  from { opacity:0; transform:translateX(-18px); }
  to   { opacity:1; transform:translateX(0); }
}
@media (prefers-reduced-motion: reduce){
  .rn-drawer, .rn-drawer.open, .rn-drawer .slab-item,
  .rn-drawer .drawer-fog{ animation:none !important; transition:opacity 0.2s linear !important; transform:none !important; }
}

.rn-drawer .drawer-foot{
  position:relative; z-index:3; flex-shrink:0;
  padding:14px 18px 26px; border-top:1px solid #141414; background:#060606;
}
.rn-drawer .foot-utility{ display:flex; gap:10px; margin-bottom:14px; }
.rn-drawer .util{
  flex:1; display:flex; align-items:center; gap:8px;
  background:#141414; padding:11px 12px;
  font-family:'Oswald',sans-serif; font-size:11px; letter-spacing:0.28em;
  text-transform:uppercase; color:var(--rn-bone); text-decoration:none;
}
.rn-drawer .util svg{ width:15px; height:15px; }
.rn-drawer .util-count{
  margin-left:auto; background:var(--rn-buy); color:#000;
  font-size:10px; padding:1px 6px; font-weight:700;
}
.rn-drawer .foot-fine{
  display:flex; flex-wrap:wrap; gap:14px;
  font-family:'Oswald',sans-serif; font-size:10px; letter-spacing:0.28em;
  text-transform:uppercase; color:#555;
}
.rn-drawer .foot-fine a{ color:#555; text-decoration:none; }
.rn-drawer .foot-fine a:hover{ color:var(--rn-bone); }

/* ===== MOBILE BREAKPOINT ===== */
@media (max-width: 900px){
  .rn-header .header-center{ display:none; }
  .rn-header{ grid-template-columns: 1fr auto; padding: 14px 18px; gap:10px; }
  .rn-header .hamburger{ display:inline-flex; }
  .rn-header .icon-btn.hide-m{ display:none; }
  .rn-header .pill.cart{ padding:8px 12px; min-height:40px; }
  .rn-header .pill.cart span:first-child{ display:none; }  /* hide 'Cart' text on mobile, keep count */
  .rn-header .pill.cart::before{ content:''; display:inline-block; width:20px; height:20px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fbfbf8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6h15l-1.5 9h-12z'/%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3Cpath d='M6 6L4 3H1'/%3E%3C/svg%3E");background-size:contain; background-repeat:no-repeat; margin-right:6px; vertical-align:middle; }
  .rn-subnav{ padding: 10px 16px; top:61px; gap:14px; }
  .rn-subnav .subnav-crumb{ padding-right:14px; }
  .search-strip{ padding: 12px 18px; }
}
/* END_SECTION:rn-directed-header */

/* START_SECTION:rn-directed-home (INDEX:82) */
/* ═══════════════════════════════════════════════════════════════════
   PORTAL MASTER. The Opera
   Disney worlds × Ridley Scott atmosphere × Zaha Hadid parametric
   ═══════════════════════════════════════════════════════════════════ */

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
body[data-template="index"] { background: #0a0a0a; scroll-behavior: auto; }
body[data-template="index"] {
  background: #0a0a0a; color: #fbfbf8;
  font-family: 'Barlow Condensed', sans-serif; font-weight: 400;
  overflow-x: hidden; cursor: none;
  /* Disney "worlds". the entire page body tints to the active world */
  --world-tint-r: 0; --world-tint-g: 209; --world-tint-b: 167;
  --world-tint-strength: 0;
  transition: background 0.9s cubic-bezier(0.25, 1, 0.5, 1);
}
a { color: inherit; text-decoration: none; }

/* The world-tint is a radial wash that bleeds in when a portal is hovered */
body[data-template="index"]::before {
  content: ''; position: fixed; inset: 0; pointer-events: none; z-index: 0;
  background: radial-gradient(ellipse 90% 70% at 50% 40%, rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), calc(var(--world-tint-strength) * 0.22)) 0%, transparent 60%);
  transition: background 0.9s cubic-bezier(0.25, 1, 0.5, 1);
}

/* ── TOUCH DEVICE: restore native cursor ── */
@media (hover: none) { body[data-template="index"] { cursor: auto; } }

/* ════════════════════════════════════════════
   PRELOADER. parametric portal outlines draw
   ════════════════════════════════════════════ */
.preloader { position: fixed; inset: 0; z-index: 99999; background: #0a0a0a; display: flex; align-items: center; justify-content: center; padding: 60px 40px; transition: opacity 0.45s ease, visibility 0.45s ease; }
.preloader.done { opacity: 0; visibility: hidden; }
.preloader-mark { display: flex; flex-direction: column; align-items: center; gap: 18px; }
.preloader-rule { display: block; width: 88px; height: 1px; background: #00d1a7; transform: scaleX(0); transform-origin: center; animation: preloader-rule-draw 1.2s cubic-bezier(.6,.02,.2,1) forwards; }
.preloader-word { font-family: 'Oswald', sans-serif; font-weight: 400; letter-spacing: 0.48em; font-size: 10px; color: #fbfbf8; opacity: 0; text-transform: uppercase; animation: preloader-word-fade 1.0s ease 0.5s forwards; }
@keyframes preloader-rule-draw { 0% { transform: scaleX(0); } 70% { transform: scaleX(1); } 100% { transform: scaleX(1); } }
@keyframes preloader-word-fade { to { opacity: 0.85; } }

body[data-template="index"].preload .opening > *:not(.dust-field):not(.fog-drift):not(.crt-scanlines),
body[data-template="index"].preload .hero-portals,
body[data-template="index"].preload .parametric-layer,
body[data-template="index"].preload .construction-mark,
body[data-template="index"].preload .neon-ring { visibility: hidden; }
@media (max-width: 720px) {
  }

/* ════════════════════════════════════════════
   RIDLEY SCOTT ATMOSPHERE LAYERS
   ════════════════════════════════════════════ */
/* Volumetric light streak. diagonal haze */
.light-streak { position: fixed; top: -20%; left: -10%; width: 60%; height: 140%; pointer-events: none; z-index: 0; transform: rotate(22deg) translate3d(0,0,0); opacity: 0.5; backface-visibility: hidden; contain: strict;
  background: linear-gradient(90deg, transparent 0%, rgba(0,209,167,0.05) 45%, rgba(251,251,248,0.03) 50%, rgba(0,209,167,0.05) 55%, transparent 100%);
  filter: blur(40px); mix-blend-mode: screen;
}
/* Drifting fog */

.fog-drift::before, .fog-drift::after { content: ''; position: absolute; width: 80%; height: 80%; border-radius: 50%; filter: blur(80px); }
.fog-drift::before { top: -10%; left: -10%; background: radial-gradient(circle, rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), calc(var(--world-tint-strength) * 0.15)) 0%, transparent 60%); animation: fog-drift-a 28s ease-in-out infinite; transition: background 0.9s; }
.fog-drift::after { bottom: -10%; right: -10%; background: radial-gradient(circle, rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), calc(var(--world-tint-strength) * 0.12)) 0%, transparent 60%); animation: fog-drift-b 34s ease-in-out infinite; transition: background 0.9s; }
50% { transform: translate(6%, 4%); } }
50% { transform: translate(-6%, -4%); } }

/* Dust motes. floating particles */



  8%   { opacity: var(--dust-max, 0.7); }
  92%  { opacity: var(--dust-max, 0.7); }
  100% { transform: translate3d(var(--dust-x, 8px), 110vh, 0); opacity: 0; }
}

/* Film grain */
.film-grain { position: fixed; inset: 0; pointer-events: none; z-index: 99998; opacity: 0.04; transform: translate3d(0,0,0); backface-visibility: hidden; contain: strict;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* Vignette. Ridley Scott closing the frame */
.vignette { position: fixed; inset: 0; pointer-events: none; z-index: 99997; background: radial-gradient(ellipse at center, transparent 40%, rgba(0,0,0,0.5) 100%); transform: translate3d(0,0,0); backface-visibility: hidden; contain: strict; }

/* ════════════════════════════════════════════
   CUSTOM CURSOR
   ════════════════════════════════════════════ */
.cursor-dot { position: fixed; top: 0; left: 0; width: 6px; height: 6px; background: #00d1a7; border-radius: 50%; pointer-events: none; z-index: 100000; transform: translate(-50%, -50%); box-shadow: 0 0 6px #00d1a7, 0 0 12px rgba(0,209,167,0.5); transition: transform 0.08s ease, background 0.3s; mix-blend-mode: difference; }
.cursor-ring { position: fixed; top: 0; left: 0; width: 36px; height: 36px; border: 1.5px solid rgba(0,209,167,0.6); border-radius: 50%; pointer-events: none; z-index: 100000; transform: translate(-50%, -50%); transition: transform 0.25s cubic-bezier(0.2, 1, 0.3, 1), border-color 0.3s, width 0.3s, height 0.3s; box-shadow: 0 0 10px rgba(0,209,167,0.2); }
.cursor-ring.active { width: 60px; height: 60px; border-color: rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.9); box-shadow: 0 0 20px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.5); }
@media (hover: none) { .cursor-dot, .cursor-ring { display: none; } }

/* ════════════════════════════════════════════
   SCROLL PROGRESS
   ════════════════════════════════════════════ */
.scroll-progress { position: fixed; top: 0; left: 0; width: 0%; height: 2px; z-index: 10001; background: rgb(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b)); box-shadow: 0 0 8px rgb(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b)), 0 0 20px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.6); transition: background 0.5s; }

/* ════════════════════════════════════════════
   ANNOUNCEMENT + HEADER
   ════════════════════════════════════════════ */
.announcement { position: relative; z-index: 100; background: #00d1a7; color: #0a0a0a; text-align: center; padding: 10px 20px; font-weight: 600; font-size: 12px; letter-spacing: 3px; text-transform: uppercase; overflow: hidden; }
.announcement::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255,255,255,0.35), transparent); animation: ann-shine 8s ease-in-out infinite; }
@keyframes ann-shine { 0%, 100% { left: -100%; } 50% { left: 100%; } }

.header { position: sticky; top: 0; z-index: 1000; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); background: rgba(10,10,10,0.82); border-bottom: 1px solid rgba(251,251,248,0.06); padding: 0 40px; height: 60px; display: flex; align-items: center; justify-content: space-between; transition: border-color 0.6s; }
.header::after { content: ''; position: absolute; bottom: -1px; left: 50%; transform: translateX(-50%); width: 0%; height: 1px; background: rgb(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b)); transition: width 0.9s cubic-bezier(0.25, 1, 0.5, 1); box-shadow: 0 0 8px rgb(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b)); }
body[data-template="index"][data-world-active="1"] .header::after { width: 100%; }

.header-logo { font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 18px; letter-spacing: 4px; text-transform: uppercase; }
.header-logo span { color: #00d1a7; transition: color 0.6s; }
.header-nav { display: flex; gap: 24px; font-weight: 600; font-size: 12px; letter-spacing: 1.5px; text-transform: uppercase; }
.header-nav a { transition: color 0.3s; position: relative; }
.header-nav a::after { content: ''; position: absolute; left: 0; bottom: -6px; width: 0; height: 1px; background: #00d1a7; transition: width 0.3s; }
.header-nav a:hover { color: #00d1a7; }
.header-nav a:hover::after { width: 100%; }
.header-basket { font-weight: 600; font-size: 12px; letter-spacing: 1.5px; text-transform: uppercase; position: relative; }
.header-basket::before { content: ''; position: absolute; right: -8px; top: 50%; transform: translateY(-50%); width: 5px; height: 5px; border-radius: 50%; background: #00d1a7; box-shadow: 0 0 6px #00d1a7; }

.hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; z-index: 1001; }
.hamburger span { display: block; width: 24px; height: 2px; background: #fbfbf8; transition: 0.3s; }
.mobile-menu { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: rgba(10,10,10,0.97); backdrop-filter: blur(20px); z-index: 999; flex-direction: column; align-items: center; justify-content: center; gap: 28px; }
.mobile-menu a { font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 22px; letter-spacing: 4px; text-transform: uppercase; }
.mobile-menu.active { display: flex; }

/* ════════════════════════════════════════════
   OPENING / HERO
   ════════════════════════════════════════════ */
.opening { min-height: calc(100vh - 60px - 38px); position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: 10vh 40px 80px; }

/* ── NEON RING. ambient pulse ── */
.neon-ring { position: absolute; top: 50%; left: 50%; width: 70vmin; height: 70vmin; transform: translate(-50%, -50%); border-radius: 50%; border: 2px solid rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.32); box-shadow: 0 0 14px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.2), 0 0 40px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.12), 0 0 70px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.07), inset 0 0 14px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.09); z-index: 1; pointer-events: none; transition: border-color 0.9s, box-shadow 0.9s; opacity: 0.7; }

/* ── CRT scanlines (very subtle) ── */
.crt-scanlines { position: absolute; inset: 0; pointer-events: none; z-index: 2; opacity: 0.025; background: repeating-linear-gradient(to bottom, transparent, transparent 2px, rgba(251,251,248,0.6) 2px, rgba(251,251,248,0.6) 3px); }

/* ── HADID PARAMETRIC CURVES. flowing SVG threading the portals ── */
.parametric-layer { position: absolute; left: 0; bottom: 8vh; width: 100%; height: 45vh; pointer-events: none; z-index: 4; opacity: 0; transition: opacity 0.6s; }
.parametric-layer.active { opacity: 1; }
.parametric-layer svg { width: 100%; height: 100%; overflow: visible; }
.parametric-layer path { fill: none; stroke-width: 1; vector-effect: non-scaling-stroke; }
.para-main { stroke: rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.55); stroke-dasharray: 1600; stroke-dashoffset: 1600; animation: para-draw 1.2s cubic-bezier(0.65, 0, 0.35, 1) 0.3s forwards; filter: drop-shadow(0 0 4px rgb(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b))); transition: stroke 0.9s; }
.para-secondary { stroke: rgba(251,251,248,0.12); stroke-dasharray: 1600; stroke-dashoffset: 1600; animation: para-draw 1.4s cubic-bezier(0.65, 0, 0.35, 1) 0.5s forwards; }
.para-tick { stroke: rgba(251,251,248,0.35); stroke-width: 1; opacity: 0; animation: para-tick-in 0.3s ease forwards; }
.para-tick-1 { animation-delay: 0.8s; } .para-tick-2 { animation-delay: 0.88s; } .para-tick-3 { animation-delay: 0.96s; } .para-tick-4 { animation-delay: 1.04s; } .para-tick-5 { animation-delay: 1.12s; }
.para-coord { fill: rgba(251,251,248,0.35); font-family: 'JetBrains Mono', monospace; font-size: 7px; letter-spacing: 0.5px; opacity: 0; animation: para-tick-in 0.3s ease forwards; }
.para-coord-1 { animation-delay: 0.85s; } .para-coord-2 { animation-delay: 0.93s; } .para-coord-3 { animation-delay: 1.01s; } .para-coord-4 { animation-delay: 1.09s; } .para-coord-5 { animation-delay: 1.17s; }
@keyframes para-draw { to { stroke-dashoffset: 0; } }
@keyframes para-tick-in { to { opacity: 1; } }

/* ── HERO TITLE ── */
.opening-content { position: relative; z-index: 6; display: flex; flex-direction: column; align-items: center; width: 100%; }
.opening-title { font-family: 'Oswald', sans-serif; font-weight: 700; font-size: clamp(40px, 7.5vw, 108px); letter-spacing: clamp(5px, 1.4vw, 14px); text-transform: uppercase; text-align: center; line-height: 1.08; position: relative; text-shadow: 0 0 12px rgba(251,251,248,0.25), 0 0 30px rgba(251,251,248,0.1); }
.opening-title .line { display: block; }
.opening-title .word { display: inline-block; opacity: 0; transform: translateY(22px); filter: blur(10px); }
.opening-title .neon-green { color: #00d1a7; text-shadow: 0 0 10px rgba(0,209,167,0.6), 0 0 22px rgba(0,209,167,0.35), 0 0 44px rgba(0,209,167,0.2); }

.opening-stars { font-family: 'Barlow Condensed', sans-serif; font-weight: 600; font-size: clamp(14px, 1.4vw, 18px); letter-spacing: 3px; text-transform: uppercase; opacity: 0; margin-top: 22px; color: rgba(251,251,248,0.7); display: flex; align-items: center; gap: 10px; }
.opening-stars .stars { color: #00d1a7; font-size: clamp(16px, 1.6vw, 20px); text-shadow: 0 0 6px rgba(0,209,167,0.7), 0 0 12px rgba(0,209,167,0.25); }
.opening-subtitle { font-family: 'Barlow Condensed', sans-serif; font-size: 11px; letter-spacing: 4px; text-transform: uppercase; opacity: 0; margin-top: 12px; color: rgba(251,251,248,0.4); }

/* Opening neon underline */
.opening-line { width: 0; height: 2px; background: #00d1a7; margin: 32px 0 18px; box-shadow: 0 0 6px rgba(0,209,167,0.65), 0 0 14px rgba(0,209,167,0.3); transition: width 0.5s cubic-bezier(0.65, 0, 0.35, 1); }
.opening-line.active { width: min(280px, 50vw); }

/* ════════════════════════════════════════════
   HERO PORTALS. The masterpiece
   ════════════════════════════════════════════ */
.hero-portals { display: flex; gap: 24px; justify-content: center; align-items: flex-end; margin-top: 28px; position: relative; z-index: 7; padding: 0 20px; max-width: 1300px; perspective: 1400px; }
.hero-portal { display: flex; flex-direction: column; align-items: center; text-decoration: none; color: #fbfbf8; opacity: 0; transform: translateY(30px); position: relative; padding: 8px; transform-style: preserve-3d; will-change: transform; transition: transform 0.6s cubic-bezier(0.2, 1, 0.3, 1), opacity 0.6s; }

/* Portal wrapper. the frame */
.portal-wrap { position: relative; width: 170px; height: 120px; transform-style: preserve-3d; transition: transform 0.5s cubic-bezier(0.2, 1, 0.3, 1); }

/* Outer holographic frame. parallelogram skewed (brand shape) */
.portal-wrap::before {
  content: ''; position: absolute; inset: -6px; border: 1px solid rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.35);
  z-index: 2; pointer-events: none;
  transform: skewX(-4deg); transform-origin: center;
  transition: inset 0.5s, border-color 0.5s, box-shadow 0.5s;
}
.portal-wrap::after {
  content: ''; position: absolute; inset: 0; border: 1.5px solid rgb(var(--portal-r), var(--portal-g), var(--portal-b));
  z-index: 3; pointer-events: none;
  box-shadow: 0 0 10px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.5), inset 0 0 15px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.1);
  transition: box-shadow 0.5s, border-color 0.5s;
}

/* L-corner registration marks (brand element) */
.portal-corner { position: absolute; width: 12px; height: 12px; border: 1.5px solid rgb(var(--portal-r), var(--portal-g), var(--portal-b)); z-index: 4; pointer-events: none; box-shadow: 0 0 6px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.7); transition: transform 0.4s cubic-bezier(0.2, 1, 0.3, 1); }
.portal-corner.tl { top: -8px; left: -8px; border-width: 1.5px 0 0 1.5px; }
.portal-corner.tr { top: -8px; right: -8px; border-width: 1.5px 1.5px 0 0; }
.portal-corner.bl { bottom: -8px; left: -8px; border-width: 0 0 1.5px 1.5px; }
.portal-corner.br { bottom: -8px; right: -8px; border-width: 0 1.5px 1.5px 0; }
.hero-portal:hover .portal-corner.tl { transform: translate(-3px, -3px); }
.hero-portal:hover .portal-corner.tr { transform: translate(3px, -3px); }
.hero-portal:hover .portal-corner.bl { transform: translate(-3px, 3px); }
.hero-portal:hover .portal-corner.br { transform: translate(3px, 3px); }

/* Portal image container */
.portal-img-wrap { position: relative; width: 100%; height: 100%; overflow: hidden; background: radial-gradient(circle at center, rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.28) 0%, rgba(10,10,10,0.95) 75%); transition: background 0.5s; }
.portal-img-wrap::before {
  /* scanning grid overlay */
  content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 2;
  background-image:
    linear-gradient(to right, rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.08) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.08) 1px, transparent 1px);
  background-size: 18px 18px;
  opacity: 0.7;
}
.portal-img-wrap::after {
  /* radial vignette inside portal */
  content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 3;
  background: radial-gradient(circle at center, transparent 40%, rgba(0,0,0,0.6) 100%);
}
.portal-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(0.88) saturate(1.05); transition: filter 0.5s, transform 0.6s cubic-bezier(0.2, 1, 0.3, 1); z-index: 1; transform: scale(1.05); }
.hero-portal:hover .portal-img { filter: brightness(1.15) saturate(1.15); transform: scale(1.14); }
.hero-portal:hover { transform: translateY(-8px) !important; }
.hero-portal.is-active { transform: translateY(-6px) !important; }

/* Data overlay. WORLD.XX */
.portal-data { position: absolute; top: 4px; right: 5px; font-family: 'JetBrains Mono', monospace; font-size: 7px; letter-spacing: 1px; color: rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.85); z-index: 5; pointer-events: none; line-height: 1; text-shadow: 0 0 3px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.6); }
.portal-data-row { display: block; }
.portal-data-row + .portal-data-row { margin-top: 2px; opacity: 0.5; }

/* Portal coordinate label. bottom left */
.portal-coord { position: absolute; bottom: 4px; left: 5px; font-family: 'JetBrains Mono', monospace; font-size: 7px; letter-spacing: 1px; color: rgba(251,251,248,0.35); z-index: 5; pointer-events: none; }

/* Holographic shimmer on hover */
.portal-shimmer { position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,0.2) 50%, transparent 70%); z-index: 4; pointer-events: none; transition: none; }
.hero-portal:hover .portal-shimmer { animation: portal-shimmer 0.7s ease-out forwards; }
@keyframes portal-shimmer { 0% { left: -100%; } 100% { left: 100%; } }

/* Portal label. parallelogram brand shape */
.portal-label-wrap { margin-top: 14px; position: relative; }
.portal-label { font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 11px; letter-spacing: 3px; text-transform: uppercase; text-align: center; padding: 5px 14px; background: transparent; color: rgb(var(--portal-r), var(--portal-g), var(--portal-b)); border: 1px solid rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.4); transform: skewX(-6deg); display: inline-block; text-shadow: 0 0 4px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.6); transition: background 0.4s, color 0.4s; }
.portal-label > span { display: inline-block; transform: skewX(6deg); }
.hero-portal:hover .portal-label { background: rgb(var(--portal-r), var(--portal-g), var(--portal-b)); color: #0a0a0a; text-shadow: none; }

/* ── Portal breathing idle ── */
@keyframes portal-breathe {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.008); }
}
.hero-portal[data-breathe-active="1"] .portal-wrap { animation: portal-breathe 4.5s ease-in-out infinite; }

/* ── Portal active/hover state (lifted) ── */
.hero-portal.is-active { z-index: 8; }
.hero-portal.is-active .portal-wrap { box-shadow: 0 0 40px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.35); }
.hero-portal.is-dimmed { /* no blur per J */ }

/* Scroll hint */
.opening-scroll { position: absolute; bottom: 26px; font-family: 'JetBrains Mono', monospace; font-size: 10px; letter-spacing: 3px; text-transform: uppercase; color: rgba(251,251,248,0.35); display: flex; flex-direction: column; align-items: center; gap: 8px; z-index: 6; opacity: 0; }
.opening-scroll .arrow { width: 16px; height: 16px; border-right: 1.5px solid rgba(251,251,248,0.35); border-bottom: 1.5px solid rgba(251,251,248,0.35); transform: rotate(45deg); animation: bounce-arrow 2s infinite; }
@keyframes bounce-arrow { 0%, 100% { transform: rotate(45deg) translateY(0); } 50% { transform: rotate(45deg) translateY(5px); } }

/* Construction marks (Hadid blueprint touches) */
.construction-mark { position: absolute; font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 1.5px; color: rgba(251,251,248,0.22); z-index: 3; pointer-events: none; text-transform: uppercase; }
.construction-mark.tl { top: 14px; left: 16px; }
.construction-mark.tr { top: 14px; right: 16px; }
.construction-mark.bl { bottom: 14px; left: 16px; }
.construction-mark.br { bottom: 14px; right: 16px; }
.construction-mark small { color: rgba(0,209,167,0.6); }

/* ════════════════════════════════════════════
   BELOW FOLD. WORLD CHAPTERS (cinematic full-width sections)
   Ridley Scott atmosphere × Zaha Hadid curves × Disney world-bleed
   ════════════════════════════════════════════ */
.chapters-overture { padding: 90px 40px 20px; position: relative; z-index: 5; text-align: center; }
.chapters-overture-label { font-family: 'JetBrains Mono', monospace; font-size: 10px; letter-spacing: 4px; color: rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.7); text-transform: uppercase; margin-bottom: 16px; transition: color 0.9s; }
.chapters-overture-label::before { content: '// '; color: rgba(251,251,248,0.3); }
.chapters-overture-line { width: 1px; height: 60px; background: linear-gradient(to bottom, rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.6), transparent); margin: 20px auto 0; box-shadow: 0 0 8px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.4); transition: background 0.9s, box-shadow 0.9s; }

/* Sticky chapter indicator dots on the right edge */
.chapter-nav { position: fixed; top: 50%; right: 26px; transform: translateY(-50%); z-index: 80; display: flex; flex-direction: column; gap: 14px; opacity: 0; pointer-events: none; transition: opacity 0.5s; }
.chapter-nav.active { opacity: 1; pointer-events: auto; }
.chapter-nav a { width: 18px; height: 18px; display: flex; align-items: center; justify-content: center; position: relative; text-decoration: none; }
.chapter-nav a .dot { width: 10px; height: 10px; border: 1px solid rgba(251,251,248,0.35); background: transparent; transform: rotate(45deg); transition: background 0.4s, border-color 0.4s, box-shadow 0.4s; display: block; }
.chapter-nav a .label { position: absolute; right: 100%; top: 50%; transform: translateY(-50%); margin-right: 12px; font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 2px; color: rgba(251,251,248,0.6); text-transform: uppercase; white-space: nowrap; opacity: 0; transition: opacity 0.3s; pointer-events: none; line-height: 1; }
.chapter-nav a:hover .label, .chapter-nav a.current .label { opacity: 1; }
.chapter-nav a.current .dot { background: rgb(var(--nav-r,0), var(--nav-g,209), var(--nav-b,167)); border-color: rgb(var(--nav-r,0), var(--nav-g,209), var(--nav-b,167)); box-shadow: 0 0 8px rgba(var(--nav-r,0), var(--nav-g,209), var(--nav-b,167), 0.6); }
.chapter-nav a.current .label { color: rgb(var(--nav-r,0), var(--nav-g,209), var(--nav-b,167)); }

/* Chapter section */
.world-chapter { min-height: 92vh; position: relative; overflow: hidden; display: flex; align-items: center; padding: 120px 40px; z-index: 5; }
.world-chapter[data-bg] { background: var(--chapter-bg, #0a0a0a); }

/* Ghost background number (massive Oswald digit) */
.chapter-ghost-num { position: absolute; font-family: 'Oswald', sans-serif; font-weight: 700; font-size: clamp(240px, 40vw, 520px); line-height: 0.8; letter-spacing: -0.04em; color: rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.055); top: 50%; transform: translateY(-50%); pointer-events: none; user-select: none; z-index: 2; font-style: italic; }
.chapter-ghost-num.left { left: -2vw; }
.chapter-ghost-num.right { right: -2vw; }

/* Hadid parametric per chapter */
.chapter-parametric { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 3; opacity: 0.35; }
.chapter-parametric path { stroke: rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.6); stroke-width: 1; fill: none; }

/* Atmospheric fog (Scott style. 3 layers per chapter) */
.chapter-fog { position: absolute; inset: 0; pointer-events: none; z-index: 2; }
.chapter-fog .fog-1 { position: absolute; inset: 0; background: radial-gradient(ellipse at 25% 45%, rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.12) 0%, transparent 60%); }
.chapter-fog .fog-2 { position: absolute; inset: 0; background: radial-gradient(ellipse at 75% 65%, rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.09) 0%, transparent 55%); }
.chapter-fog .fog-3 { position: absolute; inset: 0; background: radial-gradient(circle at 50% 30%, rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.06) 0%, transparent 70%); filter: blur(30px); }

/* Drifting light tubes (vertical neon lines) */
.chapter-tubes { position: absolute; inset: 0; pointer-events: none; overflow: hidden; z-index: 3; }
.chapter-tubes span { position: absolute; width: 1.5px; border-radius: 1px; background: linear-gradient(to bottom, transparent, rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.22), transparent); box-shadow: 0 0 6px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.18); animation: tube-drift linear infinite; }
@keyframes tube-drift { 0% { transform: translateY(-120%); opacity: 0; } 10% { opacity: 1; } 90% { opacity: 1; } 100% { transform: translateY(120vh); opacity: 0; } }

/* Chapter corner L-marks */
.chapter-corners { position: absolute; inset: 20px; pointer-events: none; z-index: 6; }
.chapter-corners::before, .chapter-corners::after,
.chapter-corners span::before, .chapter-corners span::after {
  content: ''; position: absolute; width: 18px; height: 18px;
  border: 1.5px solid rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.55);
}
.chapter-corners::before { top: 0; left: 0; border-right: none; border-bottom: none; }
.chapter-corners::after { top: 0; right: 0; border-left: none; border-bottom: none; }
.chapter-corners span { position: absolute; inset: 0; }
.chapter-corners span::before { bottom: 0; left: 0; border-right: none; border-top: none; }
.chapter-corners span::after { bottom: 0; right: 0; border-left: none; border-top: none; }

/* Grid layout */
.chapter-inner { max-width: 1380px; margin: 0 auto; width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; position: relative; z-index: 7; }
.chapter-inner.reverse { grid-template-columns: 1fr 1fr; }
.chapter-inner.reverse .chapter-content { order: 2; }
.chapter-inner.reverse .chapter-images { order: 1; }

/* Content column */
.chapter-content { position: relative; }
.chapter-content-meta { display: flex; align-items: center; gap: 14px; margin-bottom: 18px; }
.chapter-content-meta-num { font-family: 'JetBrains Mono', monospace; font-weight: 600; font-size: 11px; letter-spacing: 4px; color: rgb(var(--chapter-r), var(--chapter-g), var(--chapter-b)); text-transform: uppercase; }
.chapter-content-meta-line { flex: 1; height: 1px; background: linear-gradient(to right, rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.5), transparent); max-width: 180px; }
.chapter-content-title { font-family: 'Oswald', sans-serif; font-weight: 700; font-size: clamp(42px, 5.6vw, 96px); letter-spacing: 2px; text-transform: uppercase; line-height: 0.95; margin-bottom: 26px; color: #fbfbf8; position: relative; }
.chapter-content-title .tint { color: rgb(var(--chapter-r), var(--chapter-g), var(--chapter-b)); text-shadow: 0 0 14px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.45), 0 0 30px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.2); }
.chapter-content-desc { font-size: clamp(15px, 1.05vw, 18px); line-height: 1.7; color: rgba(251,251,248,0.58); margin-bottom: 32px; max-width: 520px; font-weight: 300; letter-spacing: 0.3px; }

/* Stat row */
.chapter-stats { display: flex; gap: 32px; margin-bottom: 36px; }
.chapter-stat { position: relative; }
.chapter-stat-value { font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 24px; color: rgb(var(--chapter-r), var(--chapter-g), var(--chapter-b)); letter-spacing: 1px; line-height: 1; }
.chapter-stat-label { font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 2px; color: rgba(251,251,248,0.4); text-transform: uppercase; margin-top: 6px; }

/* Skewed parallelogram CTA */
.chapter-cta { display: inline-block; position: relative; font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 13px; letter-spacing: 3px; text-transform: uppercase; padding: 16px 38px; border: 1.5px solid rgb(var(--chapter-r), var(--chapter-g), var(--chapter-b)); color: rgb(var(--chapter-r), var(--chapter-g), var(--chapter-b)); text-decoration: none; overflow: hidden; transform: skewX(-4deg); transition: color 0.4s, box-shadow 0.3s, border-color 0.3s; box-shadow: 0 0 8px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.3), inset 0 0 0 rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0); }
.chapter-cta span { display: inline-block; position: relative; z-index: 2; transform: skewX(4deg); }
.chapter-cta::before { content: ''; position: absolute; inset: 0; background: rgb(var(--chapter-r), var(--chapter-g), var(--chapter-b)); transform: translateX(-101%); transition: transform 0.5s cubic-bezier(0.2, 1, 0.3, 1); z-index: 1; }
.chapter-cta:hover { color: #0a0a0a; box-shadow: 0 0 20px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.6), 0 0 50px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.3); }
.chapter-cta:hover::before { transform: translateX(0); }

/* Images column */
.chapter-images { position: relative; min-height: 520px; }
.chapter-images .img-glow { position: absolute; width: 70%; height: 70%; top: 15%; left: 15%; border-radius: 50%; background: rgb(var(--chapter-r), var(--chapter-g), var(--chapter-b)); filter: blur(90px); opacity: 0.22; z-index: 1; }

.chapter-images .img-primary, .chapter-images .img-secondary, .chapter-images .img-solo { position: absolute; object-fit: contain; filter: drop-shadow(0 30px 70px rgba(0,0,0,0.65)) drop-shadow(0 0 30px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.15)); transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1); z-index: 4; }
.chapter-images .img-primary { width: 72%; max-height: 520px; top: 0; right: 0; z-index: 4; }
.chapter-images .img-secondary { width: 52%; max-height: 380px; bottom: -10px; left: 0; z-index: 5; }
.chapter-images .img-solo { width: 82%; max-height: 560px; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 4; }

/* Neon image frames */
.chapter-frame { position: absolute; border: 1px solid rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.4); box-shadow: 0 0 14px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.2), inset 0 0 14px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.12); pointer-events: none; z-index: 3; }
.chapter-frame.frame-primary { width: 72%; height: 100%; max-height: 520px; top: 0; right: 0; }
.chapter-frame.frame-secondary { width: 52%; height: 80%; max-height: 380px; bottom: -10px; left: 0; }
.chapter-frame.frame-solo { width: 82%; height: 90%; max-height: 560px; top: 50%; left: 50%; transform: translate(-50%, -50%); }

/* Frame L-corners (registration marks on the image frame itself) */
.chapter-frame::before, .chapter-frame::after { content: ''; position: absolute; width: 14px; height: 14px; border: 2px solid rgb(var(--chapter-r), var(--chapter-g), var(--chapter-b)); }
.chapter-frame::before { top: -4px; left: -4px; border-right: none; border-bottom: none; }
.chapter-frame::after { bottom: -4px; right: -4px; border-left: none; border-top: none; }

/* Rotating badge */
.chapter-badge { position: absolute; bottom: 40px; right: 40px; width: 100px; height: 100px; z-index: 8; opacity: 0.32; animation: none; }
.chapter-badge svg { width: 100%; height: 100%; filter: drop-shadow(0 0 6px rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.4)); }
@keyframes chapter-badge-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* Soft separator between chapters */
.chapter-separator { height: 1px; background: linear-gradient(to right, transparent, rgba(251,251,248,0.08), transparent); margin: 0 auto; max-width: 80%; position: relative; z-index: 5; }

/* ════════════════════════════════════════════
   FOOTER MINI
   ════════════════════════════════════════════ */
.site-footer { padding: 60px 40px 80px; text-align: center; border-top: 1px solid rgba(251,251,248,0.06); position: relative; z-index: 5; }
.site-footer p { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 2px; color: rgba(251,251,248,0.3); text-transform: uppercase; }
.site-footer p span { color: #00d1a7; }

/* ════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════ */
@media (max-width: 960px) {
  .header { padding: 0 20px; }
  .header-nav { display: none; }
  .hamburger { display: flex; }
  .opening { padding: 6vh 20px 80px; }
  .hero-portals { gap: 14px; flex-wrap: wrap; max-width: 440px; justify-content: center; }
  .portal-wrap { width: 130px; height: 94px; }
  .portal-label { font-size: 10px; padding: 4px 10px; }
  .parametric-layer { display: none; }
  .construction-mark { font-size: 7px; }
  .neon-ring { width: 90vmin; height: 90vmin; }
}
@media (max-width: 520px) {
  /* Mobile. row 1 = 3 portals, row 2 = 2 portals centered */
  .hero-portals {
    display: flex; flex-wrap: wrap; gap: 10px;
    max-width: 320px; padding: 0;
    justify-content: center;
  }
  .hero-portal { padding: 6px; flex: 0 0 auto; }
  .portal-wrap { width: 92px; height: 70px; }
  .portal-label { font-size: 8px; padding: 3px 7px; letter-spacing: 1.5px; }
  .portal-data { font-size: 5px; letter-spacing: 0.5px; }
  .portal-coord { display: none; }
  .portal-corner { width: 8px; height: 8px; }
  .portal-label-wrap { margin-top: 10px; }
  .opening-title { font-size: clamp(30px, 9vw, 48px); letter-spacing: 3px; }
  .opening-stars { font-size: 12px; gap: 6px; letter-spacing: 2px; }
  .opening-subtitle { font-size: 10px; letter-spacing: 2px; }
  .construction-mark { display: none; }
  .opening-line.active { width: 50vw; }
  .chapters-overture { padding: 60px 20px 10px; }
  .chapters-overture h2 { font-size: clamp(24px, 7vw, 36px); letter-spacing: 2px; }
  .world-chapter { padding: 70px 20px; min-height: auto; }
  .chapter-inner { grid-template-columns: 1fr; gap: 40px; }
  .chapter-inner.reverse .chapter-content { order: 1; }
  .chapter-inner.reverse .chapter-images { order: 2; }
  .chapter-content-title { font-size: clamp(32px, 9vw, 54px); }
  .chapter-content-desc { font-size: 14px; }
  .chapter-stats { gap: 20px; }
  .chapter-stat-value { font-size: 20px; }
  .chapter-images { min-height: 360px; }
  .chapter-images .img-primary { width: 74%; max-height: 360px; }
  .chapter-images .img-secondary { width: 52%; max-height: 260px; }
  .chapter-images .img-solo { width: 82%; max-height: 380px; }
  .chapter-frame.frame-primary, .chapter-frame.frame-solo { max-height: 380px; }
  .chapter-frame.frame-secondary { max-height: 260px; }
  .chapter-ghost-num { font-size: clamp(180px, 55vw, 280px); }
  .chapter-badge { width: 68px; height: 68px; bottom: 20px; right: 20px; }
  .chapter-nav { display: none; }
  .chapter-cta { padding: 13px 26px; font-size: 12px; letter-spacing: 2px; transform: skewX(-3deg); }
  .chapter-cta span { transform: skewX(3deg); }
  .light-streak { display: none; }
  .vignette { background: radial-gradient(ellipse at center, transparent 50%, rgba(0,0,0,0.4) 100%); }
  .opening { padding: 5vh 16px 60px; }
  .opening-scroll { bottom: 16px; font-size: 9px; }
  /* Subtle mobile tap state. replaces hover effects with visible selected state */
  .hero-portal:active .portal-wrap { transform: scale(0.96); }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01s !important; transition-duration: 0.01s !important; }
  .preloader-svg .pre-line { stroke-dashoffset: 0; }
}

body[data-template="index"] .skip-to-content-link { display: none !important; }

.world-chapter{content-visibility:auto;contain-intrinsic-size:1px 900px;}

/* SAFETY: preloader killed - never visible regardless */
.preloader, #preloader { display: none !important; }
/* SAFETY: body.preload class no longer hides content */
body.preload .opening, body.preload .hero-portals, body.preload .opening > * { opacity: 1 !important; visibility: visible !important; }
/* END_SECTION:rn-directed-home */

/* START_SECTION:rn-directed-order-tracking (INDEX:83) */
.rn-order-tracking {
  --chapter-r: 0; --chapter-g: 209; --chapter-b: 167;
  --rn-ot-bg: #0a0a0a;
  --rn-ot-bone: #fbfbf8;
  --rn-ot-teal: rgb(var(--chapter-r), var(--chapter-g), var(--chapter-b));
  --rn-ot-border: rgba(251,251,248,0.09);
  --rn-ot-text: rgba(251,251,248,0.7);
  --rn-ot-text-dim: rgba(251,251,248,0.4);
  --rn-ot-buy: #ffce12;
  --rn-ot-buy-ink: #0c0a07;
  --rn-ot-err: #ff6b6b;

  position: relative;
  background: var(--rn-ot-bg);
  color: var(--rn-ot-bone);
  font-family: 'Barlow Condensed', sans-serif;
  line-height: 1.55;
  padding: 20px 24px 80px;
  scrollbar-color: rgba(0, 209, 167, 0.35) transparent;
  scrollbar-width: thin;
  overflow: hidden;
}
.rn-order-tracking *, .rn-order-tracking *::before, .rn-order-tracking *::after {
  box-sizing: border-box;
}
.rn-order-tracking a { color: inherit; text-decoration: none; }

100% { transform: translate(-6%, 4%); } }

.rn-ot-hero {
  position: relative; z-index: 2;
  max-width: 1100px; margin: 0 auto;
  padding: 34px 16px 26px;
}
.rn-ot-eyebrow {
  display: flex; align-items: center; gap: 14px; margin-bottom: 20px;
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.38em;
  text-transform: uppercase; color: var(--rn-ot-teal);
  flex-wrap: wrap;
}
.rn-ot-chip {
  padding: 4px 12px;
  border: 1px solid rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.4);
  font-size: 9px; letter-spacing: 0.24em; color: var(--rn-ot-bone);
}
.rn-ot-dot { width: 5px; height: 5px; background: var(--rn-ot-teal); border-radius: 50%; }
.rn-ot-h1 {
  font-family: 'Oswald', sans-serif; font-weight: 700;
  font-size: clamp(40px, 6vw, 72px); line-height: 0.96;
  letter-spacing: 0.01em; text-transform: uppercase;
  margin: 0 0 16px;
}
.rn-ot-h1 em {
  font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 400;
  color: var(--rn-ot-teal); text-transform: none; letter-spacing: -0.01em;
}
.rn-ot-kicker {
  max-width: 640px; margin: 0;
  font-family: 'Cormorant Garamond', serif; font-style: italic;
  font-size: 18px; color: var(--rn-ot-text); line-height: 1.55;
}

.rn-ot-main {
  position: relative; z-index: 2;
  max-width: 1100px; margin: 0 auto;
  display: grid; gap: 28px;
}

/* Primary lookup card */
.rn-ot-lookup {
  position: relative;
  padding: 40px 40px;
  background: linear-gradient(135deg, rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.05), rgba(10,10,10,0.3));
  border: 1px solid rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.3);
}
.rn-ot-lookup::before, .rn-ot-lookup::after {
  content: ''; position: absolute; width: 22px; height: 22px;
  border: 1px solid var(--rn-ot-teal); pointer-events: none;
}
.rn-ot-lookup::before { top: 12px; left: 12px; border-right: none; border-bottom: none; }
.rn-ot-lookup::after  { bottom: 12px; right: 12px; border-left: none; border-top: none; }

.rn-ot-lookup-head {
  display: flex; align-items: center; gap: 10px; margin-bottom: 12px;
  font-family: 'Oswald', sans-serif; font-size: 11px; letter-spacing: 0.38em;
  text-transform: uppercase; color: var(--rn-ot-teal);
}
.rn-ot-num { color: var(--rn-ot-text-dim); }
.rn-ot-rule {
  flex: 1; height: 1px; max-width: 120px;
  background: linear-gradient(90deg, rgba(var(--chapter-r), var(--chapter-g), var(--chapter-b), 0.4), transparent);
}
.rn-ot-title {
  font-family: 'Oswald', sans-serif; font-weight: 700;
  font-size: clamp(28px, 4vw, 36px); line-height: 1.04;
  letter-spacing: 0.02em; text-transform: uppercase;
  margin: 0 0 10px;
}
.rn-ot-title em {
  font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 400;
  color: var(--rn-ot-teal); text-transform: none;
}
.rn-ot-sub {
  max-width: 640px; margin: 0 0 28px;
  color: var(--rn-ot-text); font-size: 16px;
}

.rn-ot-cta-row {
  display: flex; flex-wrap: wrap; align-items: center; gap: 20px 28px;
  margin-bottom: 26px;
}
.rn-ot-cta {
  position: relative;
  display: inline-flex; align-items: center; gap: 10px;
  padding: 16px 34px;
  background: var(--rn-ot-buy); color: var(--rn-ot-buy-ink);
  font-family: 'Oswald', sans-serif; font-size: 12px; font-weight: 700;
  letter-spacing: 0.26em; text-transform: uppercase;
  border: none; cursor: pointer; white-space: nowrap;
  transform: skewX(-4deg); overflow: hidden;
}
.rn-ot-cta > span { position: relative; z-index: 2; transform: skewX(4deg); display: inline-block; }
.rn-ot-cta::before {
  content: ''; position: absolute; inset: 0; background: var(--rn-ot-bone);
  transform: translateX(-101%);
  transition: transform 0.32s cubic-bezier(0.2,0.8,0.2,1);
}
.rn-ot-cta:hover::before { transform: translateX(0); }
.rn-ot-cta--secondary {
  background: transparent; color: var(--rn-ot-bone);
  border: 1px solid var(--rn-ot-teal);
}
.rn-ot-cta--secondary::before { background: var(--rn-ot-teal); }
.rn-ot-cta--secondary:hover { color: var(--rn-ot-buy-ink); }

.rn-ot-ghost {
  font-family: 'Oswald', sans-serif; font-size: 10px;
  letter-spacing: 0.26em; text-transform: uppercase;
  color: var(--rn-ot-text-dim); cursor: pointer;
  transition: color 0.2s;
}
.rn-ot-ghost:hover { color: var(--rn-ot-teal); }

.rn-ot-divider {
  display: flex; align-items: center; gap: 14px;
  margin: 8px 0 22px;
  font-family: 'Oswald', sans-serif; font-size: 10px;
  letter-spacing: 0.32em; text-transform: uppercase;
  color: var(--rn-ot-text-dim);
}
.rn-ot-divider::before, .rn-ot-divider::after {
  content: ''; flex: 1; height: 1px; background: var(--rn-ot-border);
}

.rn-ot-form { margin-bottom: 24px; }
.rn-ot-form-sub {
  margin: 0 0 18px;
  font-size: 14px; color: var(--rn-ot-text-dim);
}
.rn-ot-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 18px 24px;
  margin-bottom: 20px;
}
.rn-ot-field { display: flex; flex-direction: column; gap: 8px; }
.rn-ot-field label {
  font-family: 'Oswald', sans-serif; font-size: 10px;
  letter-spacing: 0.28em; text-transform: uppercase;
  color: var(--rn-ot-text-dim);
}
.rn-ot-field label b { color: var(--rn-ot-teal); font-weight: 700; }
.rn-ot-field input {
  padding: 14px 16px;
  background: rgba(10,10,10,0.7);
  border: 1px solid var(--rn-ot-border);
  color: var(--rn-ot-bone);
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 15px; letter-spacing: 0.06em;
  transition: border-color 0.2s;
}
.rn-ot-field input:focus {
  outline: none; border-color: var(--rn-ot-teal);
}
.rn-ot-field input::placeholder { color: var(--rn-ot-text-dim); letter-spacing: 0.04em; }
.rn-ot-err {
  min-height: 12px;
  font-family: 'Oswald', sans-serif; font-size: 9px;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--rn-ot-err);
}

.rn-ot-actions {
  display: flex; flex-wrap: wrap; align-items: center; gap: 18px 24px;
}

.rn-ot-trust {
  list-style: none; padding: 22px 0 0; margin: 28px 0 0;
  border-top: 1px solid var(--rn-ot-border);
  display: flex; flex-wrap: wrap; gap: 14px 32px;
  font-family: 'Oswald', sans-serif; font-size: 9px;
  letter-spacing: 0.26em; text-transform: uppercase;
  color: var(--rn-ot-text-dim);
}
.rn-ot-trust b { color: var(--rn-ot-teal); font-weight: 700; }

/* Carriers */
.rn-ot-carriers { padding: 4px 0 0; }
.rn-ot-carriers-head {
  display: flex; align-items: center; gap: 10px; margin-bottom: 18px;
  font-family: 'Oswald', sans-serif; font-size: 10px;
  letter-spacing: 0.38em; text-transform: uppercase;
  color: var(--rn-ot-teal);
}
.rn-ot-carrier-grid {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 1px; background: var(--rn-ot-border);
  border: 1px solid var(--rn-ot-border);
}
.rn-ot-carrier-cell {
  padding: 20px 22px; background: rgba(10,10,10,0.85);
  display: flex; flex-direction: column; gap: 6px;
}
.rn-ot-carrier-lbl {
  font-family: 'Oswald', sans-serif; font-size: 9px;
  letter-spacing: 0.28em; text-transform: uppercase;
  color: var(--rn-ot-teal);
}
.rn-ot-carrier-val {
  font-family: 'Oswald', sans-serif; font-size: 16px; font-weight: 700;
  letter-spacing: 0.04em; color: var(--rn-ot-bone);
}
.rn-ot-carrier-val b { color: var(--rn-ot-teal); font-weight: 700; }
.rn-ot-carrier-note {
  font-size: 13px; color: var(--rn-ot-text-dim); line-height: 1.45;
}

/* Help */
.rn-ot-help {
  display: grid; grid-template-columns: 1fr 1fr; gap: 1px;
  background: var(--rn-ot-border); border: 1px solid var(--rn-ot-border);
}
.rn-ot-help-cell {
  padding: 22px 26px; background: rgba(10,10,10,0.85);
  display: flex; flex-direction: column; gap: 8px;
}
.rn-ot-help-label {
  font-family: 'Oswald', sans-serif; font-size: 10px;
  letter-spacing: 0.32em; text-transform: uppercase;
  color: var(--rn-ot-teal);
}
.rn-ot-help-val { font-size: 14px; color: var(--rn-ot-text); }
.rn-ot-mini {
  align-self: flex-start; margin-top: 4px;
  padding: 8px 14px; background: transparent;
  border: 1px solid var(--rn-ot-border); color: var(--rn-ot-text);
  font-family: 'Oswald', sans-serif; font-size: 9px;
  letter-spacing: 0.22em; text-transform: uppercase;
  cursor: pointer; transition: color 0.18s, border-color 0.18s;
}
.rn-ot-mini:hover { color: var(--rn-ot-teal); border-color: var(--rn-ot-teal); }

@media (max-width: 820px) {
  .rn-order-tracking { padding: 10px 14px 60px; }
  .rn-ot-hero { padding: 22px 6px 16px; }
  .rn-ot-lookup { padding: 30px 22px; }
  .rn-ot-grid { grid-template-columns: 1fr; }
  .rn-ot-carrier-grid { grid-template-columns: 1fr 1fr; }
  .rn-ot-help { grid-template-columns: 1fr; }
  .rn-ot-cta { padding: 14px 22px; font-size: 11px; }
  .rn-ot-cta-row { gap: 14px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .rn-ot-cta::before { transition: none; }
}
/* END_SECTION:rn-directed-order-tracking */

/* START_SECTION:rn-portal-hero (INDEX:112) */
/* ════ Portal Master. scoped to .rn-portal-master ════ */
.rn-portal-master { position: relative; color: #fbfbf8; font-family: 'Barlow Condensed', sans-serif; font-weight: 400;
  --world-tint-r: 0; --world-tint-g: 209; --world-tint-b: 167; --world-tint-strength: 0;
  background: #0a0a0a; overflow: hidden; display: block; }
.rn-portal-master::before { content: ''; position: fixed; inset: 0; pointer-events: none; z-index: 0;
  background: radial-gradient(ellipse 90% 70% at 50% 40%, rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), calc(var(--world-tint-strength) * 0.22)) 0%, transparent 60%);
  transition: background 0.9s cubic-bezier(0.25, 1, 0.5, 1); }

/* Preloader */
.rpm-preloader { position: fixed; inset: 0; z-index: 99999; background: #0a0a0a; display: flex; align-items: center; justify-content: center; transition: opacity 0.5s ease, visibility 0.5s ease; }
.rpm-preloader.done { opacity: 0; visibility: hidden; }
.rn-portal-master.preload .rpm-opening > *:not(.rpm-construction-mark):not(.rpm-neon-ring):not(.rpm-crt-scanlines) { visibility: hidden; }
.rpm-preloader-svg { width: min(320px, 60vw); height: auto; }
.rpm-preloader-svg .rpm-pre-line { fill: none; stroke: #00d1a7; stroke-width: 1; stroke-dasharray: 400; stroke-dashoffset: 400; animation: rpm-pre-draw 0.6s cubic-bezier(0.65, 0, 0.35, 1) forwards; }
.rpm-preloader-svg .rpm-pre-line-1 { animation-delay: 0s; }
.rpm-preloader-svg .rpm-pre-line-2 { animation-delay: 0.08s; }
.rpm-preloader-svg .rpm-pre-line-3 { animation-delay: 0.16s; }
.rpm-preloader-svg .rpm-pre-line-4 { animation-delay: 0.24s; }
.rpm-preloader-svg .rpm-pre-line-5 { animation-delay: 0.32s; }
.rpm-preloader-svg .rpm-pre-label { fill: rgba(251,251,248,0.4); font-family: 'JetBrains Mono', monospace; font-size: 5px; letter-spacing: 1.2px; opacity: 0; animation: rpm-label-in 0.3s ease forwards; animation-delay: 0.45s; }
.rpm-preloader-wordmark { position: absolute; bottom: 14vh; font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 12px; letter-spacing: 8px; color: rgba(251,251,248,0.6); opacity: 0; animation: rpm-label-in 0.4s ease forwards; animation-delay: 0.5s; }
.rpm-preloader-wordmark span { color: #00d1a7; }
@keyframes rpm-pre-draw { to { stroke-dashoffset: 0; } }
@keyframes rpm-label-in { to { opacity: 1; } }

/* Atmosphere */
.rpm-light-streak { position: absolute; top: -20%; left: -10%; width: 60%; height: 140%; pointer-events: none; z-index: 0; transform: rotate(22deg); opacity: 0.5;
  background: linear-gradient(90deg, transparent 0%, rgba(0,209,167,0.05) 45%, rgba(251,251,248,0.03) 50%, rgba(0,209,167,0.05) 55%, transparent 100%);
  filter: blur(40px); mix-blend-mode: screen; }
.rpm-fog-drift { position: absolute; inset: 0; pointer-events: none; z-index: 0; opacity: 0.6; mix-blend-mode: screen; }
.rpm-fog-drift::before, .rpm-fog-drift::after { content: ''; position: absolute; width: 80%; height: 80%; border-radius: 50%; filter: blur(80px); }
.rpm-fog-drift::before { top: -10%; left: -10%; background: radial-gradient(circle, rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), calc(var(--world-tint-strength) * 0.15 + 0.04)) 0%, transparent 60%); animation: rpm-fog-a 28s ease-in-out infinite; }
.rpm-fog-drift::after { bottom: -10%; right: -10%; background: radial-gradient(circle, rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), calc(var(--world-tint-strength) * 0.12 + 0.03)) 0%, transparent 60%); animation: rpm-fog-b 34s ease-in-out infinite; }
@keyframes rpm-fog-a { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(6%, 4%); } }
@keyframes rpm-fog-b { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(-6%, -4%); } }

.rpm-dust { position: absolute; inset: 0; pointer-events: none; z-index: 1; }
.rpm-dust-mote { position: absolute; width: 1.5px; height: 1.5px; border-radius: 50%; background: rgba(251,251,248,0.55); box-shadow: 0 0 3px rgba(251,251,248,0.4), 0 0 8px rgba(0,209,167,0.15); animation: rpm-dust-rain linear infinite; animation-duration: var(--dust-dur, 38s); will-change: transform, opacity; }
@keyframes rpm-dust-rain { 0% { transform: translate3d(0, -10vh, 0); opacity: 0; } 8% { opacity: var(--dust-max, 0.7); } 92% { opacity: var(--dust-max, 0.7); } 100% { transform: translate3d(var(--dust-x, 8px), 110vh, 0); opacity: 0; } }

.rpm-film-grain { position: absolute; inset: 0; pointer-events: none; z-index: 2; opacity: 0.04;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.rpm-vignette { position: absolute; inset: 0; pointer-events: none; z-index: 2; background: radial-gradient(ellipse at center, transparent 40%, rgba(0,0,0,0.5) 100%); }
.rpm-scroll-progress { position: fixed; top: 0; left: 0; width: 0%; height: 2px; z-index: 10001; background: rgb(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b)); box-shadow: 0 0 8px rgb(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b)); transition: background 0.5s; }

/* Opening */
.rpm-opening { min-height: calc(100vh - 120px); position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: 10vh 40px 80px; z-index: 3; }
.rpm-neon-ring { position: absolute; top: 50%; left: 50%; width: 70vmin; height: 70vmin; transform: translate(-50%, -50%); border-radius: 50%;
  border: 2px solid rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.45);
  box-shadow: 0 0 18px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.3),
              0 0 50px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.18),
              inset 0 0 18px rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.14);
  z-index: 1; pointer-events: none; transition: border-color 0.9s, box-shadow 0.9s; opacity: 0.85; }
.rpm-crt-scanlines { position: absolute; inset: 0; pointer-events: none; z-index: 2; opacity: 0.025; background: repeating-linear-gradient(to bottom, transparent, transparent 2px, rgba(251,251,248,0.6) 2px, rgba(251,251,248,0.6) 3px); }

.rpm-parametric-layer { position: absolute; left: 0; bottom: 8vh; width: 100%; height: 45vh; pointer-events: none; z-index: 4; opacity: 0; transition: opacity 0.6s; }
.rpm-parametric-layer.active { opacity: 1; }
.rpm-parametric-layer svg { width: 100%; height: 100%; overflow: visible; }
.rpm-parametric-layer path { fill: none; stroke-width: 1; vector-effect: non-scaling-stroke; }
.rpm-para-main { stroke: rgba(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b), 0.55); stroke-dasharray: 1600; stroke-dashoffset: 1600; animation: rpm-para-draw 1.2s cubic-bezier(0.65, 0, 0.35, 1) 0.3s forwards; filter: drop-shadow(0 0 4px rgb(var(--world-tint-r), var(--world-tint-g), var(--world-tint-b))); }
.rpm-para-secondary { stroke: rgba(251,251,248,0.12); stroke-dasharray: 1600; stroke-dashoffset: 1600; animation: rpm-para-draw 1.4s cubic-bezier(0.65, 0, 0.35, 1) 0.5s forwards; }
.rpm-para-tick { stroke: rgba(251,251,248,0.35); stroke-width: 1; opacity: 0; animation: rpm-fade-in 0.3s ease forwards; }
.rpm-para-tick-1 { animation-delay: 0.8s; } .rpm-para-tick-2 { animation-delay: 0.88s; } .rpm-para-tick-3 { animation-delay: 0.96s; } .rpm-para-tick-4 { animation-delay: 1.04s; } .rpm-para-tick-5 { animation-delay: 1.12s; }
.rpm-para-coord { fill: rgba(251,251,248,0.35); font-family: 'JetBrains Mono', monospace; font-size: 7px; letter-spacing: 0.5px; opacity: 0; animation: rpm-fade-in 0.3s ease forwards; }
.rpm-para-coord-1 { animation-delay: 0.85s; } .rpm-para-coord-2 { animation-delay: 0.93s; } .rpm-para-coord-3 { animation-delay: 1.01s; } .rpm-para-coord-4 { animation-delay: 1.09s; } .rpm-para-coord-5 { animation-delay: 1.17s; }
@keyframes rpm-para-draw { to { stroke-dashoffset: 0; } }
@keyframes rpm-fade-in { to { opacity: 1; } }

/* Title */
.rpm-opening-content { position: relative; z-index: 6; display: flex; flex-direction: column; align-items: center; width: 100%; }
.rpm-opening-title { font-family: 'Oswald', sans-serif; font-weight: 700; font-size: clamp(40px, 7.5vw, 108px); letter-spacing: clamp(5px, 1.4vw, 14px); text-transform: uppercase; text-align: center; line-height: 1.08; position: relative; text-shadow: 0 0 12px rgba(251,251,248,0.25), 0 0 30px rgba(251,251,248,0.1); margin: 0; }
.rpm-opening-title .rpm-line { display: block; }
.rpm-opening-title .rpm-word { display: inline-block; opacity: 0; transform: translateY(22px); filter: blur(10px); transition: opacity 0.5s, transform 0.5s, filter 0.5s; }
.rpm-opening-title.revealed .rpm-word { opacity: 1; transform: translateY(0); filter: blur(0); }
.rpm-opening-title .rpm-neon-green { color: #00d1a7; text-shadow: 0 0 14px rgba(0,209,167,0.9), 0 0 28px rgba(0,209,167,0.55), 0 0 58px rgba(0,209,167,0.32); }

.rpm-opening-stars { font-family: 'Barlow Condensed', sans-serif; font-weight: 600; font-size: clamp(14px, 1.4vw, 18px); letter-spacing: 3px; text-transform: uppercase; opacity: 0; margin-top: 22px; color: rgba(251,251,248,0.7); display: flex; align-items: center; gap: 10px; transition: opacity 0.5s; }
.rpm-opening-stars.revealed { opacity: 1; }
.rpm-opening-stars .rpm-stars { color: #00d1a7; font-size: clamp(16px, 1.6vw, 20px); text-shadow: 0 0 8px #00d1a7, 0 0 16px rgba(0,209,167,0.4); }
.rpm-opening-subtitle { font-family: 'Barlow Condensed', sans-serif; font-size: 11px; letter-spacing: 4px; text-transform: uppercase; opacity: 0; margin-top: 12px; color: rgba(251,251,248,0.4); transition: opacity 0.5s; }
.rpm-opening-subtitle.revealed { opacity: 1; }
.rpm-opening-line { width: 0; height: 2px; background: #00d1a7; margin: 32px 0 18px; box-shadow: 0 0 8px #00d1a7, 0 0 20px rgba(0,209,167,0.5); transition: width 0.5s cubic-bezier(0.65, 0, 0.35, 1); }
.rpm-opening-line.active { width: min(280px, 50vw); }

/* Portals */
.rpm-hero-portals { display: flex; gap: 24px; justify-content: center; align-items: flex-end; margin-top: 28px; position: relative; z-index: 7; padding: 0 20px; max-width: 1300px; perspective: 1400px; flex-wrap: wrap; }
.rpm-hero-portal { display: flex; flex-direction: column; align-items: center; text-decoration: none; color: #fbfbf8; opacity: 0; transform: translateY(30px); position: relative; padding: 8px; transform-style: preserve-3d; will-change: transform; transition: transform 0.6s cubic-bezier(0.2, 1, 0.3, 1), opacity 0.6s; }
.rpm-hero-portal.revealed { opacity: 1; transform: translateY(0); }
.rpm-portal-wrap { position: relative; width: 170px; height: 120px; transform-style: preserve-3d; transition: transform 0.5s cubic-bezier(0.2, 1, 0.3, 1); }
.rpm-portal-wrap::before {
  content: ''; position: absolute; inset: -6px; border: 1px solid rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.35);
  z-index: 2; pointer-events: none; transform: skewX(-4deg); transform-origin: center;
  transition: inset 0.5s, border-color 0.5s, box-shadow 0.5s;
}
.rpm-portal-wrap::after {
  content: ''; position: absolute; inset: 0; border: 1.5px solid rgb(var(--portal-r), var(--portal-g), var(--portal-b));
  z-index: 3; pointer-events: none;
  box-shadow: 0 0 10px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.5), inset 0 0 15px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.1);
  transition: box-shadow 0.5s, border-color 0.5s;
}
.rpm-portal-corner { position: absolute; width: 12px; height: 12px; border: 1.5px solid rgb(var(--portal-r), var(--portal-g), var(--portal-b)); z-index: 4; pointer-events: none; box-shadow: 0 0 6px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.7); transition: transform 0.4s cubic-bezier(0.2, 1, 0.3, 1); }
.rpm-portal-corner.tl { top: -8px; left: -8px; border-width: 1.5px 0 0 1.5px; }
.rpm-portal-corner.tr { top: -8px; right: -8px; border-width: 1.5px 1.5px 0 0; }
.rpm-portal-corner.bl { bottom: -8px; left: -8px; border-width: 0 0 1.5px 1.5px; }
.rpm-portal-corner.br { bottom: -8px; right: -8px; border-width: 0 1.5px 1.5px 0; }
.rpm-hero-portal:hover .rpm-portal-corner.tl { transform: translate(-3px, -3px); }
.rpm-hero-portal:hover .rpm-portal-corner.tr { transform: translate(3px, -3px); }
.rpm-hero-portal:hover .rpm-portal-corner.bl { transform: translate(-3px, 3px); }
.rpm-hero-portal:hover .rpm-portal-corner.br { transform: translate(3px, 3px); }

.rpm-portal-img-wrap { position: relative; width: 100%; height: 100%; overflow: hidden; background: radial-gradient(circle at center, rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.28) 0%, rgba(10,10,10,0.95) 75%); transition: background 0.5s; }
.rpm-portal-img-wrap::before {
  content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 2;
  background-image:
    linear-gradient(to right, rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.08) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.08) 1px, transparent 1px);
  background-size: 18px 18px; opacity: 0.7;
}
.rpm-portal-img-wrap::after { content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 3;
  background: radial-gradient(circle at center, transparent 40%, rgba(0,0,0,0.6) 100%); }
.rpm-portal-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(0.88) saturate(1.05); transition: filter 0.5s, transform 0.6s cubic-bezier(0.2, 1, 0.3, 1); z-index: 1; transform: scale(1.05); }
.rpm-hero-portal:hover .rpm-portal-img { filter: brightness(1.15) saturate(1.15); transform: scale(1.14); }

.rpm-portal-data { position: absolute; top: 4px; right: 5px; font-family: 'JetBrains Mono', monospace; font-size: 7px; letter-spacing: 1px; color: rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.85); z-index: 5; pointer-events: none; line-height: 1; text-shadow: 0 0 3px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.6); }
.rpm-portal-data-row { display: block; }
.rpm-portal-data-row + .rpm-portal-data-row { margin-top: 2px; opacity: 0.5; }
.rpm-portal-coord { position: absolute; bottom: 4px; left: 5px; font-family: 'JetBrains Mono', monospace; font-size: 7px; letter-spacing: 1px; color: rgba(251,251,248,0.35); z-index: 5; pointer-events: none; }

.rpm-portal-shimmer { position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,0.2) 50%, transparent 70%); z-index: 4; pointer-events: none; }
.rpm-hero-portal:hover .rpm-portal-shimmer { animation: rpm-shimmer 0.7s ease-out forwards; }
@keyframes rpm-shimmer { 0% { left: -100%; } 100% { left: 100%; } }

.rpm-portal-label-wrap { margin-top: 14px; position: relative; }
.rpm-portal-label { font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 11px; letter-spacing: 3px; text-transform: uppercase; text-align: center; padding: 5px 14px; background: transparent; color: rgb(var(--portal-r), var(--portal-g), var(--portal-b)); border: 1px solid rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.4); transform: skewX(-6deg); display: inline-block; text-shadow: 0 0 4px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.6); transition: background 0.4s, color 0.4s; }
.rpm-portal-label > span { display: inline-block; transform: skewX(6deg); }
.rpm-hero-portal:hover .rpm-portal-label { background: rgb(var(--portal-r), var(--portal-g), var(--portal-b)); color: #0a0a0a; text-shadow: none; }

@keyframes rpm-portal-breathe { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.008); } }
.rpm-hero-portal[data-breathe="1"] .rpm-portal-wrap { animation: rpm-portal-breathe 4.5s ease-in-out infinite; }
.rpm-hero-portal.is-active { z-index: 8; }
.rpm-hero-portal.is-active .rpm-portal-wrap { box-shadow: 0 0 40px rgba(var(--portal-r), var(--portal-g), var(--portal-b), 0.35); }
.rpm-hero-portal.is-dimmed { opacity: 0.5; filter: blur(1.5px) brightness(0.8); }

/* Scroll hint */
.rpm-opening-scroll { position: absolute; bottom: 26px; font-family: 'JetBrains Mono', monospace; font-size: 10px; letter-spacing: 3px; text-transform: uppercase; color: rgba(251,251,248,0.35); display: flex; flex-direction: column; align-items: center; gap: 8px; z-index: 6; opacity: 0; transition: opacity 0.5s; }
.rpm-opening-scroll.revealed { opacity: 1; }
.rpm-opening-scroll .rpm-arrow { width: 16px; height: 16px; border-right: 1.5px solid rgba(251,251,248,0.35); border-bottom: 1.5px solid rgba(251,251,248,0.35); transform: rotate(45deg); animation: rpm-bounce 2s infinite; }
@keyframes rpm-bounce { 0%, 100% { transform: rotate(45deg) translateY(0); } 50% { transform: rotate(45deg) translateY(5px); } }

/* Construction marks */
.rpm-construction-mark { position: absolute; font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 1.5px; color: rgba(251,251,248,0.22); z-index: 3; pointer-events: none; text-transform: uppercase; }
.rpm-construction-mark.tl { top: 14px; left: 16px; }
.rpm-construction-mark.tr { top: 14px; right: 16px; }
.rpm-construction-mark.bl { bottom: 14px; left: 16px; }
.rpm-construction-mark.br { bottom: 14px; right: 16px; }
.rpm-construction-mark small { color: rgba(0,209,167,0.6); }

/* Responsive */
@media (max-width: 960px) {
  .rpm-opening { padding: 6vh 20px 80px; }
  .rpm-hero-portals { gap: 14px; max-width: 440px; justify-content: center; }
  .rpm-portal-wrap { width: 130px; height: 94px; }
  .rpm-portal-label { font-size: 10px; padding: 4px 10px; }
  .rpm-parametric-layer { display: none; }
  .rpm-construction-mark { font-size: 7px; }
  .rpm-neon-ring { width: 90vmin; height: 90vmin; }
}
@media (max-width: 520px) {
  .rpm-hero-portals { display: flex; flex-wrap: wrap; gap: 10px; max-width: 320px; padding: 0; justify-content: center; }
  .rpm-hero-portal { padding: 6px; flex: 0 0 auto; }
  .rpm-portal-wrap { width: 92px; height: 70px; }
  .rpm-portal-label { font-size: 8px; padding: 3px 7px; letter-spacing: 1.5px; }
  .rpm-portal-data { font-size: 5px; letter-spacing: 0.5px; }
  .rpm-portal-coord { display: none; }
  .rpm-portal-corner { width: 8px; height: 8px; }
  .rpm-portal-label-wrap { margin-top: 10px; }
  .rpm-opening-title { font-size: clamp(30px, 9vw, 48px); letter-spacing: 3px; }
  .rpm-opening-stars { font-size: 12px; gap: 6px; letter-spacing: 2px; flex-wrap: wrap; justify-content: center; }
  .rpm-opening-subtitle { font-size: 10px; letter-spacing: 2px; }
  .rpm-construction-mark { display: none; }
  .rpm-opening-line.active { width: 50vw; }
  .rpm-light-streak { display: none; }
  .rpm-opening { padding: 5vh 16px 60px; }
  .rpm-opening-scroll { bottom: 16px; font-size: 9px; }
  .rpm-hero-portal:active .rpm-portal-wrap { transform: scale(0.96); }
}
@media (prefers-reduced-motion: reduce) {
  .rpm-opening-title .rpm-word, .rpm-hero-portal, .rpm-opening-stars, .rpm-opening-subtitle, .rpm-opening-scroll { opacity: 1 !important; transform: none !important; filter: none !important; }
  .rpm-preloader-svg .rpm-pre-line { stroke-dashoffset: 0 !important; }
  .rpm-opening-line.active { width: min(280px, 50vw) !important; }
  .rpm-parametric-layer { opacity: 1 !important; }
  *, *::before, *::after { animation-duration: 0.01s !important; transition-duration: 0.01s !important; }
}
/* END_SECTION:rn-portal-hero */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:rn-cart-drawer (INDEX:177) */
.rn-cart-drawer {
  position: fixed; inset: 0; z-index: 9000;
  visibility: hidden; opacity: 0;
  transition: opacity 0.28s ease, visibility 0s linear 0.28s;
  font-family: 'Barlow Condensed', sans-serif;
  /* default teal tint; inherits chapter-r/g/b when present on body */
  --rn-cart-tint-r: var(--chapter-r, 0);
  --rn-cart-tint-g: var(--chapter-g, 209);
  --rn-cart-tint-b: var(--chapter-b, 167);
  --rn-cart-tint: rgb(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b));
  --rn-cart-tint-soft: rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.2);
  --rn-cart-bone: #fbfbf8;
  --rn-cart-text: rgba(251,251,248,0.72);
  --rn-cart-text-dim: rgba(251,251,248,0.4);
  --rn-cart-border: rgba(251,251,248,0.09);
  --rn-cart-buy: #ffce12;
  --rn-cart-buy-ink: #0c0a07;
}
.rn-cart-drawer.rn-is-open {
  visibility: visible; opacity: 1;
  transition: opacity 0.32s ease;
}
.rn-cart-scrim {
  position: absolute; inset: 0;
  background: rgba(3,3,2,0.78);
  backdrop-filter: blur(10px);
  cursor: pointer;
}
.rn-cart-panel {
  position: absolute; top: 0; right: 0; bottom: 0;
  width: min(480px, 100vw);
  background: linear-gradient(180deg, #161209 0%, #0f0c08 100%);
  box-shadow: -40px 0 120px -20px rgba(0,0,0,0.95);
  display: flex; flex-direction: column; overflow: hidden;
  border-left: 1px solid rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.24);
  transform: translateX(100%);
  transition: transform 0.42s cubic-bezier(.2,.7,.2,1);
  color: var(--rn-cart-bone);
}
.rn-cart-drawer.rn-is-open .rn-cart-panel { transform: translateX(0); }

/* Bracket corners */
.rn-cart-panel::before, .rn-cart-panel::after {
  content: ''; position: absolute; width: 24px; height: 24px;
  border: 1px solid var(--rn-cart-tint); pointer-events: none; z-index: 5;
}
.rn-cart-panel::before { top: 16px; left: 16px; border-right: none; border-bottom: none; }
.rn-cart-panel::after { bottom: 16px; right: 16px; border-left: none; border-top: none; }

.rn-cart-ribbons { position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: 0.4; }

.rn-cart-head {
  position: relative; z-index: 3;
  padding: 22px 32px 12px;
  border-bottom: 1px solid var(--rn-cart-border);
  display: flex; justify-content: space-between; align-items: flex-start;
}
.rn-cart-head-l { display: flex; flex-direction: column; gap: 6px; }
.rn-cart-eyebrow {
  font-family: 'Oswald', sans-serif; font-size: 10px;
  letter-spacing: 0.32em; text-transform: uppercase; color: var(--rn-cart-tint);
}
.rn-cart-title {
  font-family: 'Oswald', sans-serif; font-size: 24px; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase;
}
.rn-cart-title .sep { color: var(--rn-cart-tint); }
.rn-cart-title .rn-cart-count { color: var(--rn-cart-tint); }
.rn-cart-sub {
  font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rn-cart-text-dim);
}
.rn-cart-close {
  width: 36px; height: 36px; background: transparent; color: var(--rn-cart-bone);
  font-size: 16px; cursor: pointer; border: 1px solid var(--rn-cart-border); line-height: 34px;
  text-align: center;
  clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px);
  transition: border-color 0.2s, background 0.2s;
}
.rn-cart-close:hover {
  border-color: var(--rn-cart-tint);
  background: rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.12);
}

.rn-cart-head-curve { position: relative; height: 14px; flex-shrink: 0; z-index: 3; opacity: 0.85; }
.rn-cart-head-curve svg { width: 100%; height: 100%; display: block; }

.rn-cart-ledger {
  position: relative; z-index: 3; padding: 14px 32px 0; flex: 1; overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.4) rgba(0,0,0,0.25);
}
.rn-cart-ledger::-webkit-scrollbar { width: 6px; }
.rn-cart-ledger::-webkit-scrollbar-track { background: rgba(0,0,0,0.25); }
.rn-cart-ledger::-webkit-scrollbar-thumb { background: rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.4); }

.rn-cart-ledger-count {
  font-size: 10px; letter-spacing: 0.28em; text-transform: uppercase;
  color: var(--rn-cart-text-dim); padding: 14px 0 18px;
  border-bottom: 1px solid var(--rn-cart-border);
  display: flex; justify-content: space-between;
}
.rn-cart-ledger-count span { color: var(--rn-cart-tint); font-weight: 600; }

.rn-cart-line {
  position: relative; display: grid; grid-template-columns: 92px 1fr; gap: 18px;
  padding: 20px 18px; margin: 18px 0;
  border: 1px solid rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.14);
  background: linear-gradient(180deg, rgba(251,251,248,0.02), rgba(251,251,248,0));
  clip-path: polygon(14px 0, 100% 0, 100% calc(100% - 14px), calc(100% - 14px) 100%, 0 100%, 0 14px);
}
.rn-cart-line-num {
  position: absolute; right: 16px; top: 12px;
  font-family: 'Oswald', sans-serif; font-size: 60px; font-weight: 700; line-height: 0.9;
  color: rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.08);
  letter-spacing: -0.02em; pointer-events: none;
}
.rn-cart-line-img {
  position: relative; width: 92px; height: 118px;
  background: linear-gradient(135deg, rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.22), rgba(12,10,7,0.6));
  border: 1px solid rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.22);
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
  overflow: hidden; flex-shrink: 0; display: block; text-decoration: none;
}
.rn-cart-line-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rn-cart-line-img::before, .rn-cart-line-img::after {
  content: ''; position: absolute; width: 8px; height: 8px; border: 1px solid var(--rn-cart-tint); z-index: 2;
}
.rn-cart-line-img::before { top: 4px; left: 4px; border-right: none; border-bottom: none; }
.rn-cart-line-img::after { bottom: 4px; right: 4px; border-left: none; border-top: none; }

.rn-cart-line-body { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.rn-cart-line-chapter {
  font-family: 'Oswald', sans-serif; font-size: 9px; letter-spacing: 0.28em;
  text-transform: uppercase; color: var(--rn-cart-tint);
}
.rn-cart-line-title {
  font-family: 'Oswald', sans-serif; font-size: 15px; font-weight: 700;
  letter-spacing: 0.03em; text-transform: uppercase; line-height: 1.15;
  color: var(--rn-cart-bone); text-decoration: none;
}
.rn-cart-line-title:hover { color: var(--rn-cart-tint); }
.rn-cart-line-variant {
  font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rn-cart-text-dim);
}
.rn-cart-line-meta {
  display: flex; gap: 8px; flex-wrap: wrap; margin-top: 4px;
  font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--rn-cart-text);
}
.rn-cart-line-meta .accent { color: var(--rn-cart-tint); font-weight: 600; }
.rn-cart-line-meta .dot { color: var(--rn-cart-text-dim); }

.rn-cart-line-foot {
  display: flex; justify-content: space-between; align-items: center; margin-top: 10px;
}
.rn-cart-qty {
  display: flex; align-items: center;
  border: 1px solid rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.3);
  clip-path: polygon(6px 0, 100% 0, 100% calc(100% - 6px), calc(100% - 6px) 100%, 0 100%, 0 6px);
}
.rn-cart-qty button {
  background: transparent; border: none; color: var(--rn-cart-text);
  width: 26px; height: 26px; cursor: pointer; font-size: 14px; font-family: 'Oswald', sans-serif;
}
.rn-cart-qty button:hover { color: var(--rn-cart-tint); }
.rn-cart-qty button:disabled { opacity: 0.3; cursor: not-allowed; }
.rn-cart-qty-val {
  width: 28px; text-align: center; font-family: 'Oswald', sans-serif; font-size: 13px; font-weight: 700;
}
.rn-cart-line-price {
  font-family: 'Oswald', sans-serif; font-size: 16px; font-weight: 700;
  color: var(--rn-cart-tint); letter-spacing: 0.02em;
}
.rn-cart-line-compare {
  color: var(--rn-cart-text-dim); text-decoration: line-through;
  font-size: 12px; margin-right: 8px; font-weight: 400;
}
.rn-cart-line-remove {
  font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--rn-cart-text-dim); background: none; border: none; cursor: pointer;
  padding: 0; margin-top: 6px; align-self: flex-start;
}
.rn-cart-line-remove:hover { color: var(--rn-cart-tint); }

.rn-cart-carry {
  margin: 16px 0 12px; padding: 14px 16px;
  background: linear-gradient(135deg, rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.08), rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.02));
  border-left: 2px solid rgb(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167));
  clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
}
.rn-cart-carry-label {
  font-family: 'Oswald', sans-serif; font-size: 9px; letter-spacing: 0.32em;
  text-transform: uppercase; color: rgb(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167)); margin-bottom: 6px;
}
.rn-cart-carry-body { font-size: 13px; color: var(--rn-cart-text); line-height: 1.45; }
.rn-cart-carry-body b { color: var(--rn-cart-bone); font-weight: 600; }

.rn-cart-foot-curve { position: relative; height: 16px; flex-shrink: 0; z-index: 3; opacity: 0.85; }
.rn-cart-foot-curve svg { width: 100%; height: 100%; display: block; }

.rn-cart-foot {
  position: relative; z-index: 3; flex-shrink: 0;
  padding: 8px 28px 18px;
  background: linear-gradient(180deg, rgba(12,10,7,0), rgba(12,10,7,0.6));
  border-top: 1px solid rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.18);
}
.rn-cart-ship {
  padding: 5px 10px; margin-bottom: 6px;
  border-left: 2px solid var(--rn-cart-tint);
  background: rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.06);
  font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--rn-cart-bone); font-weight: 600;
  clip-path: polygon(6px 0, 100% 0, 100% calc(100% - 6px), calc(100% - 6px) 100%, 0 100%, 0 6px);
}
.rn-cart-ship em { color: var(--rn-cart-text-dim); font-style: normal; font-weight: 400; }

.rn-cart-totals { display: flex; flex-direction: column; gap: 2px; padding: 0 0 6px; }
.rn-cart-totals-line {
  display: flex; justify-content: space-between;
  font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--rn-cart-text);
}
.rn-cart-totals-line.grand { padding-top: 6px; margin-top: 2px; border-top: 1px solid var(--rn-cart-border); }
.rn-cart-totals-line.grand .l {
  font-family: 'Oswald', sans-serif; font-size: 13px; font-weight: 700;
  letter-spacing: 0.22em; color: var(--rn-cart-bone);
}
.rn-cart-totals-line.grand .v {
  font-family: 'Oswald', sans-serif; font-size: 24px; font-weight: 700;
  color: var(--rn-cart-tint); letter-spacing: 0.02em;
}
.rn-cart-totals-line .v.free { color: var(--rn-cart-tint); font-weight: 700; letter-spacing: 0.2em; }
.rn-cart-sub-strike {
  color: var(--rn-cart-text-dim); text-decoration: line-through;
  margin-right: 8px; font-weight: 400;
}

.rn-cart-cta {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  padding: 14px 30px; width: 100%;
  background: var(--rn-cart-buy); color: var(--rn-cart-buy-ink);
  font-family: 'Oswald', sans-serif; font-size: 14px; font-weight: 700;
  letter-spacing: 0.26em; text-transform: uppercase;
  border: none; cursor: pointer; overflow: hidden;
  transform: skew(-8deg); text-decoration: none;
  transition: filter 0.2s, transform 0.2s, background 0.2s;
}
.rn-cart-cta:hover { filter: brightness(1.05); background: #ffd84a; transform: skew(-8deg) translateY(-2px); }
.rn-cart-cta > span { position: relative; z-index: 2; display: inline-block; transform: skew(8deg); }

.rn-cart-alt { margin-top: 8px; text-align: center; }
.rn-cart-alt a {
  font-size: 9px; letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--rn-cart-text-dim); text-decoration: none;
  border-bottom: 1px solid rgba(var(--rn-cart-tint-r), var(--rn-cart-tint-g), var(--rn-cart-tint-b), 0.3);
  padding-bottom: 1px;
}
.rn-cart-alt a:hover { color: var(--rn-cart-tint); border-bottom-color: var(--rn-cart-tint); }

/* Empty state */
.rn-cart-empty {
  position: relative; z-index: 3; flex: 1;
  padding: 80px 32px; display: flex; flex-direction: column; gap: 14px;
  align-items: flex-start; justify-content: center;
}
.rn-cart-empty-eyebrow {
  font-family: 'Oswald', sans-serif; font-size: 10px; letter-spacing: 0.32em;
  text-transform: uppercase; color: var(--rn-cart-tint);
}
.rn-cart-empty-title {
  font-family: 'Oswald', sans-serif; font-size: 40px; font-weight: 700;
  line-height: 1.05; letter-spacing: 0.04em; text-transform: uppercase;
  color: var(--rn-cart-bone);
}
.rn-cart-empty-title em {
  font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 400;
  color: var(--rn-cart-tint); text-transform: none; letter-spacing: -0.005em;
}
.rn-cart-empty-body { font-size: 14px; color: var(--rn-cart-text); max-width: 320px; line-height: 1.5; }
.rn-cart-empty-ctas { margin-top: 10px; display: flex; gap: 12px; }

@media (max-width: 520px) {
  .rn-cart-panel { width: 100vw; }
  .rn-cart-head { padding: 18px 22px 10px; }
  .rn-cart-ledger { padding: 10px 22px 0; }
  .rn-cart-foot { padding: 8px 22px 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .rn-cart-drawer, .rn-cart-panel { transition: none !important; }
}
/* END_SNIPPET:rn-cart-drawer */

/* START_SNIPPET:rn-dust-motes (INDEX:184) */
.rn-dust { position: fixed; inset: 0; z-index: 2; pointer-events: none; overflow: hidden; }
.rn-dust-mote {
  position: absolute; width: 1.5px; height: 1.5px; border-radius: 50%;
  background: rgba(251,251,248,0.55);
  box-shadow: 0 0 3px rgba(251,251,248,0.4), 0 0 8px rgba(var(--chapter-r,0),var(--chapter-g,209),var(--chapter-b,167),0.18);
  animation: rn-dust-rain linear infinite;
  animation-duration: var(--rn-dust-dur, 38s);
  will-change: transform, opacity;
  filter: blur(0.4px);
}
@keyframes rn-dust-rain {
  0%   { transform: translate3d(0, -10vh, 0); opacity: 0; }
  8%   { opacity: var(--rn-dust-max, 0.7); }
  92%  { opacity: var(--rn-dust-max, 0.7); }
  100% { transform: translate3d(var(--rn-dust-x, 0), 110vh, 0); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) { .rn-dust { display: none; } }
/* END_SNIPPET:rn-dust-motes */