/* RESET CSS */

* {
    outline: none;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
    font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
    font-size: 14px;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

a {
    text-decoration: none;
    color: #000;
}

@font-face {
    font-family: 'Montserrat SemiBold';
    src: url('../fonts/Montserrat-SemiBold.eot');
    src: url('../fonts/Montserrat-SemiBold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Montserrat-SemiBold.woff2') format('woff2'),
    url('../fonts/Montserrat-SemiBold.woff') format('woff'),
    url('../fonts/Montserrat-SemiBold.ttf') format('truetype'),
    url('../fonts/Montserrat-SemiBold.svg#NimbusSanNovD-Medi') format('svg');
    font-weight: 700;
    font-style: normal;
}


@font-face {
    font-family: 'Montserrat Med';
    src: url('../fonts/Montserrat-Medium.eot');
    src: url('../fonts/Montserrat-Medium.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Montserrat-Medium.woff2') format('woff2'),
    url('../fonts/Montserrat-Medium.woff') format('woff'),
    url('../fonts/Montserrat-Medium.ttf') format('truetype'),
    url('../fonts/Montserrat-Medium.svg#NimbusSanNovD-Medi') format('svg');
}

@font-face {
    font-family: 'Montserrat Regular';
    src: url('../fonts/Montserrat-Regular.eot');
    src: url('../fonts/Montserrat-Regular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Montserrat-Regular.woff2') format('woff2'),
    url('../fonts/Montserrat-Regular.woff') format('woff'),
    url('../fonts/Montserrat-Regular.ttf') format('truetype'),
    url('../fonts/Montserrat-Regular.svg#NimbusSanNovD-Medi') format('svg');
}

@font-face {
    font-family: 'PT Sans Narrow';
    src: url('../fonts/PTSans-Narrow.eot');
    src: url('../fonts/PTSans-Narrow.eot?#iefix') format('embedded-opentype'),
    url('../fonts/PTSans-Narrow.woff2') format('woff2'),
    url('../fonts/PTSans-Narrow.woff') format('woff'),
    url('../fonts/PTSans-Narrow.ttf') format('truetype'),
    url('../fonts/PTSans-Narrow.svg#PTSans-Narrow') format('svg');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'PT Sans Narrow';
    src: url('../fonts/PTSans-NarrowBold.eot');
    src: url('../fonts/PTSans-NarrowBold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/PTSans-NarrowBold.woff2') format('woff2'),
    url('../fonts/PTSans-NarrowBold.woff') format('woff'),
    url('../fonts/PTSans-NarrowBold.ttf') format('truetype'),
    url('../fonts/PTSans-NarrowBold.svg#PTSans-NarrowBold') format('svg');
    font-weight: bold;
    font-style: normal;
}

#navigation {
    min-height: calc(100vh - 245px);
    box-sizing: border-box;
}

.header, #navigation {
    max-width: 1500px;
    margin: 0 auto;
}

H1:not(.logo), H2.search-title {
    font-family: 'Montserrat Med', sans-serif;
    font-size: 30px;
    text-transform: uppercase;
}

H2.search-title {
    padding: 0 15px;
}

H2 {
    font-family: 'Montserrat Med', sans-serif;
    font-size: 25px;
    text-transform: uppercase;
    padding: 20px 0 10px 0;
}

.logo-container {
    text-align: center;
}

.logo-container img {
    width: 500px;
    padding: 50px 0 30px 0;
}

H1.logo {
    display: inline;
}

.page-content {
    padding: 50px 50px 100px 50px;
    box-sizing: border-box;
    transition-duration: 0.3s;
}

/* MENU */

.menu-container {
    font-size: 25px;
    text-transform: uppercase;
    font-family: 'Montserrat SemiBold', sans-serif;
    padding: 20px 0;
    top: 0;
    left: 0;
    right: 0;
    background: #fff;
    z-index: 990;
}

.gap {
    min-height: 67px;
}

.menu-container>div {
    max-width: 1500px;
    margin: 0 auto;
    padding: 0px 50px;
    box-sizing: border-box;
    white-space: nowrap;
}

.menu-container>div>div:first-child {
    vertical-align: middle;
}

.menu-container>div> * {
    display: inline-block;
}

.menu-container>div a {
    padding: 0 10px;
    position: relative;
    color: #000;
}

.menu-container>div a:nth-child(1){
    padding: 0 10px 0 0;
}

.menu-container>div a::before {
    color: #adadad;
    content: attr(data-hover);
    position: absolute;
    max-width: 0;
    overflow: hidden;
    transition: max-width 0.3s;
}

@-moz-document url-prefix() {
    .menu-container>div a::before {
        top: 2.5px;
    }
}

.menu-container>div a:not(.active):hover::before, .menu-container>div a:not(.active):focus::before {
    max-width: 100%;
}

.menu-container>div a.active::before {
    max-width: 100%;
}

