/*
Theme Name: Le Flibusthème
Author: Agence Les Flibustiers
Author URI: https://les-flibustiers.com
Description: Theme enfant de Divi par Les Flibustiers
Version: 3.0.0
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%;
}

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

:root {
  /* Fonts */
  --ff-main: montserrat, sans-serif;
  --ff-accent: 'Olivier', sans-serif;

  /* Taille de typo */
  --fs-h1: clamp(2rem, 8vw, 5rem);
  --fs-h2: clamp(1.6rem, 7vw, 2.5rem);
  --fs-h3: clamp(1.2rem, 5vw, 2rem);
  --fs-text: 20px;
  --fs-text-petit: 16px;
  --fs-text-grand: 22px;

  /* Couleurs */
  --clr-main: #0033ff;
  --clr-scnd: #ff0000;
  --clr-thrd: #00ff4c;
  --clr-text: #0F4A60;
}

@media (max-width: 980px) {
  :root {
    --fs-text: 14px;
    --fs-text-petit: 12px;
    --fs-text-grand: 17px;
  }
}

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: 400;
  font-style: normal;
  color: var(--clr-text);
  font-size: var(--fs-text);
  line-height: 1.1;
}

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: 700;
  font-style: normal;
  color: var(--clr-text);
  font-size: var(--fs-h1);
  line-height: 1.1;
}

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: montserrat, sans-serif!important;
  font-weight: 900;
  font-style: normal;
  color: #0F4A60;
  font-size: var(--fs-h2);
  line-height: 1.1;
}

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: montserrat, sans-serif!important;
  font-weight: 900;
  font-style: normal;
  color: #0F4A60;
  font-size: var(--fs-h3);
  line-height: 1.1;
}

.accent,
.accent p,
.accent div,
.accent span,
.accent h1,
.accent h2,
.accent h3,
.accent li,
.accent a {
  font-family: var(--ff-accent) !important;
}

.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;
}

.clr-3,
.clr-3 p,
.clr-3 div,
.clr-3 span,
.clr-3 h1,
.clr-3 h3,
.clr-3 h3,
.clr-3 li,
.clr-3 a {
  color: var(--clr-thrd) !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: 800 !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;
  height: 100% !important;
}

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

/* Utile pour les titres de cartes gridbuilder, maximum 2 lignes puis ... */
.titre-crop {
  display: -webkit-box !important;
  -webkit-line-clamp: 2; /* Nombre de lignes maximum souhaité */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

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



/*----------SIGNATURE FOOTER----------*/
/* © 2025 - Réalisé avec fierté par l'agence <a href="https://www.les-flibustiers.fr" target="_blank">• les flibustiers •</a> */
.trademark,
.trademark .et_pb_text_inner {
  text-align: center;
}

.trademark a {
  text-transform: uppercase;
  font-weight: 600;
  color: inherit;
  transition: color 0.3s ease;
}

.trademark a:hover {
  color: var(--clr-scnd);
}
