@import url("https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&family=Oswald:wght@700&display=swap");:root{color-scheme:light;--bg:#f4efe4;--paper:#fffdf7;--ink:#000000;--accent:#006b54;--line:#d9cfbf;--font-title:"Oswald","Helvetica Neue",Arial,sans-serif;--font-body:"Merriweather",Georgia,serif}*{box-sizing:border-box}body,html{margin:0;padding:0;background:radial-gradient(circle at 20% 0,#fff7db,var(--bg));color:var(--ink);font-family:var(--font-body)}a{color:var(--accent)}main{min-height:100vh}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(255,253,247,.9);border-bottom:1px solid var(--line)}.site-header-inner{width:min(1120px,95vw);margin:0 auto;padding:.65rem 0;display:flex;justify-content:space-between;align-items:center;gap:.8rem}.site-brand{font-family:var(--font-title);color:var(--accent);text-decoration:none;font-size:1.05rem;letter-spacing:.02em}.site-nav{display:flex;gap:.45rem;flex-wrap:wrap}.site-nav-link{text-decoration:none;color:#fff;background:#155c4b;border-radius:999px;padding:.35rem .75rem;font-size:.88rem}.container{width:min(1120px,95vw);margin:0 auto;padding:2rem 0 4rem}h1,h2,h3{margin-top:0}.card{background:var(--paper);border:1px solid var(--line);border-radius:.75rem;padding:1rem}.form-grid,.grid{display:grid;grid-gap:1rem;gap:1rem}.form-grid{grid-template-columns:1fr}label{display:grid;grid-gap:.4rem;gap:.4rem;font-weight:600}input,select,textarea{width:100%;border:1px solid #c7baa5;border-radius:.45rem;padding:.6rem;font:inherit;background:#fffcf5}textarea{min-height:120px;resize:vertical}.rich-toolbar{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.35rem}.rich-toolbar button{background:#155c4b;color:#fff;border-radius:.35rem;padding:.25rem .5rem;font-size:.85rem}.rich-editor{min-height:130px;border:1px solid #c7baa5;border-radius:.45rem;padding:.6rem;background:#fffcf5;font:inherit;outline:none}.rich-editor:empty:before{content:attr(data-placeholder);color:#8f8678}.button-link,button{display:inline-block;border:0;border-radius:999px;padding:.6rem 1rem;background:var(--accent);color:#ffffff;text-decoration:none;cursor:pointer}.section-title{border-bottom:2px solid #c9c3b2;padding-bottom:.15rem;margin-top:0;margin-bottom:.45rem}.playbill-title{color:var(--accent);font-family:var(--font-title);font-weight:700;font-size:14pt;line-height:1.15;text-transform:uppercase;letter-spacing:.02em}.page-body{color:var(--ink);font-family:var(--font-body);font-weight:400;font-size:10pt;line-height:1.45}.rich-render p{margin:0 0 .55rem}.rich-render ol,.rich-render ul{margin:.3rem 0 .55rem 1.15rem;padding:0}.bio-name{color:var(--accent);font-weight:700;font-size:11pt}.bio-name,.bio-role{font-family:var(--font-body)}.bio-role{color:#1d1d1d;font-size:10pt;margin-bottom:.3rem}.booklet-sheets,.sequence-view{display:grid;grid-gap:1rem;gap:1rem}.sheet{border:1px dashed #baa;border-radius:.5rem;padding:.5rem;background:#fff}.sheet-meta{font-size:.9rem;margin-bottom:.5rem}.sheet-grid{display:grid;grid-template-columns:repeat(2,5.5in);justify-content:center;grid-gap:.2in;gap:.2in}.booklet-page{width:5.5in;height:8.5in;overflow:hidden;border:1px solid #bdb5a7;background:#fffef9;padding:.36in;position:relative}.poster-page{padding:0}.full-page-image,.poster-image{width:100%;height:100%;object-fit:cover}.poster-overlay{position:absolute;inset:auto 0 0 0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.78));color:#fff;padding:.35in}.poster-title{margin:0;font-family:var(--font-title);font-size:22pt}.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.12in;gap:.12in}.photo-grid-item{width:100%;height:2.85in;object-fit:cover;border:1px solid #c9c3b2}.bios-list{display:grid;grid-gap:.2in;gap:.2in;max-height:7.4in;overflow:auto}.bio-row{display:grid;grid-template-columns:auto 1fr;grid-gap:.16in;gap:.16in;align-items:start}.headshot{width:1.2in;height:1.2in;border:1px solid #c9c3b2;object-fit:cover}.folio{font-size:.85rem;text-align:center;margin-top:.35rem}@media (max-width:1200px){.sheet-grid{grid-template-columns:1fr;justify-items:center}}@media print{@page{size:11in 8.5in;margin:.25in}.hide-print{display:none!important}body{background:#fff}.container{width:100%;padding:0}.sheet{border:0;padding:0;page-break-after:always;break-after:page}.sheet-grid{gap:.2in}.booklet-page{border:0;background:#fff}.folio{display:none}}