/* latin-ext */
@font-face {
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url(../fonts/manrope/xn7gYHE41ni1AdIRggmxSuXd.woff2) format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url(../fonts/manrope/xn7gYHE41ni1AdIRggexSg.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --blue: #102C53;
    --blue90: #274164;
    --blue80: #405675;
    --lavender: #96AEEF;
    --lavender30: #d6ddf1;
    --basic: #555;
}

* {
    margin: 0;
    padding: 0;
    border: 0;
}

*::selection {
    background-color: var(--lavender);
    color: var(--blue);
}

:target {
    scroll-margin-top: 24px;
}

html,
body {
    font-size: 18px;
    line-height: 1.8;
    background-color: #F3F3F3;
    font-family: "Manrope", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: var(--basic);
    background-color: #FCFCFC;
}

a {
    color: var(--blue);
}

a:hover {
    color: var(--lavender);
}

.pagecont_dx_text_title_dipecc {
    font-size: 32px;
    line-height: 46px;
    color: #3A414D;
    padding-bottom: 10px;

}

.generic_dx_cont {
    padding-top: 60px;
    padding-bottom: 60px;
    padding-left: 35px;
    border-left: 1px solid #f2f2f2;
}


#video_dip_ecc {
    padding-bottom: 70px;
}

#dip_ecc_bloc_1 {
    margin-top: -400px;
    padding: 0 70px;
    background-color: #fff;
    position: relative;
    margin-bottom: 100px;
}

#dip_ecc_bloc_2 {
    padding: 70px;
    position: relative;
    background-color: #F0F0F0;
    margin-top: -400px;
}


#dip_ecc_bloc_4 {
    position: relative;
    background-color: #F0F0F0;
    padding: 70px;

}

#task_force_01 {
    background-color: #3A414D;
    padding: 25px;
    color: #fff;

}

#task_force_02 {
    background-color: #49505D;
    padding: 25px;
    color: #fff;

}

#task_force_03 {
    background-color: #F0F0F0;
    padding: 25px;
    color: var(--basic);

}

#task_force_04 {
    background-color: #EBEBEB;
    padding: 25px;
    color: var(--basic);

}

#bloc_dip_ecc_3 {
    padding: 70px 0;
}

#ricerca_row {
    background-color: #F0F0F0;
}

#dip_ecc_bloc_4 {
    padding: 20px 70px;
    background-color: #F0F0F0;
    color: var(--basic);
}

#form_dipart_ecc {
    padding: 70px;
    color: #fff;
    background-color: var(--basic);
    font-size: 25px;
    text-align: center;
}


.btn_white_dip_ecc {
    height: 36px;
    padding: 0 50px;
    background-color: #fff;
    color: #3A414D;
    font-weight: bold;
    font-size: 16px;
    line-height: 36px;
    text-align: center;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    cursor: pointer;
    display: inline-block;
}

.btn_white_dip_ecc a {
    color: #3A414D;
}


div#n2-ss-27 .nextend-bar-horizontal div * {
    font-size: 40px;
    font-weight: 400 !important;
    text-align: center;
}


div#n2-ss-27 .n2-font-5694dc379f9df4552c5ac191154451f0-simple {
    font-size: 30px !important;
    font-style: normal !important;
}


div#n2-ss-27 .n2-style-0dfcc93d26ded644e92fb1d300cbbfe1-simple {
    padding: 40px 20px 40px 20px !important;
}

@media (max-width: 1280px) {
    #dip_ecc_bloc_4 {
        padding: 20px 40px;
    }

    #dip_ecc_bloc_1 {
        padding: 0 25px;
    }

}

.n2-ss-widget * {
    font-family: "Manrope", sans-serif !important;
    font-weight: 600 !important;
}

.external_cont {
    position: relative;
    min-width: 1280px;
    overflow: hidden;
}

.generic_text_cont {
    position: relative;
    width: 1320px;
    max-width: calc(100% - 40px);
    height: 100%;
    margin: auto;
}

#Content {
    padding-top: 0 !important;
    margin-top: 144px;
}

#header_menu_cont {
    position: fixed;
    width: 100%;
    height: 144px;
    top: 0;
    left: 0;
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0.95), hsla(225, 100%, 98.4%, 0.74) 30%);
    z-index: 90;
}

#header_menu_cont a {
    color: inherit;
    text-decoration: none;
}

#header_logo_cont {
    display: flex;
    width: 22%;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    line-height: 13px;
}

#header_logo_img {
    height: 47px;
    margin: 0;
}

#header_label_dipecc {
    position: absolute;
    top: 154px;
    right: 0;
    margin: auto;
    width: 200px;
}

#header_menu1 {
    position: relative;
    height: 70px;
    display: flex;
    align-items: center;
    font-size: 14px;
    font-weight: 500;
    color: #222;
    background-color: #fff;
    border-bottom: 1px solid rgba(10, 37, 64, .2);
    overflow: hidden;
}

#header_menu1 .generic_text_cont {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#header_menu1 a {
    color: inherit;
    display: inherit;
    text-decoration: none;
}

#header_menu1 a:hover {
    color: inherit;
    text-decoration: underline;
}

#header_menu1 ul#menu-header1,
#header_menu1 ul#menu-header1-2 {
    list-style: none;
}

#header_menu1 ul#menu-header1 li,
#header_menu1 ul#menu-header1-2 li {
    display: inline-block;
    margin-left: 20px;
}

#header_menu2 {
    font-size: 14px;
    color: var(--blue);
    font-weight: 500;
    height: 74px;
    transition: all .2s cubic-bezier(.2, 0, 0, 1);
    backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(10, 37, 64, .2);
}

#header_menu2 .generic_text_cont {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header_menu_desktop,
.menu-header2-container,
#menu-header2 {
    height: 100%;
    display: flex;
    align-items: center;
}

#header_menu2 a {
    color: inherit;
    text-decoration: none;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 min(12px, 1.5vw);
    transition: all .2s;
}

#header_logo_cont a {
    padding: 0;
    color: var(--blue);
}

#header_menu2 a:last-child {
    padding-right: 0;
}

#header_menu2 li:not(.menu-item-has-children):hover {
    opacity: .7;
    /* text-decoration: underline;
    text-underline-offset: 6px;
    text-decoration-thickness: 3px;
    text-decoration-color: var(--lavender); */
}

#header_menu2 ul {
    list-style: none;
    display: flex;
}

#header_menu2 ul li {
    height: 100%;
    display: flex;
    align-items: center;
}

#header_menu2 .sub-menu {
    display: none;
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
    width: 100vw;
    justify-content: center;
    gap: 40px;
    z-index: 85;
    margin: 0;
    padding: 30px;
    background-color: #000;
    color: #fff;
}

#header_menu2 .sub-menu li {
    padding: 0;
    white-space: nowrap;
    position: relative;
    margin: 0;
    line-height: 1.2;
}

#header_menu2 .sub-menu a:hover {
    /*     text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 2px;
    text-decoration-color: var(--lavender); */
}

#header_menu2 .menu-item-has-children>a::after {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg width='8' height='6' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10.54 6.25' data-v-558b8466=''%3E%3Cpath fill='%23102C53' stroke-width='0' d='m10.25.29c-.39-.39-1.02-.39-1.41,0l-3.59,3.54L1.71.29C1.32-.1.69-.1.3.29c-.39.39-.39,1.02,0,1.41,0,0,0,0,0,0l4.24,4.24c.39.39,1.02.39,1.41,0,0,0,0,0,0,0L10.25,1.71c.39-.39.39-1.02,0-1.41,0,0,0,0,0,0Z'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    width: 8px;
    height: 6px;
    margin-left: 6px;
    transition: all .2s;
}

