/*
Theme Name: Ceido
Description: Thème WordPress moderne pour le groupement de pharmacies Ceido
Version: 1.0
Author: Votre Nom
*/

/* Reset et base */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Open Sans', sans-serif;
  line-height: 1.6;
  color: #2b2b2b;
  overflow-x: hidden;
}

/* Variables CSS */
:root {
  --primary-color: #036b72;
  --secondary-color: #bf317a;
  --accent-color: #d4166c;
  --light-bg: #ebf4f5;
  --white: #ffffff;
  --text-dark: #2b2b2b;
  --text-light: #1a202c;
  --border-radius: 15px;
  --border-radius-lg: 30px;
  --border-radius-xl: 35px;
  --shadow: 0px 4px 16px rgba(0, 0, 0, 0.05);
  --shadow-lg: 0px 14px 26px 5px rgba(0, 0, 0, 0.06);
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 900;
  line-height: 1.2;
}

.font-montserrat {
  font-family: 'Montserrat', sans-serif;
}

.font-open-sans {
  font-family: 'Open Sans', sans-serif;
}

/* Container et layout */
.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.container-xl {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Header */
.site-header {
  position: fixed;
  top: 43px;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 40px);
  max-width: 1476px;
  height: 100px;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(4.5px);
  border-radius: 22px;
  box-shadow: var(--shadow);
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 39px;
}

.site-logo {
  width: 130px;
  height: 55px;
  background-image: url('assets/images/logo.png');
  background-size: contain;
  background-repeat: no-repeat;
}

.main-navigation {
  display: flex;
  list-style: none;
  gap: 32px;
}

.main-navigation a {
  font-family: 'Open Sans', sans-serif;
  font-weight: 700;
  color: var(--primary-color);
  text-decoration: none;
  font-size: 17px;
  transition: color 0.3s ease;
}

.main-navigation a:hover {
  color: var(--secondary-color);
}

.header-cta {
  background: var(--secondary-color);
  color: white;
  padding: 13px 30px;
  border-radius: var(--border-radius-xl);
  text-decoration: none;
  font-family: 'Open Sans', sans-serif;
  font-weight: 600;
  font-size: 19px;
  display: flex;
  align-items: center;
  gap: 10px;
  transition: background-color 0.3s ease;
}

.header-cta:hover {
  background: #a82868;
}

.header-cta::after {
  content: '';
  width: 23px;
  height: 23px;
  background: white;
  border-radius: 50%;
  background-image: url('assets/images/arrow-icon.svg');
  background-size: 12px 10px;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hero Section */
.hero-section {
  background: var(--light-bg);
  padding: 140px 0 80px;
  position: relative;
  overflow: hidden;
}

.hero-section::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 1337px;
  top: 369px;
  right: 0;
  border-radius: 668.5px;
  background: radial-gradient(50% 50% at 50% 50%, rgba(221, 182, 183, 0.62) 0%, rgba(236, 245, 246, 0.6) 100%);
  opacity: 0.6;
}

.hero-section::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 1337px;
  top: 0;
  left: 0;
  border-radius: 668.5px;
  background: radial-gradient(50% 50% at 50% 50%, rgba(182, 219, 221, 0.62) 0%, rgba(236, 245, 246, 0.6) 100%);
}

.hero-content {
  position: relative;
  z-index: 10;
}

.stats-card {
  background: white;
  border-radius: var(--border-radius);
  box-shadow: var(--shadow);
  padding: 40px;
  margin-bottom: 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
}

.stat-item {
  text-align: center;
  flex: 1;
  min-width: 200px;
}

.stat-number {
  font-family: 'Open Sans', sans-serif;
  font-size: 50px;
  font-weight: 400;
  color: transparent;
  -webkit-text-stroke: 1px var(--secondary-color);
  line-height: 33px;
  letter-spacing: 2px;
  display: block;
}

.stat-subtext {
  font-family: 'Open Sans', sans-serif;
  font-weight: 600;
  color: var(--secondary-color);
  font-size: 18px;
  line-height: 15px;
  margin-left: 8px;
}

.stat-label {
  font-family: 'Open Sans', sans-serif;
  font-weight: 700;
  color: var(--primary-color);
  font-size: 18px;
  line-height: 21px;
  margin-top: 8px;
}

