/*
Theme Name: Valley Goldmine
Theme URI: https://valleygoldmine.com/
Author: Valley Goldmine
Description: Lightweight custom Gutenberg-ready theme for Valley Goldmine.
Version: 0.4.9
Text Domain: valley-goldmine
*/

:root {
  --vg-black: #0d0d0e;
  --vg-charcoal: #1a1a1c;
  --vg-gold: #d5a52e;
  --vg-gold-light: #efc85d;
  --vg-ivory: #f7f4ed;
  --vg-white: #ffffff;
  --vg-text: #24211d;
  --vg-muted: #6f6b63;
  --vg-line: rgba(25, 20, 12, .13);
  --vg-radius: 20px;
  --vg-content: 1180px;
}

*,
*::before,
*::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--vg-white);
  color: var(--vg-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

img { max-width: 100%; height: auto; }

a { color: inherit; }

.vg-container {
  width: min(calc(100% - 40px), var(--vg-content));
  margin-inline: auto;
}

.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.screen-reader-text:focus {
  width: auto;
  height: auto;
  margin: 0;
  clip: auto;
  padding: 10px 14px;
  background: #fff;
  color: #000;
  z-index: 100000;
}

/* Header */
.vg-topbar {
  background: #070708;
  color: rgba(255,255,255,.72);
  font-size: .78rem;
  border-bottom: 1px solid rgba(213,165,46,.18);
}

.vg-topbar__inner {
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.vg-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(13,13,14,.96);
  color: #fff;
  border-bottom: 1px solid rgba(213,165,46,.24);
  backdrop-filter: blur(14px);
}

.vg-header__inner {
  min-height: 108px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.vg-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  text-decoration: none;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.12rem;
}

.vg-brand img,
.vg-brand .custom-logo {
  display: block;
  width: 150px;
  max-width: 150px;
  height: auto !important;
  max-height: none !important;
  object-fit: contain;
  object-position: center;
}

.vg-nav {
  display: flex;
  align-items: center;
  gap: 24px;
}

.vg-nav .menu {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 22px;
  margin: 0;
  padding: 0;
}

.vg-nav a {
  color: rgba(255,255,255,.78);
  text-decoration: none;
  font-size: .84rem;
  font-weight: 700;
}

.vg-nav a:hover,
.vg-nav .current-menu-item > a { color: var(--vg-gold-light); }

.vg-header__actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.vg-phone {
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  white-space: nowrap;
}

.vg-button,
.wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 20px;
  border-radius: 999px;
  border: 1px solid transparent;
  text-decoration: none;
  font-weight: 800;
  transition: transform .2s ease, box-shadow .2s ease;
}

.vg-button:hover,
.wp-block-button__link:hover {
  transform: translateY(-1px);
}

.vg-button--primary,
.is-style-vg-primary .wp-block-button__link {
  background: linear-gradient(135deg, var(--vg-gold-light), var(--vg-gold));
  color: #111;
  box-shadow: 0 10px 26px rgba(213,165,46,.2);
}

.vg-button--outline,
.is-style-vg-outline .wp-block-button__link {
  background: transparent;
  border-color: rgba(255,255,255,.28);
  color: #fff;
}

/* Content */
.site-main {
  min-height: 60vh;
}

.entry-content {
  overflow: clip;
}

.entry-content > * {
  margin-block-start: 0;
}

/* Normal editorial content */
.entry-content > :where(:not(.alignfull):not(.alignwide)) {
  width: min(calc(100% - 40px), 760px);
  margin-inline: auto;
}

/* Wide content */
.entry-content > .alignwide {
  width: min(calc(100% - 40px), var(--vg-content));
  max-width: var(--vg-content);
  margin-inline: auto;
}

/*
 * Full-bleed sections.
 * This intentionally breaks an alignfull block out of any content-width
 * wrapper Gutenberg or a parent block may introduce.
 */
.entry-content > .alignfull,
.vg-full-bleed {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* Starter pattern */
.vg-hero {
  width: 100%;
  color: #fff;
  background:
    radial-gradient(circle at 82% 28%, rgba(213,165,46,.20), transparent 28%),
    linear-gradient(135deg, #0b0b0c, #181611);
  padding: clamp(72px, 9vw, 120px) 0;
}

.vg-hero h1 {
  margin: 0;
  max-width: 820px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(3rem, 7vw, 6rem);
  line-height: 1.02;
  letter-spacing: -.035em;
}

.vg-hero p {
  max-width: 680px;
  color: rgba(255,255,255,.74);
  font-size: 1.08rem;
}

.vg-hero .wp-block-buttons {
  margin-top: 28px;
}

.vg-trust-strip {
  width: 100%;
  background: var(--vg-ivory);
  border-block: 1px solid var(--vg-line);
  padding: 24px 0;
}

.vg-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}

.vg-trust-item {
  padding: 8px 24px;
  border-right: 1px solid var(--vg-line);
}

.vg-trust-item:last-child { border-right: 0; }

.vg-trust-item strong {
  display: block;
  color: var(--vg-black);
}

.vg-trust-item span {
  color: var(--vg-muted);
  font-size: .82rem;
}

/* Footer */
.vg-footer {
  background: #0b0b0c;
  color: rgba(255,255,255,.68);
  padding: 44px 0;
  border-top: 1px solid rgba(255,255,255,.08);
}

.vg-footer__inner {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 36px;
  align-items: center;
}

.vg-footer .menu {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 0;
  margin: 0;
}

.vg-footer a {
  color: rgba(255,255,255,.7);
  text-decoration: none;
}

.vg-menu-toggle {
  display: none;
  appearance: none;
  border: 1px solid rgba(255,255,255,.18);
  background: transparent;
  color: #fff;
  border-radius: 10px;
  padding: 9px 11px;
  cursor: pointer;
}

@media (max-width: 960px) {
  .vg-menu-toggle { display: inline-flex; }

  .vg-nav {
    display: none;
    position: absolute;
    left: 20px;
    right: 20px;
    top: calc(100% + 10px);
    padding: 18px;
    background: #111;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px;
    box-shadow: 0 18px 50px rgba(0,0,0,.25);
  }

  .vg-nav.is-open { display: block; }

  .vg-nav .menu {
    display: grid;
    gap: 12px;
  }

  .vg-header__actions .vg-phone { display: none; }

  .vg-trust-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .vg-trust-item:nth-child(2) { border-right: 0; }
}

@media (max-width: 640px) {
  .vg-container { width: min(calc(100% - 28px), var(--vg-content)); }
  .vg-topbar { display: none; }
  .vg-header__actions .vg-button { display: none; }
  .vg-trust-grid { grid-template-columns: 1fr; }
  .vg-trust-item { border-right: 0; border-bottom: 1px solid var(--vg-line); }
  .vg-trust-item:last-child { border-bottom: 0; }
  .vg-footer__inner { grid-template-columns: 1fr; }
}


/* Hero layout */
.vg-hero > .vg-container {
  text-align: left;
}

.vg-hero__copy {
  width: min(58%, 720px);
  margin: 0;
  text-align: left;
}

.vg-hero__copy > * {
  margin-left: 0;
  margin-right: 0;
}

.vg-hero__copy .wp-block-buttons {
  justify-content: flex-start;
}

@media (max-width: 900px) {
  .vg-hero__copy {
    width: min(100%, 720px);
  }
}


/* Conversion hero */
.vg-hero {
  position: relative;
  overflow: hidden;
  padding: 56px 0 64px;
  background:
    radial-gradient(circle at 78% 30%, rgba(213,165,46,.15), transparent 30%),
    linear-gradient(135deg, #09090a 0%, #15130f 58%, #0d0d0e 100%);
}

.vg-hero::after {
  content: "";
  position: absolute;
  inset: auto -12vw -22vw auto;
  width: 42vw;
  height: 42vw;
  border-radius: 50%;
  background: rgba(213,165,46,.06);
  filter: blur(2px);
  pointer-events: none;
}

.vg-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr);
  gap: clamp(36px, 6vw, 76px);
  align-items: center;
}

.vg-hero__copy {
  width: auto;
  max-width: 690px;
}

.vg-eyebrow {
  margin: 0 0 16px;
  color: var(--vg-gold-light) !important;
  font-size: .78rem !important;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.vg-hero h1 {
  font-size: clamp(2.4rem, 4vw, 3rem);
  line-height: .98;
  letter-spacing: -.045em;
  text-wrap: balance;
}

.vg-hero__lead {
  margin-top: 22px !important;
  max-width: 620px;
  color: rgba(255,255,255,.72) !important;
  font-size: clamp(1rem, 1.3vw, 1.16rem) !important;
  line-height: 1.72;
}

.vg-hero .wp-block-buttons {
  gap: 12px;
  margin-top: 28px;
}

.vg-hero .wp-block-button__link {
  min-height: 54px;
  padding-inline: 23px;
}

.vg-hero__reassurance {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  margin-top: 24px;
  color: rgba(255,255,255,.62);
  font-size: .82rem;
}

.vg-hero__reassurance span {
  display: inline-flex;
  gap: 8px;
  align-items: center;
}

.vg-hero__reassurance span::before {
  content: "✓";
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-hero__visual {
  position: relative;
  min-height: 520px;
}

.vg-hero__image-wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 34px 90px rgba(0,0,0,.34);
  background: #151515;
}

.vg-hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.vg-hero__image-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(9,9,10,.22), transparent 35%),
    linear-gradient(0deg, rgba(0,0,0,.18), transparent 45%);
  pointer-events: none;
}

.vg-hero__image-label {
  position: absolute;
  right: 26px;
  bottom: 24px;
  z-index: 2;
  max-width: 210px;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.45rem, 2vw, 2.05rem);
  line-height: 1.04;
  text-align: right;
  text-shadow: 0 2px 18px rgba(0,0,0,.5);
}

.vg-hero__image-label::before {
  content: "";
  display: block;
  width: 54px;
  height: 2px;
  margin: 0 0 12px auto;
  background: var(--vg-gold-light);
}

@media (max-width: 980px) {
  .vg-hero__grid {
    grid-template-columns: 1fr;
  }

  .vg-hero__copy {
    max-width: 760px;
  }

  .vg-hero__visual {
    min-height: 420px;
  }
}

@media (max-width: 640px) {
  .vg-hero {
    padding: 42px 0 36px;
  }

  .vg-hero h1 {
    font-size: clamp(2.15rem, 9vw, 2.75rem);
  }

  .vg-hero .wp-block-buttons {
    display: grid;
  }

  .vg-hero .wp-block-button,
  .vg-hero .wp-block-button__link {
    width: 100%;
  }

  .vg-hero__reassurance {
    display: grid;
  }

  .vg-hero__visual {
    min-height: 330px;
  }

  .vg-hero__image-wrap {
    border-radius: 18px;
  }
}


/* What We Buy */
.vg-section {
  padding: 72px 0;
}

.vg-section--ivory {
  background: var(--vg-ivory);
}

.vg-section__header {
  max-width: 760px;
  margin-bottom: 34px;
}

.vg-section__eyebrow {
  margin: 0 0 10px;
  color: #9a741c;
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vg-section__header h2 {
  margin: 0;
  font-size: clamp(2rem, 3vw, 2.8rem);
  line-height: 1.05;
}

.vg-section__header p {
  margin: 14px 0 0;
  max-width: 680px;
  color: var(--vg-muted);
}

.vg-buy-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.vg-buy-card {
  position: relative;
  min-height: 210px;
  overflow: hidden;
  border: 1px solid var(--vg-line);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(213,165,46,.10), rgba(255,255,255,.86)),
    #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.05);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.vg-buy-card:hover {
  transform: translateY(-3px);
  border-color: rgba(213,165,46,.36);
  box-shadow: 0 18px 40px rgba(40,30,12,.09);
}

.vg-buy-card__link {
  display: flex;
  height: 100%;
  min-height: 210px;
  flex-direction: column;
  justify-content: space-between;
  gap: 22px;
  padding: 26px;
  color: inherit;
  text-decoration: none;
}

.vg-buy-card__icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--vg-gold-light), var(--vg-gold));
  color: #111;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
  font-weight: 800;
  box-shadow: 0 8px 22px rgba(213,165,46,.18);
}

.vg-buy-card h3 {
  margin: 0;
  color: var(--vg-black);
  font-size: 1.42rem;
}

.vg-buy-card p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .92rem;
  line-height: 1.55;
}

.vg-buy-card__arrow {
  color: #8a6716;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .03em;
}

.vg-buy-footer {
  margin-top: 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-top: 22px;
  border-top: 1px solid var(--vg-line);
}

.vg-buy-footer p {
  margin: 0;
  color: var(--vg-muted);
}

.vg-buy-footer a {
  color: var(--vg-black);
  font-weight: 800;
  text-decoration-color: var(--vg-gold);
  text-underline-offset: 3px;
}

@media (max-width: 900px) {
  .vg-buy-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .vg-section {
    padding: 56px 0;
  }

  .vg-buy-grid {
    grid-template-columns: 1fr;
  }

  .vg-buy-card,
  .vg-buy-card__link {
    min-height: 180px;
  }

  .vg-buy-footer {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* How It Works */
.vg-process {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 16% 10%, rgba(213,165,46,.11), transparent 30%),
    linear-gradient(135deg, #111112, #1b1915 58%, #101011);
  color: #fff;
}

.vg-process::after {
  content: "";
  position: absolute;
  inset: auto -12% -46% auto;
  width: 520px;
  height: 520px;
  border: 1px solid rgba(213,165,46,.11);
  border-radius: 50%;
  box-shadow:
    0 0 0 80px rgba(213,165,46,.025),
    0 0 0 160px rgba(213,165,46,.018);
  pointer-events: none;
}

.vg-process .vg-section__header {
  position: relative;
  z-index: 1;
  margin-bottom: 40px;
}

.vg-process .vg-section__eyebrow {
  color: var(--vg-gold-light);
}

.vg-process .vg-section__header h2 {
  color: #fff;
}

.vg-process .vg-section__header p {
  color: rgba(255,255,255,.62);
}

.vg-process-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
}

.vg-process-step {
  position: relative;
  padding: 0 28px 0 0;
}

.vg-process-step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 25px;
  right: 14px;
  width: calc(100% - 78px);
  height: 1px;
  background: linear-gradient(90deg, rgba(213,165,46,.65), rgba(213,165,46,.10));
  transform: translateX(100%);
}

.vg-process-step__number {
  position: relative;
  z-index: 2;
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  margin-bottom: 20px;
  border: 1px solid rgba(239,200,93,.65);
  border-radius: 50%;
  background: #171717;
  color: var(--vg-gold-light);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
  font-weight: 800;
  box-shadow: 0 8px 24px rgba(0,0,0,.2);
}

.vg-process-step h3 {
  margin: 0;
  color: #fff;
  font-size: 1.2rem;
}

.vg-process-step p {
  margin: 10px 0 0;
  color: rgba(255,255,255,.6);
  font-size: .9rem;
  line-height: 1.6;
}

.vg-process-note {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 42px;
  padding-top: 28px;
  border-top: 1px solid rgba(255,255,255,.10);
}

.vg-process-note p {
  margin: 0;
  color: rgba(255,255,255,.72);
}

.vg-process-note strong {
  color: #fff;
}

.vg-process-note .vg-button {
  flex: 0 0 auto;
}

@media (max-width: 960px) {
  .vg-process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px 28px;
  }

  .vg-process-step {
    padding-right: 0;
  }

  .vg-process-step::after {
    display: none;
  }
}

@media (max-width: 640px) {
  .vg-process-grid {
    grid-template-columns: 1fr;
  }

  .vg-process-step {
    display: grid;
    grid-template-columns: 52px 1fr;
    column-gap: 18px;
    align-items: start;
  }

  .vg-process-step__number {
    grid-row: 1 / span 2;
    margin-bottom: 0;
  }

  .vg-process-step h3 {
    align-self: end;
  }

  .vg-process-step p {
    grid-column: 2;
  }

  .vg-process-note {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* Trust Strip refinement */
.vg-trust-strip {
  width: 100%;
  margin: 0;
  padding: 20px 0;
  background: #fff;
  border-top: 1px solid rgba(25,20,12,.10);
  border-bottom: 1px solid rgba(25,20,12,.10);
}

.vg-trust-strip .vg-container {
  width: min(calc(100% - 40px), var(--vg-content));
  margin-inline: auto;
}

.vg-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  align-items: stretch;
  gap: 0;
}

.vg-trust-item {
  min-width: 0;
  padding: 8px 22px;
  text-align: center;
  border-right: 1px solid rgba(25,20,12,.12);
}

.vg-trust-item:last-child {
  border-right: 0;
}

.vg-trust-item strong {
  display: block;
  margin: 0;
  color: var(--vg-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
  line-height: 1.25;
}

.vg-trust-item span {
  display: block;
  margin-top: 4px;
  color: var(--vg-muted);
  font-size: .76rem;
  line-height: 1.3;
}

/* What We Buy - six image tiles */
.vg-buy-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}

.vg-buy-card {
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border: 1px solid rgba(25,20,12,.11);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(40,30,12,.05);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.vg-buy-card:hover {
  transform: translateY(-3px);
  border-color: rgba(213,165,46,.42);
  box-shadow: 0 16px 34px rgba(40,30,12,.10);
}

.vg-buy-card__link {
  display: block;
  height: 100%;
  min-height: 0;
  padding: 0;
  color: inherit;
  text-decoration: none;
}

.vg-buy-card__media {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #181716;
}

.vg-buy-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .3s ease;
}

.vg-buy-card:hover .vg-buy-card__media img {
  transform: scale(1.035);
}

.vg-buy-card__body {
  padding: 16px 15px 17px;
}

.vg-buy-card h3 {
  margin: 0;
  color: var(--vg-black);
  font-size: 1.02rem;
  line-height: 1.2;
}

.vg-buy-card p {
  display: none;
}

.vg-buy-card__arrow {
  display: block;
  margin-top: 8px;
  color: #876514;
  font-size: .72rem;
  font-weight: 800;
  line-height: 1.3;
}

@media (max-width: 1000px) {
  .vg-buy-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
}

@media (max-width: 640px) {
  .vg-trust-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-trust-item {
    border-right: 1px solid rgba(25,20,12,.12);
    border-bottom: 1px solid rgba(25,20,12,.10);
    padding: 12px 10px;
  }

  .vg-trust-item:nth-child(2n) {
    border-right: 0;
  }

  .vg-trust-item:nth-last-child(-n+2) {
    border-bottom: 0;
  }

  .vg-buy-grid {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(165px, 72vw);
    grid-template-columns: none;
    overflow-x: auto;
    gap: 12px;
    padding-bottom: 8px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }

  .vg-buy-card {
    scroll-snap-align: start;
  }
}

.vg-brand .custom-logo-link,
.vg-brand > a {
  display: inline-flex;
  align-items: center;
  color: #fff;
  text-decoration: none;
}


/* v0.1.8 - trust strip / what we buy / video proof refinements */

/* Trust strip: match original mockup feel more closely */
.vg-trust-strip {
  background: #fff !important;
  padding: 18px 0 !important;
  border-top: 1px solid rgba(25,20,12,.08) !important;
  border-bottom: 1px solid rgba(25,20,12,.08) !important;
}

.vg-trust-strip .vg-container {
  width: min(calc(100% - 40px), var(--vg-content));
  margin-inline: auto;
}

.vg-trust-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  align-items: center;
}

.vg-trust-item {
  display: grid !important;
  grid-template-columns: 42px 1fr !important;
  gap: 16px !important;
  align-items: center !important;
  padding: 8px 22px !important;
  border-right: 1px solid rgba(213,165,46,.28) !important;
  text-align: left !important;
  min-width: 0;
}

.vg-trust-item:last-child {
  border-right: 0 !important;
}

.vg-trust-item__icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  color: #b07a12;
  flex: 0 0 auto;
}

