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: inherit; font-size: 100%; vertical-align: baseline; }

html { line-height: 1; }

ol, ul { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }

a img { border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/*** COLORI ***/
/*** COLORI ISTITUZIONALI ***/
/* Lista delle famiglie di font, per ogni famiglia inserisco la variabile e la sua posizione */
@font-face { font-family: "Montserrat-Bold"; src: url("../font/Montserrat-Bold.eot"); src: url("../font/Montserrat-Bold.ttf") format("truetype"), url("../font/Montserrat-Bold.eot?#iefix") format("embedded-opentype"), url("../font/Montserrat-Bold.otf"), url("../font/Montserrat-Bold.svg#Montserrat-Bold") format("svg"), url("../font/Montserrat-Bold.woff") format("woff"); }
@font-face { font-family: "Montserrat-BoldItalic"; src: url("../font/Montserrat-BoldItalic.eot"); src: url("../font/Montserrat-BoldItalic.ttf") format("truetype"), url("../font/Montserrat-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../font/Montserrat-BoldItalic.otf"), url("../font/Montserrat-BoldItalic.svg#Montserrat-BoldItalic") format("svg"), url("../font/Montserrat-BoldItalic.woff") format("woff"); }
@font-face { font-family: "Montserrat-Regular"; src: url("../font/Montserrat-Regular.eot"); src: url("../font/Montserrat-Regular.ttf") format("truetype"), url("../font/Montserrat-Regular.eot?#iefix") format("embedded-opentype"), url("../font/Montserrat-Regular.otf"), url("../font/Montserrat-Regular.svg#Montserrat-Regular") format("svg"), url("../font/Montserrat-Regular.woff") format("woff"); }
@font-face { font-family: "Montserrat-Italic"; src: url("../font/Montserrat-Italic.eot"); src: url("../font/Montserrat-Italic.ttf") format("truetype"), url("../font/Montserrat-Italic.eot?#iefix") format("embedded-opentype"), url("../font/Montserrat-Italic.otf"), url("../font/Montserrat-Italic.svg#Montserrat-Italic") format("svg"), url("../font/Montserrat-Italic.woff") format("woff"); }
@font-face { font-family: "Montserrat-Light"; src: url("../font/Montserrat-Light.eot"); src: url("../font/Montserrat-Light.ttf") format("truetype"), url("../font/Montserrat-Light.eot?#iefix") format("embedded-opentype"), url("../font/Montserrat-Light.otf"), url("../font/Montserrat-Light.svg#Montserrat-Light") format("svg"), url("../font/Montserrat-Light.woff") format("woff"); }
@font-face { font-family: "Montserrat-LightItalic"; src: url("../font/Montserrat-LightItalic.eot"); src: url("../font/Montserrat-LightItalic.ttf") format("truetype"), url("../font/Montserrat-LightItalic.eot?#iefix") format("embedded-opentype"), url("../font/Montserrat-LightItalic.otf"), url("../font/Montserrat-LightItalic.svg#Montserrat-LightItalic") format("svg"), url("../font/Montserrat-LightItalic.woff") format("woff"); }
* { margin: 0; padding: 0; -webkit-font-smoothing: antialiased; transition: opacity 0.5s; }

::-webkit-scrollbar { width: 5px; }

::-webkit-scrollbar-track { background: #f2f2f2; }

::-webkit-scrollbar-thumb { background: #0065a3; }

img { pointer-events: none; }

a { text-decoration: underline; }
a:hover { text-decoration: none; }

html { display: block; width: 100%; height: 100%; }
html body { display: block; width: 100%; height: 100%; font-family: "Montserrat-Regular"; color: #414042; background-color: #f2f2f2; background-image: url("../layout/bg-page.jpg"); background-position: center; background-repeat: no-repeat; background-size: cover; background-attachment: fixed; overflow-y: auto !important; overflow-x: hidden; /* POPUP 3d */ }
html body .popup-3d { display: block; position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 90vw; height: 90vh; margin: auto; opacity: 0; pointer-events: none; z-index: -1; }
html body .popup-3d.active { opacity: 1; pointer-events: all; z-index: 9; }
html body .popup-3d .popup-container { display: block; width: calc(100% - 100px); height: calc(100% - 100px); padding: 50px; }
html body .popup-3d .popup-container iframe { display: block; width: 100%; aspect-ratio: 16/9; }
html body.home { /* PERSONALIZZAZIONE HOMEPAGE PER L'HEADER */ }
html body.home header { background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0) 100%); border-bottom: none; }
html body.home header.active { background: transparent; background-color: #fff; }
html body.home header.active .top-header a.goto-home h1 { color: #0065a3; }
html body.home header.active .top-header a.goto-home .logo { background-image: url("../layout/logo-FNM_colore.png"); }
html body.home header.active nav.main-header ul.second-menu .search-text form input[type="submit"] { background-image: url("../layout/icon-search_blu.png"); }
html body.home header.active .btn.menu.active { background-image: url("../layout/icon-close_blu.png"); }
html body.home header .top-header a.goto-home .logo { background-image: url("../layout/logo-FNM_bianco.png"); }
html body.home header nav.main-header ul.second-menu .search-text form input[type="submit"] { background-image: url("../layout/icon-search_bianco.png"); }
html body.home header .btn.menu { background-image: url("../layout/icon-menu_bianco.png"); }
html body.home main { margin-top: 0; }
@media screen and (min-width: 768px) { html body.home nav.main-header ul.second-menu .languages { background-image: url(../layout/icon-arrow-small-bottom_bianco.png); }
  html body.home nav.main-header ul.second-menu .languages #languages { color: #fff; }
  html body.home nav.main-header ul.second-menu .languages #languages option { color: #fff; background-color: rgba(0, 30, 59, 0.9); }
  html body.home nav.main-header ul.second-menu .login { background-image: url(../layout/icon-avatar_bianco.png); }
  html body.home nav.main-header ul.second-menu .search-text .btn.search { background-image: url(../layout/icon-search_bianco.png); }
  html body.home nav.main-header ul.second-menu .search-text input { background-color: rgba(0, 0, 0, 0.5); }
  html body.home nav.main-header ul.second-menu .search-text input[type="text"] { color: #fff; } }
@media screen and (min-width: 1024px) { html body.home .top-header a.goto-home h1 { color: #fff; } }
html body header { display: block; position: fixed; top: 0; width: 100%; background-color: #fff; border-bottom: 1px solid #00894f; z-index: 99; }
html body header.active { border-bottom: none; }
html body header.active .top-header a.goto-home h1 { color: #0065a3; }
html body header .top-header { display: block; position: relative; width: 95%; padding: 20px 2.5%; background-color: transparent; }
html body header .top-header a.goto-home { display: table; }
html body header .top-header a.goto-home h1 { display: inline-block; font-family: "Montserrat-Light"; text-transform: uppercase; color: transparent; font-size: 0px; vertical-align: super; }
html body header .top-header a.goto-home .logo { display: inline-block; width: 222px; height: 40px; background-image: url("../layout/logo-FNM_colore.png"); background-position: center; background-repeat: no-repeat; background-size: contain; }
html body header .top-header a.goto-home .logo a { display: block; width: 100%; height: 100%; }
html body header nav.main-header { display: block; position: absolute; top: -100vh; width: 100%; height: calc(100vh - 80px); background-color: #fff; }
html body header nav.main-header.active { top: 80px; border-bottom: 1px solid #00894f; }
html body header nav.main-header.active ul.second-menu .search-text form input[type="text"] { color: #01375a; }
html body header nav.main-header ul { display: block; }
html body header nav.main-header ul.main-menu { position: absolute; width: 100%; height: calc(100% - 100px - 40px); margin: 20px 0; overflow-y: auto; }
html body header nav.main-header ul.main-menu li { display: table; width: calc(100% - 40px); margin: 0px auto; border-bottom: 1px solid #00894f; transition: all 0.5s ease; }
html body header nav.main-header ul.main-menu li:last-child { border-bottom: none; }
html body header nav.main-header ul.main-menu li a:hover { color: #00894f; }
html body header nav.main-header ul.main-menu li.selected a { color: #00894f; }
html body header nav.main-header ul.main-menu li a { display: block; width: 100%; height: 100%; padding: 20px 0; text-decoration: none; color: #0065a3; font-family: "Montserrat-Bold"; line-height: 1.3em; }
html body header nav.main-header ul.main-menu li ul li { border-bottom: none; }
html body header nav.main-header ul.main-menu li ul li a { font-family: "Montserrat-Regular"; }
html body header nav.main-header ul.second-menu { position: absolute; bottom: 0; width: calc(100% - 40px); padding: 0 20px 20px; }
html body header nav.main-header ul.second-menu .languages { display: inline-block; width: 20%; background-color: transparent; background-image: url(../layout/icon-arrow-small-bottom_grigio.png); background-size: 20px; background-position: right center; background-repeat: no-repeat; }
html body header nav.main-header ul.second-menu .languages #languages { display: block; position: relative; width: 100%; height: 100%; padding: 5px; text-align: center; appearance: none; background-color: transparent; border: 1px solid transparent; text-transform: uppercase; cursor: inherit; line-height: inherit; font-family: "Montserrat-Bold"; color: #0065a3; }
html body header nav.main-header ul.second-menu .login { display: inline-block; width: 50%; height: 25px; }
html body header nav.main-header ul.second-menu .search-text { position: relative; margin-top: 10px; }
html body header nav.main-header ul.second-menu .search-text form { display: block; position: relative; width: 100%; height: 100%; }
html body header nav.main-header ul.second-menu .search-text form input { width: calc(100% - 40px); height: 30px; padding: 0 20px; border: none; border-radius: 20px; background-color: rgba(0, 101, 163, 0.1); }
html body header nav.main-header ul.second-menu .search-text form input[type="text"] { color: #01375a; }
html body header nav.main-header ul.second-menu .search-text form input[type="submit"] { display: block; position: absolute; top: 0; right: 0; width: 30px; height: 30px; border-radius: 100%; background-image: url("../layout/icon-search_blu.png"); background-position: center; background-repeat: no-repeat; background-size: contain; background-color: transparent; font-size: 0; }
@media screen and (min-width: 768px) { html body header nav.main-header ul.main-menu { height: calc(100% - 40px); }
  html body header nav.main-header ul.main-menu.active { top: 85px; }
  html body header nav.main-header ul.second-menu { position: fixed !important; top: 0; right: 60px; bottom: auto !important; width: 290px !important; height: 80px !important; padding: 0 !important; }
  html body header nav.main-header ul.second-menu .languages { position: absolute; top: 20px; right: 240px; width: 45px; height: 40px; background-image: url(../layout/icon-arrow-small-bottom_grigio.png); }
  html body header nav.main-header ul.second-menu .languages #languages { color: #0065a3; }
  html body header nav.main-header ul.second-menu .languages #languages option { color: #fff; background-color: rgba(0, 30, 59, 0.9); }
  html body header nav.main-header ul.second-menu .login { top: 20px; width: 40px !important; margin-top: 10px; background-position: center; }
  html body header nav.main-header ul.second-menu .login a h3 { display: none; }
  html body header nav.main-header ul.second-menu .search-text { position: absolute !important; top: 20px; margin-top: 5px !important; right: 70px; width: 150px; }
  html body header nav.main-header ul.second-menu .search-text .btn.search { background-image: url(../layout/icon-search_blu.png); }
  html body header nav.main-header.active ul.second-menu .languages { background-image: url(../layout/icon-arrow-small-bottom_grigio.png); }
  html body header nav.main-header.active ul.second-menu .languages #languages { color: #0065a3; }
  html body header nav.main-header.active ul.second-menu .btn.login { background-image: url(../layout/icon-avatar_blu.png); }
  html body header nav.main-header.active ul.second-menu .search-text .btn.search { background-image: url(../layout/icon-search_blu.png); }
  html body header nav.main-header.active ul.second-menu .search-text input { background-color: rgba(0, 101, 163, 0.1); } }
@media screen and (min-width: 1024px) { html body header .top-header a.goto-home h1 { color: #0065a3; font-size: 40px; margin-right: 15px; }
  html body header nav.main-header { height: auto; }
  html body header nav.main-header ul.main-menu { display: flex; position: relative !important; width: 95%; height: auto !important; padding: 20px 2.5%; margin: 0 !important; overflow: hidden; }
  html body header nav.main-header ul.main-menu li { display: inline-flex !important; flex-direction: column; width: calc(100% - 20px) !important; margin-right: 20px !important; border-bottom: 0; text-align: left; }
  html body header nav.main-header ul.main-menu li a { height: auto; padding: 0; }
  html body header nav.main-header ul.main-menu li ul { display: block; width: calc(100% - 20px); margin-left: 20px; margin-top: 10px; font-size: 0.8em; }
  html body header nav.main-header ul.main-menu li ul li { display: block; width: 100%; list-style-type: disc; margin-bottom: 5px; padding-bottom: 5px; border-bottom: 1px solid #ccc; }
  html body header nav.main-header ul.main-menu li ul li:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; } }
@media screen and (min-width: 1366px) { html body header nav.main-header ul.second-menu { right: 130px; }
  html body header nav.main-header ul.second-menu .languages { right: 340px; }
  html body header nav.main-header ul.second-menu .search-text { width: 250px; } }
html body main { display: block; width: 100%; margin-top: 85px; /* HOME PAGE */ /* PAGINE INTERNE */ /* GALLERIE E ZOOM */ /* LOGIN E AREA PERSONALE*/ /* CERCA */ /* CERCA LEGGIO */ /* IFRAME */ }
html body main .goto-museo { display: block; position: relative; width: 100%; }
html body main .goto-museo #slider.gallery { height: 300px; }
html body main .goto-museo #slider.gallery .close-gallery, html body main .goto-museo #slider.gallery ul.gallery-list, html body main .goto-museo #slider.gallery ul.arrow-gallery { display: none !important; }
html body main .goto-museo #slider.gallery .gallery-window { -webkit-transition: opacity 750ms ease; -moz-transition: opacity 750ms ease; -o-transition: opacity 750ms ease; -ms-transition: opacity 750ms ease; transition: opacity 750ms ease; position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; overflow: hidden; overflow-x: auto; }
html body main .goto-museo #slider.gallery .gallery-window .gallery-elements { display: block; height: 100%; width: 100%; white-space: nowrap; }
html body main .goto-museo #slider.gallery .gallery-window .gallery-elements .item { display: inline-block; position: relative; width: 100%; height: 100%; margin: 0; }
html body main .goto-museo #slider.gallery .gallery-window .gallery-elements .item img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
html body main .goto-museo img { display: block; width: 100%; height: 300px; object-fit: cover; object-position: center; transition: all 0.5s ease; }
@media screen and (min-width: 768px) { html body main .goto-museo #slider.gallery { height: 400px; }
  html body main .goto-museo img { height: 400px; } }
@media screen and (min-width: 1024px) { html body main .goto-museo #slider.gallery { height: 450px; }
  html body main .goto-museo img { height: 450px; } }
@media screen and (min-width: 1366px) { html body main .goto-museo #slider.gallery { height: 700px; }
  html body main .goto-museo img { height: 700px; } }
@media screen and (min-width: 1920px) { html body main .goto-museo #slider.gallery { height: 900px; }
  html body main .goto-museo img { height: 900px; } }
html body main .timeline-fnm { display: block; position: relative; width: calc(100% - 40px); padding: 50px 20px; }
html body main .timeline-fnm h2 { font-family: "Montserrat-Bold"; text-align: center; color: #0065a3; margin: 20px auto; }
html body main .timeline-fnm ul { scroll-behavior: smooth; text-align: center; }
html body main .timeline-fnm ul.nav-timeline { display: none; }
html body main .timeline-fnm ul li { display: block; margin-bottom: 30px; }
html body main .timeline-fnm ul li .line { display: none; width: 11px; height: 54px; background-image: url("../layout/img-timeline-home.png"); background-position: bottom center; background-size: cover; margin: 0 auto; }
html body main .timeline-fnm ul li .data-info { color: #0065a3; margin-top: 10px; }
html body main .timeline-fnm ul li .data-info h3 { font-size: 40px; opacity: 0.5; }
html body main .timeline-fnm .popup-timeline { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.9); opacity: 0; pointer-events: none; z-index: -1; transition: all 0.5s ease; }
html body main .timeline-fnm .popup-timeline.active { opacity: 1; pointer-events: all; z-index: 9; }
html body main .timeline-fnm .popup-timeline .popup-container { display: flex; position: relative; width: calc(100% - 120px); height: calc(100vh - 240px); margin: 120px 60px; background-color: #aecc52; }
html body main .timeline-fnm .popup-timeline .popup-container .popup-content { display: flex; flex-direction: column; width: calc(100% - 40px); height: calc(100% - 40px); padding: 20px; }
html body main .timeline-fnm .popup-timeline .popup-container .popup-content h3 { display: inline-flex; flex-direction: column; justify-content: flex-start; flex-wrap: nowrap; color: #f2f2f2; margin-bottom: 10px; }
html body main .timeline-fnm .popup-timeline .popup-container .popup-content h2 { display: inline-flex; flex-direction: column; justify-content: flex-start; flex-wrap: nowrap; text-align: left; font-family: "Montserrat-Bold"; font-size: 20px; color: #fff; margin: 0 0 20px; }
html body main .timeline-fnm .popup-timeline .popup-container .popup-content .text-container { overflow: auto; display: inline-flex; align-content: flex-start; flex-direction: column; flex-wrap: nowrap; color: #fff; }
html body main .timeline-fnm .popup-timeline .popup-container .popup-content .text-container p { line-height: 1.5em; }
@media screen and (min-width: 768px) { html body main .timeline-fnm ul li .line { display: block; }
  html body main .timeline-fnm .popup-timeline .popup-container { width: calc(100% - 240px); height: calc(100vh - 240px); margin: 120px; }
  html body main .timeline-fnm .popup-timeline .popup-container .popup-content { width: calc(100% - 100px); height: calc(100% - 100px); padding: 50px; } }
@media screen and (min-width: 1024px) { html body main .timeline-fnm .timeline { display: block; position: absolute; width: 80%; height: 5px; top: 162px; left: 0; right: 0; margin: auto; background: linear-gradient(90deg, rgba(0, 101, 163, 0) 0%, #0065a3 2%, #0065a3 98%, rgba(0, 101, 163, 0) 100%); }
  html body main .timeline-fnm ul { position: relative; width: 80%; margin: 0 auto; padding: 20px 0 100px; white-space: nowrap; overflow-x: auto; z-index: 1; }
  html body main .timeline-fnm ul::-webkit-scrollbar { width: 0px; height: 0px; }
  html body main .timeline-fnm ul li { display: inline-block; width: 10%; margin: 0 10px; }
  html body main .timeline-fnm ul li .data-info { margin-top: 70px; transform: rotate(-45deg); text-align: right; }
  html body main .timeline-fnm ul.nav-timeline { display: block; position: absolute; width: calc(100% - 40px); height: 70px; margin-top: 10px; padding: 0; }
  html body main .timeline-fnm ul.nav-timeline li { display: block; position: absolute; top: 0; width: 70px; height: 70px; background-position: center; background-repeat: no-repeat; background-size: contain; margin: 0; }
  html body main .timeline-fnm ul.nav-timeline li.disable { opacity: 0.2; pointer-events: none; }
  html body main .timeline-fnm ul.nav-timeline li.left { left: 0; background-image: url("../layout/icon-arrow-big-left_verde.png"); }
  html body main .timeline-fnm ul.nav-timeline li.right { right: 0; background-image: url("../layout/icon-arrow-big-right_verde.png"); }
  html body main .timeline-fnm ul.nav-timeline li a { display: block; width: 100%; height: 100%; }
  html body main .timeline-fnm .popup-timeline .popup-container { position: absolute; top: 0; bottom: 0; width: 60%; height: calc(100vh - 40%); margin: auto 20%; }
  html body main .timeline-fnm .popup-timeline .popup-container .popup-content { position: relative; width: calc(100% - 200px); height: calc(100% - 100px); padding: 50px 100px; }
  html body main .timeline-fnm .popup-timeline .popup-container .popup-content h3 { display: block; position: absolute; left: -30px; top: 176px; width: 200px; font-size: 50px; text-align: right; transform: rotate(-90deg); }
  html body main .timeline-fnm .popup-timeline .popup-container .popup-content h2 { font-size: 28px; }
  html body main .timeline-fnm .popup-timeline .popup-container .popup-content .text-container p { font-size: 18px; } }
@media screen and (min-width: 1366px) { html body main .timeline-fnm .timeline { top: 170px; }
  html body main .timeline-fnm .popup-timeline .popup-container { width: 50%; height: calc(100vh - 60%); margin: auto 25%; }
  html body main .timeline-fnm .popup-timeline .popup-container .popup-content { width: calc(100% - 300px); height: calc(100% - 200px); padding: 100px 150px; }
  html body main .timeline-fnm .popup-timeline .popup-container .popup-content h3 { left: 0px; }
  html body main .timeline-fnm .popup-timeline .popup-container .popup-content h2 { font-size: 32px; }
  html body main .timeline-fnm .popup-timeline .popup-container .popup-content .text-container p { font-size: 21px; } }
html body main .intro-fnm, html body main .intro-mils { display: block; width: 100%; padding: 25px 0; background: linear-gradient(90deg, #00894f 0%, #aecc52 100%); }
html body main .intro-fnm p, html body main .intro-mils p { width: 80%; margin: 0 auto; text-align: center; font-family: "Montserrat-Bold"; font-size: 1.2em; line-height: 1.5em; color: #fff; }
html body main .intro-mils { background: none; background-color: #01375a; }
html body main .video-fnm { display: block; width: 100%; padding: 25px 0; background-color: #0065a3; }
html body main .video-fnm iframe { display: block; width: 100%; aspect-ratio: 16/9; max-width: 800px; margin: 0 auto; }
@media screen and (min-width: 1024px) { html body main .video-fnm { padding: 50px 0; } }
html body main #title-page { display: block; position: relative; width: 90%; padding: 25px 5%; text-align: center; overflow: hidden; }
html body main #title-page ul.breadcrumb { display: block; max-width: 1200px; margin: 0 auto 10px; }
html body main #title-page ul.breadcrumb li { display: inline-block; }
html body main #title-page ul.breadcrumb li a { font-family: "Montserrat-Bold"; color: #414042; text-decoration: none; }
html body main #title-page ul.breadcrumb li a:hover { text-decoration: underline; }
html body main #title-page h1 { text-transform: uppercase; color: #0065a3; max-width: 1200px; margin: 0px auto; line-height: 1.5em; }
html body main #title-page .juxtapose { width: 90% !important; height: 400px !important; max-width: 1200px; max-height: 720px; position: relative; z-index: 0; margin: 0 auto 50px; background-color: #0065a3; transition: all 0.5s ease; }
html body main #title-page .jx-handle .jx-control .jx-controller { background-color: #00894f; }
html body main #title-page .jx-knightlab { display: none !important; }
@media screen and (min-width: 1024px) { html body main #title-page .juxtapose { width: 960px !important; height: 576px !important; } }
@media screen and (min-width: 1366px) { html body main #title-page .juxtapose { width: 1200px !important; height: 720px !important; } }
html body main #title-page .abstract-container { display: block; }
html body main #title-page .abstract-container .abstract-content { max-width: calc(1200px - 20px); margin: 0px auto; padding-right: 20px; }
html body main #title-page .abstract-container .abstract-content figure { width: 100%; margin: 20px 0; }
html body main #title-page .abstract-container .abstract-content figure img { width: 100%; height: 100%; max-height: 800px; object-fit: contain; object-position: center; }
html body main #title-page .abstract-container .abstract-content figure figcaption { font-family: "Montserrat-Italic"; text-align: center; }
html body main #title-page .abstract-container .abstract-content p { color: #414042; }
html body main #title-page .abstract-container .abstract-content p img { width: 100%; height: 100%; max-height: 800px; object-fit: contain; object-position: center; margin: 20px auto; }
html body main #title-page.with-picture { height: 450px; background-size: cover; background-position: center; }
html body main #title-page.with-picture::after { display: block; content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: -1; background: url("../layout/bg-abstract.jpg"); background: url("../layout/bg-abstract.jpg"), linear-gradient(90deg, #00894f 0%, #aecc52 100%); background-blend-mode: multiply; background-position: center; background-size: cover; }
html body main #title-page.with-picture h1 { color: #fff; margin-bottom: 20px; }
html body main #title-page.with-picture ul.breadcrumb { color: #fff; }
html body main #title-page.with-picture ul.breadcrumb li a { color: #fff; }
html body main #title-page.with-picture .abstract-container { max-width: 1200px; height: 330px; margin: 0 auto; overflow: auto; }
html body main #title-page.with-picture .abstract-container::-webkit-scrollbar-track { background: rgba(242, 242, 242, 0.2); }
html body main #title-page.with-picture .abstract-container::-webkit-scrollbar-thumb { background: #fff; }
html body main #title-page.with-picture .abstract-container .abstract-content p { color: #fff; }
html body main #title-page.with-picture .img-abstract { display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: -1; }
html body main #title-page.with-picture .img-abstract img { display: block; position: relative; width: 100%; height: 100%; object-fit: cover; object-position: center; }
@media screen and (min-width: 1024px) { html body main #title-page { padding: 50px 5%; text-align: left; }
  html body main #title-page.with-picture h1::after { display: block; content: ""; width: 100px; height: 1px; background-color: #fff; margin: 20px 0; } }
@media screen and (min-width: 1366px) { html body main #title-page.with-picture h1::after { margin: 30px 0; } }
html body main .block { display: block; width: 90%; max-width: 1200px; margin: 0 auto 25px; /* NOME BLOCCHI */ }
html body main .block#gallery { padding: 0 5%; max-width: none; background-color: rgba(255, 255, 255, 0.5); }
html body main .block#gallery .gallery-container { padding: 25px 0 0; max-width: 1200px; margin: 0 auto; }
html body main .block#gallery .gallery-container .gallery-content h2 { color: #0065a3; margin-bottom: 20px; }
html body main .block#gallery .gallery-container .gallery-content ul { display: block; width: 100%; }
html body main .block#gallery .gallery-container .gallery-content ul li { display: block; width: 100%; height: 380px; margin-bottom: 20px; box-shadow: 0 0 20px #414042; overflow: hidden; }
html body main .block#gallery .gallery-container .gallery-content ul li:last-child { margin-bottom: 0; }
html body main .block#gallery .gallery-container .gallery-content ul li figure { display: block; width: 100%; height: 100%; }
html body main .block#gallery .gallery-container .gallery-content ul li figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
html body main .block#gallery .gallery-container .gallery-content ul li img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
@media screen and (min-width: 768px) { html body main .block#gallery .gallery-container .gallery-content ul { display: block; width: 100%; }
  html body main .block#gallery .gallery-container .gallery-content ul li { display: inline-block; width: calc(50% - 30px); height: 250px; margin: 0 10px; vertical-align: top; margin-bottom: 20px !important; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(even) { margin: 0; margin-left: 20px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(odd) { margin: 0; margin-right: 20px; }
  html body main .block#gallery .gallery-container .gallery-content ul li figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; } }
@media screen and (min-width: 1024px) { html body main .block#gallery { margin-bottom: 0; }
  html body main .block#gallery .gallery-container .gallery-content ul li { width: calc(33% - 30px); height: 210px; margin-bottom: 20px !important; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(even) { margin: 0 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(odd) { margin: 0 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(3n+1) { margin: 0; margin-right: 20px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(3n+3) { margin: 0; margin-left: 20px; } }
@media screen and (min-width: 1366px) { html body main .block#gallery .gallery-container .gallery-content ul li { width: calc(25% - 20px); height: 180px; margin-bottom: 20px !important; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(3n+1) { margin: 0 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(3n+3) { margin: 0 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(4n+1) { margin: 0; margin-right: 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(4n+4) { margin: 0; margin-left: 10px; } }
@media screen and (min-width: 1920px) { html body main .block#gallery .gallery-container .gallery-content ul li { width: calc(20% - 20px); height: 150px; margin: 0 10px; margin-bottom: 20px !important; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(3n+1) { margin: 0 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(3n+3) { margin: 0 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(4n+1) { margin: 0 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(4n+4) { margin: 0 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(5n+1) { margin: 0; margin-right: 10px; }
  html body main .block#gallery .gallery-container .gallery-content ul li:nth-child(5n+5) { margin: 0; margin-left: 10px; } }
html body main .block#entry .entry-container .entry-content { display: block; position: relative; width: 100%; }
html body main .block#entry .entry-container .entry-content img { display: block; width: 100%; height: 320px; background-color: #0065a3; transition: height 0.5s ease; }
html body main .block#entry .entry-container .entry-content ul { display: block; position: absolute; width: 100%; height: 100%; top: 0; }
html body main .block#entry .entry-container .entry-content ul li { display: block; width: 50px; height: 50px; background-color: #00894f; border-radius: 100%; box-shadow: 0 0 20px #414042; }
html body main .block#entry .entry-container .entry-content ul li a { display: block; width: 100%; height: 100%; }
@media screen and (min-width: 768px) { html body main .block#entry .entry-container .entry-content img { height: 450px; } }
@media screen and (min-width: 1024px) { html body main .block#entry .entry-container .entry-content img { height: 500px; } }
@media screen and (min-width: 1366px) { html body main .block#entry .entry-container .entry-content img { height: 600px; } }
html body main .block#text.light .text-container .text-content ul.list li { display: table; background: transparent !important; box-shadow: none !important; width: auto; text-align: left; margin: 0 !important; padding: 0 !important; }
html body main .block#text.light .text-container .text-content ul.list li a { color: #414042; text-decoration: underline; }
html body main .block#text.light .text-container .text-content ul.list li a:hover { text-decoration: none; }
html body main .block#text.light .text-container .text-content ul.list li a h2 { color: #414042; text-transform: initial; }
html body main .block#text .text-container .text-content .abstract { font-family: "Montserrat-Bold"; margin: 20px 0 50px; }
html body main .block#text .text-container .text-content .video h2 { text-align: center; margin-bottom: 20px; }
html body main .block#text .text-container .text-content .video iframe { display: block; width: 100%; height: 200px; }
html body main .block#text .text-container .text-content video { display: block; width: 80%; margin: 50px auto; }
html body main .block#text .text-container .text-content ul.list { text-align: left; }
html body main .block#text .text-container .text-content ul.list li { display: block; margin: 20px auto; box-shadow: 0 0 20px #414042; border-radius: 50px; background: linear-gradient(90deg, #00894f 0%, #aecc52 100%); text-align: center; vertical-align: top; }
html body main .block#text .text-container .text-content ul.list li a { display: block; text-decoration: none; }
html body main .block#text .text-container .text-content ul.list li a h2 { color: #fff; font-size: 24px; text-transform: uppercase; padding: 10px 0; line-height: 24px; margin: 0; }
html body main .block#text .text-container .text-content h2, html body main .block#text .text-container .text-content h3 { color: #0065a3; margin-top: 50px; margin-bottom: 10px; }
html body main .block#text .text-container .text-content p { margin-bottom: 10px; }
html body main .block#text .text-container .text-content p a { color: #0065a3; }
html body main .block#text .text-container .text-content p a:hover { text-decoration: none; }
html body main .block#text .text-container .text-content a { color: #0065a3; }
html body main .block#text .text-container .text-content a:hover { text-decoration: none; }
html body main .block#text .text-container .text-content img { width: 100%; }
@media screen and (min-width: 768px) { html body main .block#text .text-container .text-content .video iframe { height: 380px; }
  html body main .block#text .text-container .text-content ul.list li { display: inline-block; width: calc(50% - 20px); }
  html body main .block#text .text-container .text-content ul.list li:nth-child(odd) { margin-right: 10px; }
  html body main .block#text .text-container .text-content ul.list li:nth-child(even) { margin-left: 10px; } }
@media screen and (min-width: 1024px) { html body main .block#text .text-container .text-content .video iframe { width: 50%; height: 260px; margin: 0 auto 20px; }
  html body main .block#text .text-container .text-content ul.list li a h2 { padding: 15px 0; } }
@media screen and (min-width: 1366px) { html body main .block#text .text-container .text-content .video iframe { height: 350px; max-width: 780px; } }
html body main .block#linea-ferroviaria .linea-ferroviaria-container { display: block; width: 100%; margin-top: 20px; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content { display: block; position: relative; width: 100%; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content h2 { display: block; text-transform: uppercase; font-family: "Montserrat-Light"; text-align: center; margin-bottom: 20px; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list { display: block; position: relative; width: 100%; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list::after { display: block; position: absolute; content: ""; top: 50px; left: 5px; width: 4px; height: calc(100% - 80px); background-color: #fff; z-index: -1; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li { display: block; width: 100%; margin-bottom: 20px; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .btn.stazione { position: relative; margin-left: 40px; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .btn.stazione::after { display: block; content: ""; position: absolute; width: 8px; height: 8px; border-radius: 100%; border: 3px solid #fff; background-color: #0065a3; top: 0; bottom: 0; left: -40px; margin: auto; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .btn.stazione::before { display: block; content: ""; position: absolute; width: 40px; height: 1px; top: 0; bottom: 0; left: -40px; margin: auto; background-color: #fff; z-index: -1; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li h4 { display: table; text-transform: uppercase; margin-left: 60px; margin-bottom: 10px; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .video-ispezione-container { display: block; width: calc(100% - 40px); height: 300px; margin: 20px 0; margin-left: 40px; transition: all 0.5s ease; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .video-ispezione-container .video-ispezione-content { display: block; width: 100%; height: 100%; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .video-ispezione-container .video-ispezione-content iframe { display: block; width: 100%; height: 100%; }
html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .video-ispezione-container .video-ispezione-content video { display: block; margin: auto; background-color: #414042; background-color: #fff; }
@media screen and (min-width: 768px) { html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list::after { height: calc(100% - 40px - 250px); }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li { position: relative; height: 300px; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .btn.stazione { width: 50%; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .video-ispezione-container { display: block; position: absolute; top: 0; right: 0; width: 500px; margin: 0; z-index: 0; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .video-ispezione-container .video-ispezione-content { display: block; width: 100%; height: 100%; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .video-ispezione-container .video-ispezione-content video { width: 100%; height: 100%; } }
@media screen and (min-width: 1024px) { html body main .block#linea-ferroviaria .linea-ferroviaria-container { margin-top: 30px; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content h2 { display: table; position: absolute; left: -120px; top: 150px; margin: 0; transform: rotate(-90deg); font-size: 2em; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list { width: calc(100% - 100px); margin-left: 100px; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list::after { height: calc(100% - 40px - 300px); }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li { height: 350px; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .video-ispezione-container { width: 550px; } }
@media screen and (min-width: 1366px) { html body main .block#linea-ferroviaria .linea-ferroviaria-container { margin-top: 50px; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content h2 { left: -160px; top: 190px; font-size: 2.5em; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list::after { height: calc(100% - 40px - 350px); }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li { height: 400px; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .btn.stazione { width: 500px; }
  html body main .block#linea-ferroviaria .linea-ferroviaria-container .linea-ferroviaria-content ul.list li .video-ispezione-container { width: 600px; height: 380px; } }
html body main .block#stazione { padding: 0 5%; max-width: none; }
html body main .block#stazione .stazione-container { padding: 25px 0; max-width: 1200px; margin: 0 auto; }
html body main .block#stazione .stazione-container .stazione-content h2 { font-family: "Montserrat-Bold"; text-align: center; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline { height: 560px; margin-bottom: 50px; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline::-webkit-scrollbar { width: 0px; height: 0px; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline .gallery-window .gallery-elements .item { margin: 20px 0 0; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline .gallery-window .gallery-elements .item li { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; flex-wrap: nowrap; position: absolute; top: 0; width: 100%; height: 100%; white-space: initial; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline .gallery-window .gallery-elements .item li .text-timeline { display: inline-flex; text-align: center; flex-direction: column; width: 100%; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline .gallery-window .gallery-elements .item li .text-timeline h3 { color: #0065a3; margin-bottom: 10px; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline .gallery-window .gallery-elements .item li figure { display: inline-flex; flex-wrap: nowrap; width: 100%; height: 100%; margin-top: 20px; background-color: #fff; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline .gallery-window .gallery-elements .item li figure img { height: 100%; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline .close-gallery { display: none; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline ul.arrow-gallery { top: calc(50% - 25px); width: 100%; pointer-events: none; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline ul.arrow-gallery li { background-color: rgba(0, 101, 163, 0.8); pointer-events: all; }
html body main .block#stazione .stazione-container .stazione-content ul.timeline ul.arrow-gallery li.left { left: 0; background-image: url("../layout/icon-arrow-left_bianco.png"); }
html body main .block#stazione .stazione-container .stazione-content ul.timeline ul.arrow-gallery li.right { right: 0; background-image: url("../layout/icon-arrow-right_bianco.png"); }
html body main .block#stazione .stazione-container .stazione-content ul.timeline ul.gallery-list { bottom: 0; height: 16px; padding: 50px 0 20px; background: linear-gradient(0deg, #ffffff 0%, rgba(255, 255, 255, 0) 100%); }
html body main .block#stazione .stazione-container .stazione-content ul.timeline ul.gallery-list li { width: 10px; }
html body main .block#stazione .stazione-container .stazione-content ul.btn-nav { display: block; height: 50px; clear: both; margin: 20px 0; }
html body main .block#stazione .stazione-container .stazione-content ul.btn-nav li { display: inline-block; }
html body main .block#stazione .stazione-container .stazione-content ul.btn-nav li.left { float: left; }
html body main .block#stazione .stazione-container .stazione-content ul.btn-nav li.right { float: right; }
@media screen and (min-width: 768px) { html body main .block#stazione .stazione-container .stazione-content h2 { text-align: left; }
  html body main .block#stazione .stazione-container .stazione-content ul.timeline { height: 650px; }
  html body main .block#stazione .stazione-container .stazione-content ul.timeline .gallery-window { top: 0px; }
  html body main .block#stazione .stazione-container .stazione-content ul.timeline .gallery-window .gallery-elements .item li .text-timeline { text-align: left; } }
@media screen and (min-width: 1024px) { html body main .block#stazione .stazione-container { padding: 50px 0; }
  html body main .block#stazione .stazione-container .stazione-content { display: block; width: 100%; position: relative; }
  html body main .block#stazione .stazione-container .stazione-content ul.timeline { height: 750px; }
  html body main .block#stazione .stazione-container .stazione-content ul.btn-nav { display: block; position: absolute; top: 0; right: 0; margin: 0; z-index: 0; }
  html body main .block#stazione .stazione-container .stazione-content ul.btn-nav li { display: inline-block; }
  html body main .block#stazione .stazione-container .stazione-content ul.btn-nav li.left { float: left; }
  html body main .block#stazione .stazione-container .stazione-content ul.btn-nav li.right { float: right; } }
@media screen and (min-width: 1366px) { html body main .block#stazione .stazione-container .stazione-content ul.timeline { height: 870px; } }
@media screen and (min-width: 1920px) { html body main .block#stazione .stazione-container .stazione-content ul.timeline { height: 900px; } }
html body main .block#treno .treno-container .treno-text-content { display: block; width: 100%; }
html body main .block#treno .treno-container .treno-gallery-content { display: block; width: 100%; }
html body main .block#treno .treno-container .treno-gallery-content ul.gallery { height: 350px; margin-top: 20px; white-space: nowrap; overflow-x: auto; }
html body main .block#treno .treno-container .treno-gallery-content ul.gallery::-webkit-scrollbar { width: 0px; height: 0px; }
html body main .block#treno .treno-container .treno-gallery-content ul.gallery li { display: inline-block; width: 100%; height: 100%; }
html body main .block#treno .treno-container .treno-gallery-content ul.gallery li img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
@media screen and (min-width: 1024px) { html body main .block#treno .treno-container .treno-text-content { display: inline-block; width: calc(50% - 20px); margin-right: 10px; margin-bottom: 50px; vertical-align: top; max-height: 360px; overflow-y: auto; }
  html body main .block#treno .treno-container .treno-text-content p { padding-right: 20px; }
  html body main .block#treno .treno-container .treno-gallery-content { display: inline-block; width: calc(50% - 20px); margin-left: 10px; margin-bottom: 50px; vertical-align: top; }
  html body main .block#treno .treno-container .treno-gallery-content ul.gallery { display: block; width: 100%; margin-top: 0; } }
html body main .block#dettagli, html body main .block#dettagli-2 { padding: 0 5%; max-width: none; background-color: rgba(255, 255, 255, 0.5); border-bottom: 1px solid #ccc; margin-bottom: 0; }
html body main .block#dettagli .dettagli-container, html body main .block#dettagli-2 .dettagli-container { padding: 25px 0; max-width: 1200px; margin: 0 auto; }
html body main .block#dettagli .dettagli-container .dettagli-content, html body main .block#dettagli-2 .dettagli-container .dettagli-content { height: 50px; overflow: hidden; }
html body main .block#dettagli .dettagli-container .dettagli-content.opened, html body main .block#dettagli-2 .dettagli-container .dettagli-content.opened { height: auto; }
html body main .block#dettagli .dettagli-container .dettagli-content h4, html body main .block#dettagli-2 .dettagli-container .dettagli-content h4 { font-size: 18px; margin-top: 20px; }
html body main .block#dettagli .dettagli-container .dettagli-content figure, html body main .block#dettagli-2 .dettagli-container .dettagli-content figure { margin: 20px 0; }
html body main .block#dettagli .dettagli-container .dettagli-content figure img, html body main .block#dettagli-2 .dettagli-container .dettagli-content figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul, html body main .block#dettagli-2 .dettagli-container .dettagli-content .details-table ul { margin-bottom: 10px; padding-bottom: 10px; border-bottom: 1px solid #ccc; vertical-align: top; }
html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul:last-child, html body main .block#dettagli-2 .dettagli-container .dettagli-content .details-table ul:last-child { border-bottom: none; }
html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul li, html body main .block#dettagli-2 .dettagli-container .dettagli-content .details-table ul li { text-align: center; margin-bottom: 5px; line-height: 1.5em; }
html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul li:last-child, html body main .block#dettagli-2 .dettagli-container .dettagli-content .details-table ul li:last-child { margin-bottom: 0; }
html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul li span, html body main .block#dettagli-2 .dettagli-container .dettagli-content .details-table ul li span { font-family: "Montserrat-Bold"; }
html body main .block#dettagli .dettagli-container .dettagli-content p, html body main .block#dettagli-2 .dettagli-container .dettagli-content p { margin: 20px auto; }
html body main .block#dettagli .dettagli-container .dettagli-content .gallery, html body main .block#dettagli-2 .dettagli-container .dettagli-content .gallery { display: block; position: relative; width: 100%; height: 500px; }
html body main .block#dettagli .dettagli-container .dettagli-content .gallery .gallery-window, html body main .block#dettagli-2 .dettagli-container .dettagli-content .gallery .gallery-window { -webkit-transition: opacity 750ms ease; -moz-transition: opacity 750ms ease; -o-transition: opacity 750ms ease; -ms-transition: opacity 750ms ease; transition: opacity 750ms ease; position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: calc(100% - 50px); font-size: 18px; line-height: 30px; overflow: hidden; overflow-x: auto; }
html body main .block#dettagli .dettagli-container .dettagli-content .gallery .gallery-window::-webkit-scrollbar, html body main .block#dettagli-2 .dettagli-container .dettagli-content .gallery .gallery-window::-webkit-scrollbar { width: 0px; height: 0; }
html body main .block#dettagli .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements, html body main .block#dettagli-2 .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements { display: inline-block; height: 100%; width: 100%; white-space: nowrap; }
html body main .block#dettagli .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements .item, html body main .block#dettagli-2 .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements .item { display: inline-block; position: relative; width: 100%; height: 100%; margin: 0; }
html body main .block#dettagli .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements .item img, html body main .block#dettagli-2 .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements .item img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
@media screen and (min-width: 768px) { html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul li, html body main .block#dettagli-2 .dettagli-container .dettagli-content .details-table ul li { text-align: left; }
  html body main .block#dettagli .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements .item, html body main .block#dettagli-2 .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements .item { width: calc(100% - 100px); margin: 0 50px; } }
@media screen and (min-width: 1024px) { html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul li, html body main .block#dettagli-2 .dettagli-container .dettagli-content .details-table ul li { text-align: left; }
  html body main .block#dettagli .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements .item, html body main .block#dettagli-2 .dettagli-container .dettagli-content .gallery .gallery-window .gallery-elements .item { width: 100%; margin: 0; } }
@media screen and (min-width: 1366px) { html body main .block#dettagli .dettagli-container .dettagli-content h4 { font-size: 21px; }
  html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul { display: inline-block; width: calc(33% - 20px); margin-bottom: 10px; padding-bottom: 0px; margin-right: 10px; padding-right: 10px; border-bottom: none; border-right: 1px solid #ccc; }
  html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul:nth-child(3) { border-bottom: none; border-right: none; }
  html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul:last-child { border-bottom: none; border-right: none; }
  html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul li { margin-bottom: 10px; }
  html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul li:last-child { margin-bottom: 0; }
  html body main .block#dettagli .dettagli-container .dettagli-content .details-table ul li span { font-family: "Montserrat-Bold"; } }
html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto { margin-bottom: 20px; }
html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto figure { display: block; width: 100%; height: 320px; }
html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto .description { background: linear-gradient(90deg, #00894f 0%, #aecc52 100%); }
html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto .description ul { padding: 25px; }
html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto .description ul li { margin-bottom: 10px; }
html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto .description ul li p { color: #fff; }
html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto .description ul li p span { font-family: "Montserrat-Bold"; text-transform: uppercase; }
@media screen and (min-width: 768px) { html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto figure { height: 380px; } }
@media screen and (min-width: 1024px) { html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto figure { display: inline-block; width: calc(50% - 10px); height: 415px; vertical-align: top; }
  html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto .description { display: inline-block; width: calc(50% - 10px); height: 415px; vertical-align: top; }
  html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto .description ul { padding: 50px; } }
@media screen and (min-width: 1366px) { html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto figure { height: 450px; }
  html body main .block#oggetto .oggetto-container .oggetto-content .info-oggetto .description { height: 450px; } }
html body main .block#lista-oggetti { margin: 25px auto 25px; }
html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li { display: block; width: 100%; margin-bottom: 25px; box-shadow: 0 0 10px #414042; transition: all 0.5s ease; }
html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li:hover { box-shadow: none; }
html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li:hover a img { filter: grayscale(1); }
html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li:hover a .name-description { background-color: #00894f; }
html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li a { display: block; width: 100%; height: 100%; text-decoration: none; }
html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li a img { display: block; width: 100%; height: auto; transition: all 0.5s ease; }
html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li a .name-description { display: block; padding: 20px; background-color: #0065a3; color: #fff; transition: all 0.5s ease; }
html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li a .name-description h2 { font-size: 18px; line-height: 1.2em; margin-bottom: 10px; }
html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li a .name-description h3 { text-transform: uppercase; font-family: "Montserrat-Light"; font-size: 14px; }
@media screen and (min-width: 768px) { html body main .block#lista-oggetti .objects-container .objects-content ul.list-object { column-count: 2; column-gap: 25px; }
  html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li { display: inline-block; vertical-align: top; width: 100%; margin: 10px 0 25px; }
  html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li:nth-child(odd) { margin-right: auto; }
  html body main .block#lista-oggetti .objects-container .objects-content ul.list-object li:nth-child(even) { margin-left: auto; } }
@media screen and (min-width: 1366px) { html body main .block#lista-oggetti .objects-container .objects-content ul.list-object { column-count: 3; } }
html body main .block#lista-volumi { width: 100%; max-width: none; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi { position: relative; width: calc(100% - 100px); padding: 25px 50px; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi:nth-child(even) { background-color: rgba(255, 255, 255, 0.5); }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi .nav-list-volumi { display: block; position: absolute; top: calc(50% - 25px); width: 100%; max-width: 1300px; height: 50px; margin-left: -50px; pointer-events: none; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi .nav-list-volumi .btn.arrows { position: absolute; pointer-events: all; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi .nav-list-volumi .btn.arrows.left { left: 0; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi .nav-list-volumi .btn.arrows.right { right: 0; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi h2 { color: #0065a3; text-align: center; margin-bottom: 50px; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi h3.audio-text { display: none; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi audio { position: absolute; top: 60px; right: 5%; left: 5%; width: calc(100% - 100px); margin: auto; box-shadow: 0 0 20px #ccc; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi ul { display: block; max-width: 1125px; height: 300px; padding: 25px; white-space: nowrap; overflow-x: auto; overflow-y: hidden; scroll-behavior: smooth; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi ul::-webkit-scrollbar { width: 0px; height: 0px; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi ul li { display: inline-block; width: 165px; height: 230px; margin-right: 50px; vertical-align: top; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi ul li:last-child { margin-right: 0; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi ul li a { display: block; width: 100%; height: 100%; text-decoration: none; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi ul li a img { display: block; width: 100%; height: 100%; object-fit: cover; box-shadow: 0 0 20px #414042; }
html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi ul li a h3 { color: #414042; font-size: 14px; font-family: "Montserrat-Bold"; margin-top: 10px; white-space: initial; line-height: 21px; }
@media screen and (min-width: 768px) { html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi h2 { text-align: left; margin-left: 25px; }
  html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi audio { top: 20px; width: 250px; right: 5%; left: auto; } }
@media screen and (min-width: 1024px) { html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi h3.audio-text { display: block; position: absolute; top: 30px; font-size: 14px; text-transform: uppercase; right: calc(5% + 20px); }
  html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi audio { right: 5%; } }
@media screen and (min-width: 1366px) { html body main .block#lista-volumi { width: 100%; max-width: none; }
  html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi { width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px calc(50% - 600px) 25px; }
  html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi h3.audio-text { right: calc(10% + 20px); }
  html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi audio { top: 50px; right: 10%; } }
@media screen and (min-width: 1920px) { html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi h3.audio-text { right: calc(20% + 20px); }
  html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi audio { right: 20%; } }
@media screen and (min-width: 3840px) { html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi h3.audio-text { right: calc(25% + 20px); }
  html body main .block#lista-volumi .volumi-container .volumi-content .list-volumi audio { right: 25%; } }
html body main .block .video-list { display: block; }
html body main .block .video-list .video { display: inline-block; width: 100%; margin: 0 0 25px; }
html body main .block .video-list .video h2 { font-size: 18px; }
html body main .block .video-list .video iframe { width: 100% !important; max-width: none !important; height: 500px !important; }
@media screen and (min-width: 1024px) { html body main .block .video-list .video { width: calc(50% - 20px); margin: 0 10px 25px; }
  html body main .block .video-list .video h2 { font-size: 21px; }
  html body main .block .video-list .video iframe { height: 380px !important; } }
@media screen and (min-width: 1366px) { html body main .block .video-list .video { width: calc(33% - 20px); }
  html body main .block .video-list .video h2 { font-size: 24px; }
  html body main .block .video-list .video iframe { height: 250px !important; } }
html body main .block#fumetto-container .fumetto-content h2 { color: #0065a3; text-align: center; margin-bottom: 10px; }
html body main .block#fumetto-container .fumetto-content h2 p { font-size: 24px; font-family: "Montserrat-Bold"; }
html body main .block#fumetto-container .fumetto-content .fumetto-descrizione { text-align: center; max-width: 55%; margin: 0 auto; }
html body main .block#fumetto-container .fumetto-content .fumetto-copertina { display: table; width: auto; max-width: 180px; height: 100%; margin: 20px auto 0; vertical-align: top; }
html body main .block#fumetto-container .fumetto-content .fumetto-copertina a { display: block; width: 100%; height: 100%; text-decoration: none; }
html body main .block#fumetto-container .fumetto-content .fumetto-copertina a img { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; object-fit: cover; }
html body main .block#fumetto-container .fumetto-content .list-volumi { position: relative; margin-top: 50px; }
html body main .block#fumetto-container .fumetto-content .list-volumi .raccolta-video-descrizione { display: flex; justify-content: center; margin-bottom: 20px; }
html body main .block#fumetto-container .fumetto-content .list-volumi .nav-list-volumi { display: block; position: absolute; top: calc(50% - 25px); width: 100%; height: 50px; margin-left: 0; pointer-events: none; }
html body main .block#fumetto-container .fumetto-content .list-volumi .nav-list-volumi .btn.arrows { z-index: 99; position: absolute; pointer-events: all; background-color: rgba(255, 255, 255, 0.5); }
html body main .block#fumetto-container .fumetto-content .list-volumi .nav-list-volumi .btn.arrows.left { left: 0; }
html body main .block#fumetto-container .fumetto-content .list-volumi .nav-list-volumi .btn.arrows.right { right: 0; }
html body main .block#fumetto-container .fumetto-content .list-volumi ul { display: block; width: 100%; white-space: nowrap; overflow-x: auto; overflow-y: hidden; scroll-behavior: smooth; }
html body main .block#fumetto-container .fumetto-content .list-volumi ul.multiple-video li { display: inline-block; vertical-align: top; word-break: break-all; white-space: break-spaces; }
html body main .block#fumetto-container .fumetto-content .list-volumi ul::-webkit-scrollbar { width: 0px; height: 0px; }
html body main .block#fumetto-container .fumetto-content .list-volumi ul li { display: block; }
html body main .block#fumetto-container .fumetto-content .list-volumi ul li .video-item { color: #414042; display: flex; flex-direction: column; width: 100%; max-width: calc(380px + (20px / 3)); margin: 0 auto; }
html body main .block#fumetto-container .fumetto-content .list-volumi ul li .video-item iframe#video-preview { aspect-ratio: 16/9; height: 215px; display: block; }
html body main .block#fumetto-container .fumetto-content .list-volumi ul li .video-item .custom-video-click { aspect-ratio: 16/9; margin-top: -215px; height: 215px; max-width: calc(380px + (20px / 3)); cursor: pointer; }
html body main .block#fumetto-container .fumetto-content .list-volumi ul li .video-item h3 { color: #0065a3; font-size: 18px; font-family: "Montserrat-Bold"; margin-top: 10px; margin-bottom: 5px; white-space: initial; line-height: 21px; }
html body main .block#fumetto-container .fumetto-content .list-volumi ul li .video-item p { font-size: 18px; width: 100%; word-break: keep-all; }
html body main .block#fumetto-container .fumetto-content #embedded-video-container { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 999; }
html body main .block#fumetto-container .fumetto-content #embedded-video-container::after { display: block; content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(65, 64, 66, 0.9); }
html body main .block#fumetto-container .fumetto-content #embedded-video-container button { display: block; position: absolute; top: 20px; right: 20px; width: 50px; height: 50px; border-radius: 100%; z-index: 99; font-size: 2em; background-color: #0065a3; color: #fff; border: none; cursor: pointer; }
html body main .block#fumetto-container .fumetto-content #embedded-video-container iframe#embedded-video { display: block; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; width: 80%; height: 80%; max-width: 1920px; max-height: 1080px; z-index: 9; }
@media screen and (min-width: 768px) { html body main .block#fumetto-container .fumetto-content .list-volumi ul.multiple-video li { margin-right: 20px; word-break: break-all; white-space: break-spaces; }
  html body main .block#fumetto-container .fumetto-content .list-volumi ul.multiple-video li:last-child { margin-right: 0; }
  html body main .block#fumetto-container .fumetto-content .list-volumi ul.multiple-video li p { font-size: 16px; } }
@media screen and (min-width: 1366px) { html body main .block#fumetto-container .fumetto-content h2 p { font-size: 32px; }
  html body main .block#fumetto-container .fumetto-content .list-volumi .nav-list-volumi { width: calc(100% + 100px); margin-left: -50px; }
  html body main .block#fumetto-container .fumetto-content .list-volumi .nav-list-volumi .btn.arrows { background-color: transparent; } }
@media screen and (min-width: 1024px) { html body main .block { margin-bottom: 50px; } }
html body main ul.paginations { margin-top: 20px; text-align: center; }
html body main ul.paginations li { display: inline-block; width: 8px; height: 8px; margin: 10px 3px; border-radius: 100%; border: 2px solid #414042; background-color: transparent; transition: all 0.5s ease; }
html body main ul.paginations li a { display: block; width: 100%; height: 100%; }
html body main ul.paginations li.selected { background-color: #0065a3; border: 2px solid #0065a3; }
html body main .cover-page { display: block; width: 100%; height: 250px; transition: all 0.5s ease; }
html body main .cover-page img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
@media screen and (min-width: 768px) { html body main .cover-page { height: 300px; } }
@media screen and (min-width: 1024px) { html body main .cover-page { height: 400px; } }
@media screen and (min-width: 1366px) { html body main .cover-page { height: 450px; } }
@media screen and (min-width: 1920px) { html body main .cover-page { height: 550px; } }
html body main .popup-video { display: block; position: fixed; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; z-index: -1; pointer-events: none; transition: all 0.5s ease; }
html body main .popup-video.active { opacity: 1; z-index: 9; pointer-events: all; }
html body main .popup-video .popup-container { display: block; position: relative; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.9); }
html body main .popup-video .popup-container .btn.close { top: 50px !important; right: 50px !important; }
html body main .popup-video .popup-container .popup-content { display: block; position: absolute; width: 90%; height: calc(100% - 200px); margin: 100px 5%; }
html body main .popup-video .popup-container .popup-content iframe { display: block; width: 100%; height: 100%; }
html body main .popup-zoom { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.9); z-index: 99; opacity: 1; pointer-events: all; transition: all 0.5s ease; }
html body main .popup-zoom.hide { z-index: -1; opacity: 0; pointer-events: none; }
html body main .popup-zoom .box-nav .titolo-volume { display: none; }
html body main .popup-zoom .box-nav .bottone_close-zoom { display: table; position: absolute; margin: 20px 2.5%; z-index: 999; }
html body main .popup-zoom .box-nav .bottone_close-zoom a.btn-close-leggio { color: #fff; text-decoration: underline; }
html body main .popup-zoom .box-nav .bottone_close-zoom a.btn-close-leggio:hover { text-decoration: none; }
html body main .popup-zoom .box-nav .bottone_close-zoom a.btn-close-leggio p { color: #fff; }
html body main .popup-zoom .box-zoom-area { display: block; position: absolute; top: 0; width: calc(100% - 100px); height: calc(100% - 200px); margin: 100px 50px; }
html body main .popup-zoom .box-zoom-area .zoom { display: block; width: 100%; height: 100%; }
html body main .popup-zoom .box-zoom-area .zoom img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; pointer-events: all; margin: auto; }
html body main .popup-zoom .box-schedule { display: none; }
@media screen and (min-width: 1024px) { html body main .popup-zoom .box-zoom-area { width: calc(100% - 200px); margin: 100px; } }
html body main#gallery { padding: 0 5%; max-width: none; background-color: rgba(255, 255, 255, 0.5); }
html body main#gallery .gallery-container { padding: 25px 0 0; max-width: 1200px; margin: 0 auto; }
html body main#gallery .gallery-container .gallery-content h2 { color: #0065a3; margin-bottom: 20px; }
html body main#gallery .gallery-container .gallery-content ul { display: block; width: 100%; }
html body main#gallery .gallery-container .gallery-content ul li { display: block; width: 100%; height: 380px; margin-bottom: 20px; box-shadow: 0 0 20px #414042; overflow: hidden; }
html body main#gallery .gallery-container .gallery-content ul li:last-child { margin-bottom: 0; }
html body main#gallery .gallery-container .gallery-content ul li figure { display: block; width: 100%; height: 100%; }
html body main#gallery .gallery-container .gallery-content ul li figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
html body main#gallery .gallery-container .gallery-content ul li img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
@media screen and (min-width: 768px) { html body main#gallery .gallery-container .gallery-content ul { display: block; width: 100%; }
  html body main#gallery .gallery-container .gallery-content ul li { display: inline-block; width: calc(50% - 30px); height: 250px; margin: 0 10px; vertical-align: top; margin-bottom: 20px !important; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(even) { margin: 0; margin-left: 20px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(odd) { margin: 0; margin-right: 20px; }
  html body main#gallery .gallery-container .gallery-content ul li figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; } }
@media screen and (min-width: 1024px) { html body main#gallery { margin-bottom: 0; }
  html body main#gallery .gallery-container .gallery-content ul li { width: calc(33% - 30px); height: 210px; margin-bottom: 20px !important; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(even) { margin: 0 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(odd) { margin: 0 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(3n+1) { margin: 0; margin-right: 20px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(3n+3) { margin: 0; margin-left: 20px; } }
@media screen and (min-width: 1366px) { html body main#gallery .gallery-container .gallery-content ul li { width: calc(25% - 20px); height: 180px; margin-bottom: 20px !important; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(3n+1) { margin: 0 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(3n+3) { margin: 0 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(4n+1) { margin: 0; margin-right: 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(4n+4) { margin: 0; margin-left: 10px; } }
@media screen and (min-width: 1920px) { html body main#gallery .gallery-container .gallery-content ul li { width: calc(20% - 20px); height: 150px; margin: 0 10px; margin-bottom: 20px !important; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(3n+1) { margin: 0 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(3n+3) { margin: 0 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(4n+1) { margin: 0 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(4n+4) { margin: 0 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(5n+1) { margin: 0; margin-right: 10px; }
  html body main#gallery .gallery-container .gallery-content ul li:nth-child(5n+5) { margin: 0; margin-left: 10px; } }
html body main .gallery { display: block; position: relative; width: 100%; }
html body main .gallery .gallery-window { -webkit-transition: opacity 750ms ease; -moz-transition: opacity 750ms ease; -o-transition: opacity 750ms ease; -ms-transition: opacity 750ms ease; transition: opacity 750ms ease; position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; overflow: hidden; overflow-x: auto; }
html body main .gallery .gallery-window::-webkit-scrollbar { width: 0px; height: 0; }
html body main .gallery .gallery-window .gallery-elements { display: block; height: 100%; width: 100%; white-space: nowrap; }
html body main .gallery .gallery-window .gallery-elements .item { display: inline-block; position: relative; width: 100%; height: 100%; margin: 0; }
html body main .gallery .gallery-window .gallery-elements .item img { display: block; width: 100%; height: 80%; object-fit: contain; object-position: center; }
html body main .gallery .gallery-window .gallery-elements .item figcaption { display: block; width: 100%; color: #fff; text-align: center; white-space: initial; font-size: 12px; }
html body main .gallery ul.gallery-list { display: block; position: absolute; width: 100%; bottom: 50px; text-align: center; }
html body main .gallery ul.gallery-list li { display: inline-block; width: 10px; height: 10px; border-radius: 100%; border: 3px solid #414042; margin: 0 5px; transition: all 0.5s ease; }
html body main .gallery ul.gallery-list li.selected { border-color: #0065a3; background-color: #0065a3; }
html body main .gallery ul.arrow-gallery { display: block; position: absolute; top: 0; width: 100%; height: 50px; }
html body main .gallery ul.arrow-gallery li { display: block; position: absolute; width: 50px; height: 50px; top: 0; background-size: contain; background-position: center; background-repeat: no-repeat; }
html body main .gallery ul.arrow-gallery li.disabled { opacity: 0.2; pointer-events: none; }
html body main .gallery ul.arrow-gallery li.left { background-image: url("../layout/icon-arrow-left_blu.png"); left: 0; }
html body main .gallery ul.arrow-gallery li.right { background-image: url("../layout/icon-arrow-right_blu.png"); right: 0; }
html body main #gallery-planimetrie { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.9); opacity: 1; z-index: 9; pointer-events: all; transition: all 0.5s ease; }
html body main #gallery-planimetrie.hidden { z-index: -1; opacity: 0; pointer-events: none; }
html body main #gallery-planimetrie .gallery-window .gallery-elements .item img { width: 80%; height: calc(100% - 120px); object-fit: contain; object-position: center; margin: 60px auto; }
html body main #gallery-planimetrie .close-gallery { display: block; position: absolute; top: 20px; right: 2.5%; width: 40px; height: 40px; background-image: url("../layout/icon-close_bianco.png"); background-size: contain; background-position: center; background-repeat: no-repeat; }
html body main #gallery-planimetrie ul.gallery-list { bottom: 50px !important; }
html body main #gallery-planimetrie ul.gallery-list li { border-color: #fff !important; }
html body main #gallery-planimetrie ul.gallery-list li.selected { border-color: #0065a3 !important; }
html body main #gallery-planimetrie ul.arrow-gallery { width: 95% !important; left: 2.5% !important; }
html body main #gallery-planimetrie ul.arrow-gallery li.left { background-image: url("../layout/icon-arrow-left_bianco.png") !important; }
html body main #gallery-planimetrie ul.arrow-gallery li.right { background-image: url("../layout/icon-arrow-right_bianco.png") !important; }
@media screen and (min-width: 768px) { html body main .gallery .gallery-window .gallery-elements .item figcaption { font-size: 12px; margin: 10px auto; }
  html body main .gallery ul.gallery-list { bottom: 0; }
  html body main .gallery ul.arrow-gallery { top: calc(50% - 50px); } }
@media screen and (min-width: 1024px) { html body main .gallery .gallery-window .gallery-elements .item img { height: 80%; }
  html body main .gallery .gallery-window .gallery-elements .item figcaption { font-size: 14px; margin: 20px auto; } }
@media screen and (min-width: 1366px) { html body main .gallery .gallery-window .gallery-elements .item figcaption { margin: 25px auto; font-size: 16px; } }
@media screen and (min-width: 1920px) { html body main .gallery .gallery-window .gallery-elements .item figcaption { width: calc(100% - 100px); margin: 50px auto; font-size: 18px; } }
html body main #gallery-zoom.gallery { display: block; position: fixed; width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(0, 0, 0, 0.9); opacity: 1; z-index: 9; pointer-events: all; transition: all 0.5s ease; }
html body main #gallery-zoom.gallery.hidden { z-index: -1; opacity: 0; pointer-events: none; }
html body main #gallery-zoom.gallery .gallery-window { -webkit-transition: opacity 750ms ease; -moz-transition: opacity 750ms ease; -o-transition: opacity 750ms ease; -ms-transition: opacity 750ms ease; transition: opacity 750ms ease; position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; overflow: hidden; overflow-x: auto; }
html body main #gallery-zoom.gallery .gallery-window .gallery-elements { display: block; height: 100%; width: 100%; white-space: nowrap; }
html body main #gallery-zoom.gallery .gallery-window .gallery-elements .item { display: inline-block; position: relative; width: 100%; height: 100%; margin: 0; }
html body main #gallery-zoom.gallery .gallery-window .gallery-elements .item img { display: block; width: calc(100% - 160px); height: calc(100% - 160px); object-fit: contain; object-position: center; position: absolute; top: 80px; left: 80px; }
html body main #gallery-zoom.gallery .gallery-window .gallery-elements .item figcaption { display: block; width: calc(100% - 120px); color: #fff; text-align: center; white-space: initial; font-size: 12px; height: calc(50% - 180px); overflow: auto; position: absolute; top: calc(50% + 100px); left: 60px; }
html body main #gallery-zoom.gallery .close-gallery { display: block; position: absolute; top: 100px; right: 2.5%; width: 40px; height: 40px; background-image: url("../layout/icon-close_bianco.png"); background-size: contain; background-position: center; background-repeat: no-repeat; }
html body main #gallery-zoom.gallery ul.gallery-list li { border-color: #fff !important; }
html body main #gallery-zoom.gallery ul.gallery-list li.selected { border-color: #0065a3 !important; }
html body main #gallery-zoom.gallery ul.arrow-gallery { top: calc(50% - 25px) !important; width: 95% !important; left: 2.5% !important; }
html body main #gallery-zoom.gallery ul.arrow-gallery li.left { background-image: url("../layout/icon-arrow-left_bianco.png") !important; }
html body main #gallery-zoom.gallery ul.arrow-gallery li.right { background-image: url("../layout/icon-arrow-right_bianco.png") !important; }
@media screen and (min-width: 768px) { html body main #gallery-zoom.gallery .gallery-window .gallery-elements .item img { position: relative; top: auto; left: auto; height: calc(80% - 80px); margin: 80px auto 0; }
  html body main #gallery-zoom.gallery .gallery-window .gallery-elements .item figcaption { position: relative; top: auto; left: auto; height: calc(20% - 80px); margin-bottom: 80px; padding-right: 10px; }
  html body main #gallery-zoom.gallery ul.gallery-list { bottom: 30px; } }
@media screen and (min-width: 1024px) { html body main #gallery-zoom.gallery .gallery-window .gallery-elements .item img { width: calc(100% - 200px); }
  html body main #gallery-zoom.gallery .gallery-window .gallery-elements .item figcaption { width: calc(100% - 200px); font-size: 14px; } }
@media screen and (min-width: 1366px) { html body main #gallery-zoom.gallery .gallery-window .gallery-elements .item figcaption { font-size: 16px; } }
@media screen and (min-width: 1920px) { html body main #gallery-zoom.gallery .gallery-window .gallery-elements .item figcaption { font-size: 18px; } }
html body main table { display: block; width: 90%; max-width: 1200px; margin: 25px auto; padding: 25px 0; }
html body main table tbody { display: block; width: 100%; }
html body main table tbody tr { display: block; padding-bottom: 20px; margin-bottom: 20px; }
html body main table tbody tr td { display: block; width: 100%; max-width: 600px; margin: 0 auto; text-align: center; }
html body main table tbody tr td:nth-child(1) { margin-bottom: 20px; }
html body main table tbody tr td:nth-child(1) label { font-family: "Montserrat-Bold"; text-transform: uppercase; }
html body main table tbody tr td input { display: block; width: calc(100% - 40px); height: 30px; padding: 5px 20px; border: 1px solid #0065a3; }
html body main input[type="submit"] { display: block; width: 90%; max-width: 600px; background-color: #0065a3; border: none; margin: 50px auto; padding: 20px 0; color: #fff; text-transform: uppercase; border-radius: 50px; box-shadow: 0 0 20px #414042; }
@media screen and (min-width: 1024px) { html body main table { margin: 50px auto; padding: 50px 0; } }
html body main #search { display: block; width: 90%; margin: 0 auto; max-width: 1200px; }
html body main #search .first-info { display: block; padding: 50px 0; }
html body main #search .first-info h2 { color: #0065a3; }
html body main #search .first-info p { color: #00894f; }
html body main #search .results { display: block; width: 100%; margin-bottom: 50px; }
html body main #search .results ul { display: block; width: 100%; }
html body main #search .results ul li { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #414042; }
html body main #search .results ul li:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
html body main #search .results ul li h3 { margin-bottom: 20px; }
html body main #search .results ul li h3 a { text-decoration: none; color: #0065a3; }
html body main #search .results ul li a { color: #0065a3; }
html body main #search-leggio { display: block; position: absolute; top: 205px; right: calc(50% - 120px); width: 240px; height: 35px; z-index: 8; }
html body main #search-leggio::after { display: block; position: absolute; top: 15px; right: 15px; content: ""; width: 0px; height: 0px; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 5px solid #fff; }
html body main #search-leggio select { display: block; width: 100%; height: 100%; border-radius: 17.5px; padding: 0 20px; border: none; background-color: #00894f; color: #fff; appearance: none; text-transform: uppercase; font-size: 12px; font-family: "Montserrat-Bold"; }
@media screen and (min-width: 430px) { html body main #search-leggio { top: 155px; } }
@media screen and (min-width: 1024px) { html body main #search-leggio { top: 140px; right: 5%; } }
@media screen and (min-width: 1366px) { html body main #search-leggio { top: 150px; right: 10%; } }
@media screen and (min-width: 1920px) { html body main #search-leggio { right: 20%; } }
@media screen and (min-width: 3840px) { html body main #search-leggio { right: 25%; } }
html body main .iframe-container { position: relative; background: #0065a3; box-sizing: border-box; resize: horizontal; overflow: auto; max-width: 100%; margin-top: 85px; }
html body main .iframe-container .iframe-content { position: relative; width: 100%; padding-bottom: 100%; }
html body main .iframe-container .iframe-content iframe { display: block; position: absolute; width: 100%; height: 100%; }
html body main .iframe-container.fullscreen { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 999; }
html body main .iframe-container.fullscreen .btn.fullscreen { background-image: url("../layout/icon-fullscreen-minimize_bianco.png"); }
html body main .iframe-container.fullscreen .iframe-content { height: 100%; padding-bottom: 0; }
html body main .iframe-container .help.text { display: block; position: absolute; top: 0; bottom: 0; max-height: calc(100% - 100px); width: 90%; left: 5%; margin: auto; background-color: #fff; box-shadow: 0 0 50px #000; z-index: 1; transition: all 0.5s ease; }
html body main .iframe-container .help.text.hidden { opacity: 0; pointer-events: none; z-index: -1; }
html body main .iframe-container .help.text .help-text-container { height: calc(100% - 50px); padding: 25px 50px; text-align: center; overflow-y: auto; }
html body main .iframe-container .help.text .help-text-container .mobile, html body main .iframe-container .help.text .help-text-container .desktop { display: block; }
html body main .iframe-container .help.text .help-text-container .mobile img, html body main .iframe-container .help.text .help-text-container .desktop img { display: table; width: 50%; max-width: 80px; max-height: 80px; margin: 10px auto; }
html body main .iframe-container .help.text .help-text-container .mobile p, html body main .iframe-container .help.text .help-text-container .desktop p { margin-bottom: 50px; }
html body main .iframe-container .help.text .help-text-container .desktop { display: none; }
@media screen and (min-width: 768px) { html body main .iframe-container .iframe-content { padding-bottom: 0; aspect-ratio: 16/9; } }
@media screen and (min-width: 1024px) { html body main .iframe-container .help.text .help-text-container .mobile { display: none; }
  html body main .iframe-container .help.text .help-text-container .desktop { display: block; } }
@media screen and (min-width: 1366px) { html body main .iframe-container .help.text { width: 70%; max-height: 450px; left: 15%; }
  html body main .iframe-container .help.text .help-text-container { height: calc(100% - 60px); padding: 30px 50px; } }
html body main .screen { display: block; position: relative; height: calc(100vh - 200px); margin-top: 0px; }
html body main .screen #info-visibili, html body main .screen #parametri, html body main .screen #dati { display: none; }
html body main .screen .scheda { display: block; position: relative; height: 100%; }
html body main .screen .scheda .istruzioni-trascrizione { display: none; }
html body main .screen .scheda .contenuto-leggio { display: block; position: relative; height: 100%; }
html body main .screen .scheda .contenuto-leggio .gradient { display: none; }
html body main .screen .scheda .contenuto-leggio .nav-leggio { display: block; position: relative; height: 100%; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .leggio { display: block; position: relative; height: 100%; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .leggio #canvas { display: block; position: relative; width: calc(100% - 130px); height: calc(100% - 0px); margin: 0px auto; padding: 0 30px; overflow: hidden; z-index: 0; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .leggio #canvas .book-viewport { display: block; position: relative; height: 100%; max-height: 100% !important; max-width: 100% !important; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .leggio #canvas .book-viewport .container .book.animated .page-wrapper div div img { pointer-events: all !important; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .page-n { display: block; position: absolute; bottom: 20px; left: 0; right: 0; width: 100%; margin: auto; text-align: center; font-family: "Montserrat-Bold"; color: #0065a3; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .navigazione { display: block; position: absolute; top: calc(50% - 15px); width: 30px; height: 30px; background-repeat: no-repeat; background-position: center; background-size: contain; z-index: 10; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .navigazione.prev { display: none !important; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .navigazione.prev-2 { background-image: url("../layout/icon-arrow-left_blu.png"); left: 2.5%; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .navigazione.next { display: none !important; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .navigazione.next-2 { background-image: url("../layout/icon-arrow-right_blu.png"); right: 2.5%; }
html body main .screen .scheda .contenuto-leggio .nav-leggio .navigazione p { display: none; }
@media screen and (min-width: 1024px) { html body main .screen { margin: 85px; }
  html body main .screen .scheda .contenuto-leggio .nav-leggio .leggio #canvas { width: calc(100% - 200px); height: calc(100% - 100px); margin: 50px auto; padding: 0; }
  html body main .screen .scheda .contenuto-leggio .nav-leggio .navigazione { top: calc(50% - 25px); width: 50px; height: 50px; }
  html body main .screen .scheda .contenuto-leggio .nav-leggio .page-n { bottom: 0; } }
html body footer { display: block; width: 100%; background-color: #01375a; }
html body footer .main-footer { display: block; width: 90%; padding: 20px 5%; color: #fff; background-color: #01375a; text-align: center; line-height: 1.2em; }
html body footer .main-footer .left-side { border-bottom: 1px solid #fff; margin-bottom: 20px; padding-bottom: 20px; }
html body footer .main-footer .left-side .logo { display: block; width: 70%; max-width: 222px; height: 30px; margin: 0 auto 20px; background-image: url("../layout/logo-FNM_bianco.png"); background-size: contain; background-position: center; background-repeat: no-repeat; }
html body footer .main-footer .left-side .logo a { display: block; width: 100%; height: 100%; }
html body footer .main-footer .left-side .info-fnm h3 { margin-bottom: 10px; }
html body footer .main-footer .left-side .info-fnm p { font-size: 12px; margin-bottom: 5px; }
html body footer .main-footer .right-side .second-menu { margin-bottom: 20px; }
html body footer .main-footer .right-side .second-menu ul li { margin-bottom: 10px; }
html body footer .main-footer .right-side .second-menu ul li a { color: #fff; }
html body footer .main-footer .right-side .second-menu ul li a:hover { text-decoration: none; }
html body footer .main-footer .right-side .social-menu { border-top: 1px solid #fff; padding-top: 20px; }
html body footer .main-footer .right-side .social-menu h4 { font-family: "Montserrat-Regular"; font-size: 12px; text-transform: uppercase; margin-bottom: 10px; }
html body footer .main-footer .right-side .social-menu ul { display: block; }
html body footer .main-footer .right-side .social-menu ul li { display: inline-block; height: 40px; background-size: contain; background-repeat: no-repeat; }
html body footer .main-footer .right-side .social-menu ul li a { display: block; width: 100%; height: 100%; color: white; }
html body footer .main-footer .right-side .social-menu ul li.fb { background-image: url("../layout/icon-social-fb_bianco.png"); }
html body footer .main-footer .right-side .social-menu ul li.in { background-image: url("../layout/icon-social-in_bianco.png"); }
html body footer .main-footer .right-side .social-menu ul li.tw { background-image: url("../layout/icon-social-tw_bianco.png"); }
html body footer .main-footer .right-side .social-menu ul li.yt { background-image: url("../layout/icon-social-yt_bianco.png"); }
html body footer .copyright { display: block; color: #fff; width: 90%; padding: 10px 5%; text-align: center; background-color: #001e3b; }
html body footer .copyright h5 { line-height: 1.5em; }
html body footer .copyright h5 a { color: #fff; font-family: "Montserrat-Bold"; text-decoration: none; }
html body footer .copyright h5 a:hover { text-decoration: underline; }
@media screen and (min-width: 1024px) { html body footer .main-footer { text-align: left; max-width: 1200px; margin: 0 auto; }
  html body footer .main-footer .left-side { display: inline-block; width: calc(50% - 5px); border-bottom: 0; padding-bottom: 0; vertical-align: top; }
  html body footer .main-footer .left-side .logo { width: 222px; margin: 0 0 20px; }
  html body footer .main-footer .right-side { display: inline-block; width: calc(50% - 5px); text-align: right; vertical-align: top; }
  html body footer .main-footer .right-side .second-menu ul li { display: inline-block; margin-right: 10px; }
  html body footer .main-footer .right-side .second-menu ul li:last-child { margin-right: 0; }
  html body footer .main-footer .right-side .social-menu { border-top: 0; }
  html body footer .main-footer .right-side .social-menu ul li { margin-right: 10px; }
  html body footer .main-footer .right-side .social-menu ul li:last-child { margin-right: 0; } }
html body .btn { display: table; }
html body .btn a { display: block; width: 100%; height: 100%; }
html body .btn.menu { position: absolute; top: 20px; right: 2.5%; width: 40px; height: 40px; background-position: center; background-size: contain; background-repeat: no-repeat; background-image: url("../layout/icon-menu_blu.png"); z-index: 9; }
html body .btn.menu.active { background-image: url("../layout/icon-close_blu.png"); }
html body .btn.login { position: absolute; right: 20px; top: 0px; width: 30px; height: 30px; background-image: url(../layout/icon-avatar_blu.png); background-position: center right; background-repeat: no-repeat; background-size: contain; z-index: 9; }
html body .btn.login a { display: block; width: 100%; height: 100%; text-decoration: none; }
html body .btn.login a h3 { color: #0065a3; text-align: right; font-family: "Montserrat-Bold"; padding-right: 30px; font-size: 16px; line-height: 25px; }
html body .btn.museo, html body .btn.mils { position: absolute; left: calc(50% - 150px); bottom: 30%; backdrop-filter: saturate(100%) blur(5px); -webkit-backdrop-filter: saturate(100%) blur(5px); box-shadow: 0 0 20px rgba(0, 0, 0, 0.7); }
html body .btn.museo a, html body .btn.mils a { width: 280px; padding: 10px 5px; text-decoration: none; background: linear-gradient(90deg, rgba(0, 137, 79, 0.7) 0%, rgba(174, 204, 82, 0.7) 100%); }
html body .btn.museo a h2, html body .btn.mils a h2 { color: #fff; font-size: 18px; line-height: 1.2em; text-transform: uppercase; text-align: center; }
html body .btn.mils { bottom: 5%; }
html body .btn.mils a { background: none; background-color: rgba(1, 55, 90, 0.7); }
html body .btn.plus { width: 50px; height: 50px; margin: 0 auto; border-radius: 100%; border: 5px solid #0065a3; background-color: #fff; box-shadow: 0 0 20px #414042; }
html body .btn.plus a { display: block; width: 100%; height: 100%; background-image: url("../layout/icon-plus_verde.png"); background-size: 40px; background-repeat: no-repeat; background-position: center; }
html body .btn.close { position: absolute; width: 50px; height: 50px; top: -35px; right: -35px; border-radius: 100%; background-image: url("../layout/icon-close_bianco.png"); background-position: center; background-repeat: no-repeat; background-size: 50%; background-color: #0065a3; }
html body .btn.back { display: block; display: none; max-width: 1200px; height: 40px; margin: 0px auto; }
html body .btn.back a { display: table; text-decoration: none; width: auto; background-image: url("../layout/icon-arrow-small-left_grigio.png"); background-position: left center; background-repeat: no-repeat; background-size: 40px; padding-left: 40px; }
html body .btn.back a h3 { color: #414042; font-family: "Montserrat-Regular"; font-size: 14px; line-height: 40px; }
html body .btn.photo, html body .btn.video, html body .btn.panoramic, html body .btn.room { color: #fff; background-color: #00894f; border-radius: 50px; box-shadow: 0 0 20px #414042; transition: all 0.5s ease; }
html body .btn.photo:hover, html body .btn.video:hover, html body .btn.panoramic:hover, html body .btn.room:hover { background-color: #0065a3; }
html body .btn.photo a, html body .btn.video a, html body .btn.panoramic a, html body .btn.room a { text-decoration: none; }
html body .btn.photo a h3, html body .btn.video a h3, html body .btn.panoramic a h3, html body .btn.room a h3 { font-family: "Montserrat-Regular"; text-transform: uppercase; color: #fff !important; padding: 20px 40px; line-height: 30px; margin: 0 !important; }
html body .btn.photo a h3::after, html body .btn.video a h3::after, html body .btn.panoramic a h3::after, html body .btn.room a h3::after { display: inline-block; content: ""; width: 30px; height: 30px; margin-left: 10px; background-image: url("../layout/icon-photo_bianco.png"); background-size: 30px; background-position: center; background-repeat: no-repeat; vertical-align: text-bottom; }
html body .btn.panoramic { display: none !important; }
html body .btn.video a h3::after { background-image: url("../layout/icon-video_bianco.png"); }
html body .btn.panoramic a h3::after { background-image: url("../layout/icon-panoramica_bianco.png"); }
html body .btn.arrows { display: block; width: 50px; height: 50px; background-size: 40px; background-position: center; background-repeat: no-repeat; transition: all 0.5s ease; }
html body .btn.arrows.colored { background-color: #0065a3; }
html body .btn.arrows.colored.left { background-image: url("../layout/icon-arrow-left_bianco.png"); }
html body .btn.arrows.colored.right { background-image: url("../layout/icon-arrow-right_bianco.png"); }
html body .btn.arrows.left { background-image: url("../layout/icon-arrow-left_blu.png"); }
html body .btn.arrows.right { background-image: url("../layout/icon-arrow-right_blu.png"); }
html body .btn.arrows.disabled { opacity: 0.2; pointer-events: none; }
html body .btn.collapse { display: table; width: auto; height: 50px; background-size: 50px; background-image: url("../layout/icon-collapse-plus_blu.png"); background-position: left center; background-repeat: no-repeat; transition: all 0.5s ease; }
html body .btn.collapse.opened { background-image: url("../layout/icon-collapse-minus_blu.png"); }
html body .btn.collapse a { text-decoration: none; }
html body .btn.collapse a h3 { color: #0065a3; padding-left: 60px; line-height: 50px; }
html body .btn.stazione { display: block; border-radius: 50px; background-color: #0065a3; box-shadow: 0 0 20px #414042; z-index: 8; transition: all 0.5s ease; }
html body .btn.stazione:hover { background-color: #00894f; }
html body .btn.stazione a { text-decoration: none; }
html body .btn.stazione a h3 { color: #fff; padding: 20px 40px; }
html body .btn.fullscreen { position: absolute; bottom: 20px; right: 20px; width: 50px; height: 50px; border-radius: 100%; background-color: #00894f; background-size: 30px; background-image: url("../layout/icon-fullscreen_bianco.png"); background-position: center; background-repeat: no-repeat; box-shadow: 0 0 20px #000; z-index: 8; transition: all 0.5s ease; display: none; }
html body .btn.help { position: absolute; bottom: 90px; right: 20px; width: 50px; height: 50px; border-radius: 100%; background-color: #0065a3; background-size: 30px; background-image: url("../layout/icon-help_bianco.png"); background-position: center; background-repeat: no-repeat; box-shadow: 0 0 20px #000; z-index: 8; transition: all 0.5s ease; display: none; }
@media screen and (min-width: 1024px) { html body .btn.museo, html body .btn.mils { bottom: 15%; left: calc(35% - 170px); }
  html body .btn.museo a, html body .btn.mils a { width: 320px; }
  html body .btn.museo a h2, html body .btn.mils a h2 { font-size: 21px; }
  html body .btn.mils { left: calc(65% - 170px) !important; } }
@media screen and (min-width: 1350px) { html body .btn.museo, html body .btn.mils { left: calc(35% - 185px); }
  html body .btn.museo a, html body .btn.mils a { width: 350px; }
  html body .btn.museo a h2, html body .btn.mils a h2 { font-size: 24px; }
  html body .btn.mils { left: calc(65% - 185px) !important; } }
@media screen and (min-width: 3840px) { html body .btn.museo, html body .btn.mils { left: calc(35% - 225px); }
  html body .btn.museo a, html body .btn.mils a { width: 450px; }
  html body .btn.museo a h2, html body .btn.mils a h2 { font-size: 32px; }
  html body .btn.mils { left: calc(65% - 225px) !important; } }
html body div#CookielawBanner { display: block; position: fixed; top: 0; left: 0; width: 100%; z-index: 9999; }
html body div#CookielawBanner::after { display: block; position: fixed; top: 0; left: 0; content: ""; width: 100%; height: 100%; background-color: rgba(0, 30, 59, 0.9); z-index: -1; }
html body div#CookielawBanner .container { display: block; position: relative; width: 90%; padding: 50px 5%; text-align: center; background-color: #fff; }
html body div#CookielawBanner .container h2 { font-family: "Montserrat-Bold"; color: #0065a3; margin-bottom: 20px; }
html body div#CookielawBanner .container p a.btn { width: 200px; height: 40px; border-radius: 20px; margin: 20px auto 0; color: #fff; background-color: #00894f; line-height: 40px; text-decoration: none; text-transform: uppercase; box-shadow: 0 0 20px rgba(0, 0, 0, 0.5); }
html body audio { height: 35px; border-radius: 17.5px; box-shadow: 0 0 20px #414042; }
html body #audio { width: 100%; max-width: none; margin: 0 auto; padding: 25px 0; }
html body #audio h3 { display: table; max-width: 1200px; font-size: 18px; text-align: center; margin: 0 auto 10px; color: #0065a3; font-family: "Montserrat-Regular"; text-transform: uppercase; }
html body #audio audio { display: table; margin: 0 auto; max-width: 1200px; }

sup { font-size: 0.7em; line-height: 1em; vertical-align: top; }

i, em { font-style: italic; }

b, strong { font-weight: 600; }

h1 { font-family: "Montserrat-Bold"; font-size: 30px; }

h2 { font-family: "Montserrat-Bold"; font-size: 24px; }

h3 { font-family: "Montserrat-Bold"; font-size: 21px; }

h4 { font-family: "Montserrat-Bold"; font-size: 12px; }

h5 { font-family: "Montserrat-Regular"; font-size: 10px; }

p, figcaption { font-family: "Montserrat-Regular"; font-size: 14px; line-height: 1.85em; }

@media screen and (min-width: 1024px) { p, figcaption { font-size: 16px; } }
@media screen and (min-width: 1366px) { h1 { font-size: 40px; }
  h2 { font-size: 32px; }
  h3 { font-size: 26px; }
  h4 { font-size: 14px; }
  h5 { font-size: 10px; }
  p, figcaption { font-size: 18px; } }