.hero-subtitle {
  font-family: 'Open Sans', sans-serif;
  font-weight: 700;
  color: var(--primary-color);
  font-size: 17px;
  line-height: 33px;
  margin-bottom: 32px;
}

.hero-buttons {
  display: flex;
  gap: 24px;
  margin-bottom: 32px;
  flex-wrap: wrap;
}

.btn {
  padding: 13px 30px;
  border-radius: var(--border-radius-xl);
  text-decoration: none;
  font-family: 'Open Sans', sans-serif;
  font-weight: 600;
  font-size: 19px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
}

.btn-primary {
  background: var(--secondary-color);
  color: white;
}

.btn-primary:hover {
  background: #a82868;
  transform: translateY(-2px);
}

.btn-secondary {
  background: var(--primary-color);
  color: white;
}

.btn-secondary:hover {
  background: #025761;
  transform: translateY(-2px);
}

.btn::after {
  content: '';
  width: 23px;
  height: 23px;
  background: white;
  border-radius: 50%;
  background-image: url('assets/images/arrow-icon.svg');
  background-size: 12px 10px;
  background-repeat: no-repeat;
  background-position: center;
}

.hero-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 900;
  font-size: 43px;
  line-height: 60px;
  margin-bottom: 32px;
}

.hero-title .accent {
  color: var(--accent-color);
}

/* Services Section */
.services-section {
  padding: 80px 0;
  display: flex;
  align-items: center;
  gap: 80px;
}

.services-illustration {
  flex: 1;
  position: relative;
}

.services-content {
  flex: 1;
}

.services-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 900;
  font-size: 36px;
  line-height: 1.2;
  margin-bottom: 40px;
}

.service-point {
  margin-bottom: 40px;
}

.service-point h3 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 30px;
  line-height: 40px;
}

.service-point .accent {
  color: var(--accent-color);
}

/* Introduction Section */
.intro-section {
  background: var(--light-bg);
  padding: 80px 0;
}

.intro-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 900;
  font-size: 40px;
  line-height: 60px;
  letter-spacing: -0.8px;
  margin-bottom: 24px;
}

.intro-title .accent {
  color: var(--accent-color);
}

.intro-content {
  max-width: 500px;
  margin-bottom: 32px;
}

.intro-text {
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  line-height: 22.5px;
  margin-bottom: 16px;
}

.intro-text.highlight {
  font-weight: 600;
  font-style: italic;
}

/* Service Cards */
.service-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 40px;
  padding: 80px 0;
}

.service-card {
  background: white;
  border-radius: var(--border-radius-lg);
  padding: 40px;
  text-align: center;
  box-shadow: var(--shadow);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-card:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-lg);
}

.service-card-icon {
  width: 80px;
  height: 80px;
  margin: 0 auto 32px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.service-card-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 25px;
  color: var(--primary-color);
  margin-bottom: 16px;
  letter-spacing: -0.5px;
  line-height: 37.5px;
}

.service-card-description {
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  line-height: 21px;
  letter-spacing: -0.3px;
  margin-bottom: 24px;
}

.service-card-link {
  color: var(--primary-color);
  text-decoration: none;
  font-family: 'Open Sans', sans-serif;
  font-weight: 600;
  font-size: 16px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: color 0.3s ease;
}

.service-card-link:hover {
  color: var(--secondary-color);
}

.service-card-link::after {
  content: '';
  width: 14px;
  height: 14px;
  border: 1px solid currentColor;
  border-radius: 7px;
  background-image: url('assets/images/arrow-small.svg');
  background-size: 16px 1px;
  background-repeat: no-repeat;
  background-position: center;
}

/* Testimonials */
.testimonials-section {
  padding: 80px 0;
}

.testimonial-card {
  background: white;
  border-radius: var(--border-radius-lg);
  padding: 40px;
  box-shadow: var(--shadow);
  max-width: 740px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 32px;
}

.testimonial-avatar {
  width: 153px;
  height: 156px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.testimonial-content {
  flex: 1;
}

.testimonial-text {
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  line-height: 21px;
  letter-spacing: -0.3px;
  margin-bottom: 16px;
}

.testimonial-author {
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  line-height: 22.5px;
  letter-spacing: -0.3px;
  color: var(--primary-color);
}

.testimonial-author .name {
  font-weight: 700;
  letter-spacing: -0.04px;
}

.testimonial-author .title {
  font-weight: 600;
  letter-spacing: -0.04px;
}

/* News Section */
.news-section {
  background: var(--light-bg);
  padding: 80px 0;
}

.news-grid {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 80px;
  align-items: start;
}

.news-intro h2 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 900;
  font-size: 40px;
  line-height: 60px;
  margin-bottom: 16px;
}

