/* ==========================================================================
   HOME DEELUXE HIVER 26/27 - directions 2a (desktop) et 2b (mobile)
   Feuille chargée par la page : /img/cms/home-w26-2/css/home-w26-2.css
   Portée : uniquement les sections qui portent la classe .dlx-home.
   Aucun fichier du thème n'est touché.
   Empilement des colonnes à 900px (et non 756px comme le fait Creative Elements).
   ========================================================================== */

/* -------------------------------------------------------------------------
   0. Polices auto-hébergées
   ------------------------------------------------------------------------- */
@font-face {
  font-family: "DLX Instrument Serif";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/img/cms/home-w26-2/fonts/instrument-serif-latin-400.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "DLX Instrument Serif";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/img/cms/home-w26-2/fonts/instrument-serif-latin-400-italic.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "DLX Instrument Sans";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/img/cms/home-w26-2/fonts/instrument-sans-latin-var.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* -------------------------------------------------------------------------
   1. Tokens (SPECS.md)
   ------------------------------------------------------------------------- */
.dlx-home {
  --dlx-ink: #1A1512;
  --dlx-page: #FAF8F5;
  --dlx-surface: #F0ECE5;
  --dlx-brown: #231A14;
  --dlx-denim: #1F2430;
  --dlx-leather: #8A5A2E;
  --dlx-gold: #C08A3E;
  --dlx-gold-soft: #D9A86F;
  --dlx-promo: #9C3B23;
  --dlx-muted: #6D6359;
  --dlx-line: #E7E0D6;
  --dlx-line-strong: #DDD5C9;
  --dlx-placeholder: #DDD6CB;
  --dlx-serif: "DLX Instrument Serif", Georgia, "Times New Roman", serif;
  --dlx-sans: "DLX Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  --dlx-gutter: 40px;
  --dlx-gap: 20px;
  --dlx-radius: 12px;
  --dlx-radius-lg: 18px;
}

/* -------------------------------------------------------------------------
   2. Socle : conteneur 1440, typo, remise à plat des styles du thème
   ------------------------------------------------------------------------- */
.elementor .dlx-home.elementor-section {
  background-color: var(--dlx-page);
  color: var(--dlx-ink);
  font-family: var(--dlx-sans);
  font-size: 15.5px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
.elementor .dlx-home.elementor-section.elementor-section-boxed > .elementor-container {
  max-width: 1440px;
  padding-left: var(--dlx-gutter);
  padding-right: var(--dlx-gutter);
}
.elementor .dlx-home.elementor-section p {
  margin: 0;
}
.elementor .dlx-home.elementor-section a {
  text-decoration: none;
  color: inherit;
}
.elementor .dlx-home.elementor-section img {
  display: block;
  max-width: 100%;
}
.elementor .dlx-home.elementor-section ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.elementor .dlx-home.elementor-section .elementor-widget.dlx-css {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}
.elementor .dlx-home.elementor-section .dlx-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Titres et libellés partagés */
.elementor .dlx-home.elementor-section .dlx-h2,
.elementor .dlx-home.elementor-section .elementor-widget-heading .elementor-heading-title {
  margin: 0;
  font-family: var(--dlx-serif);
  font-weight: 400;
  font-size: 44px;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
  color: var(--dlx-ink);
}
.elementor .dlx-home.elementor-section .dlx-h2 em,
.elementor .dlx-home.elementor-section .elementor-heading-title em {
  font-family: var(--dlx-serif);
  font-style: italic;
}
.elementor .dlx-home.elementor-section .dlx-label {
  margin: 0 0 10px;
  font-family: var(--dlx-sans);
  font-weight: 600;
  font-size: 11.5px;
  line-height: 1.4;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--dlx-leather);
}
.elementor .dlx-home.elementor-section .dlx-text {
  font-size: 15.5px;
  line-height: 1.6;
  color: var(--dlx-muted);
}
.elementor .dlx-home.elementor-section .dlx-link {
  font-weight: 600;
  font-size: 13px;
  color: var(--dlx-ink);
  border-bottom: 1px solid var(--dlx-line-strong);
  padding-bottom: 2px;
}
.elementor .dlx-home.elementor-section .dlx-link:hover {
  border-bottom-color: var(--dlx-ink);
}
.elementor .dlx-home.elementor-section .dlx-section-head {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 24px;
}
.elementor .dlx-home.elementor-section .dlx-section-head .dlx-h2 {
  margin-right: auto;
}

/* Boutons : le thème impose padding et couleur, d'où les !important ciblés */
.elementor .dlx-home.elementor-section .dlx-btn,
.elementor .dlx-home.elementor-section a.dlx-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 50px;
  padding: 0 26px !important;
  border: 1px solid var(--dlx-ink);
  border-radius: 999px;
  background: var(--dlx-ink);
  color: var(--dlx-page) !important;
  font-family: var(--dlx-sans);
  font-weight: 600;
  font-size: 14px;
  line-height: 1.2;
  text-transform: none;
  letter-spacing: 0;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
}
.elementor .dlx-home.elementor-section .dlx-btn:hover {
  background: var(--dlx-brown);
  border-color: var(--dlx-brown);
}
.elementor .dlx-home.elementor-section .dlx-btn--light {
  background: var(--dlx-page);
  border-color: var(--dlx-page);
  color: var(--dlx-ink) !important;
}
.elementor .dlx-home.elementor-section .dlx-btn--light:hover {
  background: #fff;
  border-color: #fff;
}
.elementor .dlx-home.elementor-section .dlx-btn--outline {
  background: transparent;
  border-color: var(--dlx-line-strong);
  color: var(--dlx-ink) !important;
}
.elementor .dlx-home.elementor-section .dlx-btn--outline:hover {
  background: var(--dlx-surface);
  border-color: var(--dlx-line-strong);
}
.elementor .dlx-home.elementor-section .dlx-btn--ghost-light {
  background: rgba(250, 248, 245, .14);
  border-color: rgba(250, 248, 245, .7);
  color: var(--dlx-page) !important;
}
.elementor .dlx-home.elementor-section .dlx-btn--dark {
  min-height: 40px;
  padding: 0 18px !important;
  font-size: 13px;
}
.elementor .dlx-home.elementor-section .dlx-stars {
  color: var(--dlx-gold);
  letter-spacing: 1px;
}
.elementor .dlx-home.elementor-section .dlx-stars--off {
  color: var(--dlx-line-strong);
}

/* -------------------------------------------------------------------------
   3. Section 1 - bandeau d'annonces défilant
   ------------------------------------------------------------------------- */
@keyframes dlx-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
.elementor .dlx-home.dlx-marquee.elementor-section {
  background-color: var(--dlx-brown);
}
.elementor .dlx-home.dlx-marquee .dlx-marquee__viewport {
  height: 38px;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.elementor .dlx-home.dlx-marquee .dlx-marquee__track {
  display: flex;
  width: max-content;
  animation: dlx-marquee 28s linear infinite;
}
.elementor .dlx-home.dlx-marquee .dlx-marquee__viewport:hover .dlx-marquee__track {
  animation-play-state: paused;
}
.elementor .dlx-home.dlx-marquee .dlx-marquee__list {
  display: flex;
  gap: 56px;
  padding-right: 56px;
  flex: none;
}
.elementor .dlx-home.dlx-marquee .dlx-marquee__list li {
  font-family: var(--dlx-sans);
  font-weight: 500;
  font-size: 11.5px;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--dlx-page);
}

