/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* Eurodesk Custom Styles */

/* Define reusable variables for maintainability */
:root {
    --header-height: 45px; /* Default header height */
    --admin-bar-height: 32px; /* WordPress admin bar height */
    --background-color: #ffffff; /* Background color for headers */
    --shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Optional shadow for headers */
    --transition-duration: 0.3s; /* Refined duration for transitions */
}

/* General styling for HTML and body */
html, body {
    margin: 0;
    padding: 0;
    overflow-x: hidden; /* Prevent horizontal scrolling */
    overflow-y: visible; /* Allow vertical scrolling */
    background-color: var(--background-color); /* Prevent visual gaps */
    overscroll-behavior: none; /* Prevent over-dragging */
    touch-action: pan-x pan-y; /* Ensure smooth touch interactions */
    box-sizing: border-box; /* Include padding and borders in width calculations */
}

/* dimensione base fluida per tutto il sito */
html {
  font-size: clamp(14px, 1.2vw, 16px);
  /* 14px = minimo su mobile
     1.2vw = scala con larghezza viewport
     16px = massimo su desktop normale */
}

/* aggiustamento per schermi molto grandi */
@media (min-width: 1600px) {
  html {
    /*font-size: 17px;  evita che il testo diventi troppo piccolo rispetto allo schermo grande */
  }
}


/* title sizes based on Luca's guidelines*/
h1.elementor-heading-title {
	/*font-family: "Oswald", Sans-serif;
	font-size:2.75rem;
	font-weight:800;
	line-height:2.75rem;
	text-transform:uppercase;
	font-stretch:140%;*/
	
	font-family: "Anybody Variable", Sans-serif!important;
    font-size: 2.75rem!important;
    font-weight: 800!important;
    font-stretch: 140%!important;
    text-transform: uppercase!important;
    line-height: 2.75rem!important;
}

h2.elementor-heading-title {
	font-family: "Anybody Variable", Sans-serif!important;
	font-size:1.75rem!important;
	font-weight:800!important;
	line-height:1.75rem!important;
	text-transform:uppercase!important;
	font-stretch:140%!important;
	padding-bottom:10px!important;
}

.oswald h2.elementor-heading-title {
    font-family: "Oswald", Sans-serif !important;
    font-weight: 600 !important;
	
}


header h2.elementor-heading-title  {
    font-size: 1.35rem;
    font-weight: 600;
	line-height: 1.5rem;
	font-family: "Oswald", Sans-serif!important;

}

.featurednews h2.elementor-heading-title {
	font-family: "Oswald", Sans-serif!important;
		font-weight:800!important;
	font-size:2.75rem;
	line-height:2.85rem;

}

h3.elementor-heading-title {
	font-family: "Oswald", Sans-serif!important;
	font-size:1.5rem!important;
	font-weight:600!important;
	line-height:1.75rem!important;
	text-transform:uppercase!important;
}


h4.elementor-heading-title  {
	font-family: "Oswald", Sans-serif !important;
	font-size: 1.55rem !important;
	line-height: 1.75rem !important;
	font-weight: 600 !important;
	    text-transform: uppercase!important;
}

.wp-page:first-child h3.elementor-heading-title {
	color:red!important;
}



/* About Us */

.tenprinciples h2.elementor-heading-title {
	font-family: "Anybody Variable", Sans-serif!important;
	font-size:16px!important;
	font-weight:800!important;
	line-height:1.5rem!important;
	text-transform:uppercase!important;
	font-stretch:140%!important;
	font-style:normal!important;
}




.pagelearning .wp-page h3.elementor-heading-title,
.pagevolunteering .wp-page h3.elementor-heading-title,
.pageworking .wp-page h3.elementor-heading-title,
.pagemaking-a-change .wp-page h3.elementor-heading-title,
.pagecompeting  .wp-page h3.elementor-heading-title {
	font-family: "Anybody Variable Italic", Sans-serif!important;
    font-size: 1.75rem!important;
    font-weight: 590!important;
    font-stretch: 82%!important;
    text-transform: uppercase!important;
    line-height: 1.75rem!important;
	margin-top: 0.5rem!important;
}


.newsbox h3.elementor-heading-title {
	font-size:1.10rem!important;
	line-height:1.45rem!important;

}


p, li {
	font-size:1rem;
}


.pagelearning .bigger-p p,
.pagevolunteering .bigger-p p,
.pageworking .bigger-p p,
.pagemaking-a-change .bigger-p p,
.pagecompeting .bigger-p p{
	font-family: "Recursive", Sans-serif!important;
    font-size: 19px;
    font-weight: 400;
    line-height: 23px;
    letter-spacing: -0.2px;
}


.p_footer_mobile p {
	font-size: 1.4rem !important;
  font-weight: 500 !important;
}

/* START things added by Luca */

.opp-categ h2.elementor-heading-title {
	font-family: "Oswald", Sans-serif !important;
	font-size: 1.5rem !important;
	line-height: 1.5rem !important;
	 font-weight: 600 !important;
}

