/*
Theme Name: CustomAio
*/

/* General */
::-webkit-input-placeholder {
  /* WebKit browsers */
  color  : #000 !important;
  opacity: 0.7;
}

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color  : #000 !important;
  opacity: 0.7;
}

::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color  : #000 !important;
  opacity: 0.7;
}

:-ms-input-placeholder {
  /* Internet Explorer 10+ */
  color  : #000 !important;
  opacity: 0.7;
}

/* Gutenberg */
.gutenberg h3,
.gutenberg h4,
.gutenberg p {
  max-width: 100%;
}

main {
  position  : relative;
  min-height: 100vh;
}

main.gap {
  padding-top   : 40px;
  padding-bottom: 40px;
}

.wrap {
  max-width: 960px;
}

.no-margin {
  margin: 0 !important;
}

.light-shadow {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

.wpcf7-form label {
  font-weight: bold;
}

.wpcf7-form input,
.wpcf7-form select,
.wpcf7-form textarea,
.wpcf7-form input[submit] {
  font-size: 16px;
}

.wpcf7-form input[submit] {
  cursor: pointer !important;
}

.hero {
  position        : relative;
  width           : 100%;
  height          : calc(100vw - 315px);
  background-color: #cddc39;
  border-radius   : 50% 50% 0 50%;
  overflow        : hidden;
  box-shadow      : 0 0 0 160px #f7f7f7;
  transform       : translateY(-120px);

  display       : -ms-flexbox;
  display       : flex;
  -ms-flex-align: center;
  align-items   : center;
}

.hero:after {
  content            : "";
  position           : absolute;
  top                : 0;
  left               : 0;
  width              : 100%;
  height             : 100%;
  background-image   : url(assets/img/hero-a.svg), url(assets/img/hero-red.svg);
  background-position: center left, center left;
  background-size    : cover, cover;
}

.hero-text {
  /* max-width: 700px; */
  max-width: 800px;
  padding  : 1rem;
  margin   : 20px auto;
  font-size: 1.2rem;
  color    : #fff;
  z-index  : 6;
}

.hero-text h1 {
  font-size    : 2.3rem;
  line-height  : 1.1;
  margin-bottom: 20px;
}

.hero-text p {
  margin-bottom: 0.5rem;
  line-height  : 1.2;
}

.hero-text strong {
  display  : block;
  font-size: 1.5rem;
}

a.hero-btn {
  box-shadow    : 0 0 0 2px #fff;
  display       : inline-block;
  border-radius : 10px 0px 10px 0px;
  text-transform: uppercase;
  padding       : 7px 20px;
  margin        : 1rem 1rem 0.5rem 0;
  font-size     : 0.95rem;
  font-weight   : bold;
  color         : #fff;
}

a.hero-btn:hover {
  background-color: #fff;
  color           : #111;
}

a.hero-btn-bold {
  background-color: #fff;
  color           : #111;
}

.hero video {
  position       : absolute;
  top            : 0;
  left           : 0;
  height         : 100%;
  width          : 100%;
  object-fit     : cover;
  object-position: center;
}

/* NASCONDE LA PAGINA AREA RISERVATA */
/* .login {
  display: none !important;
} */

/* PARAGRAFI */
.paragrafi-no-padding {
  padding: 0 !important;
}

/* VIDEO */
.video-container {
  margin-top   : 15px;
  margin-bottom: 25px;
}

.aiovideo {
  aspect-ratio: 16 / 9;
  width       : 100%;
}

/* ICONA CARRELLO WOOCOMMERCE */
.cart-contents {
  position       : relative;
  display        : flex !important;
  flex-flow      : column nowrap;
  justify-content: center;
}

.cart-contents:hover {
  text-decoration: none;
}

.cart-contents:before {
  content            : "";
  background-image   : url("assets/img/icons/cart.svg");
  width              : 65px;
  height             : 50px;
  background-position: center;
  background-size    : cover;
  background-repeat  : no-repeat;
  z-index            : 999;
  position           : inherit;
  margin-top         : 8px;
}

.cart-contents:after {
  content   : "Carrello";
  margin-top: 10px;
}

.cart-contents-count {
  position      : absolute;
  top           : 70px;
  left          : 18px;
  transform     : translateY(-105%) translateX(25%);
  font-family   : Arial, Helvetica, sans-serif;
  font-weight   : normal;
  font-size     : 12px;
  line-height   : 17px;
  height        : 18px;
  width         : 18px;
  vertical-align: middle;
  text-align    : center;
  color         : #fff;
  background    : #000;
  border-radius : 50%;
  padding       : 1px;
  z-index       : 999;
}

@media (max-width: 768px) {
  .hero {
    height       : auto;
    transform    : none;
    border-radius: 0;
  }

  .hero-text {
    padding-top: 80px;
    margin     : 0;
    background : rgb(53 127 117 / 60%);
    background : linear-gradient(120deg,
        rgb(53 127 117 / 80%) 40%,
        rgb(216 74 108 / 50%));
  }

  .hero:after {
    display: none;
  }
}

/* HOME LOGOS */
.col-sponsor img {
  height         : 120px;
  width          : 100%;
  object-fit     : contain;
  object-position: left;
}

/* HOMEPAGE SEZIONE OFFERTE COMMERCIALE */
.titolo-azienda-offerte-dedicate {
  font-size    : 1.5rem !important;
  display      : block !important;
  margin-bottom: 0 !important;
}

.single-offerta {
  margin-bottom: 25px;
}

/* MENU */
.prenota {
  display: none;
}

/* TMP PAGE */
.top-page {
  position        : relative;
  background-color: #e7e7e7;
  min-height      : 180px;
  padding-left    : 300px;
  overflow        : hidden;
  display         : -ms-flexbox;
  display         : flex;
  -ms-flex-align  : center;
  align-items     : center;
}

.top-page-title {
  position                 : absolute;
  font-size                : 120px;
  line-height              : 1;
  bottom                   : -16px;
  color                    : transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #ffffff;
  pointer-events           : none;
}

@media (max-width: 768px) {
  .top-page {
    padding-left: 0;
  }
}


/* PAGINA PROGRAMMA */
#menu-il-programma {
  height          : 80px;
  display         : flex;
  justify-content : center;
  position        : sticky;
  top             : 30px;
  z-index         : 20;
  background-color: #ffffff;
}