.news-intro p {
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  line-height: 21px;
  letter-spacing: -0.3px;
  margin-bottom: 24px;
}

.news-carousel {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 32px;
}

.news-card {
  background: white;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow);
  transition: transform 0.3s ease;
}

.news-card:hover {
  transform: translateY(-5px);
}

.news-card-image {
  width: 100%;
  height: 200px;
  object-fit: cover;
}

.news-card-content {
  padding: 33px;
}

.news-card-date {
  font-size: 14px;
  font-weight: 600;
  color: #5b5f60;
  margin-bottom: 23px;
}

.news-card-meta {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 14px;
  font-size: 14px;
}

.news-card-category {
  font-weight: 600;
  color: var(--secondary-color);
}

.news-card-divider {
  width: 15px;
  height: 1px;
  background: #ccc;
}

.news-card-read-time {
  color: var(--secondary-color);
}

.news-card-title {
  font-weight: 600;
  font-size: 20px;
  color: var(--primary-color);
  line-height: 30px;
  letter-spacing: -0.4px;
  margin-bottom: 15px;
}

.news-card-excerpt {
  font-size: 15px;
  line-height: 21px;
  letter-spacing: -0.3px;
  margin-bottom: 20px;
}

/* Newsletter */
.newsletter-section {
  background: var(--light-bg);
  padding: 40px 0;
}

.newsletter-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
}

.newsletter-form h3 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 30px;
  letter-spacing: -0.6px;
  line-height: 45px;
  margin-bottom: 8px;
}

.newsletter-form p {
  font-family: 'Open Sans', sans-serif;
  color: var(--primary-color);
  font-size: 15px;
  line-height: 48px;
  margin-bottom: 16px;
}

.form-group {
  position: relative;
  margin-bottom: 16px;
}

.form-input {
  width: 100%;
  height: 56px;
  border: 2px solid #6e98b1;
  border-radius: 27px;
  padding: 0 20px;
  font-size: 16px;
  outline: none;
  transition: border-color 0.3s ease;
}

.form-input:focus {
  border-color: var(--primary-color);
}

.form-label {
  position: absolute;
  top: -8px;
  left: 47px;
  background: white;
  padding: 0 8px;
  font-family: 'Open Sans', sans-serif;
  color: var(--primary-color);
  font-size: 14px;
}

.checkbox-group {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 16px;
}

.checkbox {
  width: 18px;
  height: 18px;
  border: 2px solid #6e98b1;
  border-radius: 3px;
  flex-shrink: 0;
  margin-top: 2px;
}

.checkbox-label {
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  line-height: 18.2px;
  letter-spacing: -0.26px;
}

/* Footer */
.site-footer {
  background: var(--primary-color);
  color: white;
  padding: 80px 0 40px;
}

.footer-content {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  margin-bottom: 40px;
}

.footer-column h3 {
  font-family: 'Open Sans', sans-serif;
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 16px;
}

.footer-column ul {
  list-style: none;
}

.footer-column ul li {
  margin-bottom: 16px;
}

.footer-column ul li a {
  color: white;
  text-decoration: none;
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  line-height: 22.5px;
  letter-spacing: -0.3px;
  transition: color 0.3s ease;
}

.footer-column ul li a:hover {
  color: var(--light-bg);
}

.social-icons {
  display: flex;
  gap: 16px;
  margin-top: 16px;
}

.social-icon {
  width: 24px;
  height: 24px;
  background-size: contain;
  background-repeat: no-repeat;
  transition: opacity 0.3s ease;
}

.social-icon:hover {
  opacity: 0.7;
}

.footer-contact {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
}

.footer-contact-icon {
  width: 40px;
  height: 40px;
  background-size: contain;
  background-repeat: no-repeat;
}

.footer-contact-text {
  font-family: 'Open Sans', sans-serif;
}

.footer-contact-text .label {
  font-size: 14px;
  line-height: 0.1px;
}

