.scene-label{text-transform:uppercase;letter-spacing:.16em;color:var(--secondary);font-size:.72rem;font-weight:700}.ensemble-hero{text-align:center;max-width:930px;margin:auto;padding:3.33rem 1.5rem 3.6rem}.ensemble-hero h1{letter-spacing:-.04em;margin:1.3rem 0;font-family:Georgia,serif;font-size:clamp(3.5rem,7vw,6.2rem);font-weight:400}.ensemble-lead{letter-spacing:-.025em;margin:1.2rem 0;font-family:Georgia,serif;font-size:clamp(2.4rem,4.6vw,4rem);line-height:1.12}.ensemble-lead em{color:var(--accent);font-weight:400}.hero-summary{color:#c9c5d1;max-width:700px;margin:1.5rem auto;line-height:1.8}.ensemble-hero .primary-cta{color:#150c24;background:#ad8be9;margin-top:.7rem}.route-roster,.opening-image,.knowledge-map,.cast-planner,.world-spread,.account-margin,.ensemble-questions{max-width:1180px;margin:auto}.route-roster{grid-template-columns:repeat(3,1fr);gap:2rem;padding:0 1.5rem 2.25rem;display:grid}.route-roster article{border-top:2px solid #8564b8;padding-top:1.3rem}.route-roster article>span{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:.7rem}.route-roster h2{font-family:Georgia,serif;font-size:1.65rem;font-weight:400;line-height:1.2}.route-roster p{color:#c8c2d1;font-size:.9rem;line-height:1.8}.opening-image{padding:0 1.5rem}.opening-image .portrait{background:#1c1c1c;border-radius:140px 0 0;height:540px}.opening-image p{text-align:right;color:#b7abbf;margin-top:1rem;font-size:.76rem;line-height:1.7}.knowledge-map{padding:3.6rem 1.5rem}.knowledge-map h2,.cast-planner h2,.world-spread h2,.account-margin h2,.ensemble-questions h2{letter-spacing:-.025em;font-family:Georgia,serif;font-size:clamp(2rem,3.5vw,3.2rem);font-weight:400;line-height:1.17}.cast-cards{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;display:grid}.cast-cards article{background:#1c1c1c;border:1px solid #51445f;border-radius:3px;padding:1.6rem;position:relative}.cast-letter{width:42px;height:42px;color:var(--accent);border:1px solid #a783dc;border-radius:50%;justify-content:center;align-items:center;margin-bottom:1rem;font:1.7rem Georgia,serif;display:flex}.cast-cards h3{font-size:1.1rem;line-height:1.5}.cast-cards p{color:#c9c0d3;font-size:.83rem;line-height:1.7}.map-note{color:#bcb0c8;max-width:900px;margin-top:1.5rem;font-size:.83rem;line-height:1.8}.cast-planner{border-top:2px solid var(--accent);background:#17141d;border-bottom:1px solid #5f4a76;padding:2.43rem}.cast-planner header p{color:#c3b6ce;max-width:800px;line-height:1.8}.cast-planner label{font-size:.77rem;font-weight:700;display:block}.cast-planner input,.cast-planner textarea{box-sizing:border-box;color:#f8f5fc;width:100%;font:inherit;resize:vertical;background:#08070c;border:1px solid #7f6997;margin:.6rem 0 1rem;padding:.8rem;font-weight:400;line-height:1.65;display:block}.cast-planner input:focus-visible,.cast-planner textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.planner-cast{grid-template-columns:repeat(3,1fr);gap:1.2rem;margin:1.5rem 0;display:grid}.planner-cast fieldset{border:1px solid #5e4d6f;min-width:0;padding:1.2rem}.planner-cast legend{color:var(--accent);padding:0 .6rem;font:.86rem Georgia,serif}.planner-cast textarea{min-height:140px}.cast-planner button{background:var(--accent);font:inherit;color:#1b0c2c;cursor:pointer;border:0;padding:.9rem 1.2rem;font-size:.85rem;font-weight:800}#cast-feedback{min-height:1.6em;color:var(--secondary);font-size:.8rem;line-height:1.7}.cast-output-label{margin-top:1.8rem}.cast-output-label textarea{font-family:monospace;font-size:.8rem}.world-spread{grid-template-columns:1.12fr .95fr;align-items:center;gap:4rem;padding:4.5rem 1.5rem;display:grid}.world-spread p,.world-spread li{color:#c7bfce;line-height:1.8}.world-spread ol{padding-left:1.2rem}.world-spread li{margin:1rem 0;font-size:.9rem}.world-spread>.portrait{border:1px solid #77608d;border-radius:0 0 120px;height:610px}.account-margin{border-top:1px solid #695778;padding:2rem 1.5rem 3.6rem}.account-margin>div{grid-template-columns:1fr 1fr;gap:3rem;display:grid}.account-margin p{color:#bfb1ca;line-height:1.8}.ensemble-questions{padding:3.6rem 1.5rem}.ensemble-questions>div{grid-template-columns:1fr 1fr;gap:0 3rem;display:grid}.ensemble-questions details{border-bottom:1px solid #5b476e;padding:1.4rem 0}.ensemble-questions summary{cursor:pointer;font-weight:700;line-height:1.6}.ensemble-questions details p{color:#c5b7d0;font-size:.9rem;line-height:1.8}.source-strip{color:#b5a8c3;max-width:1180px;margin:auto;padding:1.5rem;font-size:.8rem;line-height:1.8}.source-strip a{color:var(--secondary)}@media (width<=900px){.route-roster{gap:1.3rem}.cast-cards{gap:1rem}.cast-cards article{padding:1.2rem}.cast-planner{margin:0 1.5rem;padding:1.6rem}.planner-cast{grid-template-columns:1fr}.planner-cast fieldset{grid-template-columns:1fr 1fr;gap:.5rem 1rem;display:grid}.planner-cast label:last-child{grid-column:1/-1}.planner-cast textarea{min-height:90px}.world-spread{gap:2.5rem}}@media (width<=760px){.ensemble-hero{padding:2rem 1.25rem 2.25rem}.ensemble-hero h1{font-size:4.3rem}.ensemble-lead{font-size:2.65rem}.route-roster{grid-template-columns:1fr;gap:1.2rem;padding:0 1.25rem 2rem}.route-roster h2{margin:.7rem 0}.route-roster p{margin:.5rem 0}.opening-image{padding:0 1.25rem}.opening-image .portrait{border-top-left-radius:90px;height:440px}.opening-image p{text-align:left}.knowledge-map{padding:2.25rem 1.25rem}.cast-cards{grid-template-columns:1fr}.cast-planner{margin:0 1.25rem;padding:1.3rem}.planner-cast fieldset{display:block}.world-spread{flex-direction:column;align-items:stretch;padding:2.7rem 1.25rem;display:flex}.world-spread>.portrait{height:460px}.account-margin{padding:2rem 1.25rem}.account-margin>div,.ensemble-questions>div{grid-template-columns:1fr;gap:0}.ensemble-questions{padding:2rem 1.25rem}.source-strip{padding:1.25rem}}.cast-summary{color:#c9c2d1;max-width:85ch;font-size:1.05rem;line-height:1.85}.knowledge-map{padding-bottom:2rem}.account-margin>.account-decision-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.8rem}.account-decision-grid article{border-top:2px solid var(--secondary);padding-top:1rem}.account-decision-grid h3{margin:0 0 .8rem;font-size:1.12rem;line-height:1.35}.account-decision-grid p{font-size:.9rem}.account-margin>a{max-width:70ch;line-height:1.6;display:inline-block}@media (width<=900px){.account-margin>.account-decision-grid{grid-template-columns:1fr;gap:1rem}}
