/*
 * Capa reversible de consistencia visual.
 * No modifica fotografias, animaciones ni comportamiento del catalogo.
 */

:root {
  --ui-control-height: 44px;
  --ui-control-radius: 5px;
  --ui-card-radius: 6px;
  --ui-space-card: 0.9rem;
}

/* La tipografia editorial queda reservada para encabezados. */
.section-heading h2,
.quality-copy h2,
.contact-section h2,
.hero-editorial-title,
.cart-header h2,
.modal-header h2,
.product-quickview-header h2,
.exclusive-detail-heading h2 {
  font-family: "Cormorant Garamond", Garamond, Georgia, serif;
  font-weight: 300;
  line-height: 1.08;
}

.section-heading h2 {
  font-size: clamp(2.15rem, 3vw, 2.7rem);
}

.product-card,
.product-card button,
.product-card input,
.product-card select,
.product-quickview-panel,
.exclusive-detail-panel,
.exclusive-detail-info,
.cart-panel,
.checkout-modal {
  font-family: Inter, "Segoe UI", Arial, sans-serif;
}

.product-top h3,
.product-title-button {
  font-size: 1rem;
  font-weight: 650;
  line-height: 1.25;
}

.option-label,
.product-options label,
.product-quickview-field label {
  font-size: 0.78rem;
  font-weight: 650;
}

/* Espaciado y bordes coherentes sin alterar el encuadre de las prendas. */
.product-card {
  border-radius: var(--ui-card-radius);
}

.product-body {
  gap: 0.75rem;
  padding: var(--ui-space-card);
}

.product-description {
  line-height: 1.48;
}

.product-options {
  align-items: end;
  gap: 0.6rem;
}

/* Controles estables para que la interfaz no salte entre pantallas. */
.button,
.add-button,
.filter-button,
.product-options select,
.product-options input,
.product-quickview-field select,
.product-quickview-field input,
.exclusive-size-button,
.exclusive-detail-quantity input {
  min-height: var(--ui-control-height);
  border-radius: var(--ui-control-radius);
}

.button,
.add-button,
.filter-button {
  font-weight: 720;
}

.color-options {
  min-height: var(--ui-control-height);
  align-items: center;
}

/* En datos secundarios, el espacio reemplaza recuadros innecesarios. */
.exclusive-detail-story {
  padding: 0.5rem 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.exclusive-detail-story-grid {
  column-gap: 1rem;
  row-gap: 0.35rem;
}

.exclusive-detail-editorial {
  display: grid;
  gap: 0.8rem;
  padding: 0.65rem 0 0.25rem;
  color: rgba(255, 255, 255, 0.78);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.94rem;
  line-height: 1.65;
}

.exclusive-detail-editorial p {
  margin: 0;
}

.exclusive-detail-editorial-lead,
.exclusive-detail-editorial-closing {
  color: var(--white);
}

.exclusive-detail-editorial-lead {
  font-size: 1rem;
}

@media (max-width: 760px) {
  .product-body {
    padding: 0.85rem;
  }

  .section-heading h2 {
    font-size: 2.1rem;
  }
}
