/* Galápagos — voyage de noces */
.gifts {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  gap: clamp(2.5rem, 6vw, 4.75rem);
}

.gifts::before {
  position: absolute;
  z-index: -1;
  width: 420px;
  height: 420px;
  top: -180px;
  right: -170px;
  content: '';
  border: 1px solid rgba(14, 101, 112, .16);
  border-radius: 50%;
}

.gifts__visual {
  position: relative;
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
  padding: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
}

.gifts__visual::after {
  display: none;
}

.gifts__visual img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 3 / 2;
  object-fit: contain;
  filter: saturate(.95) contrast(1.01);
  mix-blend-mode: multiply;
  -webkit-mask-image: radial-gradient(ellipse 94% 92% at center, #000 70%, transparent 100%);
  mask-image: radial-gradient(ellipse 94% 92% at center, #000 70%, transparent 100%);
}

.gifts__content {
  max-width: 820px;
  margin: 0 auto;
  text-align: center;
}

.gifts__content h2 {
  color: var(--wine-dark);
}

.gifts__content .gifts__lead {
  margin-top: 1.65rem;
  color: var(--ink);
  font: 500 clamp(1.08rem, 1.8vw, 1.28rem)/1.65 var(--body);
}

.gifts__discover {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin-top: 1.1rem;
  color: var(--wine);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-decoration-color: rgba(14, 101, 112, .35);
  text-underline-offset: 5px;
  text-transform: uppercase;
}

.gifts__discover span {
  font-size: 1rem;
  transition: transform .25s ease;
}

.gifts__discover:hover span {
  transform: translate(2px, -2px);
}

.gifts__payment {
  width: min(100%, 900px);
  max-width: 900px;
  display: block;
  margin-top: 0;
  padding: clamp(1.15rem, 2.3vw, 1.6rem);
  border: 1px solid rgba(14, 101, 112, .2);
  border-radius: 16px;
  background: rgba(255, 253, 248, .86);
  color: var(--ink);
  box-shadow: 0 18px 45px rgba(7, 63, 72, .08);
}

.gifts__payment-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: .3rem 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(14, 101, 112, .16);
}

.gifts__payment-heading > span {
  color: var(--wine-dark);
  font: 500 clamp(1.35rem, 2vw, 1.7rem)/1.2 var(--display);
  letter-spacing: -.015em;
  text-transform: none;
}

.gifts__payment-heading > small {
  color: var(--muted);
  font-size: .67rem;
}

.gifts__methods {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: .8rem;
  margin: 1rem 0 0;
}

.gifts__method {
  min-width: 0;
  padding: 1rem;
  border-radius: 10px;
  background: rgba(14, 101, 112, .065);
}

.gifts__method > span {
  display: block;
  color: var(--wine);
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.gifts__method > strong {
  display: block;
  margin: .6rem 0 .35rem;
  color: var(--wine-dark);
  font: 600 clamp(.84rem, 1.4vw, 1rem)/1.45 var(--body);
  font-variant-numeric: tabular-nums;
  letter-spacing: .015em;
  overflow-wrap: anywhere;
}

.gifts__method > small {
  display: block;
  color: var(--muted);
  font-size: .65rem;
  line-height: 1.5;
}

@media (max-width: 900px) {
  .gifts__visual {
    max-width: 720px;
  }
}

@media (max-width: 560px) {
  .gifts__visual {
    width: 100%;
  }

  .gifts__methods {
    grid-template-columns: 1fr;
  }

  .gifts__payment-heading {
    display: grid;
  }
}
