/**
Theme Name: DEMAT
Author: Pascal Bourhis
Author URI: https://www.dimosoftware.fr/
Description: Theme enfant de WP Astra pour site DIMO TRESO.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: treso
Template: astra
*/



/* FIX : IE11 specific properties 
Utilisé pour le texte "J'accepte les termes et conditions énoncés dans notre page politique de confidentialité."
*/
_:-ms-fullscreen, :root .elementor-field-option { 
-ms-flex-preferred-size:auto !important;
flex-basis: auto !important;
}

/* FIX : Liens et input > retirer bordure au clic */
	a:focus {outline-style: none;}
	a:active {outline-style: none;}
	input:focus {outline-style: none;}

/* FIX : bullets points not centerd on Chrome and Safari : https://www.sitepoint.com/community/t/chrome-bullet-position-on-center-align-list/337050 */
ul {
  list-style-position:inside !important;
}

/* FIX VIMEO 
.ast-oembed-container {
  padding-top: 0;
}
*/

/* FIX Widget nav sur mobile qui ne sont pas centrés */
@media (max-width: 767px) {
	.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,
	.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a {
  	justify-content: center;
  	display: flex;
	}
}
@media (max-width: 767px) {
	.menugedp2p a {
		text-align: center !important;
   		display: block !important;}
	}
