@font-face {
 font-family:'Lexend';
 src:url('/fonts/Lexend-VariableFont_wght.ttf');
}

:root {
 --bianco:#FFF;
 --nero:#000;
 --sfondo:#FFF;
 --testo:#000;
 --link:#006EAF;
 --link-chiaro:#6DA6CB;
 --ordarchvi-blu:#4197D0;
 --blu-scuro:#006EAF;
 --ordarchvi-grigio:#55595C;
 --grigio-chiaro:#F8F8F8;
 --grigio-scuro:#333;
 --width-mobile:95%;
 --width-smalldesktop:980px;
 --width-desktop:1180px;
 --text-font-size:18px;
}

html, body { margin:0; padding:0; color:var(--testo); background-color:var(--sfondo); font-family:Lexend, Arial, sans-serif; font-weight:200; font-size:var(--text-font-size); }
button { font-family:Lexend, Arial, sans-serif; font-weight:200; font-size:var(--text-font-size); }
a { text-decoration:none; color:var(--link); }
a:hover { text-decoration:underline; }
h1 { margin:0 0 1rem 0; padding:0; font-size:1.8rem; }
h2 { font-size:1.5rem; }
h3 { font-size:1.3rem; }
h4 { font-size:1rem; }
h5 { font-size:0.8rem; }
h6 { font-size:0.7rem; }
img { display:block; margin:0; padding:0; max-width:100%; }
img.icona-inline { display:inline-block; height:1em; }
figure { display:block; margin:0; padding:0; max-width:100%; }
figcaption { margin:1rem 0; }
address { font-style:normal; }
abbr { text-decoration:none; cursor:help; }
fieldset { margin:2rem 0; }
legend { font-weight:bold; font-size:1.2rem; }
fieldset.input { display:block; margin:0 0 0.6rem 0; padding:0; border:none; }
fieldset.input legend { display:block; margin:0 0 0.2rem 0; padding:0; font-size:1rem; }
.form-control { margin:0 0 0.6rem 0; }
.input-input input[type=text], .input-input input[type=password], .input-input input[type=email] { width:95%; }
.subform h3 { margin:1em 0 0.5rem 0; font-size:1.2rem; }
.subform h3:first-of-type { margin-top:0; }
h3.input-label { margin:0 0 0.2rem 0; font-size:1rem; }
.alert-danger, .errore, .error { color:red; }
.hidden { display:none !important; }
table { margin:1rem 0; paddig:0; border-spacing:0; border-collapse:collapse; border:2px solid var(--nero); }
th, td { padding:0.5em; border:1px solid var(--nero); text-align:left; }
thead th { text-align:center; }
table .number { text-align:right; }
.single-row { display:flex; gap:1rem; }
.cols2 { columns:2; }
a.external { padding-right:1.5em !important; background-image:url("/images/icons/logout.svg"); background-repeat:no-repeat; background-position:right center; background-size:1em; }
.hp { display:none; }

nav a { color:var(--testo); }
nav a:hover { color:var(--link); }
/* .withmenu, .withoutmenu { max-width:85%; max-width:calc(95% - 4rem); margin:0 auto -1px auto; padding:2rem; } */
.fullscreen { width:100%; margin:0; padding:0; }

body { background:url("/images/banner.jpg") center top no-repeat; background-size:100%; }
article { background-color:var(--sfondo); padding:2rem; }
header { position:relative; }
header.withAdminBar { padding-top:2.5rem; }
.withmenu, .withoutmenu, #navigation-path, footer nav, footer address { margin:0 auto; padding:0; }
header h2 { width:11rem; font-weight:200; font-size:0.8rem; margin:0; padding:1rem; grid-area:logo; }
header h2 a { color:var(--bianco); font-weight:400; text-shadow:0 0 5px var(--nero); }
header h2 img { position:relative; z-index:3; }

#navigation-menu-container ul { display:block; margin:0; padding:0; }
#navigation-menu-container ul li { display:block; margin:0; padding:0; list-style-type:none; }
#navigation-menu li a, #navigation-menu li button { display:block;  margin:0; }
#navigation-menu > li > a, #navigation-menu > li > button { line-height:3rem; padding:0 1em; text-transform:uppercase; font-size:1rem; }
#navigation-menu > li > button { width:100%; }
#navigation-menu > li:first-child { border-left:none; }
#navigation-menu > li > a:hover, #navigation-menu > li > button:hover { color:var(--bianco); text-decoration:none; }

