.elementor-kit-4{--e-global-color-primary:#C96045;--e-global-color-secondary:#D3964D;--e-global-color-text:#291F0D;--e-global-color-accent:#687C65;--e-global-color-4efdf46:#8E6F77;--e-global-color-79a7b4b:#F5F3F0;--e-global-color-c457ec7:#FFFFFF;--e-global-typography-primary-font-family:"Raleway";--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"Raleway";--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"Raleway";--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.4em;--e-global-typography-accent-font-family:"Raleway";--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:1.2em;background-color:var( --e-global-color-79a7b4b );color:var( --e-global-color-text );font-family:"Raleway", Sans-serif;font-size:18px;font-weight:400;line-height:1.4em;}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Raleway", Sans-serif;font-size:16px;font-weight:600;line-height:1em;letter-spacing:0.02em;color:var( --e-global-color-79a7b4b );border-radius:50px 50px 50px 50px;padding:16px 32px 16px 32px;}.elementor-kit-4 button:hover,.elementor-kit-4 button:focus,.elementor-kit-4 input[type="button"]:hover,.elementor-kit-4 input[type="button"]:focus,.elementor-kit-4 input[type="submit"]:hover,.elementor-kit-4 input[type="submit"]:focus,.elementor-kit-4 .elementor-button:hover,.elementor-kit-4 .elementor-button:focus{background-color:var( --e-global-color-accent );color:var( --e-global-color-79a7b4b );}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 a{color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-4 a:hover{color:var( --e-global-color-accent );}.elementor-kit-4 h1{color:var( --e-global-color-text );font-family:"Raleway", Sans-serif;font-size:56px;font-weight:700;line-height:1.2em;}.elementor-kit-4 h2{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-4 h3{color:var( --e-global-color-text );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 h4{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 h5{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 h6{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 img{border-radius:8px 8px 8px 8px;}.elementor-kit-4 label{color:var( --e-global-color-text );font-family:"Raleway", Sans-serif;font-size:14px;font-weight:600;line-height:1.2em;}.elementor-kit-4 input:not([type="button"]):not([type="submit"]),.elementor-kit-4 textarea,.elementor-kit-4 .elementor-field-textual{font-family:"Raleway", Sans-serif;font-size:16px;font-weight:400;line-height:1.2em;color:var( --e-global-color-text );accent-color:var( --e-global-color-accent );background-color:var( --e-global-color-79a7b4b );border-radius:4px 4px 4px 4px;padding:14px 14px 14px 14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:#291F0DE6;--lightbox-ui-color:var( --e-global-color-79a7b4b );}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-4{font-size:17px;}.elementor-kit-4 a{line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-4 h1{font-size:44px;}.elementor-kit-4 h2{line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-4 h3{line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 h4{line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 h5{line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 h6{line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-4{font-size:16px;}.elementor-kit-4 a{line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-4 h1{font-size:36px;}.elementor-kit-4 h2{line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-4 h3{line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 h4{line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 h5{line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 h6{line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{font-size:16px;line-height:1em;letter-spacing:0.02em;padding:16px 32px 16px 32px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Sélection de texte cohérente avec la charte */
::selection {
  background: var(--e-global-color-accent);
  color: #FAF8F3;
}

/* Scroll smooth */
html {
  scroll-behavior: smooth;
}

/* Focus visible accessible */
*:focus-visible {
  outline: 2px solid var(--e-global-color-primary);
  outline-offset: 2px;
}

/* Effet hover boutons */
.elementor-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(201, 96, 69, 0.2);
}

/* Underline décoratif sous les H1 */
.decorative-underline::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #D3964D;
  margin-top: 0.5em;
}

/* Liens body avec soulignement ocre */
.elementor-widget-text-editor a,
.elementor-widget-theme-post-content a {
  text-decoration: underline;
  text-decoration-color: #D3964D;
  text-underline-offset: 3px;
}

p:last-child {
    margin-bottom:0;
}

.underline {
    display:inline-block;
    position:relative;
    z-index:2;
}

.underline:after {
    content:"";
    display:block;
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    z-index:1;
    height:10px;
    background:var(--wpr-bg-3d2c4c29-5af2-4d6d-9950-966580757847);
    background-position:center;
    background-size:cover;
}

