.twb {
  text-wrap: balance;
}

:root {
  interpolate-size: allow-keywords;
}



body :is(h1, h2, h3, h4, h5, h6){
  font-family: "Urbanist";
}

body .texte-legal {
  h2{
    font-size: 36px;
    color: var(--e-global-color-primary);
  }
}


.twp {
  text-wrap: pretty;
}

@media screen and (max-width: 879px) {
  body {
    overflow: visible !important;
  }
}

body #lqd-site-content{
  background-attachment: fixed;
}


/* Curved Input */

.e-search-form {

  --border-width: 1px;

  position: relative;
  padding-bottom: 0px;
  padding-inline: 10px;
  display: flex;
  align-items: center;
}

.e-search-form input {
  font-size: 32px;
  border: none;
  outline: none;
  background: none;
  font-weight: 600;
  padding: 6px 10px;

  &::placeholder {
    color: #000;
  }
}

/* Trait principal */
search.e-search{
  position: relative;
}
search.e-search::after {
  content: "";
  position: absolute;
  width: 90%;
  bottom: 0;
  left: 20px;
  right: 20px;
  height: 1px;
  background: var( --e-global-color-primary );
}

/* Courbe gauche */
.e-search-form::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 40px;
  height: 20px;
  border-bottom: var(--border-width) solid var( --e-global-color-primary );
  border-left: var(--border-width) solid var( --e-global-color-primary );
  border-bottom-left-radius: 40px;
}

/* Courbe droite */
.e-search-form::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 40px;
  height: 20px;
  border-bottom: var(--border-width) solid var( --e-global-color-primary );
  border-right: var(--border-width) solid var( --e-global-color-primary );
  border-bottom-right-radius: 40px;
}

/* FOOTER */

footer {
  z-index: 10;
  position: relative;
}

.footer_bottom_menu {
  display: flex;
  flex-direction: column;
  gap: 20px;

  ul {
    li {
      position: relative;
      padding: 0 20px;
      border-right: 1px solid white;
      &:last-child {
        border-right: none;
      }

      a {
        text-transform: uppercase;
      }
    }
  }
}

@media (width <= 768px) {
  .footer_bottom_menu ul {
    display: flex;
    flex-direction: column;
    li {
      border-right: none;
    }
  }
}

.footer_en_un_clic .lqd-fancy-menu {
  ul {
    @media (width >= 768px) {
      list-style-type: disc;
      padding-left: 20px;
    }
    li.menu-item {
      @media (width >= 768px) {
        display: list-item;
        color: white;
        &::marker {
          font-size: 10px;
        }
      }
    }
  }
}

/* BUTTONS */
.elementor-element .btn-solid:hover {
  transform: unset;
  -webkit-transform: unset;
  -moz-transform: unset;
  -ms-transform: unset;
  -o-transform: unset;
}

.discover-button {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  color: var(--e-global-color-primary);
  font-size: 18px;
  font-weight: 600;
  gap: 8px;

  @media (width <= 992px) {
    justify-content: flex-start;
  }

  .btn-txt::before {
    background-color: var(--e-global-color-primary);
  }

  svg {
    circle {
      fill: var(--e-global-color-primary);
    }
    path {
      fill: white;
    }
  }
}

.btn-icon svg{
  
  --icon-font-size: 1.6em !important;
}

.button_underline_icon {
  position: relative;
  .btn-txt::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: white;
    position: absolute;
    bottom: -4px;
  }
  &.--black {
    .btn-txt::before {
      background-color: black;
    }
  }
  &.--icon-light {
    .btn-icon {
      circle {
        fill: var(--e-global-color-accent);
      }
      path {
        fill: white;
      }
    }
  }
  &.--icon-dark {
    .btn-icon {
      circle {
        fill: var(--e-global-color-primary);
      }
      path {
        fill: white;
      }
    }
  }
  &:hover .btn-icon {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
  }
}

/* HOMEPAGE */

.andilly-home-title h1 {
  display: flex;
  flex-direction: column;
  .sub-title {
    font-size: 60px;
  }
}

.andilly-search {
  .e-search-input {
    border: none;
  }
  .e-search-results-container {
    display: none !important;
  }
}

.elementor-widget-search .e-search-form {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;

  .e-search-input {
    padding: 0 10px !important;
  }
}

@media (width <= 768px) {
  .elementor-widget-search .e-search-form .e-search-input {
    width: 100%;
    font-size: 20px !important;
  }
  .elementor-widget-search .e-search-submit {
    flex: 0;
  }
  .en-un-clic {
    display: none !important;
  }
}

/* EN UN CLIC */
#lqd-site-content .en-un-clic-link li {
  position: relative;
  border-bottom: 1px solid var(--e-global-color-primary);
  padding: 14px 0;
  margin-bottom: 0;
  &:first-child {
    border-top: 1px solid var(--e-global-color-primary);
  }
  &::after {
    content: "";
    position: absolute;
    right: 0;
    background-image: url(../images/chevron_black.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    height: 30px;
    width: 30px;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg);
  }
  h3 {
    width: 100%;
    padding: 0;
    a {
      width: 100%;
      display: block;
      padding: 14px 0px 14px 0px;
    }
  }
}


