/* Public storefront refresh: warmer surfaces, bigger product photography, and fewer competing labels. */
:root {
  --commerce-ink: #14251f;
  --commerce-muted: #77827b;
  --commerce-paper: #f4f5ef;
  --commerce-card: #fff;
  --commerce-green: #075b45;
  --commerce-green-dark: #073d30;
  --commerce-line: #e4e9e2;
  --commerce-clay: #9c5738;
}

.home-shop,
.products-page {
  color: var(--commerce-ink);
  background: var(--commerce-paper);
  font-family: var(--sans, Arial, sans-serif);
}

.home-shop .site-header,
.products-page .site-header {
  border-bottom: 1px solid var(--commerce-line);
  background: rgba(248, 249, 244, .94);
  color: var(--commerce-ink);
  backdrop-filter: blur(18px);
}

.home-shop .logo,
.products-page .logo,
.home-shop .nav-links a,
.products-page .nav-links a,
.home-shop .design-nav-trigger,
.products-page .design-nav-trigger {
  color: var(--commerce-ink);
}

.home-shop .logo > span,
.products-page .logo > span {
  background: var(--commerce-green);
  color: #fff;
}

.home-shop .nav-links a:hover,
.products-page .nav-links a:hover,
.home-shop .nav-links a.active,
.products-page .nav-links a.active,
.home-shop .design-nav-trigger.active,
.products-page .design-nav-trigger.active {
  color: var(--commerce-green);
}

.home-shop .design-nav-menu,
.products-page .design-nav-menu,
.home-shop .mobile-menu,
.products-page .mobile-menu {
  border-color: var(--commerce-line);
  background: #fff;
  color: var(--commerce-ink);
}

.home-shop .design-nav-menu a,
.products-page .design-nav-menu a,
.home-shop .mobile-menu a,
.products-page .mobile-menu a {
  color: var(--commerce-ink);
}

.home-shop .nav-cta,
.products-page .nav-cta {
  border-color: var(--commerce-green);
  background: var(--commerce-green);
  color: #fff;
}

.home-shop .menu-button i,
.products-page .menu-button i {
  background: var(--commerce-ink);
}

/* Home: a compact product-first introduction with the card artwork beside it. */
.home-shop .store-hero {
  min-height: 0;
  border: 0;
  background:
    radial-gradient(ellipse at 76% 52%, rgba(132, 176, 127, .23), transparent 38%),
    linear-gradient(120deg, #f3f5ed 0%, #e7eee4 100%);
}

.home-shop .store-hero-layout {
  min-height: min(690px, calc(100svh - 76px));
  display: grid;
  grid-template-columns: minmax(330px, .88fr) minmax(0, 1.12fr);
  align-items: center;
  gap: clamp(28px, 5vw, 78px);
  padding-block: 62px;
}

.home-shop .store-hero-copy {
  position: relative;
  inset: auto;
  width: auto;
  transform: none;
  text-align: left;
}

.home-shop .store-pill {
  min-height: 36px;
  margin: 0;
  border-color: #d6e2d6;
  background: #fff;
  color: var(--commerce-green-dark);
  font: 700 11px var(--sans, Arial, sans-serif);
  letter-spacing: 0;
  text-transform: none;
  box-shadow: 0 5px 20px rgba(20, 50, 36, .05);
}

.home-shop .store-pill del { color: #8c958d; }
.home-shop .store-pill strong { color: var(--commerce-green); font-size: 11px; }

.home-shop .store-hero h1 {
  max-width: 620px;
  margin-top: 25px;
  color: var(--commerce-ink);
  font-size: clamp(48px, 5.5vw, 76px);
  font-weight: 720;
  line-height: .99;
  letter-spacing: -.06em;
}

.home-shop .store-hero h1 span {
  color: var(--commerce-green);
}

.home-shop .store-hero-copy > p {
  max-width: 465px;
  margin: 20px 0 0;
  color: #64736a;
  font-size: 15px;
  line-height: 1.65;
}

.home-shop .store-hero-actions {
  justify-content: flex-start;
  margin-top: 27px;
}

.home-shop .store-hero-actions .button-primary {
  min-height: 52px;
  border: 0;
  border-radius: 999px;
  background: var(--commerce-green);
  color: #fff;
  box-shadow: 0 12px 26px rgba(7, 91, 69, .16);
}

.home-shop .store-hero-actions .button-secondary {
  min-height: 52px;
  border-color: #d5dfd5;
  border-radius: 999px;
  background: rgba(255,255,255,.62);
  color: var(--commerce-ink);
}

.home-shop .store-hero-products {
  position: relative;
  inset: auto;
  width: 100%;
  height: auto;
  min-height: 380px;
  display: grid;
  place-items: center;
  perspective: 1400px;
}

.home-shop .store-card-scene {
  position: relative;
  inset: auto;
  width: min(100%, 650px);
  transform: translate3d(var(--card-scroll-x, 0px), var(--card-scroll-y, 0px), 0) rotate(var(--card-scroll-roll, 0deg)) scale(var(--card-scroll-scale, 1));
}

.home-shop .store-card-scene::after {
  background: rgba(28, 58, 41, .24);
}

.home-shop .store-card-face {
  box-shadow: 0 36px 80px rgba(23, 44, 31, .24), inset 0 0 0 1px rgba(255,255,255,.08);
}

/* Home product shelf sits immediately after the hero. */
.home-shop .home-featured {
  padding: 76px 0 90px;
  border: 0;
  background: var(--commerce-paper);
}

.home-shop .home-section-heading {
  align-items: end;
  margin-bottom: 32px;
}

.home-shop .home-section-heading .kicker,
.home-shop .home-section-heading .kicker i {
  color: var(--commerce-green);
}

.home-shop .home-section-heading h2 {
  margin-top: 12px;
  color: var(--commerce-ink);
  font-size: clamp(38px, 4.4vw, 58px);
  line-height: .98;
  letter-spacing: -.055em;
}

.home-shop .home-section-heading h2 span { color: var(--commerce-green); }

.home-shop .home-section-heading > a {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--commerce-green);
  font-size: 14px;
  font-weight: 700;
}

.home-shop-jumpnav {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 22px;
}

.home-shop-jumpnav a {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 0 15px;
  border: 1px solid var(--commerce-line);
  border-radius: 999px;
  background: #fff;
  color: #52645a;
  font-size: 12px;
  font-weight: 650;
  transition: border-color .2s, color .2s, background .2s;
}

.home-shop-jumpnav a:hover {
  border-color: var(--commerce-green);
  background: #eaf2e8;
  color: var(--commerce-green);
}

.home-shop .home-product-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 0;
}

