/*
Theme Name: Tuscan Secret Experience
Theme URI: tuscansecretexperience.it
Description: Tema minimale, che segue le ultime tendenze del web design
Version: 1.0
Author: Alessio Piazzini 
*/

@charset "UTF-8";
/* CSS Document */



:root {
  --primary-color:#40516D; /* Blu ardesia */
  --secondary-color:#B7CAC1; /* Verde salvia */
  --tertiary-color:#527563; /* Blu notte */
  --quaternary-color:#F5F6F5; /* Grigio chiarissimo */
  --quinary-color:#9A7653; /* Bronzo / Taupe */ 
  --text-color:#303844; /* Antracite blu */
  --septenary-color:#5a7c6b; /* Verde bottiglia */
  --octonary-color:#F7F4EE; /* Beige chiaro */
  --nonary-color:#37332E; /* Marrone espresso */
  --color-text:#303844; ; /* Quasi nero */
  --primary-font: "Manrope", sans-serif;
  --secondary-font:  "Cormorant Garamond", sans-serif;
  --tertiary-font:"Playfair Display",serif;
}


.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6{line-height: 1.3;color:var(--tertiary-color);}

body{font-size: 18px; font-family:var(--primary-font);font-weight:400;line-height:1.8;}

a{color:var(--quinary-color); text-decoration: none;}
a:link{color:var(--quinary-color); text-decoration: none;}
a:visited{color:var(--quinary-color); text-decoration: none;}
a:hover{color:var(--quinary-color); text-decoration: none;}
a:active{color:var(--quinary-color); text-decoration: none;}

