/* Start custom CSS for html, class: .elementor-element-578799ed *//* =========================================================
   CONTACT — SECTION RÉUTILISABLE TOUTES PAGES
   ========================================================= */

.monart-contact-section{
  position:relative;
  padding:clamp(5rem, 8vw, 8rem) 0;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 18%, rgba(239,125,114,.12), transparent 28%),
    radial-gradient(circle at 82% 22%, rgba(156,201,216,.18), transparent 32%),
    linear-gradient(180deg, rgba(246,239,225,.96), rgba(239,228,208,.92));
}

.monart-contact-bg{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.22;
  background-image:
    linear-gradient(rgba(111,88,69,.13) 1px, transparent 1px),
    linear-gradient(90deg, rgba(111,88,69,.13) 1px, transparent 1px);
  background-size:34px 34px;
}

.monart-contact-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(360px, .85fr);
  gap:clamp(2rem, 5vw, 5rem);
  align-items:center;
  position:relative;
  z-index:1;
}

.monart-contact-copy,
.monart-contact-visual{
  position:relative;
  z-index:2;
}


/* =========================================================
   COLONNE GAUCHE — CARTE COORDONNÉES
   ========================================================= */

.monart-contact-card{
  position:relative;
  background:rgba(255,248,236,.78);
  border:1px solid rgba(111,88,69,.13);
  box-shadow:0 28px 70px rgba(66,48,32,.14);
  padding:clamp(1.8rem, 4vw, 3.2rem);
  clip-path:polygon(0 3%, 97% 0, 100% 96%, 3% 100%);
  transform:rotate(-1.2deg);
  backdrop-filter:blur(2px);
}

.monart-contact-card:before{
  content:"";
  position:absolute;
  width:120px;
  height:30px;
  top:-13px;
  left:8%;
  background:rgba(228,184,61,.30);
  transform:rotate(-4deg);
  z-index:3;
}

.monart-contact-card h2{
  margin:0 0 1.5rem;
  font-family:var(--font-repere, "Special Elite", "Courier New", monospace);
  font-weight:400;
  line-height:.98;
  color:#EF7D72;
  font-size:clamp(2.4rem, 5vw, 4.8rem);
}

.monart-contact-card h2 small{
  display:block;
  margin-top:.55rem;
  font-family:var(--font-repere, "Special Elite", "Courier New", monospace);
  font-size:clamp(1.15rem, 2vw, 1.7rem);
  line-height:1.1;
  color:#EF7D72;
}

