:root{--navy:#143e66;--navy-dark:#102d4b;--blue:#2477a7;--cyan:#50b6d1;--orange:#f0a24b;--paper:#fbfaf7;--pale:#eaf4f7;--ink:#19344b;--muted:#526779;--border:#dce6e9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,"Helvetica Neue",sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.container{width:min(1160px,calc(100% - 64px));margin:auto}.skip-link{position:absolute;left:-9999px;z-index:50;background:white;padding:12px}.skip-link:focus{left:12px;top:12px}.site-header{background:#fff;position:relative;z-index:10;border-bottom:1px solid #e5e9ed}.header-row{height:92px;display:flex;justify-content:space-between;align-items:center;gap:28px}.institution{display:flex;align-items:center;gap:13px;text-decoration:none}.institution-mark{width:49px;height:49px;display:grid;place-items:center;border:2px solid var(--navy);border-radius:50%;color:var(--navy);font-family:Georgia,serif;font-weight:700;font-size:17px;letter-spacing:-3px;padding-right:4px}.institution-mark span{color:var(--blue)}.institution-name{font-size:12px;line-height:1.35;letter-spacing:.01em;text-transform:uppercase;color:var(--navy)}.institution-name strong{font-size:14px}.main-nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:700}.main-nav a{text-decoration:none}.main-nav a:hover{color:var(--blue)}.main-nav .nav-contact{padding:12px 18px;border:1px solid var(--navy);border-radius:3px}.menu-toggle,.mobile-nav{display:none}.hero{background:var(--navy);color:#fff;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr .82fr;gap:75px;align-items:center;min-height:640px;padding-top:64px;padding-bottom:64px}.hero-copy{padding:20px 0}.eyebrow{display:flex;align-items:center;gap:11px;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin:0 0 28px}.eyebrow.light{color:#b9e3f4}.eyebrow-rule{height:2px;width:24px;background:var(--orange);flex-shrink:0}.eyebrow-dot{opacity:.5}.hero h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em}.hero h1{font-size:clamp(48px,5.2vw,76px);line-height:1.08;margin:0 0 30px}.hero h1 em,h2 em{font-weight:400;color:var(--orange);font-style:italic}.hero-lead{max-width:520px;font-size:19px;line-height:1.7;color:#d9e9f3;margin:0 0 34px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;padding:16px 22px;font-size:13px;font-weight:800;text-decoration:none;border-radius:3px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-white{background:#fff;color:var(--navy)}.button-white:hover{background:#e7f5fa}.text-link{font-weight:700;text-decoration:none;font-size:13px}.hero-secondary{color:#e6f3f9}.hero-note{font-size:12px;color:#a6c5d7;margin-top:68px;border-left:2px solid var(--orange);padding-left:16px}.hero-image{margin:0;position:relative;align-self:stretch;min-height:530px;max-height:600px}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 50%;border-radius:3px;display:block}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:24px 18px 14px;font-size:11px;letter-spacing:.04em;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.6));text-shadow:0 1px 2px #000}.hero-accent{position:absolute;bottom:0;left:0;width:26%;height:5px;background:var(--orange)}.section{padding:110px 0;scroll-margin-top:20px}.section-heading{display:grid;grid-template-columns:1.15fr .75fr;gap:90px;align-items:end;margin-bottom:48px}.section-heading h2,.department h2,.contact h2{font-size:clamp(38px,4.3vw,58px);line-height:1.14;margin:0}.section-heading h2 em,.department h2 em{color:var(--blue)}.section-heading>p{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 3px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{display:flex;flex-direction:column;min-height:375px;background:#fff;border:1px solid var(--border);padding:29px 27px 24px;transition:transform .2s,border-color .2s}.service-card:hover{transform:translateY(-3px);border-color:#9cc3d2}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.service-index{font-size:12px;letter-spacing:.1em;color:var(--blue);font-weight:800}.service-icon{font-size:26px;color:var(--blue)}.service-card h3{font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.24;letter-spacing:-.025em;margin:0 0 15px;color:var(--navy)}.service-card h3 small{font-family:Arial,sans-serif;font-size:13px;letter-spacing:0;color:var(--blue)}.service-card>p{font-size:14px;line-height:1.75;color:var(--muted);margin:0 0 28px}.card-bottom{margin-top:auto;padding-top:18px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:14px}.card-bottom>span{font-size:11px;color:#738391}.card-bottom a{font-size:12px;font-weight:800;color:var(--blue);text-decoration:none}.card-bottom a:hover{text-decoration:underline}.service-featured{background:#edf6f8;border-color:#d1e5eb;grid-column:span 2}.service-featured h3{max-width:530px}.service-featured>p{max-width:620px}.status{font-size:10px;font-weight:800;letter-spacing:.07em;background:#f8e5c9;color:#8b561b;padding:7px 10px}.section-footnote{font-size:12px;color:#758692;line-height:1.7;margin:25px 0 0}.ideas{background:var(--pale)}.ideas-heading{margin-bottom:55px}.ideas-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#bfd8e2;border:1px solid #bfd8e2}.idea{background:var(--pale);padding:40px 44px 44px;min-height:275px}.idea-num{font-size:12px;font-weight:800;color:var(--blue)}.idea h3{font-family:Georgia,serif;font-weight:400;font-size:28px;letter-spacing:-.02em;line-height:1.23;max-width:400px;margin:22px 0 14px;color:var(--navy)}.idea p{font-size:14px;line-height:1.8;color:var(--muted);max-width:430px;margin:0}.department{background:#fff}.department-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.department-copy{padding-top:32px}.department-copy p{font-size:16px;line-height:1.9;color:var(--muted);margin:0 0 22px}.button-outline{border:1px solid var(--navy);color:var(--navy);margin-top:14px}.button-outline:hover{background:#eef6fa}.contact{background:var(--navy-dark);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr .9fr;gap:110px;align-items:center}.contact h2{margin-bottom:28px}.contact h2 em{color:var(--orange)}.contact-grid>div>p:not(.eyebrow){color:#d1e3ed;font-size:16px;line-height:1.8;max-width:490px}.contact-panel{background:#fff;color:var(--navy);padding:42px}.contact-label{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--blue)}.contact-panel h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:25px 0 6px}.contact-panel>p{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 27px}.contact-mail{display:flex;justify-content:space-between;gap:10px;font-size:17px;font-weight:800;color:var(--blue);text-decoration:none;overflow-wrap:anywhere}.contact-tip{border-top:1px solid var(--border);margin-top:34px;padding-top:22px;color:var(--muted);font-size:12px;line-height:1.8}.footer{background:#f4f6f5;padding:36px 0 20px}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:start}.footer-grid>div{display:flex;flex-direction:column;gap:8px}.footer-grid strong{font-size:13px}.footer-grid span,.footer-grid a{font-size:12px;color:var(--muted)}.footer-grid a{text-decoration:none}.footer-grid a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--border);margin-top:36px;padding-top:18px;font-size:11px;color:#778995}.footer-bottom a{text-decoration:none}@media(max-width:1000px){.main-nav{gap:16px}.hero-grid{gap:35px;grid-template-columns:1fr .8fr}.service-grid{grid-template-columns:repeat(2,1fr)}.service-featured{grid-column:span 2}.contact-grid{gap:40px}.department-grid{gap:50px}}@media(max-width:700px){.container{width:min(100% - 36px,540px)}.header-row{height:72px}.institution-mark{width:41px;height:41px;font-size:15px}.institution-name{font-size:10px}.institution-name strong{font-size:12px}.main-nav{display:none}.menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:transparent;padding:12px;cursor:pointer}.menu-toggle span{display:block;width:23px;height:2px;background:var(--navy)}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:14px 18px 25px;background:#fff;gap:0;border-top:1px solid var(--border)}.mobile-nav a{padding:13px 0;text-decoration:none;font-size:14px;border-bottom:1px solid var(--border)}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:35px;padding-top:50px;padding-bottom:42px;min-height:0}.hero-copy{padding:0}.hero h1{font-size:clamp(44px,10vw,65px)}.hero-lead{font-size:16px}.hero-note{margin-top:35px}.hero-image{min-height:0;max-height:none;aspect-ratio:3/3.3}.hero-image img{object-position:center 60%}.section{padding:74px 0}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:22px;font-size:14px}.section-heading h2,.department h2,.contact h2{font-size:41px}.service-grid{grid-template-columns:1fr}.service-featured{grid-column:span 1}.service-card{min-height:0;padding:25px}.card-top{margin-bottom:22px}.ideas-grid{grid-template-columns:1fr}.idea{min-height:0;padding:28px}.idea h3{font-size:25px}.department-grid,.contact-grid{grid-template-columns:1fr;gap:20px}.department-copy{padding-top:0}.contact-panel{padding:28px}.contact-mail{font-size:15px}.footer-grid,.footer-bottom{flex-direction:column}.eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}


/* V3: overrides explicit, minimal, and cache-busted */
body{font-size:18px;line-height:1.65}
.header-row{height:78px}
.institution-logo{display:block;width:158px;max-height:48px;height:auto;object-fit:contain;object-position:left center}
.main-nav{font-size:15px}
.hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.65fr);gap:55px;min-height:570px;padding-top:65px;padding-bottom:65px}
.hero-image{display:block;position:relative;align-self:center;min-height:0;max-height:none;width:100%;max-width:270px;margin:auto;padding:10px 10px 12px;background:white;border-radius:19px;box-shadow:0 14px 35px rgba(2,20,38,.2);transform:rotate(1deg);text-decoration:none}
.hero-image img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 55%;border-radius:11px}
.hero-image figcaption{position:static;background:none;text-shadow:none;color:#34536c;padding:10px 3px 0;text-align:center;font-size:13px;letter-spacing:0}
.hero-lead{font-size:21px;line-height:1.65}
.hero-note{font-size:15px;margin-top:42px}
.eyebrow{font-size:13px}
.button,.text-link{font-size:15px}
.section-heading>p,.department-copy p,.contact-grid>div>p:not(.eyebrow){font-size:18px}
.service-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:20px}
.service-card,.service-featured{flex:0 0 calc((100% - 40px)/3);min-height:425px;padding:29px 27px 25px;background:#fff;border:1px solid var(--border);border-radius:10px;grid-column:auto}
.service-card h3{font-size:27px}
.service-card>p{font-size:17px;line-height:1.65}
.card-bottom>span{font-size:14px}.card-bottom a{font-size:15px}.service-index{font-size:14px}.status{font-size:11px;border-radius:4px}
.idea h3{font-size:29px}.idea p{font-size:17px}.idea-num{font-size:14px}
.section-footnote{font-size:15px}
/* The contact card must stand apart from its dark section, without a white block */
.contact-panel{background:#22577e;color:#fff;border:1px solid #78b6d0;border-radius:12px;padding:40px;box-shadow:none}
.contact-label{font-size:13px;color:#bfe6f5}.contact-panel h3{font-size:35px;color:#fff}
.contact-mail{font-size:19px;color:#fff}.contact-tip{color:#d7edf6;border-color:#4d7d9f;font-size:15px}
/* Keep the original v1 light footer */
.footer{background:#f4f6f5;color:var(--ink)}
.footer-grid strong{font-size:15px}.footer-grid span,.footer-grid a{font-size:14px}.footer-bottom{font-size:12px}
@media(max-width:1000px){.hero-grid{gap:30px}.service-card,.service-featured{flex:0 0 calc((100% - 20px)/2)}.institution-logo{width:145px}}
@media(max-width:700px){.header-row{height:72px}.institution-logo{width:135px;max-height:42px}.hero-grid{display:flex;flex-direction:column;gap:28px;padding-top:45px;padding-bottom:45px;min-height:0}.hero-image{max-width:245px;align-self:center}.hero-lead{font-size:18px}.hero-note{margin-top:30px}.service-grid{display:flex;flex-direction:column}.service-card,.service-featured{flex:auto;width:100%;min-height:0}.service-card>p{font-size:17px}.section-heading>p{font-size:17px}.idea p{font-size:17px}.contact-panel{padding:28px}.contact-mail{font-size:17px}.eyebrow{font-size:12px}}

/* v4: proportional adjustments requested by the department */
.institution-logo{width:194px;max-height:62px}
.hero-image{max-width:330px;padding:12px 12px 14px;border-radius:20px}
.hero-image img{border-radius:12px}
.hero-grid{grid-template-columns:1.08fr .82fr;gap:52px}
.admin-contact{display:flex;flex-direction:column;gap:4px;margin-top:26px;padding-top:20px;border-top:1px solid #4d7d9f}
.admin-contact span{font-size:12px;font-weight:800;letter-spacing:.1em;color:#bfe6f5}
.admin-contact strong{font-size:21px;font-weight:600;color:#fff}
@media(max-width:1000px){.institution-logo{width:177px}.hero-image{max-width:300px}}
@media(max-width:700px){.institution-logo{width:158px;max-height:52px}.hero-image{max-width:285px}.hero-grid{display:flex;gap:28px}}

/* v5: equal prominence for both contacts */
.contact-person + .contact-person{margin-top:27px;padding-top:27px;border-top:1px solid #4d7d9f}
.contact-person h3{margin:14px 0 8px;font-size:30px;font-weight:400;color:#fff}
.contact-person .contact-mail{display:inline-block;font-size:19px;font-weight:700;color:#fff;text-decoration:underline;text-decoration-color:#9acfe4;text-underline-offset:4px}
.contact-person .contact-mail:hover{text-decoration-color:#fff}
.footer-bottom{justify-content:flex-end}
@media(max-width:700px){.contact-person h3{font-size:28px}.contact-person .contact-mail{font-size:17px}}


/* Card dello sportello, sotto la nota sulle attività */
.online-service-grid{margin-top:26px}
