
:root{--nero:#0d0d0c;--carbone:#171614;--gi:#FFCF00;--ruggine:#B5651D;--osso:#ECE6D8;--grigio:#9A948A}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{background:var(--nero);color:var(--osso);font:17px/1.6 'Source Sans 3',system-ui,sans-serif}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
h1,h2,h3,.voltaire{font-family:Voltaire,'Oswald',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.02em;line-height:1}
a{color:inherit}
.w{max-width:1180px;margin:0 auto;padding:0 20px}
header{position:fixed;top:0;left:0;right:0;z-index:40;background:linear-gradient(#0d0d0ce6,#0d0d0c00);transition:background .3s}
header.s{background:#0d0d0cf2;box-shadow:0 1px 0 #ffffff14}
header .w{display:flex;align-items:center;justify-content:space-between;height:70px}
header img{height:46px}
nav{display:flex;gap:26px}nav a{text-decoration:none;font-family:Voltaire,sans-serif;text-transform:uppercase;font-size:1.05rem;letter-spacing:.06em;color:#d9d3c5}
nav a:hover,nav a.on{color:var(--gi)}
#menu{display:none;background:none;border:0;color:var(--osso);font-size:2rem;cursor:pointer}
.hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;padding-bottom:12vh;background:#000 center/cover no-repeat}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0006 0%,#0000 35%,#0d0d0c 100%)}
.hero .w{position:relative;z-index:1}
.hero h1{font-size:clamp(3rem,10vw,8.5rem);color:#fff;text-shadow:0 4px 30px #000}
.hero h1 span{color:var(--gi)}
.hero p{font-size:clamp(1.1rem,2.4vw,1.5rem);max-width:30em;margin-top:14px;color:#e8e2d4}
.btn{display:inline-block;margin-top:26px;padding:14px 26px;background:var(--gi);color:#111;text-decoration:none;font-family:Voltaire,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:1.1rem;clip-path:polygon(0 0,100% 0,96% 100%,0 100%)}
.btn.alt{background:transparent;color:var(--osso);outline:2px solid var(--osso);outline-offset:-2px;clip-path:none;margin-left:12px}
.pagina{padding-top:110px}
.titolo{padding:120px 0 40px;background:#000 center/cover;position:relative}
.titolo:after{content:"";position:absolute;inset:0;background:linear-gradient(#0d0d0c99,#0d0d0c)}
.titolo .w{position:relative;z-index:1}.titolo h1{font-size:clamp(2.6rem,7vw,5.5rem)}
.kicker{color:var(--gi);font-family:Voltaire,sans-serif;letter-spacing:.2em;text-transform:uppercase;font-size:.95rem;margin-bottom:10px}
section{padding:90px 0}
h2{font-size:clamp(2.2rem,5vw,3.8rem);margin-bottom:22px}h2 span{color:var(--gi)}
.due{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.foto{width:100%;display:block;filter:contrast(1.08) saturate(.85);clip-path:polygon(0 3%,100% 0,100% 97%,0 100%)}
p+p{margin-top:1em}
.motto{font-family:Voltaire,sans-serif;text-transform:uppercase;font-size:clamp(2.4rem,7vw,6rem);line-height:.95;text-align:center;padding:110px 20px;background:var(--gi);color:#111}
.tre{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}
.card{background:var(--carbone);border-top:4px solid var(--gi);padding:26px}
.card h3{font-size:1.7rem;margin-bottom:10px;color:#fff}
.griglia{columns:3 300px;column-gap:12px}.griglia img{width:100%;margin-bottom:12px;display:block;filter:contrast(1.06) saturate(.85);cursor:zoom-in;transition:filter .2s}.griglia img:hover{filter:none}
.video{position:relative;aspect-ratio:16/9;background:#000}.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.partner{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:30px}
.partner a{display:block;background:var(--carbone);padding:26px;text-decoration:none;border-left:4px solid var(--ruggine);transition:transform .15s,border-color .15s}
.partner a:hover{transform:translateY(-3px);border-color:var(--gi)}
.plogo{display:block;height:64px;width:100%;max-width:220px;object-fit:contain;object-position:left center;margin-bottom:16px}
.partner b{font-family:Voltaire,sans-serif;text-transform:uppercase;font-size:1.6rem;font-weight:400;color:#fff;display:block}
.partner span{color:var(--grigio);font-size:.95rem}
.social{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}
.social a{padding:12px 20px;border:2px solid var(--osso);text-decoration:none;font-family:Voltaire,sans-serif;text-transform:uppercase;letter-spacing:.06em}
.social a:hover{background:var(--gi);border-color:var(--gi);color:#111}
.app{background:var(--carbone)}
footer{background:#000;padding:60px 0 40px;color:var(--grigio);font-size:.95rem}
footer .w{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:center}
footer img{height:70px}
#lb{position:fixed;inset:0;background:#000e;display:none;align-items:center;justify-content:center;z-index:60;cursor:zoom-out}#lb img{max-width:94vw;max-height:92vh}
@media(max-width:860px){nav{display:none;position:absolute;top:70px;left:0;right:0;background:#0d0d0cf5;flex-direction:column;padding:20px;gap:18px}nav.o{display:flex}#menu{display:block}.due,.tre{grid-template-columns:1fr}.btn.alt{margin-left:0}section{padding:64px 0}}
