/* Vision v3 — editorial polish and restrained motion.
   Scope new patterns to public page classes. Existing 3D rig remains intact. */
:root {
  --premium-ease: cubic-bezier(.22,.78,.24,1);
  --premium-gold: #e0bc78;
}
.premium-kicker {
  display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;
  font:700 .7rem/1.35 var(--font-mono);letter-spacing:.17em;
  text-transform:uppercase;color:#d5b676;
}
.premium-kicker::before {
  content:'';display:block;width:21px;height:1px;flex:none;
  background:linear-gradient(90deg,var(--gold),transparent);
}
.site-header {
  background:rgba(14,9,9,.86);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  border-bottom-color:rgba(214,180,108,.11);
}
.site-header .nav { min-height:70px; }
.site-header .nav-links a.keep[href="/cart"] { position:relative; }
.site-header .nav-links a[aria-current="page"]:not(.btn) {
  color:#f4e5c6;
  background:rgba(214,180,108,.08);
}
.hero { isolation:isolate; }
.hero .hero-copy h1 { text-wrap:balance;line-height:1.22;letter-spacing:-.047em; }
.hero .lead { line-height:1.75; }
.hero .cta { margin-bottom:1.7rem; }
.hero-eyebrow { margin-bottom:1.25rem; }
.hero-trust-list {
  display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .95rem;
  margin:0;padding:0;list-style:none;color:#aaa09a;font-size:.78rem;
}
.hero-trust-list li { display:flex;align-items:center;gap:.5rem; }
.hero-trust-list li::before { content:'✦';color:#d1aa60;font-size:.55rem; }
.hero .rig-stage { filter:drop-shadow(0 22px 35px rgba(0,0,0,.2)); }
.benefit-band { position:relative;padding:3.25rem 0 4rem; }
.benefit-head { display:flex;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.6rem; }
.benefit-head h2 { max-width:16ch;font-size:clamp(1.65rem,3vw,2.3rem);letter-spacing:-.03em; }
.benefit-head p { max-width:37ch;margin:0;color:var(--muted);line-height:1.65; }
.benefit-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem; }
.benefit-card {
  position:relative;isolation:isolate;min-width:0;min-height:222px;overflow:hidden;
  padding:1.55rem;border:1px solid rgba(214,180,108,.12);border-radius:17px;
  background:linear-gradient(145deg,rgba(35,22,23,.88),rgba(16,10,11,.96));
  transition:border-color .3s ease,box-shadow .35s ease,transform .38s var(--premium-ease);
}
.benefit-card::before {
  content:'';position:absolute;inset:0;pointer-events:none;opacity:0;
  background:radial-gradient(250px circle at var(--gx,50%) var(--gy,50%),rgba(214,180,108,.095),transparent 72%);
  transition:opacity .32s;
}
.benefit-index { display:inline-flex;align-items:center;gap:.65rem;margin-bottom:2.65rem;
  color:#c2a572;font:700 .66rem var(--font-mono);letter-spacing:.15em; }
.benefit-index::after { content:'';width:30px;height:1px;background:rgba(214,180,108,.26); }
.benefit-card h3 { position:relative;margin:0 0 .55rem;font-size:1.2rem;letter-spacing:-.018em; }
.benefit-card p { position:relative;margin:0;color:#a9a09a;font-size:.88rem;line-height:1.65; }
.benefit-card:hover { border-color:rgba(214,180,108,.35);box-shadow:0 22px 45px -32px rgba(0,0,0,.9); }
.benefit-card:hover::before {opacity:1;}
/* Readable product cards: no global page fade or blur. */
.catalog .row {
  border:1px solid rgba(214,180,108,.105);
  border-radius:16px;
  padding:1.35rem 1.45rem;
  margin-bottom:.75rem;
  background:linear-gradient(125deg,rgba(37,22,23,.57),rgba(16,11,12,.48));
  overflow:hidden;
  transition:border-color .28s ease,background .28s ease,box-shadow .33s ease;
}
.catalog .row::before { width:2px;border-radius:2px; }
.catalog .row::after {
  content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(300px circle at var(--gx,50%) var(--gy,50%),rgba(201,162,75,.075),transparent 72%);
  opacity:0;transition:opacity .25s ease;
}
.catalog .row>* { position:relative;z-index:1; }
.catalog .row:hover {
  border-color:rgba(201,162,75,.35);
  background:linear-gradient(125deg,rgba(45,26,27,.68),rgba(17,11,12,.65));
  box-shadow:0 24px 48px -34px rgba(0,0,0,.9);
}
.catalog .row:hover::after {opacity:1;}
.catalog .row:hover .row-main {transform:translateX(4px);}
.catalog .row .row-thumb {box-shadow:0 12px 25px -20px #000;}
.catalog .row .btn {border-color:rgba(214,180,108,.5);}
.section-head h1,.section-head h2 {text-wrap:balance;letter-spacing:-.03em;}
.section-head p {max-width:55ch;line-height:1.65;}
.shop-header {padding-bottom:.8rem;}
.shop-header .shop-intro {display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.shop-benefits {display:flex;align-items:center;flex-wrap:wrap;gap:.4rem .9rem;
  color:#b5a59b;font-size:.78rem;}
.shop-benefits span::before {content:'✓';color:#bfa16a;margin-right:.4rem;}
/* Premium product buy box, visible but calm. */
.product-layout .buy-box {
  background:linear-gradient(160deg,#241718 0%,#171011 52%,#130d0e 100%);
  border:1px solid rgba(214,180,108,.23);
  box-shadow:0 24px 60px -40px rgba(0,0,0,.93),inset 0 1px 0 rgba(255,255,255,.035);
}
.product-layout .buy-box::before {
  content:'';display:block;width:32px;height:2px;margin-bottom:.9rem;
  background:linear-gradient(90deg,var(--gold),transparent);
}
.product-layout .buy-box .price {letter-spacing:-.035em;}
.product-layout .perks li {line-height:1.55;}
.product-page-loader-link {display:block;margin:.9rem 0 0;font-size:.85rem;line-height:1.45;}
.product-page-loader-link a {color:#d9b978;text-decoration:underline;text-underline-offset:3px;}
/* Cart/Checkout: information hierarchy and reassurance. */
.cart-v2 {padding-top:3rem;}
.cart-v2-heading {display:flex;align-items:end;justify-content:space-between;gap:1.2rem;margin-bottom:2.15rem;}
.cart-v2-heading .page-h1 {margin:0 0 .3rem;letter-spacing:-.045em;}
.cart-heading-dot {color:#d5b46c;}
.cart-v2-intro {max-width:55ch;margin:0;color:#b1a49c;line-height:1.7;font-size:.95rem;}
.cart-v2-back {flex:none;padding:.6rem .8rem;border:1px solid rgba(214,180,108,.16);
  border-radius:9px;color:#d8bd88;font-size:.82rem;text-decoration:none;}
.cart-v2-back:hover {border-color:rgba(214,180,108,.42);color:#f3dfac;}
.cart-v2-back span {margin-right:.45rem;}
.cart-return-note {
  display:flex;align-items:start;gap:1rem;margin-bottom:1.5rem;padding:1.05rem 1.2rem;
  border:1px solid rgba(124,199,154,.27);border-radius:14px;
  background:linear-gradient(105deg,rgba(62,116,78,.13),rgba(24,36,24,.12));
}
.cart-return-note strong {display:block;margin:.05rem 0 .25rem;color:#cce9d1;font-size:.94rem;}
.cart-return-note p {margin:0;color:#a5c2af;font-size:.83rem;line-height:1.5;}
.cart-return-icon {flex:none;display:grid;place-items:center;width:31px;height:31px;
  border-radius:10px;background:rgba(124,199,154,.1);color:#9acba4;font-size:1.15rem;}
.cart-v2-grid {display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.75fr);align-items:start;gap:1.3rem;}
.cart-v2-lines {overflow:hidden;border:1px solid rgba(214,180,108,.15);border-radius:16px;background:rgba(23,14,15,.76);}
.cart-v2-lines-head {display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:1.35rem 1.45rem;
  border-bottom:1px solid rgba(214,180,108,.12);}
.cart-v2-lines-head h2 {margin:0;font-size:1.12rem;letter-spacing:-.02em;}
.cart-v2-lines-head>span {font-size:.72rem;color:#9c8d86;}
.cart-v2-count {display:inline-grid;place-items:center;min-width:23px;height:23px;margin-left:.35rem;
  padding:0 .3rem;border:1px solid rgba(214,180,108,.3);border-radius:50%;
  color:#d8ba7a;font:.7rem var(--font-mono);}
.cart-v2-line {display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;
  gap:1rem;padding:1.35rem 1.4rem;border-bottom:1px solid rgba(214,180,108,.09);}
.cart-v2-thumb {display:grid;place-items:center;width:92px;height:72px;overflow:hidden;
  border:1px solid rgba(214,180,108,.16);border-radius:11px;background:#100b0d;}
.cart-v2-thumb img {width:100%;height:100%;object-fit:contain;}
.cart-v2-thumb span {color:#c6a56d;font-family:var(--font-display);font-size:2rem;}
.cart-v2-item-info h3 {margin:0 0 .2rem;font-size:1.05rem;line-height:1.3;overflow-wrap:anywhere;}
.cart-v2-item-info h3 a {color:#f1e9e0;}
.cart-v2-item-info h3 a:hover {color:var(--gold-soft);}
.cart-v2-variant {margin:0 0 .35rem;color:#ac9f95;font-size:.81rem;}
.cart-v2-qty {font-size:.77rem;color:#8f817a;}
.cart-v2-qty strong {color:#e3d3c2;font-variant-numeric:tabular-nums;}
.cart-v2-item-actions {display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;}
.cart-v2-price {color:#e4c587;font:700 1.05rem var(--font-display);font-variant-numeric:tabular-nums;white-space:nowrap;}
.cart-v2-item-actions form {margin:0;}
.cart-v2-remove,.cart-v2-clear {padding:.18rem .1rem;border:0;background:none;color:#ad9a90;
  cursor:pointer;font:600 .78rem var(--font-body);text-decoration:underline;text-underline-offset:3px;}
.cart-v2-remove:hover,.cart-v2-clear:hover {color:#f1d0c2;}
.cart-v2-lines-foot {display:flex;align-items:center;justify-content:space-between;gap:.6rem;
  padding:1rem 1.45rem;color:#887b74;font-size:.78rem;}
.cart-v2-lines-foot .clear-cart-form {margin:0;}
.cart-v2-summary {position:sticky;top:94px;padding:1.55rem;border:1px solid rgba(214,180,108,.25);
  border-radius:16px;background:linear-gradient(165deg,#2a1b1a,#171011 56%,#110c0d);
  box-shadow:0 30px 60px -40px rgba(0,0,0,.9);}
.cart-v2-summary .premium-kicker {margin-bottom:.6rem;font-size:.63rem;}
.cart-v2-summary-head h2 {margin:0 0 1.4rem;font-size:1.4rem;letter-spacing:-.03em;}
.cart-v2-summary-subtotal {display:flex;align-items:baseline;justify-content:space-between;gap:1rem;
  padding:1.15rem 0;border-top:1px solid rgba(214,180,108,.16);border-bottom:1px solid rgba(214,180,108,.16);}
.cart-v2-summary-subtotal span {font-size:.9rem;color:#c2b3a7;}
.cart-v2-summary-subtotal strong {font:700 1.75rem var(--font-display);letter-spacing:-.04em;color:#f0d79d;white-space:nowrap;}
.cart-v2-summary-hint {margin:.85rem 0 1.4rem;color:#a99b93;font-size:.78rem;line-height:1.6;}
.cart-v2-checkout label {color:#d3c6bd;font-size:.84rem;}
.cart-v2-pay {display:flex;align-items:center;justify-content:space-between;gap:.75rem;
  min-height:53px;border-radius:10px;}
.cart-v2-pay span:last-child {font-size:1.17rem;}
.cart-v2-secure {display:flex;align-items:start;gap:.55rem;margin:1.1rem 0 1.2rem;
  color:#b9aaa0;font-size:.75rem;line-height:1.55;}
.cart-v2-secure>span:first-child {color:#d9b978;}
.cart-v2-assurance {display:grid;gap:.8rem;padding:1.05rem 0 0;margin:0;list-style:none;
  border-top:1px solid rgba(214,180,108,.13);}
.cart-v2-assurance li {display:flex;align-items:start;gap:.65rem;font-size:.77rem;color:#b2a39b;line-height:1.48;}
.cart-v2-assurance li::before {content:'✓';color:#bcab76;font-weight:700;}
.cart-v2-empty {display:flex;align-items:center;flex-direction:column;padding:3.5rem 1rem;
  border:1px solid rgba(214,180,108,.14);border-radius:16px;text-align:center;
  background:linear-gradient(160deg,#201415,#100b0c);}
.cart-v2-empty-icon {display:grid;place-items:center;width:70px;height:70px;margin-bottom:1.35rem;
  border:1px solid rgba(214,180,108,.25);border-radius:22px;color:#d9bc82;font-size:2.5rem;
  background:rgba(214,180,108,.045);}
.cart-v2-empty h2 {margin:0 0 .6rem;font-size:1.55rem;}
.cart-v2-empty p {margin:0 0 1.4rem;max-width:38ch;color:#a99b93;line-height:1.6;}
@media (max-width:1000px) {
  .cart-v2-grid {grid-template-columns:minmax(0,1fr);}
  .cart-v2-summary {position:static;}
  .benefit-grid {gap:.75rem;}
}
@media (max-width:700px) {
  .benefit-head {flex-direction:column;align-items:start;}
  .benefit-grid {grid-template-columns:1fr;}
  .benefit-card {min-height:155px;}
  .benefit-index {margin-bottom:1.3rem;}
  .cart-v2-heading {align-items:start;flex-direction:column;}
  .cart-v2-line {grid-template-columns:70px minmax(0,1fr);gap:.7rem;padding:1rem;}
  .cart-v2-thumb {width:70px;height:62px;}
  .cart-v2-item-actions {grid-column:2;flex-direction:row;justify-content:space-between;align-items:center;}
  .cart-v2-lines-head,.cart-v2-lines-foot {padding:1rem;}
  .cart-v2-lines-head>span {display:none;}
  .catalog .row {padding:1rem 1.1rem;}
  .hero-trust-list {gap:.6rem;}
}
@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine) {
  .benefit-card:hover {transform:translateY(-4px);}
}
@media (prefers-reduced-motion:reduce) {
  .benefit-card,.catalog .row,.site-header .brand img {animation:none!important;transition:none!important;}
  .benefit-card::before,.catalog .row::after {display:none;}
}

/* Search only appears when JS detects a sufficiently large product catalog. */
.shop-search {
  display:flex;align-items:end;gap:1rem;flex-wrap:wrap;
  margin:0 0 1.5rem;padding:1rem 1.15rem;
  border:1px solid rgba(214,180,108,.15);border-radius:14px;
  background:linear-gradient(130deg,rgba(35,22,22,.65),rgba(16,11,12,.4));
}
.shop-search[hidden], .shop-no-results[hidden], .catalog .row[hidden] {display:none!important;}
.shop-search label {
  flex:none;align-self:center;margin:0;font-size:.83rem;color:#d9cbc0;
}
.shop-search-input {position:relative;flex:1;min-width:min(100%,235px);}
.shop-search-input>span {position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#c1a16c;font-size:1.4rem;pointer-events:none;}
.shop-search-input input {width:100%;min-height:44px;padding-left:2.5rem;border-radius:10px;border-color:rgba(214,180,108,.19);background:rgba(11,7,8,.78);}
.shop-search output {align-self:center;color:#ab9c91;font:600 .72rem var(--font-mono);white-space:nowrap;}
.shop-no-results {
  padding:2.5rem 1rem;text-align:center;
  border:1px solid rgba(214,180,108,.16);border-radius:14px;
  background:rgba(26,17,18,.75);
}
.shop-no-results p {color:#b7a59b;}
.cart-v2-pay.is-submitting {filter:saturate(.75);cursor:progress;}
.cart-v2-pay[aria-disabled="true"] {pointer-events:none;}
@media(max-width:500px) {
  .shop-search {align-items:stretch;flex-direction:column;gap:.55rem;}
  .shop-search label {align-self:flex-start;}
  .shop-search output {align-self:flex-start;}
}
