/*
	Theme Name: Astralex
	Theme URI: 
	Author: Veronika Udod
	Author URI: 
	Version: 2.0
	Description: 
	Tags: 
	Licence: GPL v2 or later
	License URI: http://www.gnu.org/licenses/gpl-2.0.html
	Text Domain: G2r.it
*/

/* MAIN SETTINGS */
body, html{
    overflow-x: hidden;
    position: relative;
	transition: all 0.5s ease;
	transition: background-color 0.2s ease-in-out !important;
	margin: 0;
	padding: 0;
	margin-top: 0 !important;
}

body.page-id-210, body.page-id-157{
	background: #1e00c3;
}

:root{
    --blue: #1e00c3;
	--darkblue: #140274;
    --white: #FFFFFF;
    --black: #000000;
	--grey: #EAEAEA;
	--lightblue: #F3F2F9;
}

/* Fonts */
@font-face {
  font-family: "Aeonik";
  src: url("/wp-content/themes/themebase/inc/assets/fonts/Aeonik-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Aeonik";
  src: url("/wp-content/themes/themebase/inc/assets/fonts/Aeonik-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  src: url("/wp-content/themes/themebase/inc/assets/fonts/Aeonik-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Aeonik";
  src: url("/wp-content/themes/themebase/inc/assets/fonts/Aeonik-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

body{
  font-family: "Aeonik", sans-serif;
}

h1{
	font-size: 58px;
	line-height: 72px;
	font-weight: 700;
}

h2{
	font-size: 56px;
	line-height: 70px;
	font-weight: 700;
}

h3{
	font-size: 44px;
	line-height: 48px;
	font-weight: 700;
}

h4{
	font-size: 35px;
	font-weight: 700;
}

h5{
	font-size: 28px;
	font-weight: 400;
}

h6{
	font-size: 20px;
	font-weight: 700;
}

p, li{
	font-family: "Aeonik";
	font-size: 18px;
	font-weight: normal;
}

h2 div{
	font-size: 70px;
	line-height: 70px;
	font-weight: 770;
}

.text-white{
	color: var(--white);
}

.font-bold{
	font-weight: 700;
}

.max-w-1280{
	max-width: 1280px;
	margin: auto;
}

.arrow-btn, .arrow-btn-a {
	color: #fff;
	font-size: 15px;
	display: flex;
	align-items: center;
	cursor: pointer;
	background: transparent;
	transition: .4s;
	text-decoration: none;
}

.arrow-btn-18{
	font-size: 15px;
	color: #fff;
	display: flex;
	align-items: center;
	cursor: pointer;
	background: transparent;
	transition: .4s;
	text-decoration: none;
}

.arrow-btn-a a{
	background-color: transparent;
    border-radius: 3px;
    color: #fff;
    display: inline-block;
    font-size: 15px;
    line-height: 1;
    padding: 12px 24px;
    fill: #fff;
    text-align: center;
    transition: all .3s;
    margin-left: -55px;
}

.arrow-btn a{
	background: transparent;
	padding: 12px 14px;
}

.arrow-btn:hover,
.arrow-btn-a:hover,
.arrow-btn-18:hover{
	color: var(--white);
}

.arrow-black{
	color: var(--black);
	fill: var(--black);
}

.arrow-btn::before, .arrow-btn-a::before, .arrow-btn-18::before{
	content: ''; 
    display: inline-block; 
    width: 41px;
    height: 41px;
	background-image: url('/wp-content/uploads/2025/11/arrow-swiper.png');
    background-size: cover; 
    background-repeat: no-repeat;
    margin-right: 5px; 
	transition: .4s;
}

.arrow-black::before{
	background-image: url('/wp-content/uploads/2025/11/arrow-swiper.png');
}

.arrow-btn-18::before{
	margin-right: 10px;
}	

.header .arrow-btn::before{
	margin-right: 10px; 
}

.arrow-btn:hover,
.arrow-btn-a:hover,
.arrow-btn-18:hover{
	transform: translatex(30px);
}

.arrow-btn:hover::before,
.arrow-btn-a:hover::before,
.arrow-btn-18:hover::before{
	transform: translatex(-20px);
}

.header .arrow-btn:hover::before {
	transform: translatex(-20px);
}

.arrow-black:hover{
	color: var(--black);
}

/* Base (se vuoi un default) */
.arrow-btn::before,
.arrow-btn-a::before,
.arrow-btn-18::before{
	content: ''; 
    display: inline-block; 
    width: 41px;
    height: 41px;
    background-size: cover; 
    background-repeat: no-repeat;
    margin-right: 5px; 
	transition: .4s;
}

/* BOTTONE BIANCO */
.arrow-white {
	color: #fff;
}
.arrow-white::before {
	background-image: url('/wp-content/uploads/2025/11/arrow-w.png');
}

/* BOTTONE NERO */
.arrow-black {
	color: var(--black);
	fill: var(--black);
}
.arrow-black::before {
	background-image: url('/wp-content/uploads/2025/11/arrow-black.png');
}

/* BOTTONE BLU */
.arrow-blue {
	color: #fff; /* o il blu che preferisci */
}
.arrow-blue::before {
	background-image: url('/wp-content/uploads/2025/11/arrow-swiper.png');
}


@media only screen and (max-width: 768px){
	h1{
		font-size: 40px;
	}
	
	h2{
		font-size: 35px;
	}
	
	h3{
		font-size: 30px;
		line-height: 1;
	}
	
	h2 div {
		font-size: 36px;
		line-height: 1;
		font-weight: 770;
	}
	
	h5{
		font-size: 22px;
	}
}

/* GRADIENTS */
.dark-gradient{
	background-image: linear-gradient(120deg, rgb(0, 0, 0) 10%, rgb(26, 0, 167) 70%);
}

.light-gradient{
	background-image: linear-gradient(rgb(31, 0, 195), rgb(255, 255, 255));
}

.vertical-gradient{
	background-image: linear-gradient(160deg, rgb(0, 0, 0) 0%, rgb(26, 0, 167) 100%)
}

/* NAVBAR */
.logo-navbar{
	width: auto;
}

.logo-navbar img{
	width: 170px;
}

/* NAV */
/*.nav{
	justify-content: end;
	display: none;	
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	justify-content: flex-end;
	z-index: 1000;
    height: 80px;
    align-items: center;
}*/

.logo-nav{
	position: fixed;
	z-index: 10000;
	top: 25px;
}

.nav .nav-bar {
	display: flex;
	flex-flow: row;
	align-items: start;
	position: relative;
	z-index: 99999;
}
.nav .logo {
  flex: 1 1 100%;
}
.nav .nav-btn {
  display: flex;
  flex-flow: column;
  align-items: center;
  position: relative;
  cursor: pointer;
  flex: 0;
  padding: 5px;
  z-index: 99999;
}
.nav .nav-btn .btn-bar {
  position: relative;
  width: 1.34em;
  height: 2px;
  border-radius: 5px;
  background: #fff;
}
.nav .nav-btn .btn-bar.menu:not(:first-child) {
  margin-top: 3px;
}
.nav .nav-btn .btn-bar.close {
  transform-origin: center center;
  position: absolute;
  margin-top: -1.5px;
  opacity: 0;
  top: 50%;
}
.nav .nav-content {
  position: absolute; /* Mantiene il background interno */
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
  opacity: 0;
  pointer-events: none;
}
.nav .nav-content .background {
  position: absolute;
  display: flex;
  flex-flow: column;
  align-items: stretch;
  top: 0;
  left: 0;
  right: 0;
  bottom: -100px;
  transform: rotate(-45deg) scale(3, 3);
}
.nav .nav-content .portion {
  background: var(--black);
}
.nav .nav-content .portion:not(:first-child) {
  margin-top: -1px;
}
.nav.open .nav-bar .nav-btn .btn-bar.menu {
  opacity: 0;
}
.nav.open .nav-bar .nav-btn .btn-bar.close {
  opacity: 1;
}

.nav .btn-bar.menu:nth-child(even) {
  width: 1.8em;
}
.nav .btn-bar.close:not(:last-child) {
  transform: rotate(45deg) translateX(-250%);
}
.nav .btn-bar.close:last-child {
  transform: rotate(-45deg) translateX(250%);
}
.nav .nav-content .background .portion {
  flex: 1 1 100%;
}
	.nav
	.nav-content
	.background
	.portion:nth-child(odd) {
  transform: translateX(-100%);
}

  .nav
  .nav-content
  .background
  .portion:nth-child(even) {
  transform: translateX(100%);
}
.nav.open .nav-btn .btn-bar.menu:nth-child(odd) {
  transform: translateX(-400%);
}
.nav.open .nav-btn .btn-bar.menu:nth-child(even) {
  transform: translateX(200%);
}
.nav.open .nav-btn .btn-bar.close:not(:last-child) {
  transform: rotate(45deg);
}
.nav.open .nav-btn .btn-bar.close:last-child {
  transform: rotate(-45deg);
}
.nav.open .nav-content {
  z-index: 9;
  height: 100vh;
  opacity: 1;
  pointer-events: all;
}
.nav.open .nav-content .background .portion {
  transform: translateX(0%);
}
.nav.open .btn-bar.menu {
  transition: transform 0.3s ease-in-out, opacity 0.15s ease-in-out 0.15s;
}
.nav.open .btn-bar.close {
  transition: transform 0.2s ease-in-out 0.3s, opacity 0.05s ease-in-out 0.3s;
}
.nav.open .nav-content {
  transition: z-index 0.01s ease-in-out 0.3s;
}
.nav.open .nav-content .background .portion {
  transition: transform 0.3s ease-in-out 0.2s;
}
.nav .btn-bar.menu {
  transition: transform 0.3s ease-in-out 0.2s, opacity 0.15s ease-in-out 0.2s;
}
.nav .btn-bar.close {
  transition: transform 0.2s ease-in-out, opacity 0.03s ease-in-out 0.2s;
}
.nav .nav-content {
  transition: z-index 0.01s ease-in-out 0.2s;
}
.nav .nav-content .background .portion {
  transition: transform 0.3s ease-in-out;
}
	
.nav .mob-menu{
	position: relative;
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	transform: translateX(100%);
	opacity: 0;
}
	
.nav.open .mob-menu{
	display: flex;
  	transform: translateX(0); /* Si sposta dentro */
  	opacity: 1; /* Rende visibile */
  	transition: transform 0.2s ease-in-out 0.3s, opacity 0.2s ease-in-out 0.3s;
	height: 100%;
	gap: 20px;
}
	
.mob-menu a{
	color: var(--white);
	text-decoration: none;
	font-size: 26px;
}

@media only screen and (max-width: 768px){
	.nav{
		display: flex;
		padding: 10px;
	}	
	
.mobile-menu-level:has(.back-button) {
  top: -50px;
}
}

/* HOMEPAGE */
#header{
	/*height: 100vh;*/
	overflow: hidden;
	/*background: var(--black);*/
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1;
}

body.page-id-210 #header{
	background-image: linear-gradient(150deg, rgba(0, 0, 0, 1), rgba(26, 0, 167, 1));
}

#title-header{
	position: relative;
	z-index: 7;
	max-width: 870px;
}

#title-header h1{
	line-height: 72px;
	margin-bottom: 1rem;
}

