/* ---------------------------------------------------------------------------------------------

	Theme Name: elfiehaas
    Text Domain: elfiehaas
	Author: Lutra
	Author URI: https://lutra.fr



/* --------------------------------------------------------------------------------------------- */


body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

p:empty {
	display: none;
}

/* Input styles */

input, textarea, select, button {
	background-color: inherit;
	border-radius: 0;
	font-family: inherit;
	font-size: inherit;
	letter-spacing: inherit;
	margin: 0;
}

input, textarea, select {
	background-color: var( --wp--preset--color--laine );
	border: 2px solid var( --wp--preset--color--framboise );
	box-sizing: border-box;
	color: inherit;
	max-width: 100%;
	padding: .5em;
}

label {
	font-size: var( --wp--preset--font-size--small );
	font-weight: 500;
}

/* Editor Post Title */

.editor-post-title__input { 
	text-align: center;
}

/* Background Padding */

p.has-background, 
h1.has-background, 
h2.has-background, 
h3.has-background, 
h4.has-background, 
h5.has-background, 
h6.has-background, 
:where(.wp-block-group.has-background),
.wp-block-pullquote.has-background { 
	padding: var(--wp--preset--spacing--60);
}

/* ------------------------------------------- */
/*	Typography
/* ------------------------------------------- */

.bold{ font-weight: 700; }

body { font-family: 'Poppins';}

.script {
	font-family: 'DreamingOutloudScriptRegular';
	letter-spacing: -1px !important;
}

*[class*="has-heading-"][class*="-font-size"]:not(.has-heading-6-font-size) {
	letter-spacing: var( --wp--custom--typography--letter-spacing--heading );
}

.has-gigantic-font-size {
	letter-spacing: var( --wp--custom--typography--letter-spacing--gigantic );
	line-height: var( --wp--custom--typography--line-height--gigantic );
}

.has-huge-font-size {
	letter-spacing: var( --wp--custom--typography--letter-spacing--huge );
	line-height: 1;
}

.has-heading-6-font-size {
	letter-spacing: var( --wp--custom--typography--letter-spacing--uppercase );
	line-height: var( --wp--custom--typography--line-height--heading );
	text-transform: uppercase;
}

.text-decoration-none {
	text-decoration: none !important;
}

h1.script {
	line-height: 1;
}

h1.has-heading-2-font-size {
	line-height: 1.1;
	margin-bottom: 1rem;
}

ul {
	padding-left: 1rem;
}

/* ------------------------------------------- */
/*	Images & captions
/* ------------------------------------------- */

.wp-element-caption {
	background-color: var(--wp--preset--color--lait-fraise);
	width: fit-content;
	padding: .25rem .75rem;
	border-bottom-left-radius: .5rem;
	border-bottom-right-radius: .5rem;
	font-size: small;
	margin-top: 0;
	margin-left: auto;
	margin-right: 1rem;
}

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
	box-sizing: border-box;
	color: #fff;
	font-size: 13px;
	margin: 0;
	overflow: auto;
	padding: 1em;
	text-align: right;
	text-shadow: 0 0 1.5px #000;
	width: 100%;
}


/* ------------------------------------------- */
/*	Buttons, links, icons
/* ------------------------------------------- */

.taxonomy-category a {
	text-decoration: none;
	padding: .25rem .5rem;
	border-radius: 2rem;
	background-color: var(--wp--preset--color--lait-fraise);
}

.lieu::before {
	content: "";
	display: inline-block;
	background-image: url(assets/images/pin.svg);
	width: 1rem;
	height: 1rem;
	margin-right: .125rem;
	vertical-align: sub;
}

.page-numbers.current {
	background-color: var(--wp--preset--color--orange);
	color: white;
}

.page-numbers {
	background-color: var(--wp--preset--color--laine);
	color: var(--wp--preset--color--anthracite);
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 2rem;
}

.formations .wp-block-post-excerpt__more-link {
	background-color: var(--wp--preset--color--lait-fraise);
	border-radius: 2rem;
	border-color: currentColor;
	font-family: inherit;
	padding-top: calc(0.667em + 2px);
	padding-right: calc(1.333em + 2px);
	padding-bottom: calc(0.667em + 2px);
	padding-left: calc(1.333em + 2px);
	text-decoration: none;
	text-transform: inherit;
	display: block;
	width: fit-content;
	margin-top: 1rem;
	margin: 0 auto;
}

main a:where(:not(.wp-element-button, .taxonomy-category a, .page-grid a, .wp-block-post-excerpt__more-link)),
.single-formations .wp-block-paragraph a {
	color: inherit;
	text-decoration: none;
	position: relative;
	box-shadow: inset 0 -2px 0 0 rgba(0,0,0,0.2);
}