/* -------------------------------------------------------------------------
   4. Section 3 - hero
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-hero.elementor-section {
  position: relative;
  background-color: var(--dlx-placeholder);
}
.elementor .dlx-home.dlx-hero .dlx-hero__media,
.elementor .dlx-home.dlx-hero .dlx-hero__media > .elementor-widget-container,
.elementor .dlx-home.dlx-hero .elementor-row,
.elementor .dlx-home.dlx-hero .elementor-column,
.elementor .dlx-home.dlx-hero .elementor-column-wrap,
.elementor .dlx-home.dlx-hero .elementor-widget-wrap {
  position: static;
}
.elementor .dlx-home.dlx-hero > .elementor-container {
  position: relative;
  min-height: 740px;
}
/* Ordinateur et tablette paysage : le hero suit la hauteur de la fenêtre pour que le bandeau défilant (38px)
   et la réassurance (82px) se terminent exactement au bas de l'écran, sans bande vide (demande d'Iskander du
   30/09). Bornes : 640px pour que le texte tienne sous l'en-tête, 1080px sur les très grands écrans. */
@media (min-width: 901px) {
  .elementor .dlx-home.dlx-hero > .elementor-container {
    min-height: clamp(640px, calc(100vh - 120px), 1080px);
  }
}
.elementor .dlx-home.dlx-hero .dlx-hero__img {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center 30%;
}
/* Voile sombre retiré le 30/09 à la demande d'Iskander (ordinateur et mobile) : la photo est servie telle quelle,
   la lisibilité du texte repose sur une ombre portée légère. */
.elementor .dlx-home.dlx-hero .dlx-hero__shade {
  display: none;
}
.elementor .dlx-home.dlx-hero .elementor-widget:not(.dlx-hero__media) {
  text-shadow: 0 1px 2px rgba(20, 14, 10, .8), 0 0 12px rgba(20, 14, 10, .6), 0 0 28px rgba(20, 14, 10, .45);
}
.elementor .dlx-home.dlx-hero .dlx-btn {
  text-shadow: none;
}
.elementor .dlx-home.dlx-hero .elementor-column-wrap {
  padding-left: var(--dlx-gutter);
  padding-right: var(--dlx-gutter);
}
/* Chaque widget occupe sa propre ligne ; la largeur de lecture est portée par son conteneur. */
.elementor .dlx-home.dlx-hero .elementor-widget:not(.dlx-hero__media) {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: none;
  color: var(--dlx-page);
}
.elementor .dlx-home.dlx-hero .elementor-widget:not(.dlx-hero__media) > .elementor-widget-container {
  max-width: 560px;
}
.elementor .dlx-home.dlx-hero .dlx-hero__badge {
  display: inline-flex;
  align-items: center;
  padding: 7px 16px;
  border: 1px solid rgba(250, 248, 245, .45);
  border-radius: 999px;
  font-weight: 600;
  font-size: 11.5px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--dlx-page);
}
.elementor .dlx-home.dlx-hero .dlx-hero__title {
  margin: 18px 0 0;
  font-family: var(--dlx-serif);
  font-weight: 400;
  font-size: 84px;
  line-height: .98;
  color: var(--dlx-page);
}
.elementor .dlx-home.dlx-hero .dlx-hero__text {
  margin-top: 18px;
  max-width: 460px;
  font-size: 17px;
  line-height: 1.6;
  color: rgba(250, 248, 245, .9);
}
.elementor .dlx-home.dlx-hero .dlx-hero__cta {
  display: flex;
  gap: 12px;
  margin-top: 28px;
}
.elementor .dlx-home.dlx-hero .dlx-btn {
  min-height: 52px;
}
/* Mention d'opération sous les boutons (ex. livraison offerte dès 40 €, 09 au 12/10/2026), générée seulement
   pendant l'opération par generer_template.php */
.elementor .dlx-home.dlx-hero .dlx-hero__promo {
  display: inline-block; /* pas de flex : le texte contient des morceaux masqués sur mobile, un flex les espacerait */
  margin: 18px 0 0;
  padding: 8px 14px 8px 12px;
  border-radius: 999px;
  background: rgba(26, 21, 18, .42);
  color: var(--dlx-page);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.elementor .dlx-home.dlx-hero .dlx-hero__promo::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 9px 1px 0;
  border-radius: 50%;
  background: #9C3B23;
  vertical-align: middle;
}
.elementor .dlx-home.dlx-hero .dlx-rating-line {
  margin-top: 22px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: rgba(250, 248, 245, .9);
}