/*
.about-us h2.elementor-heading-title {
	font-family: "Oswald", Sans-serif !important;
	font-size: 1.5rem !important;
	line-height: 1.5rem !important;
	font-weight: 600 !important;
}
*/

.about-us p {
	font-family: "Oswald", Sans-serif !important;
	font-size: 1.5rem !important;
	line-height: 1.5rem !important;
	font-weight: 600 !important;
}
/*
.learning1 h2.elementor-heading-title,
.volunteering1 h2.elementor-heading-title,
.working1 h2.elementor-heading-title,
.making1 h2.elementor-heading-title,
.competing1 h2.elementor-heading-title {
	font-family: "Recursive", Sans-serif!important;
	font-size:1rem!important;
	font-weight:600!important;
	line-height:1rem!important;
	text-transform: none;
}
*/


.learning2 h2.elementor-heading-title,
.volunteering2 h2.elementor-heading-title,
.working2 h2.elementor-heading-title,
.making2 h2.elementor-heading-title,
.competing2 h2.elementor-heading-title {
	font-family: "Oswald", Sans-serif !important;
	font-size: 1.5rem !important;
	line-height: 1.5rem !important;
	font-weight: 600 !important;
}

.learning3 p,
.volunteering3 p,
.working3 p,
.making3 p,
.competing3 p {
	font-family: "Recursive", Sans-serif !important;
	font-size:1rem!important;
	font-weight:800!important;
	line-height:1.5rem!important;
}

.info-proj h2.elementor-heading-title {
	font-family: "Oswald", Sans-serif !important;
	font-size: 1.5rem !important;
	line-height: 1.5rem !important;
	font-weight: 600 !important;
}

.campaigns1 h2.elementor-heading-title {
	font-family: "Oswald", Sans-serif !important;
	font-size: 1.75rem !important;
	line-height: 1.5rem !important;
	font-weight: 600 !important;
}

.campaigns2 h2.elementor-heading-title {
	font-family: "Oswald", Sans-serif !important;
	font-size: 1.5rem !important;
	line-height: 1.5rem !important;
	font-weight: 600 !important;
}

.contact h2.elementor-heading-title {
	font-family: "Oswald", Sans-serif !important;
	font-size: 1.5rem !important;
	line-height: 1.5rem !important;
	font-weight: 600 !important;
}

.contact p {
	font-size: 1.25rem !important;
}

/* END things added by Luca */




/* FOOTER (not pro) */ 

footer h3.elementor-heading-title {
	font-family: "Anybody Variable", Sans-serif!important;
    font-size: 1.5rem!important;
    font-weight: 590!important;
    font-stretch: 82%!important;
    text-transform: uppercase!important;
    line-height: 1.75rem!important;
	margin-top: 0.5rem!important;
}




@media (max-width: 767px) {
	
	
	/* HIDE BUTTON ARROWS ON MOBILE TO GAIN SPACE*/
	.elementor-button-link .elementor-button-icon {
		display:none!important;
	}
	
	h1.elementor-heading-title {
    font-size: 2rem !important;
    line-height: 2.1rem !important;
}

h2.elementor-heading-title {
	font-family: "Anybody Variable", Sans-serif;
	font-size:1rem;
	font-weight:600;
	line-height:1.15rem;
	text-transform:uppercase;
	/*color:red!important;*/
}

	.featurednews h2.elementor-heading-title {


	font-size:1.75rem;
	line-height:1.85rem;

}

h3.elementor-heading-title {
	font-family: "Oswald", Sans-serif!important;
	font-size:1.5rem!important;
	font-weight:600!important;
	line-height:1.5rem!important;
	text-transform:uppercase!important;
}

	.pagelearning h1.elementor-heading-title,
.pagevolunteering h1.elementor-heading-title,
.pageworking h1.elementor-heading-title,
.pagemaking-a-change h1.elementor-heading-title,
.pagecompeting  h1.elementor-heading-title {
font-size: 2.2rem !important;
  line-height:2.3rem;
}

.pagelearning h2.elementor-heading-title,
.pagevolunteering h2.elementor-heading-title,
.pageworking h2.elementor-heading-title,
.pagemaking-a-change h2.elementor-heading-title,
.pagecompeting  h2.elementor-heading-title {
font-size: 1.65rem !important;
  line-height:1.75rem;
}


	.pagelearning h3.elementor-heading-title,
.pagevolunteering h3.elementor-heading-title,
.pageworking h3.elementor-heading-title,
.pagemaking-a-change h3.elementor-heading-title,
.pagecompeting  h3.elementor-heading-title {


}


.newsbox h3.elementor-heading-title {
	font-size:1.15rem!important;
	line-height:1.35rem!important;

}



p {
	font-family: "Recursive", Sans-serif!important;
	font-size:1rem!important;
	font-weight:400!important;
	line-height:1.5rem!important;

}

	/* video about us droite en mobile */

	.elementor-32129 .elementor-element.elementor-element-763b74a1.e-con {
    --e-con-transform-rotateZ: 0deg!important;
    --align-self: center;
}



} /* max 767 px*/