#header_menu2:has(.menu-item-has-children:hover) {
    background-color: var(--lavender);
}

#header_menu2 .menu-item-has-children:hover {
    color: #fff;
}

#header_menu2 .menu-item-has-children:hover>a::after {
    rotate: 180deg;
    filter: invert() contrast(2);
}

#header_menu2 .menu-item-has-children:hover .sub-menu {
    display: flex;
}

#header_menu2 .menu-item-has-children:hover::after {
    --navbar-spacing: 30px;
    content: '';
    position: absolute;
    top: calc(100% - var(--navbar-spacing));
    left: 0;
    width: 100%;
    height: var(--navbar-spacing);
    z-index: 1000;
}

.header_menu_mobile {
    display: none;
}

#banner_ext_cont {
    position: relative;
    height: 630px;
    background-color: rgba(33, 33, 33, 1);
    overflow: hidden;
}

#banner_img_cont {
    position: relative;
    height: 550px;
    opacity: .9;
}

.banner_img {
    position: relative;
    float: left;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    display: none;
}

.banner_img.shown {
    display: block;
}

.banner_img video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#banner_text_cont {
    position: absolute;
    width: 100%;
    height: 150px;
    left: 0;
    bottom: 80px;
    z-index: 5;
    background: linear-gradient(transparent 0%, rgba(33, 33, 33, 1) 100%);
}

.banner_text {
    margin: 10px 0;
    display: none;
}

.banner_text.shown {
    display: block;
}

.banner_text_t1 {
    font-size: 16px;
    font-weight: 500;
    color: #fff;
}

.banner_text_t2 {
    font-size: 36px;
    line-height: 1.2;
    font-weight: 600;
    color: #FFFFFF;
}

.banner_text_t3 {
    font-weight: 200;
    font-size: 26px;
    line-height: 1.05;
    color: #fff;
}

#banner_link_cont {
    position: relative;
    height: 80px;
    background-color: rgba(33, 33, 33, 1);
}

.banner_link_btn {
    position: absolute;
    left: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    display: none;
}

.banner_link_btn.shown {
    display: block;
}

#banner_link_nav {
    position: absolute;
    height: 14px;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    line-height: 14px;
}

.banner_link_nav_elem {
    display: inline-block;
    width: 14px;
    height: 14px;
    margin: 0 5px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    background-color: #626262;
    cursor: pointer;
}

.banner_link_nav_elem.selected {
    background-color: var(--lavender);
}

#banner1_ext_cont {
    position: relative;
    height: 315px;
    background-color: #FFFFFF;
    overflow: hidden;
}

#banner1_ext_cont.smallbanner {
    height: 115px;
}

#banner1_img_cont {
    position: relative;
    height: 100%;
}

.banner1_img {
    position: relative;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

#banner1_img_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.banner1_text_cont {
    position: absolute;
    width: 100%;
    height: 115px;
    left: 0;
    bottom: 0;
    background-color: rgba(33, 33, 33, 0.8);
    z-index: 5;
}

.banner1_text {
    margin: 30px 0;
    font-size: 40px;
    line-height: 57px;
    color: #FFFFFF;
}

#breadcrumb_ext_cont {
    position: relative;
    height: 45px;
    background-color: var(--lavender30);
    font-size: 14px;
    font-weight: 500;
    line-height: 45px;
    color: #555;
}

#breadcrumb_ext_cont a {
    text-decoration: none;
    color: inherit;
}

#pagecont_ext_cont {
    position: relative;
    background-color: #FFFFFF;
}

.generic_sx_cont {
    padding-top: 50px;
    padding-bottom: 50px;
}

.generic_dx_cont {
    padding-top: 50px;
    padding-bottom: 50px;
    padding-left: 35px;
    border-left: 1px solid #f2f2f2;
}

#pagecont_sx_cont {
    position: relative;
    float: left;
    width: 25%;
    margin: 50px 0;
}

.pagecont_sx_menu {
    list-style: none !important;
}

.pagecont_sx_menu li {
    width: 100%;
    padding: 7px 0;
    font-size: 16px;
    line-height: 20px;
    color: var(--basic);
    background-image: url('../img/menu_int_row.png');
    background-repeat: no-repeat;
    background-position: center right;
    cursor: pointer;
}

.pagecont_sx_menu li a {
    text-decoration: none;
    color: inherit;
}

.pagecont_sx_menu li.selected a {
    text-decoration: underline;
    color: var(--blue);
}

#pagecont_dx_cont {
    position: relative;
    float: left;
    width: 72%;
    margin: 0 0 0 3%;
}

.pagecont_dx_break {
    width: 100%;
    height: 1px;
    background-color: #f2f2f2;
}

.pagecont_dx_text {
    padding: 0 0 55px 0;
}

.pagecont_dx_text.showhide {
    display: none;
}

.pagecont_dx_text.showhide.selected {
    display: block;
}

.pagecont_dx_text_boxgray {
    background-color: var(--lavender30);
}

.pagecont_dx_text_title {
    padding-bottom: 16px;
    font-size: 36px;
    line-height: 1;
    color: var(--blue);
    font-weight: 700;
}

*+.pagecont_dx_text_title {
    margin-top: 40px;
}

.pagecont_dx_text_subtitle {}

#events_ext_cont {
    position: relative;
    padding: 60px 0;
    background-color: #FFFFFF;
}

#events_btns_cont {
    position: absolute;
    top: 60px;
    right: 0;
}

.events_btn_vis {
    margin-right: 15px;
    display: inline-block;
    cursor: pointer;
    vertical-align: middle;
}

.events_btn_vis .vc_icon_element-outline {
    border-color: var(--blue) !important;
}

.events_btn_vis .vc_icon_element-icon {
    color: var(--blue) !important;
}

.events_btn_vis.selected .vc_icon_element-outline {
    background-color: var(--blue) !important;
}

.events_btn_vis.selected .vc_icon_element-icon {
    color: #fff !important;
}

#events_btn_agenda {
    display: inline-block;
    margin-left: 30px;
}

#events_boxes_cont {
    margin: 40px -15px;
    /*display: grid;
    grid-gap: 0;
    grid-template-columns: calc(32% - 40px) 80px calc(18% - 80px) 80px calc(18% - 80px) 80px calc(32% - 40px);
    grid-template-rows: auto 60px auto;
    grid-template-areas: 'b1 b1 b1 s1 b2 b2 b2' 'r2 r2 r2 r2 r2 r2 r2' 'b3 s2 b4 b4 b4 s3 b5';*/
}

#events_boxes_cont .vc_btn3-container {
    display: none;
}

#events_boxes_cont .vc_gitem_row .vc_gitem-col {
    padding: 0;
}

.events_boxes_elem_img {
    position: relative;
    height: 240px;
    background-size: cover;
}

.events_boxes_elem_t1 {
    font-size: 16px;
    line-height: 1.2;
    min-height: 50px;
}

.events_boxes_elem_t2 {
    font-size: 24px;
    line-height: 1.2;
    color: var(--blue);
    font-weight: 600;
    margin: 0 0 4px;
}

.events_boxes_elem_t3 {
    font-weight: 300;
    font-size: 18px;
    line-height: 1.3;
    color: #777;
}

.events_boxes_elem_btn {
    display: inline-block;
    margin-top: 10px;
}

.events_boxes_space {
    width: 1px;
    height: 100%;
    margin: 0 39px 0 40px;
    background-color: #C9CDD6;
}

.events_boxes_row {
    grid-area: r1;
}

#events_boxes_elem1 {
    grid-area: b1;
}

#events_boxes_space1 {
    grid-area: s1;
}

#events_boxes_elem2 {
    grid-area: b2;
}

#events_boxes_elem3 {
    grid-area: b3;
}

