/* Theatre: compact type scale and the scenario builder. */
.th{max-width:var(--wrap);margin:0 auto;padding:clamp(16px,3vw,32px) var(--gut) var(--sec)}
.th-hero{margin:0 0 var(--sec-s);padding:0;max-width:56em}
.th-hero .eyebrow{font-size:11.5px;letter-spacing:.16em;margin:0 0 8px}
.th-hero h1{font-size:clamp(28px,3.6vw,42px)!important;line-height:1.1;max-width:none;letter-spacing:-.04em;margin:0 0 12px}
.th-hero .lead{font-size:clamp(15px,1.3vw,17px);line-height:1.65;max-width:46em;margin:0;color:#aebbd3}
.th-sub{font-size:clamp(17px,1.8vw,20px);letter-spacing:-.02em;margin:var(--sec-s) 0 12px}
/* builder */
.th-build{padding:clamp(16px,2.4vw,26px);border-radius:20px;border:1px solid rgba(255,255,255,.11);background:linear-gradient(180deg,rgba(24,34,62,.5),rgba(10,16,32,.45));margin:0 0 var(--sec-s)}
.bd-head h2{font-size:clamp(18px,2vw,22px);letter-spacing:-.025em;margin:0 0 4px}.bd-head p{margin:0 0 16px;font-size:14.5px;color:#9fb0cc;max-width:50em}
.bd-form label{display:block;font:700 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#8fa1c0}
.bd-form textarea,.bd-form select,.bd-form input{display:block;width:100%;margin-top:7px;padding:10px 12px;border-radius:11px;border:1px solid rgba(255,255,255,.15);background:rgba(4,8,18,.55);color:#fff;font:400 15px/1.45 var(--sans);text-transform:none;letter-spacing:0}
.bd-form textarea{resize:vertical;min-height:74px}
.bd-form select,.bd-form input{height:42px;padding-block:0}
.bd-form :is(textarea,select,input):focus{outline:2px solid #52ffc6;outline-offset:1px}
.bd-ex{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:9px;font-size:12.5px;color:#7f90ad}
.bd-ex button{padding:5px 11px;border-radius:99px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#cfd9ec;font:600 12.5px var(--sans);cursor:pointer}.bd-ex button:hover{border-color:#52ffc6;color:#fff}
.bd-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}
.bd-act{display:flex;gap:14px 20px;align-items:center;flex-wrap:wrap;margin-top:16px}
.bd-act .primary{height:44px;padding:0 22px;border-radius:12px;border:0;background:linear-gradient(96deg,#52ffc6,#36e4ff);color:#03150f;font:700 15px var(--sans);cursor:pointer}
.bd-read{margin:0;font-size:13px;color:#8fa1c0;flex:1 1 280px}
@media(max-width:900px){.bd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bd-grid label:first-child{grid-column:1/-1}}
@media(max-width:480px){.bd-grid{grid-template-columns:minmax(0,1fr)}.bd-act .primary{width:100%}}
/* stage: smaller, calmer type */
.th-stage{border-radius:20px}
.th-head h2{font-size:clamp(20px,2.4vw,28px)!important;max-width:none;letter-spacing:-.03em;line-height:1.2}
.th-who{font-size:12.5px}
.th-clock b{font-size:clamp(26px,3.6vw,40px)!important}
.th-clock small{font-size:11px}.th-mid{font-size:11.5px}
.say{font-size:clamp(17px,1.9vw,22px)!important;max-width:44ch;margin:6px 0 14px}
.world p{font-size:clamp(14.5px,1.3vw,16px)!important;line-height:1.55}.world .cust{font-size:14px}.world h3{font-size:11px}
.ask p{font-size:clamp(15px,1.6vw,18px)!important}
.poster{padding:14px}.poster b{font-size:17px!important}.poster span{font-size:13px}.poster small{font-size:10.5px}
.sctab td{font-size:clamp(15px,1.7vw,19px)!important}.sctab th{font-size:13px}
.meter small{font-size:10.5px}.mrow b{font-size:13.5px}
.th-bar button,.th-ctl button,.th-lens button{font-size:13.5px}
.th-score h2,.th-pr h2{font-size:clamp(17px,1.8vw,20px);letter-spacing:-.02em}
.th-posters{gap:12px}
body.present .th-build,body.present .th-sub{display:none}
