/*!
* SEAS CMS Style Theme
* @author: MB, Thatoo
*
*/


/* ----------------------------- */
/* 0. General                    */
/* ----------------------------- */

@import url('../icon/icon.css');
@import url('../font/webfonts.css');
@import url('animation.css');

:root {
  --main-color: #50596c; /*body color*/
  --color-1: #38547a; /*first color of SeaCms logo*/
  --color-2: #3e7f8a; /*second color of SeaCms logo*/
  --color-3: #44ac9b; /*third color of SeaCms logo*/
  --color-4: #49d7ac; /*fourth color of SeaCms logo*/
  --color-5: #a4ebd4; /*fiveth color of SeaCms logo*/
	--color-6: #e4f9f2; /*variation color of SeaCms logo*/
  --white-color: #ffffff;
  --light-color: #f5f5f5;
  --grey-color: #e1e1e1;
  --dark-color: #3f4655;
	--red-color: #b3344c;
	--green-color: #84b334;
  --orange-color: #de7b2c;
}

/* ----------------------------- */
/* 1. Main Elements              */
/* ----------------------------- */

* {
    scroll-behavior: smooth;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  flex: 1 100%;
}

select {
  -webkit-appearance: menulist-button;
}

body {
	transition: margin-top .2s linear;
}

.body-mt { margin-top: 2.5rem ; }
.pt-78 { padding-top: 4.875rem; }
.pb-78 { padding-bottom: 4.875rem; }
.view-source { text-align: left; white-space: pre-wrap; }
.pointer { cursor: pointer !important; }
.editable-hidden { display: none; }

/* Titles */
h1, h2, h3 {
  font-family: 'Luciole', sans-serif;
}

/* Links */
a { color: var(--color-1);}
a:focus, a:hover, a:active { color: var(--color-3);}

/* Background Color */
.bg-white { background-color: var(--white-color);}
.bg-light { background-color: var(--light-color);}
.bg-blue { background-color: var(--color-1);}
.bg-glaz { background-color: var(--color-3);}
.bg-glaz:hover { background: var(--color-2);}
.bg-grey { background-color: var(--grey-color);}

/* Color */
.color-white { color: var(--white-color);}
.color-light { color: var(--light-color);}
.color-grey { color: var(--grey-color);}
.color-dark { color: var(--dark-color);}
.color-blue { color: var(--color-1);}
.color-glaz { color: var(--color-3);}
.color-red { color: var(--red-color);}
.color-green { color: var(--green-color);}
.color-orange { color: var(--orange-color);}
.checked { color: var(--green-color) !important; opacity: 1 !important; }

/* Border */
.border-rounded { border-radius: 0.5rem;}
.border-grey { border: 2px solid var(--grey-color);}
.shadow { box-shadow: 0 5px 30px 0 rgb(40 40 40 / 21%);}

/* Hide elements */
@media screen and (max-width: 576px) {
  .mobile-hidden {display:none; }
}
@media screen and (max-width: 992px) {
  .tablet-hidden {display:none; }
}
@media (min-width: 1400px) {
	.large-screen-hidden { display: none; }
}
.no-decoration, .no-decoration:hover { text-decoration: none;}

.highlight {
  display: inline;
  background: linear-gradient(120deg, var(--color-5), var(--color-6));
  background-repeat: no-repeat;
  background-size: 100% 70%;
  background-position: 20% 60%;
  border-radius: 20% 30% 35% 24%;
  padding: 0.3rem 0.2rem;
}

blockquote {
  background: var(--light-color);
  border-left: 0.5rem solid var(--grey-color);
  margin: 1.5rem 0.5rem;
  padding: 0.5rem 0.5rem;
  color: var(--color-1);
  font-style: italic;
}

blockquote::after {
  color: var(--grey-color);
  font-family: 'moon';
  content:"\e900";
  font-style: normal;
  font-size: 2.5rem;
  line-height: 0.2rem;
  margin-left: 0.25rem;
  vertical-align: -0.6rem;
}

/* ----------------------------- */
/* 2. Button                     */
/* ----------------------------- */
.btn, .button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0.75rem 1rem;
  cursor: pointer;
  user-select: none;
  transition: 0.25s;
  transition-property: box-shadow, background-color, color, border;
  text-decoration: none;
  border: none;
  box-shadow: none;
}
.btn--line, .button--line {
  border: 1px solid var(--color-1);
  color: var(--color-1);
}
.btn--line:hover, .button--line:hover {
  background: var(--color-1);
  border: 1px solid var(--color-1);
  color: var(--white-color);
}

.btn:focus, .button:focus {
   -webkit-tap-highlight-color: transparent;
}
.btn--small, .button--small {
  padding: 0.25rem 0.75rem;
  font-size: 0.8em;
}
.btn--big, .button--big {
  padding: 1rem 1rem;
  font-size: 1.4em;
}
.btn--block, .button--block {
  width: 100% !important;
  display: block;
}
.btn--unstyled, .button--unstyled {
  padding: 0;
  border: none;
  text-align: left;
  background: none;
	border-radius: 0;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.btn--unstyled:focus, .button--unstyled:focus {
  box-shadow: none;
	outline: none;
}

/* Floating button */
.btn.fixed {
  background-color: var(--color-1);
	color: var(--white-color);
	display: none;
	position: fixed;
	z-index: 999;
	width: auto;
	left: 1.25rem;
	bottom: 1.25rem;
	margin: 0;
	padding: 0.2rem 1rem;
	border-radius: 100%;
	opacity: 0.6;
	text-shadow: none;
}

.btn.fixed.top {
	right: 1.25rem;
	left: inherit;
}

.btn.edit, .btn.add, .btn.top {
	height: 2.4rem !important;
	padding: 0.4rem 0.6rem 0.6rem;
  font-size: 1.25rem !important;
}

.btn.fixed.edit {
	transition: right .1s;
	opacity: 0.2;
	left: 1.25rem;
	right: initial;
}

.btn.fixed.add {
	margin-bottom: 0.625rem;
	transition: bottom .3s, right .1s, opacity .3s;
	z-index: 998;
}

.btn.fixed.construction {
	left: 4.375rem;
	right: initial;
	opacity: 0.6;
	display: block;
	padding-left: 0.5rem;
	border-radius: 8px;
}

.btn.fixed:hover {
	opacity: 1 !important;
}

/* ----------------------------- */
/* 3. Burger Button              */
/* ----------------------------- */

header nav .burger-button {
  display: none;
	position: absolute;
	overflow: hidden;
	float: right;
	top: 10px;
	right: 0;
	margin: 0 1rem;
	padding: 0;
	width: 30px;
	height: 30px !important;
	font-size: 0;
	text-indent: -9999px;
	appearance: none;
	box-shadow: none;
	border-radius: 3px;
	border: none;
	cursor: pointer;
	transition: background 0.3s;
	background-color: var(--color-3);
}

.burger-button span {
	position: absolute;
	top: 14px;
	left: 6px;
	right: 6px;
	height: 2px;
	background: white;
	transition: background 0.3s;
}

.burger-button span::before,	.burger-button span::after {
	position: absolute;
	display: block;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
	content: "";
	transition-duration: 0.3s, 0.3s;
	transition-delay: 0.3s, 0s;
}

.burger-button span::before { top: -6px; transition-property: top, transform; }
.burger-button span::after { bottom: -6px; transition-property: bottom, transform; }

/* active state, i.e. menu open */
.burger-button.active { background-color: #cb0032; }
.burger-button.active span { background: none; }
.burger-button.active span::before { top: 0; transform: rotate(45deg);	}
.burger-button.active span::after { bottom: 0; transform: rotate(-45deg); }
.burger-button.active span::before,
.burger-button.active span::after { transition-delay: 0s, 0.3s; }


/* ----------------------------- */
/* 4. Elements Install           */
/* ----------------------------- */

.install-img {
  max-width: 250px;
}

.card::before {
  content: "";
  position: absolute;
  top: 2.25rem;
  left: 50%;
  transform: translateX(-50%);
  height: 4px;
  width: calc(100% - 40rem);
  background-color: var(--color-3);
}

/* ----------------------------- */
/* 5. Elements Login             */
/* ----------------------------- */

.wrapper {
  color: var(--grey-color);
  position: relative;
  display: inline-block;
  vertical-align: text-bottom;
  text-align: center;
  top: 2px;
  width: 22px;
  margin-left: -28px;
}

#login-email, #login-password {
  width: 100%
}

#internal-login button {
  border-bottom: 2px solid var(--color-3);
}