.footer-contact-text .phone {
  font-size: 20px;
  line-height: 27px;
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  padding-top: 32px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: 'Open Sans', sans-serif;
  font-weight: 600;
  font-size: 14px;
}

/* Animations */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.animate-fade-in-up {
  animation: fadeInUp 0.8s ease-out;
}

.animate-fade-in-left {
  animation: fadeInLeft 0.8s ease-out;
}

.animate-fade-in-right {
  animation: fadeInRight 0.8s ease-out;
}

.animate-scroll {
  animation: scroll 30s linear infinite;
}

/* Responsive Design */
@media (max-width: 1200px) {
  .container {
    max-width: 100%;
    padding: 0 40px;
  }
  
  .site-header {
    width: calc(100% - 80px);
    padding: 0 20px;
  }
  
  .main-navigation {
    gap: 20px;
  }
  
  .main-navigation a {
    font-size: 15px;
  }
}

@media (max-width: 992px) {
  .hero-title {
    font-size: 36px;
    line-height: 48px;
  }
  
  .services-section {
    flex-direction: column;
    gap: 40px;
  }
  
  .news-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  
  .newsletter-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  
  .footer-content {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .site-header {
    position: relative;
    top: 0;
    transform: none;
    width: 100%;
    border-radius: 0;
    height: auto;
    padding: 20px;
    flex-direction: column;
    gap: 20px;
  }
  
  .main-navigation {
    flex-direction: column;
    gap: 10px;
    text-align: center;
  }
  
  .hero-section {
    padding: 40px 0;
  }
  
  .stats-card {
    flex-direction: column;
    gap: 30px;
  }
  
  .hero-buttons {
    flex-direction: column;
    align-items: center;
  }
  
  .hero-title {
    font-size: 28px;
    line-height: 36px;
    text-align: center;
  }
  
  .service-cards {
    grid-template-columns: 1fr;
  }
  
  .testimonial-card {
    flex-direction: column;
    text-align: center;
  }
  
  .news-carousel {
    grid-template-columns: 1fr;
  }
  
  .footer-content {
    grid-template-columns: 1fr;
  }
  
  .footer-bottom {
    flex-direction: column;
    gap: 10px;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .container {
    padding: 0 20px;
  }
  
  .hero-title {
    font-size: 24px;
    line-height: 32px;
  }
  
  .btn {
    width: 100%;
    justify-content: center;
  }
  
  .service-card {
    padding: 20px;
  }
  
  .testimonial-card {
    padding: 20px;
  }
  
  .news-card-content {
    padding: 20px;
  }
}

/* Utility Classes */
.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.mb-0 { margin-bottom: 0; }
.mb-1 { margin-bottom: 8px; }
.mb-2 { margin-bottom: 16px; }
.mb-3 { margin-bottom: 24px; }
.mb-4 { margin-bottom: 32px; }
.mb-5 { margin-bottom: 40px; }

.mt-0 { margin-top: 0; }
.mt-1 { margin-top: 8px; }
.mt-2 { margin-top: 16px; }
.mt-3 { margin-top: 24px; }
.mt-4 { margin-top: 32px; }
.mt-5 { margin-top: 40px; }

.d-none { display: none; }
.d-block { display: block; }
.d-flex { display: flex; }
.d-grid { display: grid; }

.align-center { align-items: center; }
.justify-center { justify-content: center; }
.justify-between { justify-content: space-between; }

.w-100 { width: 100%; }
.h-100 { height: 100%; }

/* Print Styles */
@media print {
  .site-header,
  .newsletter-section,
  .btn {
    display: none;
  }
  
  body {
    font-size: 12pt;
    line-height: 1.4;
  }
  
  h1, h2, h3 {
    page-break-after: avoid;
  }
}
.page-header h1.entry-title {
    display: none;
}
nav.breadcrumb {
    font-size: 15px;
    color: #036C72;
    font-weight: 700;
} 
nav.breadcrumb a {
    color: #000;
    font-weight: 400;
}

.w_100 .e-lottie__container {
    width: 100%;
}

.e-n-tabs .e-n-tab-title {
    padding: 16px 15px !important;
}
.font_size_mac  h3.elementor-icon-box-title {
    font-size: 21px !important;
}
@media (max-width: 768px) { 

.newsletter-fields label {
    display: none;
}

.footer-top-card {
    margin-top: -140px;
}
	
.font_size_mac  h3.elementor-icon-box-title {
    font-size: 18px !important;
}
.footer-top-card {
    flex-direction: column;
}
 
.Newsletter {
    width: 100% !important;
}

form.wpcf7-form {
    flex-direction: column;
}

.newsletter-submit input[type="submit"] {
    width: 100% !important;
    margin-left: 0!important;
    margin-top: 5px;
}
}



/*	.home:before {
    width: 1207px;
    height: 1207px;
    top: -15%;
    left: -12%;
    border-radius: 50%;
    background: radial-gradient(rgba(182, 219, 221, 0.62) 0%, rgb(236 245 246 / 49%) 100%);
    position: absolute;
    content: "";
}

.home {
    position: relative;
    max-width: 1920px;
    margin: 0 auto;
}*/
	.sous-titre strong {
    color: #D4166C;
}
	.compteur-section span.elementor-counter-number-suffix {
    font-size: 16px;
    position: relative;
    top: 12px;
    margin-left: 3px;
}
	.compteur-section span.elementor-counter-number {
    color: transparent;
    -webkit-text-stroke: 1px #bf317a;
}
.compteur-section .e-con-inner {
    background: #fff;
    border-radius: 15px;
}
.hero-titre h2 span {
    color: #D4166C;
}
.carousel-partenaire img.swiper-slide-image {
    filter: grayscale(1);
}

.carousel-partenaire img.swiper-slide-image:hover {
    filter: none;
}
	.sous-titre-vert h2 span {
    color: #9DDBD9;
}
	.phar {
    border-radius: 30px;
    background: #FFF;
    padding: 30px;
}

.bloc_complet {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

form#search-form {
    margin-bottom: 0 !important;
}

div#pharmacie-map {
    border-radius: 30px;
    border: 9px solid #ECF5F6;
}

.right_form img {
    position: relative;
    top: 20px;
}

.left_form p span {
    display: block;
    color: #323232;
    font-family: "Open Sans";
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%; /* 21px */
    letter-spacing: -0.3px;
}
	.bloc-phar {
    display: flex;
    gap: 0 10px;
}

.left_form {
    width: 47%;
}

.bloc-phar {
    margin-top: 35px;
}
	.phar button {
    background: #c03479;
}

.phar button svg {
    background: #fff;
    width: 25px;
    height: 25px;
    border-radius: 100%;
    color: #000;
}

.phar button:hover {
    background: linear-gradient(90deg, #0C7A7A 0%, #D81B60 100%);
}

.phar button svg path  {
    fill: #D81B60;
    transform: scale(0.5);
    transform-origin: center center;
}
	.leaflet-popup-content strong {
    color: #007074;
    font-family: 'Open Sans';
    margin-bottom: 5px;
    display: block;
}

.leaflet-popup-content {
    font-size: 13px;
    font-family: 'Open Sans';
    color: #323232;
}

.leaflet-popup-content a {
    font-weight: 600;
    color: #007278 !important;
    display: block;
    margin-top: 10px;
}

.leaflet-popup-content br {
    display: none;
}
	.leaflet-map-pane svg {
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="29" height="35" viewBox="0 0 29 35" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M0.0498851 12.6024C0.334044 9.1682 1.89869 5.9663 4.43341 3.63189C6.96813 1.29748 10.2877 0.00112165 13.7336 0H14.4716C17.9175 0.00112165 21.2371 1.29748 23.7719 3.63189C26.3066 5.9663 27.8712 9.1682 28.1554 12.6024C28.4707 16.4366 27.287 20.2437 24.8532 23.2231L16.6651 33.2373C16.3548 33.6172 15.9639 33.9233 15.5207 34.1335C15.0775 34.3437 14.5931 34.4527 14.1026 34.4527C13.6121 34.4527 13.1278 34.3437 12.6846 34.1335C12.2414 33.9233 11.8505 33.6172 11.5401 33.2373L3.3538 23.2231C0.919362 20.2439 -0.264966 16.4368 0.0498851 12.6024ZM14.1026 6.40625C11.9505 6.40625 9.88654 7.26118 8.36476 8.78296C6.84298 10.3047 5.98805 12.3687 5.98805 14.5208C5.98805 16.673 6.84298 18.7369 8.36476 20.2587C9.88654 21.7805 11.9505 22.6354 14.1026 22.6354C16.2548 22.6354 18.3187 21.7805 19.8405 20.2587C21.3623 18.7369 22.2172 16.673 22.2172 14.5208C22.2172 12.3687 21.3623 10.3047 19.8405 8.78296C18.3187 7.26118 16.2548 6.40625 14.1026 6.40625Z" fill="%23ECF5F6"/><path d="M9 14.104C9 12.7779 9.52678 11.5062 10.4645 10.5685C11.4021 9.63079 12.6739 9.104 14 9.104C15.3261 9.104 16.5979 9.63079 17.5355 10.5685C18.4732 11.5062 19 12.7779 19 14.104C19 15.4301 18.4732 16.7019 17.5355 17.6395C16.5979 18.5772 15.3261 19.104 14 19.104C12.6739 19.104 11.4021 18.5772 10.4645 17.6395C9.52678 16.7019 9 15.4301 9 14.104Z" fill="%23CF3A87"/></svg>');
    background-position: center center;
    background-repeat: no-repeat;
    border-radius: 10px;
}

.leaflet-map-pane svg path {
    opacity: 0;
}
	/*
.box_sign {
    border-radius: 60px;
 
    box-shadow: 0px 14px 26px 5px rgba(0, 0, 0, 0.06);
}*/
.leaflet-bottom.leaflet-right {
    display: none;
    opacity: 0;
}	
	.temoignage.type-temoignage {
    border-radius: 30px 30px 0px 30px;
    background: #FFF;
    position: relative;
}
	.temoignage.type-temoignage:before {
    position: absolute;
    content: "";
    width: 34px;
    height: 34px;
    bottom: -22px;
    right: 0;
    background: linear-gradient(0deg, #FFF 0%, #FFF 100%), #D9D9D9;
    clip-path: polygon(100% 0, 0 0, 100% 100%);
}
	
	@media(max-width:991px){
		.box_sign, .box_sign:hover , .tem_liste {
    position: relative !important;
    transform: none !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
}

.box_sign .elementor-widget-container {
    transform: none !important;
}
	}


.archive span.elementor-post-info__terms-list a:first-child {
    display: none !important;
}
/***************** ***********/
@media(min-width:992px){
	table.field-list-table tbody tr {
    order: inherit !important;
}

form#contactform1 table.field-list-table tbody tr:nth-child(3) {
    width: 49% !important;
}

form#contactform1 table.field-list-table tbody tr:nth-child(9), form#contactform1 table.field-list-table tbody tr:nth-child(10) {
    width: 100% !important;
}

.field-list-table textarea {
    max-width: 100% !important;
    min-height: 150px;
}
}

.footer-top-card  form#contactform1 {
    padding: 0 !important;
} 
.footer-card {
    width: 35% !important;
} 
.Newsletter {
    width: 65% !important;
}
.footer-top-card form#contactform1 table.field-list-table tbody tr:nth-child(3),
.footer-top-card form#contactform1 tr {
    width: 25% !important;
    margin-right: 1%;
}  
.footer-top-card .field-list-table input[type="text"] {
    margin-bottom: 0;
}