.home-shop .home-product-card {
  overflow: hidden;
  padding: 10px;
  border: 1px solid var(--commerce-line);
  border-radius: 22px;
  background: var(--commerce-card);
  box-shadow: 0 10px 30px rgba(21, 44, 31, .045);
  transition: transform .2s ease, box-shadow .2s ease;
}

.home-shop .home-product-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 38px rgba(21, 44, 31, .1);
}

.home-shop .home-product-image {
  aspect-ratio: 1.04;
  overflow: hidden;
  border: 0;
  border-radius: 15px;
  background: #e9ede7;
}

.home-shop .home-product-image img {
  object-fit: cover;
  transition: transform .3s ease;
}

.home-shop .home-product-card:hover .home-product-image img { transform: scale(1.04); }

.home-shop .home-product-info {
  min-height: 76px;
  align-items: center;
  padding: 16px 4px 10px;
}

.home-shop .home-product-info h3 {
  margin: 0;
  color: var(--commerce-ink);
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -.025em;
}

.home-shop .home-product-info small {
  display: block;
  margin-top: 5px;
  color: var(--commerce-muted);
  font-size: 9px;
  letter-spacing: .08em;
}

.home-shop .home-product-info > b,
.home-shop .home-metal-offer strong {
  color: var(--commerce-green-dark);
  font-size: 14px;
}

.home-shop .home-metal-offer { gap: 3px; }
.home-shop .home-metal-offer > span { display: none; }
.home-shop .home-metal-offer del { font-size: 10px; }

.home-shop .home-product-button {
  min-height: 43px;
  margin: 0 2px 2px;
  padding-inline: 15px;
  border: 0;
  border-radius: 999px;
  background: var(--commerce-green);
  color: #fff;
  font-size: 12px;
}

.home-shop .home-product-button span { color: inherit; }
.home-shop .home-nfc-badge { border-radius: 999px; background: var(--commerce-green); }

/* Catalog controls and cards: one clear search, simple category chips, artwork first. */
.products-page .shop-catalog {
  min-height: 100vh;
  padding: 55px 0 92px;
  background: var(--commerce-paper);
}

.products-page .shop-heading {
  align-items: end;
  gap: 24px;
}

.products-page .shop-eyebrow { color: var(--commerce-green); }
.products-page .shop-heading h2 {
  margin-top: 12px;
  color: var(--commerce-ink);
  font-size: clamp(36px, 4.6vw, 58px);
  letter-spacing: -.055em;
}

.products-page .shop-heading > p {
  max-width: 360px;
  color: var(--commerce-muted);
  font-size: 13px;
}

.products-page .shop-toolbar {
  position: static;
  grid-template-columns: minmax(220px, 320px) minmax(0, 1fr);
  align-items: center;
  gap: 12px 18px;
  margin-top: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}