.monart-contact-card p{
  margin:0 0 1.35rem;
  font-family:var(--font-texte, "Lora", Georgia, serif);
  color:var(--encre, #2D2924);
  line-height:1.72;
}

/* Strong de la colonne gauche = effet surlignage */
.monart-contact-card p strong{
  position:static !important;
  display:inline !important;
  width:auto !important;
  height:auto !important;
  top:auto !important;
  left:auto !important;
  transform:none !important;

  
  font-weight:700 !important;
  background:linear-gradient(
    180deg,
    transparent 58%,
    rgba(228,184,61,.26) 58%
  ) !important;
  padding:0 .04em !important;
  line-height:inherit !important;
}

.monart-contact-card a{
  color:inherit;
  text-decoration:none;
}

.monart-contact-card a:hover{
  color:#EF7D72;
}

.monart-contact-details{
  margin-top:2rem;
  text-align:center;
}

.monart-contact-details h3{
  margin:0 0 .8rem;
  font-family:var(--font-repere, "Special Elite", "Courier New", monospace);
  font-weight:400;
  color:#EF7D72;
  font-size:clamp(1.25rem, 2vw, 1.8rem);
  line-height:1.15;
}


/* =========================================================
   COLONNE DROITE — FOND CARTE + FORMULAIRE
   ========================================================= */

.monart-contact-visual{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:560px;
}

/* Fond imitation carte sous le formulaire */
.monart-contact-map-paper{
  position:absolute;
  width:min(560px, 100%);
  height:min(620px, 100%);
  min-height:500px;
  background:
    radial-gradient(circle at 22% 24%, rgba(156,201,216,.24), transparent 22%),
    radial-gradient(circle at 74% 70%, rgba(228,184,61,.18), transparent 24%),
    linear-gradient(rgba(255,248,236,.72), rgba(255,248,236,.72)),
    linear-gradient(90deg, rgba(111,88,69,.12) 1px, transparent 1px),
    linear-gradient(rgba(111,88,69,.10) 1px, transparent 1px);
  background-size:
    auto,
    auto,
    auto,
    42px 42px,
    42px 42px;
  border:1px solid rgba(111,88,69,.11);
  box-shadow:0 26px 72px rgba(66,48,32,.12);
  clip-path:polygon(3% 0, 100% 4%, 96% 100%, 0 94%);
  transform:rotate(-2.4deg) translate(10px, 8px);
  opacity:.78;
  z-index:1;
  pointer-events:none;
}

/* Traces de routes sur la carte */
.monart-contact-map-paper:before{
  content:"";
  position:absolute;
  inset:10%;
  opacity:.42;
  background:
    radial-gradient(ellipse at 28% 18%, transparent 0 36%, rgba(46,140,163,.45) 37% 38%, transparent 39%),
    radial-gradient(ellipse at 70% 70%, transparent 0 42%, rgba(239,125,114,.36) 43% 44%, transparent 45%),
    linear-gradient(135deg, transparent 0 47%, rgba(111,88,69,.18) 48% 49%, transparent 50%);
  filter:blur(.1px);
}

/* Petite étiquette / fragment papier */
.monart-contact-map-paper:after{
  content:"";
  position:absolute;
  width:115px;
  height:28px;
  top:34px;
  right:70px;
  background:rgba(156,201,216,.30);
  transform:rotate(3deg);
}


/* =========================================================
   CARTE FORMULAIRE
   ========================================================= */

.monart-form-card-monart{
  position:relative;
  z-index:2;
  width:min(460px,100%);
  min-height:430px;
  padding:clamp(1.5rem,3vw,2.5rem);
  background:rgba(255,248,236,.82);
  border:1px solid rgba(111,88,69,.15);
  box-shadow:0 28px 70px rgba(66,48,32,.16);
  clip-path:polygon(0 3%,98% 0,100% 97%,3% 100%);
  transform:rotate(var(--rot,2deg));
  backdrop-filter:blur(2px);
}

.monart-form-card-tape{
  position:absolute;
  width:92px;
  height:26px;
  top:-12px;
  left:42px;
  background:rgba(156,201,216,.32);
  transform:rotate(-4deg);
}

.monart-form-card-label{
  margin:0 0 .8rem;
  font-family:var(--font-repere, "Special Elite", "Courier New", monospace);
  font-size:.92rem;
  color:var(--trace, #6F5845);
  letter-spacing:.06em;
}

.monart-form-card-slot{
  min-height:280px;
  position:relative;
}


/* =========================================================
   FORMULAIRE — CHAMPS
   WPForms / Elementor / CF7 / Fluent Forms
   ========================================================= */

.monart-form-card-monart form,
.monart-form-card-monart .elementor-form,
.monart-form-card-monart .wpcf7-form,
.monart-form-card-monart .wpforms-form{
  position:relative;
  z-index:2;
}

.monart-form-card-monart input,
.monart-form-card-monart textarea,
.monart-form-card-monart select{
  width:100%;
  border:1px solid rgba(111,88,69,.25) !important;
  background:rgba(255,255,255,.45) !important;
  color:var(--encre, #2D2924) !important;
  font-family:var(--font-ui, Arial, sans-serif) !important;
  font-size:1rem !important;
  padding:.9rem .95rem !important;
  border-radius:0 !important;
  outline:none !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5) !important;
}

.monart-form-card-monart textarea{
  min-height:130px;
  resize:vertical;
}

.monart-form-card-monart label{
  display:block;
  margin-bottom:.45rem;
  font-family:var(--font-repere, "Special Elite", "Courier New", monospace) !important;
  font-size:.92rem !important;
  color:var(--trace, #6F5845) !important;
}

.monart-form-card-monart input:focus,
.monart-form-card-monart textarea:focus,
.monart-form-card-monart select:focus{
  border-color:var(--corail, #EF7D72) !important;
  box-shadow:0 0 0 3px rgba(239,125,114,.14) !important;
}


/* =========================================================
   BOUTON FORMULAIRE
   ========================================================= */

.monart-form-card-monart .elementor-field-type-submit,
.monart-form-card-monart .elementor-field-group.elementor-field-type-submit,
.monart-form-card-monart .elementor-button-wrapper,
.monart-form-card-monart .wpcf7-submit,
.monart-form-card-monart .ff_submit_btn_wrapper,
.monart-form-card-monart .wpforms-submit-container{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:20 !important;
  margin-top:1.2rem !important;
}

.monart-form-card-monart button,
.monart-form-card-monart input[type="submit"],
.monart-form-card-monart button[type="submit"],
.monart-form-card-monart .elementor-button,
.monart-form-card-monart button.elementor-button,
.monart-form-card-monart .elementor-field-type-submit button,
.monart-form-card-monart .wpcf7-submit,
.monart-form-card-monart .ff-btn-submit,
.monart-form-card-monart .wpforms-submit{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:21 !important;
  width:auto !important;
  min-width:180px !important;
  min-height:46px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#EF7D72 !important;
  color:#FFF8EC !important;
  padding:.9rem 1.4rem !important;
  font-family:var(--font-repere, "Special Elite", "Courier New", monospace) !important;
  font-size:1rem !important;
  line-height:1 !important;
  cursor:pointer !important;
  box-shadow:0 14px 28px rgba(66,48,32,.12) !important;
  transition:transform .25s ease, filter .25s ease !important;
}

.monart-form-card-monart .elementor-button-text{
  display:inline-block !important;
  visibility:visible !important;
  opacity:1 !important;
  color:#FFF8EC !important;
}

.monart-form-card-monart button:hover,
.monart-form-card-monart input[type="submit"]:hover,
.monart-form-card-monart button[type="submit"]:hover,
.monart-form-card-monart .elementor-button:hover,
.monart-form-card-monart .wpcf7-submit:hover,
.monart-form-card-monart .ff-btn-submit:hover,
.monart-form-card-monart .wpforms-submit:hover{
  transform:translateY(-2px);
  filter:brightness(1.04);
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width:900px){

  .monart-contact-grid{
    grid-template-columns:1fr;
    gap:3rem;
  }

  .monart-contact-card{
    transform:none;
    clip-path:polygon(0 2%, 98% 0, 100% 98%, 3% 100%);
  }

  .monart-contact-card h2{
    font-size:clamp(2.3rem, 12vw, 3.8rem);
  }

  .monart-contact-visual{
    min-height:auto;
    padding:2rem 0 0;
  }

  .monart-contact-map-paper{
    width:100%;
    height:100%;
    min-height:460px;
    transform:rotate(-1.5deg) translate(0, 8px);
  }

  .monart-form-card-monart{
    width:100%;
    transform:none !important;
  }
}/* End custom CSS */
/* Start custom CSS */@import url("https://fonts.googleapis.com/css2?family=Lora:wght@400;500;600;700&family=Special+Elite&display=swap");

/* =========================================================
   PAGE ITINÉRAIRE ARTISTIQUE — MON ART-THÉRAPIE
   Version cartes papier / scotch / pictos dessinés
   ========================================================= */

:root{
  --papier:#F6EFE1;
  --papier-chaud:#EFE4D0;
  --papier-clair:#FFF8EC;
  --encre:#2D2924;
  --trace:#6F5845;

  --jaune:#E4B83D;
  --bleu-doux:#9CC9D8;
  --bleu-profond:#006F7F;
  --bleu-parcours:#2E8CA3;
  --corail:#EF7D72;
  --rose:#D6B7AF;
  --sauge:#9B9A8F;
  --vert-itineraire:#A8AC98;
  --orange:#D9822B;
  --vert-fonce:#526C48;

  --font-repere:"Special Elite","Courier New",monospace;
  --font-texte:"Lora",Georgia,serif;
  --font-ui:Arial,sans-serif;

  --shadow-paper:0 24px 70px rgba(66,48,32,.14);
  --shadow-soft:0 18px 45px rgba(66,48,32,.12);
  --container:1180px;
}

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
  background:var(--papier);
}

body{
  margin:0;
  color:var(--encre);
  font-family:var(--font-texte);
  font-size:18px;
  line-height:1.72;
  background:
    radial-gradient(circle at 18% 8%, rgba(228,184,61,.14), transparent 28%),
    radial-gradient(circle at 86% 18%, rgba(168,172,152,.22), transparent 32%),
    radial-gradient(circle at 74% 86%, rgba(156,201,216,.16), transparent 28%),
    linear-gradient(180deg, #F8F0DF 0%, #F6EFE1 48%, #EFE4D0 100%);
  overflow-x:hidden;
}

body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  opacity:.18;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(111,88,69,.13) 1px, transparent 1px),
    linear-gradient(90deg, rgba(111,88,69,.13) 1px, transparent 1px);
  background-size:34px 34px;
}

a{
  color:inherit;
}

.monart-itineraire-page{
  position:relative;
  overflow:hidden;
}

.ia-container{
  width:min(var(--container), calc(100% - 40px));
  margin-inline:auto;
  position:relative;
  z-index:2;
}

.ia-section{
  position:relative;
  padding:clamp(4.5rem, 8vw, 8rem) 0;
}

.ia-section-header{
  max-width:780px;
  margin:0 auto clamp(2rem, 5vw, 4rem);
  text-align:center;
}

.ia-eyebrow,
.ia-kicker,
.ia-card-label{
  font-family:var(--font-repere);
  letter-spacing:.06em;
  color:var(--trace);
}

.ia-eyebrow{
  display:inline-block;
  background:rgba(255,248,236,.72);
  border:1px solid rgba(111,88,69,.12);
  padding:.42rem .7rem .25rem;
  transform:rotate(-1deg);
  margin-bottom:1.15rem;
  box-shadow:0 12px 30px rgba(66,48,32,.08);
}

h1,
h2,
h3,
h4,
p{
  margin-top:0;
}

h1,
.ia-section h2,
.ia-final-card h2{
  font-family:var(--font-repere);
  font-weight:400;
  text-wrap:balance;
}

strong{
  color:var(--bleu-profond);
  font-weight:700;
  background:linear-gradient(
    180deg,
    transparent 58%,
    rgba(228,184,61,.26) 58%
  );
  padding:0 .04em;
}


/* =========================================================
   HEADER / TITRES
   ========================================================= */

.ia-section h2{
  color:var(--vert-fonce);
  font-size:clamp(2.2rem, 5vw, 4.6rem);
  line-height:.98;
  margin:0 0 1rem;
}

.ia-section-header p{
  max-width:62ch;
  margin-inline:auto;
}

.ia-map-section .ia-section-header h1{
  margin:0;
  line-height:1;
}


/* =========================================================
   PARTIE 1 — CARTE ATELIER CENTRALE
   ========================================================= */

.ia-map-section{
  background:
    radial-gradient(circle at 18% 28%, rgba(168,172,152,.18), transparent 30%),
    radial-gradient(circle at 82% 42%, rgba(228,184,61,.12), transparent 30%);
}

.ia-workshop-map{
  position:relative;
  display:grid;
  grid-template-columns:1fr minmax(260px, 320px) 1fr;
  gap:clamp(1.5rem, 4vw, 3rem);
  align-items:center;
}

/* Carte centrale */
.ia-center-card{
  grid-column:2;
  grid-row:1;
  text-align:center;
  background:rgba(255,248,236,.82);
  border:1px solid rgba(111,88,69,.14);
  box-shadow:var(--shadow-paper);
  clip-path:polygon(2% 0, 98% 3%, 100% 96%, 4% 100%);
  padding:clamp(1.8rem, 3vw, 2.7rem);
  position:relative;
  z-index:3;
  transform:rotate(-1deg);
  backdrop-filter:blur(2px);
}

.ia-center-card:before{
  content:"";
  position:absolute;
  width:118px;
  height:30px;
  top:-14px;
  left:50%;
  background:rgba(168,172,152,.32);
  transform:translateX(-50%) rotate(-3deg);
  z-index:4;
}

.ia-center-card:after{
  content:"";
  position:absolute;
  inset:0;
  opacity:.16;
  pointer-events:none;
  background:
    linear-gradient(rgba(111,88,69,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(111,88,69,.08) 1px, transparent 1px);
  background-size:28px 28px;
}

.ia-center-icon{
  width:76px;
  height:76px;
  margin:0 auto 1rem;
  color:var(--vert-fonce);
  position:relative;
  z-index:2;
}

.ia-center-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}

.ia-center-card .ia-card-label{
  position:relative;
  z-index:2;
  font-size:clamp(2rem, 4vw, 3.4rem);
  line-height:1;
  color:var(--vert-fonce);
  margin:0 0 .65rem;
}

.ia-center-card p{
  position:relative;
  z-index:2;
  margin:0;
}


/* =========================================================
   BRANCHES MODALITÉS / OBJECTIFS
   ========================================================= */

.ia-branch{
  position:relative;
}

.ia-branch-left{
  grid-column:1;
  grid-row:1;
}

.ia-branch-right{
  grid-column:3;
  grid-row:1;
}

.ia-branch-title{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.75rem;
  margin-bottom:1.2rem;
}

.ia-branch-title h3{
  margin:0;
  font-family:var(--font-repere);
  font-weight:400;
  font-size:clamp(1.8rem, 3.4vw, 3.2rem);
  color:var(--vert-fonce);
  text-transform:uppercase;
}

.ia-branch-cards{
  display:grid;
  gap:1.2rem;
}


/* =========================================================
   CARTES MODALITÉS / OBJECTIFS
   ========================================================= */

.ia-mini-card{
  --mini-color:var(--vert-fonce);
  position:relative;
  display:grid;
  grid-template-columns:58px 1fr;
  gap:1rem;
  background:rgba(255,248,236,.82);
  border:1px solid rgba(111,88,69,.14);
  box-shadow:var(--shadow-soft);
  padding:clamp(1.2rem, 2vw, 1.65rem);
  clip-path:polygon(0 4%, 97% 0, 100% 95%, 3% 100%);
  transition:
    transform .32s ease,
    box-shadow .32s ease,
    background .32s ease;
  overflow:visible;
}

/* Variations papier */
.ia-mini-card:nth-child(1){
  transform:rotate(-1deg);
}

.ia-mini-card:nth-child(2){
  transform:rotate(.8deg);
}

.ia-mini-card:nth-child(3){
  transform:rotate(-.6deg);
}

.ia-mini-card:hover{
  transform:translateY(-5px) rotate(0deg);
  box-shadow:0 28px 68px rgba(66,48,32,.16);
  background:rgba(255,248,236,.92);
}

/* Scotch */
.ia-mini-card:before{
  content:"";
  position:absolute;
  width:78px;
  height:22px;
  top:-10px;
  left:28px;
  background:rgba(228,184,61,.24);
  transform:rotate(-4deg);
  z-index:4;
}

.ia-mini-card:nth-child(2):before{
  left:auto;
  right:36px;
  background:rgba(156,201,216,.28);
  transform:rotate(4deg);
}

.ia-mini-card:nth-child(3):before{
  background:rgba(214,183,175,.30);
  transform:rotate(-2deg);
}

/* Texture papier */
.ia-mini-card:after{
  content:"";
  position:absolute;
  inset:0;
  opacity:.12;
  pointer-events:none;
  background:
    linear-gradient(rgba(111,88,69,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(111,88,69,.08) 1px, transparent 1px);
  background-size:24px 24px;
}

/* Couleurs par carte */
.ia-mini-green{
  --mini-color:var(--vert-fonce);
}

.ia-mini-coral{
  --mini-color:var(--corail);
}

.ia-mini-yellow{
  --mini-color:var(--jaune);
}

.ia-mini-orange{
  --mini-color:var(--orange);
}

.ia-mini-blue{
  --mini-color:var(--bleu-parcours);
}

.ia-branch-left .ia-mini-card:nth-child(1){
  --mini-color:var(--vert-fonce);
}

.ia-branch-left .ia-mini-card:nth-child(2){
  --mini-color:var(--corail);
}

.ia-branch-left .ia-mini-card:nth-child(3){
  --mini-color:var(--jaune);
}

.ia-branch-right .ia-mini-card:nth-child(1){
  --mini-color:var(--orange);
}

.ia-branch-right .ia-mini-card:nth-child(2){
  --mini-color:var(--bleu-parcours);
}

.ia-branch-right .ia-mini-card:nth-child(3){
  --mini-color:var(--corail);
}


/* =========================================================
   PICTOS DESSINÉS
   ========================================================= */

.ia-picto{
  position:relative;
  color:var(--mini-color);
  width:54px;
  height:54px;
  padding:9px;
  border:1.8px solid currentColor;
  border-radius:50%;
  align-self:start;
  background:rgba(255,248,236,.45);
  box-shadow:
    inset 0 0 0 3px rgba(255,248,236,.42),
    0 8px 18px rgba(66,48,32,.08);
  z-index:2;
}

.ia-picto svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
  filter:drop-shadow(.3px .3px 0 rgba(255,255,255,.45));
}

.ia-mini-card:nth-child(odd) .ia-picto{
  transform:rotate(-3deg);
}

.ia-mini-card:nth-child(even) .ia-picto{
  transform:rotate(3deg);
}


/* =========================================================
   TEXTES DES CARTES
   ========================================================= */

.ia-mini-card .ia-card-label{
  position:relative;
  z-index:2;
  grid-column:2;
  color:var(--mini-color);
  font-family:var(--font-repere);
  font-size:.92rem;
  line-height:1.2;
  margin:0 0 .45rem;
  letter-spacing:.045em;
}

.ia-mini-card h4{
  position:relative;
  z-index:2;
  grid-column:2;
  margin:0 0 .5rem;
  color:var(--mini-color);
  font-family:var(--font-repere);
  font-weight:400;
  font-size:1.35rem;
  line-height:1.05;
}

.ia-mini-card ul{
  position:relative;
  z-index:2;
  grid-column:2;
  margin:.1rem 0 0;
  padding-left:0;
  list-style:none;
  line-height:1.45;
  font-size:.98rem;
}

.ia-mini-card li{
  margin:.18rem 0;
}


/* =========================================================
   NOTE REPÈRES D’ATTACHEMENT
   ========================================================= */

.ia-attachment-note{
  background:rgba(255,248,236,.76);
  border:1px solid rgba(111,88,69,.13);
  box-shadow:0 14px 34px rgba(66,48,32,.10);
  padding:1rem 1.2rem;
  clip-path:polygon(0 6%, 98% 0, 100% 92%, 4% 100%);
  transform:rotate(.8deg);
}

.ia-attachment-note p{
  margin:0;
  font-size:.98rem;
  line-height:1.45;
}


/* =========================================================
   CONNECTEURS CARTOGRAPHIQUES
   ========================================================= */

.ia-connector{
  position:absolute;
  top:50%;
  height:2px;
  z-index:1;
  pointer-events:none;
}

.ia-connector:before{
  content:"";
  position:absolute;
  inset:0;
  border-top:2px dashed rgba(82,108,72,.38);
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.65));
}