.vg-trust-item__icon svg {
  width: 31px;
  height: 31px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.vg-trust-item__text {
  min-width: 0;
}

.vg-trust-item strong {
  display: block;
  margin: 0;
  color: var(--vg-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
  line-height: 1.12;
}

.vg-trust-item span {
  display: block;
  margin-top: 4px;
  color: var(--vg-muted);
  font-size: .8rem;
  line-height: 1.25;
}

@media (max-width: 900px) {
  .vg-trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .vg-trust-item:nth-child(2n) {
    border-right: 0 !important;
  }

  .vg-trust-item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(213,165,46,.18);
    padding-bottom: 16px !important;
  }

  .vg-trust-item:nth-child(n+3) {
    padding-top: 16px !important;
  }
}

@media (max-width: 640px) {
  .vg-trust-item {
    grid-template-columns: 34px 1fr !important;
    gap: 12px !important;
    padding: 12px 10px !important;
  }

  .vg-trust-item__icon {
    width: 34px;
    height: 34px;
  }

  .vg-trust-item__icon svg {
    width: 25px;
    height: 25px;
  }

  .vg-trust-item strong {
    font-size: .95rem;
  }

  .vg-trust-item span {
    font-size: .74rem;
  }
}

/* What we buy: single row of six image tiles on desktop, with descriptive copy */
.vg-section__header--centered {
  max-width: 820px;
  margin-inline: auto;
  text-align: center;
}

.vg-section__header--centered p {
  margin-inline: auto;
}

.vg-buy-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.vg-buy-card {
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border: 1px solid rgba(25,20,12,.1);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(40,30,12,.045);
}

.vg-buy-card__link {
  display: block;
  height: 100%;
  padding: 10px;
  color: inherit;
  text-decoration: none;
}

.vg-buy-card__media {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #ece7df;
  border-radius: 4px;
}

.vg-buy-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.vg-buy-card__body {
  padding: 12px 4px 4px;
  text-align: center;
}

.vg-buy-card h3 {
  margin: 0;
  font-size: 1rem;
  line-height: 1.15;
}

.vg-buy-card p {
  display: block !important;
  margin: 6px 0 0;
  color: var(--vg-muted);
  font-size: .82rem;
  line-height: 1.25;
}

.vg-buy-card__arrow {
  display: none;
}

.vg-buy-footer {
  margin-top: 22px;
}

@media (max-width: 1100px) {
  .vg-buy-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }
}

@media (max-width: 640px) {
  .vg-buy-grid {
    grid-auto-flow: column;
    grid-auto-columns: minmax(180px, 72vw);
    grid-template-columns: none !important;
    overflow-x: auto;
    gap: 12px !important;
    padding-bottom: 8px;
    scroll-snap-type: x proximity;
  }

  .vg-buy-card {
    scroll-snap-align: start;
  }
}

/* Video proof section */
.vg-video-proof {
  background:
    radial-gradient(circle at 80% 18%, rgba(213,165,46,.10), transparent 26%),
    linear-gradient(135deg, #111112, #181613 58%, #0d0d0e);
  color: #fff;
}

.vg-video-proof .vg-section__eyebrow {
  color: var(--vg-gold-light);
}

.vg-video-proof .vg-section__header h2 {
  color: #fff;
}

.vg-video-proof .vg-section__header p {
  color: rgba(255,255,255,.65);
}

.vg-video-proof__grid {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 34px;
  align-items: center;
}

.vg-video-proof__copy p {
  margin-top: 14px;
  color: rgba(255,255,255,.68);
}

.vg-video-proof__card {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.12);
  background: #121212;
  box-shadow: 0 20px 60px rgba(0,0,0,.28);
}

.vg-video-proof__thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: .92;
}

.vg-video-proof__overlay {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background:
    linear-gradient(0deg, rgba(0,0,0,.26), rgba(0,0,0,.16)),
    linear-gradient(90deg, rgba(0,0,0,.18), transparent 40%);
}

.vg-video-proof__play {
  width: 86px;
  height: 86px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(213,165,46,.94);
  color: #111;
  box-shadow: 0 14px 30px rgba(0,0,0,.26);
}

.vg-video-proof__play svg {
  width: 28px;
  height: 28px;
  margin-left: 3px;
  fill: currentColor;
}

.vg-video-proof__label {
  position: absolute;
  left: 22px;
  bottom: 18px;
  right: 22px;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem;
  line-height: 1.25;
}

.vg-video-proof__cta {
  margin-top: 24px;
}

@media (max-width: 900px) {
  .vg-video-proof__grid {
    grid-template-columns: 1fr;
  }
}


/* v0.1.9 custom video modal */
.vg-video-proof__trigger {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  text-align: left;
}

.vg-video-proof__trigger:focus-visible {
  outline: 2px solid var(--vg-gold-light);
  outline-offset: 4px;
  border-radius: 20px;
}

.vg-video-modal[hidden] {
  display: none !important;
}

.vg-video-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
}

.vg-video-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.72);
  backdrop-filter: blur(4px);
}

.vg-video-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(calc(100% - 32px), 1080px);
  margin: min(8vh, 60px) auto;
  background: #0f0f10;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 20px;
  box-shadow: 0 30px 90px rgba(0,0,0,.4);
  overflow: hidden;
}

.vg-video-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 16px 20px;
  background: #161618;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: #fff;
}

.vg-video-modal__title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
}

.vg-video-modal__close {
  appearance: none;
  border: 1px solid rgba(255,255,255,.18);
  background: transparent;
  color: #fff;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  cursor: pointer;
  font-size: 1.2rem;
  line-height: 1;
}

.vg-video-modal__body {
  padding: 0;
}

.vg-video-modal__iframe-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
}

.vg-video-modal__iframe-wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

body.vg-modal-open {
  overflow: hidden;
}

@media (max-width: 640px) {
  .vg-video-modal__dialog {
    width: min(calc(100% - 18px), 1080px);
    margin: 18px auto;
    border-radius: 14px;
  }

  .vg-video-modal__header {
    padding: 12px 14px;
  }
}


/* v0.2.0 - Why Valley Goldmine */
.vg-why {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 6% 18%, rgba(213,165,46,.08), transparent 25%),
    #fff;
}

.vg-why__grid {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
  gap: clamp(42px, 6vw, 78px);
  align-items: start;
}

.vg-why__intro {
  position: sticky;
  top: 110px;
}

.vg-why__intro .vg-section__header {
  margin-bottom: 0;
}

.vg-why__promise {
  margin-top: 28px;
  padding: 24px 26px;
  border-left: 4px solid var(--vg-gold);
  border-radius: 0 14px 14px 0;
  background: var(--vg-ivory);
}

.vg-why__promise blockquote {
  margin: 0;
  color: var(--vg-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  line-height: 1.25;
}

.vg-why__promise p {
  margin: 12px 0 0;
  color: var(--vg-muted);
  font-size: .9rem;
  line-height: 1.55;
}

.vg-why__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.vg-why__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 16px;
}

.vg-why-card {
  min-height: 205px;
  padding: 24px;
  border: 1px solid rgba(25,20,12,.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(40,30,12,.05);
}

.vg-why-card__icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  margin-bottom: 18px;
  border-radius: 50%;
  background: rgba(213,165,46,.12);
  color: #a57612;
}

.vg-why-card__icon svg {
  width: 23px;
  height: 23px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.vg-why-card h3 {
  margin: 0;
  color: var(--vg-black);
  font-size: 1.15rem;
}

.vg-why-card p {
  margin: 9px 0 0;
  color: var(--vg-muted);
  font-size: .9rem;
  line-height: 1.6;
}

@media (max-width: 900px) {
  .vg-why__grid {
    grid-template-columns: 1fr;
  }

  .vg-why__intro {
    position: static;
  }
}

@media (max-width: 640px) {
  .vg-why__cards {
    grid-template-columns: 1fr;
  }

  .vg-why-card {
    min-height: 0;
  }

  .vg-why__actions {
    display: grid;
  }

  .vg-why__actions .vg-button {
    width: 100%;
    text-align: center;
  }
}


/* v0.2.1 - Testimonials */
.vg-testimonials {
  background:
    linear-gradient(180deg, #fbfaf7 0%, #f5f1e8 100%);
}

.vg-testimonials .vg-section__header {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.vg-testimonials .vg-section__header p {
  margin-left: auto;
  margin-right: auto;
}

.vg-testimonial-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}

.vg-testimonial-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 28px;
  border: 1px solid rgba(25,20,12,.10);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(40,30,12,.055);
}

.vg-testimonial-card::before {
  content: "“";
  position: absolute;
  top: 12px;
  right: 18px;
  color: rgba(213,165,46,.20);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 5rem;
  line-height: 1;
  pointer-events: none;
}

.vg-testimonial-card__quote {
  position: relative;
  z-index: 1;
  margin: 0;
  color: var(--vg-text);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
  line-height: 1.65;
}

.vg-testimonial-card__person {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: auto;
  padding-top: 24px;
}

.vg-testimonial-card__avatar {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--vg-gold-light), var(--vg-gold));
  color: #17130a;
  font-size: .8rem;
  font-weight: 850;
  letter-spacing: .03em;
}

.vg-testimonial-card__name {
  display: block;
  color: var(--vg-black);
  font-weight: 800;
  line-height: 1.2;
}

.vg-testimonial-card__label {
  display: block;
  margin-top: 3px;
  color: var(--vg-muted);
  font-size: .76rem;
}

.vg-testimonials__cta {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}

@media (max-width: 900px) {
  .vg-testimonial-grid {
    grid-template-columns: 1fr;
  }

  .vg-testimonial-card {
    min-height: 0;
  }
}


/* v0.2.2 - Phoenix gold buyer SEO content */
.vg-local-seo {
  background: #fff;
}

.vg-local-seo__grid {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(340px,.85fr);
  gap: clamp(40px, 6vw, 74px);
  align-items: start;
}

.vg-local-seo__content h2 {
  margin: 0;
  max-width: 780px;
  font-size: clamp(2rem, 3vw, 2.75rem);
  line-height: 1.08;
}

.vg-local-seo__content h3 {
  margin: 30px 0 10px;
  font-size: 1.35rem;
}

.vg-local-seo__content p {
  margin: 0 0 16px;
  color: var(--vg-muted);
  line-height: 1.72;
}

.vg-local-seo__content a {
  color: #7d5d11;
  font-weight: 750;
  text-decoration-color: rgba(213,165,46,.7);
  text-underline-offset: 3px;
}

.vg-local-seo__links {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 24px;
}

.vg-local-seo__chip {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 13px;
  border: 1px solid rgba(25,20,12,.13);
  border-radius: 999px;
  background: #fff;
  color: var(--vg-black) !important;
  font-size: .82rem;
  font-weight: 800;
  text-decoration: none !important;
  transition: border-color .18s ease, background .18s ease;
}

.vg-local-seo__chip:hover {
  border-color: rgba(213,165,46,.55);
  background: #fffaf0;
}

.vg-local-seo__panel {
  position: sticky;
  top: 110px;
  overflow: hidden;
  border: 1px solid rgba(25,20,12,.10);
  border-radius: 20px;
  background:
    radial-gradient(circle at 100% 0, rgba(213,165,46,.16), transparent 34%),
    #151515;
  color: #fff;
  box-shadow: 0 20px 50px rgba(35,28,16,.10);
}

.vg-local-seo__panel-head {
  padding: 26px 26px 20px;
  border-bottom: 1px solid rgba(255,255,255,.10);
}

.vg-local-seo__panel-head span {
  display: block;
  margin-bottom: 8px;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-local-seo__panel-head h3 {
  margin: 0;
  color: #fff;
  font-size: 1.45rem;
}

.vg-local-seo__list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.vg-local-seo__list li {
  position: relative;
  padding: 15px 26px 15px 50px;
  color: rgba(255,255,255,.76);
  border-bottom: 1px solid rgba(255,255,255,.075);
  font-size: .9rem;
}

.vg-local-seo__list li::before {
  content: "✓";
  position: absolute;
  left: 26px;
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-local-seo__panel-foot {
  padding: 24px 26px 26px;
}

.vg-local-seo__panel-foot p {
  margin: 0 0 17px;
  color: rgba(255,255,255,.63);
  font-size: .88rem;
  line-height: 1.55;
}

.vg-local-seo__panel-foot .vg-button {
  width: 100%;
  text-align: center;
}

@media (max-width: 900px) {
  .vg-local-seo__grid {
    grid-template-columns: 1fr;
  }

  .vg-local-seo__panel {
    position: static;
  }
}


/* v0.2.3 - Community impact / charity */
.vg-community {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 15%, rgba(213,165,46,.10), transparent 24%),
    linear-gradient(180deg, #f8f5ee 0%, #f3eee3 100%);
}

.vg-community__grid {
  display: grid;
  grid-template-columns: minmax(300px,.72fr) minmax(0,1.28fr);
  gap: clamp(36px, 6vw, 76px);
  align-items: center;
}

.vg-community__impact {
  position: relative;
  overflow: hidden;
  padding: 34px;
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(239,200,93,.15), transparent 34%),
    linear-gradient(145deg, #151515, #211d15);
  color: #fff;
  box-shadow: 0 24px 60px rgba(45,34,13,.14);
}

.vg-community__impact::after {
  content: "";
  position: absolute;
  right: -72px;
  bottom: -92px;
  width: 220px;
  height: 220px;
  border: 1px solid rgba(239,200,93,.16);
  border-radius: 50%;
  box-shadow:
    0 0 0 42px rgba(239,200,93,.028),
    0 0 0 84px rgba(239,200,93,.018);
}

.vg-community__impact-label {
  position: relative;
  z-index: 1;
  margin: 0 0 12px;
  color: var(--vg-gold-light);
  font-size: .74rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vg-community__impact-number {
  position: relative;
  z-index: 1;
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(3rem, 5vw, 4.5rem);
  line-height: .95;
  letter-spacing: -.04em;
}

.vg-community__impact-copy {
  position: relative;
  z-index: 1;
  margin: 18px 0 0;
  max-width: 360px;
  color: rgba(255,255,255,.68);
  font-size: .92rem;
  line-height: 1.65;
}

.vg-community__content .vg-section__header {
  margin-bottom: 26px;
}

.vg-community__content .vg-section__header p {
  max-width: 690px;
}

.vg-charity-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 10px;
}

.vg-charity-tile {
  min-height: 112px;
  display: grid;
  place-items: center;
  padding: 16px 12px;
  border: 1px solid rgba(25,20,12,.10);
  border-radius: 12px;
  background: rgba(255,255,255,.75);
  text-align: center;
  box-shadow: 0 6px 18px rgba(40,30,12,.035);
}

.vg-charity-tile__mark {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  margin: 0 auto 9px;
  border-radius: 50%;
  background: rgba(213,165,46,.13);
  color: #9c7117;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .82rem;
  font-weight: 800;
}

.vg-charity-tile strong {
  display: block;
  color: var(--vg-black);
  font-size: .8rem;
  line-height: 1.25;
}

.vg-community__note {
  margin: 18px 0 0;
  color: var(--vg-muted);
  font-size: .78rem;
}

@media (max-width: 980px) {
  .vg-community__grid {
    grid-template-columns: 1fr;
  }

  .vg-community__impact {
    max-width: 620px;
  }

  .vg-charity-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
}

@media (max-width: 640px) {
  .vg-community__impact {
    padding: 28px 24px;
  }

  .vg-charity-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-charity-tile:last-child {
    grid-column: 1 / -1;
  }
}


/* v0.2.4 - Community impact refinements */
.vg-community__impact-number {
  font-size: clamp(2.35rem, 4vw, 3.2rem) !important;
  line-height: 1 !important;
  letter-spacing: -.025em !important;
}

.vg-charity-grid {
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.vg-charity-logo {
  min-height: 118px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
  border: 1px solid rgba(25,20,12,.10);
  border-radius: 12px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 6px 18px rgba(40,30,12,.035);
}

.vg-charity-logo img {
  display: block;
  max-width: 100%;
  width: auto;
  max-height: 70px;
  height: auto;
  object-fit: contain;
  filter: saturate(.92);
}

.vg-charity-logo--kona img {
  max-height: 82px;
}

.vg-community__note {
  margin-top: 14px;
}

@media (max-width: 980px) {
  .vg-charity-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
}

@media (max-width: 640px) {
  .vg-charity-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-charity-logo:last-child {
    grid-column: 1 / -1;
  }
}


/* v0.2.5 - Locations */
.vg-locations {
  background:
    radial-gradient(circle at 85% 10%, rgba(213,165,46,.10), transparent 26%),
    linear-gradient(135deg, #111112, #181613 58%, #0e0e0f);
  color: #fff;
}

.vg-locations .vg-section__header {
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.vg-locations .vg-section__eyebrow {
  color: var(--vg-gold-light);
}

.vg-locations .vg-section__header h2 {
  color: #fff;
}

.vg-locations .vg-section__header p {
  margin-left: auto;
  margin-right: auto;
  color: rgba(255,255,255,.64);
}

.vg-location-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.vg-location-card {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 20px;
  background: rgba(255,255,255,.045);
  box-shadow: 0 18px 48px rgba(0,0,0,.18);
}

.vg-location-card__top {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 18px;
  align-items: start;
  padding: 28px 28px 22px;
}

.vg-location-card__pin {
  width: 64px;
  height: 64px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(239,200,93,.96), rgba(213,165,46,.92));
  color: #17130a;
  box-shadow: 0 12px 28px rgba(213,165,46,.18);
}

.vg-location-card__pin svg {
  width: 30px;
  height: 30px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.vg-location-card__city {
  margin: 0;
  color: #fff;
  font-size: 1.45rem;
}

.vg-location-card__label {
  display: block;
  margin-top: 4px;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.vg-location-card__address {
  margin: 14px 0 0;
  color: rgba(255,255,255,.70);
  font-size: .96rem;
  line-height: 1.55;
}

.vg-location-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  padding: 0 28px 24px;
  color: rgba(255,255,255,.62);
  font-size: .82rem;
}

.vg-location-card__meta span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.vg-location-card__meta span::before {
  content: "•";
  color: var(--vg-gold-light);
}

.vg-location-card__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 20px 28px 28px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.vg-location-card__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-location-card__actions .vg-button--outline {
  border-color: rgba(255,255,255,.28);
  color: #fff;
}

.vg-location-card__actions .vg-button--outline:hover {
  border-color: var(--vg-gold-light);
  color: var(--vg-gold-light);
}

.vg-locations__footer {
  display: flex;
  justify-content: center;
  margin-top: 28px;
}

.vg-locations__phone {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: rgba(255,255,255,.76);
  font-size: .9rem;
}

.vg-locations__phone a {
  color: #fff;
  font-weight: 800;
  text-decoration-color: var(--vg-gold-light);
  text-underline-offset: 3px;
}

@media (max-width: 820px) {
  .vg-location-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 540px) {
  .vg-location-card__top {
    grid-template-columns: 52px 1fr;
    padding: 22px 20px 18px;
  }

  .vg-location-card__pin {
    width: 52px;
    height: 52px;
    border-radius: 15px;
  }

  .vg-location-card__meta {
    padding: 0 20px 20px;
  }

  .vg-location-card__actions {
    grid-template-columns: 1fr;
    padding: 18px 20px 22px;
  }
}


/* v0.2.6 - FAQ */
.vg-faq {
  background: #fff;
}

.vg-faq__grid {
  display: grid;
  grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr);
  gap: clamp(38px, 6vw, 74px);
  align-items: start;
}

.vg-faq__intro {
  position: sticky;
  top: 110px;
}

.vg-faq__intro .vg-section__header {
  margin-bottom: 0;
}

.vg-faq__intro-note {
  margin-top: 22px;
  padding: 18px 20px;
  border-radius: 14px;
  background: var(--vg-ivory);
  color: var(--vg-muted);
  font-size: .9rem;
  line-height: 1.6;
}

.vg-faq__intro-note a {
  color: var(--vg-black);
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-faq__list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-faq__item {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-faq__item summary {
  position: relative;
  padding: 20px 54px 20px 0;
  color: var(--vg-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.35;
  cursor: pointer;
  list-style: none;
}

.vg-faq__item summary::-webkit-details-marker {
  display: none;
}

.vg-faq__item summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 4px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  transform: translateY(-50%);
  border: 1px solid rgba(213,165,46,.34);
  border-radius: 50%;
  color: #946b12;
  font-family: Arial, sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
}

.vg-faq__item[open] summary::after {
  content: "–";
}

.vg-faq__answer {
  padding: 0 54px 22px 0;
  color: var(--vg-muted);
  font-size: .94rem;
  line-height: 1.7;
}

.vg-faq__answer p {
  margin: 0;
}

@media (max-width: 860px) {
  .vg-faq__grid {
    grid-template-columns: 1fr;
  }

  .vg-faq__intro {
    position: static;
  }
}

/* Final conversion CTA */
.vg-final-cta {
  position: relative;
  overflow: hidden;
  padding: 76px 0;
  background:
    radial-gradient(circle at 82% 20%, rgba(239,200,93,.16), transparent 26%),
    radial-gradient(circle at 12% 90%, rgba(213,165,46,.08), transparent 28%),
    linear-gradient(135deg, #0d0d0e, #1d1911 62%, #111112);
  color: #fff;
}

.vg-final-cta::after {
  content: "";
  position: absolute;
  right: -120px;
  bottom: -160px;
  width: 420px;
  height: 420px;
  border: 1px solid rgba(239,200,93,.12);
  border-radius: 50%;
  box-shadow:
    0 0 0 72px rgba(239,200,93,.02),
    0 0 0 144px rgba(239,200,93,.015);
  pointer-events: none;
}

.vg-final-cta__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-final-cta__copy {
  max-width: 760px;
}

.vg-final-cta__eyebrow {
  margin: 0 0 12px;
  color: var(--vg-gold-light);
  font-size: .75rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vg-final-cta h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2.15rem, 4vw, 3.1rem);
  line-height: 1.04;
}

.vg-final-cta__copy > p:last-of-type {
  margin: 16px 0 0;
  max-width: 670px;
  color: rgba(255,255,255,.67);
  line-height: 1.65;
}

.vg-final-cta__actions {
  display: grid;
  gap: 10px;
  min-width: 250px;
}

.vg-final-cta__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-final-cta__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

.vg-final-cta__actions .vg-button--outline:hover {
  border-color: var(--vg-gold-light);
  color: var(--vg-gold-light);
}

.vg-final-cta__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  margin-top: 22px;
  color: rgba(255,255,255,.58);
  font-size: .8rem;
}

.vg-final-cta__proof span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.vg-final-cta__proof span::before {
  content: "✓";
  color: var(--vg-gold-light);
  font-weight: 900;
}

@media (max-width: 820px) {
  .vg-final-cta__inner {
    grid-template-columns: 1fr;
  }

  .vg-final-cta__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 640px) {
  .vg-final-cta {
    padding: 58px 0;
  }

  .vg-final-cta__actions {
    max-width: none;
  }

  .vg-final-cta__proof {
    display: grid;
  }
}


/* v0.2.9 - logo sizing fix */
.vg-brand .custom-logo-link {
  display: inline-flex;
  align-items: center;
  line-height: 0;
  overflow: visible;
}

@media (max-width: 760px) {
  .vg-header__inner {
    min-height: 88px;
  }

  .vg-brand img,
  .vg-brand .custom-logo {
    width: 120px;
    max-width: 120px;
  }
}


/* =========================================================
   v0.3.0 - Responsive polish pass
   ========================================================= */

/* Keep phone numbers intact everywhere. */
a[href^="tel:"] {
  white-space: nowrap;
}

/* Switch to collapsed navigation before the desktop menu gets cramped. */
@media (max-width: 1100px) {
  .vg-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 68px;
    min-height: 44px;
    padding: 10px 14px;
  }

  .vg-nav {
    display: none;
    position: absolute;
    left: 32px;
    right: 32px;
    top: calc(100% + 10px);
    padding: 12px;
    background: #111;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px;
    box-shadow: 0 18px 50px rgba(0,0,0,.28);
  }

  .vg-nav.is-open {
    display: block;
  }

  .vg-nav .menu {
    display: grid;
    gap: 2px;
  }

  .vg-nav a {
    display: flex;
    align-items: center;
    min-height: 46px;
    padding: 10px 12px;
    border-radius: 10px;
    font-size: .9rem;
  }

  .vg-nav a:hover,
  .vg-nav .current-menu-item > a {
    background: rgba(255,255,255,.05);
  }
}

/* Tablet / small laptop breathing room. */
@media (min-width: 641px) and (max-width: 1100px) {
  .vg-container,
  .vg-trust-strip .vg-container {
    width: min(calc(100% - 64px), var(--vg-content));
  }

  .entry-content > :where(:not(.alignfull):not(.alignwide)),
  .entry-content > .alignwide {
    width: min(calc(100% - 64px), var(--vg-content));
  }

  .vg-header__inner {
    gap: 16px;
  }

  .vg-header__actions {
    gap: 10px;
  }

  .vg-header__actions .vg-phone {
    display: inline-flex !important;
  }

  .vg-header__actions .vg-button {
    white-space: nowrap;
    padding-inline: 16px;
  }

  .vg-hero {
    padding-top: 72px;
  }
}

/* Make hero image copy readable over the jewelry at every width. */
.vg-hero__image-wrap::after {
  background:
    linear-gradient(90deg, rgba(9,9,10,.24), transparent 38%),
    radial-gradient(circle at 90% 90%, rgba(0,0,0,.58), transparent 46%),
    linear-gradient(0deg, rgba(0,0,0,.30), transparent 55%);
}

.vg-hero__image-label {
  padding: 14px 16px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(5,5,6,.76), rgba(5,5,6,.34));
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  text-shadow: 0 2px 10px rgba(0,0,0,.65);
}

/* Mobile trust bar: keep the useful 2x2 format without tiny text. */
@media (max-width: 640px) {
  .vg-trust-strip .vg-container {
    width: min(calc(100% - 28px), var(--vg-content));
  }

  .vg-trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .vg-trust-item {
    grid-template-columns: 28px minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 11px 7px !important;
  }

  .vg-trust-item:nth-child(odd) {
    border-right: 1px solid rgba(213,165,46,.22) !important;
  }

  .vg-trust-item:nth-child(even) {
    border-right: 0 !important;
  }

  .vg-trust-item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(213,165,46,.18);
  }

  .vg-trust-item__icon {
    width: 28px;
    height: 28px;
  }

  .vg-trust-item__icon svg {
    width: 22px;
    height: 22px;
  }

  .vg-trust-item strong {
    font-size: .84rem;
    line-height: 1.15;
    text-wrap: balance;
  }

  .vg-trust-item span {
    margin-top: 3px;
    font-size: .75rem;
    line-height: 1.3;
  }
}

/* Compact Why cards on phones while preserving all four benefits. */
@media (max-width: 640px) {
  .vg-why__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .vg-why-card {
    min-height: 0;
    padding: 16px 14px;
    border-radius: 14px;
  }

  .vg-why-card__icon {
    width: 36px;
    height: 36px;
    margin-bottom: 12px;
  }

  .vg-why-card__icon svg {
    width: 20px;
    height: 20px;
  }

  .vg-why-card h3 {
    font-size: .98rem;
    line-height: 1.25;
  }

  .vg-why-card p {
    margin-top: 7px;
    font-size: .8rem;
    line-height: 1.48;
  }
}

/* Testimonials become swipeable and compact below desktop. */
.vg-testimonial-readmore {
  display: none;
  appearance: none;
  border: 0;
  background: transparent;
  color: #8b6412;
  min-height: 44px;
  padding: 8px 0;
  margin-top: 6px;
  font: inherit;
  font-size: .86rem;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

@media (max-width: 900px) {
  .vg-testimonial-grid {
    display: flex;
    grid-template-columns: none;
    gap: 14px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    padding: 2px 2px 12px;
    margin-inline: -2px;
  }

  .vg-testimonial-card {
    flex: 0 0 min(78vw, 420px);
    scroll-snap-align: start;
    min-height: 0;
    padding: 22px;
  }

  .vg-testimonial-card__quote:not(.is-expanded) {
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .vg-testimonial-readmore {
    display: inline-flex;
    align-items: center;
  }

  .vg-testimonial-card__person {
    margin-top: 12px;
    padding-top: 12px;
  }
}

@media (max-width: 640px) {
  .vg-testimonial-card {
    flex-basis: 86vw;
    max-width: 330px;
    padding: 20px;
  }
}

/* Larger tap areas for mobile navigation, footer, and inline phone actions. */
@media (max-width: 760px) {
  body {
    padding-bottom: calc(68px + env(safe-area-inset-bottom));
  }

  .vg-header__inner {
    min-height: 88px;
  }

  .vg-header__actions {
    display: none !important;
  }

  .vg-menu-toggle {
    margin-left: auto;
  }

  .vg-nav {
    left: 14px;
    right: 14px;
  }

  .vg-footer .menu {
    gap: 2px 12px;
  }

  .vg-footer .menu a,
  .vg-footer > .vg-container > a,
  .vg-faq__intro-note a,
  .vg-locations__phone a,
  a[href^="tel:"] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }

  .vg-locations__phone {
    flex-wrap: wrap;
    row-gap: 0;
  }

  .vg-hero__image-label {
    right: 16px;
    bottom: 16px;
    max-width: 205px;
    padding: 12px 14px;
    font-size: 1.35rem;
  }
}

/* Persistent mobile conversion bar. */
.vg-mobile-actionbar {
  display: none;
}

@media (max-width: 760px) {
  .vg-mobile-actionbar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1200;
    display: grid;
    grid-template-columns: 1fr 1.35fr;
    gap: 8px;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
    background: rgba(10,10,11,.97);
    border-top: 1px solid rgba(239,200,93,.22);
    box-shadow: 0 -10px 30px rgba(0,0,0,.20);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }

  .vg-mobile-actionbar__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 50px;
    padding: 8px 12px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    color: #fff;
    text-decoration: none;
    font-size: .9rem;
    font-weight: 850;
    white-space: nowrap;
  }

  .vg-mobile-actionbar__action svg {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .vg-mobile-actionbar__action--primary {
    border-color: transparent;
    background: linear-gradient(135deg, var(--vg-gold-light), var(--vg-gold));
    color: #111;
  }

  body.vg-modal-open .vg-mobile-actionbar {
    display: none;
  }
}


/* v0.3.1 - responsive hero image */
.vg-hero__picture {
  display: block;
  width: 100%;
  height: 100%;
}

.vg-hero__picture .vg-hero__image {
  display: block;
}


/* =========================================================
   v0.3.2 - Phoenix location page
   ========================================================= */
.vg-phx-page {
  background: #fff;
}

.vg-phx-hero {
  padding: 68px 0 72px;
  background:
    radial-gradient(circle at 88% 10%, rgba(213,165,46,.13), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f5f0e6 100%);
}

.vg-phx-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.18fr) minmax(320px,.82fr);
  gap: clamp(40px, 6vw, 78px);
  align-items: center;
}

