:root{color:#191919;font-synthesis:none;text-rendering:optimizelegibility;--pink:#0092dd;--paper:#fff;--ink:#191919;--muted:#706f6a;--line:#19191929;--page-pad:max(20px, calc((100vw - 1400px) / 2));background:#fff;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}::selection{color:var(--ink);background:#d9ebfc}.app-shell{flex-direction:column;min-height:100dvh;display:flex;overflow-x:clip}.app-shell>main{flex:1 0 auto}.app-shell>main:not(.contact-page):not(.about-page){margin-bottom:32px}.site-header{min-height:88px;padding:0 var(--page-pad);z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:sticky;top:0}.wordmark{letter-spacing:-.08em;text-transform:uppercase;flex-direction:column;grid-column:2;align-items:center;gap:2px;font-size:18px;font-weight:900;line-height:.73;display:flex;transform:rotate(-2deg)}.main-nav{grid-area:1/1;gap:clamp(18px,2.3vw,34px);display:flex}.main-nav a,.socials a{text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:700;line-height:1;transition:color .25s;position:relative}.main-nav a:after{content:"";background:var(--pink);height:2px;transition:right .25s;position:absolute;bottom:-8px;left:0;right:100%}.main-nav a.active{color:var(--pink)}.main-nav a.active:after{right:0}.socials{grid-area:1/3;justify-self:end;align-items:center;gap:18px;display:flex}.socials a{width:22px;height:22px;color:var(--pink);text-transform:none;place-items:center;font-size:18px;line-height:1;display:grid}.socials .behance-mark{letter-spacing:-.07em;padding-bottom:1px;font-weight:800}.socials svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:18px;height:18px}.socials .dot{fill:currentColor;stroke:none}.page-intro{grid-template-columns:minmax(160px,.8fr) 2.2fr;align-items:end;gap:34px;max-width:1400px;margin:0 auto;padding:clamp(46px,6vw,82px) 0 clamp(34px,4vw,56px);display:grid}.page-intro p,.eyebrow{letter-spacing:.14em;text-transform:uppercase;margin:6px 0 0;font-size:11px;font-weight:700}.page-intro h1{letter-spacing:-.06em;max-width:810px;margin:0;font-size:clamp(40px,5.5vw,78px);font-weight:500;line-height:.96}.project-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:1400px;margin:0 auto;display:grid}.gallery-page .project-grid{padding-top:clamp(38px,4vw,58px)}.behance-work-page .project-grid{padding-top:20px}.project-grid.behance-grid{width:min(1400px, calc(100% - var(--page-pad) - var(--page-pad)));grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1400px;margin-left:auto;margin-right:auto}.project-card.behance-card{aspect-ratio:410/320;border-radius:2px;width:100%;height:auto}.behance-card-image{object-fit:cover;transition:transform .65s cubic-bezier(.2,.75,.25,1),filter .4s}.behance-empty{text-align:center;min-height:55vh;padding:clamp(70px,10vw,140px) 24px}.behance-empty>p{letter-spacing:-.04em;margin:0 0 30px;font-size:clamp(28px,4vw,54px)}.project-card{aspect-ratio:1;opacity:0;animation:.55s cubic-bezier(.2,.75,.25,1) forwards appear;animation-delay:var(--delay);overflow:hidden;transform:translateY(12px)}.project-card a{background:#dedbd4;width:100%;height:100%;display:block;position:relative;overflow:hidden}.artwork{background-image:url(/images/portfolio-grid.png);background-repeat:no-repeat;background-size:400% 200%;background-position:calc(var(--sprite-x) * 33.3333%) calc(var(--sprite-y) * 100%)}.project-card .artwork{width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.75,.25,1),filter .4s}.card-overlay{color:#fff;opacity:0;background:linear-gradient(#0000 42%,#000000b3);justify-content:space-between;align-items:flex-end;padding:clamp(16px,1.8vw,26px);transition:opacity .32s,transform .32s;display:flex;position:absolute;inset:0;transform:translateY(7px)}.card-overlay h2{letter-spacing:-.04em;margin:0 0 4px;font-size:clamp(19px,1.6vw,26px);font-weight:500}.card-overlay p{text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:9px}.card-arrow{font-size:23px}.books-page{width:100%;max-width:1400px;margin:0 auto;padding:clamp(40px,5vw,68px) clamp(24px,4vw,56px) 0}.books-intro{text-align:center;padding:clamp(52px,6vw,82px) 0 clamp(46px,5vw,68px)}.books-intro .eyebrow{color:var(--muted)}.books-intro h1{justify-content:center;gap:clamp(1px,.5vw,7px);margin:22px 0 20px;display:flex}.books-intro h1 span{color:var(--pink);-webkit-text-stroke:1px currentColor;transform:rotate(calc((var(--letter) - 2) * 2deg));font:italic 700 clamp(50px,6.2vw,88px)/.9 Georgia,serif;display:inline-block}.books-intro h1 span:first-child,.books-intro h1 span:nth-child(5){transform:translateY(4px)rotate(-4deg)}.books-intro h1 span:nth-child(2),.books-intro h1 span:nth-child(4){transform:translateY(1px)rotate(-2deg)}.books-intro h1 span:nth-child(2){color:#e3a70b}.books-intro h1 span:nth-child(3){color:#5d71d6}.books-intro h1 span:nth-child(4){color:#61a86b}.books-intro-copy{max-width:520px;color:var(--muted);margin:0 auto;font-size:14px;line-height:1.5}.books-grid{grid-template-columns:repeat(4,minmax(0,255px));justify-content:center;align-items:start;gap:clamp(34px,4vw,58px);padding:0 0 30px;display:grid}.book-card{text-align:center;opacity:0;animation:.6s cubic-bezier(.2,.75,.25,1) forwards appear;animation-delay:var(--delay);transform:translateY(14px)}.book-object-link{aspect-ratio:.72;perspective:1000px;width:100%;max-width:255px;margin:0 auto 34px;display:block}.book-object{aspect-ratio:.72;transform-style:preserve-3d;filter:drop-shadow(11px 18px 13px #251f1940);transition:transform .45s cubic-bezier(.2,.75,.25,1),filter .45s;position:relative;transform:rotateY(-5deg)rotateX(1.5deg)}.book-object-square{aspect-ratio:1;width:118%;margin-left:-9%}.book-object:after{content:"";z-index:-1;transform-origin:0;background:repeating-linear-gradient(90deg,#e8e4dc 0 1px,#cfc9bf 1px 2px);width:10px;position:absolute;top:7px;bottom:6px;right:-7px;transform:rotateY(48deg);box-shadow:3px 2px 5px #0000002e}.book-cover{background:var(--cover-color);border:1px solid #19191921;height:100%;position:relative;overflow:hidden;box-shadow:inset 5px 0 9px #00000017,inset -2px 0 #ffffff5c}.book-cover-art{width:139%;height:100%;margin-left:-19.5%}.book-cover-image{object-fit:cover;width:100%;height:100%;display:block}.book-info h2{min-height:2.25em;margin:0 0 9px;font:500 clamp(19px,1.65vw,25px)/1.12 Georgia,serif}.book-button{width:fit-content;min-width:136px;min-height:40px;color:var(--ink);box-shadow:none;letter-spacing:.08em;text-transform:uppercase;background:#fff;border:1px solid #19191938;border-radius:999px;justify-content:space-between;align-items:center;gap:15px;margin:0 auto;padding:0 6px 0 17px;font-size:10px;font-weight:700;transition:color .25s,border-color .25s,transform .25s,box-shadow .25s;display:flex}.book-button span{width:28px;height:28px;color:var(--pink);background:#0092dd1a;border-radius:50%;place-items:center;font-size:14px;transition:color .25s,background .25s,transform .25s;display:grid}.project-heading{max-width:1400px;margin:0 auto;padding:clamp(58px,7vw,96px) 0 clamp(40px,5vw,68px)}.project-heading h1{letter-spacing:-.08em;max-width:1100px;margin:16px 0 24px;font-size:clamp(60px,9vw,126px);font-weight:500;line-height:.86}.project-lede{letter-spacing:-.025em;max-width:620px;margin:0 0 0 34%;font-size:clamp(19px,1.8vw,27px);line-height:1.22}.project-hero{aspect-ratio:1;width:min(920px,100vw - 40px);margin:0 auto}.project-copy{grid-template-columns:.8fr 2fr;gap:40px;max-width:1100px;margin:0 auto;padding:clamp(58px,8vw,110px) 0;display:grid}.project-copy p{margin:0}.project-copy>p:last-child{letter-spacing:-.04em;max-width:720px;font-size:clamp(21px,2.6vw,36px);line-height:1.12}.project-number{text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:700}.project-gallery{grid-template-columns:1fr 1fr;gap:8px;max-width:1100px;margin:0 auto;display:grid}.project-gallery .artwork{aspect-ratio:1}.next-project{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:110px minmax(0,1fr) 42px;align-items:center;gap:24px;width:min(1100px,100% - 48px);min-height:0;margin:clamp(64px,8vw,110px) auto 0;padding:20px 2px;transition:border-color .25s;display:grid}.next-project>span:first-child{text-transform:uppercase;letter-spacing:.13em;font-size:9px;font-weight:700}.next-project strong{letter-spacing:-.045em;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(23px,2.8vw,38px);font-weight:500;line-height:1;transition:color .25s;overflow:hidden}.next-arrow{border:1px solid var(--line);border-radius:50%;place-items:center;width:42px;height:42px;font-size:20px;line-height:1;transition:transform .25s,background .25s,border-color .25s;display:grid}.behance-project-heading{width:min(920px,100% - 56px);margin:0 auto;padding:clamp(36px,4vw,54px) 0 clamp(18px,2vw,26px)}.behance-project-heading h1{letter-spacing:-.045em;max-width:820px;margin:16px 0 24px;font-size:clamp(24px,2.65vw,36px);font-weight:500;line-height:1}.behance-project-heading>p:not(.eyebrow){max-width:620px;color:var(--muted);white-space:pre-line;margin:0 0 25px;font-size:clamp(14px,1.25vw,18px);line-height:1.5}.behance-project-heading>a{text-transform:uppercase;letter-spacing:.09em;border-bottom:1px solid;gap:10px;padding-bottom:6px;font-size:12px;font-weight:700;transition:color .2s;display:inline-flex}.behance-modules{width:min(920px,100% - 56px);margin:0 auto}.behance-modules>:first-child{margin-top:0}.behance-module-image{background:0 0;margin:0 0 8px;overflow:hidden}.behance-module-image img{opacity:0;width:100%;height:auto;transition:opacity .45s;display:block}.behance-module-image.is-loaded img{opacity:1}.behance-module-grid{gap:3px;margin-bottom:8px;display:flex}.behance-module-grid .behance-module-image{margin:0}.behance-module-text{white-space:pre-line;text-align:center;max-width:610px;margin:clamp(34px,5vw,62px) auto;padding:0 18px;font:400 clamp(14px,1.35vw,18px)/1.52 Georgia,serif}.behance-module-text>*{margin:0}.behance-module-text>*+*{margin-top:.25em}.behance-module-text a{color:#477da9;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;transition:color .2s}.about-page{width:min(1400px, calc(100% - var(--page-pad) - var(--page-pad)));max-width:1400px;margin:0 auto}.about-profile{grid-template-columns:minmax(240px,300px) minmax(0,680px);justify-content:start;align-items:start;gap:clamp(40px,5vw,76px);padding:clamp(30px,4.5vh,42px) 0 16px;display:grid}.portrait-wrap{width:min(100%,300px);margin:0;position:relative}.portrait-wrap:before{content:"";border:1px solid var(--pink);z-index:-1;position:absolute;inset:12px -12px -12px 12px}.portrait-image{width:100%;height:340px;overflow:hidden}.portrait-wrap img{object-fit:cover;object-position:center 34%;filter:contrast(1.02);transform-origin:50% 34%;opacity:0;width:100%;height:100%;transition:opacity .45s;display:block;transform:scale(1.42)}.portrait-wrap img.is-loaded{opacity:1}.about-story{padding:clamp(18px,5vh,44px) 0 0}.about-story .eyebrow{margin:0 0 18px}.hello-mark{color:var(--pink);margin-bottom:16px;font:italic 28px/1 Georgia,serif;display:inline-block;transform:rotate(-5deg)}.about-lede{letter-spacing:-.045em;max-width:620px;margin:0 0 24px;font-size:clamp(27px,2.7vw,40px);line-height:1.08}.about-notes{color:#4c4b47;max-width:560px;font-size:14px;line-height:1.5}.about-notes p{margin:0}.text-link{border-bottom:1px solid;gap:13px;margin-top:26px;padding-bottom:6px;font-size:14px;font-weight:700;transition:color .2s;display:inline-flex}.contact-page{width:min(1400px, calc(100% - var(--page-pad) - var(--page-pad)));max-width:1400px;margin:0 auto;padding:clamp(28px,4vh,46px) 0 22px}.contact-layout{grid-template-columns:minmax(0,1.45fr) minmax(260px,.8fr);align-items:start;gap:clamp(42px,6vw,90px);display:grid}.contact-form-panel{max-width:800px}.contact-title{letter-spacing:-.05em;text-transform:uppercase;margin:0 0 28px;font-size:clamp(32px,3.5vw,48px);font-weight:500;line-height:1}.contact-intro{max-width:670px;color:var(--muted);margin:0 0 22px;font-size:clamp(15px,1.4vw,19px);line-height:1.42}.contact-intro a{color:var(--ink);border-bottom:1px solid;transition:color .2s}.contact-form{gap:14px;display:grid}.contact-form .contact-honey{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-9999px}.contact-form label{gap:6px;display:grid}.contact-form label>span{letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-weight:700}.contact-form input,.contact-form textarea{border:1px solid #0000;border-bottom-color:var(--line);width:100%;color:var(--ink);font:inherit;background:#ebece8;border-radius:0;outline:none;padding:12px 15px;font-size:15px;transition:background .2s,border-color .2s,box-shadow .2s}.contact-form textarea{resize:none;height:128px;min-height:128px;line-height:1.45}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a09f99}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--pink);background:#fff;box-shadow:0 0 0 3px #0092dd38}.form-actions{align-items:center;gap:22px;display:flex}.form-actions button{cursor:pointer;color:#fff;background:var(--ink);min-height:42px;font:inherit;border:0;border-radius:999px;align-items:center;gap:14px;padding:0 22px;font-size:12px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.form-actions button:disabled{cursor:wait;opacity:.6;transform:none}.form-actions button span{font-size:17px}.form-actions p{max-width:210px;color:var(--muted);margin:0;font-size:10px;line-height:1.4}.form-status{color:#4f8a59;min-height:1.4em;margin:-8px 0 0;font-size:12px}.form-status.error{color:#b9473d}.contact-visual{padding-top:4px}.contact-art-wrap{aspect-ratio:1;width:min(100%,440px);margin:0 auto;position:relative}.contact-art-wrap:before{content:"";border:1px solid var(--pink);z-index:-1;position:absolute;inset:16px -16px -16px 16px}.contact-portrait{object-fit:cover;object-position:center 32%;width:100%;height:100%;display:block}.site-footer{width:100%;max-width:none;padding:26px var(--page-pad);border-top:1px solid var(--line);text-transform:uppercase;letter-spacing:.11em;background:#fff;justify-content:flex-end;gap:20px;margin:auto 0 0;font-size:10px;display:flex}.contact-page+.site-footer{margin-top:26px;padding-top:16px;padding-bottom:16px}.about-page+.site-footer{margin-top:18px;padding-top:16px;padding-bottom:16px}.site-footer p{margin:0}.not-found-page{max-width:1400px;min-height:58vh;margin:0 auto;padding:clamp(70px,10vw,150px) 0}.not-found-page h1{letter-spacing:-.075em;margin:18px 0 42px;font-size:clamp(54px,9vw,130px);font-weight:500;line-height:.88}@keyframes appear{to{opacity:1;transform:translateY(0)}}@media (min-width:801px){:is(body:has(.about-page),body:has(.contact-page)){overflow-y:hidden}:is(.app-shell:has(.about-page),.app-shell:has(.contact-page)){grid-template-rows:auto minmax(0,1fr) auto;height:100dvh;display:grid}}@media (max-width:1440px){.page-intro,.project-grid,.project-heading{margin-left:24px;margin-right:24px}}@media (max-width:1300px){.books-grid{grid-template-columns:repeat(3,minmax(0,255px))}}@media (max-width:1100px){.project-grid,.project-grid.behance-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.about-profile{grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:40px}}@media (max-width:920px){.books-grid{grid-template-columns:repeat(2,minmax(0,255px));gap:65px clamp(42px,7vw,64px)}}@media (max-width:800px){.site-header{grid-template-rows:auto auto;grid-template-columns:1fr auto;row-gap:18px;min-height:88px;padding-top:17px;padding-bottom:13px}.wordmark{grid-area:1/1;justify-self:start;align-items:flex-start;font-size:17px}.socials{grid-area:1/2}.main-nav{grid-area:2/1/auto/-1;justify-content:space-between;gap:0}.main-nav a{font-size:10px}.main-nav a:after{bottom:-5px}.page-intro{grid-template-columns:1fr;gap:22px}.page-intro h1{max-width:620px}.project-grid,.project-grid.behance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-lede{margin-left:0}.project-copy{grid-template-columns:1fr;gap:24px;margin:0 24px}.project-gallery{margin:0 24px}.about-profile{grid-template-columns:1fr}.portrait-wrap{width:min(60vw,300px)}.about-story{padding-left:12%}.contact-layout{grid-template-columns:1fr}.contact-visual{display:none}}@media (max-width:640px){.books-page{padding-left:20px;padding-right:20px}.books-grid{grid-template-columns:1fr;gap:62px;padding-left:0;padding-right:0}.book-object-link{width:min(68vw,245px)}.book-info{max-width:320px;margin:0 auto}}@media (max-width:520px){.page-intro,.project-grid,.project-heading{margin-left:18px;margin-right:18px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.project-grid.behance-grid{grid-template-columns:1fr;gap:8px}.project-card.behance-card{aspect-ratio:410/320;width:100%;height:auto}.behance-project-heading,.behance-modules{width:calc(100% - 48px)}.books-intro{padding-top:44px}.project-card .card-overlay{opacity:1;background:linear-gradient(#0000 52%,#000000ad);padding:13px;transform:none}.card-overlay h2{font-size:17px}.card-overlay p,.card-arrow{display:none}.project-hero{width:calc(100vw - 36px)}.project-gallery{grid-template-columns:1fr;margin:0 18px}.project-copy{margin:0 18px}.portrait-wrap{width:min(72vw,300px)}.portrait-image{height:330px}.portrait-wrap:before{inset:10px -10px -10px 10px}.about-story{padding-left:0}.about-notes{grid-template-columns:1fr;gap:18px}.contact-layout{gap:64px}.form-actions{flex-direction:column;align-items:flex-start;gap:12px}.contact-art-wrap:before{inset:10px -10px -10px 10px}.site-footer{flex-direction:column;align-items:flex-start}.next-project{grid-template-columns:1fr 38px;gap:12px;width:calc(100% - 36px);padding:18px 0}.next-project>span:first-child{grid-column:1/-1}.next-project strong{font-size:23px}.next-arrow{width:38px;height:38px}}@media (hover:hover) and (pointer:fine) and (min-width:1101px){.main-nav a:hover,.socials a:hover{color:var(--pink)}.main-nav a:hover:after{right:0}.behance-card a:hover .behance-card-image,.project-card a:hover .artwork{transform:scale(1.035)}.project-card a:hover .card-overlay{opacity:1;transform:translateY(0)}.book-object-link:hover .book-object{filter:drop-shadow(14px 24px 16px #251f194d);transform:rotateY(0)rotateX(0)translateY(-9px)scale(1.015)}.book-button:hover{color:var(--pink);border-color:var(--pink);background:#fff;transform:translateY(-2px);box-shadow:0 7px 18px #0092dd1a}.book-button:hover span{color:#fff;background:var(--pink);transform:rotate(45deg)}.next-project:hover{color:inherit;border-color:var(--pink);background:0 0}.next-project:hover strong{color:#6c9fcf}.next-project:hover .next-arrow{background:var(--pink);border-color:var(--pink);transform:translate(4px)}.behance-project-heading>a:hover,.text-link:hover,.contact-intro a:hover{color:var(--pink)}.behance-module-text a:hover{color:#1f5f96}.form-actions button:hover{background:var(--pink);transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