#events_boxes_space2 {
    grid-area: s2;
}

#events_boxes_elem4 {
    grid-area: b4;
}

#events_boxes_space3 {
    grid-area: s3;
}

#events_boxes_elem5 {
    grid-area: b5;
}

#events_boxes_btnall {
    grid-area: bt1;
    width: 150px;
    margin: 35px auto 0;
}

#events_calendar_cont {
    margin: 40px 0;
    width: 100%;
    display: none;
}

.events_calendar_elem {
    position: relative;
    border-bottom: 1px solid #C9CDD6;
    min-height: 275px;
}

.events_calendar_elem_date {
    font-size: 18px;
    line-height: 1.3;
}

.events_calendar_elem_day {
    position: absolute;
    width: 15%;
    top: 0;
    left: 0;
    font-weight: 200;
    font-size: 70px;
    line-height: 70px;
    color: var(--blue);
}

.events_calendar_elem_month {
    position: absolute;
    width: 12%;
    top: 0;
    left: 15%;
    font-weight: 200;
    font-size: 38px;
    line-height: 70px;
    color: var(--blue);
}

.events_calendar_elem_hour {
    position: absolute;
    width: 13%;
    top: 0;
    left: 27%;
    font-size: 18px;
    line-height: 70px;
    color: var(--basic);
}

.events_calendar_elem_text {
    position: relative;
    margin: 25px 0 35px 40%;
    width: 60%;
}

.events_calendar_elem_t1 {
    font-size: 26px;
    line-height: 1.2;
    color: var(--blue);
    font-weight: 600;
}

.events_calendar_elem_t2 {
    font-weight: 300;
    font-size: 18px;
    line-height: 1.3;
    color: #777;
}

.events_calendar_elem_btn {
    display: inline-block;
    margin-top: 10px;
}

#numbers_ext_cont {
    position: relative;
    padding: 40px 0;
    background-color: var(--lavender);
}

#numbers_cont {
    position: relative;
    margin: 50px auto 20px;
    display: grid;
    grid-gap: 20px;
    grid-template-columns: calc(23% - 20px) calc(23% - 20px) calc(23% - 20px) 31%;
    grid-template-rows: auto auto;
    grid-template-areas: 'b1 b2 b3 b4' 't1 t2 t3 t4';
}

.numbers_elem {
    font-weight: 600;
    font-size: 100px;
    line-height: 145px;
    color: #FFFFFF;
    border-bottom: 6px solid var(--lavender30);
}

#numbers_elem1 {
    grid-area: b1;
}

#numbers_elem2 {
    grid-area: b2;
}

#numbers_elem3 {
    grid-area: b3;
}

#numbers_elem4 {
    grid-area: b4;
}

.numbers_elem_text {
    margin: 5px 0;
    font-size: 18px;
    line-height: 22px;
    color: #FFFFFF;
}

#numbers_elem_text1 {
    grid-area: t1;
}

#numbers_elem_text2 {
    grid-area: t2;
}

#numbers_elem_text3 {
    grid-area: t3;
}

#numbers_elem_text4 {
    grid-area: t4;
}

#keywords_ext_cont {
    position: relative;
    padding: 40px 0;
    background-color: #212121;
}

#keywords_cont {
    position: relative;
    margin: 30px auto 20px;
    text-align: center;
    line-height: 6px;
}

.keywords_elem {
    display: inline-block;
    padding: 0 10px;
    margin: 0 7px 10px !important;
    font-size: 20px;
    line-height: 32px;
    color: #FFFFFF;
    border: 2px solid var(--lavender);
    border-radius: 3px;
    cursor: pointer;
    transition: all .3s ease;
}

.keywords_elem:hover {
    color: var(--lavender);
}

#socialwall_ext_cont {
    position: relative;
    padding: 40px 0 60px;
    background-color: #FFFFFF;
    text-align: center;
}

#socialwall_cont {
    position: relative;
    padding: 40px 0 0;
    column-count: 3;
    column-gap: 80px;
}

.socialwall_elem {
    position: relative;
    margin-bottom: 20px;
    background-color: #B2EBF2;
    break-inside: avoid-column;
    -webkit-column-break-inside: avoid;
}

.socialwall_elem_noimg {
    position: relative;
    height: 60px;
}

.socialwall_elem_img {
    position: relative;
    display: block;
}

.socialwall_elem_text_cont {
    position: relative;
    padding: 20px 30px;
    background-color: #00BCD4;
    color: #FFFFFF;
    font-size: 14px;
    line-height: 16px;
    text-align: left;
}

.socialwall_elem_text_t1 {
    font-size: 20px;
    line-height: 23px;
    margin-bottom: 5px;
}

.socialwall_elem_ico {
    position: absolute;
    top: -20px;
    right: 20px;
}

#footer_ext_cont {
    position: relative;
    padding: 60px 0;
    background-color: var(--lavender30);
}

#footer_cont {
    position: relative;
    color: #444;
}

.footer_elem {
    position: relative;
    float: left;
    font-size: 16px;
    line-height: 24px;
}

.footer_elem ul li::marker {
    color: var(--blue);
    content: "+ ";
    font-weight: 900;
}

.footer_elem1 {
    width: 34%;
}

.footer_elem1 img {
    width: 75%;
    max-width: 200px;
}

.footer_elem2 {
    width: 22%;
}

.footer_elem3 {
    width: 22%;
}

.footer_elem4 {
    width: 22%;
}

.footer_elem a {
    color: var(--blue);
    text-decoration: none;
}

.footer_elem a:hover {
    text-decoration: underline;
}

.footer_elem ul {
    list-style: inside;
}

.footer_elem ul a {
    color: inherit;
}

#footer_elem_news,
.tnp-subscription {
    position: relative;
}

.tnp-subscription div.tnp-field.tnp-field-email label {
    display: none;
}

#footer_elem_news_textbox,
.tnp-subscription div.tnp-field.tnp-field-email input {
    width: 100%;
    background-color: transparent;
    font-size: 16px;
    line-height: 24px;
    color: var(--basic);
    border-bottom: 2px solid var(--basic);
    padding: 0;
    height: auto;
}

#footer_elem_news_btn {
    position: absolute;
    right: 0;
    top: 0;
    margin: auto;
    cursor: pointer;
}

.tnp-subscription div.tnp-field.tnp-field-button {
    position: absolute;
    right: 0;
    top: 0;
    cursor: pointer;
}

.tnp-subscription div.tnp-field.tnp-field-button::after {
    content: "+";
    font-weight: 900;
    font-size: 1.8em;
    text-align: center;
    color: var(--blue);
}

.tnp-field.tnp-field-button input[type="submit"] {
    height: 100%;
    width: 100%;
    padding: 0;
    margin: 0;
    opacity: 0;
}

.tnp-field.tnp-privacy-field {
    font-size: 14px;
}

.footer_elem_social {
    margin-top: 10px;
    margin-right: 12px;
}

.footer_elem_t1,
.footer_elem_t2 {
    font-size: 22px;
    font-weight: 600;
    color: var(--blue);
}

.footer_elem_t3 {
    font-weight: 600;
    color: var(--blue);
    margin-bottom: 7px;
}

.footer_elem4 svg {
    fill: var(--blue);
    width: 28px;
}

.tnp-subscription div.tnp-field.tnp-field-privacy {
    font-size: 13px;
    line-height: 19px;
    color: var(--basic);
}

div.tnp-subscription {
    margin: auto;
}

.wpb_wrapper>div {
    margin-bottom: 0
}

.right_align {
    text-align: right;
}

.generic_check_cont {
    font-size: 13px;
    line-height: 19px;
    color: var(--basic);
}

