/* Final palette layer: neutral white, gray and graphite.
   Product images, the original logo and .shop-color-* swatches retain their colors. */
:root {
  color-scheme: light;
  --ink: #242424;
  --muted: #606060;
  --paper: #ffffff;
  --cream: #f7f7f7;
  --line: #dedede;
  --rust: #656565;
  --dark: #262626;
  --moss: #353535;
  --moss-light: #f0f0f0;
}

body, .hero, .collection, .closing, .diamond-section {
  background: #fff;
  color: var(--ink);
}
.header, footer {
  background: var(--dark);
  color: #fff;
  border-color: #414141;
}
.header nav { color: #f2f2f2; }
.header nav a:hover { color: #fff; text-decoration: underline; text-underline-offset: 6px; }
.header-cta { color: #fff; border-color: #858585; background: #303030; }
.header-cta:hover { background: #444; border-color: #bcbcbc; }
.header .count { background: #f2f2f2; color: #242424; }
.nav-toggle { color: #f5f5f5; border-color: #858585; background: #303030; }
.nav-toggle:hover { background: #444; }
.footer-inner p { color: #e0e0e0; }
.footer-inner > span { color: #c5c5c5; }

.eyebrow, .light, .hero-label span, .product-meta p,
.steps > div > span, .diamond-number, .diamond-intro .eyebrow { color: #626262; }
.hero h1 em, .section-top h2 em, .guide h2 em, .closing h2 em,
.size-header h2 em, .diamond-intro h2 em { color: #555; }
.lead, .hero-note, .section-top > p, .result-count, .product-meta small,
.guide-inner > div:first-child > p:last-child, .steps p,
.diamond-lead, .diamond-caption, .diamond-details p { color: var(--muted); }
.line { background: #b8b8b8; }
.hero-visual { border-color: #e3e3e3; box-shadow: 0 14px 44px #00000006; }
.hero-label { background: #f7f7f7; border-color: var(--line); color: var(--ink); }
.hero-label strong { color: #333; }
.ticker { background: #f7f7f7; color: #555; border-color: #e4e4e4; }
.ticker span:nth-child(even) { color: #727272; }

.primary, .dark, .diamond-cta {
  background: #353535;
  border-color: #353535;
  color: #fff;
  box-shadow: 0 7px 18px #0000000a;
}
.primary:hover, .dark:hover, .diamond-cta:hover {
  background: #1f1f1f;
  border-color: #1f1f1f;
  color: #fff;
  box-shadow: 0 8px 24px #00000014;
}
.outline, .filter, .size-filters button, .shop-type-filters button,
.gallery-controls button, .variant-carousel button, .variant-options button,
.measurement-link, .size-open {
  background: #fff;
  color: #333;
  border-color: #c7c7c7;
}
.outline:hover, .filter:hover, .size-filters button:hover:not([aria-pressed="true"]),
.shop-type-filters button:hover:not([aria-pressed="true"]),
.gallery-controls button:hover, .variant-carousel button:hover:not(:disabled),
.variant-options button:hover:not(:disabled), .measurement-link:hover, .size-open:hover {
  background: #f0f0f0;
  color: #242424;
  border-color: #929292;
}
.filter.active, .size-filters button[aria-pressed="true"], .size-filters button.active,
.shop-type-filters button[aria-pressed="true"], .variant-options button[aria-pressed="true"],
.variant-options button[aria-pressed="true"]:hover:not(:disabled) {
  background: #353535;
  color: #fff;
  border-color: #353535;
  box-shadow: 0 2px 8px #0000000a;
}

.product-card, .size-card { background: #fff; border-color: #e1e1e1; }
.product-card:hover, .size-card:hover { border-color: #ababab; box-shadow: 0 12px 32px #0000000b; }
.product-image, .size-image { border-bottom-color: #ededed; background: #fff; }
.product-image span, .size-image span { color: #333; background: #fffffff2; border-color: #d2d2d2; }
.product-meta h3, .size-meta h3, .diamond-details h3 { color: #242424; }
.plus { background: #f5f5f5; color: #353535; border-color: #ccc; }
.plus:hover { background: #353535; color: #fff; border-color: #353535; }
.product-meta .product-finish-count, .size-tag { background: #f1f1f1; color: #565656; }
.guide, .size-section { background: #f8f8f8; color: var(--ink); border-color: #e4e4e4; }
.steps > div, .catalog-toolbar, .size-toolbar { border-color: #dedede; }
.size-meta p, .size-footnote, .size-notes { color: var(--muted); }
.size-meta p.size-dimensions { color: #353535; }

dialog { color: var(--ink); background: #fff; border-color: #d9d9d9; box-shadow: 0 24px 100px #00000038; }
dialog::backdrop { background: #202020a6; }
dialog .close { color: #333; background: #fffffff2; border-color: #cfcfcf; box-shadow: 0 3px 14px #0000000a; }
dialog .close:hover { background: #ededed; }
.detail-copy > p:not(.eyebrow), .dialog-intro, .quote-item small { color: var(--muted); }
.detail-image-caption, .gallery-counter, .variant-counter { color: #555; }
.gallery-controls { background: #f6f6f6; border-color: #dedede; }
.gallery-open, .hero-size-link, .size-original, .remove { color: #3d3d3d; text-decoration-color: #aaa; }
.hero-size-link:hover { color: #1f1f1f; text-decoration-color: #555; }
.measurement-reference, .variant-picker, .diamond-product-features {
  background: #f8f8f8;
  color: var(--ink);
  border-color: #dedede;
}
.measurement-reference h3, .variant-header h3, .variant-group p { color: #333; }
.measurement-reference p, .variant-header p { color: var(--muted); }
.thumbs button { background: #fff; border-color: #d4d4d4; }
.thumbs button:hover { border-color: #888; }
.thumbs button[aria-pressed="true"] { border-color: #4b4b4b; box-shadow: 0 0 0 2px #ededed; }
.thumbs .technical-thumb { background: #f0f0f0; color: #353535; }
.product-size-guide { color: #3d3d3d; background: #f7f7f7; border-color: #d9d9d9; }
.product-size-guide:hover { background: #ededed; border-color: #aaa; }
.quote-item { border-bottom-color: #dedede; }
.quote-actions p { color: #555; }
.size-modal-copy { border-color: #dedede; }
.size-modal p { color: var(--muted); }
.size-modal-dimensions, .size-zoom-hint { color: #353535 !important; }
.size-specs > div { background: #f7f7f7; border-color: #dedede; }
.size-specs dt { color: #606060; }
.size-specs dd { color: #303030; }

.shop-product-header { background: #f7f7f7; border-color: #dedede; }
.shop-product-header label, .shop-selected-finish { color: #555; }
.shop-product-header select { background: #fff; color: #2a2a2a; border-color: #bcbcbc; }
.shop-selection-panel .variant-carousel { border-top-color: #dedede; }
.diamond-panel { background: #fff; border-color: #dedede; }
.diamond-panel::before { background: #8c8c8c; }
.diamond-details li { border-bottom-color: #dedede; }

button:focus-visible, a:focus-visible, .brand:focus-visible,
select:focus-visible, .diamond-cta:focus-visible,
.shop-product-header select:focus-visible, .shop-type-filters button:focus-visible,
.variant-options button:focus-visible, .variant-carousel button:focus-visible {
  outline-color: #525252;
}
select, input { accent-color: #353535; }
.filters, .size-filters, .thumbs { scrollbar-color: #aaa #f1f1f1; }
@media (max-width: 800px) {
  .header nav { background: #303030; color: #f5f5f5; border-color: #646464; box-shadow: 0 16px 30px #00000024; }
}
@media (max-width: 480px) {
  .diamond-details li:nth-last-child(-n+2) { border-bottom-color: #dedede; }
}
