/*
Theme Name: OEN
Author: Quattro Creative
Requires at least: 6.4
Tested up to: 6.4
Requires PHP: 8.2
Version: 0.1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: oen
*/
* {
    min-width: 0;
}

:root {
    --default-font-family: 'Open Sans', sans-serif;
}

html,
body {
    padding: 0;
    margin: 0;
}

body {
    font-family: var(
            --e-global-typography-text-font-family,
            var(--default-font-family)
    );
    -webkit-font-smoothing: antialiased;
}
svg path,
svg circle {
    vector-effect: non-scaling-stroke;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
}

p {
    margin: 0;
}

button {
    cursor: pointer;
}

strong, b {
    font-weight: 600;
}

.elementor-element.e-con.e-grid {
    grid-template-rows: auto;
}


/* Skip to content */
.skip-to-content {
    position: absolute !important;
    top: -10000em;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.skip-to-content:focus {
    top: 42px;
    left: 42px;
    z-index: 100000;
    display: block;
    background-color: #000;
    width: max-content;
    height: auto;
    padding: 24px;
    font-size: 1em;
    font-weight: 600;
    line-height: normal;
    color: #fff;
    text-decoration: none;
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
}

/* ELEMENTOR */
.elementor a:not([class]) {
	color: var(--e-global-color-accent);
	text-decoration: underline;
	text-underline-offset: 5px;
}

#menu-mobile-close-btn a {
	text-decoration: underline;
	text-underline-offset: 5px;
}


.elementor a:not([class]):focus-visible,
.elementor a:not([class]):hover,
#menu-mobile-close-btn:focus-visible a,
#menu-mobile-close-btn:hover a {
	text-decoration: none;
}

/* Add lateral padding */
.e-con.e-parent.e-con-boxed {
    --padding-left: 20px;
    --padding-right: 20px;
}

@media screen and (min-width:768px) {
    .e-con.e-parent.e-con-boxed {
        --padding-left: 40px;
        --padding-right: 40px;
    }
}

@media screen and (min-width:1025px) {
    .e-con.e-parent.e-con-boxed {
        --padding-left: 80px;
        --padding-right: 80px;
    }
}

/* Icon list: fix element not visible verticaly */
.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container {
    overflow: unset !important;
}

/* Put decoration in boxed space */
.has-decoration .e-con-inner {
    position: relative;
}

/* Counter Widget: Fix an issue with the used font in this site */
.qc-counter-number {
    font-variant-numeric: lining-nums;
}

/* Add offset for underline */
.qc-underline {
    text-underline-offset: 5px;
}

/* Page A propos: Style Tabs button */
@media screen and (min-width: 590px) {
	.e-n-tabs-heading .e-n-tab-title:first-child {
		border-radius: 50px 0 0 50px;
	}
	.e-n-tabs-heading .e-n-tab-title:last-child {
		border-radius: 0 50px 50px 0;
	}
}


/* Remove the line-height:1 added by elementor */
.elementor-heading-title.elementor-size-default {
    line-height: unset;
}

/***************************************/
/* WPForms */
div.wpforms-container {
    --wpforms-label-font-size: 16px;
    --wpforms-label-font-weight: 500;

    --wpforms-input-bg: #fff;
    --wpforms-input-border: none;
    --wpforms-input-padding: 16px 24px;
    --wpforms-input-font-size: 16px;
    --wpforms-input-color: #403129;

    --wpforms-btn-submit-bg: #3D523B;
    --wpforms-btn-submit-border: 1px solid transparent;
    --wpforms-btn-submit-border-radius: 9999px;
    --wpforms-btn-submit-padding: 16px 32px;
    --wpforms-btn-submit-font-size: 16px;
    --wpforms-btn-submit-font-weight: 600;
    --wpforms-btn-submit-color: #fff;

    --wpforms-error-font-size: 14px;
    --wpforms-error-font-weight: 500;
    --wpforms-error-color: #D8151D;

    --wpforms-confirmation-wrapper-bg: #AFB79C;
    --wpforms-confirmation-wrapper-border: 1px solid transparent;
    --wpforms-confirmation-wrapper-padding: 24px 40px;
    --wpforms-confirmation-p-font-size: 16px;
    --wpforms-confirmation-p-font-weight: 500;
    --wpforms-confirmation-p-color: #403129;
}

/* - LABEL - */
div.wpforms-container label.wpforms-field-label {
    font-size: var(--wpforms-label-font-size);
    font-weight: var(--wpforms-label-font-weight);
    margin-bottom: 16px;
}

/* - INPUTS - */
div.wpforms-container input,
div.wpforms-container textarea {
    background-color: var(--wpforms-input-bg);
    border: var(--wpforms-input-border);
    padding: var(--wpforms-input-padding);
    font-size: var(--wpforms-input-font-size);
    color: var(--wpforms-input-color);
}

