:root{--ink:#173b46;--accent:#007b87;--paper:#f3f8f8;--line:#cbdfe0}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 system-ui,sans-serif}header,main,footer{max-width:1000px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center;gap:20px}header img{max-width:190px;max-height:85px}a{color:#006571}nav{display:flex;flex-wrap:wrap;gap:18px}h1{font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.15;margin-top:16px}h2{font-size:1.35rem}section,.card{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;margin:20px 0}.choices{display:grid;grid-template-columns:1fr 1fr;gap:20px}.choices .card{margin:0}label{display:block;font-weight:600;margin:12px 0 5px}input[type=text],input[type=email],input[type=tel],input[type=url],input[type=search],input[type=date],input[type=number],select,textarea{width:100%;font:inherit;padding:11px;border:1px solid #739ca0;border-radius:6px}input[type=checkbox]{width:20px;height:20px;vertical-align:middle;margin-right:10px}button,.button{display:inline-block;background:var(--accent);border:0;border-radius:6px;padding:11px 20px;color:white;font:inherit;font-weight:600;text-decoration:none;margin:12px 8px 0 0;cursor:pointer}button.secondary{background:#e4eeee;color:var(--ink)}button.danger{background:#95352f}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #dd9e24;outline-offset:3px}.notice{padding:16px 20px;border-left:5px solid var(--accent);background:#e1f1f1;margin:20px 0}.error{background:#fff0ed;border-color:#a13c32}.muted{color:#4c6970;font-size:.93rem}.list{list-style:none;padding:0}.list li{padding:14px 0;border-bottom:1px solid var(--line)}.inline{display:inline}.badge{padding:4px 10px;background:#edf3f3;border-radius:5px;font-size:.85rem}fieldset{border:0;padding:0}legend{font-weight:700}dl.dati{margin:0}dl.dati>div{padding:8px 0;border-bottom:1px solid var(--line)}dl.dati dt{display:inline;font-weight:700}dl.dati dt::after{content:":"}dl.dati dd{display:inline;margin:0 0 0 6px}table{border-collapse:collapse;width:100%}td,th{padding:12px 6px;text-align:left;border-bottom:1px solid var(--line)}[hidden]{display:none!important}footer{font-size:.85rem}details summary{cursor:pointer;font-weight:600}@media(max-width:640px){.choices{grid-template-columns:1fr}header{align-items:flex-start;flex-direction:column}header,main,footer{padding:16px}section,.card{padding:18px}table{font-size:.9rem}}

.video-frame {width:100%;max-width:960px;aspect-ratio:16/9;min-height:220px;margin:1rem 0;}
.video-frame iframe,.video-frame #video-player {width:100%;height:100%;min-height:220px;border:0;}
#video-progress {width:100%;max-width:960px;height:1.2rem;}
[hidden] {display:none!important;}
.scuola-banner{background:white;border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:8px;padding:12px 18px;margin:18px 0}
.scuola-banner strong{display:block;font-size:1.08rem;margin:2px 0}
.scuola-banner .muted{display:block}
.titolo{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}
.titolo h1{margin-top:16px}
.titolo form{margin:16px 0 0}
.avviso-rete{margin:16px 0;padding:12px 18px;background:#f7fbfb;border:1px solid var(--line);border-radius:8px}
.avviso-rete[open]{background:#e1f1f1}
.avviso-rete ol{margin:8px 0 8px 20px;padding:0}
.avviso-rete li{margin:6px 0}
