
/* General template */

@font-face {
  font-family: "Proxima nova";
  src: url("./../fonts/proximanova-regular-webfont.ttf");

  font-family: "Proxima nova Semibold";
  src: url("./../fonts/proximanova-semibold-webfont.ttf");
}

html { 
	margin-left: calc(100vw - 100%); 
	height: 100%;
	scroll-behavior: smooth;
}

::selection {				/* WebKit/Blink Browsers */
  	color: #fff;
  	background: #4fa5c0; 
}

::-moz-selection {			/* Gecko Browsers */
  	color: #fff;
  	background: #4fa5c0; 
}

.cs-logo-large {
  width: 300px;
  height: 110px;
  background-color: #FFFFFF;
}

.cs-logo-medium {
  width: 250px;
  height: 91px;
  background-color: #FFFFFF;
}

.cs-logo-small {
  width: 220px;
  height: 80px;
  background-color: #FFFFFF;
}

.cs-navbar-svg {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    position: relative;
    left: 0.6em;
}

.cs-nav-link-text {
	font-size: 1.3em;
	position: relative;
	top: 8px;
	left: 10px;
}

.nav-item > a:first-child {
	color: #0B7193 !important;
}

.nav-item > a.red-link {
	color: red !important;
}

/*.dropdown-menu {
	border-color: #4fa5c0 !important;
}*/

.dropdown-menu > .dropdown-item:active,
.dropdown-menu > .dropdown-item:hover,
.dropdown-menu > .dropdown-item-selected {
    background-color: #4fa5c0 !important;
    color: #FFFFFF;
}

.dropdown-menu > .dropdown-item-selected-green {
    background-color: #95db81 !important;
    color: #FFFFFF;
}

