
:root{color-scheme:light;--red:#b93935;--cream:#f0e8d6}*{box-sizing:border-box}body{margin:0;background:var(--red);color:var(--cream);font-family:Arial,Helvetica,sans-serif}button{font:inherit}.stage{min-height:100svh;overflow:hidden;position:relative;display:grid;place-items:center;padding:80px 24px}.grain{position:absolute;inset:0;pointer-events:none;opacity:.065;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.83' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.7' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.corner{position:absolute;top:30px;left:34px;font-size:13px;letter-spacing:.12em;text-transform:uppercase}.location{position:absolute;top:30px;right:34px;font-size:13px;letter-spacing:.06em}.composition{width:min(900px,100%);position:relative;text-align:center}.chair-wrap{width:clamp(140px,21vw,230px);height:clamp(180px,27vw,290px);margin:auto;transform:translateY(100px) rotate(-5deg)}.chair{width:100%;height:100%;overflow:visible;fill:var(--cream);fill-opacity:0;stroke:var(--cream);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chair path{stroke-dasharray:1;stroke-dashoffset:1}.shadow{width:120px;height:8px;border-radius:50%;background:#742520;filter:blur(8px);position:absolute;left:50%;top:calc(clamp(180px,27vw,290px) + 102px);transform:translateX(-50%);opacity:0}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(56px,8.8vw,112px);font-weight:400;line-height:.98;letter-spacing:-.065em;margin:25px 0 22px}h1 span{display:block}h1 em{font-weight:400}.welcome{opacity:0;transform:translateY(18px)}.signature{margin-top:25px;font-size:20px;letter-spacing:-.05em;font-weight:700}footer{position:absolute;bottom:27px;left:34px;right:34px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.06em}footer span{opacity:.75}button{border:1px solid #fff4df66;border-radius:30px;background:transparent;color:var(--cream);padding:11px 17px;cursor:pointer;transition:background .2s;font-size:12px}button:hover{background:#fff4df18}button:focus-visible{outline:2px solid var(--cream);outline-offset:5px}.playing .chair path{animation:draw 1.5s .1s cubic-bezier(.4,0,.2,1) forwards,ink-in .5s 1.35s ease-out forwards}.playing .chair .back{animation-delay:.15s}.playing .chair .seat{animation-delay:.65s}.playing .chair .legs{animation-delay:1.05s}.playing .chair-wrap{animation:settle .45s 1.55s ease-in-out forwards,make-room .8s 2.15s cubic-bezier(.22,1,.36,1) forwards}.playing .shadow{animation:shadow-in .4s 1.3s forwards,shadow-out .6s 2.15s forwards}.playing .welcome{animation:welcome .85s 2.95s cubic-bezier(.22,1,.36,1) forwards}@keyframes ink-in{to{fill-opacity:1;stroke-opacity:0}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes settle{0%{transform:translateY(100px) rotate(-5deg)}55%{transform:translateY(107px) rotate(2deg)}100%{transform:translateY(100px) rotate(0)}}@keyframes make-room{to{transform:translateY(0) rotate(0) scale(.7)}}@keyframes welcome{to{opacity:1;transform:translateY(-26px)}}@keyframes shadow-in{to{opacity:.4}}@keyframes shadow-out{to{opacity:0}}@media(max-width:600px){.corner{top:24px;left:22px}.location{top:24px;right:22px;font-size:11px}.stage{padding:80px 22px 100px}footer{left:22px;right:22px;bottom:22px}footer span{max-width:155px;line-height:1.5}h1{margin-top:16px}}@media(prefers-reduced-motion:reduce){.playing .chair path{animation:none;stroke-dashoffset:0;fill-opacity:1;stroke-opacity:0}.playing .chair-wrap{animation:none;transform:scale(.7)}.playing .welcome{animation:none;opacity:1;transform:translateY(-26px)}.playing .shadow{animation:none}}
.stage{isolation:isolate}.intro-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;pointer-events:none;opacity:0;transition:opacity .45s ease}.intro-video.is-playing{opacity:1}.stage::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(25,16,17,.4),rgba(25,16,17,.28) 45%,rgba(25,16,17,.58));z-index:-1;pointer-events:none}.composition{filter:drop-shadow(0 2px 12px rgba(0,0,0,.3))}.corner,.location{text-shadow:0 1px 10px rgba(0,0,0,.5)}.shadow{display:none}@media(prefers-reduced-motion:reduce){.intro-video{display:none}.stage::before{display:none}}@font-face{font-family:Shrikhand;src:url('assets/shrikhand.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}h1{font-family:Shrikhand,Georgia,serif;font-weight:400;font-size:clamp(30px,7.5vw,90px);letter-spacing:-.025em;line-height:1.12;text-transform:uppercase}h1 span{white-space:nowrap}@media(max-width:600px){h1{font-size:clamp(25px,7.8vw,47px);letter-spacing:-.035em}}
/* Matching lowercase corner labels. */
.corner,.location{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;letter-spacing:.06em;text-transform:none;text-shadow:0 1px 10px rgba(0,0,0,.5)}
@media(max-width:600px){.corner,.location{font-size:11px}}

.established{font-family:Arial,Helvetica,sans-serif;font-size:11px;font-weight:400;letter-spacing:.18em;line-height:1.5;margin:15px 0 12px;color:var(--cream)}
.welcome h1{margin-top:0}
@media(max-width:600px){.established{font-size:10px;margin:12px 0 10px}}
