.gfa-product-media {
  float: left;
  width: 48%;
  margin: 0 4% 3rem 0;
}

.gfa-media-stage {
  position: relative;
  min-height: 620px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(189, 140, 53, .34);
  background: radial-gradient(circle at 50% 35%, #27231d, #0a0a09 72%);
}

.gfa-media-pane {
  width: 100%;
  min-height: 620px;
  margin: 0;
  border: 0;
  padding: 0;
  background: transparent;
  color: #ded0b6;
}

.gfa-media-pane[hidden] { display: none !important; }

.gfa-media-image {
  position: relative;
  cursor: zoom-in;
}

.gfa-media-image img {
  width: 100%;
  height: 620px;
  object-fit: contain;
  padding: 24px;
}

.gfa-media-image > span,
.gfa-media-expand {
  position: absolute;
  right: 18px;
  bottom: 18px;
  border: 1px solid rgba(223, 182, 94, .72);
  background: rgba(8, 8, 7, .86);
  color: #e5d7be;
  padding: 10px 14px;
  text-transform: uppercase;
  letter-spacing: .13em;
  font: 600 9px Inter, sans-serif;
}

.gfa-media-video {
  position: relative;
  display: grid;
  place-items: center;
}

.gfa-media-video video {
  width: 100%;
  max-height: 620px;
  background: #000;
}

.gfa-media-expand { cursor: pointer; }

.gfa-media-thumbnails {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 12px 2px 4px;
  scrollbar-color: #bd8c35 #171714;
}

.gfa-media-thumbnails button {
  flex: 0 0 86px;
  height: 86px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid #39342c;
  background: #11110f;
  color: #ded0b6;
  cursor: pointer;
}

.gfa-media-thumbnails button[aria-selected="true"] {
  border-color: #dfb65e;
  box-shadow: 0 0 0 1px #dfb65e inset;
}

.gfa-media-thumbnails img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gfa-video-thumb span { font-size: 23px; color: #dfb65e; }
.gfa-video-thumb small { font-size: 9px; text-transform: uppercase; letter-spacing: .12em; }

.gfa-product-media-dialog {
  width: min(1180px, 96vw);
  height: min(900px, 94vh);
  overflow: hidden;
  border: 1px solid #bd8c35;
  padding: 48px;
  background: #070706;
  color: #fff;
}

.gfa-product-media-dialog[open] { display: grid; place-items: center; }

.gfa-product-media-dialog::backdrop { background: rgba(0, 0, 0, .94); }
.gfa-product-media-dialog img,
.gfa-product-media-dialog video {
  position: static;
  width: auto;
  height: auto;
  max-width: calc(96vw - 96px);
  max-height: calc(94vh - 96px);
  object-fit: contain;
}
.gfa-product-media-dialog [hidden] { display: none !important; }

.gfa-media-close {
  position: absolute;
  z-index: 2;
  right: 12px;
  top: 5px;
  border: 0;
  background: transparent;
  color: #fff;
  font-size: 34px;
  cursor: pointer;
}

.gfa-form small { color: #827a6f; font-size: 11px; line-height: 1.45; }

.gfa-billing-toggle {
  display: inline-flex;
  margin: 0 0 24px;
  border: 1px solid #4b402f;
}

.gfa-billing-toggle button {
  border: 0;
  background: #11110f;
  color: #9e978b;
  padding: 11px 16px;
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: .09em;
  font-size: 10px;
}

.gfa-billing-toggle button.active { background: #bd8c35; color: #0b0a08; }
.gfa-plan [hidden] { display: none !important; }

@media (max-width: 900px) {
  .gfa-product-media { float: none; width: 100%; margin: 0 0 2.4rem; }
  .gfa-media-stage,
  .gfa-media-pane { min-height: 460px; }
  .gfa-media-image img { height: 460px; padding: 14px; }
}

@media (max-width: 520px) {
  .gfa-media-stage,
  .gfa-media-pane { min-height: 390px; }
  .gfa-media-image img { height: 390px; }
  .gfa-media-thumbnails button { flex-basis: 70px; height: 70px; }
  .gfa-product-media-dialog { padding: 35px 10px 10px; }
  .gfa-product-media-dialog img,
  .gfa-product-media-dialog video { max-width: calc(100vw - 20px); max-height: calc(94vh - 45px); }
}