.vg-phx-hero h1 {
  margin: 10px 0 18px;
  max-width: 760px;
  font-size: clamp(2.6rem, 5vw, 4.7rem);
  line-height: .98;
  letter-spacing: -.035em;
}

.vg-phx-hero__lead {
  max-width: 720px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.7;
}

.vg-phx-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-phx-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 22px;
  color: #5f594e;
  font-size: .84rem;
}

.vg-phx-hero__proof span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.vg-phx-hero__proof span::before {
  content: "✓";
  color: #a97913;
  font-weight: 900;
}

.vg-phx-office {
  overflow: hidden;
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(239,200,93,.14), transparent 34%),
    linear-gradient(145deg, #111112, #211c13);
  color: #fff;
  box-shadow: 0 26px 65px rgba(51,38,13,.16);
}

.vg-phx-office__head {
  padding: 30px 30px 22px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.vg-phx-office__label {
  display: block;
  margin-bottom: 8px;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vg-phx-office h2 {
  margin: 0;
  color: #fff;
  font-size: 1.65rem;
}

.vg-phx-office__address {
  margin: 14px 0 0;
  color: rgba(255,255,255,.72);
  line-height: 1.6;
}

.vg-phx-office__details {
  display: grid;
  gap: 10px;
  padding: 22px 30px;
  color: rgba(255,255,255,.68);
  font-size: .88rem;
}

.vg-phx-office__details span {
  display: flex;
  gap: 9px;
  align-items: center;
}

.vg-phx-office__details span::before {
  content: "•";
  color: var(--vg-gold-light);
}

.vg-phx-office__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 0 30px 30px;
}

.vg-phx-office__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-phx-office__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

.vg-phx-local-strip {
  background: var(--vg-black);
  color: #fff;
}

.vg-phx-local-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-phx-local-strip__item {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-phx-local-strip__item:last-child {
  border-right: 0;
}

.vg-phx-local-strip__item strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.vg-phx-local-strip__item span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.4;
}

.vg-phx-buy {
  background: #fff;
}

.vg-phx-buy__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-phx-buy__card {
  display: block;
  min-height: 165px;
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.vg-phx-buy__card:hover {
  transform: translateY(-2px);
  border-color: rgba(213,165,46,.38);
  box-shadow: 0 16px 34px rgba(40,30,12,.08);
}

.vg-phx-buy__card span {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  margin-bottom: 15px;
  border-radius: 50%;
  background: rgba(213,165,46,.13);
  color: #8d6615;
  font-weight: 900;
}

.vg-phx-buy__card h3 {
  margin: 0;
  font-size: 1.1rem;
}

.vg-phx-buy__card p {
  margin: 9px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.55;
}

.vg-phx-process {
  background: var(--vg-ivory);
}

.vg-phx-process__grid {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-phx-steps {
  display: grid;
  gap: 12px;
}

.vg-phx-step {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 15px;
  background: #fff;
  border: 1px solid rgba(25,20,12,.08);
}

.vg-phx-step__number {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--vg-black);
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-phx-step h3 {
  margin: 2px 0 6px;
  font-size: 1rem;
}

.vg-phx-step p {
  margin: 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.55;
}

.vg-phx-stones {
  margin-top: 22px;
  padding: 22px;
  border-left: 4px solid var(--vg-gold);
  border-radius: 0 14px 14px 0;
  background: #fff;
}

.vg-phx-stones h3 {
  margin: 0 0 9px;
  font-size: 1.1rem;
}

.vg-phx-stones p {
  margin: 0;
  color: var(--vg-muted);
  line-height: 1.65;
}

.vg-phx-copy {
  background: #fff;
}

.vg-phx-copy__grid {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(280px,.8fr);
  gap: clamp(42px, 6vw, 74px);
  align-items: start;
}

.vg-phx-copy__body h2 {
  margin-top: 0;
}

.vg-phx-copy__body h3 {
  margin-top: 30px;
}

.vg-phx-copy__body p {
  color: var(--vg-muted);
  line-height: 1.75;
}

.vg-phx-copy__body a {
  color: #855f10;
  font-weight: 750;
  text-underline-offset: 3px;
}

.vg-phx-proof-card {
  position: sticky;
  top: 118px;
  padding: 28px;
  border-radius: 18px;
  background: #171719;
  color: #fff;
}

.vg-phx-proof-card__eyebrow {
  margin: 0 0 8px;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-phx-proof-card h3 {
  margin: 0;
  color: #fff;
}

.vg-phx-proof-card p {
  margin: 12px 0 20px;
  color: rgba(255,255,255,.62);
  font-size: .9rem;
  line-height: 1.6;
}

.vg-phx-faq {
  background: var(--vg-ivory);
}

.vg-phx-faq__grid {
  display: grid;
  grid-template-columns: minmax(250px,.7fr) minmax(0,1.3fr);
  gap: clamp(38px, 6vw, 70px);
  align-items: start;
}

.vg-phx-faq__list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-phx-faq details {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-phx-faq summary {
  position: relative;
  padding: 19px 46px 19px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.vg-phx-faq summary::-webkit-details-marker {
  display: none;
}

.vg-phx-faq summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  color: #956c15;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
}

.vg-phx-faq details[open] summary::after {
  content: "–";
}

.vg-phx-faq__answer {
  padding: 0 44px 20px 0;
  color: var(--vg-muted);
  font-size: .91rem;
  line-height: 1.65;
}

.vg-phx-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(239,200,93,.15), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1d1911 60%, #111112);
  color: #fff;
}

.vg-phx-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-phx-final h2 {
  margin: 0;
  max-width: 760px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.vg-phx-final p {
  margin: 14px 0 0;
  max-width: 700px;
  color: rgba(255,255,255,.64);
}

.vg-phx-final__actions {
  display: grid;
  gap: 10px;
  min-width: 245px;
}

.vg-phx-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-phx-final__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

@media (max-width: 900px) {
  .vg-phx-hero__grid,
  .vg-phx-process__grid,
  .vg-phx-copy__grid,
  .vg-phx-faq__grid,
  .vg-phx-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-phx-proof-card {
    position: static;
  }

  .vg-phx-local-strip__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-phx-local-strip__item:nth-child(2) {
    border-right: 0;
  }

  .vg-phx-local-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-phx-buy__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-phx-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 640px) {
  .vg-phx-hero {
    padding: 46px 0 52px;
  }

  .vg-phx-hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.55rem);
  }

  .vg-phx-office__head,
  .vg-phx-office__details {
    padding-left: 22px;
    padding-right: 22px;
  }

  .vg-phx-office__actions {
    grid-template-columns: 1fr;
    padding: 0 22px 22px;
  }

  .vg-phx-local-strip__item {
    padding: 16px 14px;
  }

  .vg-phx-buy__grid {
    grid-template-columns: 1fr;
  }

  .vg-phx-buy__card {
    min-height: 0;
  }

  .vg-phx-final__actions {
    max-width: none;
  }
}


/* =========================================================
   v0.3.3 - Phoenix cleanup / section spacing
   ========================================================= */

/* Gutenberg can introduce block-gap margins between full-width patterns.
   Valley Goldmine pages are designed as continuous stacked sections. */
.entry-content {
  --wp--style--block-gap: 0;
}

.entry-content > * + *,
.entry-content > .wp-block-group + .wp-block-group,
.entry-content > .alignfull + .alignfull {
  margin-block-start: 0 !important;
  margin-top: 0 !important;
}

/* Also normalize the sections inside the Phoenix all-in-one pattern. */
.vg-phx-page > section,
.vg-phx-page section {
  margin-top: 0;
  margin-bottom: 0;
}

/* The hero sits on a light background, so its secondary phone CTA
   needs dark text/border rather than the site's default white outline CTA. */
.vg-phx-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.32);
  background: rgba(255,255,255,.38);
}

.vg-phx-hero__actions .vg-button--outline:hover {
  color: #111;
  border-color: rgba(27,24,19,.55);
  background: rgba(255,255,255,.72);
}


/* =========================================================
   v0.3.4 - Chandler location page
   Uses the same visual system as the Phoenix location page.
   ========================================================= */
.vg-ch-page {
  background: #fff;
}

.vg-ch-hero {
  padding: 68px 0 72px;
  background:
    radial-gradient(circle at 88% 10%, rgba(213,165,46,.13), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f5f0e6 100%);
}

.vg-ch-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.18fr) minmax(320px,.82fr);
  gap: clamp(40px, 6vw, 78px);
  align-items: center;
}

.vg-ch-hero h1 {
  margin: 10px 0 18px;
  max-width: 760px;
  font-size: clamp(2.6rem, 5vw, 4.7rem);
  line-height: .98;
  letter-spacing: -.035em;
}

.vg-ch-hero__lead {
  max-width: 720px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.7;
}

.vg-ch-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-ch-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.32);
  background: rgba(255,255,255,.38);
}

.vg-ch-hero__actions .vg-button--outline:hover {
  color: #111;
  border-color: rgba(27,24,19,.55);
  background: rgba(255,255,255,.72);
}

.vg-ch-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 22px;
  color: #5f594e;
  font-size: .84rem;
}

.vg-ch-hero__proof span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.vg-ch-hero__proof span::before {
  content: "✓";
  color: #a97913;
  font-weight: 900;
}

.vg-ch-office {
  overflow: hidden;
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(239,200,93,.14), transparent 34%),
    linear-gradient(145deg, #111112, #211c13);
  color: #fff;
  box-shadow: 0 26px 65px rgba(51,38,13,.16);
}