/* ----------------------------- */
/* 6. Responsive                 */
/* ----------------------------- */
@media (max-width: 992px)
{
	header nav .burger-button {
		display: block;
	    z-index: 12;
	}

	header nav > ul {
		background-color: var(--white-color);
		display: block !important;
		position: fixed !important;
		left: 0;
		top: 0;
		bottom: 0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		width: 300px;
		margin: 0;
		padding-top: 0.5rem;
		z-index: 10;
		text-align: center;
		transition-duration: 0.3s;
		transform: translateX(-100%);
		-webkit-transform: translateX(-100%);
	}
		header nav li {
			float: none;
			padding: 0;
			margin-left: 0 !important;
			border-radius: 5px;
			transition: background 0.3s;
		}
			header nav li:hover { background-color: #dfdfdf; }
			header nav li a {
				display: block;
				padding: 0.5rem;
			}

	/* Raz du header */
	.responsive-nav header { position: inherit; }
	/* Ouvertur du menu */
	.responsive-nav header nav ul {
		transform: translateX(0);
		-webkit-transform: translateX(0);
	}
	/* Overlay menu */
	.responsive-nav .responsive-overlay {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: rgba(0, 0, 0, 0.6);
	}
	/* Fixe le burger*/
	.responsive-nav .burger-button { position: fixed; }

	/* mode edition : menu d'ajout invisible */
	.dragger { display: none !important; }
	#add-nav { display: none !important; }
}

/* ----------------------------- */
/* 7. Elements Admin             */
/* ----------------------------- */

#admin-bar {
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
	background-color: rgba(240, 240, 240, 0.8);
	box-sizing: padding-box;
	text-shadow: none;
	font-family: 'Luciole', sans-serif;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 12;
	transition: background-color .3s linear;
	animation: slide-down .3s 1 ease-out;
}

#admin-bar:hover {
	background-color: rgba(240, 240, 240, 0.95);
}

#admin-bar #list-content i,
#admin-bar #tutoriel i {
	cursor: pointer;
	color: color: var(--main-color);
}

#admin-bar #list-content i:hover,
#admin-bar #tutoriel i:hover {
	color: var(--dark-color);
}

#admin-bar #user i {
	color: var(--main-color);
	cursor: pointer;
}

#admin-bar #user i:hover {
	color: var(--dark-color);
}

#admin-bar #user .absolute {
	position: absolute;
}

#admin-bar #user .absolute .load {
	min-width: 298px;
}

#admin-bar #user .absolute .load .scroll {
	overflow-y: auto;
	max-height:  500px;
}

#admin-bar #user .absolute i {
	color: var(--main-color);
	transition: color .3s;
}

#admin-bar #user .absolute i:hover {
	color: var(--dark-color);
}

#admin-bar #user .absolute li.next {
	background-color: #dbdfe0;
	box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2);
	border-radius: 0 0 3px 3px;
	text-align: center;
}

#admin-bar input {
	padding: initial;
}

#admin-bar input, .tooltip input, .ui-dialog input {
	background-color: transparent;
	color: var(--main-color);
	border: none !important;
	border-bottom: 1px dotted #9cabad !important;
	font-family: 'Luciole', sans-serif;
	box-shadow: none;
	border-radius: 0;
	height: auto;
}

/* title */
#admin-bar #meta-responsive {
	color: var(--main-color);
	cursor: pointer;
}

/* description */
#admin-bar #meta > div {
	display: none;
	position: absolute;
}

#admin-bar #meta:not(.nofire):hover > div {
	display: block;
}

#admin-bar #close {
	cursor: pointer;
	transition: color .3s linear;
}

#admin-bar select {
	background: transparent;
	border: none;
}

#admin-bar button, .tooltip button, .dialog button {
	background-color: var(--main-color);
	border-radius: 5px;
	border: 0px solid var(--dark-color);
	display: inline-block;
	padding: 2px 8px;
	height: auto;
	cursor: pointer;
	color: var(--white-color);
	font-family: 'Luciole', sans-serif;
	text-decoration: none;
	transition: background-color .3s;
}

#admin-bar button:hover, .tooltip button:hover, .dialog button:hover {
	background-color: var(--dark-color);
}

#admin-bar button:active, .tooltip button:active, .dialog button:active {
	position: relative;
	top: 1px;
}

button.to-save {
	background-color: var(--red-color) !important;
	color: white;
}

button.saved {
	background-color: var(--green-color) !important;
}

/* Activation button to put the site online */

#admin-bar .switch label {
	background: var(--red-color);
	box-shadow: inset 0 2px 5px 0 rgba(0, 0, 0, 0.1), inset 0 -1px 0 0 rgba(0, 0, 0, .1);
	position: relative;
	display: inline-block;
	min-width: 2.5rem;
	height: 1.125rem;
	margin: 0;
	border-radius: 5px;
	line-height: 15px;
	vertical-align: middle;
	font-style: normal;
	color: var(--white-color);
	text-shadow: 0 1px 1px rgba(0, 0, 0, .1);
	cursor: pointer;
	transition: all .3s ease-in;
}

