/*
Theme Name:     Vittoria Child
Template:       vittoria-theme
Text Domain:    vittoria-child
Version:        0.2
Author:	        Ermini Giannace
Theme URI:      https://iol.it/
Author URI:     https://iol.it/
*/

/* modifiche per accessibilità */

a:not(.btn),
a:not(.btn):hover {
  text-decoration: underline !important;
}

#dove-siamo a,
#dove-siamo a:hover {
  
}

.c-hamburger:focus {
  padding: 0 !important;
}

.navbar-expand .main-menu .navbar-nav li.nav-item .nav-link {
  text-decoration: none !important;
}

footer a:not(.btn),
footer a:not(.btn):active,
footer a:not(.btn):focus,
footer a:not(.btn):focus:active,
footer a:not(.btn):hover,
footer a:not(.btn):visited {
 /* text-decoration: none !important; */
}

/*MODIFICO IL COLORE MENU*/

.c-hamburger span {
  background: #04398e !important;
}

.c-hamburger span:after,
.c-hamburger span:before {
  background-color: #04398e !important;
}

.hidden-item {
  display: none;
}

.module-hero > .container .row .caption .title * {
  word-break: break-word;
}

/*Add your own styles here:*/
.module-media-object.reverse.dark > div > div:nth-child(2) {
  background-color: white;
}
.module-media-object.reverse.dark > div > div:nth-child(1) {
  background: linear-gradient(
    270deg,
    transparent 0,
    transparent 66%,
    transparent 0,
    white
  );
}
.module-media-object.dark > div > div:nth-child(2) {
  background-color: white;
}
.module-media-object.dark > div > div:nth-child(1) {
  background: linear-gradient(
    270deg,
    white 0,
    transparent 66%,
    transparent 0,
    transparent
  );
}

/*News block*/
.slick-tabbed-news .card-news {
  /*margin-left: 15px;*/
  /*margin-right: 15px;*/
}

.tabs-control {
  padding-left: 30px;
  padding-right: 30px;
  margin-bottom: 16px;
}

.tabs-control > div {
  text-align: center;
}

.tabs-control .tab-underline {
  width: 100%;
  height: 2px;
  background-color: #7aa0d7;
}

.tabs-control > div.tab-inactive .tab-underline {
  background-color: #04398e;
  height: 1px;
}

.tabs-control .tab-inactive a {
  /* color: darkgray; */
  color: #595959;
}
.tabs-control .tab-inactive a:hover {
  color: #595959;
}

.tabs-control.buttons > div {
  border-bottom: 0;
}

.tabs-control.buttons a {
  width: 100%;
}

.tabs-control.buttons .tab-inactive a {
  background-color: transparent;
  outline: 2px solid #04398e;
}

.pages a.active {
  color: #0056b3;
  font-weight: 600;
}

.module-collapse.module-collapse-white a[data-toggle="no-collapse"] {
  font-size: 2rem;
  color: #00205c;
  line-height: 1.4;
  padding-right: 20px;
  font-weight: 700;
}

/** SOCIAL SHARE FAQ **/
.social-share-buttons{
  padding-top:30px;
}
.social-share-buttons-container{
  display: flex;
  justify-content: flex-end;
}
.social-share-buttons-container a{
  margin-right:15px;
}
.social-share-buttons-container a:last-child{
  margin-right:0;
}

.social-share-buttons-container a svg{
  width:25px;
}

.social-share-buttons-container a.facebook-share svg{
  fill:#0866ff;
}
.social-share-buttons-container a.linkedin-share svg{
  fill:#007bb5;
}
.social-share-buttons-container a.whatsapp-share svg{
  fill:#12af0a;
}
.social-share-buttons-container a.mail-share svg{
  fill:#888990;
}

/** DOVE SIAMO IN HP **/
.default-navigation .block-rounded {
  border-radius: 0 !important;
}

/** MENU **/
@media (max-width: 768px) {
  .module-hero-dropimage {
    background: none !important;
    padding: 0 !important;
  }
}

@media (min-width: 768px) {
  .navbar-expand .main-menu.full-blue {
    background: #00205c !important;
  }

  .navbar-expand .main-menu {
    background: none !important;
  }

  .module-hero-dropimage.color-a {
    padding: 0 !important;
  }

  .module-hero-dropimage.color-a .container {
    /*padding-top: 95px!important;*/
    padding-top: 14rem !important;
  }
}

@media (min-width: 1200px) {
  .module-hero > .container,
  .module-hero-dropimage > .container {
    max-width: 1220px;
    padding: 14rem 15px 9rem 4rem !important;
  }
}

@media (min-width: 1200px) {
  .main-menu .container {
    max-width: 1160px;
  }
}

@media (min-width: 1024px) {
  .module-hero > .container {
    /*height: 1264px!important;*/
  }

  /*.module-hero>.container .row .slick-hero-container .slick-hero .bg {
        margin-top: 170px;    
    }*/

  #nav_main_menu {
    padding-bottom: 22px;
  }
}

