:root{--night:#0b0e16;--panel:#141925;--paper:#f4efe6;--gold:#e8b665;--copper:#bf6e3e;--ink:#16171d;--muted:#aaa79f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:#fff;font:16px "Avenir Next",Avenir,Arial,sans-serif}.management{min-height:100svh;overflow:hidden}.topbar{position:absolute;z-index:5;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:20px clamp(18px,4vw,55px)}.app-switch,.booking-mail{padding:9px 13px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:rgba(7,9,15,.48);color:#fff;font-size:10px;font-weight:800;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;backdrop-filter:blur(10px)}.app-switch:hover,.booking-mail:hover{border-color:var(--gold);color:var(--gold)}.hero{position:relative;display:flex;min-height:min(760px,100svh);align-items:center;padding:110px clamp(22px,7vw,110px) 70px;background:linear-gradient(90deg,rgba(7,9,15,.96) 0%,rgba(7,9,15,.82) 42%,rgba(7,9,15,.18) 78%),url('/events-news-hero.png') 65% center/cover}.hero:after{position:absolute;left:clamp(22px,7vw,110px);bottom:0;width:min(420px,55vw);height:3px;background:linear-gradient(90deg,var(--gold),transparent);content:''}.hero-content{position:relative;z-index:1;width:min(690px,100%)}.brand{display:block;width:min(220px,60vw);margin-bottom:32px;padding:11px 15px;background:#fff}.eyebrow{margin:0;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.hero h1,.roster h2,.final-call h2,.management-dialog h2{margin:15px 0;font:clamp(45px,7vw,83px)/.94 Georgia,serif;letter-spacing:-.045em}.lead{max-width:630px;margin:0;color:rgba(255,255,255,.77);font-size:clamp(16px,2vw,20px);line-height:1.6}.hero-actions,.dialog-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px}.primary,.secondary,.dialog-actions a,.dialog-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:13px 18px;border:1px solid var(--gold);border-radius:999px;font:800 11px "Avenir Next",Arial,sans-serif;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;cursor:pointer}.primary{border-color:var(--gold);background:var(--gold);color:var(--ink)}.secondary{background:transparent;color:#fff}.primary:hover,.dialog-actions button:hover{background:#fff;border-color:#fff}.secondary:hover{background:rgba(255,255,255,.12)}.entry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12)}.entry{position:relative;display:flex;min-height:300px;flex-direction:column;align-items:flex-start;padding:34px;border:0;background:var(--panel);color:#fff;text-align:left;text-decoration:none;cursor:pointer;transition:background .2s,transform .2s}.entry:hover,.entry:focus-visible{z-index:1;background:#1d2534;outline:2px solid var(--gold);outline-offset:-2px}.entry>span{color:var(--gold);font-size:11px;font-weight:900;letter-spacing:.16em}.entry h2{margin:auto 0 9px;font:30px/1 Georgia,serif}.entry p{margin:0;color:rgba(255,255,255,.67);font-size:13px;line-height:1.5}.entry b{margin-top:22px;color:var(--gold);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.entry.tours{background:#1c2029}.entry.events{background:linear-gradient(145deg,#704025,#b76537)}.entry.events p{color:rgba(255,255,255,.85)}.entry.story{background:#11151f}.roster{padding:clamp(60px,9vw,120px) clamp(22px,7vw,110px);background:var(--paper);color:var(--ink)}.roster h2{max-width:650px;font-size:clamp(43px,6vw,72px)}.roster .eyebrow{color:#9b581f}.artist-rail{display:flex;flex-wrap:wrap;gap:9px;margin:38px 0}.artist-rail span{padding:12px 15px;border:1px solid rgba(22,23,29,.3);border-radius:999px;font:19px Georgia,serif}.artist-rail span:nth-child(3n+1){background:var(--ink);color:#fff}.artist-rail span:nth-child(3n+2){background:var(--gold)}.text-link{color:var(--ink);font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.service-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.12)}.service-strip article{min-height:230px;padding:42px;background:#11151f}.service-strip b{color:var(--gold);font:31px Georgia,serif}.service-strip p{max-width:330px;color:rgba(255,255,255,.68);line-height:1.55}.final-call{padding:clamp(65px,9vw,120px) 22px;text-align:center;background:radial-gradient(circle at 50% 120%,rgba(191,110,62,.5),transparent 47%),var(--night)}.final-call h2{font-size:clamp(45px,7vw,78px)}.final-call>p:not(.eyebrow){max-width:590px;margin:0 auto;color:rgba(255,255,255,.7);line-height:1.6}.final-call .primary{margin-top:27px}footer{padding:25px;border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.5);font-size:11px;text-align:center}footer a{color:var(--gold)}.management-dialog{width:min(700px,calc(100vw - 30px));max-height:calc(100svh - 30px);padding:0;border:0;border-radius:24px;background:var(--paper);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.55)}.management-dialog::backdrop{background:rgba(5,7,12,.82);backdrop-filter:blur(7px)}.dialog-body{padding:clamp(25px,5vw,50px)}.dialog-close{display:grid;place-items:center;float:right;width:42px;height:42px;border:1px solid rgba(22,23,29,.28);border-radius:50%;background:transparent;color:var(--ink);font-size:25px;cursor:pointer}.management-dialog .eyebrow{color:#9b581f}.management-dialog h2{font-size:clamp(39px,6vw,62px)}.management-dialog p{color:#645e56;font-size:16px;line-height:1.6}.dialog-actions a,.dialog-actions button{border-color:var(--ink);background:var(--ink);color:#fff}.dialog-actions button{background:var(--gold);color:var(--ink)}.request-dialog{width:min(780px,calc(100vw - 30px))}.dialog-lead{margin-bottom:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{display:grid;gap:6px;color:#4e4942;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:12px;border:1px solid #bdb4a8;border-radius:9px;background:#fff;color:var(--ink);font:16px "Avenir Next",Arial,sans-serif}.form-grid textarea{min-height:110px;resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--copper);outline:3px solid rgba(191,110,62,.2)}.privacy{display:flex!important;grid-template-columns:22px 1fr;align-items:flex-start;font-weight:600!important;letter-spacing:0!important;line-height:1.45;text-transform:none!important}.privacy input{width:20px;height:20px;margin:0;accent-color:var(--copper)}.privacy a{color:#8d4e24}.honey{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.send{margin-top:22px;border:0}.form-message{min-height:22px;margin:15px 0 0!important;font-size:13px!important;font-weight:800}.form-message.ok{color:#287447!important}.form-message.error{color:#a52c24!important}@media(max-width:780px){.booking-mail{display:none}.hero{min-height:720px;padding:105px 22px 55px;background:linear-gradient(180deg,rgba(7,9,15,.9),rgba(7,9,15,.58)),url('/events-news-hero.png') 68% center/cover}.brand{width:190px;margin-bottom:25px}.hero h1{font-size:50px}.lead{font-size:15px}.hero-actions>*{width:100%}.entry-grid,.service-strip{grid-template-columns:1fr}.entry{min-height:230px;padding:27px}.service-strip article{min-height:170px;padding:30px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.management-dialog{width:calc(100vw - 20px);max-height:calc(100svh - 20px)}.dialog-body{padding:24px 19px}.artist-rail span{font-size:16px}}
/* Menu a bolle: le quattro aree principali restano interamente nel primo schermo. */
.hero{min-height:100svh;padding-top:82px;padding-bottom:42px}
.hero-shell{position:relative;z-index:1;display:grid;width:100%;grid-template-columns:minmax(310px,.88fr) minmax(520px,1.12fr);align-items:center;gap:clamp(28px,5vw,80px)}
.hero-content{width:auto}
.hero .brand{width:min(184px,48vw);margin-bottom:22px}
.hero h1{font-size:clamp(42px,5.4vw,72px)}
.entry-grid{position:relative;display:grid;width:min(620px,100%);aspect-ratio:1.18/1;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:clamp(8px,1.2vw,16px);background:transparent;isolation:isolate}
.entry-grid:before{position:absolute;inset:12% 10%;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(232,182,101,.18),transparent 68%);filter:blur(10px);content:''}
.entry{min-height:0;align-items:center;justify-content:center;padding:clamp(18px,2.2vw,29px);overflow:hidden;border:1px solid rgba(255,255,255,.28);border-radius:48% 52% 45% 55% / 54% 43% 57% 46%;background:linear-gradient(145deg,rgba(31,39,55,.96),rgba(13,17,26,.96));box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 18px 40px rgba(0,0,0,.3);text-align:center;transform:translateZ(0);animation:management-float-a 6.8s ease-in-out infinite;will-change:transform}
.entry:nth-child(2){border-radius:55% 45% 56% 44% / 44% 56% 44% 56%;animation-name:management-float-b;animation-duration:7.6s;animation-delay:-1.8s}
.entry:nth-child(3){border-radius:44% 56% 47% 53% / 58% 42% 58% 42%;animation-name:management-float-c;animation-duration:7.1s;animation-delay:-3.2s}
.entry:nth-child(4){border-radius:53% 47% 43% 57% / 46% 55% 45% 54%;animation-name:management-float-d;animation-duration:8.2s;animation-delay:-4.1s}
.entry:hover,.entry:focus-visible{outline:3px solid var(--gold);outline-offset:3px;animation-play-state:paused;transform:scale(1.035)}
.entry>span{position:absolute;top:15%;left:18%;font-size:10px}
.entry h2{margin:0;font-size:clamp(23px,2.25vw,34px);line-height:1.02}
.entry p{max-width:210px;margin:9px auto 0;font-size:12px}
.entry b{margin-top:14px}
.entry.artists{background:linear-gradient(145deg,#29354a,#111722)}
.entry.tours{background:linear-gradient(145deg,#4c3325,#1b1b22)}
.entry.events{background:linear-gradient(145deg,#bd6c3d,#71391f)}
.entry.story{background:linear-gradient(145deg,#20242e,#0d1018)}
@keyframes management-float-a{0%,100%{transform:translate3d(0,-3px,0) rotate(-.4deg)}50%{transform:translate3d(4px,5px,0) rotate(.7deg)}}
@keyframes management-float-b{0%,100%{transform:translate3d(2px,4px,0) rotate(.6deg)}50%{transform:translate3d(-4px,-4px,0) rotate(-.5deg)}}
@keyframes management-float-c{0%,100%{transform:translate3d(-3px,3px,0) rotate(.4deg)}50%{transform:translate3d(4px,-5px,0) rotate(-.7deg)}}
@keyframes management-float-d{0%,100%{transform:translate3d(3px,-2px,0) rotate(-.6deg)}50%{transform:translate3d(-3px,5px,0) rotate(.5deg)}}
@media(max-width:980px){
  .hero{padding-left:clamp(18px,4vw,42px);padding-right:clamp(18px,4vw,42px)}
  .hero-shell{grid-template-columns:minmax(270px,.8fr) minmax(430px,1.2fr);gap:24px}
  .hero h1{font-size:clamp(38px,5.4vw,55px)}
  .lead{font-size:15px}
}
@media(max-width:780px){
  .topbar{padding:calc(10px + env(safe-area-inset-top)) 14px 8px}
  .app-switch{padding:8px 11px;font-size:9px}
  .hero{min-height:100svh;padding:calc(57px + env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom));align-items:stretch;background:linear-gradient(180deg,rgba(7,9,15,.92),rgba(7,9,15,.66)),url('/events-news-hero.png') 68% center/cover}
  .hero-shell{display:flex;min-height:calc(100svh - 71px - env(safe-area-inset-top) - env(safe-area-inset-bottom));flex-direction:column;justify-content:center;gap:12px}
  .hero-content{text-align:center}
  .hero .brand{width:min(128px,38vw);margin:0 auto 8px;padding:7px 9px}
  .hero .eyebrow{font-size:8px}
  .hero h1{margin:7px 0 5px;font-size:clamp(29px,8.6vw,39px);line-height:.96}
  .lead{max-width:430px;margin:0 auto;font-size:clamp(11px,3.2vw,14px);line-height:1.35}
  .hero-actions{display:none}
  .entry-grid{width:min(420px,94vw);height:auto;max-height:52svh;aspect-ratio:1.08/1;margin:0 auto;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:8px}
  .entry{min-height:0;padding:13px 9px}
  .entry>span{top:13%;left:17%;font-size:8px}
  .entry h2{font-size:clamp(19px,5.5vw,25px)}
  .entry p{margin-top:6px;font-size:clamp(9px,2.65vw,11px);line-height:1.25}
  .entry b{margin-top:8px;font-size:8px}
}
@media(max-width:380px),(max-height:700px){
  .hero-shell{gap:8px}
  .hero .brand{width:100px;margin-bottom:5px}
  .hero h1{font-size:28px}
  .lead{display:none}
  .entry-grid{width:min(340px,92vw);max-height:57svh}
  .entry p{display:none}
  .entry h2{font-size:19px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.entry{transition:none;animation:none}}
