/* Θέατρο ΑΡΓΩ: production components for the Total child theme.
   Everything is scoped under .argo so it does not disturb Total or WPBakery. */
:root{
  --argo-bg:#EDF0F3; --argo-surface:#FFFFFF; --argo-ink:#131B2E; --argo-muted:#56607A; --argo-line:#CCD3DD;
  --argo-accent:#B91D47; --argo-on-accent:#FFFFFF;
  --argo-poster-1:#B91D47; --argo-poster-2:#18233F; --argo-poster-3:#1F4E5F; --argo-on-poster:#F6F2EE;
  --argo-display:"Helvetica Neue",Helvetica,Arial,"Liberation Sans",sans-serif;
  --argo-body:"Helvetica Neue",Helvetica,Arial,"Liberation Sans",sans-serif;
}
.argo{font-family:var(--argo-body);color:var(--argo-ink);line-height:1.6}
.argo *{box-sizing:border-box}
.argo a{color:inherit}
.argo a,.argo a:hover,.argo a:focus{text-decoration:none}
.argo p,.argo h1,.argo h2,.argo h3,.argo dl,.argo dd{margin:0;padding:0}
.argo :focus-visible{outline:2px solid var(--argo-accent);outline-offset:3px}
.argo-display{font-family:var(--argo-display);font-weight:700;text-transform:none;line-height:1.05;letter-spacing:-.02em;text-wrap:balance;overflow-wrap:anywhere;color:var(--argo-ink)}
.argo-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--argo-muted)}
.argo-muted{color:var(--argo-muted)}
.argo-by{font-size:1.2rem;font-weight:500}
.argo-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.argo .argo-notice{border-left:3px solid var(--argo-accent);padding:6px 0 6px 18px;max-width:60ch}

.argo-btn{border-radius:35px;gap:8px;display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:14px 36px;border:2px solid var(--argo-ink);background:transparent;color:var(--argo-ink);font:700 1.1rem/1.2 var(--argo-body);text-decoration:none;transition:color .15s,background-color .15s}
.argo .argo-btn:hover{background:var(--argo-ink);color:var(--argo-bg)}
.argo .argo-btn--primary{background:var(--argo-accent);border-color:var(--argo-accent);color:var(--argo-on-accent)}
.argo .argo-btn--primary:hover{background:var(--argo-ink);border-color:var(--argo-ink);color:var(--argo-bg)}

.argo-pill{display:inline-block;padding:6px 14px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid currentColor}
.argo-pill--now{background:var(--argo-accent);border-color:var(--argo-accent);color:var(--argo-on-accent)}
.argo-pill--soon{color:var(--argo-accent)}
.argo-pill--past{color:var(--argo-muted)}
.argo-pill--early{background:var(--argo-ink);border-color:var(--argo-ink);color:#fff;text-transform:none;letter-spacing:.02em;font-size:.8rem}
.argo-card__badge{margin-top:6px}
.argo-facts{display:flex;flex-wrap:wrap;gap:8px 32px;font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums}
.argo-facts span{white-space:nowrap}

/* poster */
.argo-poster{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:16px;aspect-ratio:5/7;max-width:100%;padding:clamp(14px,2.2vw,24px);color:var(--argo-on-poster);overflow:hidden}
.argo-t1{background:var(--argo-poster-1)} .argo-t2{background:var(--argo-poster-2)} .argo-t3{background:var(--argo-poster-3)}
.argo-poster__top{font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.argo-poster__title{font-family:var(--argo-display);font-weight:700;letter-spacing:-.02em;text-transform:none;line-height:1.05;font-size:clamp(1.5rem,2.7vw,2.3rem);overflow-wrap:anywhere;hyphens:auto}
.argo-poster__title.is-long{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.1}
.argo-poster--photo{padding:0}
.argo-poster--photo img{width:100%;height:100%;object-fit:cover;display:block}

/* hero */
.argo-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(24px,5vw,64px);align-items:end}
.argo-hero__text{display:flex;flex-direction:column;gap:28px;min-width:0}
.argo .argo-hero__title{font-size:clamp(2.4rem,6vw,5rem)}
.argo .argo-hero__title.is-long{font-size:clamp(2rem,4.2vw,3.4rem)}
.argo-hero__summary{max-width:52ch}

/* cards */
.argo-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:64px 32px}
.argo-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;min-width:0}
.argo-card__text{display:flex;flex-direction:column;gap:4px}
.argo-card__title{font-size:1.15rem;line-height:1.25;font-weight:700;transition:color .15s}
.argo-card:hover .argo-card__title{color:var(--argo-accent)}
.argo-card__meta{font-size:.9rem;color:var(--argo-muted);font-variant-numeric:tabular-nums}