@media (max-width: 639px) {
  #nav_main_menu {
    justify-content: center !important;
  }

  .item.slick-slide {
    flex-direction: column;
  }

  .card-news {
    min-height: 160px !important;
    margin-left: 2px !important;
    margin-right: 2px !important;
    border: 2px solid #7aa0d7 !important;
  }

  .card-news h5 {
    font-size: 1.5rem;
  }

  .card-news p {
    display: none;
  }

  .block-news .tabs-control a {
    font-size: 14px;
  }

  .block-news .slick-tabbed-news .btn {
    font-size: 12px;
    padding: 1rem;
    /*width: 50%;*/
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-width: 70px;
  }
}

@media (min-width: 576px) {
  .navbar-expand .main-menu .navbar-nav li.nav-item {
    padding: 0 1.5rem !important;
  }
  .navbar-expand .main-menu .navbar-nav li.nav-item .nav-link.btn {
    padding: 1.5rem 2.4rem !important;
  }
}

.navbar-expand .main-menu .navbar-brand span {
  /*height: 82px!important;*/
  display: flex !important;
  flex-direction: column-reverse;
  color: white;
  text-indent: inherit !important;
  font-size: 14px !important;
  text-align: start;
}

/** Hero H1 **/
@media (min-width: 768px) {
  .module-hero > .container .row .caption .title * {
    /*font-size: 4.6rem!important;*/
  }
}

#products .card-body {
  min-height: 280px;
}

/* FIX MAP HEIGHT ON MOBILE */
iframe {
  min-height: 300px;
}

/* MOBILE TITLE */
@media (max-width: 768px) {
  .title {
    /*margin-top: 8rem;*/
  }
}

/* CAROUSEL BANNER */
#carouselBanner .carousel-indicators li {
  background-color: #00205c;
}
#carouselBanner .carousel-caption {
  top: 10px;
  bottom: inherit;
}
#carouselBanner .carousel-inner {
  margin-top: -20px;
}
#carouselBanner .carousel-caption h3 {
  margin-bottom: inherit;
}
#carouselBanner .carousel-caption p {
  /*color: #706f6f;*/
  color: #00205c;
  font-weight: 600;
}

.card-product .bg {
    border-style: solid;
    border-top-right-radius: 9rem;
    border-width: 0;
    height: 19rem;
    margin-bottom: 0;
    order: -1
}

.module-media-object .title a,.module-media-object .title a:active,.module-media-object .title a:active:focus,.module-media-object .title a:focus,.module-media-object .title a:hover,.module-media-object .title a:visited {
    color: #00205c;
    text-decoration: none !important;
}


.card-news a, .card-news a:hover {
    text-decoration: none !important;
}








/* Pulsante "Area riservata" - stile base */
#nav-action.btn-area-riservata {
  background-color: #ffffff !important; /* sfondo bianco */
  color: #002b6c !important;            /* testo blu */
  border: 2px solid #002b6c !important; /* bordo blu */
  padding: 0.5em 1.2em;
  border-radius: 10px;
  font-weight: bold;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  position: relative;
  z-index: 1;
  box-shadow: none !important;         /* rimuove ogni ombra predefinita */
}

/* Blocco di ogni modifica al passaggio del mouse */
#nav-action.btn-area-riservata:hover,
#nav-action.btn-area-riservata:focus {
  background-color: #ffffff !important;
  color: #002b6c !important;
  border-color: #002b6c !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Al clic: aggiungi contorno giallo */
#nav-action.btn-area-riservata:active {
  background-color: #ffffff !important;
  color: #002b6c !important;
  border-color: #002b6c !important;
  box-shadow: 0 0 0 3px #f2cc00 !important; /* contorno giallo */
}


/* ACCESSIBILITÀ: Focus visibile sul logo navbar-brand */
.navbar-expand .main-menu .navbar-brand:focus,
.navbar-expand .main-menu .navbar-brand:focus-visible {
  outline: 3px solid #FFD200 !important; /* giallo alto contrasto */
  outline-offset: 4px;
  border-radius: 4px;
}

/* ACCESSIBILITÀ: Mantiene il bordo di focus visibile e ad alto contrasto sui link nel footer.
   Usa il colore giallo ufficiale del sito (#FFD200) e disattiva la transizione per evitare che il bordo sparisca. */
footer a:focus,
footer a:focus-visible {
  outline: 2px solid #FFD200 !important;
  outline-offset: 3px !important;
  border-radius: 4px;
  transition: none !important;
}


/* ACCESSIBILITÀ: Mostra un bordo giallo ben visibile quando il bottone "Area riservata" riceve focus da tastiera */
#nav-action.btn-area-riservata:focus,
#nav-action.btn-area-riservata:focus-visible {
  outline: 2px solid #FFD200 !important; /* bordo giallo ad alto contrasto */
  outline-offset: 3px !important;
  border-radius: 10px;
}