#admin-bar .switch label:before {
	font-family: 'moon';
	content: '\e915';
	margin-left: 1.125rem;
	transition: all .2s ease;
}

#admin-bar .switch input[type=checkbox]:checked ~ label{
	background: var(--green-color);
}

#admin-bar .switch input[type=checkbox]:checked ~ label:before {
	font-family: 'moon';
	content: '\e914';
	margin-left: 0.375rem;
}

#admin-bar .switch input[type=checkbox]:checked ~ label i {
	right: -0.25rem;
}

#admin-bar .switch label i {
	background: var(--white-color);
	box-shadow: inset 0 -3px 3px 0 rgba(0, 0, 0, 0.1), inset 0 -1px 1px 0 rgba(255, 255, 255, 0.4), 0 2px 0 0 rgba(0, 0, 0, 0.2);
	position: absolute;
	display: block;
	top: -2px;
	margin-left: -5px;
	width: 1.25rem;
	height: 1.25rem;
	border-radius: 1.25rem;
	transition: all .2s ease;
}

#admin-bar .switch label i:before {
	background: #efefef;
	box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.1);
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0.625rem;
	height: 0.625rem;
	margin: -5px 0 0 -5px;
	border-radius: 1.125rem;
}

#admin-bar .switch label:hover i {
	box-shadow: inset 0 -3px 3px 0 rgba(0, 0, 0, 0.1), inset 0 -1px 1px 0 rgba(255, 255, 255, 0.4), 0 2px 0 0 rgba(0, 0, 0, 0.3);
}

#admin-bar .switch label:active i:before {
	box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
}

/* ----------------------------- */
/* 8. Progress bar               */
/* ----------------------------- */

#progress {
	width: 0;
	height: 4px;
	top: 30px;
	position: fixed;
	z-index: 12;
	background-color: var(--color-3);
	transition: all 1s;
}


/* ----------------------------- */
/* 9. Tooltip                    */
/* ----------------------------- */
.tooltip, .ui-autocomplete {
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
	background-color: rgba(245, 245, 245, 0.95) !important;
	border-radius: 5px;
	overflow: hidden;/* => fait que l'on ne voie pas les elements du menu sortir lors du drag */
}

.tooltip label {
	margin-top: 0;
}

.ui-autocomplete li {
	font-size: .9em;
}

#admin-bar #save-user i {
  color: var(--white-color)!important;
}

/* Taille max pour l'affichage de l'image de partage */
#admin-bar #og-image img {
	max-width: 320px;
	max-height: 320px;
}

/* HEADER */
header {
	z-index: 10;
	position: relative;
}

/* Menu de navigation */
header nav ul {
	position: relative;
}

header nav .tooltip ul {
	background-color: transparent;
	box-shadow: none;
}

header nav li {
	position: relative;
}

header nav .burger-button.active + ul {
	padding-top: 4.5rem;/* Pour que le menu en responsive soit bien en dessous de l'admin bar */
}

/* Barre pour déplacer un élément du menu */
.dragger {
	background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACAQMAAABIeJ9nAAAABlBMVEUAAAC/v79T5hyIAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjaGBgAAABhACBKN161wAAAABJRU5ErkJggg==') repeat;
  position: absolute;
  width: 100%;
  height: 0.75rem;
  bottom: -1.5rem;
  left: 0;
	/*margin-left: -0.5rem;*/
	cursor: move;
	display: none;
}

header:hover .dragger {
	display: block;
}

/* Croix rouge pour supprimer un élément du menu */
nav ul li i.moon-x {
  display: none;
  position: absolute;
  cursor: pointer;
  padding: 0.5rem 0.5rem 0;
  bottom: -1rem;
  left: 0;
  right: 0;
  z-index: 1;
}

nav > ul li:hover i.moon-x {
	display: block;
}

/* ----------------------------- */
/* 10. Website Menu Management   */
/* ----------------------------- */

/* Menu d'ajout/supp au menu */
#add-nav {
	position: fixed;
	right: 0;/* 1rem */
	/* -3rem @todo voir si ça ne crée pas de bug*/
  /* margin-left -6rem */
	display: none;/*block !important*/
	opacity: 0.8;
	z-index: 10;/*-1*/
}

#add-nav:hover {
	opacity: 1 !important;
}

#add-nav .tooltip {
	min-width: 210px;
	max-height: 300px;
	overflow-y: auto;
}

#add-nav ul {
	border: none;
	float: none;
}

#add-nav li {
	background-color: var(--white-color);
	display: block;
	position: relative;
	float: none;
	margin: 0.5rem 0 0;
	padding: 0 0.5rem;
	cursor: move;
	border-radius: 5px;
	border: 0;
}

#add-nav li a {
	color: #000 !important;
	cursor: move;
	padding: 0;
	margin: 0;
	font-size: initial;
	font-weight: initial;
	text-transform: initial;
}

#add-nav li a:after {
	display: none;
}

#add-nav .dragger {
	background: none;
	width: 10px;
	height: 12px;
	display: block;
	left: -13px;
	top: 0px;
	cursor: pointer;
}

#add-nav .dragger:before {
	content: "\e935";
	font-family: 'moon';
}

#add-nav .moon-x {
	position: absolute;
	top: 12px;
	right: 2px;
	cursor: pointer;
}

#add-nav .zone {
	border-radius: 100% 0 0 100%;
	border-right: 0px;
	display: inline-block;
	padding: 0.8rem 1rem;
	cursor: pointer;
	transition: all .3s;
}

#add-nav.open .zone {
	margin: 0;
}

#add-nav.open .zone {
	margin: 2rem 0 auto;
}

#add-nav.open {
	margin: 0;
	right: 1rem;
	top: initial !important;
}

#add-nav.open .zone {
	border-radius: 30px 30px 0 0;
	border-bottom: none;
	padding: 0.5rem 0.8rem;
}

#add-nav.del .zone {
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.3) inset;
	border-color: #df7578;
}

#add-nav.del ul {

}

/* ----------------------------- */
/* 11. Content                   */
/* ----------------------------- */

/* editable block */

.custom .editable, .custom [contenteditable=true], a[name] {
	border-bottom: 1px dotted rgba(61, 128, 179, 0.2) !important;
	outline: none;/* supp le bord bleu de sélection chrome */
	/*display: initial;inline-block*//* SUPP ?? doublon avec la valeur dans style css */
	/*width: inherit;*//* en lien avec w article 100% */
}

.custom .editable:hover, .custom [contenteditable=true]:hover {
	border-bottom: 1px dotted rgba(61, 128, 179, 1) !important;
  line-height: 1.3 !important;
}

[contenteditable=true]:empty:before {
	content: attr(id);
	opacity: .6;
}