.footer-top-card .field-list-table input[type="submit"] {
    margin-right: 0;
    width: 100%;
    max-height: 45px;
	line-height: 1.4; 
    background-color: #036b72 !important;
    background-image: url("/wp-content/uploads/2025/08/Group-125.svg") !important;
}

.footer-top-card form#contactform1 table.field-list-table tbody tr:nth-child(5) {
    width: 18% !important;
    margin-right: 0 !important;
}
.form_contact form#contactform1 table.field-list-table tbody tr:nth-child(8),
.form_contact form#contactform1 table.field-list-table tbody tr:nth-child(9) {
    max-width: 99% !important;
	width:100% !important;
} 
.form_contact form#contactform1 table.field-list-table tbody tr:nth-child(8) input {
    max-width: 1042px !important;
    margin-left: 0;
    margin-right: auto;
} 
.form_contact .field-list-table textarea {
       max-width: 1042px !important;
}

.form_contact  form#contactform1 {
       max-width: 1120px !important;
}

    

@media(max-width:991px){
.bloc_complet {
    flex-direction: column;
}
.left_form,.right_form {
    width: 100% !important;
}
.phar {
    padding: 20px !important;
}
.phar h2 {
    font-size: 26px;
} 
.bloc-phar {
    flex-direction: column;
    gap: 14px !important;
}
.bloc-phar button {
    max-width: 167px !important;
    margin: 0 auto !important;
    width: 100% !important;
}
.footer-top-card {
    padding: 20px !important;
}
.footer-card,
.Newsletter,
	.footer-top-card form#contactform1 tr,
.footer-top-card form#contactform1 table.field-list-table tbody tr:nth-child(3), 
.footer-top-card form#contactform1 table.field-list-table tbody tr:nth-child(5) {
    width: 100% !important;
}
footer#colophon .container {
    padding: 0 5px !important;
} 
.elementor-element.elementor-arrows-position-outside .swiper, .elementor-lightbox.elementor-arrows-position-outside .swiper {
    width: 98% !important;
}
.form_contact table.field-list-table tbody tr {
    width: 100% !important;
}

