/*
Theme Name: Colibri Child – CF&B
Theme URI: https://colibriwp.com/go/colibri-theme/
Template: colibri-wp
Author: Extend Themes
Author URI: https://colibriwp.com/
Description: A beautiful, very customizable, multipurpose theme that you can use to create amazing websites through drag and drop. It comes with a pre-designed home page, 5 header designs and over 35 ready-to-use content blocks that you can easily customize. You can also design your own custom blocks by combining more than 25 drag and drop components. It offers lots of customization options (video background, slideshow background, header content types, etc) to help you create a website that stands out in no time. It is also designed with responsiveness, to work on mobile devices right out of the box. It is the only theme you will ever need! CHECK OUT THE DEMOS: https://colibriwp.com/go/demos
Tags: entertainment,food-and-drink,portfolio,one-column,two-columns,right-sidebar,grid-layout,custom-header,custom-menu,custom-logo,full-width-template,theme-options,translation-ready,featured-images,threaded-comments
Version: 1.0.140.1754782407
Updated: 2025-08-09 23:33:27

*/

:root {
  --primary: #48B5FB;
  --secondary: #FF9C00;
  --text-color: #1B1B1B;
  --font-base: 'DM Sans';
  --font-heading: 'Roc Grotesk';
}

body {
  font-family: var(--font-base);
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
}

.badge-post {
  width: fit-content;
  padding: 4px 12px;
  border-radius: 5px;
  position: absolute;
  z-index: 5;
  top: -15px;
  left: 18px;
}

.hero-post-img .colibri-post-thumbnail-shortcode::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: linear-gradient(to bottom,
      rgba(27, 27, 27, 0) 5%,
      rgba(27, 27, 27, 0.95) 100%);
}

.home #hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: linear-gradient(to bottom,
      rgba(27, 27, 27, 0) 85%,
      rgba(27, 27, 27, 1) 98%);
}

.hero-shape {
  position: absolute;
  top: -140px;
}

@media only screen and (max-width: 1024px) {}

@media only screen and (max-width: 768px) {
  .hero-shape {
    position: absolute;
    top: -100px;
  }
}

@media only screen and (max-width: 576px) {}

#menu-footer-legacy {
  display: flex;
  justify-content: space-evenly;
  max-width: 500px;
  margin: auto;
}

#menu-footer-legacy li a,
#menu-footer li a {
  font-family: var(--font-base);
}

#menu-footer li a {
  line-height: 20pt;
}

#menu-footer-legacy::before,
#menu-footer-legacy::after {
  display: none;
}

.column-logo-left {
  margin-left: 50px;
  margin-right: -50px;
}

.column-logo-right {
  margin-left: -90px;
  margin-right: 90px;
}

.vertical-up h4 {
  transform: rotate(-90deg) translate(-55%, -120%);
  width: fit-content;
  transform-origin: bottom;
  white-space: nowrap;
}

.column-logo-right .vertical-up h4 {
  transform: rotate(-90deg) translate(-55%, -0%);
  width: fit-content;
  transform-origin: bottom;
  white-space: nowrap;
}

.vertical-up-two-lines h4 {
  transform: rotate(-90deg) translate(-55%, -50%);
  width: fit-content;
  transform-origin: bottom;
  white-space: nowrap;
}

@media only screen and (max-width: 768px) {
  .vertical-up h4 {
    transform: rotate(-90deg) translate(-55%, -210%);
  }

  .column-logo-right .vertical-up h4 {
    transform: rotate(-90deg) translate(-55%, 25%);
  }

  .vertical-up-two-lines h4 {
    transform: rotate(-90deg) translate(-55%, -110%);
  }
}

@media only screen and (max-width: 575px) {
  .vertical-up h4 {
    transform: rotate(-90deg) translate(-55%, -320%);
  }

  .column-logo-right .vertical-up h4 {
    transform: rotate(-90deg) translate(-55%, 100%);
  }

  .vertical-up-two-lines h4 {
    transform: rotate(-90deg) translate(-55%, -130%);
  }
}

