/* Expertises 2 : mêmes cadres que la page expertises,
   sur les modules Texte et Image déjà dans Divi. */

html body.ah-page-exp2 .et-l--post .et_pb_section {
  padding: clamp(28px, 4vw, 48px) clamp(16px, 2vw, 28px) !important;
  background: #f7f0ea !important;
}

html body.ah-page-exp2 .et-l--post .et_pb_row {
  display: flow-root !important;
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  float: none !important;
}

html body.ah-page-exp2 .et-l--post .et_pb_column {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.ah-page-exp2 .et-l--post .et_pb_row::before,
html body.ah-page-exp2 .et-l--post .et_pb_row::after,
html body.ah-page-exp2 .et-l--post .et_pb_column::before,
html body.ah-page-exp2 .et-l--post .et_pb_column::after {
  content: none !important;
  display: none !important;
}

html body.ah-page-exp2 .ah-x2-intro h1,
html body.ah-page-exp2 .ah-x2-intro p,
html body.ah-page-exp2 .ah-x2-colonnes p {
  color: #3e2716 !important;
  -webkit-text-fill-color: #3e2716 !important;
}

html body.ah-page-exp2 .ah-x2-intro h1 {
  margin: 0 0 22px !important;
  font-size: clamp(34px, 3.5vw, 52px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em;
}

html body.ah-page-exp2 .ah-x2-ligne,
html body.ah-page-exp2 .ah-x2-ligne--2 {
  display: block;
}

html body.ah-page-exp2 .ah-x2-ligne--2 {
  color: #a87d43 !important;
  -webkit-text-fill-color: #a87d43 !important;
}

html body.ah-page-exp2 .ah-x2-intro h1::before {
  content: "";
  display: block;
  width: 21px;
  height: 21px;
  margin: 0 0 18px;
  border-radius: 50%;
  background: #b07030;
}

/* Première section : texte à gauche, photo pleine hauteur à droite. */

html body.ah-page-exp2 .et-l--post .ah-x2-intro {
  padding: 0 !important;
  background: #f7f0ea !important;
}

html body.ah-page-exp2 .et-l--post .ah-x2-intro > .et_pb_row {
  display: flex !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-height: clamp(560px, 78vh, 840px);
}

html body.ah-page-exp2 .et-l--post .ah-x2-intro > .et_pb_row > .et_pb_column {
  width: 50% !important;
  max-width: 50% !important;
}

html body.ah-page-exp2 .ah-x2-intro .et_pb_column:first-child {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  padding: clamp(48px, 7vh, 96px) clamp(36px, 4.6vw, 88px) !important;
}

html body.ah-page-exp2 .ah-x2-intro .et_pb_image {
  position: relative !important;
  min-height: clamp(560px, 78vh, 840px);
  height: auto !important;
  margin: 0 !important;
  overflow: hidden;
}

html body.ah-page-exp2 .ah-x2-intro .et_pb_image_wrap {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.ah-page-exp2 .ah-x2-intro .et_pb_image img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center;
}

html body.ah-page-exp2 .ah-x2-intro p {
  max-width: 36em !important;
  margin: 0 0 14px !important;
  font-size: clamp(16px, 1.15vw, 18px) !important;
  line-height: 1.65 !important;
}

html body.ah-page-exp2 .et-l--post .et_pb_section.ah-x2-colonnes {
  background: #4c250a !important;
  padding: clamp(56px, 8vh, 104px) clamp(28px, 5vw, 80px) !important;
}

html body.ah-page-exp2 .ah-x2-colonnes .et_pb_row,
html body.ah-page-exp2 .ah-x2-colonnes .et_pb_column,
html body.ah-page-exp2 .ah-x2-colonnes .et_pb_text,
html body.ah-page-exp2 .ah-x2-colonnes .et_pb_text_inner {
  background: transparent !important;
}

html body.ah-page-exp2 .et-l--post .ah-x2-colonnes > .et_pb_row {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 1240px !important;
  gap: clamp(28px, 4vw, 72px);
}

html body.ah-page-exp2 .et-l--post .ah-x2-colonnes > .et_pb_row > .et_pb_column {
  width: 50% !important;
  max-width: 50% !important;
}

html body.ah-page-exp2 .ah-x2-colonnes .et_pb_text_inner {
  display: flex !important;
  flex-direction: column;
  gap: 40px;
  max-width: none;
  margin: 0 !important;
}

html body.ah-page-exp2 .ah-x2-colonnes p,
html body.ah-page-exp2 .ah-x2-colonnes p .ah-vague-mot {
  color: #f7f2ec !important;
  -webkit-text-fill-color: #f7f2ec !important;
}

html body.ah-page-exp2 .ah-x2-colonnes p {
  margin: 0 !important;
  padding-top: 18px;
  font-size: clamp(16px, 1.1vw, 18px) !important;
  line-height: 1.65 !important;
  position: relative;
}

html body.ah-page-exp2 .ah-x2-colonnes p::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 4px;
  background-color: transparent;
  background-image: url("../img/separateur-logo-blanc.svg");
  background-repeat: repeat-x;
  background-position: left center;
  background-size: auto 4px;
  -webkit-mask-image: none;
          mask-image: none;
}

/* Les nouvelles photos passent dans le sigle, pas dans un logo AH. */

html body.ah-page-exp2 .ah-x2-sigle {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

html body.ah-page-exp2 .ah-x2-sigle__forme {
  position: relative;
  width: calc(500 / 901 * clamp(340px, 48vh, 520px));
  height: clamp(340px, 48vh, 520px);
  max-width: 100%;
  overflow: hidden;
  pointer-events: none;
  -webkit-mask-image: url("../img/isotype-mesure-blanc.svg");
          mask-image: url("../img/isotype-mesure-blanc.svg");
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}

html body.ah-page-exp2 .ah-x2-sigle .et_pb_image,
html body.ah-page-exp2 .ah-x2-sigle .et_pb_image_wrap,
html body.ah-page-exp2 .ah-x2-sigle img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center;
}

html body.ah-page-exp2 .ah-x2-sigle .et_pb_image {
  opacity: 0;
}

html body.ah-page-exp2 .ah-x2-sigle .et_pb_image:first-child,
html body.ah-page-exp2 .ah-x2-sigle.ah-x2-sigle--pret .et_pb_image {
  opacity: var(--ah-p, 0);
  transition: opacity 0.6s ease;
}

html body.ah-page-exp2 .ah-x2-sigle .et_pb_image:first-child {
  --ah-p: 1;
}

html body.ah-page-exp2 .ah-x2-grille .et_pb_column {
  position: relative;
}

html body.ah-page-exp2 a.ah-x2-lien {
  position: absolute;
  inset: 0;
  z-index: 4;
}

html body.ah-page-exp2 .ah-x2-grille .et_pb_row {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  max-width: none !important;
}

html body.ah-page-exp2 .ah-x2-arch,
html body.ah-page-exp2 .ah-x2-cle {
  grid-column: 1 / -1;
  display: grid !important;
  gap: 12px;
  align-items: stretch;
}

html body.ah-page-exp2 .ah-x2-arch {
  grid-template-columns: 1.72fr 1fr;
}

html body.ah-page-exp2 .ah-x2-cle {
  grid-template-columns: 1fr 1.72fr;
}

html body.ah-page-exp2 .ah-x2-arch .et_pb_image { order: 1; }
html body.ah-page-exp2 .ah-x2-arch .et_pb_text { order: 2; }
html body.ah-page-exp2 .ah-x2-cle .et_pb_image { order: 2; }
html body.ah-page-exp2 .ah-x2-cle .et_pb_text { order: 1; }

html body.ah-page-exp2 .ah-x2-arch .et_pb_image,
html body.ah-page-exp2 .ah-x2-cle .et_pb_image,
html body.ah-page-exp2 .ah-x2-arch .et_pb_image_wrap,
html body.ah-page-exp2 .ah-x2-cle .et_pb_image_wrap {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

html body.ah-page-exp2 .ah-x2-arch img,
html body.ah-page-exp2 .ah-x2-cle img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  aspect-ratio: 16 / 10;
  object-fit: cover !important;
}

html body.ah-page-exp2 .ah-x2-arch .et_pb_text,
html body.ah-page-exp2 .ah-x2-cle .et_pb_text {
  display: flex !important;
  flex-direction: column;
  justify-content: flex-end;
  margin: 0 !important;
  padding: clamp(28px, 3vw, 48px) !important;
  background: #4c250a !important;
}

html body.ah-page-exp2 .ah-x2-deco,
html body.ah-page-exp2 .ah-x2-reno {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

html body.ah-page-exp2 .ah-x2-deco .et_pb_image,
html body.ah-page-exp2 .ah-x2-reno .et_pb_image,
html body.ah-page-exp2 .ah-x2-deco .et_pb_image_wrap,
html body.ah-page-exp2 .ah-x2-reno .et_pb_image_wrap,
html body.ah-page-exp2 .ah-x2-deco img,
html body.ah-page-exp2 .ah-x2-reno img {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  object-fit: cover !important;
}

html body.ah-page-exp2 .ah-x2-arch .et_pb_image_wrap,
html body.ah-page-exp2 .ah-x2-cle .et_pb_image_wrap {
  position: relative;
}

html body.ah-page-exp2 .ah-x2-grille .et_pb_image_wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(76, 37, 10, 0.42);
  opacity: 0;
  transition: opacity 0.45s ease;
  z-index: 1;
  pointer-events: none;
}

html body.ah-page-exp2 .ah-x2-grille .et_pb_column:hover .et_pb_image_wrap::after,
html body.ah-page-exp2 .ah-x2-grille .et_pb_column.est-survol .et_pb_image_wrap::after {
  opacity: 1;
}

html body.ah-page-exp2 .ah-x2-deco .et_pb_text,
html body.ah-page-exp2 .ah-x2-reno .et_pb_text {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 46%;
  z-index: 2;
  display: flex !important;
  flex-direction: column;
  margin: 0 !important;
  padding: clamp(28px, 3vw, 44px) clamp(22px, 2.2vw, 36px) !important;
  background: #4c250a !important;
}

html body.ah-page-exp2 .ah-x2-deco .et_pb_text {
  right: 0 !important;
  left: auto !important;
  justify-content: flex-start;
}

html body.ah-page-exp2 .ah-x2-reno .et_pb_text {
  left: 0 !important;
  right: auto !important;
  justify-content: flex-end;
}

html body.ah-page-exp2 .ah-x2-grille .et_pb_text_inner {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  position: relative;
  max-width: 10em;
  padding-top: 0;
  color: #f7f2ec !important;
  -webkit-text-fill-color: #f7f2ec !important;
  font-size: clamp(26px, 2.2vw, 40px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em;
  transition: transform 0.55s cubic-bezier(.22, 1, .36, 1) !important;
}

html body.ah-page-exp2 .ah-x2-grille .et_pb_column:hover .et_pb_text_inner,
html body.ah-page-exp2 .ah-x2-grille .et_pb_column.est-survol .et_pb_text_inner {
  transform: translateY(-18px) !important;
}

html body.ah-page-exp2 .ah-x2-grille .et_pb_text_inner::before {
  content: "";
  flex: 0 0 21px;
  width: 21px;
  height: 21px;
  margin-top: 0.12em;
  border-radius: 50%;
  background: #b07030;
}

html body.ah-page-exp2 .ah-vague-mot {
  display: inline-block;
  opacity: 0.5;
}

html body.ah-page-exp2 .ah-vague-mot.ah-vague-on,
html body.ah-page-exp2 .ah-vague-mot.ah-vague-lu {
  opacity: 1;
}

html body.ah-page-exp2 .ah-vague-mot.ah-vague-on {
  animation: ah-x2-lecture 0.7s ease both;
}

@keyframes ah-x2-lecture {
  0% { transform: translateY(0); }
  35% { transform: translateY(-4px); }
  100% { transform: translateY(0); }
}

@media (max-width: 980px) {
  html body.ah-page-exp2 .et-l--post .ah-x2-intro > .et_pb_row {
    flex-direction: column;
    min-height: 0;
  }

  html body.ah-page-exp2 .et-l--post .ah-x2-intro > .et_pb_row > .et_pb_column {
    width: 100% !important;
    max-width: none !important;
  }

  html body.ah-page-exp2 .ah-x2-intro .et_pb_column:first-child {
    padding: 36px 22px 28px !important;
  }

  html body.ah-page-exp2 .ah-x2-intro h1 {
    font-size: clamp(28px, 8vw, 34px) !important;
  }

  html body.ah-page-exp2 .ah-x2-intro p {
    font-size: 18px !important;
    line-height: 1.65 !important;
  }

  html body.ah-page-exp2 .ah-x2-intro .et_pb_image,
  html body.ah-page-exp2 .ah-x2-intro .et_pb_image_wrap {
    width: 100% !important;
    min-height: 72vw;
    height: 72vw !important;
  }

  html body.ah-page-exp2 .et-l--post .ah-x2-colonnes > .et_pb_row {
    flex-direction: column;
    gap: 36px;
  }

  html body.ah-page-exp2 .et-l--post .ah-x2-colonnes > .et_pb_row > .et_pb_column {
    width: 100% !important;
    max-width: none !important;
  }

  html body.ah-page-exp2 .ah-x2-sigle__forme {
    width: calc(500 / 901 * min(78vw, 460px));
    height: min(78vw, 460px);
  }

  html body.ah-page-exp2 .et-l--post .et_pb_section.ah-x2-colonnes {
    padding: 48px 22px !important;
  }

  html body.ah-page-exp2 .ah-x2-colonnes .et_pb_text_inner {
    max-width: none;
    gap: 28px;
  }

  html body.ah-page-exp2 .ah-x2-colonnes p {
    font-size: 18px !important;
    line-height: 1.7 !important;
  }

  html body.ah-page-exp2 .et-l--post .ah-x2-grille {
    padding: 12px !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_row {
    grid-template-columns: 1fr !important;
    gap: 12px;
  }

  html body.ah-page-exp2 .ah-x2-arch,
  html body.ah-page-exp2 .ah-x2-cle,
  html body.ah-page-exp2 .ah-x2-deco,
  html body.ah-page-exp2 .ah-x2-reno {
    display: flex !important;
    flex-direction: column;
    grid-template-columns: 1fr !important;
    grid-column: auto;
    aspect-ratio: auto;
    height: auto !important;
    min-height: 0;
    overflow: visible;
  }

  html body.ah-page-exp2 .ah-x2-arch .et_pb_image,
  html body.ah-page-exp2 .ah-x2-cle .et_pb_image,
  html body.ah-page-exp2 .ah-x2-deco .et_pb_image,
  html body.ah-page-exp2 .ah-x2-reno .et_pb_image,
  html body.ah-page-exp2 .ah-x2-arch .et_pb_image_wrap,
  html body.ah-page-exp2 .ah-x2-cle .et_pb_image_wrap,
  html body.ah-page-exp2 .ah-x2-deco .et_pb_image_wrap,
  html body.ah-page-exp2 .ah-x2-reno .et_pb_image_wrap {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    order: 1;
    width: 100% !important;
    height: 68vw !important;
    min-height: 210px;
    margin: 0 !important;
  }

  html body.ah-page-exp2 .ah-x2-arch img,
  html body.ah-page-exp2 .ah-x2-cle img,
  html body.ah-page-exp2 .ah-x2-deco img,
  html body.ah-page-exp2 .ah-x2-reno img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    aspect-ratio: auto;
    object-fit: cover !important;
  }

  html body.ah-page-exp2 .ah-x2-deco .et_pb_text,
  html body.ah-page-exp2 .ah-x2-reno .et_pb_text,
  html body.ah-page-exp2 .ah-x2-arch .et_pb_text,
  html body.ah-page-exp2 .ah-x2-cle .et_pb_text {
    position: relative !important;
    inset: auto !important;
    order: 2;
    width: 100% !important;
    left: auto !important;
    right: auto !important;
    min-height: 0;
    padding: 28px 22px !important;
    justify-content: flex-start;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_text_inner {
    max-width: none;
    font-size: clamp(26px, 7vw, 34px) !important;
  }

  html body.ah-page-exp2 .ah-x2-deco:hover .et_pb_image_wrap::after,
  html body.ah-page-exp2 .ah-x2-reno:hover .et_pb_image_wrap::after,
  html body.ah-page-exp2 .ah-x2-arch:hover .et_pb_image_wrap::after,
  html body.ah-page-exp2 .ah-x2-cle:hover .et_pb_image_wrap::after,
  html body.ah-page-exp2 .ah-x2-grille .et_pb_column:hover .et_pb_image_wrap::after,
  html body.ah-page-exp2 .ah-x2-grille .et_pb_column:active .et_pb_image_wrap::after,
  html body.ah-page-exp2 .ah-x2-grille .et_pb_column.est-survol .et_pb_image_wrap::after {
    opacity: 1 !important;
    background: rgba(76, 37, 10, 0.62) !important;
    z-index: 3 !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_image img {
    z-index: 0;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_text {
    overflow: visible !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_column:hover .et_pb_text_inner,
  html body.ah-page-exp2 .ah-x2-grille .et_pb_column:active .et_pb_text_inner,
  html body.ah-page-exp2 .ah-x2-grille .et_pb_column.est-survol .et_pb_text_inner {
    transform: translateY(-18px) !important;
  }
}

/* Disque des cartes. Il suit la souris et porte le lien du titre affiché. */
html body.ah-page-exp2 .ah-deco-disque {
  --ah-disque: clamp(104px, 9.5vw, 148px);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999998;
  display: block;
  width: var(--ah-disque);
  height: var(--ah-disque);
  margin: calc(var(--ah-disque) / -2) 0 0 calc(var(--ah-disque) / -2);
  padding: 0;
  border: 0;
  background: transparent;
  overflow: visible;
  opacity: 0;
  pointer-events: none;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.35s ease;
}

html body.ah-page-exp2 .ah-deco-disque.est-visible {
  opacity: 1;
  pointer-events: auto;
}

html body.ah-page-exp2 .ah-deco-disque__corps,
html body.ah-page-exp2 .ah-deco-disque__spin {
  position: absolute;
  inset: 0;
  display: block;
}

html body.ah-page-exp2 .ah-deco-disque__spin {
  transform-origin: 50% 50%;
}

html body.ah-page-exp2 .ah-deco-disque__fond {
  position: absolute;
  inset: 0;
  display: block;
  background: #72632a;
  -webkit-mask: url("../img/selecteur-hero-ah.svg") center / contain no-repeat;
  mask: url("../img/selecteur-hero-ah.svg") center / contain no-repeat;
}

html body.ah-page-exp2 .ah-deco-disque__anneau {
  width: 100%;
  height: 100%;
  overflow: visible;
  fill: #ffffff;
}

html body.ah-page-exp2 .ah-deco-disque__anneau text {
  font-size: 8.4px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  fill: #ffffff;
}

/* Panneau chocolat : texte blanc. Photo claire : texte marron. Le centre reste le modèle de base. */
html body.ah-page-exp2 .ah-deco-disque.est-photo .ah-deco-disque__anneau,
html body.ah-page-exp2 .ah-deco-disque.est-photo .ah-deco-disque__anneau text {
  fill: #4c250a;
}

html body.ah-page-exp2.ah-deco-disque-suit .ah-rond {
  opacity: 0 !important;
}

html body.ah-page-exp2 .ah-deco-disque:focus-visible {
  outline: 2px solid #b07030;
  outline-offset: 3px;
}

@media (max-width: 980px) {
  html body.ah-page-exp2 .ah-deco-disque {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.ah-page-exp2 .ah-vague-mot {
    opacity: 1;
    animation: none;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_text_inner {
    transform: none !important;
    transition: none;
  }
}

/* Mobile : photo d'abord, puis le texte. Cartes empilées, bandeau sous la photo. */

@media (max-width: 980px) {
  html body.ah-page-exp2 .et-l--post .ah-x2-intro > .et_pb_row {
    display: flex !important;
    flex-direction: column;
  }

  html body.ah-page-exp2 .ah-x2-intro .et_pb_column:has(.et_pb_image) {
    order: 1;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  html body.ah-page-exp2 .ah-x2-intro .et_pb_column:not(:has(.et_pb_image)) {
    order: 2;
    width: 100% !important;
    max-width: none !important;
  }

  html body.ah-page-exp2 .et-l--post .ah-x2-colonnes > .et_pb_row {
    display: flex !important;
    flex-direction: column;
    align-items: stretch !important;
  }

  html body.ah-page-exp2 .ah-x2-colonnes .ah-x2-sigle {
    order: 1;
    width: 100% !important;
    max-width: none !important;
  }

  html body.ah-page-exp2 .ah-x2-colonnes .et_pb_column:not(.ah-x2-sigle) {
    order: 2;
    width: 100% !important;
    max-width: none !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .ah-x2-arch .et_pb_text,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-deco .et_pb_text,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-reno .et_pb_text,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-cle .et_pb_text {
    padding: 14px 16px 16px !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_text_inner {
    max-width: none !important;
    font-size: clamp(18px, 5vw, 22px) !important;
    line-height: 1.15 !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .ah-x2-arch .et_pb_image,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-deco .et_pb_image,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-reno .et_pb_image,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-cle .et_pb_image {
    height: 64vw !important;
    min-height: 200px;
  }
}

/* Recadrage : les photos sont en portrait, on garde le sujet dans le cadre. */
html body.ah-page-exp2 .ah-x2-arch img { object-position: center 42% !important; }
html body.ah-page-exp2 .ah-x2-deco img { object-position: center 62% !important; }
html body.ah-page-exp2 .ah-x2-reno img { object-position: center 32% !important; }
html body.ah-page-exp2 .ah-x2-cle img { object-position: center 34% !important; }

/* Ordinateur : quatre cartes égales, photo au-dessus, bandeau du titre en dessous. */
@media (min-width: 981px) {
  html body.ah-page-exp2 .et-l--post .ah-x2-grille {
    padding: 18px !important;
    background: #f7f0ea !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_row {
    grid-template-columns: 1fr 1fr !important;
    gap: 16px;
  }

  html body.ah-page-exp2 .ah-x2-grille .ah-x2-arch,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-deco,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-reno,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-cle {
    display: flex !important;
    flex-direction: column !important;
    grid-column: auto !important;
    grid-template-columns: none !important;
    aspect-ratio: auto !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0;
    margin: 0 !important;
    overflow: hidden;
    background: transparent;
  }

  html body.ah-page-exp2 .ah-x2-grille .ah-x2-arch .et_pb_image,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-deco .et_pb_image,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-reno .et_pb_image,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-cle .et_pb_image {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    order: 1;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .ah-x2-arch .et_pb_image_wrap,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-deco .et_pb_image_wrap,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-reno .et_pb_image_wrap,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-cle .et_pb_image_wrap {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 2;
    margin: 0 !important;
    overflow: hidden;
  }

  html body.ah-page-exp2 .ah-x2-grille .ah-x2-arch img,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-deco img,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-reno img,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-cle img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    aspect-ratio: auto;
    object-fit: cover !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .ah-x2-arch .et_pb_text,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-deco .et_pb_text,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-reno .et_pb_text,
  html body.ah-page-exp2 .ah-x2-grille .ah-x2-cle .et_pb_text {
    position: relative !important;
    inset: auto !important;
    order: 2;
    width: 100% !important;
    height: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    padding: 16px 20px 18px !important;
    background: #4c250a !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_text_inner {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    max-width: 16em !important;
    gap: 8px !important;
    font-size: clamp(17px, 1.15vw, 22px) !important;
  }

  html body.ah-page-exp2 .ah-x2-grille .et_pb_text_inner::before {
    flex: 0 0 11px;
    width: 11px;
    height: 11px;
    margin: 0 !important;
  }
}
