.og-catalog{--og-gold:#a3874e;--og-gold-light:#bba270;--og-ink:#222;--og-line:#e7e3db;--og-muted:#62615f;color:var(--og-ink);font-family:inherit;max-width:1320px;margin:0 auto;padding:0 18px 68px;box-sizing:border-box}.og-catalog *, .og-catalog *:before,.og-catalog *:after{box-sizing:border-box}.og-catalog a{text-decoration:none!important}.og-catalog-hero{padding:65px 0 56px;text-align:center;border-bottom:1px solid var(--og-line)}.og-catalog-kicker,.og-section-eyebrow{font-family:inherit;font-weight:600;font-size:11px;letter-spacing:.23em;color:var(--og-gold);margin:0 0 12px}.og-catalog-hero h1{font-size:clamp(32px,4vw,52px);font-weight:500;line-height:1.15;margin:0 0 20px;color:var(--og-ink)}.og-catalog-lede{font-size:16px;line-height:1.85;color:var(--og-muted);max-width:810px;margin:0 auto 28px}.og-metal-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.og-metal-nav a{display:inline-flex;gap:8px;align-items:center;justify-content:center;border:1px solid var(--og-line);border-radius:2px;padding:11px 21px;color:var(--og-ink);font-size:14px;transition:border-color .2s,color .2s,background .2s}.og-metal-nav a:hover,.og-metal-nav a:focus-visible{border-color:var(--og-gold);color:var(--og-gold)}.og-metal-section{padding:54px 0 8px;scroll-margin-top:95px}.og-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px;border-bottom:1px solid var(--og-line);padding-bottom:21px}.og-section-text h2{font-size:clamp(27px,3vw,38px);font-weight:500;margin:0 0 10px;line-height:1.2;color:var(--og-ink)}.og-section-text>p:last-child{margin:0;color:var(--og-muted);font-size:14px;line-height:1.75;max-width:750px}.og-see-all{white-space:nowrap;color:var(--og-gold)!important;font-size:14px;font-weight:600;margin-bottom:3px}.og-see-all:hover{text-decoration:underline!important}.og-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.og-product-card{border:1px solid var(--og-line);background:#fff;display:flex;flex-direction:column;min-width:0;transition:border-color .2s,transform .2s,box-shadow .2s}.og-product-card:hover{border-color:#cbbd9f;box-shadow:0 8px 32px rgba(0,0,0,.055);transform:translateY(-2px)}.og-product-media{display:flex;aspect-ratio:1/1;align-items:center;justify-content:center;background:#f7f7f5;overflow:hidden;padding:18px}.og-product-media img.og-product-image{object-fit:contain;max-height:100%;max-width:100%;width:100%;height:100%;mix-blend-mode:multiply;transition:transform .25s}.og-product-card:hover .og-product-image{transform:scale(1.035)}.og-image-missing{display:flex;gap:8px;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#99958e;font-size:12px}.og-missing-icon{font-size:48px;line-height:1;color:#c1bbb1}.og-card-content{padding:22px 20px 21px;display:flex;flex:1;flex-direction:column;gap:12px}.og-card-content h3{font-size:16px;font-weight:600;line-height:1.55;margin:0}.og-card-content h3 a{color:var(--og-ink)!important}.og-card-content h3 a:hover{color:var(--og-gold)!important}.og-product-excerpt{font-size:13px;color:var(--og-muted);line-height:1.75;margin:0;flex:1}.og-product-link{color:var(--og-gold)!important;font-size:13px;font-weight:600;margin-top:auto;padding-top:3px}.og-product-link:hover{text-decoration:underline!important}.og-catalog-footer{display:flex;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid var(--og-line);margin-top:65px;padding:42px 0 0}.og-catalog-footer h2{font-size:clamp(23px,3vw,34px);font-weight:500;margin:0 0 8px}.og-catalog-footer p:last-child{font-size:14px;line-height:1.75;color:var(--og-muted);max-width:700px;margin:0}.og-catalog-cta{background:var(--og-gold);color:#fff!important;padding:15px 25px;white-space:nowrap;font-size:14px;font-weight:600}.og-catalog-cta:hover{background:#8b713f;color:#fff!important}@media(max-width:1080px){.og-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.og-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.og-catalog{padding:0 15px 40px}.og-catalog-hero{padding:39px 0}.og-metal-section{padding-top:37px}.og-section-head{align-items:start;flex-direction:column;gap:13px}.og-card-content{padding:14px 12px;gap:8px}.og-card-content h3{font-size:14px}.og-product-excerpt{font-size:12px}.og-catalog-footer{flex-direction:column;align-items:start;gap:20px;margin-top:38px}.og-product-media{padding:12px}}@media(max-width:390px){.og-product-grid{gap:9px}.og-product-excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.og-metal-nav a{padding:9px 13px;font-size:12px}}


/* v2 — expanded width, compact refined hero and left-side filtering */
.og-catalog{max-width:none!important;width:min(1540px,calc(100vw - 40px));position:relative;left:50%;transform:translateX(-50%);padding:0 18px 64px!important}
.og-catalog .og-catalog-hero{padding:27px 0 33px!important;margin:0;border-bottom:1px solid #e7e3db}
.og-catalog .og-catalog-hero h1{margin:0 0 12px;font-size:clamp(32px,3.6vw,50px)}
.og-catalog .og-catalog-subtitle{font-size:clamp(17px,1.8vw,23px);color:#a3874e;line-height:1.4;font-weight:500;margin:0 0 14px}
.og-catalog .og-catalog-lede{margin:0 auto 23px;max-width:830px}
.og-catalog .og-metal-nav{gap:12px}
.og-catalog .og-metal-nav a{min-width:128px;min-height:50px;font-size:16px;padding:12px 24px;font-weight:500}
.og-catalog .og-catalog-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:34px;align-items:start;margin-top:32px}
.og-catalog .og-filter-sidebar{position:sticky;top:108px;border:1px solid #e7e3db;background:#fff;padding:24px 20px 22px;display:flex;flex-direction:column;gap:11px}
.og-catalog .og-filter-top{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:10px}
.og-catalog .og-filter-top h2{font-size:20px;font-weight:550;margin:0;color:#242424}
.og-catalog .og-filter-reset{background:transparent;border:0;color:#a3874e;cursor:pointer;padding:4px 0;font-size:12px}
.og-catalog .og-filter-sidebar label{font-size:13px;font-weight:600;color:#333;margin-top:8px}
.og-catalog .og-filter-sidebar input,.og-catalog .og-filter-sidebar select{width:100%;min-height:44px;border:1px solid #ddd7cb;border-radius:0;background:#fff;color:#282828;padding:9px 12px;font-size:13px;box-shadow:none;outline-offset:2px}
.og-catalog .og-filter-sidebar input:focus,.og-catalog .og-filter-sidebar select:focus{border-color:#a3874e}
.og-catalog .og-filter-count{margin:9px 0 0;font-size:12px;color:#777}
.og-catalog .og-catalog-results{min-width:0}
.og-catalog .og-metal-section{padding:12px 0 34px;scroll-margin-top:110px}
.og-catalog .og-metal-section+.og-metal-section{padding-top:33px;border-top:1px solid #e7e3db}
.og-catalog .og-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.og-catalog .og-product-card{transition:box-shadow .18s ease,border-color .18s ease!important;transform:none!important}
.og-catalog .og-product-card:hover{transform:none!important;box-shadow:0 4px 12px rgba(0,0,0,.035)!important;border-color:#ddd2bb!important}
.og-catalog .og-product-card:hover .og-product-image{transform:none!important}
.og-catalog .og-product-card[hidden],.og-catalog .og-metal-section[hidden],.og-catalog .og-no-filter-results[hidden]{display:none!important}
.og-catalog .og-no-filter-results{padding:38px 12px;text-align:center;color:#777}
@media(min-width:1600px){.og-catalog .og-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1050px){.og-catalog .og-catalog-layout{grid-template-columns:220px minmax(0,1fr);gap:22px}.og-catalog .og-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.og-catalog{width:100%;left:auto;transform:none;padding:0 15px 40px!important}.og-catalog .og-catalog-hero{padding:23px 0 28px!important}.og-catalog .og-catalog-layout{display:block;margin-top:22px}.og-catalog .og-filter-sidebar{position:static;margin-bottom:25px;padding:17px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:8px}.og-catalog .og-filter-top,.og-catalog .og-filter-count{grid-column:1/-1}.og-catalog .og-filter-sidebar label{margin-top:0}.og-catalog .og-filter-sidebar label[for="og-product-search"],.og-catalog .og-filter-sidebar #og-product-search{grid-column:1/-1}.og-catalog .og-filter-sidebar label[for="og-metal-filter"]{grid-column:1;grid-row:4}.og-catalog .og-filter-sidebar label[for="og-category-filter"]{grid-column:2;grid-row:4}.og-catalog .og-filter-sidebar #og-metal-filter{grid-column:1;grid-row:5}.og-catalog .og-filter-sidebar #og-category-filter{grid-column:2;grid-row:5}.og-catalog .og-metal-nav a{min-width:105px;min-height:45px;font-size:14px;padding:10px 18px}.og-catalog .og-product-grid{gap:12px}.og-catalog .og-metal-section{padding-top:6px}}
@media(max-width:390px){.og-catalog .og-filter-sidebar{display:flex}.og-catalog .og-metal-nav a{min-width:0;flex:1 1 43%}}

/* v2.1 – refined always-visible checkbox sidebar; no native dropdowns */
.og-catalog .og-filter-sidebar{gap:0;padding:22px 19px 18px}
.og-catalog .og-filter-top{margin-bottom:17px}
.og-catalog .og-filter-sidebar > label[for="og-product-search"]{font-size:12px;margin:0 0 9px;font-weight:600}
.og-catalog .og-filter-sidebar #og-product-search{font-size:13px;margin-bottom:20px;min-height:43px}
.og-catalog .og-filter-group{border:0;border-top:1px solid #eeeae3;padding:17px 0 16px;margin:0;min-width:0}
.og-catalog .og-filter-group legend{font-size:13px;font-weight:650;color:#282828;padding:0 7px 0 0;margin:0;float:none;width:auto;line-height:1.4}
.og-catalog .og-filter-options{display:flex;flex-direction:column;gap:5px;margin-top:11px}
.og-catalog .og-filter-sidebar .og-check-option{display:flex;align-items:center;gap:10px;padding:8px 9px;margin:0;border-radius:3px;border:1px solid transparent;font-size:13px;font-weight:400;color:#4b4946;line-height:1.4;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}
.og-catalog .og-filter-sidebar .og-check-option:hover{background:#faf8f4}
.og-catalog .og-filter-sidebar .og-check-option:has(input:checked){background:#faf8f3;border-color:#ece4d4;color:#222}
.og-catalog .og-filter-sidebar input.og-metal-check,.og-catalog .og-filter-sidebar input.og-category-check{appearance:none;-webkit-appearance:none;flex:none;width:16px!important;height:16px!important;min-height:16px!important;margin:0;padding:0!important;border:1px solid #bfb9ad;border-radius:3px;background:#fff;box-shadow:none;cursor:pointer;position:relative}
.og-catalog .og-filter-sidebar input.og-metal-check:checked,.og-catalog .og-filter-sidebar input.og-category-check:checked{background:#a3874e;border-color:#a3874e}
.og-catalog .og-filter-sidebar input.og-metal-check:checked::after,.og-catalog .og-filter-sidebar input.og-category-check:checked::after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.og-catalog .og-filter-sidebar input.og-metal-check:focus-visible,.og-catalog .og-filter-sidebar input.og-category-check:focus-visible{outline:2px solid #a3874e;outline-offset:3px}
.og-catalog .og-filter-count{border-top:1px solid #eeeae3;padding-top:14px;margin:0}
@media(max-width:700px){
 .og-catalog .og-filter-sidebar{display:flex;flex-direction:column;gap:0;padding:19px}
 .og-catalog .og-filter-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 6px}
 .og-catalog .og-filter-sidebar .og-check-option{font-size:12px;padding:8px 4px}
 .og-catalog .og-filter-group{padding:15px 0}
 .og-catalog .og-filter-sidebar #og-product-search{width:100%;margin-bottom:16px}
}
@media(max-width:390px){.og-catalog .og-filter-options{grid-template-columns:1fr}}


/* v2.2: category accordion, independently scrolling list; compact metadata */
.og-catalog .og-filter-accordion {display:block;min-width:0;border-top:1px solid #eeeae3;padding:0;margin:0 0 8px;}
.og-catalog .og-filter-accordion > summary {list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-size:13px;font-weight:650;color:#282828;padding:18px 0;outline-offset:3px;}
.og-catalog .og-filter-accordion > summary::-webkit-details-marker {display:none;}
.og-catalog .og-filter-accordion .og-accordion-indicator {width:8px;height:8px;border-right:1.5px solid #a3874e;border-bottom:1.5px solid #a3874e;transform:rotate(45deg);margin-right:4px;transition:transform .15s ease;}
.og-catalog .og-filter-accordion[open] .og-accordion-indicator {transform:rotate(225deg);}
.og-catalog .og-filter-accordion > .og-filter-options {max-height:min(34vh,265px);overflow-y:auto;overscroll-behavior:contain;padding:0 4px 9px 0;margin-top:0;scrollbar-width:thin;scrollbar-color:#c9bc9f #f7f5f1;}
.og-catalog .og-filter-sidebar .og-filter-accordion .og-check-option {padding:7px 5px;}
.og-catalog .og-card-specs {display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:-3px;color:#746b5d;font-size:11px;line-height:1.4;}
.og-catalog .og-card-specs span + span {position:relative;}
@media(max-width:700px){.og-catalog .og-filter-accordion > .og-filter-options {max-height:230px;display:flex;flex-direction:column;}}

/* v2.3: Metal uses the same accessible accordion as Product Category. */
.og-catalog .og-filter-metals.og-filter-accordion { border-top:1px solid #eeeae3; }
.og-catalog .og-card-specs .og-spec-emphasis {font-weight:700;color:#504635;}

/* v2.4: Weight and Purity labels only, black and bold. */
.og-catalog .og-card-specs .og-spec-emphasis{color:#111!important;font-weight:700!important;}

/* v2.6: stable filter scrolling, one-line Weight value */
.og-catalog .og-catalog-layout { overflow-anchor:none; }
.og-catalog .og-catalog-results { min-height:calc(100vh - 155px); overflow-anchor:none; }
.og-catalog .og-card-specs { display:block !important; }
.og-catalog .og-card-specs > span { display:inline !important; white-space:normal; }
.og-catalog .og-card-specs .og-spec-emphasis { display:inline !important; margin-right:3px; }

/* v2.9: product browsing uses sidebar filters only; top toolbar removed. */


/* v2.10.0 — Manus-inspired editorial visual layer.
 * Intentionally scoped to the catalog shortcode. The approved sidebar layout,
 * product query, card data, filters, navigation and WooCommerce links stay intact.
 * Warm neutrals and restrained Opulent gold/forest accents; no global theme overrides.
 */
.og-catalog {
    --og-gold: #a3874e;
    --og-gold-light: #c2a76e;
    --og-ink: #27231d;
    --og-muted: #676159;
    --og-line: #e5ded2;
    --og-paper: #fbf8f2;
    --og-card: #fffdfa;
    --og-image: #f2eee6;
    --og-forest: #143a2f;
    font-family: 'Outfit', Arial, sans-serif;
    color: var(--og-ink);
    isolation: isolate;
    z-index: 0;
}
/* Full-bleed paper only behind the catalog, not the site's existing header/footer. */
.og-catalog::before {
    content: '';
    position: absolute;
    inset-block: 0;
    left: 50%;
    width: 100vw;
    max-width: none;
    transform: translateX(-50%);
    background: var(--og-paper);
    pointer-events: none;
    z-index: -1;
}
.og-catalog .og-catalog-hero {
    text-align: left;
    padding: 60px 18px 52px !important;
    border-bottom: 1px solid var(--og-line);
    overflow: hidden;
    position: relative;
}
/* Abstract, understated ring like the quiet geometric motif of the reference. */
.og-catalog .og-catalog-hero::after {
    content: '';
    position: absolute;
    width: min(38vw, 390px);
    aspect-ratio: 1;
    right: 6%;
    top: -29%;
    border: clamp(22px, 4vw, 58px) solid rgba(187,162,112,.07);
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
}
.og-catalog .og-catalog-hero > * { position: relative; z-index: 1; }
.og-catalog .og-catalog-hero h1 {
    max-width: 710px;
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-size: clamp(54px, 6vw, 94px);
    font-weight: 500;
    line-height: .88;
    letter-spacing: -.025em;
    color: var(--og-ink);
    margin: 0 0 17px;
}
.og-catalog .og-catalog-hero h1 em {
    display: block;
    font-weight: 400;
    color: var(--og-gold);
    line-height: 1;
}
.og-catalog .og-catalog-subtitle {
    font: 500 11px/1.6 'Outfit', Arial, sans-serif;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--og-gold);
    margin: 0 0 12px;
}
.og-catalog .og-catalog-lede {
    font: 400 14px/1.8 'Outfit', Arial, sans-serif;
    color: var(--og-muted);
    max-width: 630px;
    margin: 0 0 22px;
}
.og-catalog .og-metal-nav {
    justify-content: flex-start;
    gap: 9px;
}
.og-catalog .og-metal-nav a {
    min-width: 85px;
    min-height: 35px;
    padding: 8px 15px;
    font: 500 12px/1.4 'Outfit', Arial, sans-serif;
    border: 1px solid #e0d4bf;
    background: rgba(255,253,250,.75);
    color: #5d5549;
    border-radius: 0;
}
.og-catalog .og-metal-nav a:hover,
.og-catalog .og-metal-nav a:focus-visible {
    background: var(--og-card);
    border-color: var(--og-gold);
    color: var(--og-gold);
}
.og-catalog .og-catalog-layout {
    margin-top: 31px;
    gap: 32px;
}
.og-catalog .og-filter-sidebar {
    background: var(--og-card);
    border: 1px solid var(--og-line);
}
.og-catalog .og-filter-top h2 {
    color: var(--og-ink);
    font: 500 26px/1.15 'Cormorant Garamond', Georgia, serif;
}
.og-catalog .og-filter-reset {
    color: var(--og-gold);
    font-family: 'Outfit', Arial, sans-serif;
}
.og-catalog .og-filter-sidebar > label,
.og-catalog .og-filter-accordion > summary {
    font-family: 'Outfit', Arial, sans-serif;
    color: #474137;
}
.og-catalog .og-filter-sidebar #og-product-search {
    background: #fff;
    border-color: #dfd7ca;
    border-radius: 0;
    font-family: 'Outfit', Arial, sans-serif;
}
.og-catalog .og-filter-sidebar .og-check-option {
    color: #5c574f;
}
.og-catalog .og-metal-section {
    padding-bottom: 43px;
}
.og-catalog .og-metal-section + .og-metal-section {
    border-color: var(--og-line);
    padding-top: 43px;
}
.og-catalog .og-section-head {
    border: none;
    padding-bottom: 0;
    margin-bottom: 19px;
    align-items: flex-end;
}
.og-catalog .og-section-eyebrow {
    font: 600 10px/1.4 'Outfit', Arial, sans-serif;
    letter-spacing: .22em;
    color: var(--og-gold);
    margin: 0 0 9px;
}
.og-catalog .og-section-text h2 {
    font: 500 clamp(36px, 3.4vw, 52px)/.95 'Cormorant Garamond', Georgia, serif;
    letter-spacing: -.015em;
    color: var(--og-ink);
    margin: 0 0 9px;
}
.og-catalog .og-section-text > p:last-child {
    color: var(--og-muted);
    font: 400 13px/1.65 'Outfit', Arial, sans-serif;
}
.og-catalog .og-see-all {
    font: 600 11px/1.5 'Outfit', Arial, sans-serif;
    color: var(--og-forest) !important;
    letter-spacing: .045em;
}
.og-catalog .og-see-all:hover { color: var(--og-gold) !important; }
.og-catalog .og-product-grid { gap: 17px; }
.og-catalog .og-product-card {
    background: var(--og-card);
    border: 1px solid #e9e2d6;
    box-shadow: 0 1px 3px rgba(50,38,16,.016);
}
.og-catalog .og-product-card:hover {
    border-color: #cabb9e !important;
    box-shadow: 0 5px 16px rgba(36,29,16,.055) !important;
}
.og-catalog .og-product-media {
    background: var(--og-image);
    padding: 14px;
    aspect-ratio: 1 / .94;
    border-bottom: 1px solid #ebe4d9;
}
.og-catalog .og-product-media img.og-product-image {
    mix-blend-mode: multiply;
}
.og-catalog .og-card-content {
    padding: 16px 17px 19px;
    gap: 9px;
}
.og-catalog .og-card-content h3 {
    font: 500 24px/1.08 'Cormorant Garamond', Georgia, serif;
    letter-spacing: -.014em;
    margin: 0;
}
.og-catalog .og-card-content h3 a {
    color: var(--og-ink) !important;
}
.og-catalog .og-card-specs {
    color: #766d5f;
    font: 400 11px/1.5 'Outfit', Arial, sans-serif;
    margin-top: 0;
}
.og-catalog .og-card-specs .og-spec-emphasis { color: #423a2e !important; }
.og-catalog .og-product-excerpt {
    color: var(--og-muted);
    font: 400 12px/1.7 'Outfit', Arial, sans-serif;
    margin-top: 0;
}
.og-catalog .og-product-link {
    font: 600 11px/1.5 'Outfit', Arial, sans-serif;
    color: var(--og-forest) !important;
    letter-spacing: .035em;
    padding-top: 7px;
}
.og-catalog .og-product-link:hover { color: var(--og-gold) !important; }
.og-catalog .og-filter-count { color: var(--og-muted); }
/* Forest-colored editorial CTA band contained within the catalog. */
.og-catalog .og-catalog-footer {
    position: relative;
    isolation: isolate;
    background: var(--og-forest);
    color: #fffdf7;
    border: 0;
    margin: 46px 0 0;
    padding: 47px 38px;
    overflow: hidden;
}
.og-catalog .og-catalog-footer::before {
    content: '';
    position: absolute;
    z-index: -1;
    width: 430px;
    aspect-ratio: 1;
    right: 13%;
    top: -175px;
    border: 44px solid rgba(233,213,162,.05);
    border-radius: 50%;
    pointer-events: none;
}
.og-catalog .og-catalog-footer h2 {
    font: 500 clamp(32px, 3.5vw, 48px)/1 'Cormorant Garamond', Georgia, serif;
    color: #fffdf7;
    margin-bottom: 10px;
}
.og-catalog .og-catalog-footer .og-section-eyebrow { color: #c6ab77; }
.og-catalog .og-catalog-footer p:last-child {
    color: #e2e5d9;
    font-size: 13px;
}
.og-catalog .og-catalog-cta {
    border: 1px solid #e8dfce;
    background: #f5eee0;
    color: var(--og-forest) !important;
    font: 600 12px/1.5 'Outfit', Arial, sans-serif;
    padding: 13px 23px;
    transition: background .2s;
}
.og-catalog .og-catalog-cta:hover { background: #fff; color: var(--og-forest) !important; }
@media (min-width: 1500px) {
    .og-catalog .og-catalog-hero { padding-top: 73px !important; padding-bottom: 61px !important; }
}
@media (max-width: 1050px) {
    .og-catalog .og-catalog-hero h1 { font-size: clamp(50px, 7vw, 75px); }
    .og-catalog .og-product-grid { gap: 14px; }
    .og-catalog .og-card-content h3 { font-size: 22px; }
}
@media (max-width: 700px) {
    .og-catalog .og-catalog-hero {
        padding: 39px 3px 31px !important;
    }
    .og-catalog .og-catalog-hero h1 {
        font-size: clamp(51px, 12vw, 72px);
        max-width: 100%;
    }
    .og-catalog .og-catalog-hero::after { right: -30%; top: -9%; width: 76vw; }
    .og-catalog .og-catalog-subtitle { font-size: 10px; letter-spacing: .14em; }
    .og-catalog .og-catalog-lede { font-size: 13px; }
    .og-catalog .og-metal-nav { gap: 8px; }
    .og-catalog .og-metal-nav a { min-width: 0; min-height: 38px; padding: 9px 13px; font-size: 12px; }
    .og-catalog .og-catalog-layout { margin-top: 21px; }
    .og-catalog .og-filter-top h2 { font-size: 25px; }
    .og-catalog .og-section-text h2 { font-size: 44px; }
    .og-catalog .og-section-head { align-items: flex-start; }
    .og-catalog .og-product-grid { gap: 11px; }
    .og-catalog .og-product-media { padding: 9px; }
    .og-catalog .og-card-content { padding: 12px 10px 15px; gap: 7px; }
    .og-catalog .og-card-content h3 { font-size: 21px; }
    .og-catalog .og-product-excerpt { font-size: 11px; }
    .og-catalog .og-catalog-footer { padding: 31px 23px; margin-top: 22px; }
    .og-catalog .og-catalog-footer h2 { font-size: 39px; }
}
@media (max-width: 390px) {
    .og-catalog .og-catalog-hero h1 { font-size: 48px; }
    .og-catalog .og-card-content h3 { font-size: 19px; }
    .og-catalog .og-catalog-footer { padding: 27px 19px; }
}
@media (prefers-reduced-motion: reduce) {
    .og-catalog .og-product-card,
    .og-catalog .og-product-card *,
    .og-catalog .og-metal-nav a { transition: none !important; }
}


/* v2.10.1 — full-width catalog sections and centered intro.
 * Only layout geometry changes; data, filters, product cards and site header/footer stay intact.
 */
.og-catalog {
    width: 100vw !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
    left: 50% !important;
    transform: translateX(-50%) !important;
    background: var(--og-paper);
}
/* The catalog itself is now full bleed: no overshooting background pseudo-element required. */
.og-catalog::before { display: none; }
.og-catalog .og-catalog-hero {
    width: 100%;
    text-align: center;
    padding: 60px 24px 54px !important;
}
.og-catalog .og-catalog-hero h1 {
    margin-left: auto;
    margin-right: auto;
}
.og-catalog .og-catalog-lede {
    margin-left: auto;
    margin-right: auto;
}
.og-catalog .og-metal-nav { justify-content: center; }
/* Keep the sidebar and grids in a comfortable central reading width. */
.og-catalog .og-catalog-layout {
    width: calc(100% - 80px);
    max-width: 1440px;
    margin: 31px auto 0;
}
/* The forest CTA itself reaches both edges, while its content remains aligned. */
.og-catalog .og-catalog-footer {
    width: 100%;
    margin: 46px 0 0;
    padding: 47px max(40px, calc((100vw - 1440px) / 2 + 40px));
}
@media (max-width: 700px) {
    .og-catalog .og-catalog-hero { padding: 39px 18px 31px !important; }
    .og-catalog .og-catalog-layout {
        width: calc(100% - 30px);
        margin-top: 21px;
    }
    .og-catalog .og-catalog-footer {
        padding: 31px 23px;
        margin-top: 22px;
    }
}
@media (max-width: 390px) {
    .og-catalog .og-catalog-footer { padding: 27px 19px; }
}


/* v2.10.2 — precise full-bleed edges, more interior hero breathing space,
 * larger typographic scale and decorated metal links.
 * Restricted to this catalog; product/filter behavior stays unchanged.
 */

/* Elementor Text Editor wrapping the catalog may inject a 10–15px top/bottom
 * inset and empty paragraphs. Remove only those wrapper gaps, not site header
 * or footer spacing. Current Precious Metals page is ID 6007. */
body.page-id-6007 .e-con:has(> .elementor-widget-text-editor .og-catalog) {
    --padding-top: 0px;
    --padding-bottom: 0px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    row-gap: 0;
}
body.page-id-6007 .elementor-widget-text-editor:has(.og-catalog),
body.page-id-6007 .elementor-widget-text-editor:has(.og-catalog) > .elementor-widget-container {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
body.page-id-6007 .elementor-widget-text-editor:has(.og-catalog) > .elementor-widget-container > p:empty {
    display: none !important;
}
body.page-id-6007 .elementor-widget-text-editor:has(.og-catalog) > .elementor-widget-container > p {
    margin-block: 0 !important;
}

/* The outside edge touches header/footer; only the inside hero text moves down. */
.og-catalog .og-catalog-hero {
    padding-top: 99px !important;
    padding-bottom: 61px !important;
}
.og-catalog .og-catalog-subtitle {
    font-size: 12px;
}
.og-catalog .og-catalog-lede {
    font-size: 15.5px;
    line-height: 1.85;
    max-width: 690px;
    margin-bottom: 26px;
}

/* Scroll-to-section links: larger clickable surface, gold dot, down chevron. */
.og-catalog .og-metal-nav {
    gap: 11px;
}
.og-catalog .og-metal-nav a,
.og-catalog .og-metal-nav a:link,
.og-catalog .og-metal-nav a:visited {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 139px;
    min-height: 49px;
    padding: 12px 16px;
    color: #4e473d !important;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
    border-color: #e0d4bf;
}
.og-catalog .og-metal-nav a::before {
    content: '';
    flex: 0 0 5px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--og-gold);
}
.og-catalog .og-metal-nav a::after {
    content: '';
    flex: 0 0 7px;
    width: 7px;
    height: 7px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
    margin-left: auto;
}
.og-catalog .og-metal-nav a:hover,
.og-catalog .og-metal-nav a:focus-visible,
.og-catalog .og-metal-nav a:visited:hover {
    color: var(--og-gold) !important;
    border-color: var(--og-gold);
    background: var(--og-card);
}

/* Modest type-size increase across the catalog, without moving site nav/footer. */
.og-catalog .og-section-text > p:last-child { font-size: 14.5px; }
.og-catalog .og-section-eyebrow { font-size: 11px; }
.og-catalog .og-card-content h3 { font-size: 26px; }
.og-catalog .og-product-excerpt { font-size: 13.5px; }
.og-catalog .og-card-specs { font-size: 12px; }
.og-catalog .og-product-link { font-size: 12px; }
.og-catalog .og-see-all { font-size: 12px; }
.og-catalog .og-filter-sidebar > label,
.og-catalog .og-filter-accordion > summary { font-size: 13.5px; }
.og-catalog .og-filter-sidebar .og-check-option,
.og-catalog .og-filter-sidebar #og-product-search { font-size: 13.5px; }
.og-catalog .og-filter-count { font-size: 13px; }
.og-catalog .og-catalog-footer h2 { font-size: clamp(34px, 3.7vw, 51px); }
.og-catalog .og-catalog-footer p:last-child { font-size: 14.5px; }
.og-catalog .og-catalog-cta { font-size: 13px; }

/* Explicit unvisited AND visited link colors prevent purple defaults.
 * Match each link role; never globally overwrite theme/other widget anchors. */
.og-catalog .og-product-card .og-product-media:link,
.og-catalog .og-product-card .og-product-media:visited,
.og-catalog .og-card-content h3 a:link,
.og-catalog .og-card-content h3 a:visited {
    color: var(--og-ink) !important;
}
.og-catalog .og-product-link:link,
.og-catalog .og-product-link:visited,
.og-catalog .og-see-all:link,
.og-catalog .og-see-all:visited {
    color: var(--og-forest) !important;
}
.og-catalog .og-catalog-cta:link,
.og-catalog .og-catalog-cta:visited {
    color: var(--og-forest) !important;
}
.og-catalog .og-card-content h3 a:hover,
.og-catalog .og-product-link:hover,
.og-catalog .og-see-all:hover {
    color: var(--og-gold) !important;
}

/* No white seam between the forest band and the existing site footer. */
.og-catalog .og-catalog-footer {
    margin-bottom: 0 !important;
}

@media (max-width: 700px) {
    .og-catalog .og-catalog-hero {
        padding: 66px 18px 40px !important;
    }
    .og-catalog .og-catalog-lede { font-size: 14px; }
    .og-catalog .og-metal-nav { gap: 8px; }
    .og-catalog .og-metal-nav a,
    .og-catalog .og-metal-nav a:link,
    .og-catalog .og-metal-nav a:visited {
        min-width: 0;
        flex: 1 1 calc(50% - 8px);
        min-height: 46px;
        padding: 10px 12px;
        font-size: 13px;
    }
    .og-catalog .og-card-content h3 { font-size: 22px; }
    .og-catalog .og-product-excerpt { font-size: 12px; }
    .og-catalog .og-card-specs { font-size: 11px; }
    .og-catalog .og-section-text > p:last-child { font-size: 13.5px; }
    .og-catalog .og-catalog-footer h2 { font-size: 40px; }
    .og-catalog .og-catalog-footer p:last-child { font-size: 13.5px; }
}
@media (max-width: 390px) {
    .og-catalog .og-catalog-hero { padding-top: 57px !important; }
    .og-catalog .og-metal-nav a,
    .og-catalog .og-metal-nav a:link,
    .og-catalog .og-metal-nav a:visited {
        flex: 1 1 calc(50% - 8px);
        font-size: 12.5px;
    }
    .og-catalog .og-card-content h3 { font-size: 20px; }
}


/* v2.10.3 — fix shortcode-widget seams; compact arrows and distinct metal dots.
 * The CSS is page-scoped for Elementor wrapper normalization. No markup, JS,
 * WooCommerce queries, header or footer are modified.
 */

/* The catalog is rendered by an Elementor Text Editor widget on page 6007.
 * It may generate non-content <p>/<br> siblings before and after the shortcode.
 * Suppress those in this single widget, and reset vertical padding along its
 * Elementor container ancestors. The actual catalog content is preserved. */
body.page-id-6007 .elementor .e-con:has(#opulent-metals-catalog) {
    --padding-top: 0px;
    --padding-bottom: 0px;
    --margin-top: 0px;
    --margin-bottom: 0px;
    padding-block: 0 !important;
    margin-block: 0 !important;
    row-gap: 0 !important;
}
body.page-id-6007 .elementor-widget-text-editor:has(#opulent-metals-catalog),
body.page-id-6007 .elementor-widget-text-editor:has(#opulent-metals-catalog) > .elementor-widget-container {
    padding-block: 0 !important;
    margin-block: 0 !important;
}
body.page-id-6007 .elementor-widget-text-editor:has(#opulent-metals-catalog) > .elementor-widget-container > p:not(:has(#opulent-metals-catalog)),
body.page-id-6007 .elementor-widget-text-editor:has(#opulent-metals-catalog) > .elementor-widget-container > br {
    display: none !important;
}

/* Small, optically balanced chevron, rather than the tall theme-inherited one. */
.og-catalog .og-metal-nav a::after {
    content: '' !important;
    display: block !important;
    width: 6px !important;
    height: 6px !important;
    min-width: 6px !important;
    min-height: 6px !important;
    max-width: 6px !important;
    max-height: 6px !important;
    flex: 0 0 6px !important;
    border: 0 !important;
    border-right: 1.25px solid currentColor !important;
    border-bottom: 1.25px solid currentColor !important;
    border-radius: 0 !important;
    transform: translateY(-1px) rotate(45deg) !important;
    margin-left: auto !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Individually coded accents based on each metal; decorative only. */
.og-catalog .og-metal-nav a[href="#og-metal-gold"]::before { background-color: #BD9652 !important; }
.og-catalog .og-metal-nav a[href="#og-metal-silver"]::before { background-color: #9EA5AF !important; }
.og-catalog .og-metal-nav a[href="#og-metal-platinum"]::before { background-color: #6E8794 !important; }
.og-catalog .og-metal-nav a[href="#og-metal-palladium"]::before { background-color: #527F6D !important; }


/* v2.10.5 — only increase the hero's internal top spacing.
 * The outer section remains flush with the header; all other approved styles are untouched.
 */
.og-catalog .og-catalog-hero {
    padding-top: 125px !important;
}
@media (max-width: 700px) {
    .og-catalog .og-catalog-hero { padding-top: 106px !important; }
}
@media (max-width: 390px) {
    .og-catalog .og-catalog-hero { padding-top: 97px !important; }
}


/* v2.10.6 — Correct the root cause confirmed in Firefox Inspector.
 * frontend-polish.css has a rule like:
 * body.opulent-precious-metals-page .og-catalog .og-catalog-hero { padding-top:28px!important; }
 * Its specificity overrode the earlier hero spacing declaration.
 * ID-scoped selectors win regardless of stylesheet loading order.
 * Only the hero internal top spacing is modified here.
 */
body #opulent-metals-catalog.og-catalog > header.og-catalog-hero {
    padding-top: 125px !important;
}
@media (max-width: 700px) {
    body #opulent-metals-catalog.og-catalog > header.og-catalog-hero {
        padding-top: 106px !important;
    }
}
@media (max-width: 390px) {
    body #opulent-metals-catalog.og-catalog > header.og-catalog-hero {
        padding-top: 97px !important;
    }
}


/* v2.10.8 — remove the actual trailing empty paragraph confirmed in the
 * Firefox Inspector immediately after .og-catalog-footer. The Text Editor
 * shortcode formatting may inject this element inside #opulent-metals-catalog.
 * Its default collapsed paragraph margin creates the ~14px white seam.
 * Restrict this only to page 6007 and only to trailing p/br siblings of the
 * catalog's CTA section. No valid product content or site footer is touched. */
body.page-id-6007 #opulent-metals-catalog.og-catalog > section.og-catalog-footer ~ p,
body.page-id-6007 #opulent-metals-catalog.og-catalog > section.og-catalog-footer ~ br {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
}


/* v2.10.9 — targeted sidebar polish and in-page navigation.
 * Previous approved hero padding (125px), full-bleed layout, product cards and
 * footer remain untouched. Functional section scrolling lives in JS. */
.og-catalog .og-filter-sidebar .og-filter-top {
    margin-bottom: 27px !important;
    padding-bottom: 0;
}
.og-catalog .og-filter-sidebar > label[for="og-product-search"] {
    margin: 0 0 11px !important;
    font-weight: 600;
}
.og-catalog .og-filter-sidebar #og-product-search {
    margin-bottom: 24px !important;
}
.og-catalog .og-filter-sidebar .og-check-option {
    gap: 12px;
    padding-block: 9px;
}
/* Show clear, distinct metal-colored dots while retaining native checkbox
 * semantics, keyboard navigation, and multiple-selection functionality. */
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check,
.og-catalog .og-filter-sidebar .og-filter-categories .og-check-option input.og-category-check {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 10px !important;
    min-width: 10px !important;
    height: 10px !important;
    min-height: 10px !important;
    padding: 0 !important;
    margin: 0 1px !important;
    border-radius: 50% !important;
    border: 1px solid var(--og-dot, #b29a70) !important;
    background: var(--og-dot, #b29a70) !important;
    box-shadow: none !important;
    flex: 0 0 10px !important;
    opacity: .9;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check[value="gold"] { --og-dot: #BD9652; }
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check[value="silver"] { --og-dot: #9EA5AF; }
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check[value="platinum"] { --og-dot: #6E8794; }
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check[value="palladium"] { --og-dot: #527F6D; }
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check:checked,
.og-catalog .og-filter-sidebar .og-filter-categories .og-check-option input.og-category-check:checked {
    box-shadow: 0 0 0 3px #fffdfa, 0 0 0 4px var(--og-dot, #b29a70) !important;
    opacity: 1;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check:checked::after,
.og-catalog .og-filter-sidebar .og-filter-categories .og-check-option input.og-category-check:checked::after {
    content: none !important;
    display: none !important;
}
.og-catalog .og-filter-sidebar .og-check-option:has(input:checked) {
    background: #f8f4eb;
    border-color: #eee3d3;
}
.og-catalog .og-metal-section {
    scroll-margin-top: 118px;
}
@media(max-width:700px) {
    .og-catalog .og-filter-sidebar .og-filter-top { margin-bottom: 22px !important; }
    .og-catalog .og-filter-sidebar #og-product-search { margin-bottom: 20px !important; }
    .og-catalog .og-metal-section { scroll-margin-top: 90px; }
}


/* v2.10.10 — keep LEFT square checkboxes and separate metal-colored dots
 * directly BEFORE each label (rather than turning the checkbox into a dot).
 * Only sidebar controls are affected; filtering and scrolling JS is unchanged. */
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option,
.og-catalog .og-filter-sidebar .og-filter-categories .og-check-option {
    display: flex;
    flex-direction: row;
    align-items: center;
    direction: ltr;
    gap: 10px;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check,
.og-catalog .og-filter-sidebar .og-filter-categories .og-check-option input.og-category-check {
    -webkit-appearance: none !important;
    appearance: none !important;
    display: inline-block !important;
    width: 16px !important;
    min-width: 16px !important;
    height: 16px !important;
    min-height: 16px !important;
    flex: 0 0 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 2px !important;
    border: 1px solid #bfb9ad !important;
    background: #fff !important;
    opacity: 1 !important;
    box-shadow: none !important;
    position: relative;
    cursor: pointer;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check:checked,
.og-catalog .og-filter-sidebar .og-filter-categories .og-check-option input.og-category-check:checked {
    background: #a3874e !important;
    border-color: #a3874e !important;
    box-shadow: none !important;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option input.og-metal-check:checked::after,
.og-catalog .og-filter-sidebar .og-filter-categories .og-check-option input.og-category-check:checked::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 5px !important;
    top: 2px !important;
    width: 4px !important;
    height: 8px !important;
    border: solid white !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
}
/* Colored dots are independent, noninteractive decorations INSIDE label text. */
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option > span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option > span::before {
    content: "";
    display: inline-block;
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
    background: var(--og-metal-dot, #bd9652);
    border-radius: 50%;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option:has(> input[value="gold"]) { --og-metal-dot: #BD9652; }
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option:has(> input[value="silver"]) { --og-metal-dot: #9EA5AF; }
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option:has(> input[value="platinum"]) { --og-metal-dot: #6E8794; }
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option:has(> input[value="palladium"]) { --og-metal-dot: #527F6D; }

/* v2.10.11 — move metal color dot to FAR RIGHT of each sidebar row while
 * keeping the square checkbox on the far left. Text stays between them. */
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option {
    align-items: center;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option > span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 12px;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option > span::before {
    content: none !important;
    display: none !important;
}
.og-catalog .og-filter-sidebar .og-filter-metals .og-check-option > span::after {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--og-metal-dot, #bd9652);
    flex: none;
    margin-left: auto;
}