#title-header p{
	color: var(--white);
	width: 80%;
}

header{
	background: transparent;
}

body.page-id-7 header{
	background-image: url('/wp-content/uploads/2025/11/hero-article.png');
	background-position: center;
	background-size: cover;
}

nav{
	/*max-width: 1280px;*/
	min-height: 80px;
	display: flex;
	align-items: center;
	margin: auto;
	position: relative;
	top: 0;
	z-index: 9;
	position: fixed;
    width: 100%;
}

/* Stili per la navbar bianca */
.navbar-bianca {
    background-color: #ffffff; /* Sfondo bianco */
    color: #000000; /* Testo nero */
}

.navbar-bianca .nav-link {
    color: #000000; /* Link nero */
}

/* Stili per la navbar nera */
.navbar-nera {
    background-color: transparent; /* Sfondo nero */
    color: #ffffff; /* Testo bianco */
}

.navbar-nera .nav-link {
    color: #ffffff; /* Link bianco */
}

.heading{
	height: 83vh;
}
.header-trending {
	display: flex;
	flex-direction: column;
	padding: 28px 80px 28px 0px;
}

.header-trending img{
	width: 36px;
	height: 36px;
	margin-top: 10px;
}

.header-trending h6 {
	color: var(--blue);
	text-transform: uppercase;
	font-size: 16px;
}