[contenteditable=true][placeholder]:empty:before {
	content: attr(placeholder);
	opacity: .6;
}

[contenteditable=true] p:after {
	/* content: "Paragraphe"; */
  font-family: 'moon';
  content: "\e901";
	opacity: .6;
	padding-left: 0.2rem;
}

/* [contenteditable=true] p br:last-of-type,
[contenteditable=true] p br:last-child
{ display: none; } */

.editable-media[placeholder]:before {
	content: attr(placeholder);
	opacity: .6;
	padding-top: 0.5rem;
	text-align: center;
	position: absolute;
	left: 0;
	right: 0;
}

.editable-media[placeholder]:hover:before {
	content: '';
}

.editable .ui-wrapper {
	overflow: inherit !important;
	box-shadow: 0 0 0 1px #d8e6f0 inset;
}
.editable img {
	cursor: default;
}

/* On se met en mode pour voir le code source */
.view-source {
	text-align: left;
	white-space: pre-wrap;
}

.custom .editable-media {
	background-color: rgba(61, 128, 179, 0.05);
	display: inline-block;
  position: relative;
	overflow: hidden;
	vertical-align: middle;
	min-width: 4.375rem;
	min-height: 4.375rem;
	border: 1px dotted rgba(61, 128, 179, 0.2);
  font-size: smaller;
}

.custom .editable-media img {
	margin: -1px;
	transition: none !important;/* Plus stable pour les drag&drop */
}

.drag-zone {
	border: 2px dashed #75df83 !important;
}

.drag-over {
	border: 2px dashed #7AD2D9 !important;
	cursor: pointer;
}

img.drag-elem {
	margin: -2px !important;
}
	/* @todo: problème décalage sur les grandes images au hover */

.open-dialog-media {
	position: absolute;
	top: 0;
	padding-top: 5px;
	width: 100%;
	z-index: 1;
	color: var(--color-3);;
	font-family: 'Luciole', sans-serif;
	text-align: center;
	text-shadow: 1px 1px 0px var(--white-color);
	display: none;
}

.open-dialog-media a {
  color: var(--white-color);
}

.editable-bg {
	background: transparent url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoAQMAAAC2MCouAAAABlBMVEX29vbu7u4m5kP6AAAAAnRSTlPMzIMO2+EAAABPSURBVAjXxc2xEYAwDMVQcRSUjMAoGS2MxigZIWWKXIw1ADXt1zubY1IfzkHcXH0LKG1f5JglxyyEhWVhWhgW5BfygrwiD74OyTvy9tffFyMcWadHur+/AAAAAElFTkSuQmCC') repeat scroll 0 0;
	position: relative;
	transition: background .3s, box-shadow .3s;
}

.editable-bg:hover {
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05) inset;
}

.editable-bg > .bg-tool, .module-btn a {
	display: none;
	position: absolute;
	z-index: 8;
	top: 0;
	right: 0;
	line-height: 30px;
}

.editable-bg > .bg-tool .open-dialog-media, .module-btn a {
  box-shadow: none;
  background-color: var(--color-1);
	border-radius: 5px;
	color: var(--white-color);
	text-decoration: none;
  text-shadow: none;
	opacity: .6;
	width: initial; /* inherit */
	padding: 0.1rem 0.4rem;
	margin: auto;
	transition: opacity .3s, background .2s;
}

.editable-bg > .bg-tool .open-dialog-media {
	position: relative;
	display: inline-block !important;
}

.editable-bg > .bg-tool .open-dialog-media:hover, .editable-bg > .bg-tool .clear-bg:hover, .module-btn a:hover {
	opacity: 1;
	color: var(--white-color);
}

.under-header.editable-bg > .bg-tool .open-dialog-media, .fullpage.editable-bg > .bg-tool .open-dialog-media {/* cas ou on place le btn en bas de la zone bg */
	top: initial;
	bottom: 10px;
}

.editable-bg > .bg-tool .clear-bg {
	color: var(--main-color);
	font-size: 1.5rem;
	vertical-align: sub;
	margin: 0 0.75rem 0 0;
	opacity: .6;
	transition: all .3s;
}

/* TAG */
.tag-container {
	display: inline-block;
}

.layer-tag {
	z-index: 100;
}

.editable-tag-ordre {
	width: 45px;
}

/* Module */
.module {
	min-height: 55px;
}

.module li {
	position: relative;
}

.module-btn {
	position: absolute;
  right: 0;
  z-index: 10;
  margin-right: 2rem;
}

.module-btn a {
  position: relative;
	display: inline-block;
}

.module .ui-sortable-handle {
	box-shadow: rgba(122, 210, 217, 0.5) 0px 0px 20px 2px !important;
	cursor: move;
}

/* Hidden éditable & Href éditable & alt éditable */
.editable-input, .editable-href, .editable-select.none, .editable-alt {
	background: transparent url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoAQMAAAC2MCouAAAABlBMVEX29vbu7u4m5kP6AAAAAnRSTlPMzIMO2+EAAABPSURBVAjXxc2xEYAwDMVQcRSUjMAoGS2MxigZIWWKXIw1ADXt1zubY1IfzkHcXH0LKG1f5JglxyyEhWVhWhgW5BfygrwiD74OyTvy9tffFyMcWadHur+/AAAAAElFTkSuQmCC') repeat scroll 0 0;
	border-style: dotted;
}

/* Href éditable */
[data-href] {
	position: relative;
  display: inline-block;
}

.editable-href, .editable-alt {
	position: absolute;
	text-align: center;
	font-size: initial;
	font-family: 'Luciole', sans-serif;
	width: 100%;
	display: block;
	opacity: 0;
}

/* ALT éditable */
.editable-alt {
	font-size: 1.2rem;
	top: 0;
	z-index: 2;
	opacity: 1;
	display: none;
}



.ui-dialog {
	text-shadow: none !important;
}

.ui-dialog #media-search {
	position: absolute;
  top: 4px;
  right: 0px;
  z-index: 1;
}

.dialog-media li {
	background: #eee none repeat scroll 0 0;
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.1) inset, 0 0 0 1px rgba(0, 0, 0, 0.05) inset;
	position: relative;
	overflow: hidden;
	float: left;
	width: 130px;
	height: 110px;
	line-height: 100px;
	cursor: pointer;
	transition: background .2s;
}

.dialog-media li .file {
	vertical-align: middle;
	overflow: auto;
	display: inline-block;
	overflow: hidden;
	line-height: 2;
	max-height: 100px;
	max-width: 120px;
}

.dialog-media li .file i {
	padding-bottom: 0.5rem;
}

.dialog-media li img {
	max-width: 120px;
	max-height: 96px;
	vertical-align: middle;
	transition: opacity .5s;
}