#navigation-menu > li.sel > a, #navigation-menu > li.sel > button { color:var(--link); }
#navigation-menu ul { background-color:var(--grigio-chiaro); }
#navigation-menu li li.selected a { color:var(--link); font-weight:bold; }
#navigation-menu li li a { padding:0.5rem 1rem; }
#navigation-menu li li a:hover, #navigation-menu li li.sel a { background-color:var(--grigio-chiaro); }

#navigation-path { grid-area:path; padding:0; }
#navigation-path ul { display:flex; margin:0 auto; padding:0 2rem; background-color:var(--link); color:var(--sfondo); }
#navigation-path li { display:block; margin:0; padding:1rem 0.5rem 1rem 0; }
#navigation-path li:before { content:">"; padding-right:0.5rem; }
#navigation-path a { color:var(--sfondo); }
.fullscreen .blockcontent, .fullscreen .blocktitle h2, .area { width:95%; margin-left:auto; margin-right:auto; }
.withmenu aside { padding:2rem; background-color:var(--sfondo); }
.withmenu aside ul { display:block; margin:0; padding:0; }
.withmenu aside ul ul { display:block; margin:0 0 0 1rem; padding:0; }
.withmenu aside li { display:block; margin:0; padding:0; }
.withmenu aside li a { display:block; padding:0.8rem 0; border-bottom:1px solid var(--link); }
.withmenu aside li.selected { font-weight:bold; }
.news-list { display:flex; margin:0; padding:0; gap:2rem; flex-wrap:wrap; }
.news-list li { display:block; margin:0; padding:0; }
.form-field h3 { margin:0; line-height:1.5rem; height:1.5rem; font-size:1.5rem; }
ul.documents-multilanguage { display:block; columns:3; margin:0; padding:0; }
.documents-multilanguage li { display:block; margin:0.5em 0; padding:0 0 0 32px; background:transparent url('/images/icons/file_download.svg') left center no-repeat; background-size:1em; }
#page-gallery { margin:2rem 0; }
#page-gallery ul { display:flex; margin:0; padding:0; flex-direction:column; flex-wrap:wrap; gap:1rem; justify-content:flex-start; align-items:center; }
#page-gallery li { display:block; margin:0; padding:0; width:100%; }
#page-gallery li img { display:block; width:100%; }
#zoom { display:flex; justify-content:center; align-items:center; position:fixed; left:0; right:0; top:0; bottom:0; margin:0; padding:0; background-color:rgba(0,0,0,1); }
#zoom img { max-width:100%; max-height:100%; border:none; }
#zoom.hidden { display:none; }

#primo-piano { color:var(--bianco); background-color:var(--blu-scuro); justify-content:space-between; }
#primo-piano a { color:var(--bianco); }
#primo-piano.withimage { display:flex; }
#primo-piano h4 { margin:0; padding:0; font-size:0.8rem; color:var(--grigio-chiaro); }
#primo-piano h3 { margin:0; padding:0; font-size:1.1rem; }
#primo-piano h2 { margin:0 0 0.3rem 0; padding:0; font-size:1.4rem; }
#primo-piano p { color:var(--bianco); }

#elenco-notizie { display:flex; margin:0; padding:0; gap:2rem; flex-wrap:wrap; }
.notizia { display:block; margin:0; padding:0; width:100%; }
.notizia.withimage { display:flex; }
/* .notizia-testo { padding:1rem; } */
.notizia h4 { margin:0; padding:0; font-size:0.7rem; color:var(--grigio-scuro); }
.notizia h3 { margin:0; padding:0; font-size:0.9rem; }
.notizia h2 { margin:0 0 0.3rem 0; padding:0; font-size:1.1rem; }
.notizia p { color:var(--testo); }
.notizia img { max-width:initial; }

.paginatore { display:flex; margin:1rem 0; padding:0.1rem 1rem; background-color:var(--grigio-chiaro); }
.paginatore h4 { margin:0; padding:0.2rem 1rem 0.2rem 0; }
.paginatore ul { display:flex; margin:0; padding:0; gap:1rem; background-color:var(--grigio-chiaro); }
.paginatore li { display:block; margin:0; padding:0; }
.paginatore a { display:block; padding:0.2rem; color:var(--link); }
.paginatore strong { display:block; padding:0.2rem 0.5rem; }