/* -------------------------------------------------------------------------
   5. Section 4 - réassurance (desktop) / filtres rapides (mobile)
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-trust.elementor-section {
  background-color: var(--dlx-surface);
}
.elementor .dlx-home.dlx-trust .dlx-trust__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  padding: 20px 0;
}
.elementor .dlx-home.dlx-trust .dlx-trust__title {
  font-weight: 600;
  font-size: 13.5px;
  color: var(--dlx-ink);
}
.elementor .dlx-home.dlx-trust .dlx-trust__sub {
  font-size: 13px;
  color: var(--dlx-muted);
}
.elementor .dlx-home.dlx-trust .dlx-quickfilters {
  display: none;
}

/* -------------------------------------------------------------------------
   6. Section 5 - univers
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-univers.elementor-section {
  padding-top: 56px;
}
.elementor .dlx-home .dlx-univers__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.elementor .dlx-home .dlx-tile {
  position: relative;
  display: block;
  height: 560px;
  overflow: hidden;
  border-radius: var(--dlx-radius);
  background: var(--dlx-placeholder);
}
.elementor .dlx-home .dlx-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .9s ease;
}
.elementor .dlx-home .dlx-tile picture {
  display: block;
  width: 100%;
  height: 100%;
}
.elementor .dlx-home .dlx-tile:hover img {
  transform: scale(1.04);
}
.elementor .dlx-home .dlx-tile__body {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  color: var(--dlx-page);
}
.elementor .dlx-home .dlx-tile__title {
  margin: 0;
  font-family: var(--dlx-serif);
  font-weight: 400;
  font-size: 40px;
  line-height: 1.05;
  color: var(--dlx-page);
}
.elementor .dlx-home .dlx-tile__pill {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 18px;
  border-radius: 999px;
  background: var(--dlx-page);
  color: var(--dlx-ink);
  font-weight: 600;
  font-size: 13px;
}

/* -------------------------------------------------------------------------
   7. Section 6 - grille produits (widget Deeluxe)
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-products.elementor-section {
  padding-top: 64px;
}
.elementor .dlx-home .dlx-tabs {
  display: flex;
  gap: 8px;
}
.elementor .dlx-home .dlx-tab {
  min-height: 40px;
  padding: 0 20px;
  border: 1px solid var(--dlx-line-strong);
  border-radius: 999px;
  background: transparent;
  font-family: var(--dlx-sans);
  font-weight: 600;
  font-size: 13.5px;
  color: var(--dlx-ink);
  cursor: pointer;
}
.elementor .dlx-home .dlx-tab.is-active {
  background: var(--dlx-ink);
  border-color: var(--dlx-ink);
  color: var(--dlx-page);
}
.elementor .dlx-home .dlx-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--dlx-gap);
}
.elementor .dlx-home .dlx-card {
  position: relative;
}
.elementor .dlx-home .dlx-card__media {
  position: relative;
  overflow: hidden;
  border-radius: var(--dlx-radius);
  background: var(--dlx-placeholder);
  aspect-ratio: 3 / 4;
}
.elementor .dlx-home .dlx-card__link {
  display: block;
  height: 100%;
}
.elementor .dlx-home .dlx-card__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.elementor .dlx-home .dlx-card__img--second {
  opacity: 0;
  transition: opacity .45s ease;
}
.elementor .dlx-home .dlx-card:hover .dlx-card__img--second,
.elementor .dlx-home .dlx-card:focus-within .dlx-card__img--second {
  opacity: 1;
}
.elementor .dlx-home .dlx-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  padding: 5px 10px;
  border-radius: 999px;
  background: var(--dlx-page);
  color: var(--dlx-ink);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: .04em;
}
.elementor .dlx-home .dlx-badge--sale {
  background: var(--dlx-promo);
  color: var(--dlx-page);
}
.elementor .dlx-home .dlx-quickadd {
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 10px;
  z-index: 3;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(250, 248, 245, .96);
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .28s ease, transform .28s ease;
}
.elementor .dlx-home .dlx-card:hover .dlx-quickadd,
.elementor .dlx-home .dlx-card:focus-within .dlx-quickadd {
  opacity: 1;
  transform: translateY(0);
}
.elementor .dlx-home .dlx-quickadd__title {
  font-weight: 600;
  font-size: 11px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--dlx-muted);
}
.elementor .dlx-home .dlx-quickadd__list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}
.elementor .dlx-home .dlx-quickadd__size {
  min-width: 40px;
  min-height: 34px;
  padding: 0 8px;
  border: 1px solid var(--dlx-line-strong);
  border-radius: 8px;
  background: #fff;
  font-family: var(--dlx-sans);
  font-weight: 600;
  font-size: 12.5px;
  color: var(--dlx-ink);
  cursor: pointer;
}
.elementor .dlx-home .dlx-quickadd__size:hover,
.elementor .dlx-home .dlx-quickadd__size:focus-visible {
  background: var(--dlx-ink);
  border-color: var(--dlx-ink);
  color: var(--dlx-page);
}
.elementor .dlx-home .dlx-card__info {
  padding-top: 12px;
}
.elementor .dlx-home .dlx-card__name {
  margin: 0;
  font-family: var(--dlx-sans);
  font-weight: 600;
  font-size: 14.5px;
  line-height: 1.3;
  letter-spacing: 0;
  text-transform: none;
  color: var(--dlx-ink);
}
.elementor .dlx-home .dlx-card__price {
  margin-top: 2px;
  font-weight: 600;
  font-size: 14.5px;
}
.elementor .dlx-home .dlx-card__price-old {
  margin-right: 6px;
  color: var(--dlx-muted);
  font-weight: 400;
  font-size: 13px;
  text-decoration: line-through;
}
.elementor .dlx-home .dlx-card__price-now {
  color: var(--dlx-ink);
}
.elementor .dlx-home .dlx-card--sale .dlx-card__price-now {
  color: var(--dlx-promo);
}
.elementor .dlx-home .dlx-card__cat {
  margin-top: 2px;
  font-size: 13px;
  color: var(--dlx-muted);
}
.elementor .dlx-home .dlx-card__colors {
  display: flex;
  gap: 6px;
  margin-top: 10px;
}
.elementor .dlx-home .dlx-swatch {
  width: 14px;
  height: 14px;
  border-radius: 999px;
  border: 1px solid var(--dlx-line-strong);
}
.elementor .dlx-home .dlx-card__rating {
  margin-top: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  color: var(--dlx-muted);
}
.elementor .dlx-home .dlx-grid__link {
  white-space: nowrap;
}

/* -------------------------------------------------------------------------
   8. Section 7 - bloc denim
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-denim.elementor-section {
  padding-top: 64px;
}
.elementor .dlx-home .dlx-denim__grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  min-height: 660px;
  border-radius: var(--dlx-radius-lg);
  overflow: hidden;
}
.elementor .dlx-home .dlx-denim__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 56px 44px;
  background: var(--dlx-denim);
  color: var(--dlx-page);
}
.elementor .dlx-home .dlx-denim__text .dlx-label {
  color: var(--dlx-gold-soft);
}
.elementor .dlx-home .dlx-denim__text .dlx-h2 {
  font-size: 58px;
  line-height: 1.02;
  color: var(--dlx-page);
}
.elementor .dlx-home .dlx-denim__text .dlx-text {
  margin-top: 18px;
  color: rgba(250, 248, 245, .78);
}
.elementor .dlx-home .dlx-denim__text .dlx-btn {
  align-self: flex-start;
  margin-top: 28px;
}
.elementor .dlx-home .dlx-denim__photo {
  position: relative;
  background: var(--dlx-placeholder);
}
.elementor .dlx-home .dlx-denim__photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* -------------------------------------------------------------------------
   9. Section 8 - shop the look (widget Deeluxe)
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-stl-section.elementor-section {
  padding-top: 64px;
}
.elementor .dlx-home .dlx-stl {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start;
}
.elementor .dlx-home .dlx-stl__media {
  position: relative;
  margin: 0;
  min-height: 720px;
  border-radius: var(--dlx-radius);
  overflow: hidden;
  background: var(--dlx-placeholder);
}
.elementor .dlx-home .dlx-stl__media img {
  width: 100%;
  height: 100%;
  min-height: 720px;
  object-fit: cover;
}
.elementor .dlx-home .dlx-hotspot {
  position: absolute;
  width: 32px;
  height: 32px;
  margin: -16px 0 0 -16px;
  border: 1.5px solid #fff;
  border-radius: 999px;
  background: rgba(250, 248, 245, .92);
  color: var(--dlx-ink);
  font-size: 16px;
  line-height: 1;
  box-shadow: 0 4px 14px rgba(26, 21, 18, .28);
  cursor: pointer;
}
.elementor .dlx-home .dlx-hotspot.is-active,
.elementor .dlx-home .dlx-hotspot:hover {
  background: var(--dlx-ink);
  color: var(--dlx-page);
}
.elementor .dlx-home .dlx-stl__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 24px;
}
.elementor .dlx-home .dlx-stl__item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px;
  border: 1px solid var(--dlx-line);
  border-radius: var(--dlx-radius);
  background: #fff;
}
.elementor .dlx-home .dlx-stl__item.is-active {
  border-color: var(--dlx-ink);
  background: var(--dlx-surface);
}
.elementor .dlx-home .dlx-stl__thumb {
  flex: none;
  width: 64px;
  height: 84px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--dlx-placeholder);
}
.elementor .dlx-home .dlx-stl__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.elementor .dlx-home .dlx-stl__info {
  flex: 1;
  min-width: 0;
}
.elementor .dlx-home .dlx-stl__name {
  margin: 0;
  font-family: var(--dlx-sans);
  font-weight: 600;
  font-size: 14.5px;
  text-transform: none;
  letter-spacing: 0;
  color: var(--dlx-ink);
}
.elementor .dlx-home .dlx-stl__cat,
.elementor .dlx-home .dlx-stl__price {
  font-size: 13px;
  color: var(--dlx-muted);
}
.elementor .dlx-home .dlx-stl__price {
  font-weight: 600;
  color: var(--dlx-ink);
}
.elementor .dlx-home .dlx-stl__panel .dlx-btn--outline {
  margin-top: 18px;
}

/* Fiche de pièce : vignette à gauche, infos puis choix de taille + bouton, message sous le tout */
.elementor .dlx-home .dlx-stl__item {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  grid-template-areas: "thumb info" "thumb buy" "status status";
  column-gap: 14px;
  row-gap: 10px;
  align-items: center;
}
.elementor .dlx-home .dlx-stl__thumb {
  grid-area: thumb;
  align-self: start;
}
.elementor .dlx-home .dlx-stl__info {
  grid-area: info;
}
.elementor .dlx-home .dlx-stl__buy {
  grid-area: buy;
  display: flex;
  gap: 8px;
}
.elementor .dlx-home .dlx-stl__buy .dlx-btn {
  flex: none;
}
.elementor .dlx-home select.dlx-stl__size {
  flex: 1 1 auto;
  min-width: 0;
  height: 40px;
  padding: 0 34px 0 14px;
  border: 1px solid var(--dlx-line-strong);
  border-radius: 999px;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231A1512' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 14px center;
  color: var(--dlx-ink);
  font-family: var(--dlx-sans);
  font-size: 13px;
  line-height: 1.2;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
}
.elementor .dlx-home select.dlx-stl__size:focus-visible {
  outline: 2px solid var(--dlx-leather);
  outline-offset: 2px;
}
.elementor .dlx-home select.dlx-stl__size.is-missing {
  border-color: var(--dlx-promo);
  box-shadow: 0 0 0 1px var(--dlx-promo);
}
.elementor .dlx-home .dlx-stl__status {
  grid-area: status;
  font-size: 12.5px;
  line-height: 1.4;
  color: var(--dlx-leather);
}
.elementor .dlx-home .dlx-stl__status:empty {
  display: none;
}
.elementor .dlx-home .dlx-stl__status.is-error {
  color: var(--dlx-promo);
}
.elementor .dlx-home .dlx-stl__status--bundle {
  margin-top: 10px;
}

