/* Scoped styles. No remote fonts, scripts, trackers or theme replacements. */
.sl-invest{--sl-ink:#102c42;--sl-body:#344b5d;--sl-accent:#006c68;--sl-paper:#f3f6f7;--sl-line:#dce5e9;--sl-white:#fff;color:var(--sl-body);font-family:inherit;font-size:clamp(16px,1.1vw,18px);line-height:1.65;max-width:1160px;margin:0 auto;box-sizing:border-box;overflow-wrap:anywhere}
.sl-invest *{box-sizing:border-box}
.sl-invest :where(h1,h2,h3,p){margin-top:0;margin-bottom:16px}
.sl-invest :where(h2,h3){color:var(--sl-ink);line-height:1.2;font-weight:700;letter-spacing:-.025em}
.sl-invest h2{font-size:clamp(26px,3.1vw,38px);margin-bottom:24px;max-width:870px}
.sl-invest h3{font-size:clamp(20px,1.8vw,24px);margin-bottom:14px}
.sl-invest strong{font-weight:700;color:inherit}
.sl-invest a{color:var(--sl-accent);text-decoration:underline;text-underline-offset:3px}
.sl-invest a:hover{text-decoration-thickness:2px}
.sl-invest a:focus-visible,.sl-invest summary:focus-visible{outline:3px solid #b97811;outline-offset:5px;border-radius:2px}
.sl-invest .sl-kicker{font-size:11px;line-height:1.5;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:var(--sl-accent);margin-bottom:20px}
.sl-invest .sl-subnav{font-size:13px;line-height:2.25;border-top:1px solid var(--sl-line);border-bottom:1px solid var(--sl-line);padding:15px 0;margin:0 0 34px;color:#7c8c96}
.sl-invest .sl-subnav a{display:inline-block;color:var(--sl-ink);text-decoration:none;margin:0 7px}
.sl-invest .sl-subnav a:first-child{margin-left:0}
.sl-invest .sl-subnav a:hover{text-decoration:underline}
.sl-invest .sl-hero{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(245px,.85fr);gap:38px;padding:42px 0 48px;border-bottom:1px solid var(--sl-line);align-items:start}
.sl-invest .sl-display{font-size:clamp(36px,4.5vw,57px);line-height:1.06;letter-spacing:-.045em;margin:0 0 26px;max-width:770px}
.sl-invest .sl-lead{font-size:clamp(17px,1.35vw,20px);line-height:1.65;margin-bottom:28px;max-width:660px}
.sl-invest .sl-hero-aside{background:var(--sl-paper);padding:30px;border-top:3px solid var(--sl-accent);min-width:0;margin-top:4px}
.sl-invest .sl-hero-aside p:last-child{margin-bottom:0}
.sl-invest .sl-card-index{color:var(--sl-accent);font-size:11px;font-weight:750;letter-spacing:.12em;line-height:1.5;margin-bottom:22px;text-transform:uppercase}
.sl-invest .sl-section{margin-top:55px;margin-bottom:0}
.sl-invest .sl-section>p{max-width:960px}
.sl-invest .sl-grid{display:grid;gap:20px;margin:28px 0 0;align-items:stretch}
.sl-invest .sl-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.sl-invest .sl-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.sl-invest .sl-card{border:1px solid var(--sl-line);padding:28px 25px;background:var(--sl-white);min-width:0;margin:0}
.sl-invest .sl-card p{font-size:16px;line-height:1.65}
.sl-invest .sl-card .sl-card-index{font-size:11px}
.sl-invest .sl-card p:last-child{margin-bottom:0}
.sl-invest .sl-textlink{padding-top:8px;font-weight:700;font-size:14px!important}
.sl-invest .sl-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:24px 0 0}
.sl-invest .wp-block-button{margin:0}
.sl-invest .wp-block-button__link{display:inline-block;border:1px solid var(--sl-accent);border-radius:4px;padding:14px 20px;background:var(--sl-accent);color:white;text-decoration:none;font-size:14px;font-weight:700;line-height:1.5;text-align:center;box-shadow:none;transition:filter .15s ease}
.sl-invest .wp-block-button__link:hover{filter:brightness(.92);text-decoration:none}
.sl-invest .sl-btn-alt .wp-block-button__link{background:transparent;color:var(--sl-ink);border-color:var(--sl-line)}
.sl-invest .sl-cta{margin-top:60px;padding:40px;background:var(--sl-ink);color:#edf3f6;border-radius:4px}
.sl-invest.sl-cta{padding:40px;background:var(--sl-ink);color:#edf3f6;border-radius:4px;margin-top:50px}
.sl-invest .sl-cta :where(h2,h3),.sl-invest.sl-cta :where(h2,h3){color:white}
.sl-invest .sl-cta .sl-kicker,.sl-invest.sl-cta .sl-kicker{color:#92d6ce}
.sl-invest .sl-cta .sl-btn-primary .wp-block-button__link,.sl-invest.sl-cta .sl-btn-primary .wp-block-button__link{background:#fff;color:var(--sl-ink);border-color:#fff}
.sl-invest .sl-cta .sl-btn-alt .wp-block-button__link,.sl-invest.sl-cta .sl-btn-alt .wp-block-button__link{color:white;border-color:#7993a1}
.sl-invest .sl-cta p,.sl-invest.sl-cta p{max-width:840px}
.sl-invest .sl-sources{border-top:1px solid var(--sl-line);margin-top:45px;padding-top:25px;font-size:13px}
.sl-invest .sl-sources h3{font-size:16px;letter-spacing:0}
.sl-invest .sl-sources a{font-size:12px}
.sl-invest .sl-small{font-size:13px;line-height:1.65;color:var(--sl-body)}
.sl-invest .sl-faq{border-top:1px solid var(--sl-line);padding:20px 0;margin:0}
.sl-invest .sl-faq:last-child{border-bottom:1px solid var(--sl-line)}
.sl-invest .sl-faq summary{cursor:pointer;font-size:17px;font-weight:700;color:var(--sl-ink);line-height:1.5}
.sl-invest .sl-faq p{padding:15px 0 0;margin:0;font-size:16px}
@media(max-width:900px){.sl-invest .sl-hero{grid-template-columns:1fr;gap:25px;padding:22px 0 36px}.sl-invest .sl-hero-aside{max-width:none}.sl-invest .sl-grid-3{grid-template-columns:1fr}.sl-invest .sl-hero-aside h3{max-width:600px}.sl-invest .sl-card{padding:24px}.sl-invest .sl-section{margin-top:40px}.sl-invest .sl-hero-aside p{max-width:640px}}
@media(max-width:560px){.sl-invest .sl-grid-2{grid-template-columns:1fr}.sl-invest .sl-cta,.sl-invest.sl-cta{padding:27px 22px}.sl-invest .sl-subnav{font-size:12px}.sl-invest .sl-subnav a{margin:0 4px}.sl-invest .sl-display{font-size:37px}.sl-invest .sl-actions{align-items:stretch;flex-direction:column}.sl-invest .wp-block-button{width:100%}.sl-invest .wp-block-button__link{width:100%;white-space:normal}.sl-invest .sl-hero-aside{padding:25px}}
@media(prefers-reduced-motion:reduce){.sl-invest .wp-block-button__link{transition:none}}
@media print{.sl-invest .sl-cta,.sl-invest .sl-actions,.sl-invest .sl-subnav{display:none}.sl-invest{font-size:11pt;max-width:none}.sl-invest .sl-grid{display:block}.sl-invest .sl-card{break-inside:avoid;margin-bottom:12px}.sl-invest .sl-hero{display:block}.sl-invest .sl-display{font-size:25pt}}

/* Municipality directory, v1.1.0. Everything remains inside the plugin's namespace. */
.sl-invest .sl-notice{background:#fff7e6;border-left:4px solid #b27613;padding:28px 30px}
.sl-invest .sl-notice h3{font-size:23px}
.sl-invest .sl-notice p:last-child{margin-bottom:0}
.sl-invest .sl-source-ref{font-size:.76em;white-space:nowrap;font-weight:600}
.sl-invest.sl-comuni-widget{font-size:16px;max-width:none;margin:28px 0 0}
.sl-invest .sl-province-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 28px}
.sl-invest .sl-province-stat{background:var(--sl-paper);border-top:2px solid var(--sl-accent);padding:18px 16px;display:flex;flex-direction:column;line-height:1.35}
.sl-invest .sl-province-stat strong{font-size:32px;color:var(--sl-ink);letter-spacing:-.03em}
.sl-invest .sl-province-stat span{font-size:13px;margin-top:5px}
.sl-invest .sl-comuni-controls{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(180px,1fr) auto;gap:16px;align-items:end;background:var(--sl-paper);padding:24px;margin-bottom:14px;border:1px solid var(--sl-line);border-radius:4px}
.sl-invest .sl-comuni-field{min-width:0}
.sl-invest .sl-comuni-field label{display:block;font-size:13px;font-weight:700;color:var(--sl-ink);margin-bottom:7px}
.sl-invest .sl-comuni-field input,.sl-invest .sl-comuni-field select{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:48px;margin:0;padding:11px 12px;font-family:inherit;font-size:16px;line-height:1.4;color:var(--sl-ink);background:var(--sl-white);border:1px solid #8297a5;border-radius:3px}
.sl-invest .sl-comuni-reset{min-height:48px;line-height:1.4;font-family:inherit;font-size:13px;font-weight:700;padding:11px 18px;border:1px solid var(--sl-accent);border-radius:3px;background:var(--sl-accent);color:#fff;cursor:pointer}
.sl-invest .sl-comuni-reset:disabled{background:#dce5e9;color:#536774;border-color:#bacbd3;cursor:default}
.sl-invest .sl-comuni-controls :where(input,select,button):focus-visible{outline:3px solid #b97811;outline-offset:3px}
.sl-invest .sl-comuni-count{font-size:14px;font-weight:700;color:var(--sl-ink);margin:22px 0 12px}
.sl-invest .sl-comuni-empty{background:#fff7e6;border:1px solid #e1c591;padding:20px}
.sl-invest .sl-comuni-table-wrap{border:1px solid var(--sl-line);border-radius:4px;overflow:hidden}
.sl-invest .sl-comuni-table{border-collapse:collapse;border:0;width:100%;table-layout:fixed;margin:0;font-size:15px;line-height:1.5}
.sl-invest .sl-comuni-table caption{text-align:left;padding:17px 20px;background:var(--sl-paper);font-size:12px;line-height:1.65;caption-side:bottom;color:var(--sl-body)}
.sl-invest .sl-comuni-table thead th{background:var(--sl-ink);color:#fff;font-size:12px;letter-spacing:.03em}
.sl-invest .sl-comuni-table th,.sl-invest .sl-comuni-table td{padding:13px 20px;vertical-align:top;text-align:left;border:0;border-bottom:1px solid var(--sl-line)}
.sl-invest .sl-comuni-table th:first-child{width:60%}
.sl-invest .sl-comuni-table tbody th{font-weight:600;color:var(--sl-ink)}
.sl-invest .sl-comuni-table tbody tr:nth-child(even){background:#f8fafb}
.sl-invest .sl-comuni-table tbody tr:hover{background:#eef6f4}
.sl-invest .sl-comuni-code{display:inline-block;margin-left:5px;padding:0 5px;background:#e7edf1;border-radius:3px;font-size:11px;white-space:nowrap}
.sl-invest .sl-comuni-note{display:block;font-size:11px;font-weight:400;color:var(--sl-accent);margin-top:4px}
.sl-invest .sl-comuni-widget [hidden],.sl-invest.sl-comuni-widget [hidden]{display:none!important}
@media(max-width:760px){.sl-invest .sl-comuni-controls{grid-template-columns:1fr 1fr}.sl-invest .sl-comuni-controls .sl-comuni-field:first-child{grid-column:1 / -1}.sl-invest .sl-province-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.sl-invest .sl-comuni-reset{min-height:48px}}
@media(max-width:480px){.sl-invest .sl-province-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sl-invest .sl-province-stat:last-child{grid-column:1 / -1}.sl-invest .sl-province-stat{padding:14px 16px}.sl-invest .sl-comuni-controls{display:flex;flex-direction:column;align-items:stretch;padding:17px}.sl-invest .sl-comuni-table th,.sl-invest .sl-comuni-table td{padding:12px 11px;font-size:13px}.sl-invest .sl-comuni-table caption{padding:14px 11px}.sl-invest .sl-notice{padding:23px 20px}.sl-invest .sl-comuni-code{margin-left:0}}
@media print{.sl-invest .sl-comuni-controls,.sl-invest .sl-comuni-empty{display:none!important}.sl-invest .sl-comuni-table-wrap{overflow:visible}.sl-invest .sl-comuni-table{font-size:10pt;table-layout:auto}.sl-invest .sl-comuni-table thead{display:table-header-group}.sl-invest .sl-comuni-table tr{break-inside:avoid}.sl-invest .sl-comuni-table th,.sl-invest .sl-comuni-table td{padding:5px 10px}.sl-invest .sl-comuni-table thead th{color:#000;background:#eee}.sl-invest .sl-province-stats{break-inside:avoid}}

/* v1.1.1: the home teaser occupies its own row, without restyling the theme. */
.sl-zi-home-slot{display:block;box-sizing:border-box;min-width:0;width:100%;max-width:1160px;margin:0 auto 36px;clear:both;grid-column:1 / -1;flex:0 0 100%}
.sl-zi-home-slot>.sl-invest.sl-cta{width:100%;margin-top:0}
@media print{.sl-zi-home-slot{display:none}}

/* v1.1.2: fallback slot is its own row, even in grid/flex custom home templates. */
#sl-zi-home.sl-zi-home-compat{display:block;position:relative;box-sizing:border-box;width:calc(100% - 32px);max-width:1160px;min-width:0;margin:28px auto 36px;padding:0;clear:both;grid-column:1 / -1;flex:0 0 calc(100% - 32px);float:none;opacity:1;visibility:visible;transform:none}
#sl-zi-home>.sl-home-teaser{display:block;width:100%;margin:0;opacity:1;visibility:visible}
@media(max-width:560px){#sl-zi-home.sl-zi-home-compat{width:calc(100% - 24px);flex-basis:calc(100% - 24px);margin:20px auto 28px}}
@media print{#sl-zi-home.sl-zi-home-compat,#sl-zi-admin-probe{display:none!important}}
