/* Start custom CSS for html, class: .elementor-element-3e1a63d7 *//* =========================================================
   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 CARNET DE ROUTE — MON ART-THÉRAPIE
   ========================================================= */

: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;
  --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(214,183,175,.18), transparent 28%),
    radial-gradient(circle at 85% 22%, rgba(228,184,61,.13), transparent 30%),
    radial-gradient(circle at 78% 82%, rgba(156,201,216,.17), transparent 28%),
    linear-gradient(180deg, #F8F0DF 0%, #F6EFE1 42%, #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;
}

body:after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  opacity:.30;
  pointer-events:none;
  background:
    radial-gradient(circle at 15% 20%, rgba(255,255,255,.62), transparent 30%),
    radial-gradient(circle at 70% 45%, rgba(255,255,255,.46), transparent 26%),
    radial-gradient(circle at 50% 92%, rgba(255,255,255,.38), transparent 22%);
  mix-blend-mode:screen;
}

a{color:inherit}

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

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

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

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

/* =========================================================
   CHEMIN QUI SE DESSINE AU SCROLL
   ========================================================= */

.carnet-scroll-map{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
}

.carnet-scroll-map svg{
  position:absolute;
  top:310px;
  left:50%;
  width:min(650px, 92vw);
  height:calc(100% - 350px);
  transform:translateX(-50%);
  overflow:visible;
  opacity:.30;
}

.carnet-path-shadow{
  fill:none;
  stroke:rgba(255,255,255,.76);
  stroke-width:24;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.carnet-path-base{
  fill:none;
  stroke:rgba(111,88,69,.16);
  stroke-width:7;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:10 18;
}

.carnet-path-progress{
  fill:none;
  stroke:rgba(214,183,175,.86);
  stroke-width:5;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 8px rgba(255,255,255,.85));
  stroke-dasharray:1;
  stroke-dashoffset:1;
}

.carnet-scroll-marker{
  position:absolute;
  left:50%;
  top:320px;
  z-index:3;
  width:30px;
  height:30px;
  border-radius:999px;
  background:
    radial-gradient(circle at 42% 38%, #FFF8EC 0 18%, var(--rose) 19% 42%, rgba(214,183,175,.38) 43% 100%);
  border:1px solid rgba(111,88,69,.20);
  box-shadow:0 10px 28px rgba(66,48,32,.16);
  transform:translate(-50%,0);
  pointer-events:none;
  opacity:.95;
}

/* =========================================================
   HERO
   ========================================================= */

.carnet-hero{
  position:relative;
  min-height:78vh;
  display:flex;
  align-items:center;
  padding:clamp(5rem, 9vw, 8rem) 0 clamp(3rem, 6vw, 6rem);
  isolation:isolate;
}

.carnet-hero-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(320px, .8fr);
  gap:clamp(2rem, 5vw, 5rem);
  align-items:center;
}

.carnet-hero-card{
  position:relative;
  background:rgba(255,248,236,.78);
  padding:clamp(2rem, 5vw, 4.4rem);
  clip-path:polygon(0 4%, 96% 0, 100% 94%, 4% 100%);
  box-shadow:var(--shadow-paper);
  border:1px solid rgba(111,88,69,.12);
  backdrop-filter:blur(3px);
  transform:rotate(-1.2deg);
}

.carnet-hero-card:before{
  content:"";
  position:absolute;
  top:-16px;
  left:9%;
  width:118px;
  height:32px;
  background:rgba(214,183,175,.34);
  transform:rotate(-4deg);
}

.carnet-kicker,
.carnet-eyebrow,
.carnet-card-label,
.carnet-category,
.carnet-date{
  font-family:var(--font-repere);
  letter-spacing:.05em;
}

.carnet-kicker{
  color:var(--rose);
  font-size:clamp(1rem, 1.4vw, 1.25rem);
  margin:0 0 1rem;
}

.carnet-hero h1{
  font-family:var(--font-repere);
  font-weight:400;
  line-height:.98;
  font-size:clamp(2.5rem, 5.4vw, 5.1rem);
  color:var(--rose);
  margin:0 0 1.4rem;
  text-wrap:balance;
}

.carnet-lead{
  font-size:clamp(1.05rem, 1.5vw, 1.28rem);
  color:var(--trace);
}

.carnet-hero-actions{
  display:flex;
  gap:1rem;
  flex-wrap:wrap;
  align-items:center;
  margin-top:1.7rem;
}

