   @import url('https://fonts.googleapis.com/css2?family=Chewy&display=swap');
	/* ============ Charte (variables) ============ */
    :root{
      --msp-vert-profond:#66866e; /* header, titres, boutons */
      --msp-vert-clair:#9eb076;   /* fonds doux, cartes */
      --msp-corail:#e5b42e;       /* accents/hover */
      --msp-beige:#F5F1E3;        /* fond général */
      --msp-texte: #3c4040;
    }
.modal-footer{
    background: #fff!important;
}
.danger-message{
    background-color:var(--msp-corail);
}
.success-message{
    color:green;
}
.mentions {
    background: #fff;
    padding: 2em 0;
}
   .mentions h1 {
       color: var(--msp-vert-profond);
   }
   #liveToast{
       background-color: #fff;
       font-size: 1.1rem;
   }
.mentions h2 {
    font-family: "Open sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    font-weight: 700;
    font-size: 1.5rem;
    letter-spacing: .1px;
    color: var(--msp-vert-profond);
}
   .min-vh-75 {
       min-height: 75vh !important;
   }
   a {
       color: black;
       text-decoration: none!important;
   }
   h3{
       color: var(--msp-vert-profond)!important;
   }

    body{
      font-family: "Open sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      color:var(--msp-texte)!important;
      background:var(--msp-beige);
      letter-spacing:.1px;
    }
    h1,h2,h3,h4,.navbar-brand{
      font-family: "Chewy", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      font-weight:700;
      letter-spacing:.2px;
    }