/* BUTTON TO TOP*/
.elementor-26 .elementor-element.elementor-element-9713905 .elementor-heading-title {
	font-family: "Oswald", Sans-serif!important;
    font-size: 12px!important;
    font-weight: 600!important;
}


/* Adjust header position for WordPress admin bar */
body.admin-bar .header-1,
body.admin-bar .header-2 {
    top: var(--admin-bar-height);
}

body.admin-bar {
    padding-top: calc(var(--header-height) + var(--admin-bar-height));
}

/* Shared styles for both headers */
.header-1, .header-2 {
    width: 100%;
    position: fixed;
    top: 0;
    height: var(--header-height);
    background-color: var(--background-color);
    box-shadow: var(--shadow);
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    transition: transform var(--transition-duration) ease, opacity var(--transition-duration) ease;
}

/* Specific styles for header-1 */
.header-1 {
    z-index: 1000; /* Ensure it's above other content initially */
    transform: translateY(0);
    opacity: 1;
}

/* Specific styles for header-2 */
.header-2 {
    z-index: 999; /* Ensure it's below header-1 initially */
    transform: translateY(-100%);
    opacity: 0;
    overflow: visible; /* Ensure the menu is not hidden */
}

/* Sticky effect: header-2 slides down, header-1 slides up */
.scrolled .header-2 {
    transform: translateY(0);
    opacity: 1;
    z-index: 1001; /* Ensure it's above header-1 when displayed */
}

.scrolled .header-1 {
    transform: translateY(-100%);
    opacity: 0;
    z-index: 998; /* Push it behind header-2 */
}

/* Ensure seamless transitions without gaps */
.header-1, .header-2 {
    will-change: transform, opacity; /* Optimize animation performance */
}

/* Body padding ensures content doesn't overlap with headers */
body {
    padding-top: var(--header-height); /* Match the header height */
}

/* Hero section adjustment: Ensure spacing below the header */
.hero-section {
    margin-top: var(--header-height); /* Ensure proper spacing below the header */
}

/* Responsive design: Adjust header height and font size for smaller screens */
@media (max-width: 767px) {
    :root {
        --header-height: 40px; /* Reduce header height for tablets and small screens */
    }
    .header-1, .header-2 {
        font-size: 0.9rem; /* Adjust font size for smaller headers */
    }
    body {
        padding-top: var(--header-height); /* Adjust padding for smaller headers */
    }
    .hero-section {
        margin-top: var(--header-height); /* Ensure proper spacing for smaller headers */
    }
}

@media (max-width: 480px) {
    :root {
        --header-height: 35px; /* Further reduce height for very small screens */
    }
    .header-1, .header-2 {
        justify-content: center; /* Center-align content for narrow screens */
    }
    body {
        padding-top: var(--header-height); /* Adjust padding for smaller headers */
    }
    .hero-section {
        margin-top: var(--header-height); /* Ensure proper spacing for smaller headers */
    }
}








@media (max-width: 767px) {
    #elementor-popup-modal-32593,
	#elementor-popup-modal-32527 {
        justify-content: flex-end;
		position:fixed;
		z-index:9999999;
    }

	  .elementor-nav-menu--dropdown  li {
        font-size: 28px !important;
		  padding-bottom: 17px;

    }

    .elementor-nav-menu--dropdown .sub-menu li {

        padding-bottom: 1px !important;
    }

	 .elementor-nav-menu--dropdown .sub-menu li a {
   font-size: 18px !important;
		font-family: "Recursive", Sans-serif!important;
		font-weight:500!important;

    }
}


.socialmenu_mobilemenu  svg {
    /*fill: green!important;*/
}


/* fix imahes elementor qui prennent toute la largeur (espaces blancs autour)*/


.widthauto img {
    width: auto !important;
       max-width: none ;
}




/* SEE SOME PROJECTS DROPDOWN*/

details {
    margin-left: -30px;
}

details .e-n-accordion-item-title-text,
details .e-n-accordion-item-title-icon {
    transition: all .3s ease;
}


details summary {
   margin-left: 30px;
     max-width: 250px;
    padding: 10px 10px 10px 10px!important;
    border-radius:10px 10px 0 0!important;
    transition: all .3s ease;
    background:rgba(255,255,255,0);
   
}

details[open] summary {
    background:rgba(255,255,255,1);

}


details .contenuaccordeon {
     background:rgba(255,255,255,0);
}

details[open] .contenuaccordeon {

        border-radius:10px 10px 10px 10px!important;
      background:rgba(255,255,255,1);
}

@media (max-width: 767px) {
   details {
    margin-left: 0px;
}

details summary {
   margin-left: 0px;
}


details[open] .contenuaccordeon {

        border-radius:0px 10px 10px 10px!important;
     
}

}

