/* ==========================================================================
   Single gemstone guide
   Editorial presentation for the gemstone CPT only.
   ========================================================================== */

.gf-single-gemstone {
  color: var(--gf-color-text-default);
  background: var(--gf-color-canvas);
}

.gf-single-gemstone__article {
  margin: 0;
}

.gf-single-gemstone__hero {
  padding: clamp(var(--gf-space-7), 5vw, var(--gf-space-10)) 0 var(--gf-space-3);
}

.gf-single-gemstone__hero-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 510px;
  padding: clamp(var(--gf-space-7), 5vw, var(--gf-space-10));
  border: 1px solid var(--gf-color-border-soft);
  border-radius: clamp(var(--gf-radius-2xl), 2vw, 30px);
  background: var(--gf-color-surface-2);
  box-shadow: var(--gf-shadow-3);
}

.gf-single-gemstone__hero-card--decorative {
  background:
    radial-gradient(circle at 78% 30%, rgba(73, 87, 61, 0.16) 0 8%, transparent 8.3%),
    radial-gradient(circle at 88% 58%, rgba(122, 105, 91, 0.22) 0 10%, transparent 10.3%),
    radial-gradient(circle at 67% 72%, rgba(208, 195, 178, 0.56) 0 12%, transparent 12.3%),
    linear-gradient(135deg, var(--gf-color-surface-1), var(--gf-color-surface-2));
}

.gf-single-gemstone__hero-media {
  position: absolute;
  inset: 0;
  z-index: -2;
}

.gf-single-gemstone__hero-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
}

.gf-single-gemstone__hero-card--has-image::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(
      90deg,
      rgba(254, 252, 248, 0.98) 0%,
      rgba(254, 252, 248, 0.94) 38%,
      rgba(244, 238, 230, 0.78) 57%,
      rgba(244, 238, 230, 0.20) 82%,
      rgba(24, 21, 17, 0.08) 100%
    ),
    linear-gradient(180deg, rgba(254, 252, 248, 0.06), rgba(24, 21, 17, 0.12));
  content: "";
  pointer-events: none;
}

.gf-single-gemstone__hero-copy {
  display: grid;
  gap: var(--gf-space-5);
  width: min(62%, 720px);
}

.gf-single-gemstone__eyebrow {
  display: flex;
  align-items: center;
  gap: var(--gf-space-3);
  margin: 0;
  color: var(--gf-color-brand);
  font-size: var(--gf-text-xs);
  font-weight: 700;
  line-height: var(--gf-leading-tight);
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.gf-single-gemstone__eyebrow::before {
  flex: 0 0 auto;
  width: 34px;
  height: 1px;
  background: currentColor;
  content: "";
  opacity: 0.58;
}

.gf-single-gemstone__title {
  max-width: 12ch;
  margin: 0;
  color: var(--gf-color-text-strong);
  font-family: var(--gf-font-serif);
  font-size: clamp(2.65rem, 1.9rem + 2.8vw, 5rem);
  font-weight: 700;
  line-height: 0.98;
  letter-spacing: -0.045em;
}

.gf-single-gemstone__lead {
  max-width: 62ch;
  margin: 0;
  color: var(--gf-color-text-soft);
  font-size: clamp(1rem, 0.94rem + 0.28vw, 1.18rem);
  line-height: var(--gf-leading-relaxed);
}

.gf-single-gemstone__hero-topics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--gf-space-3);
  max-width: 640px;
  margin: var(--gf-space-1) 0 0;
  padding: 0;
  list-style: none;
}

.gf-single-gemstone__hero-topics li {
  display: grid;
  align-content: start;
  gap: var(--gf-space-2);
  min-height: 92px;
  padding: var(--gf-space-4);
  border: 1px solid var(--gf-color-border-soft);
  border-radius: var(--gf-radius-xl);
  background: var(--gf-color-surface-veil);
  box-shadow: var(--gf-shadow-opt);
}