/* ________ DEBUT : UTILITAIRES ________ */

	/* Class no-link ajoutée dans Apparence/Menu aux entrées de menu qui n'ont pas de lien, ainsi le curseur de la souris ne se transformat pas en pointeur */
	.no-link > a:hover {cursor: default;}

	/* Masque certains éléments sur desktop */
	@media (min-width:1042px) {
  		.hidden-desktop {
  		display: none !important;
  		}
	}

	/* Masque certains éléments sur mobilep */
	@media (max-width:767px) {
  		.hidden-mobile {
  		display: none !important;
  		}
	}


	/* Ajoute une bordure au dessus d'un entrée de menu sur mobile */
	.ast-header-break-point .borduretop {border-top: 2px solid #e4e4e4;}
	/* Sauf sur la page Plan du site */
	.ast-header-break-point #plan-du-site .borduretop {border-top: none;}

	/* Suppression marges et/ou padding */
    .no-margin,
    .no-margin p {margin: 0;}

    .no-padding,
    .no-padding p {padding: 0;}

    .no-margin-padding,
    .no-margin-padding p {margin: 0; padding: 0;}

    .no-margin-bottom,
    .no-margin-bottom p {margin-bottom: 0;}

    .no-margin-top,
    .no-margin-top p {margin-top: 0;}

    .no-margin-bottom * {margin-bottom: 0 !important;}
	
	.no-margin-title .elementor-widget-heading,
	.no-margin-title.elementor-widget-heading {margin-bottom: 0;}

	.no-margin-img .elementor-widget-image,
	.no-margin-img.elementor-widget-image{margin-bottom: 0;}

	.elementor-widget-text-editor.no-margin ol,
	.elementor-widget-text-editor.no-margin ul,
	.elementor-widget-text-editor ul,
	.elementor-widget-text-editor ol {margin-left: 0;}

	.elementor-text-editor.no-margin ol,
	.elementor-text-editor.no-margin ul,
	.elementor-text-editor ul,
	.elementor-text-editor ol {margin-left: 0;}

	.no-margin .elementor-icon-box-wrapper ul {margin-left: 0;}

	.sommaire ul, .sommaire ol {margin-left:0}

	/* Pour ne pas mettre d'ombre portée sur un image d'article */
	.no-shadow {box-shadow: none !important;}

	/* Ne pas mettre certaines image en flottantes sur mobiles */

	@media (max-width:767px) {
		.imgfloatnone {
			float: none;
			display: block;
			margin: 0 auto 0 auto;
		}
	}




/* ________ FIN : UTILITAIRES ________ */



/* ________ DEBUT : TYPOS ________ */

b, strong {
    font-weight: normal;
    font-family: DIMOCenturyGothicBold;
}
cite, dfn, em, i {
	font-weight: normal;
	font-style:normal;
    font-family: "DIMOCenturyGothicItalic";
}
em b,
em strong,
i b,
i strong,
strong em,
strong i {
	font-style:normal;
	font-weight: normal;
    font-family: "DIMOCenturyGothicBoldItalic";
}
blockquote {
    font-style: normal;
    font-family: "DIMOCenturyGothicItalic";
	border: none;
	margin: 1.5em 10px;
	padding: 0.5em 10px;
	font-size: 100%;
	line-height: 2;
	
}
	blockquote strong,
	blockquote b {
    	font-style: normal;
    	font-family: "DIMOCenturyGothicBoldItalic";
	}
blockquote:before {
    color: #ccc;
    content: "‟";
    font-size: 6em;
    line-height: 0.1em;
    margin-right: 0.1em;
    vertical-align: -0.4em;
}
blockquote p:last-child {
    margin: 0;
    display: inline;
}

h2 em, .entry-content h2 em,
h3 em, .entry-content h3 em,
h4 em, .entry-content h4 em {
    font-family: "DIMOCenturyGothicBoldItalic",Helvetica,Arial,sans-serif !important;
}

/* Post excerpt 
.post .elementor-widget-theme-post-excerpt .elementor-widget-container:before {content: "►";}
*/


/* Posts Hn */
.post h2,.post h3,.post h4,.post h5,.post h6 {margin-bottom: 0.8em; margin-top: 1.5em;}

/* Pages Hn */

/* Posts blockquote */
.post blockquote {
	border:none;
  	margin: 1.5em 10px;
  	padding: 0.5em 10px;
	font-size: 100%;
	line-height: 2;	
}
.post blockquote:before {
  	color: #ccc;
  	content: "‟";
  	font-size: 6em;
  	line-height: 0.1em;
  	margin-right: 0.1em;
  	vertical-align: -0.4em;
}
.post blockquote p:first-child {display: inline;}
.post blockquote p:nth-child(2) {margin-top: 1em;}
.post blockquote .wp-caption {width: 100% !important;}
/* ________ FIN : TYPOS ________ */


/* ________ DEBUT : IMAGES ________ */

/* Effet ombre portée sur les images */
.dropshadow {
	filter: drop-shadow(0px 5px 10px rgba(0,0,0,.2));
	-webkit-filter: drop-shadow(0px 5px 10px rgba(0,0,0,.2));
	-webkit-transform: translateZ(0);
	-moz-filter: drop-shadow(0px 5px 10px rgba(0,0,0,.2));
}

/* Images */
.single img {margin-top: 1.5em; margin-bottom: 1em;}
.astra-logo-svg {margin-top: inherit !important;margin-bottom: inherit !important;}

/* Légendes des images */
.post .wp-caption .wp-caption-text {
    margin: .8075em 0;
    font-size: 0.7em;
    line-height: 1.3em;
}
/* ________ FIN : IMAGES ________ */


/* ________ DEBUT : LIENS ________ */


.linkspace a:before {content: "\00a0";}
.linkspace a:after {content: "\00a0";}


.elementor-widget-text-editor a,
.elementor-text-editor a,
.elementor-widget-theme-post-content a,
.elementor-icon-box-description a,
.elementor-image-box-description a,
.elementor-tab-content a,
.uael-accordion-content a,
.h3-underline .elementor-image-box-title a,
.h4-underline .elementor-image-box-title a,
#plan-du-site .elementor-widget-wp-widget-nav_menu a,
.fake-underscore h4 a,
.elementkit-tab-content a {
	color:var(--VertLien);
  	box-shadow: inset 0 -3px 0 var(--VertLien);
	padding-bottom: 3px;
}

.elementor-widget-text-editor a:hover,
.elementor-text-editor a:hover,
.elementor-widget-theme-post-content a:hover,
.elementor-icon-box-description a:hover,
.elementor-image-box-description a:hover,
.elementor-tab-content a:hover,
.uael-accordion-content a:hover,
.h3-underline .elementor-image-box-title a:hover,
.h4-underline .elementor-image-box-title a:hover,
#plan-du-site .elementor-widget-wp-widget-nav_menu a:hover,
.elementkit-tab-content a:hover {
	text-decoration: none;
  	background: var(--VertLien);
  	color:var(--Blanc);
}

.h3-underline a, .h4-underline a {line-height: 1.5em;}

.elementor-widget-text-editor a.urldansbleu,
.urldansbleu.elementor-widget-text-editor a,
.urldansbleu .elementor-testimonial__title a,
.urldansbleu .elementor-testimonial__text a,
.elementor-testimonial__title a {
	color: var(--Blanc);
  	box-shadow: inset 0 -3px 0 var(--Blanc);
	padding-bottom: 3px;
}
.elementor-widget-text-editor a.urldansbleu:hover,
.urldansbleu.elementor-widget-text-editor a:hover,
.urldansbleu .elementor-testimonial__title a:hover,
.urldansbleu .elementor-testimonial__text a:hover,
.elementor-testimonial__title a:hover {
    color: var(--Blanc);
    box-shadow: none;
}
.elementor-icon-list-items a {display: inline !important; text-decoration: underline;}

.ez-toc-link:hover {color:#fff !important;}

/* ________ FIN : LIENS ________ */


/* ________ DEBUT : BOUTON DANS ARTICLES ________ */
.bouton {
    text-decoration: none !important;
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1.2em;
    padding: 10px 15px 10px 15px !important;
    display: inline-block;
    margin-bottom: 15px;
    margin-top: 10px;
	border-radius: 20px;
	box-shadow: none !important;
}

.bouton.vert,
.bouton.vert:visited,
.bouton.dimo-vert,
.bouton.dimo-vert:visited {
    background: var(--Vert1);
    color: var(--Blanc);
}
#content a.bouton.vert:hover,
#content a.bouton.vert:active,
.bouton.vert:hover,
.bouton.vert:active,
#content a.bouton.dimo-vert:hover,
#content a.bouton.dimo-vert:active,
.bouton.dimo-vert:hover,
.bouton.dimo-vert:active {
    background: var(--Vert2);
    color: var(--Blanc);
}


.bouton.bleu,
.bouton.bleu:visited,
.bouton.dimo-bleu,
.bouton.dimo-bleu:visited {
    background: var(--Bleu1);
    color: var(--Blanc);
}

#content a.bouton.bleu:hover,
#content a.bouton.bleu:active,
.bouton.bleu:hover,
.bouton.bleu:active,
#content a.bouton.dimo-bleu:hover,
#content a.bouton.dimo-bleu:active,
.bouton.dimo-bleu:hover,
.bouton.dimo-bleu:active {
    background: var(--Bleu3);
    color: var(--Blanc);
}
/* ________ FIN : BOUTON DANS ARTICLES ________ */


/* ________ DEBUT : ASTRA ________ */
	
/* Pas de marge autour du logo */
.ast-logo-title-inline .ast-site-identity {padding: 0;}

/* Hauteur des lignes de sous-menu */
.ast-hfb-header .ast-builder-menu-1 .main-header-menu .sub-menu .menu-link {line-height: 1.3em;}

/* Couleur de fond du sous-menu (puisque qu'il ne fonctionne pas dans le customizer) */
.ast-hfb-header .ast-builder-menu-1 .main-header-menu .sub-menu .menu-link {background-color: #f8f8f8;}

/* Passe en gras les liens de sous-menu actifs */
.sub-menu .current-menu-item > a,
.sub-menu .current-menu-parent > a {  font-family: DIMOCenturyGothicBold,Helvetica,Arial,sans-serif;}

.main-header-bar {box-shadow: 0 2px 10px 0 rgba(36,50,66,.075);}

@media (min-width: 922px) { 
.hidedesktop {display: none !important;}
}
/* Décale les entrées de sous-menu sur mobile */
#ast-mobile-header .sub-menu li {padding-left: 15px;}

.ast-header-break-point .main-navigation ul .menu-item .menu-link {border:none;}

/* Logo */
.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg) {height: 100% !important;}
.elementor-widget-image a img.astra-logo-svg[src$=".svg"] {width: 111px !important;}


/* ________ FIN : ASTRA ________ */


/* Champs ACF date début et fin des singles événemetnts */
.datedebut {margin-left:auto;}
.datefin {margin-right:auto;margin-bottom: 20px !important;}
@media (max-width: 768px) {.datedebut, .datefin {width:100% !important; margin:0 auto !imporant;}}


/* ________ DEBUT : ELEMENTOR ________ */

#wp-admin-bar-elementor_edit_page > .ab-item::before {
  content: "\e813";
  font-family: eicons;
  top: 3px;
  font-size: 18px;
}

.quotes p:before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 59px;
  background: url(/wp-content/uploads/guillemets-temoignage-droite.svg) no-repeat;
  background-size: auto;
  background-size: 100%;
  position: relative;
  left: -10px;
  top: 35px;
}