/* =============================================================
   CSS GLOBAL pour le template Single "Étude de cas" (CPT realisation)
   À coller UNE SEULE FOIS dans Elementor :
   Site Settings > Custom CSS
   (ou dans le Custom CSS du Theme Builder > Single Realisation
   si tu préfères que ce style ne s'applique qu'aux études de cas)

   Toutes les classes sont préfixées .ca- pour ne pas polluer le reste du site.
   Couleurs : charte Site Signature v2.
   ============================================================= */

/* Conteneur global de page */
.ca-page { font-family: 'Raleway', sans-serif; color: #291F0D; line-height: 1.7; background: #FAF8F3; }
.ca-page a { color: #C96045; text-decoration: none; border-bottom: 1px solid #D3964D; padding-bottom: 1px; }
.ca-page a:hover { color: #687C65; border-bottom-color: #687C65; }

/* Largeur lecture confortable */
.ca-wrap { max-width: 720px; margin: 0 auto; padding: 0 24px; }

/* ============ Couverture ============ */

.ca-cover { background: #FAF8F3; padding: 64px 0 24px; text-align: center; }

.ca-stamp {
  display: inline-block;
  font-size: 0.78rem; letter-spacing: 0.2em; text-transform: uppercase;
  font-weight: 700; color: #C96045;
  border: 1.5px solid #C96045;
  padding: 8px 20px; border-radius: 2px;
  margin-bottom: 32px;
}

.ca-h1 {
  font-size: clamp(1.9rem, 4.5vw, 2.8rem);
  line-height: 1.2; font-weight: 700;
  margin: 0 0 16px;
}
.ca-h1 em { font-style: italic; color: #687C65; font-weight: 400; }

.ca-subtitle {
  font-size: 1.05rem; color: #687C65;
  max-width: 540px; margin: 0 auto;
  line-height: 1.55;
}

/* Méta-bar */
.ca-meta-bar {
  background: #FFFFFF;
  border-top: 1px solid rgba(211, 150, 77, 0.2);
  border-bottom: 1px solid rgba(211, 150, 77, 0.2);
  padding: 20px 0; margin-top: 48px;
}
.ca-meta-bar-row {
  display: flex; flex-wrap: wrap; justify-content: center;
  gap: 32px; font-size: 0.88rem; color: #687C65;
  letter-spacing: 0.04em;
}
.ca-meta-bar-row span strong { color: #291F0D; font-weight: 700; }

/* ============ Entrées de carnet ============ */

.ca-entry { padding: 56px 0 16px; }

.ca-date-mark {
  font-size: 0.85rem; letter-spacing: 0.16em; text-transform: uppercase;
  font-weight: 700; color: #D3964D;
  margin-bottom: 16px;
  display: flex; align-items: center; gap: 12px;
}
.ca-date-mark::before {
  content: ""; display: inline-block;
  width: 32px; height: 1px; background: #D3964D;
}

.ca-entry-title {
  font-size: clamp(1.5rem, 3.2vw, 2.1rem);
  font-weight: 700; line-height: 1.25;
  margin: 0 0 24px; max-width: 600px;
}

.ca-entry-content { font-size: 1.1rem; line-height: 1.75; }
.ca-entry-content p { margin: 0 0 20px; }
.ca-entry-content em { color: #687C65; font-style: italic; }
.ca-entry-content strong { color: #C96045; font-weight: 700; }

/* ============ Polaroid ============ */

.ca-polaroid { padding: 24px 0 48px; text-align: center; }

.ca-polaroid-photo {
  display: inline-block;
  background: #FFFFFF;
  padding: 16px 16px 48px;
  box-shadow: 0 6px 24px rgba(41, 31, 13, 0.08);
  transform: rotate(-1.5deg);
  transition: transform 0.3s;
  max-width: 100%;
}
.ca-polaroid-photo:hover { transform: rotate(0deg); }

.ca-polaroid-photo--right { transform: rotate(1.8deg); }
.ca-polaroid-photo--right:hover { transform: rotate(0deg); }

.ca-polaroid-frame {
  width: clamp(280px, 65vw, 540px);
  aspect-ratio: 4 / 3;
  background: linear-gradient(135deg, #FAF8F3 0%, rgba(211, 150, 77, 0.13) 100%);
  overflow: hidden;
}
.ca-polaroid-frame img { width: 100%; height: 100%; object-fit: cover; display: block; }

.ca-polaroid-caption {
  font-style: italic; color: #291F0D;
  font-size: 1rem; margin-top: 12px;
  font-weight: 500;
}

/* ============ Post-it témoignage ============ */

.ca-postit { padding: 32px 0 48px; }

.ca-postit-pin {
  background: rgba(211, 150, 77, 0.13);
  border-left: 4px solid #D3964D;
  padding: 32px;
  max-width: 600px; margin: 0 auto;
  position: relative;
}
.ca-postit-pin::before {
  content: "\201C";
  position: absolute; top: 8px; left: 24px;
  font-size: 4rem; color: #C96045;
  font-family: Georgia, serif; line-height: 1;
  opacity: 0.4;
}

.ca-postit-label {
  font-size: 0.78rem; letter-spacing: 0.16em; text-transform: uppercase;
  color: #687C65; font-weight: 700; margin-bottom: 16px;
  position: relative; z-index: 1;
}
.ca-postit-text {
  font-size: 1.45rem; line-height: 1.4; font-style: italic;
  color: #291F0D; margin: 0 0 16px; font-weight: 600;
  position: relative; z-index: 1;
}
.ca-postit-who {
  font-size: 0.95rem; color: #687C65;
  position: relative; z-index: 1;
}
.ca-postit-who strong { color: #291F0D; font-weight: 700; }

/* ============ Liste check-marks ============ */

.ca-notes { padding: 16px 0 48px; }
.ca-notes ul { list-style: none; padding: 0; margin: 0; }
.ca-notes li {
  padding: 14px 0 14px 36px;
  position: relative;
  font-size: 1.05rem; line-height: 1.5;
  border-bottom: 1px dashed rgba(211, 150, 77, 0.33);
}
.ca-notes li:last-child { border-bottom: none; }
.ca-notes li::before {
  content: "✓";
  position: absolute; left: 0; top: 14px;
  color: #687C65; font-weight: 700; font-size: 1.1rem;
}
.ca-notes li strong { color: #C96045; font-weight: 700; }
.ca-notes li em { color: #687C65; font-style: italic; }

/* ============ Stats row (optionnel) ============ */

.ca-stats-row {
  display: flex; flex-wrap: wrap; gap: 16px;
  justify-content: center; margin: 32px 0;
}
.ca-stat {
  background: #FFFFFF;
  border: 1px solid rgba(211, 150, 77, 0.33);
  padding: 20px 24px; border-radius: 4px;
  text-align: center; min-width: 140px;
}
.ca-stat-num {
  font-size: 1.8rem; font-weight: 700; color: #C96045;
  display: block; line-height: 1.1;
}
.ca-stat-lbl {
  font-size: 0.85rem; color: #687C65;
  display: block; margin-top: 4px;
}

/* ============ Signature finale + CTA ============ */

.ca-end {
  padding: 64px 0 80px;
  background: #FAF8F3;
  text-align: center;
  border-top: 1px solid rgba(211, 150, 77, 0.2);
  margin-top: 48px;
}
.ca-end h2 {
  font-size: clamp(1.6rem, 3.5vw, 2.2rem);
  font-weight: 700; margin: 0 0 16px;
  max-width: 580px; margin-left: auto; margin-right: auto;
  line-height: 1.25;
}
.ca-end p {
  font-size: 1.05rem; color: #687C65;
  max-width: 540px; margin: 0 auto 32px;
  line-height: 1.6;
}
.ca-btn {
  display: inline-block;
  background: #C96045; color: #FFFFFF !important;
  padding: 16px 32px; border-radius: 2px;
  font-weight: 700; font-size: 1rem;
  letter-spacing: 0.02em; border: none !important;
  transition: background 0.2s;
}
.ca-btn:hover { background: #687C65; color: #FFFFFF !important; }

.ca-signature {
  margin-top: 48px;
  font-style: italic; color: #291F0D;
  font-size: 1.15rem; font-weight: 500;
}
.ca-signature-name {
  display: block;
  font-size: 2rem; color: #C96045;
  font-weight: 700; font-style: italic;
  margin-top: 4px;
}

.elsa-calc__btn-cta {
    color:white !important;
}

/* ============ Responsive ============ */

@media (max-width: 600px) {
  .ca-cover { padding: 40px 0 16px; }
  .ca-entry { padding: 40px 0 8px; }
}/* End custom CSS */