/* Hamburger navigation menu */
	/* Set the border color */   
	.navbar-toggler {
	    border-color: #0B7193 !important;
	}

	/* Setting the stroke to green using rgb values (0, 131, 127) */
	.navbar-toggler .navbar-toggler-icon {
	    background-image: url(
	"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(11, 113, 147, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
	}

.cs-container {
	/*border: solid red 1px;*/
}

.cs-row {
	/*border: solid blue 1px;*/
}	

.cs-col {
	border: solid green 1px;
}

.cs-footer a {
  	/*background-color: #f5f5f5;*/
  	color: #0B7193 !important;	
}

.cs-breadcrumb {
	background-color: transparent;
  border-radius: 0;
}

.cs-breadcrumb-item, .cs-breadcrumb-item > a {
	color: #0B7193;
}

.copyright {
	height: 5em;
	text-align: center;
	/*border: solid red 1px;*/
}

h1, .h1 {
  font-size: 2rem;
}

h2, .h2 {
  font-size: 1.5rem;
}

h3, .h3 {
  font-size: 1.2rem;
}

p, li {
	color: #6b6b6b;
}

.grey-text {
	color: #6b6b6b;
}

p.black, div.black, ul.black, td.black, th.black, label.black, select.black, ul.black li {
	color: #000000;
}

label {
  margin-bottom: 0.2rem;
}

/* Permet de styler les cases à cocher et boutons radio avec une couleur différente (Firefox 92+ et Chrome 93+) */
input {
	accent-color: red;
}

.cs-btn-lg {
  font-size: 1rem;
}

.cs-pt-2 {
	padding-top: 1.35em;
}

.cs-no-padding-lr {
	padding-left: 0;
	padding-right: 0;
}

.cs-no-padding-l {
	padding-left: 0;
}

.cs-no-padding-r {
	padding-right: 0;
}



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

.cs-custom-spacer {
  height: 16px;
}

.cs-bold-green {
	font-weight: bold; 
	color: green;
}

.page-main-image img {
  max-width: 100%;
  height: auto;
}

.cs-picture-shadow {
	box-shadow: 8px 8px 11px -3px rgba(0,0,0,0.15); 
}

.cs-picture-fancy-radius-01 {
  border-radius: 50% 42% 66% 34% / 66% 23% 70% 25%;
}

.cs-picture-fancy-radius-02 {
  border-radius: 50% 42% 10% 85% / 12% 10% 25% 13%;
}

.cs-picture-fancy-radius-03 {
  border-radius: 50% 42% 57% 30% / 42% 26% 68% 31%;
}

.cs-picture-fancy-radius-04 {
  border-radius: 13% 78% 35% 0% / 10% 0% 27% 23%;
}

.cs-picture-fancy-radius-05 {
  border-radius: 50% 50% 35% 56% / 90% 100% 0% 10%;
}

.cs-picture-fancy-radius-06 {
  border-radius: 34% 65% 31% 63% / 35% 54% 45% 64%;
}

.cs-picture-fancy-radius-07 {
  -webkit-border-top-right-radius: 200px; 
  -moz-border-radius-topright: 200px; 
  border-top-right-radius: 200px;
  -webkit-border-bottom-left-radius: 200px; 
  -moz-border-radius-bottomleft: 200px; 
  border-bottom-left-radius: 200px;
  -webkit-border-bottom-right-radius: 50px; 
  -moz-border-radius-bottomright: 50px; 
  border-bottom-right-radius: 50px;
}

.cs-picture-fancy-radius-08 {
  -webkit-border-top-right-radius: 260px; 
  -moz-border-radius-topright: 260px; 
  border-top-right-radius: 260px;
  -webkit-border-top-left-radius: 260px; 
  -moz-border-radius-topleft: 260px; 
  border-top-left-radius: 260px;
  -webkit-border-bottom-right-radius: 260px; 
  -moz-border-radius-bottomright: 260px; 
  border-bottom-right-radius: 260px;
  -webkit-border-bottom-left-radius: 260px; 
  -moz-border-radius-bottomleft: 260px; 
  border-bottom-left-radius: 260px;
}

.cs-picture-fancy-radius-09 {
  border-radius: 10% 90% 7% 93% / 75% 28% 72% 25%;
}

.cs-picture-fancy-radius-10 {
  border-radius: 30% 70% 70% 30% / 30% 28% 72% 70%;
}

.cs-picture-fancy-radius-11 {
  border-radius: 33% 67% 46% 54% / 54% 6% 94% 46%;
}

.cs-picture-fancy-radius-12 {
  border-radius: 8% 92% 10% 90% / 95% 18% 82% 5%;
}

.cs-picture-fancy-radius-13 {
  border-radius: 27% 73% 29% 71% / 62% 18% 82% 38%;
}

.cs-picture-fancy-radius-14 {
  border-radius: 8% 92% 9% 91% / 86% 4% 96% 14%;
}

.cs-picture-fancy-radius-15 {
  border-radius: 29% 71% 20% 80% / 53% 75% 25% 47%;
}

.cs-picture-fancy-radius-16 {
  border-radius: 100% 0% 51% 49% / 53% 75% 25% 47%;
}

.cs-picture-fancy-radius-17 {
  border-radius: 100% 0% 100% 0% / 0% 75% 25% 100%;
}

.cs-picture-fancy-radius-18 {
  border-radius: 100% 0% 53% 47% / 0% 94% 6% 100%;
}

.cs-picture-fancy-radius-19 {
  
}

.cs-picture-fancy-radius-20 {
  border-radius: 89% 11% 92% 8% / 8% 94% 6% 92%;
}

.cs-picture-fancy-radius-21 {
  border-radius: 94% 6% 100% 0% / 11% 100% 0% 89%;
}

.cs-picture-fancy-radius-22 {
  border-radius: 80% 20% 94% 6% / 17% 41% 59% 83%;
}

.cs-picture-fancy-radius-23 {
  border-radius: 80% 20% 100% 0% / 100% 49% 51% 0%;
}

.cs-picture-fancy-radius-24 {
  border-radius: 7% 93% 27% 73% / 80% 44% 56% 20%;
}

.cs-picture-fancy-radius-25 {
  border-radius: 52% 48% 27% 73% / 62% 79% 21% 38%;
}

.cs-picture-fancy-radius-26 {
  border-radius: 52% 48% 56% 44% / 28% 60% 40% 72%;
}

.cs-picture-fancy-radius-27 {
  border-radius: 8% 92% 11% 89% / 9% 88% 12% 91%;
}

.cs-picture-fancy-radius-28 {
  border-radius: 40% 60% 42% 58% / 24% 68% 32% 76%;
}

.cs-picture-fancy-radius-29 {
  border-radius: 93% 7% 94% 6% / 4% 92% 8% 96%;
}

.cs-picture-fancy-radius-30 {
  border-radius: 70% 30% 100% 0% / 19% 82% 18% 81%;
}

.cs-picture-fancy-radius-31 {
  border-radius: 93% 7% 93% 7% / 0% 100% 0% 100%;
}

.cs-picture-fancy-radius-32 {
  border-radius: 59% 41% 26% 74% / 34% 17% 83% 66%;
}

.cs-picture-fancy-radius-33 {
  border-radius: 73% 27% 26% 74% / 0% 100% 0% 100%;
}

.cs-picture-fancy-radius-34 {
  border-radius: 99% 1% 41% 59% / 13% 100% 0% 87%;
}

.cs-picture-fancy-radius-35 {
  border-radius: 10% 90% 12% 88% / 13% 93% 7% 87%;
}

.cs-picture-fancy-radius-36 {
  border-radius: 74% 26% 68% 32% / 64% 40% 60% 36%;
}

.cs-picture-fancy-radius-37 {
  border-radius: 100% 0% 100% 0% / 100% 0% 100% 0%;
}

.cs-picture-fancy-radius-38 {
  border-radius: 0% 100% 0% 100% / 19% 12% 88% 81%;
}

.cs-picture-fancy-radius-39 {
  border-radius: 56% 15% 72% 25% / 38% 27% 25% 62%;
}

.cs-picture-fancy-radius-40 {
  border-radius: 84% 15% 72% 25% / 74% 67% 25% 2%;
}

.cs-picture-fancy-radius-41 {
  border-radius: 10% 10% 72% 25% / 10% 13% 25% 8%;
}

.cs-picture-fancy-radius-42 {
  border-radius: 41% 35% 72% 25% / 66% 75% 25% 0%;
}

.cs-picture-fancy-radius-43 {
  border-radius: 73% 27% 72% 25% / 100% 45% 37% 0%;
}

.cs-picture-fancy-radius-44 {
  border-radius: 50% 37% 46% 40% / 83% 100% 0% 10%;
}

.cs-picture-fancy-radius-45 {
  border-radius: 46% 25% 25% 25% / 47% 11% 63% 27%;
}

.cs-picture-fancy-radius-46 {
  border-radius: 30% 59% 25% 53% / 47% 74% 26% 50%;
}

.cs-picture-fancy-radius-47 {
  
}

.cs-picture-fancy-radius-48 {
  border-radius: 67% 23% 88% 12% / 67% 0% 100% 22%;
}

.cs-picture-fancy-radius-49 {
  border-radius: 28% 55% 40% 12% / 67% 26% 73% 22%;
}

.cs-picture-fancy-radius-50 {
  border-radius: 68% 25% 68% 25% / 25% 25% 25% 25%;
}

.cs-picture-fancy-radius-51 {
  border-radius: 87% 0% 76% 17% / 48% 25% 75% 25%;
}

.cs-picture-fancy-radius-52 {
  border-radius: 50% 48% 51% 48% / 85% 49% 49% 15%;
}

.cs-picture-fancy-radius-53 {
  border-radius: 75% 25% 42% 25% / 49% 28% 32% 48%;
}

.image-fade-in {
  opacity: 0;
  transition: opacity 0.6s ease-in;
}

.image-fade-in.loaded {
    opacity: 1;
}

.social-media-icon-offset-1 {
  position: relative; 
  bottom: 1px;
}

.social-media-icon-offset-2 {
  position: relative; 
  bottom: 2px;
}

/* Homepage */

@media (max-width: 575.98px) {
  .homepage-main-title {
    font-size: 2.5rem;
    line-height: 1; 
    font-weight: 700;
    text-shadow: 0 1px 0 #bfe7f5,
                 0 2px 0 #bfe7f5,                                                            
                 1px 5px 10px rgba(16, 16, 16, 0.3);
  }

  .homepage-main-content {
  	font-family: Proxima nova,ui-sans-serif,system-ui,-apple-system; 
  	font-size: 1.2rem; 
  	line-height: 1.6rem;
  }

  .page-main-title {
    font-size: 1.7rem;
    line-height: 1; 
    font-weight: 700;
    color: #0b7193;
  }

  .page-main-rubric {
    font-size: 1.6rem;
    line-height: 1; 
    font-weight: 700;
  }

  .long-email {
  	font-size: 1.1rem;
  }
}

@media (min-width: 576px) {
  .homepage-main-title {
    font-size: 3rem;
    line-height: 1; 
    font-weight: 700;
    text-shadow: 0 1px 0 #bfe7f5,
                 0 2px 0 #bfe7f5,                                                         
                 1px 5px 10px rgba(16, 16, 16, 0.3);
  }

  .homepage-main-content {
  	font-family: Proxima nova,ui-sans-serif,system-ui,-apple-system; 
  	font-size: 1.5rem; 
  	line-height: 1.8rem;
  }

  .page-main-title {
    font-size: 2rem;
    line-height: 1; 
    font-weight: 700;
    color: #0b7193;
  }

  .page-main-rubric {
    font-size: 1.9rem;
    line-height: 1; 
    font-weight: 700;
  }

  .long-email {
  	font-size: 1.7rem;
  }
}

@media (min-width: 768px) {
  .homepage-main-title {
    font-size: 3.3rem;
    line-height: 1; 
    font-weight: 700;
    text-shadow: 0 1px 0 #bfe7f5,
                 0 2px 0 #bfe7f5,                                                       
                 1px 5px 10px rgba(16, 16, 16, 0.3);
  }

  .homepage-main-content {
  	font-family: Proxima nova,ui-sans-serif,system-ui,-apple-system; 
  	font-size: 1.35rem; 
  	line-height: 1.8rem;
  }

  .page-main-title {
    font-size: 2rem;
    line-height: 1; 
    font-weight: 700;
    color: #0b7193;
  }

  .page-main-rubric {
    font-size: 1.9rem;
    line-height: 1; 
    font-weight: 700;
  }

  .long-email {
  	font-size: 1.2rem;
  }
}

@media (min-width: 992px) {
  .homepage-main-title {
    font-size: 4.5rem;
    line-height: 1; 
    font-weight: 700;
    text-shadow: 0 1px 0 #bfe7f5,
                 0 2px 0 #bfe7f5,                                                         
                 1px 5px 10px rgba(16, 16, 16, 0.3);
  }

  .homepage-main-content {
  	font-family: Proxima nova,ui-sans-serif,system-ui,-apple-system; 
  	font-size: 1.5rem; 
  	line-height: 2rem;
  }

  .page-main-title {
    font-size: 2.3rem;
    line-height: 1; 
    font-weight: 700;
    color: #0b7193;
  }

  .page-main-rubric {
    font-size: 2.1rem;
    line-height: 1; 
    font-weight: 700;
  }

  .long-email {
  	font-size: 1.6rem;
  }
}

@media (min-width: 1200px) {
  .homepage-main-title {
    font-size: 4.5rem;
    line-height: 1; 
    font-weight: 700;
    text-shadow: 0 1px 0 #bfe7f5,
                 0 2px 0 #bfe7f5,                                                        
                 1px 5px 10px rgba(16, 16, 16, 0.3);
  }

  .homepage-main-content {
  	font-family: Proxima nova,ui-sans-serif,system-ui,-apple-system; 
  	font-size: 1.5rem; 
  	line-height: 2rem;
  }

  .page-main-content {
  	font-family: Proxima nova,ui-sans-serif,system-ui,-apple-system; 
  	font-size: 1.25rem; 
  	line-height: 1.5rem;
  }

  .page-main-title {
    font-size: 2.5rem;
    line-height: 1; 
    font-weight: 700;
    color: #0b7193;
  }

  .page-main-rubric {
    font-size: 2.3rem;
    line-height: 1; 
    font-weight: 700;
  }

  .long-email {
  	font-size: 1.9rem;
  }
}

@media (min-width: 576px) and (max-width: 768px) {
  .hamburger-nav {
    display: block;
  }

  .regular-nav {
    display: none;
  }
}

.homepage-superhero-image img {
  max-width: 100%;
  height: auto;
}

.homepage-bouton a {
	background-color: #4fa5c0;
}

/* Modal windows */

.cs-modal-header {
	border-bottom: none;
	text-align: center;
}

.modal-footer {
	border-top: none;
}

.cs-modal-p {
	padding-left: 15px;
	padding-right: 15px;
}

.cs-modal-title {
	width: 100%; 
	text-align: center; 
	font-family: "Proxima nova";
  src: url("./../fonts/proximanova-regular-webfont.ttf"); 
	font-size: 1.8rem;
}

.cs-modal-title-2-3rem {
	font-size: 2.3rem;
}

.cs-modal-title-2rem {
	font-size: 2rem;
}

.cs-modal-title-1-8rem {
	font-size: 1.8rem;
}

.cs-modal-title-1-7rem {
	font-size: 1.7rem;
}

.cs-modal-body {
  width: 100%; 
  text-align: center; 
  font-family: "Proxima nova";
  src: url("./../fonts/proximanova-regular-webfont.ttf"); 
  font-size: 1.1rem;
}

/* Languages selector */

.cs-languages-selector-item a, .cs-languages-selector-item a:active, .cs-languages-selector-item a:hover {
  font-family: "Proxima nova";
  font-size: 1rem;
  color: #6b6b6b;
  text-decoration: none;
}

.cs-languages-selector-title {
  font-family: "Proxima nova Semibold";
  font-size: 1.7rem;
  line-height: 1; 
  color: #0B7193;
}


/* About us / The founder */

.about-us-the-founder-image {
  box-shadow: 8px 8px 11px -3px rgba(0,0,0,0.15); 
  -webkit-border-bottom-right-radius: 20px; 
  -moz-border-radius-bottomright: 20px; 
  border-bottom-right-radius: 200px;
}

/* Popovers */

.popover {
	text-align: center;
}

/* Bouton Back to top */

#backToTopButton {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000; /* Make sure it does not overlap */
  background-color: white;
  cursor: pointer; /* Add a mouse pointer on hover */
  border-radius: 36px; /* Rounded corners */
  opacity: 0.8;
}