.vg-ch-office__head {
  padding: 30px 30px 22px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.vg-ch-office__label {
  display: block;
  margin-bottom: 8px;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vg-ch-office h2 {
  margin: 0;
  color: #fff;
  font-size: 1.65rem;
}

.vg-ch-office__address {
  margin: 14px 0 0;
  color: rgba(255,255,255,.72);
  line-height: 1.6;
}

.vg-ch-office__landmark {
  margin: 8px 0 0;
  color: var(--vg-gold-light);
  font-size: .82rem;
  font-weight: 700;
}

.vg-ch-office__details {
  display: grid;
  gap: 10px;
  padding: 22px 30px;
  color: rgba(255,255,255,.68);
  font-size: .88rem;
}

.vg-ch-office__details span {
  display: flex;
  gap: 9px;
  align-items: center;
}

.vg-ch-office__details span::before {
  content: "•";
  color: var(--vg-gold-light);
}

.vg-ch-office__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 0 30px 30px;
}

.vg-ch-office__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-ch-office__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

.vg-ch-local-strip {
  background: var(--vg-black);
  color: #fff;
}

.vg-ch-local-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-ch-local-strip__item {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-ch-local-strip__item:last-child {
  border-right: 0;
}

.vg-ch-local-strip__item strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.vg-ch-local-strip__item span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.4;
}

.vg-ch-buy {
  background: #fff;
}

.vg-ch-buy__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-ch-buy__card {
  display: block;
  min-height: 165px;
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.vg-ch-buy__card:hover {
  transform: translateY(-2px);
  border-color: rgba(213,165,46,.38);
  box-shadow: 0 16px 34px rgba(40,30,12,.08);
}

.vg-ch-buy__card span {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  margin-bottom: 15px;
  border-radius: 50%;
  background: rgba(213,165,46,.13);
  color: #8d6615;
  font-weight: 900;
}

.vg-ch-buy__card h3 {
  margin: 0;
  font-size: 1.1rem;
}

.vg-ch-buy__card p {
  margin: 9px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.55;
}

.vg-ch-process {
  background: var(--vg-ivory);
}

.vg-ch-process__grid {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-ch-steps {
  display: grid;
  gap: 12px;
}

.vg-ch-step {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 15px;
  background: #fff;
  border: 1px solid rgba(25,20,12,.08);
}

.vg-ch-step__number {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--vg-black);
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-ch-step h3 {
  margin: 2px 0 6px;
  font-size: 1rem;
}

.vg-ch-step p {
  margin: 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.55;
}

.vg-ch-copy {
  background: #fff;
}

.vg-ch-copy__grid {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(280px,.8fr);
  gap: clamp(42px, 6vw, 74px);
  align-items: start;
}

.vg-ch-copy__body h2 {
  margin-top: 0;
}

.vg-ch-copy__body h3 {
  margin-top: 30px;
}

.vg-ch-copy__body p {
  color: var(--vg-muted);
  line-height: 1.75;
}

.vg-ch-copy__body a {
  color: #855f10;
  font-weight: 750;
  text-underline-offset: 3px;
}

.vg-ch-review-card {
  position: sticky;
  top: 118px;
  padding: 28px;
  border-radius: 18px;
  background: #171719;
  color: #fff;
}

.vg-ch-review-card__eyebrow {
  margin: 0 0 8px;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-ch-review-card blockquote {
  margin: 14px 0 0;
  color: rgba(255,255,255,.82);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
  line-height: 1.55;
}

.vg-ch-review-card cite {
  display: block;
  margin-top: 14px;
  color: rgba(255,255,255,.55);
  font-style: normal;
  font-size: .82rem;
}

.vg-ch-faq {
  background: var(--vg-ivory);
}

.vg-ch-faq__grid {
  display: grid;
  grid-template-columns: minmax(250px,.7fr) minmax(0,1.3fr);
  gap: clamp(38px, 6vw, 70px);
  align-items: start;
}

.vg-ch-faq__list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-ch-faq details {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-ch-faq summary {
  position: relative;
  padding: 19px 46px 19px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.vg-ch-faq summary::-webkit-details-marker {
  display: none;
}

.vg-ch-faq summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  color: #956c15;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
}

.vg-ch-faq details[open] summary::after {
  content: "–";
}

.vg-ch-faq__answer {
  padding: 0 44px 20px 0;
  color: var(--vg-muted);
  font-size: .91rem;
  line-height: 1.65;
}

.vg-ch-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(239,200,93,.15), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1d1911 60%, #111112);
  color: #fff;
}

.vg-ch-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-ch-final h2 {
  margin: 0;
  max-width: 760px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.vg-ch-final p {
  margin: 14px 0 0;
  max-width: 700px;
  color: rgba(255,255,255,.64);
}

.vg-ch-final__actions {
  display: grid;
  gap: 10px;
  min-width: 245px;
}

.vg-ch-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-ch-final__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

@media (max-width: 900px) {
  .vg-ch-hero__grid,
  .vg-ch-process__grid,
  .vg-ch-copy__grid,
  .vg-ch-faq__grid,
  .vg-ch-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-ch-review-card {
    position: static;
  }

  .vg-ch-local-strip__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-ch-local-strip__item:nth-child(2) {
    border-right: 0;
  }

  .vg-ch-local-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-ch-buy__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-ch-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 640px) {
  .vg-ch-hero {
    padding: 46px 0 52px;
  }

  .vg-ch-hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.55rem);
  }

  .vg-ch-office__head,
  .vg-ch-office__details {
    padding-left: 22px;
    padding-right: 22px;
  }

  .vg-ch-office__actions {
    grid-template-columns: 1fr;
    padding: 0 22px 22px;
  }

  .vg-ch-local-strip__item {
    padding: 16px 14px;
  }

  .vg-ch-buy__grid {
    grid-template-columns: 1fr;
  }

  .vg-ch-buy__card {
    min-height: 0;
  }

  .vg-ch-final__actions {
    max-width: none;
  }
}


/* =========================================================
   v0.3.5 - Chandler section spacing cleanup
   ========================================================= */

/* The Chandler page uses raw <section> blocks inside a single HTML block,
   so we explicitly normalize section spacing the same way we did for Phoenix. */
.vg-ch-page > section,
.vg-ch-page section,
.vg-ch-page section.vg-section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Extra safeguard for adjacent sections inside the Chandler page. */
.vg-ch-page section + section {
  margin-top: 0 !important;
}


/* =========================================================
   v0.3.6 - FAQ page
   ========================================================= */
.vg-faq-page {
  background: #fff;
}

.vg-faq-page > section,
.vg-faq-page section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.vg-faq-hero {
  padding: 68px 0 70px;
  background:
    radial-gradient(circle at 88% 8%, rgba(213,165,46,.13), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f5f0e6 100%);
}

.vg-faq-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.12fr) minmax(300px,.88fr);
  gap: clamp(42px, 6vw, 78px);
  align-items: center;
}

.vg-faq-hero h1 {
  margin: 10px 0 18px;
  max-width: 760px;
  font-size: clamp(2.7rem, 5vw, 4.6rem);
  line-height: .98;
  letter-spacing: -.035em;
}

.vg-faq-hero__lead {
  max-width: 720px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.7;
}

.vg-faq-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-faq-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.32);
  background: rgba(255,255,255,.38);
}

.vg-faq-hero__actions .vg-button--outline:hover {
  color: #111;
  border-color: rgba(27,24,19,.55);
  background: rgba(255,255,255,.72);
}

.vg-faq-hero__card {
  padding: 28px;
  border-radius: 20px;
  background: #171719;
  color: #fff;
  box-shadow: 0 26px 65px rgba(51,38,13,.14);
}

.vg-faq-hero__card-label {
  display: block;
  margin-bottom: 10px;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-faq-hero__card h2 {
  margin: 0;
  color: #fff;
  font-size: 1.5rem;
}

.vg-faq-hero__card p {
  margin: 12px 0 0;
  color: rgba(255,255,255,.65);
  line-height: 1.65;
}

.vg-faq-categories {
  background: var(--vg-black);
  color: #fff;
}

.vg-faq-categories__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-faq-categories__item {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-faq-categories__item:last-child {
  border-right: 0;
}

.vg-faq-categories__item strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.vg-faq-categories__item span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.4;
}

.vg-faq-main {
  background: #fff;
}

.vg-faq-main__grid {
  display: grid;
  grid-template-columns: minmax(230px,.62fr) minmax(0,1.38fr);
  gap: clamp(40px, 6vw, 78px);
  align-items: start;
}

.vg-faq-main__intro {
  position: sticky;
  top: 118px;
}

.vg-faq-main__intro p {
  color: var(--vg-muted);
  line-height: 1.7;
}

.vg-faq-list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-faq-group-title {
  margin: 38px 0 12px;
  color: #8b6515;
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vg-faq-list .vg-faq-group-title:first-child {
  margin-top: 0;
}

.vg-faq-list details {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-faq-list summary {
  position: relative;
  padding: 20px 50px 20px 0;
  list-style: none;
  cursor: pointer;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.03rem;
  font-weight: 700;
}

.vg-faq-list summary::-webkit-details-marker {
  display: none;
}

.vg-faq-list summary::after {
  content: "+";
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-50%);
  color: #956c15;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
}

.vg-faq-list details[open] summary::after {
  content: "–";
}

.vg-faq-answer {
  padding: 0 48px 22px 0;
  color: var(--vg-muted);
  line-height: 1.7;
}

.vg-faq-answer p {
  margin: 0;
}

.vg-faq-answer p + p {
  margin-top: 12px;
}

.vg-faq-answer a {
  color: #855f10;
  font-weight: 750;
  text-underline-offset: 3px;
}

.vg-faq-contact {
  background: var(--vg-ivory);
}

.vg-faq-contact__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 34px;
  align-items: center;
}

.vg-faq-contact h2 {
  margin: 0;
}

.vg-faq-contact p {
  margin: 12px 0 0;
  max-width: 720px;
  color: var(--vg-muted);
}

.vg-faq-contact__actions {
  display: grid;
  gap: 10px;
  min-width: 240px;
}

.vg-faq-contact__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-faq-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(239,200,93,.15), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1d1911 60%, #111112);
  color: #fff;
}

.vg-faq-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-faq-final h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.vg-faq-final p {
  margin: 14px 0 0;
  color: rgba(255,255,255,.64);
}

.vg-faq-final__actions {
  display: grid;
  gap: 10px;
  min-width: 245px;
}

.vg-faq-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-faq-final__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

@media (max-width: 900px) {
  .vg-faq-hero__grid,
  .vg-faq-main__grid,
  .vg-faq-contact__grid,
  .vg-faq-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-faq-main__intro {
    position: static;
  }

  .vg-faq-categories__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-faq-categories__item:nth-child(2) {
    border-right: 0;
  }

  .vg-faq-categories__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-faq-contact__actions,
  .vg-faq-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 640px) {
  .vg-faq-hero {
    padding: 46px 0 52px;
  }

  .vg-faq-hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.55rem);
  }

  .vg-faq-categories__item {
    padding: 16px 14px;
  }

  .vg-faq-contact__actions,
  .vg-faq-final__actions {
    max-width: none;
  }
}


/* =========================================================
   v0.3.7 - Locations hub page
   ========================================================= */
.vg-loc-page,
.vg-loc-page > section,
.vg-loc-page section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.vg-loc-hero {
  padding: 68px 0 72px;
  background:
    radial-gradient(circle at 88% 10%, rgba(213,165,46,.13), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f5f0e6 100%);
}

.vg-loc-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr);
  gap: clamp(42px, 6vw, 80px);
  align-items: center;
}

.vg-loc-hero h1 {
  margin: 10px 0 18px;
  max-width: 760px;
  font-size: clamp(2.7rem, 5vw, 4.7rem);
  line-height: .98;
  letter-spacing: -.035em;
}

.vg-loc-hero__lead {
  max-width: 720px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.7;
}

.vg-loc-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-loc-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.32);
  background: rgba(255,255,255,.38);
}

.vg-loc-hero__actions .vg-button--outline:hover {
  color: #111;
  border-color: rgba(27,24,19,.55);
  background: rgba(255,255,255,.72);
}

.vg-loc-hero__summary {
  padding: 28px;
  border-radius: 20px;
  background: #171719;
  color: #fff;
  box-shadow: 0 26px 65px rgba(51,38,13,.14);
}

.vg-loc-hero__summary-label {
  display: block;
  margin-bottom: 12px;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-loc-hero__summary h2 {
  margin: 0;
  color: #fff;
  font-size: 1.45rem;
}

.vg-loc-hero__summary p {
  margin: 12px 0 0;
  color: rgba(255,255,255,.64);
  line-height: 1.65;
}

.vg-loc-hero__summary-list {
  display: grid;
  gap: 10px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}

.vg-loc-hero__summary-list li {
  display: flex;
  gap: 9px;
  color: rgba(255,255,255,.78);
  font-size: .9rem;
}

.vg-loc-hero__summary-list li::before {
  content: "✓";
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-loc-strip {
  background: var(--vg-black);
  color: #fff;
}

.vg-loc-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-loc-strip__item {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-loc-strip__item:last-child {
  border-right: 0;
}

.vg-loc-strip__item strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.vg-loc-strip__item span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.4;
}

.vg-loc-offices {
  background: #fff;
}

.vg-loc-offices__header {
  max-width: 780px;
  margin: 0 auto 34px;
  text-align: center;
}

.vg-loc-offices__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 22px;
}

.vg-loc-office {
  overflow: hidden;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(40,30,12,.07);
}

.vg-loc-office__top {
  padding: 30px 30px 24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(239,200,93,.13), transparent 36%),
    linear-gradient(145deg, #121213, #211d15);
  color: #fff;
}

.vg-loc-office__eyebrow {
  display: block;
  margin-bottom: 8px;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-loc-office h2 {
  margin: 0;
  color: #fff;
  font-size: 1.8rem;
}

.vg-loc-office__address {
  margin: 13px 0 0;
  color: rgba(255,255,255,.72);
  line-height: 1.6;
}

.vg-loc-office__landmark {
  margin: 8px 0 0;
  color: var(--vg-gold-light);
  font-size: .83rem;
  font-weight: 700;
}

.vg-loc-office__body {
  padding: 24px 30px 28px;
}

.vg-loc-office__body p {
  margin: 0;
  color: var(--vg-muted);
  line-height: 1.65;
}

.vg-loc-office__meta {
  display: grid;
  gap: 9px;
  margin-top: 18px;
  color: #5e594f;
  font-size: .86rem;
}

.vg-loc-office__meta span {
  display: flex;
  gap: 8px;
  align-items: center;
}

.vg-loc-office__meta span::before {
  content: "•";
  color: #a97913;
  font-weight: 900;
}

.vg-loc-office__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 22px;
}

.vg-loc-office__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-loc-office__detail-link {
  display: inline-block;
  margin-top: 16px;
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-loc-process {
  background: var(--vg-ivory);
}

.vg-loc-process__grid {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-loc-process__steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}

.vg-loc-process__step {
  padding: 20px;
  border: 1px solid rgba(25,20,12,.08);
  border-radius: 15px;
  background: #fff;
}

.vg-loc-process__step strong {
  display: block;
  color: #1f1b15;
  font-family: Georgia, "Times New Roman", serif;
}

.vg-loc-process__step p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.55;
}

.vg-loc-other {
  background: #fff;
}

.vg-loc-other__grid {
  display: grid;
  grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
  gap: clamp(38px, 6vw, 72px);
  align-items: start;
}

.vg-loc-other__intro p {
  color: var(--vg-muted);
  line-height: 1.7;
}

.vg-loc-other__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.vg-loc-other__card {
  display: block;
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.vg-loc-other__card:hover {
  transform: translateY(-2px);
  border-color: rgba(213,165,46,.38);
  box-shadow: 0 16px 34px rgba(40,30,12,.08);
}

.vg-loc-other__card span {
  display: block;
  color: #8a6313;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.vg-loc-other__card h3 {
  margin: 9px 0 0;
  font-size: 1.1rem;
}

.vg-loc-other__card p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.55;
}

.vg-loc-faq {
  background: var(--vg-ivory);
}

.vg-loc-faq__grid {
  display: grid;
  grid-template-columns: minmax(240px,.7fr) minmax(0,1.3fr);
  gap: clamp(38px, 6vw, 70px);
  align-items: start;
}

.vg-loc-faq__list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-loc-faq details {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-loc-faq summary {
  position: relative;
  padding: 19px 46px 19px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.vg-loc-faq summary::-webkit-details-marker {
  display: none;
}

.vg-loc-faq summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  color: #956c15;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
}

.vg-loc-faq details[open] summary::after {
  content: "–";
}

.vg-loc-faq__answer {
  padding: 0 44px 20px 0;
  color: var(--vg-muted);
  font-size: .91rem;
  line-height: 1.65;
}

.vg-loc-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(239,200,93,.15), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1d1911 60%, #111112);
  color: #fff;
}

.vg-loc-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-loc-final h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.vg-loc-final p {
  margin: 14px 0 0;
  color: rgba(255,255,255,.64);
}

.vg-loc-final__actions {
  display: grid;
  gap: 10px;
  min-width: 245px;
}

.vg-loc-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-loc-final__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

@media (max-width: 900px) {
  .vg-loc-hero__grid,
  .vg-loc-process__grid,
  .vg-loc-other__grid,
  .vg-loc-faq__grid,
  .vg-loc-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-loc-strip__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-loc-strip__item:nth-child(2) {
    border-right: 0;
  }

  .vg-loc-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-loc-offices__grid,
  .vg-loc-other__cards {
    grid-template-columns: 1fr;
  }

  .vg-loc-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 640px) {
  .vg-loc-hero {
    padding: 46px 0 52px;
  }

  .vg-loc-hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.55rem);
  }

  .vg-loc-strip__item {
    padding: 16px 14px;
  }

  .vg-loc-process__steps {
    grid-template-columns: 1fr;
  }

  .vg-loc-office__top,
  .vg-loc-office__body {
    padding-left: 22px;
    padding-right: 22px;
  }

  .vg-loc-office__actions {
    grid-template-columns: 1fr;
  }

  .vg-loc-final__actions {
    max-width: none;
  }
}


/* =========================================================
   v0.3.8 - Locations page block-gap cleanup
   ========================================================= */

/* The Locations page is composed of named Gutenberg Group blocks.
   WordPress can apply block-gap spacing between those groups even when
   the inner <section> elements have zero margins. Remove that gap here. */
.vg-loc-page {
  --wp--style--block-gap: 0 !important;
  gap: 0 !important;
}

.vg-loc-page > .wp-block-group,
.vg-loc-page > .wp-block-group.alignfull,
.vg-loc-page > .wp-block-group + .wp-block-group {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

/* Extra safeguard for themes/core styles that target flow-layout children. */
.vg-loc-page.is-layout-flow > * + *,
.vg-loc-page > .is-layout-flow,
.vg-loc-page > .is-layout-constrained {
  margin-block-start: 0 !important;
}


/* =========================================================
   v0.4.0 - Sell Gold Jewelry / Jewelry Buyer service page
   ========================================================= */
.vg-jewelry-page {
  --wp--style--block-gap: 0 !important;
  gap: 0 !important;
  background: #fff;
}

.vg-jewelry-page > .wp-block-group,
.vg-jewelry-page > .wp-block-group.alignfull,
.vg-jewelry-page > .wp-block-group + .wp-block-group,
.vg-jewelry-page.is-layout-flow > * + * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.vg-jewelry-page section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.vg-jewelry-hero {
  padding: 68px 0 72px;
  background:
    radial-gradient(circle at 88% 10%, rgba(213,165,46,.13), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f5f0e6 100%);
}

.vg-jewelry-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr);
  gap: clamp(42px, 6vw, 80px);
  align-items: center;
}

.vg-jewelry-hero h1 {
  margin: 10px 0 18px;
  max-width: 780px;
  font-size: clamp(2.7rem, 5vw, 4.75rem);
  line-height: .98;
  letter-spacing: -.035em;
}

.vg-jewelry-hero__lead {
  max-width: 730px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.72;
}

.vg-jewelry-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-jewelry-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.32);
  background: rgba(255,255,255,.38);
}

.vg-jewelry-hero__actions .vg-button--outline:hover {
  color: #111;
  border-color: rgba(27,24,19,.55);
  background: rgba(255,255,255,.72);
}

.vg-jewelry-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 22px;
  color: #5f594e;
  font-size: .84rem;
}

.vg-jewelry-hero__proof span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.vg-jewelry-hero__proof span::before {
  content: "✓";
  color: #a97913;
  font-weight: 900;
}

.vg-jewelry-hero__visual {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  border-radius: 22px;
  background: #1a1712;
  box-shadow: 0 26px 65px rgba(51,38,13,.16);
}

.vg-jewelry-hero__visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vg-jewelry-hero__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(10,9,7,.78) 100%);
}

.vg-jewelry-hero__caption {
  position: absolute;
  z-index: 2;
  right: 24px;
  bottom: 22px;
  left: 24px;
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(13,13,14,.72);
  color: #fff;
  backdrop-filter: blur(8px);
}

.vg-jewelry-hero__caption strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
}

.vg-jewelry-hero__caption span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.64);
  font-size: .82rem;
}

.vg-jewelry-strip {
  background: var(--vg-black);
  color: #fff;
}

.vg-jewelry-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-jewelry-strip__item {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-jewelry-strip__item:last-child {
  border-right: 0;
}

.vg-jewelry-strip__item strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.vg-jewelry-strip__item span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.4;
}

.vg-jewelry-types {
  background: #fff;
}

.vg-jewelry-types__header {
  max-width: 800px;
  margin: 0 auto 36px;
  text-align: center;
}

.vg-jewelry-types__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-jewelry-type {
  min-height: 190px;
  padding: 25px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-jewelry-type__icon {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  margin-bottom: 15px;
  border-radius: 50%;
  background: rgba(213,165,46,.13);
  color: #8d6615;
  font-weight: 900;
}

.vg-jewelry-type h3 {
  margin: 0;
  font-size: 1.08rem;
}

.vg-jewelry-type p {
  margin: 9px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.58;
}

.vg-jewelry-value {
  background: var(--vg-ivory);
}

.vg-jewelry-value__grid {
  display: grid;
  grid-template-columns: minmax(0,.76fr) minmax(0,1.24fr);
  gap: clamp(42px, 6vw, 78px);
  align-items: start;
}

.vg-jewelry-value__intro p {
  color: var(--vg-muted);
  line-height: 1.72;
}

.vg-jewelry-value__factors {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}

.vg-jewelry-factor {
  padding: 21px;
  border: 1px solid rgba(25,20,12,.08);
  border-radius: 15px;
  background: #fff;
}

.vg-jewelry-factor strong {
  display: block;
  color: #1f1b15;
  font-family: Georgia, "Times New Roman", serif;
}

.vg-jewelry-factor p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.58;
}

.vg-jewelry-education {
  background: #fff;
}