.products-page .shop-search > span { color: var(--commerce-muted); }
.products-page .shop-search input {
  min-height: 48px;
  border: 1px solid var(--commerce-line);
  border-radius: 999px;
  background: #fff;
  color: var(--commerce-ink);
  box-shadow: 0 4px 14px rgba(19, 44, 29, .035);
}

.products-page .shop-search input:focus {
  border-color: #78a391;
  box-shadow: 0 0 0 3px rgba(7, 91, 69, .1);
}

.products-page .shop-filters {
  display: flex;
  gap: 8px;
  min-width: 0;
  overflow-x: auto;
  padding: 2px 1px 6px;
  scrollbar-width: thin;
}

.products-page .shop-filters button {
  min-height: 40px;
  flex: 0 0 auto;
  padding: 0 16px;
  border: 1px solid var(--commerce-line);
  border-radius: 999px;
  background: #fff;
  color: #58655d;
  font-size: 12px;
}

.products-page .shop-filters button span { color: #98a29a; }
.products-page .shop-filters button:hover,
.products-page .shop-filters button.active {
  border-color: var(--commerce-green);
  background: var(--commerce-green);
  color: #fff;
}
.products-page .shop-filters button.active span { color: rgba(255,255,255,.72); }

.products-page .shop-result-count {
  grid-column: 1 / -1;
  color: var(--commerce-muted);
  font-size: 11px;
}

.products-page .shop-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  gap: 18px;
  margin-top: 18px;
}

.products-page .shop-card,
.products-page .shop-card.is-featured {
  overflow: hidden;
  border: 1px solid var(--commerce-line);
  border-radius: 20px;
  background: var(--commerce-card);
  box-shadow: 0 8px 24px rgba(21, 44, 31, .045);
  transition: transform .2s ease, box-shadow .2s ease;
}

.products-page .shop-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 32px rgba(21, 44, 31, .1);
}

.products-page .shop-card-image,
.products-page .shop-card.is-portrait .shop-card-image,
.products-page .shop-card.is-wide .shop-card-image {
  aspect-ratio: 1.08;
  padding: 12px;
  border: 0;
  border-radius: 0;
  background: #e9ede7;
}

.products-page .shop-card-image img { object-fit: contain; }
.products-page .shop-card-badge {
  top: 12px;
  left: 12px;
  padding: 6px 9px;
  border: 0;
  border-radius: 999px;
  background: rgba(7, 72, 54, .92);
  color: #fff;
  font: 600 10px var(--sans, Arial, sans-serif);
  letter-spacing: 0;
  text-transform: none;
}

.products-page .shop-card-body {
  display: grid;
  grid-template-columns: 1fr auto;
  align-content: start;
  align-items: center;
  gap: 7px 10px;
  padding: 14px;
}