/* archive */
.argo-archive{display:flex;flex-direction:column;gap:72px}
.argo-season{display:flex;flex-direction:column}
.argo .argo-season__name{font-family:var(--argo-display);font-weight:700;font-size:1.2rem;color:var(--argo-muted);padding-bottom:6px}
.argo-arow{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,4fr) minmax(0,3fr);gap:4px 24px;align-items:baseline;padding-block:24px;border-top:1px solid var(--argo-line);text-decoration:none}
.argo-arow__title{font-family:var(--argo-display);font-weight:700;letter-spacing:-.01em;text-transform:none;font-size:1.35rem;line-height:1.2;overflow-wrap:anywhere;transition:color .15s}
.argo-arow:hover .argo-arow__title{color:var(--argo-accent)}
.argo-arow__dates{font-size:.9rem;color:var(--argo-muted);font-variant-numeric:tabular-nums;text-align:right}

/* single production */
.argo-show{display:flex;flex-direction:column;gap:clamp(48px,7vw,96px);padding-block:clamp(40px,7vw,96px)}
.argo-show__head{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-template-rows:auto 1fr;gap:28px clamp(32px,6vw,88px);align-items:start}
.argo-show__intro{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:26px;min-width:0}
.argo-show__lead{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:28px;min-width:0}
.argo-show__poster{grid-column:2;grid-row:1 / span 2;min-width:0}
.argo-show__poster img{width:100%;height:auto;display:block}
.argo-show__poster-link{display:block;cursor:zoom-in}
.argo-show__summary{font-size:1.2rem;font-weight:600;max-width:46ch}
.argo .argo-show__title{font-size:clamp(2.2rem,5.5vw,4.5rem)}
.argo .argo-show__title.is-long{font-size:clamp(1.9rem,4vw,3.2rem)}
.argo-show__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:start}
.argo-prose{display:flex;flex-direction:column;gap:1em;max-width:65ch;font-size:1.05rem;min-width:0}
.argo-prose__lead{font-weight:600}
.argo-side{display:flex;flex-direction:column;gap:44px;min-width:0}
.argo-block{display:flex;flex-direction:column;gap:8px;border-top:2px solid var(--argo-ink);padding-top:12px;font-variant-numeric:tabular-nums}
.argo .argo-block h2{font-family:var(--argo-body);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--argo-muted)}
.argo-credits{display:grid;grid-template-columns:1fr;gap:10px}
.argo-credits dt{font-size:.82rem;font-weight:400;color:var(--argo-muted)}
.argo-credits dd{font-weight:600}

@media (max-width:760px){
  .argo-hero,.argo-show__grid,.argo-show__head{grid-template-columns:minmax(0,1fr)}
  .argo-show__intro,.argo-show__lead,.argo-show__poster{grid-column:1;grid-row:auto}
  .argo-hero .argo-poster{max-width:420px}
  .argo-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 16px}
  .argo-btn{min-height:54px;padding:12px 28px;font-size:1.05rem}
  .argo-cards .argo-poster__title{font-size:clamp(1.1rem,5vw,1.5rem)}
  .argo-cards .argo-poster__title.is-long{font-size:clamp(.95rem,4.2vw,1.25rem)}
  .argo-arow{grid-template-columns:minmax(0,1fr)}
  .argo-arow__dates{text-align:left}
}
@media (prefers-reduced-motion:reduce){
  .argo-btn,.argo-card__title,.argo-arow__title{transition:none}
}

/* Site-wide: Total and WPBakery buttons share the same rounded shape as the Argo ones. */
.theme-button,.vcex-button,.vc_btn3,.wpb_button,.wp-block-button__link,
input[type="submit"],button[type="submit"]{border-radius:35px}

.argo-ext{flex:none;width:17px;height:17px}
.argo .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Site-wide: no underline on hover, for Total's links as well. */
a:hover,a:focus,a:active{text-decoration:none !important}

/* Site-wide: Helvetica for Total's own text as well. */
body,button,input,select,textarea,h1,h2,h3,h4,h5,h6,.theme-button,.vcex-button{font-family:"Helvetica Neue",Helvetica,Arial,"Liberation Sans",sans-serif}

/* White space between rows: every Argo block keeps clear space above and below it,
   whatever spacing the WPBakery row around it has. */
.argo:not(.argo-show){margin-block:0 clamp(56px,8vw,120px)}
.vc_row:first-child .argo-hero,.argo-hero:first-child{margin-top:clamp(32px,5vw,72px)}

/* Site-wide: Total and WPBakery buttons at the same larger size. */
.theme-button,.vcex-button,.vc_btn3.vc_btn3-size-md,.wpb_button,.wp-block-button__link,
input[type="submit"],button[type="submit"]{padding:.9em 2.1em;font-size:1.1rem;font-weight:700;line-height:1.2}

