
/* Restyling elegante di header, topbar, menu e testate VITATTIVA */
:root{
  --vita-blue:#0b4f8a;
  --vita-blue-dark:#082c4f;
  --vita-blue-deep:#061c34;
  --vita-sky:#53b7ef;
  --vita-accent:#f39a39;
  --vita-light:#f5f9fc;
}
body{font-family:'Inter',sans-serif;background:#fff;color:#10253d}
h1,h2,h3,h4,h5,h6,.navbar-nav .nav-link,.header-carousel h1,.page-header h1{font-family:'Manrope',sans-serif}
.header-carousel h5.text-uppercase,.page-header h5.text-uppercase{font-family:'Barlow Condensed',sans-serif}

.vita-topbar{background:linear-gradient(90deg,#0b2746 0%, #0f4b81 55%, #0b2746 100%) !important;padding:10px 0;position:relative;z-index:4}
.vita-topbar .top-bar{min-height:auto;padding-top:0;padding-bottom:0}
.vita-topbar .navbar-brand{display:flex;align-items:center}
.vita-brand-logo{display:block;max-height:68px;width:auto}
.vita-brand-logo--mobile{max-height:50px}
.vita-topbar .col-lg-9{text-align:right}
.vita-top-contact{height:auto !important;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.14);margin-bottom:6px;color:#fff;backdrop-filter:blur(8px)}
.vita-top-contact i{color:#ffd59f !important}
.vita-top-contact p{color:#fff;font-size:.95rem}
.vita-top-social a{border-radius:999px !important;background:rgba(255,255,255,.12) !important;color:#fff !important;border:1px solid rgba(255,255,255,.12)}
.vita-top-social a:hover{background:#fff !important;color:var(--vita-blue) !important}

.vita-nav-shell{background:transparent !important;position:relative;z-index:5;margin-top:-10px}
.vita-navbar{max-width:1280px;margin:0 auto;background:rgba(255,255,255,.94) !important;border-radius:0 0 28px 28px;box-shadow:0 18px 40px rgba(9,40,74,.14);backdrop-filter:blur(10px);padding-top:10px !important;padding-bottom:10px !important}
.vita-navbar .navbar-nav{gap:.2rem}
.vita-navbar .navbar-nav .nav-link{font-size:.96rem;font-weight:700;color:#12385d;position:relative;padding:14px 16px;border-radius:999px;transition:all .2s ease}
.vita-navbar .navbar-nav .nav-link:hover,.vita-navbar .navbar-nav .nav-link.active{background:linear-gradient(135deg,#eff6fc 0%,#dfeffb 100%);color:var(--vita-blue)}
.vita-navbar .navbar-nav .nav-link.active::after{content:"";position:absolute;left:18px;right:18px;bottom:8px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--vita-accent),var(--vita-sky))}
.vita-navbar .navbar-toggler{border:none;box-shadow:none;padding:.55rem .75rem;border-radius:14px;background:#eef4fa}
.vita-navbar .navbar-toggler .fa-bars{color:#0b4f8a}
.vita-call-pill{background:linear-gradient(135deg,var(--vita-blue) 0%,#1677c2 100%) !important;border-radius:999px;padding:10px 18px !important;box-shadow:0 14px 28px rgba(17,89,150,.25)}
.vita-call-pill .bg-white{width:40px !important;height:40px !important;border-radius:50%}
.vita-call-pill p{font-size:.8rem;letter-spacing:.02em;margin-bottom:0 !important;color:#dceeff !important}
.vita-call-pill h5{font-size:1rem;color:#fff !important}

.vita-hero-carousel{overflow:hidden;background:linear-gradient(135deg,#061e37 0%, #0f4b81 100%)}
.vita-hero-carousel .vita-hero-slide{position:relative;overflow:hidden;min-height:clamp(500px,46vw,690px)}
.vita-hero-carousel .vita-hero-slide>img{width:100%;height:clamp(500px,46vw,690px);object-fit:cover;display:block;transform:scale(1.01)}
.vita-hero-carousel .vita-hero-slide>.position-absolute{background:linear-gradient(98deg,rgba(4,23,45,.93) 0%,rgba(5,32,61,.82) 28%,rgba(8,47,83,.50) 60%,rgba(8,47,83,.16) 100%) !important}
.vita-hero-carousel .container,.vita-page-hero .container{position:relative;z-index:2;border-left:none !important;padding:34px 36px !important}
.vita-hero-carousel .container::before,.vita-hero-carousel .container::after,.vita-page-hero .container::before,.vita-page-hero .container::after{display:none !important}
.vita-hero-carousel .col-10.col-lg-8{max-width:min(720px,100%);padding:1.5rem 1.6rem 1.55rem 1.6rem;border-radius:28px;background:linear-gradient(135deg,rgba(4,20,39,.56),rgba(5,26,52,.26));backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);box-shadow:0 20px 45px rgba(0,0,0,.16);position:relative}
.vita-hero-carousel .col-10.col-lg-8::before{content:"";position:absolute;left:-16px;top:20px;bottom:20px;width:7px;border-radius:999px;background:linear-gradient(180deg,var(--vita-accent),#ffc26d,var(--vita-sky))}
.vita-hero-carousel .vita-hero-slide h1{font-size:clamp(2.9rem,5.8vw,5.4rem) !important;line-height:0.98;letter-spacing:-.045em;text-shadow:0 6px 30px rgba(0,0,0,.18)}
.vita-hero-carousel .vita-hero-slide h5.text-uppercase{display:inline-block;padding:.45rem .9rem;border-radius:999px;background:rgba(255,255,255,.14);letter-spacing:.16em;font-size:.86rem;font-weight:700}
.vita-hero-carousel .vita-hero-slide p,.vita-hero-carousel .vita-hero-slide h5:not(.text-uppercase){max-width:620px;line-height:1.5}
.vita-hero-carousel .vita-hero-slide .btn{border-radius:999px !important;font-weight:800;box-shadow:0 16px 36px rgba(0,0,0,.22);padding-left:1.6rem !important;padding-right:1.6rem !important}
.vita-hero-carousel .owl-nav{right:3.5%}
.vita-hero-carousel .owl-nav .owl-prev,.vita-hero-carousel .owl-nav .owl-next{background:rgba(255,255,255,.1);border:none;backdrop-filter:blur(8px)}
.vita-hero-carousel .owl-nav .owl-prev:hover,.vita-hero-carousel .owl-nav .owl-next:hover{background:rgba(255,255,255,.22)}

.vita-page-hero{position:relative;display:flex;align-items:center;min-height:clamp(370px,34vw,500px);overflow:hidden;background-size:cover !important;background-position:center center !important;background-repeat:no-repeat !important}
.vita-page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 84% 24%, rgba(255,255,255,.18), transparent 16%), radial-gradient(circle at 88% 78%, rgba(83,183,239,.18), transparent 20%);pointer-events:none}
.vita-page-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:linear-gradient(90deg,var(--vita-accent) 0%, var(--vita-sky) 46%, transparent 86%)}
.vita-page-hero .container{width:100%}
.vita-page-hero .container>h1{display:inline-block;max-width:min(760px,100%);padding:.6rem 1.1rem .72rem 1.2rem;margin-bottom:1rem !important;border-radius:22px;background:linear-gradient(135deg,rgba(5,24,43,.46),rgba(5,24,43,.18));backdrop-filter:blur(6px);font-size:clamp(2.6rem,4.9vw,4.8rem) !important;line-height:1.02;letter-spacing:-.04em;text-shadow:0 6px 28px rgba(0,0,0,.18);position:relative}
.vita-page-hero .container>h1::before{content:"";position:absolute;left:-18px;top:12px;bottom:12px;width:7px;border-radius:999px;background:linear-gradient(180deg,var(--vita-accent),#ffc26d,var(--vita-sky))}
.vita-page-hero h5.text-uppercase{display:inline-block;padding:.46rem .9rem;border-radius:999px;background:rgba(255,255,255,.14);letter-spacing:.16em;font-size:.84rem;font-weight:700;margin-bottom:.95rem !important}
.vita-page-hero h5.fs-5,.vita-page-hero h2{display:inline-block;max-width:min(720px,100%);padding:.72rem .95rem;border-radius:16px;background:rgba(5,24,43,.24);backdrop-filter:blur(4px);line-height:1.45;text-shadow:0 3px 16px rgba(0,0,0,.22)}

/* Specific page hero tuning */
body.vita-ageness .vita-page-hero{background-position:68% center !important}
body.vita-ageness .vita-page-hero{background-image:linear-gradient(98deg,rgba(9,29,48,.90) 0%,rgba(12,46,72,.70) 34%,rgba(12,46,72,.24) 60%,rgba(12,46,72,.08) 100%),var(--vita-hero-image) !important}
body.vita-strada .vita-page-hero{background-position:center center !important;background-image:linear-gradient(98deg,rgba(3,23,45,.86) 0%,rgba(5,35,66,.63) 34%,rgba(7,52,84,.20) 62%,rgba(7,52,84,.06) 100%),var(--vita-hero-image) !important}
body.vita-scuola .vita-page-hero{background-position:center 35% !important}
body.vita-chi .vita-page-hero{background-position:center 34% !important}
body.vita-404 .vita-page-hero{background-position:center center !important}

@media (max-width: 991.98px){
  .vita-topbar{display:none !important}
  .vita-nav-shell{margin-top:0}
  .vita-navbar{border-radius:0 0 22px 22px;padding-top:8px !important;padding-bottom:8px !important}
  .vita-navbar .collapse{padding-top:.65rem}
  .vita-navbar .navbar-nav .nav-link{padding:12px 14px}
  .vita-call-pill{margin-right:0 !important}
}
@media (max-width:768px){
  .vita-hero-carousel .vita-hero-slide,.vita-hero-carousel .vita-hero-slide>img{min-height:520px;height:520px}
  .vita-hero-carousel .container,.vita-page-hero .container{padding:24px 20px !important}
  .vita-hero-carousel .col-10.col-lg-8{padding:1.1rem 1rem 1.15rem 1rem;border-radius:22px}
  .vita-hero-carousel .col-10.col-lg-8::before{left:-10px;top:14px;bottom:14px;width:6px}
  .vita-page-hero{min-height:400px}
  .vita-page-hero .container>h1{padding:.55rem .85rem .62rem .9rem;border-radius:18px}
  .vita-page-hero .container>h1::before{left:-12px;top:10px;bottom:10px;width:6px}
}

/* Ottobre 2026 — barra bianca, logo compatto e fotografie meno alte. */
.vita-topbar {background:#fff !important; box-shadow:0 1px 0 rgba(18,54,91,.08);padding:6px 0 !important;}
.vita-topbar .top-bar {max-width:1280px;margin:auto;}
.vita-brand-logo {max-height:44px !important; width:auto !important;}
.vita-brand-logo--mobile {max-height:38px !important;}
.vita-top-contact {background:#f1f6fb !important;border:1px solid #deebf6 !important;color:#154367 !important; padding:7px 12px !important; margin-bottom:0 !important;}
.vita-top-contact i {color:#e78325 !important;}
.vita-top-contact p,.vita-top-contact a {color:#164269 !important;}
.vita-contact-link {font-size:.93rem;font-weight:700;text-decoration:none;}
.vita-contact-link:hover,.vita-contact-link:focus {color:#006dbb !important;text-decoration:underline;}
.vita-top-social a {background:#edf5fb !important;border:1px solid #dfeaf3 !important;color:#14578c !important;}
.vita-top-social a:hover {background:#0d67a9 !important;color:#fff !important;}
.vita-nav-shell {margin-top:0 !important;}
.vita-navbar {border-radius:0 0 18px 18px;box-shadow:0 10px 25px rgba(9,40,74,.09)}
.vita-phone-link {color:#fff !important;text-decoration:none;}
.vita-phone-link:hover,.vita-phone-link:focus {text-decoration:underline;color:#fff !important;}
.vita-call-pill {cursor:pointer;}
/* Tutto il testo direttamente sulla foto; niente card semi-trasparenti. */
.vita-hero-carousel .col-10.col-lg-8 {background:transparent !important;border:0 !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;box-shadow:none !important;border-radius:0 !important;padding:0 0 0 20px !important;}
.vita-hero-carousel .col-10.col-lg-8::before {left:0 !important;top:0 !important;bottom:0 !important;}
.vita-page-hero .container>h1,.vita-page-hero h5.text-uppercase,.vita-page-hero h5.fs-5,.vita-page-hero h2 {background:none !important;border:0 !important;box-shadow:none !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;border-radius:0 !important;padding:0 !important;}
.vita-page-hero .container>h1 {padding-left:18px !important;}
.vita-page-hero .container>h1::before {left:0 !important;}
.vita-hero-carousel .vita-hero-slide,.vita-hero-carousel .vita-hero-slide>img {min-height:410px !important;height:clamp(410px,36vw,550px) !important;}
.vita-page-hero {min-height:clamp(315px,27vw,400px) !important;padding-top:34px !important;padding-bottom:34px !important;}
.vita-page-hero .container>h1 {font-size:clamp(2.4rem,4.2vw,4rem) !important;}
.vita-page-hero h5.text-uppercase {display:block !important;max-width:700px;}
.vita-page-hero h5.fs-5 {display:block !important;}
/* Le nuove immagini restano chiare nella zona destra. */
@media(max-width:991.98px){.vita-nav-shell{margin-top:0 !important}}
@media(max-width:768px){.vita-hero-carousel .vita-hero-slide,.vita-hero-carousel .vita-hero-slide>img{min-height:420px !important;height:440px !important}.vita-page-hero{min-height:330px !important}}


/* Correzione robusta testate interne: immagine reale nella testata */
.vita-page-hero--image {
  position: relative;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: clamp(320px, 27vw, 395px) !important;
  background: #0a2947 !important;
}
.vita-page-hero--image .vita-page-hero-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  z-index: 0;
}
.vita-page-hero--image .vita-page-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgba(4, 25, 45, .84) 0%, rgba(6, 37, 67, .66) 28%, rgba(8, 52, 86, .22) 58%, rgba(8, 35, 62, .03) 100%);
}
.vita-page-hero--image .vita-page-hero-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding-top: 52px !important;
  padding-bottom: 52px !important;
}
.vita-page-hero--image h1 {
  max-width: 760px;
  text-wrap: balance;
  letter-spacing: -.045em;
  text-shadow: 0 6px 28px rgba(0,0,0,.20);
}
.vita-page-hero--image h5.text-uppercase {
  letter-spacing: .18em;
  font-weight: 700;
  text-shadow: 0 3px 18px rgba(0,0,0,.18);
}
.vita-page-hero--image h5.fs-5 {
  max-width: 690px;
  text-shadow: 0 3px 18px rgba(0,0,0,.18);
}
.vita-page-hero--image.vita-page-hero--ageness .vita-page-hero-photo {object-position: 68% center; filter: saturate(.94) brightness(1.02);}
.vita-page-hero--image.vita-page-hero--scuola .vita-page-hero-photo {object-position: center 35%; filter: saturate(1.02) brightness(1.01);}
.vita-page-hero--image.vita-page-hero--strada .vita-page-hero-photo {object-position: center center; filter: brightness(1.06) saturate(.98);}
.vita-page-hero--image.vita-page-hero--strada .vita-page-hero-overlay {background: linear-gradient(90deg, rgba(5, 28, 48, .78) 0%, rgba(8, 39, 70, .52) 30%, rgba(8, 50, 84, .10) 62%, rgba(8, 35, 62, .02) 100%);}
.vita-page-hero--image.vita-page-hero--ageness .vita-page-hero-overlay {background: linear-gradient(90deg, rgba(5, 27, 46, .84) 0%, rgba(8, 39, 70, .60) 28%, rgba(8, 49, 84, .16) 57%, rgba(8, 35, 62, .02) 100%);}
@media (max-width: 768px) {
  .vita-page-hero--image {min-height: 315px !important;}
  .vita-page-hero--image .vita-page-hero-content {padding-top: 42px !important; padding-bottom: 42px !important;}
  .vita-page-hero--image.vita-page-hero--ageness .vita-page-hero-photo {object-position: 72% center;}
  .vita-page-hero--image.vita-page-hero--strada .vita-page-hero-photo {object-position: 58% center;}
}