.generic_check_img {
    position: relative;
    float: left;
    margin-right: 8px;
    margin-bottom: 5px;
}

.title1 {
    font-size: 32px;
    line-height: 1.1;
    color: var(--blue);
    font-weight: 700;
}

.title2 {
    font-size: 32px;
    line-height: 1.1;
    color: #FFFFFF;
    text-align: center;
    font-weight: 700;
}

.title3 {
    font-size: 32px;
    line-height: 1.1;
    color: var(--blue);
    padding-bottom: 10px;
    font-weight: 700;
}

.title4 {
    font-size: 24px;
    line-height: 1.2;
    color: var(--blue);
    padding-bottom: 10px;
    font-weight: 700;
}

.title5 {
    font-size: 24px;
    line-height: 1.2;
    color: #FFFFFF;
    padding-bottom: 10px;
    font-weight: 700;
}

.title6 {
    font-size: 36px;
    line-height: 1.1;
    color: var(--blue);
    font-weight: 700;
}

.title7 {
    font-size: 16px;
    line-height: 23px;
    color: var(--blue);
}

.title8 {
    font-size: 12px;
    line-height: 18px;
    color: var(--basic);
}

.title9 {
    font-size: 20px;
    line-height: 22px;
    color: var(--blue);
}

.btn1 {
    width: 100%;
    background-color: #00c1cf;
}

.btn1 button {
    width: 100%;
    text-align: left !important;
    font-weight: 500;
    font-size: 25px !important;
    line-height: 29px !important;
    color: #FFFFFF !important;
}

.btn_lblue1 {
    height: 40px;
    padding: 0 25px;
    background-color: var(--lavender);
    color: var(--blue);
    font-weight: bold;
    font-size: 16px;
    line-height: 40px;
    text-align: center;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    cursor: pointer;
    display: block;
}

.btn_lblue2 {
    height: 30px;
    padding: 0 18px;
    background-color: var(--blue);
    color: #ffffff;
    font-weight: bold;
    font-size: 14px;
    line-height: 30px;
    text-align: center;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    cursor: pointer;
}

.btn_lblueborder1,
.vc_general.vc_btn3 {
    padding: 0 21px !important;
    border: 2px solid var(--blue) !important;
    color: var(--blue) !important;
    font-weight: bold;
    font-size: 16px;
    line-height: 36px;
    text-align: center;
    border-radius: 30px;
    cursor: pointer;
}

.btn_lblueborder1:hover,
.vc_general.vc_btn3:hover {
    background-color: var(--blue) !important;
    color: #ffffff !important;
}

.btn_lblueborder1_ {
    padding: 0 21px;
    border: 2px solid var(--blue);
    color: var(--blue);
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    border-radius: 30px;
    cursor: pointer;
    display: inline-block;
}

.btn_lblueborder1_ a {
    color: inherit;
    text-decoration: none;
}

.btn_whiteborder2 {
    height: 30px;
    padding: 0 14px;
    border: 2px solid #FFFFFF;
    color: #ffffff;
    font-weight: bold;
    font-size: 14px;
    line-height: 30px;
    text-align: center;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    cursor: pointer;
    display: inline-block;
}

.onlymobile {
    display: none;
}

.breaker {
    clear: both;
}

.page_filter_cont {
    margin: 20px 0 40px 0;
    padding: 25px 15px 25px 15px;
    background-color: var(--lavender30);
}

.page_filter_field_cont {
    float: left;
    width: 29%;
    margin: 0 2% 15px;
}

.page_filter_field_cont.page_filter_field4_cont {
    float: left;
    width: 22%;
    margin: 0 1% 15px 2%;
}

.page_filter_field_cont input,
.page_filter_field_cont select {
    width: 100%;
    height: 35px;
    padding: 0 15px;
    border-radius: 20px;
    font-size: 14px;
}

#page_results_teachers_cont {
    position: relative;
    margin: 45px 0;
}

.page_results_teachers_head {
    position: relative;
    border-bottom: 1px solid #C9CDD6;
    font-size: 35px;
    line-height: 50px;
    color: var(--blue);
    clear: both;
}

.page_results_teachers_element {
    position: relative;
    float: left;
    width: 46%;
    height: 115px;
    padding-left: 15%;
    margin: 20px 2% 20px 2%;
    cursor: pointer;
}

.page_results_teachers_element_photo {
    position: absolute;
    left: 0;
    top: 0;
    max-width: 100%;
    max-height: 100%;
}

.page_results_teachers_element_name {
    font-size: 22px;
    line-height: 22px;
    color: var(--blue);
    margin-bottom: 5px;
}

.page_results_teachers_element_role {
    font-size: 12px;
    line-height: 12px;
    color: var(--basic);
}

.page_results_teachers_element_email {
    font-size: 16px;
    line-height: 18px;
    color: var(--basic);
    margin: 0 0 10px;
    font-weight: normal;
}

.page_results_teachers_element_email a {
    color: inherit;
}

.page_results_teachers_element_telhead {
    font-size: 12px;
    line-height: 12px;
    color: #C9CDD6;
}

.page_results_teachers_element_tel {
    font-size: 16px;
    color: var(--basic);
}

#page_results_teachers_foot {
    position: relative;
    padding: 30px 0;
    border-top: 1px solid #C9CDD6;
    font-size: 14px;
    line-height: 14px;
    color: var(--basic);
    clear: both;
}

#page_results_teachers_foot label {
    display: inline-block;
}

#page_results_teachers_foot_pages_cont {
    position: absolute;
    bottom: 0;
    right: 0;
}

.page_results_teachers_foot_page {
    margin: 0;
    padding: 0;
    border: 0;
    float: left;
    width: 40px;
    height: 40px;
    margin-left: 10px;
    background-color: #212121;
    font-size: 16px;
    line-height: 40px;
    color: #ffffff;
    text-align: center;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    cursor: pointer;
    display: none;
}

.page_results_teachers_foot_page.first,
.page_results_teachers_foot_page.last,
.page_results_teachers_foot_page.curr,
.page_results_teachers_foot_page.precurr,
.page_results_teachers_foot_page.postcurr {
    display: block;
}

.page_results_teachers_foot_page.curr {
    cursor: default;
    background-color: var(--lavender);
}

.page_results_foot_page_points {
    margin: 0;
    padding: 0;
    border: 0;
    width: 15px;
    height: 40px;
    float: left;
    margin-left: 10px;
    font-size: 16px;
    line-height: 40px;
    color: #212121;
    text-align: center;
}

.btn_grayborder1 {
    height: 36px;
    padding: 0 21px;
    border: 2px solid var(--blue);
    color: var(--blue);
    font-weight: bold;
    font-size: 16px;
    line-height: 36px;
    text-align: center;
    border-radius: 30px;
    cursor: pointer;
}

#page_teacherdett_infosx_backbtn {
    position: absolute;
    left: 0;
    top: 0;
}

#page_teacherdett_infosx_cont {
    position: relative;
    background-color: var(--lavender30);
    margin-top: 70px;
    padding: 150px 30px 40px;
    font-size: 18px;
    line-height: 27px;
    color: var(--basic);
}

#page_teacherdett_infosx_img {
    position: absolute;
    left: 0;
    right: 0;
    top: -70px;
    width: 180px;
    height: 180px !important;
    border-radius: 50%;
    border: 10px solid white;
    margin-left: 40px;

}

.page_teacherdett_infosx_spacer1 {
    position: relative;
    height: 18px;
}

.page_teacherdett_infosx_t1 {
    font-size: 25px;
    line-height: 36px;
    color: var(--basic);
}

.page_teacherdett_infosx_t2 {
    font-size: 14px;
    line-height: 14px;
    color: var(--basic);
}

