:root{--pink:#f6dcd5;--pink-2:#f0cdc4;--paper:#fbf4ea;--cream:#f5ebdc;--cream-deep:#e2d3bb;--ink:#141414;--ink-2:#3a3634;--ink-3:#6d6560;--red:#e3412d;--red-deep:#a92a1b;--green:#2fa565;--green-deep:#1f6537;--yellow:#ffe066;--yellow-deep:#e2a91c;--blue:#3f67d8;--sky:#abd2ef;--f-display:"Archivo","Arial Black",system-ui,sans-serif;--f-mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;--f-hand:"Gochi Hand","Comic Sans MS",cursive;--f-marker:"Permanent Marker","Gochi Hand",cursive;--ease-out:cubic-bezier(0.2,0.8,0.2,1);--ease-spring:cubic-bezier(0.2,1.45,0.4,1);--shadow-paper:0 1px 0 rgba(80,40,30,.05),0 22px 34px -22px rgba(90,40,30,.55);--noise:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .35  0 0 0 0 .2  0 0 0 0 .15  0 0 0 .38 -.08'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");--speckle:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='260' height='260'><filter id='s'><feTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='2' seed='9' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 -16 12.2'/></filter><rect width='100%' height='100%' filter='url(%23s)'/></svg>");--fibres:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='600' height='600'><filter id='f'><feTurbulence type='fractalNoise' baseFrequency='.012 .04' numOctaves='4' seed='3'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .45 -.2'/></filter><rect width='100%' height='100%' filter='url(%23f)'/></svg>");--squares:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='420' height='168' viewBox='0 0 420 168'><rect width='420' height='168' fill='%23D3D9FD'/><defs><path id='sq-v0' d='M0 0 L -1 28 L 1 56 L 0 84 L -1 112 L 1 140 L 0 168'/><path id='sq-v1' d='M0 0 L 1 28 L -1 56 L 1 84 L 0 112 L -1 140 L 1 168'/><path id='sq-v2' d='M0 0 L -1 28 L 0 56 L 1 84 L -1 112 L 0 140 L 1 168'/><path id='sq-v3' d='M0 0 L 1 28 L 0 56 L -1 84 L 1 112 L 0 140 L -1 168'/><path id='sq-v4' d='M0 0 L 0 28 L 1 56 L -1 84 L 0 112 L 1 140 L 0 168'/><path id='sq-h0' d='M0 0 L 42 1 L 84 -1 L 126 0 L 168 1 L 210 -1 L 252 0 L 294 1 L 336 -1 L 378 0 L 420 1'/><path id='sq-h1' d='M0 0 L 42 -1 L 84 1 L 126 0 L 168 -1 L 210 1 L 252 0 L 294 -1 L 336 1 L 378 0 L 420 -1'/></defs><g stroke='%23CACFF9' stroke-width='1.3' fill='none' stroke-linecap='round'><use href='%23sq-v0' x='0' y='0'/><use href='%23sq-v1' x='84' y='0'/><use href='%23sq-v2' x='168' y='0'/><use href='%23sq-v3' x='252' y='0'/><use href='%23sq-v4' x='336' y='0'/><use href='%23sq-v0' x='420' y='0'/><use href='%23sq-h0' x='0' y='0'/><use href='%23sq-h1' x='0' y='84'/><use href='%23sq-h0' x='0' y='168'/></g></svg>")}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px;-webkit-text-size-adjust:100%}body{margin:0;background-color:var(--pink);background-image:var(--fibres);color:var(--ink);font-family:var(--f-mono);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:200;background-image:var(--noise);opacity:.45}body.menu-open{overflow:hidden}main{overflow-x:clip}h1,h2,h3,h4{margin:0;font-family:var(--f-display);font-weight:900;line-height:.95}p{margin:0 0 1em}a{color:inherit}img{max-width:100%}::-moz-selection{background:var(--yellow);color:var(--ink)}::selection{background:var(--yellow);color:var(--ink)}:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}.wrap{width:100%;max-width:1360px;margin:0 auto;padding:0 clamp(16px,4vw,52px)}.mono{font-family:var(--f-mono)}.hand{font-family:var(--f-hand)}.red{color:var(--red)}.ink{-webkit-mask-image:var(--speckle),linear-gradient(rgba(0,0,0,.3),rgba(0,0,0,.3));mask-image:var(--speckle),linear-gradient(rgba(0,0,0,.3),rgba(0,0,0,.3));-webkit-mask-size:260px 260px;mask-size:260px 260px;padding-block:.12em .22em;margin-block:-.12em -.22em}.display{font-size:clamp(2.6rem,6vw,5.6rem);font-variation-settings:"wdth" 86;letter-spacing:-.02em;line-height:.88}.display,.kicker{text-transform:uppercase}.kicker{margin:0 0 1.1rem;font-size:.82rem;font-weight:600;letter-spacing:.32em}.body-lg,.kicker{color:var(--ink-2)}.body-lg{font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.75}.section-head{max-width:780px;margin-bottom:clamp(36px,5vw,64px)}.section-head.split{max-width:none;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}.section-lede{margin-top:1.4rem;max-width:560px;font-size:.98rem;line-height:1.75;color:var(--ink-2)}.underline-red{position:relative;white-space:nowrap}.underline-red:after{content:"";position:absolute;left:-2%;right:-4%;bottom:-.12em;height:.16em;background:var(--red);border-radius:40% 60% 50% 50%;transform:rotate(-1.5deg) scaleX(0);transform-origin:left;transition:transform .9s var(--ease-out) .5s}.is-in .underline-red:after{transform:rotate(-1.5deg) scaleX(1)}.btn{--btn-shadow:var(--ink);position:relative;display:inline-flex;align-items:center;gap:.7em;padding:.95em 1.45em;border:2px solid var(--ink);border-radius:9px;font-family:var(--f-mono);font-weight:600;font-size:.98rem;line-height:1;text-decoration:none;cursor:pointer;box-shadow:0 6px 0 var(--btn-shadow);transition:transform .18s var(--ease-out),box-shadow .18s var(--ease-out),background-color .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 0 var(--btn-shadow)}.btn:active{transform:translateY(5px);box-shadow:0 1px 0 var(--btn-shadow)}.btn:disabled{opacity:.7;cursor:progress}.btn-arrow{display:inline-block;transition:transform .3s var(--ease-spring)}.btn:hover .btn-arrow,a:hover>.note-more .btn-arrow{transform:translateX(5px)}.btn-red{--btn-shadow:var(--red-deep);background:var(--red);border-color:var(--red-deep);color:#fff}.btn-red:hover{background:#ee4b36}.btn-paper{background:var(--paper);color:var(--ink)}.btn-sm{padding:.7em 1.05em;font-size:.86rem;box-shadow:0 4px 0 var(--btn-shadow)}.btn-sm:hover{box-shadow:0 6px 0 var(--btn-shadow)}.site-header{position:fixed;inset:0 0 auto;z-index:100;transition:background-color .35s,box-shadow .35s,-webkit-backdrop-filter .35s;transition:background-color .35s,box-shadow .35s,backdrop-filter .35s;transition:background-color .35s,box-shadow .35s,backdrop-filter .35s,-webkit-backdrop-filter .35s}.is-scrolled .site-header{background:hsla(0,0%,100%,.7);backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);box-shadow:0 1px 0 hsla(0,0%,8%,.08)}.site-header.is-open{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.header-inner{display:flex;align-items:center;gap:clamp(20px,3.5vw,56px);height:92px;transition:height .35s var(--ease-out)}.is-scrolled .header-inner{height:70px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}.logo-mark{display:inline-block;width:46px;height:46px;transition:transform .4s var(--ease-spring)}.brand:hover .logo-mark{transform:rotate(-10deg) scale(1.08)}.logo-mark svg{width:100%;height:100%;display:block}.logo-eyes rect{transform-box:fill-box;transform-origin:center;-webkit-animation:blink 4.6s infinite;animation:blink 4.6s infinite}.brand-text{font-family:var(--f-display);font-weight:900;font-variation-settings:"wdth" 92;text-transform:uppercase;font-size:1.02rem;line-height:.92;letter-spacing:.01em}.nav{display:flex;gap:clamp(18px,3vw,44px);margin-left:clamp(0px,2vw,30px)}.nav-link{position:relative;font-family:var(--f-mono);font-weight:500;font-size:.95rem;text-decoration:none;padding:6px 0}.nav-scribble{position:absolute;left:-4%;bottom:-4px;width:108%;height:9px;overflow:visible}.nav-scribble path{fill:none;stroke:var(--red);stroke-width:3;stroke-linecap:round;stroke-dasharray:1 2;stroke-dashoffset:1.001;transition:stroke-dashoffset .45s var(--ease-out)}.nav-link:focus-visible .nav-scribble path,.nav-link:hover .nav-scribble path{stroke-dashoffset:0}.header-cta,.menu-toggle{margin-left:auto}.menu-toggle{display:none;width:46px;height:46px;border:2px solid var(--ink);border-radius:10px;background:var(--paper);box-shadow:0 4px 0 var(--ink);cursor:pointer;position:relative}.menu-toggle span{position:absolute;left:11px;right:11px;height:2.5px;border-radius:2px;background:var(--ink);transition:transform .3s var(--ease-out),opacity .2s}.menu-toggle span:first-child{top:14px}.menu-toggle span:nth-child(2){top:20px}.menu-toggle span:nth-child(3){top:26px}.is-open .menu-toggle span:first-child{transform:translateY(6px) rotate(45deg)}.is-open .menu-toggle span:nth-child(2){opacity:0}.is-open .menu-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.top-squares{position:relative;background-image:linear-gradient(to bottom,transparent 0,transparent 82%,var(--sky) 100%),var(--squares);background-size:100% 100%,420px 168px;background-repeat:no-repeat,repeat}.hero{position:relative;padding-top:clamp(110px,12vw,150px)}.hero-grid{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);align-items:center;gap:clamp(12px,2vw,32px)}.hero-copy{position:relative;z-index:3;padding-bottom:60px}.hero-title-wrap{position:relative;left:10px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 0 calc(2.6rem + 20px);font-size:clamp(2.7rem,5.8vw,5.4rem);transform:perspective(12em) rotateX(var(--rx,0deg)) rotateY(calc(14deg + var(--ry, 0deg)));transform-origin:50% 0;transition:transform var(--tilt-speed,.6s) var(--ease-out)}.hero-title-wrap:hover{--tilt-speed:0.2s}.hero-title{position:relative;font-size:clamp(2.7rem,5.8vw,5.4rem);font-variation-settings:"wdth" 78;text-transform:uppercase;letter-spacing:-.025em;line-height:.84}.ht-line{display:block;white-space:nowrap}.ht-word{display:inline-block;-webkit-animation:wordIn .95s var(--ease-spring) both;animation:wordIn .95s var(--ease-spring) both;-webkit-animation-delay:calc(var(--i) * 95ms + .12s);animation-delay:calc(var(--i) * 95ms + .12s);transform-origin:0 100%}.ht-dot{color:var(--green-deep)}@-webkit-keyframes wordIn{0%{opacity:0;transform:translateY(70%) rotate(6deg) scale(.92)}to{opacity:1;transform:none}}@keyframes wordIn{0%{opacity:0;transform:translateY(70%) rotate(6deg) scale(.92)}to{opacity:1;transform:none}}.hero-brush{position:absolute;left:-.07em;bottom:-.2em;width:5em;height:.28em;overflow:visible}.hero-brush path{fill:none;stroke:var(--green);stroke-width:9;stroke-linecap:round;stroke-dasharray:1 2;stroke-dashoffset:1.001;filter:url(#rough);-webkit-animation:draw .9s var(--ease-out) 1.05s forwards;animation:draw .9s var(--ease-out) 1.05s forwards}@-webkit-keyframes draw{to{stroke-dashoffset:0}}@keyframes draw{to{stroke-dashoffset:0}}.spark{position:absolute;width:.55em;height:.55em;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'><g stroke='%23e3412d' stroke-width='3.2' stroke-linecap='round'><path d='M20 4 L22 14'/><path d='M6 16 L15 20'/><path d='M8 32 L16 27'/></g></svg>") no-repeat 50% /contain;-webkit-animation:sparkIn .6s var(--ease-spring) both;animation:sparkIn .6s var(--ease-spring) both}.spark-1{top:-.13em;left:-.35em;-webkit-animation-delay:.9s;animation-delay:.9s}.spark-2{top:2.5em;left:4.9em;transform:scaleX(-1) rotate(310deg);-webkit-animation-delay:1.1s;animation-delay:1.1s}@-webkit-keyframes sparkIn{0%{opacity:0;scale:.3}to{opacity:1;scale:1}}@keyframes sparkIn{0%{opacity:0;scale:.3}to{opacity:1;scale:1}}.hero-lede{max-width:32em;font-size:clamp(.98rem,1.22vw,1.14rem);line-height:1.7;color:var(--ink-2);-webkit-animation:fadeUp .9s var(--ease-out) .75s both;animation:fadeUp .9s var(--ease-out) .75s both}.hero-ctas{display:flex;flex-wrap:wrap;gap:18px;margin-top:2rem;-webkit-animation:fadeUp .9s var(--ease-out) .95s both;animation:fadeUp .9s var(--ease-out) .95s both}@-webkit-keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hero-art{position:relative;width:110%;aspect-ratio:820/640;margin-right:-8%;--mx:0;--my:0}.layer{position:absolute;transform:translate3d(calc(var(--mx) * var(--depth) * -24px),calc(var(--my) * var(--depth) * -16px),0);will-change:transform}.layer svg{display:block;width:100%;height:auto;overflow:visible}.pop{-webkit-animation:popIn 1.05s var(--ease-spring) both;animation:popIn 1.05s var(--ease-spring) both;-webkit-animation-delay:var(--delay);animation-delay:var(--delay)}.layer:first-child .pop{-webkit-animation:riseIn 1.2s var(--ease-out) both;animation:riseIn 1.2s var(--ease-out) both;-webkit-animation-delay:var(--delay);animation-delay:var(--delay)}@-webkit-keyframes popIn{0%{opacity:0;transform:translateY(-70px) scale(.5) rotate(-12deg)}45%{opacity:1}to{transform:none}}@keyframes popIn{0%{opacity:0;transform:translateY(-70px) scale(.5) rotate(-12deg)}45%{opacity:1}to{transform:none}}@-webkit-keyframes riseIn{0%{opacity:0;transform:translateY(80px) scale(.96)}to{opacity:1;transform:none}}@keyframes riseIn{0%{opacity:0;transform:translateY(80px) scale(.96)}to{opacity:1;transform:none}}.float-a{-webkit-animation:floatA 6s ease-in-out infinite;animation:floatA 6s ease-in-out infinite}.float-b{-webkit-animation:floatB 7.5s ease-in-out infinite;animation:floatB 7.5s ease-in-out infinite}.float-c{-webkit-animation:floatC 8.5s ease-in-out infinite;animation:floatC 8.5s ease-in-out infinite}.float-sway{transform-origin:50% 0;-webkit-animation:sway 5.5s ease-in-out infinite;animation:sway 5.5s ease-in-out infinite}.float-spin{-webkit-animation:spinBob 16s linear infinite;animation:spinBob 16s linear infinite}.float-drift{-webkit-animation:drift 14s ease-in-out infinite alternate;animation:drift 14s ease-in-out infinite alternate}@-webkit-keyframes floatA{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-16px) rotate(2deg)}}@keyframes floatA{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-16px) rotate(2deg)}}@-webkit-keyframes floatB{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(-3deg)}}@keyframes floatB{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(-3deg)}}@-webkit-keyframes floatC{0%,to{transform:translate(0)}33%{transform:translate(4px,-9px)}66%{transform:translate(-3px,-4px)}}@keyframes floatC{0%,to{transform:translate(0)}33%{transform:translate(4px,-9px)}66%{transform:translate(-3px,-4px)}}@-webkit-keyframes sway{0%,to{transform:rotate(3deg)}50%{transform:rotate(-3deg)}}@keyframes sway{0%,to{transform:rotate(3deg)}50%{transform:rotate(-3deg)}}@-webkit-keyframes spinBob{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(180deg)}to{transform:translateY(0) rotate(1turn)}}@keyframes spinBob{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(180deg)}to{transform:translateY(0) rotate(1turn)}}@-webkit-keyframes drift{0%{transform:translateX(-10px)}to{transform:translateX(28px)}}@keyframes drift{0%{transform:translateX(-10px)}to{transform:translateX(28px)}}.paper-obj{background:var(--paper);background-image:var(--noise);border-radius:12px;box-shadow:inset 0 2px 0 hsla(0,0%,100%,.7),inset 0 -3px 0 rgba(120,80,60,.12),0 22px 30px -14px rgba(100,45,35,.45)}.tilt-l .paper-obj{transform:perspective(700px) rotateY(18deg) rotateX(4deg) rotate(-4deg)}.tilt-l2 .paper-obj{transform:perspective(700px) rotateY(22deg) rotate(-6deg)}.tilt-r .paper-obj{transform:perspective(900px) rotateY(-16deg) rotateX(5deg) rotate(2deg)}.term{padding:10px 12px 14px}.term-bar,.ui-bar{display:flex;gap:6px;padding:2px 4px 9px}.term-bar i,.ui-bar i{width:10px;height:10px;border-radius:50%;box-shadow:inset 0 -2px 0 rgba(0,0,0,.18)}.term-screen{min-height:7.4em;padding:.9em 1.1em;border-radius:8px;background:linear-gradient(160deg,#353b54,#23273a);box-shadow:inset 0 2px 10px rgba(0,0,0,.5);color:#f6d7cf;font-family:var(--f-mono);font-size:clamp(9px,1.14vw,16px);line-height:1.55}.term-line{white-space:pre}.term-prompt{color:#ff8a72}.caret{display:inline-block;width:.55em;height:1.05em;margin-left:2px;vertical-align:-.15em;background:#f6d7cf;-webkit-animation:caret 1s steps(1) infinite;animation:caret 1s steps(1) infinite}@-webkit-keyframes caret{50%{opacity:0}}@keyframes caret{50%{opacity:0}}.chart-card{padding:10px}.chart-line{stroke-dasharray:1 2;stroke-dashoffset:1.001;-webkit-animation:chartDraw 6s var(--ease-out) 1.4s infinite;animation:chartDraw 6s var(--ease-out) 1.4s infinite}.chart-dot{transform-box:fill-box;transform-origin:center;-webkit-animation:chartDot 6s var(--ease-spring) 1.4s infinite;animation:chartDot 6s var(--ease-spring) 1.4s infinite}@-webkit-keyframes chartDraw{0%{stroke-dashoffset:1}35%,85%{stroke-dashoffset:0}to{stroke-dashoffset:-1}}@keyframes chartDraw{0%{stroke-dashoffset:1}35%,85%{stroke-dashoffset:0}to{stroke-dashoffset:-1}}@-webkit-keyframes chartDot{0%,30%{transform:scale(0)}38%{transform:scale(1.4)}44%,85%{transform:scale(1)}95%,to{transform:scale(0)}}@keyframes chartDot{0%,30%{transform:scale(0)}38%{transform:scale(1.4)}44%,85%{transform:scale(1)}95%,to{transform:scale(0)}}.ui-card{padding:8px 10px 12px}.ui-body{display:grid;gap:7px;padding:4px 2px 0}.ui-row{position:relative;display:block;height:8px;padding-left:14px}.ui-row:before{position:absolute;left:0;top:0;width:8px;height:8px;border-radius:50%}.ui-row:after,.ui-row:before{content:"";background:var(--c)}.ui-row:after{display:block;height:100%;width:var(--w);border-radius:6px;transform-origin:left;-webkit-animation:rowGrow 4.5s var(--ease-out) infinite;animation:rowGrow 4.5s var(--ease-out) infinite}.ui-row:nth-child(2):after{-webkit-animation-delay:.3s;animation-delay:.3s}.ui-row:nth-child(3):after{-webkit-animation-delay:.6s;animation-delay:.6s}.ui-row:nth-child(4):after{-webkit-animation-delay:.9s;animation-delay:.9s}.ui-row:nth-child(5):after{-webkit-animation-delay:1.2s;animation-delay:1.2s}@-webkit-keyframes rowGrow{0%{transform:scaleX(.15)}30%,80%{transform:scaleX(1)}to{transform:scaleX(.15)}}@keyframes rowGrow{0%{transform:scaleX(.15)}30%,80%{transform:scaleX(1)}to{transform:scaleX(.15)}}.bot .iris{transform-origin:100px 100px;-webkit-animation:spin 12s linear infinite;animation:spin 12s linear infinite}.bot .eyes{transform:translate(calc(var(--mx) * 7px),calc(var(--my) * 5px))}.bot .eyes rect{transform-box:fill-box;transform-origin:center;-webkit-animation:blink 5.2s infinite;animation:blink 5.2s infinite}.bot-shadow{-webkit-animation:shadowPulse 6s ease-in-out infinite;animation:shadowPulse 6s ease-in-out infinite;transform-origin:104px 196px}@-webkit-keyframes spin{to{transform:rotate(1turn)}}@keyframes spin{to{transform:rotate(1turn)}}@-webkit-keyframes blink{0%,91%,97%,to{transform:scaleY(1)}94%{transform:scaleY(.08)}}@keyframes blink{0%,91%,97%,to{transform:scaleY(1)}94%{transform:scaleY(.08)}}@-webkit-keyframes shadowPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.8);opacity:.6}}@keyframes shadowPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.8);opacity:.6}}.sticky{position:relative;font-family:var(--f-marker);color:var(--ink);text-align:center;background:linear-gradient(170deg,#fff08a,#ffde55 70%,#f6cf3e);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.6),0 16px 22px -10px rgba(110,70,0,.45)}.sticky-hero{padding:1.4em .9em 1.1em;font-size:clamp(8px,.98vw,14px);line-height:1.2;transform:rotate(3deg)}.sticky-red{color:var(--red)}.tape{position:absolute;top:-12px;left:50%;width:78px;height:24px;margin-left:-39px;background:rgba(255,252,240,.62);box-shadow:0 1px 2px rgba(0,0,0,.08);transform:rotate(-4deg);-webkit-clip-path:polygon(3% 0,97% 4%,100% 30%,96% 55%,100% 80%,97% 100%,2% 96%,0 70%,4% 45%,0 18%);clip-path:polygon(3% 0,97% 4%,100% 30%,96% 55%,100% 80%,97% 100%,2% 96%,0 70%,4% 45%,0 18%);z-index:2}.tape-tl{left:-14px;top:6px;margin:0;transform:rotate(-38deg)}.tape-br{left:auto;right:-16px;top:auto;bottom:10px;margin:0;transform:rotate(-35deg)}.annot{position:absolute;display:flex;align-items:center;gap:6px;font-family:var(--f-hand);font-size:clamp(11px,1.2vw,19px);line-height:1.05;text-transform:uppercase;letter-spacing:.03em;color:var(--ink);opacity:0;-webkit-animation:fadeIn .7s ease var(--delay) forwards;animation:fadeIn .7s ease var(--delay) forwards;z-index:4}.annot span{transform:rotate(-6deg)}.arrow{width:clamp(26px,3vw,44px);flex:none;overflow:visible}.arrow path{fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 2;stroke-dashoffset:1.001;-webkit-animation:draw .9s var(--ease-out) var(--delay) forwards;animation:draw .9s var(--ease-out) var(--delay) forwards}.annot-1{top:-10%;right:13%}.annot-2{top:17%;right:-1%;color:var(--red)}.annot-3{top:50%;right:-2%;flex-direction:column;align-items:flex-start}.annot-4{top:72%;left:3%;flex-direction:column-reverse;align-items:flex-end}.paper-card{position:relative;background-color:var(--paper);background-image:var(--noise);border-radius:6px;box-shadow:var(--shadow-paper);text-decoration:none;color:inherit;transform:perspective(1000px) translateY(var(--lift,0)) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateZ(var(--lift-z,0)) rotate(var(--tilt,0deg));transform-style:preserve-3d}.paper-card,.paper-card[data-reveal]{transition:opacity .8s var(--ease-out) var(--d,0ms),translate 1s var(--ease-out) var(--d,0ms),rotate 1s var(--ease-out) var(--d,0ms),scale 1s var(--ease-out) var(--d,0ms),transform var(--tilt-speed,.6s) var(--ease-out),box-shadow .4s var(--ease-out),padding .5s var(--ease-out),margin .5s var(--ease-out)}.paper-card:hover{--tilt-speed:0.2s;--lift:-8px;--lift-z:10px;box-shadow:0 1px 0 rgba(80,40,30,.05),0 34px 44px -24px rgba(90,40,30,.6)}.card-sheen{position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at var(--gx,50%) var(--gy,0),hsla(0,0%,100%,.55),transparent 45%);opacity:0;transition:opacity .4s}.paper-card:hover .card-sheen{opacity:1}.card-sheen~*{position:relative}.circle-arrow{display:inline-grid;place-items:center;width:34px;height:34px;border:2px solid var(--ink);border-radius:50%;font-size:1rem;transition:background .25s,color .25s,transform .4s var(--ease-spring)}.paper-card:hover .circle-arrow{background:var(--ink);color:var(--paper);transform:rotate(-45deg)}[data-reveal]{transition:opacity .8s var(--ease-out) var(--d,0ms),translate 1s var(--ease-out) var(--d,0ms),rotate 1s var(--ease-out) var(--d,0ms),scale 1s var(--ease-out) var(--d,0ms)}[data-reveal=up]:not(.is-in){opacity:0;translate:0 34px}[data-reveal=card]:not(.is-in){opacity:0;translate:0 80px;rotate:5deg}[data-reveal=tilt]:not(.is-in){opacity:0;rotate:-12deg;scale:.82}[data-reveal=paper]:not(.is-in){opacity:0;translate:0 70px;rotate:-2.5deg}[data-reveal=slap]{transition:opacity .3s ease .5s,scale .6s var(--ease-spring) .5s,rotate .6s var(--ease-spring) .5s}[data-reveal=slap]:not(.is-in){opacity:0;scale:1.8;rotate:-24deg}[data-reveal=swing]{transform-origin:50% -4%;transition:none}[data-reveal=swing].is-in{-webkit-animation:pin-rock 1.8s ease-in-out both;animation:pin-rock 1.8s ease-in-out both}@-webkit-keyframes pin-rock{0%,to{rotate:0deg}14%{rotate:-13deg}30%{rotate:9deg}46%{rotate:-5.5deg}62%{rotate:3deg}78%{rotate:-1.5deg}91%{rotate:.5deg}}@keyframes pin-rock{0%,to{rotate:0deg}14%{rotate:-13deg}30%{rotate:9deg}46%{rotate:-5.5deg}62%{rotate:3deg}78%{rotate:-1.5deg}91%{rotate:.5deg}}.focus{position:relative;z-index:4;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,22px);margin-top:clamp(28px,3.5vw,60px);padding-bottom:clamp(60px,7vw,100px)}.focus-card{display:grid;grid-template-columns:42% 1fr;align-items:center;gap:6px;padding:22px 22px 22px 10px;min-height:210px}.focus-icon svg{display:block;width:100%;overflow:visible;transition:transform .5s var(--ease-spring)}.focus-card:hover .focus-icon svg{transform:translateZ(30px) scale(1.06) rotate(-2deg)}.focus-body{display:flex;flex-direction:column;gap:10px;padding-right:30px}.focus-n{position:absolute;top:18px;right:20px;color:var(--red);font-size:.9rem;font-weight:600}.focus-title{font-family:var(--f-display);font-weight:900;font-variation-settings:"wdth" 90;font-size:clamp(1.4rem,2vw,1.95rem);line-height:.92;letter-spacing:-.01em;-webkit-mask-image:var(--speckle);mask-image:var(--speckle);-webkit-mask-size:260px 260px;mask-size:260px 260px}.focus-copy{font-size:.84rem;line-height:1.55;color:var(--ink-2)}.focus-tags-inner{display:flex;flex-wrap:wrap;gap:5px}.focus-tags-inner>span{font-size:.7rem;padding:2px 8px;border:1.5px solid var(--ink);border-radius:99px}@media (min-width:1181px){.focus-tags{height:0;margin-top:-10px;opacity:0;overflow:hidden;transition:height .5s var(--ease-out),margin .5s var(--ease-out),opacity .4s}.focus-card:focus-visible,.focus-card:hover{--grow:calc(var(--open-h, 0px) + 10px);margin-top:calc(var(--grow) / -2);margin-bottom:calc(var(--grow) / -2)}.focus-card:focus-visible .focus-tags,.focus-card:hover .focus-tags{height:var(--open-h,auto);margin-top:0;opacity:1}}.focus-card .circle-arrow{position:absolute;right:18px;bottom:18px}.bulb-rays{-webkit-animation:flicker 2.4s ease-in-out infinite;animation:flicker 2.4s ease-in-out infinite}@-webkit-keyframes flicker{0%,to{opacity:1}45%{opacity:.35}50%{opacity:1}55%{opacity:.6}}@keyframes flicker{0%,to{opacity:1}45%{opacity:.35}50%{opacity:1}55%{opacity:.6}}.win-back{-webkit-animation:floatB 6s ease-in-out infinite;animation:floatB 6s ease-in-out infinite}.win-front{-webkit-animation:floatA 5s ease-in-out infinite;animation:floatA 5s ease-in-out infinite}.needle{transform-origin:58px 60px;-webkit-animation:needle 5s var(--ease-spring) infinite;animation:needle 5s var(--ease-spring) infinite}@-webkit-keyframes needle{0%,to{transform:rotate(-20deg)}40%{transform:rotate(35deg)}60%{transform:rotate(20deg)}}@keyframes needle{0%,to{transform:rotate(-20deg)}40%{transform:rotate(35deg)}60%{transform:rotate(20deg)}}.plane{-webkit-animation:plane 4.5s ease-in-out infinite;animation:plane 4.5s ease-in-out infinite}@-webkit-keyframes plane{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(6px,-8px) rotate(-3deg)}}@keyframes plane{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(6px,-8px) rotate(-3deg)}}.about{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:start;gap:calc(clamp(30px, 6vw, 90px) - 30px);padding-bottom:clamp(80px,10vw,140px)}.about-photo{display:flex;flex-direction:column;align-items:center;gap:16px}.photo-rig{position:relative}.photo-round{width:min(320px,70vw);aspect-ratio:1;margin:0 auto;padding:10px;border-radius:50%;background:#fffdf8;box-shadow:var(--shadow-paper);transition:transform .6s var(--ease-spring)}.about-photo:hover .photo-round{transform:scale(1.03)}.photo-round img{border-radius:50%;filter:saturate(.92) contrast(1.02)}.polaroid-cap{position:absolute;left:0;right:0;bottom:14px;text-align:center;font-size:1.5rem;line-height:1}.about-copy .display{font-size:clamp(2.2rem,4.6vw,4.3rem);margin-bottom:1.5rem}.stamps{display:flex;flex-wrap:wrap;gap:18px;padding:0;margin:1.8rem 0 0;list-style:none}.stamps li{padding:.5em .9em;border:3px solid var(--red);border-radius:6px;color:var(--red);font-family:var(--f-mono);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;transform:rotate(var(--r));-webkit-mask-image:var(--speckle);mask-image:var(--speckle);-webkit-mask-size:260px 260px;mask-size:260px 260px;opacity:.88}.stamps strong{font-family:var(--f-display);font-size:1.25rem;letter-spacing:0;margin-right:.2em}.approach{position:relative;overflow:hidden;background:var(--sky);--p:0.5}.landscape{position:absolute;inset:0;pointer-events:none}.ls-sky{position:absolute;inset:-10% 0 0;width:100%;height:110%;transform:translateY(calc((var(--p) - .5) * 100px))}.ls-cloud{position:absolute;overflow:visible;-webkit-animation:cloud 26s ease-in-out infinite alternate;animation:cloud 26s ease-in-out infinite alternate}@-webkit-keyframes cloud{0%{transform:translateX(-30px)}to{transform:translateX(40px)}}@keyframes cloud{0%{transform:translateX(-30px)}to{transform:translateX(40px)}}.ls{position:absolute;left:0;bottom:0;width:100%;height:auto;aspect-ratio:1600/460;min-height:260px}.ls-far{transform:translateY(calc((var(--p) - .5) * 90px))}.ls-mid{transform:translateY(calc((var(--p) - .5) * 70px))}.ls-landmarks{transform:translateY(calc((var(--p) - .5) * 50px))}.ls-trees-back{transform:translateY(calc((var(--p) - .5) * 26px))}.ls-pan{--pan:1;transform:translateX(calc((var(--p) - .5) * var(--k) * var(--pan) * -1px))}.approach-inner{position:relative;z-index:2;padding-top:clamp(90px,10vw,140px);padding-bottom:clamp(220px,24vw,360px)}.torn{position:relative;filter:drop-shadow(0 18px 22px rgba(70,40,30,.28))}.torn-fiber{position:absolute;inset:-4px -2px;background:#fffdf9}.torn-sheet{position:relative;background-color:var(--paper);background-image:var(--noise)}.approach-paper .torn-sheet{padding:clamp(50px,6vw,80px) clamp(24px,5vw,70px) clamp(50px,6vw,70px)}.approach-grid{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:clamp(24px,5vw,70px)}.approach-grid .display{font-size:clamp(2.4rem,5.2vw,5rem)}.approach-lede{max-width:460px;padding-left:clamp(18px,3vw,40px);border-left:2px solid var(--ink);font-size:.95rem;color:var(--ink-2)}.approach-lede p{margin:0}.pillars{display:grid;gap:10px;margin:22px 0 0;padding:0;list-style:none}.pillars li{display:grid;grid-template-columns:4.6em 1fr;align-items:baseline;gap:12px}.pillars strong{font-family:var(--f-marker);font-size:1.15rem;font-weight:400;color:var(--red);text-transform:uppercase}.pillars span{font-size:.88rem}.timeline{position:relative;display:grid;grid-template-columns:repeat(5,1fr);margin:clamp(40px,5vw,64px) 0 0;padding:0;list-style:none}.timeline-line{position:absolute;left:3%;right:0;top:3px;width:97%;height:20px;overflow:visible}.timeline-line path{fill:none;stroke:var(--ink);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:1 2;stroke-dashoffset:1.001;transition:stroke-dashoffset 1.6s var(--ease-out) .3s}.timeline-line .timeline-head{transition-delay:1.8s;transition-duration:.4s}.timeline.is-in .timeline-line path{stroke-dashoffset:0}.timeline li{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;opacity:1}.timeline li:first-child{align-items:flex-start;text-align:left}.tl-dot{position:relative;z-index:1;width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 35% 30%,hsla(0,0%,100%,.7),transparent 45%),var(--c);box-shadow:inset 0 -3px 0 rgba(0,0,0,.18),0 6px 10px -4px rgba(0,0,0,.35);scale:0;transition:scale .6s var(--ease-spring);transition-delay:calc(.4s + var(--i) * .3s)}.tl-label{font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.tl-note{font-size:1.15rem;line-height:1.1;color:var(--ink-3);max-width:12ch;opacity:0;translate:0 8px;transition:opacity .5s,translate .5s var(--ease-out);transition-delay:calc(.6s + var(--i) * .3s)}.timeline.is-in .tl-dot{scale:1}.timeline.is-in .tl-note{opacity:1;translate:0 0}.timeline li:hover .tl-dot{scale:1.25;transition-delay:0s}.sticky-big{position:absolute;right:clamp(30px,7vw,120px);top:calc(100% - clamp(220px, 24vw, 360px) - 30px);z-index:3;padding:1em 1.2em .9em;font-size:clamp(1.25rem,2.3vw,2.2rem);line-height:1.15;text-align:left;white-space:nowrap;transform:rotate(-6deg)}.sticky-u{position:relative}.sticky-u:after{content:"";position:absolute;left:-3%;right:-3%;bottom:-.05em;height:.14em;border-radius:50%;background:var(--red);transform:rotate(-2deg)}.torn-edge{position:absolute;top:1px;left:0;width:100%;height:clamp(22px,3vw,40px);transform:translateY(-100%);z-index:5;filter:drop-shadow(0 -6px 8px rgba(60,30,20,.12))}.torn-edge-fiber{fill:#fffaf4}.edge-pink .torn-edge-fill{fill:var(--pink)}.edge-cream .torn-edge-fill,.edge-footer .torn-edge-fill{fill:var(--cream)}.services{position:relative;padding:clamp(80px,9vw,130px) 0 clamp(60px,7vw,100px)}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,1.8vw,26px)}.service-card{padding:26px 24px 28px}.service-n{position:absolute;top:18px;right:20px;font-size:.85rem;font-weight:600;color:var(--red)}.service-icon{display:block;width:60px;height:60px;margin-bottom:18px;color:var(--ink);transition:transform .5s var(--ease-spring)}.service-card:hover .service-icon{transform:rotate(-8deg) scale(1.12);color:var(--red)}.doodle{width:100%;height:100%;overflow:visible}.doodle path{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 2;stroke-dashoffset:1.001;transition:stroke-dashoffset .9s var(--ease-out);transition-delay:calc(var(--d, 0ms) + .3s + var(--i) * .16s)}.is-in .doodle path{stroke-dashoffset:0}.service-card h3{font-size:clamp(1.25rem,1.6vw,1.5rem);font-variation-settings:"wdth" 90;text-transform:uppercase;letter-spacing:-.01em;margin-bottom:.7rem}.service-card p{margin:0;font-size:.86rem;line-height:1.65;color:var(--ink-2)}.expertise{position:relative;padding:clamp(40px,5vw,80px) 0 clamp(120px,12vw,180px)}.notebook-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(26px,3.4vw,50px)}.notebook{position:relative;padding:34px 28px 30px 64px;background-color:#fffdf7;background-image:linear-gradient(90deg,transparent 44px,rgba(227,65,45,.45) 0,rgba(227,65,45,.45) 46px,transparent 0),linear-gradient(180deg,transparent 0 44px,#fffdf7 44px 48px,transparent 48px),repeating-linear-gradient(180deg,transparent 0 31px,rgba(63,103,216,.17) 31px 32px);background-position:0 0,0 0,0 14px;box-shadow:var(--shadow-paper);transform:rotate(var(--tilt));transition:opacity .8s var(--ease-out) var(--d,0ms),translate 1s var(--ease-out) var(--d,0ms),rotate 1s var(--ease-out) var(--d,0ms),transform .5s var(--ease-out)}.notebook:hover{transform:rotate(0deg) translateY(-4px)}.notebook h3{position:relative;display:inline-block;font-size:clamp(1.3rem,2vw,1.75rem);font-variation-settings:"wdth" 88;text-transform:uppercase;margin-bottom:18px}.notebook h3:after{content:"";position:absolute;left:-4px;right:-8px;bottom:.02em;height:.38em;z-index:-1;background:var(--c);opacity:.35;border-radius:3px 10px 4px 12px;transform:rotate(-1deg) scaleX(0);transform-origin:left;transition:transform .7s var(--ease-out) calc(var(--d, 0ms) + .4s)}.notebook.is-in h3:after{transform:rotate(-1deg) scaleX(1)}.notebook ul{margin:0;padding:0;list-style:none}.notebook li{position:relative;padding-left:6px;font-size:.9rem;line-height:32px;color:var(--ink-2)}.tick{position:absolute;left:-49px;top:6px;width:20px;height:20px;overflow:visible}.tick path{fill:none;stroke:var(--c);stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 2;stroke-dashoffset:1.001;transition:stroke-dashoffset .45s var(--ease-out);transition-delay:calc(var(--d, 0ms) + .6s + var(--j) * .14s)}.notebook.is-in .tick path{stroke-dashoffset:0}.projects{position:relative;background-color:var(--cream);background-image:var(--fibres);padding:clamp(80px,9vw,130px) 0 clamp(100px,10vw,160px)}.project{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(30px,6vw,100px);padding:clamp(30px,4vw,60px) 0;--p:0.5}.project.flip .project-shot{order:2}.project-shot{position:relative;transform:translateY(calc((.5 - var(--p)) * 70px))}.shot-frame{position:relative;max-width:440px;margin:0 auto;padding:12px;background:#fffdf8;box-shadow:var(--shadow-paper);transform:rotate(-2.5deg);transition:transform .6s var(--ease-spring)}.project.flip .shot-frame{transform:rotate(2.5deg)}.project-shot:hover .shot-frame{transform:rotate(0deg) scale(1.03)}.shot-frame img{border-radius:3px}.shot-aside{position:absolute;right:4%;bottom:-28px;font-size:clamp(1.1rem,1.6vw,1.5rem);color:var(--red);transform:rotate(-5deg);white-space:nowrap}.project.flip .shot-aside{right:auto;left:4%}.project-n{display:block;font-size:.82rem;font-weight:600;letter-spacing:.2em;color:var(--ink-3);margin-bottom:.8rem}.project-name{font-size:clamp(2.1rem,4.2vw,3.8rem);font-variation-settings:"wdth" 84;text-transform:uppercase;letter-spacing:-.02em;margin-bottom:1rem}.project-lede{font-family:var(--f-display);font-weight:600;font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:1.35}.project-body{font-size:.92rem;line-height:1.75;color:var(--ink-2)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:1.2rem 0 0;padding:0;list-style:none}.chips li{padding:.3em .85em;border:1.5px solid var(--ink);border-radius:99px;font-size:.76rem;font-weight:500;background:hsla(0,0%,100%,.4);transition:background .2s,color .2s,transform .3s var(--ease-spring)}.chips li:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px) rotate(-2deg)}.notes{position:relative;padding:clamp(90px,10vw,140px) 0 clamp(80px,8vw,120px)}.note-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,34px)}.note-card{display:flex;flex-direction:column;gap:10px;padding:14px 14px 22px}.pin{position:absolute;top:-10px;left:50%;width:22px;height:22px;margin-left:-11px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffb3a3,var(--red) 45%,var(--red-deep));box-shadow:0 6px 6px -2px rgba(0,0,0,.35);z-index:2}.note-img{display:block;aspect-ratio:16/10;overflow:hidden;border-radius:3px;background:var(--cream-deep)}.note-img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .8s var(--ease-out)}.note-card:hover .note-img img{transform:scale(1.06)}.note-img-fallback{display:block;width:100%;height:100%;background:radial-gradient(circle at 30% 45%,var(--yellow) 0 16%,transparent 17%),radial-gradient(circle at 68% 58%,var(--blue) 0 13%,transparent 14%),radial-gradient(circle at 52% 30%,var(--red) 0 7%,transparent 8%),var(--green);filter:hue-rotate(calc(var(--h) * 1deg))}.note-meta{margin-top:6px;font-size:.74rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}.note-title{font-family:var(--f-display);font-weight:800;font-size:clamp(1.25rem,1.7vw,1.55rem);line-height:1.05}.note-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.84rem;line-height:1.6;color:var(--ink-2)}.note-more{margin-top:auto;padding-top:6px;font-size:.84rem;font-weight:600}.contact{position:relative;padding:clamp(40px,5vw,80px) 0 clamp(120px,12vw,180px)}.contact-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,6vw,90px);align-items:start}.map-polaroid{position:relative;max-width:420px;margin-top:2.6rem;padding:12px 12px 54px;background:#fffdf8;box-shadow:var(--shadow-paper);transform:rotate(-2.5deg)}.map-polaroid iframe{display:block;width:100%;aspect-ratio:4/3;border:0;filter:saturate(.85) sepia(.12)}.linkedin{display:inline-flex;align-items:center;gap:10px;margin-top:2rem;font-weight:600;font-size:.92rem;text-decoration:none;border-bottom:2px solid var(--ink);padding-bottom:2px}.linkedin:hover{color:var(--red);border-color:var(--red)}.contact-paper .torn-sheet{padding:clamp(40px,5vw,64px) clamp(22px,4vw,56px);background-image:var(--noise),repeating-linear-gradient(180deg,transparent 0 39px,rgba(63,103,216,.12) 39px 40px)}.contact-form{position:relative;display:grid;gap:22px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:grid;gap:6px}.field label{font-size:.74rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2)}.field input,.field textarea{width:100%;padding:10px 4px;border:0;border-bottom:2px dashed hsla(0,0%,8%,.45);background:transparent;font-family:var(--f-hand);font-size:1.35rem;color:var(--ink);transition:border-color .2s,background .3s;resize:vertical}.field input::-moz-placeholder,.field textarea::-moz-placeholder{color:hsla(0,0%,8%,.32)}.field input:-ms-input-placeholder,.field textarea:-ms-input-placeholder{color:hsla(0,0%,8%,.32)}.field input::placeholder,.field textarea::placeholder{color:hsla(0,0%,8%,.32)}.field input:focus,.field textarea:focus{outline:none;border-bottom:2px solid var(--red);background:rgba(255,224,102,.28)}.form-foot{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:8px}.form-error{margin:0;color:var(--red-deep);font-size:.85rem}.form-thanks{min-height:1.6em;margin:0;font-family:var(--f-hand);font-size:1.3rem;color:var(--green-deep)}.sent-stamp{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.sent-stamp span{padding:.15em .5em;border:6px solid var(--red);border-radius:10px;font-family:var(--f-display);font-weight:900;font-size:clamp(3rem,7vw,5.5rem);text-transform:uppercase;color:var(--red);-webkit-mask-image:var(--speckle);mask-image:var(--speckle);-webkit-mask-size:260px 260px;mask-size:260px 260px;opacity:0;transform:rotate(-14deg) scale(2.4)}.is-sent .sent-stamp span{-webkit-animation:stamp .55s var(--ease-spring) forwards;animation:stamp .55s var(--ease-spring) forwards}@-webkit-keyframes stamp{0%{opacity:0;transform:rotate(-14deg) scale(2.4)}to{opacity:.9;transform:rotate(-14deg) scale(1)}}@keyframes stamp{0%{opacity:0;transform:rotate(-14deg) scale(2.4)}to{opacity:.9;transform:rotate(-14deg) scale(1)}}.site-footer{position:relative;background-color:var(--cream);background-image:var(--fibres);padding-top:clamp(60px,7vw,90px)}.footer-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.2fr 1fr;align-items:start;gap:30px}.footer-brand{display:flex;gap:14px;align-items:flex-start}.footer-brand .logo-mark{width:54px;height:54px;flex:none}.footer-brand strong{display:block;font-family:var(--f-display);font-weight:900;font-size:1.5rem;text-transform:uppercase;line-height:1;margin-bottom:6px}.footer-brand span{display:block;font-size:.85rem;color:var(--ink-2)}.footer-links{display:grid;grid-template-columns:repeat(2,auto);gap:8px 30px;justify-content:start;margin:0;padding:0;list-style:none}.footer-links a{font-weight:500;text-decoration:none;background:linear-gradient(var(--red),var(--red)) 0 100% /0 2px no-repeat;transition:background-size .35s var(--ease-out)}.footer-links a:hover{background-size:100% 2px}.hills{position:relative;margin-top:-20px;height:clamp(150px,18vw,260px)}.hills svg{position:absolute;inset:0;width:100%;height:100%}.footer-base{background:var(--ink);color:var(--pink);font-size:.8rem}.footer-base .wrap{display:flex;justify-content:space-between;padding-top:16px;padding-bottom:16px}.back-top{text-decoration:none}.back-top:hover{color:var(--yellow)}.page-top{padding:clamp(130px,14vw,180px) 0 clamp(80px,8vw,120px)}.page-top .note-grid{row-gap:clamp(40px,4vw,60px)}.post-wrap{max-width:880px}.post-paper .torn-sheet{padding:clamp(40px,6vw,80px) clamp(22px,6vw,80px)}.post-hero{display:block;width:100%;max-height:440px;-o-object-fit:cover;object-fit:cover;border-radius:4px;margin-bottom:2.4rem;box-shadow:0 10px 24px -14px rgba(0,0,0,.5)}.post-title{font-size:clamp(2.3rem,5vw,4rem);font-variation-settings:"wdth" 86;letter-spacing:-.02em;line-height:.92;margin-bottom:1.2rem}.byline,.post-title{text-transform:uppercase}.byline{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:2.4rem;font-size:.8rem;font-weight:600;letter-spacing:.14em;color:var(--red)}.byline address{font-style:normal}.byline a{text-decoration:none}.prose{font-family:var(--f-display);font-weight:400;font-size:1.12rem;line-height:1.75;color:var(--ink-2)}.prose h2,.prose h3{margin:2.2rem 0 .9rem;color:var(--ink);font-weight:800;line-height:1.1}.prose h2{font-size:1.8rem}.prose h3{font-size:1.35rem}.prose a{color:var(--red-deep);text-decoration-thickness:2px;text-underline-offset:3px}.prose ol,.prose ul{padding-left:1.4em}.prose li{margin:.3em 0}.prose img{border-radius:4px}.prose blockquote{margin:1.6rem 0;padding:.6rem 1.2rem;border-left:4px solid var(--yellow-deep);background:rgba(255,224,102,.2)}.prose code{font-family:var(--f-mono);font-size:.88em;background:hsla(0,0%,8%,.06);padding:.1em .35em;border-radius:4px}.prose pre{overflow-x:auto;padding:1.2rem 1.4rem;border-radius:8px;background:#23273a;color:#f6d7cf}.prose pre code{background:none;padding:0}.prevNextPosts{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:50px}.prevNextPosts a{padding:22px 24px}.prevNextPosts .nextPost{grid-column:2;text-align:right}.prevNextPosts .label{display:block;margin-bottom:6px;font-size:.74rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}.prevNextPosts .title{display:block;font-family:var(--f-display);font-weight:800;font-size:1.2rem;line-height:1.1}@media (max-width:1180px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.focus-card{grid-template-columns:1fr;padding:18px 22px 26px}.focus-icon{max-width:170px}}@media (max-width:960px){.header-cta,.nav{display:none}.menu-toggle{display:block;z-index:2}.is-open .nav{display:flex;position:fixed;inset:0;z-index:1;flex-direction:column;justify-content:center;gap:18px;margin:0;padding:0 clamp(24px,8vw,60px);background-color:var(--pink);background-image:var(--fibres);-webkit-animation:fadeIn .3s ease;animation:fadeIn .3s ease}.is-open .nav-link{font-family:var(--f-display);font-weight:900;font-variation-settings:"wdth" 84;text-transform:uppercase;font-size:clamp(2.4rem,11vw,4rem);line-height:1;-webkit-animation:fadeUp .5s var(--ease-out) both;animation:fadeUp .5s var(--ease-out) both}.is-open .nav-link:nth-child(2){-webkit-animation-delay:.06s;animation-delay:.06s}.is-open .nav-link:nth-child(3){-webkit-animation-delay:.12s;animation-delay:.12s}.is-open .nav-link:nth-child(4){-webkit-animation-delay:.18s;animation-delay:.18s}.is-open .brand{position:relative;z-index:2}.hero-grid{grid-template-columns:1fr}.hero-copy{padding-bottom:10px;text-align:center}.hero-title,.hero-title-wrap{font-size:min(11.2vw,5rem)}.hero-title-wrap{left:.2em;margin-left:auto;margin-right:auto}.hero-title{text-align:left}.hero-lede{margin-left:auto;margin-right:auto}.hero-ctas{justify-content:center}.hero-art{width:100%;margin:10px 0 0}.annot-1{top:0}.focus{grid-template-columns:1fr;margin-top:30px}.focus-card{grid-template-columns:38% 1fr;padding:18px 22px 18px 10px}.about,.approach-grid{grid-template-columns:1fr}.approach-lede{padding-left:18px}.sticky-big{position:relative;top:auto;right:auto;display:inline-block;margin:-20px 0 0 auto;float:right}.project,.project.flip{grid-template-columns:1fr}.project.flip .project-shot{order:0}.note-grid{max-width:520px}.contact-grid,.note-grid{grid-template-columns:1fr}.contact-grid{row-gap:0}.contact-copy{display:contents}.contact-paper{order:1;margin-top:1rem}.linkedin,.map-polaroid{order:2;justify-self:start}.map-polaroid{margin-top:3.4rem}.footer-inner{grid-template-columns:1fr}}@media (max-width:640px){.ls-pan{--pan:2.6}.header-inner{height:76px}.logo-mark{width:40px;height:40px}.annot{display:none}.focus-card{grid-template-columns:1fr}.focus-icon{max-width:150px}.notebook-grid,.service-grid{grid-template-columns:1fr}.notebook{padding-left:58px;padding-right:18px}.timeline{grid-template-columns:1fr;gap:22px;padding-left:6px}.timeline-line{display:none}.timeline:before{content:"";position:absolute;left:18px;top:10px;bottom:10px;width:2.5px;background:var(--ink);transform:scaleY(0);transform-origin:top;transition:transform 1.6s var(--ease-out) .3s}.timeline.is-in:before{transform:scaleY(1)}.timeline li,.timeline li:first-child{flex-direction:row;align-items:center;text-align:left;gap:14px}.tl-note{max-width:none}.field-row,.prevNextPosts{grid-template-columns:1fr}.prevNextPosts .nextPost{grid-column:auto}.footer-base .wrap{flex-direction:column;gap:4px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{-webkit-animation-duration:.001ms!important;animation-duration:.001ms!important;-webkit-animation-delay:0ms!important;animation-delay:0ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0ms!important}[data-reveal]{opacity:1!important;translate:none!important;rotate:none!important;scale:none!important}.float-a,.float-b,.float-c,.float-drift,.float-spin,.float-sway,.ls-cloud{-webkit-animation:none!important;animation:none!important}}