/*
.elementor-page h3 {font-size: 1.255em;}
.elementor-page h4 {font-size: 0.955em; text-transform: uppercase; color: var(--FauxNoir);}
*/

/*
.informations-pratiques .elementor-widget-text-editor,
.informations-pratiques .elementor-widget-text-editor p {margin-bottom: 0;}
.informations-pratiques .elementor-widget-text-editor .elementor-widget-container {margin-bottom: 0 !important; padding-bottom: 0 !important;}
*/
.informations-pratiques .elementor-widget:not(:last-child) {margin-bottom: 0 !important;}
.cancelnotlastchild .elementor-widget:not(:last-child) {margin-bottom: 0 !important;}
.cancelnotlastchild.elementor-widget:not(:last-child) {margin-bottom: 0 !important;}
.cancelnotlastchild5px.elementor-widget:not(:last-child) {margin-bottom: 5px !important;}

.titrehover a:hover {color: #00456B !important;}

.ul-disclosure-closed ul {list-style-type: disclosure-closed;}

.elementor-field-type-html {margin-bottom: 0px !important;}

/* Message affiché après soumission de formulaire */
.elementor-message-success {
	position: relative;
	top: -123px;
	background: green;
	color: white;
	padding: 11px;
	text-align: center;
}
	@media (max-width: 768px) {.elementor-message-success {top: -130px;}}
	@media (max-width: 360px) {.elementor-message-success {top: -137px;}}

/* Effet ombre portée sur les images */
.img-dropshadow, .img-dropshadow img {
	filter: drop-shadow(10px 12px 20px rgba(0,0,0,.08));
	-webkit-filter: drop-shadow(10px 12px 20px rgba(0,0,0,.08));
	-webkit-transform: translateZ(0);
	-moz-filter: drop-shadow(10px 12px 20px rgba(0,0,0,.08));
}

/* Bords arrondis pour les images de blog */
#post-content img {
    border-radius: 5px 5px 5px 5px;
    /*box-shadow: 0px 10px 15px 0px rgba(0,0,0,0.13);*/
}
/* Mais on laisse l'icône avatar en cercle sans ombre portée */
#post-content .elementor-author-box__avatar img{
	border-radius: 100px;
	box-shadow: 0px 0px 20px -7px rgba(0, 0, 0, 0.2);
}
/* Pas de marges, pas d'ombre et pas d'arrondis pour les images de blog " Découvrez également " */
#post-content .elementor-post__thumbnail img {
  	margin-top: 0;
  	margin-bottom: 0;
	border-radius: 0 !important;
	box-shadow: none;
}
.elementor-editor-active .elementor-post__thumbnail img {
  	margin-top: 0;
  	margin-bottom: 0;
}
/* Pas de marge supérieure pour de blog le texte des " Découvrez également " */
#post-content .elementor-post__text {margin-top:0;}