h3 {color: var(--msp-vert-profond)}

	.btn-primary {
	background-color: var(--msp-corail);
	border-color:var(--msp-corail)
	}

    /* ============ Navbar ============ */
	.navbar-toggler{
		background: var(--msp-vert-profond);
		color: var(--msp-beige)
	}
    .msp-navbar{
      background:linear-gradient(180deg,  #9eb076 0%, var(--msp-vert-clair) 100%);
      box-shadow:0 2px 0 rgba(0,0,0,.05);
    }
    .msp-navbar .nav-link{
      color:#E7EFEA;
      font-weight:600;
    }
    .msp-navbar .nav-link:hover,
    .msp-navbar .nav-link:focus{
      color:var(--msp-corail);
    }
    .navbar-brand{
      color:#fff!important;
      display:flex; gap:.5rem; align-items:center;
    }
.navbar-brand img{
max-height: 50px
}
    .brand-logo{
      width:28px;height:28px; display:inline-block;
      border:2px solid #DCE7E2; border-radius:6px;
      position:relative;
    }
    /* mini logo montagnes + ECG */
    .brand-logo::before{
      content:"";
      position:absolute; inset:5px 4px auto 4px; height:0;
      border-bottom:2px solid #DCE7E2; /* ligne de base */
    }
    .brand-logo::after{
      content:"";
      position:absolute; left:4px; right:4px; bottom:7px; height:0;
      border-bottom:2px solid #DCE7E2;
      box-shadow:
        6px -6px 0 -1px #DCE7E2,    /* pic 1 */
        12px -3px 0 -1px #DCE7E2,   /* pic 2 */
        18px -7px 0 -1px #DCE7E2;   /* pic 3 */
    }


    /* ============ Carousel ============ */
    .carousel-indicators [data-bs-target]{
      background-color:var(--msp-vert-profond);
    }

		.carousel{
		max-height: 50vh;
		overflow: hidden;
		}
		.slider-title {
		position: absolute;
		top: 35vh;
		width: 100%;
		text-align:right;
		}
        .slider-title .btn {
            transform: rotate(-3deg);
            margin-right: 1em;
            /* height: 200px; */
            right: 0;
            bottom: -3em;
            position: absolute;
            z-index: 1000;
            margin-top: 1em;
        }

   @media (max-width: 1050px) {
       .slider-title {
           bottom: 5%;
           top:auto
       }
   }
   .btn-primary:hover{
       background-color: var(--msp-vert-profond)!important;
   }
   @media (max-width: 700px) {
       .slider-title {
           display: none;
       }
   }

       .slider-title span {
			padding : 1em;
			background: var(--msp-beige);
			color: var(--msp-vert-profond);
			font-family: "Chewy", system-ui;
			font-size: 1.5em;
		}
		.slider-title .btn {
		transform: rotate(-3deg);
		margin-right: 1em;
		margin-top: 1em;
        right: 0;
        bottom: -3em;
        position: absolute;
        z-index: 1000;
		}
    /* ============ Section titres ============ */
    .section-title{
      color:var(--msp-vert-profond);
      margin:2.25rem 0 1.25rem;
    }
    section{
      margin:3em 0 2rem;
    }

    /* ============ Numéros utiles ============ */
.num-section {
background: white;
padding-bottom: 2em;
padding-top: 1rem;
}
.num-section .container{

}
/**.num-section::before{
width: 100%;
height: 2em;
content: "";
display:block;
background:white;
transform: rotate(-10deg)
}**/
    .quick-calls .icon-pill{
      width:86px;height:86px; border-radius:999px;
      display:grid; place-items:center;
      margin-inline:auto;
      color:#fff; font-size:34px;
      box-shadow:0 6px 18px rgba(0,0,0,.08);
    }
    .pill-pharma, .pill-darkgreen { background:var(--msp-vert-profond); }  /* vert profond différent pour équilibre */
    .pill-urgence, .pill-corail{ background:var(--msp-corail); }
    .pill-vitale, .pill-green { background:var(--msp-vert-clair); }
    .quick-calls a{
      text-decoration:none; color:inherit;
    }
    .quick-calls a:hover .icon-pill{
      transform:translateY(-2px);
      transition:.2s ease;
      filter:brightness(1.05);
    }
    .navbar-toggler {
        background-color: var(--msp-vert-profond)!important;
    }
		.num-utile .subtitle{
		font-size: 2em;
		}
    .bordered .item-list {
        border: 1px solid var(--msp-vert-clair);
        padding: 4em 1em;
    }
    /* ============ Actualités ============ */
    .card.msp-card{
        background: #F2F7F5;
        border:1px solid #E3EFEA;
        border-radius:14px;
        color: var(--msp-texte)!important;
        overflow:hidden;
        transition:transform .15s ease, box-shadow .15s ease;
    }
    .card.msp-card:hover{
      transform:translateY(-2px);
      box-shadow:0 10px 22px rgba(0,0,0,.08);
    }
    .card.msp-card .card-img-top{
      height:160px; object-fit:cover;
      background:var(--msp-vert-clair);
    }

    /* ============ CTA bouton générique ============ */
    .btn-msp{
      background:var(--msp-vert-profond);
      color:#fff; border:none; font-weight:700;
    }
    .btn-msp:hover{ background:#163229; color:#fff; }

    /* ============ Footer ============ */
    .msp-footer{
      background:var(--msp-vert-clair);
      color:#E8F1ED;
      padding:2rem;
      margin-top:2.5rem;
		margin-bottom:0;
    }

    /* Petites améliorations responsives */
    @media (max-width: 991.98px){
      .lead-img{ margin-bottom:1rem; }
    }

   /* Carousels + miniatures */
   .carousel.carousel-thumb, .carousel-thumb .carousel-item img{ border-radius:12px; }
   .thumbs{ gap:.6rem }
   .thumbs .thumb{
       width:92px; height:64px; border-radius:8px; overflow:hidden; border:2px solid transparent;
       cursor:pointer; background:#fff;
   }
   .thumbs .thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
   .thumbs .thumb.active{ border-color:var(--vert); box-shadow:0 0 0 2px rgba(31,62,54,.15); }

   /* Icônes rondes */
   .round-icon{
       width:90px;height:90px;border-radius:999px;display:grid;place-items:center;
       background:#F2F7F5;border:1px solid #E3EFEA;color:var(--vert);font-size:36px;margin-inline:auto;
   }
   /* Opportunités */
   .opp-card{ text-align:center;background:#fff;border:1px solid #E3EFEA;border-radius:14px;padding:1.25rem;height:100%; }
   .opp-card .round-icon{ background:#E9F3EF; }

   .btn-msp{ background:var(--vert); color:#fff; border:none; font-weight:700; }
   .btn-msp:hover{ background:#163229; color:#fff; }

   /* Témoignages */
   .testi-card{ background:#fff;border:1px solid #E3EFEA;border-radius:14px;padding:1rem;height:100%; }
   .testi-card .avatar{ width:48px;height:48px;border-radius:999px;object-fit:cover;background:#EAF3F0; }
   .testi-card .avatar.pro-icone{ margin: 0!important; }
   /* Formulaire */
   .form-control,.form-select{ border-radius:10px; border:1px solid #E3EFEA; }
   .form-control:focus{ border-color:var(--vert-clair); box-shadow:0 0 0 .2rem rgba(167,215,197,.35); }

   /* Cartes praticiens */
   .doc-card{
       border:1px solid #E3EFEA; border-radius:14px; background:#fff;
       padding:1rem; text-align:center; cursor:pointer;
       transition:transform .15s ease, box-shadow .15s ease;
   }
   .doc-card:hover{ transform:translateY(-2px); box-shadow:0 10px 20px rgba(0,0,0,.08); }
   .doc-photo{
       display: block;
   }
   .doc-photo, .pro-icone{
       width: 112px;
       height: 112px;
       align-items: center;
       text-align: center;
       background: revert;
       font-family: 'Chewy';
       color: var(--msp-vert-profond);
       font-size: xx-large;
       justify-content: center;
       border-radius: 999px;
       object-fit: cover;
       background: #EAF3F0;
       display: flex;
       margin: 0 auto .75rem;
   }

   .form-check-input:checked {
       background-color:var(--msp-vert-clair);
       border-color: var(--msp-vert-clair);
   }
   .doc-name{ font-weight:700; margin-bottom:.1rem; }
   .badge-spec{
       background:var(--msp-vert-clair); color:#0e2b24; border:0; font-weight:600;
   }

   .filter-wrap{ border-radius:12px; padding:.8rem 1rem; margin: 0 auto;}

   /* Modal */
   .modal-content{ border:0; border-radius:18px; }
   .modal-header{ border-bottom:0; }
   .modal-title{ color:var(--msp-vert-profond); }
   .btn-msp{ background:var(--msp-vert-profond); color:#fff; border:none; font-weight:700; }
   .btn-msp:hover{ background:#163229; color:#fff; }
   .float-right{
       float:right;
   }
   .border-spec{
       border-top-left-radius: 18px;
       border-top-right-radius: 18px;
   }
    .fw-semibold{
        color:var(--msp-vert-profond)!important; font-weight:800;
    }
    #modalPhone{
        color:var(--msp-vert-profond)!important;
    }
   .container-small{
       max-width:900px!important;
   }
   .body-content{
       min-height: 50vh;
   }

   .bg-dark, .preview .bg-dark {
       background-color: var(--msp-vert-profond) !important;
   }
   .text-white .modal-title {
       font-weight: 100;
       color: #fff !important;
   }
    .mid-height {
        max-height: 50vh;
    }
   .post-date {
       position: absolute;
       right: 0;
       width: 30%;
       max-width: 100px;
       color:white;
       border-bottom-left-radius: 18px;
       font-size: 1.2rem;
       font-family: "Chewy", system-ui;
       background-color: var(--msp-corail);
       padding: 0.5em;
   }
   .new-img {
       margin: 0 auto;
   }
   .actus-content img{
       max-width: 75%;
       display: block;
       margin: 0 auto;
   }