.gf-single-gemstone__hero-topics strong {
  color: var(--gf-color-text-strong);
  font-family: var(--gf-font-serif);
  font-size: var(--gf-text-lg);
  font-weight: 400;
  line-height: var(--gf-leading-snug);
}

.gf-single-gemstone__hero-topics span {
  color: var(--gf-color-text-muted);
  font-size: var(--gf-text-2xs);
  line-height: var(--gf-leading-normal);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.gf-single-gemstone__facts {
  padding: 0 0 var(--gf-space-4);
}

.gf-single-gemstone__fact-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: var(--gf-space-3);
  margin: 0;
}

.gf-single-gemstone__fact {
  display: grid;
  align-content: start;
  gap: var(--gf-space-2);
  min-height: 88px;
  padding: var(--gf-space-4);
  border: 1px solid var(--gf-color-border-soft);
  border-radius: var(--gf-radius-xl);
  background: var(--gf-color-surface-1);
  box-shadow: var(--gf-shadow-card);
}

.gf-single-gemstone__fact dt {
  color: var(--gf-color-text-muted);
  font-size: var(--gf-text-2xs);
  font-weight: 700;
  line-height: var(--gf-leading-tight);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gf-single-gemstone__fact dd {
  margin: 0;
  color: var(--gf-color-text-strong);
  font-family: var(--gf-font-serif);
  font-size: var(--gf-text-lg);
  line-height: var(--gf-leading-snug);
}

.gf-single-gemstone__anchor-nav {
  padding: var(--gf-space-3) 0 var(--gf-space-7);
}

.gf-single-gemstone__anchor-list {
  display: flex;
  justify-content: center;
  gap: var(--gf-space-3);
  margin: 0;
  padding: 0;
  overflow-x: auto;
  list-style: none;
  scrollbar-width: thin;
}

.gf-single-gemstone__anchor-list li {
  flex: 0 0 auto;
}

.gf-single-gemstone__anchor-list a,
.gf-single-gemstone__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--gf-btn-height-compact);
  padding: 0 var(--gf-space-4);
  border: 1px solid var(--gf-btn-secondary-border);
  border-radius: var(--gf-btn-radius);
  background: var(--gf-btn-secondary-bg);
  color: var(--gf-btn-secondary-text);
  font-size: var(--gf-text-xs);
  font-weight: var(--gf-btn-font-weight);
  line-height: 1;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow: var(--gf-btn-shadow);
  transition: var(--gf-transition-control);
}

.gf-single-gemstone__button {
  border-color: var(--gf-color-brand);
  background: var(--gf-color-brand);
  color: var(--gf-color-brand-contrast);
}

.gf-single-gemstone__anchor-list a:hover,
.gf-single-gemstone__button--secondary:hover {
  border-color: var(--gf-btn-secondary-border-hover);
  background: var(--gf-btn-secondary-bg-hover);
  color: var(--gf-btn-secondary-text);
  box-shadow: var(--gf-btn-shadow-hover);
}

.gf-single-gemstone__button:hover {
  border-color: var(--gf-color-brand-hover);
  background: var(--gf-color-brand-hover);
  color: var(--gf-color-brand-contrast);
  box-shadow: var(--gf-btn-shadow-hover);
}

.gf-single-gemstone__anchor-list a:focus-visible,
.gf-single-gemstone__button:focus-visible {
  outline: none;
  box-shadow: var(--gf-btn-shadow-focus), var(--gf-btn-focus-ring);
}

.gf-single-gemstone__button--secondary {
  border-color: var(--gf-btn-secondary-border);
  background: var(--gf-btn-secondary-bg);
  color: var(--gf-btn-secondary-text);
}

.gf-single-gemstone__section {
  padding: clamp(var(--gf-section-space-lg), 7vw, var(--gf-section-space-xl)) 0;
  scroll-margin-top: calc(var(--gf-sticky-top, 0px) + var(--gf-space-4));
}

.gf-single-gemstone__section--intro {
  padding-top: clamp(var(--gf-space-7), 5vw, var(--gf-space-10));
}