.form_contact .field-list-table input[type="text"], .field-list-table select {
    margin-bottom: 10px !important;
} 

.cat_style_ser .tagcloud {
    zoom: 0.8;
} 
.cat_style_ser .tagcloud a {
    margin-right: 11px !important;
    margin-bottom: 10px !important;
} 
.services-grid {
    margin: 0 !important;
}
.service-popup__text:after,.service-popup__text:before {
    display: none;
}
ul.liste-categories.filtre-blog-list {
    padding-left: 0 !important;
}
div#centre-map {
  margin-top: 0 !important;
}
.filtre-blog-list li a,
.filtre-blog-list li a.active-cat {
    width: 100% !important;
}   
.footer-content { 
    padding: 0 5px;
}
}

form.wpcf7-form {
    display: flex;
    flex-wrap: wrap;
}

.wpcf7-response-output {
    width: 100%;
    border: none !important;
    margin: 0 !important;
}

.newsletter-fields input {
    width: 100%;
    border: 2px solid #6E98B1 !important;
    outline: 6px solid #ecf5f6 !important;
    border-radius: 25px !important;
    outline-offset: -10px;
    background: white;
    font-size: 14px;
    box-sizing: border-box;
    max-width: 500px;
    margin: 0 auto;
    border: none !important;
    margin-top: -3px;
}