footer { position:relative; padding:1rem 0 2rem 0; background-color:var(--grigio-scuro); color:var(--bianco); border-top:5px solid var(--ordarchvi-blu); }
footer a, footer a:hover { color:var(--link-chiaro); }
footer h2 { display:flex; align-items:center; gap:2rem; margin:0; padding:1rem 0 0 0; font-size:1rem; }
footer h2 img, footer h2 span { display:block; }
footer h2 img { height:3rem; }
footer nav ul { display:block; margin:1rem 0; padding:1rem 0 0 0; }
footer nav ul li { display:block; margin:0; padding:0.5rem 0; }

@media screen {
 .sr-only { display:none; }
}

@media screen and (max-width:575px) {
}

@media screen and (min-width:576px) {
}

@media screen and (max-width:767px) {
  .withmenu aside { margin:0.5rem; }
  .news-list li { width:100%; }
}

@media screen and (min-width:768px) {
 .withmenu { display:flex; gap:2rem; flex-direction:row-reverse; }
 .withmenu article { width:75%; width:calc(75% - 2rem); }
 .withmenu aside { width:25%; }
 .news-list li { width:45%; width:calc(50% - 1rem); }
 #page-gallery ul { display:flex; margin:0; padding:0; flex-direction:row; }
 #page-gallery li { width:45%; width:calc(50% - 1rem); }
}

@media screen and (max-width:991px) {
 header h2 { z-index:1; }
 #navigation-menu-handler { position:absolute; right:0.5rem; top:0; display:block; width:3.8em; height:3.8em; padding:0; background:#FFF; color:var(--testo); border:none; }
 #navigation-menu-handler img { display:block; width:100%; height:100%; z-index:2; }
 #navigation-menu-container { position:absolute; top:0; right:0; left:0; }
 #navigation-menu-container #navigation-menu { position:relative; z-index:3; margin:3.8rem 0 0 0; padding:0; border-bottom:5px solid var(--ordarchvi-blu); }
 #navigation-menu > li > a, #navigation-menu > li > button { border-top:1px solid var(--nero); }
 #navigation-menu li { margin:0; padding: 0 1em; border-top:1px solid var(--link); list-style-type:none; }
 #navigation-menu li a { display:block; padding:0 1em; }
 #navigation-menu > li > a, #navigation-menu li button { padding:0; border:none; text-transform:uppercase; background-color:var(--grigio-chiaro); color:var(--testo); text-align:center; }
 #navigation-menu li button:hover { background-color:var(--grigio-chiaro); color:var(--testo); }
 #navigation-path { padding:0; width:100%; }
 #navigation-path ul { padding:0 1rem; }
 footer nav, footer address { width:100%; }
 article { wodth:95%; width:calc(100% - 2rem); padding:1rem; }
 footer { padding:1rem 1rem 2rem 1rem; }
}

@media screen and (min-width:992px) {
 header { display:grid; grid-template-columns:13rem auto; gap:1rem; grid-template-areas:"logo navigation" "path path"; align-items:center; }
 #navigation-menu-container { grid-area:navigation; }
 #navigation-menu-handler { display:none; }
 #navigation-menu-container > ul { position:relative; display:flex; gap:0; justify-content:flex-end; font-size:0.8rem; }
 #navigation-menu li { padding:0; }
 #navigation-menu > li { line-height:1.5rem; border-left:1px solid var(--bianco); }
 #navigation-menu > li.selected { background-color:var(--grigio-chiaro); }
 #navigation-menu > li > a, #navigation-menu > li > button { color:var(--bianco); background-color:var(--grigio-scuro); border:1px solid var(--grigio-scuro); }
 #navigation-menu > li.selected > a, #navigation-menu > li:hover > a, #navigation-menu > li.selected > button, #navigation-menu > li:hover > button, #navigation-menu > li > button[aria-expanded=true] { background-color:var(--grigio-chiaro); color:var(--nero); }
 #navigation-menu > li.selected > a, #navigation-menu > li.selected > button, #navigation-menu > li > button[aria-expanded=true] { border-bottom:1px solid var(--grigio-chiaro); }
 #navigation-menu ul { position:absolute; bottom:-3rem; right:0; height:3rem; line-height:2rem; display:flex; margin:0; padding:0; background-color:var(--grigio-chiaro); }
 #navigation-menu li li { white-space:nowrap; }
 .form-flex { display:flex; gap:1rem; }
 #navigation-path, .withmenu, .withoutmenu, footer div { width:var(--width-smalldesktop); }
 footer div { display:flex; margin:0 auto; gap:3rem; }
 #pagePicture { display:block; max-width:50%; float:right; padding:0 0 1rem 1rem; }
 #page-gallery li { width:30%; width:calc(32% - 1rem); }
 .notizia { width:45%; width:calc(50% - 2rem); }
}