a{
  word-break: break-word;
}

/* ACTU */
.andilly-actu-item {
  display: flex;
  justify-content: center;
  align-items: stretch;

  .andilly-actu-item-content {
    flex: 1 1 calc((100% / 3) + 1px);
    padding: 3vw;
    max-width: calc((100% / 3) + 1px);
    margin-top: 8vh;

    background-color: var(--e-global-color-accent);

    .andilly-actu-item-date {
      font-size: clamp(14px, 0.9vw, 18px);
      font-weight: 500;
      text-transform: uppercase;
      font-family: var(--e-global-typography-text-font-family);
      color: var(--e-global-color-text);
    }
    .andilly-actu-item-link {
      font-size: clamp(16px, 1.15vw, 20px);
      font-weight: 500;
      font-family: var(--e-global-typography-primary-font-family);
      color: var(--e-global-color-text);
      position: relative;
      display: flex;
      align-items: center;
      width: fit-content;

      &::before {
        content: "";
        display: block;
        width: calc(100% - 2.6vw);
        height: 1px;
        background-color: var(--e-global-color-text);
        position: absolute;
        bottom: 0;
      }
      &:after {
        content: "";
        margin-left: 0.6vw;
        background-image: url(../images/arrow-right-back-green.svg);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 1.6em;
        height: 1.6em;
        transition: all 0.3s ease;
      }
      &:hover {
        &::after {
          transform: rotate(-45deg);
          -webkit-transform: rotate(-45deg);
          -moz-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
          -o-transform: rotate(-45deg);
        }
      }
    }

    h3 {
      font-size: clamp(22px, 1.5vw, 39px);
      font-weight: 600;
      font-style: normal;
      font-family: var(--e-global-typography-text-font-family);
      color: var(--e-global-color-text);
      margin-top: 10px;
    }
    p {
      margin-bottom: 18px;
      font-size: clamp(18px, 1.2vw, 22px);
    }
  }

  .andilly-actu-item-image {
    flex: 1 1 calc(100% / 3 * 2);
    object-fit: cover;
    max-height: 80dvh;
    width: 100%;
    height: 80dvh;

    img {
      aspect-ratio: 1 / 1;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }
  }
}

.andilly-actu-home .swiper-button-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row-reverse;
  position: absolute;
  top: 0;
  left: calc(100% / 3 - 1px);

  .swiper-button-next,
  .swiper-button-prev {
    background-color: var(--e-global-color-accent);
    padding: 16px;
    top: 0;
    left: 0;
    right: 0;
    position: relative;
    margin-top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: clamp(60px, 6vw, 80px);
    height: clamp(60px, 6vw, 80px);

    &::after {
      display: none;
    }
    &:before {
      content: "";
      background-image: url(../images/arrow-right.svg);
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      width: 100%;
      height: 100%;
    }
  }
  .swiper-button-prev {
    transform: rotate(180deg);
  }
}

@media (width <= 1200px) {
  .actu-container {
    width: 85% !important;
  }
  .andilly-actu-item .andilly-actu-item-content {
    max-width: 45.7%;
    flex: 1 1 45.7%;
  }
  .andilly-actu-home .swiper-button-container {
    left: 41%;
  }
}

@media (width <= 768px) {
  .actu-container.elementor-element {
    width: 100% !important;
    /* .elementor-widget-hub_fancy_heading.elementor-element
      > .elementor-widget-container {
      background-color: white;
    } */
  }
  .andilly-actu-item {
    flex-direction: column-reverse;

    .andilly-actu-item-content {
      max-width: 100%;
      flex: 1 1 100%;
      margin-top: 0;
      padding: 30px;

      .andilly-actu-item-link {
        margin-bottom: 70px;
        &::before {
          width: calc(100% - 46px);
        }

        &:after {
          margin-left: 10px;
          height: 36px;
          width: 36px;
        }
      }
    }
    .andilly-actu-item-image {
      max-height: 400px;
      height: 400px;
      flex: 1 1 auto;
    }
  }
  .andilly-actu-home .swiper-button-container {
    left: unset;
    right: 0;
    top: 340px;
  }
}

/* SUD OUEST INFO */

.sud-ouest-info {
  h3 {
    text-wrap: pretty;
    a {
      color: var(--e-global-color-text);
    }
  }
  .swiper-pagination {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    .swiper-pagination-bullet {
      background-color: white;
      border: 1px solid var(--e-global-color-text);
      width: 14px;
      height: 14px;
      @media (width <= 768px) {
        width: 12px;
        height: 12px;
      }
      &.swiper-pagination-bullet-active {
        background-color: var(--e-global-color-text);
      }
    }
  }
}