/* gradient */
.gradient-circle{background: radial-gradient(circle at top right, rgba(195,32,38,.35) 0%, transparent 45%), linear-gradient( 135deg, #11151b 0%, #181b20 40%, #3f1014 100% );}
.gradient-light-green{background:linear-gradient(180deg,rgba(183,202,193,.12) 0%,rgba(183,202,193,.05) 35%,#fff 75%); }
.gradient-text {display: inline-block;background: linear-gradient( 90deg,#4facfe 0%, #6c63ff 50%, #b16cea 100%);background-size: 200% auto;background-position: 0% center; -webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;color: transparent;animation: gradientMove 4s linear infinite;}
@keyframes gradientMove {  0% { background-position: 0% center;  } 100% { background-position: 200% center;}}


/* bg */
.bg-primary{background-color: var(--primary-color) !important;}
.bg-secondary{background-color: var(--secondary-color) !important;}
.bg-senary{background-color: var(--senary-color);}
.bg-quaternary{background-color: var(--quaternary-color);}
.bg-quinary{background-color: var(--quinary-color);}
.bg-septenary{background-color: var(--septenary-color);}  
.bg-tertiary{background-color: var(--tertiary-color);}  
.bg-octonary{background-color: var(--octonary-color);} 
.bg-nonary{background-color:var(--nonary-color);}

/* Color */
.color-primary{color: var(--primary-color);}
.color-secondary{color: var(--secondary-color);}
.color-quaternary{color: var(--quaternary-color);}
.color-tertiary{color: var(--tertiary-color);}
.color-quinary{color: var(--quinary-color);}
.color-text{color: var(--color-text);}

/* Border */
.border-color-tertiary{border:1px solid var(--tertiary-color);}
.border-color-light{border: 1px solid rgba(0,0,0,.12);}

/* font */
.primary-font{font-family: var(--primary-font);}
.secondary-font{font-family: var(--secondary-font);}
.tertiary-font{font-family: var(--tertiary-font);}

/* bold */
.fw-900{font-weight: 900;}
.fw-800{font-weight: 800;}
.fw-700{font-weight: 700;}
.fw-600{font-weight: 600;}
.fw-500{font-weight: 500;}
.fw-400{font-weight: 400;}

/* LINE HIGHT */
.line-hight-1{line-height:1}

/* BORDER TOP LIGHT */
.border-top-light{border-top: 1px solid rgba(255,255,255,0.2);}

/* title */
.fs-120 {font-size: 120px;}
.fs-64 {font-size: 64px;}
.fs-60 {font-size: 60px;}
.fs-56 {font-size: 56px;}
.fs-52 {font-size: 52px;}
.fs-48 {font-size: 48px;}
.fs-20 {font-size: 20px;}
.fs-18 {font-size: 18px;}
.fs-16 {font-size: 16px;}
.fs-15 {font-size: 15px;}
.fs-14 {font-size: 14px;}
.fs-13 {font-size: 13px;}
.fs-12 {font-size: 12px;}
.fs-11 {font-size: 11px;}
.fs-10 {font-size: 10px;}
.fs-9 {font-size: 9px;}

/* Width */
.w50-16px {width: calc(50% - 16px);}
.w25-16px {width: calc(25% - 16px);}
.w33-16px {width: calc(33% - 16px);}
.w67-16px {width: calc(67% - 16px);}

/* Height */
.height-vh-85{height: 85vh;}
.height-vh-90{height: 90vh;}
.height-vh-95{height: 95vh;}

/* Margin */
.mt-6 {margin-top: 5rem; }
.mb-6 {margin-bottom: 5rem; }

/* Gap */
.gap-6 {gap: 6rem;}

/* Flex */
.flex-1 {flex: 1;}

.height-vh-75{height: 75vh;}

/* Padding */
.py-6{padding-top:5rem;padding-bottom:5rem;}
.px-6{padding-left:5rem;padding-right:5rem;}
.pt-6{padding-top:5rem;}
.pb-6{padding-bottom:5rem;}
.pe-6{padding-right:5rem;}
.ps-6{padding-left:5rem;}
.pt-7{padding-top:6rem;}
.py-7{padding-top:6rem;padding-bottom:6rem;}
.py-8{padding-top:7rem;padding-bottom:7rem;}
.pt-9{padding-top:8rem;}
.pt-10{padding-top:9rem;}


/* Flex */
.flex-1 {flex: 1;}

/* Z-INDEX */
.z-index-1{z-index: -1;top:0; left: 0; right:0;bottom: 0; }


/* BG COVER */
.background-cover-center {background-size: cover; background-position: center; }

/* BG PARALLAX */
.parallax{background-attachment: fixed;}

/* GRADIENT TEXT */
.gradient-text{display:inline-block;background:linear-gradient(90deg,#e53b42 0%,#c32026 45%,#6f0f13 100%);background-size:200% auto;background-position:0% center;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}

/* GRADIENT BG */
.gradient-bg-dark{background: linear-gradient(135deg, #14171C 0%, #1A1F26 100%);}
.gradient-bg-dark-opacity{background: linear-gradient( 135deg, rgba(20, 23, 28, 0.75) 0%, rgba(26, 31, 38, 0.65) 100% );}

/* SCROLL */
.scroll-indicator{position:absolute;left:50%;bottom:40px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;z-index:10;}
.scroll-indicator::before{content:"";width:1px;height:70px;background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.6));}
.scroll-indicator svg{width:18px;height:18px;color:#fff;animation:scrollArrow 2s ease-in-out infinite;}
.scroll-indicator:hover svg{color:#c32026;}

@keyframes scrollArrow{0%,100%{transform:translateY(0);}50%{transform:translateY(10px);}}
/* MOVE ELEMENTS */
.reveal{opacity:0;transform:translateY(40px);transition:all .8s ease;}
.reveal.show{opacity:1;transform:translateY(0);}
.reveal-logo{transition-delay:0.1s;}
.reveal-title{transition-delay:0.3s;}
.reveal-text{transition-delay:0.6s;}
.reveal-btn{transition-delay:0.8s;}

/* Button primary*/
.button-primary,
a.button-primary,
a.button-primary:link {font-weight: bold; border-radius: 3px; letter-spacing: 0.14em; position: relative;display: inline-block; padding: 12px 30px; font-size: 13px;text-transform: uppercase; text-decoration: none; background-color: transparent;border: 1px solid var(--tertiary-color);color: var(--tertiary-color);height: 100%;align-items: center; background: linear-gradient(270deg,transparent 50%,#F5F6F5 0) 100%;background-color: rgba(0, 0, 0, 0);background-position-x: 100%;background-position-y: center;background-size: auto;background-origin: padding-box;background-position: 100% 100%;background-size: 300% 200%;cursor: pointer; display: flex;height: auto;justify-content: center;text-align: center;transition: .4s ease-out;width: -webkit-fit-content;width: -moz-fit-content;width: fit-content;}
a.button-primary:hover  { background-origin: border-box;background-position: 0 100%;border-color: var(--tertiary-color);color: var(--tertiary-color);}


/* Button primary*/
.button-border-white,
a.button-border-white,
a.button-border-white:link {border-radius: 3px; letter-spacing: 0.14em; position: relative;display: inline-block; padding: 12px 30px; font-size: 13px;text-transform: uppercase; text-decoration: none; background-color: transparent;border: 1px solid #fff;color: #fff;height: 100%;align-items: center; background: linear-gradient(270deg,transparent 50%,#F5F6F5 0) 100%;background-color: rgba(0, 0, 0, 0);background-position-x: 100%;background-position-y: center;background-size: auto;background-origin: padding-box;background-position: 100% 100%;background-size: 300% 200%;cursor: pointer; display: flex;height: auto;justify-content: center;text-align: center;transition: .4s ease-out;width: -webkit-fit-content;width: -moz-fit-content;width: fit-content;}
a.button-border-white:hover  { background-origin: border-box;background-position: 0 100%;border-color: #fff;color: color: var(--tertiary-color);}

/* BTN BOOKING */
a.btn-booking, input.btn-booking{ background:linear-gradient(135deg,#5F806F 0%,#4C6F5E 35%,#365547 70%,#5F806F 100%); background-size:200% 200%; background-position:0% 50%; border:0; color:#fff; transition:background-position .6s ease,box-shadow .3s ease,color .3s ease; }
a.btn-booking:hover, input.btn-booking:hover{ background-position:100% 50%; color:#fff; }

/* TEL HEADER */
a.header-phone, a.header-phone:link,  a.header-phone:hover{color: #fff;}

/* EYEBROW */
.eyebrow{background: linear-gradient(135deg, #c32026 0%, #6f0f13 100%);padding:3px 10px;border-radius:30px;letter-spacing:1px; backdrop-filter:blur(10px); transition:all .35s ease;}

/* WHATSAPP */
.whatsapp-green{color:#25D366;}
.whatsapp-widget{position:fixed;right:30px;bottom:30px;z-index:1021;display:flex;align-items:center;gap:15px;text-decoration:none;cursor:pointer;}
.whatsapp-tooltip{background:#fff;backdrop-filter:blur(10px);border:1px solid #25D366;border-radius:12px;padding:12px 16px;box-shadow:0 10px 30px rgba(0,0,0,.25);animation:fadeIn .8s ease;transition:.3s ease;}
.whatsapp-tooltip span{display:block;font-size:14px;font-weight:600;line-height:1.3;}
.whatsapp-tooltip small{display:block;color:#9ca3af;font-size:12px;margin-top:2px;}
.whatsapp-button{width:60px;height:60px;min-width:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #25D366;color:#25D366;font-size:28px;box-shadow:0 10px 25px rgba(0,0,0,.35),0 0 20px rgba(0,191,255,.15);transition:.3s ease;}
.whatsapp-widget:hover .whatsapp-tooltip{border-color:#25D366;transform:translateY(-2px);}
.whatsapp-widget:hover .whatsapp-button{transform:translateY(-4px);color:#25D366;border-color:#25D366;box-shadow:0 15px 35px rgba(0,0,0,.4),0 0 25px rgba(0,191,255,.35);}


@keyframes fadeIn{
from{opacity:0;transform:translateX(15px);}
to{opacity:1;transform:translateX(0);}
}

/* Navigazione */
.main-header{ z-index:100; color:#fff; }
.main-nav{ width:100%; }
.header-inner{ display:grid; grid-template-columns:1fr auto 1fr; align-items:center; min-height:130px; }
.header-left{ justify-self:start; }
.header-logo{ justify-self:center; }
.header-logo a{ display:inline-block; }
.header-logo img{ display:block; max-width:100%; height:auto; }
.header-right{ justify-self:end; }
.header-phone{ color:#fff; font-size:18px; line-height:1; text-decoration:none; transition:opacity .3s ease; }
.header-phone:hover{ color:#fff; opacity:.7; }
.header-languages{ font-size:17px; line-height:1; }
.header-languages span{ color:#fff; }
.header-languages a{ color:rgba(255,255,255,.65); text-decoration:none; transition:color .3s ease; }
.header-languages a:hover{ color:#fff; }
.header-languages a.active{ color:#fff; }
.menu-toggle{ display:flex; flex-direction:column; justify-content:center; gap:8px; width:68px; padding:0; border:0; background:transparent; cursor:pointer; }
.menu-toggle span{ display:block; width:68px; height:2px; background:#fff; transition:width .3s ease, transform .3s ease, opacity .3s ease; }
.menu-toggle span:nth-child(2){ width:48px; }
.menu-toggle:hover span:nth-child(2){ width:68px; }

@media (max-width:991.98px){
.header-inner{ min-height:100px; }
.header-logo img{ width:140px; }
.menu-toggle{ gap:6px; width:46px; }
.menu-toggle span{ width:42px; }
.menu-toggle span:nth-child(2){ width:30px; }
.menu-toggle:hover span:nth-child(2){ width:42px; }
.header-phone{ font-size:0; }
.header-phone::before{ content:"\F5C1"; font-family:"bootstrap-icons"; font-size:22px; line-height:1; }

}

/* MainMenu */
#mainMenu{background: #2b3d33;}
#mainMenu .main-menu-close { transform:scale(1.4); }
#mainMenu .current-menu-item > a { color:#fff; }
#mainMenu .menu-item > a { display:inline-block; transition:transform .3s ease, opacity .3s ease; }
#mainMenu .menu-item > a:hover { transform:translateX(8px); opacity:.7; }
#mainMenu { transform:none !important; opacity:0; transition:opacity .25s ease-in-out; }
#mainMenu.show, #mainMenu.showing { opacity:1; }
#mainMenu.hiding { opacity:0; }
#mainMenu .col-lg-6:first-child {border-right: 1px solid rgba(82, 117, 99,0.2);}
#mainMenu .menu-item > a {color:var(--tertiary-color); position:relative; display:inline-block; transition:transform .35s ease, opacity .35s ease; }
#mainMenu .menu-item > a::after { content:""; position:absolute; left:0; bottom:-8px; width:0; height:1px; background:currentColor; opacity:.5; transition:width .35s ease; }
#mainMenu .menu-item > a:hover::after { width:100%; }
#mainMenu a, #mainMenu a:link,  #mainMenu a:hover{color:var(--tertiary-color);}
#mainMenu #menu-navigazione-principale li{opacity:0;transform:translateY(25px);transition:opacity .6s ease,transform .6s ease;}
#mainMenu.show #menu-navigazione-principale li{opacity:1;transform:translateY(0);}
#mainMenu.show #menu-navigazione-principale li:nth-child(1){transition-delay:.10s;}
#mainMenu.show #menu-navigazione-principale li:nth-child(2){transition-delay:.18s;}
#mainMenu.show #menu-navigazione-principale li:nth-child(3){transition-delay:.26s;}
#mainMenu.show #menu-navigazione-principale li:nth-child(4){transition-delay:.34s;}
#mainMenu .btn-close{z-index: 2;}
@media (max-width:991.98px){
#mainMenu .col-lg-6:last-child{transform:translateY(-60px);}
}

/* NAVBAR */
.scroll-progress{position:absolute;top:0;left:0;height:5px;width:0%;background:linear-gradient(135deg, #c32026 0%, #6f0f13 100%);transition:width .1s linear;z-index:1000;}
.navbar-nav{gap:25px;}
.navbar,.main-navbar{background:transparent!important;backdrop-filter:none;box-shadow:none;}
.navbar .nav-link{color:white;}
.navbar .nav-link{position:relative;color:rgba(255,255,255,.82);transition:color .35s ease,text-shadow .35s ease;}
.navbar .nav-link:hover{color:var(--tertiary-color);}
.navbar .nav-link::after{content:'';position:absolute;left:50%;bottom:4px;width:0;height:1px;background:var(--tertiary-color);box-shadow:none;transform:translateX(-50%);transition:width .45s cubic-bezier(.16,1,.3,1),opacity .3s ease;opacity:0;}
.navbar .nav-link:hover::after{width:100%;opacity:1;}
.brand-text{display:flex;flex-direction:column; line-height:1.2;}
.name{letter-spacing: 0.3px;}

/* NAVBAR SCROLL EFFECT */
.main-navbar.scrolled{backdrop-filter:blur(10px); background-color:rgba(20, 23, 28, 0.8) !important; box-shadow:0 4px 20px rgba(0,0,0,0.08);}



/* HERO home */
.hero-overlay{background: linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.52) 35%,rgba(0,0,0,.30) 70%,rgba(0,0,0,.25) 100%),linear-gradient(180deg,rgba(0,0,0,.25) 0%,transparent 40%,rgba(0,0,0,.30) 100%);}
.container-hero-youtube-iframe{    position: absolute;inset: 0; width: 100%;height: 95vh;overflow: hidden;}
.hero-youtube-iframe {position: absolute;top: 50%;left: 50%;width: 177.7778vh;height: 100vh;min-width: 100%;min-height: 56.25vw;border: 0;transform: translate(-50%, -50%);pointer-events: none;}
.hero-line{position:relative;width:100%;height:1px;margin:30px 0;overflow:hidden;background:linear-gradient(90deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,.25) 20%,rgba(255,255,255,.85) 50%,rgba(255,255,255,.25) 80%,rgba(255,255,255,.05) 100%);box-shadow:0 0 8px rgba(255,255,255,.10),0 0 20px rgba(255,255,255,.05);transform:scaleX(0);transform-origin:left center;animation:lineReveal 1.4s ease-out .4s forwards;}
.hero-line::after{content:"";position:absolute;top:0;left:-30%;width:30%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);animation:lineShine 5s ease-in-out 2s infinite;}
@keyframes lineReveal{from{transform:scaleX(0);}to{transform:scaleX(1);}}
@keyframes lineShine{0%{left:-30%;}100%{left:130%;}}

/* HERO experience */
.experience-hero{ width:100%; height:95vh; }
.experience-hero img{ display:block; }
.experience-swiper{ width:100%; height:100%; }
.experience-swiper .swiper-wrapper{ height:100%; }
.experience-swiper .swiper-slide{ width:100%; height:100%; }
.experience-hero-overlay{ z-index:2; background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.52) 35%,rgba(0,0,0,.30) 70%,rgba(0,0,0,.25) 100%),linear-gradient(180deg,rgba(0,0,0,.25) 0%,transparent 40%,rgba(0,0,0,.30) 100%); pointer-events:none; }
.experience-hero-content{ z-index:3; }
.experience-swiper .swiper-button-prev{ color:#fff; z-index:4; }
.experience-swiper .swiper-button-next{ color:#fff; z-index:4; }
.experience-swiper .swiper-pagination{ z-index:4; }
.experience-swiper .swiper-pagination-bullet{ background:#fff; opacity:.5; }
.experience-swiper .swiper-pagination-bullet-active{ opacity:1; }

/* TEXT LEFT IMG RIGHT */
.text-left-img-right {position: relative; isolation: isolate;}
.text-left-img-right::before {content: ""; position: absolute; inset: 0; z-index: -1; background-image: var(--sfondo-fascia, none); background-repeat: no-repeat; background-position: center bottom; background-size: 100% auto; opacity: 0.3; pointer-events: none;}

/* ZOOM HERO SWIPER */
.experience-swiper .swiper-slide img{ transform:scale(1.03); transition:transform 8s cubic-bezier(.2,.6,.3,1); }
.experience-swiper .swiper-slide-active img{ transform:scale(1.12); }

/* ZOOM HERO IMMAGINE SINGOLA */
.experience-hero-single{ animation:heroZoom 12s ease-out forwards; }

@keyframes heroZoom{
    from{ transform:scale(1.03); }
    to{ transform:scale(1.12); }
}

@media (max-width:767.98px){
.experience-hero{ height:80vh; }
.experience-title{ font-size:46px; }
}

/* CONTACT */
.contact-cta{background-color: #344E41}
.contact-cta img.img-fluid{width: 180px;}
.contact-cta .container{position:relative;z-index:2;}
.contact-cta .cta-image img {width: auto;height: 100%;}
.cta-image{position:absolute;top:0;right:0;width:100%;height:100%;overflow:hidden;}
.cta-image::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,rgba(52,78,65,.90) 0%,rgba(52,78,65,.90) 20%,rgba(52,78,65,.75) 45%,rgba(52,78,65,.4) 70%,rgba(52,78,65,.12) 88%,transparent 100%);z-index:1;pointer-events:none;}
.cta-image img{width:100%;height:100%;object-fit:cover;}


/* info box experience */
.experience-info-box{ border:1px solid rgba(183,202,193,.55);   background: var(--quaternary-color); }
.experience-info-icon{ width:44px; height:44px; color:var(--quinary-color); font-size:26px; }
.experience-info{background:linear-gradient(180deg,rgba(183,202,193,.12) 0%,rgba(183,202,193,.05) 35%,#fff 75%); }

/* included experience */
.experience-includes-box{ padding:40px; border:1px solid rgba(0,0,0,.12);   background:#fff; }
.experience-includes-title-icon{ color:#9a7653; font-size:28px; }
.experience-check-icon{ color:var(--septenary-color); font-size:22px; line-height:1.4; }
.experience-x-icon{ color:#dc3545; font-size:22px; line-height:1.4; }
.experience-includes-text{ font-size:18px; line-height:1.5; color:#363330; }

@media (max-width:767.98px){
.experience-includes-box{ padding:28px 22px; }
.experience-includes-box h2{ font-size:26px; }
.experience-includes-text{ font-size:16px; }
}

@media (min-width:992px){
.experience-booking-box{ top:30px; margin-top: -320px;}
}

/* structure */
.structure-archive-card{ height:500px; }
.structure-archive-image{ transition:transform .8s ease; }
.structure-archive-overlay{ background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.65) 100%); pointer-events:none; }
.structure-archive-card:hover .structure-archive-image{ transform:scale(1.05); }

/* gallery footer */
.footer-gallery-image{height:360px;}
.footer-gallery-image img{transition:transform .8s ease;}
.footer-gallery-image:hover img{transform:scale(1.04);}

/* Contact form */
.container-form{border: 1px solid rgba(183,202,193,.55);}
.contact-form .acf-field { margin-bottom: 20px; }
.contact-form [type="submit"], .contact-form button {-webkit-appearance: button;color: #fff !important;border: 0;}
.contact-form  label { display:block; margin-bottom:24px; font-weight:600; }
.contact-form  textarea { min-height: 180px; resize: vertical; }
.contact-form  input::placeholder,
.contact-form  textarea::placeholder { color: #9aa0a6; }
.contact-form  input:focus,
.contact-form  textarea:focus { border-color: var(--quaternary-color);box-shadow: 0 0 0 3px rgba(20,116,189,.15);}
.contact-form  .first{margin-left: 0;}
.contact-form  .btn-primary {display: inline-block;padding: 10px 18px;border-radius: 4px; border: 1px solid #1474bd;background: #1474bd;color: #fff;font-weight: 600;cursor: pointer;}
.contact-form  .btn-primary:hover { filter: brightness(1.05); }
.contact-form input[type="text"], .contact-form input[type="email"], .contact-form input[type="tel"], .contact-form textarea {width: 100%;padding: 10px 5px;border-bottom: 1px solid var(--tertiary-color);border-radius: 0;background: transparent;font-size: 16px;line-height: 24px;outline: none;border-top: 0;border-left: 0;border-right: 0;}
.contact-form textarea, .contact-form input[type="data"] { border: 1px solid var(--tertiary-color);padding: 10px 14px;}

/* EXPERIENCE CARD HOME*/
.experience-card{ min-height:550px; border:1px solid rgba(183,202,193,.45); }
.experience-card-bg{ z-index:0; object-position:center; transition:transform .8s ease; }
.experience-card-body{ min-height:350px;z-index:1; background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.15) 20%,rgba(0,0,0,.6) 100%); }
.experience-card:hover .experience-card-bg{ transform:scale(1.05); }
.experience-card-arrow{ color:#fff; font-size:24px; }
.experiences-preview .swiper-pagination-bullet-active {opacity: var(--swiper-pagination-bullet-opacity, 1);background: var(--quinary-color);}

/* EXPERIENCE CATEGORIES*/
.experience-categories .category-image{width:100%;max-width:280px;aspect-ratio:1/1;object-fit:cover;}
.experience-categories p{font-size:1rem;line-height:1.9;}

/* HOME COL TEXT LEFT IMG RIGHT */
.col-section-2 .box-cta-intro, .box-cta-intro {position: absolute;left: -10%;bottom: -5%;padding: 35px;max-width: 400px;z-index: 2; }

/* HOME COL TEXT RIGHT IMG LEFT SLIDER */
.col-section-2 .w-50{min-width:0;}
.col-section-2 .col-2-swiper{width:100%;height:100%;position:absolute;inset:0;overflow:hidden;}
.col-section-2 .col-2-swiper .swiper-slide{height:100%;}
.col-section-2 .box-cta-intro{z-index:2;}
.col-section-2 .col-2-swiper .swiper-pagination{text-align:right;padding-right:20px;bottom:20px;}
.col-section-2 .col-2-swiper .swiper-pagination-bullet{background:#fff;opacity:.5;}
.col-section-2 .col-2-swiper .swiper-pagination-bullet-active{opacity:1;}
@media(max-width:991.98px){.col-section-2 .w-50{width:100%!important;}.col-section-2 .col-2-swiper{position:relative;inset:auto;height:auto;aspect-ratio:4/5;}}

/* HOME STRUCTURE */
.structure-card{ min-height:750px; }
.structure-card img{ transition:transform .8s ease; }
.structure-card:hover img{ transform:scale(1.05); }
.structure-card-overlay{ z-index:1; background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.15) 55%,rgba(0,0,0,.75) 100%); }
.structure-card-content{ z-index:2; }
.structures-preview .swiper-pagination-bullet-active {opacity: var(--swiper-pagination-bullet-opacity, 1);background: var(--quinary-color);}

/* STRUCTURE */
.structure-hero{ width:100%; height:95vh; }
.structure-swiper{ width:100%; height:100%; }
.structure-swiper .swiper-slide{ width:100%; height:100%; }
.structure-hero-overlay{ z-index:2; background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.52) 35%,rgba(0,0,0,.30) 70%,rgba(0,0,0,.25) 100%); pointer-events:none; }
.structure-hero-content{ z-index:3; }
.structure-hero-single{ animation:heroZoom 12s ease-out forwards; }

/* EXPERIENCE ARCHIVE */
.experience-archive-card{border:1px solid rgba(183,202,193,.45);background:#fff;color:var(--text-color);transition:transform .35s ease,box-shadow .35s ease;}
.experience-archive-image{height:280px;}
.experience-archive-card-featured .experience-archive-image{height:420px;}
.experience-archive-image img{transition:transform .7s ease;}
.experience-archive-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(24,32,43,.08);}
.experience-archive-card:hover .experience-archive-image img{transform:scale(1.04);}
.archive-experiences .label-category a, .archive-experiences .label-category {color:var(--tertiary-color);text-decoration: none;}
.experience-hero-hub{height: 75vh;}
.price-container-prev{color: var(--color-text) !important; line-height: 1.5 !important;}

/* BLOG */
.single-content h2, .single-content h3 {font-weight: 700; margin-top: 30px;}

/* PUBBLICO/PANEL */
.panel-box{position:relative;overflow:hidden;background:radial-gradient(circle at top left,rgba(0,140,255,.01) 0%,rgba(0,0,0,0) 35%),radial-gradient(circle at bottom center,rgba(0,180,255,.05) 0%,rgba(0,0,0,0) 45%),linear-gradient(135deg,rgba(7,17,31,.72) 0%,rgba(5,18,37,.62) 35%,rgba(2,4,13,.55) 70%,rgba(5,8,20,.68) 100%);border:1px solid rgba(90,140,255,.12);border-radius:35px;box-shadow:inset 0 0 80px rgba(0,140,255,.03),inset 0 0 120px rgba(0,180,255,.02),0 0 40px rgba(0,0,0,.65);backdrop-filter:blur(16px);padding:80px;background-size:140% 140%;animation:panelBgMove 14s ease-in-out infinite;}
.panel-box::before{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:-12px;width:80%;height:28px;background:linear-gradient(90deg,rgba(0,140,255,0) 0%,rgba(0,140,255,.45) 25%,rgba(123,63,255,.55) 50%,rgba(176,38,255,.45) 75%,rgba(176,38,255,0) 100%);filter:blur(18px);opacity:.55;border-radius:100px;pointer-events:none;}
.panel-box::after{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:0;width:100%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(30,144,255,.7) 25%,rgba(176,38,255,.7) 50%,rgba(30,144,255,.7) 75%,transparent 100%);opacity:.7;box-shadow:0 0 6px rgba(30,144,255,.35),0 0 12px rgba(176,38,255,.25);pointer-events:none;}
@keyframes panelBgMove{0%{background-position:0% 0%,100% 100%,50% 50%;}50%{background-position:10% 15%,90% 85%,50% 50%;}100%{background-position:0% 0%,100% 100%,50% 50%;}}
.panel-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.28;mix-blend-mode:screen;filter:saturate(1.1) blur(.5px);transform:scale(1.05);z-index:0;pointer-events:none;}

.panel-contact {
    border: 1px solid rgb(17 56 96);
    background: radial-gradient(circle at top left, rgba(0, 140, 255, .01) 0%, rgba(0, 0, 0, 0) 35%), radial-gradient(circle at bottom center, rgba(0, 180, 255, .05) 0%, rgba(0, 0, 0, 0) 45%), linear-gradient(135deg, rgba(7, 17, 31, .72) 0%, rgba(5, 18, 37, .62) 35%, rgba(2, 4, 13, .55) 70%, rgba(5, 8, 20, .68) 100%);
    background-size: auto, auto, auto;
    background-size: auto, auto, auto;
}

.panel-contact img.map{width: 100%;height: 100%;object-fit: cover;}

/* contenuto sopra */
.panel-box > *:not(.panel-bg){position:relative; z-index:2;}

/* REVIEW */
.review {position: relative;z-index: 2;margin-top: -80px;background: linear-gradient(to bottom,#0000 0%,#05070c 52%,#04060b 100%);}

/* SERVICE CARD */
.service-card{border:1px solid rgba(82,117,99,.2);transition:.3s ease;}
.service-icon{width:65px;height:65px;object-fit:contain;}
.service-card:hover{transform:translateY(-5px);box-shadow:0 .5rem 1rem rgba(0,0,0,.08);}

/* CONTACT */
.card-contact{border: 1px solid rgba(255,255,255,.10);background: linear-gradient(145deg,rgba(22,27,33,.96),rgba(10,14,18,.98));}

/* FOOTER */
.footer{background:#1F3027}
a.contact-text, a.contact-text:link, a.contact-text:hover{color: #fff;font-weight: bold;text-decoration: none;}

/* GRID BOX */
.grid-box .single-box{border: 1px solid rgb(17 56 96);background: radial-gradient(circle at top left,rgba(0,140,255,.01) 0%,rgba(0,0,0,0) 35%),radial-gradient(circle at bottom center,rgba(0,180,255,.05) 0%,rgba(0,0,0,0) 45%),linear-gradient(135deg,rgba(7,17,31,.72) 0%,rgba(5,18,37,.62) 35%,rgba(2,4,13,.55) 70%,rgba(5,8,20,.68) 100%);background-size: auto, auto, auto;background-size: auto, auto, auto;}
.grid-box .single-box .section-title-line{position:relative;height:1px;width:100%;overflow:hidden;background:linear-gradient(90deg,transparent 0%,rgba(127,162,193,.25) 20%,rgba(255,255,255,.65) 50%,rgba(127,162,193,.25) 80%,transparent 100%);}
.grid-box .single-box .section-title-line::after{content:"";position:absolute;top:0;left:-20%;width:20%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);}
.section-dark{ background:radial-gradient(circle at top right,rgba(127,162,193,.10),transparent 35%),linear-gradient(180deg, #041423 0%,#071F38 35%,#0A2E54 100%);}
.section-dark::before{
    content:"";
    position:absolute;
    top:-200px;
    right:-200px;

    width:600px;
    height:600px;

    border-radius:50%;

    background:radial-gradient(
        circle,
        rgba(127,162,193,.12) 0%,
        rgba(127,162,193,0) 70%
    );

    pointer-events:none;
}   

/* FAQ */
.faq-card{position:relative;border-radius:4px!important;overflow:hidden;background:linear-gradient(145deg,rgba(22,27,33,.96),rgba(10,14,18,.98));z-index:1;border:none!important;}
.faq-card::before{content:"";position:absolute;inset:0;padding:1px;border-radius:4px;background:rgba(255,255,255,.10);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:add,add;-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;}
.faq-card:hover{transform:translateY(-2px);transition:all .3s ease;}
.faq-card .accordion-button{background:transparent!important;color:#fff!important;box-shadow:none!important;font-weight:700;border:0!important;}
.faq-card .accordion-button:not(.collapsed){background:transparent!important;color:#fff!important;}
.faq-card .accordion-button::after{filter:brightness(0) invert(1);}
.faq-card .accordion-collapse{border:0!important;}
.faq-card .accordion-body{background:transparent!important;line-height:1.8;border:0!important;}
.faq-filter{border:1px solid var(--tertiary-color);border-radius:40px;height:40px;padding:0 30px;display:flex;align-items:center;justify-content:center;color:var(--tertiary-color);text-decoration:none;cursor:pointer;font-size:13px;font-weight:600;transition:all .3s ease;position:relative;overflow:hidden;}
.faq-filter:hover{color:#fff;border-color:#00d9ff;transform:translateY(-2px);box-shadow:0 0 10px rgba(0,217,255,.25),0 0 20px rgba(182,0,255,.15);background:linear-gradient(90deg,rgba(0,166,255,.12),rgba(182,0,255,.12));}
.faq-filter.active{color:#fff;border-color:#00d9ff;background:linear-gradient(90deg,rgba(0,166,255,.18),rgba(182,0,255,.18));box-shadow:0 0 12px rgba(0,217,255,.20);}
.faq-category-badge{background: linear-gradient(90deg,#4FACFE,#6C63FF,#B16CEA);}
.accordion-header {padding-top: 15px;}


@media (min-width:992px){
  .main-navbar .navbar-collapse{ display:flex !important; }
  .main-navbar .navbar-nav{ margin-left:auto; }
}

@media(max-width:992px){
.whatsapp-widget {right: 5px;}
.header-logo img {width: 60px!important;}
.experience-categories .row{--bs-gutter-x:0;}
footer .col-md-3 > li > .d-flex{justify-content:center;text-align:center;}
footer .col-md-3 > li > .d-flex > .flex-shrink-0{display:none;}
footer .col-md-3 ul.list-unstyled{display:block !important;text-align:center;}
footer .col-md-3 ul.list-unstyled li{display:block;}
footer h4{text-align: center;}
footer .col-md-3{margin-bottom: 30px;}
footer .col-md-3:last-child{display:none !important;}
.box-cta-intro{display: none;}
.navbar-nav {gap: 5px;}
#chi-siamo .justify-content-between {flex-direction: column;}
.hero .gap-3 a{margin-bottom: 0 !important;}
.scroll-indicator{display: none;}
.height-vh-90 {height: 120vh;}
.hero  .fs-20 {font-size: 16px;display: none;}
.main-navbar .navbar-collapse{ position:fixed; top:0; left:0; width:100%; height:100vh; background:
radial-gradient(circle at top right,
rgba(195,32,38,.35) 0%,
transparent 45%),
linear-gradient(
135deg,
#11151b 0%,
#181b20 40%,
#3f1014 100%
); padding:100px 30px 40px; display:flex; flex-direction:column; justify-content:flex-start; transition:all .4s ease; z-index:999; }
.main-navbar .navbar-nav{ width:100%; text-align: center;}
.main-navbar .navbar-nav li{ margin-bottom:0; }
.main-navbar .navbar-nav a{ color:white; font-size:24px; font-weight:600; letter-spacing:.5px; transition:.3s; }
.main-navbar .navbar-nav a:hover{ color:white; transform:translateX(5px); }
.main-navbar .btn-primary-custom{ margin-top:auto; width:100%; text-align:center; font-size:18px; padding:15px; border-radius:8px; }
.main-navbar .navbar-collapse.collapse{ transform:translateY(-100%); opacity:0; pointer-events:none; }
.main-navbar .navbar-collapse.show{ transform:translateY(0); opacity:1; pointer-events:auto; }
.navbar-toggler{ border:none; background:transparent; box-shadow:none; padding:0; position:relative; z-index:1000; }
.navbar-toggler-icon{ background-image:none; width:30px; height:20px; position:relative; }
.navbar-toggler-icon::before, .navbar-toggler-icon::after, .navbar-toggler-icon span{ content:""; position:absolute; left:0; width:100%; height:2px; background:white; transition:.3s; }
.navbar-toggler-icon::before{ top:0; }
.navbar-toggler-icon span{ top:50%; transform:translateY(-50%); }
.navbar-toggler-icon::after{ bottom:0; }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::before{ transform:rotate(45deg); top:9px; }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::after{ transform:rotate(-45deg); bottom:9px; }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon span{ opacity:0; }
.main-navbar.scrolled{ background:#2355aa; }
.main-navbar.scrolled .nav-link{ color:#fff; text-align:center; }
h1 {font-size: 32px !important;}
h2{font-size: 26px !important;}
h3{font-size: 18px !important;}
.w-50 { width: 100% !important;}
.hero-features {margin-top: 0px;background: linear-gradient(to bottom,#06070e 0%,#07070d 40%,#06080d 100%);}
.website-section{ min-height:auto;}
.website-image{position:relative; top:auto;right:auto;transform:none;width:100%;margin-top:40px;justify-content:center; }
.website-image img{width:100%;max-width:100%;}
.panel-box {padding:40px 30px;}
.video-ai .gap-4 {gap: 1.5rem !important;flex-direction: column;}
.video-ai .height-vh-75{height:  100%;}
.video-ai{height: auto !important;}
.review {margin-top: 0;background: linear-gradient(to bottom,#04060b 100%,#05070c 52%,#04060b 100%);}
.feature-box {flex-direction: column;}
.contact-cta .cta-image {opacity: 0.3;}
#menu .btn-outline-light {text-align: center;justify-content: center;width: 100%;margin-top: 30px;}
#menu .ms-5{margin-left: 0 !important;}
.florence-image { width: 100%;opacity: 0.4;}
}