.header-latest-articles{
	padding: 28px 40px 28px 0px;
}

.header-latest-articles h6{
	font-size: 16px;
	color: var(--blue);
	font-weight: bold;
	text-transform: uppercase;
}

.header-latest-articles p{
	font-size: 18px;
	color: var(--white);
	font-weight: normal;
	transition: 0.3s;
}

.header-latest-articles p:hover{
	opacity: 0.5;
}

.heading h1{
	color: var(--white);
	position: relative;
	font-weight: bold;
	z-index: 5;
}

.main-menu-header{
	display: flex;
	justify-content: space-between;
	/*position: relative;*/
	z-index: 10;
}

.main-menu-header a{
	text-decoration: none; 
	color: var(--white);
}

.main-menu-header ul{
	gap: 65px;
}

.border-navbar{
	border-bottom: 1px solid #ffffff30;
}

.gradient-card {
    position: relative;
    background-image: linear-gradient(120deg, rgb(0, 0, 0) 10%, rgb(26, 0, 167) 70%);
    transition: all 0.5s ease;
    width: 98%;
    height: 500px;
	padding: 40px 55px;
	margin-right: 0;
	margin-left: 0;
	display: flex;
    flex-direction: column;
    justify-content: space-evenly;
}

.gradient-card h6::before{
	content: "";
    position: absolute;
    top: 5px;
    left: 0;
    right: 0;
    bottom: 0;
	width: 20px;
    background-image: url('/wp-content/uploads/2024/12/Vector-4.png');
	background-repeat: no-repeat;
	background-size: contain;
    opacity: 0;
    transition: opacity 0.5s ease;
    z-index: 2;
}

.gradient-card h3, .gradient-card h6, .gradient-card p, .gradient-card a, .gradient-card .arrow-btn{
	position: relative;
	z-index: 2;
	transition: all 0.5s ease;
} 

.gradient-card h3{
	line-height: 50px;
} 

.gradient-card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: linear-gradient(rgb(0, 0, 0), rgb(0, 0, 0));
    opacity: 0;
    transition: opacity 0.5s ease;
    z-index: 1;
}

.gradient-card:hover::after {
    opacity: 1;
}

.gradient-card:hover h6{
	padding-left: 30px;
}

.gradient-card:hover h6::before{
	width: 20px;
    opacity: 1;
    z-index: 2;
}

.hover-box{
	background-color: var(--darkblue);
	transition: 0.3s;
}

.hover-box:hover{
	background-color: var(--blue);
}

.hover-box-dark{
	background-color: var(--darkblue);
	transition: 0.3s;
}

.hover-box-dark:hover{
	background-color: var(--black);
}

.hover-box .arrow-btn-a a, 
.hover-box-dark .arrow-btn-a a {
    margin-left: -35px;
}

.hover-box:hover .star-hover-box, .hover-box-dark:hover .star-hover-box{
	opacity: 1;
	width: 25px;
}
nav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    transition: transform 0.3s ease-in-out;
    background: rgba(0, 0, 0, 1); /* Assicura visibilitÃ  */
    padding: 15px 20px;
}

nav.hidden {
    transform: translateY(-100%);
}

body.page-id-210 nav{
	background: transparent;
}

.latest-articles-header{
	background: #F3F2F9;
}

.latest-articles-header a{
	color: var(--black);
}

/* Solo su desktop, nascondiamo quando si scorre */
@media (min-width: 1024px) {
    nav.hidden {
        transform: translateY(-100%);
    }
}

@media only screen and (max-width: 768px){	
	
	.hightlight-bar {
	overflow: auto hidden;
	}
	
	.hightlight-bar .row {
	min-width: 80rem;
			
}
.header-trending, .header-latest-articles {
    padding: 20px 10px !important;
    margin-bottom: 0 !important;
}
	
	#title-header h1{
		line-height: 38px;
		margin-bottom: 1rem;
		font-size: 35px;
	}
	
	.row-pad{
		padding: 10px;
	}
	
	.heading{
		height: 60vh;
	}
	
	.header-latest-articles{
		padding: 28px 80px 28px 10px;
	}
	
	.header-latest-articles p{
		margin-bottom: 0;
	}
}

/* NAV MOBILE */
.mobile-menu {
	display: none;	
}

/* Responsive */
@media (max-width: 768px) {
    .main-menu-header {
        display: none;
    }

    .mobile-menu {
        display: flex;
    }
	
	.logo-nav {
		position: fixed;
        z-index: 999999;
        top: 29px;
        left: 14px;
	}
	
	nav{
		max-width: 1280px;
		min-height: 80px;
		position: fixed;
		width: 100%;
		top: 0;
		z-index: 9999999;
		background: var(--black);
	}
}

/* CHI SIAMO */
.second-section {
	position: relative;
	background-image: url('/wp-content/uploads/2024/12/back-1.png');
	background-position: top;
	background-size: cover;
	height: 100vh;
	z-index: 5;
	padding: 0;
}

.second-section h2, .second-section h6, .second-section p{
	color: #fff;
} 

.second-section h2{
	line-height: 50px;
} 

.about-us{
	padding-top: 170px;
	max-width: 1280px;
	margin: auto;
}

.line{
	max-width: 200px;
	margin-top: 70px;
	border-top: 1.5px solid var(--white);
}

.line p{
	font-family: "Aeonik";
	line-height: 20px;
	margin-top: 20px;
}

/* FOOTER */
footer{
	background-color: var(--black);
	padding-top: 120px;
	padding-bottom: 120px;
}

footer .logo-footer, footer img{
	width: 220px;
}

footer .first-row-footer p{
	max-width: 40%;
}

footer p{
	color: var(--white);
	line-height: 1.2;
}

footer a{
	text-decoration: none; 
	color: var(--white);
	font-size: 18px;
}