.sudouest-carousel {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}
.news-title {
  font-family: "Montserrat", Sans-serif;
  font-size: clamp(1rem, 1.3vw, 1.5rem);
  font-weight: 400;
  font-style: normal;
  text-decoration: underline;
  line-height: 1.2;
  color: var(--e-global-color-text);
}
.news-date {
  font-family: "Montserrat", Sans-serif;
  font-size: clamp(0.8rem, 1vw, 1rem);
  font-weight: 600;
  text-transform: uppercase;
}
.swiper-button-next,
.swiper-button-prev {
  color: #343434;
}
.swiper-pagination-bullet-active {
  background: #343434;
}

/* AGENDA */

.agenda-home {
  h3 {
    font-style: normal;
  }

  .elementor-loop-container {
    gap: 20px;
  }

  .agenda-card {
    position: relative;
    border-bottom: 1px solid white;
    padding-bottom: 20px;
    &::before {
      content: "";
      left: -34px;
      display: block;
      background: white;
      width: 1px;
      height: 130%;
      position: absolute;
    }
   @media (width <= 992px) {
    .elementor-widget-theme-post-excerpt{
      line-clamp: 3;
      -webkit-line-clamp: 3;
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-box-orient: vertical;
    }
   }
  }
  .type-agenda:last-child .agenda-card {
    border-bottom: none;
    &::before {
      height: 100%;
    }
  }
  .agenda-point span {
    &::before {
      content: "";
      left: -46px;
      display: block;
      background: white;
      width: 26px;
      height: 26px;
      border-radius: 99px;
      position: absolute;
    }
  }
}

/* accordion */
.accordion-item {
  .accordion-item {
    .accordion-expander {
      display: block;
    }
  }
  .accordion-content {
    ul li {
      padding-bottom: 20px;
    }
  }
}

/* Intermediate Page */
.intermediate-page {
  max-width: 1300px;
  margin-inline: auto;
  margin-top: 200px;
  margin-bottom: 100px;

  * {
    font-family: var(--e-global-typography-3c78215-font-family);
  }
  .content {
    color: black;
    font-size: 20px;
  }
}

.intermediate-page__header {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin-bottom: 50px;
}

.intermediate-page__title {
  h1 {
    color: black;
    font-size: 46px;
  }
}

.intermediate-page__main-content {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  gap: 30px;
  padding: 0 20px;

  .main-content__article {
    flex: 0 1 calc((100% / 3) - 20px);
    flex-direction: column;
    gap: 14px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--e-global-color-primary);
    min-height: 140px;
    padding: 30px;
    transition: all 0.3s ease;

    .fwpl-col {
      display: flex;
      flex-direction: column;
      gap: 14px;
    }

    .article__description-list {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      list-style: none;
      padding: 0;
      margin: 0;
      margin-top: 10px;
      li {
        margin-right: 10px;
        display: flex;
        align-items: center;
        svg {
          width: 28px;
          flex: 1 0 auto;
        }
        span {
          text-align: center;
          /* text-wrap: balance; */
          flex: 1 1 auto;
        }
      }
    }

    &.has-icon {
      flex-direction: column;
      padding: 30px;
      gap: 20px;

      .article__figure {
        max-width: 100px;
      }
    }
    &.has-image {
      padding: 0;
      gap: 0;
      overflow: hidden;
      justify-content: flex-start;
      img {
        aspect-ratio: 15/10;
        object-fit: cover;
      }
      .article__content {
        padding: 30px;
      }
    }
    &.has-icon.has-image {
      .article__figure {
        position: absolute;
        inset: 0;
        top: 10px;
        right: 10px;
        left: unset;
        max-width: 60px;
        img {
          aspect-ratio: 1/1;
          object-fit: contain;
        }
      }
    }
    &:hover {
      background-color: var(--e-global-color-accent);

      .article__title,
      .article__excerpt {
        color: white;
      }

      .article__description-list {
        li {
          color: white;
          svg {
            fill: white;
            path,
            circle {
              fill: white;
            }
          }
        }
      }
    }

    .article__title {
      font-size: 26px;
      color: white;
      font-weight: 500;
      text-align: center;
      margin: 0;
    }

    .article__excerpt {
      &.is-empty {
        display: none;
      }
      font-size: 18px;
      color: black;

      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      overflow: hidden;
    }

    .article__link,
    .article__link a {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
    }
  }
}

/* Search result */

:is(.search-results, .search-no-results) main#lqd-site-content {
  background-color: #f7f7f7 !important;
  padding-top: 150px;

  .container {
    max-width: 1400px;
    width: 100%;
  }

  .search-title {
    font-family: var(--e-global-typography-primary-font-family);
  }
}

.results-page .result-date {
  display: none;
}