.dialog-media li .copy {
	position: absolute;
	display: none;
  top: -20px;
  padding: 0 14px 0 12px;
  animation: fade-in .2s;
}

.dialog-media li .copy input {
	background-color: var(--white-color);
	width: 100%;
}

.dialog-media li .mime {
	background-color: rgb(255 255 255 / 0.8);
	position: absolute;
	display: none;
  font-size: 8px;
  top: 4px;
  right: 4px;
  line-height: 14px;
  padding: 1px 3px;
  border-radius: 2px;
  animation: fade-in .2s;
}

.dialog-media li .infos {
	box-shadow: inset 0px -22px 10px -10px var(--white-color);/*0 0 0 1px rgba(0, 0, 0, 0.15) inset*/
	bottom: 0;
	left: 0;
	right: 0;
	line-height: 16px;
	margin: 1px;
	position: absolute;
	display: none;
	animation: fade-in .2s;
}

.dialog-media li .resize, .dialog-media li .supp, .dialog-media li .open {
	line-height: 18px;
	position: absolute;
	display: none;
	opacity: 0.5;
	z-index: 1;
}

.dialog-media li .resize:hover,	.dialog-media li .supp:hover,	.dialog-media li .open:hover 	{
	opacity: 1;
}

.dialog-media li .resize,	.dialog-media li .open {
	bottom: -1px;
	left: 2px;
}

.dialog-media li .supp {
	bottom: -1px;
	right: 2px;
}

.dialog-media li.add-media {
	background: var(--light-color);
	border: 2px dashed #7AD2D9;
	border-radius: 5px;
	line-height: inherit;
	height: 110px;
}

.dialog-media li.add-media.dragover {
	background: rgba(117, 223, 131, 0.4);
	border: 2px dashed #75df83;
}

.dialog-media li:hover,	.dialog-media li.select	{
	background: var(--white-color);
}

.dialog-media li:hover > .copy,	.dialog-media li:hover > .mime,	.dialog-media li:hover > .infos,	.dialog-media li:hover > .supp,	.dialog-media li:hover > .resize,	.dialog-media li:hover > .open 	{
	display: block;
}

.dialog-optim-img img {
	border: 1px solid #bbbbbb;
}


/* Onglet JQuery UI */
.ui-tabs {
	padding: 0 !important;
}

.ui-tabs .ui-dialog-title {
	margin: 0;
	padding: 0;
	width: 100%;
}

.ui-tabs .ui-tabs-nav {
	border-bottom: 1px solid #aaaaaa;
	padding: .5em 1em 0 .8em !important;
}

.ui-tabs .ui-tabs-nav li {
	box-shadow: inset 0 -10px 15px -14px #000;
}

.ui-tabs .ui-tabs-panel {
	padding: 0.5rem;
}

.ui-tabs .ui-state-active {
	background: #f1f4f7;
}

.ui-tabs li.ui-state-active {
	box-shadow: none;
}

/* Hack Jquery UI style */
.ui-widget-header {
	background: var(--light-color);
	border: none;
	font-weight: normal;
}

.ui-dialog-content {
	border: none !important;
}

.ui-effects-transfer {
  border: 4px dashed #7AD2D9;
	background: rgba(122, 210, 217, 0.2);
}

/* Upload Icon */
.uploading:before {
	font-family: 'moon';
  content: "\e943";
	font-size: 4rem;
	color: rgba(0, 0, 0, 0.1);
	animation: icon-spin 2s infinite linear;
	display: block;
	position: absolute;
	width: 7.5rem;
}

.uploaded:before {
	font-family: 'moon';
  content: "\e910";
	font-size: 5rem;
	color: var(--green-color);
	animation: fade-in-out 1s ease forwards;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
	display: block;
	position: absolute;
	width: 100%;/*120px*/
	height: 100%;
}

/* Icons management window */
.dialog-icon li i {
	cursor: pointer;
}

.dialog-icon li i:hover {
	color: var(--color-3);
}

/* Delete window */
.dialog-del li {
	display: inline-block;
	margin: 1.5rem 1rem 0 1rem;
}

.dialog-del li label {
	margin: 0;
}

.dialog-del li img {
	max-width: 32px;
	max-height: 32px;
}

.body-dragover {
	box-shadow: 0 0 15px rgba(0, 0, 0, 1) inset;
}

/* ---------------------------------- */
/* 13. Toolbox                        */
/* ---------------------------------- */

.toolbox {
	border-radius: 4px;
	list-style: none;
	font-size: initial;
	padding: 0;
	margin: 0;
	/*height: 24px; SUPP ?*/
	position: absolute;
	display: none;
	opacity: 0.8;
	z-index: 11;
	animation: fadeInToolbox .3s ease-in;
	transition: all .24s ease-in-out;
}

.toolbox li {
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
	float: left;
	height: 26px;
}

.toolbox button {
	background: var(--white-color) linear-gradient(var(--white-color), #eaeaea) repeat scroll 0 0;
	box-shadow: 0 0 0 1px var(--white-color) inset;
	box-sizing: border-box;
	border-radius: inherit;
	cursor: pointer;
	height: 1.75rem;
	min-width: 1.75rem;
	margin: 0 0 0 -1px;
	padding: 0.2rem 0.4rem;

}

.toolbox button:hover,	.toolbox #color-option button.checked {
	background: var(--color-6) linear-gradient(var(--color-6), var(--color-3)) repeat scroll 0 0;
	box-shadow: 0 0 0 1px var(--color-6) inset;
}

.toolbox button:focus {
	background: var(--color-3) linear-gradient(var(--color-3), var(--color-6)) repeat scroll 0 0;
	box-shadow: 0 0 0 1px var(--color-3) inset;
}

.toolbox li:first-child, .toolbox li:last-child button {
	border-radius: 4px 0 0 4px;
}

.toolbox li:last-child, .toolbox li:last-child button {
	border-radius: 0 4px 4px 0;
	height: 26px !important;
}

.toolbox button .minus {
	font-size: 0.6em;
	margin-left: -2px;
	vertical-align: top;
}

.toolbox button.color-option {
	font-size: 12px;
	line-height: 9px;
}

.toolbox #color-option button[class^="color-"] {
	font-size: 22px;
  padding-bottom: 8px;
  line-height: 13px;
}

.toolbox:hover {
	opacity: 1;
}

	/* Fleche sous la toolbox */
.toolbox:after {
	border: 6px solid transparent;
	border-top-color: var(--main-color);
	content: ' ';
	position: absolute;
	margin-left: -7px;
	bottom: -0.875rem;
	left: 0.875rem;
	height: 0rem;
	width: 0rem;
}

/* Fleche au dessu de la toolbox */
.toolbox.under:after {
	border-bottom-color: #d4d4d4;
	border-top-color: transparent;
	top: -12px;
}