.carnet-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  min-height:48px;
  padding:.85rem 1.15rem;
  border-radius:999px;
  text-decoration:none!important;
  font-family:var(--font-repere);
  line-height:1;
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.carnet-btn-primary{
  background:var(--rose);
  color:#FFF8EC;
  box-shadow:0 14px 30px rgba(214,183,175,.30);
}

.carnet-btn-secondary{
  background:rgba(255,248,236,.76);
  color:var(--trace);
  border:1px solid rgba(111,88,69,.16);
}

.carnet-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 38px rgba(66,48,32,.16);
}

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

.carnet-hero-photo:before{
  content:"";
  position:absolute;
  width:115px;
  height:30px;
  top:-14px;
  left:50%;
  background:rgba(228,184,61,.28);
  transform:translateX(-50%) rotate(4deg);
  z-index:2;
}

.carnet-hero-photo img{
  display:block;
  width:100%;
  height:420px;
  object-fit:cover;
  filter:saturate(.88) contrast(.96);
}

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

/* =========================================================
   SECTIONS COMMUNES
   ========================================================= */

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

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

.carnet-eyebrow{
  display:inline-block;
  color:var(--trace);
  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);
}

.carnet-section h2,
.carnet-final-card h2{
  font-family:var(--font-repere);
  font-weight:400;
  color:var(--rose);
  font-size:clamp(2.2rem, 5vw, 4.6rem);
  line-height:.98;
  margin:0 0 1rem;
  text-wrap:balance;
}

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

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

.carnet-intro-section{
  background:
    radial-gradient(circle at 12% 16%, rgba(214,183,175,.22), transparent 28%),
    radial-gradient(circle at 86% 70%, rgba(156,201,216,.16), transparent 28%);
}

.carnet-intro-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(260px, 360px);
  gap:clamp(1.6rem, 4vw, 3.4rem);
  align-items:center;
}

.carnet-paper-card{
  position:relative;
  background:rgba(255,248,236,.80);
  border:1px solid rgba(111,88,69,.13);
  box-shadow:var(--shadow-paper);
  padding:clamp(1.8rem, 4vw, 3.2rem);
  clip-path:polygon(0 3%, 97% 0, 100% 96%, 3% 100%);
  transform:rotate(-.8deg);
  backdrop-filter:blur(2px);
}

.carnet-paper-card:after{
  content:"";
  position:absolute;
  inset:0;
  opacity:.11;
  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;
}

.carnet-paper-card > *{
  position:relative;
  z-index:2;
}

.carnet-tape{
  position:absolute;
  z-index:4;
  width:108px;
  height:28px;
  top:-12px;
  left:42px;
  background:rgba(228,184,61,.28);
  transform:rotate(-4deg);
}

.carnet-note-card{
  position:relative;
  background:rgba(255,248,236,.78);
  border:1px solid rgba(111,88,69,.13);
  box-shadow:var(--shadow-soft);
  padding:clamp(1.4rem, 3vw, 2rem);
  clip-path:polygon(3% 0, 100% 5%, 96% 100%, 0 94%);
  transform:rotate(1.4deg);
}

.carnet-note-card:before{
  content:"";
  position:absolute;
  width:92px;
  height:24px;
  top:-11px;
  right:42px;
  background:rgba(156,201,216,.28);
  transform:rotate(4deg);
}

.carnet-note-label{
  font-family:var(--font-repere);
  color:var(--bleu-parcours);
  margin:0 0 .6rem;
}

/* =========================================================
   TERRITOIRES EXPLORÉS
   ========================================================= */

.carnet-territories-section{
  background:
    radial-gradient(circle at 18% 28%, rgba(228,184,61,.13), transparent 30%),
    radial-gradient(circle at 92% 32%, rgba(214,183,175,.22), transparent 30%);
}

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

.carnet-territory-card{
  --card-color:var(--rose);
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:560px;
  text-decoration:none!important;
  color:inherit;
  background:rgba(255,248,236,.82);
  border:1px solid rgba(111,88,69,.13);
  box-shadow:var(--shadow-soft);
  clip-path:polygon(0 0, 98% 3%, 100% 100%, 4% 96%);
  overflow:visible;
  transition:transform .35s ease, box-shadow .35s ease, background .35s ease;
}

.carnet-territory-card:nth-child(2),
.carnet-territory-card:nth-child(5){
  transform:translateY(1.6rem) rotate(1deg);
}

.carnet-territory-card:nth-child(3),
.carnet-territory-card:nth-child(6){
  transform:rotate(-1deg);
}

