.pristine-gifts {
  scroll-margin-top: 5.5rem;
  padding: clamp(3.5rem, 8vw, 7rem) 0;
  border-block: 1px solid #62232b;
  background: radial-gradient(ellipse at 8% 10%, #2c1118 0%, transparent 52%), #101013;
  color: #f6f4f5;
}
.pristine-gift-grid {
  display: grid;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}
.pristine-gift-grid > * { min-width: 0; }
.pristine-gift-intro {
  max-width: 35rem;
  margin: .9rem 0 1.6rem;
  color: #c5bec2;
  line-height: 1.6;
}
.pristine-gift-card {
  max-width: 29rem;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid #8d3b48;
  border-radius: 1rem;
  box-shadow: 0 1rem 2.5rem #0007;
  background: linear-gradient(115deg, #232228, #111015 61%, #450e19);
}
.pristine-gift-card, .pristine-gift-face { position: relative; }
.pristine-gift-face {
  display: flex;
  min-height: clamp(12rem, 54vw, 16rem);
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.2rem, 5vw, 2rem);
  gap: .2rem;
}
.pristine-gift-face::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background: repeating-linear-gradient(130deg, transparent 0 10px, #ffffff09 10px 11px),
    linear-gradient(125deg, transparent 76%, #dd142a 76% 77%, transparent 77% 80%, #a50b23 80% 83%, transparent 83%);
}
.pristine-gift-face img { width: 4rem; height: 4rem; object-fit: contain; margin-bottom: .45rem; }
.pristine-gift-brand { font: 600 clamp(1.4rem, 5vw, 2.15rem)/1.1 Oswald, sans-serif; text-transform: uppercase; }
.pristine-gift-brand span { color: #ff4355; }
.pristine-gift-card-label { font: 500 .75rem/1.4 Oswald, sans-serif; letter-spacing: .18em; text-transform: uppercase; }
.pristine-gift-card-value { align-self: flex-start; margin-top: .5rem; font: 600 1.55rem/1 Oswald, sans-serif; }
.pristine-gift-back { gap: .4rem; }
.pristine-gift-preview {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 29rem;
  color: #c5bec2;
  font-size: .9rem;
}
.pristine-gift-preview button { min-height: 44px; padding: .25rem .5rem; text-decoration: underline; color: #fff; }
.pristine-gift-form {
  display: grid;
  gap: 1rem;
  padding: clamp(1rem, 4vw, 2rem);
  border: 1px solid #543139;
  border-radius: .65rem;
  background: #151419;
}
.pristine-gift-form fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
.pristine-gift-form legend { margin-bottom: .65rem; font-weight: 600; }
.pristine-gift-options { display: flex; flex-wrap: wrap; gap: .45rem; }
.pristine-gift-options label { position: relative; }
.pristine-gift-options input { position: absolute; opacity: 0; pointer-events: none; }
.pristine-gift-options span {
  display: grid;
  min-height: 44px;
  place-items: center;
  padding: .35rem .75rem;
  border: 1px solid #63535a;
  border-radius: .25rem;
  cursor: pointer;
}
.pristine-gift-options input:checked + span { background: #9e0f29; border-color: #ff546b; }
.pristine-gift-options input:focus-visible + span,
.pristine-gifts :is(button, input, textarea, a):focus-visible { outline: 2px solid #ffa0ab; outline-offset: 3px; }
.pristine-gift-names { display: grid; gap: .85rem; }
.pristine-gift-field { display: grid; gap: .3rem; font-size: .95rem; }
.pristine-gift-field :is(input, textarea) {
  width: 100%;
  min-height: 44px;
  padding: .55rem .7rem;
  border: 1px solid #63535a;
  border-radius: .25rem;
  background: #101013;
  color: #fff;
  font-size: 16px;
}
.pristine-gifts [hidden], .pristine-gift-status:empty { display: none; }
.pristine-gift-submit { width: 100%; min-height: 48px; }
.pristine-gift-form p { margin: 0; color: #d5cbd0; font-size: .9rem; }
.pristine-gift-form p a { white-space: nowrap; text-decoration: underline; }
@media (min-width: 42rem) {
  .pristine-gift-names { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; }
}
@media (min-width: 52rem) {
  .pristine-gift-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
}
@media (min-width: 64rem) and (max-width: 75rem) {
  header nav:has(a[href$="#gifts"]) { gap: .85rem; }
}