.toolbox .option {
	background-color: #eaeaea;
	height: 100%;
	display: none;
}

.toolbox input {
	color: var(--main-color);
	height: 100%;
	border-radius: 0;
	padding: 0.2em 0.5rem;
}

.toolbox input:focus {
		border: 1px solid #c0dede;
}

.toolbox#resize-tool {
	background-color: #eaeaea;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
	padding: 0.2rem;
}

.toolbox#resize-tool input {
	height: 22px;
}

/*couleur icone */
.toolbox .moon-image {
	color: var(--color-2);
}

.toolbox .moon-link {
	color: var(--red-color);
}

.clear-file {
	background-color: var(--dark-color);
	color: var(--white-color) !important;
	font-size: 0.8em;
	font-family: 'Luciole', sans-serif;
  text-decoration: none;
  white-space: nowrap;
  line-height: 1.6rem;
  border-radius: 0 5px 0 0;
	display: none;
	opacity: .5;
  position: absolute;
	bottom: 0;
  left: 0;
  z-index: 2;
  padding: 0 0.4rem;
  transition: all .3s;
}

.clear-file:hover, .print-size:hover {
	opacity: 1;
}

.print-size {
	background: var(--white-color);
	color: #000 !important;
	font-size: 0.6em;
	font-family: 'Luciole', sans-serif;
  text-decoration: none;
  white-space: nowrap;
  line-height: 1.6rem;
  cursor: default;
  border-radius: 5px 0 0 0;
	display: none;
	opacity: .8;
  position: absolute;
	bottom: 0;
  right: 0;
  z-index: 1;
  padding: 0 0.4rem;
  transition: all .3s;
}


#unlink {
	color: var(--red-color);
}

@media screen and (max-width: 575.98px)
{
	.ui-tabs-nav span {
		display: none;
	}

	.ui-widget-content {
		width: 98% !important;
	}
}

/* ---------------------------------- */
/* 14. Progress Bar                   */
/* ---------------------------------- */

.progress {
	/*background-color: rgba(122, 210, 217, 0.8);*/
	position: absolute;
	top: 0;
	left: 0;
	max-width: 100%;
	min-height: 4px;
	z-index: 10;
	opacity: .8;
	transition: all .3s;
}

/* ---------------------------------- */
/* 15. Opacity - Transparency         */
/* ---------------------------------- */

.o50 { opacity: 0.5; }
.o80 { opacity: 0.8; }
.ho1:hover { opacity: 1; }

.to50 {
  opacity: 0.5;
  animation: fade-50 .5s 1;
}

/* ---------------------------------- */
/* 97. Ecoindex Grade                 */
/* ---------------------------------- */

#ecoindex span {
	display: inline-block;
	width: 18px;
	height: 18px;
	font-size: 12px;
	line-height: 18px;
	margin: 0.1rem 0 0 0.5rem;
	text-align: center;
	border-radius: 50%;
	background-color: var(--red-color);
}

#ecoindex span.A {
	background-color: #349A47;
	color: var(--white-color);
}

#ecoindex span.B {
	background-color: #51B84B;
	color: var(--white-color);
}

#ecoindex span.C {
	background-color: #CADB2A
}

#ecoindex span.D {
	background-color: #F6EB15
}

#ecoindex span.E {
	background-color: #FECD06
}

#ecoindex span.F {
	background-color: #F99839;
	color: var(--white-color);
}

#ecoindex span.G {
	background-color: #ED2124;
	color: var(--white-color);
}

/* ----------------------------- */
/* 98. High Contrast              */
/* ----------------------------- */

/* Cancel background images and image borders which may cause contrast problems */
.high-contrast *,
.high-contrast *::after,
.high-contrast *::before {
	border-image: none !important;
	text-shadow: none !important;
}

/* Let SVG elements adapt to the chosen color scheme */
.high-contrast path,
.high-contrast polygon,
.high-contrast svg,
.high-contrast svg * {
	fill: currentColor;
}

/* Add a border on form elements when custom contrasts are on */
.high-contrast input,
.high-contrast textarea,
.high-contrast select,
.high-contrast form button {
	border-width: 1px !important;
	border-style: solid !important;
}

/* Change color of ::first-letter pseudo-elements if needed */
.high-contrast *::first-letter {
	color: inherit !important;
}

/* input[type="range"] */
.high-contrast input[type="range"] {
	border: 0 !important;
}
.high-contrast input[type="range"]::-webkit-slider-thumb {
	margin-top: -.25em; /* You need to specify a margin in Chrome, but in Firefox and IE it is automatic */
}

	@supports (-ms-ime-align: auto) { /* Dirty hack to target Edge only */
		.high-contrast input[type="range"]::-webkit-slider-thumb {
			margin-top: 0;
		}
	}
.high-contrast input[type="range"]::-webkit-slider-runnable-track {
	height: 0.313em;
}

/* Enforced contrast (.high-contrast) */
.high-contrast,
.high-contrast *{
	background-color: #343643 !important;
	color: white !important;
}
.high-contrast,
.high-contrast *,
.high-contrast *::before,
.high-contrast *::after{
	border-color: white !important;
}

/* Add a border on form elements when high contrast is on */
.high-contrast input,
.high-contrast textarea,
.high-contrast select{
	border-color: #f9fcff !important;
	color: inherit !important;
}

/* High contrast placeholder */
.high-contrast *::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: white !important;
}
.high-contrast *::-moz-placeholder { /* Firefox 19+ */
	color: white !important;
	opacity: 1 !important;
}
.high-contrast *:-ms-input-placeholder { /* IE 10+ */
	color: white !important;
}
.high-contrast *:-moz-placeholder { /* Firefox 18- */
	color: white !important;
	opacity: 1 !important;
}

/* High contrast for input[type="date"] */
.high-contrast *::-webkit-datetime-edit-text {
	color: white !important;
}
.high-contrast *::-webkit-datetime-edit-month-field {
	color: white !important;
}
.high-contrast *::-webkit-datetime-edit-day-field {
	color: white !important;
}
.high-contrast *::-webkit-datetime-edit-year-field {
  color: white !important;
}
.high-contrast ::-webkit-calendar-picker-indicator {
	background: #343643 !important;
}

/* High contrast for input[type="range"] */
.high-contrast input[type="range"]::-webkit-slider-runnable-track { /* Webkit */
	background: white !important;
}
.high-contrast input[type="range"]::-moz-range-track {  /* Firefox */
	background: white !important;
}
.high-contrast input[type="range"]::-moz-range-thumb {
	background: black !important;
	border: .15em solid white !important;
}
.high-contrast input[type="range"]::-ms-fill-lower {  /* IE/Edge */
	background: white !important;
}
.high-contrast input[type="range"]::-ms-fill-upper {
	background: white !important;
}
.high-contrast input[type="range"]:focus::-ms-fill-lower {
	background: white !important;
}
.high-contrast input[type="range"]:focus::-ms-fill-upper {
	background: white !important;
}
.high-contrast input[type="range"]::-ms-thumb {
	background: black !important;
	border: .15em solid white !important;
}