.products-page .shop-card-top { display: contents; }
.products-page .shop-card-title {
  overflow: hidden;
  color: var(--commerce-ink);
  font-size: 15px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.products-page .shop-card-number,
.products-page .shop-card-note,
.products-page .shop-card-preview { display: none; }

.products-page .shop-card-price {
  grid-column: 1;
  margin: 0;
  color: var(--commerce-green-dark);
  font-size: 14px;
  font-weight: 750;
}

.products-page .shop-card-actions {
  display: contents;
}

.products-page .shop-card-action {
  grid-column: 2;
  grid-row: 1 / span 2;
  min-width: 88px;
  min-height: 38px;
  justify-content: center;
  gap: 7px;
  padding: 0 12px;
  border: 0;
  border-radius: 999px;
  background: var(--commerce-green);
  color: #fff;
  font-size: 11px;
}

.products-page .shop-card-action span { color: #fff; }
.products-page .shop-card-action:hover { background: var(--commerce-green-dark); color: #fff; }

.products-page .shop-empty {
  margin-top: 24px;
  padding: 34px;
  border: 1px dashed #cbd7cd;
  border-radius: 18px;
  color: var(--commerce-muted);
  text-align: center;
}

.products-page .product-modal-panel { border-color: var(--commerce-line); background: #fff; color: var(--commerce-ink); }
.products-page .product-modal-copy > span { color: var(--commerce-green); }
.products-page .product-modal-copy p { color: var(--commerce-muted); }
.products-page .product-modal-close { color: var(--commerce-ink); }

/* Carry the same shop palette through every home page collection and footer. */
.home-shop .home-gold-metal {
  border-block: 1px solid #dfe8dc;
  background: radial-gradient(circle at 76% 48%, rgba(128, 173, 119, .24), transparent 34%), linear-gradient(120deg, #eef2e9, #e5eee3);
  color: var(--commerce-ink);
}

.home-shop .home-gold-metal::before,
.home-shop .home-gold-orbit { opacity: .35; border-color: rgba(7, 91, 69, .14); }
.home-shop .home-gold-layout { min-height: 0; padding-block: 68px; }
.home-shop .home-gold-copy h2 { color: var(--commerce-ink); }
.home-shop .home-gold-copy h2 em { color: var(--commerce-green); -webkit-text-stroke: 0; }
.home-shop .home-collection-index { color: #6e7b70; }
.home-shop .home-collection-index span { color: var(--commerce-green); }
.home-shop .home-gold-copy > p,
.home-shop .home-rings-copy > p { color: #66756a; }

.home-shop .home-gold-specs { border-color: #d5dfd3; }
.home-shop .home-gold-specs div + div { border-color: #d5dfd3; }
.home-shop .home-gold-specs small { color: #7d8a7e; }
.home-shop .home-gold-specs strong,
.home-shop .home-spec-offer strong { color: var(--commerce-green); }
.home-shop .home-spec-offer del { color: #8c958d; }
.home-shop .home-gold-copy > .button {
  min-height: 48px;
  border: 0;
  border-radius: 999px;
  background: var(--commerce-green);
  color: #fff;
  box-shadow: 0 12px 26px rgba(7, 91, 69, .14);
}

.home-shop .home-gold-stage { min-height: 510px; }
.home-shop .home-gold-glow { background: radial-gradient(circle, rgba(134, 165, 84, .29), rgba(149, 123, 44, .06) 48%, transparent 72%); }
.home-shop .home-gold-drag-note { color: #738276; }
.home-shop .home-metal-colours {
  border-color: #dfe6dc;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 12px 32px rgba(25, 47, 32, .11);
}
.home-shop .home-metal-colours legend { color: #66756a; }
.home-shop .home-metal-option span { color: #65736a; }
.home-shop .home-metal-option input:checked + span { border-color: #a6c2aa; background: #e8f1e7; color: var(--commerce-green); }
.home-shop .home-metal-option input:focus-visible + span { outline-color: var(--commerce-green); }

.home-shop .home-metal-catalog {
  padding: 74px 0 86px;
  border-bottom: 1px solid var(--commerce-line);
  background: #f8f9f5;
  color: var(--commerce-ink);
}
.home-shop .home-metal-catalog::before { display: none; }
.home-shop .home-metal-catalog .metal-design-heading > div > span { color: var(--commerce-green); }
.home-shop .home-metal-catalog .metal-design-heading h2 { color: var(--commerce-ink); }
.home-shop .home-metal-catalog .metal-design-heading p { color: var(--commerce-muted); }
.home-shop .home-metal-catalog .metal-collection-price { color: var(--commerce-green); }
.home-shop .home-metal-catalog .metal-collection-price span { color: var(--commerce-green); }
.home-shop .home-metal-catalog .metal-collection-price small { color: #879188; }
.home-shop .home-metal-catalog .metal-gold-grid { gap: 16px; }
.home-shop .home-metal-catalog .metal-design-card {
  overflow: hidden;
  border: 1px solid var(--commerce-line);
  border-radius: 19px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(21, 44, 31, .045);
}
.home-shop .home-metal-catalog .metal-design-card:hover { border-color: #b5cbb7; transform: translateY(-3px); }
.home-shop .home-metal-catalog .metal-design-image { border: 0; border-radius: 0; background: #e9ede7; }
.home-shop .home-metal-catalog .metal-design-copy { gap: 8px; padding: 13px; }
.home-shop .home-metal-catalog .metal-design-copy > div span { color: #839084; }
.home-shop .home-metal-catalog .metal-design-copy h3,
.home-shop .home-metal-catalog .metal-design-copy > b { color: var(--commerce-ink); }
.home-shop .home-metal-catalog .metal-design-copy > a {
  min-height: 38px;
  border: 0;
  border-radius: 999px;
  background: var(--commerce-green);
  color: #fff;
}
.home-shop .home-metal-catalog .metal-design-copy > a span { color: #fff; }
.home-shop .home-gold-see-more {
  min-height: 46px;
  border-color: #cbd9cb;
  border-radius: 999px;
  color: var(--commerce-green);
}
.home-shop .home-gold-see-more:hover { border-color: var(--commerce-green); background: var(--commerce-green); color: #fff; }

.home-shop .home-crypto-cards {
  padding: 78px 0 84px;
  border-bottom: 1px solid var(--commerce-line);
  background: #edf2e9;
  color: var(--commerce-ink);
}
.home-shop .home-crypto-cards::before,
.home-shop .home-crypto-gridlines { display: none; }
.home-shop .home-crypto-heading { grid-template-columns: 1fr 1fr; gap: 42px; }
.home-shop .home-crypto-heading h2 { margin-top: 14px; color: var(--commerce-ink); font-size: clamp(42px, 4.6vw, 64px); line-height: .98; }
.home-shop .home-crypto-heading h2 em { color: var(--commerce-green); -webkit-text-stroke: 0; }
.home-shop .home-crypto-intro p { color: #68766c; }
.home-shop .home-crypto-toolbar { margin-top: 30px; padding: 13px 0; border-color: #d5dfd4; }
.home-shop .home-crypto-count { color: #69766c; }
.home-shop .home-crypto-filters { gap: 7px; }
.home-shop .home-crypto-filter {
  min-height: 38px;
  border-color: #dbe4d9;
  background: #fff;
  color: #5d6b60;
  font: 600 11px var(--sans, Arial, sans-serif);
  letter-spacing: 0;
  text-transform: none;
}
.home-shop .home-crypto-filter span { color: #89968a; }
.home-shop .home-crypto-filter:hover,
.home-shop .home-crypto-filter.is-active { border-color: var(--commerce-green); background: var(--commerce-green); color: #fff; }
.home-shop .home-crypto-filter.is-active span { color: rgba(255,255,255,.72); }
.home-shop .home-crypto-filter:focus-visible { outline-color: var(--commerce-green); }
.home-shop .home-crypto-products { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 17px; margin-top: 22px; }
.home-shop .home-crypto-product {
  overflow: hidden;
  padding: 8px;
  border: 1px solid var(--commerce-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(21, 44, 31, .045);
}
.home-shop .home-crypto-art { border: 0; border-radius: 12px; background: #e9ede7; box-shadow: none; }
.home-shop .home-crypto-code { border: 0; background: var(--commerce-green); font: 600 9px var(--sans, Arial, sans-serif); letter-spacing: 0; }
.home-shop .home-crypto-meta { align-items: center; padding: 12px 3px 0; }
.home-shop .home-crypto-meta small { color: #8a968a; }
.home-shop .home-crypto-meta h3 { color: var(--commerce-ink); font-size: 15px; }
.home-shop .home-crypto-price small { color: #8a968a; }
.home-shop .home-crypto-price strong { color: var(--commerce-green); font-size: 13px; }
.home-shop .home-crypto-order {
  min-height: 38px;
  margin-top: 11px;
  border: 0;
  border-radius: 999px;
  background: var(--commerce-green);
  color: #fff;
  font-size: 11px;
}
.home-shop .home-crypto-order:hover { border-color: var(--commerce-green-dark); background: var(--commerce-green-dark); color: #fff; }
.home-shop .home-crypto-footer { margin-top: 30px; padding-top: 20px; border-color: #d5dfd4; color: #77857a; font: 600 10px var(--sans, Arial, sans-serif); letter-spacing: 0; text-transform: none; }
.home-shop .home-crypto-more {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 22px auto 0;
  padding: 0 22px;
  border: 1px solid #cad9ca;
  border-radius: 999px;
  background: #fff;
  color: var(--commerce-green);
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.home-shop .home-crypto-more:hover { border-color: var(--commerce-green); background: var(--commerce-green); color: #fff; }
.home-shop .home-crypto-more[hidden] { display: none; }

.home-shop .home-sticker-showcase {
  padding: 78px 0 84px;
  border-color: var(--commerce-line);
  background: #f8f9f5;
  color: var(--commerce-ink);
}
.home-shop .home-sticker-heading { grid-template-columns: 1fr 1fr; gap: 42px; }
.home-shop .home-sticker-heading h2 { margin-top: 14px; color: var(--commerce-ink); font-size: clamp(42px, 4.6vw, 64px); line-height: .98; }
.home-shop .home-sticker-heading h2 em { color: var(--commerce-green); -webkit-text-stroke: 0; }
.home-shop .home-sticker-showcase .home-collection-index { color: #6e7b70; }
.home-shop .home-sticker-showcase .home-collection-index span { color: var(--commerce-green); }
.home-shop .home-sticker-intro p { color: #69766d; }
.home-shop .home-sticker-intro a { margin-top: 15px; border-color: #bdd0bd; color: var(--commerce-green); }
.home-shop .home-sticker-grid { gap: 16px; margin-top: 30px; }
.home-shop .home-sticker-card { overflow: hidden; padding: 8px; border: 1px solid var(--commerce-line); border-radius: 20px; background: #fff; }
.home-shop .home-sticker-art { min-height: 0; aspect-ratio: 1.38; border: 0; border-radius: 14px; background: #e9ede7; box-shadow: none; }
.home-shop .home-sticker-art img { width: 84%; border-radius: 12px; box-shadow: 0 15px 24px rgba(24, 44, 28, .14); }
.home-shop .home-sticker-number { top: 11px; left: 11px; width: 30px; height: 30px; border: 0; background: var(--commerce-green); font: 600 10px var(--sans, Arial, sans-serif); }
.home-shop .home-sticker-meta { grid-template-columns: 1fr auto; gap: 10px; padding: 13px 5px 5px; }
.home-shop .home-sticker-meta small { color: #869187; font: 600 9px var(--sans, Arial, sans-serif); letter-spacing: .04em; }
.home-shop .home-sticker-meta h3 { margin-top: 5px; color: var(--commerce-ink); font-size: 18px; }
.home-shop .home-sticker-meta > strong { color: var(--commerce-green); font-size: 14px; }
.home-shop .home-sticker-meta > a { grid-column: 1 / -1; min-height: 38px; justify-content: space-between; border: 0; border-radius: 999px; background: var(--commerce-green); color: #fff; }
.home-shop .home-sticker-meta > a:hover { border-color: var(--commerce-green-dark); background: var(--commerce-green-dark); color: #fff; }

.home-shop .home-rings {
  border-color: var(--commerce-line);
  background: radial-gradient(circle at 73% 48%, rgba(128, 173, 119, .18), transparent 32%), #edf2e9;
  color: var(--commerce-ink);
}
.home-shop .home-rings-gridlines { display: none; }
.home-shop .home-rings-layout { min-height: 470px; grid-template-columns: .9fr 1.1fr; padding-block: 60px; }
.home-shop .home-rings-copy h2 { margin-top: 18px; color: var(--commerce-ink); font-size: clamp(42px, 4.6vw, 64px); line-height: .98; }
.home-shop .home-rings-copy h2 em { color: var(--commerce-green); -webkit-text-stroke: 0; }
.home-shop .home-coming-badge { margin-top: 20px; border-color: #ccdbcb; background: #fff; color: var(--commerce-green); font: 650 10px var(--sans, Arial, sans-serif); letter-spacing: .04em; }
.home-shop .home-rings-unavailable { min-height: 42px; margin-top: 20px; border-color: #cedbce; background: rgba(255,255,255,.7); color: #77857a; }
.home-shop .home-ring-floor { background: radial-gradient(ellipse, rgba(91, 133, 72, .17), transparent 70%); }

.home-shop .home-process,
.home-shop .home-trust {
  padding: 68px 0 74px;
  border-color: var(--commerce-line);
  background: #f8f9f5;
  color: var(--commerce-ink);
}
.home-shop .home-process-heading { align-items: end; }
.home-shop .home-process-heading small,
.home-shop .home-trust-heading small { color: var(--commerce-green); font: 700 10px var(--sans, Arial, sans-serif); letter-spacing: .08em; }
.home-shop .home-process-heading h2,
.home-shop .home-trust-heading h2 { width: auto; margin: 0; color: var(--commerce-ink); font-size: clamp(36px, 4.2vw, 54px); line-height: 1; letter-spacing: -.055em; }
.home-shop .home-process-grid,
.home-shop .home-trust-grid { gap: 12px; margin-top: 28px; border: 0; border-radius: 0; background: transparent; }
.home-shop .home-process-grid article,
.home-shop .home-trust-grid article {
  min-height: 0;
  padding: 20px;
  border: 1px solid var(--commerce-line);
  border-radius: 18px;
  background: #fff;
}
.home-shop .home-process-grid article > span,
.home-shop .home-trust-grid span { color: var(--commerce-green); font: 650 11px var(--sans, Arial, sans-serif); }
.home-shop .home-process-grid h3,
.home-shop .home-trust-grid h3 { margin: 38px 0 0; color: var(--commerce-ink); font-size: 19px; letter-spacing: -.025em; }
.home-shop .home-process-grid p,
.home-shop .home-trust-grid p { margin-top: 8px; color: var(--commerce-muted); font-size: 12px; line-height: 1.6; }
.home-shop .home-trust-heading { align-items: end; }
.home-shop .home-trust-heading h2 { margin-top: 10px; }
.home-shop .home-trust-heading > p { color: var(--commerce-muted); }
.home-shop .home-rings,
.home-shop .home-process { display: none; }

.home-shop .home-footer,
.products-page .footer {
  padding-top: 46px;
  border-color: var(--commerce-line);
  background: #f8f9f5;
  color: var(--commerce-ink);
}
.home-shop .footer .logo,
.products-page .footer .logo { color: var(--commerce-ink); }
.home-shop .footer .seo-footer-text,
.products-page .footer .seo-footer-text { color: var(--commerce-muted); }
.home-shop .footer nav a,
.products-page .footer nav a,
.home-shop .footer > small,
.products-page .footer > small,
.home-shop .footer > a,
.products-page .footer > a { color: #708076; }
.home-shop .footer nav a:hover,
.products-page .footer nav a:hover,
.home-shop .footer > a:hover,
.products-page .footer > a:hover { color: var(--commerce-green); }

/* Keep the design catalog's supporting links and order CTA in the same visual system. */
.products-page .service-links-section,
.products-page .shop-custom-cta { background: var(--commerce-paper); color: var(--commerce-ink); }
.products-page .service-links-section .kicker { color: var(--commerce-green); }
.products-page .service-links-section h2,
.products-page .shop-custom-cta h2 { color: var(--commerce-ink); }
.products-page .service-link-grid a {
  border-color: var(--commerce-line);
  border-radius: 14px;
  background: #fff;
  color: var(--commerce-ink);
}
.products-page .service-link-grid a:hover { border-color: #bdd0bd; background: #edf3ea; color: var(--commerce-green); }
.products-page .shop-custom-cta { border-color: var(--commerce-line); background: #eaf1e7; }
.products-page .shop-custom-cta p { color: var(--commerce-muted); }
.products-page .shop-custom-cta .button-primary { border: 0; border-radius: 999px; background: var(--commerce-green); color: #fff; }

@media (max-width: 1050px) {
  .home-shop .home-metal-catalog .metal-gold-grid,
  .home-shop .home-crypto-products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .home-shop .home-gold-layout { gap: 30px; }
  .home-shop .home-rings-layout { min-height: 0; }
}

@media (max-width: 1050px) {
  .home-shop .home-product-grid,
  .products-page .shop-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .home-shop .store-hero-layout { grid-template-columns: minmax(290px, .9fr) minmax(0, 1.1fr); }
}

@media (max-width: 767px) {
  .home-shop .store-hero-layout {
    min-height: 0;
    grid-template-columns: 1fr;
    gap: 20px;
    padding-block: 36px 28px;
  }

  .home-shop .store-hero-copy { order: 1; }
  .home-shop .store-hero-products { order: 0; min-height: 0; }
  .home-shop .store-card-scene { width: min(100%, 500px); }
  .home-shop .store-hero h1 { margin-top: 17px; font-size: clamp(42px, 11vw, 58px); }
  .home-shop .store-hero-copy > p { margin-top: 12px; font-size: 13px; }
  .home-shop .store-hero-actions { gap: 8px; margin-top: 18px; }
  .home-shop .store-hero-actions .button { min-height: 46px; }

  .home-shop .home-featured { padding: 48px 0 58px; }
  .home-shop .home-section-heading { gap: 14px; margin-bottom: 20px; }
  .home-shop .home-section-heading h2 { font-size: 38px; }
  .home-shop .home-section-heading > a { font-size: 12px; }
  .home-shop .home-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .home-shop .home-product-card { padding: 7px; border-radius: 17px; }
  .home-shop .home-product-image { border-radius: 12px; }
  .home-shop .home-product-info { min-height: 66px; padding: 11px 3px 8px; }
  .home-shop .home-product-info h3 { font-size: 14px; }
  .home-shop .home-product-info small { font-size: 8px; }
  .home-shop .home-product-info > b,
  .home-shop .home-metal-offer strong { font-size: 11px; }
  .home-shop .home-metal-offer del { font-size: 8px; }
  .home-shop .home-product-button { min-height: 38px; padding-inline: 10px; font-size: 10px; }

  .products-page .shop-catalog { padding: 36px 0 64px; }
  .products-page .shop-heading { display: block; }
  .products-page .shop-heading h2 { font-size: 38px; }
  .products-page .shop-heading > p { max-width: 440px; margin-top: 12px; font-size: 12px; }
  .products-page .shop-toolbar { grid-template-columns: 1fr; gap: 10px; margin-top: 20px; }
  .products-page .shop-search > span { display: none; }
  .products-page .shop-search input { min-height: 46px; }
  .products-page .shop-filters { margin-inline: -2px; }
  .products-page .shop-filters button { min-height: 37px; padding-inline: 13px; }
  .products-page .shop-result-count { grid-column: auto; }
  .products-page .shop-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
  .products-page .shop-card,
  .products-page .shop-card.is-featured { border-radius: 16px; }
  .products-page .shop-card-image,
  .products-page .shop-card.is-portrait .shop-card-image,
  .products-page .shop-card.is-wide .shop-card-image { aspect-ratio: .96; padding: 8px; }
  .products-page .shop-card-badge { top: 8px; left: 8px; padding: 5px 7px; font-size: 9px; }
  .products-page .shop-card-body { gap: 6px; padding: 10px; }
  .products-page .shop-card-title { font-size: 13px; }
  .products-page .shop-card-price { font-size: 12px; }
  .products-page .shop-card-action { min-width: 34px; width: 34px; min-height: 34px; padding: 0; font-size: 0; }
  .products-page .shop-card-action span { font-size: 16px; }
  .products-page .shop-card-action { grid-row: 1 / span 2; }

  .home-shop .home-gold-layout { min-height: 0; grid-template-columns: 1fr; gap: 22px; padding-block: 48px; }
  .home-shop .home-gold-copy h2 { margin-top: 16px; font-size: 44px; }
  .home-shop .home-gold-copy > p { margin-top: 13px; font-size: 13px; }
  .home-shop .home-gold-specs { margin-top: 20px; }
  .home-shop .home-gold-specs div { padding-block: 13px; }
  .home-shop .home-gold-stage { min-height: 0; padding: 16px 0 58px; }
  .home-shop .home-gold-card { width: 100%; }
  .home-shop .home-metal-colours { bottom: 0; }
  .home-shop .home-metal-option span { min-width: 72px; min-height: 34px; }

  .home-shop .home-metal-catalog,
  .home-shop .home-crypto-cards,
  .home-shop .home-sticker-showcase,
  .home-shop .home-process,
  .home-shop .home-trust { padding-block: 48px 54px; }
  .home-shop .home-metal-catalog .metal-design-heading { gap: 14px; }
  .home-shop .home-metal-catalog .metal-design-heading h2 { font-size: 36px; }
  .home-shop .home-metal-catalog .metal-gold-grid,
  .home-shop .home-crypto-products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .home-shop .home-metal-catalog .metal-design-card:nth-child(n+5) { display: none; }
  .home-shop .home-metal-catalog .metal-design-copy { padding: 9px; }
  .home-shop .home-metal-catalog .metal-design-copy h3 { font-size: 13px; }
  .home-shop .home-metal-catalog .metal-design-copy > b { font-size: 12px; }
  .home-shop .home-metal-catalog .metal-design-copy > a { min-height: 34px; padding-inline: 10px; font-size: 10px; }
  .home-shop .home-crypto-heading,
  .home-shop .home-sticker-heading { display: block; }
  .home-shop .home-crypto-heading h2,
  .home-shop .home-sticker-heading h2 { margin-top: 14px; font-size: 42px; }
  .home-shop .home-crypto-intro,
  .home-shop .home-sticker-intro { margin-top: 13px; padding: 0; }
  .home-shop .home-crypto-intro p,
  .home-shop .home-sticker-intro p { font-size: 13px; }
  .home-shop .home-crypto-toolbar { align-items: flex-start; flex-direction: column; gap: 10px; margin-top: 20px; }
  .home-shop .home-crypto-filter { min-height: 35px; padding-inline: 10px; }
  .home-shop .home-crypto-meta { align-items: flex-start; flex-direction: column; gap: 5px; }
  .home-shop .home-crypto-meta h3 { font-size: 13px; }
  .home-shop .home-crypto-order { min-height: 34px; padding-inline: 10px; font-size: 10px; }
  .home-shop .home-sticker-intro a { margin-top: 10px; }
  .home-shop .home-sticker-grid { grid-template-columns: 1fr; gap: 12px; margin-top: 22px; }
  .home-shop .home-sticker-art { aspect-ratio: 1.35; }
  .home-shop .home-sticker-meta h3 { font-size: 17px; }
  .home-shop .home-rings-layout { grid-template-columns: 1fr; gap: 0; padding-block: 48px; }
  .home-shop .home-rings-copy h2 { margin-top: 14px; font-size: 42px; }
  .home-shop .home-rings-copy > p { margin-top: 13px; font-size: 13px; }
  .home-shop .home-ring-stage { min-height: 300px; margin-top: 18px; transform: scale(.8); transform-origin: center top; }
  .home-shop .home-coming-badge { margin-top: 14px; }
  .home-shop .home-process-heading { display: block; }
  .home-shop .home-process-heading h2,
  .home-shop .home-trust-heading h2 { margin-top: 10px; font-size: 38px; }
  .home-shop .home-process-grid,
  .home-shop .home-trust-grid { grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 20px; }
  .home-shop .home-process-grid article,
  .home-shop .home-trust-grid article { padding: 14px; border-radius: 14px; }
  .home-shop .home-process-grid h3,
  .home-shop .home-trust-grid h3 { margin-top: 25px; font-size: 15px; }
  .home-shop .home-process-grid p,
  .home-shop .home-trust-grid p { font-size: 11px; }
  .home-shop .home-trust-heading { display: block; }
  .home-shop .home-trust-heading > p { margin-top: 10px; }
}

@media (max-width: 360px) {
  .home-shop .home-product-info { display: block; }
  .home-shop .home-metal-offer { align-items: baseline; margin-top: 4px; }
  .products-page .shop-card-body { grid-template-columns: minmax(0, 1fr) 32px; }
}

@media (prefers-reduced-motion: reduce) {
  .home-shop .home-product-card,
  .home-shop .home-product-image img,
  .products-page .shop-card { transition: none; }
}