footer .footer-info-row{
	padding-bottom: 80px;
	border-bottom: 1px solid #525151;
	margin-bottom: 60px;
}

footer .footer-links div{
	display: flex;
	flex-direction: column;
	gap: 8px;
}

/* NUMBERS SCROLL */
.container-wrapper {
  width: 100vw; /* Occupa tutta la larghezza dello schermo */
  height: 100vh;
  position: relative;
 overflow: hidden; 
   /*background-image: url('https://astralex.com/wp-content/uploads/2024/12/Numeri.png');
  background-size: cover; 
  background-repeat: no-repeat; 
  background-position: 0% 0; */
}

.second-section {
  height: 100vh;
  position: relative;
}

.wrapper {
  display: flex; /* Dispone i figli in riga */
  width: max-content; /* Adatta la larghezza al contenuto totale */
  height: 100vh;
}

.p-secondo {
  width: 700px;
  height: 100vh;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 50px;
}

.num-scroll{
	border-bottom: 2px solid var(--white);
	margin-right: 20px;
}

.p-secondo h1,
.p-secondo h4,
.p-secondo p {
  color: #fff;
  margin-bottom: 0;
}

.p-secondo h1{
	font-weight: 300;
	font-size: 170px;
}

.p-secondo p {
  font-size: 18px;
  max-width: 350px;
}

.numbers-section {
	display: flex;
	overflow-x: scroll;
	padding: 0 0;
	height: 100vh;
}

#second-section{
	padding: 0;
}

/* MAP */
.contacts-cont{
	min-height: 350px;
	background-color: var(--darkblue);
	margin: 0;
	padding-top: 100px;
	padding-bottom: 100px;
}

.map{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.map img{
	max-width: 115px;
}

.map p{
	font-family: "Aeonik";
	margin-top: 20px;
	font-size: 16px;
	color: var(--white);
	text-align: center;
}

.row-maps{
	max-width: 1280px;
	margin: auto;
}

/* VALUES */
.values{
	background-color: var(--blue);
	padding-top: 0px;
	padding-bottom: 150px;
}

.values h2{
	line-height: 50px;
	color: var(--white);
} 

@keyframes slideInFromRight {
    0% {
        left: -100%; 
    }
    100% {
        left: 0; 
    }
}

.arrow-container {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 2px; 
    background-color: var(--white); 
    transition: width 0.5s ease;
}

.arrow-container::after {
    content: ''; 
    position: absolute;
    top: -6.5px;
    bottom: 40px;
    right: 0;
    border: 2px solid var(--white);
	border-width: 0 0 2px 2px;
	width: 15px;
	height: 15px;
	line-height: 0;
	font-size: 0;
	-webkit-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.arr-cont{
	cursor: pointer;
}


.swiper-scenario .btn-scenario::before{
	content: ''; 
    display: inline-block; 
    width: 41px;
    height: 41px;
	background-image: url('/wp-content/uploads/2024/11/blueback_arrow.png');
    background-size: cover; 
    background-repeat: no-repeat;
    margin-right: 10px; 
	transition: .4s;
}

.swiper-scenario .btn-scenario:hover::before {
    transform: rotate(30deg);
	margin-right: 30px;
}

@media only screen and (max-width: 1440px){
	.swiper-capabilities{
		margin-left: 80px;
	}
}

/* GRADIENT CARDS CONTAINER */
.gradient-cards-container{
	margin-top: 140px !important;
	margin-right: 0;
	margin-left: 0;
	max-width: 1280px;
	margin: auto;
	color: #fff;
}

.numbers-section {
  position: relative;
  overflow: hidden;
  background: url('https://astralex.com/wp-content/uploads/2024/12/Numeri.png') no-repeat left center;
  background-size: cover; 
  background-position: left;
  height: 100vh;
  margin: 0;
  padding: 0;
}

.numbers-section .wrapper {
  display: flex;
  width: max-content;
}

/* SERVIZI */
body.page-id-157 header{
	background: var(--black);
}

/* SPLIT TEXT */
.split-container-quote .word{
	font-weight: 700 !important;
}

/* NEW NAVBAR */
/* NAVBAR */
header{
    width: 100%;
	z-index: 999;
}

#header-desktop {
	display: block;
}

#header-mobile {
	display: none;
}

.pre-nav{
	background: #E9ECEF;
	padding: 14px 0px;
}

.prenav-logo {
	gap: 10px;
}

.prenav-logo img {
    max-width: 100px;
    max-height: 55px;
}

.nav-social{
	margin-left: 20px;
}

.nav-social img{
	max-width: 20px;
}

nav{
	background: transparent;
}

nav .main-menu-header{
	padding: 32px 0px;
	display: flex;
	justify-content: space-between;
	/*width: 1280px;*/
	/*width: 100%;*/
}

nav .main-menu-header a{
	color: var(--black);
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	transition: 0.3s;
}

body.page-id-7 nav .main-menu-header a{
	color: var(--white);
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	transition: 0.3s;
}

body.page-id-7 nav .main-menu-header h6 a{
	color: var(--white);
	font-size: 22px;
	font-weight: bold;
	text-decoration: none;
	transition: 0.3s;
}

nav .main-menu-header .main-link:hover, nav .main-menu-header .main-link:active, nav .main-menu-header .main-link:focus{
	opacity: 0.7;
	color: var(--blue);
}

body.page-id-7 nav .main-menu-header .main-link:hover, nav .main-menu-header .main-link:active, nav .main-menu-header .main-link:focus{
	opacity: 0.7;
	color: var(--white);
}

.logo-nav img{
	max-width: 165px;
}

.img-logo-nav{
	background: white;
    height: 60px;
    display: flex;
    align-items: center;
	justify-content: center;
    padding: 10px;
    border-radius: 14px;
	width: 135px;
}

.img-logo-nav{
	max-height: 60px;
	transition: 0.3s;
}

.img-logo-nav:hover{
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.20);
}

.navbar .dropdown-menu div[class*="col"] {
   margin-bottom:1rem;
}

.navbar .dropdown-menu {
  border: none;
  background-color: var(--black);
  border-radius: 0 !important;
  padding-top: 60px;
  padding-bottom: 20px;
}

.navbar .nav-link{
	padding: 3px;
}