.vg-jewelry-education__grid {
  display: grid;
  grid-template-columns: minmax(0,1.12fr) minmax(300px,.88fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-jewelry-education__body h2 {
  margin-top: 0;
}

.vg-jewelry-education__body h3 {
  margin-top: 28px;
}

.vg-jewelry-education__body p {
  color: var(--vg-muted);
  line-height: 1.75;
}

.vg-jewelry-education__body a {
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-jewelry-karat {
  position: sticky;
  top: 118px;
  overflow: hidden;
  border-radius: 18px;
  background: #171719;
  color: #fff;
}

.vg-jewelry-karat__top {
  padding: 26px 28px 22px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.vg-jewelry-karat__label {
  display: block;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-jewelry-karat h3 {
  margin: 8px 0 0;
  color: #fff;
  font-size: 1.35rem;
}

.vg-jewelry-karat__rows {
  display: grid;
}

.vg-jewelry-karat__row {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 12px;
  padding: 15px 28px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.vg-jewelry-karat__row:last-child {
  border-bottom: 0;
}

.vg-jewelry-karat__row strong {
  color: var(--vg-gold-light);
}

.vg-jewelry-karat__row span {
  color: rgba(255,255,255,.67);
  font-size: .84rem;
}

.vg-jewelry-process {
  background: var(--vg-ivory);
}

.vg-jewelry-process__header {
  max-width: 760px;
  margin-bottom: 30px;
}

.vg-jewelry-process__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}

.vg-jewelry-step {
  padding: 22px;
  border-radius: 15px;
  background: #fff;
  border: 1px solid rgba(25,20,12,.08);
}

.vg-jewelry-step__num {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: var(--vg-black);
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-jewelry-step h3 {
  margin: 0;
  font-size: 1rem;
}

.vg-jewelry-step p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .85rem;
  line-height: 1.55;
}

.vg-jewelry-estate {
  background:
    radial-gradient(circle at 82% 12%, rgba(239,200,93,.13), transparent 30%),
    #171719;
  color: #fff;
}

.vg-jewelry-estate__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(300px,.75fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: center;
}

.vg-jewelry-estate h2 {
  margin: 0;
  color: #fff;
}

.vg-jewelry-estate p {
  color: rgba(255,255,255,.66);
  line-height: 1.72;
}

.vg-jewelry-estate__points {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.vg-jewelry-estate__points span {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  color: rgba(255,255,255,.78);
}

.vg-jewelry-estate__points span::before {
  content: "✓";
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-jewelry-estate__card {
  padding: 26px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 17px;
  background: rgba(255,255,255,.055);
}

.vg-jewelry-estate__card strong {
  display: block;
  color: var(--vg-gold-light);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
}

.vg-jewelry-estate__card p {
  margin-bottom: 0;
}

.vg-jewelry-locations {
  background: #fff;
}

.vg-jewelry-locations__grid {
  display: grid;
  grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr);
  gap: clamp(40px, 6vw, 72px);
  align-items: start;
}

.vg-jewelry-location-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.vg-jewelry-location {
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-jewelry-location span {
  display: block;
  color: #8a6313;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.vg-jewelry-location h3 {
  margin: 8px 0 0;
}

.vg-jewelry-location p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.6;
}

.vg-jewelry-location a {
  display: inline-block;
  margin-top: 13px;
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-jewelry-faq {
  background: var(--vg-ivory);
}

.vg-jewelry-faq__grid {
  display: grid;
  grid-template-columns: minmax(240px,.7fr) minmax(0,1.3fr);
  gap: clamp(38px, 6vw, 70px);
  align-items: start;
}

.vg-jewelry-faq__list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-jewelry-faq details {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-jewelry-faq summary {
  position: relative;
  padding: 19px 46px 19px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.vg-jewelry-faq summary::-webkit-details-marker {
  display: none;
}

.vg-jewelry-faq summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  color: #956c15;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
}

.vg-jewelry-faq details[open] summary::after {
  content: "–";
}

.vg-jewelry-faq__answer {
  padding: 0 44px 20px 0;
  color: var(--vg-muted);
  font-size: .91rem;
  line-height: 1.65;
}

.vg-jewelry-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(239,200,93,.15), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1d1911 60%, #111112);
  color: #fff;
}

.vg-jewelry-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-jewelry-final h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.vg-jewelry-final p {
  margin: 14px 0 0;
  max-width: 700px;
  color: rgba(255,255,255,.64);
}

.vg-jewelry-final__actions {
  display: grid;
  gap: 10px;
  min-width: 245px;
}

.vg-jewelry-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-jewelry-final__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

@media (max-width: 980px) {
  .vg-jewelry-hero__grid,
  .vg-jewelry-value__grid,
  .vg-jewelry-education__grid,
  .vg-jewelry-estate__grid,
  .vg-jewelry-locations__grid,
  .vg-jewelry-faq__grid,
  .vg-jewelry-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-jewelry-hero__visual {
    min-height: 430px;
  }

  .vg-jewelry-karat {
    position: static;
  }

  .vg-jewelry-strip__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-jewelry-strip__item:nth-child(2) {
    border-right: 0;
  }

  .vg-jewelry-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-jewelry-types__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-jewelry-process__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-jewelry-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 640px) {
  .vg-jewelry-hero {
    padding: 46px 0 52px;
  }

  .vg-jewelry-hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.55rem);
  }

  .vg-jewelry-hero__visual {
    min-height: 360px;
  }

  .vg-jewelry-strip__item {
    padding: 16px 14px;
  }

  .vg-jewelry-types__grid,
  .vg-jewelry-value__factors,
  .vg-jewelry-process__grid,
  .vg-jewelry-location-cards {
    grid-template-columns: 1fr;
  }

  .vg-jewelry-final__actions {
    max-width: none;
  }
}


/* =========================================================
   v0.4.1 - Sell Diamonds / Diamond Buyer service page
   ========================================================= */
.vg-diamond-page {
  --wp--style--block-gap: 0 !important;
  gap: 0 !important;
  background: #fff;
}

.vg-diamond-page > .wp-block-group,
.vg-diamond-page > .wp-block-group.alignfull,
.vg-diamond-page > .wp-block-group + .wp-block-group,
.vg-diamond-page.is-layout-flow > * + * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.vg-diamond-page section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.vg-diamond-hero {
  padding: 68px 0 72px;
  background:
    radial-gradient(circle at 88% 10%, rgba(213,165,46,.13), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f5f0e6 100%);
}

.vg-diamond-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr);
  gap: clamp(42px, 6vw, 80px);
  align-items: center;
}

.vg-diamond-hero h1 {
  margin: 10px 0 18px;
  max-width: 790px;
  font-size: clamp(2.7rem, 5vw, 4.75rem);
  line-height: .98;
  letter-spacing: -.035em;
}

.vg-diamond-hero__lead {
  max-width: 730px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.72;
}

.vg-diamond-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-diamond-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.32);
  background: rgba(255,255,255,.38);
}

.vg-diamond-hero__actions .vg-button--outline:hover {
  color: #111;
  border-color: rgba(27,24,19,.55);
  background: rgba(255,255,255,.72);
}

.vg-diamond-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 22px;
  color: #5f594e;
  font-size: .84rem;
}

.vg-diamond-hero__proof span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.vg-diamond-hero__proof span::before {
  content: "✓";
  color: #a97913;
  font-weight: 900;
}

.vg-diamond-hero__visual {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  border-radius: 22px;
  background: #151515;
  box-shadow: 0 26px 65px rgba(51,38,13,.16);
}

.vg-diamond-hero__visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vg-diamond-hero__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 46%, rgba(10,9,7,.8) 100%);
}

.vg-diamond-hero__caption {
  position: absolute;
  z-index: 2;
  right: 24px;
  bottom: 22px;
  left: 24px;
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(13,13,14,.72);
  color: #fff;
  backdrop-filter: blur(8px);
}

.vg-diamond-hero__caption strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
}

.vg-diamond-hero__caption span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.64);
  font-size: .82rem;
}

.vg-diamond-strip {
  background: var(--vg-black);
  color: #fff;
}

.vg-diamond-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-diamond-strip__item {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-diamond-strip__item:last-child {
  border-right: 0;
}

.vg-diamond-strip__item strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.vg-diamond-strip__item span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.4;
}

.vg-diamond-types {
  background: #fff;
}

.vg-diamond-types__header {
  max-width: 810px;
  margin: 0 auto 36px;
  text-align: center;
}

.vg-diamond-types__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-diamond-type {
  min-height: 190px;
  padding: 25px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-diamond-type__icon {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  margin-bottom: 15px;
  border-radius: 50%;
  background: rgba(213,165,46,.13);
  color: #8d6615;
  font-weight: 900;
}

.vg-diamond-type h3 {
  margin: 0;
  font-size: 1.08rem;
}

.vg-diamond-type p {
  margin: 9px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.58;
}

.vg-diamond-value {
  background: var(--vg-ivory);
}

.vg-diamond-value__grid {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
  gap: clamp(42px, 6vw, 78px);
  align-items: start;
}

.vg-diamond-value__intro p {
  color: var(--vg-muted);
  line-height: 1.72;
}

.vg-diamond-value__factors {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}

.vg-diamond-factor {
  padding: 21px;
  border: 1px solid rgba(25,20,12,.08);
  border-radius: 15px;
  background: #fff;
}

.vg-diamond-factor strong {
  display: block;
  color: #1f1b15;
  font-family: Georgia, "Times New Roman", serif;
}

.vg-diamond-factor p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.58;
}

.vg-diamond-education {
  background: #fff;
}

.vg-diamond-education__grid {
  display: grid;
  grid-template-columns: minmax(0,1.12fr) minmax(300px,.88fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-diamond-education__body h2 {
  margin-top: 0;
}

.vg-diamond-education__body h3 {
  margin-top: 28px;
}

.vg-diamond-education__body p {
  color: var(--vg-muted);
  line-height: 1.75;
}

.vg-diamond-education__body a {
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-diamond-four-cs {
  position: sticky;
  top: 118px;
  overflow: hidden;
  border-radius: 18px;
  background: #171719;
  color: #fff;
}

.vg-diamond-four-cs__top {
  padding: 26px 28px 22px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.vg-diamond-four-cs__label {
  display: block;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-diamond-four-cs h3 {
  margin: 8px 0 0;
  color: #fff;
  font-size: 1.35rem;
}

.vg-diamond-four-cs__rows {
  display: grid;
}

.vg-diamond-four-cs__row {
  display: grid;
  grid-template-columns: 82px 1fr;
  gap: 12px;
  padding: 15px 28px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.vg-diamond-four-cs__row:last-child {
  border-bottom: 0;
}

.vg-diamond-four-cs__row strong {
  color: var(--vg-gold-light);
}

.vg-diamond-four-cs__row span {
  color: rgba(255,255,255,.67);
  font-size: .84rem;
}

.vg-diamond-docs {
  background:
    radial-gradient(circle at 82% 12%, rgba(239,200,93,.13), transparent 30%),
    #171719;
  color: #fff;
}

.vg-diamond-docs__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(300px,.8fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: center;
}

.vg-diamond-docs h2 {
  margin: 0;
  color: #fff;
}

.vg-diamond-docs p {
  color: rgba(255,255,255,.66);
  line-height: 1.72;
}

.vg-diamond-docs__points {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.vg-diamond-docs__points span {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  color: rgba(255,255,255,.78);
}

.vg-diamond-docs__points span::before {
  content: "✓";
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-diamond-docs__card {
  padding: 26px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 17px;
  background: rgba(255,255,255,.055);
}

.vg-diamond-docs__card strong {
  display: block;
  color: var(--vg-gold-light);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
}

.vg-diamond-docs__card p {
  margin-bottom: 0;
}

.vg-diamond-process {
  background: var(--vg-ivory);
}

.vg-diamond-process__header {
  max-width: 780px;
  margin-bottom: 30px;
}

.vg-diamond-process__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}

.vg-diamond-step {
  padding: 22px;
  border-radius: 15px;
  background: #fff;
  border: 1px solid rgba(25,20,12,.08);
}

.vg-diamond-step__num {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: var(--vg-black);
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-diamond-step h3 {
  margin: 0;
  font-size: 1rem;
}

.vg-diamond-step p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .85rem;
  line-height: 1.55;
}

.vg-diamond-setting {
  background: #fff;
}

.vg-diamond-setting__grid {
  display: grid;
  grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-diamond-setting__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.vg-diamond-setting__card {
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-diamond-setting__card strong {
  display: block;
  color: #1f1b15;
  font-family: Georgia, "Times New Roman", serif;
}

.vg-diamond-setting__card p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.6;
}

.vg-diamond-locations {
  background: var(--vg-ivory);
}

.vg-diamond-locations__grid {
  display: grid;
  grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr);
  gap: clamp(40px, 6vw, 72px);
  align-items: start;
}

.vg-diamond-location-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.vg-diamond-location {
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-diamond-location span {
  display: block;
  color: #8a6313;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.vg-diamond-location h3 {
  margin: 8px 0 0;
}

.vg-diamond-location p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.6;
}

.vg-diamond-location a {
  display: inline-block;
  margin-top: 13px;
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-diamond-faq {
  background: #fff;
}

.vg-diamond-faq__grid {
  display: grid;
  grid-template-columns: minmax(240px,.7fr) minmax(0,1.3fr);
  gap: clamp(38px, 6vw, 70px);
  align-items: start;
}

.vg-diamond-faq__list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-diamond-faq details {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-diamond-faq summary {
  position: relative;
  padding: 19px 46px 19px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.vg-diamond-faq summary::-webkit-details-marker {
  display: none;
}

.vg-diamond-faq summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  color: #956c15;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
}

.vg-diamond-faq details[open] summary::after {
  content: "–";
}

.vg-diamond-faq__answer {
  padding: 0 44px 20px 0;
  color: var(--vg-muted);
  font-size: .91rem;
  line-height: 1.65;
}

.vg-diamond-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(239,200,93,.15), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1d1911 60%, #111112);
  color: #fff;
}

.vg-diamond-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-diamond-final h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.vg-diamond-final p {
  margin: 14px 0 0;
  max-width: 700px;
  color: rgba(255,255,255,.64);
}

.vg-diamond-final__actions {
  display: grid;
  gap: 10px;
  min-width: 245px;
}

.vg-diamond-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-diamond-final__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

@media (max-width: 980px) {
  .vg-diamond-hero__grid,
  .vg-diamond-value__grid,
  .vg-diamond-education__grid,
  .vg-diamond-docs__grid,
  .vg-diamond-setting__grid,
  .vg-diamond-locations__grid,
  .vg-diamond-faq__grid,
  .vg-diamond-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-diamond-hero__visual {
    min-height: 430px;
  }

  .vg-diamond-four-cs {
    position: static;
  }

  .vg-diamond-strip__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-diamond-strip__item:nth-child(2) {
    border-right: 0;
  }

  .vg-diamond-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-diamond-types__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-diamond-process__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-diamond-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 640px) {
  .vg-diamond-hero {
    padding: 46px 0 52px;
  }

  .vg-diamond-hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.55rem);
  }

  .vg-diamond-hero__visual {
    min-height: 360px;
  }

  .vg-diamond-strip__item {
    padding: 16px 14px;
  }

  .vg-diamond-types__grid,
  .vg-diamond-value__factors,
  .vg-diamond-process__grid,
  .vg-diamond-setting__cards,
  .vg-diamond-location-cards {
    grid-template-columns: 1fr;
  }

  .vg-diamond-final__actions {
    max-width: none;
  }
}


/* =========================================================
   v0.4.2 - Diamond SEO + conversion refinements
   ========================================================= */
.vg-diamond-hero__proof {
  margin-top: 20px;
}

.vg-diamond-testimonial {
  background: #fff;
}

.vg-diamond-testimonial__grid {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
  gap: clamp(42px, 6vw, 74px);
  align-items: center;
}

.vg-diamond-testimonial__intro p {
  color: var(--vg-muted);
  line-height: 1.7;
}

.vg-diamond-quote {
  margin: 0;
  padding: 30px 32px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(213,165,46,.10), transparent 32%),
    #fff;
  box-shadow: 0 14px 36px rgba(40,30,12,.06);
}

.vg-diamond-quote p {
  margin: 0;
  color: #2c2821;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.05rem, 2vw, 1.25rem);
  line-height: 1.65;
}

.vg-diamond-quote cite {
  display: block;
  margin-top: 16px;
  color: var(--vg-muted);
  font-style: normal;
  font-size: .86rem;
}

.vg-diamond-midcta {
  background: var(--vg-black);
  color: #fff;
}

.vg-diamond-midcta__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 30px;
  align-items: center;
}

.vg-diamond-midcta h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.8rem, 3vw, 2.5rem);
}

.vg-diamond-midcta p {
  margin: 10px 0 0;
  color: rgba(255,255,255,.62);
}

.vg-diamond-midcta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.vg-diamond-midcta__actions .vg-button--outline {
  color: #fff;
  border-color: rgba(255,255,255,.30);
}

.vg-diamond-mobile-bar {
  display: none;
}

@media (max-width: 980px) {
  .vg-diamond-testimonial__grid,
  .vg-diamond-midcta__inner {
    grid-template-columns: 1fr;
  }

  .vg-diamond-midcta__actions {
    justify-content: flex-start;
  }
}

@media (max-width: 700px) {
  body:has(.vg-diamond-page) {
    padding-bottom: 74px;
  }

  .vg-diamond-mobile-bar {
    position: fixed;
    z-index: 9998;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    gap: 8px;
    padding: 10px max(12px, env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-right));
    background: rgba(13,13,14,.97);
    box-shadow: 0 -8px 24px rgba(0,0,0,.22);
    backdrop-filter: blur(10px);
  }

  .vg-diamond-mobile-bar a {
    display: grid;
    place-items: center;
    min-height: 48px;
    border-radius: 999px;
    text-decoration: none;
    font-size: .88rem;
    font-weight: 850;
  }

  .vg-diamond-mobile-bar__call {
    border: 1px solid rgba(255,255,255,.25);
    color: #fff;
  }

  .vg-diamond-mobile-bar__schedule {
    background: var(--vg-gold);
    color: #111;
  }
}


/* =========================================================
   v0.4.3 - Sell Platinum / Platinum Buyer service page
   ========================================================= */
.vg-platinum-page {
  --wp--style--block-gap: 0 !important;
  gap: 0 !important;
  background: #fff;
}

.vg-platinum-page > .wp-block-group,
.vg-platinum-page > .wp-block-group.alignfull,
.vg-platinum-page > .wp-block-group + .wp-block-group,
.vg-platinum-page.is-layout-flow > * + * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.vg-platinum-page section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.vg-platinum-hero {
  padding: 68px 0 72px;
  background:
    radial-gradient(circle at 88% 10%, rgba(193,197,201,.28), transparent 30%),
    radial-gradient(circle at 12% 90%, rgba(213,165,46,.08), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f4f2ed 100%);
}

.vg-platinum-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr);
  gap: clamp(42px, 6vw, 80px);
  align-items: center;
}

.vg-platinum-hero h1 {
  margin: 10px 0 18px;
  max-width: 820px;
  font-size: clamp(2.7rem, 5vw, 4.75rem);
  line-height: .98;
  letter-spacing: -.035em;
}

.vg-platinum-hero__lead {
  max-width: 740px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.72;
}

.vg-platinum-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-platinum-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.32);
  background: rgba(255,255,255,.4);
}

.vg-platinum-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 22px;
  color: #5f594e;
  font-size: .84rem;
}

.vg-platinum-hero__proof span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.vg-platinum-hero__proof span::before {
  content: "✓";
  color: #a97913;
  font-weight: 900;
}

.vg-platinum-hero__visual {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  border-radius: 22px;
  background: #171717;
  box-shadow: 0 26px 65px rgba(51,38,13,.16);
}

.vg-platinum-hero__visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vg-platinum-hero__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 46%, rgba(10,10,10,.8) 100%);
}

.vg-platinum-hero__caption {
  position: absolute;
  z-index: 2;
  right: 24px;
  bottom: 22px;
  left: 24px;
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(13,13,14,.72);
  color: #fff;
  backdrop-filter: blur(8px);
}

.vg-platinum-hero__caption strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
}

.vg-platinum-hero__caption span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.64);
  font-size: .82rem;
}

.vg-platinum-strip {
  background: var(--vg-black);
  color: #fff;
}

.vg-platinum-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-platinum-strip__item {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-platinum-strip__item:last-child {
  border-right: 0;
}

.vg-platinum-strip__item strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.vg-platinum-strip__item span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.4;
}

.vg-platinum-types {
  background: #fff;
}

.vg-platinum-types__header {
  max-width: 820px;
  margin: 0 auto 36px;
  text-align: center;
}

.vg-platinum-types__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-platinum-type {
  min-height: 190px;
  padding: 25px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-platinum-type__icon {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 15px;
  border-radius: 50%;
  background: #eeeeec;
  color: #595b5e;
  font-size: .8rem;
  font-weight: 900;
}

.vg-platinum-type h3 {
  margin: 0;
  font-size: 1.08rem;
}

.vg-platinum-type p {
  margin: 9px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.58;
}

.vg-platinum-value {
  background: var(--vg-ivory);
}

.vg-platinum-value__grid {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
  gap: clamp(42px, 6vw, 78px);
  align-items: start;
}

.vg-platinum-value__intro p {
  color: var(--vg-muted);
  line-height: 1.72;
}

.vg-platinum-value__factors {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}

.vg-platinum-factor {
  padding: 21px;
  border: 1px solid rgba(25,20,12,.08);
  border-radius: 15px;
  background: #fff;
}

.vg-platinum-factor strong {
  display: block;
  color: #1f1b15;
  font-family: Georgia, "Times New Roman", serif;
}

.vg-platinum-factor p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.58;
}