.download-programma::before {
  content         : '';
  display         : inline-block;
  background-image: url('./assets/img/icons/download.svg');
  width           : 40px;
  height          : 40px;
  background-size : cover;
  margin-right    : 15px;
  vertical-align  : middle;
}

.title-venerdi-29-novembre::after {
  content      : '4° Congresso AIO Academy';
  display      : block;
  color        : var(--red);
  font-size    : 1.625rem;
  font-weight  : bold;
  margin-bottom: 30px;
}

.title-sabato-30-novembre-mattino::after {
  content      : 'AIO incontra le Università campane al 31° Congresso Nazionale Università Federico II, Università di Salerno e Unicampania';
  display      : block;
  color        : var(--red2);
  font-size    : 1.625rem;
  font-weight  : bold;
  width        : 95%;
  margin-bottom: 30px;
}

.title-sabato-30-novembre-pomeriggio::after {
  content      : '2° AIO Academy Competizione Studenti AISO';
  display      : block;
  color        : var(--red2);
  font-size    : 1.625rem;
  font-weight  : bold;
  width        : 95%;
  margin-bottom: 30px;
}

.title-coffee-break,
.title-coffee-break-2,
.title-coffee-break-3,
.title-lunch,
.title-lunch-2 {
  color : var(--red2);
  margin: 50px 0;
}

/* SWIPER RELATORI */
.swiper-relatori .swiper-slide {
  padding           : 1rem;
  margin-top        : 0.5rem;
  margin-bottom     : 1rem;
  border-radius     : 3px;
  -webkit-box-shadow: 0px 5px 15px 0px rgb(0 0 0 / 10%);
  -moz-box-shadow   : 0px 5px 15px 0px rgba(0, 0, 0, 0.1);
  box-shadow        : 0px 3px 10px 0px rgb(0 0 0 / 10%);
}

