/* STANDARD */
body {
    width: 100%;
    height: 100%;
    font-family: 'Rubik', sans-serif,Arial, helvetica, Tahoma, sans, Verdana;
    font-size: 14px;
    color:#404040;
}
h1,h2,h3,h4,h5,h6 {width: 100% !important;}
nav {position: relative;width:100%;margin:0 auto;}
.hidden{
    opacity: 0;
}
.d_none {
    display: none;
}
.d_inline {
    display: inline;
}
.visible{
    opacity: 1;
}

.chiudi {
    clear: both;
    height: 0px;
}

.sizing {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
input.invalid {color:#ff0000;border:1px solid #ff0000 !important;}
#template_tek-error,#template_pdf-error {color:#ff0000;z-index: 99999;background-color: #ffffff;margin:0;}
label.invalid {display: none !important;margin:0 !important;}
#slides {position: relative;width: 100%;height: 100%;z-index: 99;}
.slide_img {
    position: absolute;
    top: 0;
    left:0;
    width: 100%;
    height: 100%;
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
}
a {
    text-decoration: none;
    transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
a:hover {text-decoration: none !important;}
.color_green {
    color: #8dc643;
}
.color_blue {
    color: #005eb8 !important;
}
.color_grey {
    color:#808080;
}
.color_black {
    color: #000000;
}
.color_red {color: #ff0000;}
.color_yellow {color:#ffab00 !important;}
.color_white {
    color: #ffffff !important;
}
.color_dark {
    color: #4a4a4c !important;
}
.margin0 {margin:0;}
.m_bottom_10 {
    margin-bottom: 10px !important;
}
.m_bottom_20 {
    margin-bottom: 20px !important;
}
.m_bottom_50 {
    margin-bottom: 50px !important;
}
.m_bottom_100 {
    margin-bottom: 100px !important;
}
.m_top_20 {
    margin-top: 20px !important;
}
.m_top_10 {
    margin-top: 10px !important;
}
.m_top_100 {
    margin-top: 100px !important;
}
.m_top_50 {
    margin-top: 50px !important;
}
.m_right_0 {
    margin-right: 0 !important;
}
.m_right_10 {
    margin-right: 10px !important;
}
.m_right_20 {
    margin-right: 20px !important;
}
.m_left_20 {
    margin-left: 20px !important;
}
.m_auto {
    margin-left: auto !important;
    margin-right: auto !important;
}
.border-silver {
    border: 1px solid silver !important;
}
.border-silver-right {
    border-right: 1px solid silver !important;
}
.padding0 {
    padding: 0px !important;
}
.padding_10 {
    padding: 10px !important;
}
.padding_20 {
    padding: 20px !important;
}
.w_100 {
    width: 100px !important;
}
.w_200 {
    width: 200px !important;
}
.w_60_perc {
    width: 60% !important;
}
.f_size_1 {
    font-size: 1em !important;
}
.f_size_1_2 {
    font-size: 1.2em !important;
}
.f_size_1_3 {
    font-size: 1.3em !important;
}
.f_size_1_5 {
    font-size: 1.5em !important;
}
.f_size_2 {
    font-size: 2em !important;
}
.f_size_3 {
    font-size: 3em !important;
}
.f_size_3_5 {
    font-size: 3.5em !important;
}
.f_size_4 {
    font-size: 4em !important;
}
.f_size_08 {
    font-size: .8em !important;
}
.f_size_06 {
    font-size: .6em !important;
}
.f_size_04 {
    font-size: .4em !important;
}
.f_weight_200 {font-weight: 200;}
.f_weight_300 {font-weight: 300;}
.f_weight_400 {font-weight: 400;}
.f_weight_600 {font-weight: 600;}
.f_weight_700 {font-weight: 700;}
.f_weight_800 {font-weight: 800;}
.border_0 {
    border: 0 !important;
}
.height_320 {
    height: 320px !important;
}
.bg_color_red {
    background-color: #8e0f38;
}
.bg_color_dark {
    background-color: #202020 !important;
}
.bg_color_grey {
    background-color: #E8E8E8 !important;
}
.bg_color_grey_navbar {
    background-color: #e9ecef !important;
}
.bg_color_white {
    background-color: #ffffff !important;
}
.bg_color_green {
    background-color: #014f25;
}
.bg_color_home {
    background-color: #f6f9fc;
}
.h_500 {
    height: 500px !important;
}
.line-height-150 {
    line-height: 150%;
}
.line-height-170 {
    line-height: 170%;
}
.line-height-200 {
    line-height: 200%;
}
.align_justify {
    text-align: justify;
}
.align_left {
    text-align: left;
}
.align_right {
    text-align: right;
}
.flex-row-around {
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    -webkit-justify-content: space-around;
}
.flex-row-center {
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    -webkit-justify-content: center;
}
.flex-vertical-center {
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: center;
}

.float_lft {
    float: left;
}

.float_rgt {
    float:right;
}
.titolo {font-weight: 600;}
.tit3 {font-size: 2em;font-weight: 600;}
.tit-h2 {font-family: Lato, 'Open Sans', sans-serif,Arial, helvetica, Tahoma, sans, Verdana;}
.txt-editor {padding-left: 15px;padding-right: 15px;}
.txt-editor p {width: 100%;}
.txt-editor img {max-width: 100%;}
.txt-editor ul li {list-style: disc;margin-left: 20px;}
.txt-editor ol li {list-style: decimal;margin-left: 40px;}
.txt-editor a.button-blue {width: 80% !important;}
.oscura {display: none;position: fixed;top:80px;left:0;width: 100%;height: 100%;background-color: rgba(128,128,128,.8);}
.oscura-news {position: absolute;top:0px;left:0;width: 100%;height: 100%;background-color: rgba(0,0,0,.5);}
/* END STANDARD */
.top {position: fixed;top:0;width:100%;height: auto;background-color: #005eb8;color:#ffffff;z-index: 999999;}
.logo {position: relative;width:auto;float: left;height: auto;}
.logo img {height: 70px;margin:10px 0;}
.txt-logo {height: 100%;line-height: 100px;font-size: 4em;color:#005eb8;margin-left: 20px;float:left;}
.menu {position: absolute;top:80px;right:0;width: 90%;padding: 10px;display: none;background-color: #ffffff;}
.menu a:hover { color: #ffffff; }
.banner {position: relative;width: 100%;padding:0 0 50px 0;background-color: #0d1b4a;margin: 90px 0 0 0;}
.bkg-banner {position: absolute;top:0;right:0;z-index: 999;max-width: 100%;}
.box-news-home {position: relative;width:100%;padding: 20px;background-color: #f6f9fc;text-align: left;margin: 10px 0 0 0; min-height: 370px;height: 100%;}
.box-news-home h2 {font-size:1.2em;margin:10px 0;}
.box-news-home time {margin: 5px 0;color:#000000;}
.box-news-home img {max-width: 100%;margin-bottom: 20px;}
.bottom {position: relative;width: 100%;line-height: 100%;}
.footer {background-color: #262842;color:#ffffff;height: auto;line-height: 40px;}
.pre-footer {background-color: #005eb8;color:#ffffff;padding: 20px 0;}
.logo-footer {height: 100px;}
.cnt-pages {padding-top: 0px;}
.txt-home {width: 90%;margin-left: auto;margin-right: auto;}
.box-partner-home {position: relative;width:275px;height: 200px;padding: 10px;background-color: #ffffff;text-align: center;margin: 20px 0;}
.box-partner-home h2 {font-size: 1.4em;margin:10px 0;}
.box-partner-home h2 a {color:#00378B;}
.box-partner-home img {height: 70px;}
.cnt-box-partners {position: relative;width: 100%;margin:0 auto;}
.menu-mob {position: relative;float: right;}
.nav-item {width:100%;font-size: 1.5em;margin: 10px 0;}
.nav-item a:hover, .nav-item a.active {color:#ffde17 !important;}
.bottom-1, .bottom-2 {position: relative;float:left;}
.bottom-2 {width:auto !important;}

.newscorr {
    padding-left: 0; padding-left: 50px;
    display: block !important;
}

.newscorrdett {
    margin-bottom: 20px;
    border-bottom: 1px solid #cccccc;
}

.contentfile {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 30px;
}

.contentfile a {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    /*font-size: 1em;*/
    padding: 20px 0px;
    border-bottom: 1px solid #cccccc !important;
}

.titfile {
    position: relative;
    float: left;
    width: 70%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

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

.filesize {
    position: relative;
    float: right;
    width: 20%;
    text-align: right;
}

.imgelencoprog {
    position: relative;
    width: 100%;
    margin-right: 0px;
    height: 200px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.img-box {position: relative;width:100%;height: 240px;background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;}
.titelencoprod {
    position: relative;
    width: 100%; 
}

.titelencoprod2 {
    position: relative;
    width: 100%;
    font-size: 2em;
    text-align: center;
    margin:20px 0 0 0;
}
.sottotit {position: relative;width: 100%;color:#ff0000;font-size:1.3em;text-align: center;}
.imghomeleft {
    position: relative;
    width: 100%;
    height: auto;
    float: left;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    text-align: center;
}

.imghomeleft img {
    max-width: 100%;
}

.txthomeright {
    position: relative;
    width: 100%;
    height: auto;
    float: right;
    padding-top: 30px;
}
/* menu comparsa */

.menu_comparsa li {
    margin-left: 0px;
    font-size: 0.9em;
    padding: 5px 0px;
}

.menu_comparsa {
    width: 100%;
    padding: 20px;
    height: auto;
    min-height: 100%;
    right: 100%;
    position: absolute;
    z-index: 9999999;
    background-color: #ffffff;
    top: 0;
    text-align: left;
}


.menu_comparsa li {
    display: block;
    padding: 5px 0px;
}

.menu_comparsa li ul {
    margin-left: 30px;
}

.menu_comparsa a {
    color: #000000;
    line-height: 0px;
    width: auto;
    height: auto;
    font-size: 1.5em;
}



.menu_comparsa a:hover {
    color: #0056b3 !important;
}
.box-sponsor img {height: 70px;}
.box-list-news {position: relative;width: 100%;height: 800px;margin: 0 20px 20px 0;float:left;background-color: #ffffff;padding: 20px;border-radius: 5px;}
.img-news, .txt-news {position: relative;width: 100%;}
.img-news img {max-width: 100%;}
.txt-news {padding: 0 0 0 10px;}
.txt-news h2 {font-size: 2em;}
.txt-news p {width: 100%;}
.img-dett-news {margin: 0 10px 0px 0;float: left;max-width: 100%;}
.row-news {position: relative;width:100%;margin: 10px 0 0px;padding-bottom: 50px;}
.row-news h4 {font-size: 2em;font-weight: 200;text-transform: uppercase;padding: 0 0 20px 0;border-bottom: 1px solid #4d4d4d;color:#4d4d4d;}
.row-news .box-home {position: relative;width:100%;margin: 10px 0 0 0;}
.row-news .box-home img {max-width: 100%;}
.row-news .box-home h5 {position: absolute;top:43%;left:30px;color:#ffffff;font-size: 3em;font-weight: 400;text-transform: uppercase;}
.row-news .box-home h5:hover {color:#ffab00;}
.row-news .box-home span {position: absolute;top:39%;left:30px;color:#ffffff;width: 100px;height: 3px;background-color: #ffffff;}
.cnt-lang {position: absolute;width:auto;top:10px;right: 15%;}
.cnt-lang ul li {float:left;padding: 0 10px;}
.cnt-lang ul li:first-child {}
.cnt-twitter {position: relative;width:100%;max-height: 100%;overflow-y: auto;border:2px solid #262842;float: right;margin: 0 0 100px 0;}
.box-consiglio {position: relative;width:100%;}
.box-dett {position: relative;width:100%;float:left;}
.box-dett h2 {font-size: 1.3em;font-weight: 600;}
.tit-email {position: relative;;width:100%;margin:0;font-size: 1.2em;color:#a6a9ac;}
.tit-email a {color:#a6a9ac;}
.cnt-gallery {position: relative;margin:50px 0;}
.cnt-gallery img {float: left;max-height: 250px;margin: 10px;}
.wrapper-news {width:100%;height: auto;float:left;position: relative;}
.btn-cerca {background-color: transparent;color:#ffffff;}
.banner-pages {height: auto !important;margin: 150px 0 0 0 !important;}
.banner-pages img {max-width: 100%;}
.jcarousel li {float:left;}
.tit-home {position: relative;width: 100%;font-size: 2em;font-weight: 600;margin: 0 0 20px 0;color:#ffffff;}
.txt-banner {padding: 20px;}
.txt-banner p {position: relative;width: 100%;font-size: 1em;line-height: 150%;color:#ffffff;}
a.link-scopri {position: relative;color:#005eb8;background-color:#ffffff;padding: 20px 40px;margin: 50px 0 0 0;border-radius: 5px;display: inline-block;}
a.link-tutti {position: relative;color:#ffffff;background-color:#606e80;padding: 20px 40px;margin: 50px 0 0 0;border-radius: 5px;display: inline-block;}
.box-dossier {position: relative;width: 100%;background-color:#ffffff;min-height: 600px;border-radius: 5px;overflow: hidden;margin-bottom: 50px;}
.box-dossier img {width: 100%;}
.box-dossier h3 {font-size: 1.5em;margin: 20px 0 0 0;padding: 10px;}
a.link-dossier {position: absolute;bottom: 10px;left:10px;}
.main-home {background-color: #f6f9fc;}
.wrapper-box-news {position: relative;width: 100%;height: 100%;background-color: #ffffff;padding: 20px;border-radius: 5px;}
a.link-news {position: absolute;bottom:20px;left:20px;}
.wrapper-pages {position: relative;width: 100%;padding-top: 120px;}
h3.tit-gallery {position: relative;width: auto !important;border-top: 5px solid #ffad00;padding: 10px 0 0 0;font-size: 1.5em;display: inline-block;font-weight: 600;}
#menulang {display: none;}
.box-sfondo-home {}
.wrapper-sfondo {position: relative;width: 100%;height: 100%;background-color: #0d1b4a;}
.box-partners {position: relative;width: 100%;}
.box-partners li {float:left;margin: 10px 20px 10px 0;}
.box-partners li img {max-width: 100%;}
/** Carousel **/

.jcarousel {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.jcarousel ul {
    width: 20000em;
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
}

.jcarousel-vertical ul {
    width: 100% !important;
    height: 20000em !important;
}

.jcarousel li {
    width: 100%;
    height: 100%;
    float: left;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.jcarousel img {
    display: block;
    max-width: 100%;
    height: auto !important;
}
/** Carousel Controls **/
.jcarousel-control-prev,
.jcarousel-control-next {
    position: absolute;
    top: 50%;
    margin-top: -20px;
    width: 40px;
    height: 40px;
    text-align: center;
    background: transparent;
    border:0;
    color: #ffffff;
    text-decoration: none;
    /*text-shadow: 0 0 1px #000;*/
    font: 3em Arial, sans-serif;
    /*font-size: 2em;*/
    line-height: 30px;
    /*    -webkit-box-shadow: 0 0 4px #F0EFE7;
        -moz-box-shadow: 0 0 4px #F0EFE7;
        box-shadow: 0 0 4px #F0EFE7;*/
}

.jcarousel-control-prev {
    left: -3%;
}
.jcarousel-control-next {
    right: -3%;
}
.jcarousel-control-prev img,.jcarousel-control-next img {width: 40px;} 
.button-blue {padding: 5px 10px;font-size: 1em;background-color: #005EB8;border-radius: 10px;color:#ffffff;}

.alumni-grid {
  display: grid;
  gap: 22px;
  margin: 28px 0;
}

.alumni-grid.two {
  grid-template-columns: repeat(2, 1fr);
}

.alumni-grid.three {
  grid-template-columns: repeat(3, 1fr);
}

.alumni-card {
  display: flex;
  flex-direction: column;
  min-height: 360px;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease;
  padding-bottom: 24px !important;
}

.alumni-card:hover {
  transform: scale(1.035);
  box-shadow: 0 14px 32px rgba(0,94,184,.18);
}

/* forza titolo, ruolo e bio sotto la foto */
.alumni-card h3 {
  clear: both;
  margin-top: 10px !important;
}

.alumni-toggle {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.alumni-bio {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 18px !important;
}

/* nasconde i vecchi clear con &nbsp; che rompono l'allineamento */
.alumni-card div[style*="clear: both"] {
  display: none !important;
}

.alumni-spacer {
  flex-grow: 1;
}

.alumni-read-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 18px;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  align-self: flex-start;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  background: #005eb8;
  color: #fff !important;
  border: 2px solid #fff;
  box-shadow: 0 6px 16px rgba(0,94,184,.25);
  cursor: pointer;
  transition: .2s ease;
}

.alumni-read-more:hover {
  background: #fff;
  border: 2px solid #005eb8;
  color: #005eb8 !important;
}

.alumni-read-more::after {
  content: "Leggi di più";
}

.alumni-toggle:checked ~ .alumni-bio {
  -webkit-line-clamp: unset;
  display: block;
  overflow: visible;
}

.alumni-toggle:checked ~ .alumni-read-more::after {
  content: "Leggi meno";
}

@media(max-width:768px) {
  .alumni-grid.two,
  .alumni-grid.three {
    grid-template-columns: 1fr;
  }
}

@media(max-width:460px) {
  .alumni-card img {
    float: none !important;
    display: block;
    margin-bottom: 15px !important;
  }

  .alumni-card {
    text-align: left;
    min-height: auto;
  }
}

.alumni-wrapper {
  position: relative;
  padding: 40px 0;
  background: linear-gradient(135deg, #f4f8fc 0%, #e9f1fb 100%);
}

/* overlay leggero sopra */
.alumni-wrapper::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 20% 20%, rgba(0,94,184,0.08), transparent 60%),
              radial-gradient(circle at 80% 80%, rgba(255,173,0,0.08), transparent 60%);
  pointer-events: none;
}

.alumni-card2 {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 360px;
  padding-bottom: 24px !important;

  background: rgba(255,255,255,0.75);
  backdrop-filter: blur(6px);
  border-radius: 20px;
  border: 1px solid rgba(0,94,184,0.12);

  box-shadow: 0 10px 30px rgba(0,94,184,0.08);
  transition: all .25s ease;
}

.alumni-card2:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(0,94,184,0.18);
}

.alumni-img {
  position: relative;
  width: 150px;
  height: 150px;
  border-radius: 999px;
  overflow: hidden;
  margin-bottom: 18px;
}

.alumni-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* overlay sfumato */
.alumni-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,0) 50%,
    rgba(0,0,0,0.25) 100%
  );
}

.alumni-toggle {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.alumni-toggle:checked + .alumni-bio {
  display: block !important;
  -webkit-line-clamp: unset;
}

.alumni-bio {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.alumni-read-more::after {
  content: "Leggi di più";
}

.alumni-toggle:checked + .alumni-bio + .alumni-read-more::after {
  content: "Leggi meno";
}

.alumni-btn{
  background:#005eb8;
  color:#fff;
  border:2px solid #fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 18px;
  border-radius:8px;
  font-size:14px;
  font-weight:700;
  transition:.2s ease;
}

.alumni-btn:hover{
  background:#fff;
  border:solid 2px #005eb8;
  color:#005eb8;
}