.gf-single-gemstone__section--tinted,
.gf-single-gemstone__section--jewelry {
  border-top: 1px solid var(--gf-color-border-soft);
  border-bottom: 1px solid var(--gf-color-border-soft);
  background: var(--gf-color-surface-2);
}

.gf-single-gemstone__section-heading {
  display: grid;
  gap: var(--gf-space-3);
  max-width: 780px;
  margin-bottom: clamp(var(--gf-space-7), 4vw, var(--gf-space-9));
}

.gf-single-gemstone__section-heading--row {
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 1.1fr);
  align-items: end;
  max-width: none;
  gap: clamp(var(--gf-space-6), 5vw, var(--gf-space-10));
}

.gf-single-gemstone__section-heading h2,
.gf-single-gemstone__editorial-card h2 {
  margin: var(--gf-space-3) 0 0;
  color: var(--gf-color-text-strong);
  font-family: var(--gf-font-serif);
  font-size: clamp(2rem, 1.6rem + 1.4vw, 3.25rem);
  font-weight: 400;
  line-height: var(--gf-leading-tight);
  letter-spacing: -0.035em;
}

.gf-single-gemstone__intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  align-items: center;
  gap: clamp(var(--gf-space-6), 4vw, var(--gf-space-10));
}

.gf-single-gemstone__intro-media {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: clamp(360px, 44vw, 560px);
  border: 1px solid var(--gf-color-border-soft);
  border-radius: clamp(var(--gf-radius-2xl), 2vw, 28px);
  background: var(--gf-color-surface-2);
  box-shadow: var(--gf-shadow-2);
}

.gf-single-gemstone__intro-media::after {
  position: absolute;
  inset: auto 0 0;
  height: 32%;
  background: linear-gradient(180deg, transparent, rgba(24, 21, 17, 0.12));
  content: "";
  pointer-events: none;
}

.gf-single-gemstone__intro-media--decorative {
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 28% 22%, rgba(254, 252, 248, 0.96) 0 4%, transparent 4.4%),
    linear-gradient(145deg, var(--gf-color-surface-1), var(--gf-color-surface-3));
}

.gf-single-gemstone__intro-image {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.gf-single-gemstone__decorative-gem,
.gf-single-gemstone__variety-gem {
  width: clamp(120px, 18vw, 210px);
  aspect-ratio: 1;
  border-radius: var(--gf-radius-round);
  background:
    radial-gradient(circle at 34% 28%, rgba(255, 255, 255, 0.96), transparent 17%),
    radial-gradient(circle at 50% 50%, var(--gf-color-surface-1), var(--gf-color-metal));
  box-shadow:
    inset -18px -22px 34px rgba(122, 105, 91, 0.18),
    0 18px 38px rgba(24, 21, 17, 0.12);
}

.gf-single-gemstone__material-status {
  display: grid;
  gap: var(--gf-space-2);
  margin: var(--gf-space-5) 0;
  padding: var(--gf-space-4);
  border: 1px solid var(--gf-color-border-soft);
  border-radius: var(--gf-radius-xl);
  background: var(--gf-color-surface-2);
}

.gf-single-gemstone__material-status strong {
  color: var(--gf-color-text-strong);
  font-size: var(--gf-text-xs);
  line-height: var(--gf-leading-tight);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gf-single-gemstone__material-status p {
  margin: 0;
  color: var(--gf-color-text-soft);
  font-size: var(--gf-text-sm);
  line-height: var(--gf-leading-relaxed);
  white-space: pre-line;
}

.gf-single-gemstone__editorial-card,
.gf-single-gemstone__meaning-panel,
.gf-single-gemstone__varieties-panel {
  padding: clamp(var(--gf-space-6), 4vw, var(--gf-space-9));
  border: 1px solid var(--gf-color-border-soft);
  border-radius: clamp(var(--gf-radius-2xl), 2vw, 28px);
  background: var(--gf-color-surface-1);
  box-shadow: var(--gf-shadow-2);
}

.gf-single-gemstone__meaning-panel {
  display: grid;
  grid-template-columns: minmax(240px, 0.75fr) minmax(0, 1.25fr);
  align-items: start;
  gap: clamp(var(--gf-space-7), 5vw, var(--gf-space-10));
}

.gf-single-gemstone__meaning-panel .gf-single-gemstone__section-heading {
  margin: 0;
}

.gf-single-gemstone__varieties-layout {
  display: grid;
  align-items: start;
  gap: clamp(var(--gf-space-6), 3vw, var(--gf-space-8));
}

.gf-single-gemstone__varieties-layout--split {
  align-items: stretch;
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr);
}

.gf-single-gemstone__varieties-layout--split .gf-single-gemstone__varieties-panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.gf-single-gemstone__varieties-layout--visual-only {
  width: min(100%, 960px);
}

.gf-single-gemstone__varieties-panel.gf-single-gemstone__prose {
  width: 100%;
  padding: clamp(var(--gf-space-6), 4vw, var(--gf-space-9));
  text-align: left;
}

.gf-single-gemstone__variety-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--gf-space-4);
}