.page_teacherdett_infosx_t3 {
    font-size: 12px;
    line-height: 12px;
    color: #B9BEC9;
}

#page_teacherdett_infosx_cont a {
    color: var(--blue);
    text-decoration: underline;
}

#pagecont_dx_text_menu {
    position: relative;
    height: 40px;
    border-bottom: 1px solid #C9CDD6;
}

.pagecont_dx_text_menu_elem {
    float: left;
    padding: 0 25px;
    font-size: 15px;
    line-height: 40px;
    color: var(--basic);
    font-weight: 700;
    cursor: pointer;
}

.pagecont_dx_text_menu_elem.selected {
    background-color: var(--blue);
    color: #FFFFFF;
}

.pagecont_dx_text_elem {
    position: relative;
    padding: 25px 0;
    font-size: 20px;
    line-height: 24px;
    color: var(--basic);
    font-weight: 200;
    display: none;
}

.pagecont_dx_text_elem.selected {
    /*background-color: var(--blue);
    color: var(--basic);*/
    display: block;
}

.sf_popup {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 100;
}

#popup_cont {
    height: 100%;
}

.popup_teacher {
    position: relative;
    width: calc(50% - 150px);
    left: 50%;
    top: 50%;
    transform: perspective(1px) translateY(-50%) translateX(-50%);
    background-color: white;
    padding: 70px 50px 50px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    font-size: 18px;
    line-height: 18px;
    color: var(--basic);
    text-align: center;
}

.popup_teacher_avatar {
    position: absolute;
    border: 5px solid white;
    border-radius: 50%;
    width: 125px;
    height: 125px;
    background-size: cover;
    background-color: white;
    left: 0;
    right: 0;
    top: -70px;
    margin: auto;
}

.popup_teacher_img {
    position: absolute;

}

.popup_teacher_t1 {
    font-size: 25px;
    line-height: 36px;
    color: var(--basic);
    text-align: center;
}

.popup_teacher_t2 {
    font-size: 14px;
    line-height: 14px;
    color: var(--basic);
    text-align: center;
    margin-bottom: 35px;
}

.popup_teacher_t3 {
    font-size: 12px;
    line-height: 12px;
    color: #B9BEC9;
}

.popup_teacher a {
    color: var(--blue);
    text-decoration: underline;
}

.popup_teacher_conttext {
    float: left;
    width: 45%;
    margin-right: 5%;
    margin-bottom: 20px;
    text-align: left;
}

.popup_teacher_btn {
    width: 100px;
    display: inline-block;
}

.training_bnt_cont {
    position: relative;
    float: left;
    width: 48%;
    margin-bottom: 25px !important;
}

.training_bnt_cont a {
    color: inherit;
    text-decoration: none;
}

.training_bnt_cont a label {
    cursor: pointer;
}

.training_bnt_cont_sx {
    margin-right: 2%;
}

.training_bnt_cont_dx {
    margin-left: 2%;
}

.training_bnt_text_cont {
    padding: 30px;
    background-color: var(--blue);
    font-size: 24px;
    line-height: 1;
    color: #FFFFFF;
}

.training_bnt_text_cont::after {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='m31.71 15.29-10-10-1.42 1.42 8.3 8.29H0v2h28.59l-8.29 8.29 1.41 1.41 10-10a1 1 0 0 0 0-1.41z' data-name='3-Arrow Right'/%3E%3C/svg%3E");
    float: right;
    width: 40px;
    filter: invert();
    margin-top: -8px;
}

.publication_cont {
    position: relative;
    float: left;
    width: calc(50% - 24px);
    /*    height: 300px;*/
    margin: 0 12px 30px !important;
    cursor: pointer;
}

.publication_title {
    position: relative;
    padding: 20px 30px;
    background-color: var(--blue);
    font-size: 25px;
    line-height: 28px;
    color: #FFFFFF;
}

.publication_text {
    position: relative;
    padding: 20px 30px;
    background-color: #F3F4F9;
    font-size: 18px;
    line-height: 27px;
    color: #555;
    font-weight: 200;
    background-image: url('../img/pubbl_arrow_btn.png');
    background-position: right center;
    background-repeat: no-repeat;
}

#page_results_publication_foot {
    position: relative;
    padding: 30px 0;
    border-top: 1px solid #C9CDD6;
    font-size: 14px;
    line-height: 14px;
    color: var(--basic);
    clear: both;
}

#page_results_publication_foot label {
    display: inline-block;
}

#page_results_publication_foot_pages_cont {
    position: absolute;
    bottom: 0;
    right: 0;
}

.page_results_publication_foot_page {
    margin: 0;
    padding: 0;
    border: 0;
    float: left;
    width: 40px;
    height: 40px;
    margin-left: 10px;
    background-color: #212121;
    font-size: 16px;
    line-height: 40px;
    color: #ffffff;
    text-align: center;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    cursor: pointer;
}

#page_results_publication_foot label.page_results_publication_foot_page_cont {
    display: none;
}

#page_results_publication_foot label.page_results_publication_foot_page_cont.first,
#page_results_publication_foot label.page_results_publication_foot_page_cont.last,
#page_results_publication_foot label.page_results_publication_foot_page_cont.curr,
#page_results_publication_foot label.page_results_publication_foot_page_cont.precurr,
#page_results_publication_foot label.page_results_publication_foot_page_cont.postcurr {
    display: inline-block;
}

#page_results_publication_foot label.page_results_publication_foot_page_cont.curr .page_results_publication_foot_page {
    cursor: default;
    background-color: var(--lavender);
}

#pagecont_sx_cont2 {
    position: relative;
    float: left;
    width: 70%;
    margin: 50px 0;
}

#pagecont_dx_cont2 {
    position: relative;
    float: left;
    width: 30%;
    margin: 50px 0;
}

#pubblication_dett_title {
    font-size: 30px;
    line-height: 1.1;
    color: var(--blue);
    font-weight: 600;
    padding-left: 50px;
    margin-bottom: 8px;
}

#pubblication_dett_subtitle {
    font-size: 20px;
    line-height: 27px;
    color: var(--basic);
    padding-left: 50px;
}

#pubblication_dett_text {
    padding-right: 75px;
    font-size: 20px;
    line-height: 24px;
    color: var(--basic);
    font-weight: 200;
}

#pubblication_dett_table {
    width: 100%;
    border-collapse: collapse;
    font-size: 18px;
    line-height: 27px;
    color: var(--basic);
}

#pubblication_dett_table td {
    text-align: left;
    vertical-align: text-top;
}

#pubblication_dett_table td#pubblication_dett_table_imgclm {
    width: 30%;
    text-align: center;
    vertical-align: middle;
}

#pubblication_dett_other_title {
    position: relative;
    padding: 25px 30px;
    font-size: 16px;
    line-height: 23px;
    color: #535353;
    background-color: var(--lavender30);
    margin-left: 20px;
}

.pubblication_dett_other_elem {
    position: relative;
    padding: 25px 30px;
    font-size: 18px;
    line-height: 27px;
    color: var(--basic);
    background-color: #f9fafc;
    border-bottom: 18px solid var(--lavender30);
    background-image: url('../img/menu_int_row2.png');
    background-repeat: no-repeat;
    background-position: center right;
    cursor: pointer;
    margin-left: 20px;
}

.publication_graph_number {
    font-size: 47px;
    line-height: 50px;
    font-weight: 200;
    border-bottom: 5px solid;
    display: inline-block;
    margin-bottom: 5px !important;
}

.publication_graph_label {
    font-size: 14px;
    line-height: 18px;
    color: var(--basic);
}

.publication_graph {
    width: 33%;
    float: left;
    margin-bottom: 60px !important;
}

.publication_graph_1_text {
    color: #94aced;
    border-color: #94aced;
}

