:root{color-scheme:light;--gold:#49654b;--paper:#303c32;--muted:#68715f;--bg:#faf9ef}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--paper);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.skip{position:fixed;top:-100px;padding:16px;background:var(--gold);color:#000;z-index:20}.skip:focus{top:0}header{max-width:1440px;margin:auto;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d4dac5}.brand{font-size:23px;line-height:.9;font-weight:950;letter-spacing:-1px;display:block}.brand>span{display:block}.brand-dot{font-size:12px;vertical-align:top;color:var(--gold);margin-left:4px}nav{display:flex;gap:40px;font-size:14px}nav a:hover,footer a:hover{color:var(--gold)}nav span{color:var(--gold)}#motion{background:none;border:1px solid #aab79c;border-radius:30px;color:var(--muted);padding:10px 14px;font-size:12px;cursor:pointer}.hero{max-width:1440px;margin:auto;min-height:760px;display:grid;grid-template-columns:1.06fr 1fr;padding:65px 5% 55px;align-items:center;gap:35px;overflow:hidden;background:radial-gradient(ellipse at 78% 50%,#e5c87955,transparent 55%)}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;color:var(--gold);margin:0 0 30px}h1{font-size:clamp(52px,6.1vw,92px);letter-spacing:-4px;line-height:1.01;margin:0;font-weight:850}em{font-style:normal;color:var(--gold)}.intro{font-size:20px;line-height:1.6;color:#5f6b59;margin:28px 0}.cta{display:inline-flex;align-items:center;gap:24px;font-size:14px;background:var(--gold);color:#faf9ef;padding:18px 23px;border-radius:3px;font-weight:700;box-shadow:0 5px 0 #2f4432;transition:transform .2s}.cta:hover{transform:translateY(-3px)}.cta span{font-size:22px}.hero-meta{font-size:10px;letter-spacing:1.7px;color:var(--muted);margin-top:36px}.hero-meta span{margin:0 12px;color:var(--gold)}.scene{perspective:1200px;position:relative;display:flex;align-items:center;justify-content:center;padding:15px 25px 35px}.poster-wrap{position:relative;width:min(100%,390px);transform-style:preserve-3d;transform:rotateY(-13deg) rotateX(5deg) rotateZ(4deg);box-shadow:16px 18px 0 #b5a163,20px 24px 0 #ded4ac,35px 40px 65px #4d5d3740,0 0 80px #dbc57930;transition:transform .5s ease;animation:float 7s ease-in-out infinite;border:1px solid #aa87484f}.poster-wrap img{display:block;width:100%;height:auto}.glint{position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,#fff1bd15 48%,transparent 62%);pointer-events:none}.scene-label{position:absolute;bottom:-10px;font-size:10px;letter-spacing:2px;color:var(--muted)}@keyframes float{50%{transform:translateY(-12px) rotateY(-7deg) rotateX(2deg) rotateZ(2deg)}}.genre-strip{border-top:1px solid #cbd3bc;border-bottom:1px solid #cbd3bc;display:flex;justify-content:space-around;align-items:center;gap:24px;padding:27px 4%;overflow:hidden;white-space:nowrap;font-size:25px;font-weight:800;letter-spacing:1px;background:#f0f1e3}.genre-strip b{font-size:18px;color:var(--gold)}.sound,.social{max-width:1440px;margin:auto;padding:95px 5%}.sound-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}h2{font-size:clamp(34px,4vw,58px);line-height:1.08;letter-spacing:-2px;margin:0;font-weight:800}.sound-grid p{color:#5f6b59;line-height:1.8;font-size:17px;margin:0 0 20px}.decades{display:flex;justify-content:space-between;border-top:1px solid #d4dac5;padding-top:24px;margin-top:28px;color:var(--gold);font-size:24px;font-weight:700}.social{border-top:1px solid #d4dac5;display:grid;grid-template-columns:1.2fr 1fr;gap:70px;background:radial-gradient(ellipse at 0 100%,#d2dcb940,transparent 75%)}.social h2{font-size:clamp(32px,3.3vw,48px)}.social-links{align-self:center}.social-pending{border-bottom:1px solid #cbd3bc;padding:22px 0;display:flex;justify-content:space-between;gap:15px;align-items:center}.social-pending span{font-size:24px}.social-pending small{color:var(--muted);font-size:12px}footer{max-width:1440px;margin:auto;border-top:1px solid #d4dac5;padding:32px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}footer p,footer>a:last-child{font-size:12px;color:var(--muted)}body.still .poster-wrap{animation:none!important;transform:rotateY(-10deg) rotateZ(3deg)!important}body.still html{scroll-behavior:auto}@media(min-width:1600px){.hero{min-height:820px}}@media(max-width:800px){header{padding:24px 6%}nav{gap:18px}.hero{grid-template-columns:1fr;padding:48px 6%;gap:38px}.hero-copy{position:relative;z-index:1}h1{font-size:clamp(52px,11vw,78px);letter-spacing:-2.5px}.hero h1 em{display:block}.scene{padding:22px 35px 35px}.poster-wrap{width:min(78%,360px)}.genre-strip{justify-content:flex-start;font-size:20px}.sound,.social{padding:65px 6%}.sound-grid,.social{grid-template-columns:1fr;gap:34px}.sound-grid h2 br:nth-child(2){display:none}footer{flex-wrap:wrap}.hero-meta{font-size:10px;line-height:1.8}.intro{font-size:18px}.scene-label{font-size:9px}}@media(max-width:420px){nav a:first-child{display:none}#motion{font-size:10px;padding:9px}.brand{font-size:20px}.cta{font-size:12px;padding:16px;gap:12px}.social-pending{align-items:flex-start;flex-direction:column;gap:9px}.poster-wrap{width:90%}footer p{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.poster-wrap{animation:none}.cta{transition:none}}

.hero-meta,.scene-label{font-size:12px;letter-spacing:1px}.social-pending small{font-size:14px}#motion{font-size:12px}html:has(body.still){scroll-behavior:auto}

.social-pending{justify-content:flex-start;flex-direction:row;align-items:center;gap:22px;padding:24px 20px;margin:12px 0;border:1px solid #cbd3bc;border-radius:8px;background:#fffef6}.social-icon{width:42px;height:42px;flex:0 0 42px;color:var(--gold)}.social-pending>div{display:flex;flex-direction:column;gap:8px}.social-pending span{font-weight:700}.social-pending small{font-size:12px}

a.social-pending{transition:background .2s,border-color .2s}a.social-pending:hover{background:#e4ead5;border-color:var(--gold)}

.latest-posts{max-width:1440px;margin:auto;padding:70px 5% 90px;border-top:1px solid #d4dac5}.latest-posts h2{font-size:clamp(32px,4vw,52px)}.posts-heading{display:flex;justify-content:space-between;align-items:center;margin:40px 0 20px;gap:20px}.posts-heading h3{font-size:25px;margin:0}.posts-heading>a{color:var(--gold);font-size:14px}.posts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.post-card{display:block;border:1px solid #cbd3bc;border-radius:8px;overflow:hidden;background:#f0f1e3;transition:transform .2s,border-color .2s}.post-card:hover{transform:translateY(-5px);border-color:var(--gold)}.post-card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#e3e5d1}.post-copy{padding:18px}.post-copy small{color:var(--muted);font-size:12px}.post-copy h4{font-size:16px;line-height:1.45;margin:12px 0 20px;min-height:46px}.post-copy span{font-size:13px;color:var(--gold)}.posts-note{font-size:12px;color:var(--muted);margin-top:22px}@media(max-width:800px){.posts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.latest-posts{padding:55px 6%}.post-copy{padding:14px}}@media(max-width:420px){.posts-grid{grid-template-columns:1fr}.post-copy h4{min-height:0}}@media(prefers-reduced-motion:reduce){.post-card{transition:none}.post-card:hover{transform:none}}

.legal-footer{max-width:1440px;margin:auto;padding:24px 5% 40px;border-top:1px solid #d4dac5;color:#5f6b59;font-size:14px;line-height:1.7}.legal-footer nav{display:flex;gap:24px;margin-top:20px;flex-wrap:wrap}.legal-footer a{color:var(--gold)}

.whatsapp-cta{display:flex;width:fit-content;align-items:center;gap:12px;margin-top:20px;padding:15px 20px;border:1px solid #86a589;border-radius:4px;color:#225d38;font-size:15px;font-weight:700;background:#e8f0df}.whatsapp-cta svg{width:25px;height:25px;flex-shrink:0}.whatsapp-cta:hover{background:#d9e7cd}.whatsapp-cta:focus-visible{outline:2px solid #225d38;outline-offset:4px}

/* Variante pop anni 90 */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:root{--gold:#ffdf39;--paper:#fff;--muted:#fff4de;--bg:#fa7929;color-scheme:light}
body{background-color:#fa7929;background-image:linear-gradient(30deg,#ffdc7b18 12%,transparent 12.5%,transparent 87%,#ffdc7b18 87.5%),linear-gradient(150deg,#ffdc7b18 12%,transparent 12.5%,transparent 87%,#ffdc7b18 87.5%);background-size:140px 90px}
header{background:#252039;border-bottom:4px solid #ffdf39;max-width:none}.brand{color:#fff}nav span{color:#ffdf39}#motion{color:#fff;border-color:#ffffff70}
.hero{position:relative;background:radial-gradient(ellipse at 85% 25%,#ffcf4b99,transparent 55%);isolation:isolate}.hero:before{content:"";position:absolute;right:3%;top:15%;width:44%;height:70%;background:#06bfc5;border:3px solid #272035;border-radius:45% 55% 35% 65%;transform:rotate(-12deg);z-index:-1;box-shadow:12px 12px 0 #dc2585}
.eyebrow{color:#382339}h1{color:#fff;text-shadow:3px 4px 0 #b94222;font-weight:950}h1 em{color:#ffec43;text-shadow:3px 4px 0 #85334c}.intro{color:#362335;font-weight:600}.cta{background:#c01874;color:#fff;border:2px solid #362335;border-radius:10px;box-shadow:5px 6px 0 #362335}.hero-meta{color:#382339;font-weight:700}.hero-meta span{color:#382339}.scene-label{color:#302436;font-weight:700;background:#ffdf39;padding:9px 12px;border:2px solid #302436;transform:rotate(-3deg)}.poster-wrap{border:3px solid #302436;box-shadow:12px 14px 0 #ffdf39,17px 19px 0 #302436,30px 35px 45px #74362d66}
.sound{background:#c01874;border-top:4px solid #302436;border-bottom:4px solid #302436}.sound .eyebrow{color:#ffec43}.sound-grid p{color:#fff}.decades{color:#ffec43;border-color:#ffffff70}.social{background:#07bac2;border:0;color:#302436}.social .eyebrow{color:#302436}.social-pending{background:#fff9e9;border:2px solid #302436;box-shadow:5px 5px 0 #302436}.social-icon{color:#bc166e}.social-pending small{color:#62435b}a.social-pending:hover{background:#ffef74;border-color:#302436}.latest-posts{background:#fff7df;color:#302436;border-top:4px solid #302436}.latest-posts .eyebrow,.posts-heading>a{color:#b5176c}.post-card{background:#fff;border:2px solid #302436;box-shadow:4px 4px 0 #edc940}.post-card img{background:#efe5d4}.post-copy small,.posts-note{color:#675267}.post-copy span{color:#b5176c}.post-card:hover{border-color:#bd176e}footer,.legal-footer{background:#252039;color:#fff;border-color:#ffffff40}footer p,footer>a:last-child{color:#eee3ef}.legal-footer a{color:#ffdf39}.whatsapp-cta{background:#eaffc9;color:#245a30;border:2px solid #302436;box-shadow:3px 4px 0 #302436}.whatsapp-cta:hover{background:#d4ffae}
.whatsapp-cta{background:#25d366;color:#fff;border-color:#128c4a;box-shadow:3px 4px 0 #302436}.whatsapp-cta svg{stroke:#fff;stroke-width:2}.whatsapp-cta:hover{background:#1ebe5d;color:#fff}.whatsapp-cta:focus-visible{outline-color:#128c4a}
@media(max-width:800px){.hero:before{top:auto;bottom:75px;right:10%;width:80%;height:36%}h1{text-shadow:2px 3px 0 #b94222}.scene-label{font-size:9px}.social-pending{margin-right:5px}}

/* Smartphone: grafica 3D prima dei contenuti introduttivi. */
@media(max-width:800px){
 .hero>.scene{grid-row:1}
 .hero>.hero-copy{grid-row:2}
 .hero:before{top:65px;bottom:auto;height:36%}
}

.gallery{max-width:1440px;margin:auto;padding:65px 5%;background:#252039;border-top:4px solid #ffdf39;color:#fff}.gallery .eyebrow{color:#ffdf39}.gallery h2{margin-bottom:30px}.gallery-stage{height:clamp(300px,52vw,580px);border:3px solid #ffdf39;border-radius:16px;overflow:hidden;background:#171423;box-shadow:8px 8px 0 #c01874}.gallery-slide{width:100%;height:100%;margin:0}.gallery-slide[hidden]{display:none}.gallery-slide img{display:block;width:100%;height:100%;object-fit:contain}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:28px}.gallery-controls button{min-width:48px;min-height:48px;border:2px solid #ffdf39;border-radius:8px;background:#ffdf39;color:#252039;font-weight:700;padding:10px 16px;cursor:pointer}.gallery-controls button:hover{background:#fff7df}.gallery-count{min-width:64px;text-align:center;font-variant-numeric:tabular-nums}@media(max-width:800px){.gallery{padding:45px 6%}.gallery-stage{height:440px;max-height:65vh}.gallery-controls{gap:12px}.gallery h2{font-size:34px}}

/* Messaggi per la maglietta Deejay History */
.shirt-section{position:relative;isolation:isolate;max-width:1440px;margin:auto;padding:78px 5% 88px;overflow:hidden;background:#ffdf39;color:#252039;border-top:4px solid #302436}
.shirt-section:before{content:"";position:absolute;width:310px;height:310px;right:-90px;top:-105px;border:20px solid #07bac2;border-radius:50%;box-shadow:0 0 0 16px #c01874;z-index:-1}
.shirt-section:after{content:"✦";position:absolute;left:2%;bottom:2%;font-size:130px;line-height:1;color:#c0187430;z-index:-1}
.shirt-inner{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:clamp(30px,6vw,86px);align-items:center}
.shirt-intro{min-width:0}.shirt-kicker{display:inline-block;padding:9px 13px;background:#07bac2;border:2px solid #302436;box-shadow:4px 4px 0 #302436;font-size:12px;letter-spacing:1.3px;font-weight:900;transform:rotate(-2deg)}
.shirt-intro h2{margin:30px 0 18px;font-size:clamp(42px,5vw,76px);line-height:.99;letter-spacing:-2.8px;font-weight:950;text-shadow:3px 4px 0 #fff8e8}
.shirt-intro h2 em{font-style:normal;color:#c01874;text-shadow:3px 4px 0 #fff8e8}
.shirt-intro>p{max-width:570px;margin:0 0 34px;font-size:18px;line-height:1.55;font-weight:700}
.shirt-picture{position:relative;width:min(100%,520px);padding:7px;background:#fff;border:3px solid #302436;border-radius:12px;box-shadow:10px 12px 0 #07bac2,15px 17px 0 #302436;transform:rotate(-3deg)}
.shirt-picture img{display:block;width:100%;height:clamp(210px,24vw,290px);object-fit:cover;object-position:center;border-radius:5px}
.shirt-picture span{position:absolute;right:-14px;bottom:-14px;padding:11px 14px;background:#c01874;color:#fff;border:2px solid #302436;box-shadow:4px 4px 0 #302436;font-size:11px;font-weight:900;letter-spacing:1.5px;transform:rotate(5deg)}
.shirt-card{position:relative;min-width:0;padding:clamp(25px,4vw,48px);background:#fffaf0;border:3px solid #302436;border-radius:22px;box-shadow:13px 15px 0 #c01874}
.shirt-card-star{position:absolute;right:25px;top:12px;color:#07bac2;font-size:56px;line-height:1;text-shadow:2px 3px 0 #302436}
.shirt-card-tag{margin:0 0 15px;color:#b5176c;font-size:12px;font-weight:900;letter-spacing:2px}
.shirt-card h3{max-width:420px;margin:0;color:#252039;font-size:clamp(28px,3.3vw,44px);line-height:1.05;letter-spacing:-1.6px}
.shirt-card-copy{margin:14px 0 27px;line-height:1.5;color:#4f4053}
.shirt-field{margin:0 0 18px}.shirt-field label{display:block;margin:0 0 8px;font-size:14px;font-weight:900}
.shirt-field input,.shirt-field textarea{display:block;width:100%;min-height:52px;padding:14px 15px;border:2px solid #302436;border-radius:9px;background:#fff;color:#252039;font:inherit;font-size:16px;box-shadow:3px 3px 0 #ead8c5}
.shirt-field textarea{min-height:130px;resize:vertical;line-height:1.45}.shirt-field input::placeholder,.shirt-field textarea::placeholder{color:#736c73;opacity:1}
.shirt-field input:focus-visible,.shirt-field textarea:focus-visible{outline:3px solid #07bac2;outline-offset:2px}
.shirt-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.shirt-privacy{margin:2px 0 20px;font-size:12px;line-height:1.55;color:#534453}.shirt-privacy a{color:#aa1267;text-decoration:underline;font-weight:800;text-underline-offset:2px}
.shirt-submit{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;min-height:58px;padding:13px 19px;border:2px solid #302436;border-radius:11px;background:#c01874;color:#fff;box-shadow:5px 6px 0 #302436;font-size:16px;font-weight:900;cursor:pointer;transition:transform .2s,background .2s}
.shirt-submit span{font-size:24px}.shirt-submit:hover{background:#a91366;transform:translateY(-2px)}.shirt-submit:disabled{opacity:.65;cursor:wait;transform:none}.shirt-submit:focus-visible{outline:3px solid #07bac2;outline-offset:5px}
.shirt-status{min-height:1.4em;margin:17px 0 0;font-size:14px;font-weight:800;line-height:1.45}.shirt-status[data-state="success"]{color:#146c43}.shirt-status[data-state="error"]{color:#a01046}
@media(max-width:800px){.shirt-section{padding:60px 6% 70px}.shirt-inner{grid-template-columns:1fr;gap:45px}.shirt-intro h2{font-size:clamp(43px,9vw,68px)}.shirt-picture{width:min(90%,520px)}.shirt-picture img{height:260px}.shirt-card{margin-right:12px}}
@media(max-width:420px){.shirt-section{padding:50px 6% 60px}.shirt-section:before{width:210px;height:210px;right:-105px;top:-90px;border-width:13px}.shirt-kicker{font-size:10px;letter-spacing:.7px}.shirt-intro h2{font-size:clamp(40px,11vw,52px);letter-spacing:-2px}.shirt-intro>p{font-size:16px}.shirt-picture{width:92%}.shirt-picture img{height:220px}.shirt-card{padding:24px 20px;margin-right:7px;box-shadow:8px 9px 0 #c01874}.shirt-card-star{right:15px;top:8px;font-size:42px}.shirt-card h3{font-size:32px}.shirt-submit{font-size:15px}}
@media(prefers-reduced-motion:reduce){.shirt-submit{transition:none}.shirt-submit:hover{transform:none}}

/* Contatti rapidi sotto l'introduzione */
.hero-contact{display:flex;align-items:stretch;flex-wrap:wrap;gap:14px;margin-top:22px}
.hero-contact .whatsapp-cta{margin-top:0;min-height:57px}
.email-cta{display:inline-flex;align-items:center;gap:10px;min-height:57px;padding:13px 16px;border:2px solid #302436;border-radius:10px;background:#c01874;color:#fff;box-shadow:3px 4px 0 #302436;font-size:14px;font-weight:800;text-decoration:none}
.email-cta svg{width:23px;height:23px;flex-shrink:0}.email-cta span:first-of-type{min-width:0;overflow-wrap:anywhere}.email-cta:hover{background:#a91366;color:#fff}.email-cta:focus-visible{outline:3px solid #07bac2;outline-offset:4px}
@media(max-width:650px){.hero-contact{flex-direction:column;align-items:stretch;gap:12px}.hero-contact .whatsapp-cta,.email-cta{width:100%;justify-content:flex-start}.email-cta span:last-child{margin-left:auto}}