.elementor-2003 .elementor-element.elementor-element-b30d8085{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2003 .elementor-element.elementor-element-42bb148a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2003 .elementor-element.elementor-element-76d2c652{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:15px 15px;--row-gap:15px;--column-gap:15px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-2003 .elementor-element.elementor-element-76d2c652.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );}.elementor-2003 .elementor-element.elementor-element-5290cce1 .elementor-button{background-color:#FFFFFF00;font-family:"Lato", Sans-serif;font-size:16px;font-weight:500;text-transform:none;font-style:normal;text-decoration:none;line-height:1em;letter-spacing:-0.2px;word-spacing:0px;fill:var( --e-global-color-accent );color:var( --e-global-color-accent );border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-accent );border-radius:60px 60px 60px 60px;}.elementor-2003 .elementor-element.elementor-element-5290cce1 .elementor-button:hover, .elementor-2003 .elementor-element.elementor-element-5290cce1 .elementor-button:focus{background-color:var( --e-global-color-c35f63f );color:var( --e-global-color-secondary );}.elementor-2003 .elementor-element.elementor-element-5290cce1{margin:1% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-2003 .elementor-element.elementor-element-5290cce1 .elementor-button:hover svg, .elementor-2003 .elementor-element.elementor-element-5290cce1 .elementor-button:focus svg{fill:var( --e-global-color-secondary );}.elementor-2003 .elementor-element.elementor-element-2a599b6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2003 .elementor-element.elementor-element-kbi18nc2{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-2003 .elementor-element.elementor-element-76d2c652{--padding-top:0%;--padding-bottom:0%;--padding-left:5%;--padding-right:5%;}.elementor-2003 .elementor-element.elementor-element-5290cce1 .elementor-button{font-size:14px;}}@media(min-width:768px){.elementor-2003 .elementor-element.elementor-element-76d2c652{--width:100%;}}@media(max-width:767px){.elementor-2003 .elementor-element.elementor-element-76d2c652{--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-2003 .elementor-element.elementor-element-5290cce1{width:100%;max-width:100%;}.elementor-2003 .elementor-element.elementor-element-5290cce1 .elementor-button{font-size:14px;}}/* Start custom CSS for html, class: .elementor-element-5260a3ad *//* Section localisation */
  .contact-location-section {
    padding: 80px 0;
    background: transparent;
  }

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

  .section-header {
    text-align: center;
    margin-bottom: 50px;
  }

  .section-header h2 {
    font-size: 36px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 15px;
  }

  .section-header p {
    font-size: 18px;
    color: #666;
  }

  /* Grille responsive */
  .location-grid {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 40px;
    align-items: start;
  }

  @media screen and (max-width: 968px) {
    .location-grid {
      grid-template-columns: 1fr;
      gap: 30px;
    }
  }

  /* Informations de contact */
  .location-info {
    background: white;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  }

  .location-info h3 {
    font-size: 28px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 30px;
  }

  .info-block {
    display: flex;
    gap: 15px;
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px solid #e5e5e5;
  }

  .info-block:last-of-type {
    border-bottom: none;
    margin-bottom: 30px;
  }

  .info-block .icon {
    flex-shrink: 0;
    color: #0066cc;
    margin-top: 2px;
  }

  .info-block strong {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #0066cc;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
  }

  .info-block p {
    margin: 0;
    color: #333;
    line-height: 1.6;
  }

  .info-block a {
    color: #0066cc;
    text-decoration: none;
    font-weight: 600;
  }

  .info-block a:hover {
    text-decoration: underline;
  }

  .text-muted {
    color: #999 !important;
    font-size: 14px;
  }

  /* Bouton itinéraire */
  /* Bouton itinéraire */
  .btn-directions {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 28px;
    background: #0066cc;
    color: white;
    text-decoration: none;
    border-radius: 8px;
    font-weight: 600;
    font-size: 16px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 102, 204, 0.3);
  }

  .btn-directions:hover {
    background: #0052a3;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 102, 204, 0.4);
  }

  .btn-directions svg {
    flex-shrink: 0;
  }

  /* Conteneur carte */
  .location-map {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    height: 100%;
    min-height: 500px;
  }

  .maps-responsive-container {
    width: 100%;
    height: 100%;
    min-height: 500px;
  }

  .maps-responsive-container iframe {
    width: 100%;
    height: 100%;
    min-height: 500px;
    display: block;
    border: 0;
  }

  /* Responsive mobile */
  @media screen and (max-width: 968px) {
    .contact-location-section {
      padding: 60px 0;
    }

    .section-header h2 {
      font-size: 28px;
    }

    .location-info {
      padding: 30px 20px;
    }

    .location-map,
    .maps-responsive-container,
    .maps-responsive-container iframe {
      min-height: 400px;
    }
  }

  @media screen and (max-width: 480px) {
    .section-header h2 {
      font-size: 24px;
    }

    .location-info h3 {
      font-size: 22px;
    }

    .btn-directions {
      width: 100%;
      justify-content: center;
    }

    .location-map,
    .maps-responsive-container,
    .maps-responsive-container iframe {
      min-height: 350px;
    }
  }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-76d2c652 */Ou essayons avec un sélecteur ultra-agressif qui force TOUT :

/* Force TOUS les éléments avec taille > 30px à se réduire */
.elementor-2003 .elementor-element.elementor-element-76d2c652 * {
  font-size: clamp(10px, 0.5rem + 0.3vw, 15px) !important;
}

/* Réajuster le gros titre */
.elementor-2003 .elementor-element.elementor-element-76d2c652 h1,
.elementor-2003 .elementor-element.elementor-element-76d2c652 h2:not(.elementor-35acdcbc *) {
  font-size: clamp(24px, 1.2rem + 0.8vw, 36px) !important;
}/* End custom CSS */