.swiper-relatori .swiper-slide img {
  width          : 100px;
  height         : 100px;
  border-radius  : 50%;
  margin-bottom  : 1rem;
  object-fit     : cover;
  object-position: center;
}

.swiper-relatori .swiper-slide .swiper-intro {
  font-size: 0.9em;
  color    : #888;
}

.wrap-relatore {
  max-width: 620px;
}

/* PAGE RELATORI */

.tipologia-relatore {
  position               : relative;
  display                : inline-block;
  font-size              : 2rem;
  margin                 : 2em 0 1em 0;
  line-height            : 1.2;
  font-weight            : 800;
  background             : linear-gradient(to right, #095c55, #387f77);
  color                  : transparent;
  background-clip        : text;
  -webkit-background-clip: text;
}

.tipologia-relatore::after {
  content         : "";
  position        : absolute;
  bottom          : -3px;
  width           : 1.4em;
  height          : 1px;
  left            : -0.3em;
  background-color: #8f8f8f;
}

.col-relatore {
  text-align: center;
  padding   : 1rem;
  font-size : 0.9rem;
  cursor    : pointer;
}

.col-relatore img {
  width                : 260px;
  height               : 260px;
  object-fit           : cover;
  border-radius        : 50%;
  padding              : 10px;
  background-color     : #f7f7f7;
  filter               : grayscale(0.5);
  -webkit-transition   : border-radius 0.4s ease-in-out;
  transition           : border-radius 0.4s ease-in-out;
  -webkit-border-radius: 50%;
  -moz-border-radius   : 50%;
  -ms-border-radius    : 50%;
  -o-border-radius     : 50%;
}

.col-relatore:hover img {
  border-radius: 30%;
}

.relatore-name {
  padding-top: 10px;
}

.relatore-intro {
  font-size: 0.9em;
  color    : #888;
}


/* PAGINA COME ISCRIVERSI */

.login-error-message {
  color      : #a52038;
  font-weight: bold;
  border-top : solid 3px #a52038;
  background : rgba(255, 79, 85, .1) !important;
  max-width  : 924px;
  min-height : 150px;
  display    : flex;
  align-items: center;
  padding    : 30px 20px;
}

.login-error-message h2 {
  font-size: 36px;
}

nav[aria-label="Pagina Come Iscriversi"] {
  position        : sticky;
  top             : 20px;
  background-color: white;
  height          : 80px;
  z-index         : 20;
}

.form-iscrizione-wrap {
  padding         : 2rem 1rem;
  border-radius   : 10px;
  margin-bottom   : 1rem;
  background-color: #f4f4f4;
}

/* MODULO ISCRIZIONE */
#wpcf7-f1768-p295-o1 label {
  font-weight  : bold;
  margin-bottom: 5px;
}

#giornata-29 .wpcf7-list-item,
#giornata-30 .wpcf7-list-item,
#giornate-29-30 .wpcf7-list-item,
#wpcf7-f1768-p295-o1 .accettazione .first,
#wpcf7-f1768-p295-o1 .accettazione .last {
  display     : inline-block !important;
  margin-right: 15px;
}

span[data-name="accettazione"] {
  display: inline-block;
}

.accettazione {
  margin-bottom: 1.5rem;
}

.finalita {
  display    : block;
  font-weight: bold;
  margin-top : 10px;
}

/* PAGINA PRENOTAZIONE ALBERGHIERA */
#btn-prenotazione-alberghiera {
  color                : #ffffff;
  font-weight          : bold;
  background-color     : #de5275;
  border-radius        : 10px 0px 10px 0px;
  text-transform       : uppercase;
  padding              : 10px 20px;
  text-decoration      : none !important;
  -webkit-border-radius: 10px 0px 10px 0px;
  -moz-border-radius   : 10px 0px 10px 0px;
  -ms-border-radius    : 10px 0px 10px 0px;
  -o-border-radius     : 10px 0px 10px 0px;
}

/* PAGINA EVENTI SOCIALI */
/* nav[aria-label="Eventi Sociali"] {
  height         : 80px;
  display        : flex;
  justify-content: center;
  position       : sticky;
  top            : 30px;
  z-index        : 20;
} */