/* Trailer and photo gallery on the production page. */
.argo-section{display:flex;flex-direction:column;gap:28px}
.argo .argo-section__title{font-family:var(--argo-display);font-weight:700;font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.02em;line-height:1.1;border-top:2px solid var(--argo-ink);padding-top:16px}
.argo-trailer{position:relative;aspect-ratio:16/9;max-width:100%;background-size:cover;background-position:center;overflow:hidden}
.argo-trailer iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.argo-trailer.is-playing{background:#000}
.argo .argo-trailer__play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#fff;font-size:1.2rem;font-weight:700;background:rgba(19,27,46,.45);transition:background-color .15s}
.argo .argo-trailer__play:hover{background:rgba(19,27,46,.25);color:#fff}
.argo-trailer__icon{display:block;width:96px;height:96px;border-radius:50%;background:var(--argo-accent);position:relative}
.argo-trailer__icon::after{content:"";position:absolute;left:54%;top:50%;transform:translate(-50%,-50%);border-style:solid;border-width:18px 0 18px 30px;border-color:transparent transparent transparent #fff}
.argo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.argo-gallery__item{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--argo-line)}
.argo-gallery__item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.argo-gallery__item:hover img{transform:scale(1.04)}
.argo-lightbox{box-sizing:border-box;position:fixed;inset:0;width:100vw;height:100vh;max-width:100vw;max-height:100vh;margin:0;padding:0;border:0;overflow:hidden;background:rgba(10,14,24,.96);color:#fff;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
.argo-lightbox[open]{display:flex;align-items:center;justify-content:center}
.argo-lightbox::backdrop{background:rgba(10,14,24,.96)}
.argo-lightbox img{width:auto;height:auto;max-width:calc(100vw - 160px);max-height:calc(100vh - 140px);object-fit:contain;display:block}
.argo-lightbox button{position:absolute;display:flex;align-items:center;justify-content:center;width:56px;height:56px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:34px;line-height:1;cursor:pointer}
.argo-lightbox button:hover{background:var(--argo-accent)}
.argo-lightbox button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.argo-lightbox__close{top:12px;right:12px}
.argo-lightbox__prev{left:8px;top:50%;transform:translateY(-50%)}
.argo-lightbox__next{right:8px;top:50%;transform:translateY(-50%)}
.argo-lightbox__caption{position:absolute;left:0;right:0;bottom:18px;margin:0;padding:0 16px;text-align:center;font-size:.95rem;font-variant-numeric:tabular-nums}
@media (max-width:760px){
  .argo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .argo-lightbox img{max-width:calc(100vw - 16px);max-height:calc(100vh - 170px)}
  .argo-lightbox__prev,.argo-lightbox__next{top:auto;bottom:10px;transform:none}
  .argo-trailer__icon{width:72px;height:72px}
}
@media (prefers-reduced-motion:reduce){.argo-gallery__item img,.argo-trailer__play{transition:none}}

/* Fallback for the same: hide Total's previous/next links on production pages. */
.single-production .post-pagination-wrap,.single-production .post-pagination{display:none}

/* Home page rotation. Without script the featured productions simply stack. */
.argo-rotator__slides{display:grid;gap:clamp(56px,8vw,120px)}
.argo-rotator.is-ready .argo-rotator__slides{gap:0}
.argo-rotator.is-ready .argo-rotator__slide{grid-area:1 / 1;opacity:0;visibility:hidden}
.argo-rotator.is-animated .argo-rotator__slide{transition:opacity .5s ease,visibility 0s linear .5s}
.argo-rotator.is-ready .argo-rotator__slide.is-active{opacity:1;visibility:visible}
.argo-rotator.is-animated .argo-rotator__slide.is-active{transition:opacity .5s ease}
.argo-rotator__nav{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:clamp(28px,4vw,48px)}
.argo-rotator__dots{display:flex;align-items:center;gap:12px}
.argo .argo-rotator__arrow{display:flex;align-items:center;justify-content:center;width:60px;height:60px;padding:0 0 4px;border:2px solid var(--argo-ink);border-radius:50%;background:transparent;color:var(--argo-ink);font:400 34px/1 var(--argo-body);cursor:pointer;transition:background-color .15s,color .15s}
.argo .argo-rotator__arrow:hover{background:var(--argo-ink);color:#fff}
.argo .argo-rotator__dot{width:14px;height:14px;min-height:0;padding:0;border:2px solid var(--argo-ink);border-radius:50%;background:transparent;cursor:pointer}
.argo .argo-rotator__dot[aria-current="true"]{background:var(--argo-accent);border-color:var(--argo-accent)}
@media (prefers-reduced-motion:reduce){.argo-rotator.is-animated .argo-rotator__slide,.argo-rotator.is-animated .argo-rotator__slide.is-active{transition:none}}

/* Notes for the audience: outlined box with a marker. */
.argo .argo-block--notes{border:2px solid var(--argo-ink);padding:22px 24px;gap:10px}
.argo .argo-block--notes h2{display:flex;align-items:center;gap:10px;color:var(--argo-ink)}
.argo .argo-block--notes h2::before{content:"!";display:inline-flex;align-items:center;justify-content:center;flex:none;width:24px;height:24px;border-radius:50%;background:var(--argo-accent);color:#fff;font-size:14px;letter-spacing:0}
.argo .argo-block--notes p{font-weight:600}

/* Featured block: the teaser reads as the story; a line separates it from dates and buttons. */
.argo .argo-hero__summary{font-size:1.4rem;line-height:1.45;color:var(--argo-ink);max-width:40ch;margin-top:6px}
.argo-hero .argo-by{color:var(--argo-muted)}
.argo-hero .argo-facts{border-top:2px solid var(--argo-ink);padding-top:20px;margin-top:8px}
@media (max-width:760px){.argo .argo-hero__summary{font-size:1.2rem}}

/* Production page: same treatment as the featured block. */
.argo .argo-show__summary{font-size:1.4rem;font-weight:400;line-height:1.45;color:var(--argo-ink);max-width:40ch}
.argo-show__intro .argo-by{color:var(--argo-muted)}
.argo-show__lead .argo-facts{border-top:2px solid var(--argo-ink);padding-top:20px}
@media (max-width:760px){.argo .argo-show__summary{font-size:1.2rem}}

/* Labels share the buttons' rounded shape. */
.argo .argo-pill{border-radius:35px;padding-inline:18px}

/* ---------- Phones: the featured block fits the first screen ---------- */
.argo-hero__bg{display:none}
@media (max-width:760px){
  .argo .argo-hero__summary{display:none}
  /* Kept minimal on phones: no offer badge, duration or hall on the image. */
  .argo-hero .argo-pill--early,.argo-hero .argo-facts__duration,.argo-hero .argo-facts__stage{display:none}
  .argo-hero .argo-pill{padding:4px 12px;font-size:.7rem}
  .argo-hero .argo-facts{margin-top:0;padding-top:12px;gap:4px 18px;font-size:.95rem}
  .argo-hero .argo-btn{flex:1 1 0;min-height:48px;padding:8px 12px;font-size:1rem}
  .argo-rotator__nav{margin-top:14px;gap:14px}
  .argo .argo-rotator__arrow{width:44px;height:44px;font-size:26px}

  /* The phone image fills the block and the text sits on it. Without an image the block is plain dark. */
  .argo-hero{position:relative;display:flex;align-items:flex-end;min-height:min(540px,72vh);padding:18px;overflow:hidden;background:var(--argo-ink)}
  .argo-hero .argo-poster{display:none}
  .argo-hero .argo-hero__bg{display:block;position:absolute;inset:0}
  .argo-hero .argo-hero__bg img{width:100%;height:100%;object-fit:cover;display:block}
  .argo-hero .argo-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,14,24,.05) 0%,rgba(10,14,24,.45) 45%,rgba(10,14,24,.92) 100%)}
  .argo-hero .argo-hero__text{position:relative;z-index:1;width:100%;gap:12px;color:#fff}
  .argo .argo-hero .argo-hero__title{color:#fff;font-size:2rem;line-height:1.08}
  .argo-hero .argo-by{color:rgba(255,255,255,.85);font-size:1rem}
  .argo-hero .argo-facts{border-top-color:rgba(255,255,255,.6)}
  .argo-hero .argo-hero__text > .argo-row:last-child{gap:10px;flex-wrap:nowrap}
  .argo .argo-hero .argo-btn:not(.argo-btn--primary){border-color:#fff;color:#fff}
  .argo .argo-hero .argo-btn:not(.argo-btn--primary):hover{background:#fff;color:var(--argo-ink)}
  .argo-hero .argo-pill--soon,.argo-hero .argo-pill--past{color:#fff}
  .argo-hero .argo-pill--early{background:#fff;border-color:#fff;color:var(--argo-ink)}
  .argo-hero .argo-hero__text > .argo-row:first-child{gap:8px}
}

/* In a rotation every slide starts at the same height. */
.argo-rotator .argo-rotator__slide{margin-top:0}

/* When Total's header overlays the page, keep every page's content clear of it. */
body.has-overlay-header #main{padding-top:140px}

/* ---------- "Πώς θα έρθετε" ---------- */
.argo-visit{display:flex;flex-direction:column;gap:clamp(40px,6vw,64px)}
.argo-visit__head{display:flex;flex-direction:column;gap:22px}
.argo .argo-visit__title{font-size:clamp(2.2rem,5.5vw,4.2rem)}
.argo-visit__address{font-size:1.35rem;font-weight:700}
.argo-visit__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,6vw,88px);align-items:start}
.argo-visit__grid--single{grid-template-columns:minmax(0,720px)}
.argo-visit__ways{display:flex;flex-direction:column;gap:40px;min-width:0}
.argo-way{display:flex;flex-direction:column;gap:10px;border-top:2px solid var(--argo-ink);padding-top:14px;font-size:1.05rem}
.argo .argo-way__title{display:flex;align-items:center;gap:12px;font:700 1.35rem/1.2 var(--argo-body);letter-spacing:-.01em;color:var(--argo-ink)}
.argo-way__badge{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:34px;height:34px;padding:0 8px;border-radius:50%;background:var(--argo-accent);color:#fff;font:700 .85rem var(--argo-body)}
.argo-way__time{color:var(--argo-muted);font-weight:600}
.argo .argo-way__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}
.argo .argo-way__list li{margin:0}
.argo-visit__map{position:sticky;top:24px;min-width:0}
.argo-map{position:relative;aspect-ratio:4/3.4;max-width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;background:var(--argo-bg);border:1px solid var(--argo-line);text-align:center}
.argo-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.argo-map.is-loaded{padding:0;border:0}
.argo-map__note{font-size:.95rem;color:var(--argo-muted)}
@media (max-width:760px){
  .argo-visit__grid{grid-template-columns:minmax(0,1fr)}
  .argo-visit__map{position:static;order:-1}
  .argo-map{aspect-ratio:4/3}
  .argo-visit__head .argo-btn{flex:1 1 auto}
}

/* ---------- "Εισιτήρια": one row per production ---------- */
.argo-tickets{display:flex;flex-direction:column;gap:clamp(40px,6vw,72px)}
.argo-tickets__group{display:flex;flex-direction:column}
.argo .argo-tickets__heading{font:700 clamp(1.5rem,3vw,2.1rem)/1.1 var(--argo-body);letter-spacing:-.02em;color:var(--argo-ink);border-bottom:2px solid var(--argo-ink);padding-bottom:14px}
.argo-trow{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.1fr) 200px;gap:8px 32px;align-items:center;padding-block:22px;border-bottom:1px solid var(--argo-line)}
.argo-trow__main{display:flex;flex-direction:column;gap:4px;min-width:0}
.argo .argo-trow__title{font:700 1.35rem/1.2 var(--argo-body);letter-spacing:-.01em;color:var(--argo-ink);overflow-wrap:anywhere;transition:color .15s}
.argo .argo-trow__title:hover{color:var(--argo-accent)}
.argo-trow__by{color:var(--argo-muted)}
.argo-trow__meta{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-weight:600;font-variant-numeric:tabular-nums;min-width:0}
.argo-trow__action{display:flex;justify-content:flex-end}
.argo-trow__soon{color:var(--argo-muted);font-weight:600;max-width:16ch;text-align:right}
@media (max-width:760px){
  .argo-trow{grid-template-columns:minmax(0,1fr);gap:12px;padding-block:20px}
  .argo-trow__action{justify-content:stretch}
  .argo-trow__action .argo-btn{flex:1 1 auto}
  .argo-trow__soon{max-width:none;text-align:left}
}

.argo-trow__price{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--argo-accent)}
.argo-ticket-icon{flex:none;width:20px;height:20px}

/* ---------- Children's production: a full-width gradient row ---------- */
.argo.argo-kids{--argo-kids-grad:linear-gradient(90deg,#B91D47,#DD4A1E);position:relative;margin-block:clamp(56px,8vw,120px);padding-block:clamp(44px,7vw,88px);color:#fff}
/* The colour reaches both screen edges whatever the width of the row it sits in. */
.argo-kids::before{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 50vw);right:calc(50% - 50vw);background:var(--argo-kids-grad)}
html:has(.argo-kids){overflow-x:clip}
.argo-kids__inner{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(32px,6vw,72px);align-items:center}
.argo-kids__text{display:flex;flex-direction:column;gap:22px;min-width:0}
.argo.argo-kids .argo-kids__label{align-self:flex-start;background:transparent;border:2px solid #fff;color:#fff}
.argo.argo-kids .argo-kids__title{font-size:clamp(2.2rem,4.8vw,4rem);line-height:1.04;color:#fff;background:none;-webkit-text-fill-color:#fff}
.argo.argo-kids .argo-by{color:rgba(255,255,255,.9)}
.argo.argo-kids .argo-kids__summary{font-size:1.2rem;line-height:1.5;max-width:40ch;color:#fff}
.argo.argo-kids .argo-facts{margin-top:0;padding-top:16px;border-top:2px solid #fff;color:#fff}
.argo.argo-kids .argo-facts span{color:#fff}
.argo.argo-kids .argo-btn{border-color:#fff;color:#fff;background:transparent}
.argo.argo-kids .argo-btn:hover{background:#fff;color:var(--argo-accent)}
.argo.argo-kids .argo-btn--primary{background:#fff;color:var(--argo-accent)}
.argo.argo-kids .argo-btn--primary:hover{background:var(--argo-ink);border-color:var(--argo-ink);color:#fff}
.argo-kids__poster{display:block;min-width:0}
.argo-kids__poster .argo-poster{box-shadow:0 30px 60px rgba(0,0,0,.3)}
@media (max-width:760px){
  .argo-kids__inner{grid-template-columns:1fr;gap:28px}
  .argo-kids__poster{order:-1;max-width:240px}
  .argo-kids__text{gap:16px}
  .argo.argo-kids .argo-kids__title{font-size:2rem}
  .argo.argo-kids .argo-kids__summary{font-size:1.05rem}
  .argo-kids .argo-row:last-child{gap:10px;flex-wrap:nowrap}
  .argo-kids .argo-btn{flex:1 1 0;min-height:48px;padding:8px 12px;font-size:1rem}
}

/* ---------- Footer ---------- */
.argo.argo-footer{position:relative;margin:0;padding-top:clamp(48px,6vw,72px);color:#fff;font-size:1.1rem;line-height:1.6}
.argo-footer::before{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 50vw);right:calc(50% - 50vw);background:var(--argo-ink)}
html:has(.argo-footer){overflow-x:clip}
.argo-footer > *{position:relative}
.argo-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:clamp(32px,5vw,64px)}
.argo-footer__brand{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.argo.argo-footer .argo-footer__name{font-size:2.4rem;font-weight:700;letter-spacing:-.02em;line-height:1;color:#fff}
.argo.argo-footer .argo-footer__tagline{color:rgba(255,255,255,.7);font-size:1.05rem;max-width:30ch;line-height:1.45}
.argo.argo-footer .argo-btn--primary{margin-top:14px}
.argo.argo-footer .argo-footer__heading{margin:0 0 18px;font:700 .8rem/1.2 var(--argo-body);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.argo.argo-footer ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.argo.argo-footer li{margin:0}
.argo.argo-footer p{color:#fff}
.argo.argo-footer .argo-footer__col p + p{margin-top:12px}
.argo.argo-footer a:not(.argo-btn){color:#fff;text-decoration:none}
.argo.argo-footer a:not(.argo-btn):hover{color:rgba(255,255,255,.7)}
.argo.argo-footer .argo-footer__phone{font-weight:700}
.argo-footer__social{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.argo.argo-footer .argo-footer__social a{width:46px;height:46px;border:2px solid #fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;line-height:1}
.argo.argo-footer .argo-footer__social a:hover{background:#fff;color:var(--argo-ink)}
.argo-footer__bar{margin-top:clamp(44px,6vw,64px);border-top:1px solid rgba(255,255,255,.2);padding:22px 0 26px;display:flex;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;color:rgba(255,255,255,.6);font-size:.92rem}
.argo-footer__legal{display:flex;flex-wrap:wrap;gap:8px 22px}
.argo.argo-footer .argo-footer__bar a{color:rgba(255,255,255,.6)}
.argo.argo-footer .argo-footer__bar a:hover{color:#fff}
@media (max-width:760px){
  .argo-footer__grid{grid-template-columns:1fr;gap:40px}
  .argo.argo-footer .argo-footer__name{font-size:2rem}
  .argo-footer__brand{align-items:stretch}
  .argo-footer__bar{flex-direction:column}
}
.argo.argo-footer .argo-footer__social a > *{font-size:20px;line-height:1}
.argo.argo-footer .argo-footer__social svg{width:20px;height:20px;fill:currentColor}

/* The "read on" button on a production page scrolls to the description, clear of the header. */
html:has(#argo-details){scroll-behavior:smooth}
/* The landing point sits above the description, so it clears the header however the page is scrolled (browser or theme script). */
.argo-show__grid{position:relative}
.argo-anchor{position:absolute;top:-140px;left:0;width:1px;height:1px;visibility:hidden;pointer-events:none}
@media (prefers-reduced-motion:reduce){html:has(#argo-details){scroll-behavior:auto}}
/* On phones the description follows straight after, so the button would lead nowhere. */
@media (max-width:760px){.argo .argo-btn--down{display:none}}

/* Two or more children's productions rotate, one large at a time. */
.argo-kids.argo-rotator > *{position:relative}
.argo.argo-kids .argo-rotator__arrow{border-color:#fff;color:#fff}
.argo.argo-kids .argo-rotator__arrow:hover{background:#fff;color:var(--argo-accent)}
.argo.argo-kids .argo-rotator__dot{border-color:#fff}
.argo.argo-kids .argo-rotator__dot[aria-current="true"]{background:#fff;border-color:#fff}
@media (max-width:760px){.argo-kids .argo-rotator__nav{margin-top:26px}}

/* The featured poster gets the same soft shadow as the children's row. */
@media (min-width:761px){
  .argo-hero .argo-poster{box-shadow:0 30px 60px rgba(19,27,46,.28)}
  .argo-rotator__slides{padding-bottom:44px}
  .argo-rotator .argo-rotator__nav{margin-top:clamp(0px,1vw,8px)}
}

/* Production cards: the poster lifts with a soft shadow under the pointer. */
.argo-card .argo-poster{transition:box-shadow .25s ease,transform .25s ease}
.argo-card:hover .argo-poster,.argo-card:focus-visible .argo-poster{box-shadow:0 24px 48px rgba(19,27,46,.28);transform:translateY(-4px)}
@media (prefers-reduced-motion:reduce){.argo-card .argo-poster{transition:none}.argo-card:hover .argo-poster,.argo-card:focus-visible .argo-poster{transform:none}}

/* Links inside running text: crimson and a little heavier, dark on hover. Buttons are not affected. */
.argo .argo-prose a,.argo .argo-block a:not(.argo-btn),.argo .argo-way p a,.wpb_text_column a:not([class^="argo-"]):not([class*=" argo-"]){color:var(--argo-accent,#B91D47);font-weight:600;transition:color .15s}
.argo .argo-prose a:hover,.argo .argo-block a:not(.argo-btn):hover,.argo .argo-way p a:hover,.wpb_text_column a:not([class^="argo-"]):not([class*=" argo-"]):hover{color:var(--argo-ink,#131B2E)}
.argo-footer__logo{display:block;line-height:0}
.argo-footer__logo img{display:block;max-width:100%;height:auto}
/* On the dark footer the button turns white under the pointer, since the usual dark hover would vanish. */
.argo.argo-footer .argo-btn--primary:hover,.argo.argo-footer .argo-btn--primary:focus-visible{background:#fff;border-color:#fff;color:var(--argo-accent)}

/* ---------- Performance calendar ---------- */
.argo-cal__top{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.argo .argo-cal__title{font-size:clamp(1.9rem,4vw,2.6rem);line-height:1.05;margin-top:8px}
.argo-cal__nav{display:flex;align-items:center;gap:14px;font-weight:700}
.argo-cal__nav[hidden]{display:none}
.argo .argo-cal__nav .argo-rotator__arrow{width:48px;height:48px;font-size:26px}
.argo .argo-cal__now{min-height:44px;padding:8px 22px;font-size:.95rem}
.argo-cal__range{min-width:11ch;text-align:center;font-variant-numeric:tabular-nums}
.argo-cal.is-ready .argo-cal__week:not(.is-active){display:none}
.argo-cal__week + .argo-cal__week{margin-top:40px}
.argo-cal.is-ready .argo-cal__week + .argo-cal__week{margin-top:0}
.argo-cal__strip{display:none}
.argo-cal__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:2px solid var(--argo-ink)}
.argo-cal__day{display:flex;flex-direction:column;gap:12px;min-width:0;min-height:300px;padding:16px 12px 22px;border-right:1px solid var(--argo-line)}
.argo-cal__day:last-child{border-right:0}
.argo .argo-cal__head{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0 0 6px;font:inherit;color:inherit}
.argo-cal__dayname{font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--argo-muted)}
.argo-cal__daynum{font-size:1.7rem;font-weight:700;line-height:1}
.argo-cal__full{display:none}
.argo-cal__day.is-today{background:#FBF1F4}
.argo-cal__day.is-today .argo-cal__dayname{color:var(--argo-accent)}
.argo-cal__day.is-today .argo-cal__daynum{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:46px;border-radius:50%;background:var(--argo-accent);color:#fff;font-size:1.3rem}
.argo-cal__day.is-past{opacity:.45}
.argo-cal__ev{border-left:3px solid var(--argo-ink);padding:2px 0 2px 10px}
.argo-cal__ev--kids{border-left-color:#DD4A1E}
.argo .argo-cal__link{display:flex;flex-direction:column;gap:3px;color:var(--argo-ink)}
.argo-cal__time{font-weight:700;font-size:.95rem;font-variant-numeric:tabular-nums}
.argo-cal__name{font-weight:700;font-size:1rem;line-height:1.2;transition:color .15s}
.argo-cal__link:hover .argo-cal__name{color:var(--argo-accent)}
.argo-cal__place{font-size:.8rem;color:var(--argo-muted)}
.argo-cal__days .argo-cal__ev .argo-btn{display:none}
.argo .argo-cal__none{font-size:.85rem;color:#8A93A6}
.argo .argo-cal__legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:18px;font-size:.88rem;color:var(--argo-muted)}
.argo-cal__legend i{display:inline-block;width:12px;height:12px;margin-right:7px;vertical-align:-1px;background:var(--argo-ink)}
.argo-cal__legend i.is-kids{background:#DD4A1E}

/* "Today" form: a short list with the tickets button on each line. */
.argo-cal__list{border-top:2px solid var(--argo-ink)}
.argo-cal__list .argo-cal__ev{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0 18px 16px;border-bottom:1px solid var(--argo-line)}
.argo-cal__list .argo-cal__link{display:grid;grid-template-columns:84px minmax(0,1fr);gap:2px 18px;flex:1 1 auto;min-width:0}
.argo-cal__list .argo-cal__time{grid-row:1 / span 2;align-self:center;font-size:1.5rem}
.argo-cal__list .argo-cal__name{font-size:1.3rem}
.argo-cal__list .argo-cal__place{font-size:.95rem}
.argo .argo-cal__list .argo-btn{flex:none;min-height:48px;padding:8px 22px;font-size:1rem}

@media (max-width:860px){
  .argo-cal__top{align-items:flex-start;flex-direction:column}
  .argo .argo-cal__now{display:none}
  /* Phones: a strip of the seven days, and the chosen day underneath. */
  .argo-cal.is-ready .argo-cal__strip{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;border-top:2px solid var(--argo-ink);padding-top:14px}
  .argo .argo-cal__tab{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:0;padding:6px 0;border:0;background:none;color:var(--argo-ink);font:inherit;cursor:pointer}
  .argo-cal__tabname{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--argo-muted)}
  .argo-cal__tabnum{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;font-size:1.05rem;font-weight:700}
  .argo-cal__dot{width:5px;height:5px;border-radius:50%;background:var(--argo-ink)}
  .argo-cal__dot.is-empty{visibility:hidden}
  .argo-cal__tab.is-past{opacity:.4}
  .argo-cal__tab.is-today .argo-cal__tabname{color:var(--argo-accent)}
  .argo-cal__tab.is-selected .argo-cal__tabnum{background:var(--argo-accent);color:#fff}
  .argo-cal__tab.is-selected .argo-cal__dot{background:var(--argo-accent)}
  .argo-cal__days{display:block;border-top:0}
  .argo-cal.is-ready .argo-cal__days{margin-top:22px}
  .argo-cal__day{min-height:0;padding:0 0 28px;border-right:0;gap:0;opacity:1}
  .argo-cal__day.is-today{background:none}
  .argo-cal__day.is-past{opacity:1}
  .argo-cal.is-ready .argo-cal__day:not(.is-selected){display:none}
  .argo-cal__dayname,.argo-cal__daynum{display:none!important}
  .argo-cal__full{display:block;font-size:1.15rem;font-weight:700;padding-bottom:10px}
  .argo-cal__days .argo-cal__ev,.argo-cal__list .argo-cal__ev{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0 16px 12px;border-top:1px solid var(--argo-line);border-bottom:0}
  .argo-cal__days .argo-cal__link,.argo-cal__list .argo-cal__link{display:grid;grid-template-columns:56px minmax(0,1fr);gap:2px 12px;flex:1 1 auto;min-width:0}
  .argo-cal__days .argo-cal__time,.argo-cal__list .argo-cal__time{grid-row:1 / span 2;align-self:center;font-size:1.15rem}
  .argo-cal__list .argo-cal__name{font-size:1.05rem}
  .argo .argo-cal__days .argo-cal__ev .argo-btn,.argo .argo-cal__list .argo-btn{display:inline-flex;flex:none;min-height:40px;padding:6px 14px;font-size:.85rem}
  .argo .argo-cal__none{padding:14px 0;border-top:1px solid var(--argo-line)}
}
/* Calendar titles match the other section titles. */
.argo .argo-cal__title{font-size:clamp(2rem,5vw,52px);line-height:1.08}

/* The theme's own link pieces state their colour outright, so no general link rule (the site's, Total's or a pasted one) can recolour them. */
.argo a.argo-card,.argo a.argo-arow,.argo a.argo-cal__link,.argo a.argo-trow__title{color:var(--argo-ink);font-weight:400}
.argo a.argo-card .argo-card__title,.argo a.argo-arow .argo-arow__title,.argo a.argo-cal__link .argo-cal__name,.argo a.argo-cal__link .argo-cal__time,.argo a.argo-trow__title{font-weight:700}

/* Production page: the next performances, date by date. */
.argo .argo-next{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}
.argo .argo-next li{display:flex;justify-content:space-between;gap:16px;margin:0;padding:7px 0;border-bottom:1px solid var(--argo-line)}
.argo .argo-next li:last-child{border-bottom:0}
.argo .argo-next__more{font-size:.9rem;color:var(--argo-muted)}

/* ---------- Page not found ---------- */
.argo.argo-404{display:flex;flex-direction:column;align-items:flex-start;gap:20px;max-width:900px;padding-block:clamp(40px,8vw,110px);margin-bottom:0}
.argo .argo-404__code{font:700 clamp(6.5rem,24vw,15rem)/.82 var(--argo-display);letter-spacing:-.05em;margin-left:-.04em;color:var(--argo-accent);background:linear-gradient(90deg,#B91D47,#DD4A1E);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.argo .argo-404__title{font-size:clamp(1.9rem,4.6vw,3.25rem);line-height:1.08;margin-top:8px}
.argo .argo-404__text{font-size:clamp(1.05rem,2vw,1.3rem);max-width:44ch;color:var(--argo-muted)}
.argo-404 .argo-row{margin-top:12px}
@media (max-width:560px){.argo-404 .argo-row .argo-btn{flex:1 1 100%}}
