/* Portfolio project dialog: quieter, balanced facts and a stronger price/action hierarchy. */
.irp-dialog .irp-property-layout{
  grid-template-columns:minmax(0,1fr) minmax(290px,340px);
  align-items:start;
  gap:clamp(28px,3vw,52px);
  padding:clamp(24px,3vw,42px);
}
.irp-dialog .irp-dialog-intro{grid-column:1/-1;max-width:92ch}
.irp-dialog .irp-dialog-inner{grid-column:1;grid-row:2;min-width:0}
.irp-dialog .irp-property-sidebar{grid-column:2;grid-row:2;align-self:start}
.irp-dialog .irp-subheading{
  margin:0 0 12px;
  color:#000000;
  font-size:23px;
  letter-spacing:-.035em;
}
.irp-dialog .irp-note{
  max-width:68ch;
  margin:0 0 24px;
  color:#000000;
  font-size:15px;
  line-height:1.7;
}
.irp-dialog .irp-facts{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 30px;
  margin:22px 0 0;
  border-top:1px solid #e8e8e8;
}
.irp-dialog .irp-facts>.irp-detail-fact,
.irp-dialog .irp-facts>.irp-detail-fact:first-child{
  min-height:0;
  padding:19px 0 17px;
  border:0;
  border-bottom:1px solid #e8e8e8;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.irp-dialog .irp-detail-fact dt{
  gap:9px;
  color:#000000;
  font-size:11px;
  font-weight:600;
  letter-spacing:.035em;
}
.irp-dialog .irp-detail-fact dt svg{display:block;width:21px;height:21px;flex:none;color:#b18b4a;stroke-width:1.8}
.irp-dialog .irp-detail-fact dd{
  margin:9px 0 0;
  color:#000000;
  font-size:20px;
  letter-spacing:-.025em;
}
.irp-dialog .irp-detail-fact small{
  margin-top:5px;
  color:#000000;
  font-size:11px;
  line-height:1.5;
}
.irp-dialog .irp-preview-tags{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px;padding:0;list-style:none}
.irp-dialog .irp-preview-tag{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:5px 9px;border:1px solid #e6e6e6;border-radius:999px;background:#f7f8f7;color:#000000;font-size:11px;line-height:1.2;white-space:nowrap}
.irp-dialog .irp-preview-tag svg{width:14px;height:14px;flex:none;color:#b18b4a}
.irp-dialog .irp-reference-heading{margin-top:38px;margin-bottom:18px}
.irp-dialog .irp-reference-offers{margin-top:0}
.irp-dialog .irp-reference-offer-type{display:flex;align-items:center;gap:8px}
.irp-dialog .irp-reference-offer-type svg{width:17px;height:17px;flex:none;color:#b18b4a}
.irp-dialog .irp-reference-offer-type h4{margin:0}
.irp-dialog .irp-property-sidebar{top:0}
.irp-dialog .irp-property-contact-card{
  padding:21px 22px;
  border:1px solid #e6e6e6;
  border-radius:12px;
  background:#f8f8f6;
  box-shadow:none;
}
.irp-dialog .irp-property-price-label{
  color:#000000;
  font-size:12px;
}
.irp-dialog .irp-property-price{
  margin-top:6px;
  color:#000000;
  font-size:clamp(24px,2.1vw,28px);
  letter-spacing:-.035em;
}
.irp-dialog .irp-property-disclaimer,
.irp-dialog .irp-property-contact-note{
  color:#000000;
  font-size:12px;
  line-height:1.6;
}
.irp-dialog .irp-property-disclaimer{margin-top:7px}
.irp-dialog .irp-property-contact-note{margin-top:10px}
.irp-dialog .irp-dialog-actions{margin-top:15px}
.irp-dialog .irp-contact{
  width:100%;
  min-height:48px;
  border:1px solid #000000;
  border-radius:6px;
  background:#000000;
  color:#fff!important;
  font-size:13px;
  transition:background-color .18s ease,border-color .18s ease;
}
.irp-dialog .irp-contact:hover{border-color:#000000;background:#000000}
.irp-dialog .irp-contact svg{color:#e3c17a}
@media(max-width:900px){
  .irp-dialog .irp-property-layout{grid-template-columns:minmax(0,1fr) 280px;gap:24px;padding:24px}
}
@media(max-width:760px){
  .irp-dialog .irp-property-layout{grid-template-columns:1fr;gap:20px;padding:22px 20px 26px}
  .irp-dialog .irp-dialog-intro,.irp-dialog .irp-dialog-inner,.irp-dialog .irp-property-sidebar{grid-column:1;grid-row:auto}
  .irp-dialog .irp-property-contact-card{padding:19px 20px}
}
@media(max-width:480px){
  .irp-dialog .irp-property-layout{padding:20px 16px 24px}
  .irp-dialog .irp-facts{grid-template-columns:1fr}
  .irp-dialog .irp-facts>.irp-detail-fact{padding:15px 0}
  .irp-dialog .irp-property-contact-card{padding:18px}
}
@media(prefers-reduced-motion:reduce){.irp-dialog .irp-contact{transition:none}}

/* Currency is subordinate to the amount. */
.irp-portfolio .irp-currency,.irp-dialog .irp-currency{font-size:.65em!important;font-weight:400!important;letter-spacing:normal;white-space:nowrap;display:inline;}

/* Bandeau « Vendu » — coin supérieur gauche des cartes et de la fiche (20/10/2026). */
.irp-card,.p-card{position:relative}
.ire-sold-wrap{position:absolute;top:0;left:0;z-index:4;width:150px;height:150px;overflow:hidden;pointer-events:none;border-top-left-radius:inherit}
.ire-sold-ribbon{position:absolute;top:34px;left:-50px;width:210px;padding:9px 0 8px;transform:rotate(-45deg);background:linear-gradient(135deg,#8f0016 0%,#d1001f 45%,#e8112d 55%,#8f0016 100%);border-top:1px solid #f1d590;border-bottom:1px solid #f1d590;box-shadow:0 6px 18px rgba(0,0,0,.35),inset 0 0 0 1px rgba(255,255,255,.08);color:#fff;text-align:center;text-transform:uppercase;font:700 13px/1 'Plus Jakarta Sans',Inter,system-ui,sans-serif;letter-spacing:.32em;text-indent:.32em;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.irp-card.is-sold .irp-type{display:none}
.irp-dialog .irp-property-gallery>.ire-sold-ribbon{z-index:3;top:auto;left:auto;bottom:44px;right:-62px;width:250px;font-size:15px;padding:11px 0 10px}
.irp-property-badge.is-sold{background:#c4001d;border-color:#f1d590;color:#fff;letter-spacing:.12em;text-transform:uppercase}
.irp-property-badge.is-sold:before{background:#fff!important}

/* Quatre moyens de contact sur chaque fiche. */
.irp-dialog .irp-property-contact-title{margin:16px 0 10px;color:#111;font:700 13px/1.3 'Plus Jakarta Sans',Inter,system-ui,sans-serif;letter-spacing:.02em}
.irp-contact-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.irp-contact-option{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 12px;border:1px solid #000;border-radius:8px;background:#000;color:#f6e3b4!important;text-decoration:none!important;font:600 13px/1.25 'Plus Jakarta Sans',Inter,system-ui,sans-serif;transition:background .16s,color .16s,border-color .16s;min-width:0}
.irp-contact-option svg{flex:none;width:17px;height:17px;color:#e3c17a}
.irp-contact-option span{min-width:0;overflow-wrap:anywhere}
.irp-contact-option:hover,.irp-contact-option:focus-visible{background:#1a1a1a;border-color:#d9b66f;color:#fff!important}
.irp-contact-option:focus-visible{outline:2px solid #d9b66f;outline-offset:2px}
.irp-contact-option.is-whatsapp{background:#0f8a4f;border-color:#0f8a4f;color:#fff!important}
.irp-contact-option.is-whatsapp svg{color:#fff}
.irp-contact-option.is-whatsapp:hover,.irp-contact-option.is-whatsapp:focus-visible{background:#0b7040;border-color:#0b7040}
@media(max-width:380px){.irp-contact-options{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.irp-contact-option{transition:none}}

/* ==========================================================================
   Fiche projet 22/10/2026 : vidéo de couverture, galerie, CHF, performance.
   ========================================================================== */

/* Règle « couverture » : quel que soit le format envoyé (carré, portrait, panoramique),
   la photo remplit tout son cadre, recadrée au centre, sans bande noire ni déformation. */
.irp-card .irp-card-visual img,
.p-card>img,
.irp-dialog .irp-property-cover,
.irp-dialog .irp-gallery-thumb img{
  display:block;width:100%!important;height:100%!important;max-width:none!important;
  object-fit:cover!important;object-position:center center;
}
.irp-dialog .irp-property-cover{position:absolute;inset:0}
/* Vidéo : invisible tant qu'elle ne joue pas (la photo de couverture reste dessous), puis fondu.
   Aucun contrôle, bouton « lecture » ni lecteur natif n'est jamais affiché. */
.irp-dialog .irp-property-video{background:transparent;pointer-events:none;opacity:0;transition:opacity .7s ease}
.irp-dialog .irp-property-video.is-playing{opacity:1}
.irp-dialog .irp-property-video::-webkit-media-controls,
.irp-dialog .irp-property-video::-webkit-media-controls-enclosure,
.irp-dialog .irp-property-video::-webkit-media-controls-panel,
.irp-dialog .irp-property-video::-webkit-media-controls-overlay-play-button,
.irp-dialog .irp-property-video::-webkit-media-controls-start-playback-button,
.irp-dialog .irp-property-video::-webkit-media-controls-play-button{display:none!important;-webkit-appearance:none!important;opacity:0!important}
.irp-dialog .irp-property-gallery{background:#0b0b0b}
.irp-dialog .irp-property-gallery{isolation:isolate}

/* Galerie : miniatures discrètes, toutes au même format 4:3, défilement horizontal. */
.irp-dialog .irp-gallery{margin:26px 0 4px}
.irp-dialog .irp-gallery-heading{margin:0 0 12px;font-size:15px;letter-spacing:-.01em}
.irp-dialog .irp-gallery-frame{position:relative}
/* Effet fumé blanc sur les bords : les photos coupées disparaissent en douceur. */
.irp-dialog .irp-gallery-frame::before,
.irp-dialog .irp-gallery-frame::after{
  content:"";position:absolute;top:0;bottom:0;z-index:1;width:clamp(48px,9%,96px);
  pointer-events:none;opacity:0;transition:opacity .3s ease;
}
.irp-dialog .irp-gallery-frame::before{left:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.88) 30%,rgba(255,255,255,0) 100%)}
.irp-dialog .irp-gallery-frame::after{right:0;background:linear-gradient(270deg,#fff 0%,rgba(255,255,255,.88) 30%,rgba(255,255,255,0) 100%)}
.irp-dialog .irp-gallery-frame.has-prev::before,
.irp-dialog .irp-gallery-frame.has-next::after{opacity:1}
.irp-dialog .irp-gallery-track{
  display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px 0 4px;
}
.irp-dialog .irp-gallery-track::-webkit-scrollbar{display:none}
.irp-dialog .irp-gallery-thumb{
  flex:0 0 auto;width:clamp(108px,17vw,148px);aspect-ratio:4/3;height:auto;
  margin:0;padding:0;overflow:hidden;scroll-snap-align:start;
  border:1px solid #e6e6e6;border-radius:10px;background:#f1f1ef;cursor:zoom-in;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.irp-dialog .irp-gallery-thumb img{transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .3s ease;filter:saturate(.96)}
.irp-dialog .irp-gallery-thumb:hover{border-color:#c8a15d;box-shadow:0 6px 18px rgba(0,0,0,.09)}
.irp-dialog .irp-gallery-thumb:hover img,.irp-dialog .irp-gallery-thumb:focus-visible img{transform:scale(1.05);filter:none}
.irp-dialog .irp-gallery-thumb:focus-visible{outline:2px solid #c8a15d;outline-offset:2px}
.irp-dialog .irp-gallery-arrow{
  position:absolute;top:50%;z-index:3;display:grid;place-items:center;
  width:34px;height:34px;margin:0;padding:0;transform:translateY(-50%);
  border:1px solid #e3e3e3;border-radius:50%;background:#fff;color:#111;
  box-shadow:0 4px 14px rgba(0,0,0,.14);cursor:pointer;opacity:0;pointer-events:none;
  transition:opacity .2s ease,background-color .2s ease;
}
.irp-dialog .irp-gallery-arrow svg{width:17px;height:17px}
.irp-dialog .irp-gallery-arrow.is-prev{left:4px}
.irp-dialog .irp-gallery-arrow.is-next{right:4px}
.irp-dialog .irp-gallery-frame.is-scrollable .irp-gallery-arrow:not(:disabled){opacity:1;pointer-events:auto}
.irp-dialog .irp-gallery-arrow:hover{background:#c8a15d;border-color:#c8a15d;color:#fff}
@media(hover:none),(max-width:760px){.irp-dialog .irp-gallery-arrow{display:none}}

/* Photo agrandie : la photo seule, entière, sur fond sombre. */
.irp-dialog .irp-lightbox{
  position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;
  padding:clamp(56px,7vw,84px) clamp(12px,6vw,96px);background:rgba(6,6,6,.95);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);touch-action:pan-y;
  animation:irpLightboxIn .25s ease both;
}
.irp-dialog .irp-lightbox[hidden],.irp-dialog .irp-lightbox [hidden]{display:none!important}
.irp-dialog .irp-lightbox-image{
  display:block;max-width:min(100%,1500px);max-height:100%;width:auto;height:auto;
  object-fit:contain;border-radius:6px;box-shadow:0 30px 90px rgba(0,0,0,.55);user-select:none;-webkit-user-drag:none;
}
.irp-dialog .irp-lightbox-button{
  position:absolute;display:grid;place-items:center;width:46px;height:46px;margin:0;padding:0;
  border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(0,0,0,.45);color:#fff;cursor:pointer;
  transition:background-color .2s ease,border-color .2s ease;
}
.irp-dialog .irp-lightbox-button:hover,.irp-dialog .irp-lightbox-button:focus-visible{background:#c8a15d;border-color:#c8a15d}
.irp-dialog .irp-lightbox-button.is-close{top:max(14px,env(safe-area-inset-top));right:14px}
.irp-dialog .irp-lightbox-button.is-prev{left:14px;top:50%;transform:translateY(-50%)}
.irp-dialog .irp-lightbox-button.is-next{right:14px;top:50%;transform:translateY(-50%)}
.irp-dialog .irp-lightbox-count{position:absolute;left:50%;bottom:max(16px,env(safe-area-inset-bottom));transform:translateX(-50%);color:rgba(255,255,255,.75);font:500 12px/1 'Plus Jakarta Sans',sans-serif;letter-spacing:.14em}
@media(max-width:600px){
  .irp-dialog .irp-lightbox{padding:64px 0}
  .irp-dialog .irp-lightbox-image{border-radius:0}
  .irp-dialog .irp-lightbox-button.is-prev,.irp-dialog .irp-lightbox-button.is-next{top:auto;bottom:max(8px,env(safe-area-inset-bottom));transform:none;width:42px;height:42px}
}
@keyframes irpLightboxIn{from{opacity:0}to{opacity:1}}

/* Estimations en francs suisses. */
.irp-dialog .irp-chf{display:block;margin-top:4px;color:#6d6656;font:500 12px/1.4 'Plus Jakarta Sans',sans-serif;letter-spacing:0}
.irp-dialog .irp-property-chf{display:block;margin-top:5px;color:#8a6a2f;font:600 15px/1.35 'Plus Jakarta Sans',sans-serif}
.irp-dialog .irp-property-fx{margin:6px 0 0;color:#4a4a4a;font-size:11px;line-height:1.5}

/* Performance prévue / observée : mêmes petites cartes que les autres informations. */
.irp-dialog .irp-performance-block{margin-top:38px}
.irp-dialog .irp-performance-heading{margin:0 0 6px}
.irp-dialog .irp-performance-intro{margin:0 0 16px;color:#3a3a3a;font-size:13px;line-height:1.55}
.irp-dialog .irp-performance-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.irp-dialog .irp-performance-cards.is-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.irp-dialog .irp-performance-cards.is-two .irp-performance-card{padding:20px 22px}
.irp-dialog .irp-performance-card{display:flex;flex-direction:column;gap:6px;min-width:0;padding:16px 15px;border:1px solid #e6e6e6;border-radius:9px;background:#fff}
.irp-dialog .irp-performance-card.is-central{border-color:#d9c18f;background:#fdfbf7;box-shadow:inset 3px 0 0 #c8a15d}
.irp-dialog .irp-performance-label{display:flex;align-items:center;gap:8px;color:#000;font-size:11px;font-weight:600;line-height:1.35;letter-spacing:.03em}
.irp-dialog .irp-performance-label svg{width:17px;height:17px;flex:none;color:#b18b4a}
.irp-dialog .irp-performance-value{color:#000;font:600 20px/1.3 'Spline Sans',sans-serif;letter-spacing:-.02em;overflow-wrap:anywhere}
.irp-dialog .irp-performance-value.is-negative{color:#9b1c1c}
.irp-dialog .irp-performance-gain{align-self:flex-start;padding:3px 9px;border-radius:999px;background:#f5eddd;color:#7a5a22;font:700 12px/1.4 'Plus Jakarta Sans',sans-serif}
/* Mention discrète, une seule phrase. */
.irp-dialog .irp-legal{margin:12px 0 0;padding:0;border:0;background:none;color:#8a8a8a;font:400 11px/1.5 'Plus Jakarta Sans',sans-serif}
@media(max-width:600px){.irp-dialog .irp-performance-cards,.irp-dialog .irp-performance-cards.is-two{grid-template-columns:1fr}}

/* Boutons de contact : même bouton doré à faisceau lumineux que le reste du site. */
.irp-dialog .irp-contact-option,
.irp-dialog .irp-contact-option:visited,
.irp-dialog .irp-contact-option.is-whatsapp{
  position:relative;isolation:isolate;overflow:hidden;
  display:flex;align-items:center;justify-content:center;gap:9px;
  min-height:44px;padding:10px 14px;margin:0;
  background:#c8a15d;background-image:none;border:1px solid #c8a15d;border-radius:12px;
  color:#fff!important;-webkit-text-fill-color:#fff;
  font:500 12.5px/1.4 'Plus Jakarta Sans',sans-serif;letter-spacing:0;
  text-decoration:none!important;text-transform:none;box-shadow:none;cursor:pointer;
  transition:transform .2s ease,background-color .2s ease,border-color .2s ease;
}
.irp-dialog .irp-contact-option:hover,
.irp-dialog .irp-contact-option:focus-visible,
.irp-dialog .irp-contact-option.is-whatsapp:hover,
.irp-dialog .irp-contact-option.is-whatsapp:focus-visible{
  background:#b48d49;border-color:#b48d49;color:#fff!important;-webkit-text-fill-color:#fff;transform:translateY(-2px);
}
.irp-dialog .irp-contact-option>span,.irp-dialog .irp-contact-option>svg{position:relative;z-index:2}
.irp-dialog .irp-contact-option svg,.irp-dialog .irp-contact-option.is-whatsapp svg{color:#fff;width:16px;height:16px;stroke-width:1.7}
.irp-dialog .irp-contact-option::after{
  content:"";position:absolute;z-index:1;display:block;top:-70%;left:0;width:100%;height:240%;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0) 12%,rgba(255,255,255,.12) 24%,rgba(255,255,255,.42) 37%,rgba(255,255,255,.95) 50%,rgba(255,255,255,.42) 63%,rgba(255,255,255,.12) 76%,rgba(255,255,255,0) 88%,transparent 100%);
  opacity:0;transform:translateX(-140%) skewX(-25deg);pointer-events:none;will-change:transform,opacity;
}
.irp-dialog .irp-contact-option:hover::after,
.irp-dialog .irp-contact-option:focus-visible::after{animation:irpCtaShine .9s ease-in-out both}
@keyframes irpCtaShine{
  0%{opacity:0;transform:translateX(-140%) skewX(-25deg)}
  15%{opacity:1}
  75%{opacity:1}
  100%{opacity:0;transform:translateX(140%) skewX(-25deg)}
}
@media(prefers-reduced-motion:reduce){
  .irp-dialog .irp-contact-option,.irp-dialog .irp-gallery-thumb img,.irp-dialog .irp-lightbox{transition:none;animation:none}
  .irp-dialog .irp-contact-option:hover{transform:none}
  .irp-dialog .irp-contact-option::after{display:none}
}

/* Fiche projet sur téléphone et tablette : rien ne dépasse jamais la largeur de l'écran, quelle que
   soit la longueur du texte, du titre ou le nombre de photos. Une colonne « 1fr » s'élargissait à la
   largeur de la galerie entière ; « minmax(0,1fr) » et min-width:0 la tiennent dans l'écran. */
.irp-dialog .irp-property-layout>*,.irp-dialog .irp-gallery,.irp-dialog .irp-gallery-frame,.irp-dialog .irp-gallery-track{min-width:0;max-width:100%}
.irp-dialog :is(p,h2,h3,h4,dd,dt,li,strong,.irp-note){overflow-wrap:anywhere}
.irp-dialog :is(img,video,iframe){max-width:100%}
@media(max-width:760px){
  .irp-dialog{overflow-x:hidden}
  .irp-dialog .irp-property-layout{grid-template-columns:minmax(0,1fr)!important;width:100%}
  .irp-dialog .irp-property-layout>*{grid-column:1!important;width:100%}
  .irp-dialog .irp-dialog-intro{max-width:100%}
  .irp-dialog .irp-note{max-width:100%;white-space:normal}
  .irp-dialog .irp-gallery{margin:24px 0 4px}
  .irp-dialog .irp-gallery-track{scroll-padding-inline:2px}
  .irp-dialog .irp-gallery-thumb{width:calc((100% - 10px) / 2.3);min-width:0}
  .irp-dialog .irp-property-contact-card{width:100%}
  .irp-dialog .irp-contact-options{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:10px;width:100%}
  .irp-dialog .irp-contact-option{width:100%;min-width:0;max-width:100%;min-height:48px;padding:10px 8px;white-space:normal;text-align:center}
  .irp-dialog .irp-contact-option>span{min-width:0;overflow-wrap:anywhere}
}
@media(max-width:340px){
  .irp-dialog .irp-contact-options{grid-template-columns:minmax(0,1fr)}
  .irp-dialog .irp-gallery-thumb{width:calc((100% - 10px) / 1.6)}
}
.irp-dialog .irp-contact-options{grid-auto-rows:1fr}
.irp-dialog .irp-contact-option{height:100%}

/* Simulateur : lien discret sous les boutons de contact (le contact reste l'action principale).
   Contour noir fin, même faisceau lumineux au survol que les boutons dorés. */
.irp-dialog .irp-simulator-cta,
.irp-dialog .irp-simulator-cta:visited{
  position:relative;isolation:isolate;overflow:hidden;
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;box-sizing:border-box;
  min-height:42px;margin:10px 0 0;padding:9px 14px;
  background:transparent;border:1px solid #000;border-radius:12px;
  color:#000!important;-webkit-text-fill-color:#000;text-decoration:none!important;text-align:center;
  font:500 12.5px/1.35 'Plus Jakarta Sans',Inter,system-ui,sans-serif;cursor:pointer;
  transition:transform .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease;
}
.irp-dialog .irp-simulator-cta:hover,
.irp-dialog .irp-simulator-cta:focus-visible{background:#000;color:#fff!important;-webkit-text-fill-color:#fff;transform:translateY(-2px)}
.irp-dialog .irp-simulator-cta:focus-visible{outline:2px solid #d9b66f;outline-offset:2px}
.irp-dialog .irp-simulator-cta>*{position:relative;z-index:2}
.irp-dialog .irp-simulator-cta>span{min-width:0;overflow-wrap:normal}
.irp-dialog .irp-simulator-cta svg{flex:none;width:15px;height:15px;stroke-width:1.8;transition:transform .2s ease}
.irp-dialog .irp-simulator-cta:hover svg,.irp-dialog .irp-simulator-cta:focus-visible svg{transform:translateX(3px)}
.irp-dialog .irp-simulator-cta::after{
  content:"";position:absolute;z-index:1;display:block;top:-70%;left:0;width:100%;height:240%;
  background:linear-gradient(90deg,transparent 0%,rgba(227,193,122,0) 12%,rgba(227,193,122,.12) 24%,rgba(227,193,122,.3) 37%,rgba(246,227,180,.5) 50%,rgba(227,193,122,.3) 63%,rgba(227,193,122,.12) 76%,rgba(227,193,122,0) 88%,transparent 100%);
  opacity:0;transform:translateX(-140%) skewX(-25deg);pointer-events:none;will-change:transform,opacity;
}
.irp-dialog .irp-simulator-cta:hover::after,
.irp-dialog .irp-simulator-cta:focus-visible::after{animation:irpCtaShine .9s ease-in-out both}
@media(max-width:760px){.irp-dialog .irp-simulator-cta{min-height:46px}}
@media(hover:none){.irp-dialog .irp-simulator-cta:hover{transform:none;background:transparent;color:#000!important;-webkit-text-fill-color:#000}}
@media(prefers-reduced-motion:reduce){
  .irp-dialog .irp-simulator-cta,.irp-dialog .irp-simulator-cta svg{transition:none}
  .irp-dialog .irp-simulator-cta:hover,.irp-dialog .irp-simulator-cta:hover svg{transform:none}
  .irp-dialog .irp-simulator-cta::after{display:none}
}
/* Tablette : colonne de contact étroite, l'icône passe au-dessus du libellé pour ne jamais couper
   « WhatsApp » ou « Formulaire » au milieu du mot. */
@media(min-width:761px) and (max-width:1100px){
  .irp-dialog .irp-contact-option{flex-direction:column;gap:4px;padding:9px 6px}
  .irp-dialog .irp-contact-option>span{overflow-wrap:normal;word-break:keep-all}
}