main a:where(:not(.wp-element-button, .taxonomy-category a, .page-grid a, .wp-block-post-excerpt__more-link))::after,
.single-formations .wp-block-paragraph a::after {
	content: "";
	position: absolute;
	display: block;
	width: 0;
	height: 2px;
	background: currentColor;
	left: 0;
	bottom: 0;
	transition: ease-in-out .3s;
}

main a:where(:not(.wp-element-button, .taxonomy-category a, .page-grid a, .wp-block-post-excerpt__more-link)):hover::after,
.single-formations .wp-block-paragraph a:hover::after{
	width: 100%;
}

.wp-block-post-featured-image a:where(:not(.wp-element-button,
.taxonomy-category a,
.page-grid a))::after {
	height: 4px;
	background: var(--wp--preset--color--lait-fraise);
}


a:where(:not(.wp-element-button)),
:root :where(.wp-block-query-pagination a:where(:not(.wp-element-button)):hover) {
	text-decoration: none;
}


/* ------------------------------------------- */
/*	Header
/* ------------------------------------------- */

.site-header {
	padding-top: .5rem;
	position: sticky;
	width: 100%;
	z-index: 9999;
	top: 0;
	background-color: white;
	padding-bottom: .25rem;
}

.wp-block-navigation.items-justified-right {
	width: 100%;
}

.home .site-header {
	padding-top: 2rem;
	padding-bottom: 2rem;
	position: absolute;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 20%, rgba(0, 0, 0, 0) 100%);
}

.home header .wp-container-core-columns-is-layout-28f84493 > div:first-child {
	justify-content: center;
	display: flex;
	max-width: 10rem;
}

body:not(.home) header .wp-container-core-columns-is-layout-28f84493::before {
	display: none;
}

.home header .wordmark .fill-1 {
	fill: white;
}

.home header .wordmark .fill-2 {
	fill: var(--wp--preset--color--lait-fraise);
}

.wordmark .fill-1 {
	fill: var(--wp--preset--color--orange);
}

.wordmark .fill-2 {
	fill: var(--wp--preset--color--lait-fraise);
}

header .wordmark {
	width: 6rem
}

header .wp-container-core-columns-is-layout-28f84493::before {
	content: "";
	flex: 1;
	flex-basis: 0;
}

.wp-container-core-columns-is-layout-28f84493 > div:last-child {
	flex: 1;
	flex-basis: 0;
}

header .wp-block-navigation__container {
	color: var(--wp--preset--color--anthracite);
}

header nav .wp-block-navigation__responsive-container-open {
	border-radius: 2rem;
	padding: .5rem;
	border: 2px solid currentColor;
	margin-top: .5rem;
	margin-bottom: .5rem;
}

.home header .wp-block-navigation__container,
.home header nav .wp-block-navigation__responsive-container-open {
	color: white;
}

.wp-block-navigation {
	gap: clamp(10px, 4%, 2rem);
}

.wp-block-navigation-item__content::after {
	content: "";
	height: 2px;
	width: 0;
	background-color: currentColor;
	position: absolute;
	bottom: 0;
	left: 0;
	transition: width .25s;
	display: block;
}

:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover) {
	text-decoration: none;
}

.wp-block-navigation-item__content:hover::after {
	width: 100%;
}

.has-modal-open.is-menu-open .wp-block-navigation-item__content {
	color: var(--wp--preset--color--anthracite);
	font-size: 2rem;
}

.wp-block-navigation__container.items-justified-center {
	flex-wrap: nowrap;
}

@media (min-width: 600px){
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
     display: none;
  }
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: flex;
  }
}

@media (min-width: 1200px){
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    background-color: inherit;
    display: block;
    position: relative;
    width: 100%;
    z-index: auto;
  }
	
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none;
  }
}

/* ------------------------------------------- */
/*	Home
/* ------------------------------------------- */

main.is-layout-flow {
	margin-block-start: 0;
}

.wp-container-core-columns-is-layout-28f84493 .wp-block-column:first-child .wp-block-cover {
	height: 300px;
	min-height: 100%;
	max-height: 300px;
}

.wp-site-blocks {
	padding: 0;
}

.page-grid .wp-block-cover .wp-block-cover__inner-container {
	position: unset;
	z-index: 1;
	text-decoration: none;
}

.page-grid .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-40 {
	transition: .3s;
}

.page-grid .wp-block-cover:hover .wp-block-cover__background.has-background-dim.has-background-dim-40 {
	opacity: .6;
}

