/*
 Theme Name:   EVS 2025
 Theme URI:    https://entvideoservice.com
 Description:  Thème créé par Maxime Lauzier
 Author:       Maxime Lauzier
 Author URI:   https://maximelauzier.com
 Template:     generatepress
 Version:      5.1
*/

/* =========================
   TYPOGRAPHY
========================= */

:root  {
    --fs-h-xxl:clamp(3.375rem, 2.608rem + 3.0682vw, 5.0625rem);
    --fs-h-xl:clamp(3.375rem, 2.9915rem + 1.5341vw, 4.2188rem);
    --fs-h1: clamp(3.375rem, 3.0682rem + 1.2273vw, 4.05rem);
    --fs-h2:clamp(2.5313rem, 2.3011rem + 0.9205vw, 3.0375rem);
    --fs-h3:clamp(2.1094rem, 1.9176rem + 0.767vw, 2.5313rem);
    --fs-h4:clamp(1.6875rem, 1.5341rem + 0.6136vw, 2.025rem);
    --fs-h5:clamp(1.4063rem, 1.2784rem + 0.5114vw, 1.6875rem);
    --fs-h6:clamp(1.2656rem, 1.1506rem + 0.4602vw, 1.5188rem);
    --fs-p:clamp(0.9375rem, 0.8523rem + 0.3409vw, 1.125rem);
	--grid-gap: clamp(1rem, calc(1.11vw + 0.78rem), 1.75rem);
	--content-gap:clamp(1.56rem, calc(3.52vw + 0.86rem), 3.94rem);
	--grid-auto-2:repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((2 - 1) * var(--grid-gap))) / 2) * 0.7, (100% - (2 - 1) * var(--grid-gap)) / 2)), 1fr));
	--grid-auto-3:repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((3 - 1) * var(--grid-gap))) / 3) * 0.7, (100% - (3 - 1) * var(--grid-gap)) / 3)), 1fr));
	--grid-auto-4:repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((4 - 1) * var(--grid-gap))) / 4) * 0.7, (100% - (4 - 1) * var(--grid-gap)) / 4)), 1fr));
	--content-width:1366px;
	--space-m: clamp(1.5rem, calc(0.5964214712vw + 1.365805169rem), 1.875rem);

}


/* Register fonts */
:root {
	/* These HAVE TO match what is in the Customizer > Typography. Pull in font familys using font manager. Set headline-font as 'All Headlings', set body-font as HTML */ 
	--heading-font: 'Work Sans', sans-serif;
	--body-font: 'Work Sans', sans-serif;
}

/* Font Family Utilities */
.ff-body {
    font-family: var(--body-font);
}

.ff-heading {
    font-family: var(--heading-font);
}

/* Heading and utility class font assignment */
h1, h2, h3, h4, h5, h6,
[class^="fs-"] {
    font-family: var(--heading-font);
}

.fs-p {
    font-family: var(--body-font);
}

/* =========================
   FLUID TYPOGRAPHY SCALE
========================= */

.fs-xxl {
    font-size: calc(1.33 * var(--fs-h1));
}

.fs-xl {
    font-size:calc(1.2 - var(--fs-h1));
}

h1, .fs-h1 {
	font-size: var(--fs-h1);
}

h2, .fs-h2 {
	font-size: var(--fs-h2);
}

h3, .fs-h3 {
	font-size: var(--fs-h3);
}

h4, .fs-h4 {
	font-size: var(--fs-h4);
}

h5, .fs-h5 {
	font-size: var(--fs-h5);
}

h6, .fs-h6 {
	font-size: var(--fs-h6);
}

p, .fs-p {
	font-size: var(--fs-p);
}


/* Default Body / p font settings */ 
p {
	font-weight: 400;
	line-height: 1.5;
	margin-bottom: 1.5rem;
	font-family: var(--body-font);
}

/* Default Headings weight, margin, font-family */ 
h1, h2, h3, h4, h5, h6, .fs-h1, .fs-h2, .fs-h3, .fs-h4, .fs-h5, .fs-h6 {
	margin-bottom: 1rem;	
	font-family: var(--headline-font);
}

h1, .fs-h1 {
	font-weight:300;
}

h2, h3, h4, h5, h6, .fs-h2, .fs-h3, .fs-h4, .fs-h5, .fs-h6 {
	font-weight:700;
}


/* Button Line Height (Global) */
.gb-button{
	line-height: 1em;
}


/* Haumburger Menu Styling - SVG is saved in PHP */ 
	.mobile-menu-control-wrapper .menu-toggle, .mobile-menu-control-wrapper .menu-toggle:hover, .mobile-menu-control-wrapper .menu-toggle:focus, .has-inline-mobile-toggle #site-navigation.toggled {
    background-color: transparent;
	margin-right: -1rem;
	font-size: 1em;
}   

/* Primary Menu Button */ 
@media (min-width: 1025px) {
	.main-navigation .main-nav ul li.nav-cta a {	
	  background: var(--primary) !important;
	  color: var(--surface-0) !important;
	  padding: 1em 1.5em;
	  margin-left: 16px;
	  border-radius: 4px;

	  line-height: 1;
	  font-weight: 600;
	}

    .main-navigation .main-nav ul li.nav-cta a:hover {
      background: var(--primary-alt) !important;
      color: var(--surface-0) !important;
    }
}
 
@media (max-width: 1024px) { 
    .main-navigation .main-nav ul li.nav-cta a {
      margin-left: 0px;
    } 
}

/* Image Scroll Preview */
.image-scroll .featured, .position {
	background-position: 0 0;
	transition: 4s ease-in-out;
}

.image-scroll:hover .featured, .position:hover {
	background-position: 0 100%;
}

/* Force aspect ratio */
.force-aspect-ratio {
    aspect-ratio: 16/9;
}

.ar-16-9 {
    aspect-ratio: 16/9;
}

.ar-9-16 {
    aspect-ratio: 9/16;
}

.ar-4-3 {
    aspect-ratio: 4/3;
}

.ar-1-1 {
	aspect-ratio: 1/1;
}

/* 	=============
	Menu Accueil 
	=============*/

.home .main-navigation .main-nav ul li a, .home .main-navigation .menu-toggle, .home .main-navigation .menu-bar-itemsms {
    color: var(--surface-0);
}

/* produits menu */
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item {
	width:100%;
}

@media (max-width: 768px) {
	.is-left-sidebar.sidebar, .is-right-sidebar.sidebar {
    order: -10 !important;
}
}

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