/* Acceptation formulaires */
.elementor-field-type-acceptance label {
	display: inline !important;
    margin-left: 5px;
    font-size: 12px;
  	font-weight: normal;
	color: #666;
	line-height: 29px;
}
.elementor-field-type-acceptance p {display:inline; margin-bottom:0;}

/* Icone Box sans titre */
.icon-box-sans-titre .elementor-icon-box-title {display:none;}

/* Icone Box sans texte */
.icon-box-sans-texte .elementor-icon-box-description {display:none;}

/* Espaces avant texte des paragraphes de citation */
.citation p {text-indent: 2em;}
@media (max-width: 768px) {
	.citation p {text-indent: 1.6em;}
}

/* Widget Blockquote Elementor modifié */
.elementor-blockquote--skin-quotation .elementor-blockquote::before {content: "“" !important;}
.elementor-blockquote::before {text-align: center;}


/* Bords arrondis pour les images overlay de vidéos */
.elementor-widget-video img {border-radius: 20px;}

/* A VOIR
.elementor-field-type-acceptance label {
    margin-left: 5px;
    font-size: 12px;
    font-weight: normal;
}
.elementor-field-type-acceptance label a {text-decoration:underline;}

input.elementor-acceptance-field {
  border-width: 0px !important;
  border-radius:0px !important;
}
.elementor-message-success {
  position: relative;
  top: -123px;
  background: green;
  color: white;
  padding: 11px;
  text-align: center;
}
@media (max-width: 768px) {
  .elementor-message-success {
    top: -130px;
  }
}
@media (max-width: 360px) {
  .elementor-message-success {
    top: -137px;
  }
}
*/