.ia-connector-left{
  left:31%;
  right:54%;
}

.ia-connector-right{
  left:54%;
  right:31%;
}


/* =========================================================
   MÉDIATIONS ARTISTIQUES
   ========================================================= */

.ia-mediations-section{
  background:
    radial-gradient(circle at 12% 18%, rgba(228,184,61,.16), transparent 24%),
    radial-gradient(circle at 86% 70%, rgba(168,172,152,.18), transparent 28%);
}

.ia-mediations-layout{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:clamp(1.5rem, 4vw, 3rem);
  align-items:center;
}

.ia-mediations-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:1rem;
  background:rgba(255,248,236,.80);
  border:1px solid rgba(111,88,69,.14);
  clip-path:polygon(1% 0, 99% 3%, 97% 100%, 3% 96%);
  padding:clamp(1.2rem, 3vw, 2rem);
  box-shadow:var(--shadow-paper);
  position:relative;
  transform:rotate(-.8deg);
}

.ia-mediations-grid:before{
  content:"";
  position:absolute;
  width:110px;
  height:28px;
  top:-13px;
  left:40px;
  background:rgba(228,184,61,.28);
  transform:rotate(-4deg);
  z-index:3;
}

.ia-mediations-grid article{
  text-align:center;
  padding:.9rem .45rem;
  border-radius:16px;
  transition:transform .25s ease, background .25s ease;
}