/* -------------------------------------------------------------------------
   10. Section 9 - lookbook
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-lookbook.elementor-section {
  padding-top: 64px;
}
.elementor .dlx-home .dlx-lookbook__list {
  display: flex;
  gap: 16px;
}
.elementor .dlx-home .dlx-lookbook__item {
  position: relative;
  flex: 1;
  height: 520px;
  border-radius: var(--dlx-radius);
  overflow: hidden;
  background: var(--dlx-placeholder);
}
.elementor .dlx-home .dlx-lookbook__item:first-child {
  flex: 1.3;
}
.elementor .dlx-home .dlx-lookbook__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .9s ease;
}
.elementor .dlx-home .dlx-lookbook__item:hover img {
  transform: scale(1.04);
}

/* -------------------------------------------------------------------------
   11. Section 10 - marque
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-brand.elementor-section {
  padding-top: 64px;
}
.elementor .dlx-home .dlx-brand__grid {
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: 40px;
  align-items: center;
  padding: 44px;
  border-radius: var(--dlx-radius-lg);
  background: var(--dlx-surface);
}
.elementor .dlx-home .dlx-brand__text .dlx-h2 {
  font-size: 50px;
  line-height: 1.05;
}
.elementor .dlx-home .dlx-brand__text .dlx-text {
  margin-top: 16px;
}
.elementor .dlx-home .dlx-brand__figures {
  display: flex;
  gap: 32px;
  margin-top: 28px;
}
.elementor .dlx-home .dlx-brand__figure strong {
  display: block;
  font-family: var(--dlx-serif);
  font-weight: 400;
  font-size: 34px;
  line-height: 1;
  color: var(--dlx-ink);
}
.elementor .dlx-home .dlx-brand__figure span {
  font-size: 13px;
  color: var(--dlx-muted);
}
.elementor .dlx-home .dlx-brand__media {
  height: 100%;
  min-height: 320px;
  border-radius: var(--dlx-radius);
  overflow: hidden;
  background: var(--dlx-placeholder);
}
.elementor .dlx-home .dlx-brand__media img {
  width: 100%;
  height: 100%;
  min-height: 320px;
  object-fit: cover;
}

/* -------------------------------------------------------------------------
   12. Section 11 - avis clients (widget Deeluxe)
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-reviews-section.elementor-section {
  padding-top: 64px;
}
.elementor .dlx-home .dlx-reviews__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--dlx-gap);
}
.elementor .dlx-home .dlx-review {
  padding: 28px;
  border-radius: 14px;
  background: var(--dlx-surface);
}
.elementor .dlx-home .dlx-review__text {
  margin: 12px 0 0;
  padding: 0;
  border: 0;
  font-size: 15px;
  line-height: 1.6;
  color: var(--dlx-ink);
  quotes: none;
}
.elementor .dlx-home .dlx-review__meta {
  margin-top: 16px;
  font-weight: 600;
  font-size: 13px;
  color: var(--dlx-ink);
}
.elementor .dlx-home .dlx-review__meta span {
  display: block;
  font-weight: 400;
  color: var(--dlx-muted);
}
.elementor .dlx-home .dlx-rating-line {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--dlx-muted);
}
.elementor .dlx-home .dlx-rating-line__count {
  color: var(--dlx-muted);
}

/* -------------------------------------------------------------------------
   13. Section 12 - community
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-community.elementor-section {
  padding-top: 64px;
}
/* Titre #DEELUXELOVER cliquable vers Instagram : garde l'apparence du titre */
/* le thème impose a { font-size: .875rem } : on reprend la typo du titre */
.elementor .dlx-home a.dlx-community__tag {
  font: inherit;
  letter-spacing: inherit;
  color: inherit;
  text-decoration: none;
}
.elementor .dlx-home a.dlx-community__tag:hover,
.elementor .dlx-home a.dlx-community__tag:focus-visible {
  color: var(--dlx-leather);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.elementor .dlx-home .dlx-community__list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
}
.elementor .dlx-home .dlx-community__item {
  position: relative;
  height: 300px;
  border-radius: var(--dlx-radius);
  overflow: hidden;
  background: var(--dlx-placeholder);
}
.elementor .dlx-home .dlx-community__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .9s ease;
}
.elementor .dlx-home .dlx-community__item:hover img {
  transform: scale(1.04);
}

/* -------------------------------------------------------------------------
   14. Section 13 - newsletter
   ------------------------------------------------------------------------- */