.publication_graph_2_text {
    color: #b0c1ee;
    border-color: #b0c1ee;
}

.publication_graph_3_text {
    color: #c2ceef;
    border-color: #c2ceef;
}

.publication_graph_4_text {
    color: #d6ddf1;
    border-color: #d6ddf1;
}

.publication_graph_5_text {
    color: #dce1f2;
    border-color: #dce1f2;
}

.publication_graph_6_text {
    color: #dce1f2;
    border-color: #dce1f2;
}

.announcement_cont {
    position: relative;
    float: left;
    width: calc(50% - 30px);
    height: 150px;
    padding: 25px 40px;
    margin: 0 30px 30px 0 !important;
    font-size: 20px;
    line-height: 24px;
    color: var(--basic);
    font-weight: 200;
    background-color: var(--lavender30);
    cursor: pointer;
}

.announcement_btn {
    display: inline-block;
}

.announcement_extlink_cont {
    position: relative;
    float: left;
    width: calc(50% - 30px);
    padding: 30px 40px;
    margin: 0 30px 30px 0;
    font-size: 25px;
    color: #FFFFFF;
    background-color: var(--blue);
}

.announcement_extlink_cont::after {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='m31.71 15.29-10-10-1.42 1.42 8.3 8.29H0v2h28.59l-8.29 8.29 1.41 1.41 10-10a1 1 0 0 0 0-1.41z' data-name='3-Arrow Right'/%3E%3C/svg%3E");
    float: right;
    width: 40px;
    filter: invert();
    height: 30px;
}

.announcement_extlink_cont a {
    color: #FFFFFF;
    text-decoration: none;
}

#pagecont_unique_cont {
    position: relative;
    margin: 50px auto;
}

#sx_backbtn {
    position: absolute;
    left: 0;
    top: 5px;
}

#sx_backbtn_text {
    font-size: 32px;
    line-height: 32px;
    color: var(--blue);
    padding-left: 40px;
}

#dx_filter_cont {
    position: absolute;
    right: 0;
    top: 0;
    text-align: right;
}

.dx_filter_input {
    display: inline-block !important;
    margin-right: 15px !important;
    width: 200px !important;
    height: 35px !important;
    padding: 0 15px !important;
    border-radius: 20px !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    background-color: var(--lavender30) !important;
}

.dx_filter_select {
    display: inline-block !important;
    margin-right: 15px !important;
    width: 230px !important;
    height: 35px !important;
    padding: 0 15px !important;
    -webkit-border-radius: 20px !important;
    -moz-border-radius: 20px !important;
    border-radius: 20px !important;
    color: #aaaaaa !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    background-color: var(--lavender30) !important;
}

#dx_filter_btn_cont {
    display: inline-block;
}

.announcement_list_elem {
    position: relative;
    padding: 25px 35px;
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 15px;
    color: var(--blue);
    background-color: var(--lavender30);
}

.announcement_list_elem_row {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
}

.announcement_list_elem_detail {
    display: none;
    font-size: 18px;
    line-height: 27px;
    color: var(--basic);
    margin-top: 10px;
}

.announcement_list_elem_detail a {
    text-decoration: underline;
    color: var(--blue);
}

.announcement_list_elem_detail_field {
    width: 50%;
    float: left;
    margin-top: 15px;
}

#page_results_announcement_foot {
    position: relative;
    padding: 30px 0;
    border-top: 1px solid #C9CDD6;
    font-size: 14px;
    line-height: 14px;
    color: var(--basic);
    clear: both;
}

#page_results_announcement_foot label {
    display: inline-block;
}

#page_results_announcement_foot_pages_cont {
    position: absolute;
    bottom: 0;
    right: 0;
}

.page_results_announcement_foot_page {
    margin: 0;
    padding: 0;
    border: 0;
    float: left;
    width: 40px;
    height: 40px;
    margin-left: 10px;
    background-color: #212121;
    font-size: 16px;
    line-height: 40px;
    color: #ffffff;
    text-align: center;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    cursor: pointer;
}

#page_results_announcement_foot label.page_results_announcement_foot_page_cont {
    display: none;
}

#page_results_announcement_foot label.page_results_announcement_foot_page_cont.first,
#page_results_announcement_foot label.page_results_announcement_foot_page_cont.last,
#page_results_announcement_foot label.page_results_announcement_foot_page_cont.curr,
#page_results_announcement_foot label.page_results_announcement_foot_page_cont.precurr,
#page_results_announcement_foot label.page_results_announcement_foot_page_cont.postcurr {
    display: inline-block;
}

#page_results_announcement_foot label.page_results_announcement_foot_page_cont.curr .page_results_announcement_foot_page {
    cursor: default;
    background-color: var(--lavender);
}

.procedure_list_elem {
    position: relative;
    padding: 25px 35px;
    margin-bottom: 20px !important;
    font-size: 16px;
    line-height: 27px;
    color: var(--basic);
    background-color: var(--lavender30);
}

.procedure_list_elem_title {
    font-size: 25px;
    color: var(--basic);
}

.procedure_list_elem_row {
    position: absolute;
    top: 20px;
    right: 0;
    cursor: pointer;
}

.procedure_list_elem_detail {
    display: none;
    font-size: 18px;
    line-height: 27px;
    color: var(--basic);
    margin-top: 10px;
}

.procedure_list_elem_detail a {
    text-decoration: underline;
    color: var(--blue);
}

.procedure_list_elem_detail_field {
    width: 50%;
    float: left;
    margin-top: 15px;
}

.vc_col-has-fill>.vc_column-inner,
.vc_row-has-fill+.vc_row-full-width+.vc_row>.vc_column_container>.vc_column-inner,
.vc_row-has-fill+.vc_row>.vc_column_container>.vc_column-inner,
.vc_row-has-fill>.vc_column_container>.vc_column-inner {
    padding-top: 0;
}

#contacts_pec_cont {
    text-align: center;
    padding: 15px 0;
    font-size: 25px;
    line-height: 29px;
    color: #FFFFFF;
}

#contacts_pec_cont a {
    text-decoration: underline;
    color: #FFFFFF;
}

.contacts_elem {
    line-height: 1.5;
}

.contacts_elem_title {
    margin: 20px 0 5px;
}

#contacts_alert_cont {
    text-align: center;
    padding: 50px 0;
    font-weight: 200;
    font-size: 18px;
    line-height: 26px;
    color: #FFFFFF;
}

#contacts_alert_title {
    font-size: 32px;
    line-height: 46px;
    margin-bottom: 10px;
}

.nextend-bar-horizontal div * {
    display: block !important;
    width: 1320px;
    margin: auto;
    line-height: 1 !important;
}

#header_menu_mobile_open {
    height: 32px;
    cursor: pointer;
}

#header_menu_mobile_close {
    height: 32px;
    cursor: pointer;
    display: none;
}

#header_menu_mobile_cont {
    display: none;
}

.eventpost_calendar {
    border: 0;
    padding: 0;
}

.eventpost_calendar table caption {
    display: none;
}

table th {
    border: 0;
    background: none;
    box-shadow: none;
}

.eventpost_calendar button {
    padding: 0 10px;
    margin: 0;
    color: var(--blue);
}

.eventpost_calendar tbody td {
    height: 65px;
    padding: 5px;
}

.eventpost_calendar tbody td:empty {
    height: 0px;
    padding: 0px;
}

.eventpost_calendar tbody td.event_post_day_now {
    border: var(--lavender) 2px solid;
}

.eventpost_cal_list ul,
.eventpost_calendar tbody ul {
    margin: 5px 0;
}

.eventpost_calendar tbody ul li {
    background-color: var(--lavender30);
    margin-bottom: 5px;
}