:is(.search-results, .search-no-results) #wrap {
  .results-section {
    &:not(:first-of-type) {
      margin-top: 70px;
    }
    .section-title {
      font-size: var(--e-global-typography-primary-font-size);
      font-weight: var(--e-global-typography-primary-font-weight);
      font-family: var(--e-global-typography-primary-font-family);
      color: var(--e-global-color-primary);
      padding-bottom: 20px;
      border-bottom: 2px solid var(--e-global-color-primary);
    }
    .results-list {
      --grid-columns: 3;
      @media (width <= 1200px) {
        --grid-columns: 2;
      }
      @media (width <= 768px) {
        --grid-columns: 1;
      }
      display: grid;
      grid-template-columns: repeat(var(--grid-columns), 1fr);
      gap: 20px;

      .result-item {
        position: relative;
        display: flex;
        flex-direction: column;
        margin-bottom: 0;
        background-color: white;
        padding: 20px;

        h3 {
          margin-top: 0;
          margin-bottom: 6px;
          font-style: initial;
          font-size: 26px;
          font-weight: 600;
          font-family: var(--e-global-typography-secondary-font-family);
          color: black;
        }

        .result-excerpt {
          margin-bottom: 0px;
          font-size: 20px;
        }

        .result-date {
          font-size: 16px;
          font-weight: 400;
          margin-bottom: 6px;
        }
        .result-link {
          color: black;
          font-size: 20px;
          font-weight: 400;
          margin-top: 20px;
          margin-bottom: 0;
          text-decoration: underline;
        }
        .absolute-link {
          position: absolute;
          inset: 0;
          width: 100%;
          height: 100%;
        }
      }
    }
  }
}

.search-container {
  display: flex;
  padding-bottom: 100px;
  gap: 60px;

  h1 {
    font-size: clamp(36px, 3vw, 64px);
  }

  .open-sidebar {
    display: none;
    @media (width <= 1024px) {
      display: flex;
      align-items: center;
      justify-content: center;
      position: fixed;
      right: 50%;
      bottom: 20px;
      padding: 10px 20px;
      background-color: var(--e-global-color-primary);
      color: white;
      border: none;
      border-radius: 99px;
      font-size: 16px;
      font-weight: 600;
      cursor: pointer;
      z-index: 1000;
      transform: translateX(50%);
      &:hover,
      &:focus,
      &:active,
      &:focus-visible,
      &:focus-within {
        background-color: var(--e-global-color-primary);
        border: none;
        color: white;
      }

      svg {
        width: 24px;
        height: 24px;
      }
    }
  }

  .search-content {
    flex: 1;
  }
  .search-sidebar {
    flex: 0 1 350px;
    position: sticky;
    top: calc(var(--lqd-sticky-header-height, 100px) + 20px);
    height: fit-content;
    background-color: white;
    padding: 20px;
    transition: transform 0.4s ease;

    @media (width <= 1024px) {
      width: 100%;
      height: 100dvh;
      position: fixed;
      top: var(--lqd-sticky-header-height, 100px);
      right: 0;
      padding: 0;
      overflow: hidden;
      transform: translateX(100%);
      z-index: 1000;

      &.opened {
        overflow: visible;
        transform: translateX(0);
      }
    }

    .close-sidebar {
      padding: 0;
      border: none;
      display: none;
    }

    .search-form-wrapper .sidebar-title {
      margin-top: 0;
    }

    .search-form {
      display: flex;
      align-items: center;
      gap: 4px;
      label {
        margin-bottom: 0;
      }
    }

    .search-field {
      border-color: var(--e-global-color-primary);
      border-width: 1px;
      border-style: solid;
      border-radius: 99px;
      padding: 10px;
      font-size: 18px;
      font-weight: 600;
      color: var(--e-global-color-primary);
      line-height: 1;
      width: 100%;
    }

    .search-submit {
      padding: 10px;
      width: 44px;
      height: 44px;
      background-color: var(--e-global-color-primary);
      display: flex;
      align-items: center;
      justify-content: center;
      .lqd-icn-ess {
        color: white;
      }
    }

    .filters-wrapper {
      input {
        accent-color: var(--e-global-color-primary);
      }
      .filter-submit {
        padding: 10px;
        background-color: var(--e-global-color-primary);
        color: white;
        border-radius: 99px;
        font-size: 16px;
        font-weight: 600;
        border: none;
        width: 100%;
        margin-top: 12px;
      }
    }

    @media (width <= 1024px) {
      .search-sidebar-inner {
        position: sticky;
        top: var(--lqd-sticky-header-height, 100px);
        height: 100%;
        overflow-y: auto;
        padding: 20px;

        .close-sidebar {
          display: block;
          position: absolute;
          right: 20px;
          top: 20px;
          width: 32px;
          height: auto;
          z-index: 10;
        }
      }
    }
  }
}

.sidebar-title {
  margin: 0;
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-size: clamp(20px, 2vw, 32px);
  font-weight: var(--e-global-typography-primary-font-weight);
  line-height: var(--e-global-typography-primary-line-height);
  letter-spacing: var(--e-global-typography-primary-letter-spacing);
  word-spacing: var(--e-global-typography-primary-word-spacing);
  margin: 24px 0;
}