div.wpforms-container input::placeholder,
div.wpforms-container textarea::placeholder {
    color: #767676;
    font-style: italic;
}


/* - SUBMIT BUTTON - */
div.wpforms-container button.wpforms-submit {
    background-color: var(--wpforms-btn-submit-bg);
    border: var(--wpforms-btn-submit-border);
    border-radius: var(--wpforms-btn-submit-border-radius);
    padding: var(--wpforms-btn-submit-padding);
    font-size: var(--wpforms-btn-submit-font-size);
    font-weight: var(--wpforms-btn-submit-font-weight);
    color: var(--wpforms-btn-submit-color);
    transition: all 0.3s ease;
}

div.wpforms-container button.wpforms-submit:hover {
    --wpforms-btn-submit-bg: #AFB79C;
    --wpforms-btn-submit-color: #403129;
}

/* - LINKS - */
div.wpforms-container a:not([class]) {
    font-weight: 600;
    color: var(--wpforms-input-color);
    text-decoration: underline;
    text-underline-offset: 4px;
}
div.wpforms-container a:not([class]):hover {
    text-decoration: none;
}

/* - ERROR - */
div.wpforms-container .wpforms-form .wpforms-has-error input,
div.wpforms-container .wpforms-form .wpforms-has-error textarea {
    border-color: var(--wpforms-error-color);
}
div.wpforms-container .wpforms-form .wpforms-has-error em.wpforms-error {
    font-size: var(--wpforms-error-font-size);
    font-weight: var(--wpforms-error-font-weight);
    color: var(--wpforms-error-color);
}

/* - CONFIRMATION - */
div.wpforms-container .wpforms-confirmation-container {
    background-color: var(--wpforms-confirmation-wrapper-bg);
    border: var(--wpforms-confirmation-wrapper-border);
    padding: var(--wpforms-confirmation-wrapper-padding);
}

div.wpforms-container .wpforms-confirmation-container p {
    font-size: var(--wpforms-confirmation-p-font-size);
    font-weight: var(--wpforms-confirmation-p-font-weight);
    color: var(--wpforms-confirmation-p-color);
}


/***************************************/
/* Header */

/* Menu */
/* Use this fix hide/show the menu */
.mobile-menu-btn {
	display: none;
}

.qc-menu-container .qc-menu {
	gap: 40px;
}
@media screen and (max-width: 1280px) {
	.qc-menu-container .qc-menu {
		gap: 16px;
	}
}

@media screen and (max-width: 1124px) {
	.elementor-widget-quattro-menu {
		display: none;
	}

	.mobile-menu-btn {
		display: block;
	}
	
	/* Fix visuel pour le bouton de langue */
	.qc-lng-toggle {
		padding-top: 0.375rem;
	}
}

.qc-menu-link {
    --line-brun: url(data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%20126%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20stroke%3D%22%23403129%22%20stroke-width%3D%222%22%20d%3D%22M0%206h126%22%2F%3E%3Cpath%20d%3D%22M87.849%209.042c-1.247-.924-1.643-2.417-1.643-2.417s1.617-.02%202.864.903c1.247.924%201.642%202.417%201.642%202.417s-1.622.007-2.863-.903m-75.186%200c-1.247-.924-1.643-2.417-1.643-2.417s1.617-.02%202.864.903c1.247.924%201.642%202.417%201.642%202.417s-1.622.007-2.863-.903m25.488-4.718c1.247-.924%201.643-2.417%201.643-2.417s-1.617-.02-2.864.904-1.642%202.417-1.642%202.417%201.622.006%202.863-.904m72%200c1.247-.924%201.643-2.417%201.643-2.417s-1.617-.02-2.864.904-1.642%202.417-1.642%202.417%201.622.006%202.863-.904%22%20fill%3D%22%23403129%22%2F%3E%3C%2Fsvg%3E);

    text-decoration: underline !important;
    text-underline-offset: 4px;
    text-decoration-color: rgba(0,0,0,0) !important;
    transition: all .2s;
}

.qc-menu-link::before {
    content: '';
/*     background-image: var(--line-brun); */
    width: 100%;
    height: 11px;
    position: absolute;
    bottom: -4px;
    left: 0;
    background-size: auto 11px;
    opacity: 0;
    transition: all .2s;
}

.qc-menu-item .qc-menu-link:hover::before,
.qc-menu-item .qc-menu-link:focus-visible::before,
.qc-menu-item.qc-active .qc-menu-link::before {
    opacity: 1;
    bottom: -8px;
}

.qc-menu-item .qc-menu-link::after {
    content: attr(data-title);
    display: block;
    height: 0;
    font-weight: 600;
    visibility: hidden;
    overflow: hidden;
}

.qc-menu-item .qc-menu-link:hover,
.qc-menu-item .qc-menu-link:focus-visible {
    text-decoration-color: rgba(0,0,0,1) !important;
    text-underline-offset: 7px;
}

