/* Warm paper, theatre red and generous photographic surfaces. */
.dm-stage-agenda{--stage-red:#b11222;--stage-ink:#211b20}.dm-agenda-empty{display:flex;align-items:center;gap:24px;padding:30px 34px;background:#fff;border:1px solid #e8ded7;border-radius:16px}.dm-agenda-empty h3{font-size:24px;margin:0 0 8px}.dm-agenda-empty p{margin:0;color:#786b71}.dm-agenda-star{font-size:44px;color:var(--stage-red)}.dm-agenda-archive{margin-top:40px}.dm-agenda-archive>h3{font-size:28px;margin:0 0 8px}.dm-agenda-archive>p{color:#796e73;margin:0 0 24px}.dm-agenda-list{display:grid;gap:14px}.dm-agenda-row{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:28px;align-items:center;padding:24px 28px 24px 20px;background:#fff;border:1px solid #e7ddd8;border-radius:16px;box-shadow:0 6px 24px #32111d03}.dm-agenda-date{align-self:stretch;display:flex;justify-content:center;align-items:center;flex-direction:column;background:#b11222;color:white;border-radius:10px;min-height:112px;position:relative}.dm-agenda-date:after{content:'';position:absolute;right:-15px;top:0;bottom:0;border-right:1px dashed #e1d2ca}.dm-agenda-date strong{font-size:44px;line-height:1.1;letter-spacing:-.05em}.dm-agenda-date span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin-top:7px}.dm-agenda-state{color:#a31c2a;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;margin:0 0 8px}.dm-agenda-copy h3{font-size:clamp(22px,2.5vw,28px);margin:0 0 8px;line-height:1.15}.dm-agenda-copy h3 a{text-decoration:none;color:#211b20}.dm-agenda-copy time{display:block;font-size:15px;color:#6c5e66;text-transform:capitalize}.dm-agenda-place{font-size:14px;margin:10px 0 0;color:#6c5e66;display:flex;gap:8px;align-items:center}.dm-agenda-place svg{width:16px;height:16px}.dm-agenda-more{border:1px solid #e8d6d2;border-radius:30px;padding:12px 20px;color:#a61929;font-size:13px;text-decoration:none;white-space:nowrap}.dm-agenda-more:hover{background:#b11222;color:#fff}.dm-agenda-more:focus-visible,.dm-gallery-cover:focus-visible,.dm-gallery-filters button:focus-visible{outline:3px solid #b11222;outline-offset:4px}
.dm-gallery-filters{display:flex;gap:10px;margin:0 0 24px}.dm-gallery-filters[hidden]{display:none}.dm-gallery-filters button{font:inherit;font-size:13px;font-weight:700;background:white;border:1px solid #e6dbd6;padding:10px 24px;border-radius:24px;cursor:pointer;color:#5b4c54}.dm-gallery-filters button[aria-pressed=true]{background:#b11222;border-color:#b11222;color:white}.dm-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.dm-gallery-item[hidden]{display:none}.dm-gallery-cover{display:block;position:relative;aspect-ratio:4/3;border-radius:16px;overflow:hidden;color:#fff;background:#27141c;isolation:isolate}.dm-gallery-cover img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s}.dm-gallery-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0002 0%,transparent 25%,#10080de0 100%);z-index:0;pointer-events:none}.dm-gallery-item:first-child{grid-column:span 2}.dm-gallery-item:first-child .dm-gallery-cover{aspect-ratio: 8/3}.dm-gallery-cover:hover img{transform:scale(1.035)}.dm-gallery-badge{position:absolute;left:18px;top:18px;z-index:1;padding:6px 12px;background:#ffffffed;color:#3d2830;font-size:11px;font-weight:700;border-radius:20px}.dm-gallery-play{position:absolute;right:18px;top:18px;z-index:1;display:grid;place-items:center;width:38px;height:38px;background:#b11222;border:1px solid #ffffff50;border-radius:50%;font-size:15px}.dm-gallery-overlay{position:absolute;bottom:24px;left:24px;right:24px;z-index:1;display:grid;gap:10px}.dm-gallery-overlay strong{font-size:clamp(20px,2vw,28px);line-height:1.15}.dm-gallery-overlay>span{font-size:12px;color:#f2e1df}.dm-gallery-caption{font-size:14px;color:#776972;line-height:1.65;margin:12px 6px 0}.dm-gallery-art{display:grid;place-items:center;height:100%;font-size:60px;color:#ffffff30;background:radial-gradient(ellipse at 20% 0%,#a3293e,transparent 65%),#1b111a}.dm-gallery-none{padding:28px;background:#f8f4f1;border-radius:12px;color:#796971}
.dm-media-open{overflow:hidden}.dm-media-modal{border:1px solid #fff3;border-radius:18px;background:#151116;color:#fff;padding:0;width:min(1050px,94vw);max-height:92svh;overflow:auto;box-shadow:0 30px 120px #0006}.dm-media-modal::backdrop{background:#100b11df}.dm-media-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;position:sticky;top:0;background:#151116;z-index:1}.dm-media-head h2{font-size:18px;margin:0}.dm-media-head button{color:white;border:1px solid #fff5;border-radius:24px;background:transparent;padding:10px 16px;cursor:pointer;flex-shrink:0}.dm-media-body img{display:block;max-width:100%;max-height:68svh;object-fit:contain;margin:auto}.dm-media-body iframe{display:block;border:0;width:100%;aspect-ratio:16/9}.dm-media-original{display:inline-block;margin:20px 24px;color:#fff;font-size:13px}.dm-media-head button:focus-visible,.dm-media-original:focus-visible{outline:2px solid white;outline-offset:3px}
@media(max-width:900px){.dm-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dm-gallery-item:first-child .dm-gallery-cover{aspect-ratio:2/1}.dm-agenda-row{gap:24px;grid-template-columns:82px minmax(0,1fr)}.dm-agenda-more{grid-column:2;justify-self:start;padding:9px 16px}.dm-agenda-date{grid-row:span 2}.dm-agenda-date strong{font-size:38px}}
@media(max-width:540px){.dm-gallery-grid{grid-template-columns:1fr;gap:18px}.dm-gallery-item:first-child{grid-column:auto}.dm-gallery-item:first-child .dm-gallery-cover,.dm-gallery-cover{aspect-ratio:4/3}.dm-agenda-row{padding:18px 16px 18px 12px;grid-template-columns:64px minmax(0,1fr);gap:14px 24px}.dm-agenda-date strong{font-size:32px}.dm-agenda-date span{font-size:10px}.dm-agenda-copy h3{font-size:22px}.dm-agenda-copy time,.dm-agenda-place{font-size:13px}.dm-agenda-empty{padding:24px;gap:16px}.dm-agenda-empty h3{font-size:21px}.dm-media-head{padding:14px}.dm-media-head h2{font-size:15px}.dm-gallery-overlay{left:20px;bottom:20px}.dm-gallery-filters button{padding:9px 20px}}
@media(prefers-reduced-motion:reduce){.dm-gallery-cover img{transition:none}.dm-gallery-cover:hover img{transform:none}}

/* One poster per production, compact performances, collapsible archive. */
.dm-agenda-year{border-top:1px solid #dfd3cc;margin:12px 0}.dm-agenda-year>summary{cursor:pointer;padding:20px 4px;display:list-item;list-style-position:inside;color:#a81c2b}.dm-agenda-year>summary strong{font-size:23px;color:#2a2027;margin-left:8px}.dm-agenda-year>summary span{float:right;font-size:13px;color:#806c77;padding-top:5px}.dm-agenda-production{display:flex;gap:28px;padding:24px;background:white;border:1px solid #e5d9d3;border-radius:16px;margin:0 0 16px}.dm-agenda-poster{flex:0 0 165px;align-self:flex-start;background:#f6f1ec;border-radius:9px;overflow:hidden}.dm-agenda-poster img{display:block;width:100%;height:auto;max-height:260px;object-fit:contain}.dm-agenda-production-body{flex:1;min-width:0}.dm-production-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:16px}.dm-production-heading h3{font-size:27px;margin:0;line-height:1.15}.dm-production-heading .dm-agenda-state{margin-bottom:6px}.dm-production-link{font-size:12px;color:#a71929;text-decoration:none;white-space:nowrap}.dm-agenda-production .dm-agenda-row{grid-template-columns:50px minmax(0,1fr) auto;gap:18px;padding:15px 0;border:0;border-top:1px solid #eee5df;border-radius:0;box-shadow:none}.dm-agenda-production .dm-agenda-list{gap:0}.dm-agenda-production .dm-agenda-date{min-height:58px;border-radius:6px;background:#f8eeeb;color:#ad1727;grid-row:auto}.dm-agenda-production .dm-agenda-date:after{display:none}.dm-agenda-production .dm-agenda-date strong{font-size:25px;letter-spacing:-.02em}.dm-agenda-production .dm-agenda-date span{font-size:8px;margin-top:3px}.dm-agenda-production .dm-agenda-copy h3,.dm-agenda-production .dm-agenda-copy>.dm-agenda-state{display:none}.dm-agenda-production .dm-agenda-copy time{font-size:14px;font-weight:700;color:#362731}.dm-agenda-production .dm-agenda-place{font-size:13px;margin:6px 0 0}.dm-agenda-production .dm-agenda-more{padding:8px 12px;font-size:11px;grid-column:auto;justify-self:end}.dm-agenda-extra>summary{padding:14px 0;cursor:pointer;color:#a61929;font-size:13px;font-weight:700}.dm-agenda-extra>summary:focus-visible,.dm-agenda-year>summary:focus-visible{outline:2px solid #a61929;outline-offset:3px}.dm-agenda-production-body>.dm-agenda-extra{border-top:1px solid #eee5df}.dm-agenda-empty{padding:22px 28px}.dm-agenda-empty h3{font-size:21px}.dm-agenda-empty p{font-size:14px}
@media(max-width:700px){.dm-agenda-production{gap:16px;padding:18px;flex-wrap:wrap}.dm-agenda-poster{flex-basis:90px}.dm-agenda-poster img{max-height:132px}.dm-agenda-production-body{flex-basis:100%}.dm-production-heading h3{font-size:23px}.dm-agenda-production .dm-agenda-row{grid-template-columns:44px minmax(0,1fr);gap:10px 14px}.dm-agenda-production .dm-agenda-more{grid-column:2;justify-self:start}.dm-agenda-production .dm-agenda-date{grid-row:span 2}.dm-agenda-production .dm-agenda-copy time{font-size:13px}}

.dm-agenda-production .dm-agenda-row{grid-template-columns:50px minmax(0,1fr)}.dm-agenda-production .dm-agenda-date{grid-row:auto}@media(max-width:540px){.dm-agenda-production .dm-agenda-row{grid-template-columns:44px minmax(0,1fr)}}

/* Compact theatre calendar: one visual header and short event cards. */
.dm-page-ridiamoci #eventi>.dm-page-section{padding-top:38px;padding-bottom:38px}.dm-page-ridiamoci #eventi .dm-section-heading{margin-bottom:20px;align-items:center;gap:24px}.dm-page-ridiamoci #eventi .dm-section-heading h2{font-size:clamp(28px,3vw,38px);line-height:1.15;margin:7px 0 10px}.dm-page-ridiamoci #eventi .dm-eyebrow{margin:0;font-size:10px}.dm-page-ridiamoci #eventi .dm-calendar-intro{margin:0;font-size:14px;color:#776b72;line-height:1.5}.dm-page-ridiamoci #eventi .dm-section-heading>.dm-text-link{font-size:12px;white-space:nowrap}
.dm-stage-agenda .dm-agenda-production{display:grid;grid-template-columns:82px minmax(0,1fr);gap:18px;padding:18px;margin-bottom:12px;border-radius:12px}.dm-stage-agenda .dm-agenda-poster{width:82px;min-width:0;border-radius:5px;background:transparent}.dm-stage-agenda .dm-agenda-poster img{width:82px;height:116px;max-height:116px;object-fit:contain;object-position:top}.dm-stage-agenda .dm-agenda-production:not(:has(.dm-agenda-poster)){grid-template-columns:minmax(0,1fr)}.dm-stage-agenda .dm-production-heading{margin-bottom:8px;gap:14px}.dm-stage-agenda .dm-production-heading h3{font-size:23px;line-height:1.12}.dm-stage-agenda .dm-production-heading .dm-agenda-state{font-size:9px;margin-bottom:5px;letter-spacing:.1em}.dm-stage-agenda .dm-production-link{font-size:12px}.dm-stage-agenda .dm-agenda-production .dm-agenda-row{grid-template-columns:40px minmax(0,1fr);padding:10px 0 0;gap:12px}.dm-stage-agenda .dm-agenda-date{min-height:47px;align-self:start;grid-row:auto}.dm-stage-agenda .dm-agenda-date strong{font-size:22px}.dm-stage-agenda .dm-agenda-date span{font-size:7px;margin-top:3px}.dm-stage-agenda .dm-agenda-copy time{font-size:13px}.dm-stage-agenda .dm-agenda-place{font-size:12px;margin-top:5px;line-height:1.4}.dm-stage-agenda .dm-agenda-list>.dm-agenda-row+.dm-agenda-row{margin-top:9px}.dm-stage-agenda .dm-agenda-archive{margin-top:18px}.dm-stage-agenda .dm-agenda-year{margin:0;border-top:1px solid #e2d6cf}.dm-stage-agenda .dm-agenda-year>summary{padding:15px 3px;font-size:13px}.dm-stage-agenda .dm-agenda-year>summary strong{font-size:14px;font-weight:600;margin-left:6px}.dm-stage-agenda .dm-agenda-year>summary span{font-size:11px;padding-top:1px}.dm-stage-agenda .dm-agenda-year .dm-agenda-poster{display:none}.dm-stage-agenda .dm-agenda-year .dm-agenda-production{grid-template-columns:minmax(0,1fr);padding:16px 18px}.dm-stage-agenda .dm-agenda-year .dm-production-heading h3{font-size:19px}.dm-stage-agenda .dm-agenda-year .dm-production-heading .dm-agenda-state{display:none}.dm-stage-agenda .dm-agenda-empty{padding:16px 20px;gap:15px}.dm-stage-agenda .dm-agenda-empty h3{font-size:18px;margin-bottom:6px}.dm-stage-agenda .dm-agenda-empty p{font-size:13px}.dm-stage-agenda .dm-agenda-star{font-size:28px}
@media(max-width:600px){.dm-page-ridiamoci #eventi>.dm-page-section{padding-top:28px;padding-bottom:28px}.dm-page-ridiamoci #eventi .dm-section-heading{align-items:start;flex-direction:column;gap:12px;margin-bottom:16px}.dm-stage-agenda .dm-agenda-production{grid-template-columns:60px minmax(0,1fr);padding:14px;gap:12px}.dm-stage-agenda .dm-agenda-poster,.dm-stage-agenda .dm-agenda-poster img{width:60px}.dm-stage-agenda .dm-agenda-poster img{height:86px;max-height:86px}.dm-stage-agenda .dm-production-heading{align-items:start;flex-direction:column;gap:8px}.dm-stage-agenda .dm-production-heading h3{font-size:20px}.dm-stage-agenda .dm-agenda-production .dm-agenda-row{grid-template-columns:minmax(0,1fr);gap:0}.dm-stage-agenda .dm-agenda-production .dm-agenda-date{display:none}.dm-stage-agenda .dm-agenda-copy time{font-size:12px}.dm-stage-agenda .dm-agenda-place{font-size:12px;align-items:start}.dm-stage-agenda .dm-agenda-year>summary strong{font-size:13px}.dm-stage-agenda .dm-agenda-year .dm-production-heading{flex-direction:row;align-items:center}.dm-stage-agenda .dm-agenda-year .dm-production-link{font-size:11px}}

/* Video playback shares the photographic gallery. */
.dm-gallery-cover[data-stage-media="tiktok"] .dm-gallery-play,.dm-gallery-cover[data-stage-media="youtube"] .dm-gallery-play{left:50%;right:auto;top:42%;transform:translate(-50%,-50%);width:54px;height:54px;font-size:20px}.dm-media-modal.dm-media-vertical{width:min(440px,94vw)}.dm-media-vertical .dm-media-body iframe{aspect-ratio:auto;height:min(65svh,650px)}

/* Uniform theatre gallery: row order and editable image framing. */
:is(.dm-page-ridiamoci,.dm-page-animagix) .dm-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
:is(.dm-page-ridiamoci,.dm-page-animagix) .dm-gallery-item{min-width:0;margin:0;grid-column:auto}
:is(.dm-page-ridiamoci,.dm-page-animagix) .dm-gallery-item[hidden]{display:none}
:is(.dm-page-ridiamoci,.dm-page-animagix) .dm-gallery-item .dm-gallery-cover{aspect-ratio:4/3;min-height:0}
:is(.dm-page-ridiamoci,.dm-page-animagix) .dm-gallery-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--dm-focus,center)}
.dm-gallery-load{text-align:center;margin:24px 0}
.dm-gallery-more{border:0;border-radius:26px;background:#b11222;color:white;font:inherit;font-size:13px;font-weight:700;padding:13px 28px;cursor:pointer}
.dm-gallery-more[hidden]{display:none}.dm-gallery-more:hover{background:#8f0f1c}.dm-gallery-more:focus-visible{outline:3px solid #b11222;outline-offset:4px}
@media(max-width:950px){:is(.dm-page-ridiamoci,.dm-page-animagix) .dm-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){:is(.dm-page-ridiamoci,.dm-page-animagix) .dm-gallery-grid{grid-template-columns:1fr}}