.vg-platinum-purity {
  background: #fff;
}

.vg-platinum-purity__grid {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(300px,.92fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-platinum-purity__body p {
  color: var(--vg-muted);
  line-height: 1.75;
}

.vg-platinum-purity__body a {
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-platinum-marks {
  position: sticky;
  top: 118px;
  overflow: hidden;
  border-radius: 18px;
  background: #171719;
  color: #fff;
}

.vg-platinum-marks__top {
  padding: 26px 28px 22px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.vg-platinum-marks__label {
  display: block;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-platinum-marks h3 {
  margin: 8px 0 0;
  color: #fff;
  font-size: 1.35rem;
}

.vg-platinum-marks__rows {
  display: grid;
}

.vg-platinum-marks__row {
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: 12px;
  padding: 15px 28px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.vg-platinum-marks__row:last-child {
  border-bottom: 0;
}

.vg-platinum-marks__row strong {
  color: var(--vg-gold-light);
}

.vg-platinum-marks__row span {
  color: rgba(255,255,255,.67);
  font-size: .84rem;
}

.vg-platinum-midcta {
  background: var(--vg-black);
  color: #fff;
}

.vg-platinum-midcta__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 30px;
  align-items: center;
}

.vg-platinum-midcta h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.8rem, 3vw, 2.5rem);
}

.vg-platinum-midcta p {
  margin: 10px 0 0;
  color: rgba(255,255,255,.62);
}

.vg-platinum-midcta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.vg-platinum-midcta__actions .vg-button--outline {
  color: #fff;
  border-color: rgba(255,255,255,.30);
}

.vg-platinum-process {
  background: var(--vg-ivory);
}

.vg-platinum-process__header {
  max-width: 790px;
  margin-bottom: 30px;
}

.vg-platinum-process__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}

.vg-platinum-step {
  padding: 22px;
  border-radius: 15px;
  background: #fff;
  border: 1px solid rgba(25,20,12,.08);
}

.vg-platinum-step__num {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: var(--vg-black);
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-platinum-step h3 {
  margin: 0;
  font-size: 1rem;
}

.vg-platinum-step p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .85rem;
  line-height: 1.55;
}

.vg-platinum-scrap {
  background:
    radial-gradient(circle at 82% 12%, rgba(207,211,214,.12), transparent 30%),
    #171719;
  color: #fff;
}

.vg-platinum-scrap__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(300px,.82fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: center;
}

.vg-platinum-scrap h2 {
  margin: 0;
  color: #fff;
}

.vg-platinum-scrap p {
  color: rgba(255,255,255,.66);
  line-height: 1.72;
}

.vg-platinum-scrap__points {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.vg-platinum-scrap__points span {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  color: rgba(255,255,255,.78);
}

.vg-platinum-scrap__points span::before {
  content: "✓";
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-platinum-scrap__card {
  padding: 26px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 17px;
  background: rgba(255,255,255,.055);
}

.vg-platinum-scrap__card strong {
  display: block;
  color: var(--vg-gold-light);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
}

.vg-platinum-scrap__card p {
  margin-bottom: 0;
}

.vg-platinum-locations {
  background: #fff;
}

.vg-platinum-locations__grid {
  display: grid;
  grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr);
  gap: clamp(40px, 6vw, 72px);
  align-items: start;
}

.vg-platinum-location-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.vg-platinum-location {
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-platinum-location span {
  display: block;
  color: #8a6313;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.vg-platinum-location h3 {
  margin: 8px 0 0;
}

.vg-platinum-location p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.6;
}

.vg-platinum-location a {
  display: inline-block;
  margin-top: 13px;
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-platinum-faq {
  background: var(--vg-ivory);
}

.vg-platinum-faq__grid {
  display: grid;
  grid-template-columns: minmax(240px,.7fr) minmax(0,1.3fr);
  gap: clamp(38px, 6vw, 70px);
  align-items: start;
}

.vg-platinum-faq__list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-platinum-faq details {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-platinum-faq summary {
  position: relative;
  padding: 19px 46px 19px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.vg-platinum-faq summary::-webkit-details-marker {
  display: none;
}

.vg-platinum-faq summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  color: #956c15;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
}

.vg-platinum-faq details[open] summary::after {
  content: "–";
}

.vg-platinum-faq__answer {
  padding: 0 44px 20px 0;
  color: var(--vg-muted);
  font-size: .91rem;
  line-height: 1.65;
}

.vg-platinum-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(207,211,214,.12), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1b1b1c 60%, #111112);
  color: #fff;
}

.vg-platinum-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-platinum-final h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.vg-platinum-final p {
  margin: 14px 0 0;
  max-width: 700px;
  color: rgba(255,255,255,.64);
}

.vg-platinum-final__actions {
  display: grid;
  gap: 10px;
  min-width: 245px;
}

.vg-platinum-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-platinum-final__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

.vg-platinum-mobile-bar {
  display: none;
}

@media (max-width: 980px) {
  .vg-platinum-hero__grid,
  .vg-platinum-value__grid,
  .vg-platinum-purity__grid,
  .vg-platinum-midcta__inner,
  .vg-platinum-scrap__grid,
  .vg-platinum-locations__grid,
  .vg-platinum-faq__grid,
  .vg-platinum-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-platinum-hero__visual {
    min-height: 430px;
  }

  .vg-platinum-marks {
    position: static;
  }

  .vg-platinum-strip__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-platinum-strip__item:nth-child(2) {
    border-right: 0;
  }

  .vg-platinum-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-platinum-types__grid,
  .vg-platinum-process__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-platinum-midcta__actions {
    justify-content: flex-start;
  }

  .vg-platinum-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 700px) {
  body:has(.vg-platinum-page) {
    padding-bottom: 74px;
  }

  .vg-platinum-mobile-bar {
    position: fixed;
    z-index: 9998;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    gap: 8px;
    padding: 10px max(12px, env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-right));
    background: rgba(13,13,14,.97);
    box-shadow: 0 -8px 24px rgba(0,0,0,.22);
    backdrop-filter: blur(10px);
  }

  .vg-platinum-mobile-bar a {
    display: grid;
    place-items: center;
    min-height: 48px;
    border-radius: 999px;
    text-decoration: none;
    font-size: .88rem;
    font-weight: 850;
  }

  .vg-platinum-mobile-bar__call {
    border: 1px solid rgba(255,255,255,.25);
    color: #fff;
  }

  .vg-platinum-mobile-bar__schedule {
    background: var(--vg-gold);
    color: #111;
  }
}

@media (max-width: 640px) {
  .vg-platinum-hero {
    padding: 46px 0 52px;
  }

  .vg-platinum-hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.55rem);
  }

  .vg-platinum-hero__visual {
    min-height: 360px;
  }

  .vg-platinum-strip__item {
    padding: 16px 14px;
  }

  .vg-platinum-types__grid,
  .vg-platinum-value__factors,
  .vg-platinum-process__grid,
  .vg-platinum-location-cards {
    grid-template-columns: 1fr;
  }

  .vg-platinum-final__actions {
    max-width: none;
  }
}


/* =========================================================
   v0.4.4 - Primary navigation submenus
   ========================================================= */

/* WordPress adds .menu-item-has-children and .sub-menu automatically
   when menu items are nested under Appearance > Menus. */
.vg-nav .menu > li,
.vg-nav .menu-item-has-children {
  position: relative;
}

.vg-nav .menu-item-has-children > a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.vg-nav .menu-item-has-children > a::after {
  content: "";
  width: 7px;
  height: 7px;
  margin-top: -4px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
  opacity: .72;
  transition: transform .18s ease;
}

.vg-nav .current-menu-ancestor > a,
.vg-nav .current-menu-parent > a {
  color: var(--vg-gold-light);
}

/* Desktop dropdown */
@media (min-width: 1101px) {
  .vg-nav .sub-menu {
    position: absolute;
    z-index: 1002;
    top: calc(100% + 14px);
    left: -18px;
    display: block;
    min-width: 250px;
    max-width: 320px;
    margin: 0;
    padding: 10px;
    list-style: none;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 14px;
    background: rgba(17,17,18,.99);
    box-shadow: 0 20px 50px rgba(0,0,0,.34);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(7px);
    transition:
      opacity .16s ease,
      visibility .16s ease,
      transform .16s ease;
  }

  /* Invisible hover bridge between parent item and dropdown. */
  .vg-nav .sub-menu::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 100%;
    left: 0;
    height: 16px;
  }

  .vg-nav li:hover > .sub-menu,
  .vg-nav li:focus-within > .sub-menu,
  .vg-nav li.is-submenu-open > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .vg-nav .sub-menu li {
    position: relative;
    margin: 0;
  }

  .vg-nav .sub-menu a {
    display: flex;
    width: 100%;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    border-radius: 9px;
    color: rgba(255,255,255,.78);
    font-size: .86rem;
    line-height: 1.3;
    white-space: normal;
  }

  .vg-nav .sub-menu a:hover,
  .vg-nav .sub-menu a:focus-visible,
  .vg-nav .sub-menu .current-menu-item > a {
    background: rgba(255,255,255,.06);
    color: var(--vg-gold-light);
    outline: none;
  }

  /* Support a second submenu level without changing the WP menu setup. */
  .vg-nav .sub-menu .sub-menu {
    top: -10px;
    left: calc(100% + 10px);
  }

  .vg-nav .sub-menu .menu-item-has-children > a::after {
    margin-top: 0;
    transform: rotate(-45deg);
  }

  .vg-submenu-toggle {
    display: none !important;
  }
}

/* Mobile / tablet accordion behavior */
@media (max-width: 1100px) {
  .vg-nav {
    max-height: min(72vh, 650px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .vg-nav .menu-item-has-children > a {
    display: flex;
    width: 100%;
    padding-right: 56px;
  }

  .vg-nav .menu-item-has-children > a::after {
    display: none;
  }

  .vg-submenu-toggle {
    position: absolute;
    z-index: 2;
    top: 5px;
    right: 5px;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: rgba(255,255,255,.72);
    cursor: pointer;
  }

  .vg-submenu-toggle::before {
    content: "";
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: transform .18s ease;
  }

  .vg-submenu-toggle:hover,
  .vg-submenu-toggle:focus-visible {
    background: rgba(255,255,255,.07);
    color: var(--vg-gold-light);
    outline: none;
  }

  .vg-nav .menu-item-has-children.is-submenu-open > .vg-submenu-toggle::before {
    margin-top: 3px;
    transform: rotate(225deg);
  }

  .vg-nav .sub-menu {
    display: none;
    margin: 2px 0 8px;
    padding: 4px 0 6px 14px;
    list-style: none;
    border-left: 1px solid rgba(213,165,46,.24);
  }

  .vg-nav .menu-item-has-children.is-submenu-open > .sub-menu {
    display: block;
  }

  .vg-nav .sub-menu li {
    position: relative;
    margin: 0;
  }

  .vg-nav .sub-menu a {
    min-height: 42px;
    padding: 8px 48px 8px 12px;
    color: rgba(255,255,255,.70);
    font-size: .86rem;
  }

  .vg-nav .sub-menu .sub-menu {
    margin-left: 8px;
  }

  .vg-nav .current-menu-ancestor > a,
  .vg-nav .current-menu-parent > a {
    background: rgba(255,255,255,.04);
    color: var(--vg-gold-light);
  }
}


/* =========================================================
   v0.4.5 - Sell Silver / Silver Buyer service page
   ========================================================= */
.vg-silver-page {
  --wp--style--block-gap: 0 !important;
  gap: 0 !important;
  background: #fff;
}

.vg-silver-page > .wp-block-group,
.vg-silver-page > .wp-block-group.alignfull,
.vg-silver-page > .wp-block-group + .wp-block-group,
.vg-silver-page.is-layout-flow > * + * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.vg-silver-page section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.vg-silver-hero {
  padding: 68px 0 72px;
  background:
    radial-gradient(circle at 88% 10%, rgba(191,197,204,.28), transparent 30%),
    radial-gradient(circle at 12% 90%, rgba(213,165,46,.08), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f2f2f0 100%);
}

.vg-silver-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr);
  gap: clamp(42px, 6vw, 80px);
  align-items: center;
}

.vg-silver-hero h1 {
  margin: 10px 0 18px;
  max-width: 830px;
  font-size: clamp(2.7rem, 5vw, 4.75rem);
  line-height: .98;
  letter-spacing: -.035em;
}

.vg-silver-hero__lead {
  max-width: 750px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.72;
}

.vg-silver-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-silver-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.32);
  background: rgba(255,255,255,.42);
}

.vg-silver-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 22px;
  color: #5f594e;
  font-size: .84rem;
}

.vg-silver-hero__proof span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.vg-silver-hero__proof span::before {
  content: "✓";
  color: #a97913;
  font-weight: 900;
}

.vg-silver-hero__visual {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  border-radius: 22px;
  background: #171717;
  box-shadow: 0 26px 65px rgba(51,38,13,.16);
}

.vg-silver-hero__visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vg-silver-hero__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 45%, rgba(10,10,10,.80) 100%);
}

.vg-silver-hero__caption {
  position: absolute;
  z-index: 2;
  right: 24px;
  bottom: 22px;
  left: 24px;
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(13,13,14,.72);
  color: #fff;
  backdrop-filter: blur(8px);
}

.vg-silver-hero__caption strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
}

.vg-silver-hero__caption span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.64);
  font-size: .82rem;
}

.vg-silver-strip {
  background: var(--vg-black);
  color: #fff;
}

.vg-silver-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-silver-strip__item {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-silver-strip__item:last-child {
  border-right: 0;
}

.vg-silver-strip__item strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.vg-silver-strip__item span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.4;
}

.vg-silver-types {
  background: #fff;
}

.vg-silver-types__header {
  max-width: 820px;
  margin: 0 auto 36px;
  text-align: center;
}

.vg-silver-types__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-silver-type {
  min-height: 190px;
  padding: 25px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-silver-type__icon {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 15px;
  border-radius: 50%;
  background: #eeeeec;
  color: #55585c;
  font-size: .78rem;
  font-weight: 900;
}

.vg-silver-type h3 {
  margin: 0;
  font-size: 1.08rem;
}

.vg-silver-type p {
  margin: 9px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.58;
}

.vg-silver-value {
  background: var(--vg-ivory);
}

.vg-silver-value__grid {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
  gap: clamp(42px, 6vw, 78px);
  align-items: start;
}

.vg-silver-value__intro p {
  color: var(--vg-muted);
  line-height: 1.72;
}

.vg-silver-value__factors {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}

.vg-silver-factor {
  padding: 21px;
  border: 1px solid rgba(25,20,12,.08);
  border-radius: 15px;
  background: #fff;
}

.vg-silver-factor strong {
  display: block;
  color: #1f1b15;
  font-family: Georgia, "Times New Roman", serif;
}

.vg-silver-factor p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.58;
}

.vg-silver-marks {
  background: #fff;
}

.vg-silver-marks__grid {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(300px,.92fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-silver-marks__body p {
  color: var(--vg-muted);
  line-height: 1.75;
}

.vg-silver-marks__body a {
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-silver-mark-card {
  position: sticky;
  top: 118px;
  overflow: hidden;
  border-radius: 18px;
  background: #171719;
  color: #fff;
}

.vg-silver-mark-card__top {
  padding: 26px 28px 22px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.vg-silver-mark-card__label {
  display: block;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-silver-mark-card h3 {
  margin: 8px 0 0;
  color: #fff;
  font-size: 1.35rem;
}

.vg-silver-mark-card__rows {
  display: grid;
}

.vg-silver-mark-card__row {
  display: grid;
  grid-template-columns: 98px 1fr;
  gap: 12px;
  padding: 15px 28px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.vg-silver-mark-card__row:last-child {
  border-bottom: 0;
}

.vg-silver-mark-card__row strong {
  color: var(--vg-gold-light);
}

.vg-silver-mark-card__row span {
  color: rgba(255,255,255,.67);
  font-size: .84rem;
}

.vg-silver-flatware {
  background:
    radial-gradient(circle at 82% 12%, rgba(207,211,214,.12), transparent 30%),
    #171719;
  color: #fff;
}

.vg-silver-flatware__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(300px,.82fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: center;
}

.vg-silver-flatware h2 {
  margin: 0;
  color: #fff;
}

.vg-silver-flatware p {
  color: rgba(255,255,255,.66);
  line-height: 1.72;
}

.vg-silver-flatware__points {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.vg-silver-flatware__points span {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  color: rgba(255,255,255,.78);
}

.vg-silver-flatware__points span::before {
  content: "✓";
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-silver-flatware__card {
  padding: 26px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 17px;
  background: rgba(255,255,255,.055);
}

.vg-silver-flatware__card strong {
  display: block;
  color: var(--vg-gold-light);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
}

.vg-silver-flatware__card p {
  margin-bottom: 0;
}

.vg-silver-midcta {
  background: var(--vg-black);
  color: #fff;
}

.vg-silver-midcta__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 30px;
  align-items: center;
}

.vg-silver-midcta h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.8rem, 3vw, 2.5rem);
}

.vg-silver-midcta p {
  margin: 10px 0 0;
  color: rgba(255,255,255,.62);
}

.vg-silver-midcta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.vg-silver-midcta__actions .vg-button--outline {
  color: #fff;
  border-color: rgba(255,255,255,.30);
}

.vg-silver-process {
  background: var(--vg-ivory);
}

.vg-silver-process__header {
  max-width: 790px;
  margin-bottom: 30px;
}

.vg-silver-process__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}

.vg-silver-step {
  padding: 22px;
  border-radius: 15px;
  background: #fff;
  border: 1px solid rgba(25,20,12,.08);
}

.vg-silver-step__num {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: var(--vg-black);
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-silver-step h3 {
  margin: 0;
  font-size: 1rem;
}

.vg-silver-step p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .85rem;
  line-height: 1.55;
}

.vg-silver-locations {
  background: #fff;
}

.vg-silver-locations__grid {
  display: grid;
  grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr);
  gap: clamp(40px, 6vw, 72px);
  align-items: start;
}

.vg-silver-location-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.vg-silver-location {
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-silver-location span {
  display: block;
  color: #8a6313;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.vg-silver-location h3 {
  margin: 8px 0 0;
}

.vg-silver-location p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.6;
}

.vg-silver-location a {
  display: inline-block;
  margin-top: 13px;
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-silver-faq {
  background: var(--vg-ivory);
}

.vg-silver-faq__grid {
  display: grid;
  grid-template-columns: minmax(240px,.7fr) minmax(0,1.3fr);
  gap: clamp(38px, 6vw, 70px);
  align-items: start;
}

.vg-silver-faq__list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-silver-faq details {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-silver-faq summary {
  position: relative;
  padding: 19px 46px 19px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.vg-silver-faq summary::-webkit-details-marker {
  display: none;
}

.vg-silver-faq summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  color: #956c15;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
}

.vg-silver-faq details[open] summary::after {
  content: "–";
}

.vg-silver-faq__answer {
  padding: 0 44px 20px 0;
  color: var(--vg-muted);
  font-size: .91rem;
  line-height: 1.65;
}

.vg-silver-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(207,211,214,.12), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1b1b1c 60%, #111112);
  color: #fff;
}

.vg-silver-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-silver-final h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.vg-silver-final p {
  margin: 14px 0 0;
  max-width: 700px;
  color: rgba(255,255,255,.64);
}

.vg-silver-final__actions {
  display: grid;
  gap: 10px;
  min-width: 245px;
}

.vg-silver-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-silver-final__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

.vg-silver-mobile-bar {
  display: none;
}

@media (max-width: 980px) {
  .vg-silver-hero__grid,
  .vg-silver-value__grid,
  .vg-silver-marks__grid,
  .vg-silver-flatware__grid,
  .vg-silver-midcta__inner,
  .vg-silver-locations__grid,
  .vg-silver-faq__grid,
  .vg-silver-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-silver-hero__visual {
    min-height: 430px;
  }

  .vg-silver-mark-card {
    position: static;
  }

  .vg-silver-strip__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-silver-strip__item:nth-child(2) {
    border-right: 0;
  }

  .vg-silver-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-silver-types__grid,
  .vg-silver-process__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-silver-midcta__actions {
    justify-content: flex-start;
  }

  .vg-silver-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 700px) {
  body:has(.vg-silver-page) {
    padding-bottom: 74px;
  }

  .vg-silver-mobile-bar {
    position: fixed;
    z-index: 9998;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    gap: 8px;
    padding: 10px max(12px, env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-right));
    background: rgba(13,13,14,.97);
    box-shadow: 0 -8px 24px rgba(0,0,0,.22);
    backdrop-filter: blur(10px);
  }

  .vg-silver-mobile-bar a {
    display: grid;
    place-items: center;
    min-height: 48px;
    border-radius: 999px;
    text-decoration: none;
    font-size: .88rem;
    font-weight: 850;
  }

  .vg-silver-mobile-bar__call {
    border: 1px solid rgba(255,255,255,.25);
    color: #fff;
  }

  .vg-silver-mobile-bar__schedule {
    background: var(--vg-gold);
    color: #111;
  }
}

@media (max-width: 640px) {
  .vg-silver-hero {
    padding: 46px 0 52px;
  }

  .vg-silver-hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.55rem);
  }

  .vg-silver-hero__visual {
    min-height: 360px;
  }

  .vg-silver-strip__item {
    padding: 16px 14px;
  }

  .vg-silver-types__grid,
  .vg-silver-value__factors,
  .vg-silver-process__grid,
  .vg-silver-location-cards {
    grid-template-columns: 1fr;
  }

  .vg-silver-final__actions {
    max-width: none;
  }
}


/* =========================================================
   v0.4.6 - Sell Gold / Gold Buyer service page
   ========================================================= */
.vg-gold-page {
  --wp--style--block-gap: 0 !important;
  gap: 0 !important;
  background: #fff;
}

.vg-gold-page > .wp-block-group,
.vg-gold-page > .wp-block-group.alignfull,
.vg-gold-page > .wp-block-group + .wp-block-group,
.vg-gold-page.is-layout-flow > * + * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.vg-gold-page section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.vg-gold-hero {
  padding: 68px 0 72px;
  background:
    radial-gradient(circle at 88% 10%, rgba(213,165,46,.17), transparent 30%),
    radial-gradient(circle at 12% 90%, rgba(239,200,93,.08), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f5f0e4 100%);
}

.vg-gold-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr);
  gap: clamp(42px, 6vw, 80px);
  align-items: center;
}

