/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    ALCEN Theme
 Author:         Alexandre Lassaigne
 Author URI:     https://www.alcen.com
 Template:       Divi
 Version:        1.0.0
*/

/*** Variables ***/
/*
Bleu ALCEN : #4066aa
Orange ALCEN : #ec7404
*/
:root {
    --bs-blue: #4066aa;
    --bs-orange: #ec7404;
    --bs-green: #82bd48;
    --bs-gray: var(--bs-gray-600);

    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;

    --bs-primary: #4066aa;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;

    --bs-primary-rgb: 13,110,253;
    --bs-secondary-rgb: 108,117,125;
    --bs-success-rgb: 25,135,84;
    --bs-info-rgb: 13,202,240;
    --bs-warning-rgb: 255,193,7;
    --bs-danger-rgb: 220,53,69;
    --bs-light-rgb: 248,249,250;
    --bs-dark-rgb: 33,37,41;
    --bs-white-rgb: 255,255,255;
    --bs-black-rgb: 0,0,0;
    --bs-body-color-rgb: 33,37,41;
    --bs-body-bg-rgb: 255,255,255;

    --bs-font-sans-serif: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;

    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --bs-gradient-blue: linear-gradient(180deg, rgba(64, 102, 170, 1) 0%, rgba(64, 102, 170, 0) 100%);

    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #212529;
    --bs-body-bg: #fff;

    --bs-border-width: 1px;
    --bs-border-style: solid;
    --bs-border-color: var(--bs-gray-400);
    --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
    --bs-border-radius: 0;
    --bs-border-radius-sm: 0;
    --bs-border-radius-lg: 0;
    --bs-border-radius-xl: 0;
    --bs-border-radius-2xl: 0;
    --bs-border-radius-pill: 0;

    --bs-link-color: var(--bs-blue);
    --bs-link-hover-color: var(--bs-orange);

    --bs-code-color: #d63384;
    --bs-highlight-bg: #fff3cd;

    --swiper-theme-color: var(--bs-blue) !important;
}


.gray {color:#888;}

.img-h-45 {
	height: 100%;
	max-height: 45px;
	width: auto;
}
.et_pb_sticky.et_pb_sticky--top #logo img {
    height: 35px;
    -webkit-transition: all 1s ease-in-out;
    -moz-transition: all 1s ease-in-out;
    -o-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
}
.border {
	border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}
body {
    font-family: var(--bs-body-font-family) !important;
    font-size: var(--bs-body-font-size) !important;
    font-weight: var(--bs-body-font-weight) !important;
    line-height: var(--bs-body-line-height) !important;
    color: var(--bs-body-color) !important;
    text-align: var(--bs-body-text-align) !important;
    -webkit-text-size-adjust: 100% !important;
}
footer,
header,
.bg-gray,
.et_pb_section_0_tb_header.et_pb_section.bg-gray {
    background-color: var(--bs-gray-200) !important;
}
.et_pb_section_0_tb_header.et_pb_section.bg-gray.et_pb_sticky.et_pb_sticky--top {
    box-shadow: rgba(0,0,0,.1) 0 6px 12px 0;
}
.bg-image-blur:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.5);
    position: absolute;
    top: 0;
    left: 0;
}
h1.entry-title {
	font-size: 3.5rem;
	font-weight: 300;
	color:var(--bs-green);
}
sup, sub {
	font-size: 75%;
}
a:hover {color: #EC7406;}

/**
 * Menu
 */
.et_pb_social_media_follow_0_tb_header li.et_pb_social_icon a.icon:hover:before,
.et-l .et_pb_social_media_follow_1_tb_header li.et_pb_social_icon a.icon:hover:before,
#slide-in-open:hover,
#slide-in-open:hover::before,
#slide-in-open-xs:hover,
#slide-in-open-xs:hover::before{
	color: var(--bs-green) !important;
	background: transparent;
	border-color: var(--bs-green);
	transform: scale(1.05);
}

.slide-in-menu-container {
  -webkit-transition: all 0.5s ease !important;
  -moz-transition: all 0.5s ease !important;
  -o-transition: all 0.5s ease !important;
  -ms-transition: all 0.5s ease !important;
  transition: all 0.5s ease !important;
	display:none;
}
.slide-in-menu-container.slide-in-menu {
	right: 0 !important;
	opacity: 1 !important;
	display:block;
}

