@font-face{font-family:'Fira Sans Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/fira-sans-condensed-400-cyrillic.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Fira Sans Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/fira-sans-condensed-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-024F,U+1E00-1EFF,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fira Sans Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/fira-sans-condensed-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fira Sans Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/fira-sans-condensed-700-cyrillic.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Fira Sans Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/fira-sans-condensed-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-024F,U+1E00-1EFF,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fira Sans Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/fira-sans-condensed-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Ubuntu Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/ubuntu-condensed-400-cyrillic.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Ubuntu Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/ubuntu-condensed-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-024F,U+1E00-1EFF,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Ubuntu Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/ubuntu-condensed-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root { --fmp-ink: #11182a; --fmp-paper: #fffdf8; --fmp-orange: #ee823f; --fmp-magenta: #b41e86; --fmp-line: #dcd6cb; --fmp-font-body: 'Fira Sans Condensed', sans-serif; --fmp-font-heading: 'Ubuntu Condensed', sans-serif; }
body { background: var(--fmp-paper); color: var(--fmp-ink); font-family: Georgia, 'Times New Roman', serif; }
.container-header { background: #fff7ee; box-shadow: none; }
.container-header .grid-child { max-width: 1180px; padding: .7rem 1.25rem; }
.fmp-brand a { align-items: center; color: #692353; display: flex; gap: .75rem; text-decoration: none; }
.fmp-brand img { display: block; height: 56px; object-fit: contain; width: 56px; }
.fmp-brand strong { display: block; font-family: Arial, sans-serif; font-size: clamp(.8rem, 2vw, 1rem); letter-spacing: .07em; text-transform: uppercase; }
.fmp-brand small { color: var(--fmp-orange); display: block; font-family: Arial, sans-serif; font-size: .75rem; margin-top: .15rem; }
.container-header .mod-menu { font-family: Arial, sans-serif; font-weight: 700; gap: .2rem; letter-spacing: .04em; text-transform: uppercase; }
.container-header .mod-menu > li > a { border-radius: 0; color: #5c204b; font-size: .75rem; padding: .7rem .65rem; }
.container-header .mod-menu > li > a:hover, .container-header .mod-menu > li.active > a { background: transparent; color: #692353; }
.fmp-skip { background: #fff; color: var(--fmp-ink); left: 1rem; padding: .7rem; position: absolute; top: -5rem; z-index: 99; }.fmp-skip:focus { top: 1rem; }
main { box-sizing:border-box; width:100%; max-width:1240px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }.fmp-hero { border-bottom: 4px solid var(--fmp-orange); margin: -2rem -1.25rem 3rem; padding: 0 1.25rem 3.25rem; text-align: center; }.fmp-hero__visual { background: var(--fmp-ink); margin: 0 auto 2rem; max-width: 1000px; }.fmp-hero__visual img { display: block; height: auto; width: 100%; }.fmp-eyebrow { color: var(--fmp-magenta); font-family: Arial, sans-serif; font-size: .75rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }.fmp-hero h1 { font-size: clamp(2.25rem, 6vw, 5.25rem); letter-spacing: -.045em; line-height: .94; margin: .5rem auto 1rem; max-width: 900px; }.fmp-hero > p:not(.fmp-eyebrow) { font-size: 1.2rem; margin: 0 auto 1.75rem; max-width: 640px; }.fmp-button { background: var(--fmp-magenta); color: #fff; display: inline-block; font-family: Arial, sans-serif; font-size: .8rem; font-weight: 700; letter-spacing: .08em; padding: .9rem 1.1rem; text-decoration: none; text-transform: uppercase; }.fmp-button:hover { background: var(--fmp-orange); color: var(--fmp-ink); }
.item-page h1, .blog-item h2 { color: var(--fmp-ink); line-height: 1.03; }.item-page a, .blog-item a { color: #8d1768; }.fmp-footer { background: var(--fmp-ink); color: #fff; display: grid; font-family: Arial, sans-serif; gap: 1rem; grid-template-columns: 1fr auto; margin-top: 2rem; padding: 2rem max(1.25rem, calc((100vw - 1180px) / 2)); }.fmp-footer strong { display: block; letter-spacing: .06em; text-transform: uppercase; }.fmp-footer span, .fmp-footer small { color: #d6d9e3; display: block; font-size: .8rem; margin-top: .35rem; }.fmp-footer nav { display: flex; gap: 1rem; }.fmp-footer a { color: var(--fmp-orange); font-size: .78rem; font-weight: 700; text-decoration: none; text-transform: uppercase; }.fmp-footer small { grid-column: 1 / -1; }
@media (max-width: 760px) { .fmp-footer { grid-template-columns: 1fr; }.fmp-footer nav { flex-wrap: wrap; }.container-header .mod-menu { padding-top: 1rem; } }
.fmp-archive{margin:4rem 0;padding:2.25rem;border:1px solid #e4dce3;background:linear-gradient(135deg,#fff 0%,#fcf8fb 100%)}.fmp-archive h2{margin:.15rem 0 .5rem;color:#171b2b;font-size:clamp(1.8rem,4vw,2.6rem)}.fmp-archive__lead{max-width:48rem;margin:0 0 2rem;color:#555}.fmp-archive__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:1rem}.fmp-archive__grid a{min-height:150px;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;background:#171b2b;color:#fff;text-decoration:none;border-bottom:5px solid #e86f3b;box-shadow:0 8px 18px #171b2b22;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.fmp-archive__grid a span{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;color:#f5c2ad}.fmp-archive__grid a strong{font-size:1.55rem;line-height:1.1}.fmp-archive__grid a small{font-size:.78rem;color:#fff}.fmp-archive__grid a:hover,.fmp-archive__grid a:focus-visible{transform:translateY(-5px);background:#b41e86;box-shadow:0 14px 26px #171b2b33}.fmp-archive__grid a:focus-visible{outline:3px solid #e86f3b;outline-offset:3px}
.fmp-archive{border-color:#ead7e5;background:linear-gradient(135deg,#fff8fc 0%,#fffaf4 100%)}.fmp-archive__grid a{background:linear-gradient(145deg,#7c286d 0%,#b41e86 100%);border-bottom-color:#ee823f;box-shadow:0 8px 18px #b41e8630}.fmp-archive__grid a:nth-child(even){background:linear-gradient(145deg,#d96043 0%,#ee823f 100%);border-bottom-color:#7c286d;box-shadow:0 8px 18px #ee823f35}.fmp-archive__grid a span{color:#ffe5d2}.fmp-archive__grid a:hover,.fmp-archive__grid a:focus-visible{background:linear-gradient(145deg,#651a5c 0%,#8f176c 100%);box-shadow:0 14px 26px #b41e8640}.fmp-archive__grid a:nth-child(even):hover,.fmp-archive__grid a:nth-child(even):focus-visible{background:linear-gradient(145deg,#bd4c38 0%,#df6a31 100%);box-shadow:0 14px 26px #ee823f45}
.fmp-year{max-width:1240px;margin:0 auto}.fmp-year .fmp-eyebrow a{color:var(--fmp-magenta);text-decoration:none}.fmp-year h1{font-size:clamp(2.5rem,6vw,4.5rem);margin:.3rem 0 2.5rem}.fmp-year__section{margin:2.5rem 0}.fmp-year__section h2{border-bottom:3px solid var(--fmp-orange);font-size:1.8rem;padding-bottom:.5rem}.fmp-year__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem}.fmp-year__grid a{background:#fff;border:1px solid #ead7e5;border-left:5px solid var(--fmp-magenta);box-shadow:0 6px 18px #171b2b12;color:var(--fmp-ink);display:flex;flex-direction:column;gap:1rem;justify-content:space-between;min-height:120px;padding:1.2rem;text-decoration:none}.fmp-year__grid a:nth-child(even){border-left-color:var(--fmp-orange)}.fmp-year__grid a:hover,.fmp-year__grid a:focus-visible{background:#fff8fc;box-shadow:0 10px 24px #171b2b22}.fmp-year__grid a span{color:var(--fmp-magenta);font-family:Arial,sans-serif;font-size:.75rem;font-weight:700;text-transform:uppercase}
.fmp-current{margin:3rem 0}.fmp-current h2{font-size:clamp(1.8rem,4vw,3rem)}.fmp-program-summary{columns:2 280px;column-gap:2.5rem;margin:1.5rem 0}.fmp-program-summary h2{break-after:avoid;color:var(--fmp-magenta);font-size:1.15rem;margin:1.5rem 0 .5rem}.fmp-program-summary p{break-inside:avoid;margin:.3rem 0}.fmp-year__grid img{aspect-ratio:4/3;object-fit:cover;width:100%}.fmp-archive__grid .fmp-archive__unavailable{min-height:150px;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;background:#e6dde4;color:#534b55;border-bottom:5px solid #b8aab7}.fmp-archive__unavailable span{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em}.fmp-archive__unavailable strong{font-size:1.55rem}.fmp-archive__unavailable small{font-size:.78rem}
.fmp-repertoire .item-page{max-width:920px;margin-inline:auto}.fmp-repertoire .item-page h1{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:2rem}.fmp-repertoire .item-page h2{background:linear-gradient(120deg,#7c286d,#b41e86);border-left:6px solid var(--fmp-orange);color:#fff;font-family:Arial,sans-serif;font-size:clamp(1.1rem,2.5vw,1.45rem);letter-spacing:.02em;margin:2.5rem 0 0;padding:1rem 1.25rem}.fmp-repertoire .item-page h2 + p{margin-top:0}.fmp-repertoire .item-page p{background:#fff;border-bottom:1px solid #ead7e5;line-height:1.55;margin-bottom:0;padding:.8rem 1.25rem}.fmp-repertoire .item-page p strong{color:#8f176c;font-family:Arial,sans-serif;margin-right:.5rem;white-space:nowrap}.fmp-repertoire .item-page p:last-child{border-bottom:3px solid var(--fmp-orange)}.fmp-archive__grid a.fmp-archive__note,.fmp-archive__grid a.fmp-archive__note:nth-child(even){background:linear-gradient(145deg,#6f5b70,#8c778d);border-bottom-color:#ee823f}
.item-page [itemprop="articleBody"]{max-width:72ch}.item-page [itemprop="articleBody"] p{line-height:1.7;margin:0 0 1.1rem}.item-page [itemprop="articleBody"] h2{border-left:4px solid var(--fmp-orange);color:#76235f;font-size:clamp(1.2rem,2.6vw,1.7rem);margin:2rem 0 1rem;padding-left:.8rem}.item-page [itemprop="articleBody"] strong{color:#76235f}.fmp-program-links{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.55rem}.fmp-repertoire .item-page a.fmp-program-link{background:#fff5ed;border:1px solid #e5ab83;border-radius:2rem;color:#76235f;display:inline-block;font:700 .75rem/1.35 Arial,sans-serif;padding:.35rem .75rem;text-decoration:none}.fmp-repertoire .item-page a.fmp-program-link:hover,.fmp-repertoire .item-page a.fmp-program-link:focus-visible{background:#8f176c;border-color:#8f176c;color:#fff}
.fmp-repertoire .item-page [itemprop="articleBody"]{max-width:none}.fmp-repertoire .item-page [itemprop="articleBody"] p{line-height:1.55;margin:0;padding:.8rem 1.25rem}.fmp-repertoire .item-page [itemprop="articleBody"] h2{border-left:6px solid var(--fmp-orange);color:#fff;margin:2.5rem 0 0;padding:1rem 1.25rem}.fmp-repertoire .item-page [itemprop="articleBody"] strong{color:#8f176c}

/* Keep article pages on one readable measure, including Joomla's newer body markup. */
main .com-content-article.item-page{max-width:920px;margin-inline:auto}
main .com-content-article__body{display:flow-root;max-width:none}
main .com-content-article__body p{line-height:1.7}
.fmp-repertoire .com-content-article__body a[href^="/arhiva/"][href*="/predstave/"]{font-family:Arial,sans-serif;font-weight:800;text-underline-offset:.18em}

/* Consistent measure and article-title hierarchy for every archive year and play. */
.fmp-archive-article .com-content-article.item-page{box-sizing:border-box;display:block;width:100%;max-width:1240px;min-width:0;margin-inline:auto}
.fmp-archive-article .com-content-article__body,.fmp-archive-article .item-page [itemprop="articleBody"]{box-sizing:border-box;width:100%;max-width:none;min-width:0}
.fmp-archive-article .item-page .page-header,.fmp-archive-article .item-page>h1{box-sizing:border-box;width:100%;margin:0 0 1.8rem;padding:1rem 1.35rem 1.15rem;border-left:6px solid var(--fmp-orange);border-bottom:1px solid #ead7e5;background:linear-gradient(110deg,#fff5fa 0%,#fffaf5 100%)}
.fmp-archive-article .item-page .page-header h1,.fmp-archive-article .item-page .page-header h2,.fmp-archive-article .item-page>h1{color:#27162f;font-size:clamp(2rem,4vw,3.1rem);font-weight:800;line-height:1.08;letter-spacing:-.025em}
.fmp-archive-article .item-page .page-header h1,.fmp-archive-article .item-page .page-header h2{margin:0;padding:0}
.fmp-archive-article .item-page .page-header+.com-content-article__body,.fmp-archive-article .item-page>h1+.com-content-article__body{padding-top:.2rem}
.fmp-current-play .com-content-article.item-page>.item-image{float:right;width:min(31%,320px);margin:.2rem 0 1.6rem clamp(1.25rem,3vw,2.5rem);padding:.65rem;border:1px solid #ead7e5;border-radius:.8rem;background:#fff8f4;box-shadow:0 12px 30px #51244816}
.fmp-current-play .com-content-article.item-page>.item-image a{display:block;cursor:zoom-in}
.fmp-current-play .com-content-article.item-page>.item-image a:focus-visible{outline:3px solid var(--fmp-orange);outline-offset:3px}
.fmp-current-play .com-content-article.item-page>.item-image img{display:block;width:100%;height:auto;max-width:100%;border-radius:.3rem}
.fmp-current-play .com-content-article__body{display:block}
.fmp-current-play .com-content-article__body>.fmp-gallery-section{clear:both}
.fmp-year{max-width:1240px}
@media(max-width:700px){.fmp-current-play .com-content-article.item-page>.item-image{float:none;width:min(72%,300px);margin:.3rem auto 1.5rem}}
@media(max-width:650px){.fmp-archive-article .item-page .page-header,.fmp-archive-article .item-page>h1{margin-bottom:1.3rem;padding:.8rem 1rem 1rem}.fmp-archive-article .item-page .page-header h1,.fmp-archive-article .item-page .page-header h2,.fmp-archive-article .item-page>h1{font-size:clamp(1.75rem,8vw,2.35rem)}}

/* Archive landing page: editorial history alongside a compact year index. */
.fmp-archive-main{max-width:1240px;padding-top:0}
.fmp-archive-page{width:100%}
.fmp-archive-hero{position:relative;isolation:isolate;min-height:clamp(260px,32vw,410px);margin:0 0 2.5rem;overflow:hidden;border-radius:1rem;background:#25132f;color:#fff}
.fmp-archive-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#21112de8 0%,#3c1645bb 47%,#1b102338 100%)}
.fmp-archive-hero>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.fmp-archive-hero__content{min-height:inherit;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(2rem,6vw,5rem)}
.fmp-archive-hero h1{max-width:850px;margin:1rem 0 0;font-size:clamp(2.8rem,6vw,6rem);line-height:.96;letter-spacing:-.045em;text-wrap:balance}
.fmp-archive-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.07fr);gap:clamp(2rem,4vw,5rem);align-items:start}
.fmp-archive-story{min-width:0}.fmp-archive-story__section{padding:0 0 1.6rem;margin:0 0 1.6rem;border-bottom:1px solid #e5d9df}
.fmp-archive-story__section:last-child{border-bottom:0}.fmp-archive-story h2{margin:0 0 .7rem;font:800 clamp(1.25rem,2vw,1.65rem)/1.15 Arial,sans-serif;color:#76235f}
.fmp-archive-story h2::before{content:"";display:inline-block;width:.55rem;height:.55rem;margin-right:.65rem;background:var(--fmp-orange);transform:rotate(45deg);vertical-align:.12em}
.fmp-archive-story p{margin:0;font-size:1.05rem;line-height:1.78;color:#252334}
.fmp-archive-years{min-width:0;position:sticky;top:1rem}.fmp-archive-years .fmp-archive__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}
.fmp-archive-years .fmp-archive__grid>a,.fmp-archive-years .fmp-archive__grid>.fmp-archive__unavailable{box-sizing:border-box;min-height:88px;padding:.72rem .68rem;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #ead7e5;border-left:3px solid var(--fmp-magenta);border-bottom:0;border-radius:2px;background:#fff;color:#76235f;box-shadow:none;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.fmp-archive-years .fmp-archive__grid>a:nth-child(even){border-left-color:var(--fmp-orange);background:#fffaf4;color:#9b4929}
.fmp-archive-years .fmp-archive__grid>a.fmp-archive__note{background:#f4edf3;color:#6c526a}
.fmp-archive-years .fmp-archive__grid>a strong,.fmp-archive-years .fmp-archive__grid>.fmp-archive__unavailable strong{font:800 clamp(1.2rem,1.8vw,1.55rem)/1 Arial,sans-serif}
.fmp-archive-years .fmp-archive__grid>a span,.fmp-archive-years .fmp-archive__grid>.fmp-archive__unavailable span{font:700 .62rem/1.15 Arial,sans-serif;letter-spacing:.02em;text-transform:none;color:inherit}
.fmp-archive-years .fmp-archive__grid>a span span{float:right;font-size:.8rem}
.fmp-archive-years .fmp-archive__grid>a:hover,.fmp-archive-years .fmp-archive__grid>a:focus-visible,.fmp-archive-years .fmp-archive__grid>a:nth-child(even):hover,.fmp-archive-years .fmp-archive__grid>a:nth-child(even):focus-visible{transform:translateY(-3px);background:#76235f;color:#fff;box-shadow:0 8px 18px #76235f30}
.fmp-archive-years .fmp-archive__grid>.fmp-archive__unavailable{background:#f2eff1;color:#6e636c;border-left-color:#a399a1}
.fmp-archive-mobile{display:none}
@media(max-width:900px){.fmp-archive-layout{grid-template-columns:1fr}.fmp-archive-years{position:static}.fmp-archive-years .fmp-archive__grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:650px){.fmp-archive-hero{min-height:240px;margin-bottom:1.3rem}.fmp-archive-hero__content{padding:1.6rem 1.25rem}.fmp-archive-hero h1{font-size:clamp(2.3rem,10vw,3.4rem)}.fmp-archive-mobile{display:block;margin-bottom:2rem;padding:1rem;background:#fff4eb;border-top:3px solid var(--fmp-orange)}.fmp-archive-mobile label{display:block;margin-bottom:.65rem;font:800 .92rem/1.2 Arial,sans-serif;color:#76235f}.fmp-archive-mobile select{width:100%;min-height:2.8rem;padding:.55rem .75rem;border:1px solid #ad7a9f;background:#fff;color:#27192d;font:700 1rem Arial,sans-serif}.fmp-archive-years{display:none}.fmp-archive-story p{font-size:1rem}}

/* Gallery navigation works for both multi-image galleries and inline single images. */
.fmp-lightbox{box-sizing:border-box;width:min(96vw,1200px);max-width:none;max-height:96vh;padding:3.25rem 1rem 1rem;border:1px solid #b41e86;border-radius:.4rem;background:#11182a;color:#fff;box-shadow:0 24px 80px #0009}
.fmp-lightbox::backdrop{background:#080b18e8}
.fmp-lightbox__stage{display:grid;grid-template-columns:3rem minmax(0,1fr) 3rem;align-items:center;gap:.5rem}
.fmp-lightbox figure{display:grid;grid-column:2;justify-items:center;min-width:0;width:100%;margin:0}
.fmp-lightbox img{display:block;max-width:100%;max-height:calc(96vh - 9rem);object-fit:contain}
.fmp-lightbox figcaption{margin-top:.55rem;font:500 .85rem/1.35 Arial,sans-serif;text-align:center}
.fmp-lightbox__counter{margin:.6rem 0 0;color:#f5c2ad;font:700 .85rem/1 Arial,sans-serif;text-align:center}
.fmp-lightbox__controls{display:flex;align-items:center;justify-content:center;gap:.8rem;margin-top:.65rem}
.fmp-lightbox__controls .fmp-lightbox__counter{margin:0}
.fmp-lightbox__controls .fmp-lightbox__play{width:2.3rem;height:2.3rem;font-size:1.1rem}
.fmp-lightbox button{display:grid;place-items:center;width:2.75rem;height:2.75rem;padding:0;border:1px solid #ffffff80;border-radius:50%;background:#ffffff1c;color:#fff;cursor:pointer;font:2rem/1 Arial,sans-serif}
.fmp-lightbox button:hover,.fmp-lightbox button:focus-visible{background:#b41e86;border-color:#ee823f;outline:2px solid #ee823f;outline-offset:2px}
.fmp-lightbox button[hidden],.fmp-lightbox [hidden]{display:none}
.fmp-lightbox__close{position:absolute;top:.35rem;right:.45rem}
@media(max-width:650px){.fmp-lightbox{padding:3rem .35rem .75rem}.fmp-lightbox__stage{grid-template-columns:2.3rem minmax(0,1fr) 2.3rem;gap:.1rem}.fmp-lightbox button{width:2.2rem;height:2.2rem;font-size:1.7rem}}

.fmp-partners{max-width:920px;margin:4rem auto 0;padding:2rem;border-top:4px solid var(--fmp-orange);background:linear-gradient(135deg,#fff8fc,#fff9f2)}
.fmp-partners h2{margin:0 0 1.5rem;color:#76235f;font:700 clamp(1.35rem,3vw,1.8rem)/1.15 Arial,sans-serif;text-align:center}
.fmp-partners__logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}
.fmp-partners__logos a{display:grid;place-items:center;min-height:112px;padding:.8rem;border:1px solid #ead7e5;background:#fff}
.fmp-partners__logos img{display:block;max-width:100%;max-height:90px;width:auto;height:auto;object-fit:contain}
.fmp-partners__social{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}
.fmp-partners__social a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#76235f}
.fmp-partners__social img{display:block;width:26px;height:26px;object-fit:contain}
.fmp-partners a:hover,.fmp-partners a:focus-visible{outline:3px solid var(--fmp-orange);outline-offset:2px}
@media(max-width:650px){.fmp-partners{padding:1.25rem}.fmp-partners__logos{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* A compact masthead keeps the Joomla menu intact while giving the festival a clearer identity. */
header.container-header{display:flex;align-items:center;justify-content:space-between;gap:2rem;position:sticky!important;top:0;z-index:1000;padding:.375rem max(1.25rem,calc((100vw - 1200px)/2));border-bottom:3px solid var(--fmp-orange);background-color:#fff7ee!important;background-image:linear-gradient(108deg,#fff9ee 0%,#fff3f9 58%,#ffe8d8 100%)!important;box-shadow:0 5px 18px #64264b18}
.container-header>.grid-child{width:auto;max-width:none;margin:0;padding:0!important}
.container-header .navbar-brand{margin:0;padding:0!important;font-size:1rem;line-height:1}
.container-header .fmp-brand a{gap:1.75rem;color:#692353;text-decoration:none}
.container-header .fmp-brand a:hover,.container-header .fmp-brand a:focus-visible{text-decoration:none}
.container-header .fmp-brand img{width:64px;height:64px;flex:none;filter:drop-shadow(0 3px 5px #76235f33);transform:scale(1.35);transform-origin:center center;transition:transform .24s ease}
.container-header .fmp-brand__name{display:flex;flex-direction:column;max-width:25rem;color:#692353;font:700 clamp(.92rem,1.3vw,1.08rem)/1.02 Arial,sans-serif;letter-spacing:.025em;text-decoration:none;text-transform:uppercase}
.container-header .fmp-brand__name span{display:block}
.container-header.fmp-header--compact{gap:1rem;padding-block:.16rem!important;box-shadow:0 8px 24px #64264b24}
.container-header.fmp-header--compact .fmp-brand a{gap:0}
.container-header.fmp-header--compact .fmp-brand img{width:50px;height:50px;transform:scale(1.12)}
.container-header.fmp-header--compact .fmp-brand__name{display:none}
.container-header .container-nav{display:flex;align-items:center;justify-content:flex-end;flex:1 1 auto;min-width:0;padding:0!important}
.container-header .container-nav nav{margin:0!important}
.container-header .mod-menu{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;gap:.15rem;padding:0;color:#5c204b}
.container-header .mod-menu>li+li{margin-left:0}
.container-header .mod-menu>li>a{padding:.85rem .7rem;border-radius:0;color:#5c204b;font-size:.90rem;letter-spacing:.075em;white-space:nowrap;text-decoration:none}
.container-header .mod-menu>li>a,.container-header .mod-menu>li>a:visited{color:#5c204b!important}
.container-header .mod-menu>li>a:hover,.container-header .mod-menu>li>a:focus-visible{background:transparent;color:#692353}
.container-header .mod-menu>li.active>a{background:transparent!important;color:#692353!important}
.container-header .mod-menu>li:after{height:3px;background:var(--fmp-orange)}
.container-header .mod-menu>li.active:after{background:var(--fmp-orange)!important;opacity:1}
@media(max-width:1100px){header.container-header{flex-wrap:wrap;gap:.25rem;padding-block:.325rem}.container-header>.grid-child:not(.container-nav){flex-basis:100%}.container-header .container-nav{flex-basis:100%;justify-content:flex-start}.container-header .mod-menu{justify-content:flex-start;flex-wrap:wrap}.container-header .container-nav nav{margin:0!important}.container-header.fmp-header--compact{padding-block:.16rem!important}}
@media(max-width:650px){header.container-header{padding-block:.275rem}.container-header .fmp-brand img{width:52px;height:52px}.container-header .fmp-brand__name{font-size:.82rem;max-width:18rem}.container-header .container-nav{padding-top:.2rem}.container-header .mod-menu{gap:0}.container-header .mod-menu>li>a{padding:.6rem .55rem;font-size:.90rem}.container-header.fmp-header--compact{padding-block:.125rem!important}.container-header.fmp-header--compact .fmp-brand img{width:46px;height:46px;transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.container-header .fmp-brand img{transition:none}}
/* The parent Cassiopeia stylesheet is loaded after this child asset on some Joomla setups. */
body{--cassiopeia-font-family-body:var(--fmp-font-body)!important;--cassiopeia-font-family-headings:var(--fmp-font-heading)!important;font-family:var(--fmp-font-body)!important}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.container-header .fmp-brand__name,.container-header .mod-menu,.container-header .mod-menu>li>a,.fmp-archive-years .fmp-archive__grid>a strong,.fmp-archive-years .fmp-archive__grid>.fmp-archive__unavailable strong{font-family:var(--fmp-font-heading)!important}
.fmp-footer,.fmp-footer__partners,.fmp-eyebrow,.fmp-button,.fmp-program-link,.fmp-repertoire .com-content-article__body a[href^="/arhiva/"][href*="/predstave/"],.fmp-lightbox figcaption,.fmp-lightbox__counter,.fmp-archive-mobile label,.fmp-archive-mobile select{font-family:var(--fmp-font-body)!important}

/* Partners now belong to the site-wide footer, not the article content. */
.fmp-footer{display:block;margin-top:0;padding:0;border-top:1px solid #edd7d7;background-color:#fff7ee;background-image:linear-gradient(108deg,#fff9ee 0%,#fff3f9 58%,#ffe8d8 100%);color:#302434;font-family:Arial,sans-serif}
.fmp-footer__inner{max-width:1200px;margin:0 auto;padding:0 1.25rem}
.fmp-footer__partners{padding:2.5rem 0 2rem;background:transparent;color:#302434}
.fmp-footer__partners h2{display:flex;align-items:center;gap:.7rem;margin:0 0 1.35rem;color:#642450;font:400 clamp(1.3rem,2.4vw,1.7rem)/1.15 var(--fmp-font-heading);letter-spacing:.02em;text-transform:uppercase}
.fmp-footer__partners h2:before{content:"";display:block;flex:0 0 4px;width:4px;height:1.3em;border-radius:3px;background:var(--fmp-orange)}
.fmp-footer__logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.fmp-footer__logos a{display:grid;place-items:center;min-height:126px;padding:1rem;border:1px solid #e9d6db;border-radius:.65rem;background:#fff;box-shadow:0 5px 16px #64264b0d;transition:transform .18s ease,box-shadow .18s ease}
.fmp-footer__logos a:hover,.fmp-footer__logos a:focus-visible{transform:translateY(-3px);box-shadow:0 10px 22px #64264b24;outline:2px solid var(--fmp-orange);outline-offset:2px}
.fmp-footer__logos img{display:block;width:auto;height:auto;max-width:100%;max-height:88px;object-fit:contain}
.fmp-footer__lower{display:grid;grid-template-columns:minmax(0,1.3fr) auto auto;align-items:center;gap:2rem;padding:1.75rem 0 1.6rem;border-top:1px solid #ddc4d1}
.fmp-footer__identity{display:flex;align-items:center;gap:.85rem}.fmp-footer__identity img{width:52px;height:52px;object-fit:contain}
.fmp-footer__identity strong{color:#4a2845;font-size:.9rem;line-height:1.2;letter-spacing:.045em}.fmp-footer__identity span{margin-top:.35rem;color:#8a4b37;font-size:.78rem}
.fmp-footer__links{display:flex;flex-wrap:wrap;gap:1.1rem}.fmp-footer__links a{color:#60234e;font-size:.78rem;text-decoration:none;text-transform:uppercase}
.fmp-footer nav.fmp-footer__links{gap:1.1rem}
.fmp-footer__links a:hover,.fmp-footer__links a:focus-visible{color:#a44830;text-decoration:underline;text-decoration-color:var(--fmp-orange);text-decoration-thickness:2px;text-underline-offset:.2rem}
.fmp-footer__social{display:flex;flex-wrap:wrap;gap:.45rem}.fmp-footer__social a{display:grid;place-items:center;width:38px;height:38px;border:1px solid #76235f;border-radius:50%;background:#76235f}
.fmp-footer nav.fmp-footer__social{gap:.45rem}
.fmp-footer__social a:hover,.fmp-footer__social a:focus-visible{background:#a54c31;border-color:#a54c31;outline:2px solid var(--fmp-orange);outline-offset:2px}
.fmp-footer__social img{display:block;width:23px;height:23px;object-fit:contain}
.fmp-footer__inner>small{display:block;margin:0;padding:1rem 0 1.35rem;border-top:1px solid #ddc4d1;color:#705969;font-size:.76rem}
.fmp-back-to-top{position:fixed;z-index:40;right:clamp(1rem,3vw,2rem);bottom:calc(clamp(1rem,3vw,2rem) + env(safe-area-inset-bottom));display:grid;place-items:center;width:3.3rem;height:3.3rem;padding:0;border:2px solid var(--fmp-orange);border-radius:50%;background:#76235f;color:#fff;box-shadow:0 8px 24px #31102b45;cursor:pointer;font:700 1.8rem/1 var(--fmp-font-heading);transition:background .2s ease,transform .2s ease}
.fmp-back-to-top[hidden]{display:none!important}
.fmp-back-to-top:hover{background:#a54c31;transform:translateY(-3px)}
.fmp-back-to-top:focus-visible{outline:3px solid #76235f;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.fmp-back-to-top{transition:none}}
@media(max-width:850px){.fmp-footer__lower{grid-template-columns:1fr auto;gap:1.3rem}.fmp-footer__social{grid-column:1/-1}.fmp-footer__logos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.fmp-footer__partners{padding:1.8rem 0}.fmp-footer__logos a{min-height:90px}.fmp-footer__logos img{max-height:68px}.fmp-footer__lower{grid-template-columns:1fr;padding:1.5rem 0}.fmp-footer__social{grid-column:auto}}

/* Contact: festival staff, tickets and Pinokio's original map marker. */
main.fmp-contact-main{max-width:1240px;padding-top:1.5rem}
.fmp-contact-hero{position:relative;overflow:hidden;padding:clamp(2rem,5vw,4rem);border-radius:1.2rem;background:linear-gradient(110deg,#67245c 0%,#ad3773 62%,#e8783f 100%);color:#fff}
.fmp-contact-hero:after{content:"";position:absolute;right:-2rem;top:-5rem;width:18rem;height:18rem;border:2.5rem solid #ffffff1b;border-radius:50%;pointer-events:none}
.fmp-contact-hero__eyebrow{position:relative;z-index:1;margin:0 0 .7rem;color:#ffe7d6;font-size:.86rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.fmp-contact-hero h1{position:relative;z-index:1;margin:0;color:#fff;font-size:clamp(2.7rem,7vw,5rem);line-height:1}
.fmp-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.4rem}
.fmp-contact-card,.fmp-ticket-card,.fmp-contact-map{min-width:0;border:1px solid #eedbdc;border-radius:1rem;background:#fff;box-shadow:0 12px 30px #51244812}
.fmp-contact-card{padding:1.7rem 1.8rem;border-top:5px solid var(--fmp-orange)}
.fmp-contact-card:nth-child(2){border-top-color:var(--fmp-magenta)}
.fmp-contact-card__role{margin:0 0 .55rem;color:#892d6d;font-size:.83rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.fmp-contact-card h2,.fmp-ticket-card h2,.fmp-contact-map h2{margin:0 0 1.1rem;color:#331d33;font-size:clamp(1.5rem,2.7vw,2rem);line-height:1.1}
.fmp-contact-card p:not(.fmp-contact-card__role){margin:.4rem 0;overflow-wrap:anywhere;font-size:1.06rem}
.fmp-contact-card a,.fmp-ticket-card a{color:#76235f;font-weight:700;text-decoration-thickness:1px;text-underline-offset:.18em}
.fmp-contact-card a:hover,.fmp-contact-card a:focus-visible,.fmp-ticket-card a:hover,.fmp-ticket-card a:focus-visible{color:#c4532d}
.fmp-contact-details{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;gap:1.25rem;margin-top:1.25rem}
.fmp-ticket-card{padding:1.8rem;background:linear-gradient(145deg,#fffaf5,#fff3ec)}
.fmp-ticket-card>p:not(.fmp-contact-card__role){margin:.7rem 0;line-height:1.5}
.fmp-ticket-card>p:nth-last-child(2){padding-bottom:1rem;border-bottom:1px solid #e5c9c5}
.fmp-ticket-card strong{color:#662656}
.fmp-ticket-card__logo{display:block;width:16.666%;margin:.9rem 0 .15rem;overflow:hidden;border-radius:.4rem;background:#211f25;box-shadow:0 8px 20px #2b18332b;transition:transform .2s ease,box-shadow .2s ease}
.fmp-ticket-card__logo img{display:block;width:100%;height:auto}
.fmp-ticket-card__logo:hover,.fmp-ticket-card__logo:focus-visible{transform:translateY(-2px);box-shadow:0 12px 25px #2b18334a;outline:3px solid var(--fmp-orange);outline-offset:3px}
@media(max-width:600px){.fmp-ticket-card__logo{width:min(30%,105px)}}
.fmp-contact-map{display:flex;flex-direction:column;overflow:hidden}
.fmp-contact-map__heading{padding:1.8rem 1.8rem 1rem}
.fmp-contact-map__heading h2{margin-bottom:.4rem}
.fmp-contact-map__heading>p:last-child{margin:0;color:#55445b}
.fmp-contact-map iframe{display:block;flex:1 1 auto;width:100%;min-height:350px;border:0}
@media(max-width:760px){.fmp-contact-grid,.fmp-contact-details{grid-template-columns:1fr}.fmp-contact-hero{padding:2rem 1.4rem}.fmp-contact-card,.fmp-ticket-card,.fmp-contact-map__heading{padding:1.35rem}.fmp-contact-map iframe{min-height:330px}}

.fmp-archive-article .item-page .page-header h1,.fmp-archive-article .item-page .page-header h2,.fmp-archive-article .item-page>h1{font-weight:700}

/* Home: a theatrical image-led opening and a clear route into the current season. */
main.fmp-home-main{box-sizing:border-box;width:100%;max-width:1240px;padding-top:1.25rem}
.fmp-home-hero{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:clamp(460px,53vw,620px);overflow:hidden;border-radius:1.25rem;background:radial-gradient(circle at 78% 35%,#944875,#2a1539 65%);color:#fff}
.fmp-home-hero__image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 61%;animation:fmp-home-stage-drift 18s ease-in-out infinite alternate}
@keyframes fmp-home-stage-drift{from{transform:scale(1)}to{transform:scale(1.035) translateX(-.5%)}}
.fmp-home-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#210d30f2 0%,#28113ac9 38%,#28113557 70%,#160b2490 100%),linear-gradient(0deg,#1b0c27c9,transparent 55%)}
.fmp-home-hero__content{position:relative;z-index:1;width:100%;max-width:810px;padding:clamp(2rem,5.6vw,5rem)}
.fmp-home-hero__kicker{display:inline-block;margin:0 0 1.2rem;padding:.35rem .7rem;border-left:4px solid var(--fmp-orange);background:#2d1239a8;color:#ffe6d5;font-size:clamp(.9rem,1.5vw,1.1rem);font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.fmp-home-hero h1{max-width:12ch;margin:0;color:#fff;font-size:clamp(3.3rem,7.3vw,7.2rem);font-weight:400;line-height:.93;letter-spacing:-.035em;text-wrap:balance;text-shadow:0 3px 22px #0008}
.fmp-home-hero__actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.2rem;margin-top:2.2rem}
.fmp-home-button{display:inline-flex;align-items:center;justify-content:center;gap:1.2rem;min-height:3.25rem;padding:.8rem 1.35rem;border-radius:3rem;background:var(--fmp-orange);color:#261332;font:700 1.05rem/1.1 var(--fmp-font-heading);text-decoration:none;transition:background .2s ease,transform .2s ease}
.fmp-home-button:hover,.fmp-home-button:focus-visible{background:#ffbd7c;color:#261332;transform:translateY(-2px)}
.fmp-home-hero__secondary{color:#fff;font-weight:700;text-decoration-color:var(--fmp-orange);text-decoration-thickness:2px;text-underline-offset:.35em}
.fmp-home-hero__secondary:hover,.fmp-home-hero__secondary:focus-visible{color:#ffbd7c}
.fmp-home-hero__edition{position:absolute;top:.4rem;right:2.2rem;z-index:0;color:#fff;font:400 clamp(9rem,24vw,20rem)/1 var(--fmp-font-heading);letter-spacing:-.1em;opacity:.11;pointer-events:none}
.fmp-home-main>section+section{margin-top:clamp(3.5rem,7vw,6rem)}
.fmp-home-section-heading{display:flex;align-items:end;flex-wrap:wrap;gap:.5rem 2rem;margin-bottom:1.3rem}
.fmp-home-section-heading .fmp-home-eyebrow{flex-basis:100%}
.fmp-home-eyebrow{margin:0;color:#9b296f;font-size:.9rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.fmp-home-section-heading h2{flex:1 1 auto;margin:0;color:#291635;font-size:clamp(2.1rem,4.5vw,3.4rem);font-weight:400;line-height:1.02}
.fmp-home-section-heading>a{color:#76235f;font-size:1rem;font-weight:700;text-decoration-thickness:2px;text-underline-offset:.2em}
.fmp-home-section-heading>a:hover,.fmp-home-section-heading>a:focus-visible{color:#c65331}
.fmp-home-news__grid{display:grid;gap:1rem}
.fmp-home-news__grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.fmp-home-news__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.fmp-home-news__grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.fmp-home-news__card{display:flex;flex-direction:column;min-width:0;padding:1.5rem;border:1px solid #ebdce2;border-top:4px solid var(--fmp-orange);border-radius:.8rem;background:#fff;box-shadow:0 10px 26px #5124480d}
.fmp-home-news__card h3{margin:0 0 .8rem;color:#36203b;font-size:1.55rem;font-weight:400;line-height:1.1}
.fmp-home-news__card p{margin:0 0 1.2rem;line-height:1.5}
.fmp-home-news__card a{margin-top:auto;color:#76235f;font-weight:700;text-decoration:none}
.fmp-home-news__card a:hover,.fmp-home-news__card a:focus-visible{text-decoration:underline;text-underline-offset:.2em}
.fmp-home-news__more{min-width:0;padding:1.5rem;border:1px solid #ebdce2;border-top:4px solid var(--fmp-magenta);border-radius:.8rem;background:#fff8fb}
.fmp-home-news__more h3{margin:0 0 .8rem;color:#36203b;font-size:1.55rem;font-weight:400;line-height:1.1}
.fmp-home-news__more ul{margin:0;padding:0;list-style:none}
.fmp-home-news__more li+li{margin-top:.8rem;padding-top:.8rem;border-top:1px solid #ebdce2}
.fmp-home-news__more a{color:#76235f;font-weight:700;line-height:1.35;text-decoration:none}
.fmp-home-news__more a:hover,.fmp-home-news__more a:focus-visible{text-decoration:underline;text-underline-offset:.2em}
.fmp-home-program__days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.fmp-home-program__day{min-width:0;padding:1.4rem 1.3rem;border:1px solid #e9d9dc;border-top:5px solid var(--fmp-magenta);border-radius:.7rem;background:#fffaf6}
.fmp-home-program__day:nth-child(even){border-top-color:var(--fmp-orange);background:#fff8fb}
.fmp-home-program__day h3{margin:0 0 1rem;color:#76235f;font-size:1.35rem;font-weight:400;line-height:1.12}
.fmp-home-program__day p{margin:.75rem 0 0;padding-top:.75rem;border-top:1px solid #e9d9dc;line-height:1.4}
.fmp-home-program__entry{display:flex;align-items:center;gap:.85rem;margin-top:.8rem;padding-top:.8rem;border-top:1px solid #e9d9dc}
.fmp-home-program__entry p{flex:1 1 auto;min-width:0;margin:0;padding:0;border:0;line-height:1.38}
.fmp-home-program__poster{display:block;flex:0 0 66px;width:66px;height:88px;overflow:hidden;border-radius:.3rem;background:#efe2e9}
.fmp-home-program__poster-spacer{display:block;flex:0 0 66px;width:66px;height:1px}
.fmp-home-program__poster img{display:block;width:100%;height:100%;object-fit:contain}
.fmp-home-program__poster:hover,.fmp-home-program__poster:focus-visible{outline:2px solid var(--fmp-orange);outline-offset:2px}
.fmp-home-program__time{display:inline-block;min-width:2.8rem;margin-right:.3rem;color:#8d2c62}
.fmp-home-program__day{display:flex;flex-direction:column}
.fmp-home-program__day .fmp-home-program__play{color:#76235f;font-size:1.3em;font-weight:700;text-decoration-thickness:2px;text-underline-offset:.14em}
.fmp-home-program__day .fmp-home-program__play:hover,.fmp-home-program__day .fmp-home-program__play:focus-visible{color:#c65331}
.fmp-home-program .fmp-home-section-heading{align-items:center;column-gap:clamp(2rem,5vw,4.5rem)}
.fmp-home-program .fmp-home-section-heading h2{flex:0 1 auto}
.fmp-home-program .fmp-home-section-heading .fmp-home-program__ticket{flex:0 0 auto}
@media(max-width:600px){.fmp-home-program .fmp-home-section-heading{row-gap:.9rem}.fmp-home-program .fmp-home-section-heading h2{flex-basis:100%}}
.fmp-home-program__ticket,.fmp-home-program__ticket:visited{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.35rem;border:2px solid #76235f;border-radius:2rem;background:#76235f;color:#fff;font-weight:700;text-align:center;text-decoration:none;transition:background .2s ease,color .2s ease}
.fmp-home-program__ticket:hover,.fmp-home-program__ticket:focus-visible{background:#fff;color:#76235f}
.fmp-home-program__ticket:focus-visible{outline:3px solid var(--fmp-orange);outline-offset:3px}
.fmp-home-program__day-ticket,.fmp-program-day-ticket{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;width:max-content;max-width:100%;padding:.72rem 1.25rem;border:2px solid #76235f;border-radius:2rem;color:#76235f;font-weight:700;text-decoration:none;line-height:1.2;transition:background .2s ease,color .2s ease}
.fmp-home-program__day-actions{display:flex;justify-content:flex-end;margin-top:auto;padding-top:1.5rem}
.fmp-home-program__day-ticket:hover,.fmp-home-program__day-ticket:focus-visible,.fmp-program-day-ticket:hover,.fmp-program-day-ticket:focus-visible{background:#76235f;color:#fff;text-decoration:none}
.fmp-home-program__day-ticket:focus-visible,.fmp-program-day-ticket:focus-visible{outline:3px solid var(--fmp-orange);outline-offset:3px}
.fmp-program-day-action{margin:.4rem 0 1.25rem}
.fmp-home-plays__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.fmp-home-play{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #e9d9dc;border-radius:.85rem;background:#fff;color:#291635;text-decoration:none;box-shadow:0 8px 24px #51244812;transition:transform .2s ease,box-shadow .2s ease}
.fmp-home-play:hover,.fmp-home-play:focus-visible{color:#291635;transform:translateY(-4px);box-shadow:0 14px 30px #51244826}
.fmp-home-play__image{display:grid;place-items:center;aspect-ratio:4/3;overflow:hidden;background:linear-gradient(140deg,#f9ebf5,#fbe7d6)}
.fmp-home-play__image img{display:block;width:100%;height:100%;object-fit:contain}
.fmp-home-play__title{display:block;min-height:4.3rem;padding:1rem 1rem .4rem;font:400 1.4rem/1.05 var(--fmp-font-heading)}
.fmp-home-play__more{display:block;margin-top:auto;padding:.2rem 1rem 1.1rem;color:#76235f;font-size:.92rem;font-weight:700}
.fmp-home-archive{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem;padding:clamp(1.8rem,4vw,3.2rem);border-radius:1rem;background:linear-gradient(110deg,#602252,#9d2f71 67%,#e5773b);color:#fff}
.fmp-home-archive .fmp-home-eyebrow{color:#ffd5b6}
.fmp-home-archive h2{max-width:13ch;margin:.4rem 0 0;color:#fff;font-size:clamp(2rem,4vw,3.2rem);font-weight:400;line-height:1.04}
.fmp-home-archive>a{display:inline-flex;align-items:center;gap:.8rem;padding:.75rem 1.15rem;border:1px solid #ffffffa8;border-radius:3rem;color:#fff;font-weight:700;text-decoration:none}
.fmp-home-archive>a:hover,.fmp-home-archive>a:focus-visible{background:#fff;color:#602252}
.fmp-home-team{padding:clamp(1.5rem,3vw,2.5rem);border:1px solid #63385f;border-top:4px solid var(--fmp-orange);border-radius:1rem;background:linear-gradient(120deg,#26192f,#4b2548);color:#f9f2f7}
.fmp-home-team__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.2rem,2.8vw,2.5rem)}
.fmp-home-team__column{min-width:0}
.fmp-home-team h2,.fmp-home-team h3{margin:0 0 .45rem;color:#ffd1af;font:400 1.25rem/1.18 var(--fmp-font-heading);text-transform:uppercase}
.fmp-home-team h2{color:#fff}
.fmp-home-team h3:not(:first-child){margin-top:1.1rem}
.fmp-home-team p{margin:0;color:#f9f2f7;line-height:1.5}
.fmp-home-team__column:first-child p{line-height:1.8}
.fmp-home-team strong{color:#fff}
.fmp-home-team a{color:#ffd1af}
.fmp-home-visit .fmp-contact-details{margin:0}
@media(max-width:900px){.fmp-home-team__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.fmp-home-team__grid{grid-template-columns:1fr}}
@media(max-width:960px){.fmp-home-program__days,.fmp-home-plays__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.fmp-home-news__grid--3,.fmp-home-news__grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){main.fmp-home-main{padding-top:.7rem}.fmp-home-hero{min-height:520px;border-radius:.8rem}.fmp-home-hero__image{object-position:63% center}.fmp-home-hero:after{background:linear-gradient(0deg,#210d30f2 0%,#28113abe 52%,#28113544 100%)}.fmp-home-hero__content{padding:1.6rem}.fmp-home-hero h1{font-size:clamp(3rem,12vw,4.6rem)}.fmp-home-hero__edition{top:.5rem;right:1.2rem;font-size:9rem}.fmp-home-news__grid{grid-template-columns:1fr}.fmp-home-main>section+section{margin-top:3.4rem}}
@media(max-width:700px){.fmp-home-news__grid--2,.fmp-home-news__grid--3,.fmp-home-news__grid--4{grid-template-columns:1fr}}
@media(max-width:500px){.fmp-home-hero{min-height:540px}.fmp-home-hero__actions{align-items:stretch;flex-direction:column;gap:1rem}.fmp-home-button{align-self:flex-start}.fmp-home-program__days,.fmp-home-plays__grid{grid-template-columns:1fr}.fmp-home-play__image{aspect-ratio:16/10}.fmp-home-play__title{min-height:0}.fmp-home-archive{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.fmp-home-button,.fmp-home-play{transition:none}.fmp-home-hero__image{animation:none}}

/* About and current Programme share the illustrated festival visual language. */
main.fmp-illustrated-page{box-sizing:border-box;width:100%;max-width:1240px;padding-top:1.25rem}
.fmp-inner-hero{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:clamp(290px,33vw,430px);overflow:hidden;border-radius:1.1rem;background:#281238;color:#fff}
.fmp-inner-hero>img{position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%}
.fmp-inner-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#210d30e8 0%,#28113ab5 42%,#28113531 83%)}
.fmp-inner-hero__content{position:relative;z-index:1;max-width:820px;padding:clamp(2rem,5vw,4rem)}
.fmp-inner-hero__content p{margin:0 0 1rem;color:#ffceab;font-size:.94rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.fmp-inner-hero h1{margin:0;color:#fff;font-size:clamp(2.9rem,6vw,5.6rem);font-weight:400;line-height:.95;letter-spacing:-.025em;text-shadow:0 2px 16px #0007}
.fmp-illustrated-page>.com-content-article{margin-top:2.3rem}
.fmp-program-ticket{display:flex;justify-content:flex-start;margin-top:1.5rem}
.fmp-program-page>.com-content-article{margin-top:1.3rem}
.fmp-illustrated-page .com-content-article>.page-header{display:none}
.fmp-about-page>.com-content-article.item-page{box-sizing:border-box;width:100%;max-width:none}
.fmp-about-page .com-content-article__body{columns:2 26rem;column-gap:clamp(2rem,4vw,4rem);column-rule:1px solid #eadce2}
.fmp-about-page .com-content-article__body.fmp-about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(2rem,4vw,4rem);columns:auto;column-rule:none}
.fmp-about-grid__history,.fmp-about-grid__other{min-width:0}
.fmp-about-page .com-content-article__body h2{break-after:avoid;break-inside:avoid;margin:1.7rem 0 .85rem;color:#76235f;font-size:clamp(1.6rem,2.5vw,2rem);font-weight:400}
.fmp-about-page .com-content-article__body h2:first-of-type{margin-top:0}
.fmp-about-page .com-content-article__body p{break-inside:avoid;margin:0 0 1.15rem;line-height:1.7}
.fmp-about-page .fmp-feature-image{display:block;float:right;width:min(34%,190px);margin:0 0 1.25rem 1.4rem;break-inside:avoid}
.fmp-about-page .fmp-feature-image a{padding:.55rem;border:1px solid #ead7e5;border-radius:.75rem;background:#fff;box-shadow:0 8px 22px #5f285219}
@media(max-width:760px){.fmp-about-page .com-content-article__body{columns:1;column-rule:none}.fmp-about-page .com-content-article__body.fmp-about-grid{grid-template-columns:1fr}.fmp-about-grid__other{margin-top:1.7rem}.fmp-about-page .fmp-feature-image{width:min(36%,190px)}}
@media(max-width:600px){.fmp-about-page .fmp-feature-image{float:none;width:min(70%,220px);margin:0 auto 1.5rem}}
@media(max-width:650px){.fmp-inner-hero{min-height:300px;border-radius:.75rem}.fmp-inner-hero>img{object-position:62% center}.fmp-inner-hero:after{background:linear-gradient(0deg,#210d30ed 0%,#28113a9c 55%,#28113533 100%)}.fmp-inner-hero__content{padding:1.6rem}.fmp-inner-hero h1{font-size:clamp(2.7rem,10vw,4rem)}.fmp-illustrated-page>.com-content-article{margin-top:1.5rem}}

/* The six publications are linked books, not a lightbox photo gallery. */
main.fmp-publications-main{box-sizing:border-box;width:100%;max-width:1240px;padding-top:1.25rem}
.fmp-publications-heading{margin:0 0 clamp(1.6rem,3vw,2.7rem);padding:clamp(1.6rem,3.7vw,3rem);border-radius:1rem;background:linear-gradient(115deg,#311d42,#753059 67%,#cf683d);color:#fff}
.fmp-publications-heading p{margin:0 0 .55rem;color:#ffd4b0;font-size:.9rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.fmp-publications-heading h1{margin:0;color:#fff;font:400 clamp(2.7rem,5vw,4.4rem)/1 var(--fmp-font-heading)}
.fmp-publications-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.1rem,2.4vw,2rem)}
.fmp-publication{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #ead8e1;border-radius:1rem;background:#fffaf7;color:#2e2032;text-decoration:none;box-shadow:0 10px 28px #51244814;transition:transform .2s ease,box-shadow .2s ease}
.fmp-publication:visited{color:#2e2032}
.fmp-publication:hover,.fmp-publication:focus-visible{color:#2e2032;transform:translateY(-4px);box-shadow:0 17px 38px #51244828}
.fmp-publication:focus-visible{outline:3px solid var(--fmp-orange);outline-offset:3px}
.fmp-publication__cover{display:grid;place-items:center;min-height:385px;padding:1.3rem;background:linear-gradient(145deg,#fae7ec,#fff0dd)}
.fmp-publication__cover img{display:block;max-width:100%;width:auto;height:350px;object-fit:contain;box-shadow:0 10px 25px #2e18312e}
.fmp-publication__info{display:flex;flex:1;flex-direction:column;gap:.45rem;padding:1.35rem 1.5rem 1.5rem}
.fmp-publication__info>strong{color:#542249;font:400 clamp(1.45rem,2vw,1.85rem)/1.12 var(--fmp-font-heading)}
.fmp-publication__info>span:not(.fmp-publication__action){font-size:1rem}
.fmp-publication__action{display:inline-flex;align-items:center;gap:.35rem;align-self:flex-start;margin-top:auto;padding-top:1.1rem;color:#9e315f;font-weight:700}
@media(max-width:900px){.fmp-publications-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:590px){.fmp-publications-grid{grid-template-columns:1fr}.fmp-publication__cover{min-height:330px}.fmp-publication__cover img{height:300px}}
@media(prefers-reduced-motion:reduce){.fmp-publication{transition:none}}

/* A shared archive measure and card system for every annual programme. */
.fmp-archive-program .com-content-article__body.fmp-program-cards{display:block}
.fmp-archive-program .fmp-program-cards__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:clamp(1rem,2vw,1.6rem)}
.fmp-archive-program .fmp-program-cards__grid--entries{grid-template-columns:repeat(3,minmax(0,1fr))}
.fmp-archive-program .fmp-program-card{box-sizing:border-box;min-width:0;padding:clamp(1.2rem,2.2vw,1.75rem);border:1px solid #ead7e5;border-top:4px solid var(--fmp-orange);border-radius:.9rem;background:#fffaf7;box-shadow:0 10px 26px #51244812}
.fmp-archive-program .fmp-program-card--intro{margin-bottom:clamp(1rem,2vw,1.6rem);border-top-color:var(--fmp-magenta);background:linear-gradient(110deg,#fff5fa,#fff9f2)}
.fmp-archive-program .fmp-program-cards__grid--days .fmp-program-card:nth-child(even){border-top-color:var(--fmp-magenta)}
.fmp-archive-program .com-content-article__body .fmp-program-card h2{margin:0 0 1rem;padding:0 0 .85rem;border:0;border-bottom:1px solid #e9d3de;background:none;color:#76235f;font:400 clamp(1.45rem,2.4vw,2rem)/1.12 var(--fmp-font-heading);letter-spacing:0}
.fmp-archive-program .com-content-article__body .fmp-program-card p{margin:0;padding:.68rem 0;border:0;border-bottom:1px solid #eadfe3;background:transparent;color:#302431;font-size:1.04rem;line-height:1.6}
.fmp-archive-program .com-content-article__body .fmp-program-card p:last-child{border-bottom:0;padding-bottom:0}
.fmp-archive-program .com-content-article__body .fmp-program-card p:first-child{padding-top:0}
.fmp-archive-program .com-content-article__body .fmp-program-card strong{color:#76235f;font-family:var(--fmp-font-body);font-weight:700}
.fmp-archive-program .fmp-program-card--entry{display:flex;align-items:center;min-height:150px}
.fmp-archive-program .fmp-program-card--entry p{width:100%}
.fmp-archive-program .fmp-program-card a{color:#76235f;font-weight:700;text-underline-offset:.18em}
.fmp-archive-program .fmp-program-card a:hover,.fmp-archive-program .fmp-program-card a:focus-visible{color:#c65331}
.fmp-year__grid a time{color:#8b5778;font-size:.85rem;font-weight:700;letter-spacing:.03em}
@media(max-width:900px){.fmp-archive-program .fmp-program-cards__grid--entries{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.fmp-archive-program .fmp-program-cards__grid,.fmp-archive-program .fmp-program-cards__grid--entries{grid-template-columns:1fr}.fmp-archive-program .fmp-program-card--entry{min-height:0}}

/* Language switcher: Joomla module position "langsw" in the sticky header. */
.container-header .fmp-header-language{order:2;flex:0 0 auto;align-self:center;margin-inline-start:clamp(.35rem,1vw,.9rem);font-family:var(--fmp-font-heading);font-size:.88rem;line-height:1.2}
.container-header .fmp-header-language .mod-languages{margin:0}
.container-header .fmp-header-language ul{display:flex;align-items:center;gap:.25rem;margin:0;padding:0;list-style:none}
.container-header .fmp-header-language li{margin:0;padding:0;list-style:none}
.container-header .fmp-header-language a,.container-header .fmp-header-language select{color:#692353;background:#fffaf6;border:1px solid #d8adbf;border-radius:.45rem;padding:.4rem .5rem;text-decoration:none;font:inherit}
.container-header .fmp-header-language li:not(.lang-active):not(.active) a:hover,.container-header .fmp-header-language li:not(.lang-active):not(.active) a:focus-visible,.container-header .fmp-header-language select:focus-visible{color:#692353;background:#fff1e8;border-color:var(--fmp-orange);outline:2px solid var(--fmp-orange);outline-offset:2px}
.container-header .fmp-header-language .lang-active a,.container-header .fmp-header-language li.active a,.container-header .fmp-header-language .lang-active a:hover,.container-header .fmp-header-language .lang-active a:focus-visible{color:#fff;background:#76235f;border-color:#76235f}
/* The Latin URL is a rendered sr-RS page; correct its active state before JS updates ARIA. */
body.fmp-virtual-latin .container-header .fmp-header-language li:first-child a{color:#692353;background:#fffaf6;border-color:#d8adbf}
body.fmp-virtual-latin .container-header .fmp-header-language li:first-child a:hover,body.fmp-virtual-latin .container-header .fmp-header-language li:first-child a:focus-visible{background:#fff1e8;border-color:var(--fmp-orange)}
body.fmp-virtual-latin .container-header .fmp-header-language li:nth-child(2) a,body.fmp-virtual-latin .container-header .fmp-header-language li:nth-child(2) a:hover,body.fmp-virtual-latin .container-header .fmp-header-language li:nth-child(2) a:focus-visible{color:#fff;background:#76235f;border-color:#76235f}
.container-header .fmp-header-language img{max-width:24px;height:auto;vertical-align:middle}
@media(max-width:1100px){.container-header .fmp-header-language{margin-inline-start:auto}}
@media(max-width:650px){.container-header .fmp-header-language{font-size:.82rem}.container-header .fmp-header-language a,.container-header .fmp-header-language select{padding:.34rem .42rem}}

/* The mobile navigation stays available without JavaScript; JS enhances it into a toggle. */
.container-header .fmp-menu-toggle{display:none}
@media(max-width:1100px){
  header.container-header{flex-wrap:wrap;gap:.5rem;padding:.45rem 1.25rem}
  .container-header>.grid-child:not(.container-nav){flex:1 1 auto;min-width:0}
  .container-header.fmp-menu-ready .fmp-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-width:50px;min-height:44px;padding:.45rem .7rem;border:1px solid #9c5786;border-radius:.5rem;background:#fffaf6;color:#692353;font:700 .95rem/1 var(--fmp-font-heading);cursor:pointer}
  .container-header .fmp-menu-toggle:hover,.container-header .fmp-menu-toggle:focus-visible{border-color:var(--fmp-orange);background:#fff0e5;outline:2px solid var(--fmp-orange);outline-offset:2px}
  .fmp-menu-toggle__icon{display:grid;gap:4px;width:20px}
  .fmp-menu-toggle__icon span{display:block;width:20px;height:2px;border-radius:2px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
  .container-header.fmp-menu-open .fmp-menu-toggle__icon span:first-child{transform:translateY(6px) rotate(45deg)}
  .container-header.fmp-menu-open .fmp-menu-toggle__icon span:nth-child(2){opacity:0}
  .container-header.fmp-menu-open .fmp-menu-toggle__icon span:last-child{transform:translateY(-6px) rotate(-45deg)}
  .container-header.fmp-menu-ready .container-nav{display:none!important}
  .container-header.fmp-menu-ready.fmp-menu-open .container-nav{position:absolute;top:100%;right:0;left:0;display:flex!important;flex-direction:column;align-items:stretch;gap:1rem;box-sizing:border-box;width:100%;max-height:calc(100dvh - 70px);overflow-y:auto;padding:1rem 1.25rem 1.25rem!important;border-bottom:3px solid var(--fmp-orange);background:#fff7ee;box-shadow:0 18px 28px #42213b30}
  .container-header .mod-menu{display:flex;flex-direction:column;align-items:stretch;flex:1 1 auto;width:100%;gap:0}
  .container-header .mod-menu>li{width:100%;border-bottom:1px solid #ead7e2}
  .container-header .mod-menu>li>a{display:block;white-space:normal;padding:.75rem .8rem;font-size:1.06rem}
  .container-header .mod-menu>li.active>a{border-left:3px solid var(--fmp-orange)}
  .container-header .fmp-header-language{order:2;align-self:stretch;margin:0;padding-top:.25rem}
  .container-header .fmp-header-language ul{flex-wrap:wrap;gap:.45rem}
  .container-header.fmp-header--compact{padding:.3rem 1.25rem!important}
}
@media(max-width:650px){
  .container-header .fmp-brand a{gap:.8rem}
  .container-header .fmp-brand img{width:50px;height:50px;transform:scale(1.12)}
  .container-header .fmp-brand__name{font-size:.82rem}
  .container-header.fmp-header--compact .fmp-brand img{width:44px;height:44px;transform:scale(1.08)}
  .container-header .fmp-menu-toggle{padding:.45rem .6rem}
}
@media(max-width:350px){.container-header .fmp-menu-toggle__label{display:none}.container-header .fmp-brand__name{font-size:.73rem}}
@media(prefers-reduced-motion:reduce){.fmp-menu-toggle__icon span{transition:none}}