.elementor .dlx-home.dlx-newsletter.elementor-section {
  padding-top: 64px;
  padding-bottom: 64px;
}
.elementor .dlx-home.dlx-newsletter > .elementor-container > .elementor-row {
  align-items: center;
  gap: 48px;
  padding: 48px;
  border-radius: var(--dlx-radius-lg);
  background: var(--dlx-brown);
  color: var(--dlx-page);
}
.elementor .dlx-home.dlx-newsletter .elementor-column-wrap {
  justify-content: center;
}
.elementor .dlx-home.dlx-newsletter .dlx-label {
  color: var(--dlx-gold-soft);
}
.elementor .dlx-home.dlx-newsletter .dlx-h2 {
  font-size: 48px;
  line-height: 1.05;
  color: var(--dlx-page);
}
.elementor .dlx-home.dlx-newsletter .dlx-text {
  margin-top: 14px;
  color: rgba(250, 248, 245, .78);
}
.elementor .dlx-home.dlx-newsletter .elementor-widget-email-subscription .elementor-field-type-subscribe {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.elementor .dlx-home.dlx-newsletter .elementor-widget-email-subscription input[type="email"] {
  flex: 1 1 220px;
  width: auto;
  height: 52px;
  min-height: 52px;
  padding: 0 20px !important;
  border: 1px solid rgba(250, 248, 245, .3) !important;
  border-radius: 999px !important;
  background: rgba(250, 248, 245, .08) !important;
  color: var(--dlx-page) !important;
  font-family: var(--dlx-sans);
  font-size: 14.5px;
  box-shadow: none;
}
.elementor .dlx-home.dlx-newsletter .elementor-widget-email-subscription input[type="email"]::placeholder {
  color: rgba(250, 248, 245, .55);
  opacity: 1;
}
.elementor .dlx-home.dlx-newsletter .elementor-widget-email-subscription button.elementor-button {
  flex: none;
  min-height: 52px;
  padding: 0 26px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--dlx-page) !important;
  background-image: none !important;
  color: var(--dlx-ink) !important;
  font-family: var(--dlx-sans);
  font-weight: 600;
  font-size: 14px;
  text-transform: none;
  cursor: pointer;
}
.elementor .dlx-home.dlx-newsletter .elementor-widget-email-subscription button.elementor-button .elementor-button-text {
  color: inherit;
}
.elementor .dlx-home.dlx-newsletter .elementor-field-type-gdpr {
  order: 3;
  flex: 1 1 100%;
  margin-top: 4px;
}
.elementor .dlx-home.dlx-newsletter .elementor-field-type-gdpr,
.elementor .dlx-home.dlx-newsletter .elementor-field-type-gdpr * {
  font-size: 11.5px;
  line-height: 1.5;
  color: rgba(250, 248, 245, .72) !important;
}
.elementor .dlx-home.dlx-newsletter .elementor-field-type-gdpr input[type="checkbox"] {
  margin-right: 6px;
  accent-color: var(--dlx-gold-soft);
}
.elementor .dlx-home.dlx-newsletter .dlx-newsletter__legal {
  margin-top: 12px;
  font-size: 11.5px;
  line-height: 1.5;
  color: rgba(250, 248, 245, .6);
}

/* -------------------------------------------------------------------------
   15. Barre d'achat fixe (mobile) - le panier latéral est celui de l'OPC
   ------------------------------------------------------------------------- */
.dlx-stickybar {
  display: none;
}

/* -------------------------------------------------------------------------
   16. Tablette : empilement à 900px (Creative Elements n'empile qu'à 756px)
   ------------------------------------------------------------------------- */