#slide-in-open,
#slide-in-open-xs {
	cursor: pointer;
	z-index:10000;
	border: none;
	background: none;
	transition: all .3s;
	width:auto;
	border: solid 1px var(--bs-gray);
	background-color: var(--bs-gray);
	color: var(--bs-white);
}
#slide-in-open:hover,
#slide-in-open-xs:hover {
	cursor: pointer;
}
#slide-in-open::before,
#slide-in-open-xs::before {
	display: inline-block;
	color: #fff;
	-webkit-transition: color .3s;
	transition: all .3s;
	position:relative;
	z-index:10;
	font-size: 30px;
	font-family: ETmodules;
	speak: none;
	font-style: normal;
	font-weight: 400;
	font-variant: normal;
	text-transform: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-shadow: 0 0;
	content: "\61";
	direction: ltr;
	vertical-align: middle;
}
.et-db #et-boc .et-l .et_pb_social_media_follow_network_1_tb_header a#slide-in-open.open.icon,
#slide-in-open.open,
#slide-in-open-xs.open {
	color:var(--bs-green);
	background-color: transparent !important;
	border-color: var(--bs-green) !important;
}
#slide-in-open.open::before,
#slide-in-open-xs.open::before {
	content: "\4d";
	color:var(--bs-green);
}
#slide-in-open::after,
#slide-in-open-xs::after {
	display: inline-block;
	content: "Menu";
	color: #fff;
	-webkit-transition: color .3s;
	transition: all .3s;
	position: relative;
	z-index: 10;
	/* font-size: 16px; */
	speak: none;
	font-style: normal;
	font-weight: 300;
	font-variant: normal;
	text-transform: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-shadow: 0 0;
	direction: ltr;
	padding: 0 10px 0 5px;
	vertical-align: middle;
	height: 100%;
	top: 0;
}
#slide-in-open:hover::after,
#slide-in-open-xs:hover::after,
#slide-in-open.open::after,
#slide-in-open-xs.open::after {
	color: var(--bs-green);
}
#header .et_pb_row_1_tb_header.slide-in-menu-container {
	top:95px !important;
}
#header.et_pb_sticky.et_pb_sticky--top .et_pb_row_1_tb_header.slide-in-menu-container {
	top:65px !important;
}
.et_pb_social_icon a {
	-webkit-transition: .3s ease-in-out;
	-moz-transition: .3s ease-in-out;
	-o-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.et_pb_social_icon a:hover {
	transform: scale(1.05);
}

.et_pb_social_media_follow li {
	margin-bottom:0 !important;
}
#header-section {
	box-shadow: rgba(0,0,0,.1) 0 6px 12px 0;
}

#btn-contact {
	font-family: var(--bs-font-sans-serif) !important;
	font-size: 16px;
	width: auto;
	padding: 0 9px;
	background-color: var(--bs-green);
	border:1px solid var(--bs-green);
}
#btn-contact::before {
	font-family: var(--bs-font-sans-serif) !important;
	content: "@ Contact";
	width: auto;
}
#btn-contact:hover {
	background-color: transparent !important;
	color: var(--bs-green);
	border:1px solid var(--bs-green);
}

#menu-menu-haut {
	list-style: none;
	display: inline-flex;
	padding:0;
}
#menu-menu-haut li {
	margin: 0 1.5rem;
	font-size: 24px;
	font-weight: 300;
}
#menu-menu-haut li a {
	color: #FFF;
}
#top-links a {
	color: #949597;
}
#top-links a:hover {
	color: var(--bs-green);
	text-decoration: underline;
}
#menu-menu-haut li a:after {
	display:block;
	content: '';
	border-bottom: solid 1px var(--bs-white);
	transform: scaleX(0);
	transform-origin:100% 50%;
	transition: transform 250ms ease-in-out;
}
#menu-menu-haut li a:hover {
	color: var(--bs-white);
}
#menu-menu-haut li a:hover:after {
	transform: scaleX(1);
	transform-origin:  0% 50%;
}

/**
 * Form
 */
body .gform_wrapper h2.gform_title {
    display: none !important;
}
body .gform_wrapper .gform_body .gform_fields .gfield select {
	border: 1px solid red;
}