.entry-content.wp-block-post-content {
	margin-block-start: 0;
}

.page-grid .wp-block-cover {
	max-height: 300px;
	min-height: 300px;
}

.page-grid .wp-block-cover.h-100 {
	min-height: 300px;
	height: 100%;
	max-height: 100%;
}

.wp-block-cover__background {
	transition: ease-in-out .3s;
}

.page-grid .wp-block-cover:hover .wp-block-cover__background {
	opacity: .5;
}

p.cover-caption,
figcaption.cover-caption {
	padding: .25rem .75rem;
	margin-right: var(--wp--style--root--padding-right) !important;
	margin-top: 0;
	margin-left: auto;
	border-bottom-left-radius: .5rem;
	border-bottom-right-radius: .5rem;
	max-width: 100%;
	display: inline-block;
}

@media (max-width: 900px) {
	.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid {
		grid-template-columns: 1fr;
	}
}

/* ------------------------------------------- */
/*	Formations
/* ------------------------------------------- */

.formations li .wp-block-group {
	height: 100%;
}

.calendrier h3 {
	font-size: var(--wp--preset--font-size--medium);
	font-weight: normal;
	background-color: var(--wp--preset--color--laine);
	display: inline-block;
	padding: .5rem;
	border-radius: .5rem;
}

.calendrier .wp-block-paragraph {
	margin-block-start: 1rem;
	margin-left: 0 !important;
}

@media (min-width: 600px) {
	.columns-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.columns-4 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 1200px) {
	.columns-3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	
	.columns-4 {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}


/* ------------------------------------------- */
/*	Single formations
/* ------------------------------------------- */

.single-formations h3 {
	font-size: var(--wp--preset--font-size--large);
}

.info-complementaires {
	margin-top:2rem;
	padding: 1rem 2rem;
	background-color: var(--wp--preset--color--lait-fraise);
}

.infos-icon {
	width: 3.25rem;
	flex-shrink: 0;
	fill:var(--wp--preset--color--anthracite)
}

.single-formations main {
	margin-top:0;
	margin-bottom:0;
	padding-top:var(--wp--preset--spacing--60);
	padding-right:var(--wp--preset--spacing--80);
	padding-left:var(--wp--preset--spacing--80);
}

@media (max-width: 781px) {
	.single-formations main {
		padding-right: var(--wp--style--root--padding-right) !important;
		padding-left: var(--wp--style--root--padding-right) !important;
	}
}

/* ------------------------------------------- */
/*	Formatrice
/* ------------------------------------------- */

.quelques-elements figure {
	max-width: 200px;
	margin-left: 8% !important;
}

/* ------------------------------------------- */
/*	Single post
/* ------------------------------------------- */

.single-post .post-navigation {
	padding: 1rem;
	background-color: var(--wp--preset--color--laine-dark);
}

.single-post .wp-block-group.has-background {
	padding: 1rem;
}

/* ------------------------------------------- */
/*	Footer
/* ------------------------------------------- */

footer .wordmark {
	width: 8rem;
}

footer .wordmark .fill-1 {
	fill: var(--wp--preset--color--laine);
}

footer .wp-block-column {
	margin:0;
	color:var(--wp--preset--color--laine);
}

footer .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:first-child {
	flex-basis: 66.66%;
}

footer .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
	flex-basis: 16.66%;
	min-width: 180px;
}

footer .wp-block-navigation {
	gap:.25rem;
}

footer nav.wp-block-navigation {
	margin-top: 1rem;
}

.site-footer .items-justified-center {
	gap: 2rem;
}

/* ------------------------------------------- */
/*	Helper Classes
/* ------------------------------------------- */

.stretched-link::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
}

.type-post .wp-block-post-excerpt__more-link {
	position: relative;
}

.type-post .wp-block-post-excerpt__more-link::after {
	content: "";
	position: absolute;
	width: 100%;
	transition: ease-out all .3s;
	height: 2px;
	display: block;
	bottom: 0;
	background-color: currentColor;
	animation: ease-out .3s;
}

.text-shadow {
	text-shadow: 0rem 0rem 4rem black;
}

.type-post .wp-block-post-excerpt__more-link:hover::after {
	bottom: -3px;
	height: 6px;
}

.overflow-hidden {
	overflow: hidden;
}

.w-100,
.w-100 img {
	width: 100%;
}

.object-fit-cover {
	object-fit: cover;
}

.ratio-16x9 {
	aspect-ratio: 16/9;
	display: block;
	height: 100%;
	width: 100%;
}