.navbar .dropdown-menu h6{
  margin-bottom: 10px;
  font-size: 22px;
}

.navbar .dropdown-menu h6 a{
  font-size: 22px;
  font-weight: 700;
}

.navbar .nav-item {
	list-style: none;
	padding: 0;
	margin: 0;
	color: #fff;
}

.navbar .nav-item:hover{
	color: #ffffff70;
	opacity: 1 !important;
}

.navbar .dropdown-menu .nav-item a{
  	color: var(--white) !important;
	padding-left: 0px !important;
	text-transform: none;
	transition: 0.3s;
	line-height: 1;
}

.navbar .dropdown-menu .nav-item a:hover{
	color: var(--bordeaux) !important;
}

.navbar .dropdown-toggle::after {
  transition: transform 0.3s ease;
}

.navbar .dropdown.show .dropdown-toggle::after {
  transform: rotate(180deg);
}

.link-home-mob, .link-home-mob:hover, .link-home-mob:active, .link-home-mob:focus{
	color: var(--white);
}

@media (max-width: 1024px) {
	#header-desktop {
		display: none;
	}

	#header-mobile {
		display: block;
	}
	
	.cont-menu-toggle{
		padding: 20px;
        background: var(--bordeaux);
		height: 60px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	
	.cont-menu-toggle h6{
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        color: var(--white);
		margin-bottom: 0;
    }
	
	.menu-toggle img{
		width: 35px;
	}

menu {
  width: 100vw;
  height: 100vh;
  position: fixed; /* cambiato da absolute */
  left: 0;
  top: 0;
  display: flex;
  transition: background-color 0.8s, transform 0.8s;
  will-change: transform;
  transform: translateX(-100%);
  z-index: 999999;
  overflow: hidden;
  margin: 0;
}
menu:after {
  content: "";
  display: flex;
  height: 100%;
  flex: 0 0 380px;
  background-color: rgba(136, 136, 136, 0);
  transition: background-color 0.8s, transform 0.8s;
  will-change: transform;
  z-index: -10;
  pointer-events: none;
  transform: translateX(calc(380px * 0.1));
}
menu.is-open:after {
  background-color: rgba(136, 136, 136, 0.8);
}

menu.is-open {
  transform: translateX(0);
}

	
menu.is-open nav {
  transform: translateX(-40px);
  height: 100%;
  background: #E9ECEF;
}
menu.is-first-level nav {
  background-color: #E9ECEF;
}
menu.is-first-level nav .close {
  background-color: #E9ECEF;
}
menu.is-first-level nav .close:before {
  opacity: 0;
}
menu.is-first-level nav .close,
menu.is-first-level nav .first-level > li > a {
  color: #E9ECEF;
  border-color: #E9ECEF;
}
menu .close,
menu a,
menu .back {
  display: flex;
  align-items: center;
  padding: 15px;
  border-bottom: 1px solid #ddd;
  font-size: 18px;
  line-height: 1.3;
  cursor: pointer;
  text-decoration: none;
}
menu .close:before,
menu a:before,
menu .back:before {
  content: "";
  display: block;
  background-size: 100%;
  width: 15px;
  height: 15px;
}

menu .nav-bottom-contents a:before {
  content: "";
  display: block;
  background-size: 100%;
  width: 0;
  height: 0;
}	
	
	.nav-bottom-contents{
		padding-left: 15px;
	}	
	
menu .close {
  background-color: var(--bordeaux);
  cursor: pointer;
  transition: background-color 0.8s, border-color 0.8s, color 0.8s;
}
menu .close:before {
  margin-right: 10px;
  background-image: url("/wp-content/uploads/2025/04/Close-Streamline-Ultimate-1.png");
  transition: opacity 0.8s;
}
menu nav,
menu ul {
  height: 70%;
  padding: 0;
  list-style: none;
}
menu nav {
  position: relative;
  width: 100vw;
  flex: 0 0 calc(380px * 0.9);
  overflow: hidden;
  background-color: #E9ECEF;
  box-shadow: 1px 0px 3px 0px transparent;
  transition: background-color 0.8s, transform 0.8s, box-shadow 0.8s;
  transform: translateX(0%);
  will-change: transform;
}
menu nav a {
  justify-content: space-between;
  color: var(--black);
}
	
menu nav a:hover {
  color: var(--bordeaux);
}
	
menu nav .back {
  	justify-content: flex-start;
	color: var(--white);
	background: var(--bordeaux);
}
menu nav .back:before {
  margin-right: 15px;
  background-image: url("/wp-content/uploads/2025/04/Arrow-Left-Streamline-Ultimate.png");
}
menu nav .first-level > li > a {
  transition: color 0.8s, border-color 0.8s;
}
menu nav .first-level > li > a:before {
  order: 2;
  background-image: url("data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMS4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQ3Ny4xNzUgNDc3LjE3NSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDc3LjE3NSA0NzcuMTc1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgd2lkdGg9IjUxMnB4IiBoZWlnaHQ9IjUxMnB4Ij4KPGc+Cgk8cGF0aCBkPSJNMzYwLjczMSwyMjkuMDc1bC0yMjUuMS0yMjUuMWMtNS4zLTUuMy0xMy44LTUuMy0xOS4xLDBzLTUuMywxMy44LDAsMTkuMWwyMTUuNSwyMTUuNWwtMjE1LjUsMjE1LjUgICBjLTUuMyw1LjMtNS4zLDEzLjgsMCwxOS4xYzIuNiwyLjYsNi4xLDQsOS41LDRjMy40LDAsNi45LTEuMyw5LjUtNGwyMjUuMS0yMjUuMUMzNjUuOTMxLDI0Mi44NzUsMzY1LjkzMSwyMzQuMjc1LDM2MC43MzEsMjI5LjA3NXogICAiIGZpbGw9IiMwMDAwMDAiLz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
}
	
menu nav .first-level > li > a.no-arrow:before {
  order: 2;
  background-image: none;
}
menu nav .second-level {
  position: absolute;
  top: 0;
  width: 100%;
  background-color: #E9ECEF;
  transform: translateX(100%);
  transition: transform 0.8s, box-shadow 0.8s;
  will-change: transform;
  z-index: 99999999;
}
menu nav .second-level.is-second-level {
  transform: translateX(0);
  /*box-shadow: -1px 0px 3px 0px #888;*/
  height: 100%;
}
menu nav .second-level a {
  color: var(--black);
}
	
menu nav .second-level a:hover {
  color: var(--bordeaux);
}
	
menu nav .second-level a:before {
  display: none;
}
	.nav-mob-loghi{
		background: #fff;
	}
	
	.prenav-logo-mob .img-logo-nav {
		height: 60px;
		padding: 10px;
		width: 50px;
		background: transparent;
	}
	
	.prenav-logo-mob a {
		width: 20%;
	}
	
	.prenav-logo-mob .img-logo-nav img{
		width: 85px;
	}
	
	.nav-bottom-contents a{
		justify-content: start;
		border-bottom: 0;
		padding-left: 0;
		padding-top: 5px;
		padding-bottom: 5px;
	}
	
	.icons-menu-open a{
		margin-left: 0;
	}
}

@media screen and (min-width: 992px) {
	.navbar {
		padding-top:0px;
		padding-bottom:0px;
	}

	.navbar .nav-item {
	  padding: 0;
	  margin: 0;
	}

	.navbar .dropdown {position:static;}

	.navbar .dropdown-menu {
	  width:100%;
	  left:0;
	  right:0;
	  top: 89px;
	  display:block;
	  visibility: hidden;
	  opacity: 0;
	  transition: visibility 0s, opacity 0.3s linear;

	}
  
	.navbar .dropdown:hover .dropdown-menu, .navbar .dropdown .dropdown-menu:hover {
	  display:block;
	  visibility: visible;
	  opacity: 1;
	  transition: visibility 0s, opacity 0.3s linear;
	}

}

.navbar .dropdown-menu {
    display: block;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.navbar .dropdown.show .dropdown-menu {
    visibility: visible;
    opacity: 1;
}

.project-links a{
	color: var(--black);
	transition: 0.3s;
}

.project-links a:hover{
	color: var(--bordeaux);
}

.navbar .dropdown-menu .project-links .nav-item a {
    color: var(--black) !important;
    padding-left: 0px !important;
    text-transform: capitalize;
	font-weight: normal;
	transition: 0.3s;
}

.navbar .dropdown-menu .project-links .nav-item a:hover {
    color: var(--bordeaux) !important;
}

.navbar .dropdown-menu .project-links h6 {
    color: var(--black) !important;
	font-family: "Instrument Sans", sans-serif;
	font-weight: bold;
	text-transform: capitalize;
}

.navbar .dropdown-menu .project-links h6:hover {
    color: var(--bordeaux) !important;
}

.navbar-eventi-news .nav-link img{
	height: 140px;
	width: 250px;
	object-fit: cover;
	border-radius: 12px;
	transition: 0.3s;
}

.navbar-eventi-news .nav-link:hover img{
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.20);
}

.navbar-eventi-news .nav-link h6{
	max-width: 250px;
	font-size: 16px;
	font-weight: bold;
}

@media only screen and (max-width: 768px){
		
	.prenav-logo img{
		max-width: 75px;
	}
	
	.img-logo-nav{
		background: white;
		height: 50px;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 10px;
		border-radius: 14px;
		width: 85px;
	}
	
	.navbar{
		padding: 4px 0;
	}
}

.navbar .dropdown-menu {
   /* position: fixed; */
    top: 80px; 
    left: 0;
    width: 100vw;
    background-color: var(--black);
    z-index: 1000;
    padding: 40px 0;
    border: none;
}


.dropdown-menu .container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 20px;
}

