/* cyrillic-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaSTbQWt4N.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaSTbQWt4N.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaSTbQWt4N.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaSTbQWt4N.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* math */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaSTbQWt4N.woff2) format('woff2');
  unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaSTbQWt4N.woff2) format('woff2');
  unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaSTbQWt4N.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaSTbQWt4N.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnkaSTbQWg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBHMdazTgWw.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBHMdazTgWw.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBHMdazTgWw.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBHMdazTgWw.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* math */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBHMdazTgWw.woff2) format('woff2');
  unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBHMdazTgWw.woff2) format('woff2');
  unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBHMdazTgWw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBHMdazTgWw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(../font/Roboto/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBHMdazQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}/* vietnamese */
@font-face {
  font-family: 'Aleo';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(../font/Aleo/c4mh1nF8G8_swAj53BVssIV1_Jq-.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Aleo';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(../font/Aleo/c4mh1nF8G8_swAj53RVssIV1_Jq-.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Aleo';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(../font/Aleo/c4mh1nF8G8_swAj50xVssIV1_A.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Aleo';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../font/Aleo/c4mv1nF8G8_swALJ0R9rkodF_Q.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Aleo';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../font/Aleo/c4mv1nF8G8_swAPJ0R9rkodF_Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Aleo';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../font/Aleo/c4mv1nF8G8_swA3J0R9rkoc.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.body_wrapper {
	height: 100%; display: flex; flex-direction: column; flex-grow: 1
}
#cookiebanner-status {
	position: fixed;
	bottom: 0;
	right: 0;
	opacity: 0;
}
#cookiebanner-status + label {
	position: fixed;
	bottom: 3px;
	right: 3px;
	background: #fff;
	padding: 4px;
	cursor: pointer;
	z-index: 99998;
}
#cookiebanner {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.4);
	z-index: 99999;
	display: none;
	align-items: center;
	justify-content: center;
}
#cookiebanner-status:checked + label + #cookiebanner {
	display: flex;
}
#cookiebanner > div {
	background: #fff;
	padding: 20px;
	text-align: center;
}
#cookiebanner > div button {
	display: inline-block;
	padding: 10px;
	width: 120px;
	border: 1px solid;
	cursor: pointer;
}
:root {
	--background_scuro: #002e67ff;
	--background_principale: #ffffffff;
	--background_scuro_testo: #ffffffff;
	--background_scuro_titoli: #ffffffff;
	--background_chiaro: #edf1f4ff;
	--background_chiaro_testo: #636363ff;
	--background_chiaro_titoli: #002e67;
	--background_grigio: #dfe4e8ff;
	--background_grigio_testo: #636363ff;
	--background_grigio_titoli: #002e67;
	--background_medio: #0059c3ff;
	--background_medio_testo: #ffffffff;
	
	--colore_testi: #636363ff;
	--colore_titoli: #002e67;
	--colore_1: #0059c3ff;
	--colore_footer: #99cbfd;
	--elementi_colore: #fff;
	--elementi_background: #3694f2ff;
	--icone_attive: #3694f2ff;
	--bordo_grigio: #bdcddd;
	
	
	--font_testo-family: Roboto;
	--font_testo-size: 18px;
	--font_testo-weight: 300;
	--font_testo-lineheight: 1.3em;
	--font_h1-family: Aleo;
	--font_h1-size: 70px;
	--font_h1-weight: 300;
	--font_h1-lineheight: 1.15em;
	--font_h2-family: Aleo;
	--font_h2-size: 48px;
	--font_h2-weight: 300;
	--font_h2-lineheight: 1.15em;
	--font_h3-family: Aleo;
	--font_h3-size: 30px;
	--font_h3-weight: 400;
	--font_h3-lineheight: 1.15em;
	--font_h4-family: Aleo;
	--font_h4-size: 20px;
	--font_h4-weight: 400;
	--font_h4-lineheight: 1.15em;
	--font_testo_mobile-family: Roboto;
	--font_testo_mobile-size: 17px;
	--font_testo_mobile-weight: 300;
	--font_testo_mobile-lineheight: 1.2em;
	--font_h1_mobile-family: Aleo;
	--font_h1_mobile-size: 35px;
	--font_h1_mobile-weight: 300;
	--font_h1_mobile-lineheight: 1.15em;
	--font_h2_mobile-family: Aleo;
	--font_h2_mobile-size: 28px;
	--font_h2_mobile-weight: 300;
	--font_h2_mobile-lineheight: 1.15em;
	--font_h3_mobile-family: Aleo;
	--font_h3_mobile-size: 22px;
	--font_h3_mobile-weight: 400;
	--font_h3_mobile-lineheight: 1.2em;
	--font_h4_mobile-family: Aleo;
	--font_h4_mobile-size: 20px;
	--font_h4_mobile-weight: 400;
	--font_h4_mobile-lineheight: 1.15em;
}


html {
	position: relative;
	height: 100%;
	background: #eee;
	scroll-behavior: smooth;
}
body {
	background-color: var(--background_scuro);
	color: var(--background_scuro_testo);
	position: relative;
	margin: 0;
	min-height: 100%;
	display: flex;
	flex-direction: column;
	font-family: var(--font_testo-family);
	font-size: var(--font_testo-size);
	font-weight: var(--font_testo-weight);
	line-height: var(--font_testo-lineheight);
	background-position: top center;
	background-size: 100%;
	background-repeat: no-repeat;
}
body::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: var(--background_scuro);
	mask-image: linear-gradient(to bottom, #ffffffE3 40vw, #ffffffff 60vw)
}
.body_wrapper {
	z-index: 1;
}
a {
	color: inherit;
	text-decoration: none;
}
b, strong {
	font-weight: 600;
}
sup {
	vertical-align: top;
	font-size: 0.7em;
}
ol li {
	margin: 10px 0;
}
ol ol li { list-style-type: lower-alpha; }
ol ol ol li { list-style-type: upper-roman; }

.main_wrapper {
	flex-grow: 1;
	display: flex; 
	flex-direction: column;
	overflow: hidden;
}

.wrapper_larghezza {
	width: 1200px;
	margin-left: auto !important;
	margin-right: auto !important;
}
.wrapper_larghezza .wrapper_larghezza {
	width: 100%; /* da auto, v. blocco insegnante*/
	box-sizing: border-box;
} 
h1, h2, h3, h4, h5 {
	margin: 0;
}

.banner_header_wrap {
	background-color: var(--background_medio);
	color: var(--background_medio_testo);
	padding: 5px 0;
	font-size: 0.9em;
}
.banner_header {
	display: flex;
	align-items: center;
	gap: 10px;
}
.banner_header ul.social {
	list-style: none;
	margin: 0 20px 0 0;
	padding: 0;
	display: flex;
	gap: 4px;
}
.banner_header .social li a {
	padding: 5px;
	display: flex;
}
.banner_header .social svg {
	height: 20px;
}
.banner_header .social svg * {
	fill: var(--background_medio_testo);
}

.banner_header .cerca_wrapper {
	flex-grow: 1;
	display: flex;
	align-items: flex-end;
}
.banner_header .cerca_wrapper label {display: none;}
.banner_header .cerca_wrapper input {
	appearance: none;
	background: transparent;
	border: none;
	padding: 0;
	border-bottom: 1px solid #fff;
	color: #fff;
	font: inherit;
	width: 100%;
	min-width: 70px;
	max-width: 140px;
}
.banner_header .cerca_wrapper input::placeholder {
	color: #fff;
}
.banner_header .cerca_wrapper button {
	appearance: none;
	border: none;
	background-color: transparent;
	color: #fff;
	padding: 0;
	cursor: pointer;
}
.banner_header .cerca_wrapper button svg {
	height: 16px;
}

.banner_header > a {
	padding: 5px 10px;
	white-space: nowrap;
}
.banner_header .area_riservata {
	border: 2px solid var(--background_medio_testo);
	border-radius: 4px;
	display: flex;
	align-items: center;
	gap: 5px;
}
.banner_header .area_riservata svg {
	height: 16px;
	color: var(--background_medio);
	background: #fff;
	border-radius: 100%;
}

.header_wrapper {
	position: relative;
	color: var(--background_scuro_titoli);
	box-sizing: border-box;
	/* z-index: 1; */
}