.carnet-territory-card:hover{
  transform:translateY(-7px) rotate(0deg);
  box-shadow:0 32px 76px rgba(66,48,32,.17);
  background:rgba(255,248,236,.92);
}

.carnet-territory-card:before{
  content:"";
  position:absolute;
  z-index:3;
  width:92px;
  height:26px;
  top:-12px;
  left:34px;
  background:rgba(156,201,216,.30);
  transform:rotate(-5deg);
}

.carnet-territory-card:nth-child(even):before{
  left:auto;
  right:42px;
  background:rgba(228,184,61,.26);
  transform:rotate(4deg);
}

.carnet-card-photo{
  height:190px;
  background:
    linear-gradient(180deg, rgba(45,41,36,.02), rgba(45,41,36,.16)),
    var(--territory-image, url("image-territoire-carnet.jpg")) center/cover no-repeat;
  filter:saturate(.9) contrast(.96);
  position:relative;
}

.carnet-card-photo:after{
  content:"";
  position:absolute;
  left:1.2rem;
  bottom:-16px;
  width:86px;
  height:32px;
  background:rgba(255,248,236,.52);
  transform:rotate(-5deg);
  box-shadow:0 8px 18px rgba(66,48,32,.10);
}

.carnet-card-content{
  padding:clamp(1.5rem, 2.6vw, 2.1rem);
  display:flex;
  flex-direction:column;
  flex:1;
}

.carnet-card-label{
  color:var(--card-color);
  font-size:.9rem;
  line-height:1.3;
  margin:0 0 .85rem;
}

.carnet-territory-card h3{
  font-family:var(--font-repere);
  font-weight:400;
  color:var(--card-color);
  font-size:clamp(1.8rem, 3vw, 2.8rem);
  line-height:1.02;
  margin:0 0 1rem;
}

.carnet-territory-card p{
  margin:0 0 1rem;
}

.carnet-readmore{
  margin-top:auto;
  align-self:flex-start;
  font-family:var(--font-repere);
  color:#FFF8EC;
  background:var(--card-color);
  padding:.72rem 1rem .62rem;
  border-radius:999px;
  line-height:1;
  box-shadow:0 12px 25px rgba(66,48,32,.12);
}

/* =========================================================
   RÉSEAUX AU MAGAZINE
   ========================================================= */

.carnet-network-section{
  background:
    radial-gradient(circle at 22% 20%, rgba(156,201,216,.18), transparent 28%),
    radial-gradient(circle at 75% 75%, rgba(239,125,114,.11), transparent 30%);
}

.carnet-network-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(300px, 420px);
  gap:clamp(1.6rem, 4vw, 3.5rem);
  align-items:center;
}

.carnet-itinerary-card{
  position:relative;
  background:rgba(255,248,236,.82);
  border:1px solid rgba(111,88,69,.13);
  box-shadow:var(--shadow-soft);
  padding:clamp(1.5rem, 3vw, 2.2rem);
  clip-path:polygon(0 4%, 98% 0, 100% 95%, 3% 100%);
  transform:rotate(1deg);
}

.carnet-itinerary-card:before{
  content:"";
  position:absolute;
  width:96px;
  height:26px;
  top:-12px;
  right:42px;
  background:rgba(214,183,175,.32);
  transform:rotate(4deg);
}

.carnet-step{
  display:grid;
  grid-template-columns:56px 1fr;
  align-items:center;
  gap:1rem;
}

.carnet-step span{
  display:flex;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  border-radius:999px;
  border:1.8px solid var(--rose);
  color:var(--rose);
  font-family:var(--font-repere);
  background:rgba(255,248,236,.58);
}

.carnet-step p{
  margin:0;
  font-family:var(--font-repere);
  color:var(--trace);
}

.carnet-step-line{
  width:2px;
  height:42px;
  margin:.45rem 0 .45rem 25px;
  border-left:2px dashed rgba(214,183,175,.65);
}

/* =========================================================
   DERNIÈRES ESCALES
   ========================================================= */

.carnet-escales-section{
  background:
    radial-gradient(circle at 14% 20%, rgba(214,183,175,.18), transparent 26%),
    radial-gradient(circle at 86% 65%, rgba(228,184,61,.13), transparent 26%);
}

.carnet-escales-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:clamp(1rem, 2.4vw, 1.8rem);
  position:relative;
}

.carnet-escales-grid:before{
  content:"";
  position:absolute;
  left:3%;
  right:3%;
  top:50%;
  border-top:2px dashed rgba(111,88,69,.20);
  z-index:0;
}

