* {
  font-family: 'Roboto', sans-serif !important;
}

h1 {
  text-transform: uppercase;
}

* p {
  font-size: 14px !important;
  line-height: 24px !important;
}

#corsiContainer {
  position: relative;
  float: left;
  width: 100%;
}

.event .date {
  text-align: center;
}

/* iCAGENDA */
#icagenda p {
  text-align: left;
}

.ic-cat {
  display: none;
}

.ic-content h2 a {
  font-size: .8em !important;
  line-height: 1em !important;
}

.ic-info {
  padding: 1% 5% 5% 5%;
  border-radius: 30px;
  overflow: hidden;
}

.ic-details-cat {
  display: none;
}

.moduletable.eventi {
  padding: 0px 20px;
}

#icagenda_calendar th {
  background-color: #c0c0c0;
}

/* ACY MAILING */
#ttr_footer .acym_module * {
  text-align: center;
  width: 100%;
}

#ttr_footer .acym_module label,
#ttr_footer .acym_module input {
  width: auto;
}

#ttr_footer .acym_module input {
  color: #000 !important;
}

#ttr_footer .acym_module .acysubbuttons input {
  color: #FFF !important;
}

#ttr_footer .acym__modal .acym__modal__content {
  width: 80% !important;
}

#ttr_footer .acym__modal .acym__modal__close,
#ttr_footer .acym__modal .acym__modal__close span {
  color: #000 !important;
  text-align: right !important;
  width: auto;
  float: right;
}

#newsletterContainer .acym_introtext {
  font-size: 2em;
  text-transform: uppercase;
  margin: 2% 0px 2.5% 0px;
}

#newsletterContainer table {
  width: 100%;
  border: 0px;
  color: #FFF;
}

#newsletterContainer table td {
    border: 0px;
}

#newsletterContainer table td.acyterms,
#newsletterContainer .acyterms {
  color: #FFF;
}

#newsletterContainer table a,
#newsletterContainer a {
  color: #FFF;
  text-decoration: underline;
}

#newsletterContainer .acysubbuttons .btn {
  border-radius: 30px;
}

#newsletterContainer table .ttr_checkbox label,
#newsletterContainer .ttr_checkbox label{
  background: #FFF !important;
}

#newsletterContainer .acysubbuttons .subbutton {
  background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
}

#newsletterContainer .acysubbuttons .unsubbutton {
  color: #000;
}

/* VISFORMS */
.testo_contatti {
    position: relative;
    float: left;
    width: 45%;
    margin-right: 5%;
}

.testo_contatti p {
  text-align: left;
}

#ttr_content .testo_contatti p a {
  color: #FFF !important;
}

.mappa {
    position: relative;
    float: left;
    width: 100%;
    margin-top: 5%;
}

.visform {
    position: relative;
    float: left;
    width: 50%;
}

.visform div {
  margin-left: 0px !important;
  flex: 100%;
  max-width: 100%;
}

.visform .col-auto {
  flex: 0;
}

.visform .required:not([id^=jform]):first-child:after,
.visform label {
  display: none;
}

.visform input {
  max-width: 100% !important;
  width: 100% !important;
}

#captchacode1 {
  width: 50%;
}

.captcharefresh1 {
  width: 20px;
}

/* CONTATTI */
        
.phone-link {
    display: inline-block;
    color: #007AFF;
    text-decoration: none;
    font-weight: 500;
    padding: 8px 12px;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.phone-link:hover {
    background-color: #f0f8ff;
    text-decoration: underline;
}

.phone-button {
    display: inline-block;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #FFF !important;
    text-decoration: none;
    padding: 12px 24px;
    border-radius: 25px;
    font-weight: 600;
    margin: 10px 5px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
}

.phone-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(102, 126, 234, 0.4);
    color: white;
    text-decoration: none;
}

.whatsapp-button {
    background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
    box-shadow: 0 4px 15px rgba(37, 211, 102, 0.3);
}

.whatsapp-button:hover {
    box-shadow: 0 8px 25px rgba(37, 211, 102, 0.4);
}
/* ---------------------------------- */

@media (max-width: 767px) {
  #ttr_menu .ttr_menu_logo {
    width: 50%;
  }

  #nav-expander {
    cursor: pointer;
  }

  #ttr_menu nav .icon-bar,
  #ttr_menu nav #nav-expander:hover .icon-bar {
    border-color: #FFF;
  }

  .nav.ttr_menu_items li.active:hover a.ttr_menu_items_parent_link_active,
  .ttr_menu_items li .ttr_menu_items_parent_link,
  .nav.ttr_menu_items li:hover a.ttr_menu_items_parent_link_arrow,     .nav.ttr_menu_items li:hover span.separator.ttr_menu_items_parent_link_arrow,
  .nav.ttr_menu_items li a.ttr_menu_items_parent_link_active,
  .ttr_menu_items li:hover a.ttr_menu_items_parent_link,   .nav.ttr_menu_items li:hover span.separator,
  ul.nav.ttr_menu_items li a.ttr_menu_items_parent_link_arrow,
  .nav.ttr_menu_items li.active:hover a.ttr_menu_items_parent_link_active_arrow,
  .nav.ttr_menu_items li a.ttr_menu_items_parent_link_active_arrow {
    color: #000;
    cursor: pointer;
  }

  h1 {
    text-align: center;
  }

  .contentslidwshow,
  .slideshowck {
    height: 80vh !important;
  }

  .contentslidwshow video {
    width: 300% !important;
    margin-left: -350px !important;
  }

  .visform,
  .testo_contatti {
      width: 100%;
      margin: 0px;
  }

  #ttr_footer * {
    text-align: center;
    width: 100%;
  }

  .cell1, .cell2, .cell3, .cell4 {
    padding: 0px !important;
  }

  .ic-box-date {
    position: relative;
    float: left;
    width: 20%;
    margin: 10px 38%;
  }

  .ic-content,
  .ic-content h2 {
    text-align: center;
  }

  #newsletterContainer {
    padding: 15% 5%;
  }

  #corsiContainer h1 {
    font-size: 26px !important;
  }

  #corsiContainer h2 {
    font-size: 22px !important;
  }

  #corsiContainer h3 {
    font-size: 18px !important;
  }

}