/* Start custom CSS *//* MAZZ – stili specifici del documento Elementor 102, migrati dal child. */
.mazz-bozza .acc { max-width: 820px; }
.mazz-bozza .acc details { background: var(--surf); border: 1px solid var(--line); border-radius: 12px; margin-bottom: 10px; overflow: hidden; }
.mazz-bozza .acc summary { list-style: none; cursor: pointer; padding: 16px 18px; font-family: var(--fdisplay); font-weight: 700; font-size: 16px; display: flex; justify-content: space-between; gap: 14px; align-items: center; }
.mazz-bozza .acc summary::-webkit-details-marker { display: none; }
.mazz-bozza .acc summary::after { content: "+"; color: var(--blue); font-size: 22px; font-weight: 700; }
.mazz-bozza .acc details[open] summary::after { content: "–"; }
.mazz-bozza .acc .a { padding: 0px 18px 16px; font-size: 14.5px; color: var(--mut); }
.mazz-bozza .acc .a p { font: inherit; color: inherit; margin: 0px; }
.elementor .mazz-copy .acc { max-width: 820px; }
.elementor .mazz-copy .acc summary { font-size: 18px; line-height: 1.4; }
.elementor .mazz-copy .acc summary span { font-size: inherit; }
.elementor .mazz-copy .acc .a p { font-size: 16.5px; line-height: 1.65; }
body.page-id-102 { background: white; }
body.page-id-102 .elementor-30 [data-id="7539d1ed"] { display: none; }
body.page-id-102 .elementor-30 [data-id="f30339a9"] { padding: 16px max(24px, -640px + 50vw); border: 0px; box-shadow: none; }
body.page-id-102 .elementor-30 .elementor-container { align-items: center; max-width: none !important; width: 100% !important; }
body.page-id-102 .elementor-30 [data-id="c5803dea"] { width: 28%; }
body.page-id-102 .elementor-30 [data-id="5980972f"] { width: 72%; }
body.page-id-102 .elementor-30 .elementor-widget-wrap { padding: 0px; }
body.page-id-102 .elementor-30 .elementor-heading-title { font: 800 28px/34px var(--titoli),sans-serif; color: rgb(36, 41, 44); }
body.page-id-102 .elementor-30 .elementor-nav-menu--main > ul { width: 100%; gap: 32px; justify-content: space-between; }
body.page-id-102 .elementor-30 .elementor-nav-menu--main > ul > li > a.elementor-item { color: rgb(36, 41, 44); font: 600 18px / 24px "Hanken Grotesk", sans-serif !important; padding: 8px 0px !important; }
body.page-id-102 .elementor-30 .elementor-nav-menu--main > ul > li:last-child { margin-left: auto; }
body.page-id-102 .elementor-30 .elementor-nav-menu--main > ul > li:last-child > a { border-radius: 32px; background: rgb(36, 41, 44) !important; color: white !important; padding: 8px 24px !important; }
.elementor-102 .mazz-copy { background: rgb(255, 255, 255); color: rgb(36, 41, 44); }
.elementor-102 .mazz-copy [data-e-type] { min-width: 0px; box-sizing: border-box; }
.elementor-102 .mazz-copy [data-e-type].mazz-copy-section { padding: 72px 0px; border: 0px; }
.elementor-102 .mazz-copy [data-e-type].wrap { max-width: 1280px; padding-inline: 24px; }
.elementor-102 .mazz-copy :is(h1, h2, h3) { font-family: var(--titoli),sans-serif; color: rgb(36, 41, 44); font-weight: 700; }
.elementor-102 .mazz-copy h1.big { font-size: 52px; line-height: 1.06; margin-bottom: 28px; }
.elementor-102 .mazz-copy h2.hd { font-size: 40px; line-height: 1.1; margin-bottom: 28px; }
.elementor-102 .mazz-copy h3.sub { font-size: 24px; line-height: 1.15; }
.elementor-102 .mazz-copy p { font: 400 18px / 1.55 "Hanken Grotesk", sans-serif; color: rgb(36, 41, 44); }
.elementor-102 .mazz-copy p.lede { font-size: 22px; line-height: 1.45; }
.elementor-102 .mazz-copy p a { color: var(--primario); }
.elementor-102 .mazz-copy p.mazz-copy-caption { font: 700 16px/1.4 var(--titoli),sans-serif; color: var(--primario); }
.elementor-102 .mazz-copy .mazz-eyebrow { margin: 0px 0px 20px; }
.elementor-102 .mazz-copy .btn { font: 600 16px / 21px "Hanken Grotesk", sans-serif; border: 0px; border-radius: 32px; background: rgb(36, 41, 44); color: white; padding: 16px 24px; min-height: 53px; text-decoration: none; }
.elementor-102 .mazz-copy .btn + .btn { background: white; color: rgb(36, 41, 44); box-shadow: rgb(222, 227, 230) 0px 0px 0px 1px inset; }
body.page-id-102 .elementor-30 .elementor-element-752a3d6c a { color: rgb(36, 41, 44) !important; }
body.page-id-102 .elementor-30 .elementor-nav-menu--main > ul > li:last-child > a { border-radius: 32px !important; }
@media (max-width: 1199px) {
body.page-id-102 .elementor-30 [data-id="c5803dea"], body.page-id-102 .elementor-30 [data-id="5980972f"] { width: 50%; }
}
@media (max-width: 767px) {
.elementor-102 .mazz-copy [data-e-type].mazz-copy-section { padding: 44px 0px; }
}
@media (max-width: 767px) {
.elementor-102 .mazz-copy h1.big { font-size: 36px; }
}
@media (max-width: 767px) {
.elementor-102 .mazz-copy h2.hd { font-size: 30px; }
}
@media (max-width: 767px) {
.elementor-102 .mazz-copy p.lede { font-size: 20px; }
}
.elementor.elementor-102 .mazz-copy .acc { max-width: 960px; margin-inline: auto; display: block; }
.elementor-102 .mazz-copy .e-accordion-item-base { display: block; margin-bottom: 16px; border: 1px solid rgb(222, 227, 230); border-radius: 16px; background: white; overflow: hidden; }
.elementor-102 .mazz-copy .e-accordion-item-header-base { padding: 24px; cursor: pointer; background: rgb(244, 246, 247); }
.elementor-102 .mazz-copy .e-accordion-item-title-base span { font: 700 22px/1.25 var(--titoli),sans-serif; color: rgb(36, 41, 44); }
.elementor-102 .mazz-copy .e-accordion-item-content-base { padding: 24px; }
.elementor-102 .mazz-copy .e-accordion-item-content-base p { font: 400 18px / 1.55 "Hanken Grotesk", sans-serif; margin: 0px; }
.elementor-102 .mazz-copy summary { display: flex; align-items: center; gap: 16px; list-style: none; }
.elementor-102 .mazz-copy summary::after { content: "+"; margin-left: auto; flex: 0 0 auto; font: 400 28px / 1 "Hanken Grotesk", sans-serif; color: var(--primario); }
.elementor-102 .mazz-copy details[open] > summary::after { content: "−"; }
.elementor-102 .mazz-copy summary:focus-visible { outline: 3px solid var(--primario); outline-offset: -3px; }
.elementor-102 .mazz-copy .mazz-copy-actions { max-width: 960px; margin: 32px auto 0px; }
@media (max-width: 767px) {
.elementor-102 .mazz-copy .e-accordion-item-header, .elementor-102 .mazz-copy .e-accordion-item-content-base { padding: 20px; }
}
@media (max-width: 767px) {
.elementor-102 .mazz-copy .e-accordion-item-title-base span { font-size: 20px; }
}/* End custom CSS */