.position-relative {
	position: relative;
}

.align-items-center {
	align-items: center !important;
}

.align-items-start {
	align-items: start !important;
}

.justify-content-center {
	justify-content: center!important;
}

.flex-wrap {
	flex-wrap: wrap !important;
}

.d-flex {
	display: flex !important;
}

.w-100 {width: 100%!important;}

.gap-2 {
	gap: .5rem !important;
}

.gap-3 {
	gap: 1rem !important;
}

.gap-4	{
	gap: 4rem !important;
}

.m-0 {
	margin: 0 !important;
}

.my-2 {
	margin-top:2rem;
	margin-bottom:2rem;
}

.mt-0 {
	margin-top: 0 !important;
}

.mt-1 {
	margin-top: 1rem;
}

.mt-2 {
	margin-top: 2rem;
}

.mb-3 {
	margin-bottom: 3rem;
}

@media (min-width: 782px) {
	.p-md-5vw {
		padding: 5vw !important;
	}
}

.py-2 {
	padding-top: 2rem !important;
	padding-bottom: 2rem !important;
}

.p-1 {
	padding: 1rem !important;
}

.pb-3 {
	padding-bottom: 3rem !important;
}

.pb-4 {
	padding-bottom: 4rem !important;
}

.pt-2 {
	padding-top: 2rem;
}

.rounded, .wp-block-image img, .rounded img {
	border-radius: .5rem !important;
	overflow: hidden;
}

/* Hiding and Showing -------------- */

@media ( max-width: 1100px ) { 	.hide-tablet-landscape { display: none !important; } }
@media ( max-width: 1000px ) { 	.hide-tablet-portrait { display: none !important; } }
@media ( max-width: 700px ) { 	.hide-mobile { display: none !important; } }

/* Margins ------------------------- */

:root .no-margin.no-margin { margin: 0 !important; }
:root .no-margin-bottom.no-margin-bottom, :root .no-margin-vertical.no-margin-vertical { margin-bottom: 0 !important; }
:root .no-margin-left.no-margin-left, :root .no-margin-horizontal.no-margin-horizontal { margin-left: 0 !important; }
:root .no-margin-right.no-margin-right, :root .no-margin-horizontal.no-margin-horizontal { margin-right: 0 !important; }
:root .no-margin-top.no-margin-top, :root .no-margin-vertical.no-margin-vertical { margin-top: 0 !important; }

/* ------------------------------------------- */
/*	Layout
/* ------------------------------------------- */

@media (min-width: 782px) {
  .gap-4.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column.col-md-6 {
	flex: 0 0 auto;
    width: calc(50% - 2rem);
  }

  .order-md-first {
	order: -1 !important;
  }
}

@media (min-width: 1200px) {
  .gap-4.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column.col-xl-4 {
	flex: 0 0 auto;
    width: calc(33.33333333% - 2rem);
  }
}


/* ------------------------------------------- */
/*	WPCF7
/* ------------------------------------------- */

.wpcf7 label {
	font-weight: bold;
}

.wpcf7 input {
	border-bottom: 1px solid;
	width: 100%;
}

.wpcf7 textarea {
	border: 1px solid;
	margin-top: .5rem;
	width: 100%;
}

.wpcf7-form-control.wpcf7-select {
	border: 1px solid;
	border-radius: 6px;
	margin-top: .5rem;
}

.wpcf7-submit {
	background-color: var(--wp--preset--color--orange) !important;
	border-radius: 2rem;
	width: fit-content !important;
	padding: .5rem 1rem;
	box-shadow: none;
	border-bottom: 0 !important;
	color: var(--wp--preset--color--laine);
}

.wpcf7 {
	padding-bottom: 4rem;
}

/* ------------------------------------------- */
/*	Blocks
/* ------------------------------------------- */

.heures-formation {
	width: fit-content;
	margin: unset !important;
	text-decoration: none;
	padding: .25rem .5rem;
	border-radius: 2rem;
	background-color: var(--wp--preset--color--lait-fraise);
	white-space: nowrap;
}

.wp-block-query .wp-block-post-featured-image a::before {
	content: "";
	background: black;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	transition: all .3s ease-in-out;
}

.featured-image-figure.alignwide {
	display: flex;
	flex-wrap: wrap;
}

.wp-block-query .wp-block-post-featured-image:hover a::before {
	opacity: .4;
}

.leaflet-map.leaflet-container a {
	color: var(--wp--preset--color--anthracite);
}

.leaflet-map.leaflet-container .leaflet-control-attribution {
	background: var(--wp--preset--color--lait-fraise);
}