.menu_wrapper {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 30px;
	border-bottom: 1px solid var(--bordo_grigio);
	margin-bottom: 15px;
}
.menu_wrapper img {
	display: block;
	height: 90px;
	margin: 5px 0;
}
.menu_wrapper .link_wrapper {
	height: 100%;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: stretch;
	gap: 5px 30px;
}
.menu_wrapper {
	position: relative;
	z-index: 2;
}
.menu_wrapper .menu .link {
	display: flex;
	justify-content: flex-start;
	gap: 15px 5px;
	flex-wrap: wrap;
}
.menu_wrapper .menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.menu_wrapper .menu ul li {
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
}
.menu_wrapper .menu ul a,
.menu_wrapper .menu ul label,
.menu_wrapper .menu ul summary {
	cursor: pointer;
	display: flex;
	height: 100%;
	padding: 0 10px;
	align-items: center;
	transition: 0.2s all;
	white-space: nowrap;
	opacity: 0.8;
}
.menu_wrapper .menu .link > li > details {
	height: 100%;
}	
.menu_wrapper .menu ul a:hover,
.menu_wrapper .menu ul summary:hover {
	opacity: 1;
}
.menu_wrapper .menu li.active {
	border-bottom-color: var(--icone_attive);
}

.menu_wrapper .link_wrapper ul li {
	position: relative;
}
/* TODO: allinare sottomenu dell'ultima voce a destra? */
.menu_wrapper .link_wrapper ul ul {
	position: absolute;
	background-color: var(--background_medio);
	top: 50%;
	margin-top: 1em;
	font-size: 0.9em;
	z-index: 1;
}
.menu_wrapper .link_wrapper ul ul li {
	border: none;
}
.menu_wrapper .link_wrapper ul ul li a,
.menu_wrapper .link_wrapper ul ul li summary {
	padding: 5px 10px;
}
.menu_wrapper .link_wrapper ul li summary::after {
	content: "";
	display: inline-block;
	width: 4px;
	height: 4px;
	border-bottom: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: rotate(45deg);
	margin: -1px 0 0 5px
}
.menu_wrapper .link_wrapper ul li details[open] > summary::after {
	transform: rotate(225deg);
	margin: 2px 0 0 5px
}

.menu_wrapper .link_wrapper ul ul ul {
	display: block;
	position: relative;
	font-size: 1em;
	top: 0;
	margin-top: 0;
	padding: 0 10px;
	background-color: var(--background_medio);
	transition: height 0.2s;
	overflow: hidden;
}
.menu_wrapper .link_wrapper ul ul::before {
	content: none;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.3);
}
.menu_wrapper .link_wrapper ul ul ul::before {
	content: "";
}

.menu_wrapper .menu_status,
.menu_wrapper .menu_status + label {
	display: none;
}
.breadcrumb {
	font-size: 0.9em;
	color: var(--icone_attive)
}

.footer_wrapper {
	background-color: var(--background_scuro);
	color: var(--colore_footer);
	padding: 70px 0;
	font-size: 0.85em;
}
.footer_wrapper .logo {
	max-width: 100%;
	width: min-content;
	max-height: 90px;
}
.footer_wrapper .elenco_link {
	list-style: none;
	margin: 0;
	padding: 0;
}
.footer_wrapper .elenco_link a {
	padding: 2px 0;
	color: var(--colore_footer);
	display: inline-block;
	text-decoration: underline;
}
.footer_wrapper .colonne_footer {
	display: flex;
	justify-content: space-between;
	gap: 20px;
}
.footer_wrapper .colonne_footer > * {
	width: 100%;
}

.banner_footer_wrap {
	background-color: var(--background_medio);
	color: var(--background_medio_testo);
	padding: 10px 0;
	font-size: 0.9em;
}
.banner_footer_wrap .banner_footer {
	list-style: none;
	display: flex;
	align-items: center;
	gap: 20px;
	margin: 0;
	padding: 0;
}


.titolo1 {
	text-align: center;
	color: var(--background_scuro_titoli);
	font-family: var(--font_h1-family);
	font-size: var(--font_h1-size);
	font-weight: var(--font_h1-weight);
	line-height: var(--font_h1-lineheight);
	margin: 10px 0 0;
}

.titolo2 {
	text-align: center;
	font-weight: 300;
	margin: 10px 0 0;
	position: relative;
	color: var(--background_scuro_titoli);
	font-family: var(--font_h2-family);
	font-size: var(--font_h2-size);
	font-weight: var(--font_h2-weight);
	line-height: var(--font_h2-lineheight);
}

.titolo3 {
	text-align: left;
	font-family: var(--font_h3-family);
	font-size: var(--font_h3-size);
	font-weight: var(--font_h3-weight);
	line-height: var(--font_h3-lineheight);
	margin: 20px 0 10px 0;
	padding-bottom: 7px;
	border-bottom: 5px solid var(--elementi_background);
}
.titolo4 {
	text-align: left;
	color: var(--background_scuro_titoli);
	font-family: var(--font_h4-family);
	font-size: var(--font_h4-size);
	font-weight: var(--font_h4-weight);
	line-height: var(--font_h4-lineheight);
	margin: 10px 0;
}

.titolo + p {
	text-align: left;
	margin-top: 5px;
	color: var(--colore_1);
	font-family: var(--font_h4-family);
	font-size: var(--font_h4-size);
	font-weight: var(--font_h4-weight);
	line-height: var(--font_h4-lineheight);
}
.titolo + p:empty{
	margin-bottom: 10px;
}
.titolo1 + p {margin-bottom: 30px;}
.titolo2 + p {text-align: center; margin-bottom: 30px;}
.titolo3 + p {margin-bottom: 10px;}
.titolo4 + p {margin-bottom: 10px;}

.wrapper .col_50 > div .titolo,
.wrapper .col_50 > div .titolo + p {
	text-align: left;
}

.wrapper .col_33 .titolo,
.wrapper .col_33 .titolo + p,
 .wrapper .col_50 .titolo,
 .wrapper .col_50 .titolo + p,
.wrapper_colonna_immagine > div .titolo,
.wrapper_colonna_immagine > div .titolo + p {
	text-align: left;
}

.bottone {
	appearance: none;
	align-self: center;
	display: inline-block;
	color: var(--elementi_colore);
	border: none;
	font-size: inherit;
	padding: 7px 14px;
	min-width: 150px;
	border-radius: 20px;
	text-align: center;
	cursor:pointer;
	margin: 10px 0;
	transition: 0.2s all;
	background: var(--elementi_background);
	border: 2px solid var(--elementi_background);
}
.bottone:hover {
	background: var(--background_principale);
	color: var(--colore_titoli);
}

.bottone_singolo {
	padding: 10px 0 10px;
	text-align: left;
}

.immagine_singola {
	display: block;
	margin: 0 auto;
	width: 100%;
}
.immagine_singola.img-s {max-width: 235px;}
.immagine_singola.img-m {max-width: 570px;}
.immagine_singola.img-l {max-width: 100%;}
.immagine_singola.allinea_sx {
	margin-left: 0;
}
.immagine_singola.allinea_dx {
	margin-right: 0;
}


.testo {
	margin: 10px 0;
	text-align: left;
}

.wrapper {
	padding: 70px 0;
	position: relative;
	background-repeat: no-repeat;
}
.wrapper .wrapper {padding: 30px 0;}
/* sfondi wrapper semplici */
.wrapper {background-color: transparent}
.wrapper .wrapper {background-color: transparent}

.wrapper.sfondo_scuro {
	background-color: var(--background_scuro);
	color: var(--background_scuro_testo)
}
.wrapper.sfondo_scuro .titolo1,
.wrapper.sfondo_scuro .titolo2,
.wrapper.sfondo_scuro .titolo3,
.wrapper.sfondo_scuro .titolo4 {
	color: var(--background_scuro_titoli)
}
.wrapper.sfondo_scuro .titolo + p {
	color: var(--icone_attive)
}

.wrapper.sfondo_chiaro {
	background-color: var(--background_chiaro);
	color: var(--background_chiaro_testo);
}
.wrapper.sfondo_chiaro .titolo1,
.wrapper.sfondo_chiaro .titolo2,
.wrapper.sfondo_chiaro .titolo3,
.wrapper.sfondo_chiaro .titolo4 {
	color: var(--background_chiaro_titoli)
}