.page-id-350 .wp-container-core-columns-is-layout-1 {
  width    : 100%;
  max-width: 924px;
  position : sticky;
  top      : 20px;
  z-index  : 10;
}

.navigazione-eventi {
  padding      : 1rem !important;
  margin-bottom: 0 !important;
}

.menu-eventi-sociali {
  margin: 0 !important;
}

.menu-eventi-sociali ul li {
  list-style-type: none;
  background     : none;
  margin-bottom  : 0;
}

.menu-eventi-sociali ul li a,
.menu-programma ul li a {
  font-weight          : bold;
  background-color     : #de5275;
  border-radius        : 10px 0px 10px 0px;
  text-transform       : uppercase;
  padding              : 10px 20px;
  text-decoration      : none !important;
  -webkit-border-radius: 10px 0px 10px 0px;
}

.menu-programma {
  margin-top   : 25px;
  margin-bottom: 50px;
}

.menu-programma ul {
  width  : 100%;
  display: flex;
}

.menu-programma ul li {
  margin-right: 10px;
}

.menu-programma ul li a {
  color: #ffffff;
}

.menu-eventi-sociali ul li ul.wp-block-navigation-submenu li a {
  background-color: #ffffff !important;
}

.menu-eventi-sociali .wp-block-navigation__submenu-icon {
  color : #de5275;
  width : 20px;
  height: 20px;
}

.page-id-350 .gutenberg h1,
.page-id-350 .gutenberg h2 {
  display: block;
}

.page-id-350 .gutenberg h2 {
  display      : block;
  margin-top   : 0px;
  margin-bottom: 30px;
}

.page-id-350 .gutenberg h3 {
  margin-bottom: 10px !important;
}

/* Form Prenotazione Visite Guidate */
#wpcf7-f1970-p350-o1 fieldset {
  width : 95%;
  margin: auto;
}

#wpcf7-f1970-p350-o1 legend {
  font-weight: bold;
}

#wpcf7-f1970-p350-o1 input[submit] {
  color: #000;
}

#wpcf7-f1970-p350-o1 .wpcf7-radio .wpcf7-list-item {
  display     : inline-block;
  margin-right: 15px;
}

.cta-tour-wrapper {
  padding      : 1rem 0 !important;
  margin-bottom: 0 !important;
}

.cta-prenota-tour {
  color                : #ffffff !important;
  font-weight          : bold;
  background-color     : #de5275;
  border-radius        : 10px 0px 10px 0px;
  text-transform       : uppercase;
  padding              : 10px 20px;
  text-decoration      : none !important;
  -webkit-border-radius: 10px 0px 10px 0px;
  -moz-border-radius   : 10px 0px 10px 0px;
  -ms-border-radius    : 10px 0px 10px 0px;
  -o-border-radius     : 10px 0px 10px 0px;
}

/* FOOTER */
.footer {
  font-size     : 0.8rem;
  color         : #999;
  margin-left   : 300px;
  padding-top   : 80px;
  padding-bottom: 40px;
}

.footer a {
  color: #999;
}

@media (max-width: 768px) {
  .footer {
    margin-left: 0;
  }
}

/* LG - large Desktop */
@media screen and (min-width: 767px) and (max-width: 1440px) {
  .header-nav {
    overflow-y: auto;
    height    : 60vh;
    width     : 200px;
  }
}

/* LG - small desktop */
@media (max-width: 1199px) {

  /* Pagina Eventi Sociali */
  .page-id-350 .wp-container-core-columns-is-layout-1 {
    position: sticky;
    top     : 50px;
  }

  /* Pagina Programma */
  #menu-il-programma {
    height          : 200px;
    display         : flex;
    justify-content : center;
    position        : sticky;
    top             : 60px;
    background-color: #ffffff;
  }

  .menu-programma ul {
    width         : 100%;
    display       : flex;
    flex-direction: column;
  }

  .menu-programma ul li {
    margin-bottom: 25px;
  }

}

/* MD - tablet landscape */
@media (max-width: 991px) {}

/* SM - tablet portrait */
@media (max-width: 767px) {
  .menu-eventi-sociali li a {
    font-size: 14px;
  }
}

/* XS - smartphone */
@media (max-width: 575px) {}