:root{--black:#222222;--black-2:#2c2b29;--cream:#eee9dd;--yellow:#ffd02f;--red:#ed432f;--blue:#b9c9c7;--line:#5a5852;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--cream);font-family:var(--sans);font-size:16px;line-height:1.45}.section-shell{width:min(1160px,calc(100% - 48px));margin:auto}.site-header{position:static;display:block;transform:translateY(-1px);padding:0 max(24px,calc((100vw - 1160px)/2));background:var(--black);border-bottom:1px dashed var(--line)}.brand{display:block;width:100%;text-align:center;color:var(--cream);font-weight:900;letter-spacing:.08em;text-decoration:none;font-size:clamp(3.6rem,12.6vw,10.8rem);line-height:.78;padding:28px 0 34px}.brand span,.dot{color:var(--red)}.site-nav,.menu-toggle{display:none}.eyebrow{margin:0 0 18px;color:var(--yellow);text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;font-weight:bold}.hero{min-height:720px;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding-top:70px;padding-bottom:90px}.hero-copy{position:relative;z-index:2}.hero-copy:before{content:'CULTURA\A COMUNITÀ\A CINEMA';white-space:pre;position:absolute;top:-95px;left:-25px;color:var(--red);font-size:.68rem;line-height:1.15;letter-spacing:.16em;transform:rotate(-8deg)}h1,h2,h3{font-family:var(--serif);font-weight:400}h1,h2{line-height:.88;letter-spacing:-.06em}h1{font-size:clamp(4.7rem,9vw,9rem);margin:0 0 30px;color:var(--cream)}h1 em{color:var(--yellow);font-style:normal;text-shadow:5px 5px 0 var(--red)}h2{font-size:clamp(3.7rem,7vw,7.5rem);margin:0;color:var(--cream)}h3{margin:0}.hero-lead{max-width:440px;color:#bcb7ad;font-size:1.08rem;margin-bottom:33px}.button{display:inline-flex;align-items:center;gap:22px;padding:13px 18px;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:bold}.button span{font-size:1.2rem}.button-light{background:var(--yellow);color:var(--black)}.button-dark{background:var(--black);color:var(--yellow);border:1px solid var(--yellow)}.hero-art{height:520px;position:relative;background:var(--blue);overflow:hidden;border:2px solid var(--cream);transform:rotate(2deg);box-shadow:14px 14px 0 var(--red)}.hero-art:before{content:'';position:absolute;width:380px;height:380px;background:var(--red);border-radius:50%;top:80px;left:60px}.hero-art:after{content:'ANARKINO';position:absolute;left:14px;bottom:12px;color:var(--black);font-size:1rem;font-weight:900;letter-spacing:.18em;transform:rotate(-7deg)}.film-frame{position:absolute;width:165px;height:220px;border:10px solid var(--cream);z-index:1;background:var(--yellow);box-shadow:8px 8px 0 var(--black)}.frame-one{top:48px;right:70px;transform:rotate(10deg)}.frame-two{bottom:40px;left:65px;background:var(--red);transform:rotate(-12deg)}.frame-three{top:175px;left:195px;background:var(--black);transform:rotate(4deg)}.art-caption{position:absolute;z-index:2;bottom:28px;right:22px;color:var(--cream);font-size:.66rem;line-height:1.05;text-align:right;text-transform:uppercase;letter-spacing:.12em}.cinemino{padding-top:70px;padding-bottom:35px;background:var(--black);width:100%;max-width:none;padding-left:max(24px,calc((100vw - 1160px)/2));padding-right:max(24px,calc((100vw - 1160px)/2))}.cinemino h2,.workshops h2{font-family:var(--sans);font-weight:900;letter-spacing:.08em;text-transform:uppercase}.workshops .section-heading{display:block;text-align:center}.workshops .section-heading>div{width:100%}.cinema-card{margin-top:42px;display:grid;grid-template-columns:43% 1fr;min-height:520px;background:transparent;border:0}.cinema-poster{position:relative;display:flex;align-items:center;justify-content:center;padding:28px;background:transparent;overflow:hidden}.cinema-poster img{display:block;width:100%;height:100%;max-height:600px;object-fit:contain;position:relative;z-index:1}.cinema-info{padding:65px 8%;display:flex;flex-direction:column;justify-content:center}.cinema-info .kicker{font-family:var(--serif);font-size:2.1rem;line-height:1.02;color:var(--yellow)}.cinema-info>p:not(.kicker){max-width:500px;color:#bcb7ad}.event-details{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:35px 0}.event-details span{display:block;color:var(--red);font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:7px}.event-details strong{font-size:.82rem}.text-link{color:var(--yellow);text-transform:uppercase;font-size:.7rem;letter-spacing:.11em;font-weight:bold;text-decoration:none}.text-link:hover{color:var(--red)}.section-dark{background:var(--black);color:var(--cream);width:100%;padding-left:max(24px,calc((100vw - 1160px)/2));padding-right:max(24px,calc((100vw - 1160px)/2))}.workshops{padding-top:45px;padding-bottom:40px;border-bottom:0}.split-heading{display:flex;justify-content:space-between;align-items:end;gap:45px}.section-intro{max-width:385px;color:#aaa59d;margin-bottom:8px}.workshop-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 18px;margin-top:55px}.workshop-card{min-width:0;background:transparent;border:0;position:relative;overflow:visible}.workshop-card:after{display:none}.workshop-image{aspect-ratio:auto;overflow:visible;background:transparent}.workshop-image img{display:block;width:100%;height:auto;object-fit:contain;filter:grayscale(.08) contrast(1.08);transition:transform .35s ease}.workshop-card:hover .workshop-image img{transform:scale(1.03)}.workshop-copy{padding:24px 23px 28px;min-height:205px;display:flex;flex-direction:column;justify-content:space-between}.workshop-number{font-size:.7rem;font-weight:bold;color:var(--yellow)}.workshop-card h3{font-size:2.15rem;line-height:.9;margin:18px 0 12px;color:var(--cream)}.workshop-card p{font-size:.86rem;margin:25px;color:#aaa59d;max-width:270px}.workshop-cinema{grid-column:1;grid-row:2;justify-self:start;width:150%;display:grid;grid-template-columns:1fr 1.4fr;grid-template-areas:'title title' 'image copy' 'dates copy';column-gap:18px;row-gap:12px;align-content:start}.workshop-acting{grid-column:2;grid-row:2;justify-self:end;width:70%;align-self:start;margin-top:120px}.workshop-card .cinema-workshop-title{grid-area:title;color:var(--yellow);font-family:var(--sans);font-size:clamp(.84rem,1.4vw,1.4rem);font-weight:900;line-height:.95;text-transform:uppercase;margin:0}.workshop-card .acting-workshop-title{color:var(--yellow);font-family:var(--sans);font-size:clamp(1.2rem,2vw,2rem);font-weight:900;line-height:.95;text-transform:uppercase;margin:0 0 16px}.acting-workshop-copy{position:absolute;right:75%;top:190px;width:100%;color:var(--cream);font-family:var(--sans);font-size:clamp(.78rem,1vw,.95rem);line-height:1.35}.acting-workshop-copy p{margin:0}.acting-workshop-copy strong{color:var(--yellow)}.acting-workshop-dates{margin:12px 0 0;text-align:center;color:var(--cream);font-size:clamp(.9rem,1.4vw,1.35rem)!important;line-height:1.15;text-transform:uppercase}.acting-workshop-dates strong{color:var(--yellow)}.acting-workshop-dates strong span{color:var(--cream)}.acting-workshop-dates>span{display:block;color:var(--cream);margin-top:8px}.cinema-workshop-image{grid-area:image}.cinema-workshop-image img{display:block;width:100%;height:auto}.cinema-workshop-copy{grid-area:copy;color:#bcb7ad;font-size:clamp(1.12rem,1.54vw,1.4rem);line-height:1.3;font-weight:700}.cinema-workshop-copy p{margin:0}.cinema-workshop-highlight{margin-top:28px!important;color:var(--yellow);font-style:italic}.workshop-card .cinema-workshop-dates{grid-area:dates;margin:0;text-align:center;color:var(--cream);font-size:clamp(.9rem,1.4vw,1.35rem)!important;line-height:1.15;text-transform:uppercase}.workshop-card .cinema-workshop-dates strong{color:var(--yellow);font-size:1em}.workshop-card .cinema-workshop-dates strong span{color:var(--cream)}.workshop-card .cinema-workshop-dates>span{display:block;color:var(--cream);font-size:1em;margin-top:8px}.workshop-horror{grid-column:1/-1;grid-row:1;justify-self:center;display:grid;grid-template-columns:1fr 1.6fr 1fr;grid-template-areas:'title title title' 'left center right' '. footer .';gap:24px;max-width:1200px;margin:0 auto;padding:32px;background:var(--black);color:var(--cream);font-family:var(--sans)}.workshop-horror .workshop-title{grid-area:title;text-align:center;font-size:clamp(1.8rem,3.5vw,3.3rem);font-weight:900;line-height:.95;color:var(--yellow);text-transform:uppercase}.workshop-horror .workshop-left{grid-area:left;align-self:center;font-size:clamp(.96rem,1.44vw,1.26rem);line-height:1.45;font-weight:700;margin-right:-10%;position:relative;z-index:2}.workshop-horror .workshop-center{grid-area:center;position:relative}.workshop-horror .workshop-center img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.workshop-horror .workshop-right{grid-area:right;align-self:center;font-size:clamp(.96rem,1.44vw,1.26rem);line-height:1.45;font-weight:700}.workshop-horror .workshop-left p,.workshop-horror .workshop-right p{margin:0}.workshop-horror .highlight{margin-top:30px;text-align:center;font-style:italic}.workshop-horror .highlight strong{color:var(--yellow)}.workshop-horror .topics{position:absolute;top:18px;right:18px;display:flex;flex-direction:column;gap:5px;font-weight:900;font-size:clamp(.7rem,1vw,.95rem)}.workshop-horror .workshop-footer{grid-area:footer;text-align:center;text-transform:uppercase;font-weight:900}.workshop-horror .dates{font-size:clamp(1rem,1.8vw,1.5rem);line-height:1.2}.workshop-horror .dates strong{color:var(--yellow);font-size:1.25em}.workshop-horror .time{margin-top:10px;font-size:clamp(1rem,1.7vw,1.45rem)}.workshop-horror .places{margin-top:8px;color:var(--yellow);font-size:clamp(1.2rem,2vw,1.8rem)}.workshop-cta{display:none}.portfolio{padding-top:0;padding-bottom:40px}.portfolio .section-heading{text-align:center;display:block}.portfolio h2{font-family:var(--sans);font-weight:900;font-size:clamp(2.59rem,4.9vw,5.25rem);letter-spacing:.08em;text-transform:uppercase;color:var(--yellow);text-align:center}.portfolio .section-intro{max-width:none;width:100%;margin:16px 0 8px;text-align:center}.portfolio .eyebrow,.collaborators .eyebrow{color:var(--red)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}.project-image{aspect-ratio:16/9;position:relative;overflow:hidden;border:1px solid var(--line)}.project-large .project-image{aspect-ratio:16/9}.project-image:before{content:'';position:absolute;inset:13% 17%;border:1px dashed rgba(255,255,255,.7);transform:rotate(-16deg)}.project-image span{position:absolute;right:20px;bottom:12px;color:#fff;font-family:var(--serif);font-size:4rem;font-style:italic}.project-red{background:var(--red)}.project-yellow{background:var(--yellow)}.project-blue{background:var(--blue)}.project-red:after{content:'ANARKINO';position:absolute;top:35%;left:13%;font-family:var(--serif);font-size:3.3rem;line-height:.8;transform:rotate(-16deg);color:var(--cream)}.project-yellow:after{content:'LUCE\A MOVIMENTO';white-space:pre;position:absolute;top:30%;left:12%;font-family:var(--serif);font-size:2.5rem;line-height:.8;transform:rotate(9deg)}.project-blue:after{content:'ASCOLTARE';position:absolute;top:40%;left:12%;font-family:var(--serif);font-size:2.6rem;line-height:.8;transform:rotate(-9deg);color:var(--cream)}.project-meta{padding-top:15px}.project-meta h3{font-size:1.5rem;color:var(--cream)}.project-meta p{font-size:.7rem;text-transform:uppercase;color:#aaa59d;letter-spacing:.08em}.replace-note{font-size:.75rem;color:#77736b;margin-top:35px}.collaborators{padding:40px 0;border-top:0;border-bottom:1px dashed var(--line)}.collaborators h2{font-size:3.2rem}.logo-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:45px}.logo-row span{padding:22px 10px;text-align:center;color:#aaa59d;font-size:.65rem;letter-spacing:.12em}.logo-row span+span{border-left:1px solid var(--line)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:var(--yellow);color:var(--black);max-width:none;width:100%;padding:95px max(24px,calc((100vw - 1160px)/2));}.contact h2{color:var(--black)}.contact .eyebrow{color:var(--red)}.contact-copy{align-self:end;max-width:420px}.contact-details{font-family:var(--serif);font-size:1.35rem;line-height:1.35}.contact-details a{color:var(--black);text-decoration:none}.contact-details a:hover{text-decoration:underline}.site-footer{display:flex;justify-content:space-between;gap:20px;padding-top:22px;padding-bottom:22px;font-size:.65rem;text-transform:uppercase;letter-spacing:.09em;color:#aaa59d}.site-footer span:first-child{color:var(--yellow)}@media(max-width:800px){.site-header{padding:15px 20px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:58px;left:0;right:0;padding:20px;background:var(--black);border-bottom:1px dashed var(--line);flex-direction:column;align-items:stretch}.site-nav.is-open{display:flex}.site-nav a{padding:10px}.hero{grid-template-columns:1fr;min-height:0;padding-top:80px}.hero-art{height:390px;margin:14px 12px 25px 0}.cinema-card{grid-template-columns:1fr}.cinema-poster{min-height:420px}.event-details{grid-template-columns:1fr;gap:18px}.split-heading{display:block}.section-intro{margin-top:24px}.workshop-grid{grid-template-columns:1fr}.workshop-horror,.workshop-cinema,.workshop-acting{grid-column:1;justify-self:center;width:75%}.workshop-acting{grid-row:3;margin-top:0}.acting-workshop-copy{position:static;width:auto}.workshop-cinema{grid-row:2;grid-template-columns:1fr;grid-template-areas:'title' 'image' 'copy' 'dates';column-gap:14px;row-gap:0}.workshop-horror{grid-template-columns:1fr;grid-template-areas:'title' 'center' 'left' 'right' 'footer';padding:18px}.workshop-horror .workshop-title-desktop{display:inline}.workshop-horror .workshop-title-mobile{display:none}.workshops h2{font-size:clamp(2.96rem,5.6vw,6rem)}.workshop-horror .workshop-title{font-size:clamp(1.08rem,5.76vw,1.73rem)}.workshop-horror .workshop-left,.workshop-horror .workshop-right{font-size:.78rem;margin:0;padding:0}.workshop-horror .workshop-center img{aspect-ratio:16/10}.workshop-horror .workshop-footer{margin-top:8px}.portfolio-grid{grid-template-columns:1fr 1fr}.project-large{grid-column:1/-1}.contact{grid-template-columns:1fr;gap:20px}.site-footer{flex-wrap:wrap}.site-footer span:last-child{width:100%}}@media(max-width:480px){.section-shell{width:min(100% - 36px,1160px)}h1{font-size:4.2rem}.hero-art{height:330px}.frame-one{right:15px}.frame-three{left:94px}.cinemino{padding-left:18px;padding-right:18px}.cinema-poster{min-height:370px;padding:16px}.workshop-grid,.portfolio-grid{grid-template-columns:1fr}.project-large{grid-column:auto}.logo-row{grid-template-columns:1fr 1fr}.logo-row span:nth-child(3){border-left:0;border-top:1px solid var(--line)}.logo-row span:nth-child(4){border-top:1px solid var(--line)}.contact{padding-left:24px;padding-right:24px}.site-footer{font-size:.58rem}}
@media(min-width:801px){.horror-connectors{display:block;position:absolute;inset:0;width:100%;height:100%;z-index:10;overflow:visible!important;pointer-events:none}.horror-connectors path{fill:none;stroke:var(--yellow);stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:14 11}.workshop-horror>*:not(.horror-connectors){position:relative;z-index:1}.workshop-horror .workshop-title,.workshop-horror .workshop-left,.workshop-horror .workshop-right,.workshop-horror .workshop-footer,.workshop-horror .topics{z-index:11}}
@media(max-width:800px){.horror-connectors{display:none!important}.cinemino h2{text-align:center}.brand{font-size:clamp(2.88rem,14.4vw,5.4rem);padding:22px 0 28px}.hero{gap:28px;padding:54px 0 64px}.hero-copy:before{top:-48px;left:0;font-size:.55rem}.hero-lead{font-size:.98rem}.hero-art{width:calc(100% - 12px);height:340px;margin:0 6px 0 0}.cinemino{padding:44px 16px 28px}.cinemino h2{font-size:clamp(1.88rem,8.8vw,3.36rem);line-height:.9}.cinema-card{margin-top:24px;min-height:0;display:grid;grid-template-columns:1fr}.cinema-poster{min-height:0;padding:8px}.cinema-poster img{width:min(84%,360px);height:auto;max-height:none;margin:auto}.cinema-info{padding:26px 5% 18px}.cinema-info .kicker{font-size:clamp(1.65rem,7vw,2.4rem)}.cinema-info>p:not(.kicker){font-size:1rem}.event-details{grid-template-columns:1fr;gap:16px;margin:24px 0}.text-link{font-size:.78rem}.workshops{padding-top:34px;padding-bottom:40px}.workshop-grid{grid-template-columns:1fr;gap:32px;margin-top:34px}.workshop-horror,.workshop-cinema,.workshop-acting{grid-column:1;justify-self:center;width:min(100%,620px);margin-left:auto;margin-right:auto}.workshop-horror{grid-row:1;padding:16px;gap:18px}.workshop-horror .workshop-center img{width:min(88%,330px);margin:auto}.workshop-horror .workshop-left,.workshop-horror .workshop-right{font-size:.78rem;line-height:1.35;margin:0;padding:0}.workshop-cinema{grid-row:2;grid-template-columns:1fr;grid-template-areas:'title' 'image' 'copy' 'dates' 'button';column-gap:0;row-gap:10px;align-content:start}.workshop-card .cinema-workshop-title{font-size:clamp(1.07rem,5.6vw,1.5rem);text-align:center}.cinema-workshop-image img{width:min(88%,330px);margin:auto}.cinema-workshop-copy{font-size:clamp(.92rem,3.8vw,1.15rem);line-height:1.34;font-weight:600;max-width:none;width:100%}.cinema-workshop-copy p{margin:0}.cinema-workshop-copy .cinema-workshop-highlight{margin-top:16px!important}.workshop-card .cinema-workshop-dates{font-size:clamp(.9rem,4.2vw,1.25rem)!important;margin-top:10px}.workshop-acting{grid-row:3;margin-top:0;display:flex;flex-direction:column}.workshop-acting .acting-workshop-title{order:1}.workshop-acting .workshop-image{order:2}.workshop-acting .acting-workshop-copy{order:3}.workshop-acting .acting-workshop-dates{order:4}.workshop-card .acting-workshop-title{font-size:clamp(1.05rem,6vw,1.7rem);margin-bottom:10px;text-align:center}.workshop-acting .workshop-image img{width:min(88%,330px);margin:auto}.acting-workshop-copy{position:static;top:auto;right:auto;width:100%;font-size:clamp(.82rem,3.5vw,1rem);line-height:1.35;font-weight:600;margin-top:12px}.acting-workshop-copy p{margin:0}.workshop-acting .acting-workshop-dates{font-size:clamp(.9rem,4.2vw,1.25rem)!important;margin-top:28px!important}.workshop-cta{display:block;pointer-events:none;margin:14px auto 0;padding:10px 16px;border:1px solid var(--yellow);background:transparent;color:var(--yellow);font:900 .7rem var(--sans);letter-spacing:.08em;text-transform:uppercase}.cinema-workshop-cta{grid-area:button}.workshop-acting .acting-workshop-cta{order:5}.portfolio{padding-top:0;padding-bottom:40px}.portfolio-grid{grid-template-columns:1fr;gap:28px;margin-top:38px}.project-large{grid-column:auto}.collaborators{padding:40px 0}.collaborators h2{font-size:2.6rem}.logo-row{grid-template-columns:1fr 1fr;margin-top:30px}.logo-row span{padding:18px 8px;font-size:.58rem}.contact{grid-template-columns:1fr;gap:18px;padding:64px 24px}.contact-copy p{font-size:1.25rem}.site-footer{font-size:.58rem;padding-left:16px;padding-right:16px}}@media(min-width:801px){.workshop-cta{display:block;position:absolute;z-index:20;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}.workshop-horror .workshop-cta{left:50%;top:50%;transform:translate(-50%,-50%)}.workshop-cinema .workshop-cta{left:50%;top:42%;transform:translate(-50%,-50%)}.workshop-acting .workshop-cta{left:50%;top:34%;transform:translate(-50%,-50%)}.workshop-horror:hover .workshop-cta,.workshop-cinema:hover .workshop-cta,.workshop-acting:hover .workshop-cta{opacity:1;visibility:visible}}


/* Workshop detail */
.workshop-detail-page{background:var(--black);color:var(--cream)}
.workshop-detail-header{border-bottom:1px dashed var(--line)}
.workshop-detail-header .brand{font-size:clamp(2.8rem,8vw,7rem);padding:22px 0 28px}
.workshop-detail{width:min(900px,calc(100% - 48px));margin:0 auto;padding:34px 0 90px}
.back-link{display:inline-block;color:var(--yellow);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-decoration:none;text-transform:uppercase;margin-bottom:34px}
.workshop-detail-card{border-top:1px solid var(--line);padding-top:38px}
.workshop-detail-heading h1{font-family:var(--serif);font-size:clamp(3rem,8vw,7.2rem);font-weight:400;line-height:.9;letter-spacing:-.06em;margin:0 0 36px}
.workshop-detail-heading h1 em{color:var(--yellow);font-style:normal;text-shadow:4px 4px 0 var(--red)}
.workshop-detail-photo{margin:0;background:var(--black-2);border:1px solid var(--line)}
.workshop-detail-photo img{display:block;width:100%;height:auto;max-height:680px;object-fit:cover}
.workshop-detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-bottom:1px dashed var(--line);padding:24px 0 26px;color:var(--yellow);font-size:1rem;line-height:1.35;text-transform:uppercase;letter-spacing:.06em}
.workshop-detail-meta p{margin:0}.workshop-detail-meta strong{color:var(--cream)}
.workshop-detail-copy{max-width:760px;padding-top:34px;font-size:1.06rem;line-height:1.55}.workshop-detail-copy>p{margin:0 0 18px}.detail-highlight{color:var(--yellow);font-size:1rem;line-height:1.25;letter-spacing:.04em;margin:30px 0 42px!important}.detail-highlight strong{font-size:1.18rem;color:var(--cream)}
.detail-section{border-top:1px dashed var(--line);padding:28px 0 4px}.detail-section h2{font-family:var(--sans);font-size:.82rem;line-height:1.1;letter-spacing:.12em;color:var(--yellow);font-weight:700;margin:0 0 12px}.detail-section p{margin:0}.detail-rules ul{margin:0;padding-left:1.25rem}.detail-rules li{padding-left:.3rem;margin:0 0 16px}.detail-rules strong{color:var(--cream)}
@media(max-width:800px){.workshop-detail{width:min(100% - 32px,620px);padding-top:24px;padding-bottom:60px}.workshop-detail-card{padding-top:28px}.workshop-detail-heading h1{font-size:clamp(2.65rem,12vw,5rem);margin-bottom:26px}.workshop-detail-meta{grid-template-columns:1fr;gap:12px;font-size:.88rem;padding:18px 0 20px}.workshop-detail-copy{padding-top:26px;font-size:.98rem;line-height:1.5}.detail-highlight{font-size:.88rem}.detail-highlight strong{font-size:1rem}.detail-section{padding-top:22px}.detail-rules ul{padding-left:1.1rem}.detail-rules li{padding-left:.15rem;margin-bottom:14px}}