/* Search suggestions */

.search-suggestions {
  position: absolute;
  z-index: 1000;
  background-color: white;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
  min-width: 400px;

  @media (width <= 768px) {
    min-width: auto;
  }

  .no-suggestions {
    padding: 14px 20px;
    font-size: 16px;
  }

  .suggestions-wrapper {
    display: flex;
    flex-direction: column;

    .suggestions-section {
      display: flex;
      flex-direction: column;

      a {
        color: black;
        font-size: clamp(1rem, 1.1vw, 1.2rem);
        padding: 14px 20px 6px 20px;

        &:nth-child(even) {
          background-color: #f2f2f2;
        }

        &:hover {
          background-color: #d7d7d7;
        }
        &:hover:not(:nth-child(even)) {
          background-color: #f2f2f2;
        }

        .suggestion-type {
          font-weight: 600;
          text-transform: uppercase;
          display: flex;
          color: white;
          gap: 6px;
          padding: 4px 12px;
          border-radius: 99px;
          background-color: var(--e-global-color-primary);
          width: fit-content;
          align-items: center;
          font-size: 14px;
          margin-bottom: 6px;

          p {
            margin: 0;
            line-height: 1;
          }
          i::before {
            font-size: 14px;
          }
        }
        .suggestion-title {
          font-weight: 500;
          font-size: clamp(1rem, 1.3vw, 1.4rem);
        }
      }
    }
  }
}

/* Agenda */

.archive-agenda {
  h1 {
    font-family: "Urbanist", Sans-serif;
    font-size: 62px;
    font-weight: 700;
    line-height: 1.2em;
    letter-spacing: 0px;
    word-spacing: 0em;
    margin: 0;
    padding: 50px 0 20px 0;
  }
}

.archive-grid-container {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  padding-bottom: 200px;
  flex-wrap: wrap;
  nav.pagination{
    margin-top: 40px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

    .nav-links{
      a, span{
        background-color: transparent;
            color: var(--e-global-color-accent);
            padding: 8px 16px;
            border-radius: 0px;
            border: 1px solid var(--e-global-color-accent);
            font-size: 16px;
            font-weight: 600;

            &.current, &:hover{
              background-color: var(--e-global-color-primary);
              border-color: var(--e-global-color-primary);
              color: white;
            }
      }
    }
  }
  @media (width <= 768px) {
    flex-direction: column;
    padding-bottom: 60px;
  }
  .archive-grid {
    flex: 1;
    display: flex;
    flex-direction: column;
    row-gap: 140px;
    @media (width <= 768px) {
      row-gap: 80px;
    }
  }
  .archive-grid-sidebar {
    flex: 0 1 300px;

    @media (width <= 768px) {
      flex: 1;
      order: -1;
    }
  }
}

.archive-grid-sidebar-content {
  position: sticky;
  top: var(--lqd-sticky-header-height, 100px);
  background-color: var(--e-global-color-primary);
  padding: 24px;

  h2.archive-grid-sidebar-title {
    margin: 0;
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-size: var(--e-global-typography-primary-font-size);
    font-weight: var(--e-global-typography-primary-font-weight);
    line-height: var(--e-global-typography-primary-line-height);
    letter-spacing: var(--e-global-typography-primary-letter-spacing);
    word-spacing: var(--e-global-typography-primary-word-spacing);
    color: white;
    margin-bottom: 24px;
  }

  label {
    color: white;
    width: 100%;

    & > span {
      display: block;
      margin-bottom: 6px;
    }

    input,
    .ui-selectmenu-button.ui-button {
      border: none;
      color: var(--e-global-color-primary);
      background-color: white;
      padding: 8px 8px;
      border-radius: 0px;
      margin-bottom: 12px;
      width: 100%;
      font-size: 16px;
      font-weight: 600;

      &::-webkit-input-placeholder {
        color: var(--e-global-color-primary);
        opacity: 0.6;
      }
    }

    .agenda-categories-list {
      button {
        font-size: 16px;
        font-weight: 600;
        background-color: transparent !important;
        color: var(--e-global-color-accent);
        padding: 4px 16px;
        border-radius: 0px !important;
        border: 1px solid var(--e-global-color-accent) !important;
      }
    }
  }

  .agenda-filters-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 24px;

    button[type="submit"] {
      background-color: white;
      color: var(--e-global-color-primary);
      padding: 8px 16px;
      border-radius: 0px;
      border: none;
      font-size: 16px;
      font-weight: 600;

      &:hover,
      &:focus,
      &:active,
      &:focus-visible {
        background-color: white;
        color: var(--e-global-color-primary);
        padding: 8px 16px;
        border-radius: 0px;
        border: none;
        font-size: 16px;
        font-weight: 600;
        box-shadow: unset;
      }
    }
    button#agenda-filters-reset {
      background-color: transparent;
      color: var(--e-global-color-accent);
      padding: 8px 16px;
      border-radius: 0px;
      border: 1px solid var(--e-global-color-accent);
      font-size: 16px;
      font-weight: 600;
    }
  }
}
#agenda-filters-count {
  color: #696969;
  margin-top: 16px;
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 0;
}

