/* InVinile — foglio di stile scritto a mano, misure prese dal sito WordPress originale.
   Breakpoint: colonne impilate sotto 782px. Tipografia fluida tra 375px e 1600px. */
@font-face{font-family:Vollkorn;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/vollkorn.woff2) format("woff2")}
@font-face{font-family:"Fira Code";font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/fira-code.woff2) format("woff2")}

:root{
  --bg:#1b1b1b;--fg:#cbcbcb;--gold:#eeb300;--red:#910000;--light:#f0f0f0;
  --s20:10px;--s30:20px;--s40:30px;
  --s50:clamp(30px,5vw,50px);
  --s70:clamp(50px,7vw,90px);
  --s80:clamp(70px,9vw,140px);
  --gap:19.2px;
  --f-body:clamp(16.1078px,calc(16.1078px + 1.8922*(100vw - 375px)/1225),18px);
  --f-h2:clamp(23.8463px,calc(23.8463px + 14.1537*(100vw - 375px)/1225),38px);
  --f-xxl:clamp(35.1331px,calc(35.1331px + 12.8669*(100vw - 375px)/1225),48px);
  --f-lg:clamp(18.2156px,calc(18.2156px + 3.7844*(100vw - 375px)/1225),22px);
  --f-h3:clamp(20.6468px,calc(20.6468px + 11.3532*(100vw - 375px)/1225),32px);
  --f-disp:clamp(35.9332px,calc(35.9332px + 17.3956*(100vw - 375px)/1225),53.3288px);
  --f-sub:clamp(24.2156px,calc(24.2156px + 3.7844*(100vw - 375px)/1225),28px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:300 var(--f-body)/1.5 "Fira Code",monospace;letter-spacing:-.18px;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%}
h1,h2,h3,h6,p,ul{margin:0}
a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.15em}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
strong,b{font-weight:bolder}
h2,h3,.h2{font-family:Vollkorn,serif;font-weight:400;line-height:1.125}
h2{font-size:var(--f-h2);letter-spacing:-.96px}
h3{font-size:var(--f-h3);letter-spacing:-.64px}
h6,.h6{font-family:Vollkorn,serif;font-weight:700;font-size:var(--f-body);line-height:1.125;letter-spacing:1.4px;text-transform:uppercase}
.gold{color:var(--gold)}
.center{text-align:center}
.flow>*+*{margin-top:var(--gap)}
.root>*{margin-top:var(--gap)}
.root>.m0{margin-top:0}

/* cover (video) */
.cover{position:relative;display:flex;overflow:hidden;min-height:430px;padding:1em;isolation:isolate}
.cover>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.cover>.dim{position:absolute;inset:0;z-index:-1;background:var(--bg)}
.cover>.in{width:100%}