.menu-container input[type="text"], .search {
    font-family: 'Montserrat Regular', sans-serif;
    font-size: 15px;
    vertical-align: middle;
    border: none;
    border-left: 2px solid #adadad;
    padding : 0 0 0 15px;
    height: 20px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.mobile-search {
    position: absolute;
    height: 0;
    top: 70px;
    left: 0;
    right: 0;
    padding-left: 0;
    margin: 0 auto;
    text-align: center;
    background-color: #fff;
}

.mobile-search .search {
    border-right: 2px solid #adadad;
    height: 0;
    text-align: center;
}

.mobile.menu-container input[type="text"], .search {
    width: 260px;
    padding-left: 10px;
    box-sizing: border-box;
}

.menu-container input[type="text"]::placeholder, .search::placeholder {
    font-family: serif;
    font-style: italic;
    font-size: 20px;
}

.mobile-search .search::placeholder {
    text-align: center;
}

.menu-container input[type="text"]:-ms-input-placeholder, .search:-ms-input-placeholder {
    font-family: serif;
    font-style: italic;
    font-size: 20px;
}

.mobile-search .search:-ms-input-placeholder {
    text-align: center;
}

.sticky-menu {
    display: none;
    align-items: center;
    padding: 0 20px;
    background-color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
    opacity: 0;
}

.sticky-menu .logo-container img {
    width: 150px;
}


.icon-hamburger {
    display: none;
    position: absolute;
    font-size: 30px;
    top: 50%;
    transform: translate(0, -50%);
    left: 50px;
    cursor: pointer;
}

.icon-search {
    display: none;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 50px;
    font-size: 25px;
}

.mobile.menu-container {
    display: none;
    width: 300px;
    position: fixed;
    top: 0;
    bottom: 0;
    left: -300px;
    z-index: 999;
    padding: 50px 20px 20px 20px;
    box-sizing: border-box;
    background-color: #fff;
    overflow-x: hidden;
    overflow-y: auto;
}

.close-mobile-menu {
    position: absolute;
    right: 20px;
    top: 17px;
    font-size: 35px;
    cursor: pointer;
}

.header .overlay {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    height: 100vh;
    left: 300px;
    z-index: 990;
    cursor: pointer;
}

.mobile.menu-container>div a {
    display: block;
    padding: 10px 0;
}

.mobile.menu-container input[type="text"] {
    margin: 10px 0 20px 0
}

/* HOME PAGE */

.home.page-content {
    padding: 50px 35px 100px 35px;
}

.home.page-content.search-result {
    padding-top: 150px;
    transition-duration: 0.3s;
}

#modal-new {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #fff;
    z-index: 997;
    overflow: auto;
}

.modal-content {
    max-width: 1500px;
    margin: 0 auto;
}

.news-container img {
    width: 100%;
}

.news-container h2 {
    font-family: 'Pt Sans Narrow', 'Montserrat Regular' , sans-serif;
}

.news-container .new-content {
    font-family: 'Pt Sans Narrow', 'Montserrat Regular', sans-serif;
}

.news-container video {
    width: 101%;
}

.new, .new-sizer {
    width: 25%;
}

.new {
    padding: 0 15px 60px 15px;
    box-sizing: border-box;
}

.new.two-columns {
    width: 50%;
}

.new-video-container {
    position: relative;
    font-size: 0;
    background-color: #dcdcdc;
    transition: all 0.333s;
}

.new-video-container .overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.lazy-video {
    opacity: 0;
    transition: opacity 0.333s ease-in;
    background-color: #dcdcdc;
}

.lazy-video.lazy-loaded {
    opacity: 1;
    background-color: #fff;
}

.new-content {
    font-family: 'Montserrat Regular', sans-serif;
    font-size: 18px;
    line-height: 1.3;
    text-align: left;
    /*display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;*/
    overflow: hidden;
}

.new-footer {
    display: flex;
    justify-content: space-between;
}

.new-footer .new-tags {
    line-height: 1.3;
    padding-top: 10px;
    padding-right: 10px;
}

.new-footer a {
    font-family: 'Montserrat Regular', sans-serif;
    font-style: italic;
}

.social-share {
    white-space: nowrap;
    padding-top: 10px;
}

.social-share ul li {
    display: inline;
}

.social-share ul li span.icon {
    display: inline-flex;
    justify-content: center;
    padding: 0 3px;
}

.social-share .icon svg {
    width: 17px;
    height: 17px;
}

.search-no-result {
    width:100%;
    padding: 50px 25px 0 25px;
    box-sizing: border-box;
}

.search-no-result>div {
    padding: 30px 0 0 0;
    margin: 0 auto;
    font-family: 'Montserrat Med', sans-serif;
    font-size: 30px;
    display: block;
    max-width: 350px;
    text-align: center;
    border-top: 2px solid #000;
}

