@font-face{font-family:DeskDisplay;src:url('./fonts/display.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:DeskDisplay;src:url('./fonts/display-italic.woff') format('woff');font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:DeskSans;src:url('./fonts/body.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:DeskMono;src:url('./fonts/mono.woff') format('woff');font-weight:400;font-display:swap}
:root{--paper:#f6f1f0;--ink:#171717;--pink:#f965d6;--grid:rgba(102,167,191,.24);--gutter:clamp(24px,5.5vw,88px);--sans:DeskSans,Arial,sans-serif;--display:DeskDisplay,'Arial Narrow',sans-serif;--mono:DeskMono,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:20px;overflow-x:clip}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0;background:none}button:active{transform:translateY(1px)}button:disabled{cursor:default}img{max-width:100%;display:block}h1,h2,h3,h4,p{margin:0}h1,h2,h4{font-family:var(--display);font-weight:400;letter-spacing:-.045em}em{font-weight:700;font-style:italic}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}::selection{background:#fa83dc;color:var(--ink)}[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:20px;padding:14px;background:var(--ink);color:white;z-index:100}.skip-link:focus{top:15px}.grid-paper{background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:36px 36px}.micro-label,.section-kicker,.hero-bottom,.desk-toolbar,.project-tag,.project-number,.work-count,.work-footnote,.tool-list,.experience-period,.experience-tools,.contact-top,.site-footer,.notebook-label,.mini-pill,.cover-open{font-family:var(--mono);font-size:20px;line-height:1.6;letter-spacing:.04em}.text-link{display:inline-flex;align-items:center;gap:30px;padding:10px 0;font-size:20px}.text-link span{font-size:20px;transition:transform 180ms ease}.text-link:hover span{transform:translate(3px,-3px)}.site-header{position:sticky;top:0;z-index:40;height:77px;padding:0 var(--gutter);display:flex;align-items:center;gap:26px;background:rgba(242,242,237,.94);border-bottom:1px solid rgba(0,0,0,.12);backdrop-filter:blur(10px)}.wordmark{font-family:var(--sans);font-size:20px;letter-spacing:-.06em;white-space:nowrap}.wordmark span{font-style:italic;font-weight:700}.wordmark sup{font-family:var(--mono);font-size:20px;top:-1.2em;position:relative;margin-left:5px}.header-note{font-family:var(--mono);font-size:20px;max-width:140px;line-height:1.5}.desktop-nav{margin-left:auto;display:flex;gap:25px;font-size:20px}.desktop-nav a{position:relative;padding:10px 0}.motion-toggle{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:20px;white-space:nowrap;padding:12px 0}.motion-led{width:6px;height:6px;border-radius:50%;background:#456b43}.motion-toggle[aria-pressed=false] .motion-led{background:#888}.menu-toggle{display:none;width:40px;height:44px;padding:11px 5px}.menu-toggle span{display:block;height:1px;background:var(--ink);margin:6px 0;transition:transform 180ms ease}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{position:fixed;z-index:39;inset:77px 0 auto;background:var(--pink);padding:25px var(--gutter) 45px;border-bottom:1px solid}.mobile-menu a{font-family:var(--sans);font-size:20px;display:flex;justify-content:space-between;padding:15px 0;}.mobile-menu a span{font-family:var(--mono);font-size:20px;padding-top:17px}.hero{padding:26px var(--gutter) 0;min-height:calc(100svh - 77px)}.section-kicker{display:flex;justify-content:space-between;gap:20px;font-size:20px}.object-desk{height:clamp(255px,28vw,380px);position:relative;max-width:1260px;margin:12px auto 0}.desk-object{position:absolute;width:clamp(78px,11.5vw,165px);padding:0;z-index:2;touch-action:pan-y;user-select:none}.desk-object:active{transform:none}.object-art{display:block;filter:drop-shadow(2px 7px 4px rgba(0,0,0,.14));transition:filter 180ms ease;rotate:var(--angle,0deg)}.object-art img{width:100%;max-height:168px;object-fit:contain;pointer-events:none}.desk-object:hover .object-art,.desk-object:focus-visible .object-art{filter:drop-shadow(2px 10px 5px rgba(0,0,0,.23))}.object-label{position:absolute;bottom:-29px;left:50%;transform:translate(-50%,5px);width:max-content;max-width:210px;padding:5px 8px;border:1px solid var(--ink);background:var(--paper);font-family:var(--mono);font-size:20px;opacity:0;transition:opacity 160ms ease,transform 160ms ease;pointer-events:none}.desk-object:hover .object-label,.desk-object:focus-visible .object-label{opacity:1;transform:translate(-50%,0)}.object-cd{left:37%;top:16%;width:clamp(98px,13vw,185px);--angle:-13deg}.object-terminal{left:18%;top:47%;width:clamp(65px,8vw,118px);--angle:-10deg}.object-receipt{left:59%;top:52%;width:clamp(52px,6.2vw,90px);--angle:7deg}.object-camera{left:75%;top:23%;width:clamp(97px,13vw,180px);--angle:-10deg}.object-star{left:2%;top:10%;width:clamp(77px,9.5vw,135px);--angle:-12deg}.object-folder{left:88%;top:50%;width:clamp(60px,6.5vw,94px);--angle:9deg}.object-fragile{left:63%;top:1%;width:clamp(74px,8vw,116px);--angle:8deg}.desk-annotation{position:absolute;left:8%;bottom:3%;font-family:var(--sans);font-style:italic;font-size:20px;line-height:.9;transform:rotate(-5deg);color:#555}.desk-annotation svg{position:absolute;width:68px;left:75px;top:0;fill:none;stroke:currentColor;stroke-width:1.3}.desk-toolbar{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5;margin:0 0 24px;font-size:20px;color:#565651}.desk-toolbar button{padding:9px 0;font-family:var(--mono);font-size:20px;}.desk-toolbar button span{font-size:20px;margin-left:10px}.tiny-cross{font-size:20px;color:var(--ink);vertical-align:middle;margin-right:5px}.hero-copy{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:5vw;padding:4px 0 32px}.hero h1{font-size:46px;line-height:.89;letter-spacing:-.047em}.headline-line{display:block;width:max-content;max-width:100%;position:relative}.heading-asterisk{font-family:var(--sans);font-size:20px;font-weight:400;position:absolute;top:-.05em;right:-.82em}.hero-aside{max-width:315px;justify-self:end;padding-bottom:2px}.hero-aside .micro-label{font-size:20px}.hero-aside p{font-size:25px;line-height:1.65;margin:17px 0 13px}.hero-bottom{border-top:1px solid rgba(0,0,0,.3);display:flex;justify-content:space-between;gap:25px;padding:19px 0;font-size:20px}.hero-bottom a{text-transform:uppercase}.hero-bottom a span{margin-left:13px;font-size:20px}.work{padding:110px var(--gutter) 86px;background-color:var(--paper);position:relative}.work::before{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(249,107,217,.15));pointer-events:none}.work>*{position:relative}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:37px}.section-heading h2{font-size:46px;line-height:1.1;margin-top:13px}.small-star{display:inline-block;font-family:var(--sans);font-size:20px;vertical-align:15%;margin-left:20px}.section-heading>p{font-size:25px;line-height:1.7;margin-bottom:5px}.work-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px;border-top:1px solid rgba(0,0,0,.3);border-bottom:1px solid rgba(0,0,0,.3);padding:15px 0}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{font-size:20px;padding:8px 13px;border-radius:50px;transition:background-color 160ms ease,color 160ms ease}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.filters button sup{font-family:var(--mono);font-size:20px;margin-left:5px}.work-count{font-size:20px;color:#53534f;white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 30px}.project-wide{grid-column:1/-1}.project-cover{display:block;position:relative;width:100%;overflow:hidden;text-align:left;aspect-ratio:1.38;background:#e4e4d8;transition:box-shadow 180ms ease;padding:0;border:1px solid rgba(0,0,0,.1);border-radius:2px}.project-wide .project-cover{aspect-ratio:2.35}.project-cover:hover,.project-cover:focus-visible{box-shadow:0 8px 25px rgba(0,0,0,.1)}.cover-open{position:absolute;bottom:16px;right:16px;background:var(--ink);color:var(--paper);padding:8px 11px;border-radius:30px;opacity:0;transform:translateY(5px);transition:opacity 160ms ease,transform 160ms ease;z-index:5;font-size:20px}.project-cover:hover .cover-open,.project-cover:focus-visible .cover-open{opacity:1;transform:none}.project-caption{display:flex;justify-content:space-between;gap:15px;padding:16px 2px 0;align-items:start}.project-caption>div{position:relative;padding-left:30px}.project-number{position:absolute;left:0;top:4px;font-size:20px}.project-caption h3{font-size:46px;font-weight:400;line-height:1.35}.project-caption p{font-size:25px;color:#50504c;line-height:1.6;margin-top:4px}.project-tag{font-size:20px;text-align:right;max-width:120px;margin-top:5px;font-weight:700}.cover-tidygrid{background:#b9c7ab}.browser-chrome{height:30px;padding:0 20px;display:flex;justify-content:space-between;align-items:center;background:#f2f2e9;border-bottom:1px solid #b4b8a9;font-family:var(--mono);font-size:20px;letter-spacing:.03em}.browser-chrome>span:first-child{letter-spacing:3px;color:#8e9384}.tidy-cover-content{position:relative;height:calc(100% - 30px);padding:32px 7%;display:grid;grid-template-columns:1fr 1.5fr;align-items:start;column-gap:7%}.tidy-logo{font-size:20px;font-family:var(--sans);letter-spacing:-.045em}.tidy-logo span{font-family:var(--sans);font-size:20px;margin-left:8px;vertical-align:20%}.mini-pill{justify-self:end;border:1px solid #647458;border-radius:30px;padding:7px 13px;font-size:20px}.sheet-preview{grid-column:2;grid-row:2/4;width:100%;background:#f8f9f0;margin-top:26px;border:1px solid #89987e;box-shadow:10px 10px 0 rgba(57,81,43,.12);transform:rotate(-2deg);transition:transform 250ms ease}.project-cover:hover .sheet-preview{transform:rotate(0)}.sheet-head{font-family:var(--mono);font-size:20px;background:#e9eddc;display:flex;justify-content:space-between;padding:13px;border-bottom:1px solid #cbd2bd}.sheet-row{display:grid;grid-template-columns:20px 1fr 1.35fr 15px;gap:8px;align-items:center;font-size:20px;padding:16px 12px;border-bottom:1px solid #e0e5d9}.sheet-row:last-child{border:0}.cell-index{font-family:var(--mono);font-size:20px;color:#788269}.cell-check{color:#456239}.missing-cell{color:#8c522b;font-size:20px}.tidy-note{grid-column:1;grid-row:2;font-family:var(--sans);font-size:20px;line-height:1.08;letter-spacing:-.035em;margin-top:37px}.cover-booking{background:#dedac9;display:grid;place-items:center}.booking-paper{width:80%;height:90%;background:#f5f2e8;padding:26px 25px;position:relative;transform:rotate(-4deg);box-shadow:3px 8px 10px #0001;transition:transform 230ms ease}.project-cover:hover .booking-paper{transform:rotate(-1deg)}.booking-paper .micro-label{font-size:20px}.booking-paper h4{font-size:46px;line-height:1.02;margin-top:13px;letter-spacing:-.025em}.flow-preview{display:grid;gap:4px;margin-top:20px;width:80%;font-family:var(--mono);font-size:20px}.flow-preview span{border-bottom:1px solid #b8b0a2;display:block;padding:4px 0}.flow-preview i{font-style:normal;font-size:20px;margin-right:12px;color:#82755d}.flow-preview b{font-size:20px;font-weight:400;padding-left:30px}.prototype-stamp{position:absolute;right:14px;bottom:13px;border:2px solid #9e473d;color:#9e473d;padding:5px 8px;transform:rotate(-12deg);font-family:var(--mono);font-size:20px;line-height:1.4}.cover-pinkroom{background:#e9a1c3;display:grid;place-items:center}.pinkroom-wordmark{position:absolute;left:24px;top:18px;font-family:var(--sans);font-size:20px;letter-spacing:-.05em}.pinkroom-wordmark>span{font-size:20px;vertical-align:super;padding-left:5px}.photo-strips{display:flex;justify-content:center;align-items:center;height:75%;width:100%;padding-top:28px;gap:15px}.photo-strip{background:#fff8f2;padding:8px;box-shadow:2px 5px 8px #0002;width:24%;height:100%;transform:rotate(-12deg);display:flex;flex-direction:column;gap:5px;transition:transform 230ms ease}.photo-strip>div{flex:1;display:grid;place-items:center;background:#be4978;overflow:hidden;min-height:0}.photo-strip>div:nth-child(2){background:#6c788c}.photo-strip>div:nth-child(3){background:#e7c564}.photo-strip>div span{font-size:20px;color:#f6eccb}.photo-strip small{font-family:var(--mono);font-size:20px;text-align:center;white-space:nowrap;margin:3px -4px}.strip-two{transform:rotate(13deg);margin-top:27px}.strip-two>div{background:#ebbaa6}.strip-two>div:nth-child(2){background:#b6b95b}.strip-two>div:nth-child(3){background:#756093}.project-cover:hover .strip-one{transform:rotate(-8deg) translateY(-4px)}.project-cover:hover .strip-two{transform:rotate(8deg) translateY(-4px)}.cover-carousel{background:#aaa9dd;display:grid;place-items:center}.carousel-deck{position:relative;width:100%;height:100%}.carousel-slide{height:78%;aspect-ratio:4/5;position:absolute;display:flex;flex-direction:column;justify-content:space-between;padding:18px;font-family:var(--mono);font-size:20px}.slide-back{background:#25272b;color:#d6dce0;left:44%;top:8%;transform:rotate(9deg);transition:transform 230ms ease}.carousel-slide strong{font-family:var(--sans);font-size:20px;font-weight:400;letter-spacing:-.03em;line-height:1.03}.slide-front{background:#ecece9;left:15%;top:12%;transform:rotate(-9deg);box-shadow:3px 5px 12px #0002;transition:transform 230ms ease}.slide-front strong{position:relative;z-index:1}.slide-spark{position:absolute;right:8%;bottom:16%;font-size:20px;color:#ff743c;line-height:1}.project-cover:hover .slide-front{transform:rotate(-5deg) translateY(-5px)}.project-cover:hover .slide-back{transform:rotate(12deg)}.cover-websites{background:#d1d1c8;display:grid;place-items:center}.website-window{height:86%;width:84%;background:#f6f4ed;box-shadow:5px 9px 14px #0002;transform:rotate(1.5deg);transition:transform 230ms ease}.project-cover:hover .website-window{transform:rotate(0)}.mini-site-nav{font-family:var(--sans);font-size:20px;border-bottom:1px solid #b6b6aa;display:block;text-align:center;padding:10px 20px;position:relative}.mini-site-nav>span{font-size:20px}.mini-site-nav>b{position:absolute;left:20px;font-size:20px;top:15px;font-weight:400}.nails-art{display:grid;grid-template-columns:.8fr 1fr;align-items:center;gap:30px;height:calc(100% - 75px);padding:20px 8%}.polish-bottle{width:105px;height:145px;position:relative;background:linear-gradient(95deg,#7d7b70,#b2b0a3 40%,#777669);border-radius:18px 18px 22px 22px;border:1px solid #77766d;justify-self:center;margin-top:24px;transform:rotate(-10deg);box-shadow:3px 7px 10px #0002}.polish-bottle::before{content:'';position:absolute;bottom:97%;left:25%;width:50%;height:48px;background:linear-gradient(90deg,#141413,#484744,#121212);border-radius:6px 6px 0 0}.polish-bottle>span{display:block;text-align:center;padding-top:48px;color:#f1f0e6;font-family:var(--sans);font-size:20px}.nail-menu>span{font-family:var(--mono);font-size:20px}.nail-menu>strong{display:block;font-family:var(--sans);font-size:20px;font-weight:400;line-height:1;letter-spacing:-.04em;margin:12px 0}.nail-menu>.mock-link{font-family:var(--sans);font-size:20px;padding-bottom:5px;display:inline-block}.mini-site-bottom{padding:8px 20px;border-top:1px solid #bbb9b1;display:flex;justify-content:space-between;font-family:var(--mono);font-size:20px}.work-footnote{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:40px;font-size:20px}.work-footnote .text-link{font-family:var(--sans);font-size:20px}.about{background-color:var(--pink);background-image:linear-gradient(rgba(123,32,104,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(123,32,104,.1) 1px,transparent 1px),linear-gradient(#f5d3e9,var(--pink) 26%);padding:65px var(--gutter) 85px}.about-top{display:flex;justify-content:space-between;gap:25px;margin-bottom:70px}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.about-copy h2{font-size:46px;line-height:1}.about-copy h2>span{font-family:var(--sans);font-size:46px;margin-left:12px;display:inline-block;transform:rotate(10deg)}.about-lead{font-family:var(--sans);font-size:20px;line-height:1.1;letter-spacing:-.02em;margin:31px 0 22px}.about-copy>p:not(.about-lead){font-size:25px;line-height:1.8;max-width:375px;margin:15px 0}.about-copy>.text-link{margin-top:14px}.about-collage{height:480px;position:relative;display:grid;align-items:center;justify-items:center}.about-notebook{width:81%;max-width:390px;background:#f9f4e6;min-height:400px;padding:32px 32px 28px 48px;transform:rotate(5deg);box-shadow:5px 7px 0 #c048ad;position:relative;background-image:linear-gradient(#cec8b333 1px,transparent 1px);background-size:100% 28px}.about-notebook::before{content:'';position:absolute;inset:0 auto 0 30px;border-left:1px solid #db8c8c77}.notebook-label{font-size:20px;color:#756950}.about-notebook h3{font-family:var(--display);font-size:46px;font-weight:400;line-height:.94;letter-spacing:-.04em;margin:28px 0}.about-notebook ul{padding:0;margin:0;list-style:none}.about-notebook li{font-size:20px;padding:11px 0}.about-notebook li>span{font-family:var(--mono);font-size:20px;margin-right:10px;color:#7d745f}.notebook-signature{font-family:var(--sans);font-size:20px;font-style:italic;display:block;margin-top:25px}.notebook-signature>span{float:right}.collage-coffee{position:absolute;width:160px;bottom:-6px;left:-30px;filter:drop-shadow(2px 4px 3px #0002);transform:rotate(-7deg)}.collage-sticker{position:absolute;right:-12px;top:14px;background:#fc97e1;border:3px solid var(--ink);box-shadow:3px 4px 0 var(--ink);padding:10px 15px;text-align:center;transform:rotate(-12deg);font-family:var(--mono);font-size:20px;line-height:1.35}.collage-sticker strong{font-family:var(--sans);display:block;font-size:20px;font-weight:400;letter-spacing:.02em}.collage-sticker>span{font-size:20px}.collage-code{position:absolute;bottom:8px;right:-9px;padding:10px 15px;background:var(--ink);color:#f9c8ee;font-family:var(--mono);font-size:20px;transform:rotate(-7deg)}.collage-gummy{position:absolute;top:-25px;left:5px;width:47px;transform:rotate(-12deg)}.tool-shelf{border-top:1px solid #17171755;display:grid;grid-template-columns:1fr 3fr;gap:35px;margin-top:95px;padding-top:27px}.tool-shelf>.micro-label{font-size:20px;padding-top:9px}.tool-list{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:20px}.tool-list span{padding:7px 0}.experience{background-color:#151515;--grid:rgba(224,215,221,.13);color:#f1eee7;padding:135px var(--gutter) 95px;position:relative}.experience::before{content:'';position:absolute;top:0;left:0;right:0;height:75px;background:linear-gradient(var(--pink),transparent);pointer-events:none}.experience .micro-label{color:#c8c4c2}.experience .section-heading{margin-bottom:45px}.experience-list{border-top:1px solid #b5aeb155}.experience-row{border-bottom:1px solid #b5aeb155}.experience-row summary{list-style:none;display:grid;grid-template-columns:1fr 2.65fr 32px;gap:30px;align-items:center;padding:31px 0;cursor:pointer}.experience-row summary::-webkit-details-marker{display:none}.experience-period{font-size:20px;color:#c8c4c2}.experience-row h3{font-size:46px;font-weight:400;line-height:1.4}.experience-row summary p{font-size:25px;color:#b3adb0;margin-top:6px}.accordion-icon{font-family:var(--sans);font-size:20px;line-height:1;transition:transform 180ms ease}.experience-row[open] .accordion-icon{transform:rotate(45deg)}.experience-body{margin-left:calc((100% - 92px)/3.65 + 30px);padding-bottom:30px;padding-right:7%;max-width:780px}.experience-body>p{font-size:25px;line-height:1.85;color:#d9d4d5}.experience-tools{display:block;margin-top:17px;font-size:20px;color:#bcaeb7}.certification-note{display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;margin-top:60px}.certification-note>p{font-size:25px;line-height:1.8;margin-left:auto}.certification-note img{width:75px;transform:rotate(15deg);margin-left:10px}.contact{background-color:var(--pink);--grid:rgba(106,30,83,.15);padding:75px var(--gutter) 34px;position:relative}.contact::before{content:'';position:absolute;left:0;right:0;top:0;height:50px;background:linear-gradient(#151515,transparent);pointer-events:none}.contact-top{display:flex;justify-content:space-between;gap:25px;margin:20px 0 64px}.contact-content{display:grid;grid-template-columns:1fr auto;align-items:center;gap:25px}.contact h2{font-size:46px;line-height:.92;letter-spacing:-.04em}.contact-cta{font-family:var(--sans);font-size:20px;letter-spacing:-.04em;width:195px;height:195px;border:1px solid;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:8px;transform:rotate(-12deg);background:rgba(255,255,255,.07)}.contact-cta span{font-family:var(--sans);font-size:20px}.contact-content>p{font-size:25px;line-height:1.8;margin-top:10px}.contact-bottom{border-top:1px solid #17171777;display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:68px;padding-top:25px;font-size:20px}.contact-bottom button{font-size:20px;padding:10px 0}.contact-bottom a:hover,.contact-bottom button:hover{text-decoration:none;}.contact-bottom span{margin-left:5px}.site-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;background:var(--ink);color:#ccc3c9;padding:23px var(--gutter);font-size:20px}.site-footer>div{display:flex;gap:12px}.site-footer button{font-family:var(--mono);font-size:20px;padding:6px 0}.site-footer button:hover{text-decoration:none}.trademark-note{font-size:20px;color:#9b9498}.toast{position:fixed;left:50%;bottom:30px;z-index:90;transform:translate(-50%,12px);background:#f4f1e8;color:var(--ink);border:1px solid var(--ink);box-shadow:3px 4px 0 var(--ink);padding:12px 20px;font-family:var(--mono);font-size:20px;opacity:0;pointer-events:none;max-width:calc(100% - 40px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}.noscript-note{padding:20px var(--gutter);font-size:20px;line-height:1.7}.noscript-note a{text-decoration:none}
/* Native dialogs preserve keyboard trapping, Escape, and focus return. */
dialog{padding:0;border:1px solid var(--ink);background:var(--paper);color:var(--ink);max-height:87svh;overflow-y:auto;overscroll-behavior:contain;box-shadow:10px 13px 0 #0003}dialog::backdrop{background:#151515b8;backdrop-filter:blur(5px)}.project-dialog{width:min(920px,calc(100% - 44px));max-width:920px}.policy-dialog{width:min(590px,calc(100% - 44px));max-width:590px}.dialog-close{position:sticky;top:0;z-index:10;width:100%;background:var(--paper);border-bottom:1px solid #17171733;padding:14px 28px;display:flex;justify-content:flex-end;gap:16px;align-items:center;font-family:var(--mono);font-size:20px}.dialog-close span{font-size:20px;line-height:1}.dialog-head{padding:32px 44px 35px;background:#e5e6d9;border-bottom:1px solid #17171744}.dialog-head>.micro-label{font-size:20px}.dialog-head h2{font-size:46px;line-height:1.05;margin:18px 0 9px;overflow-wrap:anywhere}.dialog-subtitle{font-size:20px;line-height:1.7}.dialog-status{font-family:var(--mono);font-size:20px;line-height:1.7;margin-top:22px}.dialog-body{padding:34px 44px}.dialog-description{font-size:25px;line-height:1.75;margin-bottom:34px;max-width:690px}.case-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px}.case-columns h3,.case-details h3{font-family:var(--display);font-size:46px;font-weight:400;margin-bottom:12px}.case-columns p{font-size:25px;line-height:1.8}.case-details{margin:28px 0}.case-details ul{font-size:25px;line-height:1.8;padding-left:18px}.case-details li{padding-left:6px;margin:7px 0}.case-tools{display:flex;flex-wrap:wrap;gap:8px;font-family:var(--mono);font-size:20px}.case-tools>span{border:1px solid #17171744;padding:5px 9px}.dialog-link{margin-top:24px}.demo{margin-top:36px;padding:24px;background:#e2e9d8;border:1px solid #a4b198}.demo-heading{display:flex;align-items:start;justify-content:space-between;gap:20px}.demo-heading>div>h3{font-family:var(--display);font-size:46px;font-weight:400;letter-spacing:-.025em}.demo-heading p{font-family:var(--mono);font-size:25px;line-height:1.7;margin-top:5px}.demo-button{border:1px solid var(--ink);background:var(--ink);color:#f1f4e9;padding:10px 13px;font-family:var(--mono);font-size:20px;white-space:nowrap;border-radius:3px}.demo-button:disabled{background:#516145;border-color:#516145}.demo-table-wrap{overflow:auto;margin-top:20px;border:1px solid #acb59f;background:#f9faf3}.demo table{width:100%;border-collapse:collapse;text-align:left;min-width:420px;font-size:20px}.demo th{padding:10px 12px;background:#edf0e4;font-family:var(--mono);font-size:20px;font-weight:400}.demo td{padding:12px;border-top:1px solid #d6ddca;white-space:pre}.demo .duplicate td{background:#eee1d6}.demo-result{font-size:20px;line-height:1.7;margin-top:12px;min-height:34px}.demo-actions{display:flex;justify-content:space-between;align-items:center;margin-top:14px;gap:15px}.demo-reset{font-family:var(--mono);font-size:20px;text-decoration:none;padding:7px 0}.demo-note{font-size:20px;line-height:1.7;margin-top:15px;color:#515947}.policy-content{padding:35px}.policy-content h2{font-size:46px;line-height:1.1;margin-bottom:22px}.policy-content p{font-size:25px;line-height:1.85;margin:15px 0}.policy-content a{text-decoration:none;overflow-wrap:anywhere}.policy-content .micro-label{font-size:20px}.no-motion *{scroll-behavior:auto!important;transition:none!important}.no-motion .reveal{opacity:1!important;transform:none!important}
@media(min-width:1500px){.hero,.work,.about,.experience,.contact{padding-left:max(var(--gutter),calc((100vw - 1320px)/2));padding-right:max(var(--gutter),calc((100vw - 1320px)/2))}}
@media(max-width:1050px){.header-note{display:none}.site-header{gap:24px}.hero h1{font-size:46px}.hero-copy{grid-template-columns:1.5fr 1fr;gap:40px}.hero-aside{max-width:270px}.hero-aside p{font-size:25px}.hero-aside .micro-label{font-size:20px}.project-caption{flex-direction:column;gap:6px}.project-tag{text-align:left;max-width:none;padding-left:30px}.tidy-cover-content{padding:23px 6%}.sheet-head{font-size:20px}.sheet-row{font-size:20px;padding:12px 10px}.booking-paper{padding:24px 20px}.booking-paper h4{font-size:46px}.flow-preview{margin-top:15px;font-size:20px;gap:0}.about-layout{gap:4vw}.about-notebook{width:90%;padding:28px 20px 26px 43px}.about-notebook h3{font-size:46px}.about-collage{height:480px}.collage-coffee{width:130px;left:-25px;bottom:15px}.collage-sticker{right:-5px}.experience-row h3{font-size:46px}.contact-cta{width:155px;height:155px;font-size:20px}.contact-cta span{font-size:20px}.mini-site-nav{font-size:20px}.polish-bottle{width:78px;height:112px}.polish-bottle>span{font-size:20px;padding-top:36px}.polish-bottle::before{height:36px}.nails-art{height:calc(100% - 70px);padding:12px 8%}.mini-site-bottom{font-size:20px}.nail-menu>strong{font-size:20px}}
@media(max-width:760px){:root{--gutter:24px}.site-header{height:68px;gap:15px}.wordmark{font-size:20px}.desktop-nav{display:none}.motion-toggle{margin-left:auto;font-size:20px}.menu-toggle{display:block}.mobile-menu{top:68px}html{scroll-padding-top:80px}.hero{min-height:auto;padding-top:22px}.section-kicker{font-size:20px;gap:12px}.section-kicker>span:first-child{max-width:180px}.section-kicker>span:last-child{white-space:nowrap}.object-desk{height:260px;margin-top:18px}.object-art img{max-height:108px}.object-cd{left:36%;top:13%;width:112px}.object-terminal{left:13%;top:46%;width:68px}.object-receipt{left:60%;top:51%;width:53px}.object-camera{left:74%;top:29%;width:86px}.object-star{left:1%;top:9%;width:78px}.object-folder{left:85%;top:66%;width:53px}.object-fragile{left:66%;top:1%;width:70px}.desk-annotation{font-size:20px;left:3%;bottom:6%}.desk-annotation svg{width:47px;left:65px}.desk-toolbar{font-size:20px;margin-bottom:32px}.desk-toolbar button{font-size:20px}.tiny-cross{font-size:20px}.hero-copy{grid-template-columns:1fr;gap:30px;padding:0 0 38px}.hero h1{font-size:46px;line-height:.91}.heading-asterisk{right:-.78em}.hero-aside{justify-self:start;max-width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;align-items:start}.hero-aside .micro-label{font-size:20px}.hero-aside p{grid-column:1/-1;margin:0;max-width:360px;font-size:25px;line-height:1.65}.hero-aside .text-link{grid-column:1/-1;margin-top:0;font-size:20px;padding-top:7px;justify-self:start;gap:44px}.hero-bottom{font-size:20px;align-items:center;gap:14px;padding:17px 0}.hero-bottom>span{max-width:155px}.hero-bottom>a{max-width:165px;text-align:right}.hero-bottom a span{margin-left:3px}.work{padding-top:75px;padding-bottom:60px}.section-heading{align-items:start;gap:15px;margin-bottom:30px}.section-heading h2{font-size:46px;margin-top:12px}.section-heading .micro-label{font-size:20px}.section-heading>p{font-size:25px;padding-top:28px;max-width:110px;flex-shrink:0}.small-star{margin-left:8px;font-size:20px}.work-toolbar{align-items:start;gap:10px}.filters{gap:3px}.filters button{font-size:20px;padding:7px 9px}.filters button sup{font-size:20px;margin-left:3px}.work-count{display:none}.project-grid{gap:30px 20px}.project-cover{aspect-ratio:1.15}.project-wide .project-cover{aspect-ratio:1.7}.project-caption h3{font-size:46px}.project-caption p{font-size:25px}.project-caption>div{padding-left:24px}.project-tag{padding-left:24px;font-size:20px}.project-number{font-size:20px}.tidy-cover-content{padding:22px 6%;column-gap:3%;grid-template-columns:1fr 1.6fr}.tidy-logo{font-size:20px}.mini-pill{font-size:20px;padding:5px 7px}.browser-chrome{font-size:20px;padding:0 12px;height:25px}.tidy-cover-content{height:calc(100% - 25px)}.sheet-preview{margin-top:17px}.sheet-head{padding:10px 8px;font-size:20px}.sheet-head>span:last-child{display:none}.sheet-row{grid-template-columns:15px 1fr 1.3fr 8px;font-size:20px;gap:4px;padding:13px 6px}.cell-index,.missing-cell{font-size:20px}.tidy-note{font-size:20px;margin-top:26px}.cover-open{opacity:1;transform:none;font-size:20px;bottom:10px;right:10px;padding:6px 9px}.booking-paper{width:86%;height:90%;padding:20px 15px}.booking-paper .micro-label{font-size:20px;line-height:1.3;display:block}.booking-paper h4{font-size:46px;margin-top:12px}.flow-preview{font-size:20px;margin-top:16px;gap:0}.flow-preview i{font-size:20px;margin-right:8px}.flow-preview b{font-size:20px;padding-left:20px}.prototype-stamp{font-size:20px;right:10px;bottom:9px;padding:4px;z-index:2}.pinkroom-wordmark{font-size:20px;left:15px;top:14px}.pinkroom-wordmark>span{font-size:20px}.photo-strips{gap:8px;height:76%;padding-top:21px}.photo-strip{width:27%;padding:5px;gap:3px}.photo-strip>div span{font-size:20px}.photo-strip small{font-size:20px}.strip-two{margin-top:15px}.carousel-slide{padding:12px;height:75%;font-size:20px}.carousel-slide strong{font-size:20px}.slide-spark{font-size:20px}.website-window{width:88%;height:85%}.mini-site-nav{font-size:20px;padding:8px 15px}.mini-site-nav>b{top:11px}.mini-site-nav>span{font-size:20px}.nails-art{gap:10px;height:calc(100% - 64px);padding:14px 6%}.nail-menu>span{font-size:20px}.nail-menu>strong{font-size:20px}.polish-bottle{width:73px;height:105px;margin-top:17px}.polish-bottle>span{font-size:20px;padding-top:34px}.polish-bottle::before{height:32px}.mini-site-bottom{padding:8px 10px;font-size:20px}.work-footnote{align-items:start;margin-top:27px;font-size:20px}.work-footnote>span{max-width:195px}.work-footnote .text-link{font-size:20px;white-space:nowrap;gap:12px;padding-top:0}.about{padding-top:50px;padding-bottom:65px}.about-top{margin-bottom:48px}.about-top .micro-label{font-size:20px}.about-top>.micro-label:last-child{max-width:130px;text-align:right}.about-layout{grid-template-columns:1fr;gap:40px}.about-copy h2{font-size:46px}.about-lead{font-size:20px;margin:25px 0 20px}.about-copy>p:not(.about-lead){font-size:25px;max-width:450px}.about-collage{height:440px;max-width:440px;width:100%;justify-self:center}.about-notebook{width:80%;min-height:385px;max-width:350px}.about-notebook h3{font-size:46px}.collage-sticker{right:3px;top:12px}.collage-coffee{width:135px;left:-4px;bottom:0}.collage-code{bottom:4px;right:4px;font-size:20px}.collage-gummy{top:-5px;left:15px;width:40px}.tool-shelf{grid-template-columns:1fr;gap:14px;margin-top:65px;padding-top:22px}.tool-list{font-size:20px;gap:5px 20px}.tool-shelf>.micro-label{padding-top:0}.experience{padding-top:105px;padding-bottom:65px}.experience .section-heading h2{font-size:46px}.experience .section-heading>p{max-width:95px}.experience-row summary{grid-template-columns:1fr 25px;gap:12px;padding:24px 0}.experience-period{grid-column:1/-1;font-size:20px}.experience-row h3{font-size:46px;max-width:290px}.experience-row summary p{font-size:25px;line-height:1.7}.accordion-icon{font-size:20px}.experience-body{margin:0;padding:0 20px 25px 0;max-width:none}.experience-body>p{font-size:25px;line-height:1.8}.experience-tools{font-size:20px}.certification-note{flex-wrap:wrap;gap:14px;margin-top:40px;padding-right:57px}.certification-note>.micro-label{font-size:20px}.certification-note>p{margin:0;font-size:25px;line-height:1.8}.certification-note>img{position:absolute;right:0;bottom:0;width:53px;margin:0}.contact{padding-top:65px}.contact-top{margin:10px 0 44px;font-size:20px}.contact-top>span:last-child{max-width:145px;text-align:right}.contact-content{grid-template-columns:1fr;gap:26px}.contact h2{font-size:46px}.contact-cta{grid-row:3;justify-self:end;width:128px;height:128px;font-size:20px;margin-top:-55px}.contact-cta>span{font-size:20px}.contact-content>p{font-size:25px;line-height:1.8;max-width:270px;margin:0;grid-row:2}.contact-bottom{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:45px;padding-top:23px;font-size:20px}.contact-bottom>a:first-child{grid-column:1/-1}.contact-bottom>a:last-child{text-align:right;grid-column:2;grid-row:3}.contact-bottom>button{font-size:20px;grid-column:1;grid-row:3;justify-self:start}.site-footer{font-size:20px;padding-top:22px;padding-bottom:22px;gap:12px}.site-footer>span:nth-child(2){max-width:120px;text-align:right;margin-left:auto}.site-footer>div{width:100%}.trademark-note{font-size:20px}.dialog-head{padding:26px}.dialog-head h2{font-size:46px}.dialog-body{padding:26px}.dialog-description{font-size:25px;line-height:1.8}.case-columns{grid-template-columns:1fr;gap:24px}.case-columns p{font-size:25px}.case-details ul{font-size:25px}.demo{padding:16px}.demo-heading{flex-direction:column;gap:15px}.demo-heading>div>h3{font-size:46px}.dialog-close{padding:12px 24px}.policy-content{padding:28px}.policy-content h2{font-size:46px}.policy-content p{font-size:25px}.toast{font-size:20px}}
@media(max-width:460px){.project-grid{grid-template-columns:1fr;gap:31px}.project-wide{grid-column:auto}.project-cover{aspect-ratio:1.38}.project-wide .project-cover{aspect-ratio:1.3}.project-caption{flex-direction:row;gap:12px}.project-tag{max-width:98px;font-size:20px;padding:0;text-align:right}.project-caption>div{padding-left:22px}.project-caption h3{font-size:46px}.project-caption p{font-size:25px;max-width:240px}.tidy-cover-content{grid-template-columns:1fr;grid-template-rows:auto auto;padding:17px 6%;gap:0}.tidy-logo{font-size:20px}.mini-pill{position:absolute;right:6%;top:23px;font-size:20px}.sheet-preview{grid-column:1;grid-row:2;margin:15px 0 0;align-self:start}.sheet-head{font-size:20px;padding:9px}.sheet-head>span:last-child{display:block}.sheet-row{grid-template-columns:15px 1fr 1.3fr 10px;font-size:20px;padding:12px 9px}.tidy-note{grid-column:1;grid-row:3;margin:14px 0 0;font-size:20px;line-height:1.15}.tidy-note>br{display:none}.tidy-note em{margin-left:5px}.booking-paper{width:81%;height:89%;padding:20px 23px}.booking-paper h4{font-size:46px;margin-top:12px}.booking-paper .micro-label{font-size:20px}.flow-preview{font-size:20px;margin-top:15px;gap:0}.flow-preview span{padding:5px 0}.prototype-stamp{font-size:20px;right:16px;bottom:13px}.pinkroom-wordmark{font-size:20px;top:16px;left:20px}.photo-strips{height:77%;padding-top:25px;gap:14px}.photo-strip{width:24%;padding:7px;gap:4px}.photo-strip>div span{font-size:20px}.photo-strip small{font-size:20px}.carousel-slide{height:78%;padding:16px;font-size:20px}.carousel-slide strong{font-size:20px}.slide-spark{font-size:20px}.project-wide.cover-websites{aspect-ratio:1.4}.website-window{height:84%;width:89%}.mini-site-nav{padding:10px 14px;font-size:20px}.mini-site-nav>b{top:14px}.nails-art{height:calc(100% - 67px);gap:14px}.nail-menu>strong{font-size:20px}.nail-menu>span{font-size:20px;line-height:1.4;display:block}.polish-bottle{width:72px;height:108px}.polish-bottle::before{height:37px}.mini-site-bottom{font-size:20px}.work-footnote{flex-direction:column;gap:15px}.work-footnote>span{max-width:280px}.section-heading>p{display:none}.work-toolbar{margin-bottom:24px}.filters button{font-size:20px;padding:7px 9px}.contact-cta{margin-top:0;grid-row:3}.hero h1{font-size:46px}.heading-asterisk{font-size:20px}.object-desk{height:235px}.object-cd{width:91px;left:35%;top:15%}.object-star{width:64px}.object-camera{width:72px;left:74%;top:26%}.object-terminal{width:56px;left:16%;top:47%}.object-receipt{width:45px;left:58%;top:52%}.object-folder{width:45px;left:84%;top:62%}.object-fragile{width:59px;left:63%;top:0}.desk-annotation{font-size:20px;left:0;bottom:4%}.desk-annotation svg{left:55px;top:3px;width:42px}.desk-toolbar{font-size:20px;margin-bottom:28px}.desk-toolbar button{font-size:20px}.section-kicker{font-size:20px}.section-kicker>span:first-child{max-width:160px}.hero-bottom{font-size:20px}.about-copy h2{font-size:46px}.about-notebook{width:84%;padding:27px 19px 22px 40px}.about-notebook h3{font-size:46px}.about-notebook li{font-size:20px}.collage-sticker{font-size:20px;padding:8px 11px;right:0}.collage-sticker strong{font-size:20px}.collage-coffee{width:115px;left:-7px}.about-collage{height:420px}.collage-gummy{left:0}.tool-list{gap:5px 17px;font-size:20px}.contact-top{font-size:20px}.contact-content>p{font-size:25px}.site-footer>span:nth-child(2){font-size:20px}.dialog-head h2{font-size:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1!important;transform:none!important}}
/* Current-site content, composed into the reference's white → pink → ink flow. */
html{scrollbar-gutter:stable}.desktop-nav{gap:19px}.desktop-nav a{font-size:20px}.hero h1{font-size:46px;line-height:.82}.hero-copy{grid-template-columns:1.3fr 1fr;padding-bottom:40px}.hero-aside{padding-bottom:8px;max-width:350px}.hero-bottom>span{letter-spacing:.05em}.object-fragile .object-art{filter:drop-shadow(2px 5px 3px #0002)}.object-folder .object-art{--angle:7deg}.history{background-color:var(--paper);color:var(--ink);--grid:rgba(102,167,191,.24);padding-top:95px;padding-bottom:100px}.history::before{display:none}.history::after{content:'';position:absolute;bottom:0;left:0;right:0;height:70px;background:linear-gradient(transparent,var(--pink));pointer-events:none}.history .micro-label{color:var(--ink)}.history-layout{display:grid;grid-template-columns:2.6fr 1fr;gap:6vw;align-items:start}.history .experience-list{border-color:#17171755}.history .experience-row{border-color:#17171755}.history .experience-row summary{grid-template-columns:1fr 26px;gap:8px 18px;padding:24px 0}.history .experience-period{grid-column:1/-1;color:#54544d;font-size:20px}.history .experience-row h3{font-size:46px}.history .experience-row summary p{color:#55554e;font-size:25px}.history .experience-body{margin:0;padding:0 32px 25px 0}.history .experience-body ul{margin:0;padding-left:17px;font-size:25px;line-height:1.8;color:#3f3f39}.history .experience-body li{padding-left:5px;margin:10px 0}.history-collage{position:relative;height:420px;margin-top:30px}.history-note{padding:23px 19px;background:#f4edce;border:1px solid #d8cfac;transform:rotate(5deg);box-shadow:4px 7px 0 #0001}.history-note>.micro-label{font-size:20px;display:block}.history-note>strong{font-family:var(--sans);font-size:25px;font-weight:400;letter-spacing:-.025em;line-height:1.07;display:block;margin:22px 0}.history-dog{position:absolute;width:130px;bottom:19px;left:-7px;transform:rotate(-12deg)}.history-receipt{position:absolute;width:75px;bottom:44px;right:0;transform:rotate(13deg)}.history-handnote{font-family:var(--sans);font-size:20px;font-style:italic;position:absolute;bottom:-10px;right:10px;transform:rotate(-8deg)}.work{background-color:var(--pink);--grid:rgba(118,33,90,.11);padding-top:65px;padding-bottom:95px}.work::before{display:none}.project-current .project-cover{aspect-ratio:1.37}.screenshot-cover{display:grid;place-items:center;background:#f5a9e3;padding:28px 30px}.project-current .cover-websites{background:#dbaeaa}.project-current .cover-paperless{background:#bcc8a7}.project-current .cover-pinkroom{background:#baa8d5}.project-print{width:100%;height:100%;display:flex;flex-direction:column;background:#f8f5ed;padding:12px;box-shadow:3px 7px 10px #0002;transform:rotate(-4deg);transition:transform 220ms ease;overflow:hidden}.cover-websites .project-print{transform:rotate(4deg)}.cover-paperless .project-print{transform:rotate(3deg)}.cover-pinkroom .project-print{transform:rotate(-3deg)}@media(hover:hover) and (pointer:fine){.project-cover:hover .project-print{transform:rotate(0) translateY(-3px)}}.project-print>img{width:100%;height:calc(100% - 38px);flex:1;min-height:0;object-fit:contain;background:#eeede8}.print-label{font-family:var(--mono);font-size:20px;padding:0 0 8px;color:#5c5b53}.print-footer{font-family:var(--mono);font-size:20px;padding:10px 0 0;display:flex;justify-content:space-between;line-height:1.4}.project-current .project-caption{display:block}.project-current .project-caption>div{padding-left:25px}.project-current .project-caption h3{font-size:46px}.project-current .project-caption p{color:#34252f;line-height:1.7;max-width:450px;font-size:25px}.project-current .project-tag{display:block;text-align:left;max-width:none;padding-left:25px;font-size:20px;color:#34252f;margin-top:10px;font-weight:700}.tools,.credentials{background-color:#151515;color:#f1eee7;--grid:rgba(224,215,221,.13);padding:110px var(--gutter) 60px;position:relative}.tools::before{content:'';position:absolute;top:0;left:0;right:0;height:70px;background:linear-gradient(var(--pink),transparent)}.tools .section-heading>div{margin-left:21%}.tools .section-heading h2,.credentials .section-heading h2{font-size:46px;line-height:.94;margin-top:20px}.tools-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:8vw;margin:55px 0 40px;position:relative;z-index:2}.tool-tabs{display:flex;flex-direction:column}.tool-tabs>button{display:flex;gap:14px;align-items:center;text-align:left;width:100%;font-size:20px;padding:18px 2px;transition:color 160ms ease,padding-left 160ms ease}.tool-tabs>button:first-child{border-top:1px solid #f1eee733}.tool-tabs>button>span{font-family:var(--mono);font-size:20px;color:#bbb3b9}.tool-tabs>button>b{font-size:20px;font-weight:400;margin-left:auto}.tool-tabs>button[aria-selected=true]{color:#ff99e7;padding-left:10px}.tool-tabs>button[aria-selected=false]>b{opacity:.4}.tool-panels{min-height:240px;padding-top:18px}.tool-panel>.micro-label{font-size:20px;color:#b8acb5}.tool-cloud{display:flex;flex-wrap:wrap;gap:13px 24px;margin-top:24px;max-width:520px;align-content:start}.tool-cloud>span{font-family:var(--sans);font-size:20px;line-height:1.1;letter-spacing:-.015em}.tool-cloud>span::after{content:' /';color:#655e64;font-size:20px}.tools-objects{height:155px;position:relative;pointer-events:none}.tools-earbuds{position:absolute;left:0;top:-610px;width:160px;transform:rotate(-10deg)}.tools-star{position:absolute;right:27%;bottom:28px;width:66px;transform:rotate(16deg)}.tools-coffee{position:absolute;right:0;bottom:5px;width:150px;transform:rotate(-5deg)}.tools-objects>span{position:absolute;left:40%;bottom:25px;font-family:var(--sans);font-style:italic;font-size:20px;transform:rotate(-6deg);color:#c4bbc1;line-height:1.03}.credentials{padding-top:25px;padding-bottom:85px}.credentials .section-heading{border-top:1px solid #f1eee744;padding-top:60px;margin-bottom:45px}.credentials .section-heading>p{color:#c5bdc2}.credential-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.credential-card{background:#f3f1e9;color:var(--ink);padding:22px;border:1px solid #cbc7ba;transition:transform 200ms ease,box-shadow 200ms ease}.credential-card:hover{transform:translateY(-5px);box-shadow:6px 7px 0 #f96bd955}.credential-image{height:220px;overflow:hidden;margin-bottom:24px;background:#e8e7df}.credential-image img{height:100%;width:100%;object-fit:contain;transition:transform 200ms ease}.credential-card:hover img{transform:scale(1.025)}.credential-card>.micro-label{font-size:20px}.credential-card h3{font-family:var(--display);font-size:46px;line-height:1.06;letter-spacing:-.015em;font-weight:400;margin-top:12px}.credential-bottom{display:flex;justify-content:space-between;gap:16px;font-family:var(--mono);font-size:20px;padding-top:23px;margin-top:23px;border-top:1px solid #17171744}.contact h2{font-size:46px}.social-links{display:flex;gap:24px;margin-top:26px;font-family:var(--mono);font-size:20px;flex-wrap:wrap}.social-links>a:hover{text-decoration:none;}.case-screenshot{margin:0 0 32px;background:#e0dfd7;border:1px solid #17171733;padding:12px;display:block}.case-screenshot>img{width:100%;max-height:350px;object-fit:contain}.case-screenshot>span{display:block;font-family:var(--mono);font-size:20px;text-align:right;padding-top:8px}.project-dialog .dialog-head h2{font-size:46px}
@media(max-width:1050px){.history-layout{gap:4vw;grid-template-columns:2.2fr 1fr}.history-note>strong{font-size:25px}.tools-earbuds{width:130px;top:-575px}.tools .section-heading h2,.credentials .section-heading h2{font-size:46px}.credential-image{height:185px}.credential-card h3{font-size:46px}.desktop-nav{gap:16px}.hero h1{font-size:46px}}
@media(max-width:760px){.hero h1{font-size:46px}.hero-copy{grid-template-columns:1fr;gap:35px;padding-bottom:33px}.hero-aside{padding:0;max-width:100%}.history{padding-top:70px;padding-bottom:85px}.history-layout{grid-template-columns:1fr;gap:30px}.history-collage{height:245px;margin-top:5px;max-width:420px;justify-self:center;width:100%}.history-note{width:70%;margin-left:12%;padding:21px 23px}.history-note>strong{font-size:25px;margin:15px 0}.history-dog{width:94px;left:-6px;bottom:15px}.history-receipt{width:61px;bottom:10px;right:2px}.history-handnote{bottom:9px;right:95px;font-size:20px}.history .experience-row h3{font-size:46px}.work{padding-top:55px;padding-bottom:65px}.screenshot-cover{padding:19px 20px}.project-print{padding:8px}.print-label{font-size:20px;padding-bottom:6px}.print-footer{font-size:20px;padding-top:7px}.project-current .project-caption h3{font-size:46px}.project-current .project-caption p{font-size:25px}.project-current .project-tag{font-size:20px;line-height:1.8}.tools{padding-top:105px;padding-bottom:30px}.tools .section-heading>div{margin-left:0}.tools .section-heading h2,.credentials .section-heading h2{font-size:46px}.tools-layout{grid-template-columns:1fr;gap:25px;margin-top:40px}.tool-tabs>button{font-size:20px;padding:14px 2px}.tool-panels{min-height:185px;padding-top:0}.tool-cloud{margin-top:17px;gap:11px 19px}.tool-cloud>span{font-size:20px}.tools-earbuds{display:none}.tools-objects{height:95px}.tools-coffee{width:112px;right:0;bottom:0}.tools-star{width:51px;left:0;right:auto;bottom:17px}.tools-objects>span{font-size:20px;left:24%;bottom:15px}.credentials{padding-top:10px;padding-bottom:65px}.credentials .section-heading{padding-top:45px;margin-bottom:35px}.credential-grid{gap:20px}.credential-card{padding:15px}.credential-image{height:145px;margin-bottom:20px}.credential-card>.micro-label{font-size:20px}.credential-card h3{font-size:46px}.credential-bottom{font-size:20px;gap:10px;line-height:1.7;flex-direction:column;margin-top:20px;padding-top:15px}.contact h2{font-size:46px}.contact-content>p{max-width:200px}.contact-cta{margin-top:0}.contact-bottom>a:last-child{grid-row:auto}.social-links{font-size:20px;gap:19px;margin-top:24px}.case-screenshot{padding:8px;margin-bottom:24px}.case-screenshot>img{max-height:240px}}
@media(max-width:460px){.hero h1{font-size:46px}.hero-aside p{max-width:330px}.screenshot-cover{padding:24px 25px}.project-current .project-cover{aspect-ratio:1.27}.print-label{font-size:20px;padding-bottom:9px}.print-footer{font-size:20px;padding-top:9px}.project-print{padding:11px}.project-current .project-caption h3{font-size:46px}.project-current .project-caption p{max-width:none;font-size:25px}.project-current .project-tag{font-size:20px}.tool-cloud>span{font-size:20px}.tools .section-heading h2,.credentials .section-heading h2{font-size:46px}.credential-grid{grid-template-columns:1fr;gap:25px}.credential-card{padding:21px}.credential-image{height:190px;margin-bottom:23px}.credential-card h3{font-size:46px}.credential-bottom{flex-direction:row;font-size:20px}.credential-card>.micro-label{font-size:20px}.contact h2{font-size:46px}.history-note>strong{font-size:25px}.history-note{padding:20px}.history-dog{width:83px}.history-receipt{width:54px}.history-handnote{font-size:20px;right:78px}.history .experience-body ul{font-size:25px}.tools .section-heading h2{font-size:46px}}
.header-inquire{font-family:var(--mono);font-size:20px;white-space:nowrap;padding:8px 0;}.inquire-dialog{width:min(590px,calc(100% - 44px));max-width:590px}.inquire-detail{padding:20px 0;border-top:1px solid #17171733}.inquire-detail>.micro-label{font-size:20px;display:block}.inquire-detail>a{display:block;font-size:20px;margin-top:10px;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-footer>div>a{padding:6px 0;text-decoration:none;}.site-footer>div>a:hover{color:#fff}.policy-page{min-height:100svh;padding:60px var(--gutter)}.policy-page>article{max-width:700px;margin:50px auto;background:var(--paper);border:1px solid;padding:clamp(25px,5vw,60px)}.policy-page h1{font-size:46px;margin-bottom:30px}.policy-page p{font-size:25px;line-height:1.8;margin:20px 0}.policy-page .text-link{margin-top:15px}@media(max-width:1050px){.header-inquire{font-size:20px}.site-header{gap:18px}.desktop-nav{gap:13px}}@media(max-width:760px){.header-inquire{display:none}.inquire-detail>a{font-size:20px}.inquire-dialog h2{font-size:46px}.policy-page{padding-top:30px}.policy-page>article{margin:35px auto}.policy-page h1{font-size:46px}}

.no-motion .object-art{transform:none!important}.no-motion .magnetic{transform:rotate(-12deg)!important}

.site-footer>div>a{font-size:20px;padding:8px 0}#main:focus{outline:none}

/* Keep the remaining footer navigation in its original right-hand position. */
.contact-bottom{display:flex;justify-content:flex-end}

/* Social footer, matching the supplied gray-icon reference. */
.site-footer{display:block;background:#fff;color:#686868;padding:34px var(--gutter) 22px}
.site-footer .social-links{display:flex;align-items:center;justify-content:center;gap:20px;margin:0 0 24px;flex-wrap:wrap;color:#909090}
.site-footer .social-links>a{display:grid;place-items:center;width:48px;height:48px;padding:0;transition:color 160ms ease,transform 160ms ease}
.site-footer .social-links svg{width:40px;height:40px;display:block}
.site-footer .social-links img{width:32px;height:auto;display:block;opacity:.44;transition:opacity 160ms ease}
.site-footer .footer-meta{display:flex;align-items:center;justify-content:space-between;gap:14px 24px;width:100%;font-size:20px;flex-wrap:wrap}
.footer-policies{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.footer-policies>a{display:inline-flex;align-items:center;min-height:32px;font-size:20px;transition:color 160ms ease}
.footer-policies>a:hover{color:#171717}
@media(hover:hover) and (pointer:fine){.site-footer .social-links>a:hover{color:#171717;transform:translateY(-2px)}.site-footer .social-links>a:hover img{opacity:.91}}
@media(max-width:760px){.site-footer{padding-top:28px;padding-bottom:18px}.site-footer .footer-meta{justify-content:center;text-align:center}.footer-policies{justify-content:center;gap:14px}}

/* Menu typography and symmetric desktop navigation. */
.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);font-family:var(--mono);--menu-font-size:20px}
.site-header .wordmark{font-family:inherit;justify-self:start}
.site-header .desktop-nav{margin-left:0;justify-self:center}
.site-header .desktop-nav a,.site-header .header-inquire{font-family:inherit;font-size:20px;line-height:1.4;letter-spacing:0}
.site-header .header-inquire{justify-self:end;font-weight:700}
.mobile-menu a{font-family:var(--mono);font-size:20px;line-height:1.4}
.mobile-menu a[href="#contact"]{font-weight:700}
@media(max-width:1050px){.site-header{--menu-font-size:20px}}
@media(max-width:760px){.site-header{grid-template-columns:1fr auto}.site-header .menu-toggle{justify-self:end}}

/* Intro copy follows the site's existing monospace typography. */
.hero-aside p{font-family:var(--mono);font-size:25px;line-height:1.8}
@media(max-width:760px){.contact-content .contact-cta{grid-row:2}}

/* Extend the display-and-monospace pairing to the requested text. */
.history .experience-row h3,.project-current .project-caption h3{font-family:var(--display);font-size:46px;font-weight:400;line-height:1.15;letter-spacing:-.025em}
.history .experience-row summary p{font-family:var(--mono);line-height:1.8}
.history .experience-body ul{font-family:var(--mono);font-size:25px;line-height:1.85}
.project-current .project-caption p{font-family:var(--mono);font-size:25px;line-height:1.85}
.filters button{font-family:var(--mono);font-size:20px}
.dialog-description{font-family:var(--mono);font-size:25px;line-height:1.85}
.case-columns p,.case-details ul{font-family:var(--mono);font-size:25px;line-height:1.85}
.site-header a,.site-header .header-inquire,.mobile-menu a{transition:color 160ms ease}
.site-header a:focus-visible,.site-header .header-inquire:focus-visible{color:#88396f}
.mobile-menu a:focus-visible{color:#4f183f}
@media(hover:hover) and (pointer:fine){.site-header a:hover,.site-header .header-inquire:hover{color:#88396f}.mobile-menu a:hover{color:#4f183f}}
@media(max-width:760px){.history .experience-row h3,.project-current .project-caption h3{font-size:46px}.dialog-description{font-size:25px}.case-columns p,.case-details ul{font-size:25px}}

/* Category icons keep the existing tab alignment and active colors. */
.tool-tabs>button>b{flex-shrink:0}.tool-tabs .tab-icon{display:block;width:22px;height:22px}

/* Artwork from Vivien’s supplied collection. */
.heading-clip{position:absolute;width:clamp(42px,5.2vw,72px);height:auto;top:-.28em;right:-.56em;pointer-events:none;filter:drop-shadow(1px 3px 2px #0002)}
.work .section-heading{position:relative;padding-right:85px}.project-cat{position:absolute;width:clamp(48px,5.3vw,74px);height:auto;right:12px;top:0;rotate:5deg;pointer-events:none;filter:drop-shadow(1px 4px 2px #0002)}
.history-dog{width:145px;transform:rotate(-7deg)}
@media(max-width:760px){.heading-clip{width:clamp(38px,8vw,58px);right:-.44em;top:-.3em}.history-dog{width:100px}.work .section-heading{padding-right:65px}.project-cat{width:48px;right:0;top:4px}}
@media(max-width:460px){.history-dog{width:88px}}

/* Requested typography: self-hosted Computer Says No and a local Helvetica
   Now Condensed face, with Nimbus Sans Narrow while a webfont is supplied. */
@font-face{font-family:'Helvetica Now Condensed';src:local('Helvetica Now Condensed'),local('Helvetica Now Display Condensed'),local('HelveticaNowDisplay-Cn'),local('Helvetica Now Text Condensed');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Computer Says No';src:url('./fonts/computer-says-no.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--display:'Helvetica Now Condensed',DeskDisplay,'Arial Narrow',sans-serif;--sans:'Computer Says No',DeskMono,monospace;--mono:var(--sans)}
h1,h2,h3,h4,.history .experience-row h3,.project-current .project-caption h3,.credential-card h3,.demo-heading>div>h3{font-family:var(--display);font-weight:400}
h1 em,h2 em,h3 em,h4 em{font-style:normal;font-weight:inherit}
input,textarea,select{font-family:var(--sans)}
.history-note>strong{font-size:25px;line-height:1.25}
.history-note>strong em{font-weight:400;font-style:normal}
.desk-annotation,.history-handnote,.tools-objects>span{font-style:normal}

/* Exact typography and section colors requested by Vivien. */
:root{--grid:#bfcece}
body{font-size:20px}
h1,h2,h3,h4,h5,h6{font-family:var(--display);font-size:46px;line-height:1.1}
p,.hero-aside p,.project-current .project-caption p,.history .experience-row summary p,.dialog-description,.case-columns p,.policy-page p{font-size:25px;line-height:1.3}
.history .experience-body ul,.case-details ul{font-size:25px;line-height:1.4}
.hero,.history,.policy-page{background-color:#f6f1f0;--grid:#bfcece}
.site-header,.site-footer{background:#f6f1f0}
.tools,.credentials{background-color:#000000;--grid:#3d3d3d}
.work,.contact,.about,.mobile-menu{background-color:#f965d6;background-image:none}
.contact::before{background:linear-gradient(#000000,transparent)}
.site-header{--menu-font-size:20px}
.hero h1{line-height:1.05}
.heading-clip{width:52px;top:-24px;right:-68px}
.desk-annotation{width:max-content;line-height:1.2;z-index:6;pointer-events:none}
.desk-annotation svg{left:calc(100% + 14px);top:-24px;width:68px;height:45px;overflow:visible;stroke:#171717;stroke-width:1.5}
.print-label,.print-footer{line-height:1.25}
.print-footer{gap:12px;flex-wrap:wrap}
.project-print>img{height:auto}
.hero-bottom,.section-kicker,.contact-top{flex-wrap:wrap}
.contact-top>span:last-child{max-width:none}
@media(max-width:1050px){.site-header{--menu-font-size:20px}}
@media(max-width:760px){.heading-clip{width:46px;right:-56px;top:-22px}.desk-annotation svg{left:calc(100% + 12px);top:-22px;width:60px;height:40px}.contact-content>p{max-width:none}}

/* Heading hierarchy and compact, draggable project collection. */
.section-heading h2,.experience .section-heading h2,.tools .section-heading h2,.credentials .section-heading h2,.contact h2{font-size:clamp(64px,5.7vw,82px);line-height:1.04}
.hero h1{font-size:clamp(72px,9vw,132px);line-height:.94}
.history .experience-row h3{font-size:28px;line-height:1.16;max-width:none}
.work{padding-top:54px;padding-bottom:54px}
.work .section-heading{margin-bottom:24px}
.work-toolbar{margin-bottom:10px;flex-wrap:wrap}
.project-grid.project-carousel{display:flex;gap:24px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:3px;scroll-behavior:auto;overscroll-behavior-x:contain;touch-action:pan-x pan-y;padding:16px 3px 24px;cursor:grab;scrollbar-width:none;min-width:0;max-width:100%;}
.project-grid.project-carousel::-webkit-scrollbar{display:none;height:0}
.project-carousel>.project{flex:0 0 clamp(270px,29vw,350px);min-width:0;scroll-snap-align:start}
.project-carousel.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}
.project-carousel.is-dragging *{cursor:grabbing!important;user-select:none}
.project-carousel .project-cover{cursor:grab}
.project-carousel .project-cover img{-webkit-user-drag:none;user-select:none}
.project-carousel .screenshot-cover{padding:20px}
.project-carousel .project-caption>div,.project-carousel .project-tag{padding-left:0}
.project-carousel .project-caption h3{font-size:30px;line-height:1.12}
.project-carousel .project-caption p{max-width:none}
.project-carousel .project-tag{margin-top:12px;line-height:1.3}
@media(max-width:760px){.section-heading h2,.experience .section-heading h2,.tools .section-heading h2,.credentials .section-heading h2,.contact h2{font-size:56px}.hero h1{font-size:clamp(64px,14vw,98px)}.history .experience-row h3{font-size:26px}.work{padding-top:44px;padding-bottom:44px}.project-grid.project-carousel{gap:18px}.project-carousel>.project{flex-basis:min(320px,calc(100% - 34px))}.project-carousel .project-caption h3{font-size:28px}.project-carousel .screenshot-cover{padding:17px}}
@media(max-width:460px){.section-heading h2,.experience .section-heading h2,.tools .section-heading h2,.credentials .section-heading h2,.contact h2{font-size:52px}.hero h1{font-size:clamp(54px,14vw,64px)}.heading-clip{width:38px;right:-44px;top:-22px}}

.project-carousel:focus,.project-carousel:focus-visible{outline:none}
.project-carousel:focus-visible .project-tag{color:#4f183f}

/* Larger fva mark with its star aligned beside the wordmark. */
.site-header .wordmark{display:inline-flex;align-items:center;gap:5px;font-size:44px;line-height:1;letter-spacing:-.05em}
.site-header .wordmark sup{position:static;margin-left:0;font-size:14px;line-height:1;transform:translateY(-6px)}
@media(max-width:760px){.site-header .wordmark{font-size:40px}.site-header .wordmark sup{font-size:13px;transform:translateY(-5px)}}

/* Let the inquiry label extend just beyond the circle. */
.contact-cta{overflow:visible}
.contact-cta .contact-cta-label{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;white-space:nowrap;font-size:88px;line-height:1;letter-spacing:-.04em}
.contact-cta .contact-cta-arrow{font-size:40px;line-height:1;letter-spacing:0;flex-shrink:0}
@media(max-width:1050px){.contact-cta .contact-cta-label{font-size:74px}.contact-cta .contact-cta-arrow{font-size:34px}}
@media(max-width:760px){.contact-cta .contact-cta-label{font-size:60px;gap:6px}.contact-cta .contact-cta-arrow{font-size:28px}}

/* Larger tool details and a note aligned below the shell. */
.tool-panels .tool-panel>.micro-label{font-size:24px}
.tool-panels .tool-cloud>span{font-size:32px;line-height:1.3;max-width:100%;overflow-wrap:anywhere}
.tool-panels .tool-cloud>span::after{font-size:inherit}
.desk-annotation{left:2%;top:calc(10% + clamp(77px,9.5vw,135px) + 30px);bottom:auto}
@media(max-width:760px){.tool-panels .tool-cloud>span{font-size:28px}.desk-annotation{left:-4px;top:auto;bottom:6%}}

/* More prominent toolbox note and binder clip. */
.tools-objects>span{font-size:32px;line-height:1.3}
.heading-clip{width:76px;top:-38px;right:-88px}
@media(max-width:760px){.tools-objects>span{font-size:28px}.heading-clip{width:60px;top:-34px;right:-66px}}
@media(max-width:460px){.heading-clip{width:50px;top:-32px;right:-47px}}

/* A direct inquiry form in the paper footer. */
.contact.contact-inquiry{background:var(--paper);padding-top:76px;padding-bottom:30px}
.contact-inquiry .contact-content{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,90px);align-items:center}
.contact-intro{text-align:center}
.contact-intro p{margin-top:18px;color:#555;line-height:1.35}
.inquiry-form{min-width:0}
.inquiry-fields{border:0;margin:0;padding:0;min-width:0;display:grid;gap:16px}
.inquiry-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.inquiry-field{min-width:0}
.inquiry-field input,.inquiry-field textarea{display:block;width:100%;min-width:0;border:1px solid #b6aeac;border-radius:12px;background:#fff9;color:var(--ink);font:inherit;font-size:25px;line-height:1.3;padding:14px 16px;transition:border-color 160ms ease,background-color 160ms ease}
.inquiry-field input{min-height:52px}
.inquiry-field textarea{min-height:150px;resize:vertical}
.inquiry-field input::placeholder,.inquiry-field textarea::placeholder{color:#666;opacity:1}
.inquiry-field input:focus,.inquiry-field textarea:focus{outline:2px solid #88396f;outline-offset:2px;border-color:#88396f;background:#fff}
.inquiry-consent{display:flex;align-items:flex-start;gap:10px;font-size:20px;line-height:1.3;cursor:pointer}
.inquiry-consent input{margin:2px 0 0;width:18px;height:18px;flex-shrink:0;accent-color:#88396f}
.inquiry-consent a{color:#88396f;font-weight:bold}
.inquiry-submit{justify-self:start;min-height:48px;border-radius:999px;padding:12px 26px;background:var(--ink);color:var(--paper);font-size:25px;transition:background-color 160ms ease,color 160ms ease,opacity 160ms ease}
.inquiry-fields:disabled .inquiry-submit{opacity:.55;cursor:wait}
.inquiry-notice,.inquiry-status{font-size:20px;line-height:1.35;margin-top:12px;color:#555}
.inquiry-status:empty{display:none}
.inquiry-form[data-state=error] .inquiry-status{color:#873348}
.inquiry-form[data-state=success] .inquiry-status{color:#27553b}
.inquiry-honeypot{display:none!important}
@media(hover:hover) and (pointer:fine){.inquiry-submit:hover{background:#88396f}.inquiry-consent a:hover{color:var(--ink)}}
@media(max-width:900px){.contact-inquiry .contact-content{grid-template-columns:1fr;gap:34px}.contact-intro{text-align:left}}
@media(max-width:460px){.inquiry-row{grid-template-columns:1fr}.contact.contact-inquiry{padding-top:54px}.inquiry-field input,.inquiry-field textarea{padding:12px 14px}}

/* Compact certificate collection. */
.credentials{padding-top:16px;padding-bottom:50px}
.credentials .section-heading{padding-top:36px;margin-bottom:26px}
.credentials .section-heading h2{font-size:64px;line-height:1.04}
.credential-grid{max-width:880px;margin-inline:auto;gap:24px}
.credential-card{padding:16px}
.credential-image{height:167.92px;margin-bottom:16px}
.credential-card h3{font-size:24px;line-height:1.12;margin-top:8px}
.credential-bottom{margin-top:16px;padding-top:14px;gap:12px;line-height:1.3}
@media(max-width:760px){.credentials{padding-top:10px;padding-bottom:40px}.credentials .section-heading{padding-top:28px;margin-bottom:22px}.credentials .section-heading h2{font-size:48px}.credential-grid{gap:20px}.credential-image{height:157.92px}.credential-card h3{font-size:22px}}
@media(max-width:620px){.credential-grid{grid-template-columns:1fr;max-width:440px}.credential-card{padding:14px}.credential-image{height:147.92px}.credential-bottom{flex-direction:column;gap:6px}}

/* More readable tool category controls. */
.tool-tabs>button{font-size:32px;line-height:1.25}
.tool-tabs .tab-icon{width:26px;height:26px}
@media(max-width:760px){.tool-tabs>button{font-size:28px}.tool-tabs .tab-icon{width:24px;height:24px}}

.contact-inquiry h2{font-size:60px;line-height:1.04}
@media(max-width:760px){.contact-inquiry h2{font-size:46px}}
@media(max-width:460px){.contact-inquiry h2{font-size:42px}}

/* A compact footer row beneath the inquiry form. */
.contact.contact-inquiry{padding-top:40px;padding-bottom:12px}
.site-footer{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;padding:16px var(--gutter) 24px}
.site-footer::before{content:'';position:absolute;top:0;left:var(--gutter);right:var(--gutter);border-top:1px solid #17171722;pointer-events:none}
.footer-copyright{justify-self:start}
.site-footer .footer-policies{justify-content:center;justify-self:center}
.site-footer .social-links{justify-content:flex-end;justify-self:end;gap:20px;margin:0;flex-wrap:nowrap}
@media(max-width:760px){.contact.contact-inquiry{padding-top:32px}.site-footer{grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;padding-top:16px;padding-bottom:20px}.site-footer .social-links{grid-column:2;grid-row:1;gap:14px}.site-footer .footer-policies{grid-column:1/-1;grid-row:2;justify-self:start;justify-content:flex-start;gap:14px}}
@media(max-width:460px){.site-footer{grid-template-columns:1fr;gap:10px}.site-footer .social-links{grid-column:1;grid-row:3;justify-self:start;justify-content:flex-start}.site-footer .footer-policies{grid-column:1;grid-row:2}}


/* Motion layers preserve the original object geometry and individual rotation. */
.desk-entry,.object-float{display:block;width:100%}
.desk-object{touch-action:none}
.object-desk{touch-action:pan-y}
.desk-object[data-dragging=true] .object-label{opacity:0}
.motion-ready .credential-card{transition:box-shadow 200ms ease}
.motion-ready .credential-card:hover{transform:none}
.motion-ready .credential-image img{transition:none}
.motion-ready .tool-tabs>button{transition:color 160ms ease}
.no-motion .desk-entry,.no-motion .object-float,.no-motion .project-cover,.no-motion .credential-card,.no-motion .credential-image img{transform:none!important}
@media(hover:hover) and (pointer:fine){.tool-tabs>button:hover{color:#ff99e7}.tool-cloud>span{transition:color 160ms ease}.tool-cloud>span:hover{color:#ff99e7}.desktop-nav a:active,.mobile-menu a:active{color:#88396f}}
@media(max-width:760px){
  .desk-annotation{left:0;top:auto;bottom:6px;line-height:1.05}
  .desk-annotation svg{left:calc(100% + 12px);top:-4px;width:48px;height:34px;transform:rotate(-100deg);transform-origin:center}
  .desk-toolbar{gap:12px;align-items:flex-start}
  .desk-toolbar>span{max-width:58%;line-height:1.3}
  .desk-toolbar button{flex-shrink:0;padding-top:0;line-height:1.3}
}


/* Compact centered quote and small navigation/footer refinements. */
.history-note{width:86%;margin-inline:auto;padding:16px 14px;text-align:center}
.history-note>strong{margin:14px 0}
.site-header .desktop-nav a,.site-header .header-inquire,.mobile-menu a{font-size:22px}
.site-footer .social-links{gap:10px}
.site-footer .social-links svg{width:34px;height:34px}
.site-footer .social-links img{width:28px}
@media(max-width:760px){.history-note{width:64%;margin-left:auto;margin-right:auto;padding:16px 14px}.site-footer .social-links{gap:8px}}

/* A new desk destination, with independent drag / float / hover layers. */
.object-car{left:38%;top:63%;width:clamp(140px,17vw,220px);--angle:-4deg}
.object-car .object-art img{width:100%;height:auto;aspect-ratio:2/1;object-fit:contain}
.credentials .section-heading{position:relative}
.credentials-gummy{position:absolute;right:0;top:auto;bottom:4px;width:100px;height:auto;transform:rotate(7deg);pointer-events:none}
.inquiry-email{display:inline-block;margin-top:14px;font:25px/1.2 var(--mono);overflow-wrap:anywhere;color:var(--ink);transition:color 160ms ease}
.inquiry-email:hover{color:#88396f}
.car-navigation{width:min(440px,calc(100% - 36px));max-width:440px}
.car-navigation-content{padding:24px 28px 28px}
.car-navigation h2{font-size:46px;line-height:1.02;margin:12px 0 24px}
.car-navigation nav{display:grid;gap:2px}
.car-navigation nav a{display:block;padding:10px 0;font:25px/1.1 var(--mono);transition:color 160ms ease,transform 180ms ease}
.car-navigation nav a:hover{color:#88396f;transform:translateX(3px)}
.car-navigation nav a:active{transform:translateX(1px)}
@media(max-width:760px){.object-car{left:25%;top:-6%;width:108px}.credentials-gummy{width:66px}.car-navigation-content{padding:20px 24px 24px}}
@media(max-width:460px){.object-car{left:25%;top:-6%;width:96px}.credentials-gummy{width:60px}.inquiry-email{font-size:25px}}
@media(prefers-reduced-motion:reduce){.car-navigation nav a{transition:none}.car-navigation nav a:hover{transform:none}}
/* Mobile earphones, kept clear of the Tools & Technologies heading. */
.mobile-tools-earbuds{display:none}
@media(max-width:760px){
  .tools .section-heading{position:relative}
  .mobile-tools-earbuds{display:block;position:absolute;right:8px;top:-88px;width:76px;height:76px;object-fit:contain;transform:rotate(-10deg);pointer-events:none}
}

/* Keep project close-button keyboard focus on the icon, rather than a full-width line. */


/* Hide scrollbar chrome while preserving mouse, touch, and keyboard scrolling. */
*,*::before,*::after{scrollbar-width:none;-ms-overflow-style:none}
*::-webkit-scrollbar{display:none;width:0;height:0}
/* Keep close controls clean; indicate keyboard focus with the existing accent. */
.dialog-close:focus,.dialog-close:focus-visible{outline:none;box-shadow:none}
.dialog-close span,.dialog-close:focus-visible span{outline:none;box-shadow:none;border-radius:0}
.dialog-close:focus-visible{color:#88396f}

/* Certificates use the same touch, drag, and keyboard browsing as Projects. */
.credential-grid.credential-carousel{display:flex;width:100%;max-width:none;gap:24px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:2px;overscroll-behavior-x:contain;touch-action:pan-x pan-y;padding:8px 2px 12px;cursor:grab;min-width:0}
.credential-carousel>.credential-card{flex:0 0 clamp(280px,calc((100% - 48px)/3),440px);min-width:0;scroll-snap-align:start;cursor:grab}
.credential-carousel img{-webkit-user-drag:none;user-select:none}
.credential-carousel.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}
.credential-carousel.is-dragging *{cursor:grabbing!important;user-select:none}
.credential-carousel:focus,.credential-carousel:focus-visible{outline:none}
.credential-carousel:focus-visible .credential-bottom{color:#88396f}
@media(max-width:760px){.credential-grid.credential-carousel{gap:20px}.credential-carousel>.credential-card{flex-basis:min(360px,calc(100% - 28px))}}

/* Inset credentials panel: retain the existing cards and horizontal carousel. */
.credentials{background-color:var(--paper);padding:28px clamp(16px,2.4vw,38px) 36px;--grid:#3d3d3d}
.credentials-inset{background-color:#000000;color:#f1eee7;border-radius:20px;padding:26px clamp(18px,2vw,32px) 22px;min-width:0;overflow:hidden}
.credentials .credentials-inset .section-heading{border-top:0;padding-top:0;margin-bottom:18px}
@media(max-width:760px){
 .credentials{padding:18px 12px 24px}
 .credentials-inset{border-radius:16px;padding:22px 16px 18px}
 .credentials .credentials-inset .section-heading{margin-bottom:16px}
}

.credentials .credentials-inset .section-heading h2{font-size:48px}
.credentials-inset .credentials-gummy{width:72px}
@media(max-width:760px){.credentials .credentials-inset .section-heading h2{font-size:40px}.credentials-inset .credentials-gummy{width:52px}}

/* Clean modal surface; no offset black rectangle on mobile or desktop. */
dialog{box-shadow:none}
/* Touch browsers should not composite drop shadows over transformed artwork. */
@media(hover:none),(max-width:760px){
 .object-art,.desk-object:hover .object-art,.desk-object:focus-visible .object-art,
 .object-fragile .object-art,.heading-clip,.project-cat{filter:none}
}