.vg-gold-hero h1 {
  margin: 10px 0 18px;
  max-width: 830px;
  font-size: clamp(2.7rem, 5vw, 4.75rem);
  line-height: .98;
  letter-spacing: -.035em;
}

.vg-gold-hero__lead {
  max-width: 760px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.72;
}

.vg-gold-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-gold-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.32);
  background: rgba(255,255,255,.42);
}

.vg-gold-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 22px;
  color: #5f594e;
  font-size: .84rem;
}

.vg-gold-hero__proof span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.vg-gold-hero__proof span::before {
  content: "✓";
  color: #a97913;
  font-weight: 900;
}

.vg-gold-hero__visual {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  border-radius: 22px;
  background: #17130b;
  box-shadow: 0 26px 65px rgba(51,38,13,.16);
}

.vg-gold-hero__visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vg-gold-hero__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 44%, rgba(10,8,5,.82) 100%);
}

.vg-gold-hero__caption {
  position: absolute;
  z-index: 2;
  right: 24px;
  bottom: 22px;
  left: 24px;
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(13,13,14,.72);
  color: #fff;
  backdrop-filter: blur(8px);
}

.vg-gold-hero__caption strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
}

.vg-gold-hero__caption span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.64);
  font-size: .82rem;
}

.vg-gold-strip {
  background: var(--vg-black);
  color: #fff;
}

.vg-gold-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-gold-strip__item {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-gold-strip__item:last-child {
  border-right: 0;
}

.vg-gold-strip__item strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.vg-gold-strip__item span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.4;
}

.vg-gold-types {
  background: #fff;
}

.vg-gold-types__header {
  max-width: 830px;
  margin: 0 auto 36px;
  text-align: center;
}

.vg-gold-types__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-gold-type {
  min-height: 190px;
  padding: 25px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-gold-type__icon {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 15px;
  border-radius: 50%;
  background: rgba(213,165,46,.14);
  color: #8a6313;
  font-size: .78rem;
  font-weight: 900;
}

.vg-gold-type h3 {
  margin: 0;
  font-size: 1.08rem;
}

.vg-gold-type p {
  margin: 9px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.58;
}

.vg-gold-value {
  background: var(--vg-ivory);
}

.vg-gold-value__grid {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
  gap: clamp(42px, 6vw, 78px);
  align-items: start;
}

.vg-gold-value__intro p {
  color: var(--vg-muted);
  line-height: 1.72;
}

.vg-gold-value__factors {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}

.vg-gold-factor {
  padding: 21px;
  border: 1px solid rgba(25,20,12,.08);
  border-radius: 15px;
  background: #fff;
}

.vg-gold-factor strong {
  display: block;
  color: #1f1b15;
  font-family: Georgia, "Times New Roman", serif;
}

.vg-gold-factor p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.58;
}

.vg-gold-karat {
  background: #fff;
}

.vg-gold-karat__grid {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(300px,.92fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-gold-karat__body p {
  color: var(--vg-muted);
  line-height: 1.75;
}

.vg-gold-karat__body a {
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-gold-karat-card {
  position: sticky;
  top: 118px;
  overflow: hidden;
  border-radius: 18px;
  background: #171719;
  color: #fff;
}

.vg-gold-karat-card__top {
  padding: 26px 28px 22px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.vg-gold-karat-card__label {
  display: block;
  color: var(--vg-gold-light);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-gold-karat-card h3 {
  margin: 8px 0 0;
  color: #fff;
  font-size: 1.35rem;
}

.vg-gold-karat-card__rows {
  display: grid;
}

.vg-gold-karat-card__row {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 12px;
  padding: 14px 28px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.vg-gold-karat-card__row:last-child {
  border-bottom: 0;
}

.vg-gold-karat-card__row strong {
  color: var(--vg-gold-light);
}

.vg-gold-karat-card__row span {
  color: rgba(255,255,255,.67);
  font-size: .84rem;
}

.vg-gold-plated {
  background:
    radial-gradient(circle at 82% 12%, rgba(239,200,93,.13), transparent 30%),
    #171719;
  color: #fff;
}

.vg-gold-plated__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(300px,.82fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: center;
}

.vg-gold-plated h2 {
  margin: 0;
  color: #fff;
}

.vg-gold-plated p {
  color: rgba(255,255,255,.66);
  line-height: 1.72;
}

.vg-gold-plated__points {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.vg-gold-plated__points span {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  color: rgba(255,255,255,.78);
}

.vg-gold-plated__points span::before {
  content: "✓";
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-gold-plated__card {
  padding: 26px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 17px;
  background: rgba(255,255,255,.055);
}

.vg-gold-plated__card strong {
  display: block;
  color: var(--vg-gold-light);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
}

.vg-gold-plated__card p {
  margin-bottom: 0;
}

.vg-gold-midcta {
  background: var(--vg-black);
  color: #fff;
}

.vg-gold-midcta__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 30px;
  align-items: center;
}

.vg-gold-midcta h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.8rem, 3vw, 2.5rem);
}

.vg-gold-midcta p {
  margin: 10px 0 0;
  color: rgba(255,255,255,.62);
}

.vg-gold-midcta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.vg-gold-midcta__actions .vg-button--outline {
  color: #fff;
  border-color: rgba(255,255,255,.30);
}

.vg-gold-process {
  background: var(--vg-ivory);
}

.vg-gold-process__header {
  max-width: 790px;
  margin-bottom: 30px;
}

.vg-gold-process__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}

.vg-gold-step {
  padding: 22px;
  border-radius: 15px;
  background: #fff;
  border: 1px solid rgba(25,20,12,.08);
}

.vg-gold-step__num {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: var(--vg-black);
  color: var(--vg-gold-light);
  font-weight: 900;
}

.vg-gold-step h3 {
  margin: 0;
  font-size: 1rem;
}

.vg-gold-step p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .85rem;
  line-height: 1.55;
}

.vg-gold-buyer {
  background: #fff;
}

.vg-gold-buyer__grid {
  display: grid;
  grid-template-columns: minmax(0,.74fr) minmax(0,1.26fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-gold-buyer__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.vg-gold-buyer__card {
  padding: 23px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-gold-buyer__card strong {
  display: block;
  color: #1f1b15;
  font-family: Georgia, "Times New Roman", serif;
}

.vg-gold-buyer__card p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.6;
}

.vg-gold-locations {
  background: var(--vg-ivory);
}

.vg-gold-locations__grid {
  display: grid;
  grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr);
  gap: clamp(40px, 6vw, 72px);
  align-items: start;
}

.vg-gold-location-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.vg-gold-location {
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-gold-location span {
  display: block;
  color: #8a6313;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.vg-gold-location h3 {
  margin: 8px 0 0;
}

.vg-gold-location p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
  line-height: 1.6;
}

.vg-gold-location a {
  display: inline-block;
  margin-top: 13px;
  color: #805b0d;
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-gold-faq {
  background: #fff;
}

.vg-gold-faq__grid {
  display: grid;
  grid-template-columns: minmax(240px,.7fr) minmax(0,1.3fr);
  gap: clamp(38px, 6vw, 70px);
  align-items: start;
}

.vg-gold-faq__list {
  border-top: 1px solid rgba(25,20,12,.11);
}

.vg-gold-faq details {
  border-bottom: 1px solid rgba(25,20,12,.11);
}

.vg-gold-faq summary {
  position: relative;
  padding: 19px 46px 19px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.vg-gold-faq summary::-webkit-details-marker {
  display: none;
}

.vg-gold-faq summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  color: #956c15;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
}

.vg-gold-faq details[open] summary::after {
  content: "–";
}

.vg-gold-faq__answer {
  padding: 0 44px 20px 0;
  color: var(--vg-muted);
  font-size: .91rem;
  line-height: 1.65;
}

.vg-gold-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(239,200,93,.16), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1d190f 60%, #111112);
  color: #fff;
}

.vg-gold-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-gold-final h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.vg-gold-final p {
  margin: 14px 0 0;
  max-width: 700px;
  color: rgba(255,255,255,.64);
}

.vg-gold-final__actions {
  display: grid;
  gap: 10px;
  min-width: 245px;
}

.vg-gold-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-gold-final__actions .vg-button--outline {
  border-color: rgba(255,255,255,.30);
  color: #fff;
}

.vg-gold-mobile-bar {
  display: none;
}

@media (max-width: 980px) {
  .vg-gold-hero__grid,
  .vg-gold-value__grid,
  .vg-gold-karat__grid,
  .vg-gold-plated__grid,
  .vg-gold-midcta__inner,
  .vg-gold-buyer__grid,
  .vg-gold-locations__grid,
  .vg-gold-faq__grid,
  .vg-gold-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-gold-hero__visual {
    min-height: 430px;
  }

  .vg-gold-karat-card {
    position: static;
  }

  .vg-gold-strip__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-gold-strip__item:nth-child(2) {
    border-right: 0;
  }

  .vg-gold-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-gold-types__grid,
  .vg-gold-process__grid,
  .vg-gold-buyer__cards {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-gold-midcta__actions {
    justify-content: flex-start;
  }

  .vg-gold-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 700px) {
  body:has(.vg-gold-page) {
    padding-bottom: 74px;
  }

  .vg-gold-mobile-bar {
    position: fixed;
    z-index: 9998;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    gap: 8px;
    padding: 10px max(12px, env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-right));
    background: rgba(13,13,14,.97);
    box-shadow: 0 -8px 24px rgba(0,0,0,.22);
    backdrop-filter: blur(10px);
  }

  .vg-gold-mobile-bar a {
    display: grid;
    place-items: center;
    min-height: 48px;
    border-radius: 999px;
    text-decoration: none;
    font-size: .88rem;
    font-weight: 850;
  }

  .vg-gold-mobile-bar__call {
    border: 1px solid rgba(255,255,255,.25);
    color: #fff;
  }

  .vg-gold-mobile-bar__schedule {
    background: var(--vg-gold);
    color: #111;
  }
}

@media (max-width: 640px) {
  .vg-gold-hero {
    padding: 46px 0 52px;
  }

  .vg-gold-hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.55rem);
  }

  .vg-gold-hero__visual {
    min-height: 360px;
  }

  .vg-gold-strip__item {
    padding: 16px 14px;
  }

  .vg-gold-types__grid,
  .vg-gold-value__factors,
  .vg-gold-process__grid,
  .vg-gold-buyer__cards,
  .vg-gold-location-cards {
    grid-template-columns: 1fr;
  }

  .vg-gold-final__actions {
    max-width: none;
  }
}


/* =========================================================
   v0.4.7 - Article system
   ========================================================= */
.vg-article-page,
.vg-articles-page {
  background: #fff;
}

/* Single article hero */
.vg-article-hero {
  padding: 52px 0 48px;
  background:
    radial-gradient(circle at 86% 12%, rgba(213,165,46,.12), transparent 28%),
    linear-gradient(180deg, #fbf9f4 0%, #f7f4ed 100%);
  border-bottom: 1px solid var(--vg-line);
}

.vg-article-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  margin-bottom: 38px;
  color: var(--vg-muted);
  font-size: .78rem;
}

.vg-article-breadcrumbs a {
  color: inherit;
  text-decoration: none;
}

.vg-article-breadcrumbs a:hover {
  color: #805b0d;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.vg-article-hero__content {
  max-width: 900px;
}

.vg-article-hero__category {
  display: inline-flex;
  margin-bottom: 14px;
  color: #805b0d;
  font-size: .75rem;
  font-weight: 850;
  letter-spacing: .10em;
  text-decoration: none;
  text-transform: uppercase;
}

.vg-article-hero h1 {
  margin: 0;
  max-width: 920px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.65rem, 5.4vw, 5.1rem);
  line-height: 1.01;
  letter-spacing: -.038em;
}

.vg-article-hero__deck {
  max-width: 780px;
  margin: 22px 0 0;
  color: #5e594f;
  font-size: clamp(1.05rem, 2vw, 1.25rem);
  line-height: 1.7;
}

.vg-article-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 22px;
  margin-top: 26px;
  color: var(--vg-muted);
  font-size: .82rem;
}

.vg-article-hero__meta span + span {
  position: relative;
}

.vg-article-hero__meta span + span::before {
  content: "•";
  position: absolute;
  left: -14px;
  color: #b1aa9d;
}

.vg-article-featured {
  margin-top: 34px;
}

.vg-article-featured__image {
  display: block;
  width: 100%;
  max-height: 660px;
  object-fit: cover;
  border-radius: 22px;
  box-shadow: 0 18px 46px rgba(41,31,13,.10);
}

/* Article body + sticky resources */
.vg-article-layout {
  display: grid;
  grid-template-columns: minmax(0, 790px) minmax(250px, 310px);
  gap: clamp(42px, 6vw, 78px);
  align-items: start;
  padding-top: 54px;
  padding-bottom: 54px;
}

.vg-article__content {
  min-width: 0;
  color: #302c25;
  font-size: 1.02rem;
  line-height: 1.82;
}

.vg-article__content > :first-child {
  margin-top: 0;
}

.vg-article__content p {
  margin: 0 0 1.35em;
}

.vg-article__content h2 {
  margin: 2.1em 0 .72em;
  color: #1c1915;
  font-size: clamp(1.75rem, 3.4vw, 2.55rem);
  line-height: 1.12;
  letter-spacing: -.022em;
}

.vg-article__content h3 {
  margin: 1.8em 0 .62em;
  color: #242019;
  font-size: clamp(1.3rem, 2.4vw, 1.7rem);
  line-height: 1.2;
}

.vg-article__content h4 {
  margin: 1.65em 0 .55em;
}

.vg-article__content a:not(.vg-button) {
  color: #77540a;
  font-weight: 700;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.vg-article__content ul,
.vg-article__content ol {
  margin: 0 0 1.55em;
  padding-left: 1.35em;
}

.vg-article__content li + li {
  margin-top: .48em;
}

.vg-article__content blockquote {
  margin: 2.1em 0;
  padding: 6px 0 6px 24px;
  border-left: 4px solid var(--vg-gold);
  color: #4c4539;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.18rem;
  line-height: 1.65;
}

.vg-article__content figure {
  margin: 2.15em 0;
}

.vg-article__content figcaption {
  margin-top: 8px;
  color: var(--vg-muted);
  font-size: .78rem;
  line-height: 1.5;
  text-align: center;
}

.vg-article__content img {
  border-radius: 14px;
}

.vg-article__content > .alignwide {
  width: min(calc(100vw - 40px), 1040px);
  max-width: none;
  margin-left: 50%;
  transform: translateX(-50%);
}

.vg-article__content > .alignfull {
  width: min(calc(100vw - 20px), 1280px);
  max-width: none;
  margin-left: 50%;
  transform: translateX(-50%);
}

.vg-article__content .wp-block-table {
  overflow-x: auto;
}

.vg-article__content table,
.vg-article-comparison table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  font-size: .9rem;
}

.vg-article__content th,
.vg-article__content td,
.vg-article-comparison th,
.vg-article-comparison td {
  padding: 13px 14px;
  border: 1px solid var(--vg-line);
  text-align: left;
  vertical-align: top;
}

.vg-article__content th,
.vg-article-comparison th {
  background: var(--vg-ivory);
  color: #221e18;
}

.vg-article__content hr {
  margin: 2.7em 0;
  border: 0;
  border-top: 1px solid var(--vg-line);
}

/* Gutenberg editorial callouts */
.vg-article-callout,
.vg-article-comparison {
  margin: 2.1em 0;
  padding: 24px 26px;
  border: 1px solid rgba(28,22,13,.10);
  border-radius: 17px;
  background: var(--vg-ivory);
}

.vg-article-callout h3,
.vg-article-comparison h3 {
  margin-top: 0;
}

.vg-article-callout--takeaways {
  border-top: 4px solid var(--vg-gold);
}

.vg-article-callout--tip {
  background: #f7f3e7;
}

.vg-article-callout--note {
  background: #f3f3f1;
}

.vg-article-callout__eyebrow {
  margin: 0 0 7px !important;
  color: #805b0d;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

/* Theme-rendered article CTAs */
.vg-article-cta {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 28px;
  align-items: center;
  padding: 28px 30px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 94% 0%, rgba(239,200,93,.15), transparent 30%),
    #111112;
  color: #fff;
}

.vg-article__content .vg-article-cta {
  margin: 2.2em 0;
}

.vg-article-cta__copy {
  min-width: 0;
}

.vg-article-cta__eyebrow {
  display: block;
  margin-bottom: 6px;
  color: var(--vg-gold-light);
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.vg-article-cta__copy strong {
  display: block;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.18rem;
  line-height: 1.3;
}

.vg-article-cta__copy p {
  margin: 7px 0 0;
  color: rgba(255,255,255,.63);
  font-size: .84rem;
  line-height: 1.55;
}

.vg-article-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  justify-content: flex-end;
}

.vg-article-cta .vg-button {
  min-height: 44px;
  padding-inline: 17px;
  font-size: .82rem;
}

.vg-article-cta .vg-button--outline {
  color: #fff;
  border-color: rgba(255,255,255,.28);
}

.vg-article-cta--compact {
  grid-template-columns: 1fr;
  gap: 16px;
  padding: 23px 24px;
}

.vg-article-cta--compact .vg-article-cta__actions {
  justify-content: flex-start;
}

.vg-article-sidebar {
  position: sticky;
  top: 132px;
  display: grid;
  gap: 14px;
}

.vg-article-sidebar__box {
  padding: 22px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(40,30,12,.05);
}

.vg-article-sidebar__eyebrow {
  display: block;
  margin-bottom: 8px;
  color: #805b0d;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.vg-article-sidebar__box > strong {
  display: block;
  margin-bottom: 16px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.04rem;
  line-height: 1.35;
}

.vg-article-sidebar__box .vg-button {
  width: 100%;
  min-height: 44px;
  font-size: .79rem;
}

.vg-article-sidebar__phone {
  display: block;
  margin-top: 12px;
  color: #332b1d;
  font-weight: 850;
  text-align: center;
  text-decoration: none;
}

.vg-article-sidebar__services {
  padding: 12px;
}

.vg-article-sidebar__services > .vg-article-sidebar__eyebrow {
  padding: 9px 10px 4px;
}

.vg-article-sidebar__services > a {
  display: block;
  padding: 12px 10px;
  border-radius: 10px;
  color: inherit;
  text-decoration: none;
}

.vg-article-sidebar__services > a:hover {
  background: var(--vg-ivory);
}

.vg-article-sidebar__services strong,
.vg-article-sidebar__services span {
  display: block;
}

.vg-article-sidebar__services strong {
  color: #272219;
  font-size: .86rem;
}

.vg-article-sidebar__services span {
  margin-top: 4px;
  color: var(--vg-muted);
  font-size: .74rem;
  line-height: 1.45;
}

.vg-article-bottom-cta {
  padding-bottom: 70px;
}

/* Related content */
.vg-related-services {
  padding: 68px 0;
  background: var(--vg-ivory);
  border-block: 1px solid var(--vg-line);
}

.vg-related-articles {
  padding: 68px 0 80px;
  background: #fff;
}

.vg-related-section__header {
  max-width: 760px;
  margin-bottom: 28px;
}

.vg-related-section__eyebrow {
  display: block;
  color: #805b0d;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.vg-related-section__header h2 {
  margin: 7px 0 0;
  font-size: clamp(2rem, 3.8vw, 3rem);
}