@media only screen and (min-width: 768px) {
  .vertical-up-gallery-center h4 {
    text-align: center;
    position: relative;
    transform: scale(-1) translate(-50%, -20%);
    transform-origin: center;
    writing-mode: vertical-lr;
    white-space: nowrap;
  }

  .vertical-up-gallery h4 {
    text-align: center;
    position: relative;
    transform: scale(-1) translate(-50%, -50%);
    transform-origin: bottom;
    writing-mode: vertical-lr;
    white-space: nowrap;
  }

  .vertical-up, .vertical-up .h-heading__outer,
  .vertical-up-gallery-center,
  .vertical-up-gallery-center .h-heading__outer {
    height: 100%;
  }

  .gallery-row .h-row .h-column img {
    max-height: 50vh;
    width: auto;
  }
}

@media only screen and (min-width: 1024px) {
  .vertical-up-gallery-center h4 {
    transform: scale(-1) translate(-50%, -45%);
  }
}

@media only screen and (min-width: 1200px) {
  .vertical-up-gallery-center h4 {
    transform: scale(-1) translate(-50%, -45%);
  }
}

.h100 .h-column__content {
  height: 100%;
}

@media only screen and (min-width: 1420px) {
  .gallery-row {
    margin-left: -52px;
  }
}

.gallery-row-abs {
  position: absolute;
  bottom: 0;
  z-index: 2;

}

.blur {
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

.blogposts-content {
  position: absolute !important;
  bottom: 0px;
}

.blogposts-row h3 {
  min-height: 55px;
}

.blogposts-img .colibri-post-thumbnail-shortcode::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(27, 27, 27, 0) 5%, rgba(27, 27, 27, 0.95) 100%);
}

@media only screen and (min-width: 768px) {
  .menu-link-desktop #menu-main, .menu-link-desktop #menu-register {
    justify-content: space-between !important;
  }
}

#colibri .h-hamburger-icon {
  fill: #FFFFFF;
  width: 24px;
  height: 24px;
  text-align: center;
}

@media only screen and (max-width: 1280px) {
  .marquee img {
    width: 26px;
    height: 26px;
  }

  #marquee h3 {
    font-size: 22px !important;
  }
}

@media only screen and (max-width: 1024px) {

  body,
  body p,
  body a {
    font-size: 16px;
    line-height: 1.6;
  }

  body h2 {
    margin-bottom: 16px;
    font-size: 35px;
  }

  body h3 {
    margin-bottom: 16px;
    font-size: 22px;
  }

  body h4 {
    margin-bottom: 16px;
    font-size: 20px;
  }

  body h5 {
    margin-bottom: 16px;
    font-size: 18px;
  }

  .marquee img {
    width: 26px;
    height: 26px;
  }

}

@media only screen and (max-width: 768px) {

  body,
  body p,
  body a {
    font-size: 16px;
    line-height: 1.6;
  }

  body h2 {
    margin-bottom: 16px;
    font-size: 32px;
  }

  body h3 {
    margin-bottom: 16px;
    font-size: 22px;
  }

  body h4 {
    margin-bottom: 16px;
    font-size: 20px;
  }

  body h5 {
    margin-bottom: 16px;
    font-size: 18px;
  }

  .marquee img {
    width: 22px;
    height: 22px;
  }
}

@media only screen and (max-width: 576px) {

  body,
  body p,
  body a {
    font-size: 15px;
    line-height: 1.6;
  }

  body h2 {
    margin-bottom: 16px;
    font-size: 28px;
  }

  body h3 {
    margin-bottom: 16px;
    font-size: 20px;
  }

  body h4 {
    margin-bottom: 16px;
    font-size: 18px;
  }

  body h5 {
    margin-bottom: 16px;
    font-size: 17px;
  }
}

/* SHORTCODE EVENTS HOME */

/* Overlay gradient sur l'image */
.blogposts-img .colibri-post-thumbnail-shortcode {
  position: relative;
}

.blogposts-img .colibri-post-thumbnail-shortcode::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(27, 27, 27, 0) 5%, rgba(27, 27, 27, 0.95) 100%);
}

/* Grille responsive */
.events-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}

/* Les cartes normales deviennent des flex-col pour que le contenu remplisse le reste */
.events-card {
  display: flex;
  flex-direction: column;
  max-height: 550px;
  overflow: hidden;
}

.events-card.upcoming {
  display: flex;
  flex-direction: column;
  max-height: 530px;
  overflow: hidden;
}

/* L'image reste à sa taille auto en haut */
.events-card>a {
  flex-shrink: 0;
}

/* Le contenu prend tout l'espace restant */
.events-card__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  background-color: rgb(39, 38, 38);
  background-image: none;
  padding: 30px 15px;
}