.btn-search-back {
    display: block;
    font-size: 15px;
    padding: 10px;
    max-width: 150px;
    font-family: 'Montserrat Med', sans-serif;
    border: 2px solid #000;
    margin: 20px auto 0 auto;
    transition-duration: 0.3s;
}

.btn-search-back:hover {
    background-color: #000;
    color: #fff;
    transition-duration: 0.3s;
}

/* NEWS DETAIL */

.news-detail.page-content {
    position: relative;
}

.news-detail a.hide-new {
    position: absolute;
    top: -6px;
    right: 50px;
    font-size: 35px;
}

.new-header {
    padding-bottom: 50px;
}

.new-header a {
    display: inline-block;
    border: 2px solid #000;
    padding: 10px;
    box-sizing: border-box;
    color: #000;
    transition-duration: 0.3s;
    font-family: 'Montserrat Med', sans-serif;
    font-size: 15px;
}

.new-header a:hover {
    background-color: #000;
    color: #fff;
    transition-duration: 0.3s;
}

.new-header h1 {
    padding-top: 30px;
}

.new-header p {
    font-style: italic;
    font-family: serif;
    font-size: 15px;
    padding-top: 10px;
}

.new-picture-container {
    font-size: 0;
    text-align: center;
    margin: 0 -25px;
}

.news-detail img {
    width: 50%;
    vertical-align: top;
    padding-bottom: 25px;
    box-sizing: border-box;
}

.news-detail img.landscape {
    width: 100%;
}

.news-detail .new-content {
    text-align: center;
    display: block;
    -webkit-line-clamp: initial;
}

.news-detail .new-content.videos {
    padding-top: 0;
}

.news-detail .new-content .vertical-video {
    max-width: 50%;
}

.news-detail .new-content .horizontal-video {
    width: 100%;
    max-height: calc(100vh - 67px);
}

.news-detail .new-footer {
    display: block;
}

.news-detail .social-share {
    max-width: 600px;
}

.news-detail .new-tags {
    font-size: 16px;
    padding: 100px 0 50px 0;
}

.news-detail .rrssb-buttons li {
    padding: 0 5px;
}

.news-detail .rrssb-buttons li:first-child {
    padding: 0 5px 0 0;
}

.news-detail .rrssb-buttons li a {
    font-style: normal;
    font-weight: normal;
    font-family: 'Montserrat Med', sans-serif;
}


/* CONTACT */

/*.contact.page-content H1 {
    padding: 20px 0;
}

#map {
    width: 100%;
    height: 500px;
}

.info-container {
    font-size: 0;
}

.info-container>div {
    display: inline-block;
    width: 25%;
    vertical-align: top;
}

.info-container>div H2 {
    padding-bottom: 15px;
}

.info-container>div p, .info-team H3 {
    font-size: 14px;
    line-height: 20px;
    font-family: 'Montserrat Regular', sans-serif;
}

.info-container a {
    color: #adadad;
}

.info-container>div.info-team H2 {
    padding-top: 30px;
    padding-bottom: 0;
}

.info-team H3 {
    padding-top: 20px;
    font-family: 'Montserrat Med', sans-serif;
}*/

.modal-contact {
    display:none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10000;
}

.modal-contact .contact-overlay {
    background-color: rgba(255,255,255,0.8);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.modal-contact>div:nth-child(2) {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 70px 0;
    max-width: 600px;
    width: calc(100% - 40px);
    text-align: center;
    z-index: 10001;
}

.modal-contact>div>div {
    background-color: #fff;
    font-family: 'Montserrat Regular', sans-serif;
    font-size: 20px;
    border: 2px solid #000;
    padding: 70px 20px;
    position: relative;
}

.modal-contact div i.fal.fa-times {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 35px;
    width: 35px;
    cursor: pointer;
}

.modal-contact div p {
    font-weight: bold;
    padding-bottom: 20px;
    text-transform: uppercase;
}

.modal-contact div a {
    transition-duration: 0.3s;
}

.modal-contact div a:hover {
    color: #a2a2a2;
    transition-duration: 0.3s;
}

/* FOOTER */

#footer {
    border-top: 2px solid #000;
    padding: 20px 0;
}

#footer>div {
    display: flex;
    align-items: center;
    font-family: 'Montserrat Regular', sans-serif;
    font-size: 16px;
    transition-duration: 0.3s;
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 50px;
    box-sizing: border-box;
}

#footer .footerElement {
    width: 37.5%;
}

#footer .footerElement:last-child {
    text-align: right;
}

#footer .footerElement.icon {
    width: 25%;
    text-align: center;
}

#footer a:hover {
    color: #a2a2a2;
    transition-duration: 0.3s;
}

#footer .icon a {
    display: inline-block;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    font-size: 20px;
    background-color: #000;
    color: #fff;
    transition-duration: 0.3s;
}

#footer .icon a:hover {
    background-color: #fff;
    color: #000;
    transition-duration: 0.3s;
}

#footer a i {
    position: relative;
    width: 100%;
    height: 100%;
}

#footer a i::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