.navbar {
    position: fixed;
}


.navbar .dropdown-menu {
   position: absolute;
    top: 82%;
    left: 0;
	right: 0;
    width: 100%;
    background-color: var(--black);
    padding: 34px 0;
    border: none;
    z-index: 1000;
}

.dropdown-menu .container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0;
}

.max-w-1280 {
    max-width: 1280px;
    width: 100%;
}

.header {
    overflow: visible !important;
}


/*********CONTACT US************/
.contact-us-form .form-control {
    padding: 14px 16px;
    border-radius: 0;
	color: #000;
 	resize: none;
	background-color: var(--lightblue);
	border-radius: 5px;
	border: none;
	font-size: 18px;
}

.contact-us-form .form-control:focus-visible {
	border: none;
	box-shadow: none;
}

.wpcf7-list-item {
    margin: 0;
}

.contact-us-form a{
	color: var(--blue);
}

.contact-us-form .form-control::placeholder {
	color: #000;
	opacity: 30%;
}
.custom-arrow {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDE3IDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMUw3LjYyNDU2IDguMDY2MUM4LjA5ODY0IDguNTcxODkgOC45MDEzNiA4LjU3MTg5IDkuMzc1NDYgOC4wNjYxOUwxNiAxIiBzdHJva2U9ImJsYWNrIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 14px 9px;
}
.contact-us-form .btn-submit .form-control {
   background: #1E00C3;
	border: 2px solid #fff;
	color: #fff;
	font-weight: 700;
}

.contact-us-form p{
	margin-bottom: 24px;
}

.contact-us-form .btn-invia{
	background: #21A34C;
	width: 100%;
	padding: 14px;
	color: var(--white);
	text-transform: uppercase;
	border-radius: 5px;
	font-weight: 700;
}

/* FOOTER */
footer{
	padding: 150px 0;
	position: relative;
	z-index: 99 !important;
}

footer .first-row-footer{
	padding-bottom: 80px;
}

footer p{
	margin-bottom: 0;
}

footer h6{
	color: var(--white);
}

.footer-links .col-md-6{
	display: flex;
	flex-direction: column;
}

footer .second-row-footer{
	padding-top: 60px;
	border-top: 1px solid #525151;
}

footer .second-row-footer div{
	justify-content: center;
}

footer .second-row-footer div p{
	color: #525151;
}

footer .social-footer img{
	height: 30px; 
	object-fit: contain;
}

.nav-social-footer{
	margin-right: 20px;
}

.nav-social-footer img{
	max-width: 30px;
	max-height: 20px;
}

.policy-footer a{
	margin-right: 66px;
}