@media screen and (min-width:1200px) {
 #navigation-menu { font-size:0.9rem; }
 #navigation-path, .withmenu, .withoutmenu, footer div  { width:var(--width-desktop); }
 #page-gallery li { width:22%; width:calc(24% - 1rem); }
}

@media screen and (min-width:1400px) {
 #navigation-menu > li > ul { left:-8rem; }
 .news-list li { width:30%; width:calc(32% - 1rem); }
}

@media print {
 .sr-only { display:none; }
 header { display:none; }
 footer { display:none; }
}

/* Blocks */
.block { padding:1.5rem 0; }
.blocktitle { padding:1.5rem 0 0 0; }
.block img { display:block; }
.block > h2:first-child, .block > h3:first-child, .blocktext > h2:first-child, .blocktext > h3:first-child, .blocktitle h2, .blockcontent > h2:first-child, .blockcontent > h3:first-child { margin-top:0; }
figure.blockimage { margin:0; padding:0; }
figure.blockimage figcaption { margin:0; padding:1em 0 0 0; text-align:center; }
.blocktr .blockimage img, .blocktl .blockimage img, .blockimages .blockimage img, .block4images .blockimage img { display:block; width:100%; }
.blocktu .blockimage img, .blocktd .blockimage img { display:block; max-width:100%; }
.blocktext h2:first-child { margin-top:0; }
.block-video iframe { width:100%; height:100%; aspect-ratio:16/9; }
#page-files dt, .block-documents dt { display:block; margin:0 0 1rem 0; padding:0; }
#page-files dd, .block-documents dd { display:block; margin:-1rem 0 1rem 4rem; padding:0;}
#page-files dt a, .block-documents dt a { display:flex; gap:1rem; align-items:center; }
#page-files dt img, .block-documents dt img { display:block; height:2rem; }
#page-files dt span, .block-documents dt span { display:block; }
.blockicon img { display:block; height:4rem; }
figure.blockimage, .blockimage figure { margin:0; padding:0; }
figure.blockimage img, .blockimage figure img { display:block; max-width:100%; margin:0; padding:0; }
.blockimgtext figure.blockimage img, .blockimage figure img { margin:0 auto; }
.blockimgtext .blocktext { text-align:center; }
.blockimgtext .blockicon img { margin:0 auto; }
.blockimgtext .blockcta { margin:1em 0 0 0; line-height:3em; font-size:0.8rem; text-align:center; }
.blockimgtext .blockcta a { border:1px solid var(--link); background-color:var(--grigio-chiaro); text-transform:uppercase; padding:1.25em; font-weight:bold; }
.blockimgtext .blockcta a:hover { background-color:var(--sfondo); }
.blockicontext .subblocks { text-align:center; }
.blockicontext .subblocks img { max-height:10rem; margin:0 auto; }
ul.subblocks { display:block; margin:0; padding:0; }
.subblocks > li { display:block; margin:0; padding:0; }
.fullscreen .block-iconeutilita .blockcontent { width:100%; margin-left:0; margin-right:0;  }
.block-with-subblocks.block-iconeutilita .subblocks.grid { display:flex; gap:1rem; flex-wrap:wrap; justify-content:center; align-items:stretch; padding:0 1rem; }
.block-with-subblocks.block-iconeutilita .subblocks.grid img { height:5rem; }
.block-with-subblocks.block-iconeutilita li { width:10rem; padding:0.5rem; border:1px solid #D1F66C; border-radius:8px; }
.block-with-subblocks.block-iconeutilita li:hover { border-color:#2B750C; transition:border .4s; }
.block-with-subblocks.block-iconeutilita figcaption { margin:0; }
.block-with-subblocks.block-iconeutilita h3 { margin-bottom:0; font-size:1rem; }
.children-list { display:block; margin:0; padding:0; }
.children-list li { display:block; margin:0; padding:0.5rem 0; }
.children-list li h3 { margin:0; padding:0; font-size:1rem; }
.banner-container { padding:1rem 0; }
.banner figure figcaption { display:block; padding:0 1rem; }
.blockpagefiles li { list-style-type:none; margin:0.5em 0; }
.blockpagefiles li a { padding-left:32px; background:left center url('/images/icons/md40/file/file_download.svg') no-repeat; }
.blockservices.block-with-subblocks .subblocks { flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:1rem; }
.blockservice { width:100%; }
.blockservice h2 { color:var(--sfondo); background-color:var(--link); border-radius:5px; display:flex; padding:0.5rem 1em; gap:2em; align-items:center; }
.blockservice h2 a { color:var(--sfondo); }
.blockservice h2 img { height:2em; }
.blockservice ul { display:block; margin:1em 0; padding:0; }
.blockservice li { display:block; margin:0.5em 0; padding:0 0 0 32px; background:left center url('/images/icons/md40/navigation/arrow_forward.svg') no-repeat; font-weight:bold; }
.bannerimg a { display:block; }
.bannerimg figure { position:relative; }
.bannerimg figure img { max-width:initial; }
.bannerimg figcaption { position:absolute; left:0; top:0; right:0; bottom:0; display:flex; flex-direction:column; justify-content:space-evenly; gap:2rem; text-shadow:1px 1px 1em #888; }
.bannerimg figcaption h2, .bannerimg figcaption p { margin:0 auto; padding:0; text-align:center; }
.bannerimg figcaption h2 { font-size:3rem; }
.bannerimg figcaption p { font-size:1.8rem; }

@media only screen and (min-width:768px) {
  .block { padding:3rem 0; }
  .blocktitle { padding:3rem 0 0 0; margin-bottom:-3rem; }
  .block-with-subblocks .subblocks { display:flex; gap:6%; justify-content:space-around; align-items:center; flex-wrap:wrap; }
  .block-with-subblocks .subblocks.grid { display:grid; grid-template-columns:repeat(2, 1fr); }
  .block-with-subblocks .subblocks.grid.grid-3-cols { grid-template-columns:repeat(3, 1fr); }
  .blockicontext .subblocks { align-items:flex-start; }
}

@media only screen and (min-width:992px) {
  .fullscreen .blockcontent, .fullscreen .blocktitle h2, .area { width:980px; margin-left:auto; margin-right:auto; }
  .blockcols .blockcontent { display:flex; gap:3rem; }
  .blocktr { flex-direction:row-reverse; }
  .blocktl { flex-direction:row; }
  .blocktu { display:flex; flex-direction:column; }
  .blocktd { display:flex; flex-direction:column-reverse; }
  .blocktr .blocktext, .blocktl .blocktext, .blockcols .blocktext { width:50%; }
  .blocktr .blockimage, .blocktl .blockimage, .blockimages .blockimage { width:50%; }
  .blockservice { width:45%; width:calc(50% - 2.1em); }
  .banner { width:100%; }
  .banner figure { display:flex; align-items:center; gap:2rem; margin-left:auto; margin-right:auto; }
  .fullscreen .banner figure { width:980px; }

  .banner figure img { display:block; max-width:280px; }
  .banner figure figcaption h2 { margin:0 0 0.5rem; font-size:2.5rem; }
  .banner figure figcaption p { margin:0; font-size:1.5rem; }
  .bannerimg figure img { max-width:100%; }
}

@media screen and (min-width:1200px) {
  .fullscreen .blockcontent, .fullscreen .blocktitle h2, .area { width:1180px; }
  .fullscreen .banner figure { width:1180px; }
}

@media screen and (min-width:1800px) {
  .block-with-subblocks.block-iconeutilita .subblocks.grid { grid-template-columns:repeat(9, 1fr); }
  .blockservice { width:22%; width:calc(25% - 2.1em); }
  .bannerimg figure img { width:100%; }
}

/* Amministrazione */
#adminBar { display:flex; margin:0; padding:0 1rem; position:absolute; top:0; left:0; right:0; height:2rem; gap:1rem; background-color:#FFF8F8; border:2px solid red; justify-content:space-between; align-items:center; }
#adminBar h4 { margin:0; padding:0; }
#adminBar ul { display:flex; margin:0; padding:0; gap:1rem; justify-content:space-around; align-items:center;  }
#adminBar li { display:block; margin:0; padding:0; }
#adminBar a { color:#00F; }