.ia-mediations-grid article:hover{
  transform:translateY(-4px) rotate(-1deg);
  background:rgba(168,172,152,.10);
}

.ia-icon-text{
  display:block;
  font-size:2rem;
  color:var(--vert-fonce);
  margin-bottom:.35rem;
  filter:saturate(.8);
}

.ia-mediations-grid p{
  font-size:.96rem;
  line-height:1.25;
  margin:0;
}

.ia-photo-card{
  margin:0;
  background:rgba(255,248,236,.84);
  padding:.7rem .7rem 2rem;
  box-shadow:var(--shadow-paper);
  transform:rotate(2deg);
  border:1px solid rgba(111,88,69,.12);
  position:relative;
}

.ia-photo-card:before{
  content:"";
  position:absolute;
  width:98px;
  height:26px;
  top:-12px;
  left:50%;
  background:rgba(156,201,216,.30);
  transform:translateX(-50%) rotate(4deg);
  z-index:3;
}

.ia-photo-card img{
  display:block;
  width:100%;
  height:360px;
  object-fit:cover;
  filter:saturate(.9) contrast(.96);
}

.ia-photo-card figcaption{
  margin:.7rem 0 0;
  text-align:center;
  font-family:var(--font-repere);
  color:var(--trace);
  font-size:.9rem;
}