.archive-card-content {
  flex: 1 1 50%;
  text-align: right;
  @media (width <= 992px) {
    text-align: left;
  }

  & * {
    margin: 0;
    padding: 0;
  }

  p {
    margin-bottom: 18px;
    font-size: clamp(16px, 1.2vw, 20px);

    &.archive-card-date {
      margin-bottom: 8px;
    }

    &.archive-card-time,
    &.archive-card-date {
      font-weight: 600;
    }
  }

  h2.entry-title {
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-size: var(--e-global-typography-primary-font-size);
    font-weight: var(--e-global-typography-primary-font-weight);
    line-height: var(--e-global-typography-primary-line-height);
    letter-spacing: var(--e-global-typography-primary-letter-spacing);
    word-spacing: var(--e-global-typography-primary-word-spacing);
    color: var(--e-global-color-primary);
    margin-bottom: 24px;
    @media (width <= 768px) {
      margin-bottom: 12px;
    }
  }

  .archive-card-button {
  }
}

.archive-card-image {
  flex: 1 1 50%;
  @media (width <= 992px) {
    flex: 1;
    order: -1;
  }
  img {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 4/3;
  }
}

.archive-card-category {
  margin-bottom: 16px;
  .archive-card-category-label {
    font-size: 18px;
    font-weight: 600;
    color: var(--e-global-color-accent);
    padding: 4px 16px;
    border: 1px solid var(--e-global-color-accent);
  }
  .archive-card-price-label {
    font-size: 18px;
    font-weight: 600;
    color: white;
    padding: 4px 16px;
    background-color: var(--e-global-color-primary);
    border: 1px solid var(--e-global-color-primary);
  }
}

.archive-card {
  display: flex;
  gap: 60px;

  @media (width <= 1200px) {
    gap: 30px;
  }

  @media (width <= 992px) {
    flex-direction: column;
    gap: 20px;
  }

  @media (width > 992px) {
    &:nth-child(even) {
      flex-direction: row-reverse;
      .archive-card-content {
        text-align: left;
        .discover-button {
          justify-content: flex-start;
        }
      }
    }
  }
}

.archive-grid.blog-page {
  .archive-card {
    flex-direction: row-reverse;
    @media (width <= 992px) {
      flex-direction: column;
    }

    .archive-card-content {
      text-align: left;
      flex: 1 1 70%;
      @media (width <= 992px) {
        flex: 1;
      }
      .archive-card-button {
        .discover-button {
          justify-content: flex-start;
        }
      }
    }
    .archive-card-image {
      flex: 1 1 30%;
      @media (width <= 992px) {
        flex: 1;
        order: -1;
      }
    }
  }
}

.archive-card-map {
  width: 100%;
  height: 180px;
  border-radius: 6px;
  overflow: hidden;
  margin-bottom: 8px;
}

/* Animations archive agenda */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.fade-in-up {
  opacity: 0;
  transform: translateY(12px);
  will-change: opacity, transform;
}

.fade-in-up.is-visible {
  animation: fadeInUp 0.6s ease-out both;
}

.ui-widget .ui-menu-item {
  font-size: 18px;
}

.ui-selectmenu-button .ui-icon {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23555555'><path d='M7 10l5 5 5-5z'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 14px 14px !important;
  width: 1.25em;
  height: 1.25em;
  margin-top: -2px;
  display: none;
}
.ui-selectmenu-button.ui-selectmenu-button-open .ui-icon {
  transform: rotate(180deg);
}

/* SINGLE POST */
body.single .lqd-post-content {
  padding-top: 140px;
  max-width: 1140px;
  margin-inline: auto;
  padding-left: 20px;
  padding-right: 20px;
  @media (width <= 768px) {
    padding-top: 80px;
    padding-left: 12px;
    padding-right: 12px;
  }
  figure {
    img {
      width: 100%;
      height: auto;
      max-height: 60vh;
      aspect-ratio: 16/9;
      object-fit: cover;
    }
  }
  header {
    position: relative;
  }
  .entry-title-container {
    h1 {
      font-family: "Urbanist", Sans-serif;
      font-size: clamp(28px, 3vw, 62px);
      text-align: left;
      font-weight: 700;
      line-height: 1.2em;
      letter-spacing: 0px;
      word-spacing: 0em;
      margin: 24px 0;
      color: var(--e-global-color-primary);
    }
  }
  p {
    font-size: 18px;
    @media (width <= 768px) {
      font-size: 16px;
    }
  }
}

.post-navigation {
  padding: 80px 0;
  .post-nav-inner {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    flex-wrap: wrap;
    gap: 24px;
    .post-nav-prev a {
      flex-direction: row-reverse;
      .btn-icon {
        transform: rotate(180deg);
      }
      &:hover {
        .btn-icon {
          transform: rotate(225deg);
        }
      }
    }
  }
}