/* ACCESSIBILITÀ: Aggiunge un bordo ben visibile al focus tastiera sul pulsante hamburger menu */
button.c-hamburger:focus,
button.c-hamburger:focus-visible {
  outline: 2px solid #002b6c !important; /* blu scuro del sito */
  outline-offset: 3px !important;
  border-radius: 6px;
}


/* ACCESSIBILITÀ: Rende il bordo di focus tastiera ben visibile sui link dei breadcrumb */
.breadcrumb a:focus,
.breadcrumb a:focus-visible {
  outline: 2px solid #ffffff !important; /* bordo bianco visibile sul blu */
  outline-offset: 3px !important;
  border-radius: 4px;
  transition: none !important; /* impedisce sparizione animata */
}


/* ACCESSIBILITÀ: Rende visibile e ben contrastato il bordo di focus tastiera sui link città */
a.btn-link.locality:focus,
a.btn-link.locality:focus-visible {
  outline: 2px solid #002b6c !important; /* blu scuro ufficiale del sito */
  outline-offset: 3px !important;
  border-radius: 4px;
  text-decoration: none !important; /* rimuove underline doppio */
}

/* ACCESSIBILITÀ: Corregge il contrasto colore rendendo il testo #1E64A5 su sfondo grigio conforme */
.locality, /* o altro selettore applicato al link città */
.color-a {
  color: #1E64A5 !important; /* nuovo blu scuro conforme WCAG */
}


/* ACCESSIBILITÀ: Rimuove box-shadow giallo predefinito e usa un solo bordo giallo ben visibile e distanziato */
.btn.btn-primary:focus,
.btn.btn-primary:focus-visible {
  outline: 2px solid #002b6c !important;     /* bordo giallo accessibile */
  outline-offset: 4px !important;            /* distanzia il bordo dal bottone */
  border-color: transparent !important;      /* nasconde temporaneamente il bordo blu */
  box-shadow: none !important;               /* rimuove effetto giallo duplicato */
}

/* ACCESSIBILITÀ: Rimuove box-shadow giallo predefinito e usa un solo bordo giallo ben visibile e distanziato */
.btn.btn-contact:focus,
.btn.btn-contact:focus-visible {
  outline: 2px solid #FFD200 !important;     /* bordo giallo accessibile */
  outline-offset: 4px !important;            /* distanzia il bordo dal bottone */
  border-color: transparent !important;      /* nasconde temporaneamente il bordo blu */
  box-shadow: none !important;               /* rimuove effetto giallo duplicato */
}

/* ACCESSIBILITÀ: Focus giallo visibile solo da tastiera per i link inseriti dagli utenti nel caption */
.vittoria-caption-description a:focus,
.vittoria-caption-description a:focus-visible {
  outline: 2px solid #FFD200 !important;
  outline-offset: 3px !important;
  box-shadow: none !important;
  border-radius: 3px;
}
.vittoria-caption-description a {
  color: #ffffff !important;        /* Force white for visibility */
  text-decoration: underline;       /* Optional: underline for clarity */
}



/* Evita effetto focus da mouse */
.vittoria-caption-description a:focus:not(:focus-visible) {
  outline: none !important;
}


/* ACCESSIBILITÀ: miglior focus blu visibile e distanziato su .card-news a */
.card-news a:focus,
.card-news a:focus-visible {
  outline: 3px solid #00205c !important;     /* bordo blu visibile */
  outline-offset: 10px !important;            /* spazio tra bordo e contenuto */
  border-radius: 8px;                        /* angoli morbidi */
  display: block;                            /* assicura padding e outline */
  padding: 8px;                              /* spinge il contenuto verso l’interno */
  box-shadow: none !important;               /* elimina eventuali box-shadow gialli */
  background: #fff;                          /* evita problemi con hover bg */
}

/* ACCESSIBILITÀ: focus ben visibile per frecce slider */
.slick-arrow:focus,
.slick-arrow:focus-visible {
  outline: 2px solid #00205c !important;  /* blu scuro */
  outline-offset: 4px !important;
  border-radius: 4px;  /* leggera arrotondatura */
}


/* Remove hover effect from tab buttons */
.tab-link.btn.btn-primary:hover,
.tab-link.btn.btn-primary:focus,
.tab-link.btn.btn-primary:focus-visible {
  background-color: #00205c !important; /* Keep default color */
  color: #ffffff !important;            /* Keep text white */
  outline: none !important;             /* No focus outline unless accessibility is handled elsewhere */
  box-shadow: none !important;          /* Remove any shadow */
  border: none !important;
           
}

.h3-small {
    font-size: 2rem;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    color: #00205C;
    margin-bottom: 1rem;
}


