/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/


/* =Theme customization starts here
------------------------------------------------------- */

@media (max-width: 991px) {
  .inverse {
      display: flex;
      flex-direction: column-reverse;
  }
}

@media (min-width: 1024px) {
  .center-text-image {
      display: flex;
      align-items: center;
  }
}



/* 1. Base : limitée aux sections de cette page */
.et_pb_section.lt-home {
  --lt-ink: #000000;
  --lt-paper: #ffffff;
  --lt-sand: #b8a88f;
  --lt-serif: "Cormorant Garamond", Georgia, serif;
  --lt-sans: "Montserrat", Arial, sans-serif;
  --lt-gutter: clamp(24px, 5.55vw, 96px);
  --lt-photo-offset: clamp(18px, 1.85vw, 30px);
  position: relative;
  padding: 0 var(--lt-gutter) !important;
  margin: 0 !important;
  background-color: var(--lt-paper) !important;
  color: var(--lt-ink);
  font-family: var(--lt-sans);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.85;
  -webkit-font-smoothing: antialiased;
  scroll-margin-top: 110px;
}

.lt-home *,
.lt-home *::before,
.lt-home *::after { box-sizing: border-box; }

.lt-home ::selection { color: #fff; background: #000; }
.lt-home :focus-visible { outline: 2px solid currentColor; outline-offset: 6px; }

.lt-home .et_pb_row.lt-row {
  display: grid;
  width: 100% !important;
  max-width: 1440px !important;
  padding: 0 !important;
  margin: 0 auto !important;
  position: relative;
}

.lt-home .et_pb_row.lt-row::after { display: none !important; }

.lt-home .lt-row > .et_pb_column {
  width: auto !important;
  min-width: 0;
  max-width: none !important;
  float: none !important;
  padding: 0;
  margin: 0 !important;
}

.lt-home .et_pb_text,
.lt-home .et_pb_image,
.lt-home .et_pb_button_module_wrapper {
  margin: 0 !important;
  padding: 0;
  text-align: left;
}

.lt-home .et_pb_text,
.lt-home .et_pb_text_inner { color: inherit !important; }

.lt-home .et_pb_text_inner p {
  margin: 0;
  padding: 0 !important;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.lt-home .et_pb_text h1,
.lt-home .et_pb_text h2,
.lt-home .et_pb_text h3 {
  color: inherit !important;
  font-family: var(--lt-serif) !important;
  font-weight: 400 !important;
  text-transform: none !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow-wrap: normal;
  word-break: normal;
}

.lt-home .et_pb_text em { font-weight: 400; }
.lt-home .et_pb_text a { color: inherit; }

/* 2. Repères, légendes et boutons natifs */
.lt-home .lt-section-label {
  font-family: var(--lt-sans) !important;
  font-size: 12px !important;
  line-height: 1.75 !important;
  letter-spacing: .12em;
}

.lt-home .lt-section-label p { display: flex; align-items: center; gap: 20px; }
.lt-home .lt-section-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(0,0,0,.25);
  font-family: var(--lt-serif);
  font-size: 22px;
  font-style: italic;
  line-height: 1;
  letter-spacing: 0;
}
.lt-home .lt-label-column { align-self: start; padding-top: 8px !important; }

.lt-home .lt-caption {
  padding-top: calc(var(--lt-photo-offset) + 16px) !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(0,0,0,.22);
  font-family: var(--lt-sans) !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
  letter-spacing: .11em;
}

.lt-home .lt-caption p { display: flex; justify-content: space-between; gap: 12px; }
.lt-home .lt-caption p > span:last-child { text-align: right; }
.lt-home .lt-hero-visual .lt-caption { padding-top: 18px !important; }

.lt-home .lt-button .et_pb_button,
.lt-home .et_pb_button.lt-button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 48px;
  min-height: 58px;
  min-width: 194px;
  padding: 18px 25px !important;
  margin: 35px 0 0 !important;
  background: #000 !important;
  color: #fff !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--lt-sans) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  letter-spacing: .14em !important;
  text-decoration: none !important;
  transition: background .25s ease, color .25s ease;
}

.lt-home .lt-button .et_pb_button:hover,
.lt-home .et_pb_button.lt-button:hover { background: #fff !important; color: #000 !important; }

.lt-home .lt-button .et_pb_button::before,
.lt-home .et_pb_button.lt-button::before,
.lt-home .lt-hero-link .et_pb_button::before,
.lt-home .et_pb_button.lt-hero-link::before { display: none !important; }

.lt-home .lt-button .et_pb_button::after,
.lt-home .et_pb_button.lt-button::after,
.lt-home .lt-hero-link .et_pb_button::after,
.lt-home .et_pb_button.lt-hero-link::after,
#page-container .et_pb_section.lt-home .et_pb_button.lt-button::after,
#page-container .et_pb_section.lt-home .et_pb_button.lt-hero-link::after {
  content: "↗" !important;
  display: inline-block !important;
  position: static !important;
  width: 19px;
  flex-shrink: 0;
  margin: 0 !important;
  font-family: Arial, sans-serif !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  transform: none !important;
}

.lt-home .lt-hero-link .et_pb_button,
.lt-home .et_pb_button.lt-hero-link {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 35px;
  min-width: 151px;
  min-height: 44px;
  margin: 34px 0 0 !important;
  padding: 12px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #000 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #000 !important;
  box-shadow: none !important;
  font-family: var(--lt-sans) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  letter-spacing: .13em !important;
  transition: gap .25s ease;
}

.lt-home .lt-hero-link .et_pb_button::after,
.lt-home .et_pb_button.lt-hero-link::after,
#page-container .et_pb_section.lt-home .et_pb_button.lt-hero-link::after { content: "↓" !important; }
.lt-home .lt-hero-link .et_pb_button:hover,
.lt-home .et_pb_button.lt-hero-link:hover { gap: 44px; }

/* Priorité sur les styles que Divi génère pour les boutons sans icône. */
#page-container .et_pb_section.lt-home .et_pb_button.lt-button { padding: 18px 25px !important; }
#page-container .et_pb_section.lt-home .et_pb_button.lt-hero-link { padding: 12px 0 !important; }

/* 3. Modules Image : photos faciles à remplacer dans Divi */
.lt-home .lt-image { position: relative; isolation: isolate; overflow: visible !important; width: 100%; max-width: none !important; line-height: 0; }
.lt-home .lt-image .et_pb_image_wrap { position: relative; z-index: 1; display: block; width: 100%; overflow: hidden; border-radius: 0; }
.lt-home .lt-image::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  width: 44%;
  max-width: 270px;
  aspect-ratio: 1;
  background: var(--lt-sand);
  pointer-events: none;
}
/* Un filet fin à l'intérieur de la photo, sans modifier l'image. */
.lt-home .lt-image::after {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 14px;
  border: 1px solid rgba(255,255,255,.36);
  pointer-events: none;
}
/* Carrés beige sable : trois positions pour rythmer les photos. */
.lt-home .lt-hero-image::before {
  top: calc(-1 * var(--lt-photo-offset));
  right: calc(-1 * var(--lt-photo-offset));
}
.lt-home .lt-expertise-image::before {
  bottom: calc(-1 * var(--lt-photo-offset));
  left: calc(-1 * var(--lt-photo-offset));
}
.lt-home .lt-face-image::before {
  bottom: calc(-1 * var(--lt-photo-offset));
  right: calc(-1 * var(--lt-photo-offset));
}
.lt-home .lt-image img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none;
  object-fit: cover;
  transition: transform 1.1s cubic-bezier(.22,.61,.36,1);
}
.lt-home .lt-image:hover img { transform: scale(1.025); }