.gf-single-gemstone__varieties-layout--visual-only .gf-single-gemstone__variety-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gf-single-gemstone__variety-card {
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  min-width: 0;
  border: 1px solid var(--gf-color-border-soft);
  border-radius: var(--gf-radius-2xl);
  background: var(--gf-color-surface-1);
  box-shadow: var(--gf-shadow-card);
}

.gf-single-gemstone__variety-media {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  background: var(--gf-color-surface-2);
}

.gf-single-gemstone__variety-media--decorative {
  background:
    radial-gradient(circle at 24% 18%, rgba(254, 252, 248, 0.96) 0 3%, transparent 3.4%),
    linear-gradient(145deg, var(--gf-color-surface-1), var(--gf-color-surface-3));
}

.gf-single-gemstone__variety-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gf-single-gemstone__variety-gem {
  width: clamp(96px, 55%, 150px);
}

.gf-single-gemstone__variety-body {
  display: grid;
  align-content: start;
  gap: var(--gf-space-2);
  padding: var(--gf-space-4);
}

.gf-single-gemstone__variety-body h3 {
  margin: 0;
  color: var(--gf-color-text-strong);
  font-family: var(--gf-font-serif);
  font-size: var(--gf-text-lg);
  font-weight: 400;
  line-height: var(--gf-leading-snug);
}

.gf-single-gemstone__variety-body p {
  margin: 0;
  color: var(--gf-color-text-soft);
  font-size: var(--gf-text-sm);
  line-height: var(--gf-leading-relaxed);
}

.gf-single-gemstone__prose {
  color: var(--gf-color-text-soft);
  font-size: var(--gf-text-md);
  line-height: var(--gf-leading-relaxed);
}

.gf-single-gemstone__prose--wide {
  max-width: 760px;
}

.gf-single-gemstone__prose > :first-child {
  margin-top: 0;
}

.gf-single-gemstone__prose > :last-child {
  margin-bottom: 0;
}

.gf-single-gemstone__prose h3,
.gf-single-gemstone__prose h4 {
  margin: var(--gf-space-6) 0 var(--gf-space-3);
  color: var(--gf-color-text-strong);
  font-family: var(--gf-font-serif);
  font-weight: 400;
  line-height: var(--gf-leading-snug);
}

.gf-single-gemstone__prose h3 {
  font-size: var(--gf-text-2xl);
}

.gf-single-gemstone__prose h4 {
  font-size: var(--gf-text-xl);
}

.gf-single-gemstone__prose p,
.gf-single-gemstone__prose ul,
.gf-single-gemstone__prose ol {
  margin: 0 0 var(--gf-space-4);
}

.gf-single-gemstone__prose ul,
.gf-single-gemstone__prose ol {
  padding-left: var(--gf-space-6);
}

.gf-single-gemstone__prose a {
  color: var(--gf-color-brand);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

.gf-single-gemstone__prose a:hover {
  color: var(--gf-color-brand-hover);
}

.gf-single-gemstone__practical-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: clamp(var(--gf-space-5), 3vw, var(--gf-space-7));
}