/* SINGLE PAGE */

body.page-template-page-custom {
  #lqd-contents-wrap {
    display: flex;
    --pt-page: 350px;

    @media (width <= 1024px) {
      flex-direction: column;
    }

    [data-elementor-type="wp-page"] {
      padding-top: var(--pt-page);
      flex: 1 1 70%;
    }
    .sidebar-page {
      flex: 1 1 30%;
      margin-top: calc(var(--main-content-height) + var(--pt-page));
      background-color: white;

      .sidebar-page-content {
        position: sticky;
        top: var(--lqd-sticky-header-height, 90px);

        .related-pages {
          background-color: var(--e-global-color-accent);

          .related-pages-list {
            padding-bottom: 67px;
          }
        }

        h2 {
          font-family: var(--e-global-typography-primary-font-family),
            Sans-serif;
          font-size: var(--e-global-typography-primary-font-size);
          font-weight: var(--e-global-typography-primary-font-weight);
          line-height: var(--e-global-typography-primary-line-height);
          letter-spacing: var(--e-global-typography-primary-letter-spacing);
          word-spacing: var(--e-global-typography-primary-word-spacing);
          color: white;
          margin: 0;
          padding: 40px 46px 20px 46px;

          a {
            color: var(--e-global-color-primary);
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: 14px;
            &:hover {
              color: var(--e-global-color-primary);
            }
          }

          @media (width <= 768px) {
            padding: 46px 20px 20px 20px;
          }
        }

        .btn-icon {
          width: 34px;
          height: 34px;
          margin: 0;
          svg {
            width: 100%;
            height: 100%;
            path {
              transform-origin: center;
              scale: 1.6;
            }
          }

          &.--reverse {
            svg {
              transform: rotate(180deg);
            }
          }
        }

        a.related-pages-item {
          display: flex;
          align-items: center;
          justify-content: space-between;
          text-decoration: none;
          background-color: transparent;
          transition: background-color 0.3s ease;
          padding: 16px 46px;
          border-bottom: 1px solid var(--e-global-color-primary);

          h3 {
            font-family: var(--e-global-typography-primary-font-family),
              Sans-serif;
            margin: 0;
            font-style: normal;
            font-size: 22px;
            color: var(--e-global-color-primary);
          }
          &:hover {
            background-color: #d9d9d980;

            .btn-icon {
              transform: rotate(-45deg);
            }
          }
        }

        .contact-form {
          background-color: var(--e-global-color-primary);

          .no-btn {
            padding-bottom: 46px;
          }

          p {
            font-family: "Urbanist", Sans-serif;
            color: white;
            margin-bottom: 0;
            padding: 8px 46px;
            @media (width <= 768px) {
              padding: 8px 20px;
            }
            a {
              color: white;
              text-decoration: none;
              &:hover {
                color: inherit;
              }
            }
          }

          a.btn {
            background-color: #ffffff;
            font-family: "Urbanist", Sans-serif;
            font-size: 18px;
            padding: 10px 24px;
            margin: 20px 0 46px 46px;
            @media (width <= 768px) {
              margin: 20px 0 46px 20px;
            }
            border-radius: 99px;
            color: var(--e-global-color-text);
            fill: var(--e-global-color-text);
          }
        }
      }
    }
    @media (width <= 1024px) {
      .sidebar-page {
        margin-top: 0;
        .related-pages {
          display: none;
        }
      }
    }
  }
}

table tbody tr {
  display: flex;
  @media (width <= 768px) {
    flex-direction: column;
    padding: 10px 0;
  }
}

table tbody td {
  flex: 1 1 30%;
  &:first-child {
    font-weight: 600 !important;
  }
  @media (width > 768px) {
    &:last-child {
      text-align: right;
    }
  }
}

/* ELUS GRID */

#elus-grid {
  .e-loop-item {
    padding: 16px;
    background-color: rgb(0 73 77 / 10%);
    .elementor-widget-image {
      max-width: 150px;
      .elu-image {
        img {
          aspect-ratio: 1/1;
          object-fit: cover;
        }
      }
    }
    .elu-content {
      flex: 1;
      .elu-name h2 {
        font-size: 28px;
        font-weight: 600;
        margin-bottom: 4px;
      }
    }
    .elu-sous-titre h3 {
      font-size: 20px;
      margin-bottom: 10px;
    }
    .elu-detail {
      font-size: 16px;
      font-weight: 400;
      margin-bottom: 10px;
      a {
        font-size: 18px;
        font-weight: 400;
        margin-bottom: 10px;
        text-decoration: underline;
      }
    }
  }
}