.borderleft h1:before,
.borderleft h2:before, 
.borderleft h3:before,
.borderleft h4:before { content: "|"}



/* Widget Call To Action */
.elementor-cta__bg-wrapper {border-radius: 20px;}

/* ________ FIN : ELEMENTOR ________ */


/* DEBUT : FORMULAIRE WEBMECANIK */

/* FIX : bordure bleue sur les champs de formulaire actif */
.mauticform-input:focus, .mauticform-input:active {outline-style: none;}

/* LIGNES */
.mauticform-checkboxgrp-row {
  width: 100% !important;
 }

/* INPUT, SELECTBOX, TEXTAREA*/
.mauticform-input {
height: 37px !important;
font-size: 15px !important;
line-height: 15px !important;
background: white !important;
}

.mauticform-selectbox, .mauticform-input, .mauticform-textarea {
border-width: 0px 0px 2px 0px !important;
border-color: #A2B3BA47 !important;
font-size: 15px !important;
}

/* LABEL */
.mauticform_wrapper .mauticform-checkboxgrp-row label {
  font-size:12px !important;
  display: inline !important;
}

/* BOUTON*/
.mauticform-button-wrapper .mauticform-button {
    border: none !important;
    color: #fff !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    border-radius: 100px !important;
    width: 100% !important;
    /* couleur forcée 
	background: rgba(27,165,128,1) !important;
	*/
    height: 41px !important;
    font-size: 1.2em !important;
    padding: 0 !important;
    margin-top: 10px !important;
    text-shadow: none !important;
 }

/* couleur forcée Hover
.mauticform-button-wrapper .mauticform-button:hover {
    background: #159D73 !important;
 }
*/

.mauticform-button-wrapper .mauticform-button i {
    font-size: 1.2em !important;
 }

/* Choix du nombre de colonnes */
.mauticform-innerform {
  column-count: 1 !important; /* Divise le contenu du formulaire en deux colonnes */
  column-gap: 20px !important;
}

/* Mise en forme des champs sur focus */
.mauticform_wrapper .mauticform-selectbox:focus,
.mauticform_wrapper .mauticform-input:focus,
.mauticform_wrapper .mauticform-text textarea:focus {
    -webkit-box-shadow: 0 0 0 1px rgba(0,0,0,.2) inset !important;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.2) !important;
    outline: 0 !important;
}

/* Lien acceptation */
.acceptation a {text-decoration: underline;}

/* FIN : FORMULAIRE WEBMECANIK */



/* DEBUT : HEADER */

header {box-shadow: 0 2px 10px 0 rgba(36,50,66,.075);}


#topbar .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 0 !important;
}

.menu-highlight {
  height: 32px;
  margin-top: 24px !important;
}
.menu-highlight .elementskit-submenu-indicator {
  color: #fff !important;
}
.menu-highlight  > a {
color: #ffffff !important;
background: #3558a3;
border-radius: 10px;
padding: 0px 10px 0px 10px !important;
transition: all 0.2s linear;
line-height:82px !important;;
}
/*
.menu-highlight > a:hover {
color: #ffffff !important;
background:   #00456b;
border-color: #00456b;
}
*/
li.menu-highlight:hover > a{
background: #00456b !important;
}


/* FIN : HEADER */

/* Liste FAQ */
.listefaq a:before {content: "•";}
.listefaq a:hover {text-decoration: underline;}
.listefaqdansbleu a {color: #F5F7FF;}
.listefaqdansbleu h2 a:hover {color: #3DB49F !important;}