/* =========================================================
   COMMENT NAÎT UN ATELIER / RÔLE DE LA CARTOGRAPHE
   ========================================================= */

.ia-process-section{
  background:
    radial-gradient(circle at 25% 22%, rgba(156,201,216,.18), transparent 26%),
    radial-gradient(circle at 72% 76%, rgba(239,125,114,.11), transparent 28%);
}

.ia-process-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(1.3rem, 3vw, 2.4rem);
}

.ia-process-card{
  background:rgba(255,248,236,.82);
  border:1px solid rgba(111,88,69,.14);
  box-shadow:var(--shadow-soft);
  clip-path:polygon(0 4%, 98% 0, 100% 95%, 3% 100%);
  padding:clamp(1.5rem, 3vw, 2.4rem);
  position:relative;
  overflow:visible;
  transition:transform .3s ease, box-shadow .3s ease;
}

.ia-process-card:before{
  content:"";
  position:absolute;
  width:90px;
  height:24px;
  top:-11px;
  left:36px;
  background:rgba(156,201,216,.28);
  transform:rotate(-4deg);
  z-index:4;
}

.ia-process-card:nth-child(1){
  transform:rotate(-.8deg);
}

.ia-process-card:nth-child(2){
  border-color:rgba(111,88,69,.14);
  transform:rotate(1deg);
}