/* Desktop ≥ 1025px : 3 colonnes, 1er post sur 2 colonnes */
.events-card--hero {
  grid-column: span 2;
  position: relative;
}

.events-card--hero .wp-post-image {
  max-height: 510px;
}

/* Tablette */
@media (max-width: 1024px) {
  .events-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  .events-card--hero {
    grid-column: span 2;
  }
}

/* Mobile : 1 colonne */
@media (max-width: 576px) {
  .events-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .events-card--hero {
    grid-column: span 1;
  }
}

/* Cartes */
.events-card .wp-post-image {
  width: 100%;
  height: auto;
  display: block;
}

.events-card .h-blog-title h3 {
  color: #fff;
  text-align: left;
  font-family: var(--font-heading);
  min-height: auto !important;
}

.events-card .h-blog-categories a {
  color: #48B5FB;
  text-align: left;
  font-family: var(--font-heading) !important;
}

.events-card .h-blog-meta .metadata-item a, .events-card .h-blog-tags a, .events-card .h-blog-meta .metadata-item, .events-card .h-blog-excerpt>* {
  color: rgba(255, 255, 255, 0.7) !important;
  text-align: left;
  font-family: var(--font-heading) !important;
  line-height: 1.3;
}
.events-card .h-blog-excerpt p, .next-event .h-blog-excerpt p  {
  margin-bottom: 0px;
}

/* HERO : contenu superposé en bas */
.events-card--hero .events-card__overlay-content {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 16px 18px;
  color: #fff;
  z-index: 2;
}

.events-card--hero .h-blog-title h3 {
  color: #fff;
  text-align: left;
  font-family: var(--font-heading);
  min-height: auto !important;
}

.events-card--hero .h-blog-meta .metadata-item a,
.events-card--hero .h-blog-categories a,
.events-card--hero .h-blog-tags a {
  color: rgba(255, 255, 255, 0.7);
  text-align: left;
  font-family: var(--font-heading) !important;
}

.events-card:not(.events-card--hero) .blogposts-img .colibri-post-thumbnail-shortcode {
  aspect-ratio: 4 / 3;
  position: relative;
  overflow: hidden;
}

.events-card:not(.events-card--hero) .blogposts-img .colibri-post-thumbnail-shortcode img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

@media (max-width: 470px) {
  .btn-register .h-svg-icon {
    display: none;
  }

  .btn-register {
    padding: 10px 12px !important;
  }
}

.temoignages-slider .swiper-button-prev:after,
.temoignages-slider .swiper-rtl .swiper-button-next:after,
.temoignages-slider .swiper-button-next:after,
.temoignages-slider .swiper-rtl .swiper-button-prev:after {
  content: '' !important;
}

/************************/
.about-title-vector {
  position: absolute;
  bottom: -143px;
}

.service-title-vector {
  position: absolute;
  bottom: -103px;
}

.events-title-vector {
  position: absolute;
  bottom: -112px;
}

.hero-about h1 {
  margin-top: 85px !important;
}

.our-story-vector {
  position: absolute;
  right: -46px;
  bottom: -101px;
}
.register-title-vector {
    position: absolute;
  bottom: -127px;
}

.our-story-img,
.our-story-vector {
  margin-right: 50px;
  margin-left: -50px;
}

@media only screen and (max-width: 1199.99px) {}

@media only screen and (max-width: 1023.99px) {
  .about-title-vector img, .events-title-vector img, .service-title-vector img, .register-title-vector img {
    width: 270px;
  }

  .our-story-vector {
    position: absolute;
    right: -39px;
    bottom: -68px;
  }

  .our-story-vector img {
    width: 160px;
  }
}

@media only screen and (max-width: 767.99px) {
  .about-title-vector img, .events-title-vector img, .service-title-vector img, .register-title-vector img {
    width: 200px;
  }

  .about-title-vector, .events-title-vector {
    bottom: -143px;
  }

  .service-title-vector {
    bottom: -110px;
  }

  .our-story-vector {
    position: absolute;
    right: -84px;
    bottom: -71px;
  }
  .register-title-vector {
    bottom: -128px;
  }
}

.events-pagination.upcoming-events .page-numbers.current {
  color: white;
}

.events-pagination.past-events .page-numbers.current {
  color: black;
}

.events-pagination .page-numbers {
  padding-right: 10px;
}