/* 4. Hero : composition et proportions du concept */
.et_pb_section.lt-home.lt-hero { padding-top: 64px !important; }
.lt-home .lt-hero-row { grid-template-columns: minmax(0,1.17fr) minmax(0,1fr); column-gap: clamp(35px,5vw,90px); }
.lt-home .lt-hero-copy { align-self: center; padding-bottom: 56px !important; }
.lt-home .lt-hero-visual { align-self: start; }
.lt-home .lt-eyebrow { margin-bottom: 34px !important; font: 500 12px/1.7 var(--lt-sans); letter-spacing: .14em; }
.lt-home .lt-eyebrow p { display: flex; align-items: center; gap: 17px; }
.lt-home .lt-eyebrow-line { display: block; width: 38px; height: 1px; flex-shrink: 0; background: var(--lt-sand); }
.lt-home .lt-hero-title h1 { letter-spacing: -.045em; line-height: 1; }
.lt-home .lt-hero-primary { display: block; font-size: clamp(60px,6.5vw,110px); line-height: .98; text-wrap: balance; }
.lt-home .lt-hero-primary em { letter-spacing: -.045em; }
.lt-home .lt-hero-secondary { display: block; max-width: 580px; margin-top: 35px; font-size: clamp(33px,3.2vw,51px); line-height: 1.13; letter-spacing: -.025em; text-wrap: pretty; }
.lt-home .lt-hero-image .et_pb_image_wrap { aspect-ratio: .82; max-height: 700px; }
.lt-home .lt-hero-image img { object-position: 50% 35%; }
.lt-home .lt-baseline-row { grid-template-columns: minmax(0,1fr); margin-top: 50px !important; }
.lt-home .lt-hero-baseline { padding-bottom: 24px !important; border-bottom: 1px solid #000; font: 400 12px/1.7 var(--lt-sans); letter-spacing: .13em; }
.lt-home .lt-hero-baseline p { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.lt-home .lt-small-cross { font-size: 22px; font-weight: 400; line-height: 1; }

/* 5. Introduction */
.et_pb_section.lt-home.lt-intro { padding-top: 115px !important; padding-bottom: 130px !important; }
.lt-home .lt-intro-row,
.lt-home .lt-appointment-row,
.lt-home .lt-treatments-heading-row { grid-template-columns: minmax(0,1fr) minmax(0,3fr); gap: 50px; }
.lt-home .lt-intro-text { max-width: 1080px; font-family: var(--lt-serif) !important; font-size: clamp(27px,2.65vw,40px) !important; line-height: 1.42 !important; letter-spacing: -.015em; text-wrap: pretty; }

/* 6. Épilation laser */
.et_pb_section.lt-home.lt-expertise { padding-bottom: 104px !important; }
.lt-home .et_pb_row.lt-expertise-row,
.lt-home .et_pb_row.lt-face-row { max-width: 1360px !important; }
.lt-home .lt-expertise-row { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: clamp(44px,5.2vw,88px); align-items: center; }
/* La photo remplit sa colonne : aucun vide supplémentaire après sa largeur. */
.lt-home .lt-row > .lt-expertise-visual { position: relative; width: calc(100% - var(--lt-photo-offset)) !important; max-width: none !important; margin-left: var(--lt-photo-offset) !important; }
.lt-home .lt-row > .lt-expertise-visual::before { content: none; }
.lt-home .lt-expertise-image .et_pb_image_wrap { aspect-ratio: .85; }
.lt-home .lt-expertise-image img { object-position: center 35%; }
.lt-home .lt-expertise-copy .lt-section-label,
.lt-home .lt-face-copy .lt-section-label { margin-bottom: 32px !important; }
.lt-home .lt-section-title h2 { font-size: clamp(48px,5.2vw,80px) !important; line-height: 1.01 !important; letter-spacing: -.035em; }
.lt-home .lt-body-copy { max-width: 560px; margin-top: 30px !important; font-family: var(--lt-sans) !important; font-size: 16px !important; font-weight: 400 !important; line-height: 1.95 !important; }

/* 7. Soins du visage */
.et_pb_section.lt-home.lt-face { padding-top: 88px !important; padding-bottom: 104px !important; }
.lt-home.lt-face::before { content: ""; position: absolute; top: 0; left: max(var(--lt-gutter),calc((100% - 1440px)/2)); right: max(var(--lt-gutter),calc((100% - 1440px)/2)); border-top: 1px solid rgba(0,0,0,.25); }
.lt-home .lt-face-row { grid-template-columns: minmax(0,1fr) minmax(0,1.06fr); gap: clamp(44px,5.2vw,88px); align-items: center; }
.lt-home .lt-face-copy { padding-left: 0 !important; }
.lt-home .lt-face-title h2 { font-size: clamp(60px,6.2vw,100px) !important; }
.lt-home .lt-face-image .et_pb_image_wrap { aspect-ratio: 1/1.14; }
.lt-home .lt-face-image img { object-position: 48% center; }
.lt-home .lt-brand-names { padding-top: 24px !important; margin-top: 30px !important; border-top: 1px solid rgba(0,0,0,.25); font-family: var(--lt-serif) !important; font-size: 23px !important; line-height: 1.2 !important; }
.lt-home .lt-brand-names p { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; }

/* 8. Nos soins : chaque ligne et chaque texte sont natifs Divi */
.et_pb_section.lt-home.lt-treatments { padding-top: 95px !important; padding-bottom: 108px !important; background-color: #000 !important; color: #fff !important; }
.lt-home.lt-treatments ::selection { color: #000; background: #fff; }
.lt-home.lt-treatments .lt-section-number { border-color: rgba(255,255,255,.4); }
.lt-home .lt-treatments-heading-row { align-items: start; padding-bottom: 70px !important; }
.lt-home .lt-treatments-heading-copy { position: relative; padding-right: 78px !important; }
.lt-home .lt-treatments-title h2 { max-width: 900px; font-size: clamp(57px,6.15vw,100px) !important; line-height: 1.01 !important; letter-spacing: -.035em; }
.lt-home .lt-treatment-count { position: absolute; right: 0; bottom: 7px; font: 400 12px/1.7 var(--lt-sans); letter-spacing: .1em; }
.lt-home .lt-row.lt-service-row { grid-template-columns: 32px minmax(0,1.32fr) minmax(0,1fr); align-items: baseline; gap: 40px; min-height: 108px; padding: 30px 0 !important; border-bottom: 1px solid rgba(255,255,255,.27); transition: background .3s ease; }
.lt-home .lt-row.lt-service-first { border-top: 1px solid rgba(255,255,255,.55); }
.lt-home .lt-row.lt-service-row:hover { background: rgba(255,255,255,.045); }
.lt-home .lt-service-number { font-family: var(--lt-serif) !important; font-size: 22px !important; font-style: italic; line-height: 1.3 !important; letter-spacing: 0; }
.lt-home .lt-service-title h3 { font-size: clamp(29px,2.55vw,40px) !important; line-height: 1.1 !important; letter-spacing: -.015em; }
.lt-home .lt-service-description { font-family: var(--lt-sans) !important; font-size: 14px !important; font-weight: 400 !important; line-height: 1.8 !important; }

/* 9. Rendez-vous */
.et_pb_section.lt-home.lt-appointment { padding-top: 115px !important; padding-bottom: 120px !important; }
.lt-home .lt-appointment-text { max-width: 1010px; font-family: var(--lt-serif) !important; font-size: clamp(32px,3.35vw,53px) !important; line-height: 1.28 !important; letter-spacing: -.02em; text-wrap: pretty; }
.lt-home .lt-appointment-copy { padding-top: 32px !important; border-top: 1px solid #000; }
.lt-home .lt-appointment-copy .lt-button .et_pb_button,
.lt-home .lt-appointment-copy .et_pb_button.lt-button { margin-top: 36px !important; }

/* 10. Grands écrans */
@media (min-width: 1750px) {
  .lt-home .lt-hero-row { grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); }
  .lt-home .lt-hero-image .et_pb_image_wrap { max-height: 780px; }
  .lt-home .lt-hero-secondary { max-width: 680px; }
  .et_pb_section.lt-home.lt-intro,
  .et_pb_section.lt-home.lt-appointment { padding-top: 140px !important; padding-bottom: 160px !important; }
}

/* 11. Tablettes : les largeurs Divi sont contrôlées par les classes */
@media (max-width: 1100px) {
  .lt-home .lt-hero-row { gap: 34px; }
  .lt-home .lt-hero-primary { font-size: 6.6vw; }
  .lt-home .lt-hero-secondary { font-size: 3.5vw; }
  .lt-home .lt-hero-copy { padding-bottom: 25px !important; }
  .lt-home .lt-hero-image .et_pb_image_wrap { aspect-ratio: .72; }
  .lt-home .lt-intro-row,
  .lt-home .lt-appointment-row,
  .lt-home .lt-treatments-heading-row { gap: 30px; }
  .lt-home .lt-section-label p { gap: 16px; }
  .lt-home .lt-expertise-row,
  .lt-home .lt-face-row { gap: 48px; }
  .lt-home .lt-row.lt-service-row { grid-template-columns: 32px minmax(0,1.15fr) minmax(0,1fr); gap: 30px; }
  .lt-home .lt-treatment-count { display: none; }
  .lt-home .lt-treatments-heading-copy { padding-right: 0 !important; }
  .lt-home .lt-brand-names { font-size: 21px !important; }
}

@media (max-width: 850px) {
  .et_pb_section.lt-home.lt-hero { padding-top: 40px !important; }
  .lt-home .lt-hero-primary { font-size: 6.8vw; }
  .lt-home .lt-hero-secondary { font-size: 3.8vw; margin-top: 26px; }
  .lt-home .lt-eyebrow { margin-bottom: 25px !important; letter-spacing: .07em; }
  .lt-home .lt-eyebrow p { gap: 10px; }
  .lt-home .lt-eyebrow-line { width: 20px; }
  .lt-home .lt-hero-link .et_pb_button,
  .lt-home .et_pb_button.lt-hero-link { margin-top: 25px !important; }
  .lt-home .lt-baseline-row { margin-top: 36px !important; }
  .et_pb_section.lt-home.lt-intro { padding-top: 75px !important; padding-bottom: 85px !important; }
  .lt-home .lt-intro-row { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .lt-home .lt-intro-text { font-size: 32px !important; }
  .lt-home .lt-expertise-row,
  .lt-home .lt-face-row { gap: 32px; }
  .et_pb_section.lt-home.lt-expertise { padding-bottom: 90px !important; }
  .lt-home .lt-expertise-image .et_pb_image_wrap { aspect-ratio: .7; }
  .lt-home .lt-expertise-copy .lt-section-label,
  .lt-home .lt-face-copy .lt-section-label { margin-bottom: 23px !important; }
  .lt-home .lt-expertise-copy .lt-section-label p,
  .lt-home .lt-face-copy .lt-section-label p { gap: 12px; }
  .lt-home .lt-section-title h2 { font-size: 47px !important; }
  .et_pb_section.lt-home.lt-face { padding-top: 80px !important; padding-bottom: 90px !important; }
  .lt-home .lt-face-copy { padding-left: 0 !important; }
  .lt-home .lt-face-title h2 { font-size: 58px !important; }
  .lt-home .lt-face-image .et_pb_image_wrap { aspect-ratio: .7; }
  .et_pb_section.lt-home.lt-treatments { padding-top: 72px !important; padding-bottom: 75px !important; }
  .lt-home .lt-treatments-heading-row { grid-template-columns: minmax(0,1fr); gap: 25px; padding-bottom: 50px !important; }
  .lt-home .lt-treatments-title h2 { font-size: 70px !important; }
  .lt-home .lt-row.lt-service-row { padding-top: 25px !important; padding-bottom: 25px !important; }
  .lt-home .lt-service-title h3 { font-size: 29px !important; }
  .et_pb_section.lt-home.lt-appointment { padding-top: 80px !important; padding-bottom: 85px !important; }
  .lt-home .lt-appointment-row { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .lt-home .lt-appointment-text { font-size: 39px !important; }
}

/* 12. Téléphones : image avant texte, marges équilibrées */
@media (max-width: 600px) {
  .et_pb_section.lt-home { --lt-gutter: 24px; --lt-photo-offset: 14px; }
  .et_pb_section.lt-home.lt-hero { padding-top: 25px !important; }
  .lt-home .lt-hero-row { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .lt-home .lt-hero-visual { order: -1; }
  .lt-home .lt-hero-image .et_pb_image_wrap { aspect-ratio: 1.2; max-height: 450px; }
  .lt-home .lt-hero-image img { object-position: 50% 32%; }
  .lt-home .lt-hero-copy { padding-top: 5px !important; padding-bottom: 0 !important; }
  .lt-home .lt-caption { padding-top: calc(var(--lt-photo-offset) + 16px) !important; letter-spacing: .06em; }
  .lt-home .lt-image::after { inset: 10px; }
  .lt-home .lt-eyebrow { margin-bottom: 22px !important; letter-spacing: .09em; }
  .lt-home .lt-hero-primary { font-size: clamp(52px,11.5vw,70px); line-height: .98; letter-spacing: -.03em; }
  .lt-home .lt-hero-secondary { max-width: 450px; margin-top: 27px; font-size: 34px; line-height: 1.14; letter-spacing: -.02em; }
  .lt-home .lt-baseline-row { margin-top: 45px !important; }
  .lt-home .lt-hero-baseline { padding-bottom: 20px !important; }
  .lt-home .lt-hero-baseline p > span:last-child { max-width: 170px; text-align: right; }
  .et_pb_section.lt-home.lt-intro { padding-top: 60px !important; padding-bottom: 70px !important; }
  .lt-home .lt-intro-row { gap: 26px; }
  .lt-home .lt-section-label p { gap: 18px; }
  .lt-home .lt-intro-text { font-size: 29px !important; line-height: 1.44 !important; }
  .lt-home .lt-expertise-row { grid-template-columns: minmax(0,1fr); gap: 46px; }
  .et_pb_section.lt-home.lt-expertise { padding-bottom: 72px !important; }
  .lt-home .lt-expertise-image .et_pb_image_wrap { aspect-ratio: 1/1.1; }
  .lt-home .lt-expertise-copy .lt-section-label,
  .lt-home .lt-face-copy .lt-section-label { margin-bottom: 26px !important; }
  .lt-home .lt-expertise-copy .lt-section-label p,
  .lt-home .lt-face-copy .lt-section-label p { gap: 18px; }
  .lt-home .lt-section-title h2 { font-size: 56px !important; line-height: 1 !important; }
  .lt-home .lt-body-copy { margin-top: 26px !important; line-height: 1.9 !important; }
  .lt-home .lt-button .et_pb_button,
  .lt-home .et_pb_button.lt-button { margin-top: 27px !important; }
  .et_pb_section.lt-home.lt-face { padding-top: 60px !important; padding-bottom: 72px !important; }
  .lt-home .lt-face-row { grid-template-columns: minmax(0,1fr); gap: 45px; }
  .lt-home .lt-face-visual { order: -1; }
  .lt-home .lt-face-image .et_pb_image_wrap { aspect-ratio: 1; }
  .lt-home .lt-face-title h2 { font-size: 64px !important; }
  .lt-home .lt-brand-names { font-size: 24px !important; }
  .lt-home .lt-brand-names p { gap: 17px; justify-content: space-between; }
  .et_pb_section.lt-home.lt-treatments { padding-top: 62px !important; padding-bottom: 68px !important; }
  .lt-home .lt-treatments-heading-row { gap: 27px; padding-bottom: 45px !important; }
  .lt-home .lt-treatments-title h2 { font-size: clamp(50px,11.4vw,69px) !important; }
  .lt-home .lt-row.lt-service-row { grid-template-columns: 20px minmax(0,1fr); align-items: start; column-gap: 21px; row-gap: 12px; min-height: 0; padding: 26px 0 !important; }
  .lt-home .lt-row.lt-service-row:hover { padding-left: 0 !important; padding-right: 0 !important; background: transparent; }
  .lt-home .lt-service-number-col { grid-column: 1; grid-row: 1 / span 2; padding-top: 5px !important; }
  .lt-home .lt-service-title-col { grid-column: 2; grid-row: 1; }
  .lt-home .lt-service-description-col { grid-column: 2; grid-row: 2; }
  .lt-home .lt-service-title h3 { font-size: 31px !important; line-height: 1.12 !important; }
  .lt-home .lt-service-description { max-width: 450px; line-height: 1.75 !important; }
  .et_pb_section.lt-home.lt-appointment { padding-top: 61px !important; padding-bottom: 73px !important; }
  .lt-home .lt-appointment-row { gap: 27px; }
  .lt-home .lt-appointment-copy { padding-top: 25px !important; }
  .lt-home .lt-appointment-text { font-size: 34px !important; line-height: 1.34 !important; }
  .lt-home .lt-appointment-copy .lt-button .et_pb_button,
  .lt-home .lt-appointment-copy .et_pb_button.lt-button { margin-top: 29px !important; }
}

@media (max-width: 360px) {
  .et_pb_section.lt-home { --lt-gutter: 18px; }
  .lt-home .lt-hero-primary { font-size: 48px; }
  .lt-home .lt-hero-secondary { font-size: 30px; }
  .lt-home .lt-hero-baseline p > span:last-child { max-width: 135px; }
  .lt-home .lt-hero-image .et_pb_image_wrap { aspect-ratio: 1.1; }
  .lt-home .lt-treatments-title h2 { font-size: 46px !important; }
}

/* 13. Apparition discrète, sans script. Le contenu est visible par défaut. */
@keyframes lt-home-rise {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .lt-home .lt-reveal {
      animation: lt-home-rise linear both;
      animation-timeline: view();
      animation-range: entry 0% entry 25%;
    }
  }
}

/* Le Visual Builder reste pleinement éditable. */
.et-fb .lt-home .lt-reveal { animation: none !important; opacity: 1 !important; transform: none !important; }

@media (prefers-reduced-motion: reduce) {
  .lt-home *,
  .lt-home *::before,
  .lt-home *::after { animation: none !important; transition: none !important; }
  .lt-home .lt-reveal { opacity: 1 !important; transform: none !important; }
  .lt-home .lt-image:hover img { transform: none; }
}

/* 14. Bannière pleine largeur : photo native de la section Divi. */
.et_pb_section.lt-home.lt-banner {
  isolation: isolate;
  padding: 0 !important;
  background-color: #171717 !important;
  background-size: cover !important;
  background-position: 50% 55% !important;
  background-repeat: no-repeat !important;
  color: #fff;
}

.et_pb_section.lt-home.lt-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(0deg, rgba(0,0,0,.85) 0%, rgba(0,0,0,.46) 55%, rgba(0,0,0,.22) 100%),
    linear-gradient(90deg, rgba(0,0,0,.28) 0%, transparent 75%);
  pointer-events: none;
}

.lt-home.lt-banner .et_pb_row.lt-banner-row {
  z-index: 1;
  grid-template-columns: minmax(0,1fr);
  align-items: end;
  justify-items: start;
  width: calc(100% - var(--lt-gutter) * 2) !important;
  min-height: clamp(360px,44.2vw,760px);
  padding: clamp(100px,14vw,210px) 0 clamp(30px,3.5vw,64px) !important;
}

.lt-home.lt-banner .lt-row > .lt-banner-copy {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: end;
  gap: 24px 28px;
  width: 100% !important;
  max-width: 610px !important;
}

.lt-home.lt-banner .lt-banner-title {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
}

.lt-home.lt-banner .lt-banner-title h1 { color: #fff !important; line-height: 1.06 !important; letter-spacing: -.025em; }
.lt-home.lt-banner .lt-banner-primary { display: block; font-size: clamp(36px,4.2vw,64px); line-height: 1.06; }
.lt-home.lt-banner .lt-banner-primary em { font-style: normal; }
.lt-home.lt-banner .lt-banner-secondary {
  display: block;
  max-width: 430px;
  margin-top: 20px;
  font-family: var(--lt-sans);
  font-size: clamp(14px,1.2vw,17px);
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0;
  text-wrap: pretty;
}

.lt-home.lt-banner .lt-banner-copy > .et_pb_button_module_wrapper {
  flex: 0 1 auto;
  width: auto !important;
  max-width: 100%;
  margin: 0 !important;
}

#page-container .et_pb_section.lt-home.lt-banner .et_pb_button.lt-banner-booking,
.lt-home.lt-banner .et_pb_button.lt-banner-booking {
  justify-content: center;
  gap: 0;
  min-width: 154px;
  min-height: 48px;
  max-width: 100%;
  margin: 0 !important;
  padding: 14px 22px !important;
  border: 1px solid #fff !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 11px !important;
  letter-spacing: .08em !important;
}

#page-container .et_pb_section.lt-home.lt-banner .et_pb_button.lt-banner-booking:hover,
.lt-home.lt-banner .et_pb_button.lt-banner-booking:hover { background: transparent !important; color: #fff !important; }

#page-container .et_pb_section.lt-home.lt-banner .et_pb_button.lt-banner-link,
.lt-home.lt-banner .et_pb_button.lt-banner-link {
  justify-content: center;
  gap: 0;
  min-width: 0;
  min-height: 44px;
  max-width: 100%;
  margin: 0 !important;
  padding: 10px 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  font-size: 11px !important;
  letter-spacing: .05em !important;
  text-decoration: underline !important;
  text-underline-offset: 6px;
  text-decoration-thickness: 1px !important;
}

#page-container .et_pb_section.lt-home.lt-banner .et_pb_button::after,
.lt-home.lt-banner .et_pb_button::after { display: none !important; content: none !important; }
.lt-home.lt-banner :focus-visible { outline: 2px solid #fff; outline-offset: 6px; }
.lt-home.lt-banner ::selection { color: #000; background: #fff; }

@media (max-width: 600px) {
  .et_pb_section.lt-home.lt-banner { background-position: 58% 50% !important; }
  .lt-home.lt-banner .et_pb_row.lt-banner-row {
    min-height: 520px;
    padding: 140px 0 32px !important;
  }
  .lt-home.lt-banner .lt-row > .lt-banner-copy { gap: 24px 22px; }
  .lt-home.lt-banner .lt-banner-primary { font-size: clamp(36px,10.5vw,46px); }
  .lt-home.lt-banner .lt-banner-secondary { max-width: 360px; font-size: 14px; margin-top: 18px; }
}

/* La photo est décorative ; le H1 et les boutons restent des modules Divi. */

/* 15. Accueil — Soins en cartes, uniquement dans cette nouvelle section. */
.et_pb_section.lt-home.lt-soins-cards {
  padding-top: 72px !important;
  padding-bottom: 88px !important;
  background-color: #fff !important;
  color: #000 !important;
}

.lt-home.lt-soins-cards .lt-treatments-heading-row {
  align-items: center;
  padding-bottom: 46px !important;
}

.lt-home.lt-soins-cards .lt-treatments-title h2 {
  font-size: clamp(40px,4.1vw,64px) !important;
  line-height: 1.08 !important;
}

.lt-home.lt-soins-cards .et_pb_row.lt-cards-row {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  column-gap: 32px;
  row-gap: 40px;
  align-items: start;
}

.lt-home.lt-soins-cards .et_pb_row.lt-cards-row-next { margin-top: 40px !important; }
.lt-home.lt-soins-cards .lt-row > .lt-care-card { min-width: 0; background: transparent; }

.lt-home.lt-soins-cards .et_pb_image.lt-card-photo {
  display: block;
  width: 100% !important;
  max-width: none !important;
  line-height: 0;
}

.lt-home.lt-soins-cards .lt-card-photo .et_pb_image_wrap {
  display: block;
  position: relative;
  width: 100%;
  aspect-ratio: 2 / 1;
  overflow: hidden;
  border-radius: 0;
}

.lt-home.lt-soins-cards .lt-card-photo img {
  display: block;
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover;
  object-position: 50% 55%;
  border-radius: 0;
}

.lt-home.lt-soins-cards .lt-card-photo-portrait img { object-position: 50% 32%; }
.lt-home.lt-soins-cards .et_pb_text.lt-card-title { margin-top: 16px !important; }
.lt-home.lt-soins-cards .lt-card-title h3 {
  font-size: clamp(22px,1.85vw,28px) !important;
  line-height: 1.15 !important;
  letter-spacing: -.015em;
  overflow-wrap: anywhere;
}

.lt-home.lt-soins-cards .et_pb_text.lt-card-description {
  margin-top: 8px !important;
  color: #3a3a3a !important;
  font-family: var(--lt-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  overflow-wrap: anywhere;
}

@media (max-width: 980px) {
  .lt-home.lt-soins-cards .et_pb_row.lt-cards-row {
    grid-template-columns: repeat(2,minmax(0,1fr));
    column-gap: 26px;
    row-gap: 34px;
  }
  .lt-home.lt-soins-cards .et_pb_row.lt-cards-row-next { margin-top: 34px !important; }
}

@media (max-width: 600px) {
  .et_pb_section.lt-home.lt-soins-cards { padding-top: 54px !important; padding-bottom: 62px !important; }
  .lt-home.lt-soins-cards .lt-treatments-heading-row { gap: 22px; padding-bottom: 32px !important; }
  .lt-home.lt-soins-cards .lt-treatments-title h2 { font-size: 42px !important; }
  .lt-home.lt-soins-cards .et_pb_row.lt-cards-row {
    grid-template-columns: minmax(0,1fr);
    row-gap: 32px;
  }
  .lt-home.lt-soins-cards .et_pb_row.lt-cards-row-next { margin-top: 32px !important; }
  .lt-home.lt-soins-cards .lt-card-title h3 { font-size: 26px !important; }
}
@media (max-width: 1024px) {

  .lt-home .et_pb_row.lt-expertise-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 42px !important;
  }

  .lt-home .lt-expertise-row > .lt-expertise-visual {
    order: -1 !important;
  }

  .lt-home .lt-expertise-row > .lt-expertise-copy {
    order: 1 !important;
    width: 100% !important;
    padding: 0 !important;
  }

  .lt-home .lt-expertise-image .et_pb_image_wrap {
    aspect-ratio: 4 / 3 !important;
  }

  .lt-home .lt-expertise-copy .lt-body-copy {
    max-width: none !important;
  }

  .lt-home .lt-expertise-copy > .lt-body-copy:first-child {
    margin-top: 0 !important;
  }

}

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Montserrat:wght@400;500;600&display=swap');

/* =========================================================
   LABO T FOOTER
========================================================= */

.lbt-footer {
    --lbt-white: #fffdf9;
    --lbt-muted: #eee8df;
    --lbt-sand: #b8a88f;
    --lbt-line: rgba(255, 253, 249, 0.24);
    --lbt-serif: "Cormorant Garamond", Georgia, serif;

    position: relative;
    isolation: isolate;
    box-sizing: border-box;

    width: 100%;
    margin: 0;

    padding:
        clamp(36px, 4.8vw, 76px)
        clamp(24px, 5.5vw, 88px)
        0;

    overflow: hidden;

    background-color: #29231e;
    color: var(--lbt-white);

    font-family: "Montserrat", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;

    text-align: left;
}


/* =========================================================
   BACKGROUND
========================================================= */

.lbt-footer::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;

    pointer-events: none;

    background-image:
        linear-gradient(
            180deg,
            rgba(22, 19, 16, 0.56) 0%,
            rgba(22, 19, 16, 0.60) 48%,
            rgba(18, 16, 14, 0.93) 100%
        ),
        url('https://labo-t.serverweb-prod.com/wp-content/uploads/2026/10/Catherine-4-1.jpeg');

    background-position:
        center,
        42% center;

    background-size: cover;
    background-repeat: no-repeat;
}


/* =========================================================
   RESET
========================================================= */

.lbt-footer *,
.lbt-footer *::before,
.lbt-footer *::after {
    box-sizing: border-box;
}

.lbt-footer .lbt-footer__inner {
    width: 100%;
    max-width: 1440px;
    margin-inline: auto;
}

.lbt-footer :is(p, h2, h3, ul) {
    margin: 0;
    padding: 0;
}

.lbt-footer a {
    color: inherit;
    text-decoration: none;
}

.lbt-footer a:focus-visible {
    outline: 2px solid var(--lbt-white);
    outline-offset: 6px;
}

.lbt-footer ::selection {
    color: #211e1a;
    background: #eee4d5;
}


/* =========================================================
   TOP PANEL
========================================================= */

.lbt-footer .lbt-footer__panel {
    display: grid;

    grid-template-columns:
        minmax(0, 1.65fr)
        minmax(0, 1fr)
        minmax(0, 1fr);

    align-items: center;

    gap: 36px;

    padding: 28px 32px;

    border: 1px solid rgba(255, 253, 249, 0.17);
    border-radius: 18px;

    background: rgba(255, 253, 249, 0.09);

    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
}


/* =========================================================
   IDENTITY
========================================================= */

.lbt-footer .lbt-footer__identity {
    display: flex;
    align-items: center;
    gap: 22px;
}

.lbt-footer .lbt-footer__logo {
    display: block;

    flex: 0 0 70px;

    width: 70px;
    height: 70px;

    object-fit: contain;

    filter: brightness(0) invert(1);
}

.lbt-footer .lbt-footer__name {
    display: inline-block;

    margin-bottom: 5px;

    font-family: var(--lbt-serif);
    font-size: 28px;
    line-height: 1.1;
}

.lbt-footer .lbt-footer__description {
    max-width: 28ch;

    color: var(--lbt-muted);

    font-size: 12px;
    line-height: 1.8;
}


/* =========================================================
   TOP PANEL META
========================================================= */

.lbt-footer .lbt-footer__meta .lbt-footer__label {
    margin-bottom: 12px;

    color: #f3e8d6;

    font-family: inherit;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.lbt-footer .lbt-footer__meta p {
    color: var(--lbt-muted);

    font-size: 13px;
    line-height: 1.8;
}

.lbt-footer .lbt-footer__contact {
    display: inline-flex;
    align-items: center;

    gap: 14px;

    min-height: 40px;

    font-size: 13px;
}

.lbt-footer .lbt-footer__contact:hover {
    text-decoration: underline;
    text-underline-offset: 5px;
}


/* =========================================================
   MAIN FOOTER
========================================================= */

.lbt-footer .lbt-footer__main {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1.9fr);

    align-items: start;

    gap: clamp(36px, 6vw, 90px);

    margin-top: 48px;
}


/* =========================================================
   INTRO / BOOKING
========================================================= */

.lbt-footer .lbt-footer__headline {
    margin-bottom: 16px;

    color: var(--lbt-white);

    font-family: var(--lbt-serif);
    font-size: clamp(36px, 3.5vw, 50px);
    font-weight: 400;
    line-height: 1.04;

    letter-spacing: -0.035em;
}

.lbt-footer .lbt-footer__intro {
    max-width: 30ch;

    margin-bottom: 24px;

    color: var(--lbt-muted);

    font-size: 13px;
    line-height: 1.8;
}

.lbt-footer .lbt-footer__booking {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;

    gap: 28px;

    min-height: 54px;
    max-width: 100%;

    padding: 8px 9px 8px 22px;

    border: 1px solid var(--lbt-white);
    border-radius: 999px;

    background: var(--lbt-white);
    color: #211e1a;

    font-size: 12px;
    font-weight: 500;
    line-height: 1.5;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease;
}

.lbt-footer .lbt-footer__booking:hover {
    border-color: var(--lbt-sand);

    background: var(--lbt-sand);
    color: #211e1a;
}

.lbt-footer .lbt-footer__arrow {
    display: grid;
    place-items: center;

    flex: 0 0 36px;

    width: 36px;
    height: 36px;

    border-radius: 50%;

    background: #2b2722;
    color: var(--lbt-white);
}

.lbt-footer .lbt-footer__arrow svg {
    display: block;

    width: 20px;
    height: 20px;
}


/* =========================================================
   NAVIGATION
   Technologies removed — only 2 columns
========================================================= */

.lbt-footer .lbt-footer__navigation {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: clamp(35px, 6vw, 80px);
}

.lbt-footer .lbt-footer__nav-heading {
    margin-bottom: 16px;

    color: var(--lbt-white);

    font-family: inherit;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.5;
}

.lbt-footer .lbt-footer__links {
    display: flex;
    flex-direction: column;

    gap: 3px;

    padding: 0;
    margin: 0;

    list-style: none;
}

.lbt-footer .lbt-footer__links li {
    padding: 0;
    margin: 0;

    list-style: none;
}

.lbt-footer .lbt-footer__links a {
    display: inline-block;

    padding-block: 6px;

    color: var(--lbt-muted);

    font-size: 12px;
    line-height: 1.7;

    transition: color 0.2s ease;
}

.lbt-footer .lbt-footer__links a:hover {
    color: var(--lbt-white);

    text-decoration: underline;
    text-underline-offset: 5px;
}


/* =========================================================
   LARGE LABO-T SIGNATURE
========================================================= */

.lbt-footer .lbt-footer__signature {
    margin-top: 64px;
}

.lbt-footer .lbt-footer__wordmark {
    display: flex;
    align-items: center;
    justify-content: space-between;

    width: 100%;

    padding: 0.035em 0 0.06em;

    color: var(--lbt-white);

    font-family: var(--lbt-serif);
    font-size: clamp(104px, 25.2vw, 400px);
    font-weight: 400;
    line-height: 0.82;

    letter-spacing: -0.06em;
}

.lbt-footer .lbt-footer__wordmark-letter {
    display: block;

    flex: 0 0 auto;
}


/* DASH BETWEEN O AND T
   This is NOT a font character.
   It is a CSS line.
========================================================= */

.lbt-footer .lbt-footer__dash {
    display: block;

    flex: 0 0 0.23em;

    width: 0.23em;
    height: 0.026em;

    margin:
        0
        0.05em
        0
        0.09em;

    background: currentColor;
}


/* =========================================================
   SIGNATURE CAPTION
========================================================= */

.lbt-footer .lbt-footer__signature-caption {
    display: flex;
    justify-content: space-between;

    gap: 24px;

    margin-top: 19px;

    color: var(--lbt-muted);

    font-size: 9px;
    line-height: 1.6;

    letter-spacing: 0.23em;
    text-transform: uppercase;
}


/* =========================================================
   BOTTOM
========================================================= */

.lbt-footer .lbt-footer__bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;

    gap: 16px 28px;

    margin-top: 26px;
    padding: 22px 0 26px;

    border-top: 1px solid var(--lbt-line);

    color: #d7d0c7;

    font-size: 11px;
    line-height: 1.8;
}

.lbt-footer .lbt-footer__bottom p {
    font-size: inherit;
}

.lbt-footer .lbt-footer__bottom a {
    display: inline-block;

    padding-block: 5px;
}

.lbt-footer .lbt-footer__bottom a:hover {
    text-decoration: underline;
    text-underline-offset: 5px;
}


/* =========================================================
   TABLET / SMALL DESKTOP
========================================================= */

@media (max-width: 1100px) {

    .lbt-footer .lbt-footer__panel {
        grid-template-columns:
            1.45fr
            1fr
            1fr;

        gap: 26px;

        padding: 26px;
    }

    .lbt-footer .lbt-footer__identity {
        gap: 16px;
    }

    .lbt-footer .lbt-footer__logo {
        flex-basis: 56px;

        width: 56px;
        height: 56px;
    }

    .lbt-footer .lbt-footer__main {
        grid-template-columns:
            1fr
            1.8fr;

        gap: 38px;
    }

    .lbt-footer .lbt-footer__navigation {
        gap: 36px;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 980px) {

    .lbt-footer .lbt-footer__panel {
        grid-template-columns:
            1fr
            1fr;

        gap: 26px 36px;
    }

    .lbt-footer .lbt-footer__identity {
        grid-column: 1 / -1;
    }

    .lbt-footer .lbt-footer__description {
        max-width: none;
    }

    .lbt-footer .lbt-footer__main {
        grid-template-columns: 1fr;

        gap: 40px;

        margin-top: 38px;
    }

    .lbt-footer .lbt-footer__headline {
        font-size: 44px;
    }

    .lbt-footer .lbt-footer__navigation {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 40px;
    }

    .lbt-footer .lbt-footer__links a {
        padding-block: 8px;
    }

    .lbt-footer .lbt-footer__signature {
        margin-top: 46px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .lbt-footer {
        padding:
            28px
            24px
            0;
    }


    /* Darker background on mobile */

    .lbt-footer::before {
        background-image:
            linear-gradient(
                180deg,
                rgba(22, 19, 16, 0.65),
                rgba(22, 19, 16, 0.78) 55%,
                rgba(18, 16, 14, 0.96)
            ),
            url('https://labo-t.serverweb-prod.com/wp-content/uploads/2026/09/soins-de-la-peau-scaled.jpg');

        background-position:
            center,
            28% top;
    }


    /* REMOVE TOP PANEL ON MOBILE */

    .lbt-footer .lbt-footer__panel {
        display: none !important;
    }


    /* Main starts directly */

    .lbt-footer .lbt-footer__main {
        grid-template-columns: 1fr;

        gap: 34px;

        margin-top: 0;
    }


    /* Intro */

    .lbt-footer .lbt-footer__headline {
        font-size: 40px;
    }

    .lbt-footer .lbt-footer__intro {
        margin-bottom: 20px;

        font-size: 12px;
    }

    .lbt-footer .lbt-footer__booking {
        min-height: 52px;
    }


    /* Navigation */

    .lbt-footer .lbt-footer__navigation {
        grid-template-columns: 1fr;

        gap: 24px;
    }

    .lbt-footer .lbt-footer__nav-heading {
        margin-bottom: 6px;

        font-size: 13px;
    }

    .lbt-footer .lbt-footer__links {
        gap: 0;
    }

    .lbt-footer .lbt-footer__links a {
        display: block;

        min-height: 40px;

        padding-block: 8px;

        font-size: 12px;
    }


    /* LABO-T */

    .lbt-footer .lbt-footer__signature {
        margin-top: 28px;
    }

    .lbt-footer .lbt-footer__wordmark {
        font-size: clamp(68px, 22vw, 125px);

        letter-spacing: -0.055em;
    }

    .lbt-footer .lbt-footer__dash {
        flex-basis: 0.22em;

        width: 0.22em;
        height: 0.028em;

        margin-left: 0.08em;
        margin-right: 0.04em;
    }


    /* REMOVE TEXT BELOW LABO-T ON MOBILE */

    .lbt-footer .lbt-footer__signature-caption {
        display: none !important;
    }


    /* Bottom */

    .lbt-footer .lbt-footer__bottom {
        align-items: flex-start;
        flex-direction: column;

        gap: 5px;

        margin-top: 14px;
        padding: 18px 0 22px;

        font-size: 9px;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .lbt-footer a {
        transition: none !important;
    }

}

.mobile_menu_bar:before, .mobile_menu_bar:after, #top-menu li.current-menu-ancestor>a, #top-menu li.current-menu-item>a {
  color: #b8a88f;
}

.et_mobile_menu {
border-top: 3px solid #b8a88f;
}

.et-fixed-header #top-menu .menu-button a {
  color : #b8a88f !important;
}

.labo-gallery {
  display: grid;
  grid-template-columns:
    minmax(0, 1fr)
    minmax(0, 0.92fr)
    minmax(0, 1.18fr)
    minmax(0, 1fr)
    minmax(0, 1.12fr)
    minmax(0, 0.95fr);
  align-items: center;
  gap: clamp(8px, 1.2vw, 20px);
  width: 100%;
  max-width: 100%;
}

.labo-gallery .labo-gallery__item {
  min-width: 0;
  margin: 0;
  padding: 0;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: 6px;
}

.labo-gallery .labo-gallery__item:nth-child(2),
.labo-gallery .labo-gallery__item:nth-child(6) {
  aspect-ratio: 3 / 5;
}

.labo-gallery .labo-gallery__item:nth-child(3),
.labo-gallery .labo-gallery__item:nth-child(5) {
  aspect-ratio: 1;
}

.labo-gallery .labo-gallery__item img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
  object-position: center;
}

.labo-gallery .labo-gallery__item:first-child img {
  object-position: center 30%;
}

.labo-gallery .labo-gallery__item:last-child img {
  object-position: 60% center;
}

/* Survol discret */
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .labo-gallery .labo-gallery__item img {
    transition: transform 0.5s ease;
  }

  .labo-gallery .labo-gallery__item:hover img {
    transform: scale(1.05);
  }
}

/* Tablette */
@media (max-width: 980px) {
  .labo-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
  }

  .labo-gallery .labo-gallery__item:nth-child(n) {
    aspect-ratio: 4 / 5;
  }
}

/* Mobile */
@media (max-width: 600px) {
  .labo-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
}


/**/

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap'); .ltm-page {
    font-family: 'DM Sans',sans-serif;
    color: #29352f;
    overflow: hidden
}

.ltm-page h1,.ltm-page h2,.ltm-page h3 {
    /* font-family:'Playfair Display',Georgia,serif; */
    /* font-weight:400; */
    /* letter-spacing:-.055em; */
    /* line-height:1.11; */
    /* color:#26392f; */
}

.ltm-page h1 {
    font-size: clamp(51px,6.6vw,108px)
}

.ltm-page h2 {
    font-size: clamp(39px,4.45vw,72px);
    max-width: 900px;
    margin-bottom: 30px
}

.ltm-page h3 {
    font-size: clamp(25px,2.1vw,34px)
}

.ltm-page p,.ltm-page li {
    font-family: 'DM Sans',sans-serif;
    color: #526057;
    font-size: 16px;
    line-height: 1.92;
}

.ltm-page .ltm-eyebrow {
    font-family: 'Manrope',sans-serif;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: .25em;
    font-weight: 700;
    color: #9a8069;
    display: block;
    margin-bottom: 26px
}

.ltm-page.ltm-hero {
    min-height: 690px;
    background-size: cover;
    background-position: center 42%;
    position: relative;
    background-blend-mode: multiply
}

.ltm-page.ltm-hero:after {
    content: '01 — SKIN STUDIO';
    position: absolute;
    right: 5%;
    bottom: 35px;
    color: #eee9de;
    font: 600 10px 'Manrope',sans-serif;
    letter-spacing: .3em;
    z-index: 1
}

.ltm-page.ltm-hero .et_pb_row {
    min-height: 560px;
    padding-top: 105px!important;
    padding-bottom: 100px!important;
    display: flex;
    align-items: center
}

.ltm-page.ltm-hero .et_pb_text {
    text-align: left!important;
    max-width: 920px
}

.ltm-page.ltm-hero h1 {
    color: #fff!important;
    max-width: 900px;
    margin: 0;
    text-wrap: balance;
    text-shadow: 0 5px 30px rgba(0,0,0,.1)
}

.ltm-page.ltm-hero h1 em {
    font-style: italic;
    color: #f3d8c2
}

.ltm-page.ltm-hero .ltm-eyebrow {
    color: #e5c8ae;
    margin-bottom: 32px
}

.ltm-page.ltm-section {
    padding: 130px 0
}

.ltm-page .et_pb_row {
    width: 88%;
    max-width: 1340px
}

.ltm-page.ltm-intro {
    background: #fff
}

.ltm-page.ltm-intro .et_pb_row,.ltm-page.ltm-after .et_pb_row {
    display: flex;
    align-items: center;
    gap: 9%
}

.ltm-page.ltm-intro .et_pb_column,.ltm-page.ltm-after .et_pb_column {
    flex: 1;
    margin-right: 0!important
}

.ltm-page .ltm-image {
    position: relative
}

.ltm-page .ltm-image:after {
    content: '';
    position: absolute;
    width: 44%;
    height: 30%;
    border: 1px solid #cbb7a2;
    right: -22px;
    bottom: -23px;
    z-index: -1;
    pointer-events: none
}

.ltm-page .ltm-image img {
    width: 100%;
    min-height: 480px;
    max-height: 700px;
    object-fit: cover;
    /* border-radius:220px 220px 8px 8px; */
    filter: saturate(.84)
}

.ltm-page.ltm-soft {
    background: #f5f5f5;
}

.ltm-page.ltm-soft:not(.ltm-after):not(.ltm-card) h2 {
    max-width: 780px
}

.ltm-page.ltm-card {
    background: #f7f6f2
}

.ltm-page.ltm-card .et_pb_row {
    display: flex;
    gap: 17px
}

.ltm-page.ltm-card .et_pb_column {
    flex: 1;
    margin: 0!important
}

.ltm-page.ltm-card .et_pb_text {
    min-height: 285px;
    height: 100%;
    padding: 48px 34px;
    border-radius: 0;
    background: #fff;
    border: 1px solid #ece7e1;
    box-shadow: none;
    transition: transform .35s ease,background .35s ease,border .35s ease
}

.ltm-page.ltm-card .et_pb_text:hover {
    transform: translateY(-10px);
    background: #eae9e2;
    border-color: #d1c7bb
}

.ltm-page.ltm-card h3 {
    font-size: 27px;
    line-height: 1.2;
    margin-bottom: 17px
}

.ltm-page.ltm-card p {
    font-size: 14px;
    line-height: 1.8
}

.ltm-page .ltm-number {
    font: 400 64px 'Playfair Display',Georgia,serif;
    line-height: 1;
    color: #b29e89;
    display: block;
    margin-bottom: 36px
}

.ltm-page.ltm-steps {
    background: #fdfcfb;
    padding-bottom: 110px
}

.ltm-page.ltm-steps .et_pb_row {
    display: flex;
    gap: 0;
    border-top: 1px solid #cccac1
}

.ltm-page.ltm-steps .et_pb_column {
    flex: 1;
    margin: 0!important;
    border-right: 1px solid #cccac1
}

.ltm-page.ltm-steps .et_pb_column:last-child {
    border-right: 0
}

.ltm-page.ltm-steps .et_pb_text {
    padding: 55px 36px 28px;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    min-height: 300px
}

.ltm-page.ltm-steps h3 {
    font-size: 31px
}

.ltm-page.ltm-steps .ltm-number {
    font-size: 78px;
    color: #ad9784
}

.ltm-page.ltm-after {
    background: #f5f5f5;
}

.ltm-page.ltm-after .ltm-image img {
    /* border-radius:8px 8px 240px 240px; */
}

.ltm-page .ltm-check {
    list-style: none;
    padding: 0
}

.ltm-page .ltm-check li {
    background: transparent!important;
    border-bottom: 1px solid #ccc5bb;
    border-radius: 0;
    padding: 15px 12px 15px 38px;
    margin: 0;
    font-size: 15px
}

.ltm-page .ltm-check li:before {
    content: '↗';
    position: absolute;
    left: 3px;
    color: #8b745f;
    font-size: 20px
}

.ltm-page.ltm-dark {
    background: #000000;
    position: relative
}

.ltm-page.ltm-dark:before {
    content: 'LABO T';
    position: absolute;
    right: -60px;
    bottom: -85px;
    opacity: .055;
    color: white;
    font: 400 240px 'Playfair Display',serif;
    white-space: nowrap;
    pointer-events: none
}

.ltm-page.ltm-dark .et_pb_row {
    max-width: 1030px
}

.ltm-page.ltm-dark h2 {
    color: #fff!important
}

.ltm-page.ltm-dark p {
    color: #e3e5df
}

.ltm-page.ltm-dark .ltm-eyebrow {
    color: #dec2a6
}

.ltm-page.ltm-cta {
    background: #e4d8cc;
    text-align: center;
    position: relative;
    padding: 145px 0
}

.ltm-page.ltm-cta:before,.ltm-page.ltm-cta:after {
    content: '';
    position: absolute;
    width: 180px;
    height: 180px;
    border: 1px solid #b6a38e;
    border-radius: 50%;
    opacity: .45
}

.ltm-page.ltm-cta:before {
    left: -80px;
    top: -70px
}

.ltm-page.ltm-cta:after {
    right: -65px;
    bottom: -70px
}

.ltm-page.ltm-cta h2 {
    margin-left: auto;
    margin-right: auto
}

.ltm-page.ltm-cta .et_pb_text {
    max-width: 870px;
    margin: auto
}

.ltm-page .ltm-pill {
    display: inline-flex;
    align-items: center;
    gap: 20px;
    border-radius: 0;
    background: #25382e;
    color: #fff!important;
    font: 700 12px 'Manrope',sans-serif;
    letter-spacing: .13em;
    text-transform: uppercase;
    padding: 22px 34px;
    margin-top: 26px;
    transition: background .3s,transform .3s
}

.ltm-page .ltm-pill:after {
    content: '↗';
    font-size: 19px;
    font-weight: 400
}

.ltm-page .ltm-pill:hover {
    background: #9c7e68;
    transform: translateY(-3px)
}

.ltm-page .ltm-feature {
    padding-left: 28px;
    border-left: 1px solid #ad947e
}

.ltm-page .ltm-quote {
    font-family: 'Playfair Display',serif;
    font-size: 29px;
    color: #947b66;
    line-height: 1.4
}

.ltm-page .et_pb_image,.ltm-page .et_pb_text {
    animation: ltm26reveal .8s both
}

@keyframes ltm26reveal {
    from {
        opacity: 0;
        transform: translateY(24px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@media(max-width: 980px) {
    .ltm-page.ltm-hero {
        min-height:530px
    }

    .ltm-page.ltm-hero .et_pb_row {
        min-height: 460px;
        padding-top: 75px!important;
        padding-bottom: 75px!important
    }

    .ltm-page.ltm-section {
        padding: 80px 0
    }

    .ltm-page.ltm-intro .et_pb_row,.ltm-page.ltm-after .et_pb_row {
        display: block
    }

    .ltm-page.ltm-intro .et_pb_column,.ltm-page.ltm-after .et_pb_column {
        margin-bottom: 35px!important
    }

    .ltm-page.ltm-card .et_pb_row,.ltm-page.ltm-steps .et_pb_row {
        flex-wrap: wrap
    }

    .ltm-page.ltm-card .et_pb_column {
        flex: 1 1 45%
    }

    .ltm-page.ltm-steps .et_pb_column {
        flex: 1 1 100%;
        border-right: 0;
        border-bottom: 1px solid #cccac1
    }

    .ltm-page.ltm-steps .et_pb_text {
        min-height: 0;
        padding: 34px 14px
    }

    .ltm-page .ltm-image img {
        min-height: 320px;
        max-height: 530px
    }
}

@media(max-width: 640px) {
    .ltm-page h1 {
        font-size:clamp(43px,11.5vw,65px)
    }

    .ltm-page h2 {
        font-size: clamp(37px,10vw,49px)
    }

    .ltm-page.ltm-hero {
        min-height: 510px;
        background-position: 57% center
    }

    .ltm-page.ltm-hero .et_pb_row {
        min-height: 430px;
        padding: 58px 0!important
    }

    .ltm-page.ltm-card .et_pb_row {
        display: block
    }

    .ltm-page.ltm-card .et_pb_column {
        margin-bottom: 12px!important
    }

    .ltm-page.ltm-card .et_pb_text {
        min-height: 0;
        padding: 27px 25px
    }

    .ltm-page .ltm-number {
        font-size: 48px;
        margin-bottom: 16px
    }

    .ltm-page.ltm-section {
        padding: 65px 0
    }

    .ltm-page.ltm-cta {
        padding: 85px 0
    }

    .ltm-page .ltm-image img {
        border-radius: 145px 145px 4px 4px
    }

    .ltm-page.ltm-after .ltm-image img {
        border-radius: 4px 4px 140px 140px
    }

    .ltm-page.ltm-dark:before {
        font-size: 100px;
        bottom: 0
    }

    .ltm-page.ltm-hero:after {
        display: none
    }
}

@media(prefers-reduced-motion:reduce) {
    .ltm-page * {
        animation: none!important;
        transition: none!important
    }
}

.ltm-page.ltm-interlude .et_pb_row {
    width: 100%;
    max-width: 100%;
    padding: 0
}

.ltm-page.ltm-interlude .et_pb_image {
    margin: 0!important
}

.ltm-page.ltm-interlude img {
    width: 100%;
    height: clamp(250px,36vw,530px);
    object-fit: cover;
    object-position: center 40%;
    filter: saturate(.7)
}

/* Photos modulaires ajoutées — chaque image reste modifiable dans Divi */
.ltm-page.ltm-split-photo .et_pb_row {
    display: flex;
    align-items: center;
    gap: clamp(35px,6vw,105px)
}

.ltm-page.ltm-split-photo .et_pb_column {
    flex: 1;
    min-width: 0;
    margin: 0!important
}

.ltm-page.ltm-split-photo .ltm-feature-photo img {
    display: block;
    width: 100%;
    height: clamp(420px,43vw,620px);
    object-fit: cover;
    /* border-radius:200px 200px 12px 12px; */
}

.ltm-page.ltm-dark.ltm-split-photo .et_pb_row {
    max-width: 1250px
}

.ltm-page.ltm-dark.ltm-split-photo .ltm-feature-photo img {
    /* border-radius:12px 200px 12px 12px; */
    filter: saturate(.75);
}

.ltm-page.ltm-card .ltm-card-photo {
    margin-bottom: 0!important;
    overflow: hidden
}

.ltm-page.ltm-card .ltm-card-photo img {
    width: 100%;
    height: 170px;
    object-fit: cover;
    display: block;
    filter: saturate(.72);
    transition: transform .45s ease
}

.ltm-page.ltm-card .et_pb_column:hover .ltm-card-photo img {
    transform: scale(1.055)
}

.ltm-page.ltm-card .et_pb_text {
    height: auto;
    min-height: 255px;
    padding: 29px 27px 32px;
    box-sizing: border-box
}

.ltm-page.ltm-card .ltm-number {
    font-size: 47px;
    margin-bottom: 21px
}

.ltm-page.ltm-steps .ltm-step-photo {
    margin: 0!important;
    overflow: hidden
}

.ltm-page.ltm-steps .ltm-step-photo img {
    display: block;
    width: 100%;
    height: 195px;
    object-fit: cover;
    filter: saturate(.78)
}

.ltm-page.ltm-steps .et_pb_text {
    padding: 29px 27px 35px;
    min-height: 330px
}

.ltm-page.ltm-steps .ltm-number {
    font-size: 54px;
    margin-bottom: 19px
}

@media(max-width: 980px) {
    .ltm-page.ltm-split-photo .et_pb_row {
        display:block
    }

    .ltm-page.ltm-split-photo .et_pb_column {
        width: 100%!important;
        margin-bottom: 28px!important
    }

    .ltm-page.ltm-split-photo .ltm-feature-photo img {
        height: 390px
    }

    .ltm-page.ltm-card .ltm-card-photo img {
        height: 190px
    }
}

@media(max-width: 640px) {
    .ltm-page.ltm-split-photo .ltm-feature-photo img {
        height:340px;
        border-radius: 145px 145px 9px 9px
    }

    .ltm-page.ltm-card .ltm-card-photo img {
        height: 220px
    }

    .ltm-page.ltm-card .et_pb_text {
        min-height: 0
    }

    .ltm-page.ltm-steps .et_pb_text {
        min-height: 0
    }
}

/* LABO T | Refonte Premium Microneedling 2026 — styles de la page seulement */
.ltm-page {
    --labo-ink: #26392f;
    --labo-gold: #b3997b;
    --labo-cream: #f7f5f0;
    --labo-sage: #eaf0e9;
    --labo-border: #e8e6df
}

.ltm-page.ltm-hero {
    min-height: 580px;
    background-position: center 44%;
}

.ltm-page.ltm-hero .et_pb_row {
    min-height: 485px;
    padding-top: 74px!important;
    padding-bottom: 75px!important
}

.ltm-page.ltm-hero h1 {
    font-size: clamp(47px,5.65vw,84px);
    max-width: 950px;
    letter-spacing: -.035em
}

.ltm-page.ltm-hero:after {
    content: 'LABO T  /  MICRONEEDLING'
}

.ltm-page.ltm-section {
    padding-top: 105px;
    padding-bottom: 105px
}

.ltm-page.ltm-benefits-wrap,.ltm-page.ltm-steps-wrap {
    padding: 105px 0 115px;
    position: relative;
    overflow: hidden
}

.ltm-page.ltm-benefits-wrap {
    background: #f5f3ed
}

.ltm-page.ltm-steps-wrap {
    background: #f1f1f1;
}

.ltm-page.ltm-benefits-wrap:before,.ltm-page.ltm-steps-wrap:before {
    content: '';
    width: 420px;
    height: 420px;
    position: absolute;
    right: -210px;
    top: -175px;
    border: 1px solid rgba(179,153,123,.25);
    border-radius: 50%;
    pointer-events: none
}

.ltm-page.ltm-benefits-wrap>.et_pb_row:first-child,.ltm-page.ltm-steps-wrap>.et_pb_row:first-child {
    margin-bottom: 40px!important
}

.ltm-page.ltm-benefits-wrap>.et_pb_row:first-child .et_pb_text,.ltm-page.ltm-steps-wrap>.et_pb_row:first-child .et_pb_text {
    text-align: center;
    max-width: 850px;
    margin: auto
}

.ltm-page.ltm-benefits-wrap>.et_pb_row:first-child h2,.ltm-page.ltm-steps-wrap>.et_pb_row:first-child h2 {
    font-size: clamp(38px,4.1vw,64px);
    max-width: 850px;
    margin: 0 auto 22px
}

.ltm-page.ltm-benefits-wrap>.et_pb_row:first-child p {
    max-width: 650px;
    margin: auto
}

.ltm-page.ltm-benefits-wrap>.et_pb_row:not(:first-child),.ltm-page.ltm-steps-wrap>.et_pb_row:not(:first-child) {
    /* display:grid!important; */
    /* grid-template-columns:repeat(3,minmax(0,1fr)); */
    gap: 22px;
    width: 88%;
    max-width: 1340px;
    padding: 0!important
}

.ltm-page.ltm-benefits-wrap>.et_pb_row:not(:first-child) {
    margin-bottom: 22px!important
}

.ltm-page.ltm-benefits-wrap>.et_pb_row:not(:first-child)>.et_pb_column,.ltm-page.ltm-steps-wrap>.et_pb_row:not(:first-child)>.et_pb_column {
    /* width:100%!important; */
    /* margin:0!important; */
    /* padding:0!important; */
    /* float:none!important; */
    /* display:flex; */
    flex-direction: column;
    background: #fff;
    border: 1px solid rgba(38,57,47,.08);
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 10px 35px rgba(38,57,47,.055);
    transition: transform .4s ease,box-shadow .4s ease;
    /* gap: 30px !important; */
	
	margin-right:0 !important;
}

.ltm-page.ltm-benefits-wrap>.et_pb_row:not(:first-child)>.et_pb_column:hover,.ltm-page.ltm-steps-wrap>.et_pb_row:not(:first-child)>.et_pb_column:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 46px rgba(38,57,47,.13)
}

.ltm-page .ltm-premium-card-image {
    margin-bottom: 0!important;
    overflow: hidden;
    order: 0
}

.ltm-page .ltm-premium-card-image img {
    display: block!important;
    width: 100%!important;
    height: 205px!important;
    object-fit: cover!important;
    filter: saturate(.82);
    border-radius: 0!important;
    transition: transform .7s cubic-bezier(.2,.7,.3,1)
}

.ltm-page .et_pb_column:hover>.ltm-premium-card-image img {
    transform: scale(1.065)
}

.ltm-page.ltm-benefits-wrap .et_pb_column>.et_pb_text,.ltm-page.ltm-steps-wrap .et_pb_column>.et_pb_text {
    order: 1;
    background: transparent!important;
    border: 0!important;
    box-shadow: none!important;
    transform: none!important;
    border-radius: 0!important;
    min-height: 0!important;
    height: auto!important;
    padding: 27px 30px 34px!important;
    /* margin:0!important; */
    /* flex:1; */
}

.ltm-page.ltm-benefits-wrap .et_pb_column h3,.ltm-page.ltm-steps-wrap .et_pb_column h3 {
    font-size: clamp(23px,2vw,29px);
    margin: 0 0 13px;
    letter-spacing: -.03em;
    line-height: 1.25
}

.ltm-page.ltm-benefits-wrap .et_pb_column p,.ltm-page.ltm-steps-wrap .et_pb_column p {
    font-size: 14px;
    line-height: 1.75;
    margin: 0;
    color: #5a655f
}

.ltm-page.ltm-benefits-wrap .ltm-number,.ltm-page.ltm-steps-wrap .ltm-number {
    font: 500 11px 'Manrope',sans-serif;
    color: #9b8068;
    letter-spacing: .2em;
    margin-bottom: 15px;
    border: 1px solid #d6c7b6;
    border-radius: 40px;
    display: inline-flex;
    width: 42px;
    height: 31px;
    align-items: center;
    justify-content: center
}

.ltm-page.ltm-steps-wrap .ltm-premium-card-image img {
    height: 240px!important
}

.ltm-page.ltm-steps-wrap .et_pb_column>.et_pb_text {
    padding: 32px 31px 40px!important
}

.ltm-page.ltm-steps-wrap .et_pb_column h3 {
    font-size: 26px
}

.ltm-page.ltm-intro .ltm-image img,.ltm-page.ltm-after .ltm-image img {
    /* border-radius:18px 170px 18px 18px; */
}

.ltm-page.ltm-cta {
    background: #e9e1d7;
    padding: 110px 0
}

.ltm-page .ltm-pill {
    background: #000000;
    border-radius: 50px;
    padding: 18px 30px
}

.ltm-page .ltm-pill:hover {
    background: #8f765e
}

@media(max-width: 980px) {
    .ltm-page.ltm-benefits-wrap>.et_pb_row:not(:first-child),.ltm-page.ltm-steps-wrap>.et_pb_row:not(:first-child) {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }

    .ltm-page.ltm-benefits-wrap,.ltm-page.ltm-steps-wrap {
        padding: 75px 0
    }

    .ltm-page.ltm-steps-wrap .et_pb_row:not(:first-child)>.et_pb_column:last-child {
        grid-column: 1/-1
    }
}

@media(max-width: 640px) {
    .ltm-page.ltm-benefits-wrap>.et_pb_row:not(:first-child),.ltm-page.ltm-steps-wrap>.et_pb_row:not(:first-child) {
        grid-template-columns:1fr;
        gap: 16px
    }

    .ltm-page.ltm-steps-wrap .et_pb_row:not(:first-child)>.et_pb_column:last-child {
        grid-column: auto
    }

    .ltm-page.ltm-benefits-wrap>.et_pb_row:not(:first-child) {
        margin-bottom: 16px!important
    }

    .ltm-page .ltm-premium-card-image img {
        height: 225px!important
    }

    .ltm-page.ltm-benefits-wrap,.ltm-page.ltm-steps-wrap {
        padding: 60px 0
    }

    .ltm-page.ltm-benefits-wrap .et_pb_column>.et_pb_text,.ltm-page.ltm-steps-wrap .et_pb_column>.et_pb_text {
        padding: 24px 25px 29px!important
    }

    .ltm-page.ltm-hero h1 {
        font-size: clamp(41px,10vw,55px)
    }

    .ltm-page.ltm-hero {
        min-height: 470px
    }
}

@media(prefers-reduced-motion:reduce) {
    .ltm-page .et_pb_column,.ltm-page .ltm-premium-card-image img {
        transition: none!important
    }
}
.ltm-page .ltm-premium-card-image img {
    display: none !important;
}