/** Shopify CDN: Minification failed

Line 25:0 All "@import" rules must come first

**/
/* ================================================
   SUNVIBE.CSS — Styles par-dessus le thème Horizon
   ================================================ */

/* ── TOKENS ── */
:root {
  --sv-coral:    #E8614A;
  --sv-coral-lt: #F5A08C;
  --sv-coral-dk: #C04030;
  --sv-sand:     #D9B896;
  --sv-sand-lt:  #F2E5D5;
  --sv-sand-dk:  #A8855E;
  --sv-cream:    #FBF7F2;
  --sv-dark:     #1C1713;
  --sv-mid:      #6B5B4E;
  --sv-light:    #EDE5DC;
}

/* ── FONTS ── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;1,400&family=Plus+Jakarta+Sans:wght@300;400;500;600&display=swap');

body {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
}

/* ── PROMO BANNER ── */
.sv-promo {
  background: var(--sv-coral);
  padding: 12px 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
  width: 100%;
}

.sv-promo span {
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .04em;
  white-space: nowrap;
  font-family: 'Plus Jakarta Sans', sans-serif;
}

.sv-promo-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(255,255,255,.5);
  flex-shrink: 0;
}

/* ── LIENS ── */
a:hover { color: var(--sv-coral) !important; }

/* ── PRIX PROMO ── */
.price--on-sale .price__sale,
.price-item--sale {
  color: var(--sv-coral) !important;
}

/* ── BADGES ── */
.badge,
.product__badge,
.card__badge {
  background: var(--sv-coral) !important;
  color: #fff !important;
  border-radius: 100px !important;
}

/* ── GRILLE PRODUITS ── */
.collection-grid,
.product-grid,
.grid.grid--2-col-tablet-down,
.grid--4-col-desktop {
  gap: 20px !important;
}

.card__media,
.card-wrapper .media {
  aspect-ratio: 3/4 !important;
  overflow: hidden !important;
  height: auto !important;
}

.card__media img,
.card-wrapper .media img,
.card-wrapper img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  max-height: none !important;
}

.card__heading,
.card__heading a {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--sv-dark) !important;
}

/* ── PAGE PRODUIT ── */

/* Titre */
.product__title,
.product__title h1 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(24px, 3vw, 38px) !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  color: var(--sv-dark) !important;
}

/* Prix */
.product__price,
.price__regular .price-item,
.price__sale .price-item--sale {
  color: var(--sv-coral) !important;
  font-size: 20px !important;
  font-weight: 600 !important;
}

/* ── BOUTON AJOUTER AU PANIER ── */
.product-form__submit,
.product-form__submit.button,
button.product-form__submit,
[id*="ProductSubmitButton"],
form[action="/cart/add"] button[type="submit"] {
  background: var(--sv-coral) !important;
  background-color: var(--sv-coral) !important;
  border: none !important;
  border-radius: 100px !important;
  color: #fff !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
}

.product-form__submit:hover,
button.product-form__submit:hover,
form[action="/cart/add"] button[type="submit"]:hover {
  background: var(--sv-coral-dk) !important;
  background-color: var(--sv-coral-dk) !important;
}

/* ── BOUTON PANIER ── */
.cart__checkout-button {
  background-color: var(--sv-coral) !important;
  border-color: var(--sv-coral) !important;
  color: #fff !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
}

.cart__checkout-button:hover {
  background-color: var(--sv-coral-dk) !important;
  border-color: var(--sv-coral-dk) !important;
}

/* ── VARIANTES ── */
.variant-input-wrapper .btn,
.product-form__input .swatch__input + label,
fieldset .swatch-input__input + label {
  border-radius: 100px !important;
  border: 1.5px solid var(--sv-light) !important;
  font-size: 13px !important;
  transition: all .2s ease !important;
}

.variant-input-wrapper .btn.active,
.swatch__input:checked + label,
.swatch-input__input:checked + label {
  border-color: var(--sv-coral) !important;
  color: var(--sv-coral) !important;
  background: var(--sv-sand-lt) !important;
}

.product-form__input legend,
.product-form__input .form__label {
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: var(--sv-mid) !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 768px) {
  .sv-promo { padding: 10px 16px; gap: 12px; }
}
/* Force toutes les images produit à la même hauteur */
.card__media,
.card-wrapper .media,
.product-card .media {
aspect-ratio: 3/4!important;
  height: auto !important;
  overflow: hidden !important;
}

.card__media img,
.card-wrapper .media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}