#backToTopSVG {
	width: 3rem;
	height: 3rem;
	fill: #4fa5c0;
}

/* Divers */

.cs-info-link {
	float: right;
}


.word-break-all {
	word-break: break-all;
}

.whatsapp-button a {
  background-color: #25d366;
  border-color: #25d366;
}

.whatsapp-button a:hover, .whatsapp-button a:focus {
  background-color: #15A34A;
  border-color: #25d366;
}


/* Loader */

.loader {
  --size: 20px;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(var(--size) / 2);
  width: 100%;
  height: 100%;
  z-index: 9999;
}

.loader div {
  width: var(--size);
  height: var(--size);
  border-radius: var(--size);
  background-color: #ffd700;
  animation: wave 2s infinite ease-in-out;
}

@keyframes wave {
  25% {
    height: calc(var(--size) * 5);
    background-color: #fc00ff;
  }

  50% {
    height: var(--size);
    background-color: #9c73f8;
  }
}

.loader :nth-child(1) {
  animation-delay: 0s;
}

.loader :nth-child(2) {
  animation-delay: 0.2s;
}

.loader :nth-child(3) {
  animation-delay: 0.4s;
}

.loader :nth-child(4) {
  animation-delay: 0.6s;
}

.loader :nth-child(5) {
  animation-delay: 0.8s;
}

.loader :nth-child(6) {
  animation-delay: 1s;
}