.ia-process-card:nth-child(2):before{
  left:auto;
  right:42px;
  background:rgba(214,183,175,.32);
  transform:rotate(4deg);
}

.ia-process-card:hover{
  transform:translateY(-5px) rotate(0deg);
  box-shadow:0 28px 68px rgba(66,48,32,.15);
}

.ia-process-top{
  display:flex;
  gap:1rem;
  align-items:center;
  margin-bottom:1rem;
}

.ia-picto-round{
  flex:0 0 64px;
  color:var(--vert-fonce);
  border-color:rgba(82,108,72,.65);
  --mini-color:var(--vert-fonce);
}

.ia-process-card h3{
  margin:0;
  font-family:var(--font-repere);
  color:var(--vert-fonce);
  font-weight:400;
  font-size:clamp(1.8rem, 3vw, 3rem);
  line-height:1.05;
}

.ia-process-card ul{
  margin:0;
  padding-left:1.2rem;
}


/* =========================================================
   CE QUI REND LES ATELIERS UNIQUES
   ========================================================= */

.ia-unique-section{
  background:
    radial-gradient(circle at 18% 50%, rgba(168,172,152,.20), transparent 28%),
    radial-gradient(circle at 80% 25%, rgba(228,184,61,.13), transparent 24%);
}

.ia-unique-grid{
  display:grid;
  grid-template-columns:repeat(7, 1fr);
  gap:1rem;
  background:rgba(255,248,236,.80);
  border:1px solid rgba(111,88,69,.14);
  clip-path:polygon(1% 0, 100% 4%, 98% 100%, 0 95%);
  padding:clamp(1.4rem, 3vw, 2.2rem);
  box-shadow:var(--shadow-paper);
  position:relative;
}