@media only screen and (max-width: 1440px){
	.footer-links {
		gap: 30px;
	}
	footer .footer-links div {
    margin: 0px;
    }
}
@media only screen and (max-width: 768px){
	.footer-links{
		margin-top: 60px;
	}
	footer .footer-links div {
    margin: 0px 10px;
}
	footer{
		padding: 120px 0;
	}

	footer .first-row-footer h6{
		padding-top: 30px;
	}
	
	.social-footer{
		margin-top: 30px;
	}
	
	.second-row-footer .col-md-4{
		padding: 0;
	}
	
	.policy-footer{
		flex-direction: column;
    	gap: 10px;
	}
	
	.policy-footer a{
		margin-right: 0;
		width: 100%;
	}
	
	.rights-footer{
		padding-top: 50px;
		padding-left: 0;
	}

}

/* Mobile Menu Container */
.mobile-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999999;
    overflow: hidden;
    pointer-events: none; 
}

.mobile-menu.active {
    pointer-events: auto; 
}	

/* Overlay */
.mobile-menu-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7); 
    opacity: 0;
    transition: opacity 0.3s ease;
}

.mobile-menu.active .mobile-menu-overlay {
    opacity: 1;
}

/* Mobile Menu Content Panel */
.mobile-menu-content {
    position: absolute;
    top: 0;
    right: 0; 
    width: 100%; 
    max-width: 100%;
    height: 100%;
    background-color: #000;
    color: #fff;
    transform: translateX(100%);
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    overflow: hidden; 
}

/* Mobile Menu Header */
.mobile-menu-header {
    margin-bottom: 20px;
    padding-bottom: 40px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}


.mobile-menu-close .btn-close-menu {
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
    position: relative;
    width: 30px;
    height: 30px;
    top: 10px;
}

.mobile-menu-close .btn-bar.close {
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #fff;
    left: 0;
    top: 50%;
    transform-origin: center;
}

.mobile-menu-close .btn-bar.close:first-child {
    transform: translateY(-50%) rotate(45deg);
}

.mobile-menu-close .btn-bar.close:last-child {
    transform: translateY(-50%) rotate(-45deg);
}


/* Mobile Menu Wrapper */
.mobile-menu-wrapper {
    flex-grow: 1;
    position: relative;
    overflow-x: hidden; 
    overflow-y: auto;
	padding: 0;
	padding-bottom: 20px;
}

.mobile-menu-level {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* height: 100%; Rimosso per permettere lo scorrimento naturale */
    min-height: 100%;
    list-style: none;
    padding: 10px;
    margin: 0;
    transform: translateX(100%); 
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.3s ease; 
    display: flex;
    flex-direction: column;
	padding-top: 40px;
}


.mobile-menu-level.active {
    transform: translateX(0%);
    opacity: 1;
    position: relative;
    overflow-y: auto;
}

/* Mobile Menu Items */
.mobile-menu-item {
    padding: 11px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 1);
    font-size: 18px;
    font-weight: 500;
}

.mobile-menu-item:first-child{
	border-top: 1px solid rgba(255, 255, 255, 1);
}

.mobile-menu-item:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, 1);
}

.mobile-menu-item a {
    color: #fff;
    text-decoration: none;
    display: block;
    padding-right: 30px;
}

.mobile-menu-item.has-submenu {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.mobile-menu-item.has-submenu .arrow-right {
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    margin-left: 10px;
	position: relative;
	right: 10px;
}

.mobile-menu-item.back-button {
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    border-bottom: 1px solid rgba(255, 255, 255, 1);
    display: flex;
    align-items: center;
}

.mobile-menu-item.back-button a{
    color: #ffffff50;
}

.mobile-menu-item.back-button::before {
    content: '';
    width: 10px;
    height: 10px;
    border-left: 2px solid #ffffff50;
    border-bottom: 2px solid #ffffff50;
    transform: rotate(45deg);
    margin-right: 10px;
	position: relative;
    left: 4px;
}

.mobile-menu-item.menu-title {
    font-weight: bold;
    font-size: 20px;
    padding-bottom: 11px;
    border-bottom: 1px solid rgba(255, 255, 255, 1);
    margin-bottom: 0;
}


/* Contact Section */
.mobile-menu-contact {
    margin-top: auto;
    padding-top: 20px;
	padding-left: 10px;
	padding-right: 10px;
    border-top: 1px solid rgba(255, 255, 255, 1);
    text-align: start;
}

.mobile-menu-contact p {
    margin-bottom: 10px;
    color: #fff;
}

.mobile-menu-contact .dots span {
    display: inline-block;
    width: 8px;
    height: 8px;
    background-color: #fff;
    border-radius: 50%;
}

@media (min-width: 1025px) { 
    .mobile-menu {
        display: none !important;
    }
}

@media (max-width: 1024px) { 
    .mobile-menu {
        display: block !important;
    }
    /*.header .navbar { 
        display: none;
    }*/
}

.hamburger-menu-button .nav-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    width: 50px;
    height: 50px;
    box-sizing: border-box;
    z-index: 10000; 
}

.hamburger-menu-button .btn-bar.menu {
    width: 100%;
    height: 2px;
    background-color: #fff;
    transition: all 0.3s ease;
}

.header .navbar .hamburger-menu-button .btn-bar.menu {
    background-color: #fff; 
}
.header .navbar.navbar-bianca .hamburger-menu-button .btn-bar.menu {
    background-color: #000; 
}
@media (min-width: 980px) { 
    .hamburger-menu-button {
        display: none !important;
    }
}

.box-guide {
    position: relative; /* Necessario per l'immagine absolute */
    overflow: visible; /* CosÃ¬ l'immagine puÃ² uscire */
}

.box-guide .img-guide {
    position: absolute;
    left: 0;
    bottom: 0;
    transition: transform 0.3s ease; /* Animazione morbida */
}

.box-guide:hover .img-guide {
    transform: translateY(-30px);
}

/* SPLIT TEXT */
.wrap {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
}

.quote {
  overflow: hidden;
  /* qui puoi aggiungere font-size, colore ecc. in base al tuo design */
}

.split-line {
  overflow: hidden;
}

/* GUIDE BTN */
.guide-btn a{
	display: flex;
}