/* ---------------------------------- */
/* 99. Icons                          */
/* ---------------------------------- */

.icon {
  display: inline-block;
  font: normal normal normal 0.85rem/1 'moon';
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-bolder {
  font-weight: bolder;
}
.icon-fw {
  width: 1.28571429em;
  text-align: center;
}
.icon-ul {
  padding-left: 0;
  list-style-type: none;
}
.icon-ul > li {
  position: relative;
}
.icon-li {
  position: relative;
  left: inherit;
  top: inherit;
  width: inherit;
  float: none;
}

/* ----------------------------- */
/* 0. General                    */
/* ----------------------------- */

body {
  color: var(--main-color);
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Luciole', sans-serif;
}

/* Colors statement */
.color-1, .color-blue {  color: var(--color-1)}
.color-2, .color-glaz-dark {  color: var(--color-2)}
.color-3, .color-glaz {  color: var(--color-3)}
.color-4, .color-glaz-light {  color: var(--color-4)}

/* Links */
a { color: var(--color-1);}
a:focus, a:hover, a:active { color: var(--color-3);}

/* Width */
.w100 {
  width: 100%;
}

/* Section */
section {
  background: var(--white-color);
  overflow: hidden;
}

.bg-section {
  position: relative;
  overflow: hidden;
  z-index: 1;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  width: 100%;
}

.bg-overlay:before {
  content: "";
  display: inline-block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.bg-gradient:before {
  background-image: linear-gradient(rgba(56,84,122,.9),rgba(56,84,122,.2));
}

.bg-dark:before {
  background-image: -webkit-gradient(linear,left top,left bottom,from(#14191c),color-stop(82%,rgba(20,25,28,0)));
  background-image: -o-linear-gradient(top,#14191c 0%,rgba(20,25,28,0) 82%);
  background-image: linear-gradient(180deg,#14191c 0%,rgba(20,25,28,0) 82%);
}

.bg-glazient:before {
  background-image: linear-gradient(rgba(68,172,155,.8),rgba(68,172,155,.9));
}

/* ----------------------------- */
/* 1. Header                     */
/* ----------------------------- */

#header {
  min-height: 6.5rem;
}

.navbar {
  z-index: 8888;
  -webkit-transition: all 300ms ease-in-out;
  -o-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}

.sticky {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  background: var(--white-color);
  border-top: 0.5rem solid var(--color-1);
}

.inside {
  line-height: 1.3;
}

@media (min-width: 992px) {
  .inside {
    margin: 0 auto;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: space-between;
  }
}

.burger-button {
  padding-top: 2rem;
}

@media (min-width: 576px) {
  .burger-button {
    display: none;
  }
}

@media (min-width: 576px) {
  .site-logo {
    padding-right: 5rem;
    border-right: 1px solid #eaeaea;
  }
}

/* Menu */
.menu {
  flex: 1;
  justify-content: space-between;
  flex-direction: column;
}

@media (min-width: 576px) {
  .menu {
    flex-direction: row;
  }
}

.nav-menu {
  padding: 0;
}


@media screen and (min-width: 992px) {
  .nav-menu {
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
  }
}

.nav-menu .nav-item {
  display: block;
  position: relative;
  text-align: left;
  border-radius: 0;
}

@media screen and (min-width: 992px) {
  .nav-menu .nav-item {
    display: inline-block;
    text-align: center;
    margin-right: 2.25rem;
  }
}

.nav-menu .nav-item a {
    display: block;
    padding: 1rem;
    text-decoration: none;
    white-space: nowrap;
}

@media screen and (min-width: 992px) {
  .nav-menu .nav-item a {
    padding: 0;
  }
}

.nav-menu .nav-item a.selected, .nav-item>a:focus, .nav-item>a:hover, .nav-item>a:active {
  color: var(--color-3);
  border-bottom: 3px solid var(--color-3);
  background-color: var(--white-color);
  margin-top:0.22rem;
}

@media screen and (min-width: 992px) {
  .nav-menu .nav-item a {
    line-height: 5.7rem;
  }
}

/* Holder */

.holder-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.holder-contact {
  display: flex;
  align-items: center;
  padding: 0 2.4rem;
}

.holder-contact:hover {
  text-decoration: none;
  cursor: pointer;
}

.holder-contact .btn {
  display: flex;
  justify-content: center;
  height: 6.1rem;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--white-color);
}

/* ----------------------------- */
/* 2. Modular content            */
/* ----------------------------- */

/* A. Search Content ----------- */

#input-search {
  border-bottom: 1px solid var(--grey-color);
}

/* B. Hero Content ------------- */

/* Basic Hero */

.hero-subtitle {
  font-size: 1.1rem;
}

/* Permet de cacher les heures dans le hero mais à terme pas l'idéal
/*.hero-meta-date-add {
max-width: 11.2rem;
white-space: nowrap;
overflow: hidden;
text-overflow: clip;
}

.hero-meta-date-update {
max-width: 13.3rem;
white-space: nowrap;
overflow: hidden;
text-overflow: clip;
}*/

.hero-meta-author {
text-transform: capitalize;
}

.hero-action {
display: flex;
align-items: center;
}

@media screen and (max-width: 992px) {
.hero-action {
  display: flex;
  flex-direction: column;
  align-items: center;
}
}

.hero-action-icon img {
max-width: 60px;
}

.hero-btn, .hero-btn:hover {
color: #fff;
text-transform: uppercase;
}

/* Home Hero > Left */

.hero-title {
  font-size: 2.9rem;
  line-height: 1.1;
  font-weight: normal;
}

.hero-title b {
  font-weight: bold;
}

@media screen and (max-width: 991.98px) {
  .hero-title {
    font-size: 2.6rem;
    text-align: center;
  }
}

.hero-desc {
  font-size: 1.44rem;
}

@media screen and (max-width: 991.98px) {
  .hero-desc {
    text-align: center;
  }
}

.hero-desc u {
  text-decoration: 2px wavy underline var(--color-3);
}


/* Home Hero > Right */

.hero-card {
  position: relative;
  padding: 1.5rem;
  max-width: 20rem;
  margin-left: auto;
}

@media screen and (max-width: 991.98px) {
  .hero-card {
    margin: auto;
  }
}

.hero-card img {
  max-width: 80px;
}

.hero-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  height: 4px;
  width: calc(100% - 5rem);
  background-color: var(--color-3);
}

.hero-card-title {
  font-size: 1.2rem;
  text-transform: uppercase;
}

.hero-card-desc {
  line-height: 1.7;
}

/* C. breadcrumb Content ------- */

#breadcrumb {
  border-bottom: 1px solid var(--grey-color);
}

.breadcrumb-list {
  padding-left: 0;
}

.breadcrumb-list>li {
  display: inline-block;
}

.breadcrumb-item+.breadcrumb-item {
  padding-left: 0;
}

.breadcrumb-item+.breadcrumb-item::before {
    float: left;
    font-family: "moon";
    content: "\e95e";
    font-weight: bolder;
    padding: 0 0.5rem;
}

/* ----------------------------- */
/* 3. Home                       */
/* ----------------------------- */

/* A. Features Content --------- */

.features-content {
  width: 50%;
}

.features-heading {
  margin: auto;
}

.features-subtitle {
  font-weight: normal;
  font-size: 1rem;
}

.features-title {
  font-weight: normal;
  font-size: 2.6rem;
  line-height: 1.1;
}

.features-title span {
  letter-spacing: .25rem;
}

.features-card {
  position: relative;
  padding: 4.125rem 2.5rem 2.5rem;
}

@media screen and (max-width: 991.98px) {
  .features-card {
  }
}

.features-card::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  height: 3px;
  width: calc(100% - 5rem);
  background-color: var(--color-3);
}