.carnet-escale-card{
  position:relative;
  z-index:1;
  min-height:280px;
  display:flex;
  flex-direction:column;
  text-decoration:none!important;
  color:inherit;
  background:rgba(255,248,236,.82);
  border:1px solid rgba(111,88,69,.13);
  box-shadow:var(--shadow-soft);
  padding:clamp(1.25rem, 2vw, 1.7rem);
  clip-path:polygon(0 4%, 96% 0, 100% 94%, 4% 100%);
  transition:transform .3s ease, box-shadow .3s ease, background .3s ease;
}

.carnet-escale-card:nth-child(2){
  transform:translateY(1.5rem) rotate(1deg);
}

.carnet-escale-card:nth-child(3){
  transform:rotate(-1deg);
}

.carnet-escale-card:nth-child(4){
  transform:translateY(1.1rem) rotate(.8deg);
}

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

.carnet-escale-card:before{
  content:"";
  position:absolute;
  width:72px;
  height:22px;
  top:-10px;
  left:24px;
  background:rgba(156,201,216,.28);
  transform:rotate(-5deg);
}

.carnet-category{
  color:var(--rose);
  font-size:.82rem;
  line-height:1.3;
  margin-bottom:.8rem;
}

.carnet-escale-card h3{
  font-family:var(--font-repere);
  font-weight:400;
  color:var(--trace);
  font-size:clamp(1.5rem, 2.5vw, 2.2rem);
  line-height:1.05;
  margin:0 0 .9rem;
}

.carnet-escale-card p{
  margin:0 0 1rem;
}

.carnet-date{
  margin-top:auto;
  color:var(--bleu-parcours);
  font-size:.86rem;
}

/* =========================================================
   FINAL
   ========================================================= */

.carnet-final{
  padding:clamp(4rem, 8vw, 7rem) 0;
  position:relative;
}

.carnet-final-card{
  width:min(880px, 100%);
  margin:auto;
  text-align:center;
  background:rgba(255,248,236,.80);
  border:1px solid rgba(111,88,69,.13);
  box-shadow:var(--shadow-paper);
  padding:clamp(2rem, 5vw, 4rem);
  clip-path:polygon(2% 0, 100% 4%, 97% 100%, 0 94%);
  position:relative;
}

.carnet-final-links{
  display:flex;
  justify-content:center;
  gap:1rem;
  flex-wrap:wrap;
  margin-top:1.6rem;
}

/* =========================================================
   ANIMATIONS
   ========================================================= */

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

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

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

@media (max-width:1100px){
  .carnet-territory-grid{
    grid-template-columns:repeat(2, 1fr);
  }

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

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

  .carnet-scroll-map svg{
    left:10px;
    transform:none;
    width:170px;
    opacity:.32;
  }

  .carnet-scroll-marker{
    left:42px;
    width:22px;
    height:22px;
    opacity:.75;
  }

  .carnet-hero-layout,
  .carnet-intro-grid,
  .carnet-network-layout{
    grid-template-columns:1fr;
  }

  .carnet-hero-card,
  .carnet-paper-card,
  .carnet-note-card,
  .carnet-itinerary-card{
    transform:none;
  }

  .carnet-hero-photo{
    transform:rotate(-1deg);
  }
}

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

  .carnet-hero{
    min-height:auto;
    padding:4.2rem 0 2.5rem;
  }

  .carnet-hero-card{
    padding:2rem 1.3rem 2.2rem;
    clip-path:polygon(0 2%, 98% 0, 100% 97%, 3% 100%);
  }

  .carnet-hero h1{
    font-size:clamp(2.4rem, 11vw, 3.9rem);
  }

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

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

  .carnet-hero-photo img{
    height:280px;
  }

  .carnet-territory-grid,
  .carnet-escales-grid{
    grid-template-columns:1fr;
  }

  .carnet-territory-card,
  .carnet-territory-card:nth-child(2),
  .carnet-territory-card:nth-child(3),
  .carnet-territory-card:nth-child(5),
  .carnet-territory-card:nth-child(6),
  .carnet-escale-card,
  .carnet-escale-card:nth-child(2),
  .carnet-escale-card:nth-child(3),
  .carnet-escale-card:nth-child(4){
    transform:none;
  }

  .carnet-territory-card{
    min-height:auto;
  }

  .carnet-escales-grid:before{
    display:none;
  }
}

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

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

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