:root{color-scheme:light;--paper:#f5f2e9;--ink:#263e34;--muted:#59655a;--line:#cdd0bf;--wash:#eae8dc;--accent:#8a4d30;font-family:"Optima","Candara","Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--paper);font-size:16px;line-height:1.5}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:4px}button{font:inherit;color:inherit;cursor:pointer;border:1px solid var(--line);background:transparent;min-height:44px;min-width:44px;padding:9px 14px;border-radius:3px}button:hover{background:#e5e6d8}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible{outline:3px solid #9b5d30;outline-offset:4px}button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}[hidden]{display:none!important}.page-width{width:min(1120px,calc(100% - 80px));margin-inline:auto}.skip-link{position:fixed;top:-80px;left:16px;background:var(--paper);z-index:20;padding:12px}.skip-link:focus{top:12px}.masthead{display:flex;justify-content:space-between;align-items:center;min-height:86px;border-bottom:1px solid var(--line)}.monogram{font-family:Georgia,serif;font-size:26px;letter-spacing:-2px;text-decoration:none;display:flex;align-items:center;min-height:44px;min-width:44px}.monogram span{color:var(--accent)}nav{display:flex;gap:26px;align-items:center}nav a{display:inline-flex;min-height:44px;min-width:44px;align-items:center;text-decoration:none;font-size:14px}nav a:hover{text-decoration:underline}.introduction{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:42px 0 40px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:600;margin:0 0 10px}h1,h2,p{margin-top:0}h1{font-family:"Baskerville","Iowan Old Style","Palatino Linotype",Georgia,serif;font-weight:400;font-size:66px;line-height:1.06;letter-spacing:-2.4px;margin-bottom:17px}.bio{font-size:18px;line-height:1.65;margin:0;max-width:610px}.bio a{display:inline-flex;min-height:44px;align-items:center;margin-block:-7px}.family-photo{display:block;text-decoration:none;flex:none;transform:rotate(2deg);padding:7px 7px 0;background:#fdfbf5;box-shadow:0 3px 12px #263e3412}.family-photo img{display:block;width:124px;height:142px;object-fit:cover}.family-photo>span{display:block;font-size:11px;text-align:center;padding:9px 0 10px}.world-heading{display:flex;gap:16px;align-items:baseline;border-top:1px solid var(--line);padding:18px 0 13px}.world-heading h2{font-family:Georgia,serif;font-size:23px;font-weight:400;margin:0}.world-heading p{font-size:14px;color:var(--muted);margin:0}.scene-index{margin-left:auto;font-size:10px;letter-spacing:.13em;color:var(--muted)}.stage{height:440px;position:relative;overflow:hidden;background:#ebe6d8;border:1px solid #d8d1bf;border-radius:3px;isolation:isolate;touch-action:pan-y}.stage canvas{width:100%;height:100%;display:block;touch-action:pan-y;outline:none}.stage-note{position:absolute;bottom:15px;left:20px;font-size:9px;letter-spacing:.16em;color:#52604a;pointer-events:none;margin:0}.world-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#ebe6d8;background-size:cover;background-position:center}.world-fallback p{font-family:Georgia,serif;font-size:25px;line-height:1.5}.world-fallback p+p{font:14px "Optima","Segoe UI",sans-serif;color:var(--muted)}.world-fallback.has-poster p{background:#f5f2e9ed;padding:6px 16px;border-radius:3px}.world-fallback.has-poster p:first-child{display:none}.scene-toolbar{display:flex;gap:8px;padding-top:12px;flex-wrap:wrap}.scene-toolbar button{font-size:14px}.scene-toolbar button:first-child{border-color:var(--ink)}#settings{margin-left:auto;border-color:transparent}#pause{border-color:transparent}.scene-caption{display:flex;gap:20px;justify-content:space-between;margin:12px 0 28px;min-height:22px}.scene-caption p{font-size:13px;margin:0;color:var(--muted)}.scene-caption p:first-child{color:var(--ink)}#scene-help{text-align:right}.toy-handle{position:absolute;left:50%;top:65%;width:44px;height:44px;border-radius:50%;padding:0;background:#f5f2e9e8;border:1px dashed #71432b;color:#71432b;transform:translate(-50%,-50%);touch-action:none;z-index:2;font-size:25px;cursor:grab}.toy-handle:active{cursor:grabbing}.projects{border-top:1px solid var(--ink);scroll-margin-top:20px}.section-label{display:flex;align-items:center;justify-content:space-between;padding:19px 0 15px}.section-label h2{font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin:0;font-weight:600}.section-label>span{color:var(--muted);font-size:13px}.project{display:grid;grid-template-columns:40px 1fr 1fr 25px;align-items:center;gap:12px;min-height:76px;text-decoration:none;border-top:1px solid var(--line)}.project-number{font-size:11px;color:var(--muted)}.project-name{font-family:Georgia,serif;font-size:25px;letter-spacing:-.5px}.project-description{color:var(--muted);font-size:15px}.project-arrow{font-size:23px;transition:transform .15s}.project:hover .project-arrow{transform:translate(3px,-3px)}.project:hover .project-name{text-decoration:underline;text-underline-offset:5px}.project-small .project-name{font-size:21px}footer{display:flex;align-items:center;gap:30px;border-top:1px solid var(--line);margin-top:40px!important;padding:20px 0 28px}footer p{font-size:13px;margin:0}.dedication{margin-left:auto;color:var(--muted);font-family:Georgia,serif;font-style:italic}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:25px;width:min(500px,calc(100% - 28px));max-height:85dvh;box-shadow:0 20px 100px #16291e30}dialog::backdrop{background:#22382e66;backdrop-filter:blur(3px)}dialog h2{font-family:Georgia,serif;font-weight:400;font-size:34px;margin-bottom:10px}dialog p{font-size:15px;color:var(--muted)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.dialog-heading button{border:0;font-size:24px;margin-right:-10px}.dialog-heading .eyebrow{font-size:11px}.roster{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.roster button{text-align:left;display:flex;justify-content:space-between;align-items:center;font-size:15px;min-height:48px}.roster small{font-size:11px}.dialog-note{font-size:12px!important}.no-script{font-size:14px}.enhanced{display:none}.js .enhanced{display:flex}.js .toy-handle{display:block}.js .scene-toolbar:not(.available){display:none}
@media(min-width:1500px){.stage{height:470px}}
.look-closer{position:absolute;right:12px;top:12px;background:#f5f2e9e8;font-size:12px;border-color:#c9c9b8;gap:8px;align-items:center;backdrop-filter:blur(8px)}
.world-fallback.has-poster{background-image:url('/clearing/poster.webp');justify-content:flex-end;padding:18px}.world-fallback.has-poster p{margin:0;font-size:12px}
@media(max-width:700px){.page-width{width:calc(100% - 36px)}.masthead{min-height:63px}.masthead nav{gap:18px}.masthead nav a{font-size:13px}.introduction{padding:25px 0 23px;gap:14px;align-items:flex-start}.eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:8px}h1{font-size:43px;letter-spacing:-1.8px;margin-bottom:10px}.bio{font-size:15px;line-height:1.5;max-width:390px}.family-photo{padding:4px 4px 0;margin-top:8px}.family-photo img{width:66px;height:79px}.family-photo>span{font-size:8px;padding:5px 0}.world-heading{padding:12px 0 10px;gap:12px}.world-heading h2{font-size:20px}.world-heading p{font-size:12px}.scene-index{display:none}.stage{height:270px}.stage-note{font-size:8px;left:12px;bottom:10px}.scene-toolbar{gap:4px;padding-top:8px}.scene-toolbar button{font-size:12px;padding:7px 8px}#settings{margin-left:0}.scene-caption{display:block;margin:8px 0 20px}.scene-caption p{font-size:12px}#scene-help{font-size:11px;margin-top:4px;text-align:left}.section-label{padding:13px 0}.section-label>span{font-size:12px}.project{grid-template-columns:23px 1fr 1.2fr 16px;gap:7px;min-height:67px}.project-name{font-size:22px}.project-description{font-size:12px}.project-arrow{font-size:19px}footer{flex-wrap:wrap;gap:8px 20px;margin-top:24px!important;padding:15px 0 22px}footer nav{margin-left:auto;gap:15px}footer nav a{font-size:12px}.dedication{flex-basis:100%;font-size:12px}.world-fallback p{font-size:20px}}
@media(max-width:360px){.page-width{width:calc(100% - 28px)}h1{font-size:37px}.bio{font-size:14px}.family-photo img{width:51px;height:66px}.family-photo>span{font-size:7px}.stage{height:225px}.scene-toolbar button{font-size:11px;padding-inline:7px}.introduction{padding-block:20px}.world-heading p{font-size:11px}.project-description{font-size:11px}}
@media(max-height:500px) and (orientation:landscape){.stage{height:270px}.introduction{padding:24px 0}.family-photo img{width:80px;height:85px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.project:hover .project-arrow{transform:none}}
@media(max-width:700px){.scene-toolbar button{font-size:14px;padding-inline:9px}.family-photo>span{display:none}.family-photo{padding-bottom:4px}.world-heading p{font-size:13px}.project-description{font-size:13px}.scene-caption p{font-size:13px}#scene-help{font-size:12px}}

/* A real play surface, with named actions instead of unexplained symbols. */
.world-heading{align-items:center;flex-wrap:wrap}.world-heading #look-closer{margin-left:auto;font-size:14px;align-items:center;gap:8px;background:#fffaf0;border-radius:10px}
.stage{height:480px;border-radius:16px;box-shadow:0 10px 28px #263e340c}.stage canvas{touch-action:none}
.camera-controls{position:absolute;top:12px;right:12px;display:flex;gap:2px;padding:4px;border:1px solid #cdd0bf;background:#fffdf4f2;border-radius:14px;box-shadow:0 3px 16px #263e3414}
.camera-controls button{padding:4px;min-width:44px;height:44px;font-size:23px;border:0;border-radius:9px}.camera-controls #zoom-reset{font-size:14px;min-width:58px}.camera-controls button:disabled{opacity:.4;cursor:default}
.scene-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:12px}.scene-toolbar button{border-radius:12px;min-height:48px;font-size:14px}
.scene-toolbar button:nth-child(-n+3){min-height:68px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:10px 14px;background:#fffaf0;border-color:#bdc6b4;text-align:left}
.scene-toolbar strong{font-size:16px;line-height:1.3}.scene-toolbar small{font-size:13px;line-height:1.35;color:#59655a;margin-top:4px}.scene-toolbar button[aria-pressed=true]{background:#263e34;color:#fffaf0}.scene-toolbar button[aria-pressed=true] small{color:#d8e6d6}
#settings,#pause{margin:0;border-color:var(--line)}.scene-toolbar button:active{transform:translateY(1px);filter:brightness(.94)}
.stage-note{bottom:12px;left:12px;right:12px;width:fit-content;max-width:calc(100% - 24px);font-size:12px;letter-spacing:0;background:#fffaf0e8;border:1px solid #cdd0bf;padding:6px 10px;border-radius:8px;color:#354d3c}
.toy-handle{width:64px;height:64px;min-width:64px;background:transparent;border:2px solid #fff8dc;box-shadow:0 0 0 2px #9c481c;border-radius:50%;font-size:12px;overflow:visible}.toy-handle:hover{background:#fff8dc22}.toy-handle span{position:absolute;top:calc(100% + 5px);left:50%;transform:translateX(-50%);white-space:nowrap;padding:3px 8px;background:#fffaf0;color:#633415;border:1px solid #a06c43;border-radius:8px;font-size:12px;font-weight:700;pointer-events:none}
.tap-feedback{position:absolute;width:38px;height:38px;border:3px solid #f9bc56;box-shadow:0 0 0 2px #35543a;border-radius:50%;pointer-events:none;opacity:0}
.world-feedback{position:absolute;top:78px;left:50%;transform:translateX(-50%);max-width:calc(100% - 24px);width:max-content;margin:0;background:#263e34f2;color:#fffaf0;border:1px solid #c0d0ab;padding:9px 13px;border-radius:12px;font-size:14px;pointer-events:none;text-align:center;box-shadow:0 4px 14px #172e3020}
.control-guide{font-size:16px}.control-guide dt{font-weight:700;margin-top:16px}.control-guide dd{margin:4px 0 0;color:var(--muted)}
body.world-expanded{overflow:hidden}.clearing.is-expanded{position:fixed;inset:0;z-index:50;background:var(--paper);padding:env(safe-area-inset-top,0px) max(12px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom));display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;overflow:hidden;height:100dvh}.is-expanded .world-heading{border:0;padding:8px 0}.is-expanded .world-heading p{display:none}.is-expanded .stage{height:100%;min-height:0}.is-expanded .scene-caption{margin:6px 0 0;min-height:0}.is-expanded #scene-help{display:none}.is-expanded .scene-toolbar{padding-top:8px}.is-expanded .scene-caption p{font-size:13px}
.scene-toolbar.enhanced{display:none}.js .scene-toolbar.available{display:grid}
.world-heading #look-closer[aria-pressed=true]{background:var(--ink);color:var(--paper)}
@media(max-width:700px){.world-heading{gap:6px}.world-heading p{display:none}.stage{height:clamp(320px,52dvh,460px)}.scene-toolbar{gap:6px}.scene-toolbar button:nth-child(-n+3){padding:10px 9px;min-height:80px}.scene-toolbar strong{font-size:15px}.scene-toolbar small{font-size:12px}.scene-caption{margin-bottom:18px}.world-heading #look-closer{padding:8px 12px}.stage-note{font-size:12px}.is-expanded .scene-toolbar button:nth-child(-n+3){min-height:66px}.is-expanded .scene-toolbar button:nth-child(n+4){min-height:44px}.introduction{padding-block:20px}}
@media(max-height:500px) and (min-width:600px){.clearing.is-expanded{grid-template-columns:minmax(0,1fr) 240px;grid-template-rows:52px minmax(0,1fr) auto;gap:0 12px}.is-expanded .world-heading{grid-column:1/-1}.is-expanded .stage{grid-column:1;grid-row:2/4}.is-expanded .scene-toolbar{grid-column:2;grid-row:2;grid-template-columns:1fr 1fr;align-content:start}.is-expanded .scene-toolbar button:nth-child(-n+3){grid-column:1/-1;min-height:48px;padding:6px 10px}.is-expanded .scene-caption{grid-column:2}.is-expanded .scene-toolbar small{font-size:12px;margin:0}.is-expanded .scene-toolbar strong{font-size:14px}}