@media (max-width: 1200px) {
  .elementor .dlx-home .dlx-cards {
    grid-template-columns: repeat(3, 1fr);
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__title {
    font-size: 64px;
  }
}

@media (max-width: 900px) {
  .dlx-home {
    --dlx-gutter: 16px;
    --dlx-gap: 10px;
  }
  .elementor .dlx-home.elementor-section > .elementor-container > .elementor-row {
    flex-wrap: wrap;
  }
  .elementor .dlx-home.elementor-section > .elementor-container > .elementor-row > .elementor-column {
    width: 100%;
  }
  .elementor .dlx-home.elementor-section .dlx-h2 {
    font-size: 30px;
  }
  .elementor .dlx-home .dlx-section-head {
    flex-wrap: wrap;
    gap: 12px;
  }
  .elementor .dlx-home.dlx-hero > .elementor-container {
    min-height: 600px;
  }
  .elementor .dlx-home.dlx-hero .elementor-column-wrap {
    justify-content: flex-end;
    padding-bottom: 28px;
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__title {
    font-size: 52px;
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__text {
    font-size: 14.5px;
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__cta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
  .elementor .dlx-home.dlx-hero .dlx-btn {
    min-height: 48px;
    padding: 0 14px !important;
    font-size: 13.5px;
  }
  .elementor .dlx-home.dlx-trust .dlx-trust__list {
    display: none;
  }
  .elementor .dlx-home.dlx-trust .dlx-quickfilters {
    display: flex;
    gap: 8px;
    padding: 14px 0;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .elementor .dlx-home.dlx-trust .dlx-quickfilters::-webkit-scrollbar {
    display: none;
  }
  .elementor .dlx-home.dlx-trust .dlx-quickfilters a {
    flex: none;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    padding: 0 16px;
    border: 1px solid var(--dlx-line-strong);
    border-radius: 999px;
    background: #fff;
    font-weight: 600;
    font-size: 13px;
    white-space: nowrap;
  }
  .elementor .dlx-home .dlx-univers__list {
    grid-template-columns: 1fr 1fr;
  }
  .elementor .dlx-home .dlx-tile {
    height: 280px;
  }
  .elementor .dlx-home .dlx-univers__list .dlx-univers__item--wide {
    grid-column: 1 / -1;
  }
  .elementor .dlx-home .dlx-univers__list .dlx-univers__item--wide .dlx-tile {
    height: 160px;
  }
  /* Bandeau Enfant : cadrage sur le visage */
  .elementor .dlx-home .dlx-univers__item--wide .dlx-tile img {
    object-position: center 8%;
  }
  .elementor .dlx-home .dlx-tile__title {
    font-size: 28px;
  }
  /* Deux tuiles par ligne : le titre et la pastille passent l'un sous l'autre */
  .elementor .dlx-home .dlx-tile__body {
    left: 16px;
    right: 16px;
    bottom: 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .elementor .dlx-home .dlx-tile__pill {
    min-height: 36px;
    padding: 0 14px;
    font-size: 12.5px;
  }
  .elementor .dlx-home .dlx-univers__item--wide .dlx-tile__body {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
  .elementor .dlx-home .dlx-grid__panel {
    margin: 0 calc(var(--dlx-gutter) * -1);
    padding: 0 var(--dlx-gutter);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .elementor .dlx-home .dlx-grid__panel::-webkit-scrollbar {
    display: none;
  }
  .elementor .dlx-home .dlx-cards {
    display: flex;
    gap: 10px;
  }
  .elementor .dlx-home .dlx-card {
    flex: 0 0 228px;
    scroll-snap-align: start;
  }
  .elementor .dlx-home .dlx-quickadd {
    opacity: 1;
    transform: none;
    position: static;
    margin-top: 8px;
    padding: 0;
    background: transparent;
  }
  .elementor .dlx-home .dlx-quickadd__title {
    display: none;
  }
  .elementor .dlx-home .dlx-denim__grid {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .elementor .dlx-home .dlx-denim__photo {
    height: 420px;
  }
  .elementor .dlx-home .dlx-denim__photo--second {
    display: none;
  }
  .elementor .dlx-home .dlx-denim__text {
    padding: 32px 20px;
  }
  .elementor .dlx-home .dlx-denim__text .dlx-h2 {
    font-size: 36px;
  }
  .elementor .dlx-home .dlx-stl {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .elementor .dlx-home .dlx-stl__media {
    min-height: 0;
    aspect-ratio: 3 / 4;
    max-height: 520px;
  }
  .elementor .dlx-home .dlx-stl__media img {
    min-height: 0;
    height: 100%;
  }
  .elementor .dlx-home .dlx-stl__list {
    flex-direction: row;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .elementor .dlx-home .dlx-stl__list::-webkit-scrollbar {
    display: none;
  }
  .elementor .dlx-home .dlx-stl__item {
    flex: 0 0 260px;
    scroll-snap-align: start;
  }
  .elementor .dlx-home.dlx-lookbook.elementor-section,
  .elementor .dlx-home.dlx-brand.elementor-section {
    display: none;
  }
  .elementor .dlx-home .dlx-reviews__list {
    display: flex;
    margin: 0 calc(var(--dlx-gutter) * -1);
    padding: 0 var(--dlx-gutter);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .elementor .dlx-home .dlx-reviews__list::-webkit-scrollbar {
    display: none;
  }
  .elementor .dlx-home .dlx-review {
    flex: 0 0 260px;
    scroll-snap-align: start;
  }
  .elementor .dlx-home .dlx-community__list {
    display: flex;
    margin: 0 calc(var(--dlx-gutter) * -1);
    padding: 0 var(--dlx-gutter);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .elementor .dlx-home .dlx-community__list::-webkit-scrollbar {
    display: none;
  }
  .elementor .dlx-home .dlx-community__item {
    flex: 0 0 180px;
    height: 230px;
    scroll-snap-align: start;
  }
  .elementor .dlx-home .dlx-newsletter__box {
    grid-template-columns: 1fr;
    gap: 22px;
    padding: 28px 20px;
    border-radius: 16px;
  }
  .elementor .dlx-home.dlx-newsletter .dlx-h2 {
    font-size: 32px;
  }
  .dlx-stickybar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9000;
    display: flex;
    align-items: center;
    gap: 12px;
    height: 72px;
    padding: 0 16px;
    background: rgba(250, 248, 245, .96);
    backdrop-filter: blur(8px);
    border-top: 1px solid var(--dlx-line, #E7E0D6);
    font-family: var(--dlx-sans, sans-serif);
  }
  .dlx-stickybar__cta {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    border-radius: 999px;
    background: var(--dlx-ink, #1A1512);
    color: var(--dlx-page, #FAF8F5);
    font-weight: 600;
    font-size: 14px;
  }
  .dlx-stickybar__cart {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 48px;
    padding: 0 16px;
    border: 1px solid var(--dlx-line-strong, #DDD5C9);
    border-radius: 999px;
    background: #fff;
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
  }
}

/* Téléphones étroits */
@media (max-width: 480px) {
  .elementor .dlx-home .dlx-card {
    flex-basis: 200px;
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__title {
    font-size: 46px;
  }
}

/* -------------------------------------------------------------------------
   17. Accessibilité : mouvement réduit
   ------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .elementor .dlx-home .dlx-marquee__track {
    animation: none;
  }
  .elementor .dlx-home .dlx-tile img,
  .elementor .dlx-home .dlx-lookbook__item img,
  .elementor .dlx-home .dlx-community__item img,
  .elementor .dlx-home .dlx-card__img--second,
  .elementor .dlx-home .dlx-quickadd {
    transition: none;
  }
  .elementor .dlx-home .dlx-tile:hover img,
  .elementor .dlx-home .dlx-lookbook__item:hover img,
  .elementor .dlx-home .dlx-community__item:hover img {
    transform: none;
  }
}

/* =========================================================================
   18. Corrections mobile (revue du 18/09) et conformité maquette 2b
   ========================================================================= */

/* Le thème force les titres en majuscules : on rétablit la casse de la maquette */
.elementor .dlx-home.elementor-section h1,
.elementor .dlx-home.elementor-section h2,
.elementor .dlx-home.elementor-section h3,
.elementor .dlx-home.elementor-section .dlx-hero__title,
.elementor .dlx-home.elementor-section .dlx-tile__title {
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* Variantes de boutons : même poids que la règle de base "a.dlx-btn" pour qu'elles s'appliquent */
.elementor .dlx-home.elementor-section a.dlx-btn--light,
.elementor .dlx-home.elementor-section button.dlx-btn--light {
  background: var(--dlx-page);
  border-color: var(--dlx-page);
  color: var(--dlx-ink) !important;
}
.elementor .dlx-home.elementor-section a.dlx-btn--ghost-light {
  background: rgba(250, 248, 245, .14);
  border-color: rgba(250, 248, 245, .7);
  color: var(--dlx-page) !important;
}
.elementor .dlx-home.elementor-section a.dlx-btn--outline,
.elementor .dlx-home.elementor-section button.dlx-btn--outline {
  background: transparent;
  border-color: var(--dlx-line-strong);
  color: var(--dlx-ink) !important;
}
.elementor .dlx-home.elementor-section .dlx-btn {
  white-space: nowrap;
  text-align: center;
}

/* Hero desktop : bloc de texte en bas des 740px (demande du 18/09/2026) */
.elementor .dlx-home.dlx-hero > .elementor-container {
  display: flex;
  align-items: flex-end;
}
.elementor .dlx-home.dlx-hero > .elementor-container > .elementor-row {
  align-items: flex-end;
}
@media (min-width: 901px) {
  .elementor .dlx-home.dlx-hero .elementor-column-wrap {
    padding-bottom: 64px;
  }
  /* Photo calée en haut : la tête du mannequin ne touche plus le menu */
  .elementor .dlx-home.dlx-hero .dlx-hero__img {
    object-position: center top;
  }
}

/* Note du hero : lisible sur la photo */
.elementor .dlx-home.dlx-hero .dlx-rating-line,
.elementor .dlx-home.dlx-hero .dlx-rating-line__count {
  color: rgba(250, 248, 245, .82);
}

/* Badges produit en capitales espacées, comme la maquette */
.elementor .dlx-home .dlx-badge {
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 10.5px;
}

/* Sous-titres des sections lookbook et community */
.elementor .dlx-home .dlx-section-head + .dlx-text {
  margin: -14px 0 18px;
}

/* Filtre rapide actif */
.elementor .dlx-home.dlx-trust .dlx-quickfilters a.is-active {
  background: var(--dlx-ink);
  border-color: var(--dlx-ink);
  color: var(--dlx-page) !important;
}

/* Shop the look : la liste qui défile ne doit pas élargir la grille */
.elementor .dlx-home .dlx-stl {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.elementor .dlx-home .dlx-stl__panel,
.elementor .dlx-home .dlx-stl__media {
  min-width: 0;
}

/* Barre d'achat fixe : texte du bouton lisible malgré la couleur des liens du thème */
.dlx-stickybar a.dlx-stickybar__cta {
  color: var(--dlx-page, #FAF8F5) !important;
  text-decoration: none;
}
.dlx-stickybar a.dlx-stickybar__cart {
  color: var(--dlx-ink, #1A1512);
  font-family: var(--dlx-sans, sans-serif);
}

@media (max-width: 900px) {
  .elementor .dlx-home.elementor-section .dlx-hide-mobile {
    display: none;
  }
  /* Hero 2b : contenu en bas, sans chapô ni note, 2 boutons en grille */
  .elementor .dlx-home.dlx-hero > .elementor-container,
  .elementor .dlx-home.dlx-hero > .elementor-container > .elementor-row {
    align-items: flex-end;
  }
  .elementor .dlx-home.dlx-hero .elementor-column {
    align-self: flex-end;
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__text,
  .elementor .dlx-home.dlx-hero .elementor-widget-dlx-reviews {
    display: none;
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__badge {
    padding: 6px 12px;
    font-size: 10.5px;
    border-color: transparent;
    background: rgba(26, 21, 18, .45);
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__title {
    margin-top: 12px;
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__cta {
    margin-top: 20px;
  }
  .elementor .dlx-home.dlx-hero .dlx-hero__promo {
    margin-top: 12px;
    padding: 6px 11px 6px 10px;
    font-size: 10.5px;
  }
  .elementor .dlx-home.dlx-hero a.dlx-btn {
    width: 100%;
    min-height: 48px;
    padding: 0 12px !important;
    font-size: 14px;
  }

  /* Denim 2b : la photo passe avant le texte */
  .elementor .dlx-home .dlx-denim__photo {
    order: -1;
  }

  /* Univers 2b : titre seul, pas de pastille */
  .elementor .dlx-home .dlx-tile__pill {
    display: none;
  }

  /* Carrousel produits : alignement sur la gouttière et cartes de 228px */
  .elementor .dlx-home .dlx-grid__panel {
    padding-left: var(--dlx-gutter) !important;
    padding-right: var(--dlx-gutter) !important;
    scroll-padding-left: var(--dlx-gutter);
  }
  .elementor .dlx-home .dlx-card {
    flex: 0 0 228px;
  }
  .elementor .dlx-home .dlx-quickadd {
    display: none;
  }

  /* Shop the look : une colonne, fiches qui défilent sans élargir la page */
  .elementor .dlx-home .dlx-stl {
    grid-template-columns: minmax(0, 1fr);
  }
  .elementor .dlx-home .dlx-stl__item {
    flex: 0 0 280px;
  }

  /* Newsletter : marges intérieures resserrées, bouton sur la même ligne si la place le permet */
  .elementor .dlx-home.dlx-newsletter .elementor-element-populated,
  .elementor .dlx-home.dlx-newsletter .elementor-column-wrap {
    padding: 0 !important;
  }
  .elementor .dlx-home.dlx-newsletter > .elementor-container > .elementor-row {
    padding: 28px 20px;
  }
  .elementor .dlx-home.dlx-newsletter .elementor-widget-email-subscription input[type="email"] {
    flex: 1 1 160px;
  }

  /* La barre d'achat fixe ne doit pas masquer le bas de page */
  body.dlx-has-stickybar {
    padding-bottom: 72px;
  }
}

@media (max-width: 480px) {
  .elementor .dlx-home .dlx-card {
    flex-basis: 228px;
  }
}

/* =========================================================================
   19. Retours du 18/09 : H1 discret, newsletter équilibrée
   ========================================================================= */

/* H1 de référencement : présent, lisible, mais discret */
.elementor .dlx-home.dlx-hero .dlx-hero__seo {
  margin: 0 0 14px;
  font-family: var(--dlx-sans);
  font-weight: 500;
  font-size: 12px;
  line-height: 1.4;
  letter-spacing: .02em;
  text-transform: none !important;
  color: rgba(250, 248, 245, .72);
}

/* Newsletter : sur-titre et titre de même largeur */
.elementor .dlx-home.dlx-newsletter .dlx-label {
  font-size: 26px;
  letter-spacing: .12em;
  line-height: 1.2;
  margin-bottom: 8px;
}
.elementor .dlx-home.dlx-newsletter .dlx-h2 {
  font-size: 38px;
  line-height: 1.1;
}

@media (max-width: 900px) {
  .elementor .dlx-home.dlx-hero .dlx-hero__seo {
    max-width: 240px;
    font-size: 11px;
    margin-bottom: 10px;
  }
  .elementor .dlx-home.dlx-newsletter .dlx-label {
    font-size: 20px;
  }
  .elementor .dlx-home.dlx-newsletter .dlx-h2 {
    font-size: 29px;
  }
}

/* =========================================================================
   20. Denim, marque et community en pleine largeur d'écran (desktop)
   Les textes restent alignés sur la grille de 1440px.
   ========================================================================= */
.dlx-home {
  --dlx-edge: max(var(--dlx-gutter), calc((100vw - 1440px) / 2 + var(--dlx-gutter)));
}
@media (min-width: 901px) {
  .elementor .dlx-home.dlx-denim .dlx-denim__grid,
  .elementor .dlx-home.dlx-brand .dlx-brand__grid {
    border-radius: 0;
  }
  /* Colonne texte = marge de la grille + 440px de contenu ; les deux photos se partagent le reste */
  .elementor .dlx-home.dlx-denim .dlx-denim__grid {
    grid-template-columns: calc(var(--dlx-edge) + 440px) 1fr 1fr;
  }
  .elementor .dlx-home.dlx-denim .dlx-denim__text {
    padding-left: var(--dlx-edge);
  }
  .elementor .dlx-home.dlx-brand .dlx-brand__grid {
    padding: 64px var(--dlx-edge);
  }
  .elementor .dlx-home.dlx-community .dlx-section-head,
  .elementor .dlx-home.dlx-community .dlx-text {
    padding-left: var(--dlx-edge);
    padding-right: var(--dlx-edge);
  }
  .elementor .dlx-home.dlx-community .dlx-community__list {
    padding: 0 8px;
  }
}
/* Mobile : on garde la mise en page validée (gouttières et coins arrondis) */
@media (max-width: 900px) {
  .elementor .dlx-home.dlx-fullbleed.elementor-section > .elementor-container {
    padding-left: var(--dlx-gutter);
    padding-right: var(--dlx-gutter);
  }
}
/* Le CSS de Creative Elements est gardé dans le fichier combiné du thème : une ancienne largeur (1440px)
   peut y survivre après une modification. Ces blocs sont toujours en pleine largeur. */
.elementor .dlx-home.dlx-fullbleed.elementor-section > .elementor-container {
  max-width: none !important;
}

/* =========================================================================
   21. Retours mobile du 18/09 (2) : réassurance sous le hero, pleine largeur
   ========================================================================= */

/* Page d'aperçu Creative Elements uniquement : son conteneur ajoute 15px de chaque côté.
   Sur la home (#index), ce conteneur est déjà à 0 : aucun effet. */
body#module-creativeelements-preview #wrapper .container {
  padding-left: 0;
  padding-right: 0;
}
body#module-creativeelements-preview #wrapper .breadcrumb,
body#module-creativeelements-preview #wrapper nav[data-depth] {
  padding-left: 16px;
  padding-right: 16px;
}

@media (max-width: 900px) {
  /* Réassurance en 2 x 2 à la place des filtres rapides */
  .elementor .dlx-home.dlx-trust .dlx-trust__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 16px;
    padding: 16px 0;
  }
  .elementor .dlx-home.dlx-trust .dlx-trust__title {
    font-size: 12.5px;
    line-height: 1.3;
  }
  .elementor .dlx-home.dlx-trust .dlx-trust__sub {
    font-size: 11.5px;
    line-height: 1.4;
  }
}

/* =========================================================================
   Corrections de l'audit du 19/09/2026
   ========================================================================= */

/* Shop the look : la photo garde toujours son ratio 3:4, sans recadrage,
   pour que les repères (en % de l'image) restent sur les bons vêtements */
.elementor .dlx-home .dlx-stl__media {
  min-height: 0;
  aspect-ratio: 3 / 4;
}
.elementor .dlx-home .dlx-stl__media img,
.elementor .dlx-home .dlx-stl__media picture {
  display: block;
  min-height: 0;
  width: 100%;
  height: 100%;
}

/* Bloc Marque : la remise à zéro des listes annulait l'écart avant les chiffres */
.elementor .dlx-home.elementor-section ul.dlx-brand__figures {
  margin-top: 28px;
  margin-bottom: 4px;
}

@media (min-width: 901px) {
  /* Newsletter : sous 1024px, Creative Elements laisse passer la 2e colonne à la ligne */
  .elementor .dlx-home.dlx-newsletter > .elementor-container > .elementor-row {
    flex-wrap: nowrap;
  }
  .elementor .dlx-home.dlx-newsletter > .elementor-container > .elementor-row > .elementor-column {
    flex: 1 1 0;
    min-width: 0;
  }
  /* Grille produits : 4 colonnes jusqu'à 901px (en 3 colonnes, 8 produits laissaient un trou) */
  .elementor .dlx-home .dlx-cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Tablette : Shop the look sur 2 colonnes (photo à gauche, pièces à droite) au lieu d'une photo seule sur la moitié gauche */
@media (min-width: 601px) and (max-width: 900px) {
  .elementor .dlx-home .dlx-stl {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 24px;
  }
  .elementor .dlx-home .dlx-stl__media {
    max-height: none;
  }
  .elementor .dlx-home .dlx-stl__list {
    flex-direction: column;
    overflow: visible;
  }
  .elementor .dlx-home .dlx-stl__item {
    flex: none;
  }
}

@media (max-width: 900px) {
  /* Barre d'achat fixe : le thème fait défiler <main> et non <body>, la réserve se met donc sous le footer */
  body.dlx-has-stickybar #footer {
    padding-bottom: 72px;
  }
  /* La pastille Axeptio (bas gauche) ne recouvre plus le bouton "Acheter la collection" */
  body.dlx-has-stickybar:has(#axeptio_overlay) .dlx-stickybar {
    padding-left: 76px;
  }
  /* Cibles tactiles : zone cliquable de 44px sans changer la mise en page */
  .elementor .dlx-home.elementor-section a.dlx-link {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding-bottom: 0;
    border-bottom: 0;
    text-decoration: underline;
    text-decoration-color: var(--dlx-line-strong);
    text-underline-offset: 4px;
  }
  .elementor .dlx-home .dlx-card__name a,
  .elementor .dlx-home .dlx-stl__name a {
    display: inline-block;
    padding: 13px 0;
    margin: -13px 0;
  }
}

/* Bloc #DEELUXELOVER : photos livrées en paysage le 22/09/2026, affichées sans recadrage */
.elementor .dlx-home .dlx-community__item {
  height: auto;
  aspect-ratio: 4 / 3;
}
@media (max-width: 900px) {
  .elementor .dlx-home .dlx-community__item {
    flex: 0 0 240px;
    height: auto;
  }
}

/* Choix de la couleur (22/09/2026) : pastilles cliquables sur les cartes, liste déroulante dans le Shop the look */
.elementor .dlx-home button.dlx-swatch {
  display: block;
  width: 14px;
  height: 14px;
  padding: 0;
  border: 1px solid rgba(26, 21, 18, .18);
  border-radius: 999px;
  cursor: pointer;
  transition: box-shadow .15s ease, transform .15s ease;
}
.elementor .dlx-home button.dlx-swatch:hover {
  transform: scale(1.12);
}
.elementor .dlx-home button.dlx-swatch[aria-pressed="true"] {
  box-shadow: 0 0 0 1.5px var(--dlx-page), 0 0 0 3px var(--dlx-ink);
}
.elementor .dlx-home button.dlx-swatch:focus-visible {
  outline: 2px solid var(--dlx-leather);
  outline-offset: 3px;
}
.elementor .dlx-home .dlx-card__colors {
  gap: 8px;
}
.elementor .dlx-home select.dlx-stl__color {
  flex: 1 1 100px;
  min-width: 0;
  height: 40px;
  padding: 0 34px 0 14px;
  border: 1px solid var(--dlx-line-strong);
  border-radius: 999px;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231A1512' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 14px center;
  color: var(--dlx-ink);
  font-family: var(--dlx-sans);
  font-size: 13px;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
}
/* 3 contrôles dans une fiche étroite : la couleur passe sur sa propre ligne */
.elementor .dlx-home .dlx-stl__buy {
  flex-wrap: wrap;
}
@media (max-width: 900px) {
  .elementor .dlx-home .dlx-stl__buy select.dlx-stl__color {
    flex-basis: 100%;
  }
}

/* Shop the look (22/09/2026) : vignette alignée sur toute la hauteur de la fiche */
@media (min-width: 901px) {
  .elementor .dlx-home .dlx-stl__item {
    grid-template-columns: 78px minmax(0, 1fr);
  }
  .elementor .dlx-home .dlx-stl__thumb {
    align-self: stretch;
    width: 78px;
    height: auto;
    min-height: 100px;
  }
}
/* Mobile et tablette : vignette et texte en haut, puis couleur, taille et bouton sur toute la largeur */
@media (max-width: 900px) {
  .elementor .dlx-home .dlx-stl__item {
    grid-template-areas: "thumb info" "buy buy" "status status";
    align-items: start;
  }
  .elementor .dlx-home .dlx-stl__thumb {
    width: 72px;
    height: 94px;
  }
  .elementor .dlx-home .dlx-stl__buy {
    gap: 8px;
  }
  .elementor .dlx-home .dlx-stl__buy .dlx-btn {
    flex: 1 1 auto;
  }
}

/* La ligne de message vide réservait un interligne sous le bouton : on retire sa rangée */
.elementor .dlx-home .dlx-stl__item:has(.dlx-stl__status:empty) {
  grid-template-areas: "thumb info" "thumb buy";
}
@media (max-width: 900px) {
  .elementor .dlx-home .dlx-stl__item:has(.dlx-stl__status:empty) {
    grid-template-areas: "thumb info" "buy buy";
  }
}