.eventpost_calendar tbody ul li a {
    text-decoration: none;
    font-size: 13px;
    line-height: 1.1;
    margin: 0;
    padding: 7px 4px;
    display: block;
    color: #333;
}

.eventpost_calendar tbody ul li h4 {
    border: none;
    background: none;
    margin: 0;
    padding: 0;
    font: inherit;
}

.wpml-ls-item {
    height: 20px;
    padding-left: 20px;
    border-left: 2px solid #01bbd4;
    line-height: 20px;
    color: #01bbd4;
    font-size: 13px;
    font-weight: 700;
}

.post-header .title_wrapper h1 {
    font-size: 2.5em;
    line-height: 1.1;
}

body.single .hentry {
    padding: 40px 0 0 0;
}

.the_content_wrapper {
    margin-bottom: 0 !important;
}

body.single .category-eventi .the_content_wrapper>p:first-child {
    font-weight: 600;
    margin-bottom: 32px;
}

.the_content_wrapper h5 {
    font-size: 19px;
    line-height: 1.5;
    font-weight: 700;
    margin: 30px 0 2px;
    color: var(--blue) !important;
}

.the_content_wrapper h6 {
    font-size: 19px;
    line-height: 1.5;
    font-weight: 700;
    margin: 30px 0 10px;
    color: #626262;
}

i[class^="icon"] {
    margin-right: 5px;
}

.icon-twitter::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z'%3E%3C/path%3E%3C/svg%3E");
    vertical-align: bottom;
    opacity: .4;
    margin-bottom: 3px;
}

.icon-twitter:hover:before {
    opacity: 1;
}

img.scale-with-grid {
    max-width: 100%;
    width: 100%;
}

.section-post-header .single-photo-wrapper.image .image_frame {
    max-width: 100%;
    border: none;
}

.page-id-12030 #breadcrumb_ext_cont {
    display: none;
}

.ul-ricerca {
    color: var(--blue);
}

.div-space {
    padding-bottom: 20px;
}

/* contact-form */
.page-id-12030 .wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 0em;
}

.page-id-12030 #Content {
    padding-top: 0 !important;
    margin-top: 190px;
}

.page-id-12030 input[type="submit"] {
    background-color: var(--blue);
    color: #ffffff;
}

.menu-213 option {
    font-size: 20px;
}

.button-form-contact {
    cursor: pointer;
}

.strong-font span {
    font-weight: 700 !important;
}

.page-id-12030 .wpcf7-form .wpcf7-checkbox .wpcf7-list-item {
    width: 100% !important;
}

.page-id-12030 label {
    font-weight: 500;
}

.page-id-12030 .wpcf7-form .half-width {
    display: inline-block !important;
    width: 50% !important;
    float: left;
    box-sizing: border-box;
}

.page-id-12030 .wpcf7-form .half-width:nth-child(1) {
    padding-right: 20px;
}

.page-id-12030 .wpcf7-form .wpcf7-checkbox .wpcf7-list-item {
    width: 25%;
}

.wpcf7-form>p:after {
    content: "";
    display: table;
    clear: both;
}

.page-id-12030 .wpcf7-form .half-width:nth-child(3),
.page-id-12030 .wpcf7-form .one-third:nth-child(1),
.page-id-12030 .wpcf7-form .one-third:nth-child(2) {
    padding-right: 20px;
    box-sizing: border-box;
}

.page-id-12030 .wpcf7-form .one-third {
    width: 33.3333%;
    float: left;
}

.page-id-12030 .wpcf7-form .total-width .wpcf7-list-item {
    width: 100%;
}

@media (max-width: 1440px) {}

@media (max-width: 1280px) {
    .external_cont {
        min-width: 980px;
    }

    .events_calendar_elem_day {
        font-size: 54px;
        line-height: 54px;
    }

    .events_calendar_elem_month {
        font-size: 32px;
        line-height: 54px;
    }

    .events_calendar_elem_hour {
        line-height: 54px;
    }

    .nextend-bar-horizontal div * {
        width: 940px;
    }
}

@media (max-width: 1080px) {
    #header_menu1 {
        font-size: 13px;
    }
}