.gf-single-gemstone__practical-grid--single {
  grid-template-columns: minmax(0, 820px);
}

.gf-single-gemstone__practical-grid .gf-single-gemstone__editorial-card {
  scroll-margin-top: calc(var(--gf-sticky-top, 0px) + var(--gf-space-4));
}

.gf-single-gemstone__risk-note {
  display: grid;
  gap: var(--gf-space-2);
  margin-top: var(--gf-space-6);
  padding: var(--gf-space-4);
  border: 1px solid var(--gf-color-border-soft);
  border-radius: var(--gf-radius-xl);
  background: var(--gf-color-surface-2);
}

.gf-single-gemstone__risk-note strong {
  color: var(--gf-color-text-strong);
  font-size: var(--gf-text-sm);
}

.gf-single-gemstone__risk-note p {
  margin: 0;
  color: var(--gf-color-text-soft);
  font-size: var(--gf-text-sm);
  line-height: var(--gf-leading-relaxed);
  white-space: pre-line;
}

.gf-single-gemstone__section-intro {
  display: grid;
  gap: var(--gf-space-3);
  width: 100%;
  padding: clamp(var(--gf-space-5), 3vw, var(--gf-space-7));
  border: 1px solid var(--gf-color-border-soft);
  border-radius: var(--gf-radius-2xl);
  background: var(--gf-color-surface-3);
  color: var(--gf-color-text-soft);
  line-height: var(--gf-leading-relaxed);
  box-shadow:
    inset 0 2px 10px rgba(24, 21, 17, 0.06),
    inset 0 1px 0 rgba(24, 21, 17, 0.04),
    0 1px 0 rgba(254, 252, 248, 0.58);
}

.gf-single-gemstone__section-intro p {
  margin: 0;
}

.gf-single-gemstone__product-line ul.products {
  display: grid !important; /* Needed to override WooCommerce's float-based product loop. */
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important; /* Needed to override WooCommerce percentage column widths. */
  gap: var(--gf-space-4) !important; /* Needed to replace WooCommerce product margins with the scoped grid gap. */
  margin: 0 !important; /* Needed to override WooCommerce loop margins. */
  padding: 0 !important; /* Needed to override WooCommerce loop padding. */
  list-style: none !important; /* Needed to override browser and WooCommerce list markers. */
}

.gf-single-gemstone__product-line ul.products::before,
.gf-single-gemstone__product-line ul.products::after {
  display: none !important; /* Needed to prevent WooCommerce clearfix pseudo-elements from becoming grid items. */
  content: none !important; /* Needed to remove WooCommerce clearfix generated content. */
}

.gf-single-gemstone__product-line ul.products li.product {
  display: flex !important; /* Needed to make the standard product card fill its grid cell. */
  float: none !important; /* Needed to override WooCommerce's legacy floated product columns. */
  clear: none !important; /* Needed to override WooCommerce first-column clearing. */
  width: auto !important; /* Needed to override WooCommerce percentage product widths. */
  height: 100% !important; /* Needed to align standard product cards within each grid row. */
  margin: 0 !important; /* Needed to replace WooCommerce product margins with the parent grid gap. */
  padding: 0 !important; /* Needed to remove WooCommerce loop item padding. */
  text-align: left !important; /* Needed to preserve the theme product-card text alignment. */
}

.gf-single-gemstone__product-line ul.products li.product.first,
.gf-single-gemstone__product-line ul.products li.product.last {
  clear: none !important; /* Needed to neutralize WooCommerce first/last column clearing in the scoped grid. */
}

.gf-single-gemstone__product-line ul.products li.product .product-card {
  width: 100%;
}

.gf-single-gemstone__collection-action {
  display: flex;
  justify-content: center;
  margin-top: clamp(var(--gf-space-7), 4vw, var(--gf-space-9));
}

.gf-single-gemstone__button--collection {
  min-height: var(--gf-btn-height-default);
  padding: 0 clamp(var(--gf-space-6), 4vw, var(--gf-space-8));
  box-shadow: var(--gf-shadow-cta);
}

