/* ══════════════════════════════════════════════════════════════════════════
  METS — Single event (Δρώμενο)
  Πιστή μεταφορά του design. Scoped κάτω από .mets-event.
  Enqueue σε single/gallery. Η γραμματοσειρά κληρονομείται από το theme.
  Nav & footer τα δίνει το theme — δεν περιλαμβάνονται εδώ.
  ═════════════════════════════════════════════════════════════════════════ */

 .mets-event{--paper:#293019;--paper-2:#353d22;--paper-3:#3d4527;--ink:#ebe6d2;--accent:#8a9468;--accent-bright:#b5be94;--gray:#a8a98e;--line:rgba(235,230,210,.16);--pad-x:clamp(20px,4vw,56px);}
 *{box-sizing:border-box}html,body{margin:0;background:var(--paper)}
 body{background:var(--paper);color:var(--ink);font-family:inherit;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}
 a{color:inherit;text-decoration:none;cursor:pointer}button{font-family:inherit;cursor:pointer}.num{font-variant-numeric:tabular-nums}

 .nav{display:grid;grid-template-columns:auto 1fr auto;gap:24px;padding:22px var(--pad-x);border-bottom:1.5px solid var(--ink);align-items:center;font-size:13px;font-weight:500;background:var(--paper);position:sticky;top:0;z-index:50}
 .mark{font-weight:700;font-size:16px;}.mark .dot{color:var(--accent-bright)}
 .menu{display:flex;gap:28px;justify-self:center}.menu a:hover{color:var(--accent-bright)}
 .home{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;background:var(--ink);color:var(--paper);border:1.5px solid var(--ink);font-size:12px;font-weight:600;}
 .home:hover{background:var(--paper);color:var(--ink)}

 .crumb{padding:18px var(--pad-x) 0;font-size:17px;color:var(--gray);}
 .crumb a:hover{color:var(--accent-bright)}

 .hero{padding:24px var(--pad-x) 0;display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
 .hero-kind{grid-column:1/13;margin-bottom:14px}
 .kind{display:none;padding:6px 12px;font-size:11px;font-weight:700;}
 .kind.performance{background:var(--ink);color:var(--paper)}
 .hero-title{grid-column:1/13;margin:0;font-weight:800;font-size:clamp(48px,8vw,120px);line-height:.88;}
 .hero-title em{font-style:normal;color:var(--accent-bright)}
 .hero-stage{grid-column:1/13;margin-top:32px;position:relative}
 .hero-img{width:100%;height:clamp(320px,50vw,620px);background:var(--paper-2);border:1.5px solid var(--ink);position:relative}

 .layout{padding:60px var(--pad-x) 0;display:grid;grid-template-columns:1fr 380px;gap:64px;align-items:start;border-top:1.5px solid var(--ink);margin-top:48px}
 .syn{font-size:clamp(20px,2.2vw,28px);line-height:1.45;max-width:1000px;text-wrap:pretty}
 .credit-list{margin-top:24px;display:grid;grid-template-columns:1fr;gap:18px}
 .credit-list dt{font-size:15px;font-weight:600;color:var(--gray);margin-bottom:6px}
 .credit-list dd{margin:0;font-size:16px;font-weight:600}

 .mets-event .gallery{padding:70px var(--pad-x) 0;max-width:none}
 .gallery h3{font-size:30px;font-weight:600;color:var(--gray);margin:0 0 18px}
 .mets-event .gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
 .gallery-grid button{all:unset;aspect-ratio:4/3;background:var(--paper-2);border:1.5px solid var(--ink);cursor:pointer;display:block;width:100%;transition:opacity .15s}
 .gallery-grid button:hover{opacity:.75}

 .lightbox{position:fixed;inset:0;background:rgba(15,17,9,.94);z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px}
 .lightbox-stage{position:relative;width:min(1100px,88vw);aspect-ratio:16/10;background:var(--paper-2);border:1.5px solid var(--ink);display:flex;align-items:center;justify-content:center;color:var(--gray);font-size:13px;}
 .lightbox-close{position:absolute;top:28px;right:32px;width:46px;height:46px;border:1.5px solid var(--ink);background:transparent;color:var(--ink);font-size:20px;display:flex;align-items:center;justify-content:center}
 .lightbox-close:hover{background:var(--ink);color:var(--paper)}
 .lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;border:1.5px solid var(--ink);background:rgba(44,51,26,.6);color:var(--ink);font-size:22px;display:flex;align-items:center;justify-content:center}
 .lightbox-nav:hover{background:var(--ink);color:var(--paper)}
 .lightbox-nav.prev{left:-72px}.lightbox-nav.next{right:-72px}
 .lightbox-counter{margin-top:20px;font-size:12px;color:var(--gray);}
 @media (max-width:780px){.lightbox-nav.prev{left:8px}.lightbox-nav.next{right:8px}}

 /* booking panel */
 .panel{border:1.5px solid var(--ink);background:var(--paper-2);padding:28px}
 .panel h2{margin:0 0 4px;font-size:20px;font-weight:600;color:var(--gray)}
 .panel .price{font-size:34px;font-weight:800;margin-bottom:20px}
 .panel .price span{font-size:14px;font-weight:500;color:var(--gray);margin-left:8px}
 .slot-list{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line);margin-bottom:22px;max-height:360px;overflow-y:auto}
 .slot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 4px;border-bottom:1px solid var(--line);cursor:pointer;transition:background .12s}
 .slot:hover{background:var(--paper-3)}
 .slot.on{background:var(--accent);color:var(--paper)}
 .slot .d{font-weight:700;font-size:15px}
 .slot .t{font-size:13px;color:var(--gray)}
 .slot.on .t{color:var(--paper)}
 .book-cta{display:block;text-align:center;background:var(--ink);color:var(--paper);padding:18px 0;font-size:14px;font-weight:700;transition:background .15s}
 .book-cta:hover{background:var(--accent-bright)}
 .panel-note{margin-top:14px;font-size:12px;color:var(--gray);line-height:1.5;text-align:center}

 .practical{margin-top:28px;border:1.5px solid var(--ink);background:var(--paper-2);padding:24px}
 .practical dl{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;font-size:15px;margin:0}
 .practical dt{color:var(--gray);font-size:15px;font-weight:600;align-self:start;padding-top:2px}
 .practical dd{margin:0;font-weight:600}

 .related{padding:70px var(--pad-x) 100px;border-top:1.5px solid var(--ink);margin-top:70px}
 .related h2{font-size:clamp(32px,4vw,52px);font-weight:800;margin:0 0 30px}
 .related h2 em{font-style:normal;color:inherit}
 .rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
 .rel-card{border:1.5px solid var(--ink);background:var(--paper-2)}
 .rel-thumb{aspect-ratio:16/10;background:var(--paper-2);border-bottom:1.5px solid var(--ink);background-size:cover;background-position:center}
 .rel-body{padding:18px}
 .rel-body .kind{margin-bottom:8px;font-size:10px;padding:4px 8px}
 .rel-body h3{margin:0;font-size:19px;font-weight:700;}

 .foot{background:#1f2412;color:var(--ink);border-top:1.5px solid var(--line);padding:60px var(--pad-x) 30px}
 .foot-grid{display:grid;grid-template-columns:2fr 1.2fr 1fr 1fr;gap:28px;padding-bottom:50px;border-bottom:1px solid var(--line)}
 .foot-mark{font-size:clamp(36px,4vw,56px);font-weight:800;line-height:.95}
 .foot-mark .dot{color:var(--accent-bright)}
 .foot-mark .sub{display:block;font-size:12px;font-weight:500;color:var(--gray);margin-top:14px;}
 .foot-col{font-size:14px;line-height:1.7;color:rgba(235,230,210,.85)}
 .foot-col .lbl{display:block;font-size:11px;font-weight:600;color:var(--gray);margin-bottom:12px;}
 .foot-col a{display:block}.foot-col a:hover{color:var(--accent-bright)}
 .foot-bottom{padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:11px;font-weight:500;color:var(--gray)}
 .foot-bottom a{margin-left:24px}.foot-bottom a:first-child{margin-left:0}.foot-bottom a:hover{color:var(--accent-bright)}

 @media (max-width:980px){
  .layout{grid-template-columns:1fr}
  .panel{position:static}
  .credit-list{grid-template-columns:1fr}
  .rel-grid{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr}
  .menu{display:none}
 }

/* ── Δυναμικές προσθήκες ─────────────────────────────────────────────────── */

/* Πραγματική εικόνα στο hero — το inline background-image ΜΕΝΕΙ, εδώ μόνο sizing.
  Το placeholder pattern σβήνεται με το ::after, όχι μηδενίζοντας το image. */
.mets-event .hero-img.has-img {
 background-size: cover;
 background-position: center;
 background-repeat: no-repeat;
}

/* Gallery: πραγματικές φωτογραφίες — ΚΡΑΤΑ το inline background-image. */
.mets-event .gallery-grid button.has-img {
 background-size: cover;
 background-position: center;
 background-repeat: no-repeat;
}

/* Slots: κατάσταση sold-out / ακυρωμένο (δεν είναι clickable checkout, είναι λίστα) */
.mets-event .slot {cursor: default; }
.mets-event .slot .t .flag {
 margin-left: 8px; font-size: 11px; font-weight: 700;
  
}
.mets-event .slot.is-soldout {opacity: .5; }
.mets-event .slot.is-soldout .flag {color: var(--accent-bright); }
.mets-event .slot.is-cancelled {opacity: .45; }
.mets-event .slot.is-cancelled .d {text-decoration: line-through; }
.mets-event .slot.is-cancelled .flag {color: var(--accent-bright); }

/* Μηνιαίες ομάδες μέσα στο panel */
.mets-event .slot-month {
 padding: 12px 4px 6px; font-size: 11px; font-weight: 700;
  color: var(--gray);
 border-bottom: 1px solid var(--line);
}

/* Note κάτω από το κουμπί */
.mets-event .panel-note {min-height: 0; }

/* Trailer (oEmbed) */
.mets-event .trailer {margin-top: 56px; }
.mets-event .trailer h3 {
 font-size: 12px; font-weight: 600; 
  color: var(--gray); margin: 0 0 18px;
}
.mets-event .trailer .embed {position: relative; aspect-ratio: 16/9; border: 1.5px solid var(--ink); }
.mets-event .trailer iframe {position: absolute; inset: 0; width: 100%; height: 100%; }

/* Κενή κατάσταση προγράμματος */
.mets-event .slot-empty {padding: 20px 4px; color: var(--gray); font-size: 13px; }

/* ── Lightbox (πραγματικές εικόνες) ─────────────────────────────────────── */
.mets-lightbox {
 position: fixed; inset: 0; z-index: 200;
 background: rgba(15,17,9,.94);
 display: flex; flex-direction: column; align-items: center; justify-content: center;
 padding: 40px;
}
.mets-lightbox[hidden] {display: none; }
.mets-lb-stage {
 position: relative; width: min(1100px, 88vw); max-height: 82vh;
 display: flex; align-items: center; justify-content: center;
}
.mets-lb-stage img {
 max-width: 100%; max-height: 82vh; object-fit: contain;
 border: 1.5px solid #ebe6d2; background: #3d4527;
}
.mets-lb-close {
	padding:0;
 position: absolute; top: -54px; right: 0;
 width: 46px; height: 46px; border: 1.5px solid #ebe6d2;
 background: transparent; color: #ebe6d2; font-size: 20px;
 display: flex; align-items: center; justify-content: center;
}
.mets-lb-close:hover {background: #ebe6d2; color: #293019; }
.mets-lb-nav {
	padding:0;
 position: absolute; top: 50%; transform: translateY(-50%);
 width: 56px; height: 56px; border: 1.5px solid #ebe6d2;
 background: rgba(41,48,25,.6); color: #ebe6d2; font-size: 22px;
 display: flex; align-items: center; justify-content: center;
}
.mets-lb-nav:hover {background: #ebe6d2; color: #293019; }
.mets-lb-nav.prev {left: -72px; }
.mets-lb-nav.next {right: -72px; }
.mets-lb-counter {
 margin-top: 20px; font-size: 12px; color: #a8a98e;
  
}
@media (max-width: 780px) {
 .mets-lb-nav.prev {left: 8px; }
 .mets-lb-nav.next {right: 8px; }
 .mets-lb-close {top: 8px; right: 8px; }
}

/* Περίληψη προγράμματος (κανονικό μοτίβο — μόνο εύρος) */
.mets-event .slot-summary {padding: 18px 4px 6px; }
.mets-event .slot-summary .range {
 display: block; font-size: 22px; font-weight: 800; color: var(--ink);
}
.mets-event .slot-summary .pattern {
 display: block; margin-top: 6px; font-size: 14px; color: var(--gray);
}

/* Διανομή — μία γραμμή ονομάτων */
.mets-event .cast-line {
 margin: 24px 0 0;
 font-size: 16px; line-height: 1.6;
}
.mets-event .cast-line .cast-lbl {
 display: block; font-size: 15px; font-weight: 600;
  color: var(--gray); margin-bottom: 6px;
}

/* ── Gallery σελίδα (masonry) ────────────────────────────────────────────── */
.mets-event.mets-gallery-page {padding-top: 40px; }

.mets-event .gallery-head {padding: 0 var(--pad-x) 40px; }
.mets-event .gallery-head h1 {
 
    font-size: clamp(56px, 10vw, 132px); font-weight: 900; 
 line-height: 0.95; margin: 0;
}
.mets-event .gallery-intro {
 padding: 0 var(--pad-x); max-width: 720px; margin-bottom: 40px;
 font-size: 16px; line-height: 1.6; color: var(--gray);
}

.mets-event .gallery-masonry {padding: 0 var(--pad-x) 80px; max-width: none; }

/* CSS columns = masonry με μεταβλητά ύψη, όπως το mockup */
.mets-event .masonry {
 column-count: 3;
 column-gap: 16px;
}
@media (max-width: 900px) {.mets-event .masonry {column-count: 2; } }
@media (max-width: 560px) {.mets-event .masonry {column-count: 1; } }

.mets-event .masonry-item {
 all: unset;
 display: block;
 width: 100%;
 margin: 0 0 16px;
 break-inside: avoid;
 aspect-ratio: auto;
 min-height: 220px;
 background: var(--paper-2);
 background-size: cover;
 background-position: center;
 border: 1.5px solid var(--ink);
 cursor: pointer;
 transition: opacity .15s;
}
.mets-event .masonry-item:hover {opacity: .78; }

/* Ποικιλία ύψους ώστε να «σπάει» σε masonry ρυθμό */
.mets-event .masonry-item:nth-child(3n+1) {height: 340px; }
.mets-event .masonry-item:nth-child(3n+2) {height: 260px; }
.mets-event .masonry-item:nth-child(3n+3) {height: 420px; }