@media (max-width: 980px) {
    .external_cont {
        width: 100%;
        min-width: unset;
    }

    .nextend-bar-horizontal div {
        padding: 20px 0 !important;
    }

    .nextend-bar-horizontal div * {
        width: 84%;
    }

    #Content {
        margin-top: 82px;
    }

    #header_logo_cont {
        flex: 2;
    }

    #header_menu_cont {
        box-shadow: unset;
    }

    .header_menu_desktop {
        display: none;
    }

    .header_menu_mobile {
        display: flex;
        align-items: center;
    }

    #header_menu_mobile_cont {
        position: fixed;
        top: 0;
        padding: 144px 0 20px;
        width: 100%;
        background-color: var(--lavender);
        z-index: 89;
        height: calc(100vh - 164px);
        overflow: scroll;
    }

    #header_menu_mobile1 {
        line-height: 1.2;
        color: #000;
    }

    #header_menu_mobile1 a {
        color: inherit;
        text-decoration: none;
    }

    #header_menu_mobile1 a:hover {
        color: inherit;
        text-decoration: underline;
    }

    #header_menu_mobile1 ul {
        list-style: none;
    }

    #header_menu_mobile1 ul li {
        position: relative;
        padding: 10px 20px;
        font-size: 14px;
        font-weight: 700;
    }

    #header_menu_mobile2 a {
        color: inherit;
        text-decoration: none;
    }

    #header_menu_mobile2 a:hover {
        color: inherit;
    }

    #header_menu_mobile2 ul {
        list-style: none;
        width: calc(100% - 20px);
    }

    #header_menu_mobile2 ul li {
        position: relative;
        padding: 0 20px 20px;
        text-transform: uppercase;
        font-size: 14px;
        line-height: 1.2;
        font-weight: 700;
        color: #fff;
    }


    #header_menu_mobile2 .menu-item-has-children {
        content: "";
        background-image: url("data:image/svg+xml,%3Csvg width='8' height='6' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10.54 6.25' data-v-558b8466=''%3E%3Cpath fill='%23ffffff' stroke-width='0' d='m10.25.29c-.39-.39-1.02-.39-1.41,0l-3.59,3.54L1.71.29C1.32-.1.69-.1.3.29c-.39.39-.39,1.02,0,1.41,0,0,0,0,0,0l4.24,4.24c.39.39,1.02.39,1.41,0,0,0,0,0,0,0L10.25,1.71c.39-.39.39-1.02,0-1.41,0,0,0,0,0,0Z'%3E%3C/path%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: 99% 5px;
    }

    #header_menu_mobile2 ul li .sub-menu {
        display: none;
        margin-top: 10px;
    }

    #header_menu_mobile2 ul li .sub-menu li {
        text-transform: none;
        color: #000;
        padding: 10px;
    }

    #banner_ext_cont {
        height: 580px;
    }

    #banner_img_cont {
        height: 500px;
    }

    .banner_text_cont {
        height: 220px;
    }

    .banner_text {
        margin: 45px 0;
    }

    .banner_text_t1 {
        font-size: 14px;
        line-height: 14px;
        margin-bottom: 8px;
    }

    .banner_text_t2 {
        font-size: 28px;
        line-height: 28px;
        margin-bottom: 8px;
    }

    .banner_text_t3 {
        font-size: 20px;
        line-height: 20px;
    }

    .banner_link_btn {
        left: auto;
        right: 0;
    }

    #banner_link_nav {
        right: auto;
        left: 0;
    }

    #events_btns_cont {
        display: none;
    }

    #events_boxes_cont {
        margin: 20px 0;
        grid-template-columns: 100%;
        grid-template-rows: auto 45px auto auto;
        grid-template-areas: 'b1' 'rx' 'b2' 'bt1';
    }

    #events_boxes_space1,
    #events_boxes_elem3,
    #events_boxes_space2,
    #events_boxes_elem4,
    #events_boxes_space3,
    #events_boxes_elem5 {
        display: none;
    }

    #numbers_cont {
        margin: 20px auto 20px;
        grid-gap: 10px 30px;
        grid-template-columns: calc(50% - 15px) calc(50% - 15px);
        grid-template-rows: auto auto 10px auto auto;
        grid-template-areas: 'b1 b2' 't1 t2' 'x x' 'b3 b4' 't3 t4';
    }

    .numbers_elem {
        font-size: 59px;
        line-height: 84px;
    }

    .numbers_elem_text {
        font-size: 13px;
        line-height: 19px;
    }

    #keywords_cont {
        margin: 25px auto 20px;
    }

    .keywords_elem {
        font-size: 15px;
        line-height: 15px;
        padding: 7px 10px;
        margin: 0 0 10px;
    }

    .title1,
    .title2 {
        font-size: 28px;
        line-height: 40px;
    }

    .onlymobile {
        display: block;
    }

    .nomobile {
        display: none;
    }

    #banner_text_cont {
        height: 220px;
    }

    #events_buttons_cont {
        text-align: left;
        margin-top: 15px;
    }

    #events_btn_vis_boxes,
    #events_btn_vis_calendar {
        display: none;
    }

    #events_btn_agenda {
        margin: auto;
    }

    #hp_events_2 {
        display: none;
    }

    .footer_elem1 {
        width: 100%;
        margin-bottom: 50px;
    }

    .footer_elem2 {
        display: none;
    }

    .footer_elem3 {
        display: none;
    }

    .footer_elem4 {
        width: 100%;
    }

    .footer_elem {
        float: none;
    }

    #dipartimento_menu {
        display: none;
    }

    #dipartimento_text .generic_dx_cont {
        padding-left: 0;
        border: 0;
    }

    #persone_menu {
        display: none;
    }

    #persone_text .generic_dx_cont {
        padding-left: 0;
        border: 0;
    }

    .page_filter_field_cont {
        float: none;
        width: 100%;
        margin: 0 0 15px;
    }

    .page_results_teachers_element {
        float: none;
        width: 80%;
        height: auto;
        padding-left: 20%;
        margin: 20px 0 20px 0;
    }

    .page_results_teachers_element_photo {
        width: 18%;
    }

    .page_results_teachers_element_name {
        font-size: 21px;
        margin-bottom: 5px;
    }

    .nextend-bar div span {
        font-size: 22px !important;
    }

    #ricerca_menu {
        display: none;
    }

    #ricerca_text .generic_dx_cont {
        padding-left: 0;
        border: 0;
    }

    #pagecont_unique_cont.generic_text_cont {
        width: 100%;
    }

    .page_filter_field_cont.page_filter_field4_cont {
        float: none;
        width: 100%;
        margin: 0 0 15px 0;
    }

    .publication_graph {
        width: 47%;
        margin-right: 3%;
        min-height: 115px;
        margin-bottom: 0 !important;
    }

    .publication_cont {
        float: none;
        width: 100%;
        margin: 0 0 30px !important;
    }

    .popup_teacher {
        width: calc(100% - 150px);
    }

    #pagecont_sx_cont,
    #pagecont_sx_cont2 {
        float: none;
        width: 100%;
        margin: 0;
        padding-top: 25px;
    }

    #pagecont_dx_cont,
    #pagecont_dx_cont2 {
        float: none;
        width: 100%;
        margin-top: 30px;
    }

    #pagecont_dx_text_menu {
        height: auto;
        border-bottom: 0;
    }

    .pagecont_dx_text_menu_elem {
        float: none;
        line-height: 30px;
        padding: 0px 10px;
        border-bottom: 1px solid #C9CDD6;
    }

    #pubblication_dett_title,
    #pubblication_dett_subtitle {
        padding: 0;
    }

    #pubblication_dett_table {
        font-size: 14px;
        line-height: 20px;
    }

    #pubblication_dett_table_imgclm {
        display: none;
    }

    #pubblication_dett_img_mobile {
        margin: 0 auto 30px;
    }

    #pubblication_dett_text {
        padding-right: 0;
    }

    .training_bnt_cont {
        float: none;
        width: 100%;
        height: 180px;
    }

    .training_bnt_cont_sx {
        margin-right: 0;
    }

    .training_bnt_cont_dx {
        margin-left: 0;
    }

    .training_bnt_text_cont {
        height: 100%;
    }

    #formazione_menu,
    #header_label_dipecc {
        display: none;
    }

    #formazione_text .generic_dx_cont {
        padding-left: 0;
        border: 0;
    }

    #laboratori_element_wp_img {
        display: none;
    }

    .announcement_cont {
        float: none;
        width: calc(100% - 80px);
        height: auto;
        padding: 25px 40px;
        margin: 0 0 15px !important;
    }

    .announcement_extlink_cont {
        float: none;
        width: calc(100% - 80px);
        height: auto;
        margin: 0 0 15px !important;
    }

    .eventpost_calendar tbody td {
        height: 50px;
        padding: 2px;
    }

    .eventpost_calendar tbody ul li {
        max-width: 12vw;
        max-height: 37px;
        padding: 0 2px;
        overflow: hidden;
    }

    .eventpost_calendar tbody ul li a,
    .eventpost_calendar tbody ul li h4 {
        font-size: 11px;
        line-height: 1;
        padding: 2px;
    }


}

h1,
h2,
h3,
h4,
h5 {
    color: var(--blue);
    ;
}

h1 {
    font-size: 48px;
    line-height: 1;
    font-weight: 700;
}

h2 {
    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
}

h3 {
    font-size: 25px;
    line-height: 1.3;
    font-weight: 700;
}

h4 {
    font-size: 21px;
    line-height: 1.4;
    font-weight: 700;
}

h5 {
    font-size: 15px;
    line-height: 1.5;
    font-weight: 700;
}

h6 {
    font-size: 15px;
    line-height: 1.5;
    font-weight: 700;
}

input[type="date"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="text"]:focus,
input[type="url"]:focus,
select:focus,
textarea:focus {
    color: var(--blue);
    background-color: #fff;
    border-color: var(--blue);
}

/* Color overrides*/
.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-body,
.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-body::after,
.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-body::before,
.vc_tta-style-outline .vc_tta-controls-icon::after,
.vc_tta-style-outline .vc_tta-controls-icon::before,
.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-heading {
    border-color: var(--blue) !important;
}

.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-title>a {
    color: var(--blue) !important;
}

.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-heading:focus,
.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-heading:hover {
    background-color: var(--blue) !important;
}

.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-heading:focus a,
.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-heading:hover a {
    color: #fff !important;
}

.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-heading:hover .vc_tta-controls-icon::after,
.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-heading:hover .vc_tta-controls-icon::before {
    border-color: #fff !important;
}

.pum-trigger h5 {
    margin-top: 0;
    color: var(--blue) !important;
    font-size: 20px;
    line-height: 1.3;
}

.pum-trigger img {
    margin-bottom: 20px !important;
}

.pum-close.popmake-close {
    background-color: var(--blue) !important;
    border-radius: 50% !important;
    top: 8px !important;
    width: 30px !important;
    font-weight: 900;
}

.entry-content p+h3 {
    margin-top: 40px;
    margin-bottom: 8px;
}

.accordion .question .title {
    padding: 14px 14px 14px 70px;
    font-size: 16px;
}

.icons .google,
.icons .pinterest {
    display: none;
}

label,
legend {
    font-weight: 700;
}