.qc-menu-item.qc-active .qc-menu-link {
    font-weight: 600;
}


/*---------------------------------*/
.mobile-menu .elementor-nav-menu {
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.mobile-menu .elementor-nav-menu .menu-item > a {
    display: inline;
	transition: none;
}

.mobile-menu .elementor-nav-menu .menu-item {
	--line-white: url(data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%20126%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%20d%3D%22M0%206h126%22%2F%3E%3Cpath%20d%3D%22M87.849%209.042c-1.247-.924-1.643-2.417-1.643-2.417s1.617-.02%202.864.903c1.247.924%201.642%202.417%201.642%202.417s-1.622.007-2.863-.903m-75.186%200c-1.247-.924-1.643-2.417-1.643-2.417s1.617-.02%202.864.903c1.247.924%201.642%202.417%201.642%202.417s-1.622.007-2.863-.903m25.488-4.718c1.247-.924%201.643-2.417%201.643-2.417s-1.617-.02-2.864.904-1.642%202.417-1.642%202.417%201.622.006%202.863-.904m72%200c1.247-.924%201.643-2.417%201.643-2.417s-1.617-.02-2.864.904-1.642%202.417-1.642%202.417%201.622.006%202.863-.904%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);

    margin: 0 auto;
    width: fit-content;
	
	text-decoration: underline !important;
	text-underline-offset: 4px;
	text-decoration-color: rgba(0,0,0,0) !important;
	transition: text-underline-offset .2s;
}

.mobile-menu .elementor-nav-menu .menu-item::before {
	content: '';
/*     background-image: var(--line-white); */
    width: 100%;
    height: 11px;
    position: absolute;
    bottom: -4px;
    left: 0;
    background-size: auto 11px;
    opacity: 0;
	transition: bottom .2s;
}


.mobile-menu .elementor-nav-menu .menu-item:hover,
.mobile-menu .elementor-nav-menu .menu-item:focus-visible,
.mobile-menu .elementor-nav-menu .menu-item.current-menu-item {
    text-decoration-color: rgba(255,255,255,1) !important;
    text-underline-offset: 14px;
}

.mobile-menu .elementor-nav-menu .menu-item.current-menu-item {
    font-style:italic;
}

.mobile-menu .elementor-nav-menu .menu-item:hover::before,
.mobile-menu .elementor-nav-menu .menu-item:focus-visible:before,
.mobile-menu .elementor-nav-menu .menu-item.current-menu-item::before {
    opacity: 1;
    bottom: -14px;
}

/***************************************/
/* Home */
/* Accordion */
/* Accordion: fix the icon shrinking */
.elementor-widget-n-accordion .e-n-accordion-item-title-icon {
    flex-shrink: 0;
}
/* Accordion: fix the color not working with uploaded svg */
.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>svg {
    color: var(--n-accordion-icon-active-color);
}

.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title {
	align-items: self-start;
}

@media (max-width: 1024px) {
	.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title {
		flex-direction: column;
		align-items: start;
		padding-top: 24px;
		padding-left: 0;
		padding-right: 0;
	}
}
/***************************************/
/* Footer */

/* Quattro register */
.link-quattro {
    font-weight: 500;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    color: #403129;
    transition: all .3s;

    &:hover {
        text-decoration: none !important;
    }
}
/***************************************/
/* petit fix lng a changer */
.qc-lng-switcher-container {
    z-index: 20;
}
.qc-lng-dropdown {
    background-color: #F0EFE7;
}

.qc-lng-toggle span, .qc-lang-link {
    font-family: 'DM Sans';
    font-weight: 300;
    font-size: 16px;
    text-transform: uppercase;
}
.qc-lng-toggle span {
    font-weight: 600;
}

/* ************************** */
@media (max-width: 767px) {
    .responsive-icon-list .elementor-icon-list-items {
        flex-direction: column;
        gap: 32px;
    }
}

/***************************************/
/* Slider Layout Two - hie the pagination dots under 455px */
@media (max-width: 455px) {
	.qc-slider-pagination {
		display: none;
	}
}

/***************************************/
/* Styles pour page actualités */

.elementor-post__excerpt p {
	overflow: hidden;
	margin-top: 12px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
}
.elementor-posts a.elementor-post__read-more {
	text-decoration: underline;
	text-underline-offset: 5px;
}
.elementor-posts a.elementor-post__read-more:hover {
	text-decoration:none;
	transition: color 0.3s;
}

/***************************************/
/* FIX */

.qc-font-boska {
    font-family: "Trebuchet MS", sans-serif;
}

.lg\:qc-text-\[32px\] {
	font-size: 28px;
}
@media screen and (min-width:768px) {
	.lg\:qc-text-\[32px\] {
		font-size: 36px;
	}
}

@media screen and (min-width:1025px) {
	.lg\:qc-text-\[32px\]{
		font-size: 42px;
	}
}