.metadata-item-acf a {
  margin-right: 5px;
  font-family: Roc Grotesk;
  line-height: 1.1;
  color: rgba(27, 27, 27, 0.7);
}

.event-cta {
  background-attachment: scroll !important;
  background-position: 67vw -270px !important;
  background-size: 830px auto !important;
}

.forminator-ui#forminator-module-560.forminator-design--default .forminator-label {
  font-size: 15px;
  font-family: inherit;
  font-weight: 500;
}

#colibri .style-912 .h-contact-form-shortcode textarea, #colibri .style-912 .h-contact-form-shortcode form.forminator-ui textarea.forminator-textarea, #colibri .style-912 .h-contact-form-shortcode select, #colibri .style-912 .h-contact-form-shortcode input:not([type="file"]):not([type="radio"]):not([type="checkbox"]):not([type="submit"]) {
  margin-top: 4px;
  margin-bottom: 16px;
  background-color: #F6F9FF;
  background-image: none;
  border-top-width: 1px;
  border-top-color: #F6F9FF;
  border-top-style: solid;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  border-right-width: 1px;
  border-right-color: #F6F9FF;
  border-right-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #F6F9FF;
  border-bottom-style: solid;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  border-left-width: 1px;
  border-left-color: #F6F9FF;
  border-left-style: solid;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  color: rgb(102, 102, 102);
  font-size: 16px;
  letter-spacing: 0px;
}


/* NEXT EVENTS */
#colibri .next-event-1034 {
  text-align: center;
  height: auto;
  min-height: unset;
  background-color: #ffffff;
  background-image: none;
  border-top-width: 0px;
  border-top-color: rgb(238, 238, 238);
  border-top-style: solid;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  border-right-width: 0px;
  border-right-color: rgb(238, 238, 238);
  border-right-style: solid;
  border-bottom-width: 0px;
  border-bottom-color: rgb(238, 238, 238);
  border-bottom-style: solid;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  border-left-width: 0px;
  border-left-color: rgb(238, 238, 238);
  border-left-style: solid;
  box-shadow: none;
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
}

.badge-post {
  width: fit-content;
  padding: 4px 12px;
  border-radius: 5px;
  position: absolute;
  z-index: 5;
  top: -15px;
  left: 18px;
  background-color: rgb(72, 181, 251);
  background-image: none;
  font-weight: 500;
}

#colibri .next-event-1048 p {
  font-weight: 500;
}

#colibri .next-event-465 p {
  color: #ffffff;
}

#colibri .next-event-1035 {
  background-color: rgba(255, 255, 255, 0);
  background-image: none;
  text-align: left;
  border-top-style: none;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  border-right-style: none;
  border-bottom-style: none;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
  border-left-style: none;
  box-shadow: none;
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
}

.site .style-dynamic-8-h29-height {
  min-height: 300px;
}

#colibri .next-event-1035 .colibri-post-thumbnail-shortcode img {
  height: 300px;
  object-position: center center;
  object-fit: cover;
}

#colibri .next-event-1036 {
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  padding-top: 20px;
  padding-right: 10px;
  padding-bottom: 20px;
  padding-left: 10px;
}

#colibri .next-event-1037 {
  text-align: left;
  height: auto;
  min-height: unset;
}

#colibri .next-event-1038 {
  margin-bottom: 0px;
}

#colibri .next-event-1038 a,
#colibri .next-event-1038 .colibri-post-excerpt,
#colibri .next-event-1038 .h-blog-excerpt>* {
  margin-right: 5px;
  font-family: Roc Grotesk;
  line-height: 1.1;
  color: rgba(27, 27, 27, 0.7);
}

#colibri .next-event-1038 .colibri-post-category {
  margin-right: 5px;
  font-family: Roc Grotesk;
  line-height: 1.1;
  color: #03a9f4;
}

#colibri .next-event-1038 .categories-prefix {
  margin-right: 16px;
}

#colibri .next-event-1039 h1,
#colibri .next-event-1039 h2,
#colibri .next-event-1039 h3,
#colibri .next-event-1039 h4,
#colibri .next-event-1039 h5,
#colibri .next-event-1039 h6 {
  margin-bottom: 0px;
  color: rgb(27, 27, 27);
}

body a {
  font-family: var(--font-base) !important;
}

#myForm>*, .tablesorter-blue th, .tablesorter-blue thead td, select, option, input, textarea {
    font-family: var(--font-base) !important;
}