.ia-unique-grid:before{
  content:"";
  position:absolute;
  width:130px;
  height:28px;
  top:-13px;
  left:50%;
  background:rgba(168,172,152,.28);
  transform:translateX(-50%) rotate(-3deg);
  z-index:3;
}

.ia-unique-item{
  text-align:center;
  padding:1rem .5rem;
  position:relative;
  transition:transform .25s ease, background .25s ease;
}

.ia-unique-item:hover{
  transform:translateY(-4px);
  background:rgba(255,248,236,.45);
}

.ia-unique-icon{
  display:block;
  color:var(--vert-fonce);
  font-family:var(--font-repere);
  font-size:clamp(2rem, 3vw, 3rem);
  line-height:1;
  margin-bottom:.65rem;
}

.ia-unique-item p{
  margin:0;
  font-size:.98rem;
  line-height:1.28;
}


/* =========================================================
   ANIMATIONS AU SCROLL
   ========================================================= */

.ia-reveal{
  opacity:0;
  transform:translateY(26px);
  transition:opacity .75s ease, transform .75s ease;
}

.ia-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width:1100px){
  .ia-workshop-map{
    grid-template-columns:1fr;
    gap:2.5rem;
  }

  .ia-center-card,
  .ia-branch-left,
  .ia-branch-right{
    grid-column:1;
    grid-row:auto;
  }

  .ia-center-card{
    max-width:440px;
    margin:0 auto 1rem;
  }

  .ia-connector{
    display:none;
  }

  .ia-branch-title{
    justify-content:center;
  }

  .ia-branch-cards{
    grid-template-columns:repeat(3, 1fr);
  }
}

