@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-mono:"Geist Mono","Geist Mono Fallback"}

/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.flex{display:flex}.uppercase{text-transform:uppercase}}:root{--cream:#f4f0e8;--ink:#171714;--blue:#2558f4;--coral:#ff654d;--green:#b9e3b1;--line:#1717142e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--font-sans),Arial,sans-serif;margin:0;overflow-x:clip}a{color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:#2558f42e;text-decoration:none}.inline-icon{vertical-align:-.12em;stroke-width:2.25px;flex:none;width:.95em;height:.95em;display:inline-block}.inline-icon-down,.inline-icon-right,.inline-icon-up-right{margin-left:.12em}.inline-icon-left,.inline-icon-up{margin-right:.12em}a:focus-visible{outline:3px solid var(--blue);outline-offset:5px;border-radius:2px}.skip-link{z-index:100;background:var(--ink);color:#fff;padding:12px 16px;transition:transform .18s;position:fixed;top:12px;left:12px;transform:translateY(-180%)}.skip-link:focus-visible{transform:translateY(0)}[id]{scroll-margin-top:32px}.shell{width:min(1440px,100% - clamp(40px,5vw,80px));margin-inline:auto}.nav{border-bottom:1px solid var(--line);z-index:10;justify-content:space-between;align-items:center;min-height:80px;display:flex;position:relative}.brand{letter-spacing:-.08em;font-size:1.35rem;font-weight:900}.brand-dot{color:var(--coral)}.nav-links{letter-spacing:-.01em;gap:34px;font-size:1rem;font-weight:600;display:flex}.nav-contact,.nav-links a,.nav-resume{transition:transform .2s,color .2s,background-color .2s}.nav-links a{align-items:center;min-height:44px;display:inline-flex;position:relative}.nav-links a:after{content:"";background:var(--coral);transform-origin:0;height:2px;transition:transform .28s cubic-bezier(.2,.75,.2,1);position:absolute;bottom:1px;left:0;right:0;transform:scaleX(0)rotate(-1deg)}.nav-contact:hover,.nav-links a:hover{color:var(--blue);transform:translateY(-2px)}.nav-links a[aria-current=page]{color:var(--blue);font-weight:750}.nav-links a[aria-current=page]:after{transform:scaleX(1)rotate(-1deg)}.nav-actions{align-items:center;gap:22px;display:flex}.nav-contact,.project-link{border-bottom:1px solid;padding-bottom:3px;font-weight:700}.nav-resume{background:var(--ink);color:var(--cream);box-shadow:0 5px 0 var(--coral);border-radius:99px;align-items:center;gap:8px;padding:10px 15px;font-size:.9rem;font-weight:760;display:inline-flex}.nav-resume:hover{background:var(--blue);box-shadow:0 7px 0 var(--coral);transform:translateY(-2px)}.hero{flex-direction:column;justify-content:center;min-height:clamp(620px,70vh,700px);padding:64px 0 48px;display:flex;position:relative}.eyebrow,.project-index,.section-kicker{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;font-size:.73rem;font-weight:650}.wave{transform-origin:70% 70%;animation:wave 2.5s ease-in-out infinite;display:inline-block}.footer h2,.hero h1,.inner-page h1,.work-heading h2{letter-spacing:-.075em;text-wrap:balance;margin:24px 0;font-size:clamp(4rem,9.3vw,9rem);font-weight:720;line-height:.88}em{font-family:Georgia,serif;font-weight:400;position:relative}.hero h1 em:after,.inner-page h1 em:after{content:"";background:var(--coral);opacity:.85;border-radius:50%;height:10px;position:absolute;bottom:-4px;left:2%;right:-2%;transform:rotate(-1deg)}.hero h1 .hero-emphasis{z-index:1;white-space:nowrap;display:inline-block}.hero h1 .hero-emphasis:after{border-radius:60% 38% 55% 42%;height:.08em;bottom:-.05em;left:-.02em;right:-.05em;transform:rotate(-1.5deg)skew(-8deg)}.hero h1 .hero-emphasis:before{content:"";z-index:-1;background:var(--blue);border-radius:50%;height:.035em;position:absolute;bottom:-.11em;left:.08em;right:-.02em;transform:rotate(.8deg)}.hero-bottom{z-index:2;justify-content:space-between;align-items:end;margin-top:35px;font-size:1rem;line-height:1.5;display:flex;position:relative}.hero-bottom p{margin:0}.text-link{border-bottom:1px solid;padding-bottom:5px;font-weight:700}.art-note{font-family:Georgia,serif;font-size:.9rem;font-style:italic;position:absolute;transform:rotate(-4deg)}.location-stamp{font:500 .64rem/1.45 var(--font-mono);letter-spacing:.08em;color:var(--blue);text-align:center;border:1px solid;border-radius:50%;flex:none;margin-inline:auto 4vw;padding:16px 24px;transform:rotate(4deg)}.location-stamp strong{font-size:.56rem}.case-study-hero-image{margin-top:72px}.case-study-image{margin:0}.case-study-image-frame{background:#ffffff4d;border:1px solid #17171433;position:relative;overflow:hidden}.case-study-image-frame img{object-fit:cover}.case-study-image figcaption{align-items:baseline;gap:12px;margin-top:12px;font-size:.9rem;line-height:1.45;display:flex}.case-study-image figcaption span{font:700 .65rem var(--font-mono);letter-spacing:.09em;text-transform:uppercase;border:1px solid;border-radius:99px;flex:none;padding:4px 8px}.case-study-gallery{border-top:1px solid;margin-top:110px;padding-top:30px}.case-study-gallery>header{grid-template-columns:1fr 2fr;gap:40px;margin-bottom:48px;display:grid}.case-study-gallery h2{letter-spacing:-.05em;margin:0;font-size:clamp(2.3rem,5vw,5rem);line-height:.95}.case-study-gallery>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 24px;display:grid}.case-study-gallery .case-study-image-frame{background:#fff}.case-study-gallery .case-study-image-frame img{object-fit:contain}@media (max-width:1100px){.location-stamp{display:none}}@media (max-width:800px){.case-study-hero-image{margin-top:52px}.case-study-gallery{margin-top:80px}.case-study-gallery>header{grid-template-columns:1fr;gap:18px;margin-bottom:32px}.case-study-gallery>div{grid-template-columns:1fr;gap:36px}.case-study-image figcaption{flex-direction:column;align-items:flex-start;gap:8px}}.spark{z-index:0;pointer-events:none;color:var(--coral);font-size:2rem;position:absolute}.spark-one{bottom:3%;left:48%;right:auto}.spark-two{color:var(--blue);font-size:1rem;top:20%;right:19%}.intro{border-top:1px solid var(--line);grid-template-columns:1fr 3fr;padding:110px 0 64px;display:grid}.intro-copy{letter-spacing:-.045em;max-width:1000px;margin:0;font-size:clamp(2rem,4.2vw,4.3rem);line-height:1.03}.work-heading{padding:38px 0 58px}.work-heading h2,.writing h2{letter-spacing:-.055em;margin:24px 0;font-size:clamp(3rem,6vw,6rem);line-height:.96}.project{min-height:680px;scroll-margin-top:0;display:flex;position:relative;overflow:hidden}.project:before{content:"";z-index:0;background:var(--cream);pointer-events:none;clip-path:inset(0 0 0 100%);position:absolute;inset:0}.project-inner{z-index:1;grid-template-columns:.85fr 1.15fr;align-items:center;gap:5vw;padding-block:72px;display:grid;position:relative}.project-dolphin{background:#dce8ff}.project-hartt{color:#263033;background:#dceff0}.project-spotlight{color:#fff;background:#1b1731}.project-copy h3{letter-spacing:-.055em;text-wrap:balance;margin:24px 0;font-size:clamp(2.8rem,5vw,5.4rem);line-height:.95}.project-description{text-wrap:pretty;max-width:570px;font-size:1.15rem;line-height:1.55}.tags{flex-wrap:wrap;gap:8px;margin:28px 0;padding:0;list-style:none;display:flex}.tags li{font-family:var(--font-mono);text-transform:uppercase;border:1px solid;border-radius:99px;padding:8px 13px;font-size:.69rem}.project-art{perspective:1000px;isolation:isolate;justify-content:center;align-items:center;height:520px;display:flex;position:relative}.case-study-actions,.project-actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.live-link{background:var(--ink);color:var(--cream);border-radius:99px;align-items:center;gap:7px;padding:11px 16px;font-size:.82rem;font-weight:760;transition:transform .2s,background-color .2s;display:inline-flex}.live-link:hover{background:var(--blue);transform:translateY(-2px)}.project-spotlight .live-link{background:var(--cream);color:var(--ink)}.phone{color:#171714;background:#f9f8f4;border:8px solid #171714;border-radius:38px;width:240px;height:490px;padding:45px 18px 18px;transition:transform .45s cubic-bezier(.2,.8,.2,1);position:absolute;overflow:hidden;box-shadow:0 28px 60px #00000038}.phone-left{transform:rotate(-7deg)translate(-90px)}.phone-right{transform:rotate(8deg)translate(105px,20px)}.project-art:hover .phone-left{transform:rotate(-10deg)translate(-120px,-8px)}.project-art:hover .phone-right{transform:rotate(11deg)translate(135px,10px)}.phone-notch{background:#171714;border-radius:20px;width:75px;height:19px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.phone small{font:600 .58rem var(--font-mono);letter-spacing:.1em}.phone strong{margin:20px 0;font-size:1.25rem;line-height:1.05;display:block}.screen-card{background:var(--blue);border-radius:18px;height:170px;margin:25px 0}.project-hartt .screen-card{background:#51aeb3}.screen-circle{background:var(--coral);border-radius:50%;width:145px;height:145px;margin:28px auto}.screen-line{background:#ddd;border-radius:10px;height:10px;margin:14px 0}.screen-line.short{width:60%}.art-note{z-index:8;max-width:230px;color:var(--ink);pointer-events:none;background:#f4f0e8eb;border:1px solid #1717142e;padding:9px 12px;bottom:20px;right:0;box-shadow:0 8px 24px #0000001a}.project-spotlight .art-note{color:#1b1731;background:#f8bf57f5}.project-hartt .art-note{color:#263033;background:#f8faf9f5}.browser-frame{color:#4d5052;background:#f8faf9;border:7px solid #263033;border-radius:14px;width:min(92%,560px);height:370px;transition:transform .45s cubic-bezier(.2,.8,.2,1);position:absolute;top:80px;left:0;overflow:hidden;transform:rotate(-3deg);box-shadow:0 30px 65px #26303340}.project-art:hover .browser-frame{transform:rotate(-4deg)translate(-14px,-8px)}.browser-bar{color:#f8faf9;background:#263033;align-items:center;gap:6px;height:30px;padding:0 10px;display:flex}.browser-bar>span{background:#51aeb3;border-radius:50%;width:7px;height:7px}.browser-bar>span:nth-child(2){opacity:.65}.browser-bar>span:nth-child(3){opacity:.35}.browser-bar small{font:500 .48rem var(--font-mono);letter-spacing:.08em;margin:auto}.browser-page{height:calc(100% - 30px)}.browser-nav{height:45px;font:800 .62rem var(--font-mono);border-bottom:1px solid #dceff0;justify-content:space-between;padding:14px 20px;display:flex}.browser-nav span{font-size:.42rem;font-weight:550}.browser-hero{color:#fff;background:#263033;height:205px;padding:28px 34px;position:relative}.browser-hero small{font:650 .44rem var(--font-mono);letter-spacing:.12em;color:#74c0c4}.browser-hero strong{margin:13px 0;font:700 2rem/.88 Arial,sans-serif;display:block}.browser-hero button{color:#263033;font:700 .44rem var(--font-mono);background:#74c0c4;border:0;border-radius:99px;padding:7px 11px}.browser-hero button span{color:#fff;background:#4d5052;border-radius:50%;place-items:center;width:14px;height:14px;margin-left:4px;display:inline-grid}.browser-cards{grid-template-columns:repeat(3,1fr);gap:9px;padding:16px 20px;display:grid}.browser-cards span{background:#dceff0;border-radius:8px;height:54px}.browser-cards span:nth-child(2){background:#51aeb3}.browser-cards span:nth-child(3){background:#4d5052}.phone-hartt{z-index:3;width:190px;height:390px;bottom:5px;right:0;transform:rotate(6deg)}.project-art:hover .phone-hartt{transform:rotate(8deg)translate(15px,-6px)}.whiteboard{color:#24252a;width:330px;height:360px;font-family:var(--font-mono);background:linear-gradient(110deg,#f9f9f5,#efeee8 70%,#f7f6f1);border:solid #aaa9a3;border-width:9px 9px 14px;border-radius:4px;padding:42px 34px 35px;position:absolute;top:7%;left:1%;transform:rotate(-3deg);box-shadow:0 24px 55px #00000047,inset 0 0 35px #282d320f}.whiteboard:after{content:"";pointer-events:none;background:repeating-linear-gradient(8deg,#0000 0 35px,#32506e06 36px 37px);position:absolute;inset:14px}.whiteboard p{font:700 .65rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#315d8d;margin:0 0 25px}.whiteboard strong{letter-spacing:-.04em;font:500 2.45rem/.95 Comic Sans MS,Bradley Hand,cursive;display:block;transform:rotate(-1deg)}.whiteboard small{color:#9b403c;margin-top:34px;font:500 .78rem/1.35 Comic Sans MS,Bradley Hand,cursive;display:block;transform:rotate(1deg)}.board-pin{background:#8b8a86;border-radius:50%;width:7px;height:7px;position:absolute;top:12px;box-shadow:inset 0 1px 1px #fff}.board-pin-left{left:14px}.board-pin-right{right:14px}.board-tray{background:#797976;border-radius:0 0 5px 5px;height:8px;position:absolute;bottom:-12px;left:44px;right:20px;box-shadow:0 3px 5px #00000040}.board-tray:after{content:"";background:#315d8d;border-radius:4px;width:62px;height:6px;position:absolute;top:-5px;right:22px;transform:rotate(-2deg)}.phone-dark{color:#fff;z-index:3;background:#28223f;border-color:#0e0c18;right:5%;transform:rotate(7deg)}.phone-dark .phone-notch{background:#0e0c18}.album{background:linear-gradient(145deg,#ff654d,#7846e8);border-radius:12px;place-items:center;height:180px;margin-top:25px;font:800 5rem Georgia;display:grid}.phone-dark p{text-align:center}.philosophy-tease{padding:110px 0}.philosophy-tease blockquote{letter-spacing:-.06em;margin:36px 0;font-size:clamp(3.3rem,7.5vw,7.5rem);line-height:.93}.principles{font-family:var(--font-mono);text-transform:uppercase;justify-content:space-between;padding:20px 0 44px;font-size:.72rem;display:flex}.principles,.writing{border-top:1px solid var(--line)}.writing{grid-template-columns:1fr 1fr;gap:7vw;padding:96px 0;display:grid}.article-list article{border-bottom:1px solid var(--line);padding:26px 0 38px}.article-list article p{font:600 .68rem var(--font-mono);letter-spacing:.1em}.article-list h3{letter-spacing:-.04em;text-wrap:balance;margin:16px 0;font-size:2.3rem;line-height:1.06}.article-list span{color:#5a574f;font-family:Georgia,serif;font-style:italic}.footer{background:var(--blue);color:#fff;isolation:isolate;padding:78px 0 30px;position:relative;overflow:hidden}.footer:before{content:"";z-index:0;background:var(--coral);clip-path:inset(0 100% 0 0);pointer-events:none;position:absolute;inset:0}.footer>.shell{z-index:1;position:relative}.footer h2{font-size:clamp(3.5rem,8vw,8rem)}.footer h2 a{font-family:Georgia,serif;font-style:italic;font-weight:400}.footer-links{flex-wrap:wrap;gap:28px;margin:38px 0 30px;display:flex}.footer-links a{border-bottom:1px solid #ffffffb3;padding-bottom:4px;font-weight:750}.footer-meta{font:500 .72rem var(--font-mono);text-transform:uppercase;border-top:1px solid #fff6;justify-content:space-between;padding-top:22px;display:flex}.case-study.case-study-ease-yuh-mind{background:#b9e3b1}.case-study.case-study-the-gut-nerd-caribbean{background:#f2d5ca}.case-study-writing{border-top:1px solid;margin-top:100px;padding-top:30px}.case-study-writing>h2{letter-spacing:-.05em;max-width:800px;margin:20px 0 40px;font-size:clamp(2.3rem,5vw,5rem);line-height:.95}.case-study-writing>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.case-study-writing a{background:#ffffff3d;border:1px solid;flex-direction:column;align-items:flex-start;min-height:270px;padding:28px;transition:transform .2s,background .2s;display:flex}.case-study-writing a:hover{background:#fff6;transform:translateY(-5px)}.case-study-writing span{font:650 .72rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em}.case-study-writing strong{letter-spacing:-.045em;margin:24px 0 16px;font-size:clamp(1.8rem,3vw,3.2rem);line-height:1}.case-study-writing a p{margin:0 0 25px;line-height:1.55}.case-study-writing b{margin-top:auto}@media (max-width:800px){.case-study-writing>div{grid-template-columns:1fr}.case-study-writing a{min-height:260px}}.inner-page{min-height:100vh;padding:40px 0 90px}.back{border-bottom:1px solid;margin-bottom:72px;display:inline-block}.inner-page h1{font-size:clamp(3.5rem,8vw,8rem)}.inner-grid{grid-template-columns:1fr 1fr;gap:8vw;margin:70px 0;font-size:1.35rem;line-height:1.6;display:grid}.principle-list{margin-top:72px}.principle-list article{border-top:1px solid var(--line);grid-template-columns:80px 1fr 1fr;align-items:start;gap:30px;padding:30px 0;display:grid}.principle-list span{font-family:var(--font-mono)}.principle-list h2{margin:0;font-size:2.2rem}.principle-list p{margin:5px 0;font-size:1.1rem;line-height:1.5}.case-study{background:var(--cream);--case-accent:var(--coral);min-height:100vh}.case-study:before{content:"";z-index:1000;background:var(--case-accent);transform-origin:0;pointer-events:none;width:100%;height:4px;position:fixed;top:0;left:0;transform:scaleX(0)}.case-study-dolphin{--case-accent:var(--blue);background:#dce8ff}.case-study-hartt{color:#263033;--case-accent:#2d939a;background:#dceff0}.case-study-hartt .section-kicker{color:#2d939a}.case-study-hartt .tags li{background:#f8faf99e}.case-study-hartt .project-link{color:#f8faf9;background:#263033;border:0;border-radius:99px;padding:12px 18px;display:inline-flex}.case-study-spotlight{color:#fff;background:#1b1731}.case-study-spotlight .case-study-gallery .case-study-image-frame,.case-study-spotlight .case-study-image-portrait-hero .case-study-image-frame{background:#101010;border-color:#ffffff2e}.case-study-shell{padding-block:40px 90px}.case-study-shell>.back{margin-bottom:32px}.case-study h1{letter-spacing:-.07em;text-wrap:balance;max-width:1200px;margin:54px 0 32px;font-size:clamp(4rem,9vw,9rem);line-height:.88}.case-study-lead{text-wrap:pretty;max-width:850px;font-size:clamp(1.4rem,2.5vw,2.4rem);line-height:1.25}.case-study-actions{margin-top:30px}.case-study-note{border-top:1px solid;grid-template-columns:1fr 2fr;gap:40px;margin-top:100px;padding-top:30px;display:grid}.case-study-note h2{letter-spacing:-.05em;text-wrap:balance;margin:0;font-size:clamp(2.3rem,5vw,5rem);line-height:.95}.case-study-note>p:not(.section-kicker){grid-column:2;max-width:620px;font-size:1.1rem;line-height:1.6}.case-study-outcomes{grid-column:2;margin:0;padding-left:1.2rem;font-size:1.1rem;line-height:1.8}.listing-page{padding-block:76px 110px}.listing-hero{max-width:1050px;margin-bottom:72px}.about-hero h1,.listing-hero h1,.not-found h1{letter-spacing:-.065em;text-wrap:balance;margin:24px 0;font-size:clamp(4rem,8.5vw,8.5rem);line-height:.9}.listing-hero>p:last-child{max-width:680px;font-size:1.25rem;line-height:1.55}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.work-card{border:1px solid var(--line);flex-direction:column;min-height:470px;padding:32px;transition:transform .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden}.work-card:hover{transform:translateY(-7px);box-shadow:0 24px 55px #1717141f}.work-card>div:not(.project-actions){margin-top:auto}.work-card .project-actions{margin-top:24px}.work-card-dolphin{background:#dce8ff}.work-card-hartt{background:#dceff0}.work-card-spotlight{color:#fff;background:#1b1731}.work-card-ease-yuh-mind{background:#b9e3b1}.work-card-the-gut-nerd-caribbean{background:#f2d5ca}.work-card-number{font:650 .75rem var(--font-mono);letter-spacing:.12em}.work-card h2,.writing-card h2{letter-spacing:-.05em;margin:18px 0;font-size:clamp(2.5rem,4.5vw,5rem);line-height:.92}.work-card>div>p:not(.section-kicker){max-width:540px;font-size:1.05rem;line-height:1.5}.writing-grid{border-top:1px solid var(--line)}.writing-card{border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr 2fr auto;align-items:start;gap:30px;padding:38px 0;display:grid}.writing-card h2{margin:0;font-size:clamp(2rem,3.5vw,3.5rem)}.writing-card>p:not(.section-kicker){margin:0;font-size:1.05rem;line-height:1.5}.writing-card>span{white-space:nowrap;font-weight:750}.note-page{padding-block:58px 100px}.note-page>.back{margin-bottom:28px}.note-page header{max-width:1000px;margin:0 0 64px}.note-page h1{letter-spacing:-.065em;margin:25px 0;font-size:clamp(3.8rem,8vw,8rem);line-height:.92}.note-lead{max-width:760px;font:italic 1.4rem/1.5 Georgia,serif}.note-body{max-width:760px;margin-left:auto;margin-right:10%;font-size:1.25rem;line-height:1.75}.note-body p:first-child:first-letter{float:left;color:var(--blue);padding:10px 12px 0 0;font-family:Georgia,serif;font-size:5rem;line-height:.8}.related-project{background:var(--ink);color:#fff;border-radius:99px;margin:64px 0 0 30%;padding:16px 20px;font-weight:750;display:inline-block}.about-page{padding-block:76px 110px}.about-hero{grid-template-columns:3fr 1fr;align-items:end;gap:8vw;padding-bottom:76px;display:grid}.about-status{font:600 .75rem/1.7 var(--font-mono);text-transform:uppercase;letter-spacing:.08em}.about-story{border-top:1px solid var(--line);grid-template-columns:1fr 3fr;gap:6vw;padding:80px 0;display:grid}.about-story>div{letter-spacing:-.03em;font-size:clamp(1.6rem,3vw,3rem);line-height:1.18}.about-capabilities{border-top:1px solid var(--line);grid-template-columns:1fr 3fr;gap:6vw;padding:76px 0;display:grid}.about-capabilities article{border-top:1px solid var(--line);grid-template-columns:60px 1fr;padding:24px 0;display:grid}.about-capabilities article span{font-family:var(--font-mono);font-size:.72rem}.about-capabilities h2{margin:0;font-size:clamp(1.5rem,3vw,2.8rem)}.about-experience{border-top:1px solid var(--line);padding:80px 0}.about-experience>header{grid-template-columns:1fr 3fr;gap:6vw;margin-bottom:54px;display:grid}.about-experience>header h2{letter-spacing:-.05em;margin:0;font-size:clamp(2.5rem,5vw,5.5rem);line-height:.95}.about-experience article{border-top:1px solid var(--line);grid-template-columns:1fr 3fr;gap:6vw;padding:30px 0;display:grid}.about-experience article>p{font-family:var(--font-mono);font-size:.78rem}.about-experience h3{margin:0 0 4px;font-size:2rem}.about-experience h4{margin:0 0 15px;font:italic 1.1rem Georgia,serif}.about-experience article div p{max-width:720px;line-height:1.6}.about-cta{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:54px 0;display:flex}.about-cta h2{margin:0;font-size:clamp(2.5rem,5vw,5rem)}.not-found{flex-direction:column;justify-content:center;min-height:70vh;padding-block:76px;display:flex}.not-found>p:not(.section-kicker){font-size:1.25rem}.not-found>div{align-items:center;gap:28px;margin-top:35px;display:flex}@keyframes wave{0%,60%,to{transform:rotate(0)}70%{transform:rotate(18deg)}80%{transform:rotate(-8deg)}90%{transform:rotate(12deg)}}@keyframes hero-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes ink-draw{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes spark-drift{0%{translate:0;rotate:-8deg}to{translate:0 -10px;rotate:9deg}}@keyframes section-rise{0%{opacity:.08;transform:translateY(44px)}to{opacity:1;transform:translateY(0)}}@keyframes art-arrive{0%{opacity:.15;transform:translateY(54px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes comparison-arrive{0%{opacity:.15;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}@keyframes color-wipe{0%{clip-path:inset(0)}to{clip-path:inset(0 0 0 100%)}}@keyframes footer-wipe{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes progress-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes index-roll{0%{opacity:.2;transform:translateY(14px)rotateX(-55deg)}to{opacity:1;transform:translateY(0)rotateX(0)}}@keyframes caption-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes dot-orbit{0%,to{transform:translate(0)}40%{transform:translate(5px,-7px)}70%{transform:translate(-2px,-3px)}}@media (prefers-reduced-motion:no-preference){.hero .eyebrow{opacity:0;animation:hero-rise .55s cubic-bezier(.2,.75,.2,1) 80ms forwards}.hero h1{opacity:0;animation:hero-rise .72s cubic-bezier(.2,.75,.2,1) .18s forwards}.hero-bottom{opacity:0;animation:hero-rise .62s cubic-bezier(.2,.75,.2,1) .38s forwards}.hero .hero-emphasis:before{clip-path:inset(0 100% 0 0);animation:ink-draw .72s cubic-bezier(.2,.75,.2,1) .76s forwards}.hero .hero-emphasis:after{clip-path:inset(0 100% 0 0);animation:ink-draw .78s cubic-bezier(.2,.75,.2,1) .9s forwards}.spark-one{animation:spark-drift 3.8s ease-in-out infinite alternate}.spark-two{animation:spark-drift 4.6s ease-in-out .7s infinite alternate-reverse}.brand-dot{display:inline-block}.brand:hover .brand-dot{animation:dot-orbit .58s cubic-bezier(.2,.75,.2,1)}.inline-icon{transition:transform .24s cubic-bezier(.2,.75,.2,1)}a:hover .inline-icon-up-right{transform:translate(4px,-3px)rotate(7deg)}.text-link:hover .inline-icon-down{transform:translateY(4px)}.back:hover .inline-icon-left{transform:translate(-4px)}.nav-resume:hover .inline-icon-right{transform:translate(4px)}.footer-meta a:hover .inline-icon-up{transform:translateY(-4px)}.footer h2 a:hover .inline-icon-up-right{transform:translate(7px,-5px)rotate(8deg)}.footer-links a:active,.live-link:active,.nav-resume:active,.project-link:active,.text-link:active{transform:translateY(2px)scale(.97)}.case-study-image-frame img,.project-art img{transition:transform .5s cubic-bezier(.2,.75,.2,1)}.project-art:hover img{transform:scale(1.025)}.case-study-image-frame:hover img{transform:scale(1.018)}@supports (animation-timeline:view()){.intro-copy,.philosophy-tease blockquote,.work-heading h2,.writing h2{animation:section-rise linear both;animation-timeline:view();animation-range:entry 5% cover 32%}.project-copy{animation:section-rise linear both;animation-timeline:view();animation-range:entry 8% cover 34%}.project-art{animation:art-arrive linear both;animation-timeline:view();animation-range:entry 5% cover 36%}.project:before{animation:color-wipe linear both;animation-timeline:view();animation-range:entry cover 24%}.project-index{transform-origin:0;animation:index-roll linear both;animation-timeline:view();animation-range:entry 12% cover 32%}.case-study-comparison{animation:comparison-arrive linear both;animation-timeline:view();animation-range:entry 4% cover 28%}.case-study-comparison .case-study-image:last-child{animation:comparison-arrive linear both;animation-timeline:view();animation-range:entry 12% cover 34%}.case-study-image figcaption{animation:caption-rise linear both;animation-timeline:view();animation-range:entry 8% cover 22%}.footer:before{animation:footer-wipe linear both;animation-timeline:view();animation-range:entry cover 45%}}@supports (animation-timeline:scroll()){.case-study:before{animation:progress-grow linear both;animation-timeline:scroll(root)}}}@media (min-width:801px){.case-study-note>.section-kicker{align-self:start;position:sticky;top:24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.wave{animation:none}.browser-frame,.phone,.skip-link{transition:none}.project-art:hover .phone-left{transform:rotate(-7deg)translate(-90px)}.project-art:hover .phone-right{transform:rotate(8deg)translate(105px,20px)}.project-art:hover .browser-frame{transform:rotate(-3deg)}.project-art:hover .phone-hartt{transform:rotate(6deg)}}@media (max-width:800px){.shell{width:min(100% - 32px,700px)}.nav{flex-wrap:wrap;align-content:center;row-gap:11px;min-height:104px;padding:12px 0;display:flex}.brand{font-size:1.25rem}.nav-actions{gap:0}.nav-contact{display:none}.nav-resume{box-shadow:0 4px 0 var(--coral);padding:10px 14px;font-size:.875rem}.nav-links{border-top:1px solid var(--line);order:3;justify-content:space-between;gap:12px;width:100%;padding-top:10px;font-size:.9rem}.nav-links a{min-height:44px}.hero{min-height:610px;padding:42px 0 46px}.hero h1{font-size:clamp(3.3rem,16vw,5.8rem)}.hero-bottom{flex-direction:column;align-items:start;gap:28px;margin-top:28px}.location-stamp{display:none}.spark-one{font-size:1.4rem;inset:6.5rem 1rem auto auto}.spark-two{top:4.4rem;right:5rem}.intro{grid-template-columns:1fr;gap:28px;padding:72px 0 44px}.work-heading{padding:26px 0 48px}.work-heading h2{margin-bottom:0}.project{min-height:auto}.project-inner{grid-template-columns:1fr;gap:30px;padding-block:58px}.project-art{height:430px}.phone{border-width:6px;width:190px;height:395px}.phone-left{transform:rotate(-7deg)translate(-65px)}.phone-right{transform:rotate(8deg)translate(75px,15px)}.screen-card{height:120px}.whiteboard{width:220px;height:290px;padding:36px 22px 25px;left:0}.whiteboard strong{font-size:1.55rem}.whiteboard small{margin-top:25px;font-size:.68rem}.phone-dark{right:0}.browser-frame{width:88%;height:290px;top:55px;left:0}.browser-hero{height:155px;padding:22px}.browser-hero strong{font-size:1.55rem}.browser-cards{padding:12px}.browser-cards span{height:38px}.phone-hartt{width:145px;height:300px;bottom:5px;right:-5px}.art-note{max-width:190px;bottom:3px;right:4px}.philosophy-tease{padding:88px 0}.philosophy-tease blockquote{margin:30px 0}.principles{grid-template-columns:1fr 1fr;gap:15px;padding-bottom:36px;display:grid}.writing{grid-template-columns:1fr;gap:45px;padding:78px 0}.footer{padding-top:64px}.footer-meta,.inner-grid{grid-template-columns:1fr;gap:20px;display:grid}.principle-list{margin-top:56px}.principle-list article{grid-template-columns:40px 1fr;padding:26px 0}.principle-list article p{grid-column:2}.inner-page{padding-bottom:72px}.inner-page .back{margin-bottom:52px}.case-study-shell{padding-block:32px 72px}.case-study-shell>.back{margin-bottom:20px}.case-study h1{margin:42px 0 28px}.case-study-note{grid-template-columns:1fr;margin-top:76px;padding-top:24px}.case-study-note>p:not(.section-kicker),.case-study-outcomes{grid-column:1}.case-study-writing{margin-top:76px}.about-page,.listing-page{padding-block:58px 84px}.listing-hero{margin-bottom:52px}.about-hero h1,.listing-hero h1,.not-found h1{font-size:clamp(3.6rem,15vw,5.5rem)}.work-grid{grid-template-columns:1fr}.work-card{min-height:400px;padding:26px}.writing-card{grid-template-columns:1fr;gap:14px;padding:30px 0}.writing-card h2{font-size:2.5rem}.note-page{padding-block:46px 76px}.note-page>.back{margin-bottom:24px}.note-page header{margin-top:0;margin-bottom:46px}.note-page h1{font-size:clamp(3.2rem,14vw,5rem)}.note-body{margin:0;font-size:1.1rem}.related-project{margin:52px 0 0}.about-capabilities,.about-experience article,.about-experience>header,.about-hero,.about-story{grid-template-columns:1fr;gap:22px}.about-hero{padding-bottom:58px}.about-capabilities,.about-experience,.about-story{padding:62px 0}.about-story>div{font-size:1.6rem}.about-experience article{gap:5px}.about-cta{flex-direction:column;align-items:flex-start;gap:26px;padding:46px 0}.footer-links{gap:18px}.footer-meta{grid-template-columns:1fr;gap:18px;display:grid}.not-found>div{flex-direction:column;align-items:flex-start}}.dolphin-preview,.gut-app-preview,.hartt-preview{position:absolute;inset:0}.project-phone-shot{background:#fff;border:8px solid #171714;border-radius:38px;width:230px;height:490px;transition:transform .45s cubic-bezier(.2,.8,.2,1);position:absolute;top:15px;overflow:hidden;box-shadow:0 28px 60px #00000038}.project-phone-shot img{object-fit:cover;object-position:top}.project-phone-shot-left{left:17%;transform:rotate(-7deg)}.project-phone-shot-right{top:30px;right:14%;transform:rotate(8deg)}.project-art:hover .project-phone-shot-left{transform:rotate(-10deg)translate(-18px,-8px)}.project-art:hover .project-phone-shot-right{transform:rotate(11deg)translate(18px,-7px)}.app-dashboard-frame{background:#fff;border:7px solid #30261f;border-radius:16px;width:92%;transition:transform .45s cubic-bezier(.2,.8,.2,1);position:absolute;top:80px;left:2%;overflow:hidden;transform:rotate(-2.5deg);box-shadow:0 30px 65px #30261f3d}.project-art:hover .app-dashboard-frame{transform:rotate(-3.5deg)translate(-10px,-8px)}.app-dashboard-bar{color:#fff;background:#30261f;align-items:center;gap:6px;height:30px;padding:0 10px;display:flex}.app-dashboard-bar>span{background:#f09a7c;border-radius:50%;width:7px;height:7px}.app-dashboard-bar>span:nth-child(2){opacity:.65}.app-dashboard-bar>span:nth-child(3){opacity:.35}.app-dashboard-bar small{font:500 .48rem var(--font-mono);letter-spacing:.08em;margin:auto}.app-dashboard-image{width:100%;position:relative}.app-dashboard-image img{object-fit:cover;object-position:top}.app-dashboard-inset{aspect-ratio:1.95;background:#fff;border:5px solid #30261f;border-radius:12px;width:290px;transition:transform .45s cubic-bezier(.2,.8,.2,1);position:absolute;bottom:28px;overflow:hidden;transform:rotate(4deg);box-shadow:0 22px 42px #30261f40}.app-dashboard-mini-bar{background:#30261f;align-items:center;gap:4px;height:20px;padding:0 7px;display:flex}.app-dashboard-mini-bar span{background:#f09a7c;border-radius:50%;width:5px;height:5px}.app-dashboard-inset>div:last-child{position:absolute;inset:20px 0 0}.app-dashboard-inset img{object-fit:cover;object-position:top}.project-art:hover .app-dashboard-inset{transform:rotate(6deg)translate(10px,-5px)}.hartt-browser-inset,.hartt-browser-main{background:#f8faf9;border:7px solid #263033;border-radius:14px;transition:transform .45s cubic-bezier(.2,.8,.2,1);position:absolute;overflow:hidden;box-shadow:0 30px 65px #26303340}.hartt-browser-main{width:92%;top:75px;left:0;transform:rotate(-3deg)}.hartt-browser-inset{aspect-ratio:1.55;border-width:5px;width:48%;bottom:18px;right:0;transform:rotate(5deg)}.hartt-browser-main>div:last-child{width:100%;position:relative}.hartt-browser-inset>div:last-child{position:absolute;inset:30px 0 0}.hartt-browser-inset img,.hartt-browser-main img{object-fit:cover;object-position:top}.hartt-browser-inset .browser-bar{height:22px}.hartt-browser-inset>div:last-child{inset:22px 0 0}.project-art:hover .hartt-browser-main{transform:rotate(-4deg)translate(-12px,-7px)}.project-art:hover .hartt-browser-inset{transform:rotate(7deg)translate(10px,-5px)}.about-story{grid-template-columns:minmax(140px,1fr) minmax(0,2.35fr);gap:clamp(32px,6vw,96px)}.about-story>div{letter-spacing:-.018em;max-width:42ch;font-size:clamp(1.3rem,2vw,2rem);line-height:1.48}.about-story>div p{margin:0 0 1.15em}.about-story>div p:last-child{margin-bottom:0}.case-study-image-portrait-hero .case-study-image-frame{background:#ffffff6b;width:100%;height:min(72vh,760px);aspect-ratio:auto!important}.case-study-image-portrait-hero .case-study-image-frame img{object-fit:contain;padding:clamp(20px,4vw,52px)}.case-study-gallery .case-study-image-portrait .case-study-image-frame{height:min(70vh,680px);aspect-ratio:auto!important}.case-study-gallery .case-study-image-portrait .case-study-image-frame img{object-fit:contain}.case-study-gallery-comparisons>header{margin-bottom:30px}.case-study-comparisons{grid-template-columns:minmax(0,1fr)!important;gap:64px!important;display:grid!important}.case-study-comparison{min-width:0}.case-study-comparison .case-study-image-frame,.case-study-supporting .case-study-image-frame{background:#1717140e;border-color:#17171452;box-shadow:inset 0 0 0 1px #1717140b}.comparison-title{font:700 .7rem/1.4 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px}.case-study-comparison>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.case-study-comparison .case-study-image-portrait .case-study-image-frame{height:min(72vh,680px)!important}.case-study-comparison .case-study-image figcaption{font-size:.86rem}.case-study-comparison .case-study-image figcaption span{font-size:.58rem}.case-study-supporting{margin-top:70px}.case-study-supporting h3{letter-spacing:-.04em;margin:0 0 24px;font-size:clamp(1.8rem,3vw,3rem)}.case-study-supporting>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 24px;display:grid}.case-study-supporting .case-study-image-portrait .case-study-image-frame{height:min(68vh,620px)!important}@media (max-width:800px){.project-phone-shot{border-width:6px;border-radius:30px;width:175px;height:375px}.project-phone-shot-left{left:5%}.project-phone-shot-right{top:28px;right:3%}.app-dashboard-frame{border-width:5px;width:96%;top:80px;left:0}.app-dashboard-bar{height:24px}.app-dashboard-inset{border-width:4px;border-radius:9px;width:52%;height:auto;bottom:52px;right:0}.app-dashboard-mini-bar{height:15px}.app-dashboard-inset>div:last-child{inset:15px 0 0}.hartt-browser-main{border-width:5px;width:96%;top:78px;left:0}.hartt-browser-inset{border-width:4px;width:54%;bottom:50px;right:0}.hartt-browser-main .browser-bar{height:24px}.hartt-browser-main>div:last-child{inset:24px 0 0}.hartt-browser-inset .browser-bar{height:18px}.hartt-browser-inset>div:last-child{inset:18px 0 0}.about-story>div{letter-spacing:-.012em;max-width:36ch;font-size:1.25rem;line-height:1.52}.case-study-image-portrait-hero .case-study-image-frame{height:min(62vh,540px)}.case-study-image-portrait-hero .case-study-image-frame img{padding:18px}.case-study-comparisons{gap:52px!important}.case-study-comparison>div{gap:8px}.case-study-comparison .case-study-image-portrait .case-study-image-frame{height:min(56vh,480px)!important}.case-study-comparison .case-study-image figcaption{font-size:.68rem;line-height:1.35}.case-study-supporting{margin-top:54px}.case-study-supporting>div{grid-template-columns:1fr;gap:36px}.case-study-supporting .case-study-image-portrait .case-study-image-frame{height:min(62vh,540px)!important}}.mobile-preview-frame{z-index:4;background:#fff;border:6px solid #171714;border-radius:27px;transition:transform .45s cubic-bezier(.2,.8,.2,1);position:absolute;overflow:hidden;box-shadow:0 24px 48px #17171440}.mobile-preview-frame img{object-fit:cover;object-position:top}.app-dashboard-inset{aspect-ratio:auto;border:6px solid #30261f;border-radius:25px;width:165px;height:316px}.app-dashboard-inset,.hartt-mobile-inset{bottom:5px;right:0;transform:rotate(5deg)}.hartt-mobile-inset{border-color:#263033;width:175px;height:299px}.project-art:hover .app-dashboard-inset,.project-art:hover .hartt-mobile-inset{transform:rotate(8deg)translate(10px,-6px)}@media (max-width:800px){.app-dashboard-inset{width:140px;height:270px;bottom:28px}.app-dashboard-inset,.hartt-mobile-inset{border-width:4px;border-radius:20px;right:2px}.hartt-mobile-inset{width:150px;height:258px;bottom:34px}.hartt-browser-main>div:last-child{inset:auto}}