/**
 * Bouton
 */
 .btn.btn-outline-primary,
 .btn.btn-outline-secondary {
     border-radius: var(--bs-border-radius);
 }
 .btn.btn-outline-primary {
     background-color: rgba(0,0,0,.1);
     border-color: var(--bs-blue);
     color: var(--bs-blue);
 }
 .btn.btn-outline-primary:hover,
 .btn.btn-outline-primary:focus {
     background-color: var(--bs-body-bg);
     color: var(--bs-link-hover-color);
     border-color: var(--bs-link-hover-color);
 }

 .btn.btn-light:hover {
    color: var(--bs-link-hover-color);
    border-color: var(--bs-link-hover-color);
    background-color: var(--bs-body-bg);
 }

 .btn,
 .logo-footer img {
     -webkit-transition: .3s ease-in-out;
     -moz-transition: .3s ease-in-out;
     -o-transition: .3s ease-in-out;
     transition: .3s ease-in-out;
 }
 .btn:hover {
     transform: scale(1.05);
 }
 .logo-footer:hover img {
     transform: scale(1.2);
 }
 .btn-check:focus+.btn-outline-primary,
.btn-outline-primary:focus {
	box-shadow: none;
}

/**
 * Header
 */
.et-social-home a:before {
    font-size: 20px;
    height: 30px;
    width: 30px;
    display: block;
    color: #fff;
    -webkit-transition: color .3s;
    transition: color .3s;
    position: relative;
    z-index: 1000;
	font-family: ETmodules;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
	text-align: center;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-shadow: 0 0;
    direction: ltr;
}
.et-social-home a:before {
	content: "\e074";
}
.et-social-home a:hover:before {
	color: var(--bs-green);
}
#logo-hidden {
	display:none;
}
#logo-hidden img {
	height: 33px;
}
#logo img {
    height: 70px;
    width: auto;
}

/**
 * Footer
 */
#footer-alcen .btn.btn-outline-primary {
	background-color: rgba(255,255,255,.8);
	border-color: var(--bs-blue);
	color: var(--bs-blue);
}

#alcen-rse-section .btn.btn-outline-primary{
	background-color: rgba(255,255,255,.2);
	border-color: var(--bs-white);
	color: var(--bs-white);
}
#footer-alcen .btn.btn-outline-primary:hover,
#alcen-rse-section .btn.btn-outline-primary:hover {
	border-color: var(--bs-orange);
	color: var(--bs-orange);
}

/**
 * GPRD
 */
.cky-revisit-bottom-left {
	right: 0 !important;
	left: auto !important;
	bottom: 85px !important;
	border-radius: 0 !important;
	width: 40px !important;
	height: 40px !important;
}
.et_pb_scroll_top.et-pb-icon {
	border-radius: 0;
	background-color: #acd682;
	color: #FFF;
}

/**
 * Modal
 */
.modal-content {
	background-color: #fff;
	border: 1px solid var(--bs-green);
	border-radius: 0;
	box-shadow: 0px 0px 20px 0 rgba(0,0,0,.5);
}
.modal-header {
	border-bottom: 1px solid #fff;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}


 /**
 * Container
 */
 .container,
 .container-section .et_pb_row {
     padding-right: var(--bs-gutter-x,.75rem) !important;
     padding-left: var(--bs-gutter-x,.75rem) !important;
     width: 100% !important;
 }
 #main-content .container:before,
 #main-content .container-section .et_pb_row:before {
     content: "";
     position: absolute;
     top: 0;
     height: 100%;
     width: 0;
     background-color: transparent;
 }
 @media (min-width:576px) {
	.container, .container-sm, .container-section .et_pb_row {
		max-width: 540px !important;
	}
}
@media (min-width:768px) {
	.container, .container-md, .container-sm,
    .container-section .et_pb_row {
		max-width: 720px !important;
	}
}
@media (min-width:992px) {
	.container, .container-lg, .container-md, .container-sm,
	.container-section .et_pb_row {
		max-width: 960px !important;
	}
}
@media (min-width:1200px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl,
	.container-section .et_pb_row {
		max-width: 1140px !important;
	}
    #alcen-rse-section .et_pb_row {
		display: flex;
		align-items:center;
	}
}
@media (min-width:1400px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl,
	.container-section .et_pb_row {
		max-width: 1320px !important;
	}
    #alcen-rse-section .et_pb_row {
		display: flex;
		align-items:center;
	}
}
@media (min-width:1500px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl, .container-xxxl,
    .container-section .et_pb_row {
		max-width: 1440px !important;
	}
    #alcen-rse-section .et_pb_row {
		display: flex;
		align-items:center;
	}
}