.wrapper.sfondo_bianco {
	background-color: var(--background_principale);
	color: var(--colore_testi);
}
.wrapper.sfondo_bianco .titolo1,
.wrapper.sfondo_bianco .titolo2,
.wrapper.sfondo_bianco .titolo3,
.wrapper.sfondo_bianco .titolo4 {
	color: var(--colore_titoli)
}

.wrapper.sfondo_grigio {
	background-color: var(--background_grigio);
	color: var(--background_grigio_testo);
}
.wrapper.sfondo_grigio .titolo1,
.wrapper.sfondo_grigio .titolo2,
.wrapper.sfondo_grigio .titolo3,
.wrapper.sfondo_grigio .titolo4 {
	color: var(--background_grigio_titoli)
}

/* layer per immagine di sfondo */
.wrapper.layer::before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: inherit;
}
.wrapper.layer::before { mask-image: linear-gradient(to right, #ffffffE3, #ffffffE3); } 
.wrapper.layer.layer_sfondo_sx::before { mask-image: linear-gradient(to left, #ffffffE3 0 calc(50% + 600px), transparent calc(50% + 800px) 100%); } 
.wrapper.layer.layer_sfondo_dx::before { mask-image: linear-gradient(to right, #ffffffE3 0 calc(50% + 600px), transparent calc(50% + 800px) 100%); } 

.wrapper.layer.layer_sfondo_sx.stacco_bianco_nero::before,
.wrapper.layer.layer_sfondo_dx.stacco_bianco_nero::before {
	background: none;
}

.wrapper > * {
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 60px;
	min-height: 150px;
}

.wrapper > * > * {
	z-index: 1;
	flex-direction: column;
	justify-content: stretch;
}
.wrapper > * > *:not(:first-child) {display: none;}
.wrapper > .monocolonna > *:first-child {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.wrapper > .monocolonna > * > img {
	align-self: center;
}
.wrapper > .col_50 > * { width: calc(50% - 30px); }
.wrapper > .col_50 > *:first-child,
.wrapper > .col_50 > *:nth-child(2) {display: flex;}
.wrapper > .col_33 > * { width: calc(33.33% - 40px); }
.wrapper > .col_33 > * {
	display: flex;
	position: relative;
}

.wrapper > .col_50 > * .elenco_spunte_riquadro {
	flex-grow: 1;
} 

.wrapper_colonna_immagine {
	display: flex;
	gap: 30px;
	position: relative;
	padding-bottom: 150px;
}
.wrapper .wrapper_colonna_immagine > div {
	display: block;
	flex-basis: 60%;
	min-height: 100px;
}
.wrapper .wrapper_colonna_immagine > .colonna_immagine {
	flex-basis: 40%;
	position: relative;
}
.wrapper_colonna_immagine > .colonna_immagine img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 330px;
	margin: auto;
}
.wrapper_colonna_immagine .testo {
	text-align: left;
}

.separatore_immagine {
	overflow: hidden;
	height: 300px;
	background-size: cover;
	background-position: 50% 50%;
	z-index: 0;
}
.separatore_immagine.parallasse {
	background-attachment: fixed;
}

.immagine_mosaico {
	columns: 2;
	column-gap: 15px;
	aspect-ratio: 1/1;
}
.immagine_mosaico img {
	display: block;
	width: 100%;
	object-fit: cover;
	height: calc(65% - 15px);
}
.immagine_mosaico img:first-child {
	height: 35%;
	margin-bottom: 15px;
}
.immagine_mosaico img:last-child {
	height: 35%;
	margin-top: 15px;
}

.elenco_blocchi_link {
	margin: 20px 0;
}
.elenco_blocchi_link.sovrapponi {
	margin-top: -140px;
}
.elenco_blocchi_link ul {
	list-style: none;
	display: flex;
	gap: 60px;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0;
	margin: 20px auto;
}
.elenco_blocchi_link ul li {
	box-sizing: border-box;
	width: calc(25% - 45px);
}
.elenco_blocchi_link ul li a {
	display: block;
	box-sizing: border-box;
	height: 100%;
	padding: 30px 20px;
	background: linear-gradient(to bottom, var(--elementi_background) 0%, var(--background_medio) 100%);
	color: var(--background_medio_testo);
	border-radius: 9px;
	text-align: center;
	font-family: var(--font_h3-family);
	font-size: var(--font_h3-size);
	font-weight: var(--font_h3-weight);
	line-height: var(--font_h3-lineheight);
}
.elenco_blocchi_link ul li img {
	display: block;
	margin: 0 auto 20px;
	height: 48px;
}
.elenco_blocchi_link ul li div:empty {
	display: none;
}

.elenco_servizi {
	background: #fff;
	color: var(--colore_testi);
	padding: 20px;
	border-radius: 9px;
}
.elenco_servizi .titolo3 {
	color: var(--colore_titoli) !important;
}
.elenco_servizi ul {
	list-style: none;
	margin: 40px 0 0;
	padding: 0;
}
.elenco_servizi ul li {
	display: flex;
	align-items: center;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--bordo_grigio);
	margin-bottom: 20px;
}
.elenco_servizi ul li:last-child {
	padding-bottom: 0;
	border-bottom: none;
	margin-bottom: 0;
}
.elenco_servizi ul li > div {flex-grow: 1}
.elenco_servizi ul li > div > .titolo4 {color: var(--colore_titoli) !important}
.elenco_servizi ul li > div > p {
	margin: 5px 0;
}
.elenco_servizi ul li > img {
	width: 60px;
	background: var(--background_chiaro);
	padding: 20px;
	border-radius: 5px;
}

.elenco_membri ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.elenco_membri ul li {
	padding: 10px 0;
	border-bottom: 1px solid var(--bordo_grigio);
	margin-bottom: 10px;
}
.elenco_membri ul li:first-child {
	border-top: 1px solid var(--bordo_grigio);
}
.elenco_membri ul li .ruolo_membro {
	color: var(--icone_attive);
	font-size: 0.9em;
	margin-bottom: 5px;
}
.elenco_membri ul li .nome_membro {
	color: var(--background_scuro_titoli);
	font-family: var(--font_h4-family);
	font-size: var(--font_h4-size);
	line-height: var(--font_h4-lineheight);
	font-weight: var(--font_h4-weight);
}
.wrapper.sfondo_bianco .elenco_membri ul li .nome_membro,
.wrapper.sfondo_grigio .elenco_membri ul li .nome_membro,
.wrapper.sfondo_chiaro .elenco_membri ul li .nome_membro {
	color: var(--colore_titoli);
}

.elenco_step ul {
	counter-reset: step;
	list-style: none;
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0;
	margin: 20px auto;
}
.elenco_step ul li {
	counter-increment: step;
	box-sizing: border-box;
	padding: 30px 30px;
	flex-basis: calc(33.33% - 20px);
	background-color: var(--background_chiaro);
	color: var(--background_chiaro_testo);
}
.elenco_step ul li .titolo3 {
	margin-top: 0;
	text-align: left !important;
	color: var(--background_chiaro_titoli);
}
.elenco_step ul li::before {
	content: '0' counter(step);
	font-size: 5em;
	line-height: 1em;
	color: var(--colore_1);
}
.wrapper.sfondo_scuro .elenco_step ul li {
	background-color: var(--background_medio);
	color: var(--background_medio_testo);
}
.wrapper.sfondo_scuro .elenco_step ul li .titolo3 {
	color: var(--background_scuro_titoli);
}
.wrapper.sfondo_scuro .elenco_step ul li::before {
	color: var(--background_scuro_titoli);
}

.wrapper.sfondo_chiaro .elenco_step ul li {
	background-color: var(--background_principale);
	color: var(var(--colore_testi))
}
.wrapper.sfondo_chiaro .elenco_step ul li .titolo3 {
	color: var(--colore_titoli);
}

.elenco_spunte_riquadro {
	padding: 20px;
	border-radius: 15px;
	background: var(--background_medio);
	color: var(--colore_testi);
	border: 2px solid var(--colore_1);
	margin: 30px auto;
}
.elenco_spunte_riquadro ul {
	list-style: none;
	padding: 0;
	margin: 30px auto;
}
.elenco_spunte_riquadro ul > li {
	position: relative;
	padding-left: 30px;
	margin: 15px 0;
}
.elenco_spunte_riquadro ul > li::before,
.elenco_spunte_in_linea ul > li::before {
	content: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8 6"><path fill="%233694f2ff" d="m3 6l5 -5-1 -1-4 4-2 -2-1 1z"/></svg>');
	position: absolute;
	top: 0;
	left: 0;
}
.elenco_spunte_riquadro.elenco_icona_x ul > li::before,
.elenco_spunte_in_linea.elenco_icona_x ul > li::before {
	content: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8 8"><path fill="%23bed0d5ff" d="m4 5l2 2 1 -1-2 -2 2 -2-1 -1-2 2-2 -2-1 1 2 2-2 2 1 1z"/></svg>');
}
.elenco_spunte_riquadro ul > li::before{ width: 20px; }
.elenco_spunte_in_linea ul > li::before{ width: 25px; }

.elenco_spunte_in_linea ul {
	display: flex;
	list-style: none;
	padding: 0;
	gap: 30px;
	justify-content: center;
	margin: 30px auto;
	flex-wrap: wrap;
}
.elenco_spunte_in_linea ul > li {
	position: relative;
	padding-left: 35px;
	font-size: 24px;
}

.elenco_faq {
	list-style: none;
	padding-left: 0;
	margin: 10px 0 30px 0;
}
.elenco_faq > li {
	margin: 10px 0;
	border: 1px solid var(--bordo_grigio);
	border-radius: 25px;
}
.elenco_faq > li input {
	display: none;
}
.elenco_faq > li .domanda {
	cursor: pointer;
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: stretch;
	padding: 15px;
	color: var(--background_scuro_titoli);
	border-top-left-radius: 25px;
	border-top-right-radius: 25px;
}
.wrapper.sfondo_bianco .elenco_faq > li .domanda,
.wrapper.sfondo_grigio .elenco_faq > li .domanda,
.wrapper.sfondo_chiaro .elenco_faq > li .domanda {
	color: var(--colore_titoli);
}
.elenco_faq > li .domanda::before {
	content: "";
	background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 5 5"><path fill="%233694f2ff" d="m2 0l1 0 0 2 2 0 0 1-2 0 0 2 -1 0 0 -2-2 0 0 -1 2 0z"/></svg>');
	width: 16px;
	height: 16px;
	flex-grow: 0;
	flex-shrink: 0;
}
.elenco_faq > li .risposta {
	background-color: var(--background_scuro);
	height: 0;
	overflow: hidden;
	padding: 0 15px;
	border-bottom-left-radius: 25px;
	border-bottom-right-radius: 25px;
	transition: height .4s, padding .4s;
	interpolate-size: allow-keywords;
}
.wrapper.sfondo_bianco .elenco_faq > li .risposta,
.wrapper.sfondo_grigio .elenco_faq > li .risposta,
.wrapper.sfondo_chiaro .elenco_faq > li .risposta {
	background-color: var(--background_principale);
}

.elenco_faq > li input:checked ~ .domanda {
	background-color: var(--background_chiaro);
	color: var(--background_chiaro_titoli);
}
.wrapper.sfondo_bianco .elenco_faq > li input:checked ~ .domanda,
.wrapper.sfondo_grigio .elenco_faq > li input:checked ~ .domanda,
.wrapper.sfondo_chiaro .elenco_faq > li input:checked ~ .domanda {
	background-color: var(--background_scuro);
	color: var(--background_scuro_titoli);
}
.elenco_faq > li input:checked ~ .domanda::before {
	background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 5 5"><path fill="%233694f2ff" d="m0 2l5 0 0 1-5 0z"/></svg>');
}
.elenco_faq > li input:checked ~ .domanda ~ .risposta {
	height: auto;
	padding: 15px;
}

.elenco_moduli {
	padding: 0;
}
.elenco_moduli li {
	display: flex;
	align-items: center;
	gap: 20px;
}
.elenco_moduli li .descrizione {flex-grow: 1;}
.elenco_moduli li .note {
	color: #fff;
	font-size: 0.9em;
}
.wrapper.sfondo_bianco .elenco_moduli li .note,
.wrapper.sfondo_grigio .elenco_moduli li .note,
.wrapper.sfondo_chiaro .elenco_moduli li .note {
	color: var(--colore_1);
}

.elenco_contatti ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.elenco_contatti li {
	position: relative;
	padding: 10px 0 10px 40px;
	border-bottom: 1px solid var(--bordo_grigio);
}
.elenco_contatti li:first-child {
	border-top: 1px solid var(--bordo_grigio);
}
.elenco_contatti li::before {
	content: "";
	display: block;
	width: 30px;
	height: 30px;
	background: var(--icone_attive);
	position: absolute;
	top: 10px;
	left: 0;
	border-radius: 5px;
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
}
.elenco_contatti li.icona_telefono::before {
	background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path d="M181.96,18.09l-8.96-7.84c-8.16-8.16-21.99-8.56-30.79.4l-14.95,19.59c-8.4,8.4-8.4,22.07,0,30.39l11.91,12.23c-12.95,30.39-36.86,54.37-66.29,66.37l-12.23-11.91c-4.08-4.08-9.44-6.32-15.19-6.32s-11.11,2.24-14.79,6l-20.31,15.67c-8.4,8.4-8.4,22.07-.16,30.23l8.16,9.36c8.8,8.8,20.63,13.67,33.5,13.67,61.97,0,144.09-82.2,144.09-144.09,0-12.79-4.88-24.71-13.83-33.66l-.16-.08ZM51.7,187.85c-10.71,0-20.55-4-27.67-11.11l-8.16-9.44c-5.28-5.28-5.28-13.83-.4-18.79l20.31-15.67c2.56-2.56,5.92-4,9.6-4s7.04,1.44,9.6,4l14.15,13.83c1.12,1.12,2.72,1.44,4.24.88,33.34-12.71,60.45-39.82,74.28-74.21.56-1.44.24-3.12-.88-4.32l-13.83-14.15c-5.28-5.28-5.28-13.83.32-19.51l14.95-19.59c5.28-5.28,13.83-5.28,19.35.16l8.96,7.84c7.28,7.28,11.27,17.11,11.27,27.83,0,57.25-78.84,136.1-136.1,136.1v.16Z" style="fill:white;"/></svg>');
}
.elenco_contatti li.icona_email::before {
	background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path d="M184.93,79.24l-12.98-12.5v-33.55c0-15.43-12.55-27.98-27.98-27.98H56.03c-15.43,0-27.98,12.55-27.98,27.98v33.55l-12.98,12.51c-7,6.75-11,16.18-11,25.9v55.97c0,19.84,16.14,35.98,35.98,35.98h119.93c19.84,0,35.98-16.14,35.98-35.98v-55.97c0-9.72-4.01-19.16-11.01-25.9h0ZM179.39,84.99c.74.71,1.43,1.46,2.08,2.24l-9.51,9.51v-18.92l7.44,7.16h0ZM36.04,33.19c0-11.02,8.97-19.99,19.99-19.99h87.95c11.03,0,19.99,8.97,19.99,19.99v71.56l-44.17,44.17c-10.56,10.57-29,10.58-39.58,0l-44.17-44.17V33.19h0ZM20.62,84.99l7.43-7.16v18.91l-9.51-9.51c.65-.78,1.34-1.54,2.08-2.25h0ZM187.95,161.11c0,15.43-12.55,27.98-27.98,27.98H40.04c-15.43,0-27.98-12.55-27.98-27.98v-55.97c0-3.75.77-7.45,2.21-10.87l60.29,60.3c6.8,6.8,15.83,10.54,25.44,10.54s18.64-3.74,25.44-10.54l60.3-60.3c1.44,3.41,2.21,7.12,2.21,10.87v55.97h0ZM60.02,49.18c0-2.21,1.79-4,4-4h71.96c2.21,0,4,1.79,4,4s-1.79,4-4,4h-71.96c-2.21,0-4-1.79-4-4ZM60.02,81.16c0-2.21,1.79-4,4-4h55.97c2.21,0,4,1.79,4,4s-1.79,4-4,4h-55.97c-2.21,0-4-1.79-4-4Z" style="fill:white;"/></svg>');
}
.elenco_contatti li.icona_orario::before {
	background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path d="M100,5.2C47.09,5.2,4.05,48.24,4.05,101.15s43.04,95.94,95.94,95.94,95.95-43.04,95.95-95.94S152.91,5.2,100,5.2ZM100,189.1c-48.49,0-87.95-39.46-87.95-87.95S51.51,13.2,100,13.2s87.95,39.46,87.95,87.95-39.46,87.95-87.95,87.95Z" style="fill:white;"/><path d="M105.93,108.65c1.27-.7,2.06-2.05,2.06-3.5v-55.97c0-2.21-1.79-4-4-4s-4,1.79-4,4v48.76l-25.87-16.16c-1.87-1.18-4.33-.61-5.51,1.27-1.17,1.86-.6,4.33,1.27,5.5l31.98,19.99c.65.41,1.38.61,2.12.61.66,0,1.34-.17,1.93-.5h0Z" style="fill:white;"/></svg>');
}
.elenco_contatti li.icona_tessera::before {
	background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path d="M88.01,137.13c-2.21,0-4-1.79-4-4,0-11.03-8.97-19.99-19.99-19.99s-19.99,8.96-19.99,19.99c0,2.21-1.79,4-4,4s-4-1.79-4-4c0-15.43,12.55-27.98,27.98-27.98s27.98,12.55,27.98,27.98c0,2.21-1.79,4-4,4ZM84.01,77.16c0-11.02-8.97-19.99-19.99-19.99s-19.99,8.97-19.99,19.99,8.97,19.99,19.99,19.99,19.99-8.97,19.99-19.99ZM76.01,77.16c0,6.61-5.38,11.99-11.99,11.99s-11.99-5.38-11.99-11.99,5.38-11.99,11.99-11.99,11.99,5.38,11.99,11.99ZM195.94,141.12V53.18c0-19.84-16.14-35.98-35.98-35.98H40.03c-19.84,0-35.98,16.14-35.98,35.98v87.95c0,19.84,16.14,35.98,35.98,35.98h119.93c19.84,0,35.98-16.14,35.98-35.98ZM159.97,25.19c15.43,0,27.98,12.55,27.98,27.98v87.95c0,15.43-12.55,27.98-27.98,27.98H40.03c-15.43,0-27.98-12.55-27.98-27.98V53.18c0-15.43,12.55-27.98,27.98-27.98h119.93ZM163.96,69.17c0-2.21-1.79-4-4-4h-47.97c-2.21,0-4,1.79-4,4s1.79,4,4,4h47.97c2.21,0,4-1.79,4-4ZM163.96,101.15c0-2.21-1.79-4-4-4h-47.97c-2.21,0-4,1.79-4,4s1.79,4,4,4h47.97c2.21,0,4-1.79,4-4ZM147.97,133.13c0-2.21-1.79-4-4-4h-31.98c-2.21,0-4,1.79-4,4s1.79,4,4,4h31.98c2.21,0,4-1.79,4-4Z" style="fill:white;"/></svg>');
}
.elenco_contatti li.icona_banca::before {
	background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path d="M195.92,191.95c0,2.21-1.79,4-4,4H8.06c-2.21,0-4-1.79-4-4s1.79-4,4-4h183.86c2.21,0,4,1.79,4,4ZM5.99,66.27c-2.89-5.53-2.52-11.86,1.01-16.93,3.28-4.72,15.55-11.1,15.56-11.11l59.56-29.81c11.16-5.82,24.56-5.83,35.8.03l61.16,31.01.04.02s10.83,5.48,13.87,9.85c3.52,5.07,3.89,11.4,1,16.93-3.16,6.02-9.42,9.76-16.35,9.76h-5.71v79.94h11.99c2.21,0,4,1.79,4,4s-1.79,4-4,4H16.06c-2.21,0-4-1.79-4-4s1.79-4,4-4h11.99v-79.94h-5.71c-6.93,0-13.19-3.74-16.35-9.76v.02ZM36.04,155.97h31.99l.28-79.94h-32.27v79.94ZM76.31,76.03l-.28,79.94h47.95v-79.94h-47.67ZM163.95,76.03h-31.98v79.94h31.98v-79.94ZM13.08,62.56c1.77,3.37,5.31,5.48,9.26,5.48h155.31c3.95,0,7.5-2.09,9.26-5.48,1.51-2.89,1.34-6.05-.48-8.67-1.88-2.7-5.54-4.55-9.08-6.34l-63.08-31.99c-4.48-2.33-9.39-3.5-14.28-3.5s-9.78,1.16-14.23,3.48l-59.61,29.83c-4.52,2.35-10.43,5.42-12.57,8.52-1.82,2.62-2,5.78-.49,8.67Z" style="fill:white;"/></svg>');
}
.elenco_contatti li.icona_pagamento::before {
	background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path d="M159.97,28.04H40.04c-19.84,0-35.98,16.14-35.98,35.98v71.96c0,19.84,16.14,35.98,35.98,35.98h119.93c19.84,0,35.98-16.14,35.98-35.98v-71.96c0-19.84-16.14-35.98-35.98-35.98ZM12.05,68.02h175.9v15.99H12.05v-15.99ZM40.04,36.04h119.93c14.06,0,25.62,10.46,27.58,23.99H12.46c1.96-13.53,13.52-23.99,27.58-23.99ZM159.97,163.96H40.04c-15.43,0-27.98-12.55-27.98-27.98v-43.97h175.9v43.97c0,15.43-12.55,27.98-27.98,27.98ZM44.04,115.99c-8.82,0-15.99,7.17-15.99,15.99s7.17,15.99,15.99,15.99,15.99-7.17,15.99-15.99-7.17-15.99-15.99-15.99ZM44.04,139.98c-4.41,0-8-3.58-8-8s3.59-8,8-8,8,3.58,8,8-3.59,8-8,8Z" style="fill:white;"/></svg>');
}

.elenco_contatti li .titolo_contatto {
	color: var(--icone_attive);
	margin-bottom: 5px;
	font-size: 0.9em;
}
.wrapper.sfondo_bianco .elenco_contatti li .titolo_contatto,
.wrapper.sfondo_chiaro .elenco_contatti li .titolo_contatto,
.wrapper.sfondo_grigio .elenco_contatti li .titolo_contatto {
	color: var(--colore_1);
}

.elenco_contatti li .descrizione_contatto {
	word-wrap: break-word;
}

.link_social {
	list-style: none;
	display: flex;
	padding: 0;
}
.link_social.allinea_sx {justify-content: flex-start;}
.link_social.allinea_cx {justify-content: center;}
.link_social.allinea_dx {justify-content: flex-end;}
.link_social a {
	padding: 5px;
}
.link_social svg {
	height: 20px;
}
.link_social svg * {
	fill: currentColor
}

.form_contatti {
	max-width: 800px;
	margin: 20px auto;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.form_contatti.mostra_esito .form {
	opacity: 0;
}
.form_contatti .esito {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.form_contatti.mostra_esito .esito {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
	color: var(--background_medio_testo)
}
.form_contatti.mostra_esito .esito svg circle {
	fill: var(--colore_1);
}
.form_contatti.mostra_esito .esito svg path {
	stroke: var(--background_chiaro);
}
.form_contatti ul {
	list-style: none;
	padding: 0;
	margin: 0;
	max-width: 800px;
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
}
.form_contatti ul li {
	flex-basis: 40%;
	flex-grow: 1;
	display: flex;
	align-items: center;
}
.form_contatti ul li.campo_grande {
	flex-basis: 100%;
}
.form_contatti input,
.form_contatti textarea {
	appearance: none;
	border: none;
	background: var(--background_principale);
	color: var(--colore_testi);
	border: 1px solid var(--bordo_grigio);
	padding: 10px;
	margin: 1px 0;
	font: inherit;
	font-size: inherit;
	box-sizing: border-box;
	width: 100%;
	min-width: 180px;
	outline: none;
}
.form_contatti textarea {
	min-height: 110px;
}
.form_contatti label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 0.9em;
	padding-top: 5px;
}
.form_contatti input[type="checkbox"] {
	display: inline-block;
	padding: 0;
	width: 30px;
	height: 30px;
	min-width: 30px;
	flex-shrink: 0;
	position: relative;
	vertical-align: bottom;
	margin-top: -5px;
}
.form_contatti input[type="checkbox"]:checked::before {
	content: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path d="M10 24L20 34L38 14" stroke="%233694f2ff" fill="none" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/></svg>');
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.form_contatti button {
	margin-top: 20px;
	appearance: none;
}
.form_contatti button.caricamento::before {
	content: "";
	display: inline-block;
}
@keyframes icona_caricamento {
	0% {rotate: 0deg;}
	100% {rotate: 360deg;}
}
.form_contatti button.caricamento {
	cursor:progress;
	opacity: 0.7;
	filter: none;
	transform: none;
	position: relative;
}
.form_contatti button.caricamento::before {
	content: "";
	border-radius: 100%;
	border: 2px solid currentColor;
	opacity: 0.7;
	width: 15px;
	height: 15px;
	position: absolute;
	top: 7px;
	margin-left: -23px;
	border-right-color: transparent;
	animation: icona_caricamento 1s linear infinite;
}

/* .form_contatti .obbligatorio::after,
.form_contatti .obbligatorio::after {
	content: "*";
	color: #f55;
} */
.form_contatti .errore input,
.form_contatti .errore textarea {
	border: 2px solid #f55
}

.slideshow_articoli ul {
	margin: 0;
	padding: 0;
	list-style: none;
	width: 100%;
}
.slideshow_articoli .splide > div  {
	display: flex;
	gap: 10px;
	align-items: flex-end;
	padding-bottom: 5px;
}
.slideshow_articoli .splide > div .titolo3 {
	flex-grow: 1;
}
.slideshow_articoli .splide > div .splide__arrows {
	display: flex;
	gap: 10px;
	margin-bottom: 10px;
}
.slideshow_articoli .splide > div .splide__arrows button {
	appearance: none;
	border: none;
	background: var(--elementi_background);
	color: var(--elementi_colore);
	padding: 0;
	margin: 0;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
}
.slideshow_articoli .splide > div .splide__arrows button:disabled {opacity: 0.5;}
.slideshow_articoli .splide > div button svg {
	display: block;
	width: 15px;
	height: 15px;
	fill: var(--elementi_colore)
}
.slideshow_articoli .splide > div button.splide__arrow--prev svg {
	transform: rotate(180deg)
}

.scheda_articolo {
	display: flex;
	flex-direction: column;
}
.scheda_articolo .anteprima_testo_articolo {
	margin-top: 0;
	flex-shrink: 1;
	flex-grow: 1;
	overflow: hidden;
	position: relative;
}
.col_33 .scheda_articolo .anteprima_testo_articolo::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 30px;
	background: linear-gradient(to bottom, transparent, #fff);
	pointer-events: none;
}
.col_33 .scheda_articolo {
	height: 520px;
}

.scheda_articolo {
	box-sizing: border-box;
	padding: 20px;
	background: #fff;
	color: var(--colore_testi)
}
.wrapper.sfondo_bianco .scheda_articolo {
	background: var(--background_chiaro)
}
.scheda_articolo img {
	aspect-ratio: 5 / 2;
	width: calc(100% + 40px);
	object-fit: cover;
	margin: -20px -20px 0;
}
.scheda_articolo img[src=""] {display: none;}
.scheda_articolo .titolo_articolo {
	color: var(--colore_titoli)
}
.scheda_articolo .data_articolo {
	color: var(--colore_1);
	border-bottom: 1px solid var(--icone_attive);
	padding: 10px 0;
}
.col_50 .scheda_articolo img {
	aspect-ratio: 4/2;
} 
.col_33 .scheda_articolo img {
	aspect-ratio: 4/2;
} 

.anteprima_articolo {
	display: flex;
	gap: 40px;
	align-items: center;
}
.anteprima_articolo > * {
	flex-basis: 50%;
	flex-shrink: 1;
}
.anteprima_articolo img {
	width: 100%;
	aspect-ratio: 3/2;
	object-fit: cover;
}
.anteprima_articolo img[src=""] {
	display: none;
}
.anteprima_articolo .data_articolo {
	color: var(--colore_1);
	padding: 10px 0;
}

.elenco_articoli {
	margin: 30px 0;
}
.elenco_articoli .toggle_filtri {display: none;}
.elenco_articoli .mostra_filtri {
	display: none;
}
.elenco_articoli .filtri {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.elenco_articoli .filtri .parametri_ricerca {
	width: 100%;
}
.elenco_articoli .filtri .nome_parametro {
	display: none;
}
.elenco_articoli .filtri .filtro_categorie {
	border-bottom: 7px solid #fff;
	display: flex;
	margin-bottom: 20px;
	flex-wrap: wrap;
	gap: 10px 0;
}
.wrapper.sfondo_bianco .elenco_articoli .filtri .filtro_categorie,
.wrapper.sfondo_bianco .elenco_articoli .filtri .filtro_categorie span {
	border-color: var(--background_chiaro)
}

.elenco_articoli .filtri .filtro_categorie input {
	display: none;
}
.elenco_articoli .filtri .filtro_categorie span {
	flex-grow: 1;
	border-bottom: 7px solid var(--elementi_colore);
	margin-bottom: -7px;
}
.elenco_articoli .filtri .filtro_categorie span:last-child {
	flex-grow: 999;
}
.elenco_articoli .filtri .filtro_categorie label {
	display: inline-block;
	padding: 10px 30px;
	cursor: pointer;
	color: var(--background_scuro_titoli);
}
.wrapper.sfondo_bianco .elenco_articoli .filtri .filtro_categorie label,
.wrapper.sfondo_grigio .elenco_articoli .filtri .filtro_categorie label,
.wrapper.sfondo_chiaro .elenco_articoli .filtri .filtro_categorie label {
	color: var(--colore_1);
}

.elenco_articoli .filtri .filtro_categorie input:checked + label {
	color: var(--background_scuro_titoli);
	border-bottom: 7px solid var(--icone_attive);
	margin-bottom: -7px;
}
.wrapper.sfondo_bianco .elenco_articoli .filtri .filtro_categorie input:checked + label,
.wrapper.sfondo_chiaro .elenco_articoli .filtri .filtro_categorie input:checked + label {
	color: var(--colore_titoli);
	border-bottom: 7px solid var(--icone_attive);
	margin-bottom: -7px;
}

.elenco_articoli .filtri .filtro_data {
	background: var(--background_principale);
	border-radius: 30px;
	padding: 5px 20px;
	display: flex;
	align-items: center;
}
.elenco_articoli .elenco_risultati {
	list-style: none;
	padding: 0;
	margin: 30px 0 30px;
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
}
.elenco_articoli .elenco_risultati:empty::after {
	content: "Nessun articolo trovato.";
	flex-grow: 1;
	text-align: center;
	margin-top: -20px;
}
.elenco_articoli.caricamento .elenco_risultati {
	position: relative;
	min-height: 120px;
}
.elenco_articoli.caricamento .elenco_risultati::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: rgba(255, 255, 255, 0.6);
}
.elenco_articoli.caricamento .elenco_risultati::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100px;
	height: 100px;
	margin: auto;
	border: 3px solid var(--icone_attive);
	border-top-color: transparent;
	border-radius: 50%;
	animation: icona_caricamento 1s linear infinite;
	opacity: 0.5;
}
.elenco_articoli .elenco_risultati .scheda_articolo {
	flex-basis: calc(50% - 15px);
}
.elenco_articoli .elenco_risultati .scheda_articolo img { aspect-ratio: 4/2;}

.listino ul {
	list-style: none;
	margin: 15px 0;
	padding: 0;
}
.listino ul li {
	display: flex;
	justify-content: space-between;
	padding: 15px 0;
	border-bottom: 1px solid var(--bordo_grigio);
	flex-wrap: wrap;
	gap: 5px;
}
.listino ul li .prezzo {
	color: var(--icone_attive);
	font-weight: 400;
	text-align: right;
	min-width: 80px;
	flex-grow: 1;
}

/* pagina articolo */
.wrapper_contenuto_articolo .data_pubblicazione,
.wrapper_contenuto_articolo .categorie_articolo {
	color: var(--icone_attive)
}
.wrapper_contenuto_articolo .immagine_evidenza {
	width: 100%;
	aspect-ratio: 5/2;
	object-fit: cover;
	margin: 30px 0 0;
	border: solid 2px var(--background_chiaro);
}
.wrapper_contenuto_articolo .wrapper > .col_50 > *:first-child {
	width: 65%
}
.wrapper_contenuto_articolo .wrapper > .col_50 > .wrapper_articoli_recenti {
	width: 35%;
	background: var(--background_chiaro);
	padding: 20px 30px;
}
.wrapper_contenuto_articolo .wrapper > .col_50 > .wrapper_articoli_recenti .titolo3{
	padding-bottom: 15px;
	margin-top: 0;
}
.wrapper_contenuto_articolo .wrapper > .col_50 > .wrapper_articoli_recenti .titolo4{
	margin: 0;
}
.wrapper_contenuto_articolo .wrapper > .col_50 > .wrapper_articoli_recenti ul {
	padding: 0;
	margin: 0;
	list-style: none;
}
.wrapper_contenuto_articolo .wrapper > .col_50 > .wrapper_articoli_recenti ul li {
	border-bottom: 1px solid var(--bordo_grigio);
	padding: 15px 0;
}
.wrapper_contenuto_articolo .wrapper > .col_50 > .wrapper_articoli_recenti ul li:last-child {
	border-bottom: none;
}
.wrapper_contenuto_articolo .wrapper > .col_50 > .wrapper_articoli_recenti ul .data_pubblicazione {
	font-size: 0.9em;
	padding-bottom: 5px;
}

/* pagina di ricerca */
.sfondo_ricerca {
	background: url(../immagini/sfondo_ricerca.jpg) no-repeat;
	background-position: top center;
	background-size: 100%;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
}
.sfondo_ricerca::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: var(--background_scuro);
	mask-image: linear-gradient(to bottom, #ffffffE3 40vw, #ffffffff 60vw);
}

.query_ricerca {
	font-size: 2em;
	line-height: inherit;
	margin-top: 10px;
}
.risultati_ricerca {
	list-style: none;
	margin: 0;
	padding: 0;
}
.risultati_ricerca li {
	margin: 15px 0;
}
.risultati_ricerca li > a {
	display: block;
	border: 1px solid var(--bordo_grigio);
	padding: 20px;
	transition: background 0.3s;
}
.risultati_ricerca li > a:hover {
	background: var(--background_chiaro)
}
.risultati_ricerca li > a .data_pubblicazione {
	color: var(--colore_1)
}

/* paging */
.paging {
	display: flex;
	gap: 10px;
	align-items: center;
	background: var(--background_principale);
	border-radius: 30px;
	padding: 5px 10px;
	margin: 0 0 0 auto;
	max-width: 100%;
	box-sizing: border-box;
	flex-shrink: 1;
	max-width: none;
	overflow: hidden;
}
.paging > * {flex-shrink: 0;}
.paging .pulsanti_prev,
.paging .pulsanti_next {
	display: flex;
}
.paging .elenco_pagine {
	display: flex;
	overflow: hidden;
	flex-shrink: 1;
	gap: 5px;
}
.paging ol {
	list-style: none;
	padding: 0;
	margin: 0;
	/* display: contents */
	display: flex;
	overflow: hidden;
	gap: 5px;
	flex-basis: 50%;
	flex-shrink: 1;
	flex-grow: 1;
	max-width: fit-content;
}

.paging ol:first-child {justify-content: flex-end;}
.paging ol:empty {display: none;}
.paging ol li {margin: 0}
.paging a {
	cursor: pointer;
	display: block;
	min-width: 30px;
	height: 30px;
	text-align: center;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
}
.paging a svg {
	height: 0.6em;
}
.paging .pulsanti_prev a svg {
	transform: rotate(180deg);
}
.paging a {
	background: var(--background_chiaro);
	color: var(--colore_testi);
	border-radius: 20px;
	font-size: 0.8em;
}
.paging .active a {
	background: var(--elementi_background);
	color: var(--elementi_colore)
}
.paging a.disabled {
	pointer-events: none;
	opacity: 0.6;
}

@media screen and (max-width: 1279px) {
	.wrapper_larghezza {
		width: 980px;
	}
}
@media screen and (max-width: 1023px) {
	h1 > *,
	h2 > *,
	h3 > *,
	h4 > *,
	h5 > * {display: inline;}
	
	body {
		font-family: var(--font_testo_mobile-family);
		font-size: var(--font_testo_mobile-size);
		font-weight: var(--font_testo_mobile-weight);
		line-height: var(--font_testo_mobile-lineheight);
	}
	.titolo1 {
		font-family: var(--font_h1_mobile-family);
		font-size: var(--font_h1_mobile-size);
		font-weight: var(--font_h1_mobile-weight);
		line-height: var(--font_h1_mobile-lineheight);
	}
	.titolo2 {
		font-family: var(--font_h2_mobile-family);
		font-size: var(--font_h2_mobile-size);
		font-weight: var(--font_h2_mobile-weight);
		line-height: var(--font_h2_mobile-lineheight);
	}
	.titolo3 {
		font-family: var(--font_h3_mobile-family);
		font-size: var(--font_h3_mobile-size);
		font-weight: var(--font_h3_mobile-weight);
		line-height: var(--font_h3_mobile-lineheight);
	}
	.titolo4 {
		font-family: var(--font_h4_mobile-family);
		font-size: var(--font_h4_mobile-size);
		font-weight: var(--font_h4_mobile-weight);
		line-height: var(--font_h4_mobile-lineheight);
	}
	.elenco_blocchi_link ul li a {
		font-family: var(--font_h3_mobile-family);
		font-size: var(--font_h3_mobile-size);
		font-weight: var(--font_h3_mobile-weight);
		line-height: var(--font_h3_mobile-lineheight);
	}
	
	.wrapper_larghezza {
		width: auto;
		margin-left: 20px !important;
		margin-right: 20px !important;
	}
	.wrapper_larghezza .wrapper_larghezza {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.wrapper > .col_33 {
		gap: 30px;
	}
	.wrapper > .col_33 > * {
		width: calc(33.33% - 20px);
	}
	
	/* .wrapper_larghezza {
		width: 720px;
	} */
	
	/* hamburger */ 
		header.main_header .wrapper_larghezza {
		width: auto;
		margin-left: 20px !important;
		margin-right: 20px !important;
	}
	.header_wrapper img {
		max-height: 60px;
	}
	.header_wrapper .menu_status {
		opacity: 0;
	}
	.header_wrapper .menu_status + label + .link_wrapper {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		position: absolute;
		z-index: 10;
		top: 100%;
		left: -20px;
		right: -20px;
		overflow: hidden;
		height: 0;
		padding: 0;
		transition: height .4s, padding .4s;
		interpolate-size: allow-keywords;
		background: var(--background_medio); 
		/* var(--background_scuro); */
	}
	.menu_wrapper {gap: 0}
	.menu_wrapper .link_wrapper ul ul::before {
		content: "";
	}
	.menu_wrapper .link_wrapper ul ul ul {
		background-color: transparent;
	}
	.header_wrapper .menu_status:checked + label + .link_wrapper {
		height: auto;
		padding: 40px 20px;
	}
	.header_wrapper .menu_status:checked + label + .link_wrapper .link {
		flex-direction: column;
		width: 100%;
	}
	.header_wrapper .menu_status + label + .link_wrapper ul a,
	.header_wrapper .menu_status + label + .link_wrapper ul label,
	.header_wrapper .menu_status + label + .link_wrapper ul summary {
		display: block;
		padding: 10px;
		font-size: 1.2em;
		color: var(--background_scuro_titoli);
	}
	
	.menu_wrapper .menu .link {
		gap: 5px;
	}
	.menu_wrapper .link_wrapper ul ul {
		position: relative;
		top: 0;
	}
	.menu_wrapper .link_wrapper ul li summary::after {
		border-width: 2px;
		width: 5px;
		height: 5px;
		margin-bottom: 3px;
	}
	
	.header_wrapper .menu_status + label {
		width: 45px;
		height: 45px;
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		padding: 10px 5px;
		margin-top: 10px;
	}
	.header_wrapper .menu_status + label::before, 
	.header_wrapper .menu_status + label::after {
		content: "";
		transition: all  0.3s;
	}
	.header_wrapper .menu_status + label span {
		transition: opacity  0.3s;
	}
	.header_wrapper .menu_status + label::before, 
	.header_wrapper .menu_status + label::after,
	.header_wrapper .menu_status + label span {
		height: 4px;
		border-radius: 3px;
		transform-origin: center left;
		background: var(--icone_attive);
	}
	.header_wrapper .menu_status:checked + label span {opacity: 0;}
	.header_wrapper .menu_status:checked + label::before,
	.header_wrapper .menu_status:checked + label::after {
		translate: 8px;
		scale: 0.86;
	}
	.header_wrapper .menu_status:checked + label::before {
		rotate: 45deg;
	}
	.header_wrapper .menu_status:checked + label::after {
		rotate: -45deg;
	}
	
	.wrapper_colonna_immagine {
		padding-bottom: 100px;
	}
	.wrapper_colonna_immagine > .colonna_immagine img {
		height: 220px;
	}
	
	.wrapper > * {
		min-height: 100px;
	}
	
	.wrapper .elenco_step ul li {
		flex-basis: calc(50% - 15px);
	}
	
	.elenco_blocchi_link ul li {
		width: calc(50% - 30px);
	}
	
	.separatore_immagine {
		height: 200px;
	}
	
	.elenco_articoli .mostra_filtri {
		display: inline-flex;
		justify-content: center;
		padding: 7px;
		margin: 0 auto 0 0;
		min-width: 0;
		flex-shrink: 0;
	}
	.elenco_articoli .mostra_filtri svg {
		width: 1em;
		height: 1em;
	}
	.elenco_articoli .filtri {
		gap: 20px 10px;
		flex-wrap:nowrap;
	}
	.elenco_articoli .filtri .parametri_ricerca {
		position: fixed;
		width: auto;
		top: 0;
		left: 0;
		bottom: 0;
		overflow: auto;
		background-color: var(--background_principale);
		z-index: 1;
		padding: 30px;
		transform: translateX(-100%);
		transition: transform 0.2s;
		display: flex;
		flex-direction: column;
	}
	.elenco_articoli .toggle_filtri:checked ~ .parametri_ricerca {
		transform: translateX(0);
	}
	body.no-scroll-filtri {
		overflow: hidden;
	}
	.elenco_articoli .filtri .parametri_ricerca .mostra_filtri {
		margin: auto 0 0 0;
	}
	.elenco_articoli .filtri .filtro_categorie {
		flex-direction: column;
		flex-wrap: nowrap;
		overflow: auto;
		gap: 5px 0;
	}
	.elenco_articoli .filtri .nome_parametro {
		display: block;
		border-bottom: 1px solid var(--bordo_grigio);
		color: var(--colore_testi);
		padding-bottom: 5px;
		margin-bottom: 5px;
	}
	.elenco_articoli .filtri .filtro_categorie span {
		margin: 0 10px;
		border: none;
	}
	.elenco_articoli .filtri .filtro_categorie label {
		display: block;
		border-bottom: 7px solid transparent;
		padding: 10px 0 3px 0;
		color: var(--colore_1);
	}
	
	.elenco_articoli .filtri .filtro_categorie input:checked + label {
		color: var(--colore_1);
		margin-bottom: 0;
	}
	.paging {
		margin: 0;
	}
	
	.footer_wrapper .logo {
		display: block;
		margin: 0 auto 30px auto;
		max-height: 60px;
	}
	.footer_wrapper .colonne_footer {
		flex-direction: column;
		text-align: center;
		gap: 30px;
	}
	.footer_wrapper .testo *,
	.footer_wrapper .titolo4 {
		text-align: center !important;
	}
	.footer_wrapper .link_social {
		justify-content: center;
	}
	
	.banner_footer_wrap .banner_footer {
		flex-direction: column;
		gap: 10px;
	}
}
@media screen and (max-width: 767px) {
	.wrapper {
		padding: 40px 0;
	}
	
	.wrapper > .col_33 {
		gap: 30px;
		flex-direction: column;
	}
	.wrapper > .col_33 > * {
		width: 100%;
	}
	
	.col_33 .scheda_articolo .anteprima_testo_articolo::after {
		content: none;
	}
	.col_33 .scheda_articolo {
		height: auto;
	}
	
	.footer_wrapper > div > div {
		align-items: center;
	}
	
	.video_wrapper {
		width: auto;
		margin: auto 20px;
	}
	
	.elenco_moduli li {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
	.elenco_moduli li a {
		align-self: flex-start;
	}
}

@media screen and (max-width: 639px) {
	/* .wrapper_larghezza {
		width: auto;
		margin-left: 20px !important;
		margin-right: 20px !important;
	}
	.wrapper_larghezza .wrapper_larghezza {
		margin-left: 0 !important;
		margin-right: 0 !important;
	} */
	body {
		background-size: calc(max(800px, 100%));
		
	}
	body::before {
		mask-image: linear-gradient(to bottom, #ffffffE3 max(340px, 40vw), #ffffffff max(480px, 60vw))
	}
	
	.wrapper_larghezza.col_50,
	.wrapper_larghezza.col_33 {
		flex-direction: column;
		gap: 30px
	}
	.wrapper > .col_50 > * {width: auto}
	.wrapper > .col_33 > * {width: auto}
	.wrapper > .col_50 > *:empty {display: none;}
	.wrapper > .col_33 > *:empty {display: none;}
	.wrapper_contenuto_articolo .wrapper > .col_50 > *:first-child,
	.wrapper_contenuto_articolo .wrapper > .col_50 > .wrapper_articoli_recenti {width: auto;}
	
	.wrapper_colonna_immagine {
		flex-direction: column;
	}
	.wrapper .wrapper_colonna_immagine .colonna_immagine {
		display: none;
	}
	
	.wrapper_larghezza .wrapper_larghezza {
		width: auto;
	}
	
	.wrapper_colonna_immagine > div .titolo1, 
	.wrapper_colonna_immagine > div .titolo2, 
	.wrapper_colonna_immagine > div .titolo3, 
	.wrapper_colonna_immagine > div .titolo4,
	.wrapper_colonna_immagine > div .titolo + p {
		text-align: center !important;
	}
	.wrapper_contenuto_articolo .wrapper > .col_50 > .wrapper_articoli_recenti .titolo4 {text-align: left !important;}
	
	.elenco_servizi .titolo4 {text-align: left !important;}

	.wrapper_colonna_immagine .testo, 
	.wrapper_colonna_immagine .bottone_singolo {
		text-align: center;
	}
	.wrapper .col_50 .bottone_singolo {
		text-align: center;
	}
	
	.wrapper .elenco_step ul li {
		flex-basis: 100%;
	}
	
	.anteprima_articolo {
		flex-direction: column;
		align-items: stretch;
		gap: 0
	}
	.anteprima_articolo img {
		aspect-ratio: 4/2;
	}
	
	.link_social {
		justify-content: center !important;
	}
	
}
@media screen and (max-width: 579px) {
	.banner_header_wrap {
		font-size: 0.8em;
	}
	.banner_header {
		justify-content: space-between;
	}
	.banner_header ul.social {
		display: none;
	}
	.banner_header > a {padding: 0;}
	.banner_header > a.area_riservata {
		padding: 3px 5px;
		border-width: 1px;
	}
	
	.elenco_servizi ul li {
		flex-direction: column-reverse;
		align-items: center;
		text-align: center;
	}
	.elenco_servizi .titolo4 {
		text-align: center !important;
	}
	
	.elenco_blocchi_link ul {
		gap: 30px;
	}
	.elenco_blocchi_link ul li {
		width: calc(50% - 15px);
	}
	
	.elenco_articoli .elenco_risultati .scheda_articolo { 
		flex-basis: 100%;
	}
}

@media screen and (max-width: 480px) {
	.banner_header > a.area_riservata {
		border: none;
	}
	.banner_header > a.area_riservata span {
		display: none;
	}
	
	.banner_header_wrap {
		position: relative;
	}
	.banner_header .cerca_wrapper label {
		display: block;
	}
	.banner_header .cerca_wrapper input {
		position: absolute;
		z-index: -1;
	}
	.banner_header .cerca_wrapper label svg {
		height: 16px;
	}
	.banner_header .cerca_wrapper button {
		display: none;
	}
	.banner_header .cerca_wrapper input:focus {
		top: 8px;
		z-index: 2;
		background: var(--background_medio);
	}
	.banner_header .cerca_wrapper input:focus ~ span {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: var(--background_medio);
		z-index: 1;
	}
	
	.banner_header .cerca_wrapper input:focus ~ label {
		opacity: 0;
	}
}

@media screen and (max-width: 379px) {
	.elenco_blocchi_link ul li {
		width: 100%;
	}
}
