@media (max-device-width: 1200px) {
  html, body { overflow: hidden; height: 100%; }
  html.noscroll, html.noscroll body { overflow: hidden; }
  .total_container { width: 100%; min-width: 100%; height: 100%; padding: 0px; overflow: hidden; }
  .scroll_container { float: left; width: 100%; height: calc(100% - 58px); margin-top: 0px; overflow-x: hidden; overflow-y: scroll; -webkit-overflow-scrolling: touch; }
  .site_content { margin-top: 0px; min-height: unset; }
  .total_container.iframe .scroll_container { margin-top: 0px; height: 100%; }
  .center_container { float: left; width: calc(100% - 30px); padding: 0px 15px; min-width: calc(100% - 30px); }

  .dinamic_alert { left: 15px !important; margin-left: 0px !important; width: calc(100% - 30px); }
  .dinamic_alert_container { padding: 25px; width: calc(100% - 50px);}
  .resized_popup { padding: 15px; width: calc(100% - 60px); }

  #instant_poll_popup { width: calc(100% - 60px); left: 15px; height: calc(100% - 60px); top: 15px; }
  #instant_poll_popup .content { padding: 0px; width: 100%; }

  .gallery-lightbox-cnt-multimedia a.arrow { width: 24px; height: 24px; margin-top:-12px; }
  .gallery-lightbox-cnt-multimedia a.arrow.prev { left: -40px; }
  .gallery-lightbox-cnt-multimedia a.arrow.next { right: -20px; }
  .gallery-lightbox-cnt-multimedia a.arrow svg { height: 100%; }

  .cookie_popup .center_container { float: left; width: 100% !important; max-width: 100% !important; padding: 0px !important; }
  .cookie_popup .testo { width: 100%; }
  .cookie_popup .align { width: 100%; display: inline-block; }
  .cookie_popup p.link { float: left; width: 100%; margin-top: 15px; }
  .cookie_popup p.link a { width: 100%; padding: 5px 0px; text-align: center; }

  .header { position: static !important; height: 56px !important; }
  .header .head { height: 56px !important; width: 100%; display: inline-block; }
  .header .head a.logo { width: 170px; background-size: auto 42px; }
  .header .head a.external { line-height: 56px; }

  .header .head .logout { height: 56px; }
  .header .head .logout i { height: 56px; line-height: 56px; }

  .header a.hamburgher { float: right; height: 18px; width: 20px; pointer-events: all;position: relative;cursor: pointer; margin-top: 19px; }
  .header a.hamburgher .line { position: absolute; top: 0; bottom: 0; right: 0;
    left: 0; display: block; margin: auto; border-radius: 2px; height: 2px; width: 20px; font-size: 0; line-height: 0; background: #fff; transform-origin: 50% 50%;
    transition-property: transform,opacity,width; transition-duration: .3s; transition-timing-function: ease-in-out; transition-delay: 0ms; }
  .header a.hamburgher .line.top { transform: rotate(0) translateY(-6px); }
  .header a.hamburgher .line.bottom { transform: rotate(0) translateY(6px); }

  .header .social { height: 40px !important; width: calc(100% - 30px); padding: 0px 15px; }
  .header .social #menu_users { margin-right: 0px; margin-top: 0px; }
  .header .social a.user { font-size: 16px !important; position: relative; }
  .header .social a.user font { font-size: 16px !important; line-height: 40px !important; }
  .header .social a.user::after { display: none !important; }
  .header .social a.user i { float: left; font-size: 20px !important; line-height: 40px !important; margin-right: 3px; }
  .header .social a.user i.i-arrow-down4 { margin-right: 0px; font-size: 16px !important; line-height: 44px !important; }
  .header .social #menu_users .submenu { top: 40px; }

  .header.opened a.hamburgher .line.center { width: 0; opacity: 0; }
  .header.opened a.hamburgher .line.top { transform: rotate(45deg); }
  .header.opened a.hamburgher .line.bottom { transform: rotate(-45deg); }

  .dettaglio_evento .block.mappa .center_container h3 { width: calc(100% - 30px); padding: 0px 15px; }
  .dettaglio_evento .block.mappa .center_container div.sep { width: calc(100% - 30px); padding: 0px 15px; }

  /* MENU MOBILE */
  .menu_mobile { background-color: #FFF; position: absolute; height: calc(100% - 56px); width: 100%; padding: 0; margin: 0; margin-top: 56px; right: -100%; display: none; top: 0; z-index: 1010;}
  .menu_mobile .padding { float: left; width: 100%; position: relative; padding: 0px 0px; height: 100%; display: flex; flex-direction: column; }
  .menu_mobile p { float: left; width: 100%; text-align: left; }
  .menu_mobile p a { float: left; width: 100%; text-align: center; color: #FFF; font-size: 20px; text-decoration: none; font-weight: 700; }
  .menu_mobile .menu p.separator { margin-bottom: 0px; margin-top: 15px; text-align: center; }
  .menu_mobile p.separator font { background-color: #fff; margin: 15px auto; height: 1px; width: 80px; display: inline-block; }

  .menu_mobile .first { float: left; background-color: #2b8804; padding: 17px 15px 30px; width: calc(100% - 30px); }
  .menu_mobile .first p { float: left; width: calc(100% - 18px); padding-left: 18px; text-align: left; margin-top: 15px; }
  .menu_mobile .first p a { font-size: 22px; font-weight: 300; text-align: left; line-height: 1.45; letter-spacing: .3px; }

  .menu_mobile .menu { display: flex; position: relative float: left; width: 100%; flex: 1; flex-direction: column; padding: 30px 0px 20px;
    align-items: center; margin-top: 0px; overflow-x: hidden; overflow-y: scroll; -webkit-overflow-scrolling: touch; }
  .menu_mobile .menu p { float: left; width: calc(100% - 47px); padding-left: 32px; padding-right: 15px; padding-top: 25px; }
  .menu_mobile .menu p.products { margin-top: 21px; border-top: 1px solid #d8d8d8; }
  .menu_mobile .menu p:first-child { padding-top: 0px; }
  .menu_mobile .menu p.last { margin-bottom: 0px; }
  .menu_mobile .menu p a { font-size: 16px; position: relative; text-align: left; font-weight: 400; font-style: normal; font-stretch: normal; line-height: 1.44; letter-spacing: .2px; text-transform: uppercase; color: #6f6f6f; width: 100%; }
  .menu_mobile .menu p.sub a:after { content: ""; position: absolute; right: 5px; top: 7px; width: 7px; height: 7px; border: 1px solid;
    border-color: transparent #6f6f6f #6f6f6f transparent; transform: rotate(-45deg); }
  .menu_mobile .footer { float: left; width: calc(100% - 30px); padding: 15px; background: #f8f8f8; border-top: 1px solid #eee; }
  .menu_mobile .languages { float: right; position: relative; width: 100%; height: auto; margin-top: 0px; }
  .menu_mobile .languages a.current { float: right; text-decoration: none; display: inline-block; text-transform: uppercase; color: #6f6f6f; font-size: 12px; line-height: 20px; }
  .menu_mobile .languages a.current i { margin-left: 6px; transition: transform .3s,filter .3s; }

  .menu_mobile .languages .others { display: none; box-shadow: 0 6px 10px 0 rgb(18 62 0 / 60%); position: absolute; right: 0; bottom: calc(100% + 25px); background-color: #fff; }
  .menu_mobile .languages .others.open { display: block; }
  .menu_mobile .languages .others a { color: #fff; text-decoration: none; font-size: 12px; background-color: #2b8804; padding: 10px; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; text-transform: uppercase; line-height: 1;}
  .menu_mobile .languages .others a:last-child::after { content: ""; display: block; position: absolute; right: 5px; width: 0; height: 0; border-style: solid; top: 100%; border-color: #2b8804 transparent transparent; border-width: 8px; }

  .menu_mobile .subpanel { position: absolute; top: 0px; overflow-x: hidden; overflow-y: scroll; -webkit-overflow-scrolling: touch; z-index: 100; right: -100%; width: 100%; display: none; background-color: #FFF; height: calc(100% - 20px); padding-bottom: 20px; z-index: 100; }
  .menu_mobile .subpanel .back { float: left; width: calc(100% - 20px); padding: 16px 10px; border-bottom: 1px solid #e3e3e3; text-transform: uppercase;}
  .menu_mobile .subpanel .back img { float: left; height: 16px; margin-top: 6px; }
  .menu_mobile .subpanel .back span { float: left; font-size: 14px; line-height: 30px; font-weight: 700; color: #2b8804; display: inline-flex; padding-left: 8px;}
  .menu_mobile .subpanel .sublist { float: left; width: 100%; margin-top: 20px; }
  .menu_mobile .subpanel .sublist p { float: left; width: calc(100% - 47px); padding-left: 32px; padding-right: 15px; padding-top: 25px; }
  .menu_mobile .subpanel .sublist p:first-child { padding-top: 0px; }
  .menu_mobile .subpanel .sublist p a { font-size: 16px; position: relative; text-align: left; font-weight: 400; font-style: normal; font-stretch: normal; line-height: 1.44; letter-spacing: .2px; text-transform: uppercase; color: #6f6f6f; width: 100%; }
  .menu_mobile .subpanel .sublist.products { width: calc(100% - 64px); padding-left: 32px; padding-right: 32px;}
  .menu_mobile .subpanel .sublist.products p { width: 100%; padding-left: 0px; padding-right: 0px; }
  .menu_mobile .subpanel .sublist p.product a { width: calc(100% - 25px); text-transform: none; }
  .menu_mobile .subpanel .sublist p.last { margin-top: 25px; border-top: 1px solid #d8d8d8; }
  .menu_mobile .subpanel .sublist p a.download { width: calc(100% - 45px); line-height: 42px; }
  .menu_mobile .subpanel .sublist p .icon { float: right; width: 18px; height: 18px; background-size: 20px 20px; background-color: transparent;
  background-repeat: no-repeat; background-position: 50%; background-image: url(../../img/link-esterno-gray.svg); display: block; }
  .menu_mobile .subpanel .sublist p .icon.arrow { background-image: url(../../img/narrow-right-gray.svg); background-size: 16px 16px; }
  .menu_mobile .subpanel .sublist p img.img_download { width: 41px; height: 42px; }
  /* FINE MENU MOBILE */

  .select select { padding-left: 5px; width: calc(100% - 5px); }
  .login_page { padding: 25px 0px; }
  .login_page.registrazione { background-size: auto 300px; }
  .login_box { margin-left: 0px !important; width: calc(100% - 40px) !important; padding: 20px !important; }
  .login_box .btn_row { width: 100% !important; }
  .login_box .row { width: 100%; }
  .login_page.registrazione .login_box .row .input, .login_page.registrazione .login_box .row .select { width: calc(100% - 2px) !important; }
  .login_page.registrazione .login_box .row .input.radio { width: calc(100% - 32px) !important; }
  .login_page.registrazione .login_box .row .input.radio.column {  width: 100% !important; }

  .subfields#appuntamenti_modulo_1 .full_radio_list_element_text p.subtext,
  .subfields#appuntamenti_modulo_2 .full_radio_list_element_text p.subtext,
  .subfields.moduli_programma_leasure .full_radio_list_element_text p.subtext,
  .subfields#appuntamenti_modulo_acc0_1 .full_radio_list_element_text p.subtext,
  #selezione_programma_acc .full_radio_list_element_text p.subtext { min-height: unset; }

  .login_page.registrazione .login_box .row .select .mobile_row { float: left; width: 100%; display: flex; justify-content: center; align-items: flex-start; }
  .login_page.registrazione .login_box .row .select .mobile_row span.placeholder { padding-left: 5px !important; padding-right: 5px !important; }
  .login_page.registrazione .login_box .row .select .mobile_row:last-child { margin-top: 10px; }
  .login_page.registrazione .login_box .row .select .mobile_row a { flex: 1; }

  .login_box .row .icon { margin-left: 10px; }
  .form_box .row .input.check { float: left; width: 100%; }
  .login_box .btn_row p.link { float: left; width: 100%; margin-top: 10px; margin-left: 0px !important; }
  .login_box .btn_row p.btn { width: 100%; }
  .login_box .btn_row p.btn a { padding: 0px; width: 100%; text-align: center; }

  .footer { padding: 30px 0px; width: 100%; }
  .footer h2 { margin-bottom: 15px; font-size: 18px; }
  .footer .row { flex-direction: column; }
  .footer .row .column { margin-right: 0px; min-width: 100%; max-width: 100%; width: 100%; margin-bottom: 25px; }
  .footer .row .column:last-child { margin-bottom: 0px;}

  .login_box h1 { font-size: 24px; line-height: 30px; }

  .elenco .row { margin-top: 0px; width: 100%; }
  .elenco .element { width: calc(100% - 2px); margin-right: 0px; }
  .elenco .element .info p { height: auto !important; }

  .dettaglio_evento { margin-top: 20px;}
  .dettaglio_evento .btn_evento { width: calc(100% - 30px); padding: 0px 15px; margin-top: 25px; }

  .dettaglio_evento .tabs { margin-bottom: 20px; margin-top: 0px; display: block; border-right: 0px; width: calc(100% + 10px); }
  .dettaglio_evento .tabs a { font-size: 13px; width: calc(50% - 29px); max-width:calc(50% - 29px); padding: 0px 10px;
    border-right: 2px solid var(--primary);  margin-right: 5px; margin-top: 5px;}
  .dettaglio_evento .block.smt { margin-top: 0px !important; }

  .dettaglio_evento .block.sponsor .list .elemento { min-width: 50%; max-width: 50%; }
  .dettaglio_evento .block.sponsor .list .elemento img { max-width: 100%; }

  .dettaglio_evento .moduli { padding: 0px; width: 100%; }
  .dettaglio_evento .moduli .modulo .info { margin-top: 5px; }
  .dettaglio_evento .moduli .modulo .info p.icon { width: calc(100% - 25px); margin-top: 10px; }

  .dettaglio_evento .moduli .modulo .appuntamenti { margin-left: 0px; width: 100%; }
  .dettaglio_evento .moduli .modulo .appuntamento .bullet { align-items: flex-start; margin-top: 5px; }
  .dettaglio_evento .moduli .modulo .appuntamenti .info_appuntamento { flex: 1; margin-left: 10px; }
  .dettaglio_evento .moduli .modulo .appuntamento .info_appuntamento p { width: 100%; min-width: 100%; margin-left: 0px; }
  .dettaglio_evento .moduli .modulo .appuntamento .info_appuntamento .titolo { float: left; width: 100%; margin-top: 10px;  margin-left: 0px; }
  .dettaglio_evento .moduli .modulo .appuntamento .info_appuntamento .titolo p.relatore { margin-left: 0px; margin-top: 5px; }

  .dettaglio_evento .moduli .modulo .relatori_evento .relatori_evento_lista { width: 100%; }
  .dettaglio_evento .moduli .modulo .relatori_evento .relatore { width: 100%; margin-right: 0px; margin-top: 10px; }
  .dettaglio_evento .moduli .modulo .relatori_evento .relatore .image { width: 70px; height: 70px; }
  .dettaglio_evento .moduli .modulo .relatori_evento .relatore .info { margin-left: 10px; width: calc(100% - 80px); display: inline-block; }
  .dettaglio_evento .moduli .modulo .relatori_evento .relatore .info p, .dettaglio_evento .moduli .modulo .relatori_evento .relatore .info p a { font-size: 16px; line-height: 20px; }
  .dettaglio_evento .moduli .modulo .relatori_evento .relatore .info p.ruolo { font-size: 13px; }
  .dettaglio_evento .moduli .modulo .relatori_evento .relatore .info p.desc { font-size: 13px; }

  .dettaglio_evento .btn_evento.left { width: 100%; padding: 0px; }
  .dettaglio_evento .btn_evento.left a { width:calc(100% - 8px); padding: 0px; text-align: center; font-size: 13px; }
  .dettaglio_evento .btn_evento.left a:last-child { margin-left: 4px; }

  .dettaglio_evento .foto_evento { width: calc(100% + 15px); margin-top: 0px; }
  .dettaglio_evento .foto_evento .foto { width:calc(50% - 15px); margin-right: 15px; height: 150px; margin-top: 15px; }

  .dettaglio_evento .foto_evento.full { width: 100%; }
  .dettaglio_evento .foto_evento .foto.video { width: 100%; margin-right: 0px; height: 200px; }

  .header_box.small .image_content { height: 300px !important; }
  .header_box .over_box { top: 50%; }
  .header_box .over_box.full { padding: 0px 20px; width: calc(100% - 40px); left: 0px; }
  .header_box .over_box.evento h1 { font-size: 24px; line-height: 28px; }
  .header_box .over_box.evento h2 { margin-top: 5px; font-size: 16px; line-height: 20px; }
  .header_box .over_box.evento p { margin-top: 20px; font-size: 14px; line-height: 18px; }
  .header_box .over_box p.didascalia.big { font-size: 24px; line-height: 28px; }
}

@media (max-width: 768px) {
  .registration_form_row { flex-direction: column; }
  .registration_form_row.mt-50 { margin-top: 30px !important; }
  .registration_form_row_right, .registration_form_row_left { margin-left: 0px; width: 100%; max-width: 100%; min-width: 100%; }
  .registration_form_row_right.border { margin-top: 10px; }

  .registration_form_row.btn-row { display: block; }
  .registration_form_row.btn-row .registration_form_row_left { float: left; width: 44px; max-width: 44px; min-width: 44px; }
  .registration_form_row.btn-row .registration_form_row_right { float: left; margin-left: 16px; width: calc(100% - 60px);
    max-width: calc(100% - 60px); min-width: calc(100% - 60px);  }

  .login_box .registration_form_row_right .btn_row p.btn a { width: calc(100% - 30px); }
  .login_box .registration_form_row_right .btn_row p.btn a i { float: right; margin: 0px; }

  .field_blocks_column, .full_radio_list { width: 100% !important; }
  .form_box .field_blocks_column .row,
  .form_box .field_blocks_column .row.prefisso_contatto,
  .form_box .field_blocks_column .row.telefono_acc_0,
  .form_box .field_blocks_column .row.numero_contatto,
  .form_box .field_blocks_column .visa_attachment,
  .form_box .field_blocks_column .visa_attachment_plant { margin-right: 0px !important; width: 100% !important; }

  .full_radio_list_element { margin-right: 0px !important; width: 100% !important; margin-bottom: 10px; }
  .full_radio_list_element_checkbox { margin-top: 5px; }

  .scala_taglie_row { flex-direction: column-reverse; max-width: 100%; }
  .scala_taglie_row .tabella_taglia .riga p { font-size: 13px; }
  .scala_taglie_row p.scala_taglie { width: 100%; margin: 0px; text-align: left; }

  .login_page.registrazione .login_box .row .input.radio { flex-wrap: wrap; }
  .login_page.registrazione .login_box .row .input.radio .checkbox { margin-left: 0px; margin-top: 5px; margin-bottom: 10px; }
  .login_page.registrazione .login_box .row .input.radio label { width: calc(100% - 40px); }

  .registrazione_header { flex-direction: column; }
  .registrazione_header_col { min-height: unset; }
  .registrazione_header_col p.bold { margin-left: 0px; font-size: 18px; line-height: 24px; }
  .registrazione_header_col p.big { margin-left: 0px; font-size: 28px; line-height: 30px; }
  .registrazione_header_col.mt { margin-top: 15px; }
  .registrazione_header_col.flex { display: flex; justify-content: center; align-items: center; }
  .registrazione_header_col img { height: 70px; margin-top: 10px; }
  .registrazione_header_col p { flex: 1; margin-left: 0px; }

  .row .subfields { width: 100% !important; }
}

@media (max-device-width: 740px) and (orientation: landscape) {

}
