/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;--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,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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:where(:not(iframe)){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}.flex{display:flex}.hidden{display:none}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ivory:#f5f1e8;--ink:#171613;--muted:#6e6a63;--line:#d8d2c7;--lavender:#b8a8d7;--lilac:#e8e1f1;--paper:#fffdf8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.shell{width:min(100% - 48px,1280px);margin-inline:auto}.eyebrow{letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:700;line-height:1.3}.status-dot{background:var(--lavender);border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:98px;display:flex}.brand{letter-spacing:-.07em;font-size:1.35rem;font-weight:700}.brand span{color:var(--lavender)}.site-header nav{gap:28px;margin-left:90px;font-size:.8rem;display:flex}.site-header nav a{transition:opacity .2s}.site-header nav a:hover{opacity:.55}.header-contact{align-items:center;gap:7px;font-size:.78rem;font-weight:700;display:flex}.header-contact span{font-size:1rem}.hero{grid-template-rows:1fr auto;grid-template-columns:minmax(0,1.2fr) minmax(250px,.53fr);column-gap:clamp(35px,6vw,88px);padding-top:clamp(80px,10vw,140px);padding-bottom:84px;display:grid}.hero,.hero-main{position:relative}.hero-main{z-index:1}.hero h1,.work-section h2{letter-spacing:-.075em;margin:23px 0 0;font-size:clamp(3.45rem,7.35vw,7.2rem);font-weight:500;line-height:.91}.hero h1 em,.work-section h2 em{font-family:Georgia,Times New Roman,serif;font-weight:400}.hero-aside{z-index:1;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:32px;padding-bottom:24px;display:flex}.hero-aside p{max-width:330px;color:var(--muted);margin:0;font-size:1rem;line-height:1.65}.hero-actions{flex-wrap:wrap;align-items:center;gap:23px;display:flex}.button{background:var(--ink);color:var(--paper);border-radius:999px;align-items:center;gap:22px;padding:16px 20px 16px 24px;font-size:.8rem;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{background:#38342f;transform:translateY(-2px)}.button span{font-size:1.12rem}.text-action{border-bottom:1px solid var(--ink);align-items:center;gap:6px;padding-bottom:3px;font-size:.78rem;font-weight:700;transition:opacity .2s;display:inline-flex}.text-action:hover{opacity:.58}.availability{letter-spacing:.07em;text-transform:uppercase;grid-column:1;margin-top:clamp(75px,8vw,116px);font-size:.72rem;font-weight:700;line-height:1.6}.availability .status-dot{background:#74765c}.hero-portrait{background:var(--lilac);border-radius:0 86px;grid-area:1/2/span 2;align-self:start;min-height:480px;position:relative;overflow:hidden}.hero-portrait:after{content:"";pointer-events:none;border:1px solid #ffffff73;border-radius:0 72px;position:absolute;inset:14px}.hero-portrait img{object-fit:cover;filter:grayscale(.25);width:100%;height:100%;min-height:570px;display:block}.hero-portrait span{z-index:1;color:#fffdf8;letter-spacing:.14em;mix-blend-mode:difference;font-size:.58rem;font-weight:700;position:absolute;bottom:25px;left:25px}.tech-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:max(230px,50vw - 425px) minmax(0,1fr);display:grid}.tech-intro{border-right:1px solid var(--line);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;align-items:center;padding:22px 28px max(22px,50vw - 640px);font-size:.65rem;font-weight:700;display:flex}.tech-track{flex-wrap:wrap;align-items:stretch;padding:0 16px;display:flex}.tech-track>span{color:var(--ink);white-space:nowrap;align-items:center;gap:8px;padding:13px 18px;font-size:.72rem;font-weight:700;display:inline-flex}.technology-mark{place-items:center;width:19px;height:19px;display:inline-grid}.technology-mark svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.technology-mark-github svg,.technology-mark-supabase svg,.technology-mark-vercel svg{fill:currentColor}.technology-mark b{letter-spacing:-.07em;font-size:.52rem}.technology-mark-javascript,.technology-mark-typescript{background:var(--ink);color:var(--ivory)}.technology-mark-javascript{color:var(--ink);background:#c8b35c}.technology-mark-nodejs{border:1px solid;border-radius:50%}.work-section{padding-top:clamp(96px,12vw,170px);padding-bottom:128px}.section-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:63px;display:flex}.work-section h2{margin-top:17px;font-size:clamp(2.9rem,5.7vw,5.45rem)}.section-heading>p{width:min(100%,290px);color:var(--muted);margin:0 0 7px;font-size:.95rem;line-height:1.65}.work-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.project-visual{height:clamp(310px,35vw,445px);transition:transform .3s;position:relative;overflow:hidden}.work-card:hover .project-visual{transform:translateY(-5px)}.work-card-footer{justify-content:space-between;padding-top:17px;display:flex}.work-card-footer .eyebrow{margin-bottom:8px;font-size:.58rem}.work-card h3{letter-spacing:-.04em;margin:0 0 4px;font-size:1.3rem;font-weight:600}.work-card-footer p:not(.eyebrow){color:var(--muted);margin:0;font-size:.82rem}.work-card-footer>span{border:1px solid var(--line);border-radius:50%;place-items:center;width:36px;height:36px;transition:background .2s,color .2s;display:grid}.work-card-link:hover .work-card-footer>span{background:var(--ink);color:var(--paper)}.project-visual-lume{background:#c8d3c2}.lume-sun{aspect-ratio:1;background:#efd4ab;border-radius:50%;width:78%;position:absolute;top:12%;right:-17%}.lume-panel{color:#474c41;background:#f3efe3;flex-direction:column;justify-content:end;min-height:62%;padding:26px;display:flex;position:absolute;inset:auto 9% 8%}.lume-panel span{font-family:Georgia,serif;font-size:clamp(2rem,3.1vw,3rem);line-height:.9}.lume-panel small{text-transform:uppercase;letter-spacing:.1em;margin-top:9px;font-size:.63rem}.project-visual-nora{background:#d9c2ae}.nora-orb{aspect-ratio:1;background:#b05242;border-radius:50%;width:115%;position:absolute;bottom:-43%;left:-7%}.nora-copy{color:#2a211d;letter-spacing:-.1em;font-family:Georgia,serif;font-size:clamp(2.4rem,4vw,4rem);line-height:.72;position:absolute;top:10%;left:9%}.nora-copy i{letter-spacing:.1em;font-size:.4em}.nora-tag{color:#fff9ee;letter-spacing:.1em;text-transform:uppercase;writing-mode:vertical-rl;font-size:.62rem;position:absolute;bottom:11%;right:9%}.project-visual-finora{background:#26243b}.finora-window{color:#efedf5;background:#34324c;border:1px solid #5a5873;border-radius:4px;width:84%;padding:23px;position:absolute;top:17%;left:8%;box-shadow:15px 19px #0f0e192e}.finora-window span{color:#aaa8ba;font-size:.58rem;display:block}.finora-window strong{letter-spacing:-.06em;margin-top:15px;font-size:clamp(1.35rem,2vw,2rem);display:block}.finora-line{background:linear-gradient(145deg,#0000 43%,#706b91 44% 46%,#0000 47%);border-bottom:2px solid #b6a9db;height:63px;margin-top:20px}.finora-chip{color:#1f482a;background:#b7d6bc;border-radius:999px;padding:7px 10px;font-size:.68rem;font-weight:700;position:absolute;bottom:13%;left:8%}.experience-section,.services-section{border-top:1px solid var(--line);padding-top:clamp(96px,11vw,150px);padding-bottom:clamp(96px,11vw,150px)}.about-copy h2,.experience-heading h2,.services-heading h2{letter-spacing:-.075em;margin:17px 0 0;font-size:clamp(3rem,5.5vw,5.2rem);font-weight:500;line-height:.92}.about-copy h2 em,.contact-section h2 em,.experience-heading h2 em,.services-heading h2 em{font-family:Georgia,Times New Roman,serif;font-weight:400}.services-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.service-item{border-bottom:1px solid var(--line);grid-template-columns:45px 1fr 22px;gap:17px;min-height:190px;padding:27px 0;display:grid;position:relative}.service-item:nth-child(odd){border-right:1px solid var(--line);padding-right:38px}.service-item:nth-child(2n){padding-left:38px}.service-number{color:var(--muted);letter-spacing:.1em;font-size:.65rem;font-weight:700}.service-item h3{letter-spacing:-.035em;margin:0 0 13px;font-size:1.2rem;font-weight:600}.service-item p{max-width:280px;color:var(--muted);margin:0;font-size:.87rem;line-height:1.6}.service-arrow{color:var(--lavender);align-self:start;font-size:1.2rem;transition:transform .2s}.service-item:hover .service-arrow{transform:translate(3px,-3px)}.about-section{background:var(--ink);color:var(--paper)}.about-grid{grid-template-columns:minmax(280px,.82fr) minmax(0,1fr);align-items:center;gap:clamp(50px,10vw,150px);padding-top:clamp(85px,10vw,142px);padding-bottom:clamp(85px,10vw,142px);display:grid}.about-media{background:#c8bda9;border-radius:80px 0;height:min(55vw,610px);min-height:430px;position:relative;overflow:hidden}.about-media img{object-fit:cover;filter:grayscale(.18);width:100%;height:100%}.about-media span{letter-spacing:.13em;text-transform:uppercase;mix-blend-mode:difference;font-size:.62rem;font-weight:700;position:absolute;bottom:22px;left:24px}.about-copy .eyebrow{color:var(--lavender)}.about-copy h2{max-width:620px}.about-body{color:#cbc6be;max-width:555px;margin:31px 0 0;font-size:1rem;line-height:1.75}.stats{border-top:1px solid #484541;gap:clamp(21px,4vw,55px);margin-top:51px;padding-top:27px;display:flex}.stats div{flex-direction:column;gap:6px;display:flex}.stats strong{letter-spacing:-.06em;font-size:clamp(1.4rem,2.5vw,2rem);font-weight:500}.stats span{color:#bdb7b0;letter-spacing:.09em;text-transform:uppercase;font-size:.63rem;font-weight:700}.experience-list{border-top:1px solid var(--line)}.experience-item{border-bottom:1px solid var(--line);grid-template-columns:.7fr 1.25fr 1fr;gap:24px;padding:27px 0;transition:padding .2s;display:grid}.experience-item:hover{padding-left:10px}.experience-item p,.experience-item span{color:var(--muted);margin:0;font-size:.8rem}.experience-item h3{letter-spacing:-.03em;margin:0;font-size:1.05rem;font-weight:600}.experience-item span{text-align:right}.contact-section{background:var(--lilac)}.contact-inner{padding-top:clamp(88px,11vw,150px);padding-bottom:clamp(88px,11vw,150px);position:relative}.contact-section .status-dot{background:#74765c}.contact-section h2{letter-spacing:-.08em;max-width:850px;margin:20px 0 46px;font-size:clamp(3.9rem,8vw,8rem);font-weight:500;line-height:.88}.contact-email{border-bottom:1px solid var(--ink);letter-spacing:-.03em;gap:11px;padding-bottom:5px;font-size:clamp(1.05rem,2vw,1.45rem)}.contact-button,.contact-email{align-items:center;display:inline-flex}.contact-button{background:var(--ink);color:var(--paper);border-radius:999px;gap:23px;padding:17px 22px 17px 27px;font-size:.8rem;font-weight:700;transition:transform .2s;position:absolute;bottom:clamp(88px,11vw,150px);right:0}.contact-button:hover{transform:translateY(-2px)}.site-footer{background:var(--ink);color:var(--paper);padding-top:52px}.footer-main{grid-template-columns:1.2fr .8fr .6fr;gap:30px;padding-bottom:62px;display:grid}.footer-main .brand{color:var(--paper);display:inline-block}.footer-main>div:first-child p{color:#bdb7b0;margin:12px 0 0;font-size:.78rem}.footer-links,.site-footer nav{flex-direction:column;align-items:flex-start;gap:11px;display:flex}.footer-links a,.site-footer nav a{color:#d6d0c8;font-size:.78rem;transition:color .2s}.footer-links a:hover,.site-footer nav a:hover{color:var(--lavender)}.footer-links span{margin-left:4px}.footer-bottom{color:#a9a49e;border-top:1px solid #484541;justify-content:space-between;padding:18px 0;font-size:.65rem;display:flex}.case-study{overflow:hidden}.case-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:98px;display:flex}.case-back{font-size:.78rem;font-weight:700;transition:opacity .2s}.case-back:hover{opacity:.55}.case-hero{grid-template-columns:minmax(0,1.3fr) minmax(220px,.45fr);align-items:end;gap:50px;padding-top:clamp(80px,11vw,156px);padding-bottom:clamp(62px,7vw,98px);display:grid}.case-hero h1{letter-spacing:-.09em;margin:20px 0;font-size:clamp(4.5rem,12vw,10rem);font-weight:500;line-height:.78}.case-hero>div>p:last-child{max-width:420px;color:var(--muted);margin:0;font-size:1rem;line-height:1.65}.case-hero dl{grid-template-columns:1fr 1fr;gap:20px;margin:0;display:grid}.case-hero dl div{border-top:1px solid var(--line);padding-top:13px}.case-hero dt{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.6rem;font-weight:700}.case-hero dd{margin:8px 0 0;font-size:.78rem;line-height:1.45}.case-cover{background:var(--lilac);width:min(100% - 48px,1440px);height:min(56vw,760px);min-height:410px;margin:0 auto;position:relative;overflow:hidden}.case-cover:after{content:"";pointer-events:none;border:1px solid #ffffff8c;position:absolute;inset:16px}.case-cover img{object-fit:cover;width:100%;height:100%}.case-cover-lume{background:#c8d3c2}.case-cover-nora{background:#d9c2ae}.case-cover-finora{background:#26243b}.case-cover-finora img{filter:hue-rotate(17deg)brightness(.72)}.case-overview{grid-template-columns:.6fr 1.4fr;gap:40px;padding-top:clamp(88px,12vw,160px);padding-bottom:clamp(88px,12vw,160px);display:grid}.case-overview>p:last-child{letter-spacing:-.05em;max-width:780px;margin:0;font-size:clamp(1.55rem,3vw,2.55rem);line-height:1.24}.case-split{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.case-split article{min-height:360px;padding:42px 8% 48px 0}.case-split article+article{border-left:1px solid var(--line);padding-left:8%}.case-split h2{letter-spacing:-.05em;max-width:480px;margin:34px 0 0;font-size:clamp(1.6rem,2.75vw,2.45rem);font-weight:500;line-height:1.15}.case-process{grid-template-columns:.6fr 1.4fr;gap:40px;padding-top:clamp(88px,11vw,150px);padding-bottom:clamp(88px,11vw,150px);display:grid}.case-process>div{border-top:1px solid var(--line)}.case-process article{border-bottom:1px solid var(--line);grid-template-columns:50px 1fr;gap:18px;padding:20px 0;display:grid}.case-challenges article>span,.case-process article span,.case-results article>span{color:var(--muted);letter-spacing:.1em;font-size:.64rem;font-weight:700}.case-process article p{margin:0;font-size:1rem}.case-details{background:var(--ink);color:var(--paper)}.case-details-grid{grid-template-columns:1fr 1fr;gap:clamp(50px,13vw,180px);padding-top:clamp(82px,10vw,140px);padding-bottom:clamp(82px,10vw,140px);display:grid}.case-details .eyebrow{color:var(--lavender)}.case-details ul{margin:28px 0 0;padding:0;list-style:none}.case-details li{letter-spacing:-.025em;border-bottom:1px solid #484541;padding:13px 0;font-size:1.08rem}.case-challenges{padding-top:clamp(88px,11vw,150px);padding-bottom:clamp(88px,11vw,150px)}.case-challenges>.eyebrow{margin-bottom:36px}.case-challenges article{border-top:1px solid var(--line);grid-template-columns:54px 1fr;gap:20px;max-width:900px;padding:28px 0;display:grid}.case-challenges article:last-child{border-bottom:1px solid var(--line)}.case-challenges h2{letter-spacing:-.04em;margin:0;font-size:1.28rem;font-weight:600}.case-challenges p{max-width:600px;color:var(--muted);margin:12px 0 0;font-size:.94rem;line-height:1.65}.case-results{padding-bottom:clamp(88px,11vw,150px)}.case-results>.eyebrow{margin-bottom:34px}.case-results>div{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.case-results article{border-bottom:1px solid var(--line);min-height:200px;padding:25px 27px 25px 0}.case-results article+article{border-left:1px solid var(--line);padding-left:27px}.case-results p{letter-spacing:-.03em;margin:42px 0 0;font-size:1.08rem;line-height:1.35}.case-gallery{padding-bottom:clamp(94px,12vw,160px)}.case-gallery-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px;display:flex}.case-gallery-heading>p:last-child{max-width:290px;color:var(--muted);margin:0;font-size:.9rem;line-height:1.6}.case-gallery>div{grid-template-columns:1.2fr .8fr;gap:18px;display:grid}.case-gallery figure{background:var(--lilac);min-height:300px;margin:0;position:relative;overflow:hidden}.case-gallery-item-1{grid-row:span 2;min-height:620px!important}.case-gallery figure:after{content:"";pointer-events:none;border:1px solid #fff9;position:absolute;inset:13px}.case-gallery img{object-fit:cover;width:100%;height:100%}.case-gallery-item-2 img{filter:hue-rotate(30deg)saturate(.7)}.case-gallery-item-3 img{filter:hue-rotate(220deg)brightness(.8)}.case-actions{align-items:center;gap:28px;padding-bottom:clamp(88px,11vw,150px);display:flex}.case-next{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.case-next a{padding-top:clamp(73px,8vw,115px);padding-bottom:clamp(73px,8vw,115px);transition:background .2s;display:block}.case-next a:hover{background:#b8a8d724}.case-next h2{letter-spacing:-.09em;margin:18px 0 9px;font-size:clamp(3.7rem,8vw,8.5rem);font-weight:500;line-height:.8}.case-next h2 span{font-size:.55em}.case-next a>p:last-child{color:var(--muted);margin:0;font-size:.9rem}.case-contact{background:var(--lilac)}.case-contact>div{padding-top:clamp(83px,10vw,140px);padding-bottom:clamp(83px,10vw,140px)}.case-contact .status-dot{background:#74765c}.case-contact h2{letter-spacing:-.08em;max-width:800px;margin:21px 0 41px;font-size:clamp(3.3rem,7vw,7rem);font-weight:500;line-height:.88}.case-contact h2 em{font-family:Georgia,Times New Roman,serif;font-weight:400}.admin-page{background:var(--ivory);min-height:100vh}.admin-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;width:min(100% - 48px,1280px);height:88px;margin-inline:auto;display:flex}.admin-header>span,.admin-logout{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:700}.admin-logout{color:var(--ink);cursor:pointer;background:0 0;border:0;transition:opacity .2s}.admin-logout:hover{opacity:.55}.admin-login{grid-template-columns:minmax(0,.9fr) minmax(320px,.65fr);align-items:center;gap:clamp(50px,12vw,180px);width:min(100% - 48px,1020px);min-height:calc(100vh - 88px);margin-inline:auto;display:grid}.admin-dashboard h1,.admin-login h1{letter-spacing:-.08em;margin:19px 0 20px;font-size:clamp(3.5rem,7vw,6.3rem);font-weight:500;line-height:.85}.admin-login>div>p:last-child{max-width:330px;color:var(--muted);margin:0;line-height:1.65}.admin-login-form{background:var(--paper);border:1px solid var(--line);flex-direction:column;gap:18px;padding:34px;display:flex}.admin-login-form label{letter-spacing:.1em;text-transform:uppercase;flex-direction:column;gap:8px;font-size:.67rem;font-weight:700;display:flex}.admin-login-form input{border:1px solid var(--line);background:var(--ivory);width:100%;color:var(--ink);font:inherit;outline-color:var(--lavender);border-radius:0;padding:13px;font-size:.92rem}.admin-login-form button{background:var(--ink);color:var(--paper);cursor:pointer;border:0;border-radius:999px;margin-top:7px;padding:15px 20px;font-size:.8rem;font-weight:700;transition:background .2s}.admin-login-form button:hover:not(:disabled){background:#38342f}.admin-login-form button:disabled{cursor:wait;opacity:.7}.admin-form-error{color:#973b31;margin:0;font-size:.78rem;line-height:1.45}.admin-dashboard{width:min(100% - 48px,1280px);margin-inline:auto;padding-top:clamp(70px,9vw,125px);padding-bottom:110px}.admin-dashboard-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:57px;display:flex}.admin-dashboard-heading h1{margin-bottom:0}.admin-dashboard-heading>p{color:var(--muted);margin:0 0 7px;font-size:.84rem}.admin-dashboard-heading strong{color:var(--ink);font-weight:600}.admin-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.admin-grid article{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:165px;padding:22px}.admin-grid article:nth-child(3n){border-right:0}.admin-grid p,.admin-grid span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:700}.admin-grid h2{letter-spacing:-.04em;margin:38px 0 5px;font-size:1.25rem;font-weight:600}.admin-grid p{color:var(--lavender);margin:0}.admin-back{font-size:.75rem;font-weight:700}.cms-page{width:min(100% - 48px,1040px);margin-inline:auto;padding-top:clamp(68px,8vw,105px);padding-bottom:110px}.cms-page>h1,.cms-title-row h1{letter-spacing:-.08em;margin:17px 0 48px;font-size:clamp(3rem,6vw,5.6rem);font-weight:500;line-height:.84}.cms-title-row{justify-content:space-between;align-items:end;gap:25px;display:flex}.cms-title-row h1{margin-bottom:47px}.cms-new,.cms-save{background:var(--ink);color:var(--paper);cursor:pointer;border:0;border-radius:999px;padding:14px 19px;font-size:.78rem;font-weight:700;transition:background .2s}.cms-new:hover,.cms-save:hover:not(:disabled){background:#38342f}.cms-form{display:block}.cms-form-section{border-top:1px solid var(--line);padding:33px 0 38px}.cms-form-section h2{letter-spacing:-.045em;margin:0 0 25px;font-size:1.35rem;font-weight:600}.cms-fields{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.cms-field{flex-direction:column;gap:8px;display:flex}.cms-check,.cms-field span{letter-spacing:.09em;text-transform:uppercase;font-size:.65rem;font-weight:700}.cms-field input,.cms-field textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:inherit;outline-color:var(--lavender);border-radius:0;padding:12px;font-size:.9rem}.cms-field textarea{resize:vertical;min-height:115px}.cms-field:has(textarea){grid-column:1/-1}.cms-check{align-items:center;gap:9px;padding-top:10px;display:flex}.cms-check input{accent-color:var(--ink)}.cms-message{margin:0 0 19px;font-size:.82rem}.cms-message-success{color:#477053}.cms-message-error{color:#973b31}.cms-save{margin-top:4px}.cms-save:disabled{opacity:.7;cursor:wait}.project-list{border-top:1px solid var(--line)}.project-list article{border-bottom:1px solid var(--line);grid-template-columns:minmax(200px,1fr) 45px auto auto auto auto;align-items:center;gap:12px;padding:19px 0;display:grid}.project-list h2{margin:0 0 5px;font-size:1rem;font-weight:600}.project-list p{color:var(--muted);margin:0;font-size:.75rem}.project-list>article>span{color:var(--muted);font-size:.7rem}.cms-delete,.cms-edit,.cms-toggle{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:0 0;padding:8px 10px;font-size:.68rem;font-weight:700}.cms-edit{display:inline-block}.cms-delete{color:#973b31}.cms-empty{color:var(--muted);padding:25px 0}.cms-section-nav{z-index:2;border:1px solid var(--line);background:#f5f1e8f5;gap:8px;margin-bottom:24px;padding:10px;display:flex;position:sticky;top:0;overflow-x:auto}.cms-section-nav a{color:var(--muted);text-transform:uppercase;flex:none;padding:7px 9px;font-size:.67rem;font-weight:700}.cms-section-nav a:hover{color:var(--ink);background:var(--paper)}.cms-form-section{scroll-margin-top:62px}.cms-media-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.media-upload{border:1px solid var(--line);background:var(--paper);gap:10px;padding:14px;display:grid}.media-upload-heading{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.67rem;font-weight:700;display:flex}.media-upload-heading button{color:#973b31;font:inherit;cursor:pointer;background:0 0;border:0}.media-placeholder,.media-preview{aspect-ratio:4/3;object-fit:cover;background:var(--lilac);width:100%}.media-placeholder{color:var(--muted);place-items:center;font-size:.75rem;display:grid}.media-picker{border:1px solid var(--line);cursor:pointer;justify-content:center;align-items:center;padding:10px;font-size:.7rem;font-weight:700;display:inline-flex}.media-picker input{opacity:0;width:1px;height:1px;position:absolute}.media-url{font-size:.75rem}.portfolio-summary{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);max-width:460px;margin-bottom:44px;display:grid}.portfolio-summary article{border-bottom:1px solid var(--line);padding:20px 0}.portfolio-summary article+article{border-left:1px solid var(--line);padding-left:25px}.portfolio-summary span{letter-spacing:-.07em;font-size:2rem;font-weight:500;display:block}.portfolio-summary p{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:5px 0 0;font-size:.68rem;font-weight:700}.portfolio-link{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;max-width:700px;padding:30px 0;transition:padding .2s;display:flex}.portfolio-link:hover{padding-inline:10px}.portfolio-link h2{letter-spacing:-.06em;margin:15px 0 8px;font-size:2rem;font-weight:500}.portfolio-link p:last-child{max-width:400px;color:var(--muted);margin:0;font-size:.88rem}.portfolio-link>span{font-size:1.4rem}@media (max-width:720px){.shell{width:min(100% - 32px,1280px)}.site-header{height:77px}.site-header nav{display:none}.header-contact{font-size:.72rem}.hero{flex-direction:column;gap:0;padding-top:80px;padding-bottom:67px;display:flex}.hero h1{font-size:clamp(3.1rem,15vw,4.8rem)}.hero-portrait{border-radius:0 64px;order:2;width:min(100%,430px);min-height:425px;margin:43px 0 0 auto}.hero-portrait:after{border-radius:0 52px}.hero-portrait img{min-height:425px}.hero-aside{order:3;gap:24px;padding:37px 0 0}.availability{order:4;margin-top:60px}.tech-section{display:block}.tech-intro{border-right:0;border-bottom:1px solid var(--line);padding:16px}.tech-track{padding:4px 7px}.tech-track>span{padding:11px 9px}.section-heading{margin-bottom:42px;display:block}.section-heading>p{margin-top:25px}.work-grid{grid-template-columns:1fr;gap:42px}.project-visual{height:min(115vw,450px)}.work-section{padding-top:90px;padding-bottom:78px}.experience-section,.services-section{padding-top:85px;padding-bottom:85px}.services-grid{grid-template-columns:1fr}.service-item,.service-item:nth-child(2n),.service-item:nth-child(odd){border-right:0;grid-template-columns:35px 1fr 20px;min-height:0;padding:24px 0}.service-item h3{font-size:1.05rem}.about-grid{padding-top:76px;padding-bottom:76px;display:block}.about-media{border-radius:58px 0;height:112vw;min-height:360px}.about-copy{margin-top:45px}.about-copy h2{font-size:clamp(2.85rem,13vw,4rem)}.about-body{font-size:.95rem}.stats{flex-wrap:wrap;gap:22px 35px}.experience-item{grid-template-columns:1fr;gap:7px;padding:22px 0}.experience-item span{text-align:left}.contact-inner{padding-top:82px;padding-bottom:82px}.contact-section h2{margin-bottom:37px;font-size:clamp(3.35rem,14vw,5rem)}.contact-button{margin-top:38px;position:static}.footer-main{grid-template-columns:1fr 1fr;gap:44px 25px;padding-bottom:48px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{padding:17px 0}.case-header{height:77px}.case-hero{padding-top:76px;padding-bottom:52px;display:block}.case-hero h1{margin:18px 0;font-size:clamp(4.3rem,23vw,6.7rem)}.case-hero dl{margin-top:45px}.case-cover{width:min(100% - 32px,1440px);height:102vw;min-height:340px}.case-overview,.case-process{padding-top:80px;padding-bottom:80px;display:block}.case-overview>p:last-child{margin-top:26px;font-size:1.55rem}.case-split{display:block}.case-split article,.case-split article+article{border-left:0;min-height:0;padding:38px 0}.case-split article+article{border-top:1px solid var(--line)}.case-process>.eyebrow{margin-bottom:33px}.case-details-grid{grid-template-columns:1fr;gap:55px;padding-top:78px;padding-bottom:78px}.case-challenges{padding-top:80px;padding-bottom:80px}.case-challenges article{grid-template-columns:34px 1fr}.case-results>div{display:block}.case-results article,.case-results article+article{border-left:0;min-height:0;padding:23px 0}.case-results p{margin-top:25px}.case-gallery{padding-bottom:85px}.case-gallery-heading{display:block}.case-gallery-heading>p:last-child{margin-top:18px}.case-gallery>div{display:block}.case-gallery figure,.case-gallery-item-1{margin-top:15px;min-height:87vw!important}.case-actions{padding-bottom:80px}.case-next h2{font-size:clamp(3.5rem,17vw,5.7rem)}.case-contact>div{padding-top:78px;padding-bottom:78px}.case-contact h2{font-size:clamp(3.2rem,14vw,4.8rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.case-back,.case-next a,.contact-button,.experience-item,.project-visual,.service-arrow,.text-action{transition:none}}@media (max-width:720px){.admin-dashboard,.admin-header,.admin-login{width:min(100% - 32px,1280px)}.admin-login{min-height:0;padding-top:78px;padding-bottom:75px;display:block}.admin-login-form{margin-top:43px;padding:24px}.admin-dashboard{padding-top:75px;padding-bottom:75px}.admin-dashboard-heading{margin-bottom:42px;display:block}.admin-dashboard-heading>p{margin-top:23px}.admin-grid{grid-template-columns:1fr}.admin-grid article,.admin-grid article:nth-child(3n){border-right:0;min-height:128px}.admin-grid h2{margin-top:21px}.cms-page{width:min(100% - 32px,1040px);padding-top:73px;padding-bottom:75px}.cms-page>h1,.cms-title-row h1{margin-bottom:40px;font-size:clamp(3rem,14vw,4.5rem)}.cms-title-row{align-items:start}.cms-title-row h1{margin-bottom:0}.cms-new{white-space:nowrap;margin-top:3px}.cms-fields{grid-template-columns:1fr}.cms-field:has(textarea){grid-column:auto}.project-list article{grid-template-columns:1fr 35px auto auto;gap:9px}.project-list article>div{grid-column:1/-1}.project-list .cms-delete,.project-list .cms-edit{text-align:center}.project-list .cms-toggle{padding-inline:8px}}:where(a,button,input,textarea):focus-visible{outline:2px solid var(--lavender);outline-offset:4px}.site-header{gap:24px}.site-header nav{margin-left:auto;margin-right:auto}.footer-links a,.header-contact,.site-footer nav a,.site-header nav a{position:relative}.footer-links a:after,.site-footer nav a:after,.site-header nav a:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .2s;position:absolute;bottom:-6px;left:0;right:0;transform:scaleX(0)}.footer-links a:focus-visible:after,.footer-links a:hover:after,.site-footer nav a:focus-visible:after,.site-footer nav a:hover:after,.site-header nav a:focus-visible:after,.site-header nav a:hover:after{transform-origin:0;transform:scaleX(1)}.header-contact{min-height:44px;padding:0 2px}.hero{padding-bottom:clamp(76px,7vw,104px)}.hero-main .eyebrow{color:#565148}.hero h1{text-wrap:balance;max-width:900px}.hero-aside p{max-width:350px}.availability{border-top:1px solid var(--line);max-width:240px;padding-top:15px}.hero-portrait{box-shadow:18px 20px #b8a8d72e}.about-media img,.hero-portrait img{transition:transform .45s,filter .3s}.about-media:hover img,.hero-portrait:hover img{transform:scale(1.025)}.tech-track>span{transition:color .2s,background .2s}.tech-track>span:hover{background:#b8a8d72e}.work-grid{gap:clamp(18px,2vw,30px)}.work-card-link{padding-bottom:5px}.project-visual{border-radius:1px}.work-card-link:focus-visible .project-visual,.work-card-link:hover .project-visual{transform:translateY(-5px)scale(1.01)}.work-card-link:focus-visible{outline:0}.work-card-link:focus-visible .work-card-footer>span{background:var(--ink);color:var(--paper)}.work-card-footer{align-items:flex-start;gap:18px}.work-card-footer>span{flex:none}.services-grid{margin-top:3px}.service-item{transition:background .2s,padding .2s}.service-item:hover{background:#b8a8d71a}.service-item:focus-within{background:#b8a8d724}.about-body{text-wrap:pretty}.stats div{min-width:102px}.experience-item:focus-within,.experience-item:hover{padding-left:14px}.contact-button,.contact-email{transition:transform .2s,opacity .2s,background .2s}.contact-email:focus-visible,.contact-email:hover{opacity:.62}.contact-button:focus-visible{transform:translateY(-2px)}.footer-links a,.site-footer nav a{min-height:28px}@media (min-width:721px) and (max-width:1050px){.site-header nav{gap:20px;margin-left:32px}.hero{grid-template-columns:minmax(0,1fr) minmax(230px,.52fr);column-gap:clamp(30px,4vw,50px)}.hero h1{font-size:clamp(3.8rem,7vw,5.8rem)}.hero-portrait{min-height:460px}.hero-portrait img{min-height:510px}.work-grid{grid-template-columns:repeat(2,1fr)}.work-card:last-child{grid-column:span 2}.work-card:last-child .project-visual{height:clamp(370px,43vw,470px)}.experience-section,.services-section{padding-top:100px;padding-bottom:100px}.about-grid{gap:clamp(42px,7vw,78px)}.footer-main{grid-template-columns:1.1fr .8fr .65fr}}@media (max-width:820px){.site-header{height:80px}.site-header nav{display:none}.header-contact{min-height:48px}.hero{flex-direction:column;padding-top:clamp(60px,11vw,84px);display:flex}.hero h1{font-size:clamp(3.2rem,12vw,5.2rem)}.hero-portrait{order:2;width:min(100%,480px);margin:45px 0 0 auto}.hero-portrait,.hero-portrait img{min-height:450px}.hero-aside{order:3;padding-top:34px}.availability{order:4;margin-top:48px}.work-grid{grid-template-columns:1fr}.work-card:last-child{grid-column:auto}.work-card:last-child .project-visual{height:min(105vw,500px)}.experience-item{grid-template-columns:.65fr 1.2fr 1fr;gap:16px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div:first-child{grid-column:1/-1}}@media (max-width:480px){.shell{width:min(100% - 32px,1280px)}.brand{font-size:1.25rem}.header-contact{font-size:.74rem}.hero h1{font-size:clamp(3rem,14.4vw,4.35rem)}.hero-portrait{margin-top:36px}.hero-portrait,.hero-portrait img{min-height:400px}.hero-actions{gap:17px}.button{min-height:48px}.tech-track{padding:7px}.tech-track>span{padding:10px 8px;font-size:.68rem}.services-grid{margin-top:0}.service-item{grid-template-columns:31px 1fr 18px;gap:12px}.stats{gap:24px}.stats div{min-width:calc(50% - 18px)}.experience-item{grid-template-columns:1fr;gap:6px}.experience-item span{text-align:left}.contact-email{font-size:1rem}.footer-main{gap:38px 22px}.footer-bottom{gap:12px;font-size:.61rem}}@media (prefers-reduced-motion:reduce){.about-media img,.contact-email,.footer-links a:after,.hero-portrait img,.service-item,.site-footer nav a:after,.site-header nav a:after,.tech-track>span{transition:none}}.testimonial-avatar{object-fit:cover;vertical-align:middle;border-radius:50%;width:38px;height:38px;margin-right:10px}.case-content{border-top:1px solid var(--line);grid-template-columns:.6fr 1.4fr;gap:40px;padding-top:clamp(70px,9vw,120px);padding-bottom:clamp(70px,9vw,120px);display:grid}.case-content>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 42px;display:grid}.case-content article{border-top:1px solid var(--line);padding-top:18px}.case-content h2{letter-spacing:-.035em;margin:0 0 13px;font-size:1.2rem;font-weight:600}.case-content article li,.case-content article p{color:var(--muted);font-size:.94rem;line-height:1.7}.case-content article p{white-space:pre-line;margin:0}.case-content article ul{margin:0;padding-left:18px}.project-visual>img{object-fit:cover;width:100%;height:100%;display:block}@media (max-width:720px){.case-content{padding-top:70px;padding-bottom:70px;display:block}.case-content>.eyebrow{margin-bottom:32px}.case-content>div{grid-template-columns:1fr;gap:30px}}.case-cover img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}.case-cover:hover img{transform:scale(1.018)}.case-split article{min-height:0;padding-top:clamp(42px,5vw,70px);padding-bottom:clamp(48px,6vw,82px)}.case-split-copy{color:#2e2b27;letter-spacing:-.025em;white-space:pre-line;text-wrap:pretty;max-width:600px;margin:30px 0 0;font-size:clamp(1.08rem,1.45vw,1.38rem);line-height:1.62}.case-challenges article,.case-content article,.case-details li,.case-process article,.case-results article{transition:background-color .22s,transform .22s,padding-left .22s}.case-challenges article:hover,.case-content article:hover,.case-process article:hover,.case-results article:hover{background:#b8a8d714;padding-left:12px}.case-details ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;display:grid}.case-details li:hover{color:var(--lavender);padding-left:8px}.case-content{position:relative}.case-content>.eyebrow{align-self:start;position:sticky;top:28px}.case-content article{padding-right:16px}.case-content article p{text-wrap:pretty;max-width:58ch}.case-content article li{margin-bottom:6px}.case-gallery>div:last-child{scroll-behavior:smooth}.case-gallery figure img{transition:transform .55s cubic-bezier(.2,.7,.2,1)}.case-gallery figure:hover img{transform:scale(1.025)}@supports (animation-timeline:view()){.case-challenges,.case-content,.case-details-grid,.case-gallery,.case-overview,.case-process,.case-results,.case-split{animation:case-reveal linear both;animation-timeline:view();animation-range:entry 5% cover 25%}}@keyframes case-reveal{0%{opacity:.35;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media (max-width:720px){.case-split-copy{margin-top:22px;font-size:1.05rem;line-height:1.65}.case-details ul{grid-template-columns:1fr}.case-content>.eyebrow{position:static}.case-gallery{overflow:hidden}.case-gallery>div:last-child{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;gap:14px;width:auto;margin-right:-16px;padding:0 16px 12px 0;display:flex;overflow-x:auto}.case-gallery>div:last-child::-webkit-scrollbar{display:none}.case-gallery figure,.case-gallery-item-1{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 min(84vw,520px);margin-top:0;min-height:min(105vw,620px)!important}}@media (prefers-reduced-motion:reduce){.case-challenges article,.case-content article,.case-cover img,.case-details li,.case-gallery figure img,.case-process article,.case-results article{transition:none}.case-challenges,.case-content,.case-details-grid,.case-gallery,.case-overview,.case-process,.case-results,.case-split{animation:none}}.work-section .section-heading{border-bottom:1px solid var(--line);padding-bottom:clamp(28px,3vw,42px)}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(34px,4vw,62px)}.work-card{min-width:0}.work-card-link{padding-bottom:18px;display:block}.work-card-link:focus-visible{outline:2px solid var(--lavender);outline-offset:7px;border-radius:2px}.work-card-link:focus-visible .project-visual{outline:0}.project-visual{aspect-ratio:4/3;background:var(--paper);height:auto}.project-visual:after{z-index:1;content:"";pointer-events:none;border:1px solid #ffffff6b;position:absolute;inset:12px}.project-visual>img{transition:transform .42s cubic-bezier(.2,.7,.2,1),filter .3s}.work-card-link:focus-visible .project-visual>img,.work-card-link:hover .project-visual>img{transform:scale(1.025)}.work-card-footer{border-bottom:1px solid var(--line);align-items:center;padding:22px 0 18px;position:relative}.work-card-footer .eyebrow{color:var(--muted);letter-spacing:.16em;margin-bottom:10px;font-size:.6rem}.work-card h3{margin-bottom:7px;font-size:clamp(1.35rem,2vw,1.8rem);display:inline-block;position:relative}.work-card h3:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .3s;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.work-card-link:focus-visible h3:after,.work-card-link:hover h3:after{transform-origin:0;transform:scaleX(1)}.work-card-footer p:not(.eyebrow){letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:700;line-height:1.45}.work-card-footer>span{transition:color .25s,background .25s,transform .3s cubic-bezier(.2,.7,.2,1)}.work-card-link:focus-visible .work-card-footer>span,.work-card-link:hover .work-card-footer>span{transform:translate(3px,-3px)}@supports (animation-timeline:view()){.work-card{animation:work-card-reveal linear both;animation-timeline:view();animation-range:entry 4% cover 24%}.work-card:nth-child(2){animation-range:entry 10% cover 30%}}@keyframes work-card-reveal{0%{opacity:.25;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media (min-width:721px) and (max-width:1050px){.work-card:last-child{grid-column:auto}.work-card:last-child .project-visual{height:auto}}@media (max-width:720px){.work-section .section-heading{padding-bottom:30px}.work-grid{grid-template-columns:1fr;gap:46px}.project-visual,.work-card:last-child .project-visual{aspect-ratio:4/3;height:auto}.work-card-footer{align-items:flex-start;gap:20px;padding-top:18px}.work-card-footer>span{width:40px;height:40px}.work-card h3{font-size:1.4rem}}@media (prefers-reduced-motion:reduce){.project-visual>img,.work-card h3:after,.work-card-footer>span{transition:none}.work-card{animation:none}.work-card-link:focus-visible .project-visual>img,.work-card-link:hover .project-visual>img{transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}