:root{--blue:#0b3a66;--blue2:#082b4d;--orange:#f58220;--bg:#f7f8fa;--text:#2e3742;--white:#fff;--border:#d9e0e6;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);line-height:1.55}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-9999px;top:0;background:#fff;color:#000;padding:.8rem;z-index:999}.skip-link:focus{left:.5rem;top:.5rem}.site-header{background:#fff}.header-inner{max-width:var(--max);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem}.brand{display:flex;align-items:center;gap:1rem;color:var(--blue);text-decoration:none;font-weight:800;font-size:1.55rem}.brand img{width:78px;height:78px;object-fit:contain}.quick-links{display:flex;flex-wrap:wrap;gap:.9rem}.quick-links a{color:var(--blue);font-weight:700}.main-nav{position:sticky;top:0;z-index:100;background:var(--blue);box-shadow:0 2px 5px #0002}.main-nav ul{max-width:var(--max);margin:auto;padding:0;list-style:none;display:flex;align-items:stretch;justify-content:center}.main-nav a{display:block;color:#fff;text-decoration:none;font-weight:700;padding:1rem .8rem;border-bottom:4px solid transparent}.main-nav a:hover,.main-nav a:focus-visible{outline:3px solid var(--orange);outline-offset:-3px;border-bottom-color:var(--orange)}.menu-toggle{display:none}.hero{max-width:var(--max);margin:2rem auto;padding:2.2rem;background:#fff;border-radius:18px;display:grid;grid-template-columns:3fr 2fr;gap:2rem;align-items:center;border-left:6px solid var(--orange)}.hero h1{color:var(--blue);margin-top:0}.hero img{display:block;width:100%;max-height:400px;height:auto;object-fit:contain;object-position:center;border-radius:14px}.section-grid{max-width:var(--max);margin:2rem auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}.home-column{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.2rem;box-shadow:0 4px 12px #0000000c}.home-column>h1{color:var(--blue);font-size:1.5rem;border-bottom:4px solid var(--orange);padding-bottom:.45rem}.card{padding:1rem 0;border-bottom:1px solid var(--border)}.card:last-of-type{border-bottom:0}.card img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;object-position:center;background:#fff;border-radius:10px}.card h2{color:var(--blue);font-size:1.15rem}.meta{font-weight:700;color:#55606a}.btn,.share-button{display:inline-block;border:2px solid var(--blue);border-radius:9px;background:#fff;color:var(--blue);padding:.55rem .8rem;font-weight:800;text-decoration:none;cursor:pointer}.btn-primary{background:var(--orange);border-color:#8c4700;color:#1e1e1e}.btn-disabled{background:#eef1f4;border-color:#8a949d;color:#4b535a;cursor:not-allowed}.btn:focus-visible,.share-button:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.wide-section{max-width:var(--max);margin:2rem auto;padding:1.5rem;background:#fff;border-radius:16px}.video-feature{display:block}.video-feature>h2{margin-top:0;color:var(--blue)}.video-frame{width:100%;aspect-ratio:16/9;border:0;border-radius:12px}.sponsor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.sponsor-box{background:#fff;border:1px solid var(--border);border-radius:12px;min-height:150px;display:flex;align-items:center;justify-content:center;padding:1rem}.sponsor-box img{max-width:100%;max-height:110px;object-fit:contain}.site-footer{background:var(--blue2);color:#fff;padding:2rem 1rem}.site-footer>h1,.footer-grid,.copyright{max-width:var(--max);margin-left:auto;margin-right:auto}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.site-footer a{color:#fff}.site-footer a:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.content-page{max-width:900px;margin:2rem auto;padding:1.5rem;background:#fff;border-radius:16px}.content-page h1,.content-page h2{color:var(--blue)}.content-main-image{display:block;max-width:100%;width:auto;height:auto;max-height:900px;object-fit:contain;object-position:center;border-radius:12px;margin:1rem auto}.listing{max-width:var(--max);margin:2rem auto;padding:0 1rem}.listing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}.listing-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1rem}.listing-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;object-position:center;background:#fff;border-radius:10px}.useful-links{list-style:none;padding-left:0;display:flex;flex-direction:column;align-items:flex-start;gap:.65rem}.useful-links li{margin:0}.useful-links .btn{margin:0}
.share{position:relative;display:inline-block}.share-menu{position:absolute;z-index:20;background:#fff;border:1px solid var(--border);box-shadow:0 5px 20px #0003;border-radius:8px;padding:.4rem;min-width:190px}.share-menu[hidden]{display:none}.share-menu a,.share-menu button{display:block;width:100%;text-align:left;padding:.55rem;border:0;background:#fff;color:var(--blue);font-weight:700}.share-menu a:focus,.share-menu button:focus{outline:3px solid var(--orange)}@media(max-width:850px){.header-inner{align-items:flex-start;flex-direction:column}.main-nav ul{display:none;flex-direction:column;justify-content:flex-start}.main-nav ul.open{display:flex}.menu-toggle{display:block;margin:.5rem;color:#fff;background:transparent;border:2px solid #fff;padding:.6rem 1rem;font-weight:700}.hero{grid-template-columns:1fr}.section-grid{grid-template-columns:1fr}.listing-grid{grid-template-columns:1fr}.sponsor-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}}.gallery-listing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:1.2rem}.gallery-listing-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1rem}.gallery-listing-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.photo-thumb,.photo-thumb-static{background:#fff;border:1px solid var(--border);border-radius:10px;padding:.45rem;color:var(--blue);font-weight:700}.photo-thumb{cursor:pointer;display:block;text-decoration:none}.photo-thumb:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.photo-thumb img,.photo-thumb-static img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px;display:block}.photo-number{display:block;padding:.35rem .15rem}.photo-dialog{width:min(1000px,94vw);max-height:94vh;border:2px solid var(--blue);border-radius:14px;padding:0}.photo-dialog::backdrop{background:#0009}.photo-dialog-inner{padding:1rem;background:#fff}.photo-dialog img{display:block;max-width:100%;max-height:68vh;margin:.8rem auto;object-fit:contain}.photo-dialog-title{font-weight:800;color:var(--blue)}.search-form{display:flex;gap:.6rem;align-items:end;flex-wrap:wrap}.search-form label{font-weight:700}.search-form input{padding:.6rem;min-width:260px}.pagination{margin:1rem 0;display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}@media(max-width:900px){.gallery-listing-grid{grid-template-columns:repeat(2,1fr)}.photo-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.gallery-listing-grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:repeat(2,1fr)}}
.photo-item{margin:0}.photo-thumb{display:block}.photo-thumb .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.photo-viewer-image{display:block;max-width:100%;max-height:75vh;margin:1rem auto;object-fit:contain}.photo-viewer-page .actions{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0}

/* Controlli video accessibili FreeSwimmer */
.accessible-video-shell{width:100%}.accessible-video-controls{border:1px solid var(--border);border-radius:12px;padding:1rem;margin:.9rem 0 0;background:#fff}.accessible-video-progress{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;align-items:center;gap:.7rem;margin:0 0 .9rem}.video-progress-range{width:100%;min-width:0}.video-time{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.accessible-video-buttons{display:flex;flex-wrap:wrap;gap:.6rem}.accessible-video-buttons .btn{font:inherit}.accessible-video-buttons .btn:disabled{opacity:.6;cursor:not-allowed}.accessible-video-shell:fullscreen{background:#fff;padding:1rem;overflow:auto}.accessible-video-shell:fullscreen .video-frame{max-height:calc(100vh - 220px)}@media(max-width:600px){.accessible-video-progress{grid-template-columns:auto 1fr auto;gap:.45rem}}


/* Squadra nuoto */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:1.25rem}.team-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1rem;box-shadow:0 4px 12px #0000000c}.team-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center;border-radius:12px;margin-bottom:.9rem}.team-card h2{color:var(--blue);margin:.3rem 0 .7rem}.team-card p{margin:.45rem 0}.team-preview-photo{display:block;width:min(420px,100%);max-height:560px;object-fit:cover;border-radius:12px;margin:1rem 0}@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.team-grid{grid-template-columns:1fr}}


/* Presentazione Squadra nuoto */
.team-introduction{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.25rem;margin:1rem 0 1.5rem;box-shadow:0 4px 12px #0000000c}.team-introduction-photo{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:12px;margin-bottom:1rem}.team-introduction-text>:first-child{margin-top:0}.team-introduction-text>:last-child{margin-bottom:0}.team-listing>h2{color:var(--blue);margin-top:1.5rem}.team-card h3{color:var(--blue);margin:.3rem 0 .7rem;font-size:1.2rem}


/* Sponsor e Partner */
.home-support-section>h1{color:var(--blue);border-bottom:4px solid var(--orange);padding-bottom:.45rem}.support-grid{display:grid;gap:1rem}.support-grid-sponsors{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.support-grid-partners{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.support-card{min-width:0;background:#fff;border:1px solid var(--border);border-radius:14px;padding:1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 4px 12px #0000000c}.support-grid-sponsors .support-card{min-height:175px}.support-grid-partners .support-card{min-height:140px;padding:.8rem}.support-card-link{color:var(--blue);text-decoration:none;font-weight:800}.support-card-link:hover{box-shadow:0 7px 20px #00000018;transform:translateY(-1px)}.support-card-link:focus-visible{outline:4px solid var(--orange);outline-offset:3px}.support-card img{display:block;width:100%;height:105px;object-fit:contain;margin:auto auto .65rem}.support-grid-partners .support-card img{height:80px}.support-name{display:block;font-weight:800;color:var(--blue);line-height:1.25}.support-listing>h1{color:var(--blue)}.support-directory-section{margin:1.5rem 0 2rem}.support-directory-section>h2{color:var(--blue)}.support-directory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.support-directory-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.1rem}.support-directory-card img{display:block;width:100%;height:130px;object-fit:contain;margin-bottom:.8rem}.support-directory-card h3{color:var(--blue);margin:.4rem 0}.supporter-detail-logo{display:block;width:min(520px,100%);max-height:230px;object-fit:contain;margin:1rem auto 1.3rem}.supporter-lead{font-size:1.08rem;font-weight:700}.supporter-links{padding-left:1.3rem}.supporter-links li{margin:.45rem 0}@media(max-width:900px){.support-directory-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.support-grid-sponsors,.support-grid-partners,.support-directory-grid{grid-template-columns:1fr}.support-grid-sponsors .support-card,.support-grid-partners .support-card{min-height:130px}.support-card img,.support-grid-partners .support-card img{height:90px}}

/* Chi siamo e Contatti */
.about-introduction{margin-bottom:1.7rem}.about-main-photo{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:14px;margin-bottom:1rem}.organization-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem;margin:1rem 0 1.7rem}.organization-card{border:1px solid var(--border);border-radius:14px;padding:1rem;background:#fff}.organization-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;margin-bottom:.8rem}.organization-card h3{color:var(--blue);margin:.3rem 0}.safeguarding-block{border-left:5px solid var(--orange);padding:1rem;background:#f9fafb;border-radius:10px}.safeguarding-photo{display:block;width:min(360px,100%);max-height:450px;object-fit:cover;border-radius:12px;margin-bottom:1rem}.about-contacts-link{margin-top:1.8rem}.contact-details,.contact-form-section{margin:1rem 0 1.8rem}.contact-form{display:grid;gap:.9rem}.contact-form .field{margin:0}.contact-form label{font-weight:700}.contact-form input,.contact-form textarea{width:100%;padding:.7rem;border:1px solid #9aa6b2;border-radius:8px;font:inherit}.contact-form input:focus,.contact-form textarea:focus{outline:3px solid var(--orange);outline-offset:2px}.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-errors{border:2px solid #a61b1b;background:#fff4f4;border-radius:10px;padding:1rem;margin:1rem 0}.contact-success{border:2px solid #176b35;background:#f1fff5;border-radius:10px;padding:1rem;margin:1rem 0;font-weight:700}.organization-preview-photo{display:block;width:min(420px,100%);max-height:520px;object-fit:cover;border-radius:12px;margin:1rem 0}@media(max-width:700px){.organization-grid{grid-template-columns:1fr}}

/* Pagine, sottopagine e blocchi CMS */
.main-nav li.has-submenu{position:relative}.main-nav .submenu{display:none;position:absolute;left:0;top:100%;min-width:230px;background:var(--blue2);z-index:40;padding:.35rem 0;box-shadow:0 8px 22px #0003}.main-nav .submenu li{display:block}.main-nav .submenu a{display:block;white-space:normal}.main-nav li.has-submenu:hover>.submenu,.main-nav li.has-submenu:focus-within>.submenu{display:block}.cms-page{max-width:var(--max);margin:2rem auto;padding:0 1rem}.cms-page>.content-page{max-width:none;margin:0}.cms-rich-text,.cms-image-block,.cms-module-block{margin:1.3rem 0}.cms-image-block{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1rem}.cms-image-block img{display:block;max-width:100%;height:auto;margin:auto;border-radius:10px}.cms-image-block figcaption{text-align:center;font-weight:700;margin-top:.65rem}.cms-breadcrumbs{max-width:var(--max);margin:1rem auto;padding:0 1rem}.cms-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;padding:0}.cms-breadcrumbs li:not(:last-child)::after{content:"›";margin-left:.45rem}.custom-fields-public{margin:1.25rem 0}.custom-field{margin:.75rem 0}.custom-field-image{display:block;max-width:100%;max-height:600px;object-fit:contain;border-radius:12px}@media(max-width:850px){.main-nav .submenu{display:block;position:static;box-shadow:none;padding-left:1rem;background:transparent}.main-nav .submenu a{padding-left:1.2rem}}
.cms-separator{border:0;border-top:1px solid #c9d2dc;margin:2rem 0}.cms-table-block .table-wrap{overflow-x:auto}.cms-table-block table{width:100%;border-collapse:collapse}.cms-table-block th,.cms-table-block td{padding:.7rem;border:1px solid #c9d2dc;text-align:left;vertical-align:top}.cms-list-block,.cms-table-block,.cms-contact-form{margin:1.5rem 0}

/* Autonomia CMS 0.7.1 */
.cms-document-list{margin:1.5rem 0;background:#fff;border:1px solid var(--border);border-radius:14px;padding:1rem}.cms-document-list h2{margin-top:0;color:var(--blue)}.cms-document-list li{margin:.55rem 0}.cms-video-player-block{margin:1rem 0 1.8rem}.footer-note{max-width:var(--max);margin:1rem auto}.custom-field-media img{max-width:100%;height:auto}
.entity-extra-block{margin:1.25rem 0}.entity-extra-block h4{margin:.4rem 0 .8rem;color:var(--blue)}.team-card .entity-extra-block{margin-top:1rem}.team-card .entity-extra-video .video-player-wrap{max-width:100%}

/* Release 1.0.0 - Intestazione e footer completamente configurabili */
.quick-links-dynamic{display:grid;grid-template-columns:repeat(var(--quick-count,1),minmax(0,1fr));gap:.75rem;flex:1;min-width:0;align-self:stretch}
.site-info-item-header{min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:.65rem .55rem;border-left:1px solid var(--border)}
.site-info-item-header:first-child{border-left:0}.site-info-label{font-weight:700}.site-info-item-header .site-info-label{color:var(--text);font-size:.9rem}.site-info-item-header a{overflow-wrap:anywhere}.site-info-item-header a:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.footer-items-grid{max-width:var(--max);margin:0 auto;display:block}
.site-info-item-footer{display:block;min-width:0;margin:0;padding:.5rem 0;line-height:1.45}.site-info-item-footer+.site-info-item-footer{border-top:1px solid rgba(255,255,255,.18)}.site-info-item-footer .site-info-label{display:inline;font-weight:700;margin-right:.35rem}.site-info-item-footer .site-info-value,.site-info-item-footer a{overflow-wrap:anywhere}
@media(max-width:850px){.quick-links-dynamic{width:100%;grid-template-columns:1fr}.site-info-item-header{border-left:0;border-top:1px solid var(--border);align-items:flex-start;text-align:left}.site-info-item-header:first-child{border-top:0}}

/* FreeSwimmer 12.0 - menu principale a gruppi accessibili */
.main-nav>ul>li{position:relative}
.main-nav .menu-group-toggle{display:block;width:100%;height:100%;margin:0;border:0;border-bottom:4px solid transparent;background:transparent;color:#fff;font:inherit;font-weight:700;line-height:inherit;padding:1rem .8rem;cursor:pointer;text-align:left;text-decoration:none;appearance:none;-webkit-appearance:none}
.main-nav .menu-group-toggle:hover,.main-nav .menu-group-toggle:focus-visible{outline:3px solid var(--orange);outline-offset:-3px;border-bottom-color:var(--orange)}
.main-nav .menu-group .submenu{position:absolute;left:0;top:100%;min-width:240px;max-width:340px;margin:0;padding:.35rem 0;background:var(--blue2);box-shadow:0 8px 22px #0003;z-index:120;list-style:none}
.main-nav .menu-group .submenu[hidden]{display:none!important}
.main-nav .menu-group .submenu:not([hidden]){display:block}
.main-nav .menu-group .submenu li{display:block}
.main-nav .menu-group .submenu a{display:block;white-space:normal;padding:.8rem 1rem;border-bottom:0}
@media(max-width:850px){
  .main-nav .menu-group-toggle{padding:1rem .8rem}
  .main-nav .menu-group .submenu{position:static;min-width:0;max-width:none;width:100%;box-shadow:none;background:#082b4d;padding:.2rem 0 .4rem 1rem}
  .main-nav .menu-group .submenu[hidden]{display:none!important}
  .main-nav .menu-group .submenu:not([hidden]){display:block}
  .main-nav .menu-group .submenu a{padding:.75rem 1.2rem}
}

/* Tabelle personalizzabili */
.cms-typed-table caption{text-align:left;font-weight:700;padding:.7rem 0}.cms-typed-table .cell-align-left{text-align:left}.cms-typed-table .cell-align-center{text-align:center}.cms-typed-table .cell-align-right{text-align:right}.cms-table-image{display:block;width:110px;height:110px;max-width:100%;object-fit:contain;background:#fff;border:1px solid #d5dce3;border-radius:10px;margin:0 auto}.cms-typed-table td,.cms-typed-table th{vertical-align:middle}.mobile-table-label{display:none}
@media(max-width:720px){.cms-typed-table-cards{overflow:visible}.cms-typed-table-cards table,.cms-typed-table-cards tbody,.cms-typed-table-cards tr,.cms-typed-table-cards td,.cms-typed-table-cards th[scope=row]{display:block;width:100%}.cms-typed-table-cards thead{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cms-typed-table-cards tr{border:1px solid #c9d2dc;border-radius:12px;margin:0 0 1rem;background:#fff;overflow:hidden}.cms-typed-table-cards td,.cms-typed-table-cards th[scope=row]{border:0;border-bottom:1px solid #e0e5ea;padding:.75rem;text-align:left}.cms-typed-table-cards td:last-child,.cms-typed-table-cards th[scope=row]:last-child{border-bottom:0}.cms-typed-table-cards .mobile-table-label{display:block;font-weight:700;color:#0b3a66;margin-bottom:.25rem}.cms-typed-table-cards .cms-table-image{margin:.25rem 0;width:120px;height:120px}}

/* FreeSwimmer 13.0 - Moduli, fase 1 */
.form-module-card,.form-public{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.2rem;margin:1.25rem 0}.form-module-card img{display:block;width:100%;max-height:260px;object-fit:contain;border-radius:10px;margin-bottom:1rem}.form-module-card h3,.form-public h2,.form-public h3{color:var(--blue)}.public-form .field,.form-field{margin:1rem 0}.public-form label,.public-form legend{font-weight:700}.public-form input[type=text],.public-form input[type=email],.public-form input[type=tel],.public-form input[type=number],.public-form input[type=date],.public-form input[type=url],.public-form textarea,.public-form select{width:100%;max-width:760px;padding:.7rem;border:1px solid #8f9ca8;border-radius:8px;background:#fff;font:inherit}.public-form textarea{min-height:130px}.public-form input:focus-visible,.public-form textarea:focus-visible,.public-form select:focus-visible,.public-form button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.public-form fieldset{border:1px solid var(--border);border-radius:10px;padding:1rem}.public-form fieldset>label{display:block;margin:.5rem 0}.form-info-block{border-left:5px solid var(--orange);padding:.8rem 1rem;background:#f8fafb;margin:1rem 0}.form-errors{border:2px solid #a61b1b;background:#fff4f4;border-radius:10px;padding:1rem;margin:1rem 0}.form-success{border:2px solid #176b35;background:#f1fff5;border-radius:10px;padding:1rem;margin:1rem 0}.form-navigation{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.25rem}.form-navigation button{font:inherit}.form-preview-note{border-left:5px solid var(--orange);padding:.75rem 1rem;background:#fff8ef}.form-preview-page{border-top:1px solid var(--border);padding-top:1rem;margin-top:1rem}.form-description{font-size:1.05rem}

/* Moduli 13.0 Beta 2 */
.public-form [hidden]{display:none!important}.form-rule-target[hidden]{display:none}.form-rule-target{margin-bottom:1rem}.form-computed-field{padding:.65rem;border-left:4px solid #cbd4dc}.acceptance-resource{margin:.35rem 0 .35rem 1.8rem}.form-info-block{margin:1rem 0}.form-public h2,.form-public h3,.form-public h4{scroll-margin-top:1rem}
.form-group-widget>[data-group-members]{display:grid;gap:1rem;margin:1rem 0}.public-form .form-group-member{background:#f8fafb;border-left:5px solid var(--blue)}.form-group-member legend{color:var(--blue)}.form-group-repeat-block{margin:1rem 0;padding:1rem;border:1px solid #cbd5e1;border-radius:.5rem}.form-group-repeat-block>[data-group-repeat-items]{display:grid;gap:.75rem;margin:.75rem 0}.form-group-repeat-item{margin:0;padding:.85rem;border:1px dashed #94a3b8}.form-group-repeat-item>legend{font-weight:700}

/* Moduli 13.0 beta3: pagina modulo autonoma */
.form-standalone-page{background:#f4f7f9;min-height:100vh}.form-standalone-header{background:#fff;border-bottom:1px solid var(--border);padding:.8rem 1rem}.form-standalone-brand{max-width:var(--max);margin:0 auto;display:flex;align-items:center;gap:.8rem;color:var(--blue);font-weight:800;text-decoration:none}.form-standalone-brand img{width:auto;height:64px;max-width:150px;object-fit:contain}.form-standalone-main{width:min(calc(100% - 2rem),900px);margin:1.2rem auto 2rem}.form-standalone-footer{width:min(calc(100% - 2rem),900px);margin:0 auto 2rem;text-align:center;color:#52606b}.form-standalone-thumbnail{display:block;width:100%;max-height:360px;object-fit:contain;margin:0 0 1rem;border-radius:10px}.form-public-meta{display:grid;grid-template-columns:max-content 1fr;gap:.25rem .7rem;margin:1rem 0}.form-public-meta dt{font-weight:700}.form-public-meta dd{margin:0}.form-contact-block{margin:1rem 0;padding:.8rem 1rem;border-left:4px solid var(--blue);background:#f8fafb}.form-contact-block h3{margin-top:0}.form-contact-list{margin:.35rem 0;padding-left:1.25rem}.form-contact-list li{margin:.35rem 0}.form-preview-toolbar{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1rem;margin-bottom:1rem}@media(max-width:600px){.form-public-meta{grid-template-columns:1fr}.form-public-meta dd{margin-bottom:.5rem}.form-standalone-brand img{height:52px}}
.form-public-title{color:var(--blue);font-weight:800;line-height:1.15;border-bottom:4px solid var(--orange);padding:.35rem 0 .55rem;margin:.25rem 0 1rem}.form-title-align-left{text-align:left}.form-title-align-center{text-align:center}.form-title-align-right{text-align:right}.form-description{font-size:1.05rem;margin:0 0 1.2rem}.form-description>:first-child{margin-top:0}.form-description>:last-child{margin-bottom:0}

/* Moduli 13.0 beta28.1: tipografia compatta ispirata ai moduli Wufoo, con istruzioni sempre leggibili */
.form-standalone-page{font-size:.875rem;line-height:1.45}
.form-standalone-page .form-public{padding:1rem;margin:1rem 0}
.form-standalone-page .form-public-title{font-size:1.45rem;line-height:1.2;margin:.2rem 0 .8rem;padding:.25rem 0 .45rem;border-bottom-width:3px}
.form-standalone-page .form-public h2{font-size:1.15rem;line-height:1.3;margin:1rem 0 .55rem}
.form-standalone-page .form-public h3{font-size:1rem;line-height:1.35;margin:.85rem 0 .45rem}
.form-standalone-page .form-public h4{font-size:.95rem;line-height:1.35;margin:.75rem 0 .4rem}
.form-standalone-page .form-description{font-size:.875rem;line-height:1.5;margin:0 0 1rem}
.form-standalone-page .public-form .field,
.form-standalone-page .public-form .form-field{margin:.7rem 0}
.form-standalone-page .public-form label,
.form-standalone-page .public-form legend{font-size:.875rem;line-height:1.4;font-weight:700}
.form-standalone-page .public-form input[type=text],
.form-standalone-page .public-form input[type=email],
.form-standalone-page .public-form input[type=tel],
.form-standalone-page .public-form input[type=number],
.form-standalone-page .public-form input[type=date],
.form-standalone-page .public-form input[type=url],
.form-standalone-page .public-form input[type=file],
.form-standalone-page .public-form textarea,
.form-standalone-page .public-form select{font-family:Arial,Helvetica,sans-serif;font-size:.875rem;line-height:1.35;padding:.5rem .6rem;border-radius:6px}
.form-standalone-page .public-form textarea{min-height:110px}
.form-standalone-page .public-form fieldset{padding:.8rem;border-radius:8px}
.form-standalone-page .public-form fieldset>label{margin:.35rem 0}
.form-standalone-page .public-form .help,
.form-standalone-page .form-info-block,
.form-standalone-page .form-contact-block,
.form-standalone-page .form-preview-note,
.form-standalone-page .acceptance-resource{font-size:.875rem;line-height:1.5;color:#36424c}
.form-standalone-page .public-form .help{margin:.3rem 0 .55rem}
.form-standalone-page .form-info-block{padding:.65rem .85rem;margin:.75rem 0;border-left-width:4px}
.form-standalone-page .form-group-widget>[data-group-members]{gap:.75rem;margin:.75rem 0}
.form-standalone-page .form-group-repeat-block{margin:.75rem 0;padding:.75rem}
.form-standalone-page .form-group-repeat-block>[data-group-repeat-items]{gap:.6rem;margin:.6rem 0}
.form-standalone-page .form-group-repeat-item{padding:.7rem}
.form-standalone-page .form-navigation{gap:.45rem;margin-top:1rem}
.form-standalone-page .public-form button,
.form-standalone-page .public-form .button,
.form-standalone-page .form-success .button,
.form-standalone-page .form-preview-toolbar .button{display:inline-block;font-family:Arial,Helvetica,sans-serif;font-size:.875rem;line-height:1.25;font-weight:700;padding:.45rem .7rem;border:1px solid var(--blue);border-radius:6px;background:#fff;color:var(--blue);text-decoration:none;cursor:pointer}
.form-standalone-page .public-form button.primary,
.form-standalone-page .public-form .button.primary,
.form-standalone-page .form-success .button.primary{background:var(--orange);border-color:#8c4700;color:#1e1e1e}
.form-standalone-page .public-form .button.danger,
.form-standalone-page .public-form button.danger{border-color:#a00000;color:#8a0000;background:#fff}
.form-standalone-page .public-form button:focus-visible,
.form-standalone-page .public-form .button:focus-visible,
.form-standalone-page .form-success .button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.form-standalone-page .form-public-meta,
.form-standalone-page .form-contact-list{font-size:.875rem}
@media(max-width:600px){
  .form-standalone-page{font-size:.875rem}
  .form-standalone-page .form-public-title{font-size:1.3rem}
  .form-standalone-page .public-form input[type=text],
  .form-standalone-page .public-form input[type=email],
  .form-standalone-page .public-form input[type=tel],
  .form-standalone-page .public-form input[type=number],
  .form-standalone-page .public-form input[type=date],
  .form-standalone-page .public-form input[type=url],
  .form-standalone-page .public-form input[type=file],
  .form-standalone-page .public-form textarea,
  .form-standalone-page .public-form select{font-size:1rem}
}
.shared-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.8rem;margin:1rem 0}.shared-report-card{border:1px solid var(--border);border-radius:10px;padding:1rem;background:#fbfcfd}.shared-report-card h2{font-size:1rem!important;margin:0 0 .35rem!important}.shared-report-value{font-size:1.55rem;font-weight:800;color:var(--blue);margin:.2rem 0 .55rem}.shared-report-card dl{display:grid;grid-template-columns:minmax(110px,1fr) auto;gap:.3rem .7rem;margin:.5rem 0 0}.shared-report-card dt{font-weight:700}.shared-report-card dd{margin:0;text-align:right}@media(max-width:600px){.shared-report-grid{grid-template-columns:1fr}.shared-report-card dl{grid-template-columns:1fr}.shared-report-card dd{text-align:left;margin-bottom:.35rem}}

/* Beta 38.3 - disposizione responsive delle opzioni per Scelta singola e Caselle multiple */
.public-form .choice-options{display:grid;gap:.45rem 1rem;margin:.35rem 0 0}
.public-form .choice-options>label{display:block;margin:0;min-width:0}
.public-form .choice-layout-auto{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.public-form .choice-layout-one{grid-template-columns:1fr}
.public-form .choice-layout-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.public-form .choice-layout-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.public-form .choice-layout-inline{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.45rem 1.25rem}
.public-form .choice-layout-inline>label{flex:0 1 auto}
@media(max-width:640px){.public-form .choice-layout-two,.public-form .choice-layout-three{grid-template-columns:1fr}.public-form .choice-layout-inline{display:grid;grid-template-columns:1fr}}

/* Beta 38.3.1 - rifiniture finali moduli: spaziatura campi e report condiviso */
.form-standalone-page .public-form .field>label[for],
.form-standalone-page .public-form .form-field>label[for],
.form-standalone-page .public-form fieldset.field>label[for]{display:block;margin:0 0 6px}
.form-standalone-page .public-form fieldset.field>legend{margin-bottom:6px}
.form-standalone-page .public-form fieldset.field>input+label[for],
.form-standalone-page .public-form fieldset.field>select+label[for],
.form-standalone-page .public-form fieldset.field>textarea+label[for]{margin-top:.65rem}
.form-standalone-page .public-form .field>.help{margin-top:.35rem}
.shared-report-public{max-width:900px;margin-left:auto;margin-right:auto}
.shared-report-public>p:first-of-type{margin:.25rem 0 1rem;color:#52606b}
.shared-report-public .shared-report-grid{gap:1rem;margin:1.1rem 0 1.4rem}
.shared-report-public .shared-report-card{padding:1rem 1.05rem;box-shadow:0 2px 8px #0000000a}
.shared-report-public .shared-report-card h2{color:var(--blue);line-height:1.3}
.shared-report-public .shared-report-value{line-height:1.2;margin:.3rem 0 .7rem}
.shared-report-public>h2{margin-top:1.5rem}
.shared-report-public .actions{display:flex;flex-wrap:wrap;gap:.55rem;margin:.75rem 0}
@media(max-width:600px){.shared-report-public .actions{align-items:stretch}.shared-report-public .actions .button{width:100%;text-align:center}}

/* Le voci del menu passano intere alla riga seguente quando lo spazio finisce. */
@media (min-width:851px){.main-nav>ul{flex-wrap:wrap;justify-content:center;padding-inline:1rem}.main-nav>ul>li{flex:none;white-space:nowrap}.main-nav>ul>li>a,.main-nav>ul>li>.menu-group-toggle{white-space:nowrap}.main-nav .submenu li{white-space:normal}}

/* Uniform content sharing, with visible labels and a panel in the normal flow. */
.share{display:block;margin:.8rem 0 1.2rem;max-width:100%}
.share .share-menu{position:static;width:min(100%,25rem);min-width:0;box-sizing:border-box;margin-top:.5rem}
.share .share-menu a,.share .share-menu button{white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
.share .share-menu [hidden]{display:none!important}
.share [data-share-manual]{padding:.55rem}
.share [data-share-manual] input{display:block;width:100%;box-sizing:border-box}

.gallery-photo-share{display:inline-block;margin:0;vertical-align:middle}
.gallery-photo-share .share-menu{position:absolute;right:0;z-index:30;width:min(25rem,calc(100vw - 4rem));max-width:none}
.photo-dialog-controls,.photo-viewer-controls{flex-wrap:wrap}