.newsletter-fields p label {
    position: absolute;
    top: 22px;
    z-index: 1;
    line-height: 9px;
}

.newsletter-fields br {
    display: none;
}



.newsletter-fields p {
    margin: 0;
}

.wpcf7-not-valid-tip {
    font-size: 12px;
}

.newsletter-submit input[type="submit"] {
    position: relative;
    top: 5px;
}
.Newsletter .newsletter-fields input {
    outline: 1px solid #ecf5f6 !important;
    padding: 8px;
    outline-offset: -3px;
} 
.Newsletter .newsletter-fields {
    margin-right: 10px;
} 
.Newsletter > span.soustitre-news {
    line-height: 27px;
    margin-bottom: 20px;
} 
.footer-top-card {
    padding-bottom: 20px !important;
} 
.Newsletter .newsletter-fields p label {
    top: 17px;
}
.Newsletter .wpcf7-response-output {
    margin-top: 20px !important;
    padding-left: 5px !important;
} 
.Newsletter .wpcf7-not-valid-tip {
    margin-top: 6px;
}
.part_right_filter .element-for-input-select select { 
  background-color: #fff;
}
.svc-cat-pill.level-1, .svc-cat-pill.level-0 {
    margin-left: 8px;
    opacity: .95;
}

.services-grid .service-card .card img {
    height: 290px;
    object-fit: cover; 
}

@media(min-width:991px){
.services-grid .card-body p {
    height: 50px;
    overflow: hidden;
}
.services-grid .card-body h3 {
    height: 60px;
    overflow: hidden;
}
}

@media(max-width:991px){
	.newsletter-fields p label {
    top: -16px;
    display: block !important;
}

.newsletter-fields input {
    margin: 0 auto !important;
    position: relative !important;
    top: 0;
}

.newsletter-fields {
    height: auto;
    margin-bottom: 10px;
}

.newsletter-fields p {
    height: auto;
    margin-bottom: 15px;
    position: relative;
    padding: 0 !important;
}
	.Newsletter .newsletter-fields p label {
    top: -10px;
}
}