.features-card img {
  max-width: 70px;
}

.features-card-icon {
  position: absolute;
  top: -2.5rem;
  left: 2.5rem;
  z-index: 2;
}

.features-card h4 {
  font-size: 1.5rem;
  font-weight: normal;
  line-height: 1;
  border-bottom: 2px solid #eaeaea;
  width: 100%;
}

/* ----------------------------- */
/* 4. Page                       */
/* ----------------------------- */


/* ----------------------------- */
/* 5. Article                    */
/* ----------------------------- */
.post-content {
  flex: 1 73%;
}

.post-img {
    position: relative;
}

.post-img img {
  border-radius: .5rem;
  max-height: 22rem;
  width: max-content;
  object-fit: cover;
}

.post-img .post-event {
  position: absolute;
  color: var(--color-1);
  background-color: var(--light-color) /*rgba(255, 255, 255, 0.6)*/;
  border-radius: 0 0 0 .5rem;
  bottom: .5rem;
  left: 0;
  padding: 1rem 1.5rem;
}

.post-img .post-event::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4px;
  background-color: var(--color-3);
  border-radius: 0 0 0 1rem;
}

.entry {
  border-top: 1px solid var(--light-color);
}

.entry a {
  color: var(--color-3);
  font-weight: 500;
}

/* ----------------------------- */
/* 6. Article List                 */
/* ----------------------------- */

.article-card {
  padding: 2.5rem;
}

.article-post-title {
  height:3rem;
  line-height: 1.2;
}

.article-post-img {
  transform: translateX(-2.5rem);
  width: calc(100% + 2.5rem);
  position: relative;
}

.article-post-img .entry-img {
  position: relative;
  overflow: hidden;
  max-width: 100%;
}

.article-post-img .entry-img img {
  border-radius: 0 .5rem .5rem 0;
  max-height: 16rem;
  width: max-content;
  object-fit: cover;
}

.article-post-img .entry-img img:hover {
  filter: grayscale(.45);
}

.article-post-img .entry-date{
  position: absolute;
  left: 2.5rem;
  bottom: -1rem;
  display: inline-flex;
  align-items: center;
  padding: .5rem .8rem;
  background-color: var(--color-3);
  border-radius: .5rem;
}

.article-post-img span {
  color: var(--white-color);
  font-size: .9rem;
}

.article-post-img .day, .article-post-img .month {
  margin-right:.25rem;
}

/* ----------------------------- */
/* 7. Event List                 */
/* ----------------------------- */

.event-post-img {
  position: relative;
  overflow: hidden;
  border-radius: .5rem .5rem 0 0;
}

.event-post-img img {
  max-height: 14rem;
  width: max-content;
  object-fit: cover;
}

.event-post-img img:hover {
  filter: grayscale(.45);
}

.event-post-content {
  position: relative;
  overflow: hidden;
  border-radius: 0 0 .5rem .5rem;
}

.event-post-date {
  flex: 1 27%;
}

.event-post-date .date-number {
  font-size: xx-large;
  line-height: 0.9;
}

.event-post-title {
  flex: 1 73%;
  line-height: 1.1;
}

.event-post-title h3 {
  font-weight: normal;
}

/* ----------------------------- */
/* 96. Contact                   */
/* ----------------------------- */

.contact-card {
  flex: 1 27%;
}

.contact-card .card-info li {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}

.contact-form {
  flex: 1 73%;
}

.contact-title {
  font-weight: normal;
  font-size: 2.6rem;
  line-height: 1;
}

#name, #email-from, #email-to, #subject, #message {
  min-height: 4rem;
  border: 1px solid var(--grey-color);
  border-radius: .25rem;
  padding: .5rem 1rem;
}

#captcha {
  border: 1px solid var(--grey-color);
  border-radius: .25rem;
}

/* ----------------------------- */
/* 97. Sidebar                   */
/* ----------------------------- */

.sidebar-content {
  flex: 1 27%;
  order:2;
}


.widget {
  background-color: var(--light-color);
  padding: 2rem 2.5rem 2.5rem;
  margin-bottom: 2.5rem;
  border-radius: 0.5rem;
  position: relative;
}

.widget::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 1.5rem;
  left: 1.5rem;
  height: 4px;
  background-color: var(--color-3);
}

.widget-cat, .widget-tag, .widget-art, .widget-event {
  padding-bottom: 1.75rem;
}

.widget-title {
  margin-bottom: 1.5rem
}

.widget-content {
  text-align: left;
}

.widget-tag .widget-content {
  color: transparent;
}

.widget-tag .widget-content a {
  display: inline-block;
  border: 1px solid var(--color-1);
  border-radius: 0.25rem;
  padding: 0.2rem .5rem;
  margin: 0 .2rem .5rem auto;
}

.widget-tag .widget-content a:hover {
  border: 1px solid var(--color-3);
  background: var(--color-3);
  color: var(--white-color);
}

/* ----------------------------- */
/* 98. Footer                    */
/* ----------------------------- */

#footer {
  color: var(--light-color);
  background: var(--color-1);
  border-bottom: 1px solid #4b6384;
}

/* ----------------------------- */
/* 99. BottomBar                 */
/* ----------------------------- */

#bottombar, #bottombar a {
  min-height: 1rem;
  background: var(--color-2);
  color: var(--light-color);
  z-index: 999;
  text-decoration: none;
}

#bottombar a:hover {
  text-decoration: 2px wavy underline var(--color-1);
}
