@font-face{font-family:BigShoulders;src:url('assets/fonts/condensed.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:Melodrama;src:url('assets/fonts/Melodrama-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Melodrama;src:url('assets/fonts/Melodrama-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--ink:#080808;--paper:#f1eddf;--green:#c4c8ad;--chai:#9f543a;--pine:#080808;--outer:#000000;--warm:#e5dfcf;--pad:clamp(16px,2.2vw,32px);--select:#c8a977;--ease:cubic-bezier(.7,0,.2,1)}
*{box-sizing:border-box;margin:0;padding:0}html{scrollbar-gutter:stable;-webkit-font-smoothing:antialiased;background:var(--outer);color:var(--paper)}body{font-family:BigShoulders,Arial,sans-serif;font-weight:500;letter-spacing:.012em}a,button{font:inherit;letter-spacing:inherit;color:inherit}a{text-decoration:none}button{border:0;background:none;cursor:pointer}p,figcaption{text-wrap:pretty}h1,h2,h3{text-wrap:balance}button:active{scale:.96}button{transition:scale .15s,color .15s,background-color .15s}a:focus-visible,button:focus-visible{outline:3px solid var(--select);outline-offset:5px;border-radius:5px}::selection{background:var(--chai);color:var(--paper)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:14px;left:20px;padding:12px 20px;background:var(--paper);color:var(--ink);z-index:300;transform:translateY(-160%)}.skip-link:focus{transform:none}.ui-icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex:none}.frame{position:fixed;inset:0;padding:clamp(6px,.9vw,12px);z-index:1}.stage{--bg:var(--ink);--fg:var(--paper);background:var(--bg);color:var(--fg);position:relative;width:100%;height:100%;border-radius:clamp(12px,1.6vw,22px);overflow:clip;isolation:isolate}#journey{position:absolute;inset:0}#scroll-space{height:2142.31277vh;position:relative}.topbar{position:absolute;inset:0 0 auto;display:flex;align-items:center;padding:var(--pad);gap:14px;z-index:60}.brand{font-size:18px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;min-height:40px;display:flex;align-items:center}.studio-status{font-size:15px;padding:6px 12px;border:1.5px solid currentColor;border-radius:99px;opacity:.85;white-space:nowrap}.topbar nav{display:flex;align-items:center;gap:clamp(12px,2vw,28px);margin-left:auto;font-size:18px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.topbar nav a,.topbar nav button{position:relative;min-height:40px;display:flex;align-items:center;white-space:nowrap}.topbar nav a:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:currentColor;scale:0 1;transform-origin:left;transition:scale .35s cubic-bezier(.2,.8,.2,1)}.topbar nav a:hover:after,.topbar nav a[aria-current]:after{scale:1 1}#motion-toggle{text-transform:uppercase;gap:8px}.motion-glyph{letter-spacing:2px;font-size:24px;line-height:0}.scene{position:absolute;inset:0;display:grid;place-items:center;visibility:hidden;opacity:0;pointer-events:auto;z-index:2}.scene.active{visibility:visible;opacity:1;pointer-events:auto}.scene[inert]{pointer-events:none}.hero-inner{position:absolute;inset:0}.hero-top{position:absolute;left:0;right:0;top:clamp(78px,11.5vh,120px);display:flex;flex-direction:column;align-items:center;text-align:center;z-index:3}.hero-kicker{color:var(--green);font-size:clamp(17px,1.7vw,26px);font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:clamp(2px,.6vh,8px)}.name-wrap{position:relative;display:inline-block}#opening-title,.closing-name{font-family:Melodrama,serif;font-weight:500;text-transform:uppercase;color:var(--paper);font-size:min(10.4vw,23vh);line-height:.86;letter-spacing:-.01em;white-space:nowrap;padding:.04em .04em 0}.selection{position:absolute;inset:-3px -18px -14px;border:2px solid var(--select);opacity:1;pointer-events:none}.selection i{position:absolute;width:9px;height:9px;background:var(--paper);border:2px solid var(--select)}.selection i:nth-child(1){left:-5px;top:-5px}.selection i:nth-child(2){right:-5px;top:-5px}.selection i:nth-child(3){left:-5px;bottom:-5px}.selection i:nth-child(4){right:-5px;bottom:-5px}.hero-phrase{display:flex;justify-content:center;gap:clamp(110px,23vw,330px);margin-top:clamp(24px,3.5vh,36px);font-family:Melodrama,serif;text-transform:uppercase;color:var(--green);font-size:min(3.6vw,6.2vh);line-height:1;letter-spacing:.02em}.hero-role{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);text-align:center;color:var(--green);font-size:clamp(14px,2.2vh,21px);line-height:1.3;font-weight:600;z-index:6}.chai-art{position:absolute;inset:0;pointer-events:none;z-index:4}.cup{position:absolute;width:min(42vw,56vh);height:auto;left:50%;top:var(--cup-y,65%);transform:translate(-50%,-50%);overflow:visible}.cup-two{transform:translate(calc(-50% + 58vw),calc(-50% - 7vh)) rotate(160deg)}.cup-shadow{fill:#000;opacity:.15}.saucer{fill:var(--paper);stroke:var(--ink);stroke-width:2.7}.saucer-line{fill:none;stroke:var(--ink);stroke-width:1.3}.handle{fill:var(--paper);stroke:var(--ink);stroke-width:2.7}.cup-body{fill:var(--paper);stroke:var(--ink);stroke-width:3}.tea{fill:var(--chai);stroke:var(--ink);stroke-width:2}.tea-light{stroke:var(--paper);stroke-width:5;stroke-linecap:round;fill:none;opacity:.55}.tea-line{stroke:var(--ink);stroke-width:1.5;fill:none;opacity:.55}.tea-ripple{fill:none;stroke:var(--paper);stroke-width:2;opacity:0}.cup-lettering{font:600 11px BigShoulders,sans-serif;letter-spacing:1px;fill:var(--ink)}.clink{position:absolute;left:54%;top:var(--cup-y,65%);translate:-50% -50%;width:60px;height:60px;stroke:var(--paper);stroke-width:3;fill:none;opacity:0}.illustrated-pointer{position:absolute;left:76%;top:29%;pointer-events:none;z-index:12}.illustrated-pointer svg{width:22px;height:26px;display:block}.illustrated-pointer b{position:absolute;left:18px;top:20px;background:var(--chai);padding:4px 8px;border-radius:0 8px 8px 8px;color:var(--paper);font-size:12px;font-weight:650}.scroll-hint{position:absolute;left:var(--pad);bottom:calc(var(--pad) + 44px);font-size:16px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;display:flex;flex-direction:column;gap:12px}.scroll-hint i{width:2px;height:38px;background:currentColor;opacity:.4}.hello-type{font-size:min(14.8vw,32vh);font-weight:900;line-height:.9;white-space:nowrap;text-transform:uppercase}.word,.display-word{display:inline-block;white-space:nowrap}.work-head h2 .small,.together h2 .small,.practice-small .small{font-size:.74em}.raised{display:inline-block;transform:translateY(-.1em)}.char{display:inline-block}.char.small{font-size:.74em}.chapter-caption{position:absolute;bottom:calc(var(--pad) + 64px);left:0;right:0;width:min(88vw,560px);margin:auto;text-align:center;font-size:clamp(18px,1.7vw,23px);font-weight:550;line-height:1.35}.doodles{position:absolute;inset:0;pointer-events:none}.doodles svg{position:absolute;overflow:visible}.spark{fill:currentColor;max-width:110px}.greeting-line{left:50%;top:63%;width:min(36vw,480px);transform:translateX(-50%)}.practice-small{position:absolute;top:20%;font-size:clamp(26px,3vw,44px);font-weight:900;text-transform:uppercase}.practice-word{--weight:100;font-weight:var(--weight);font-size:min(19vw,40vh);line-height:.85;text-transform:uppercase;white-space:nowrap}.identity-kit{position:absolute;left:50%;top:56%;width:0;height:0}.identity-sheet{position:absolute;left:-190px;top:-120px;width:380px;height:240px;background:var(--paper);border:2.5px solid var(--ink);border-radius:26px;color:var(--ink);display:flex;align-items:center;justify-content:center;gap:30px;opacity:0;overflow:hidden}.identity-sheet>span{position:absolute;left:24px;top:20px;font-size:12px;letter-spacing:.08em}.identity-sheet img{width:120px;height:120px;object-fit:contain}.identity-sheet b{font-size:34px;letter-spacing:.03em}.swatch{position:absolute;width:46px;height:46px;left:-23px;top:-23px;border:2.5px solid var(--ink);border-radius:50%;background:var(--chai)}.swatch-one{background:var(--paper)}.swatch-two{background:var(--green)}.swatch-three{background:var(--chai)}.swatch-four{background:var(--pine)}.swatch-five{background:#c8ad86}.thought{position:absolute;inset:0;padding:0 7vw;display:flex;flex-direction:column;align-items:center;justify-content:center;visibility:hidden;opacity:0}.thought-a h2{font-family:Melodrama,serif;font-size:min(18vw,34vh);font-weight:500;line-height:.9;text-transform:uppercase}.thought-a svg{width:min(40vw,420px);margin-top:8px;color:var(--green)}.thought-a p{font-size:clamp(24px,3vw,46px);font-weight:800;text-transform:uppercase;color:var(--green);margin-top:clamp(14px,2.4vh,26px)}.editorial{align-items:flex-start;padding-left:max(7vw,calc((100% - 940px)/2));padding-right:max(7vw,calc((100% - 940px)/2))}.thought-word{display:inline-block}.editorial h2{font-family:Melodrama,serif;font-weight:500;font-size:clamp(38px,6.2vw,96px);line-height:.98;letter-spacing:-.01em;max-width:20ch}.editorial p{margin-top:clamp(18px,3vh,32px);font-size:clamp(20px,2vw,30px);line-height:1.35;max-width:46ch;color:var(--green)}.thought-c{text-align:center;gap:clamp(14px,2.6vh,28px)}.thought-c p:first-child{font-family:Melodrama,serif;font-size:clamp(28px,3.4vw,56px);line-height:1.05;max-width:24ch}.thought-c h2{font-size:clamp(56px,9vw,160px);line-height:.9;font-weight:900;text-transform:uppercase;white-space:nowrap}.thought-c p:last-child{font-size:clamp(20px,1.9vw,28px);color:var(--green);line-height:1.35}.thought-d{text-align:center}.thought-d h2{font-family:Melodrama,serif;font-size:clamp(46px,7vw,124px);line-height:.95;font-weight:500;letter-spacing:-.01em}.thought-d p{margin-top:clamp(18px,3vh,30px);font-size:clamp(20px,2vw,30px);color:var(--green)}.thought-d>span{margin-top:clamp(22px,4vh,44px);font-size:clamp(17px,1.5vw,22px);opacity:.85}.together-copy{display:flex;flex-direction:column;align-items:center;margin-top:-16vh}.together h2{font-size:min(15vw,25vh);line-height:.84;font-weight:900;text-transform:uppercase;text-align:center}.together h2>span{display:block}.together-copy p{margin-top:clamp(20px,3.5vh,36px);width:min(88vw,640px);text-align:center;font-size:clamp(18px,1.7vw,23px);line-height:1.35;font-weight:550}.together-drawings{position:absolute;inset:0;pointer-events:none}.table-scene{position:absolute;left:0;bottom:12%;width:clamp(350px,min(46vw,52vh),700px);height:auto}.table-line{position:absolute;bottom:12%;height:2px;left:0;right:0;background:currentColor;opacity:.7}.plant{position:absolute;right:9%;bottom:12%;width:clamp(50px,7vw,100px);height:auto}.work{place-items:center start}.work-track{display:flex;align-items:center;gap:clamp(40px,6vw,110px);padding:0 var(--pad) 0 calc(var(--pad) + 2vw)}.work-head{flex:0 0 auto;width:min(80vw,440px);position:relative}.work-head h2{font-size:clamp(64px,10vw,170px);line-height:.84;font-weight:900;text-transform:uppercase}.work-head>p{font-size:clamp(18px,1.6vw,22px);margin-top:22px;line-height:1.35;max-width:30ch;font-weight:480}.work-head .work-more{margin-top:14px;opacity:.75}.work-buttons{position:absolute;left:47%;top:22px;transform:translateX(-50%);z-index:65;display:none;align-items:center;gap:12px;padding:6px 10px;border-radius:99px;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(8px)}.work-buttons button{width:44px;height:44px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center}.work-buttons button[aria-disabled="true"]{opacity:.32;cursor:default}.work-buttons button:not([aria-disabled="true"]):hover{background:var(--fg);color:var(--bg)}#work-count{font-size:13px;font-variant-numeric:tabular-nums}.project-card{flex:0 0 auto;align-self:flex-start;width:clamp(290px,40vw,640px);display:block}.card-label{display:flex;justify-content:space-between;gap:12px;font-size:16px;margin-bottom:8px;font-weight:620}.card-label b{font-weight:620}.card-label span{opacity:.7;text-align:right}.card-cover{position:relative;width:100%;aspect-ratio:4/3;max-height:52vh;border:2.5px solid var(--ink);border-radius:18px;overflow:hidden;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .2s}.card-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;outline:1px solid #0001;outline-offset:-1px}.project-card h3{font-family:Melodrama,serif;font-size:clamp(28px,2.8vw,42px);font-weight:500;line-height:1;letter-spacing:-.005em;margin-top:14px;text-wrap:initial}.project-card>p{margin-top:6px;font-size:18px;font-weight:480;line-height:1.35;max-width:44ch}.project-card:hover .card-cover,.project-card:focus-visible .card-cover{transform:translateY(-6px) rotate(-.6deg);box-shadow:0 0 0 3px var(--select)}.collective-inner{width:min(90vw,1080px);position:relative}.collective h2{font-family:Melodrama,serif;font-size:clamp(40px,6vw,100px);font-weight:500;line-height:.95;letter-spacing:-.01em}.collective h2 span{display:block;overflow:hidden}.collective h2 i{display:block;font-style:normal}.collective-sub{margin-top:clamp(16px,2.6vh,28px);font-size:clamp(18px,1.6vw,23px);line-height:1.4;max-width:52ch;opacity:.9}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:clamp(28px,5vh,56px);padding-top:20px;border-top:1.5px solid currentColor}.facts dt{font-size:15px;text-transform:uppercase;letter-spacing:.05em;opacity:.75;font-weight:600}.facts dd{font-size:clamp(19px,1.7vw,24px);line-height:1.25;font-weight:620;margin-top:6px}.collective-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.collective-tools span{font-size:17px;font-weight:560;padding:6px 12px;border-radius:8px;background:#ffffff1f}.collective-more{display:flex;gap:22px;flex-wrap:wrap;margin-top:26px;font-size:19px;text-transform:uppercase;font-weight:680;letter-spacing:.03em}.collective-more a{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px;min-height:40px;display:flex;align-items:center;gap:6px}.paper-plane{position:absolute;right:-5%;top:0;width:min(17vw,210px);overflow:visible}.contact-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;padding-top:clamp(78px,11.5vh,120px);text-align:center}.closing-name{font-size:min(10.4vw,23vh)}.contact h3{font-size:clamp(26px,5vh,52px);line-height:.95;font-weight:900;text-transform:uppercase;margin-top:clamp(24px,4vh,40px)}.contact-links{position:relative;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 16px;margin-top:12px;font-size:clamp(15px,2.1vh,19px);font-weight:700;z-index:10}.contact-links>a{min-height:40px;display:flex;align-items:center;gap:6px;text-transform:uppercase}.contact-links>a:first-child{border-bottom:1.5px solid currentColor;text-transform:none}.contact-links button{position:relative;width:40px;height:40px;border-radius:8px;display:grid;place-items:center}.contact-links button:hover{background:#ffffff25}.contact-links button>span{display:flex;grid-area:1/1;transition:scale .3s cubic-bezier(.2,0,0,1),opacity .3s,filter .3s}.copy-done{opacity:0;scale:.25;filter:blur(4px)}.copied .copy-done{opacity:1;scale:1;filter:blur(0)}.copied .copy-rest{opacity:0;scale:.25;filter:blur(4px)}.closing-chai{position:absolute;inset:0;pointer-events:none}.closing-chai .cup{top:72%;width:min(29vw,39vh)}.closing-chai .cup-one{left:42%;transform:translate(-50%,-50%) rotate(-24deg)}.closing-chai .cup-two{left:59%;transform:translate(-50%,-50%) rotate(154deg)}.closing-sign{position:absolute;left:19%;top:60%;z-index:5;transform:rotate(-7deg);padding:12px 20px;background:var(--paper);color:var(--ink);border:2.5px solid var(--ink);border-radius:14px;box-shadow:4px 4px 0 var(--ink);font-family:Melodrama,serif;font-size:clamp(20px,2.3vw,32px);line-height:1.1}.back-start{position:absolute;bottom:64px;right:var(--pad);font-size:15px;text-transform:uppercase;min-height:40px;display:flex;align-items:center;gap:8px}.contact #copy-status{margin-top:8px;z-index:12;font-size:16px}.chapter-ruler{position:absolute;left:var(--pad);right:var(--pad);bottom:calc(var(--pad)*.7);height:44px;z-index:61}.ticks{position:absolute;bottom:0;left:0;right:0;height:7px;background:repeating-linear-gradient(90deg,currentColor 0 1.5px,transparent 1.5px 1%);opacity:.4}#ruler-head{position:absolute;bottom:0;left:0;width:2px;height:16px;background:currentColor}.chapter-ruler a{position:absolute;bottom:7px;transform:translateX(-50%);font-size:13px;font-weight:620;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;opacity:.75;min-height:32px;display:flex;align-items:center}.chapter-ruler a:hover,.chapter-ruler a[aria-current]{opacity:1}.dust{opacity:.45;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.grain{position:absolute;inset:0;pointer-events:none;z-index:80;overflow:hidden}.grain i{position:absolute;inset:0;display:block}.grain-light{opacity:.045;mix-blend-mode:screen;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.62' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1.6 -.55'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.grain-dark{opacity:.06;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1.5 -.5'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.grain .grain-film{inset:-60%;opacity:.025;mix-blend-mode:screen;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='1' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 2 -.8'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:none}@keyframes film{0%{transform:translate(0,0)}14%{transform:translate(-7%,4%)}28%{transform:translate(5%,-8%)}42%{transform:translate(-11%,-3%)}57%{transform:translate(9%,7%)}71%{transform:translate(-4%,10%)}85%{transform:translate(12%,-6%)}}
.project-viewer{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:var(--paper);color:var(--ink);overflow:hidden;clip-path:inset(100% 0 0 0);transition:clip-path .7s var(--ease);z-index:100}.project-viewer[open]{display:flex;flex-direction:column}.project-viewer.revealed{clip-path:inset(0 0 0 0)}.project-viewer::backdrop{background:transparent}.viewer-toolbar{height:60px;flex:none;padding:0 20px;display:flex;align-items:center;gap:16px;background:var(--outer);color:var(--paper)}.viewer-toolbar button{height:40px;display:flex;align-items:center;justify-content:center;gap:10px;text-transform:uppercase;font-size:17px;font-weight:620;letter-spacing:.02em}.viewer-toolbar button:first-child{padding:0 18px 0 14px;border:2px solid #ffffff80;border-radius:99px}.viewer-toolbar button:hover{background:var(--paper);color:var(--ink)}#viewer-title{flex:1;text-align:right;font-size:17px;font-weight:620;text-transform:uppercase;opacity:.7;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#viewer-close{width:40px;border-radius:50%}.viewer-body{position:relative;flex:1;min-height:0;display:flex}.viewer-body iframe{width:100%;height:100%;border:0;opacity:0;transition:opacity .35s}.project-viewer.ready iframe{opacity:1}.viewer-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;font-size:18px;pointer-events:none}.viewer-loading i{height:30px;width:30px;border-radius:50%;border:3px solid #0002;border-top-color:var(--chai);animation:spin .8s linear infinite}.project-viewer.ready .viewer-loading,.viewer-error[hidden],.viewer-loading[hidden]{display:none}.viewer-error{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:2;background:var(--paper);padding:24px;text-align:center}.viewer-error h2{font-family:Melodrama,serif;font-weight:500;font-size:clamp(32px,5vw,60px)}.viewer-error p{font-size:20px}.viewer-error button{border:1px solid currentColor;border-radius:99px;padding:10px 22px;min-height:44px;font-size:18px}.viewer-error button:hover{background:var(--ink);color:var(--paper)}@keyframes spin{to{transform:rotate(360deg)}}html.viewer-lock,html.viewer-lock body{overflow:hidden}
@media(max-width:720px){.topbar{gap:8px;flex-wrap:wrap;padding:14px 16px}.brand{font-size:15px}.studio-status{display:none}.topbar nav{font-size:14px;gap:14px}.topbar nav a{min-height:44px}#motion-toggle{position:absolute;right:16px;top:60px;font-size:12px;min-height:36px}.motion-glyph{font-size:18px}.hero-top{top:126px}#opening-title,.closing-name{font-size:min(15.3vw,13vh);white-space:normal;max-width:90vw;line-height:.95}.name-wrap{max-width:88vw}.selection{inset:-4px -8px -8px}.hero-kicker{font-size:17px;margin-bottom:8px}.hero-phrase{font-size:5.6vw;gap:20vw;margin-top:28px}.cup{width:min(78vw,41vh);top:58%}.hero-role{bottom:15%;font-size:14px;width:80%}.scroll-hint{bottom:70px;font-size:12px;gap:6px}.scroll-hint i{height:22px}.illustrated-pointer{left:77%;top:34%}.opening{--cup-y:58%}.clink{top:var(--cup-y);width:45px}.hello-type{font-size:15vw;white-space:normal;text-align:center;max-width:90vw;line-height:1.05}.chapter-caption{bottom:96px;font-size:18px;width:84vw}.greeting-line{top:60%;width:62vw}.doodles .spark{min-width:28px}.practice-word{font-size:21vw;position:absolute;top:28%}.practice-small{top:19%;font-size:30px}.identity-kit{scale:.78;top:53%}.thought{padding-left:7vw;padding-right:7vw}.thought-a h2{font-size:18vw}.thought-a p{font-size:7vw}.thought-word{display:inline-block}.editorial h2{font-size:9.6vw;line-height:1}.editorial p{font-size:22px;margin-top:24px}.thought-c h2{font-size:15vw;white-space:normal;line-height:.95}.thought-c p:first-child{font-size:8vw}.thought-c p:last-child{font-size:21px}.thought-d h2{font-size:14vw}.thought-d p{font-size:22px}.thought-d>span{font-size:17px}.together h2{font-size:20vw}.together-copy{margin-top:-20vh}.together-copy p{font-size:19px;width:84vw}.together-copy p br{display:none}.table-scene{width:92vw;bottom:16%}.table-line{bottom:16%}.plant{right:0;bottom:16%;width:14vw}.work-track{padding-left:24px;gap:40px}.work-head{width:76vw}.work-head h2{font-size:20vw}.work-head>p{font-size:20px;max-width:24ch}.project-card{width:clamp(260px,80vw,500px)}.card-label{font-size:14px;gap:8px}.card-cover{max-height:44vh}.project-card h3{font-size:30px}.project-card>p{font-size:18px}.collective-inner{width:86vw}.collective h2{font-size:11.5vw}.collective-sub{font-size:18px;margin-top:18px}.facts{grid-template-columns:1fr;gap:10px;margin-top:24px;padding-top:16px}.facts dt{font-size:12px}.facts dd{font-size:18px;margin-top:2px}.collective-tools{gap:6px;margin-top:18px}.collective-tools span{font-size:13px;padding:5px 9px}.collective-more{font-size:15px;margin-top:16px;gap:20px}.paper-plane{display:none}.contact-inner{padding-top:126px}.contact h3{font-size:32px;margin-top:26px}.contact-links{gap:0 12px;width:90%;font-size:16px;margin-top:10px}.contact-links>a:first-child{max-width:calc(100% - 48px)}.contact-links .ui-icon{width:16px;height:16px}.closing-chai .cup{width:min(64vw,32vh);top:73%}.closing-chai .cup-one{left:37%}.closing-chai .cup-two{left:65%}.closing-sign{left:9%;top:58%;font-size:22px;padding:9px 14px}.back-start{right:16px;bottom:60px;font-size:12px}.chapter-ruler{left:16px;right:16px;bottom:16px;height:34px}.chapter-ruler a{display:none}.viewer-toolbar{padding:0 10px;gap:10px}.viewer-toolbar button{font-size:15px}#viewer-title{font-size:14px}.viewer-toolbar button:first-child{padding:0 12px;gap:6px}}
@media(max-width:350px){.brand{font-size:13px}.topbar nav{gap:10px;font-size:12px}.topbar{padding:10px 12px}.hero-top{top:auto;padding-top:0}.contact-inner{top:0}.hero-top{top:112px}.contact-inner{padding-top:112px}.hero-role{bottom:17%;font-size:13px}.collective-sub{font-size:16px}.facts{margin-top:18px;gap:8px}.collective-tools{display:none}.closing-sign{font-size:19px}.contact-links{font-size:14px}.contact h3{font-size:29px}.project-card{width:260px}.card-cover{max-height:42vh}.card-label{font-size:13px}.project-card h3{font-size:27px}.project-card>p{font-size:17px}.thought-a p{font-size:7vw}}
html.reduced .frame{position:relative;padding:0}html.reduced #journey{position:relative;inset:auto}html.reduced .stage{border-radius:0;height:auto;overflow:visible;background:var(--ink)}html.reduced #scroll-space,html.reduced .dust,html.reduced .grain,html.reduced .chapter-ruler,html.reduced .illustrated-pointer,html.reduced .scroll-hint{display:none}html.reduced .topbar{position:sticky;top:0;background:var(--ink);color:var(--paper)}html.reduced .scene{overflow:clip;position:relative;inset:auto;visibility:visible!important;opacity:1!important;min-height:100svh;padding:100px var(--pad) 80px;pointer-events:auto;transform:none!important}html.reduced .opening{height:100svh}html.reduced .greeting{background:var(--chai)}html.reduced .practice{background:var(--green);color:var(--ink)}html.reduced .approach{display:block;padding:0;background:var(--ink)}html.reduced .thought{position:relative;inset:auto;visibility:visible!important;opacity:1!important;min-height:80svh;padding:100px 7vw;transform:none!important}html.reduced .thought-d{background:var(--pine)}html.reduced .together{background:var(--pine)}html.reduced .work{display:block;background:var(--green);color:var(--ink);overflow:hidden}html.reduced .work-track{padding:0;transform:none!important;flex-wrap:wrap;gap:64px 40px;justify-content:center}html.reduced .work-head{width:100%;padding:32px 0}html.reduced .project-card{width:min(100%,500px)}html.reduced .collective{background:var(--chai)}html.reduced .contact{height:100svh}html.reduced .chapter-caption{position:relative;bottom:auto;left:auto;right:auto;margin:40px auto 0}html.reduced .greeting{display:flex;flex-direction:column;justify-content:center}html.reduced .identity-kit{position:relative;left:auto;top:auto;height:250px;width:380px;max-width:90vw;margin:40px auto 0;scale:1}html.reduced .identity-sheet{left:0;top:0;opacity:1;width:100%;height:240px}html.reduced .swatch,html.reduced .practice-small{display:none}html.reduced .practice{display:flex;flex-direction:column;justify-content:center}html.reduced .practice-word{font-weight:900;transform:none!important;position:relative;top:auto}html.reduced .clink{display:none}html.reduced .cup-two{transform:translate(calc(-50% + 17vw),-50%) rotate(160deg)}html.reduced .cup-one{transform:translate(calc(-50% - 13vw),-50%) rotate(-20deg)}html.reduced .selection{opacity:1}html.reduced .thought-c h2{white-space:normal}html.reduced .together-drawings{display:none}html.reduced .together-copy{margin-top:0}html.reduced .project-viewer,html.reduced .viewer-body iframe{transition:none}html.reduced .viewer-loading i{animation:none}html.reduced .work-buttons{display:none}html.reduced .closing-chai .cup-one{transform:translate(-50%,-50%) rotate(-24deg)}html.reduced .closing-chai .cup-two{transform:translate(-50%,-50%) rotate(154deg)}
@media(prefers-reduced-motion:reduce){.grain,.dust{display:none}*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition-duration:0s!important}}

/* Quiet construction grid under the artwork and type. */
.blueprint-grid{
 position:absolute;inset:0;z-index:0;pointer-events:none;
 --grid-ink:color-mix(in srgb,var(--fg) 82%,#93afc0);
 --grid-minor:color-mix(in srgb,var(--grid-ink) 2.2%,transparent);
 --grid-major:color-mix(in srgb,var(--grid-ink) 3.2%,transparent);
 background-image:linear-gradient(90deg,var(--grid-minor) 1px,transparent 1px),linear-gradient(var(--grid-minor) 1px,transparent 1px),linear-gradient(90deg,var(--grid-major) 1px,transparent 1px),linear-gradient(var(--grid-major) 1px,transparent 1px);
 background-size:32px 32px,32px 32px,160px 160px,160px 160px;
}

/* Keep the gallery controls reachable as the projects travel past. */
@media(min-width:721px) and (max-width:1100px){.work-buttons{top:auto;bottom:58px;left:50%;transform:translateX(-50%)}}
@media(max-width:720px){.work-buttons{bottom:57px;right:18px;left:auto;top:auto;transform:none;padding:4px 8px}}

.stage[data-chapter="work"] .work-buttons{display:flex}html.reduced .stage .work-buttons{display:none}body .stage .work-buttons{background:var(--green);color:var(--ink)}

/* Centre the final project, so it remains reachable by scroll and keyboard. */
.work-track{padding-right:max(var(--pad),calc((100vw - clamp(290px,40vw,640px))/2 - 12px))}
@media(max-width:720px){.work-track{padding-right:max(24px,calc((100vw - clamp(260px,80vw,500px))/2 - 8px))}}

/* v05.3: controls and keyboard focus keep their shape across every palette. */
a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:4px;box-shadow:0 0 0 4px var(--paper)}
.topbar nav a,.topbar nav button,.collective-more a,.contact-links>a{min-height:44px}
.contact-links button{width:44px;height:44px}
.viewer-toolbar button{height:44px;min-width:44px}
.motion-glyph{display:grid;width:20px;height:20px;letter-spacing:0;font-size:0;line-height:1}
.motion-glyph>span{grid-area:1/1;display:flex;align-items:center;justify-content:center;transition:opacity .18s,scale .18s,filter .18s}
.motion-play{opacity:0;scale:.25;filter:blur(4px)}
#motion-toggle[aria-pressed="true"] .motion-pause{opacity:0;scale:.25;filter:blur(4px)}
#motion-toggle[aria-pressed="true"] .motion-play{opacity:1;scale:1;filter:blur(0)}
#work-count{font-variant-numeric:tabular-nums}
@media(max-width:720px){#motion-toggle{min-height:44px}.motion-glyph,.motion-glyph .ui-icon{width:16px;height:16px}}

/* The table stays still; a connected liquid sheet travels toward the lens. */
.chai-camera{position:absolute;inset:0;z-index:2;pointer-events:none}
.chai-camera .chai-art{z-index:4;transform-origin:50% 65%}
.chai-splash{position:absolute;inset:0;width:100%;height:100%;z-index:8;pointer-events:none;visibility:hidden;opacity:0;overflow:hidden}
.stage[data-chapter="opening"]>.blueprint-grid{visibility:hidden}
#opening-entry{display:flex;flex-direction:column;align-items:center;width:100%}
.poster-underline{width:clamp(180px,28vw,410px);height:22px;margin-top:16px;color:var(--chai);overflow:visible}
html.reduced .poster-underline{transform:none!important}
html.reduced .chai-splash{display:none}

@media(hover:none){.project-card:hover .card-cover{transform:none;box-shadow:none}}
@media(max-width:350px){.identity-kit{scale:.68}}
/* Short landscape windows use the same content in a readable scrolling layout. */
html.compact.reduced .scene{min-height:680px}
html.compact.reduced .opening,html.compact.reduced .contact{height:760px}
html.compact.reduced .hero-top{top:140px}
html.compact.reduced #opening-title,html.compact.reduced .closing-name{font-size:clamp(44px,7vw,90px)}
html.compact.reduced .hero-phrase{font-size:clamp(25px,4vw,42px)}
html.compact.reduced .opening .cup{width:270px;top:65%}
html.compact.reduced .hero-role{bottom:12%;font-size:18px}
html.compact.reduced .thought{min-height:500px}
html.compact.reduced .card-cover{max-height:none}
html.compact.reduced .contact-inner{padding-top:140px}
html.compact.reduced .closing-chai .cup{width:250px;top:73%}
html.compact.reduced .closing-sign{top:58%}
html.compact.reduced .back-start{bottom:30px}

/* v05.7: stable phone canvas and native finger-driven scrolling. */
@media(max-width:720px){
 html{scrollbar-gutter:auto}
 .frame{bottom:auto;height:var(--mobile-height,100svh);padding:6px}
 #scroll-space{height:calc(var(--mobile-height,100svh) * 21.4231277)}
 .grain .grain-film,.grain .grain-dark{display:none}
 .grain .grain-light{animation:none}
 .dust,.illustrated-pointer{display:none}
 .project-viewer{height:100dvh;transition:clip-path .35s cubic-bezier(.2,.7,.2,1)}
 .viewer-toolbar{height:calc(60px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}
 .viewer-body{padding-bottom:env(safe-area-inset-bottom)}
 .topbar{padding-top:max(14px,env(safe-area-inset-top));padding-left:14px;padding-right:14px}
 .topbar nav{gap:10px}
 .topbar nav a{min-width:44px;justify-content:center}
 .work-buttons button{min-width:44px;min-height:44px}
 .project-card{width:calc(100vw - 64px)}
 .project-card>p{font-size:18px;line-height:1.35}
 .card-cover{max-height:38svh}
 .work-track{padding-right:26px}
 html.reduced .frame{height:auto}
}

/* v05.9: selected images and project names, with an explicit full-index link. */
.all-work{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:20px;text-decoration:underline;text-underline-offset:5px;margin-top:22px}
.project-card h3{font-size:clamp(30px,3.1vw,48px);margin-top:18px;line-height:1.1}
@media(max-width:720px){.project-card h3{font-size:32px}.all-work{font-size:18px}}

.contact-end { position: absolute; right: var(--pad); bottom: 64px; display: flex; align-items: center; gap: 24px; font-size: 15px; text-transform: uppercase; }
.contact-end .back-start { position: static; font-size: inherit; }
.contact-end a { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 720px) { .contact-end { right: 16px; bottom: 60px; gap: 18px; font-size: 12px; } }
html.compact.reduced .contact-end { bottom: 30px; }