/* FACEBOOK HOME */
#lqd-site-content #cff .cff-posts-wrap {
  display: flex;
  flex-direction: column;
  flex-flow: row nowrap;
  scroll-snap-type: x mandatory;
  overflow-y: hidden;

  .cff-item{
    scroll-snap-align: start;
    flex: none;

    .cff-text{
      font-size: 18px;
    }

    .cff-post-links{
      display: none;
    }
  }
}

/* SOCIETE */

.hub-child-entreprise-search-input-container{
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;

  select {
    width: fit-content;
    border: 1px solid var(--e-global-color-primary);
    padding: 10px 20px;
    background: transparent;
    font-weight: 600;
    border-radius: 99px;
    font-size: 16px;
    color: #757575;
    cursor: pointer;
  }
}

/* ENTREPRISES */
.entreprise_adresse{
  padding-left: 30px !important;
}
.entreprise_adresse:after {
    content: "";
    width: 24px;
    height: 24px;
    position: absolute;
    top: 20px;
    left: 0;
    background-image: url("../images/icon/pin.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    display: inline-block;
    padding-left: 14px;
    transition: transform 0.3s ease;
    transform-origin: center;
}

.entreprise_tel a {
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  font-size: 18px;
  color: black;
  &:before {
    content: "";

    width: 24px;
    height: 24px;
    background-image: url("../images/icon/tel.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    display: inline-block;
    margin-right: 10px;
    transition: transform 0.3s ease;
    transform-origin: center;
  }
}

.entreprise_mail p {
  margin-bottom: 8px;
  display: flex;
  align-items: center;

  &:before {
    content: "";

    width: 24px;
    height: 24px;
    background-image: url("../images/icon/mail.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    display: inline-block;
    margin-right: 10px;
    transition: transform 0.3s ease;
    transform-origin: center;
  }
}

.entreprise_web p {
  margin-bottom: 8px;
  display: flex;
  align-items: center;  
  &:before {
    content: "";

    width: 24px;
    height: 24px;
    background-image: url("../images/icon/web.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    display: inline-block;
    margin-right: 10px;
    transition: transform 0.3s ease;
    transform-origin: center;
  }
}

.andilly-featured-image {
  position: fixed;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
  object-fit: cover;
}

.cf7-row {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;

  label{
    font-size: 18px;
  }
}
.cf7-col {
  flex: 1;
}
.cf7-three-cols .cf7-col {
  flex: 1;
}
.cf7-two-cols .cf7-col {
  flex: 1;
}


.wpcf7 form.sent .wpcf7-response-output {
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  margin-top: 24px;
  width: 100%;
  font-size: 18px;
  color: var(--e-global-color-primary);
  font-weight: 600;
}
.wpcf7 form .wpcf7-response-output {
  border: none;
}

.seance-conseil {
  .documents-categorie {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .categorie-annee-title {
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 10px;
    font-style: normal;
    color: var(--e-global-color-primary);
    border-bottom: 1px solid var(--e-global-color-primary);
    padding-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    @media (width <= 768px) {
      padding-top: 10px;
      margin: 0;
    }
    &:after {
      content: url("../images/ArrowDown.svg");
      width: fit-content;
      height: fit-content;
      display: inline-block;
      margin-left: 10px;
      transition: transform 0.3s ease;
      transform-origin: center;
    }
  }

  a {
    display: flex;
    gap: 6px;
    align-items: center;
    justify-content: flex-start;
    font-size: 20px;
    color: #343434;
    width: fit-content;

    @media (width <= 768px) {
      font-size: 18px;
    }
  }

  .document-conseil-title {
    margin: 0;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    text-wrap: pretty;
    text-decoration: underline;
    font-size: 20px;
    flex: 1;
  }
  svg {
    font-size: 24px;
    color: var(--e-global-color-primary);
  }

  details {
    overflow: hidden;
  }

  details summary::-webkit-details-marker {
    display: none;
  }

  details::details-content {
    block-size: 0;
    transition: block-size 0.3s ease, content-visibility 1s;
    transition-behavior: allow-discrete;
  }

  details:open::details-content {
    block-size: auto;
  }

  details[open] .categorie-annee-title:after {
    transform: rotate(180deg);
  }
}
.seance-conseil .categorie-annee:not(:first-of-type) {
  margin-top: 60px;
}

/* search bar reduced */

.search-bar-reduced {
  .lqd-module-search-slide-top {
    .ld-module-dropdown {
      height: 150px !important;

      .ld-search-form-container {
        justify-content: flex-end;
        max-width: 800px;
        padding: 0 20px;

        input[type="search"] {
          font-size: 38px;
          height: unset;
          border-bottom: 2px solid #000;
          margin-bottom: 10px;
        }
      }
    }
  }
}

.hub-child-entreprise-search {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
  label {
    font-size: 18px;
    font-weight: 600;
    color: var(--e-global-color-primary);
  }
  input[type="search"] {
    border: 1px solid var(--e-global-color-primary);
    width: fit-content;
    padding: 10px 16px;
    border-radius: 99px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    color: var(--e-global-color-primary);
    &:focus {
      outline: none;
    }
  }
}