@media (max-width:900px){
  body{
    font-size:16px;
  }

  .ia-mediations-layout,
  .ia-process-grid{
    grid-template-columns:1fr;
  }

  .ia-mediations-grid{
    grid-template-columns:repeat(2, 1fr);
    transform:none;
  }

  .ia-branch-cards{
    grid-template-columns:1fr;
  }

  .ia-mini-card{
    grid-template-columns:54px 1fr;
    transform:none !important;
  }

  .ia-center-card{
    transform:none;
  }

  .ia-process-card,
  .ia-process-card:nth-child(1),
  .ia-process-card:nth-child(2){
    transform:none;
  }

  .ia-unique-grid{
    grid-template-columns:repeat(2, 1fr);
  }
}

@media (max-width:640px){
  .ia-container{
    width:min(100% - 28px, var(--container));
  }

  .ia-section{
    padding:4.2rem 0;
  }

  .ia-section h2{
    font-size:clamp(2.2rem, 12vw, 3.6rem);
  }

  .ia-center-card .ia-card-label{
    font-size:clamp(2rem, 11vw, 3.4rem);
  }

  .ia-mini-card{
    grid-template-columns:1fr;
    gap:.8rem;
  }

  .ia-picto{
    width:52px;
    height:52px;
  }

  .ia-mini-card .ia-card-label,
  .ia-mini-card h4,
  .ia-mini-card ul{
    grid-column:1;
  }

  .ia-mediations-grid{
    grid-template-columns:1fr 1fr;
  }

  .ia-photo-card img{
    height:260px;
  }

  .ia-unique-grid{
    grid-template-columns:1fr;
  }
}

@media (prefers-reduced-motion:reduce){
  *,
  *:before,
  *:after{
    animation:none !important;
    transition:none !important;
    scroll-behavior:auto !important;
  }

  .ia-reveal{
    opacity:1 !important;
    transform:none !important;
  }
}



/* =========================================================
   SÉCURITÉ AFFICHAGE — TEMPORAIRE PENDANT LA MIGRATION
   ========================================================= */
.ia-reveal{
  opacity:1 !important;
  transform:none !important;
}/* End custom CSS */