.gf-single-gemstone__button--collection:hover {
  box-shadow: var(--gf-shadow-cta-hover);
}

.gf-single-gemstone__back {
  padding: clamp(var(--gf-space-8), 6vw, var(--gf-space-10)) 0;
  text-align: center;
}

@media (max-width: 959px) {
  .gf-single-gemstone__hero-card {
    min-height: 470px;
  }

  .gf-single-gemstone__hero-copy {
    width: min(75%, 650px);
  }

  .gf-single-gemstone__hero-card--has-image::after {
    background:
      linear-gradient(
        90deg,
        rgba(254, 252, 248, 0.98) 0%,
        rgba(254, 252, 248, 0.94) 52%,
        rgba(244, 238, 230, 0.66) 76%,
        rgba(24, 21, 17, 0.08) 100%
      );
  }

  .gf-single-gemstone__intro-grid,
  .gf-single-gemstone__meaning-panel {
    grid-template-columns: 1fr;
  }

  .gf-single-gemstone__section-heading--row {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .gf-single-gemstone__varieties-layout--split {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .gf-single-gemstone__varieties-layout--split .gf-single-gemstone__varieties-panel {
    display: block;
  }

  .gf-single-gemstone__varieties-layout--visual-only {
    width: 100%;
  }

  .gf-single-gemstone__variety-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 768px) {
  .gf-single-gemstone__product-line ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important; /* Needed to override the mobile scoped grid at the theme tablet breakpoint. */
  }
}

@media (min-width: 1024px) {
  .gf-single-gemstone__product-line ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important; /* Needed to keep the gemstone product line aligned with the desktop shop grid. */
  }
}

@media (max-width: 767px) {
  .gf-single-gemstone__hero {
    padding: var(--gf-space-5) 0 var(--gf-space-3);
  }

  .gf-single-gemstone__hero-card {
    min-height: 0;
    padding: var(--gf-space-6);
    border-radius: var(--gf-radius-xl);
  }

  .gf-single-gemstone__hero-card--has-image::after {
    background:
      linear-gradient(
        90deg,
        rgba(254, 252, 248, 0.96) 0%,
        rgba(254, 252, 248, 0.92) 46%,
        rgba(244, 238, 230, 0.52) 68%,
        rgba(244, 238, 230, 0.16) 86%,
        rgba(24, 21, 17, 0.04) 100%
      ),
      linear-gradient(180deg, rgba(254, 252, 248, 0.10), rgba(24, 21, 17, 0.08));
  }

  .gf-single-gemstone__hero-image {
    object-position: 88% 18%;
  }

  .gf-single-gemstone__hero-copy {
    width: min(72%, 340px);
  }

  .gf-single-gemstone__title {
    font-size: clamp(2.5rem, 12vw, 3.8rem);
  }

  .gf-single-gemstone__hero-topics {
    grid-template-columns: 1fr;
  }

  .gf-single-gemstone__hero-topics li {
    min-height: 0;
  }

  .gf-single-gemstone__fact-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gf-single-gemstone__anchor-list {
    justify-content: flex-start;
    margin-right: calc(var(--gf-gutter) * -1);
    margin-left: calc(var(--gf-gutter) * -1);
    padding: 0 var(--gf-gutter) var(--gf-space-2);
  }

  .gf-single-gemstone__intro-media {
    min-height: 340px;
    border-radius: var(--gf-radius-xl);
  }

  .gf-single-gemstone__editorial-card,
  .gf-single-gemstone__meaning-panel,
  .gf-single-gemstone__varieties-panel {
    padding: var(--gf-space-5);
    border-radius: var(--gf-radius-xl);
  }

  .gf-single-gemstone__practical-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 639px) {
  .gf-single-gemstone__fact-list {
    grid-template-columns: 1fr;
  }

  .gf-single-gemstone__fact {
    min-height: 0;
  }

  .gf-single-gemstone__variety-grid {
    grid-template-columns: 1fr;
  }
}
