:root{--bg:#f3e7d1;--bg-soft:#ead9bd;--bg-warm:#dfc9a6;--surface:#faf3e7;--surface-2:#f0dfc5;--surface-warm:#e7d0ad;--text:#2f2528;--text-soft:#56484d;--muted:#77696c;--gold:#b9872f;--gold-light:#d6ac5f;--gold-dark:#805919;--velvet:#7a3f53;--velvet-deep:#4a2533;--velvet-light:#9f6b7d;--border:#80591942;--border-strong:#8059196b;--gold-glow:0 6px 20px #80591914, 0 0 0 1px #b9872f0a;--shadow:0 18px 45px #48302324;--shadow-soft:0 10px 28px #48302317;--max-width:1180px;--header-height:68px;--font-display:"Cinzel", "Times New Roman", serif;--font-title:"Spectral", Georgia, serif;--font-body:"Literata", Georgia, serif}.site-brand,.site-nav,.hero-kicker,.hero-subtitle,.section-kicker,.roster-role,.closing-kicker{font-family:var(--font-display)}.hero h1,.roster-header h1,.section-heading h2,.roster-person-content h2,.festival-section-header h2,.closing h2{font-family:var(--font-title);font-weight:700}body,button,input,textarea,select{font-family:var(--font-body)}.hero-kicker,.hero-subtitle,.section-kicker,.festival-kicker,.festival-theme,.site-nav,.roster-role{font-family:var(--font-display);font-weight:700}.hero h1,.closing h2{color:var(--velvet-light);-webkit-text-stroke:.5px var(--gold-dark);text-shadow:0 1px #ffffff59,0 0 10px #b9872f14}*{box-sizing:border-box}html{scroll-behavior:smooth;min-height:100%}body{isolation:isolate;min-height:100vh;color:var(--text);background:radial-gradient(circle at 50% -8%,#b9872f29,#0000 30rem),radial-gradient(at 0 45%,#7a3f5312,#0000 34rem),radial-gradient(at 100% 65%,#4a25330f,#0000 32rem),linear-gradient(#f8efdf 0%,#f3e7d1 45%,#ead9bd 100%);margin:0;font-weight:500;position:relative}body:before{content:"";pointer-events:none;z-index:-1;filter:blur(2px);opacity:.6;background:repeating-radial-gradient(at 22% 112%,#0000 0 44px,#b9872f1a 45px 49px,#d6ac5f1a 50px 52px,#b9872f14 53px 56px,#0000 57px 92px),repeating-radial-gradient(at 78% 118%,#0000 0 58px,#80591912 59px 63px,#d6ac5f17 64px 67px,#b9872f0f 68px 71px,#0000 72px 108px);position:fixed;inset:-6%}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--velvet);color:#fff7eb}.page{width:min(100% - 2rem, var(--max-width));margin:0 auto;padding-bottom:6rem}@media (width<=650px){.page{width:min(100% - 1.25rem, var(--max-width));padding-bottom:4rem}}.site-header-left{align-items:center;gap:1.25rem;display:flex}.ambient-player{align-items:center;gap:.65rem;display:flex}.ambient-player-toggle{width:30px;height:30px;color:var(--gold-light);cursor:pointer;background:#4a253359;border:1px solid #d6ac5f8c;border-radius:2px;justify-content:center;align-items:center;padding:0;font-size:.65rem;line-height:1;transition:background .14s,border-color .14s,color .14s;display:inline-flex}.ambient-player-toggle:hover,.ambient-player-toggle:focus-visible{border-color:var(--gold-light);color:#fff7eb;background:#d6ac5f1f;outline:none}.ambient-player-volume{align-items:center;display:flex}.ambient-player-volume input{width:76px;accent-color:var(--gold-light);cursor:pointer}@media (width<=650px){.ambient-player{flex-shrink:0}.ambient-player-volume input{width:64px}}@media (width<=430px){.ambient-player-volume input{width:52px}}.site-header{z-index:1000;width:100%;min-height:var(--header-height);background:linear-gradient(180deg, var(--velvet), var(--velvet-deep));border-bottom:1px solid var(--gold-dark);position:sticky;top:0;box-shadow:0 8px 24px #4a253324}.site-header:after{content:"";background:linear-gradient(90deg, transparent, var(--gold-light), transparent);pointer-events:none;width:min(260px,40%);height:1px;position:absolute;bottom:-1px;left:50%;transform:translate(-50%);box-shadow:0 0 10px #e3c06f29}.site-header-inner{width:min(100% - 2rem, var(--max-width));justify-content:space-between;align-items:center;gap:2rem;margin:0 auto;padding:1.35rem 0;display:flex}.site-brand{color:var(--gold-light);letter-spacing:.22em;font-size:1.25rem;font-weight:700}.site-nav{align-items:center;gap:2rem;display:flex}.site-nav a{color:#fff7eb;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:700;transition:color .14s;position:relative}.site-nav a:after{content:"";background:var(--gold-light);width:0;height:1px;transition:width .14s;position:absolute;bottom:-.45rem;left:50%;transform:translate(-50%)}.site-nav a:hover,.site-nav a:focus-visible{color:var(--gold-light)}.site-nav a:hover:after,.site-nav a:focus-visible:after{width:100%}@media (width<=650px){.site-header-inner{width:min(100% - 1.25rem, var(--max-width));flex-direction:column;align-items:stretch;gap:.9rem;padding:1rem 0}.site-header-left{justify-content:space-between;gap:1rem;width:100%}.site-brand{margin-left:auto;font-size:1.05rem}.site-nav{flex-wrap:wrap;justify-content:center;gap:.75rem 1.25rem;width:100%}.site-nav a{font-size:.66rem}}@media (width<=430px){.site-header-left{gap:.75rem}.site-brand{letter-spacing:.17em;font-size:.95rem}.site-nav{gap:.65rem 1rem}}.hero{text-align:center;max-width:900px;margin:0 auto;padding:8rem 2rem 7rem;position:relative}.hero-kicker{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.22em;margin:0 0 1.5rem;font-size:.85rem;font-weight:700}.hero-title-wrap{position:relative}.hero-ornament{color:var(--gold-dark);text-shadow:0 0 16px #c4943752;font-size:1rem}.hero h1{color:var(--velvet-deep);letter-spacing:-.045em;margin:0;font-size:clamp(4rem,9vw,7.5rem);font-weight:700;line-height:.9}.hero-subtitle{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.2em;margin:1.5rem 0 0;font-size:.85rem;font-weight:700}.hero-intro,.festival-copy,.roster-card>p:last-child,.nahiria-copy>p:not(.section-kicker){color:var(--text-soft);font-style:normal}.hero-intro{width:min(90%,760px);color:var(--text-soft);letter-spacing:.01em;margin:2.25rem auto 0;font-size:1.15rem;font-weight:500;line-height:1.85}.hero-intro p{margin:0;font-size:1.08rem;line-height:1.8}.hero-intro p+p{margin-top:1.35rem}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.85rem;margin-top:2.5rem;display:flex}@media (width<=900px){.hero{padding-top:6.5rem;padding-bottom:5.5rem}}@media (width<=650px){.hero{padding:4.75rem 0 4rem}.hero-kicker{margin-bottom:1rem;font-size:.72rem;line-height:1.6}.hero h1{font-size:clamp(3.2rem,17vw,4.75rem);line-height:.95}.hero-subtitle{margin-top:1.15rem;font-size:.72rem;line-height:1.6}.hero-intro{width:100%;margin-top:1.75rem;font-size:1rem;line-height:1.75}.hero-intro p{font-size:1rem;line-height:1.75}.hero-actions{flex-direction:column;align-items:stretch;margin-top:2rem}}@media (width<=430px){.hero{padding-top:4rem}}.button{border:1px solid var(--gold-dark);min-width:170px;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;border-radius:2px;justify-content:center;align-items:center;padding:.8rem 1.25rem;font-size:.68rem;font-weight:700;transition:background .14s,border-color .14s,color .14s,transform .14s;display:inline-flex}.button-primary{border-color:var(--gold-dark);background:linear-gradient(180deg, var(--surface-2), var(--surface));color:var(--gold-dark);box-shadow:0 6px 18px #5b421f14}.button-primary:hover,.button-primary:focus-visible{border-color:var(--gold);background:linear-gradient(180deg, var(--velvet), var(--velvet-deep));color:#fff7eb;transform:translateY(-2px);box-shadow:0 8px 20px #4a253329}.button-secondary{color:var(--gold-dark);background:#f7efdf73}.button-secondary:hover,.button-secondary:focus-visible{background:var(--surface-2);color:var(--velvet);transform:translateY(-2px)}@media (width<=650px){.button{width:100%}}.section-heading{margin-bottom:2rem}.section-heading h2{max-width:700px;color:var(--velvet);letter-spacing:-.025em;margin:0;font-size:clamp(2.4rem,5vw,4rem);line-height:1}.festival-overview .festival-section-header,.festival-overview .festival-section-header h2,.festival-overview h2{width:100%;max-width:none}.section-kicker{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.18em;margin:0 0 .65rem;font-size:.68rem;font-weight:700}.section-heading-split{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}@media (width<=650px){.section-heading{margin-bottom:1.5rem}.section-heading h2{font-size:clamp(2.2rem,11vw,3.25rem)}.section-heading-split{text-align:center;flex-direction:column;align-items:center;gap:.75rem}.section-heading-split>div{width:100%}.section-heading-split .text-link{margin-top:.25rem}}.text-link{color:var(--velvet);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:.45rem;margin-top:1.5rem;font-size:.68rem;font-weight:700;transition:color .14s,gap .14s;display:inline-flex}.text-link:hover,.text-link:focus-visible{color:var(--gold-dark);gap:.7rem}.roster-preview{border-top:1px solid var(--border);padding:5rem 0}.roster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.roster-card{border:1px solid var(--border);background:radial-gradient(circle at top right, #7a3f530b, transparent 14rem), linear-gradient(180deg, var(--surface), var(--surface-2));box-shadow:var(--shadow-soft), var(--gold-glow);border-radius:2px;transition:transform .15s,border-color .15s,box-shadow .15s;overflow:hidden}.roster-card:hover{border-color:var(--gold-light);box-shadow:var(--shadow), 0 0 12px #e3c06f2e, 0 0 28px #c79a421a;transform:translateY(-3px)}.roster-card-image{aspect-ratio:4/5;background:var(--surface-warm);position:relative;overflow:hidden}.roster-card-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#0d0b128c 100%);position:absolute;inset:0}.roster-card-image img{object-fit:cover;width:100%;height:100%;transition:transform .22s;display:block}.roster-card:hover .roster-card-image img{transform:scale(1.025)}.roster-card-content{padding:1.1rem 1.25rem 1.25rem}.roster-card h3{color:var(--velvet);font-family:var(--font-title);margin:0;font-size:1.55rem;font-weight:700;line-height:1.15}.roster-role{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.12em;margin:0 0 .4rem;font-size:.62rem;font-weight:700}@media (width<=900px){.roster-grid{grid-template-columns:1fr}}@media (width<=650px){.roster-preview{padding:3.5rem 0}.roster-card-content{text-align:center}}.closing{text-align:center;max-width:760px;margin:3rem auto 0;padding:6rem 1rem 2rem}.closing-ornament{color:var(--gold);margin:0 0 1.5rem;font-size:1rem}.closing-kicker{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.18em;margin:0 0 .65rem;font-size:.68rem;font-weight:700}.closing h2{color:var(--velvet-deep);margin:0;font-size:clamp(2.5rem,5vw,4.2rem);line-height:1}@media (width<=900px){.closing{padding-top:5rem}}@media (width<=650px){.closing{margin-top:1rem;padding:4rem .5rem 1rem}.closing h2{font-size:clamp(2.3rem,11vw,3.5rem)}}.site-footer{border-top:1px solid var(--gold-dark);background:linear-gradient(180deg, var(--velvet-deep), #321923);position:relative;box-shadow:0 -8px 24px #0003,0 0 18px #c79a420d}.site-footer:before{content:"";background:linear-gradient(90deg, transparent, var(--gold-light), transparent);width:min(260px,40%);height:1px;position:absolute;top:-1px;left:50%;transform:translate(-50%);box-shadow:0 0 10px #e3c06f29}.site-footer-inner{width:min(100% - 2rem, var(--max-width));justify-content:space-between;align-items:center;gap:2rem;margin:0 auto;padding:2rem 0;display:flex}.site-footer-brand{color:var(--gold-light);font-family:var(--font-display);letter-spacing:.18em;margin:0;font-size:.75rem;font-weight:700}.site-footer-text{color:#e9ddd0;margin:0;font-size:.9rem;font-style:normal}.site-footer-links{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;justify-content:center;align-items:center;gap:.75rem;margin:.5rem 0;font-size:.7rem;display:flex}.site-footer-links a{color:var(--gold-light);transition:color .14s}.site-footer-links a:hover,.site-footer-links a:focus-visible{color:#fff4dc}.site-footer-links span{color:var(--gold-dark);font-size:.55rem}@media (width<=650px){.site-footer-inner{width:min(100% - 1.25rem, var(--max-width));text-align:center;flex-direction:column;align-items:center;gap:.4rem;padding:1.6rem 0}.site-footer-links{flex-wrap:wrap;gap:.5rem .7rem;font-size:.62rem;line-height:1.6}}.roster-page{width:min(100% - 2rem, var(--max-width));margin:0 auto;padding:4rem 0 5rem}.roster-header{max-width:760px;margin-bottom:2.5rem}.roster-header h1{color:var(--velvet);letter-spacing:-.025em;margin:.25rem 0 1rem;font-size:clamp(2.8rem,5vw,4.5rem);line-height:1}.roster-header>p:last-child{color:var(--text-soft);margin:0;font-size:1.05rem;line-height:1.8}.roster-page-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.25rem;display:grid}.roster-person-card{border:1px solid var(--border);background:radial-gradient(circle at top right, #7a3f530b, transparent 14rem), linear-gradient(180deg, var(--surface), var(--surface-2));box-shadow:var(--shadow-soft), var(--gold-glow);border-radius:2px;transition:transform .15s,border-color .15s,box-shadow .15s;overflow:hidden}.roster-person-card:hover{border-color:var(--gold-light);box-shadow:var(--shadow), 0 0 12px #e3c06f2e, 0 0 28px #c79a421a;transform:translateY(-3px)}.roster-person-image{aspect-ratio:4/5;background:var(--surface-warm);position:relative;overflow:hidden}.roster-person-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#0d0b129e 100%);position:absolute;inset:0}.roster-person-image img{object-fit:cover;width:100%;height:100%;display:block}.roster-person-badges{z-index:2;flex-wrap:wrap;gap:.3rem;display:flex;position:absolute;bottom:.65rem;left:.65rem}.roster-species,.roster-affiliation{border:1px solid var(--badge-color);background:var(--badge-bg);color:var(--badge-color);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.07em;box-shadow:0 0 8px var(--badge-glow);backdrop-filter:blur(6px);border-radius:2px;padding:.24rem .5rem;font-size:.55rem;font-weight:700;line-height:1}.roster-person-card[data-species=Riverborne] .roster-species{--badge-color:#78a4c7;--badge-bg:#1e2f42eb;--badge-glow:#78a4c71f}.roster-person-card[data-species=Teraborne] .roster-species{--badge-color:#a96d78;--badge-bg:#48232beb;--badge-glow:#a96d781f}.roster-person-card[data-species=Aetherborne] .roster-species{--badge-color:#b7b2bc;--badge-bg:#1b1a1ff0;--badge-glow:#b7b2bc1a}.roster-person-card[data-species=Voidborne] .roster-species{--badge-color:#d1ae62;--badge-bg:#362246f0;--badge-glow:#9c68be24}.roster-affiliation[data-affiliation=High\ District]{--badge-color:#d6b25d;--badge-bg:#3e2f16eb;--badge-glow:#d6b25d1f}.roster-affiliation[data-affiliation=Black\ District]{--badge-color:#a98ac1;--badge-bg:#19141ff0;--badge-glow:#a98ac11f}.roster-affiliation[data-affiliation="Outer City District"]{--badge-color:#9eb9cb;--badge-bg:#37322bf0;--badge-glow:#9eb9cb1a}.roster-affiliation[data-affiliation=Visitor]{--badge-color:#b8b0a3;--badge-bg:#2a272df0;--badge-glow:#b8b0a314}.roster-affiliation[data-affiliation-category=organization]{--badge-color:#8fb58b;--badge-bg:#223426f0;--badge-glow:#8fb58b1a}.roster-person-content{padding:1rem}.roster-person-content h2{color:var(--velvet);margin:0 0 .35rem;font-size:1.2rem;line-height:1.15}.roster-person-details{color:var(--text-soft);margin:0;font-size:.78rem;line-height:1.55}@media (width<=1050px){.roster-page-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.roster-page{width:min(100% - 1.25rem, var(--max-width))}.roster-page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}}@media (width<=650px){.roster-page{padding:3rem 0 4rem}.roster-header{margin-inline:auto;text-align:center;margin-bottom:2rem}.roster-header h1{font-size:clamp(2.5rem,12vw,3.75rem)}}@media (width<=430px){.roster-page-grid{grid-template-columns:1fr}.roster-person-badges{right:.65rem}}.festival-hero{text-align:center;max-width:900px;margin:0 auto;padding:7rem 2rem 5rem}.festival-kicker{color:var(--gold-dark);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.18em;margin:0 0 1rem;font-size:.8rem;font-weight:700}.festival-hero h1{color:var(--velvet);font-family:var(--font-title);letter-spacing:-.035em;margin:0;font-size:clamp(3.8rem,8vw,6.8rem);font-weight:700;line-height:.95}.festival-theme{color:var(--text-soft);font-family:var(--font-display);letter-spacing:.12em;margin:1.5rem 0 0;font-size:.96rem;font-weight:600}@media (width<=900px){.festival-hero{padding-top:5.5rem}}@media (width<=650px){.festival-hero{padding:4.25rem 0 3.5rem}.festival-kicker{font-size:.68rem;line-height:1.6}.festival-hero h1{font-size:clamp(3.2rem,15vw,5rem)}.festival-theme{letter-spacing:.08em;margin-top:1.25rem;font-size:.82rem;line-height:1.7}}.festival-nav{top:var(--header-height);z-index:900;border-bottom:1px solid var(--border);backdrop-filter:blur(12px);background:radial-gradient(circle at 50% 0,#7a3f530d,#0000 22rem),#fbf8f1f0;width:100%;position:sticky;box-shadow:0 8px 20px #48302314}.festival-nav-inner{width:min(100% - 2rem, var(--max-width));flex-wrap:wrap;justify-content:center;gap:.55rem;margin:0 auto;padding:.85rem 0;display:flex}.festival-nav a{border:1px solid var(--border);background:var(--surface);color:var(--text-soft);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;border-radius:2px;justify-content:center;align-items:center;padding:.48rem .8rem;font-size:.62rem;font-weight:700;line-height:1;text-decoration:none;transition:transform .15s,border-color .15s,color .15s,background .15s,box-shadow .15s;display:inline-flex;box-shadow:0 0 8px #c79a420a}.festival-nav a:hover,.festival-nav a:focus-visible{border-color:var(--gold);background:linear-gradient(180deg, var(--velvet), var(--velvet-deep));color:#fff7eb;outline:none;transform:translateY(-1px);box-shadow:0 0 12px #e3c06f1a}@media (width<=650px){.festival-nav{margin-bottom:0;position:static}.festival-nav-inner{width:min(100% - 1.25rem, var(--max-width));gap:.45rem;padding:.7rem 0}.festival-nav a{text-align:center;flex:calc(50% - .45rem);min-width:0;padding:.55rem .5rem;font-size:.58rem}}@media (width<=430px){.festival-nav a{flex-basis:100%}}.festival-section-kicker{border-left:3px solid var(--gold);color:var(--velvet-deep);font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;padding:.2rem .55rem;font-size:.7rem;font-weight:700;display:inline-block}.festival-section{scroll-margin-top:calc(var(--header-height) + 5.5rem)}.festival-section-header{max-width:780px;margin-bottom:1.5rem}.festival-section-header h2{color:var(--velvet);font-family:var(--font-title);letter-spacing:-.025em;margin:0;font-size:clamp(2.8rem,5vw,4.5rem);font-weight:700;line-height:1}.festival-section-content{width:100%;max-width:none;color:var(--text-soft);font-size:1.04rem;line-height:1.85}.festival-section-content p{margin:0}.festival-section-content p+p{margin-top:1.25rem}@media (width<=650px){.festival-section{margin-top:3.25rem}.festival-overview,.festival-phase{margin-bottom:3.25rem}.festival-section-header{margin-inline:auto;text-align:center;margin-bottom:1.25rem}.festival-section-header h2{font-size:clamp(2.35rem,11vw,3.5rem)}.festival-section-content{font-size:.98rem;line-height:1.75}}@media (width<=430px){.festival-section-header h2{font-size:clamp(2.15rem,12vw,3rem)}}.festival-section{margin-top:4rem}.festival-overview,.festival-phase{margin-bottom:4rem}.festival-phase:last-of-type{margin-bottom:0}.festival-phase-header{grid-template-columns:105px 1fr;align-items:end;column-gap:1.8rem;width:100%;display:grid}.festival-phase-number{width:100%;color:var(--gold-dark);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;text-align:right;opacity:.72;font-size:clamp(3.4rem,6vw,5.8rem);font-weight:700;line-height:.85}.festival-phase-heading{min-width:0}.festival-phase-heading .festival-section-kicker{margin-bottom:.35rem}.festival-phase-heading h2{margin:0}@media (width<=650px){.festival-phase-header{text-align:center;grid-template-columns:1fr;justify-items:center;row-gap:.45rem}.festival-phase-number{text-align:center;width:auto;font-size:clamp(2.8rem,13vw,4rem);line-height:.9}.festival-phase-heading{text-align:center;width:100%}.festival-section-kicker{letter-spacing:.14em;padding-left:.45rem;font-size:.62rem}}.festival-card-stripe{background:repeating-linear-gradient(90deg, var(--velvet-deep) 0 28px, var(--gold) 28px 32px, var(--velvet) 32px 60px, var(--gold) 60px 64px);pointer-events:none;height:4px;position:absolute;top:-5px;left:-2px;right:-2px}.festival-content-card{border:2px solid var(--velvet-deep);color:var(--text);background:linear-gradient(#ffffff47,#fff0),#f6ead4;border-radius:2px;padding:2rem 2.2rem;position:relative;box-shadow:0 10px 24px #4a25331a,inset 0 0 0 3px #7a3f530e,inset 0 0 0 4px #b9872f14}.festival-content-card:before,.festival-content-card:after{content:"";pointer-events:none;width:26px;height:26px;position:absolute}.festival-content-card:before{border-top:2px solid var(--gold);border-left:2px solid var(--gold);top:8px;left:8px}.festival-content-card:after{border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);bottom:8px;right:8px}.festival-content-card p{color:#3b3033}.festival-content-card p+p{margin-top:1.25rem}@media (width<=650px){.festival-content-card{padding:1.65rem 1.35rem}.festival-card-stripe{top:-5px}}@media (width<=430px){.festival-content-card{padding:1.5rem 1.1rem}}.golden-divider{background:linear-gradient(90deg,#0000 0%,#7a3f532e 18%,#7a3f536b 50%,#7a3f532e 82%,#0000 100%);width:100%;height:1px;margin:4.5rem 0;position:relative}.golden-divider:not(.has-ornament):before{content:"";background:var(--gold);width:18px;height:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.golden-divider.has-ornament{background:linear-gradient(90deg, transparent 0%, var(--gold-dark) 18%, var(--gold-dark) 48%, transparent 48%, transparent 52%, var(--gold-dark) 52%, var(--gold-dark) 82%, transparent 100%)}.golden-divider.has-ornament:before{content:"✦";z-index:2;color:var(--gold-dark);pointer-events:none;font-size:.68rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (width<=650px){.golden-divider{margin:3.25rem 0}}.festival-victors{padding-bottom:3rem}.festival-victors-content{max-width:900px;color:var(--text-soft);line-height:1.8}.victor-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:2rem;display:grid}.victor-card{color:var(--velvet-deep);background:linear-gradient(145deg,#fff7dcf5 0%,#e1c17cf0 28%,#bc9144f5 58%,#eed293f5 100%);border:1px solid #80591994;border-radius:2px;padding:1.5rem 1.6rem;position:relative;overflow:hidden;box-shadow:0 14px 28px #48302329,inset 0 1px #ffffff8c,inset 0 -1px #704b1938}.victor-card:before{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 0%,#ffffff29 32%,#ffffff61 46%,#ffffff14 58%,#0000 72%);position:absolute;inset:0}.victor-card:after{content:"";pointer-events:none;border:1px solid #67451457;position:absolute;inset:7px}.victor-year{color:var(--gold-dark);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.14em;margin:0 0 .45rem;font-size:.65rem;font-weight:700}.victor-card h3{color:var(--velvet-deep);margin:0 0 .35rem}.victor-card p{color:#4a3426;margin:0}.victor-title{color:var(--text-soft);margin:.45rem 0 0;font-size:.9rem}@media (width<=650px){.victor-grid{grid-template-columns:1fr;gap:.85rem}}.cosmic-page{width:100%;max-width:none;margin:0;padding:0}.cosmic-teaser{width:100%;min-height:calc(100svh - var(--header-height));background:url(/images/echo/entity.jpg) 50%/cover no-repeat;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.cosmic-teaser:before{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle,#0e071733 0%,#08051066 55%,#030208ad 100%);position:absolute;inset:0}.cosmic-message{z-index:2;text-align:center;width:min(90%,900px);margin:0 auto;position:relative}.cosmic-language{color:#e6c7ff;font-family:var(--font-title);letter-spacing:.12em;text-shadow:-2px 0 #7e3ebdb3,2px 1px #d6ac5f47,0 0 10px #b168ffa6,0 0 28px #5f2e9180;margin:0;font-size:clamp(2.4rem,5vw,4.8rem);font-weight:600;line-height:1;position:relative}.cosmic-language:before,.cosmic-language:after{content:attr(data-text);pointer-events:none;opacity:.22;position:absolute;inset:0}.cosmic-language:before{color:#9c5ee8;filter:blur(.6px);transform:translate(-4px,2px)skew(-3deg)}.cosmic-language:after{color:#d6ac5f;filter:blur(.8px);transform:translate(3px,-2px)skew(2deg)}.cosmic-language{animation:7s steps(2,end) infinite cosmic-shift}@media (width<=650px){.cosmic-teaser{background-position:50%;min-height:100svh}.cosmic-message{width:min(88%,700px)}.cosmic-language{letter-spacing:.06em;white-space:nowrap;font-size:clamp(1.55rem,7.5vw,2.5rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cosmic-language{animation:none}.roster-card,.roster-card-image img,.roster-person-card,.button,.text-link,.festival-nav a{transition:none}}.disclosure-content{flex-direction:column;display:flex}.disclosure-entry{padding:2rem 0}.disclosure-entry+.disclosure-entry{border-top:1px solid #7d582b38}.disclosure-entry:first-child{padding-top:0}.disclosure-entry:last-child{padding-bottom:0}.disclosure-entry h2{margin:.65rem 0 1rem}.disclosure-entry p{margin:0}.disclosure-entry p+p{margin-top:.8rem}.maintenance-page{min-height:100vh;color:var(--text);background:radial-gradient(circle at 50% -8%,#b9872f29,#0000 30rem),radial-gradient(at 0 45%,#7a3f5312,#0000 34rem),linear-gradient(#f8efdf 0%,#f3e7d1 55%,#ead9bd 100%);place-items:center;padding:2rem;display:grid}.maintenance-card{border:1px solid var(--gold-dark);background:radial-gradient(circle at top right, #7a3f530d, transparent 16rem), linear-gradient(180deg, var(--surface), var(--surface-2));width:min(100%,720px);box-shadow:var(--shadow), var(--gold-glow);text-align:center;border-radius:2px;padding:clamp(2.25rem,6vw,4rem);position:relative;overflow:hidden}.maintenance-card:before{content:"";background:linear-gradient(90deg, var(--velvet), var(--gold-light), var(--velvet));height:3px;position:absolute;inset:0 0 auto}.maintenance-kicker{color:var(--gold-dark);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.2em;margin:0 0 1rem;font-size:.7rem;font-weight:700}.maintenance-card h1{color:var(--velvet-deep);font-family:var(--font-title);letter-spacing:-.035em;margin:0;font-size:clamp(2.8rem,7vw,4.9rem);font-weight:700;line-height:.98}.maintenance-copy{max-width:570px;color:var(--text-soft);margin:1.35rem auto 0;font-size:1rem;line-height:1.8}.maintenance-status{border:1px solid var(--gold-dark);color:var(--gold-dark);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;background:#f7efdf8c;border-radius:2px;align-items:center;gap:.6rem;margin-top:2rem;padding:.55rem .85rem;font-size:.64rem;font-weight:700;display:inline-flex}.maintenance-status-dot{background:var(--gold);border-radius:50%;width:.55rem;height:.55rem;box-shadow:0 0 10px #b9872f80}
