/*
 * 
 * 
 * 
 */

/* ================================== */
/* BEGIN: Generali */  
/* ================================== */
a {text-decoration: none; }
 
/* Per Chrome, Safari */   
@font-face {
    font-family: 'AT Arges Black Cond';
    src: url('https://bonandini.co.it/fonts/ATArges-BlackCond.woff2') format('woff2'), url('https://bonandini.co.it/fonts/ATArges-BlackCond.woff') format('woff'); 
    font-display: swap;
}

/* BEGIN: Tema */
.w3-theme-l5 {color:#000 !important; background-color:#fef4f2 !important}
.w3-theme-l4 {color:#000 !important; background-color:#fcdad3 !important}
.w3-theme-l3 {color:#000 !important; background-color:#f9b5a7 !important}
.w3-theme-l2 {color:#000 !important; background-color:#f6907b !important}
.w3-theme-l1 {color:#fff !important; background-color:#f36b50 !important}
.w3-theme-d1 {color:#fff !important; background-color:#e83410 !important}
.w3-theme-d2 {color:#fff !important; background-color:#ce2e0e !important}
.w3-theme-d3 {color:#fff !important; background-color:#b4280d !important}
.w3-theme-d4 {color:#fff !important; background-color:#9a230b !important}
.w3-theme-d5 {color:#fff !important; background-color:#811d09 !important}

.w3-theme-light {color:#000 !important; background-color:#fef4f2 !important}
.w3-theme-dark {color:#fff !important; background-color:#811d09 !important}
.w3-theme-action {color:#fff !important; background-color:#811d09 !important}

.w3-theme {color:#fff !important; background-color:#f04521 !important}
.w3-text-theme {color:#f04521 !important}
.w3-border-theme {border-color:#f04521 !important}

.w3-hover-theme:hover {color:#fff !important; background-color:#f04521 !important}
.w3-hover-text-theme:hover {color:#f04521 !important}
.w3-hover-border-theme:hover {border-color:#f04521 !important}   
/* END: Tema */


body,h1,h2,h3,h4,h5 {font-family: "Raleway", sans-serif}
.w3-quarter img{margin-bottom: -6px; cursor: pointer}
.w3-quarter img:hover{opacity: 0.6; transition: 0.3s}
    
}

/* logotipo.php */
 
/* hr per c hiusura pagina */
hr.end5 {
  border: 3px solid black;
  border-radius: 3px;
}

/* footer.php */
.TestoFooter {
    font-family: "Goldman", sans-serif;
    /*
    font-size: 3vw;
    line-height: 70%;
    */
} 

div.a {
  line-height: normal;
}

div.b {
  line-height: 1.6;
}

div.c {
  line-height: 80%;
}

div.d {
  line-height: 200%;
}

span.pippo{
  font-family: "AT Arges Black Cond", serif;
  font-size: clamp(34px, 4.8vw, 86px);
  line-height: 1.05;
}

span.servizi{
  font-family: "AT Arges Black Cond", serif;
  font-size: clamp(30px, 4.2vw, 78px);
  line-height: 1.10;
} 
    
/* Se ti serve davvero testo corpo servizi come span */
span.servizi_corpo,
span.servizi_corpo_elenco{
  font-family: Arial, sans-serif;
  font-size: clamp(16px, 1.35vw, 20px);
  line-height: 1.5;
}
    
.lineH95 {
    line-height: 95%;
}
    
    
.lineH120 {
    line-height: 120%;
}

span.logo1{
  font-family: "Goldman", sans-serif;
  font-size: clamp(18px, 2.2vw, 28px);
  line-height: 0.9;
} 
   
/* ================================== */
/* END: Generali */  
/* ================================== */


/* ================================== */
/* BEGIN: Per i testi grandi in home, servizi, */  
/* ================================== */
.ChiSiamo {
    font-family: "AT Arges Black Cond", serif;
    font-size: 8vw;
    line-height: 100%;
}
/* ================================== */
/* END: Per i testi grandi in home, servizi, */  
/* ================================== */


/* ============================================== */
/* BEGIN: Media Query */
/* ============================================== */

/* Extra small devices (phones, 600px and down) */
@media screen and (max-width: 481px) {
  /* Sposta sotto il tasto Menu */
  .MqPaddTop {
    padding-top: 23px;
  }
  .ChiSiamo {
    font-size: 9vw;
    line-height: 100%;
}
    .logo1 {
    font-size: 23px;
    line-height: 55%;
}  
}

@media screen and (max-width: 550px) { 
    
  /* Sposta una riga sotto il tasto Menu */
  .MqPaddTop {
    padding-top: 23px;
  }
  .ChiSiamo {
    font-size: 9vw;
    line-height: 100%;
}
   .logo1 {
    font-size: 23px;
    line-height: 55%;
}  
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
  .example {background: red;}
  .sottotitolo{
    display: none;
   }
  .ChiSiamo {
    font-size: 9vw;
    line-height: 100%;
  }
  }


/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {
  .example {background: green;}
}

/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {
  .example {background: blue;}
} 

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
  .example {background: orange;}
} 

/* BEGIN: Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {
  .example {background: pink;}
  .html, body {line-height: 1,5;}
  .joinBtn {
      word-spacing : normal;
      letter-spacing : normal;
      color: #fff;
      cursor: pointer;
      /*font-size: 2em; 2vw;*/
      font-size: 2em;
      transition: 1s;
    }
/* END: Extra large devices (large laptops and desktops, 1200px and up) */
}

/* ============================================== */
/* END: Media Query */
/* ============================================== */

/* ================================== */
/* BEGIN: Per le Voci del Menù in testata*/  
/* ================================== */
.joinBtn {

/*  width: 10em;
  height: 5ex;
  background-color: gold;
  border: 2px solid firebrick;
  border-radius: 10px;
*/
  font-family: "AT Arges Black Cond", serif;
  /* font-weight: bold; */
  word-spacing : normal;
  letter-spacing : normal;
  color: #fff;
  cursor: pointer;
  /*font-size: 2em; 2vw;*/
  font-size: 2em;
  transition: 1s;
    line-height: 95%;
}

.joinBtn:hover {
/*
  background-color: bisque;
*/
  font-size: 3em;
  letter-spacing: 5px;
    line-height: 95%;
}   
/* ================================== */
/* END: Per le Voci del Menù in testata*/  
/* ================================== */


/* ========================================== */
/* BEGIN: Per le Voci della pagina dei servizi*/  
/* ========================================== */
.joinBtn1 {
  font-family: "AT Arges Black Condensed", serif;
  word-spacing : normal;
  letter-spacing : normal;
  color: #fff;
  cursor: pointer;
  font-size: 4vw;
  transition: 1s;
  line-height: 100%;
}

.joinBtn1:hover {
  font-size: 5vw;
  letter-spacing: 5px;
} 
 
 
.joinBtn2 {
  font-family: "AT Arges Black Condensed", serif;
  word-spacing : normal;
  letter-spacing : normal;
  color: #fff;
  cursor: pointer;
  font-size: 3vw;
  transition: 1s;
  line-height: 120%;
}

.joinBtn2:hover {
  font-size: 5vw;
  letter-spacing: 5px;
} 
  

.joinBtn3 {
  font-family: "AT Arges Black Condensed", serif;
  word-spacing : normal;
  letter-spacing : normal;
  color: #fff;
  cursor: pointer;
  font-size: 4vw;
  transition: 1s;
  line-height: 100%;
}

.joinBtn3:hover {
  font-size: 5vw;
  letter-spacing: 5px;
} 
  
.joinBtn4 {
  font-family: "AT Arges Black Condensed", serif;
  word-spacing : normal;
  letter-spacing : normal;
  color: #fff;
  cursor: pointer;
  font-size: 7vw;
  transition: 1s;
}

.joinBtn4:hover {
  font-size: 7vw;
  letter-spacing: 5px;
} 
    
 
.joinBtn5 {
  font-family: "AT Arges Black Condensed", serif;
  word-spacing : normal;
  letter-spacing : normal;
  color: #fff;
  cursor: pointer;
  font-size: 7vw;
  transition: 1s;
}

.joinBtn5:hover {
  font-size: 7vw;
  letter-spacing: 5px;
} 
  
 
.joinBtn6 {
  font-family: "AT Arges Black Condensed", serif;
  word-spacing : normal;
  letter-spacing : normal;
  color: #fff;
  cursor: pointer;
  font-size: 7vw;
  transition: 1s;
}

.joinBtn6:hover {
  font-size: 7vw;
  letter-spacing: 5px;
} 
  


.joinBtn7 {
  font-family: "AT Arges Black Condensed", serif;
  word-spacing : normal;
  letter-spacing : normal;
  color: #fff;
  cursor: pointer;
  font-size: 7vw;
  transition: 1s;
}

.joinBtn7:hover {
  font-size: 7vw;
  letter-spacing: 5px;
} 
  
 
.joinBtn8 {
  font-family: "AT Arges Black Condensed", serif;
  word-spacing : normal;
  letter-spacing : normal;
  color: #fff;
  cursor: pointer;
  font-size: 7vw;
  transition: 1s;
}

.joinBtn8:hover {
  font-size: 7vw;
  letter-spacing: 5px;
} 
/* ========================================== */
/* END: Per le Voci della pagina dei servizi*/  
/* ========================================== */



/* ================================== */
/* BEGIN: Per il bottone Menù in testata*/ 
/* ================================== */
.joinMenu {
  cursor: pointer;
  transition: 1s;
}

.joinMenu:hover {
  font-size: 2vw;
  letter-spacing: 5px;
} 
/* ================================== */
/* END: Per il bottone Menù in testata*/ 
/* ================================== */
    
/* ============================================== */
/* BEGIN: Testo verticale  */
/* ============================================== */
/* Aggiungo altezza per testare lo scroll */
/*
    body {
        height: 200vh; 
        background-color: #f0f0f0;
        }
*/
        .testo-verticale {
            writing-mode: vertical-rl; /* Testo in verticale da destra a sinistra */
            text-orientation: mixed; /* Mantiene il testo leggibile */
            position: fixed; /* Mantiene la posizione durante lo scroll */
            right: 20px; /* Margine dal bordo destro */
            top: 50%;
            transform: translateY(-50%);
            font-size: 20px;
            font-weight: bold;
            
            /* ============================== */
            /* Sfondo leggermente trasparente */
            /* ============================== */
            /*
            background-color: rgba(255, 255, 255, 0.7); 
            padding: 10px;
            border-radius: 5px;
            */
        }

/* Adattamento per schermi piccoli */
        @media (max-width: 768px) {
            .testo-verticale {
                font-size: 16px; /* Riduce la dimensione del testo */
                right: 5px;
                padding: 5px;
            }
            body {
                padding-right: 40px; /* Adatta lo spazio per il testo */
            }
        }

        @media (max-width: 480px) {
            .testo-verticale {
                display: none; /* Nasconde il testo su schermi molto piccoli */
            }
        }
/* ============================================== */
/* END: Testo verticale  */
/* ============================================== */



/* ============================================== */
/* BEGIN: Animazione testi  */
/* ============================================== */
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  }
  @-webkit-keyframes fadeInDown {
  0% {
  opacity: 0;
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
  }
  100% {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
  }
  }
  @keyframes fadeInDown {
  0% {
  opacity: 0;
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
  }
  100% {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
  }
  }     
    
   
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  }
  @-webkit-keyframes fadeInLeft {
  0% {
  opacity: 0;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  }
  100% {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
  }
  }
  @keyframes fadeInLeft {
  0% {
  opacity: 0;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  }
  100% {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
  }
  } 
   
    
  .fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  }
  @-webkit-keyframes fadeInRight {
  0% {
  opacity: 0;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  }
  100% {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
  }
  }
  @keyframes fadeInRight {
  0% {
  opacity: 0;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  }
  100% {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
  }
  } 
    
    
  .fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  }
  @-webkit-keyframes fadeInUp {
  0% {
  opacity: 0;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
  }
  100% {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
  }
  }
  @keyframes fadeInUp {
  0% {
  opacity: 0;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
  }
  100% {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
  }
  } 

/* ============================================== */
/* END: Animazione testi  */
/* ============================================== */    

/* ==========================================
   Fix immagini nelle pagine Servizi
   Evita sovrapposizione con testo verticale
========================================== */

/* Colonne immagini */
.ServizioImmagine,
.w3-col.m6 img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Spazio di sicurezza a destra per il testo verticale */
@media (min-width: 992px) {
  .content {
    padding-right: 90px;
  }
}

/* Forza coerenza titoli e testi nelle pagine servizi (override di eventuali CSS esterni) */
span.TitoloServizio{
  font-family: "AT Arges Black Cond", serif !important;
  font-size: clamp(32px, 5.2vw, 92px) !important;
  line-height: 1.02 !important;
}

p.TestoServizio{
  font-family: "Raleway", sans-serif !important;
  font-size: clamp(16px, 1.35vw, 20px) !important;
  line-height: 1.5 !important;
}

/* ============================ */
span.TitoloServizio{
  font-family: "AT Arges Black Cond", serif !important;
  font-size: clamp(32px, 5.2vw, 92px) !important;
  line-height: 1.02 !important;
  letter-spacing: 0.15px !important;
}

p.TestoServizio{
  font-family: "Raleway", sans-serif !important;
  font-size: clamp(16px, 1.35vw, 20px) !important;
  line-height: 1.5 !important;
}


/* ==========================================
   Animazione morbida (servizi.php)
   ========================================== */

.fadeSoftUp{
  opacity: 0;
  transform: translate3d(0, 18px, 0);
  animation: fadeSoftUp 1100ms cubic-bezier(.16, 1, .3, 1) both;
  will-change: transform, opacity;
}

/* Movimento “morbido” + micro assestamento finale */
@keyframes fadeSoftUp{
  0%{
    opacity: 0;
    transform: translate3d(0, 14px, 0);
  }
  60%{
    opacity: 1;
    transform: translate3d(0, -2px, 0);
  }
  100%{
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* Accessibilità */
@media (prefers-reduced-motion: reduce){
  .fadeSoftUp{
    animation: none;
    opacity: 1;
    transform: none;
  }
}




/* (opzionale) hover più morbido sulle righe servizi */
.servizio-link .fadeSoftUp{
  transition: letter-spacing 260ms cubic-bezier(.2,.8,.2,1),
              filter 260ms cubic-bezier(.2,.8,.2,1);
}

.servizio-link:hover .fadeSoftUp{
  letter-spacing: 1.2px;
  filter: brightness(0.9);
}

/* =========================
   LOGOTIPO BONANDINI & CO.
   ========================= */

.logo-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

/* blocco testo */
.logo-text {
  font-family: "Goldman", sans-serif;
  line-height: 1.05;
}

/* BONANDINI & CO. */
.logo-main {
  font-size: 33px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-align: left;
}

/* righe secondarie CENTRATE */
.logo-sub,
.logo-sub2,
.logo-collab {
  text-align: center;
  width: 100%;
}

/* AVVOCATI | COMMERCIALISTI */
.logo-sub {
  font-size: 16px;
  font-weight: 600;
}

/* PROFESSIONISTI D’IMPRESA */
.logo-sub2 {
  font-size: 15px;
  font-weight: 400;
}

/* collaborazione */
.logo-collab {
  margin-top: 4px;
  font-size: 11px;
  font-weight: 400;
}

.logo-collab span {
  font-size: 19px;
  font-weight: 700;
}

/* pulsante menu */
.logo-menu {
  cursor: pointer;
  font-family: "AT Arges Black Condensed", serif;
}

/* ===========================
   LOGO: stile blindato
   =========================== */
.site-logo {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
}

.site-logo a {
  text-decoration: none;
  color: inherit;
}

.site-logo .logo-block {
  text-align: center;
  line-height: 1;
}

.site-logo .logo-main {
  font-family: "Goldman", sans-serif;
  font-size: 33px;
  line-height: 0.9;
  font-weight: 700;
  display: block;
  white-space: nowrap;
}

.site-logo .logo-sub {
  font-family: "Goldman", sans-serif;
  font-size: 16px;
  line-height: 1.1;
  font-weight: 700;
  display: block;
  text-align: center; /* richiesto */
}

.site-logo .logo-sub2 {
  font-family: "Goldman", sans-serif;
  font-size: 15px;
  line-height: 1.1;
  display: block;
  text-align: center; /* richiesto */
}

.site-logo .logo-collab {
  font-family: "Goldman", sans-serif;
  font-size: 11px;
  line-height: 1.1;
  display: inline-block;
  text-align: center; /* richiesto */
}

.site-logo .logo-audirevi {
  font-family: "Goldman", sans-serif;
  font-size: 19px;
  line-height: 1.1;
  font-weight: 700;
  display: inline-block;
  text-align: center; /* richiesto */
}

/* ==============================================
   Didascalie (stampa / galleria)
   ============================================== */

.didascalia {
    display: block;
    font-family: "Raleway", sans-serif;
    font-size: 14px;
    line-height: 1.4;
    color: #000;
}

.didascalia b {
    font-weight: 600;
}

.didascalia i,
.didascalia span {
    font-style: italic;
}

/* Spazio di respiro sotto le card */
.gallery .didascalia {
    margin-bottom: 20px;
}

/* SimpleLightbox overlay più leggero */
.sl-overlay {
  background: rgba(0,0,0,0.55) !important;
}
