:root{--paper:#f3f0e7;--ink:#2d331b;--muted:#737662;--line:#d2d1c3;--gold:#be7c20;--serif:Didot,"Bodoni MT","Times New Roman",serif;--sans:"Avenir Next",Avenir,"Helvetica Neue",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:13px}button,input{font:inherit}button{color:inherit;cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button:disabled{cursor:wait}button{touch-action:manipulation}[hidden]{display:none!important}.masthead{height:78px;margin:0 4%;border-bottom:1px solid #858976;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.masthead>div{display:flex;align-items:center;gap:23px}.rca{font-family:var(--serif);font-size:29px;letter-spacing:-2px}.separator{height:20px;width:1px;background:#999d8d}.project{text-transform:uppercase;letter-spacing:3.5px;font-size:11px}.edition{font-family:var(--serif);font-size:14px;letter-spacing:1px}main{position:relative;min-height:700px;height:calc(100svh - 163px);max-height:1100px}.intro{position:absolute;top:34px;left:4%;z-index:1;pointer-events:none}h1{margin:0;font:normal clamp(68px,7.4vw,128px)/.87 var(--serif);letter-spacing:-5.5px}h1 em{font-weight:400}.subtitle{font:normal 23px/1.3 var(--serif);margin:24px 0 0;letter-spacing:-.3px}#stage{position:absolute;inset:-10px 0 0 27%;overflow:hidden}#stage canvas{width:100%;height:100%;display:block}#render-error{position:absolute;z-index:3;inset:25% 12%;padding:30px;background:var(--paper);border:1px solid var(--line);font-size:16px;line-height:1.7}.controls{position:absolute;z-index:2;left:4%;top:355px;width:255px}.device-row{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:54px}.device-label{display:flex;gap:14px;align-items:center}.device-label small{display:block;margin-top:5px;color:var(--muted);font-size:10px;letter-spacing:.2px;max-width:190px}.device-icon{font-size:22px;width:23px;text-align:center}.mic-icon{font-size:29px}.switch{border:0;width:41px;height:23px;border-radius:20px;background:#c8c9bd;padding:3px;flex-shrink:0;transition:background .2s}.switch span{display:block;background:#f8f6ef;width:17px;height:17px;border-radius:50%;box-shadow:0 1px 3px #0002;transition:transform .2s}.switch[aria-checked=true]{background:var(--ink)}.switch[aria-checked=true] span{transform:translateX(18px)}.switch[data-loading=true]{background:#b69458}.sound-meter{height:2px;background:#d8d7ca;margin:9px 0 20px;overflow:hidden}.sound-meter div{height:100%;background:var(--gold);width:0;transition:width .08s}.message{font-size:11px;line-height:1.55;padding:8px 0 14px;color:#825320}.simulation{border-top:1px solid var(--line);padding-top:19px}.simulation-label{display:flex;align-items:center;justify-content:space-between;font:16px var(--serif);cursor:pointer;position:relative}.simulation-label input{position:absolute;right:0;opacity:0;width:22px;height:22px}.mini-check{border:1px solid #a8ab97;width:15px;height:15px;display:grid;place-items:center}.simulation-label input:checked+.mini-check{background:var(--ink);border-color:var(--ink)}.simulation-label input:checked+.mini-check:after{content:'✓';color:var(--paper);font-size:11px}.simulation-label input:focus-visible+.mini-check{outline:2px solid var(--gold);outline-offset:4px}.slider-label{display:flex;justify-content:space-between;margin-top:19px;font-size:11px}.slider-label output{font-size:10px;color:var(--muted)}input[type=range]{appearance:none;width:100%;height:2px;background:#c9ccbc;display:block;margin:14px 0 23px;accent-color:var(--ink);cursor:pointer}input[type=range]::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border-radius:50%;background:var(--ink)}input[type=range]::-moz-range-thumb{border:0;width:13px;height:13px;border-radius:50%;background:var(--ink)}.speak{width:100%;border:1px solid var(--ink);border-radius:30px;padding:12px 20px;background:var(--ink);color:var(--paper);font:16px var(--serif);display:flex;justify-content:space-between;user-select:none;-webkit-user-select:none;touch-action:none;transition:background .2s,transform .2s}.speak:hover{background:#49532d}.speak[aria-pressed=true]{background:#a96b1e;transform:scale(.98)}.privacy{font-size:9px;line-height:1.7;color:var(--muted);margin:16px 0 0}.plant-caption{position:absolute;bottom:26px;left:59%;transform:translateX(-20%);display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.4px;white-space:nowrap;color:var(--muted)}.state-dot{width:5px;height:5px;background:#92986e;border-radius:50%}#source-state{border-left:1px solid var(--line);padding-left:10px;font-size:9px;text-transform:uppercase;letter-spacing:1.1px}footer{margin:0 4%;height:85px;border-top:1px solid #858976;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:3}footer p{font:19px var(--serif);letter-spacing:1.5px}.exhibition{border:1px solid #737962;border-radius:30px;background:transparent;display:flex;gap:13px;align-items:center;padding:12px 18px;font:13px var(--serif);letter-spacing:.5px}.exhibition>span{font-size:21px;line-height:15px}kbd{font:9px var(--sans);color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:2px 4px}.mobile-break{display:none}.camera-preview{position:absolute;right:4%;top:20px;width:145px;border:1px solid var(--line);background:var(--paper);z-index:3}.camera-preview video{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transform:scaleX(-1)}.camera-preview span{display:block;padding:7px;font-size:10px}.exhibiting{overflow:hidden}.exhibiting .masthead,.exhibiting .intro,.exhibiting .controls,.exhibiting footer,.exhibiting .camera-preview,.exhibiting .plant-caption{display:none!important}.exhibiting main{height:100svh;min-height:0;max-height:none}.exhibiting #stage{inset:0}.exhibiting #exit-exhibition{position:fixed;right:25px;top:25px;background:#f3f0e7c9;border:1px solid var(--line);border-radius:24px;padding:10px 16px;opacity:.25;transition:opacity .2s;z-index:10}.exhibiting #exit-exhibition:hover,.exhibiting #exit-exhibition:focus-visible{opacity:1}#exhibition-hint{position:fixed;bottom:18px;width:100%;text-align:center;font:18px var(--serif);letter-spacing:1.5px;pointer-events:none}.exhibiting.cursor-away{cursor:none}.exhibiting.cursor-away #exit-exhibition{opacity:0}noscript{position:fixed;inset:40%;z-index:20;background:var(--paper);padding:20px}
@media(min-width:1500px){.controls{top:395px;width:275px}.subtitle{font-size:27px}}
@media(max-height:850px) and (min-width:761px){main{min-height:610px}.intro{top:25px}h1{font-size:85px}.subtitle{font-size:21px;margin-top:18px}.controls{top:275px;width:235px}.device-row{min-height:48px}.simulation{padding-top:14px}.slider-label{margin-top:14px}.privacy{margin-top:12px}.sound-meter{margin-bottom:14px}input[type=range]{margin-bottom:18px}}
@media(max-width:760px){.masthead{height:64px}.masthead>div{gap:12px}.rca{font-size:25px}.project{font-size:9px;letter-spacing:2px}.edition{display:none}main{height:auto;min-height:0;padding-top:420px;max-height:none}.intro{top:27px}h1{font-size:61px;letter-spacing:-3px}.subtitle{font-size:17px;margin-top:14px}#stage{inset:48px -16% auto 12%;height:385px;pointer-events:none}.controls{position:relative;top:auto;left:auto;width:auto;margin:0 6%;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.device-row{min-width:0;align-items:flex-start}.device-label{gap:8px}.device-label small{font-size:9px}.device-icon{display:none}.switch{width:36px;height:21px}.switch span{width:15px;height:15px}.switch[aria-checked=true] span{transform:translateX(15px)}.sound-meter,.simulation,.message,.privacy{grid-column:1/-1}.sound-meter{margin-top:3px;margin-bottom:14px}.simulation{padding-top:14px}.simulation-controls{width:100%}.privacy{margin-bottom:20px}.plant-caption{top:390px;bottom:auto;left:50%;transform:translateX(-50%);font-size:10px}.camera-preview{top:252px;right:4%;width:90px}.camera-preview span{font-size:8px;padding:4px}footer{height:95px;gap:12px}footer p{font-size:14px;line-height:1.5;letter-spacing:.5px}.mobile-break{display:block}.exhibition{font-size:11px;padding:10px 12px;gap:8px}.exhibition kbd{display:none}.exhibiting main{padding:0}.exhibiting #stage{inset:0;height:100%}#exhibition-hint{font-size:13px!important}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Poster typography — based on the user's bold condensed reference. */
@font-face{font-family:Anton;src:url('assets/Anton-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--ink:#1d2114;--serif:Anton,Impact,'Arial Narrow',sans-serif}
.rca{font-family:Anton,sans-serif;font-size:26px;letter-spacing:-1px}
h1{font-family:Anton,Impact,sans-serif;font-size:clamp(95px,10.5vw,168px);font-weight:400;line-height:.99;letter-spacing:-3px;transform:scaleX(.88);transform-origin:left top;white-space:nowrap}
.intro{top:30px}.subtitle{font:600 15px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.6px;margin-top:23px}
.controls{top:390px}.simulation-label{font:600 13px var(--sans)}.speak{font:600 12px var(--sans);text-transform:uppercase;letter-spacing:1px;border-radius:0}.exhibition{font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.7px;border-radius:0}.edition{font:11px var(--sans);letter-spacing:.8px}footer p{font:26px/1.05 Anton,sans-serif;letter-spacing:0;text-transform:uppercase}#exhibition-hint{font:22px Anton,sans-serif;text-transform:uppercase;letter-spacing:.2px}
@media(min-width:1500px){.controls{top:430px}}
@media(max-height:850px) and (min-width:761px){h1{font-size:111px}.controls{top:310px}.subtitle{font-size:12px;margin-top:16px}main{min-height:660px}.intro{top:24px}}
@media(max-width:760px){h1{font-size:clamp(70px,18.2vw,125px);letter-spacing:-1.8px;line-height:1;transform:scaleX(.95)}.intro{top:24px}.subtitle{font-size:11px;line-height:1.5;margin-top:16px}#stage{inset:193px -10% auto -10%;height:390px}main{padding-top:590px}.controls{top:auto}.plant-caption{top:558px}footer p{font-size:18px;line-height:1.2;max-width:57%}.camera-preview{top:385px}.exhibition{font-size:9px}.exhibiting #stage{inset:0;height:100%}}
#mic-settings{margin:-8px 0 18px;grid-column:1/-1}#mic-settings .slider-label{margin-top:0}#mic-settings input{margin-bottom:0}.sound-meter{height:4px}.sound-meter div{background:#aa6a0e}
@media(min-width:761px){main{min-height:840px}.exhibiting main{min-height:0}}
@media(max-height:850px) and (min-width:761px){main{min-height:760px}.exhibiting main{min-height:0}}
html,body{overflow-x:clip}
.masthead{height:96px;gap:24px}
.header-author{font:800 28px/1.15 var(--sans);letter-spacing:-.7px;white-space:nowrap}
.header-email{font:800 24px/1.2 var(--sans);letter-spacing:-.4px;color:var(--ink);text-decoration:none;text-underline-offset:5px;white-space:nowrap}
.header-email:hover{text-decoration:underline}.header-email:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
@media(max-width:760px){.masthead{height:110px;display:grid;grid-template-columns:1fr;align-content:center;justify-items:start;gap:9px}.masthead>div{gap:17px}.header-author{font-size:25px}.header-email{font-size:20px;letter-spacing:-.2px}.masthead .rca{font-size:27px}}