.vg-related-services__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-related-service-card {
  display: block;
  min-height: 185px;
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 17px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
  transition: transform .18s ease, box-shadow .18s ease;
}

.vg-related-service-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 15px 32px rgba(40,30,12,.08);
}

.vg-related-service-card strong,
.vg-related-service-card span,
.vg-related-service-card em {
  display: block;
}

.vg-related-service-card strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
}

.vg-related-service-card span {
  margin-top: 8px;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.55;
}

.vg-related-service-card em {
  margin-top: 18px;
  color: #805b0d;
  font-size: .78rem;
  font-style: normal;
  font-weight: 850;
}

/* Archive / blog landing */
.vg-articles-hero {
  padding: 64px 0 54px;
  background:
    radial-gradient(circle at 88% 10%, rgba(213,165,46,.12), transparent 28%),
    var(--vg-ivory);
  border-bottom: 1px solid var(--vg-line);
}

.vg-articles-hero .vg-section__eyebrow {
  margin-bottom: 8px;
}

.vg-articles-hero h1 {
  max-width: 880px;
  margin: 0;
  font-size: clamp(2.8rem, 5.6vw, 5.2rem);
  line-height: 1;
  letter-spacing: -.038em;
}

.vg-articles-hero__description {
  max-width: 740px;
  margin: 20px 0 0;
  color: var(--vg-muted);
  font-size: 1.04rem;
  line-height: 1.7;
}

.vg-articles-hero__description p {
  margin: 0;
}

.vg-articles-listing {
  padding: 64px 0 76px;
}

.vg-article-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 20px;
}

.vg-article-card {
  overflow: hidden;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-article-card__media {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background:
    radial-gradient(circle at 65% 25%, rgba(239,200,93,.17), transparent 34%),
    #171719;
  color: #fff;
  text-decoration: none;
}

.vg-article-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .28s ease;
}

.vg-article-card:hover .vg-article-card__media img {
  transform: scale(1.025);
}

.vg-article-card__placeholder {
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  color: rgba(255,255,255,.7);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
}

.vg-article-card__body {
  padding: 21px 22px 23px;
}

.vg-article-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  color: var(--vg-muted);
  font-size: .7rem;
  font-weight: 750;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.vg-article-card__title {
  margin: 9px 0 0;
  font-size: 1.32rem;
  line-height: 1.22;
}

.vg-article-card__title a {
  color: inherit;
  text-decoration: none;
}

.vg-article-card__excerpt {
  margin: 10px 0 0;
  color: var(--vg-muted);
  font-size: .86rem;
  line-height: 1.58;
}

.vg-article-card__link {
  display: inline-block;
  margin-top: 16px;
  color: #805b0d;
  font-size: .78rem;
  font-weight: 850;
  text-decoration: none;
}

.vg-article-card--compact .vg-article-card__body {
  padding-bottom: 21px;
}

.vg-article-card--compact .vg-article-card__title {
  font-size: 1.18rem;
}

.vg-article-pagination {
  margin-top: 42px;
}

.vg-article-pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.vg-article-pagination .page-numbers {
  display: grid;
  min-width: 42px;
  min-height: 42px;
  place-items: center;
  padding: 0 12px;
  border: 1px solid var(--vg-line);
  border-radius: 999px;
  color: #302a21;
  text-decoration: none;
}

.vg-article-pagination .page-numbers.current,
.vg-article-pagination .page-numbers:hover {
  border-color: var(--vg-gold);
  background: var(--vg-ivory);
}

.vg-articles-conversion {
  padding: 0 0 76px;
}

.vg-articles-empty {
  padding: 30px;
  border: 1px solid var(--vg-line);
  border-radius: 18px;
  background: var(--vg-ivory);
}

@media (max-width: 1020px) {
  .vg-article-layout {
    grid-template-columns: 1fr;
  }

  .vg-article-sidebar {
    position: static;
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-related-services__grid,
  .vg-article-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 700px) {
  .vg-article-hero {
    padding: 38px 0 40px;
  }

  .vg-article-breadcrumbs {
    margin-bottom: 28px;
  }

  .vg-article-hero__meta span + span::before {
    display: none;
  }

  .vg-article-featured {
    margin-top: 20px;
  }

  .vg-article-featured__image {
    border-radius: 15px;
  }

  .vg-article-layout {
    gap: 36px;
    padding-top: 40px;
    padding-bottom: 42px;
  }

  .vg-article__content {
    font-size: .98rem;
    line-height: 1.75;
  }

  .vg-article__content > .alignwide,
  .vg-article__content > .alignfull {
    width: calc(100vw - 28px);
  }

  .vg-article-sidebar {
    grid-template-columns: 1fr;
  }

  .vg-article-cta {
    grid-template-columns: 1fr;
    padding: 24px 22px;
  }

  .vg-article-cta__actions {
    justify-content: flex-start;
  }

  .vg-article-cta__actions .vg-button {
    width: 100%;
  }

  .vg-related-services,
  .vg-related-articles,
  .vg-articles-listing {
    padding-block: 52px;
  }

  .vg-related-services__grid,
  .vg-article-grid {
    grid-template-columns: 1fr;
  }

  .vg-articles-hero {
    padding: 48px 0 44px;
  }

  .vg-article-bottom-cta {
    padding-bottom: 54px;
  }
}


/* =========================================================
   v0.4.8 - Article Hub / Posts Page
   ========================================================= */
.vg-article-hub__hero {
  padding-bottom: 38px;
}

.vg-article-hub__topics {
  margin-top: 34px;
  padding-top: 22px;
  border-top: 1px solid rgba(35,28,17,.10);
}

.vg-article-hub__topics-label {
  display: block;
  margin-bottom: 10px;
  color: var(--vg-muted);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.vg-article-hub__topic-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.vg-article-topic {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  gap: 7px;
  padding: 8px 13px;
  border: 1px solid rgba(34,28,17,.13);
  border-radius: 999px;
  background: rgba(255,255,255,.58);
  color: #302a20;
  font-size: .78rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  transition: background .16s ease, border-color .16s ease, color .16s ease;
}

.vg-article-topic span {
  display: inline-grid;
  min-width: 20px;
  height: 20px;
  place-items: center;
  padding-inline: 5px;
  border-radius: 999px;
  background: rgba(0,0,0,.055);
  color: var(--vg-muted);
  font-size: .66rem;
}

.vg-article-topic:hover,
.vg-article-topic:focus-visible,
.vg-article-topic.is-active {
  border-color: rgba(128,91,13,.32);
  background: #fff;
  color: #805b0d;
  outline: none;
}

.vg-article-hub__listing-head {
  display: flex;
  gap: 28px;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 28px;
}

.vg-article-hub__kicker {
  margin: 0 0 7px;
  color: #805b0d;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.vg-article-hub__listing-head h2 {
  max-width: 700px;
  margin: 0;
  font-size: clamp(1.85rem, 3.4vw, 2.8rem);
  line-height: 1.08;
}

.vg-article-hub__count {
  flex: 0 0 auto;
  margin: 0 0 4px;
  color: var(--vg-muted);
  font-size: .78rem;
}

.vg-article-hub .vg-article-pagination {
  margin-top: 44px;
}

.vg-article-hub .vg-article-pagination .nav-links {
  justify-content: center;
}

.vg-article-hub__services {
  padding: 66px 0;
  border-top: 1px solid var(--vg-line);
  background: var(--vg-ivory);
}

.vg-article-hub__services .vg-container {
  display: grid;
  grid-template-columns: minmax(0,.78fr) minmax(0,1.22fr);
  gap: clamp(38px, 6vw, 74px);
  align-items: center;
}

.vg-article-hub__services-copy h2 {
  margin: 6px 0 0;
  font-size: clamp(2rem, 3.8vw, 3rem);
}

.vg-article-hub__services-copy > p:last-child {
  max-width: 620px;
  margin: 14px 0 0;
  color: var(--vg-muted);
  line-height: 1.7;
}

.vg-article-hub__service-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
}

.vg-article-hub__service-links a {
  display: flex;
  min-height: 58px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 17px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 13px;
  background: #fff;
  color: #2b251c;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  text-decoration: none;
  transition: transform .16s ease, box-shadow .16s ease;
}

.vg-article-hub__service-links a:hover {
  transform: translateY(-1px);
  box-shadow: 0 9px 22px rgba(40,30,12,.06);
}

.vg-article-hub__service-links span {
  color: #956c15;
  font-family: Arial, sans-serif;
}

.vg-article-hub + .site-footer,
.vg-article-hub .vg-articles-conversion {
  margin-top: 0;
}

.vg-article-hub .vg-articles-conversion {
  padding-top: 66px;
}

@media (max-width: 900px) {
  .vg-article-hub__listing-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  .vg-article-hub__services .vg-container {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .vg-article-hub__topic-list {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 5px;
    scrollbar-width: thin;
  }

  .vg-article-topic {
    flex: 0 0 auto;
  }

  .vg-article-hub__service-links {
    grid-template-columns: 1fr;
  }

  .vg-article-hub .vg-articles-conversion {
    padding-top: 52px;
  }
}


/* =========================================================
   v0.4.9 - Automatic standard Pages
   ========================================================= */
.vg-standard-page {
  background: #fff;
}

.vg-standard-page__hero {
  padding: 50px 0 48px;
  background:
    radial-gradient(circle at 88% 8%, rgba(213,165,46,.11), transparent 28%),
    var(--vg-ivory);
  border-bottom: 1px solid var(--vg-line);
}

.vg-standard-page__breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 28px;
  color: var(--vg-muted);
  font-size: .78rem;
}

.vg-standard-page__breadcrumbs a {
  color: inherit;
  text-decoration: none;
}

.vg-standard-page__breadcrumbs a:hover {
  color: #805b0d;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.vg-standard-page__heading {
  max-width: 880px;
}

.vg-standard-page__heading h1 {
  margin: 0;
  font-size: clamp(2.7rem, 5vw, 4.8rem);
  line-height: 1;
  letter-spacing: -.035em;
}

.vg-standard-page__heading p {
  max-width: 760px;
  margin: 18px 0 0;
  color: var(--vg-muted);
  font-size: 1.06rem;
  line-height: 1.7;
}

.vg-standard-page__featured {
  margin-top: 32px;
}

.vg-standard-page__featured-image {
  display: block;
  width: 100%;
  max-height: 620px;
  object-fit: cover;
  border-radius: 20px;
  box-shadow: 0 16px 42px rgba(40,30,12,.09);
}

.vg-standard-page__body {
  padding-top: 52px;
  padding-bottom: 72px;
}

.vg-standard-page__content {
  max-width: 820px;
  margin-inline: auto;
  color: #302c25;
  font-size: 1rem;
  line-height: 1.8;
}

.vg-standard-page__content > :first-child {
  margin-top: 0;
}

.vg-standard-page__content h2 {
  margin: 2em 0 .72em;
  font-size: clamp(1.8rem, 3.2vw, 2.5rem);
  line-height: 1.12;
}

.vg-standard-page__content h3 {
  margin: 1.65em 0 .6em;
  font-size: clamp(1.3rem, 2.3vw, 1.7rem);
}

.vg-standard-page__content p {
  margin: 0 0 1.35em;
}

.vg-standard-page__content a:not(.vg-button) {
  color: #805b0d;
  font-weight: 750;
  text-underline-offset: 3px;
}

.vg-standard-page__content ul,
.vg-standard-page__content ol {
  margin: 0 0 1.5em;
  padding-left: 1.35em;
}

.vg-standard-page__content blockquote {
  margin: 2em 0;
  padding: 6px 0 6px 24px;
  border-left: 4px solid var(--vg-gold);
  color: #4a4337;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
  line-height: 1.65;
}

.vg-standard-page__content .alignwide {
  width: min(calc(100vw - 40px), 1040px);
  max-width: none;
  margin-left: 50%;
  transform: translateX(-50%);
}

.vg-standard-page__content .alignfull {
  width: 100vw;
  max-width: 100vw;
  margin-left: 50%;
  transform: translateX(-50%);
}

@media (max-width: 700px) {
  .vg-standard-page__hero {
    padding: 38px 0 40px;
  }

  .vg-standard-page__body {
    padding-top: 40px;
    padding-bottom: 56px;
  }

  .vg-standard-page__featured {
    margin-top: 20px;
  }

  .vg-standard-page__featured-image {
    border-radius: 14px;
  }

  .vg-standard-page__content .alignwide {
    width: calc(100vw - 28px);
  }
}

/* =========================================================
   v0.4.9 - About Us page
   ========================================================= */
.vg-about-page {
  --wp--style--block-gap: 0 !important;
  gap: 0 !important;
  background: #fff;
}

.vg-about-page > .wp-block-group,
.vg-about-page > .wp-block-group.alignfull,
.vg-about-page > .wp-block-group + .wp-block-group,
.vg-about-page.is-layout-flow > * + * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.vg-about-page section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.vg-about-hero {
  padding: 68px 0 72px;
  background:
    radial-gradient(circle at 88% 10%, rgba(213,165,46,.15), transparent 30%),
    linear-gradient(180deg, #fbf9f4 0%, #f5f0e5 100%);
}

.vg-about-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.05fr) minmax(340px,.95fr);
  gap: clamp(42px, 6vw, 80px);
  align-items: center;
}

.vg-about-hero h1 {
  max-width: 820px;
  margin: 10px 0 18px;
  font-size: clamp(2.8rem, 5.3vw, 5rem);
  line-height: .99;
  letter-spacing: -.04em;
}

.vg-about-hero__lead {
  max-width: 750px;
  margin: 0;
  color: var(--vg-muted);
  font-size: 1.08rem;
  line-height: 1.72;
}

.vg-about-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.vg-about-hero__actions .vg-button--outline {
  color: #1b1813;
  border-color: rgba(27,24,19,.30);
}

.vg-about-hero__visual {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  border-radius: 22px;
  background: #18140d;
  box-shadow: 0 26px 65px rgba(51,38,13,.16);
}

.vg-about-hero__visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vg-about-hero__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 42%, rgba(10,8,5,.84) 100%);
}

.vg-about-hero__caption {
  position: absolute;
  z-index: 2;
  right: 24px;
  bottom: 22px;
  left: 24px;
  padding: 19px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(13,13,14,.74);
  backdrop-filter: blur(8px);
}

.vg-about-hero__caption strong,
.vg-about-hero__caption span {
  display: block;
}

.vg-about-hero__caption strong {
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.04rem;
  line-height: 1.45;
}

.vg-about-hero__caption span {
  margin-top: 6px;
  color: rgba(255,255,255,.62);
  font-size: .8rem;
  line-height: 1.5;
}

.vg-about-strip {
  background: var(--vg-black);
  color: #fff;
}

.vg-about-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.vg-about-strip__grid > div {
  padding: 22px 24px;
  border-right: 1px solid rgba(255,255,255,.09);
}

.vg-about-strip__grid > div:last-child {
  border-right: 0;
}

.vg-about-strip strong,
.vg-about-strip span {
  display: block;
}

.vg-about-strip strong {
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
}

.vg-about-strip span {
  margin-top: 5px;
  color: rgba(255,255,255,.55);
  font-size: .78rem;
  line-height: 1.45;
}

.vg-about-origin {
  background: #fff;
}

.vg-about-origin__grid,
.vg-about-inherited__grid {
  display: grid;
  grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr);
  gap: clamp(44px, 7vw, 88px);
  align-items: start;
}

.vg-about-origin__intro p,
.vg-about-origin__story p,
.vg-about-inherited__grid p {
  color: var(--vg-muted);
  line-height: 1.78;
}

.vg-about-origin__story p:first-child,
.vg-about-inherited__grid > div:last-child p:first-child {
  margin-top: 0;
}

.vg-about-mary {
  background: var(--vg-ivory);
}

.vg-about-logan {
  background: #fff;
}

.vg-about-person__grid {
  display: grid;
  grid-template-columns: minmax(180px,.34fr) minmax(0,1.66fr);
  gap: clamp(40px, 6vw, 78px);
  align-items: start;
}

.vg-about-person__label {
  position: sticky;
  top: 122px;
}

.vg-about-person__label span {
  display: block;
  color: var(--vg-gold);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 3.2rem;
  line-height: 1;
}

.vg-about-person__label p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .75rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-about-person__content {
  max-width: 800px;
}

.vg-about-person__content h2 {
  margin-top: 0;
  font-size: clamp(2rem, 3.8vw, 3.15rem);
}

.vg-about-person__content > p {
  color: var(--vg-muted);
  line-height: 1.78;
}

.vg-about-person__content blockquote {
  margin: 34px 0 0;
  padding: 22px 0 22px 26px;
  border-left: 4px solid var(--vg-gold);
}

.vg-about-person__content blockquote p {
  margin: 0;
  color: #332c21;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.3rem, 2.6vw, 1.8rem);
  line-height: 1.45;
}

.vg-about-person__content blockquote cite {
  display: block;
  margin-top: 10px;
  color: var(--vg-muted);
  font-size: .8rem;
  font-style: normal;
}

.vg-about-inherited {
  background:
    radial-gradient(circle at 84% 12%, rgba(239,200,93,.12), transparent 28%),
    #171719;
  color: #fff;
}

.vg-about-inherited h2 {
  color: #fff;
}

.vg-about-inherited__grid p {
  color: rgba(255,255,255,.66);
}

.vg-about-inherited__links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin-top: 22px;
}

.vg-about-inherited__links a {
  color: var(--vg-gold-light);
  font-weight: 800;
  text-underline-offset: 3px;
}

.vg-about-approach {
  background: var(--vg-ivory);
}

.vg-about-approach__header {
  max-width: 790px;
  margin-bottom: 30px;
}

.vg-about-approach__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}

.vg-about-approach__card {
  padding: 23px;
  border: 1px solid rgba(25,20,12,.08);
  border-radius: 15px;
  background: #fff;
}

.vg-about-approach__card > span {
  display: block;
  margin-bottom: 14px;
  color: #946b15;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .10em;
}

.vg-about-approach__card h3 {
  margin: 0;
  font-size: 1.02rem;
}

.vg-about-approach__card p {
  margin: 8px 0 0;
  color: var(--vg-muted);
  font-size: .85rem;
  line-height: 1.58;
}

.vg-about-locations {
  background: #fff;
}

.vg-about-locations__grid {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: start;
}

.vg-about-locations__grid > div:first-child > p {
  color: var(--vg-muted);
  line-height: 1.7;
}

.vg-about-text-link {
  display: inline-block;
  margin-top: 10px;
  color: #805b0d;
  font-weight: 850;
  text-underline-offset: 3px;
}

.vg-about-location-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.vg-about-location {
  padding: 24px;
  border: 1px solid rgba(30,24,15,.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40,30,12,.045);
}

.vg-about-location span,
.vg-about-location strong,
.vg-about-location p {
  display: block;
}

.vg-about-location span {
  color: #8a6313;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.vg-about-location strong {
  margin-top: 8px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
}

.vg-about-location p {
  margin: 7px 0 0;
  color: var(--vg-muted);
  font-size: .87rem;
}

.vg-about-final {
  background:
    radial-gradient(circle at 82% 18%, rgba(239,200,93,.16), transparent 26%),
    linear-gradient(135deg, #0d0d0e, #1d190f 60%, #111112);
  color: #fff;
}

.vg-about-final__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 36px;
  align-items: center;
}

.vg-about-final h2 {
  margin: 6px 0 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.1rem);
}

.vg-about-final p {
  max-width: 700px;
  margin: 14px 0 0;
  color: rgba(255,255,255,.64);
}

.vg-about-final__actions {
  display: grid;
  gap: 10px;
  min-width: 250px;
}

.vg-about-final__actions .vg-button {
  width: 100%;
  text-align: center;
}

.vg-about-final__actions .vg-button--outline {
  color: #fff;
  border-color: rgba(255,255,255,.30);
}

@media (max-width: 980px) {
  .vg-about-hero__grid,
  .vg-about-origin__grid,
  .vg-about-inherited__grid,
  .vg-about-person__grid,
  .vg-about-locations__grid,
  .vg-about-final__inner {
    grid-template-columns: 1fr;
  }

  .vg-about-hero__visual {
    min-height: 430px;
  }

  .vg-about-person__label {
    position: static;
  }

  .vg-about-strip__grid,
  .vg-about-approach__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vg-about-strip__grid > div:nth-child(2) {
    border-right: 0;
  }

  .vg-about-strip__grid > div:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-about-final__actions {
    min-width: 0;
    max-width: 420px;
  }
}

@media (max-width: 640px) {
  .vg-about-hero {
    padding: 46px 0 52px;
  }

  .vg-about-hero__visual {
    min-height: 360px;
  }

  .vg-about-strip__grid,
  .vg-about-approach__grid,
  .vg-about-location-cards {
    grid-template-columns: 1fr;
  }

  .vg-about-strip__grid > div {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .vg-about-strip__grid > div:last-child {
    border-bottom: 0;
  }

  .vg-about-final__actions {
    max-width: none;
  }
}