/* hero */
.hero{min-height:100vh;padding:var(--s50);color:#fff;justify-content:flex-end;align-items:flex-start}
.hero>.dim{opacity:.6}
.hero .in{max-width:calc(645px + 2*var(--s50));padding:0 var(--s50)}
.hero-logo{display:flex;justify-content:flex-end}
.hero-logo img{width:281px;height:auto;aspect-ratio:281/203}
.hero .lead{margin-top:var(--gap)}
.hero .h6{font-size:var(--f-lg);text-align:right}
.hero p{text-align:right;margin-top:var(--gap)}
.btns{display:flex;flex-direction:column;align-items:flex-end;gap:16px;margin-top:var(--gap)}
.btn{display:inline-block;padding:9.6px 25.6px;border-radius:9999px;background:var(--light);color:var(--bg);font-weight:400;letter-spacing:-.36px;text-decoration:none;transition:opacity .2s}
.btn:hover{opacity:.85}
.btn.red{background:var(--red);color:var(--light)}

/* sezione "Cos'è" */
.sec{padding:var(--s50)}
.cols{display:flex;gap:140px;max-width:1340px;margin:0 auto;align-items:center}
.cols>*{flex:0 0 calc((100% - 140px)/2);min-width:0}
.cover.logo-cover{align-items:center;justify-content:center}
.cover.logo-cover .dim{opacity:.3}
.cover.logo-cover img{width:100%;height:auto}
.invito{min-height:430px;padding:1em var(--s70);align-items:center}
.invito .dim{opacity:0}
.invito .in{max-width:calc(645px + 2*var(--s50));padding:0 var(--s50);color:#000}
.subtitle{font-size:var(--f-sub);line-height:1.2}
.pill{display:block;width:fit-content;margin:var(--gap) auto 0;border:1px solid #000;border-radius:16px;padding:3.2px 9.6px 4px;font:400 14px/1.5 Vollkorn,serif;letter-spacing:normal;color:#000;text-decoration:none}

/* eventi */
.feltrinelli{padding:0 var(--s50)}
.feltrinelli .wide{max-width:1340px;margin:0 auto;padding:var(--s50) 0}
.feltrinelli .wide>*+*{margin-top:var(--s50)}
.feltrinelli .wide>h6+h2{margin-top:0}
.feltrinelli h2{font-size:var(--f-xxl)}
.when{display:flex;gap:var(--s50)}
.when>div{flex:1 1 0;min-width:0;border-top:1px solid rgba(255,255,255,.2);padding:var(--s30) 0}
.when p{margin-top:var(--gap)}
.free{padding:var(--s80) var(--s50)}
.free .wide{max-width:1340px;margin:0 auto}
.free p{font-size:var(--f-disp);line-height:1.2;font-weight:400;text-align:center}
.free .sp{height:30px;margin-top:var(--gap)}

/* chiusura */
.end{padding:0 var(--s50) var(--gap)}
.end h2.gold{color:var(--gold)}
.end>div+div{margin-top:var(--gap)}
.end h6,.end p,.info>*+*{margin-top:var(--gap)}
.contact-box{padding:var(--s70) 0}
.contact-box h2,.contact-box p{text-align:center}
.social{display:flex;justify-content:center;margin-top:var(--gap)}
.social a{display:flex;align-items:center;gap:15.6px;font-size:24px;text-decoration:none}
.social svg{width:24px;height:24px;fill:currentColor}
.social span{font-size:15.6px;line-height:1.5}
.info img{width:128px;height:auto}
.spacer100{height:100px}
.end .foot p{margin-top:0}
.foot{display:flex;justify-content:space-between;align-items:flex-start;font-size:14px;line-height:1.5}

/* legal */
.legal{max-width:645px;margin:0 auto;padding:var(--s70) var(--s50)}
.legal h1{font-family:Vollkorn,serif;font-weight:400;font-size:var(--f-xxl);line-height:1.125;letter-spacing:-.96px;color:var(--gold)}
.legal h2{font-size:var(--f-h2);color:var(--gold);margin-top:2.2em}
.legal p,.legal ul,.legal table{margin-top:var(--gap)}
.legal p strong:only-child{display:block}
.legal li{margin-top:.5em}
.legal ul ul{margin-top:.5em}
.legal table{border-collapse:collapse;width:100%}
.legal th,.legal td{text-align:left;border:1px solid rgba(255,255,255,.25);padding:8px 12px;font-weight:400}
.legal th{font-weight:700}
.legal .back{display:inline-block;margin-bottom:var(--s40)}
.legal{font-weight:400}

/* banner informativo */
#cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:200;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;padding:16.5px 24px;background:#121212;border-top:1px solid #2a2a2a;box-shadow:0 -1px 10px rgba(172,171,171,.3);color:#d0d0d0;font-size:14px;line-height:24px}
#cookie-banner p{max-width:1074px}
#cookie-banner .t{display:block;font-weight:700;font-size:18px;line-height:24px;margin-bottom:12px}
#cookie-banner button{font:inherit;cursor:pointer;padding:8px 27px;border:2px solid var(--gold);border-radius:2px;background:var(--gold);color:#000}
#cookie-banner[hidden]{display:none}

@media (max-width:781px){
  .cols,.when{flex-direction:column}
  .cols{gap:30px}
  .cols>*{flex:none;width:100%}
  .cover.logo-cover{min-height:430px}
}
@media (prefers-reduced-motion:reduce){.btn{transition:none}}
