@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root{--navy:#071f2f;--navy-2:#0b3147;--blue:#006d8f;--cyan:#17a4b8;--mint:#bdece5;--paper:#f6f8f7;--white:#fff;--ink:#102631;--muted:#61727a;--line:#dce5e5;--orange:#e15b38;--radius:24px;--shadow:0 24px 70px rgba(7,31,47,.12);--container:min(1180px,calc(100% - 40px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"DM Sans",Arial,sans-serif;line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:var(--container);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:999;background:#fff;padding:.8rem 1rem}.skip-link:focus{top:1rem}
.utility{background:var(--navy);color:#d9e8eb;font-size:.77rem}.utility__inner{height:38px;display:flex;align-items:center;justify-content:space-between}.utility__inner div{display:flex;gap:22px}.utility a:hover{text-decoration:underline}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid rgba(7,31,47,.08)}.nav-wrap{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:54px;height:54px;object-fit:contain;background:var(--navy);border-radius:50%}.brand span{display:flex;align-items:center;gap:12px}.brand b{font:800 1.55rem/1 "Manrope";color:var(--navy)}.brand small{font-size:.67rem;line-height:1.18;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.main-nav{display:flex;align-items:center;gap:26px;font-size:.9rem;font-weight:600}.main-nav>a:not(.button){position:relative;padding:31px 0}.main-nav>a:not(.button):after{content:"";position:absolute;left:0;right:100%;bottom:20px;height:2px;background:var(--cyan);transition:.25s}.main-nav>a:hover:after,.main-nav>a.active:after{right:0}.menu-toggle{display:none;border:0;background:none;padding:10px}.menu-toggle span{display:block;width:26px;height:2px;background:var(--navy);margin:5px}
.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:var(--orange);color:#fff;padding:14px 23px;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(225,91,56,.28)}.button--small{padding:10px 18px}.button--light{background:#fff;color:var(--navy)}.text-link{display:inline-flex;gap:9px;align-items:center;font-weight:700;color:var(--blue)}.text-link span{transition:.2s}.text-link:hover span{transform:translateX(5px)}.eyebrow{margin:0 0 13px;color:var(--blue);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.eyebrow--light{color:var(--mint)}
h1,h2,h3{font-family:"Manrope",Arial,sans-serif;line-height:1.08;margin-top:0}h1{font-size:clamp(2.9rem,5.6vw,5.8rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,3.5vw,3.5rem);letter-spacing:-.045em}h3{font-size:1.35rem;letter-spacing:-.025em}
.hero{overflow:hidden;background:linear-gradient(135deg,#f4f8f7 0%,#eef7f6 58%,#dff2f1 100%);padding:70px 0 0}.hero__grid{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:65px}.hero h1{max-width:720px;margin-bottom:24px}.hero__lead{max-width:610px;font-size:1.19rem;color:#465d68}.actions{display:flex;align-items:center;gap:28px;margin-top:34px}.hero__visual{position:relative}.hero__visual:before{content:"";position:absolute;width:70%;aspect-ratio:1;border:1px solid rgba(0,109,143,.2);border-radius:50%;left:-15%;top:-9%}.hero__visual img{position:relative;width:100%;height:570px;object-fit:cover;border-radius:220px 220px 32px 32px;box-shadow:var(--shadow)}.hero__stat{position:absolute;right:-24px;bottom:28px;background:var(--navy);color:#fff;border-radius:18px;padding:21px 25px;box-shadow:var(--shadow)}.hero__stat b{display:block;font:800 2rem/1 "Manrope"}.hero__stat span{font-size:.78rem;color:#c2d7de}.hero__links{position:relative;margin-top:70px;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -10px 50px rgba(7,31,47,.07)}.hero__links a{padding:28px 26px;border-right:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;column-gap:15px}.hero__links a:last-child{border:0}.hero__links span{grid-row:1/3;color:var(--cyan);font:700 .7rem "Manrope"}.hero__links b{font:700 1rem "Manrope"}.hero__links small{color:var(--muted)}.hero__links a:hover{background:var(--paper)}
.section{padding:110px 0}.section--tint{background:var(--paper)}.section--dark{background:var(--navy);color:#fff}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.prose{font-size:1.15rem;color:#455d67}.prose p:first-child{margin-top:0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:42px}.section-head h2{margin:0}.cards{display:grid;grid-template-columns:1.15fr .925fr .925fr;gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.25s}.card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.card__image{height:250px;position:relative}.card__image img{width:100%;height:100%;object-fit:cover}.tag{display:inline-flex;background:var(--orange);color:#fff;border-radius:99px;padding:6px 11px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.card__image .tag{position:absolute;left:22px;top:20px}.tag--plain{position:static;background:#e4f2f1;color:var(--blue)}.card__body{padding:27px}.card__body time{display:block;color:var(--blue);font-size:.76rem;font-weight:700;margin:13px 0}.card__body h3{margin-bottom:12px}.card__body p{color:var(--muted)}.card__body a{font-weight:700;color:var(--blue)}
.impact{padding:0;background:var(--navy);color:#fff}.impact__grid{width:100%;max-width:none;display:grid;grid-template-columns:1fr 1fr}.impact__image img{width:100%;height:100%;min-height:650px;object-fit:cover}.impact__content{padding:100px max(40px,calc((100vw - 1180px)/2));padding-left:80px}.impact__content p:not(.eyebrow){color:#c3d5da;font-size:1.08rem}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border-block:1px solid rgba(255,255,255,.16);padding:31px 0;margin:34px 0}.metrics b{display:block;font:800 1.8rem "Manrope"}.metrics span{font-size:.75rem;color:#b6cbd1}
.newsletter__inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.newsletter-form label,.contact-form label,.login-card label{display:grid;gap:7px;font-size:.8rem;font-weight:700}.newsletter-form>div{display:flex}.newsletter-form input{flex:1;border:1px solid var(--line);border-radius:99px 0 0 99px;padding:16px 20px}.newsletter-form .button{border-radius:0 99px 99px 0}.newsletter-form small{color:var(--muted)}
.event-showcase{display:grid;grid-template-columns:1.18fr .82fr;gap:26px}.event-main{min-height:590px;position:relative;border-radius:30px;overflow:hidden;background:var(--navy)}.event-main:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 15%,rgba(7,31,47,.94) 100%)}.event-main>img{position:absolute;width:100%;height:100%;object-fit:cover}.event-main__overlay{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:45px;color:#fff}.event-main__overlay time{display:block;margin:18px 0 8px;color:var(--mint);font-weight:700}.event-main__overlay h3{font-size:2.15rem;max-width:580px;margin-bottom:12px}.event-main__overlay p{max-width:580px;color:#d6e4e7}.event-stack{display:grid;gap:15px}.event-stack article{border:1px solid var(--line);border-radius:22px;padding:26px;display:grid;grid-template-columns:77px 1fr;gap:20px;transition:.2s}.event-stack article:hover{border-color:var(--cyan);transform:translateX(4px)}.event-stack time{border-right:1px solid var(--line);display:flex;gap:8px;align-items:center}.event-stack time b{font:800 2rem "Manrope";color:var(--blue)}.event-stack time span{font-size:.62rem;line-height:1.25;color:var(--muted)}.event-stack small{color:var(--blue);font-weight:700;text-transform:uppercase;letter-spacing:.07em}.event-stack h3{font-size:1.14rem;margin:8px 0}.event-stack p{margin:0;color:var(--muted);font-size:.85rem}.event-stack a{font-size:.83rem;font-weight:700;color:var(--blue)}
.page-hero{padding:95px 0;background:radial-gradient(circle at 80% 30%,rgba(23,164,184,.22),transparent 35%),var(--navy);color:#fff}.page-hero h1{margin:0}.page-hero p:last-child{max-width:690px;font-size:1.16rem;color:#c9dade}.value-grid,.commission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.value-grid article,.commission-grid article{padding:35px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.value-grid span,.commission-grid>article>span{font:800 .7rem "Manrope";color:var(--cyan)}.link-panels{display:grid;grid-template-columns:1fr 1fr;gap:14px}.link-panels a{display:grid;grid-template-columns:1fr auto;padding:25px;border:1px solid var(--line);border-radius:15px}.link-panels span{grid-column:1;color:var(--blue);font-size:.75rem;font-weight:700}.link-panels b{grid-column:1}.link-panels i{grid-column:2;grid-row:1/3;font-style:normal}.commission-grid article{min-height:280px}.commission-grid article:hover{background:var(--navy);color:#fff}.commission-grid article p{color:var(--muted)}.commission-grid article:hover p{color:#c7d5d9}.commission-grid a{color:var(--blue);font-weight:700}.filter-bar{display:grid;grid-template-columns:1fr auto;max-width:650px;margin-bottom:35px}.filter-bar label{grid-column:1/3;font-size:.75rem;font-weight:700}.filter-bar input{padding:15px 18px;border:1px solid var(--line);border-radius:12px}.filter-bar span{align-self:center;margin-left:15px;color:var(--muted)}.society-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.society-grid article{border:1px solid var(--line);border-radius:20px;padding:28px}.society-grid img{width:88px;height:70px;object-fit:contain;margin-bottom:20px}.society-grid p{color:var(--muted)}.society-grid a{color:var(--blue);font-weight:700}.cta p{color:#c7d7dc}.event-list article{display:grid;grid-template-columns:100px 1fr auto;gap:30px;align-items:center;padding:27px 0;border-bottom:1px solid var(--line)}.event-list time b{display:block;font:800 2.5rem "Manrope";color:var(--blue)}.event-list time span{font-size:.7rem;text-transform:uppercase}.event-list h3{margin:8px 0}.event-list p{margin:0;color:var(--muted)}.event-list>a{font-weight:700;color:var(--blue)}.document-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.document-grid>a{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}.document-grid>a>span{background:var(--navy);color:#fff;border-radius:9px;padding:10px 8px;font-size:.65rem;font-weight:800}.document-grid small,.document-grid p{display:block;color:var(--muted);margin:0}.document-grid b{display:block}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.contact-list>div{padding:20px 0;border-bottom:1px solid var(--line)}.contact-list small{display:block;color:var(--muted)}.contact-list a{font-weight:700;color:var(--blue)}.contact-form{display:grid;gap:17px;padding:35px;background:var(--paper);border-radius:var(--radius)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form input,.contact-form select,.contact-form textarea,.login-card input{width:100%;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:start}.check input{width:auto}.form-message{color:var(--blue);font-weight:700}
.site-footer{background:#061923;color:#c6d4d8;padding:75px 0 20px}.footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:70px;padding-bottom:55px}.brand--footer b{color:#fff}.brand--footer img{background:#fff}.footer__grid h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:#fff}.footer__grid>div>a:not(.brand){display:block;margin:8px 0}.footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;display:flex;justify-content:space-between;font-size:.75rem}.footer__bottom div{display:flex;gap:20px}
.login-page{min-height:100vh;background:radial-gradient(circle at 20% 20%,rgba(23,164,184,.3),transparent 34%),var(--navy);display:grid;place-items:center;padding:30px}.login-page main{width:min(460px,100%)}.login-brand{justify-content:center;margin-bottom:25px}.login-brand b{color:#fff}.login-brand small{color:#bcd0d5}.login-card{background:#fff;border-radius:28px;padding:40px;box-shadow:var(--shadow)}.login-card h1{font-size:2.6rem;margin-bottom:8px}.login-card form{display:grid;gap:16px;margin-top:25px}.login-options{display:flex;justify-content:space-between;font-size:.75rem}.back-link{display:block;text-align:center;color:#fff;margin-top:20px}.legal{max-width:760px;padding:80px 0}.legal h1{font-size:3rem;margin-top:50px}
@media(max-width:1120px){.utility{display:none}.nav-wrap{min-height:74px}.menu-toggle{display:block}.main-nav{position:absolute;top:74px;left:0;right:0;background:#fff;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px 20px 24px;box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav>a:not(.button){padding:13px 5px}.main-nav>a:not(.button):after{display:none}.main-nav .button{margin-top:10px}.hero__grid{grid-template-columns:1fr}.hero__content{padding-top:25px}.hero__visual{max-width:650px}.hero__visual img{height:520px}.hero__links{grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr 1fr}.card--featured{grid-column:1/3}.impact__content{padding:70px 40px}.event-showcase{grid-template-columns:1fr}.society-grid,.commission-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){:root{--container:min(100% - 28px,1180px);--radius:18px}.brand small{display:none}h1{font-size:clamp(2.6rem,14vw,4.4rem)}.hero{padding-top:35px}.hero__grid{gap:35px}.hero__visual img{height:410px;border-radius:140px 140px 22px 22px}.hero__stat{right:10px}.hero__links{grid-template-columns:1fr;margin-top:45px}.hero__links a{border-right:0;border-bottom:1px solid var(--line);padding:20px}.section{padding:75px 0}.split,.newsletter__inner,.contact-grid{grid-template-columns:1fr;gap:35px}.cards,.value-grid,.commission-grid,.society-grid,.document-grid{grid-template-columns:1fr}.card--featured{grid-column:auto}.impact__grid{grid-template-columns:1fr}.impact__image img{min-height:400px}.impact__content{padding:60px 20px}.metrics{grid-template-columns:1fr 1fr}.newsletter-form>div{display:grid;gap:8px}.newsletter-form input,.newsletter-form .button{border-radius:99px}.section-head{align-items:start;gap:20px;flex-direction:column}.event-main{min-height:520px}.event-main__overlay{padding:28px}.event-main__overlay h3{font-size:1.7rem}.event-stack article{grid-template-columns:65px 1fr;padding:20px}.link-panels{grid-template-columns:1fr}.event-list article{grid-template-columns:70px 1fr}.event-list article>a{grid-column:2}.form-row{grid-template-columns:1fr}.footer__grid{grid-template-columns:1fr;gap:30px}.footer__bottom{gap:15px;flex-direction:column}.actions{align-items:flex-start;flex-direction:column}.page-hero{padding:70px 0}.login-card{padding:28px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Sezione istituzionale Il Collegio */
.nav-dropdown{position:relative;display:flex;align-items:center}.nav-dropdown__trigger{display:flex;align-items:center;gap:7px}.nav-dropdown__chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}.nav-dropdown__menu{position:absolute;top:calc(100% + 12px);left:0;width:250px;padding:9px;visibility:hidden;opacity:0;transform:translateY(8px);background:#fff;border:1px solid var(--line);border-top:3px solid #71c7ee;border-radius:0 0 16px 16px;box-shadow:var(--shadow-lg);transition:.2s;z-index:80}.nav-dropdown__menu a{display:block;padding:11px 13px;border-radius:9px;font-size:.87rem;color:var(--ink)}.nav-dropdown__menu a:hover,.nav-dropdown__menu a:focus{background:#eef8fd;color:#075985}.nav-dropdown:hover .nav-dropdown__menu,.nav-dropdown:focus-within .nav-dropdown__menu,.nav-dropdown.open .nav-dropdown__menu{visibility:visible;opacity:1;transform:none}
.page-hero.collegio-hero{position:relative;border-bottom:8px solid #71c7ee}.page-hero.collegio-hero:before{content:"";position:absolute;left:0;right:0;bottom:-8px;height:1px;background:rgba(255,255,255,.55)}
.section-nav{background:#fff;border-bottom:1px solid var(--line)}.section-nav__inner{min-height:68px;display:flex;align-items:center;gap:8px}.section-nav a,.mandate-menu summary{padding:10px 14px;border-radius:10px;font-size:.84rem;font-weight:800;color:#405466}.section-nav a:hover,.section-nav a.active,.mandate-menu[open] summary{background:#eaf7fd;color:#075985}.mandate-menu{position:relative}.mandate-menu summary{cursor:pointer;list-style:none}.mandate-menu summary::-webkit-details-marker{display:none}.mandate-menu summary:after{content:"⌄";margin-left:8px}.mandate-menu__list{position:absolute;top:calc(100% + 7px);right:0;z-index:20;min-width:245px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.mandate-menu__list span{display:block;padding:10px 12px;border-radius:8px;font-size:.82rem;color:var(--muted)}
.institution-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:start}.institution-aside{padding:32px;background:#eef8fd;border-radius:20px;border-top:5px solid #71c7ee}.institution-aside h3{margin-bottom:12px}.institution-aside ul{padding-left:20px;margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.service-card{padding:32px;background:#fff;border:1px solid var(--line);border-radius:18px}.service-card span{display:inline-grid;place-items:center;width:38px;height:38px;margin-bottom:18px;border-radius:50%;background:#eaf7fd;color:#075985;font-weight:900}.service-card h2{font-size:1.4rem}.service-card p{color:var(--muted)}
.presidents-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.president-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:20px}.president-card--featured{grid-column:span 2;display:grid;grid-template-columns:.8fr 1.2fr;border-top:5px solid #71c7ee}.president-card__photo{height:245px;background:#e9eef3}.president-card--featured .president-card__photo{height:100%;min-height:330px}.president-card__photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.president-card__body{padding:25px}.president-card__body small{color:#0877a6;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.president-card__body h2{margin:7px 0 4px;font-size:1.45rem}.president-card__body p{margin:0;color:var(--muted)}
@media(max-width:1120px){.nav-dropdown{display:block}.nav-dropdown__trigger{width:100%}.nav-dropdown__menu{position:static;width:100%;display:none;visibility:visible;opacity:1;transform:none;border:0;border-left:3px solid #71c7ee;border-radius:0;box-shadow:none;background:#f5fbfe}.nav-dropdown:hover .nav-dropdown__menu,.nav-dropdown:focus-within .nav-dropdown__menu{display:none}.nav-dropdown.open .nav-dropdown__menu{display:block}.section-nav__inner{overflow-x:auto}.institution-grid{grid-template-columns:1fr}.presidents-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.service-grid,.presidents-grid{grid-template-columns:1fr}.president-card--featured{grid-column:auto;display:block}.president-card--featured .president-card__photo{min-height:0;height:290px}.section-nav__inner{justify-content:flex-start}.section-nav a,.mandate-menu summary{white-space:nowrap}}

/* Menu sticky uniforme su tutte le pagine pubbliche */
.c01 .hero .concept-shell{padding-top:0}
.login-page{display:block;padding:0}
.login-page .site-header{width:100%}
.login-page .login-main{width:min(460px,calc(100% - 40px));min-height:calc(100vh - 120px);margin-inline:auto;padding:60px 0 30px}

/* Logo istituzionale estratto dalla Carta del CIC */
.brand img{width:300px;height:64px;object-fit:contain;object-position:left center;background:transparent;border-radius:0}
.brand span{display:none}
.brand--footer img{background:#fff;border-radius:8px;padding:6px}
@media(max-width:720px){.brand img{width:230px;height:54px}}

/* Tailwind-inspired Material refresh */
:root{--primary:#155eef;--primary-dark:#0b3aa4;--primary-soft:#eaf1ff;--surface:#ffffff;--surface-2:#f8fafc;--surface-3:#f1f5f9;--ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--navy:#071a2d;--cyan:#0ea5e9;--orange:#f05a3c;--radius:20px;--shadow:0 12px 32px rgba(15,23,42,.08);--shadow-lg:0 24px 60px rgba(15,23,42,.14)}
body{background:var(--surface-2);color:var(--ink)}
.site-header{border-bottom:1px solid rgba(226,232,240,.9);box-shadow:0 4px 16px rgba(15,23,42,.04)}
.nav-wrap{min-height:82px}.main-nav{gap:5px}.main-nav>a:not(.button){padding:10px 13px;border-radius:12px}.main-nav>a:not(.button):after{display:none}.main-nav>a:not(.button):hover{background:var(--surface-3)}.main-nav>a.active{background:var(--primary-soft);color:var(--primary)}
.button{background:var(--primary);box-shadow:0 5px 14px rgba(21,94,239,.2)}.button:hover{box-shadow:0 10px 24px rgba(21,94,239,.3)}
.hero{background:radial-gradient(circle at 84% 8%,rgba(14,165,233,.18),transparent 27%),radial-gradient(circle at 12% 40%,rgba(21,94,239,.12),transparent 30%),var(--surface-2)}
.hero__visual img{border-radius:32px;height:550px}.hero__visual:before{display:none}.hero__stat{border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(18px);background:rgba(7,26,45,.88)}
.hero__links{gap:12px;background:transparent;box-shadow:none;border-radius:0}.hero__links a{background:#fff;border:1px solid var(--line)!important;border-radius:16px;box-shadow:0 5px 15px rgba(15,23,42,.04);transition:.2s}.hero__links a:hover{background:#fff;transform:translateY(-4px);box-shadow:var(--shadow)}
.section--tint{background:var(--surface-3)}.card{border:1px solid rgba(226,232,240,.85);box-shadow:0 8px 22px rgba(15,23,42,.05)}.card:hover{box-shadow:var(--shadow-lg)}
.page-hero{padding:88px 0;background:radial-gradient(circle at 82% 20%,rgba(56,189,248,.28),transparent 30%),linear-gradient(135deg,#071a2d 0%,#0b3a66 100%)}
.page-hero h1{font-size:clamp(3rem,6vw,5.6rem)}.site-footer{background:#061524}

/* Società afferenti */
.society-page{background:var(--surface-2)}
.society-intro{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:34px}.society-intro h2{margin:0}.society-intro p{max-width:620px;margin:0;color:var(--muted);font-size:1.05rem}
.society-toolbar{position:sticky;top:82px;z-index:20;padding:18px;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);margin-bottom:32px}
.society-search{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;background:var(--surface-3);border:1px solid transparent;border-radius:14px;padding:0 16px}.society-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(21,94,239,.12)}.society-search svg{width:20px;height:20px;color:var(--muted)}.society-search input{width:100%;border:0;outline:0;background:transparent;padding:14px 0;color:var(--ink)}.society-search span{font-size:.8rem;color:var(--muted);white-space:nowrap}
.cluster-filters{display:flex;gap:8px;overflow-x:auto;padding-top:14px;scrollbar-width:thin}.cluster-filters button{flex:0 0 auto;border:1px solid var(--line);background:#fff;color:#334155;border-radius:999px;padding:9px 14px;font-weight:700;font-size:.76rem;cursor:pointer;transition:.2s}.cluster-filters button:hover{border-color:#93c5fd;background:#eff6ff}.cluster-filters button.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 5px 14px rgba(21,94,239,.22)}
.society-grid--complete{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.society-card{position:relative;display:flex;flex-direction:column;min-height:330px;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 5px 16px rgba(15,23,42,.04);transition:transform .22s,box-shadow .22s,border-color .22s}.society-card:hover{transform:translateY(-5px);border-color:#bfdbfe;box-shadow:var(--shadow-lg)}.society-card[hidden]{display:none}.society-card__logo{height:150px;margin:10px 10px 0;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#f8fafc);border-radius:14px}.society-card__logo img{width:100%;height:120px;object-fit:contain}.society-card__body{display:flex;flex-direction:column;flex:1;padding:20px 20px 16px}.society-card__sigla{align-self:flex-start;background:var(--primary-soft);color:var(--primary);border-radius:8px;padding:4px 8px;font-size:.7rem;font-weight:800;letter-spacing:.05em}.society-card h2{font-size:1rem;line-height:1.35;letter-spacing:-.015em;margin:13px 0 16px}.society-card__link{margin-top:auto;display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-size:.78rem;font-weight:700}.society-card__cluster{border-top:1px solid var(--line);background:var(--surface-2);padding:11px 20px;color:#475569;font-size:.66rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.society-card__cluster:before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--cyan)}.society-summary{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.society-summary span{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 13px;font-size:.78rem;color:var(--muted)}.empty-state{padding:45px;text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:18px;color:var(--muted)}
@media(max-width:1100px){.society-grid--complete{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.society-grid--complete{grid-template-columns:repeat(2,minmax(0,1fr))}.society-intro{align-items:start;flex-direction:column}.society-toolbar{top:74px}}
@media(max-width:540px){.society-grid--complete{grid-template-columns:1fr}.society-card{min-height:300px}.society-card__logo{height:135px}.society-search{grid-template-columns:auto 1fr}.society-search span{grid-column:1/3;padding-bottom:10px}.society-toolbar{padding:12px;border-radius:16px}}

/* Colorful editorial direction: FACS structure + Dribbble energy */
:root{
  --night:#13104b;
  --night-2:#1d1763;
  --violet:#7568ff;
  --pink:#ff72bd;
  --coral:#ff9b8d;
  --mint:#48d4b3;
  --aqua:#2fc5dc;
  --sky:#5fb6ff;
  --cream:#fff8f2;
  --lavender:#f3f0ff;
}
.utility{background:var(--night)}
.site-header{background:rgba(255,255,255,.94);border-bottom:0;box-shadow:0 8px 30px rgba(19,16,75,.08)}
.main-nav>a.active{background:#eeeaff;color:#5446df}
.main-nav .button{background:linear-gradient(135deg,var(--violet),#5647e8)}
.hero{position:relative;color:#fff;background:
  radial-gradient(circle at 8% 23%,rgba(72,212,179,.22) 0 6%,transparent 6.5%),
  radial-gradient(circle at 92% 15%,rgba(255,114,189,.22) 0 8%,transparent 8.5%),
  radial-gradient(circle at 70% 85%,rgba(47,197,220,.18) 0 12%,transparent 12.5%),
  linear-gradient(135deg,var(--night) 0%,#18125b 55%,#21166a 100%);
}
.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.hero:before{width:22px;height:22px;left:5%;top:65%;background:var(--pink);box-shadow:38px -32px 0 var(--mint),72px 6px 0 var(--aqua),105px -44px 0 var(--coral),132px 12px 0 #9a8cff}
.hero:after{width:15px;height:15px;right:6%;top:38%;background:var(--coral);box-shadow:-36px -28px 0 var(--pink),-72px 4px 0 var(--mint),-103px -39px 0 var(--aqua)}
.hero h1{color:#fff;max-width:780px;font-weight:800;letter-spacing:-.06em}
.hero .eyebrow{color:var(--mint)}.hero__lead{color:#dad8f2;max-width:690px}.hero .text-link{color:#fff}
.hero__visual img{border:1px solid rgba(255,255,255,.18);box-shadow:0 30px 80px rgba(0,0,0,.3);filter:saturate(1.08)}
.hero__visual:after{content:"";position:absolute;inset:auto -18px -18px auto;width:128px;height:128px;border-radius:28px;background:linear-gradient(135deg,var(--pink),var(--coral));z-index:-1;transform:rotate(8deg)}
.hero__stat{background:rgba(255,255,255,.94);color:var(--night);border:0}.hero__stat span{color:#5f6280}
.hero__links{margin-bottom:-58px;z-index:5}.hero__links a{color:#fff;border:0!important;min-height:120px;box-shadow:0 18px 40px rgba(19,16,75,.18)}.hero__links a:nth-child(1){background:linear-gradient(135deg,#6759ef,#8577ff)}.hero__links a:nth-child(2){background:linear-gradient(135deg,#ea5ca8,#ff82c3)}.hero__links a:nth-child(3){background:linear-gradient(135deg,#18a991,#51d9b8)}.hero__links a:nth-child(4){background:linear-gradient(135deg,#159fc1,#38c8df)}.hero__links a:hover{color:#fff;background:inherit;filter:brightness(1.05)}.hero__links span,.hero__links small{color:rgba(255,255,255,.78)}
.intro{padding-top:168px;background:#fff}.intro h2{position:relative}.intro h2:after{content:"";display:block;width:72px;height:8px;border-radius:99px;margin-top:22px;background:linear-gradient(90deg,var(--pink),var(--coral))}
.section--tint{background:var(--lavender)}.section-head .eyebrow{color:#6558e8}
.cards{gap:25px}.card{border:0;border-radius:26px;box-shadow:0 15px 40px rgba(19,16,75,.08)}.card:nth-child(2){background:#fff7fb}.card:nth-child(3){background:#f2fbf9}.card__image{height:270px}.tag{background:linear-gradient(135deg,#ec5aa5,var(--pink))}.tag--plain{background:#eeeaff;color:#5c50dc}
.card__body a,.text-link{color:#5a4fe0}.card:hover{box-shadow:0 28px 70px rgba(19,16,75,.16)}
.society-events{background:#fff}.event-main{border-radius:32px}.event-main__overlay{background:linear-gradient(0deg,rgba(19,16,75,.24),transparent)}.event-stack article{background:#fff;border:0;border-left:6px solid var(--violet);box-shadow:0 10px 26px rgba(19,16,75,.07)}.event-stack article:nth-child(2){border-left-color:var(--pink)}.event-stack article:nth-child(3){border-left-color:var(--mint)}.event-stack time b{color:#5d50df}
.impact{background:linear-gradient(135deg,var(--night),#251876)}.impact__content{position:relative}.impact__content:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:8%;top:8%;background:linear-gradient(135deg,var(--pink),var(--coral));opacity:.25}
.newsletter{background:linear-gradient(135deg,#fff5f9,#effcfa)}.newsletter__inner{padding:50px;border-radius:30px;background:rgba(255,255,255,.78);box-shadow:0 20px 55px rgba(19,16,75,.09);backdrop-filter:blur(16px)}
.page-hero{position:relative;overflow:hidden;background:
  radial-gradient(circle at 86% 22%,rgba(255,114,189,.35),transparent 13%),
  radial-gradient(circle at 73% 82%,rgba(72,212,179,.28),transparent 18%),
  linear-gradient(135deg,var(--night),#241974)}
.page-hero:after{content:"";position:absolute;width:18px;height:18px;right:18%;top:32%;border-radius:50%;background:var(--coral);box-shadow:42px 25px 0 var(--aqua),82px -14px 0 var(--pink),120px 32px 0 var(--mint)}
.page-hero .eyebrow{color:var(--mint)}
.value-grid article,.commission-grid article,.link-panels a,.document-grid>a{border:0;box-shadow:0 12px 32px rgba(19,16,75,.07);border-radius:22px}.value-grid article:nth-child(1){border-top:7px solid var(--violet)}.value-grid article:nth-child(2){border-top:7px solid var(--pink)}.value-grid article:nth-child(3){border-top:7px solid var(--mint)}
.commission-grid article:nth-child(6n+1){border-top:6px solid var(--violet)}.commission-grid article:nth-child(6n+2){border-top:6px solid var(--pink)}.commission-grid article:nth-child(6n+3){border-top:6px solid var(--mint)}.commission-grid article:nth-child(6n+4){border-top:6px solid var(--aqua)}.commission-grid article:nth-child(6n+5){border-top:6px solid var(--coral)}.commission-grid article:nth-child(6n+6){border-top:6px solid var(--sky)}
.society-page{background:#faf9ff}.society-toolbar{border:0;box-shadow:0 16px 42px rgba(19,16,75,.12)}.cluster-filters button{border:0;background:#f0edff;color:#4d44c5}.cluster-filters button:nth-child(2){background:#fff0f7;color:#c13d85}.cluster-filters button:nth-child(3){background:#ebfbf7;color:#168b75}.cluster-filters button:nth-child(4){background:#ebf9fc;color:#1285a0}.cluster-filters button:nth-child(5){background:#fff3ee;color:#c85d47}.cluster-filters button:nth-child(6){background:#eef5ff;color:#2b6abb}.cluster-filters button.active{background:var(--night);color:#fff}
.society-card{border:0;border-radius:24px;box-shadow:0 10px 30px rgba(19,16,75,.07)}.society-card__logo{background:#fff}.society-card__sigla{background:#eeebff;color:#574bd5}.society-card__cluster{border:0;background:#eeebff;color:#574bd5}.society-card[data-cluster="ortopedia-e-traumatologia"] .society-card__cluster{background:#fff0f7;color:#b83b7e}.society-card[data-cluster="ginecologia-e-ostetricia"] .society-card__cluster{background:#fff3ee;color:#c65a45}.society-card[data-cluster="chirurgia-testa-e-collo"] .society-card__cluster{background:#eafbf7;color:#13846f}.society-card[data-cluster="chirurgia-specialistica-o-di-apparato"] .society-card__cluster{background:#eaf9fc;color:#117e98}.society-card__cluster:before{background:currentColor}.society-card:hover{border:0;box-shadow:0 25px 55px rgba(19,16,75,.16)}
.site-footer{position:relative;background:var(--night)}.site-footer:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--violet),var(--pink),var(--coral),var(--mint),var(--aqua))}
@media(max-width:1120px){.main-nav{background:#fff;border-radius:0 0 24px 24px}.hero__links{margin-bottom:0}.intro{padding-top:110px}}
@media(max-width:720px){.hero:before,.hero:after,.page-hero:after{opacity:.55}.hero__visual img{border-radius:26px}.hero__links{margin-bottom:0}.intro{padding-top:75px}.newsletter__inner{padding:28px}.hero__links a{min-height:auto}}

/* Società afferenti · palette calda e marchi uniformi */
body:has(main.society-page) .utility{background:#71301f}
body:has(main.society-page) .site-header{border-bottom-color:#f0dcc3;box-shadow:0 6px 24px rgba(105,52,23,.07)}
body:has(main.society-page) .main-nav>a.active{background:#fff0dc;color:#aa431d}
body:has(main.society-page) .main-nav .button{background:linear-gradient(135deg,#a9431d,#df7629)}
body:has(main.society-page) .site-footer{background:#3f2019}
main.society-page{background:#fffaf3}
.society-page .page-hero{position:relative;background:radial-gradient(circle at 82% 8%,rgba(255,213,91,.72),transparent 32%),linear-gradient(125deg,#a43a1c 0%,#df6922 55%,#efad2c 100%);color:#fff}
.society-page .page-hero:after{display:none!important;content:none!important;box-shadow:none!important}
.society-page .page-hero .eyebrow{color:#ffe7a7}
.society-page .page-hero p:last-child{color:#fff5df}
.society-page>.section{background:#fffaf3}
.society-page .society-intro{align-items:center}
.society-page .society-intro .eyebrow{color:#ae461e}
.society-page .society-intro h2{color:#54271c;font-weight:600}
.society-page .society-intro>p{color:#6a5b53}
.society-page .society-toolbar{border:1px solid #f0dcc3;background:rgba(255,255,255,.94);box-shadow:0 18px 45px rgba(106,52,23,.1);backdrop-filter:blur(16px)}
.society-page .society-search{border:1px solid #f0dcc3;background:#fffaf3}
.society-page .society-search:focus-within{border-color:#d66b2d;box-shadow:0 0 0 3px rgba(214,107,45,.12)}
.society-page .cluster-filters button{border:1px solid #efd9bd;background:#fff7eb;color:#80402a}
.society-page .cluster-filters button:hover{border-color:#df8b4b;background:#fff0dc}
.society-page .cluster-filters button.active{border-color:#a9431d;background:linear-gradient(135deg,#a9431d,#da6a27);color:#fff;box-shadow:0 7px 18px rgba(169,67,29,.2)}
.society-page .society-grid--complete{gap:22px}
.society-page .society-card{min-height:372px;border:0;border-radius:24px;background:#fff;box-shadow:0 12px 34px rgba(92,48,25,.08)}
.society-page .society-card:hover{border:0;box-shadow:0 24px 52px rgba(92,48,25,.15)}
.society-page .society-card__logo{height:190px;margin:0;padding:18px 18px 10px;border:0;border-radius:0;background:#fff;box-shadow:none;overflow:hidden}
.society-page .society-card__logo img{width:100%;height:160px;object-fit:contain;border:0;outline:0;background:#fff;box-shadow:none}
.society-page .society-card__body{padding:18px 22px 16px}
.society-page .society-card__sigla{background:#fff0dc;color:#a9431d}
.society-page .society-card h2{margin:12px 0 15px;color:#45251d}
.society-page .society-card__link{color:#a9431d}
.society-page .society-card__cluster{border:0;background:#fff0dc;color:#93401f}
.society-page .society-card__cluster:before{display:none!important;content:none!important}
.society-page .society-card[data-cluster="ortopedia-e-traumatologia"] .society-card__cluster{background:#fff6da;color:#896816}
.society-page .society-card[data-cluster="ginecologia-e-ostetricia"] .society-card__cluster{background:#ffede6;color:#a84a30}
.society-page .society-card[data-cluster="chirurgia-testa-e-collo"] .society-card__cluster{background:#f8eadf;color:#855139}
.society-page .society-card[data-cluster="chirurgia-specialistica-o-di-apparato"] .society-card__cluster{background:#f7efe4;color:#77553e}
.society-page .society-summary span{border-color:#efd9bd;background:#fff;color:#6d5d54}
.society-page .section--dark.cta{background:radial-gradient(circle at 80% 15%,rgba(255,197,74,.28),transparent 34%),linear-gradient(125deg,#55261b,#9d3f1d);color:#fff}
.society-page .section--dark.cta .eyebrow{color:#ffd98c}
@media(max-width:540px){.society-page .society-card__logo{height:175px}.society-page .society-card__logo img{height:148px}}

/* Cluster · colori pastello differenziati */
.society-page .cluster-filters button{box-shadow:none}
.society-page .cluster-filters button:nth-child(1){background:#fff7eb;color:#80402a;border-color:#efd9bd}
.society-page .cluster-filters button:nth-child(2){background:#eeebff;color:#574bd5;border-color:#d8d2ff}
.society-page .cluster-filters button:nth-child(3){background:#fff0f7;color:#b83b7e;border-color:#f4cce0}
.society-page .cluster-filters button:nth-child(4){background:#fff3ee;color:#c65a45;border-color:#f4d4c8}
.society-page .cluster-filters button:nth-child(5){background:#eafbf7;color:#13846f;border-color:#c6eee4}
.society-page .cluster-filters button:nth-child(6){background:#eaf9fc;color:#117e98;border-color:#c5eaf1}
.society-page .cluster-filters button.active{border-color:currentColor;box-shadow:inset 0 0 0 1px currentColor,0 7px 18px rgba(56,45,88,.1)}
.society-page .society-card__cluster{background:#eeebff;color:#574bd5}
.society-page .society-card[data-cluster="ortopedia-e-traumatologia"] .society-card__cluster{background:#fff0f7;color:#b83b7e}
.society-page .society-card[data-cluster="ginecologia-e-ostetricia"] .society-card__cluster{background:#fff3ee;color:#c65a45}
.society-page .society-card[data-cluster="chirurgia-testa-e-collo"] .society-card__cluster{background:#eafbf7;color:#13846f}
.society-page .society-card[data-cluster="chirurgia-specialistica-o-di-apparato"] .society-card__cluster{background:#eaf9fc;color:#117e98}

/* Pagine interne · identità calda coordinata */
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)){background:#fffaf3;color:#3f241d}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .utility{background:#71301f}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .site-header{border-bottom-color:#f0dcc3;box-shadow:0 6px 24px rgba(105,52,23,.07)}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .main-nav>a.active{background:#fff0dc;color:#aa431d}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .main-nav .button{background:linear-gradient(135deg,#a9431d,#df7629)}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .page-hero{padding:78px 0;background:radial-gradient(circle at 82% 8%,rgba(255,213,91,.72),transparent 32%),linear-gradient(125deg,#a43a1c 0%,#df6922 55%,#efad2c 100%);color:#fff}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .page-hero:after{display:none!important;content:none!important}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .page-hero h1{font-size:clamp(2.8rem,5vw,4.6rem)}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .page-hero .eyebrow{color:#ffe7a7}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .page-hero p:last-child{color:#fff5df}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) main>.section{background:#fffaf3}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) main>.section--tint{background:#fff2e3}
body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .site-footer{background:#3f2019}

/* Commissioni */
.commission-grid{gap:24px}
.commission-grid article{min-height:270px;border:0;background:#fff;box-shadow:0 14px 38px rgba(92,48,25,.09);transition:transform .22s,box-shadow .22s,background .22s}
.commission-grid article:hover{transform:translateY(-6px);background:#fff;color:#3f241d;box-shadow:0 25px 55px rgba(92,48,25,.16)}
.commission-grid article:hover p{color:#6d5d54}
.commission-grid article h2{font-size:1.45rem;color:#4e281e}
.commission-grid article p{color:#6d5d54}
.commission-grid article a,.commission-grid article:hover a{color:#b94b22}
.commission-grid>article>span{color:#c45325}

/* Attività e documenti */
.content-page--activities .section-head h2,
body:has(main .document-grid) .section-head h2{color:#4e281e}
body:has(main .document-grid) .event-list article{margin-bottom:14px;padding:25px 28px;border:1px solid #f0dcc3;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(92,48,25,.06)}
body:has(main .document-grid) .event-list time{display:grid;place-items:center;min-height:86px;border-radius:16px;background:#fff0dc}
body:has(main .document-grid) .event-list time b{color:#b94b22}
body:has(main .document-grid) .event-list p{color:#6d5d54}
body:has(main .document-grid) .event-list>a{color:#b94b22}
body:has(main .document-grid) .tag--plain{background:#fff4df;color:#9b481f}
body:has(main .document-grid) .document-grid>a{border:1px solid #f0dcc3;background:#fff;box-shadow:0 12px 30px rgba(92,48,25,.07)}
body:has(main .document-grid) .document-grid>a:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(92,48,25,.13)}
body:has(main .document-grid) .document-grid>a>span{background:linear-gradient(135deg,#a9431d,#df7629)}

/* Contatti */
body:has(main .contact-grid) .contact-grid{align-items:start}
body:has(main .contact-grid) .contact-grid h2{color:#4e281e;font-size:clamp(2rem,4vw,3.4rem)}
body:has(main .contact-grid) .contact-list>div{border-bottom-color:#efd9bd}
body:has(main .contact-grid) .contact-list a{color:#a9431d}
body:has(main .contact-grid) .contact-form{border:1px solid #efd9bd;background:#fff3e5;border-radius:26px;box-shadow:0 18px 48px rgba(92,48,25,.1)}
body:has(main .contact-grid) .contact-form input,
body:has(main .contact-grid) .contact-form select,
body:has(main .contact-grid) .contact-form textarea{border-color:#e8cdb0;background:#fffdf9}
body:has(main .contact-grid) .contact-form input:focus,
body:has(main .contact-grid) .contact-form select:focus,
body:has(main .contact-grid) .contact-form textarea:focus{outline:3px solid rgba(223,118,41,.16);border-color:#d86b2c}
body:has(main .contact-grid) .contact-form .button{background:linear-gradient(135deg,#a9431d,#df7629)}

/* Area soci */
.login-page{background:radial-gradient(circle at 82% 12%,rgba(255,219,105,.86),transparent 30%),radial-gradient(circle at 8% 88%,rgba(255,180,72,.42),transparent 34%),linear-gradient(135deg,#9c351b 0%,#df6e27 54%,#f0ae32 100%)}
.login-page:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,.08),transparent 46%)}
.login-brand img{background:#fff;border-radius:14px;padding:7px}
.login-brand b{color:#fff}
.login-brand small{color:#fff5df}
.login-card{position:relative;border:1px solid rgba(255,255,255,.72);background:rgba(255,252,247,.96);box-shadow:0 28px 80px rgba(91,35,19,.28);backdrop-filter:blur(18px)}
.login-card .eyebrow{color:#b24921}
.login-card h1{color:#48251c}
.login-card>p{color:#6d5d54}
.login-card input{border-color:#e8cdb0;background:#fff}
.login-card input:focus{outline:3px solid rgba(223,118,41,.16);border-color:#d86b2c}
.login-card .button{background:linear-gradient(135deg,#a9431d,#df7629)}
.login-options a{color:#a9431d}
.back-link{font-weight:700}

@media(max-width:720px){
  body:is(:has(main .commission-grid),:has(main .document-grid),:has(main .contact-grid)) .page-hero{padding:58px 0}
  body:has(main .document-grid) .event-list article{padding:20px}
  body:has(main .document-grid) .event-list time{min-height:72px}
}

/* Home · newsletter */
.home-newsletter{position:relative;overflow:hidden;background:#fffaf3}
.home-newsletter:before{content:"";position:absolute;width:420px;height:420px;right:-170px;top:-220px;border-radius:50%;background:radial-gradient(circle,rgba(255,198,68,.3),transparent 70%);pointer-events:none}
.home-newsletter .newsletter__inner{position:relative;grid-template-columns:.9fr 1.1fr;gap:64px;padding:54px 58px;border:1px solid #efd9bd;border-radius:30px;background:linear-gradient(135deg,rgba(255,247,235,.98),rgba(255,255,255,.96));box-shadow:0 18px 50px rgba(92,48,25,.1)}
.home-newsletter .eyebrow{color:#b24921}
.c01 .home-newsletter h2{max-width:560px;margin:8px 0 12px;color:#4b281f;font-size:clamp(1.45rem,2.2vw,2rem);line-height:1.18;letter-spacing:-.025em}
.c01 .home-newsletter p{max-width:560px;color:#6d5d54;font-size:.92rem;line-height:1.6}
.home-newsletter .newsletter-form{display:grid;gap:15px}
.home-newsletter .newsletter-form>div{display:flex}
.home-newsletter .newsletter-form input[type="email"]{min-width:0;border:1px solid #e4c7a6;background:#fffdf9}
.home-newsletter .newsletter-form input[type="email"]:focus{outline:3px solid rgba(223,118,41,.16);border-color:#d86b2c}
.home-newsletter .newsletter-form .button{border:0;background:linear-gradient(135deg,#a9431d,#df7629);box-shadow:0 8px 20px rgba(169,67,29,.2)}
.home-newsletter .newsletter-consent{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;font-size:.76rem;font-weight:500;line-height:1.5;color:#6d5d54}
.home-newsletter .newsletter-consent input{width:17px;height:17px;margin-top:2px;accent-color:#b94b22}
.home-newsletter .newsletter-consent a{color:#a9431d;text-decoration:underline;text-underline-offset:2px}
.home-newsletter .form-message{margin:0;color:#9b421f}
@media(max-width:720px){
  .home-newsletter .newsletter__inner{grid-template-columns:1fr;gap:28px;padding:32px 24px}
  .home-newsletter .newsletter-form>div{display:grid;gap:9px}
  .home-newsletter .newsletter-form input[type="email"],.home-newsletter .newsletter-form .button{border-radius:999px}
}
.congress-section{background:#f8fafc}.congress-heading{align-items:flex-end}.congress-heading>div>p:last-child{max-width:650px;color:var(--muted,#5b6472)}.calendar-legend{display:flex;flex-direction:column;align-items:flex-end;gap:.45rem;color:#334155}.calendar-legend span{font-weight:700}.calendar-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;background:#c52233;margin-right:.4rem}.calendar-legend small{color:#64748b}
.calendar-toolbar{display:flex;align-items:center;gap:.7rem;margin:2rem 0 1rem}.calendar-toolbar select{appearance:none;border:0;background:transparent;font:700 1.35rem/1.2 inherit;color:#17243a;padding:.65rem 2rem .65rem .75rem}.calendar-toolbar label{position:relative;border:1px solid #dbe3ec;border-radius:10px;background:#fff}.calendar-toolbar label:after{content:"⌄";position:absolute;right:.7rem;top:.55rem;pointer-events:none}.calendar-arrow,.calendar-today{border:1px solid #dbe3ec;background:#fff;color:#17243a;border-radius:10px;min-width:42px;height:42px;font-weight:700;cursor:pointer}.calendar-today{padding:0 1rem;margin-left:auto}
.congress-calendar{background:#fff;border:1px solid #e1e7ef;border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(27,47,74,.07)}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekdays span{padding:.8rem;text-align:center;font-size:.73rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b;border-bottom:1px solid #e7edf3}.calendar-day{min-height:122px;padding:.65rem;border-right:1px solid #edf1f5;border-bottom:1px solid #edf1f5}.calendar-day:nth-child(7n){border-right:0}.calendar-day--empty{background:#fafbfc}.calendar-day__number{display:block;font-size:.8rem;font-weight:800;color:#64748b;margin-bottom:.35rem}.calendar-day--today .calendar-day__number{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#17243a;color:#fff}.calendar-event{display:flex;gap:.4rem;align-items:center;padding:.42rem;margin:.2rem 0;border-radius:8px;background:#f7e9eb;border-left:3px solid #c52233;text-decoration:none;color:#7c1825;font-size:.68rem;font-weight:800;line-height:1.15}.calendar-event img{width:24px;height:24px;object-fit:contain;background:#fff;border-radius:5px}.calendar-event span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.calendar-mobile-list{display:none}.congress-list-head{display:flex;justify-content:space-between;align-items:end;margin:4rem 0 1.25rem}.congress-list-head h2{margin-bottom:0}.congress-list-head>p{color:#64748b}.congress-cards{display:grid;gap:1rem}.congress-card{display:grid;grid-template-columns:130px 100px 1fr;gap:1.35rem;align-items:center;background:#fff;border:1px solid #e1e7ef;border-radius:16px;padding:1.25rem;box-shadow:0 10px 26px rgba(27,47,74,.05)}.congress-card__date{border-right:1px solid #e1e7ef}.congress-card__date b{display:block;font-size:1.45rem;color:#a51d2d}.congress-card__date span{font-size:.78rem;color:#64748b}.congress-card>img{width:90px;height:58px;object-fit:contain}.congress-card__body>span{font-size:.72rem;font-weight:800;letter-spacing:.08em;color:#a51d2d}.congress-card__body h3{font-size:1.15rem;margin:.2rem 0}.congress-card__body p{margin:.2rem 0 .65rem;color:#64748b}.congress-card__body div{display:flex;gap:1rem;flex-wrap:wrap}.congress-card__body a{font-size:.8rem;font-weight:800;color:#17243a}.joint-logos{display:grid;grid-template-columns:repeat(2,42px);gap:.25rem}.joint-logos img{width:42px;height:32px;object-fit:contain}.calendar-note{margin:1.5rem 0 0;padding:1rem 1.25rem;border-left:3px solid #c52233;background:#fff;color:#5b6472;font-size:.88rem}
@media(max-width:760px){.calendar-legend{align-items:flex-start}.calendar-toolbar{flex-wrap:wrap}.calendar-today{margin-left:0}.congress-calendar{display:none}.calendar-mobile-list{display:grid;gap:.7rem}.mobile-calendar-event{display:grid;grid-template-columns:54px 44px 1fr;gap:.7rem;align-items:center;background:#fff;border:1px solid #e1e7ef;border-radius:12px;padding:.8rem;text-decoration:none;color:#17243a}.mobile-calendar-event time{font-weight:800;color:#a51d2d;text-align:center}.mobile-calendar-event img{width:42px;height:36px;object-fit:contain}.mobile-calendar-event b,.mobile-calendar-event small{display:block}.mobile-calendar-event small{color:#64748b;margin-top:.2rem}.mobile-calendar-empty{padding:2rem;text-align:center;background:#fff;border-radius:12px;color:#64748b}.congress-list-head{display:block;margin-top:2.5rem}.congress-card{grid-template-columns:80px 70px 1fr;gap:.75rem;padding:1rem}.congress-card__date b{font-size:1rem}.congress-card>img{width:65px}.congress-card__body h3{font-size:1rem}.congress-card__body p{font-size:.82rem}.joint-logos{grid-template-columns:repeat(2,30px)}.joint-logos img{width:30px}}
@media(max-width:520px){.congress-card{grid-template-columns:70px 1fr}.congress-card>img,.joint-logos{grid-column:2}.congress-card__body{grid-column:1/-1}.congress-card__date{grid-row:1/3}}
.board-hero{position:relative;overflow:hidden}.board-hero:after{content:"2025—2027";position:absolute;right:4vw;bottom:-.2em;font-size:clamp(4rem,10vw,10rem);font-weight:900;color:rgba(255,255,255,.06);letter-spacing:-.06em;pointer-events:none}.board-mandate{display:inline-block;margin-top:1.1rem;padding:.5rem .9rem;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.board-page .section-head>p{max-width:420px;color:#64748b}.board-leadership{padding-bottom:2.25rem}.board-leadership+.section{padding-top:2.25rem}.leadership-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.board-card{overflow:hidden;background:#fff;border:1px solid #e1e7ef;border-radius:18px;box-shadow:0 14px 34px rgba(27,47,74,.07)}.board-card__photo{height:290px;background:linear-gradient(145deg,#e8edf2,#f8fafc);overflow:hidden}.board-card__photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.board-card__photo--initials,.person-card__photo--initials{display:grid;place-items:center;background:linear-gradient(145deg,#17243a,#344a68);color:#fff}.board-card__photo--initials span,.person-card__photo--initials span{font-size:2rem;font-weight:900;letter-spacing:.04em}.board-card__content{padding:1.25rem}.board-role{display:block;margin-bottom:.35rem;color:#a51d2d;font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.board-card__content h2{font-size:1.35rem;margin:.15rem 0 .65rem}.board-card__content a,.board-card__content p{color:#5d6876;font-size:.82rem;line-height:1.45;text-decoration:none}.board-card__content a:hover{color:#a51d2d}.officers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:1.25rem}.board-card--compact{display:grid;grid-template-columns:145px 1fr;align-items:stretch}.board-card--compact .board-card__photo{height:100%;min-height:190px}.board-card--compact .board-card__content{align-self:center}.councillors-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.person-card{display:grid;grid-template-columns:118px 1fr;gap:1rem;align-items:center;background:#fff;border:1px solid #e1e7ef;border-radius:15px;padding:.75rem}.person-card__photo{width:118px;height:132px;border-radius:11px;overflow:hidden;background:#e9eef3}.person-card__photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.person-card>div:last-child>span{color:#a51d2d;font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.person-card h3{font-size:1.05rem;margin:.25rem 0}.person-card p{margin:0;color:#64748b;font-size:.78rem;line-height:1.4}.board-organs{background:#fff}.governance-group{padding:2rem 0;border-top:1px solid #dfe6ed}.governance-group:first-child{padding-top:0;border-top:0}.governance-group__head{display:flex;align-items:baseline;gap:.8rem;margin-bottom:1.15rem}.governance-group__head span{color:#a51d2d;font-size:.72rem;font-weight:900;letter-spacing:.1em}.governance-group__head h2{margin:0;color:#17243a;font-size:clamp(1.45rem,2.2vw,2rem)}.governance-people{display:grid;gap:1rem}.governance-people--three{grid-template-columns:repeat(3,1fr)}.governance-people--two{grid-template-columns:repeat(2,1fr);max-width:760px}.governance-person{display:grid;grid-template-columns:108px 1fr;gap:1rem;align-items:center;min-height:132px;padding:.75rem;background:#f7f9fb;border:1px solid #e1e7ef;border-radius:15px;border-top:3px solid #a51d2d}.governance-person img{width:108px;height:116px;object-fit:cover;object-position:center top;border-radius:10px;background:#e9eef3}.governance-person span{display:block;color:#a51d2d;font-size:.67rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.governance-person h3{margin:.25rem 0;font-size:1.02rem;color:#17243a}.governance-person p{margin:0;color:#64748b;font-size:.76rem;font-weight:700}.board-source-note{margin-top:.5rem;padding:1rem 1.2rem;border-left:3px solid #a51d2d;background:#f7f9fb;color:#64748b;font-size:.8rem}
@media(max-width:980px){.leadership-grid,.officers-grid{grid-template-columns:repeat(2,1fr)}.board-card--compact{grid-template-columns:110px 1fr}.governance-people--three{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.leadership-grid,.officers-grid,.councillors-grid,.governance-people--three,.governance-people--two{grid-template-columns:1fr}.board-card__photo{height:290px}.board-card--compact{grid-template-columns:120px 1fr}.board-card--compact .board-card__photo{min-height:175px}.person-card{grid-template-columns:88px 1fr}.person-card__photo{width:88px;height:108px}.governance-person{grid-template-columns:88px 1fr}.governance-person img{width:88px;height:104px}.board-page .section-head>p{display:none}}
