/* Stile condiviso pagine istituzionali holding */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --mev-blue:#1a5fa8; --mev-teal:#1a9aab; --mev-navy:#0e1a2b; --mev-navy-2:#162840;
  --mev-gold:#F5C20C; --white:#ffffff; --text:#1a202c; --muted:#6b7280; --gray-light:#f8fafc;
  --shadow-md:0 8px 24px rgba(14,26,43,0.08);
}
html{scroll-behavior:smooth}
body{font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;color:var(--text);background:var(--white);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--mev-blue);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:920px;margin:0 auto;padding:0 24px}

nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,0.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(14,26,43,0.06)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:72px;max-width:1200px;margin:0 auto;padding:0 24px}
.nav-logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--mev-navy);font-size:1.05rem}
.nav-logo img{height:34px;width:auto}
.nav-logo em{font-style:normal;color:var(--mev-teal)}
.nav-links{display:flex;align-items:center;gap:24px;list-style:none}
.nav-links a{font-size:0.92rem;font-weight:500;color:var(--text);text-decoration:none}
.nav-links a:hover{color:var(--mev-blue)}
.nav-cta{padding:10px 18px;background:transparent;color:var(--mev-navy)!important;border:1px solid rgba(14,26,43,0.15);border-radius:8px;font-weight:600;font-size:0.9rem}
.nav-cta:hover{background:var(--gray-light)}
.nav-mobile{display:none;background:none;border:none;cursor:pointer;font-size:1.5rem;color:var(--mev-navy);padding:4px 8px;border-radius:6px;line-height:1}
.nav-mobile:hover{background:var(--gray-light)}
@media(max-width:720px){
  nav{position:relative}
  .nav-links{display:none}
  .nav-mobile{display:block}
  .nav-links.open{display:flex;position:absolute;top:72px;left:0;right:0;flex-direction:column;gap:0;background:#fff;padding:8px 0;border-bottom:1px solid rgba(14,26,43,0.08);box-shadow:0 8px 24px rgba(14,26,43,0.1);z-index:200}
  .nav-links.open li{width:100%}
  .nav-links.open a{display:block;padding:12px 24px;color:var(--text)!important;font-size:0.95rem;text-decoration:none}
  .nav-links.open a:hover{background:var(--gray-light)}
}

.page-hero{padding:64px 0 32px;background:var(--gray-light);border-bottom:1px solid rgba(14,26,43,0.06)}
.page-hero .crumbs{font-size:0.85rem;color:var(--muted);margin-bottom:10px}
.page-hero .crumbs a{color:var(--mev-blue);text-decoration:none}
.page-hero h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:800;color:var(--mev-navy);letter-spacing:-0.02em;line-height:1.15}
.page-hero p{font-size:1.05rem;color:var(--muted);margin-top:8px;max-width:720px}

main.content{padding:48px 0 80px}
main.content h2{font-size:1.5rem;font-weight:700;color:var(--mev-navy);margin:36px 0 12px;letter-spacing:-0.01em}
main.content h3{font-size:1.15rem;font-weight:700;color:var(--mev-navy);margin:24px 0 8px}
main.content p{margin-bottom:14px;color:var(--text)}
main.content ul,main.content ol{margin:14px 0 14px 24px}
main.content ul li,main.content ol li{margin-bottom:6px}
main.content table{width:100%;border-collapse:collapse;margin:16px 0;font-size:0.95rem}
main.content table th,main.content table td{padding:10px 12px;border-bottom:1px solid rgba(14,26,43,0.08);text-align:left}
main.content table th{background:var(--gray-light);font-weight:700;color:var(--mev-navy)}
main.content blockquote{border-left:3px solid var(--mev-teal);padding:8px 18px;margin:18px 0;background:var(--gray-light);color:var(--text)}
main.content code{font-family:'Space Mono',monospace;font-size:0.9em;padding:2px 6px;background:var(--gray-light);border-radius:4px}

.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin:24px 0}
.contact-card{padding:24px;background:var(--white);border:1px solid rgba(14,26,43,0.08);border-radius:14px}
.contact-card h3{font-size:1.05rem;color:var(--mev-navy);font-weight:700;margin-bottom:8px}
.contact-card p{font-size:0.92rem;color:var(--muted);margin-bottom:6px}
.contact-card a{color:var(--mev-blue);font-weight:500}

footer{background:var(--mev-navy-2);color:rgba(255,255,255,0.8);padding:48px 0 24px}
footer .container{max-width:1200px}
.footer-bottom{padding-top:20px;border-top:1px solid rgba(255,255,255,0.08);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:0.82rem;color:rgba(255,255,255,0.55);margin-top:32px}
.footer-bottom a{color:rgba(255,255,255,0.7);margin-right:14px}