.guide-btn a::before{
	content: '';
	display: inline-block;
	width: 7px;
	height: 14px;
	background: url('/wp-content/uploads/2026/02/arrow-astralex.svg');
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 10px;
	position: relative;
    top: 2px;
}


/* Desktop (1024 and above) */
@media (min-width: 1025px) {
    .hamburger-menu-button.tablet-view {
        display: none !important;
    }

    .main-menu-header.tablet-view {
        display: block !important;
    }
}

/* Mobile (below 1024) */
@media (max-width: 1024px) {
    .hamburger-menu-button.tablet-view {
        display: block !important;
    }

    .main-menu-header.tablet-view {
        display: none !important;
    }
}

/* POPUP NEWSLETTER */
/* Sfondo oscurato */
.custom-popup-overlay {
    display: none; /* Nascosto all'inizio */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7); /* Oscuramento nero al 70% */
    z-index: 99999;
    backdrop-filter: blur(5px); /* Opzionale: sfoca leggermente lo sfondo */
}

/* Scatola del Popup */
.custom-popup-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #ffffff;
    padding: 30px;
    width: 90%;
    max-width: 40%;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

/* Pulsante di chiusura (X) */
.close-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
    color: #333;
}

/* Stile veloce per i campi del form nel popup */
.custom-popup-content input[readonly] {
    background-color: #f0f0f0;
    cursor: not-allowed;
    color: #888;
}

.newsletter-step-1, .guida-step-1 {
	background: var(--white);
	border-radius: 5px;
	display: flex;
    justify-content: space-between;
}

.newsletter-step-1 input{
	padding: 12px 20px;
	border: 2px solid var(--white);
	border-radius: 5px;
	width: 75%;
	font-size: 18px;
	outline: transparent;
}

.newsletter-step-1 button{
	background: var(--blue);
	border: 2px solid var(--white);
	padding: 12px 20px;
	color: var(--white);
	border-radius: 5px;
	width: 24%;
	font-size: 20px;
	font-weight: bold;
	transition: 0.5s;
}

.newsletter-step-1 button:hover, .guida-step-1 button:hover{
	background: var(--black);
	color: var(--white);
}

.newsletter-form .btn-invia{
	background: var(--blue);
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: transparent;
	color: #dc3232;
	font-size: 18px;
}

.wpcf7 form .wpcf7-response-output {
    margin: 1em 0 1em;
    padding: 0;
    border: 2px solid #00a0d2;
}

.guida-step-1 input{
	padding: 12px 20px;
	border: 2px solid var(--white);
	border-radius: 5px;
	width: 65%;
	font-size: 18px;
	outline: transparent;
}

.guida-step-1 button{
	background: var(--blue);
	border: 2px solid var(--white);
	padding: 12px 20px;
	color: var(--white);
	border-radius: 5px;
	width: 34%;
	font-size: 20px;
	font-weight: bold;
	transition: 0.5s;
}

@media only screen and (max-width: 1024px){
	
	.custom-popup-content {
		top: 50%;
		left: 50%;
		padding: 30px;
		width: 90%;
		max-width: 75%;
	}
}

@media only screen and (max-width: 768px){
	.newsletter-step-1 input{
		width: 65%;
	}

	.newsletter-step-1 button{
		width: 35%;
	}
	
	.custom-popup-content {
        top: 55%;
        left: 50%;
        padding: 30px;
        width: 100%;
        max-width: 95%;
    }
}

.fiscal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 40px;
    cursor: pointer;
    gap: 20px;
}

/* === SERVIZI LINK HOVER === */

.servizi-link-hover .e-child h5 a {
    text-decoration: none;
    transition: text-decoration 0.4s ease;
}

.servizi-link-hover .e-child:hover h5 a {
    text-decoration: underline;
}

.servizi-link-hover .e-child .elementor-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}


.servizi-link-hover .e-child .elementor-icon svg {
    transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.servizi-link-hover .e-child:hover .elementor-icon svg {
    opacity: 0;
}

.servizi-link-hover .e-child .elementor-icon::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url('/wp-content/uploads/2026/03/right-arrow-hover.svg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    opacity: 0;
    transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.servizi-link-hover .e-child:hover .elementor-icon::after {
    opacity: 1;
}


/* ==========================================================================
   SHORTCODE INSIGHTS (LISTING)
   ========================================================================== */
.astralex-insights-section {
  width: 100%;
  /* margin-bottom: 60px; */
}

.astralex-insights-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin-bottom: 74px;
  justify-content: center;
}

.astralex-filter-btn {
  background: transparent;
  border: 1px solid #0000cc; 
  /* color: #0000cc; */
  padding: 8px 15px;
  font-weight: 700;
  font-size: 20px;
  cursor: pointer;
  transition: all 0.3s ease;
  border-radius: 5px;
	line-height:1;
}

.astralex-filter-btn:hover,
.astralex-filter-btn.active {
  background: #0000cc;
  color: #fff;
}

.astralex-insights-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 75px 100px;
}

@media (max-width: 768px) {
  .astralex-insights-grid {
    grid-template-columns: 1fr;
  }

 
  .astralex-insights-filters {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px; 
    scrollbar-width: none; 
  }
  .astralex-insights-filters::-webkit-scrollbar {
    display: none; 
  }
  .astralex-filter-btn {
    white-space: nowrap; 
  }
}

.astralex-insight-card {

  display: flex;
  flex-direction: column;
}

.astralex-insight-card h6.insight-category {
  margin: 0 0 24px 0;
  color: #000;
  font-size: 20px; 
}

.astralex-insight-card h4.insight-title {
  margin: 0 0 24px 0;
  color: #1e00c3;
}

.astralex-insight-card h4.insight-title a {
  color: inherit;
  text-decoration: none;
  transition: color 0.3s ease;
}
.astralex-insight-card h4.insight-title a:hover {
  color: #0000cc;
}

.astralex-insight-card .insight-excerpt {
    margin-bottom: 25px;
    font-size: 18px;
    font-weight: 400;
    line-height: 22px;
}


.arrow-insight-blue::before {
  background-image: url('/wp-content/uploads/2026/03/circle-next-1.svg') !important;
  background-size: contain !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
