:root{--blue:#0057ff;--ink:#202124;--paper:#faf9f4;--accent:#ddff71}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:6px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}.skip{position:absolute;top:-100px;left:20px;padding:15px;background:var(--ink);color:white;z-index:100}.skip:focus{top:10px}header{position:absolute;z-index:10;top:0;width:100%;padding:30px 4%;display:flex;align-items:center;justify-content:space-between;color:white}header img{width:160px}nav{display:flex;gap:35px;font-size:13px}.hero{position:relative;min-height:900px;height:110svh;background:var(--blue);color:var(--paper);padding:145px 4% 85px;display:flex;flex-direction:column;justify-content:center}.hero-meta,.hero-bottom{position:absolute;left:4%;right:4%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.12em;gap:20px}.hero-meta{top:120px;opacity:.8}.hero-bottom{bottom:30px}.hero-center{position:relative;z-index:2;text-align:center;pointer-events:none}.kicker{font-size:10px;letter-spacing:.13em;font-weight:700;line-height:1.6;margin-bottom:25px}h1{font-size:clamp(90px,13.5vw,220px);line-height:.84;letter-spacing:-.08em;font-weight:900;position:relative}.line{display:block}.line span{display:inline-block;will-change:transform;transform-origin:center 70%}.line-two{color:var(--accent);margin-top:8px}.intro{font-size:20px;line-height:1.5;margin-top:35px}.circle-link{pointer-events:auto;display:flex;justify-content:center;align-items:center;gap:12px;width:125px;height:125px;border:1px solid #ffffff70;border-radius:50%;font-size:10px;line-height:1.5;text-align:left;margin:25px auto 0;transition:background .3s,transform .4s}.circle-link b{font-size:35px}.circle-link:hover{background:var(--accent);color:var(--ink);text-decoration:none;transform:rotate(-12deg)}.float-field{position:absolute;inset:140px 4% 100px;pointer-events:none}.float-square{position:absolute;width:clamp(85px,10vw,145px);aspect-ratio:1;border-radius:21%;display:grid;place-items:center;color:var(--ink);will-change:transform;animation:bob 7s ease-in-out infinite}.float-square span{font-size:65px;font-weight:bold}.f1{left:1%;top:9%;background:var(--paper);rotate:-18deg}.f2{right:2%;top:4%;background:var(--accent);rotate:20deg;animation-delay:-2s}.f3{left:4%;bottom:11%;background:var(--accent);rotate:18deg;animation-delay:-4s}.f4{right:2%;bottom:12%;background:var(--paper);rotate:-14deg;animation-delay:-1s}.chaos{position:absolute;bottom:85px;left:4%;border:1px solid #ffffff70;background:transparent;color:white;border-radius:30px;padding:13px 18px;font-size:11px;z-index:5}.chaos span{display:inline-block;margin-left:15px;font-size:20px;vertical-align:middle}.hero.burst .float-square{animation:burst .8s cubic-bezier(.2,.8,.3,1)}.hero.burst .line span{animation:jiggle .8s calc(var(--n)*.035s) both}@keyframes bob{50%{translate:0 -20px;rotate:8deg}}@keyframes burst{50%{rotate:200deg;scale:1.2}}@keyframes jiggle{40%{translate:0 -30px;rotate:15deg}70%{rotate:-12deg}}
.manifesto{padding:125px 7%;background:var(--paper);position:relative}.manifesto h2{font-size:clamp(48px,7.5vw,120px);line-height:1.03;letter-spacing:-.065em}.manifesto h2 span{display:block;transform-origin:left center}.outline{color:var(--blue)}.manifesto-bottom{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:65px}.manifesto-bottom p{font-size:19px;line-height:1.7;max-width:550px}.spin-symbol{width:105px;will-change:transform}.showroom{background:var(--ink);color:var(--paper)}.showroom-pin{padding:55px 4% 35px}.projects-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:35px}.projects-head h2{font-size:clamp(34px,4.8vw,72px);letter-spacing:-.06em;line-height:1}.projects-head h2 span{color:var(--accent)}.counter{font-size:13px;white-space:nowrap}.counter span{font-size:45px;font-weight:bold;letter-spacing:-.07em;margin-right:15px}.track{display:grid;gap:25px;grid-template-columns:1fr 1fr}.project-card{position:relative;background:#e6edff;color:var(--ink);border-radius:24px;padding:45px;min-width:0}.project-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:35px;min-height:75px}.project-logo{width:235px;max-width:60%}.nomad-logo{width:75px;height:75px;border-radius:18px}.project-status{font-size:10px;border:1px solid #20212430;padding:9px 12px;border-radius:25px;white-space:nowrap}.project-card h3{font-size:clamp(35px,3.7vw,58px);line-height:1;letter-spacing:-.055em;margin-bottom:20px;max-width:90%}.project-card p{font-size:17px;line-height:1.55;max-width:600px;color:#535b6c}.project-card .beta-note{font-size:14px;color:#0044c7;margin-top:20px}.text-link{display:inline-flex;gap:15px;font-weight:bold;font-size:14px;align-items:center;margin-top:25px;color:var(--blue);min-height:40px}.text-link span{font-size:25px}.project-note{display:block;margin-top:30px;font-size:13px}.project-number{position:absolute;bottom:25px;right:30px;font-size:70px;color:#20212410;pointer-events:none}.polissh-card{background:#edede7}.nomad-card{background:#eaf0f5}.digitalwitness-card{background:#f4ecec}.showroom-bottom{display:flex;align-items:center;gap:40px;margin-top:30px;font-size:9px;letter-spacing:.1em}.rail{height:2px;flex:1;background:#ffffff30}.rail span{display:block;height:100%;background:var(--accent);transform:scaleX(var(--p,0));transform-origin:left}.outro{padding:120px 7%;position:relative;min-height:730px;display:flex;flex-direction:column;justify-content:center}.outro h2{font-size:clamp(60px,8vw,125px);letter-spacing:-.06em;line-height:.95;position:relative;z-index:2}.outro h2 em{font-family:Georgia,serif;font-weight:400;color:var(--blue)}.outro>p:last-child{font-size:19px;line-height:1.6;margin-top:30px;position:relative;z-index:2}.word-cloud{position:absolute;inset:30px 4%;pointer-events:none}.sticker{position:absolute;font-size:11px;font-weight:bold;border:1px solid var(--ink);border-radius:100px;padding:18px 25px;background:var(--accent);box-shadow:4px 4px 0 var(--ink)}.s1{top:5%;right:3%;rotate:9deg}.s2{top:17%;right:19%;rotate:-14deg;background:var(--paper)}.s3{bottom:12%;right:4%;rotate:-9deg}.s4{bottom:1%;right:26%;rotate:10deg;background:var(--blue);color:white}.contact{background:var(--blue);color:var(--paper);padding:80px 4% 30px}.contact-title{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:clamp(80px,15vw,230px);font-weight:900;letter-spacing:-.075em;line-height:1.1}.contact-title:hover{text-decoration:none;color:var(--accent)}.contact-arrow{display:block;will-change:transform}.email{display:inline-block;font-size:20px;margin-top:25px;border-bottom:1px solid #ffffff80;padding-bottom:7px}footer{border-top:1px solid #ffffff50;margin-top:90px;padding-top:30px;display:flex;align-items:center;justify-content:space-between;font-size:11px}footer img{width:150px}
@media(min-width:901px) and (min-height:741px){.motion-ready .showroom{height:380svh}.motion-ready .showroom-pin{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;overflow:hidden}.motion-ready .track{display:flex;flex:1;min-height:0;gap:35px;width:max-content;will-change:transform}.motion-ready .project-card{width:72vw;max-width:1100px;flex-shrink:0;display:flex;flex-direction:column;justify-content:center}.motion-ready .showroom-bottom{flex-shrink:0}.motion-ready .project-top{margin-bottom:35px}}
@media(max-width:900px){.hero{min-height:800px;height:100svh}.float-square{width:90px}.float-square span{font-size:45px}.hero-center .kicker{font-size:9px}.f1{top:1%;left:1%}.f2{top:2%;right:0}.f3{bottom:9%;left:1%}.f4{bottom:9%;right:0}.manifesto{padding:85px 6%}.track{grid-template-columns:1fr}.project-card{padding:35px}.outro{padding:110px 6%;min-height:750px}.sticker{font-size:9px;padding:13px 18px}.s2{top:13%;right:20%}.s4{bottom:3%}.showroom-bottom{gap:20px}}
@media(max-width:600px){header{padding:22px 5%}header img{width:120px}nav{gap:17px;font-size:10px}.hero{padding:160px 5% 180px;min-height:880px;height:auto}.hero-meta{top:98px;font-size:7px}.hero-meta span:last-child{display:none}.hero-center .kicker{max-width:210px;margin:0 auto 25px}.hero h1{font-size:17vw;letter-spacing:-.08em}.intro{font-size:17px;margin-top:25px}.circle-link{width:100px;height:100px}.float-field{inset:135px 6% 95px}.float-square{width:65px}.float-square span{font-size:35px}.f1{top:0}.f2{top:0}.f3{bottom:4%}.f4{bottom:2%}.chaos{left:50%;translate:-50% 0;bottom:100px;white-space:nowrap}.hero-bottom{font-size:7px;bottom:30px}.hero-bottom span{max-width:47%;line-height:1.6}.manifesto{padding:70px 6%}.manifesto h2{font-size:10.6vw;line-height:1.1}.manifesto-bottom{margin-top:40px;align-items:start;gap:25px}.manifesto-bottom p{font-size:14px}.spin-symbol{width:65px;flex-shrink:0}.showroom-pin{padding:55px 5% 30px}.projects-head{display:block}.projects-head h2{font-size:40px}.counter{margin-top:25px}.counter span{font-size:30px}.project-card{padding:26px}.project-top{gap:10px;margin-bottom:30px}.project-status{font-size:8px;padding:8px}.project-card h3{font-size:34px}.project-card p{font-size:15px}.project-card .beta-note{font-size:13px}.project-number{font-size:55px}.showroom-bottom{font-size:7px}.showroom-bottom>span:last-child{display:none}.outro{padding:150px 6%;min-height:740px}.outro h2{font-size:13vw}.outro>p:last-child{font-size:16px}.s1{top:4%;right:4%}.s2{top:15%;right:18%}.s3{bottom:15%;right:4%}.s4{bottom:4%;right:18%}.contact{padding:65px 5% 65px}.contact-title{font-size:18vw}.email{font-size:16px}footer{margin-top:65px}footer img{width:115px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;will-change:auto!important}.motion-ready .showroom{height:auto}.motion-ready .showroom-pin{height:auto;position:relative;overflow:visible}.motion-ready .track{display:grid;transform:none!important;width:auto;gap:25px}.motion-ready .project-card{width:auto}}
header .brand{background:var(--paper);padding:12px 15px;border-radius:15px}.manifesto h2 span{width:max-content;max-width:100%}.project-controls{display:none;gap:10px;margin-top:12px}.project-controls button{border:1px solid #ffffff80;border-radius:50%;width:38px;height:38px;background:transparent;color:var(--paper);font-size:22px}.project-controls button:hover{background:var(--accent);color:var(--ink)}
@media(min-width:901px) and (min-height:741px) and (prefers-reduced-motion:no-preference){.motion-ready .project-controls{display:flex}}
/* The exiting letter scene has its own boundary; floating squares stay well within it. */
.hero{overflow:clip}
/* The revised hero gives each square a character and room to play. */
.hero{height:100svh;min-height:850px;padding-top:145px;padding-bottom:135px}.hero h1{font-size:clamp(90px,12.6vw,205px)}.hero .intro{margin-top:28px}.play-hint{display:block;font:8px monospace;letter-spacing:.1em;margin-top:13px;opacity:.6}.circle-link{width:100px;height:100px;font-size:8px;margin-top:20px}.circle-link b{font-size:29px}.float-field{pointer-events:none;inset:160px 5% 150px}.float-square{pointer-events:auto;border:0;padding:0;font:inherit;cursor:pointer;transition:box-shadow .2s;outline-offset:10px}.float-square:hover{box-shadow:0 12px 0 #20212420}.float-square:focus-visible{outline:3px solid white;outline-offset:8px}.float-square .face{position:absolute;inset:0;display:block}.eyes{position:absolute;left:24%;right:24%;top:33%;display:flex;justify-content:space-between}.eyes i{display:block;width:16%;height:22px;background:var(--ink);border-radius:100px;transform:translate(var(--eye-x,0px),var(--eye-y,0px));transition:height .2s}.mouth{position:absolute;left:37%;top:62%;width:26%;height:13%;border-bottom:4px solid var(--ink);border-radius:0 0 100% 100%;rotate:0deg}.f2 .mouth{border-radius:0;rotate:-12deg;left:42%;width:24%;height:3%}.f3 .mouth{background:var(--ink);border:0;border-radius:50%;height:16%;left:43%;width:14%}.f4 .mouth{border-radius:0;height:2%}.f4 .eyes i{height:9px;border-radius:0}.f1:hover .eyes i:last-child,.float-square.poked .eyes i:last-child{height:4px;align-self:center}.quip{position:absolute;bottom:calc(100% + 17px);left:50%;translate:-50% 0;display:block;white-space:nowrap;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:10px 13px;border-radius:12px;box-shadow:3px 3px 0 #20212425;opacity:0;pointer-events:none;transition:opacity .2s;font:10px monospace!important;rotate:0deg}.quip:after{content:'';position:absolute;bottom:-6px;left:45%;width:10px;height:10px;background:var(--paper);border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);rotate:45deg}.poked .quip{opacity:1}.float-square.poked{animation:poke .7s cubic-bezier(.2,.9,.25,1.3)}@keyframes poke{25%{scale:.82;rotate:-12deg}55%{scale:1.15;translate:0 -25px;rotate:15deg}75%{scale:.95;rotate:-8deg}}.chaos-control{position:absolute;bottom:80px;left:5%;display:flex;align-items:center;gap:20px;z-index:5}.chaos-control .chaos{position:relative;inset:auto}.chaos-reply{font:10px monospace;color:#ddff71;max-width:250px}.hero.burst .line span{animation:rubber-type 1.35s calc(var(--n)*.045s) both}@keyframes rubber-type{18%{translate:0 12px;scale:1.08 .8}40%{translate:0 -45px;rotate:calc((var(--n) - 4)*5deg);scale:.9 1.15}65%{translate:0 9px;rotate:-5deg;scale:1.06 .94}82%{translate:0 -7px;rotate:2deg}100%{translate:0 0;rotate:0deg;scale:1}}.hero.burst .float-square{animation:character-jump 1.35s cubic-bezier(.25,.85,.3,1)}@keyframes character-jump{20%{scale:1.15 .8;translate:0 14px}48%{scale:.9 1.1;translate:0 -70px;rotate:100deg}75%{translate:0 7px;rotate:350deg;scale:1.05 .94}100%{translate:0 0;rotate:360deg;scale:1}}.motion-ready .hero-center{animation:hero-arrives .85s cubic-bezier(.2,.8,.3,1) both}@keyframes hero-arrives{from{opacity:0;translate:0 25px}to{opacity:1;translate:0 0}}
.card-body{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:45px}.project-copy{position:relative;z-index:1;min-width:0}.project-art{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;padding:25px 10px;min-width:0}.art-label{font:8px monospace;letter-spacing:.1em;color:#535b6c;text-align:center}.mini-board{display:flex;gap:9px;rotate:-5deg;width:100%;padding:17px;background:white;border:1px solid #20212430;border-radius:16px;box-shadow:7px 10px 0 #0057ff15}.mini-board>div{flex:1;background:#edf1fc;min-height:155px;padding:10px 7px;border-radius:9px}.mini-board i{display:block;width:25px;height:4px;background:#adb9d3;border-radius:5px;margin-bottom:17px}.mini-board b{display:block;height:36px;background:white;border:1px solid #d2daeb;border-radius:5px;margin-bottom:10px}.mini-board b.done{background:#0057ff}.terminal-art{width:100%;min-height:200px;background:var(--ink);color:white;padding:25px;border-radius:14px;rotate:5deg;box-shadow:9px 9px 0 #20212412}.terminal-art>span{font:bold 40px monospace;color:#fc3655}.terminal-art>i{display:block;height:5px;background:#ffffff30;width:80%;margin-top:15px}.terminal-art>i:nth-of-type(2){width:55%;background:#fc3655}.terminal-art>b{display:block;font:8px monospace;letter-spacing:.1em;margin-top:25px}.receipt-art{width:83%;background:white;border:1px solid #20212425;padding:25px;rotate:-7deg;box-shadow:10px 10px 0 #cfdceb;position:relative}.receipt-art>span{display:block;font-size:40px;color:var(--blue)}.receipt-art>b,.receipt-art>strong{display:block;font:8px monospace;margin-top:15px;line-height:1.6}.receipt-art>i{display:block;width:100%;border-top:1px dashed #b8c4d1;margin-top:15px}.witness-art{width:83%;background:white;border:1px solid #20212420;padding:28px;rotate:6deg;box-shadow:10px 10px 0 #e5cece;position:relative}.witness-art>b,.witness-art>strong{display:block;font:9px monospace;letter-spacing:.05em}.witness-art>i{height:6px;background:#e5e7ec;display:block;margin-top:18px}.witness-art>i:nth-of-type(2){width:70%}.proof{display:grid;place-items:center;margin-block:20px;width:45px;height:45px;border:2px solid #ed2140;color:#ed2140;border-radius:50%;font-size:26px}.scan-line{position:absolute;left:0;right:0;top:20%;height:2px;background:#ed2140;box-shadow:0 0 16px #ed214050;animation:scan 4s ease-in-out infinite}@keyframes scan{50%{top:85%}}.project-number{opacity:.5}.project-controls button:disabled{opacity:.25;cursor:default}.counter{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end;max-width:190px}.counter span{margin:0}.project-controls{width:100%;justify-content:flex-end}.projects-head .kicker{margin-bottom:15px}
@media(min-width:901px) and (min-height:741px){.motion-ready .showroom{height:320svh}.motion-ready .project-card{width:80vw;padding:35px 45px;justify-content:center}.motion-ready .project-top{margin-bottom:25px;min-height:65px}.motion-ready .project-card h3{font-size:clamp(35px,3.6vw,58px)}.motion-ready .project-card .project-logo{max-width:220px}.showroom-pin{padding-top:35px}.projects-head{margin-bottom:25px}}
@media(max-width:900px){.card-body{grid-template-columns:1fr 160px;gap:25px}.float-field{inset:155px 5% 150px}.hero{min-height:850px}.project-art{padding:15px 0}.hero h1{font-size:14vw}}
@media(max-width:600px){.hero{min-height:850px;height:auto;padding:205px 5% 230px}.hero h1{font-size:17vw}.float-field{inset:155px 9% 175px}.float-square{width:65px}.eyes i{height:13px}.f4 .eyes i{height:6px}.mouth{border-bottom-width:3px}.f1{top:0;left:0}.f2{top:0;right:0}.f3{bottom:0;left:0}.f4{bottom:0;right:0}.chaos-control{left:50%;translate:-50% 0;bottom:85px;flex-direction:column;gap:12px;white-space:nowrap;text-align:center}.chaos-control .chaos{translate:0 0}.chaos-reply{font-size:8px;min-height:10px}.play-hint{font-size:6px;letter-spacing:.03em}.hero .intro{font-size:16px;margin-top:24px}.circle-link{margin-top:23px}.quip{font-size:7px!important;padding:8px;max-width:160px;white-space:normal;min-width:105px}.hero-bottom span{font-size:6px}.hero-bottom span:last-child{text-align:right}.card-body{grid-template-columns:1fr;gap:15px}.project-art{padding:10px 25px 5px;max-width:230px;width:100%;justify-self:center;gap:20px}.mini-board>div{min-height:115px}.mini-board{padding:12px}.mini-board i{width:17px}.mini-board b{height:25px}.terminal-art{min-height:160px;padding:20px}.receipt-art,.witness-art{width:85%;padding:20px}.project-card{padding:28px}.project-card h3{font-size:32px}.counter{display:none}.project-top{margin-bottom:25px}.project-number{font-size:40px;right:25px;bottom:20px;opacity:.45}}
@media(prefers-reduced-motion:reduce){.motion-ready .hero-center{animation:none}.hero.burst .line span,.float-square.poked{animation:none}.card-body{grid-template-columns:1fr}.project-art{max-width:260px;justify-self:center;width:100%}.counter{display:none}}
.float-square{transition:transform .28s cubic-bezier(.2,.8,.3,1),box-shadow .2s}.eyes i{transition:transform .18s ease-out,height .2s}.project-top .project-logo{height:auto;object-fit:contain}.line{perspective:800px}
.offstage .float-square,.offstage .scan-line{animation-play-state:paused}
/* A little comic timing, with space for the software in between. */
.bantering .quip{opacity:1}.greeting .float-square .mouth{left:35%;width:30%;height:15%;border-bottom:4px solid var(--ink);border-radius:0 0 100% 100%;background:none;rotate:0deg}.greeting .f4 .eyes i:last-child{height:3px;align-self:center}.mouth{transition:border-radius .2s,height .2s,width .2s,rotate .2s}.circle-link{position:relative}.cta-aside{position:absolute;top:50%;left:calc(100% + 18px);background:var(--paper);border:1px solid var(--ink);color:var(--ink);padding:10px 12px;border-radius:12px;box-shadow:3px 3px 0 #20212420;white-space:nowrap;font:9px monospace;pointer-events:none;opacity:0;transform:rotate(5deg);transition:opacity .2s}.greeting .cta-aside{opacity:1}.contact-note{font-size:13px;line-height:1.6;margin-top:20px;opacity:.75}.parting-gift{display:flex;gap:25px;align-items:center;margin-top:55px;padding-top:25px;border-top:1px solid #ffffff40}.compliment{display:flex;align-items:center;gap:15px;flex-shrink:0;border:1px solid #ffffff70;border-radius:50px;padding:10px 19px 10px 10px;color:var(--paper);background:transparent;font-size:11px;transition:background .2s}.compliment:hover{background:#ffffff15}.compliment:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.gift-face{position:relative;display:block;width:36px;height:36px;background:var(--accent);border-radius:9px;rotate:-9deg}.gift-face i{position:absolute;top:11px;width:3px;height:6px;border-radius:50%;background:var(--ink)}.gift-face i:first-child{left:10px}.gift-face i:nth-child(2){right:10px}.gift-face b{position:absolute;bottom:8px;left:12px;width:12px;height:6px;border-bottom:2px solid var(--ink);border-radius:0 0 100% 100%}.gift-delivered .gift-face{animation:thanks .6s cubic-bezier(.2,.8,.3,1)}@keyframes thanks{40%{rotate:15deg;scale:1.15}70%{rotate:-15deg}100%{rotate:-9deg;scale:1}}.gift-delivered .gift-face i:nth-child(2){height:2px;top:13px}.gift-reply{font:12px monospace;line-height:1.6;min-height:40px;display:flex;align-items:center;color:var(--accent);max-width:480px}.contact footer{margin-top:45px}
@media(max-width:600px){.cta-aside{left:50%;top:calc(100% + 10px);translate:-50% 0;font-size:7px;padding:8px 10px}.parting-gift{align-items:start;flex-direction:column;gap:15px;margin-top:35px}.compliment{font-size:10px}.gift-reply{font-size:11px;min-height:38px;max-width:100%}.contact-note{font-size:11px}.greeting .float-square .mouth{border-bottom-width:3px}}
@media(max-width:600px){.f1 .quip{translate:-25% 0}.f2 .quip{translate:-75% 0}}
/* Draw icons as vectors: iPadOS can otherwise present diagonal arrows as emoji. */
.icon{display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:-.12em;overflow:visible}.contact-arrow .icon{display:block}.word-cloud{pointer-events:none}.sticker{pointer-events:auto;font-family:Arial,Helvetica,sans-serif;min-height:44px;cursor:pointer;transition:background .2s,box-shadow .2s,scale .2s}.sticker:hover{box-shadow:6px 6px 0 var(--ink)}.sticker:focus-visible{outline:3px solid var(--ink);outline-offset:6px}.sticker-selected{background:var(--ink);color:var(--paper);scale:1.05}.sticker-hint{position:absolute;top:75px;right:7%;font:7px monospace;letter-spacing:.05em;color:#626974;pointer-events:none}
@media(max-width:600px){.sticker-hint{top:12px;right:6%;font-size:6px}.sticker{font-size:8px;padding-inline:16px;max-width:220px}}
/* The arrow-stealing scene ignores input and reserves the original SVG's layout. */
.arrow-theft{position:fixed;inset:0;z-index:90;overflow:clip;pointer-events:none}.stolen-arrow{position:absolute;transform-origin:center;will-change:transform}.stolen-arrow svg{display:block;width:100%;height:100%}.arrow-helper{position:absolute;left:0;top:0;width:var(--actor-size);height:var(--actor-size);will-change:transform,opacity}.arrow-helper .gift-face{width:100%;height:100%;background:var(--actor-color);border:1px solid #20212470;box-shadow:3px 4px 0 #20212420;border-radius:21%;rotate:0deg}.arrow-helper .gift-face i{top:30%;width:9%;height:17%}.arrow-helper .gift-face i:first-child{left:28%}.arrow-helper .gift-face i:nth-child(2){right:28%}.arrow-helper .gift-face b{left:33%;bottom:24%;width:34%;height:17%;border-bottom-width:3px}.helper-1 .gift-face i{background:var(--paper)}.helper-1 .gift-face b{border-color:var(--paper)}.helper-2 .gift-face b{border-radius:0;rotate:-8deg}.helper-3 .gift-face b{border-radius:0}.theft-caption{position:absolute;translate:-50% 0;width:max-content;max-width:85%;padding:12px 17px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);box-shadow:3px 4px 0 #20212425;border-radius:12px;font:12px monospace;text-align:center}.arrow-helper.helper-3 .gift-face i:nth-child(2){transform-origin:center}
@media(max-width:600px){.theft-caption{font-size:10px;padding:10px 13px}.arrow-helper .gift-face b{border-bottom-width:2px}}
@media(prefers-reduced-motion:reduce){.arrow-helper,.stolen-arrow{will-change:auto}}
.arrow-helper::after{content:'';position:absolute;top:55%;width:15px;height:3px;background:var(--ink);border-radius:3px}.helper-0::after,.helper-2::after{right:-13px}.helper-1::after,.helper-3::after{left:-13px}
/* The longer scene has a readable dialogue track and an optional exit. */
.theft-art{position:absolute;inset:0;pointer-events:none}.theft-caption{width:310px;max-width:calc(100% - 32px);min-height:76px;padding:15px 18px;display:flex;flex-direction:column;gap:9px;text-align:left;border-radius:14px;background:var(--paper);box-shadow:4px 5px 0 #20212425}.theft-caption:has(.theft-line:empty){visibility:hidden}.theft-speaker{font:bold 8px monospace;letter-spacing:.1em;color:#626974}.theft-line{font:14px monospace;line-height:1.5}.theft-caption[data-speaker="1"]{background:#e6edff}.theft-caption[data-speaker="2"]{background:#ddff71}.arrow-helper.is-speaking .gift-face b{height:20%;border-radius:50%;background:var(--ink);border:0}.helper-1.is-speaking .gift-face b{background:var(--paper)}.theft-skip{position:absolute;right:18px;bottom:18px;pointer-events:auto;border:1px solid #20212480;border-radius:30px;padding:12px 17px;min-height:44px;background:var(--paper);color:var(--ink);font:10px monospace;cursor:pointer;box-shadow:3px 3px 0 #20212420}.theft-skip:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.theft-skip:hover{background:var(--accent)}.theft-flame{position:absolute;left:24%;top:76%;width:52%;height:18%;background:linear-gradient(90deg,#faf9f4,#ddff71 60%,transparent);clip-path:polygon(0 15%,100% 50%,0 85%);transform:rotate(135deg);transform-origin:0 50%;pointer-events:none}
@media(max-width:600px){.theft-caption{width:285px;min-height:80px;padding:13px 15px}.theft-line{font-size:12px}.theft-speaker{font-size:7px}.theft-skip{font-size:9px;padding:11px 14px}}