/* Workshop horror CTA must remain clickable above the decorative connector. */
.workshop-card .workshop-cta[href]{pointer-events:auto!important;cursor:pointer}
.workshop-detail-signup{border-top:1px dashed var(--line);margin-top:36px;padding-top:32px;text-align:center}.workshop-detail-signup-button{display:inline-flex;align-items:center;gap:18px;background:var(--yellow);color:var(--black);padding:16px 24px;text-decoration:none;font-size:.78rem;font-weight:900;letter-spacing:.12em}.workshop-detail-signup-button span{font-size:1.25rem}.workshop-detail-signup p{margin:14px 0 0;color:#bcb7ad;font-size:.82rem}.workshop-detail-signup-button:hover{background:var(--cream)}
@media(max-width:800px){.workshop-detail-signup{margin-top:28px;padding-top:26px}.workshop-detail-signup-button{width:100%;justify-content:center}}
@media(min-width:801px){.workshop-card .workshop-cta[href]{position:absolute;display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:12px 18px;background:var(--yellow);border:2px solid var(--black);box-shadow:4px 4px 0 var(--red);color:var(--black);font-size:.72rem;font-weight:900;letter-spacing:.1em;line-height:1;text-decoration:none;transform:translate(-50%,-50%);z-index:30}.workshop-card .workshop-cta[href]:hover{background:var(--cream);transform:translate(-50%,-50%)}.workshop-horror .workshop-footer{position:static}.workshop-horror .workshop-cta[href]{left:50%;top:44%}.workshop-cinema .workshop-cta[href]{left:20.5%;top:25%}.workshop-acting .workshop-cta[href]{left:50%;top:45%}}

/* Navigazione condivisa e shop */
.site-header{position:relative;display:flex;align-items:center;gap:24px;transform:none;z-index:40}
.site-header .brand{flex:1;min-width:0;font-size:clamp(2rem,10.8vw,9rem)}
.navigation{flex:none}
.navigation>summary{list-style:none;cursor:pointer;min-width:48px;min-height:48px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;color:var(--yellow)}
.navigation>summary::-webkit-details-marker{display:none}
.hamburger{display:grid;gap:6px;width:30px}.hamburger i{height:2px;background:currentColor;display:block;transition:transform .2s}
.navigation[open] .hamburger i:first-child{transform:translateY(8px) rotate(45deg)}
.navigation[open] .hamburger i:nth-child(2){opacity:0}
.navigation[open] .hamburger i:last-child{transform:translateY(-8px) rotate(-45deg)}
.menu-label{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase}
.navigation-panel{position:absolute;top:100%;right:max(24px,calc((100vw - 1160px)/2));width:min(650px,calc(100vw - 48px));max-height:75vh;overflow:auto;display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:28px;background:var(--black-2);border:1px solid var(--line);box-shadow:8px 8px 0 var(--red)}
.navigation-panel p{color:var(--yellow);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px}
.navigation-panel a{display:block;color:var(--cream);text-decoration:none;padding:10px 0;border-bottom:1px dashed var(--line);font-size:.95rem}
.navigation-panel a:hover{color:var(--yellow)}
:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}
section[id]{scroll-margin-top:24px}
.shop-section{padding-top:64px;padding-bottom:64px}.shop-heading{display:flex;justify-content:space-between;align-items:end;gap:24px}
.shop-heading h2{font-family:var(--sans);font-weight:900;font-size:clamp(2.59rem,4.9vw,5.25rem);letter-spacing:.08em;color:var(--yellow)}
.shop-heading{margin-bottom:40px}
.shop-intro{max-width:620px;color:#bcb7ad;font-size:1.1rem;margin:24px 0 36px}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.product-card{min-width:0;border:1px solid var(--line);display:flex;flex-direction:column}
.product-visual{position:relative;aspect-ratio:1/1;flex-shrink:0;background:transparent;display:grid;place-items:center;overflow:hidden}
.product-photo{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}
.product-placeholder{position:absolute;bottom:14px;color:var(--black);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}
.garment{width:62%;height:72%;background:var(--black);display:grid;place-items:center;clip-path:polygon(28% 10%,40% 4%,60% 4%,72% 10%,100% 28%,87% 52%,74% 44%,76% 100%,24% 100%,26% 44%,13% 52%,0 28%);transform:rotate(-5deg)}
.garment-hoodie{clip-path:polygon(36% 0,64% 0,70% 15%,83% 21%,100% 91%,82% 97%,71% 52%,74% 100%,26% 100%,29% 52%,18% 97%,0 91%,17% 21%,30% 15%);transform:rotate(5deg)}
.garment span{font-size:clamp(.65rem,1.7vw,1.3rem);font-weight:900;letter-spacing:.08em;color:var(--cream)}
.product-info{padding:28px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.product-info .button{margin-top:auto}.product-price-note{font-size:.8rem;color:#bcb7ad;margin:0 0 22px}.product-info .eyebrow{margin-bottom:12px}.product-info h3{font-size:2rem;line-height:1.1}.product-description{color:#bcb7ad;min-height:3em}.product-price{font-weight:bold;color:var(--yellow)}
.product-unavailable{border:1px solid var(--line);color:#bcb7ad;background:transparent;cursor:not-allowed}
.shop-page{padding-top:36px;padding-bottom:72px}.shop-page h1{font-size:clamp(3.5rem,9vw,8rem)}
.shop-help{margin-top:64px;border-top:1px dashed var(--line);padding-top:36px;max-width:760px}.shop-help h2{font-size:2.7rem;margin-bottom:28px}
.shop-help details{border-bottom:1px solid var(--line);padding:18px 0}.shop-help summary{cursor:pointer;font-weight:bold}.shop-help p{color:#bcb7ad}.shop-help a,.site-footer a{color:var(--yellow)}
@media(min-width:601px) and (max-width:900px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.site-header{gap:12px;padding-left:18px;padding-right:18px}.site-header .brand{font-size:clamp(1.8rem,10vw,3.8rem);letter-spacing:.04em}.navigation-panel{right:18px;width:calc(100vw - 36px);grid-template-columns:1fr;gap:24px;padding:22px}.shop-heading{align-items:start;flex-direction:column}.product-grid{grid-template-columns:1fr}.shop-section{padding-top:44px;padding-bottom:44px}.product-info{padding:22px}.garment span{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Portfolio: anteprime YouTube privacy-enhanced, apertura esterna al clic. */
.film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:40px}
.film-card{min-width:0;border-bottom:1px dashed var(--line)}
.film-preview{position:relative;aspect-ratio:16/9;background:var(--black-2);isolation:isolate}
.film-preview iframe{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none}
.film-open{position:absolute;inset:0;z-index:1;display:block;background:transparent}
.film-copy{padding:24px 0}.film-copy .eyebrow{margin-bottom:12px}.film-copy h3{font-size:clamp(1.6rem,2.5vw,2.2rem);line-height:1.1}.film-copy h3 a{color:var(--cream);text-decoration:none}.film-copy h3 a:hover{color:var(--yellow)}
.film-external{font:1rem var(--sans);color:var(--yellow);white-space:nowrap}.film-author{color:#bcb7ad;font-size:.8rem;margin:16px 0 0}.film-author a{color:inherit;text-underline-offset:4px}
.portfolio-more{display:flex;justify-content:center;margin-top:32px}.portfolio-page{padding-top:36px;padding-bottom:72px}.portfolio-page h1{font-family:var(--sans);font-weight:900;letter-spacing:.08em;font-size:clamp(2rem,6.5vw,6rem);line-height:1.05;color:var(--cream);text-shadow:none}.portfolio-lead{max-width:620px;color:#bcb7ad;font-size:1.1rem}
.portfolio-page .film-grid{grid-template-columns:1fr;gap:40px}.portfolio-page .film-card{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:36px;padding-bottom:40px;align-items:center}.portfolio-page .film-copy{padding:0}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:800px){.film-grid{grid-template-columns:1fr;gap:30px}.portfolio-page .film-card{grid-template-columns:1fr;gap:22px;padding-bottom:28px}.film-copy h3{font-size:1.9rem}}

/* Spazi per i prossimi asset del portfolio. */
[hidden]{display:none!important}
@media(max-width:600px){.site-header{gap:8px;padding-left:12px;padding-right:12px}.site-header .brand{font-size:clamp(2rem,11.5vw,4.3rem);letter-spacing:0}.shop-heading{margin-bottom:32px}}

.film-preview-placeholder{display:grid;place-items:center;border:1px dashed var(--line)}
.film-preview-placeholder span{color:var(--line);font-family:var(--sans);font-size:clamp(2rem,6vw,5rem);font-weight:900}

/* Immagini portfolio complete, senza ritaglio e senza collegamenti esterni. */
.film-preview-image{aspect-ratio:auto;background:transparent}
.film-preview-image img{display:block;width:100%;height:auto}

.film-description{margin:18px 0 0;color:#bcb7ad;font-size:.95rem;line-height:1.65;overflow-wrap:anywhere}

.workshop-shop-link{margin-top:16px}

.product-pending{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:16px}
.coming-soon{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--yellow)}
.site-footer .year-credit{color:inherit;text-decoration:none}
.arcade-layer{position:fixed;inset:0;pointer-events:none;z-index:1000}
.arcade-hud{position:absolute;top:12px;left:12px;right:12px;width:fit-content;max-width:calc(100% - 24px);padding:10px 14px;background:var(--black);border:1px dashed var(--yellow);color:var(--cream);font:700 .7rem/1.5 var(--sans);letter-spacing:.05em}
.arcade-ship{position:absolute;bottom:40px;width:40px;height:28px;filter:drop-shadow(0 3px 3px rgba(0,0,0,.85))}
.arcade-ship::before{content:"";position:absolute;inset:0;background:var(--yellow);clip-path:polygon(0 100%,20% 60%,40% 60%,50% 0,60% 60%,80% 60%,100% 100%)}
.arcade-laser{position:absolute;bottom:68px;top:0;width:3px;background:var(--red)}
.arcade-hit{visibility:hidden!important}

#year{-webkit-touch-callout:none;user-select:none}
.arcade-touch .arcade-ship{bottom:calc(150px + env(safe-area-inset-bottom,0px))}
.arcade-controls{position:absolute;left:18px;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:18px;pointer-events:none}
.arcade-joystick{width:100px;height:100px;border:2px solid var(--yellow);border-radius:50%;background:var(--black);display:grid;place-items:center;pointer-events:auto;touch-action:none;user-select:none}
.arcade-knob{width:42px;height:42px;border-radius:50%;background:var(--yellow)}
.arcade-fire{pointer-events:auto;touch-action:manipulation;border:2px solid var(--yellow);background:var(--black);color:var(--yellow);min-height:48px;padding:12px 16px;font:900 .7rem var(--sans);text-transform:uppercase;cursor:pointer}
.arcade-fire{margin-left:auto;border-radius:50%;width:78px;height:78px;background:var(--red);border-color:var(--red);color:var(--cream)}

/* Fumetto arcade: effetti temporanei, tutti ripristinati a fine partita. */
.arcade-hit,.arcade-hit *{visibility:hidden!important}
.arcade-pop{position:fixed;transform:translate(-50%,-50%);padding:12px 18px;background:var(--yellow);color:var(--black);font:900 1.5rem var(--sans);clip-path:polygon(0 30%,25% 25%,20% 0,50% 16%,75% 0,78% 28%,100% 35%,85% 60%,100% 85%,65% 80%,50% 100%,35% 80%,0 90%,15% 55%);animation:arcade-pop .65s ease-out forwards}
.arcade-finale{background:rgba(34,34,34,.88);display:grid;place-items:center}
.arcade-finale .arcade-ship,.arcade-finale .arcade-laser,.arcade-finale .arcade-joystick,.arcade-finale .arcade-fire{display:none}
.arcade-kaboom{width:min(90vw,740px);min-height:min(65vw,460px);padding:70px 30px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--yellow);color:var(--black);clip-path:polygon(0 25%,22% 24%,13% 0,40% 15%,54% 0,65% 17%,90% 3%,82% 30%,100% 35%,86% 53%,100% 80%,72% 77%,75% 100%,52% 86%,29% 100%,30% 79%,0 86%,12% 55%);font:900 clamp(1rem,4vw,2.4rem)/1 var(--sans);animation:arcade-boom .5s cubic-bezier(.2,.8,.3,1.2) both}
.arcade-kaboom strong{color:var(--red);text-transform:uppercase;font-size:clamp(2.5rem,11vw,6rem);text-shadow:3px 3px 0 var(--black);letter-spacing:-.04em}
.arcade-quake main{animation:arcade-quake .45s ease-out}
@keyframes arcade-pop{from{opacity:1;scale:.65}to{opacity:0;scale:1.4;translate:0 -30px}}
@keyframes arcade-boom{from{transform:scale(.2) rotate(-12deg)}to{transform:scale(1) rotate(-4deg)}}
@keyframes arcade-quake{0%,100%{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(8px)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}
@media(prefers-reduced-motion:reduce){.arcade-pop,.arcade-kaboom,.arcade-quake main{animation:none}}

.arcade-kaboom>span:first-child{font-size:clamp(2rem,8vw,4.5rem);font-weight:900;color:var(--red)}
.arcade-kaboom strong{font-size:clamp(.75rem,2.4vw,1.25rem);text-transform:none;text-shadow:none;letter-spacing:0;text-align:center;max-width:75%;line-height:1.4;color:var(--black)}

.arcade-controls{left:max(16px,env(safe-area-inset-left,0px));right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));gap:12px}
.arcade-joystick{width:clamp(72px,22vw,100px);height:clamp(72px,22vw,100px);flex-shrink:0}
.arcade-fire{width:clamp(64px,19vw,78px);height:clamp(64px,19vw,78px);flex-shrink:0}
.arcade-touch .arcade-ship{bottom:calc(clamp(72px,22vw,100px) + max(16px,env(safe-area-inset-bottom,0px)) + 18px)}
