/*
Theme Name: Child Theme Les Flibustiers
Description: Theme enfant de Divi par Les Flibustiers
Template: Divi
*/

/*----------RESET----------*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/*----------ELEMENTS DE BASE----------*/

/*Centrer verticalement*/
.centrer {
    display: flex;
    flex-direction: column;
    justify-content: center;
  /* Et les déclinaisons avec préfixes pour obtenir un résultat homogène sur les divers navigateurs  */
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
  }
/*Inverser ordre des colonnes sur mobile*/
@media only screen and (max-width : 980px) {
  .inverser-section .inverser-ligne {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
/*Mettre exposants et indices à la bonne taille*/
sup, sub {
  font-size: 70%;
}
/*Scroller dans le menu mobile*/
.et_mobile_menu {
  overflow: scroll !important;
  max-height: 60vh;
  } 
/*MENU MOBILE : en pleine largeur et le hamburger devient une croix pour fermer*/
.et_mobile_menu {
	margin-left: -30px;
	padding: 5%;
	width: calc( 100% + 60px);
}
.mobile_nav.opened .mobile_menu_bar:before {
	content: "\4d";
}

/*----------STYLES----------*/

:root{
  /* Fonts */
  --ff-main: "Poppins", serif;
  --ff-accent: "Raleway", serif;

  /* Taille de typo */
  --fs-h1: clamp(1.5rem, 5vw, 1.8rem);
  --fs-h2: clamp(20px, 3vw, 1.3rem);
  --fs-h3: clamp(18px, 2vw, 1rem);
  --fs-text: 16px;
  --fs-text-petit: 12px;
  --fs-text-grand: 20px;

  /* Couleurs */
  --clr-main: #333333;
  --clr-scnd : #848c46;
  --clr-text: #333333;
}

@media (max-width: 980px){
  :root{
    --fs-text: 15px;
    --fs-text-grand: 18px;
  }
}

p,
ul,
li,
ol,
dl,
blockquote,
pre,
td,
th,
label,
textarea,
caption,
details, 
figure, 
hgroup, 
input,
span,
.cmplz-title, .cmplz-message, .cmplz-buttons, .cmplz-links, .cmplz-btn, div  {
  font-family: var(--ff-main);
  font-weight: 300;
  font-style: normal;
  color: var(--clr-text);
  font-size: var(--fs-text);
	line-height: 1.3;
}

h1, .h1-like, .h1-like p, .h1-like div, .h1-like span, .h1-like h1, .h1-like h2, .h1-like h3, .h1-like li, .h1-like a {
  font-family: var(--ff-main);
  font-weight: 600;
  font-style: normal;
  color: var(--clr-text);
  font-size: var(--fs-h1);
	line-height: 1.2;
}

h2, .h2-like, .h2-like p, .h2-like div, .h2-like span, .h2-like h1, .h2-like h2, .h2-like h3, .h2-like li, .h2-like a {
  font-family: var(--ff-main);
  font-weight: 600;
  font-style: normal;
  color: var(--clr-text);
  font-size: var(--fs-h2);
	line-height: 1.2;
}

h3, .h3-like, .h3-like p, .h3-like div, .h3-like span, .h3-like h1, .h3-like h2, .h3-like h3, .h3-like li, .h3-like a {
  font-family: var(--ff-main);
  font-weight: 600;
  font-style: normal;
  color: var(--clr-text);
  font-size: var(--fs-h3);
	line-height: 1.2;
}

.blanc, .blanc p, .blanc div, .blanc span, .blanc h1, .blanc h2, .blanc h3, .blanc li, .blanc a {
  color: #fff !important;
}

.clr-1, .clr-1 p, .clr-1 div, .clr-1 span, .clr-1 h1, .clr-1 h2, .clr-1 h3, .clr-1 li, .clr-1 a {
  color: var(--clr-main) !important;
}

.clr-2, .clr-2 p, .clr-2 div, .clr-2 span, .clr-2 h1, .clr-2 h2, .clr-2 h3, .clr-2 li, .clr-2 a {
  color: var(--clr-scnd) !important;
}

.ital, .ital p, .ital div, .ital span, .ital h1, .ital h2, .ital h3, .ital li, .ital a {
  font-style: italic !important;
}

.underline, .underline p, .underline div, .underline span, .underline h1, .underline h2, .underline h3, .underline li, .underline a {
  text-decoration: underline !important;
}

.underline-h:hover, .underline-h a:hover {
  text-decoration: underline !important;
}

.maj, .maj p, .maj div, .maj span, .maj h1, .maj h2, .maj h3, .maj li, .maj a {
  text-transform: uppercase !important;
}

.petit, .petit p, .petit div, .petit span, .petit h1, .petit h2, .petit h3, .petit li, .petit a {
  font-size: var(--fs-text-petit);
}

.grand, .grand p, .grand div, .grand span, .grand h1, .grand h2, .grand h3, .grand li, .grand a {
  font-size: var(--fs-text-grand);
}

.no-puces, .no-puces ul{
	list-style: none;
	padding-left: 0 !important;
}
strong {
  font-weight: 500 !important;
}

/* Graisses */
.fw300, .fw300 p, .fw300 div, .fw300 span, .fw300 h1, .fw300 h2, .fw300 h3, .fw300 li, .fw300 a {
	font-weight: 300 !important;
}

.fw400, .fw400 p, .fw400 div, .fw400 span, .fw400 h1, .fw400 h2, .fw400 h3, .fw400 li, .fw400 a {
	font-weight: 400 !important;
}

.fw500, .fw500 p, .fw500 div, .fw500 span, .fw500 h1, .fw500 h2, .fw500 h3, .fw500 li, .fw500 a {
	font-weight: 500 !important;
}

.fw600, .fw600 p, .fw600 div, .fw600 span, .fw600 h1, .fw600 h2, .fw600 h3, .fw600 li, .fw600 a {
	font-weight: 600 !important;
}

.fw700, .fw700 p, .fw700 div, .fw700 span, .fw700 h1, .fw700 h2, .fw700 h3, .fw700 li, .fw700 a {
	font-weight: 700 !important;
}

.fw800, .fw800 p, .fw800 div, .fw800 span, .fw800 h1, .fw800 h2, .fw800 h3, .fw800 li, .fw800 a {
	font-weight: 800 !important;
}

.fw900, .fw900 p, .fw900 div, .fw900 span, .fw900 h1, .fw900 h2, .fw900 h3, .fw900 li, .fw900 a {
	font-weight: 900 !important;
}

.full, .full .et_pb_image_wrap{
	width: 100% !important;
}

.full img{
	height: 100% !important;
	width: 100% !important;
	object-fit: cover;
	object-position: center;
}

/*----------BOUTONS----------*/

.et_pb_button, .et_pb_button_0, .et_pb_button_1, .bouton, .button {
  font-family: var(--ff-main) !important;
  font-weight: 500 !important;
}

/*----------PERSONNALISATION----------*/
.h2-espace h2 {
	padding: 20px 0 20px 0!important;
}
/* GRIDBUILDER */
.wpgb-facet button.wpgb-reset {
  margin: 8px!important;
}
.wpgb-facet>fieldset:last-child {
	margin-bottom: 0px!important;
}
/*GALERIES*/
.slb_details {
	display: none!important;
}
/*ANIMATION HOVER TEXTES*/
.highlight-hover {
    position: relative;
    display: inline-block;
    cursor: pointer;
    overflow: visible;
}
.highlight-hover::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0.1em;
    width: calc(100% + 15px);
    height: 0.8em;
    background: rgba(132, 140, 70, 0.4);
    transform: scaleX(0) skew(-2deg);
    transform-origin: left center;
    transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    border-radius: 3px;
    z-index: -1;
    filter: blur(0.4px);
}
/* L'animation se déclenche aussi quand trigger-highlight est hover */
.trigger-highlight:hover ~ .highlight-hover::before,
.highlight-hover:hover::before {
    transform: scaleX(1) skew(-2deg);
}
/*---------- MENU ----------*/
.menu-item a {
	padding: 0px!important;
}
.et_pb_menu__wrap {
	align-items: flex-start!important;
	padding-top: 15px!important;
}
.sous-menu, .sous-menu a, .sous-menu p {
	font-size: 14px!important;
}
/* IMAGES - enlever l'espace entre le bas de l'image et l'ombre de l'image */
.et_pb_image img {
    display: block;
    margin-bottom: 0;
    line-height: 0;
}
