@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,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(../media/8a480f0b521d4e75-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,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(../media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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.0%;size-adjust:104.76%}.T19VSG_className{font-family:Geist,Geist Fallback;font-style:normal}.T19VSG_variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,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(../media/4fa387ec64143e14-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.34r5yzckw0h2s.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(../media/7d817b4c03b0c5f1-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,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(../media/797e433ab948586e-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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.0%;size-adjust:134.59%}._8Li5zG_className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}._8Li5zG_variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer theme{:root,:host{--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{*,:after,:before,::backdrop{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}html,:host{-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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.start{inset-inline-start:var(--spacing)}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#172238;--ink-soft:#596276;--paper:#f5f0e8;--paper-deep:#e9e0d4;--white:#fffdf9;--coral:#d8644b;--coral-dark:#b94935;--sage:#76937d;--line:#17223824}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans), Arial, sans-serif;margin:0}a{color:inherit;text-decoration:none}.shell{width:min(1240px,100% - 56px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);z-index:50;grid-template-columns:1fr auto 1fr;align-items:center;height:92px;display:grid;position:relative}.brand{letter-spacing:-.02em;align-items:center;gap:12px;font-weight:650;display:flex}.brand-mark{object-fit:cover;border-radius:50%;flex-shrink:0;width:38px;height:38px;display:block}.desktop-nav{gap:38px;font-size:14px;display:flex}.desktop-nav a{padding:8px 0;position:relative}.desktop-nav a:after{content:"";background:var(--coral);height:1px;transition:right .25s;position:absolute;bottom:1px;left:0;right:100%}.desktop-nav a:hover:after{right:0}.desktop-nav a.is-active{color:var(--coral);font-weight:650}.desktop-nav a.is-active:after{right:0}.header-cta{border:1px solid var(--ink);border-radius:999px;justify-self:end;align-items:center;gap:18px;padding:11px 17px;font-size:13px;font-weight:650;transition:all .2s;display:flex}.header-cta:hover{background:var(--ink);color:#fff}.mobile-menu{justify-self:end;display:none;position:relative}.mobile-menu-toggle{border:1px solid var(--ink);cursor:pointer;width:46px;height:46px;color:inherit;background:0 0;border-radius:50%;align-content:center;gap:4px;padding:0 12px;display:grid}.mobile-menu-toggle span{background:var(--ink);height:1px;transition:transform .2s,opacity .2s;display:block}.mobile-menu.is-open .mobile-menu-toggle span:first-child{transform:translateY(5px)rotate(45deg)}.mobile-menu.is-open .mobile-menu-toggle span:nth-child(2){opacity:0}.mobile-menu.is-open .mobile-menu-toggle span:last-child{transform:translateY(-5px)rotate(-45deg)}.mobile-menu-panel{background:var(--white);border:1px solid var(--line);width:min(330px,100vw - 32px);padding:18px;position:absolute;top:58px;right:0;box-shadow:0 24px 70px #17223833}.mobile-menu-panel nav{display:grid}.mobile-menu-panel nav a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 4px;font-size:18px;display:flex}.mobile-menu-panel nav a.is-active{color:var(--coral);font-weight:650}.mobile-contact{background:var(--ink);color:#fff;justify-content:space-between;align-items:center;margin-top:18px;padding:15px 17px;font-weight:650;display:flex}.hero{grid-template-columns:1.08fr .92fr;align-items:center;gap:74px;min-height:calc(100vh - 92px);padding-block:74px 86px;display:grid}.eyebrow{color:var(--ink-soft);font:600 12px/1 var(--font-geist-mono), monospace;letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:10px;display:flex}.eyebrow span{background:var(--coral);width:24px;height:1px}h1{letter-spacing:-.065em;max-width:760px;margin:30px 0 28px;font-size:clamp(56px,6vw,88px);font-weight:620;line-height:.96}h1 em{color:var(--coral);font-family:Georgia,serif;font-weight:400}.hero-lead{max-width:620px;color:var(--ink-soft);font-size:18px;line-height:1.65}.hero h1{max-width:690px;font-size:clamp(46px,5vw,72px);line-height:1.02}.hero-actions{flex-wrap:wrap;align-items:center;gap:30px;margin-top:38px;display:flex}.button{border-radius:4px;justify-content:center;align-items:center;gap:34px;padding:16px 20px;font-size:14px;font-weight:650;display:inline-flex}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:var(--coral-dark)}.text-link{border-bottom:1px solid var(--line);padding-bottom:5px;font-size:13px}.hero-meta{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:28px;margin-top:64px;padding-top:24px;display:grid}.hero-meta div{align-items:flex-start;gap:13px;display:flex}.hero-meta strong{font:500 24px/1 var(--font-geist-mono), monospace}.hero-meta span{color:var(--ink-soft);max-width:100px;font-size:11px;line-height:1.4}.hero-visual{isolation:isolate;place-items:center;height:610px;display:grid;position:relative}.hero-visual:before{content:"";background:var(--paper-deep);z-index:-2;border-radius:52% 48% 38% 62%/46% 35% 65% 54%;position:absolute;inset:46px 20px 32px 42px;transform:rotate(-5deg)}.visual-orbit{z-index:-1;border:1px solid #1722382e;border-radius:50%;position:absolute}.orbit-one{width:470px;height:470px}.orbit-two{border-color:#d8644b59;width:355px;height:545px;transform:rotate(34deg)}.visual-card{background:#fffdf9ed;border:1px solid #1722381f;box-shadow:0 28px 80px #29272e24}.visual-card-main{border-radius:22px;width:min(410px,82%);min-height:340px;padding:26px;transform:rotate(-2deg)}.visual-topline{color:var(--ink-soft);justify-content:space-between;align-items:center;font-size:11px;display:flex}.status{color:#456d50;background:#e3eee4;border-radius:99px;padding:6px 9px}.visual-title{margin-top:32px;font:500 29px/1.1 Georgia,serif}.visual-chart{border-bottom:1px solid var(--line);align-items:end;gap:13px;height:150px;margin-top:40px;display:flex}.visual-chart i{background:var(--coral);opacity:.82;border-radius:4px 4px 0 0;flex:1}.visual-chart i:nth-child(2n){background:var(--sage)}.visual-stats{color:var(--ink-soft);gap:42px;margin-top:23px;font-size:11px;display:flex}.visual-stats b{color:var(--ink);margin-bottom:4px;font-size:19px;display:block}.visual-card-float{border-radius:16px;width:150px;padding:18px;position:absolute;top:96px;right:8px;transform:rotate(4deg)}.visual-card-float .tiny-label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.09em;font-size:10px;display:block}.visual-card-float strong{font:500 38px/1 var(--font-geist-mono), monospace;margin:17px 0 7px;display:block}.visual-card-float small{color:var(--ink-soft)}.visual-note{background:var(--ink);color:#fff;font:12px/1.5 var(--font-geist-mono), monospace;padding:17px 21px;position:absolute;bottom:60px;left:0;transform:rotate(3deg)}@media (max-width:980px){.site-header{grid-template-columns:1fr auto}.desktop-nav,.desktop-cta{display:none}.mobile-menu{display:block}.hero{grid-template-columns:1fr;padding-top:64px}.hero-copy{max-width:760px}.hero-visual{height:520px}}@media (max-width:620px){.shell{width:min(100% - 32px,1240px)}.site-header{height:76px}.brand>span:last-child{display:none}.hero{gap:30px;padding-top:48px}h1{font-size:clamp(48px,15vw,68px)}.hero h1{font-size:clamp(42px,12vw,58px)}.hero-meta{grid-template-columns:1fr;gap:16px}.hero-meta span{max-width:none}.hero-visual{height:450px}.visual-card-main{width:88%;padding:21px}.visual-card-float{top:48px;right:-8px}.visual-note{bottom:28px;left:-5px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.section-pad{padding-block:128px}h2{letter-spacing:-.055em;margin:0;font-size:clamp(42px,5vw,70px);font-weight:590;line-height:1}h2 em{color:var(--coral);font-family:Georgia,serif;font-weight:400}.section-heading-row{grid-template-columns:1.55fr .7fr;align-items:end;gap:80px;margin-bottom:64px;display:grid}.section-heading-row .eyebrow{margin-bottom:27px}.section-heading-row>p{color:var(--ink-soft);margin:0 0 4px;line-height:1.7}.compact-heading{margin-bottom:58px}.center-cta{justify-content:center;margin-top:72px;display:flex}.button-outline{border:1px solid var(--ink);color:var(--ink)}.button-outline:hover{background:var(--ink);color:#fff}.eyebrow.light{color:#ffffffa3}.eyebrow.light span{background:var(--coral)}.light-link{color:#fff;border-color:#ffffff38}.home-work{background:var(--white);border-top:1px solid var(--line)}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:76px 34px;display:grid}.home-project-grid .project-card:nth-child(2n){margin-top:84px}.project-card{min-width:0}.project-image-link{z-index:1;cursor:pointer;display:block;position:relative;overflow:hidden}.project-card-meta{color:var(--ink-soft);font:11px/1 var(--font-geist-mono), monospace;text-transform:uppercase;justify-content:space-between;margin-top:23px;display:flex}.project-card h3{letter-spacing:-.035em;margin:16px 0 4px;font-size:34px}.project-card h3 a:hover{color:var(--coral)}.project-label{font:600 11px/1.4 var(--font-geist-mono), monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--coral)!important;margin:0!important}.project-card>p:not(.project-label){color:var(--ink-soft);max-width:660px;line-height:1.65}.project-card-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:end;gap:20px;margin-top:22px;padding-top:16px;display:flex}.tag-row{flex-wrap:wrap;gap:7px;display:flex}.tag-row span{color:var(--ink-soft);border:1px solid var(--line);border-radius:999px;padding:6px 9px;font-size:10px}.circle-arrow{border:1px solid var(--ink);border-radius:50%;flex:none;place-items:center;width:42px;height:42px;transition:all .2s;display:grid}.circle-arrow:hover{background:var(--coral);border-color:var(--coral);color:#fff;transform:rotate(-20deg)}.project-visual{--tone:var(--coral);--tone2:var(--sage);isolation:isolate;background:#e8ded0;place-items:center;min-height:620px;display:grid;position:relative;overflow:hidden}.project-visual.compact{aspect-ratio:1.36;min-height:0}.project-visual-image,.project-visual-image.compact{aspect-ratio:16/9;background:#17377c;min-height:0}.project-visual-image:before,.project-visual-image:after{display:none}.project-visual-image img{object-fit:cover;width:100%;height:100%;display:block}.project-visual:before{content:"";aspect-ratio:1;border:1px solid var(--tone);width:70%;position:absolute}@supports (color:color-mix(in lab, red, red)){.project-visual:before{border:1px solid color-mix(in srgb, var(--tone), transparent 40%)}}.project-visual:before{border-radius:50%;top:-22%;right:-14%}.project-visual:after{content:"";aspect-ratio:1;background:var(--tone);opacity:.16;border-radius:48% 52% 67% 33%;width:36%;position:absolute;bottom:-10%;left:-5%}.tone-coral{--tone:#d8644b;--tone2:#76937d;background:#eadfd2}.tone-sage{--tone:#506e59;--tone2:#d7a14a;background:#dfe7dc}.tone-blue{--tone:#476e96;--tone2:#d8644b;background:#dce6ec}.tone-sand{--tone:#b57a3c;--tone2:#263a54;background:#eee2cb}.tone-plum{--tone:#755a78;--tone2:#76937d;background:#e7dfe8}.pv-window{z-index:1;background:#fffdf9f5;border:1px solid #17223829;border-radius:15px;width:72%;height:66%;overflow:hidden;transform:rotate(-2deg);box-shadow:0 32px 76px #1f253229}.pv-bar{border-bottom:1px solid var(--line);align-items:center;gap:5px;height:13%;padding:0 4%;display:flex}.pv-bar i{background:var(--tone);opacity:.7;border-radius:50%;width:6px;height:6px}.pv-bar span{background:var(--paper-deep);border-radius:5px;width:28%;height:5px;margin-left:auto}.pv-content{grid-template-columns:24% 1fr;height:87%;display:grid}.pv-content aside{border-right:1px solid var(--line);flex-direction:column;gap:12%;padding:22% 18%;display:flex}.pv-content aside b{background:#d8d5cf;border-radius:5px;height:6px;display:block}.pv-content aside b:first-child{background:var(--tone);width:76%}.pv-main{padding:9% 8%}.pv-heading{justify-content:space-between;align-items:center;display:flex}.pv-heading span{background:var(--ink);border-radius:6px;width:34%;height:10px}.pv-heading small{background:var(--tone2);border-radius:6px;width:14%;height:8px}.pv-kpis{grid-template-columns:repeat(3,1fr);gap:6%;margin-top:10%;display:grid}.pv-kpis i{aspect-ratio:1.7;border:1px solid var(--line);border-radius:8px;display:block}.pv-kpis i:nth-child(2){background:var(--tone)}@supports (color:color-mix(in lab, red, red)){.pv-kpis i:nth-child(2){background:color-mix(in srgb, var(--tone), white 84%)}}.pv-chart{border-bottom:1px solid var(--line);align-items:end;gap:6%;height:42%;margin-top:10%;display:flex}.pv-chart b{background:var(--tone2);opacity:.75;border-radius:4px 4px 0 0;flex:1;height:35%}.pv-chart b:nth-child(2){height:67%}.pv-chart b:nth-child(3){height:48%}.pv-chart b:nth-child(4){background:var(--tone);height:86%}.pv-chart b:nth-child(5){height:64%}.pv-chart b:nth-child(6){background:var(--tone);height:93%}.pv-float{background:var(--ink);z-index:2;border-radius:12px;width:23%;height:25%;padding:7%;position:absolute;bottom:12%;right:8%;transform:rotate(4deg);box-shadow:0 20px 42px #17223838}.pv-float i{aspect-ratio:1;background:var(--tone);border-radius:50%;width:34%;display:block}.pv-float span{background:#ffffffbf;border-radius:4px;height:5px;margin-top:14%;display:block}.pv-float span:last-child{background:#ffffff4d;width:62%}.capabilities{background:var(--ink);color:#fff}.capabilities-grid{grid-template-columns:.83fr 1.17fr;gap:90px;display:grid}.capabilities-intro h2{margin:25px 0 28px}.capabilities-intro>p:not(.eyebrow){color:#ffffff9e;max-width:440px;margin-bottom:38px;line-height:1.7}.capability-list article{border-top:1px solid #ffffff24;grid-template-columns:56px 1fr;gap:22px;padding:27px 0;display:grid}.capability-list article>span{font:11px/1 var(--font-geist-mono), monospace;color:var(--coral);padding-top:7px}.capability-list h3{margin:0 0 9px;font-size:24px;font-weight:520}.capability-list p{color:#fff9;margin:0;line-height:1.6}.process{background:var(--paper)}.process-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.process-grid article{border-right:1px solid var(--line);padding:30px 28px 34px 0}.process-grid article:not(:first-child){padding-left:28px}.process-grid article:last-child{border-right:0}.process-grid article>span{color:var(--coral);font:11px/1 var(--font-geist-mono), monospace}.process-grid h3{margin:42px 0 14px;font-size:24px}.process-grid p{color:var(--ink-soft);margin:0;font-size:14px;line-height:1.65}.home-experience{background:var(--paper-deep)}.home-experience-grid{grid-template-columns:1fr 1fr;align-items:end;gap:100px;display:grid}.home-experience h2{margin-top:28px}.experience-feature{border-top:1px solid var(--ink);padding-top:24px}.experience-date{color:var(--coral);font:11px/1 var(--font-geist-mono), monospace}.experience-feature h3{margin:25px 0 14px;font-size:28px}.experience-feature p{color:var(--ink-soft);margin-bottom:32px;line-height:1.7}.footer{color:#fff;background:#101a2c}.footer-main{padding-block:110px 70px}.footer-heading{justify-content:space-between;align-items:end;margin:26px 0 90px;display:flex}.footer-heading h2 em{color:#eb8d76}.round-link{border:1px solid #ffffff6b;border-radius:50%;place-items:center;width:94px;height:94px;font-size:30px;transition:all .2s;display:grid}.round-link:hover{background:var(--coral);border-color:var(--coral);transform:rotate(25deg)}.footer-grid{border-top:1px solid #ffffff29;grid-template-columns:2fr 1fr 1fr;gap:55px;padding-top:32px;display:grid}.footer-grid div{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.footer-grid small{color:#ffffff70;font:10px/1 var(--font-geist-mono), monospace;text-transform:uppercase;margin-bottom:6px}.footer-grid a{color:#ffffffdb}.footer-grid a:hover{color:#eb8d76}.footer-bottom{color:#ffffff6b;border-top:1px solid #ffffff1a;justify-content:space-between;padding-block:22px;font-size:11px;display:flex}.page-hero{padding-block:100px 120px}.page-hero-grid{grid-template-columns:1.4fr .6fr;align-items:end;gap:90px;margin-top:30px;display:grid}.page-hero h1{margin:0}.page-hero-grid>p{color:var(--ink-soft);margin:0 0 10px;font-size:18px;line-height:1.7}.work-index{grid-template-columns:repeat(2,minmax(0,1fr));gap:90px 34px;padding-bottom:130px;display:grid}.work-index-head{border-top:1px solid var(--ink);color:var(--ink-soft);text-transform:uppercase;font:10px/1 var(--font-geist-mono), monospace;grid-column:1/-1;grid-template-columns:1fr 1fr auto;padding-top:14px;display:grid}.work-index .project-card:nth-child(odd){margin-top:84px}.case-hero{padding-block:48px 74px}.back-link{color:var(--ink-soft);margin-bottom:66px;font-size:13px;display:inline-block}.case-hero h1{max-width:1100px;margin:28px 0 26px;font-size:clamp(56px,7.5vw,112px)}.case-summary{letter-spacing:-.02em;max-width:900px;font-size:clamp(20px,2.1vw,30px);line-height:1.42}.case-meta{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1.35fr;gap:34px;margin-top:68px;padding-top:20px;display:grid}.case-meta div{flex-direction:column;gap:9px;display:flex}.case-meta small{text-transform:uppercase;color:var(--coral);font:10px/1 var(--font-geist-mono), monospace}.case-meta span{color:var(--ink-soft);font-size:13px;line-height:1.5}.case-actions{gap:12px;margin-top:32px;display:flex}.case-visual-wrap{margin-bottom:120px}.case-visual-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.case-body{grid-template-columns:.36fr .64fr;gap:70px;padding-bottom:130px;display:grid}.case-copy{border-top:1px solid var(--ink)}.case-section{border-bottom:1px solid var(--line);grid-template-columns:50px 1fr;gap:25px;padding:38px 0 54px;display:grid}.case-section>span{color:var(--coral);font:11px/1 var(--font-geist-mono), monospace;padding-top:9px}.case-section h2{letter-spacing:-.035em;margin-bottom:19px;font-size:34px}.case-section p{color:var(--ink-soft);margin:0;font-size:18px;line-height:1.75}.feature-band{background:var(--ink);color:#fff;padding-block:120px}.feature-band-grid{grid-template-columns:1fr 1fr;gap:100px;display:grid}.feature-band h2{margin-top:28px}.feature-list{grid-template-columns:repeat(2,1fr);display:grid}.feature-list div{border-top:1px solid #ffffff29;flex-direction:column;gap:20px;padding:24px 16px 34px 0;display:flex}.feature-list div:nth-child(2n){border-left:1px solid #ffffff29;padding-left:24px}.feature-list span{color:var(--coral);font:10px/1 var(--font-geist-mono), monospace}.feature-list strong{font-size:18px;font-weight:500}.stack-section{padding-block:100px}.stack-cloud{flex-wrap:wrap;gap:10px;margin-top:34px;display:flex}.stack-cloud span{border:1px solid var(--line);border-radius:999px;padding:12px 16px;font-size:13px}.next-project{background:#e8ded0;padding-block:70px;display:block}.next-project>div{grid-template-columns:1fr auto auto;align-items:center;gap:44px;display:grid}.next-project span{text-transform:uppercase;font:9px/1 var(--font-geist-mono), monospace}.next-project h2{font-size:clamp(32px,4vw,58px)}.next-project b{font-size:34px;font-weight:400}.about-story{grid-template-columns:.8fr 1.2fr;align-items:center;gap:110px;padding-bottom:130px;display:grid}.portrait-composition{background:var(--paper-deep);place-items:center;min-height:570px;display:grid;position:relative;overflow:hidden}.portrait-ring{border:1px solid #d8644b8c;border-radius:50%;width:420px;height:420px;position:absolute}.portrait-card{background:var(--ink);color:#fff;flex-direction:column;justify-content:space-between;width:250px;height:340px;padding:28px;display:flex;position:relative;transform:rotate(-4deg);box-shadow:0 30px 70px #17223833}.portrait-card>span{color:#eb8d76;letter-spacing:-.08em;font:400 104px/1 Georgia,serif}.portrait-card small{font:11px/1.5 var(--font-geist-mono), monospace;text-transform:uppercase}.portrait-tag{background:var(--white);font:10px/1.5 var(--font-geist-mono), monospace;padding:15px;position:absolute;bottom:48px;right:12px;transform:rotate(4deg)}.large-copy{letter-spacing:-.025em;color:var(--ink)!important;font-size:30px!important;line-height:1.45!important}.about-copy p{color:var(--ink-soft);font-size:17px;line-height:1.75}.about-copy .button{margin-top:24px}.principles{background:var(--ink);color:#fff}.principles-grid{grid-template-columns:repeat(2,1fr);margin-top:36px;display:grid}.principles-grid article{border-top:1px solid #ffffff26;padding:34px 42px 45px 0}.principles-grid article:nth-child(2n){border-left:1px solid #ffffff26;padding-left:42px}.principles-grid span{color:var(--coral);font:10px/1 var(--font-geist-mono), monospace}.principles-grid h3{margin:35px 0 14px;font-size:28px}.principles-grid p{color:#fff9;max-width:480px;line-height:1.7}.skills-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.skills-grid article{border-top:1px solid var(--ink);padding-top:22px}.skills-grid h3{font-size:20px}.skills-grid article div{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.skills-grid span{border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:8px 11px;font-size:12px}.timeline{padding-bottom:130px}.timeline-item{border-top:1px solid var(--line);grid-template-columns:70px 220px 1fr;gap:40px;padding:42px 0 58px;display:grid}.timeline-index,.timeline-date{font:10px/1.5 var(--font-geist-mono), monospace;color:var(--coral)}.timeline-content>p{color:var(--ink-soft);margin:0 0 8px}.timeline-content h2{font-size:38px}.timeline-content>span{color:var(--ink-soft);margin:13px 0 28px;font-size:13px;display:block}.timeline-content ul{margin:0;padding:0;list-style:none}.timeline-content li{color:var(--ink-soft);padding:8px 0 8px 20px;line-height:1.55;position:relative}.timeline-content li:before{content:"→";color:var(--coral);position:absolute;left:0}.education-band{background:var(--ink);color:#fff;padding-block:110px}.education-grid{grid-template-columns:1fr 1fr;gap:90px;display:grid}.education-grid h2{margin-top:28px}.education-grid>div:last-child{border-top:1px solid #ffffff40;padding-top:28px}.education-grid h3{margin:0 0 18px;font-size:30px}.education-grid p{color:#ffffffa6;line-height:1.7}.education-grid span{color:#eb8d76;font:11px/1 var(--font-geist-mono), monospace}.certifications>.eyebrow{margin-bottom:36px}.cert-list article{border-top:1px solid var(--line);grid-template-columns:70px 1fr auto;align-items:center;gap:30px;padding:25px 0;display:grid}.cert-list article>span{color:var(--coral);font:10px/1 var(--font-geist-mono), monospace}.cert-list h3{margin:0 0 8px;font-size:20px}.cert-list p{color:var(--ink-soft);margin:0}.cert-list a,.cert-list b{border:1px solid var(--line);border-radius:50%;place-items:center;width:42px;height:42px;font-weight:400;display:grid}.resume-head{grid-template-columns:1.1fr .9fr;align-items:end;gap:90px;padding-block:90px 100px;display:grid}.resume-head h1{margin-bottom:0}.resume-intro{border-top:1px solid var(--ink);padding-top:26px}.resume-intro h2{font-size:34px}.resume-intro p{color:var(--ink-soft);font-size:17px;line-height:1.7}.resume-intro>div{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.resume-sheet{background:var(--white);grid-template-columns:280px 1fr;gap:80px;margin-bottom:120px;padding:72px;display:grid;box-shadow:0 24px 75px #17223814}.resume-sheet aside{border-right:1px solid var(--line);flex-direction:column;align-items:flex-start;padding-right:42px;display:flex}.resume-sheet aside h3{text-transform:uppercase;color:var(--coral);font:10px/1 var(--font-geist-mono), monospace;margin:38px 0 13px}.resume-sheet aside h3:first-child{margin-top:0}.resume-sheet aside a,.resume-sheet aside p,.resume-sheet aside span{color:var(--ink-soft);word-break:break-word;margin:3px 0;font-size:12px;line-height:1.6}.resume-section{border-bottom:1px solid var(--line);margin-bottom:42px;padding-bottom:44px}.resume-section>h2{text-transform:uppercase;letter-spacing:-.02em;margin-bottom:28px;font-size:28px}.resume-section article{margin-bottom:34px;position:relative}.resume-section article>span{color:var(--coral);font:10px/1 var(--font-geist-mono), monospace}.resume-section article h3{margin:8px 0 4px;font-size:21px}.resume-section article>p{color:var(--ink-soft);margin:0 0 10px}.resume-section ul{color:var(--ink-soft);padding-left:18px;font-size:13px;line-height:1.6}.resume-skills{grid-template-columns:repeat(2,1fr);gap:26px;display:grid}.resume-skills p{color:var(--ink-soft);font-size:13px;line-height:1.6}.resume-cert{margin-bottom:18px!important}.contact-hero{padding-block:110px 90px}.contact-hero h1{max-width:1100px}.contact-hero>p:not(.eyebrow){max-width:650px;color:var(--ink-soft);font-size:18px;line-height:1.7}.contact-email{border-bottom:1px solid var(--ink);gap:35px;margin-top:30px;padding-bottom:9px;font-size:clamp(22px,3vw,38px);display:inline-flex}.contact-cards{grid-template-columns:repeat(3,1fr);gap:18px;padding-bottom:70px;display:grid}.contact-cards>a{border:1px solid var(--line);background:var(--white);min-height:290px;padding:28px;transition:all .25s;position:relative}.contact-cards>a:hover{border-color:var(--coral);transform:translateY(-8px)}.contact-cards span{color:var(--coral);text-transform:uppercase;font:10px/1 var(--font-geist-mono), monospace}.contact-cards h2{margin-top:48px;font-size:30px}.contact-cards p{color:var(--ink-soft);line-height:1.6}.contact-cards b{font-size:24px;font-weight:400;position:absolute;bottom:24px;right:28px}.availability{border-top:1px solid var(--line);color:var(--ink-soft);grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding-block:28px 110px;display:grid}.availability-dot{background:#3f9a5a;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #3f9a5a1f}.availability p{color:var(--ink)}@media (max-width:980px){.section-pad{padding-block:90px}.section-heading-row,.page-hero-grid,.capabilities-grid,.home-experience-grid,.feature-band-grid,.about-story,.education-grid,.resume-head{grid-template-columns:1fr;gap:42px}.process-grid{grid-template-columns:repeat(2,1fr)}.process-grid article:nth-child(2){border-right:0}.process-grid article:nth-child(3),.process-grid article:nth-child(4){border-top:1px solid var(--line)}.case-body{grid-template-columns:1fr;gap:30px}.timeline-item{grid-template-columns:50px 160px 1fr;gap:24px}.resume-sheet{grid-template-columns:220px 1fr;gap:45px;padding:44px}.contact-cards{grid-template-columns:1fr}}@media (max-width:700px){.section-pad{padding-block:72px}.section-heading-row{margin-bottom:42px}.project-grid,.work-index,.skills-grid,.principles-grid,.feature-list{grid-template-columns:1fr}.home-project-grid .project-card:nth-child(2n){margin-top:0}.work-index-head{display:none}.work-index .project-card:nth-child(odd){margin-top:0}.project-visual{min-height:430px}.process-grid{grid-template-columns:1fr}.process-grid article,.process-grid article:not(:first-child){border-right:0;border-top:1px solid var(--line);padding:28px 0}.footer-heading{align-items:center}.round-link{flex:none;width:66px;height:66px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.page-hero{padding-block:70px 90px}.case-hero h1{font-size:50px}.case-summary{font-size:20px}.case-meta{grid-template-columns:1fr}.case-actions{flex-direction:column;align-items:flex-start}.case-visual-wrap{width:100%;margin-bottom:80px}.case-visual-wrap .project-visual{min-height:430px}.case-visual-gallery{grid-template-columns:1fr;gap:14px}.case-visual-wrap .project-visual-image{min-height:0}.case-section{grid-template-columns:36px 1fr}.feature-list div:nth-child(2n){border-left:0;padding-left:0}.next-project>div{grid-template-columns:1fr auto}.next-project span{grid-column:1/-1}.portrait-composition{min-height:490px}.principles-grid article:nth-child(2n){border-left:0;padding-left:0}.timeline-item{grid-template-columns:36px 1fr}.timeline-date,.timeline-content{grid-column:2}.resume-intro>div{flex-direction:column;align-items:flex-start}.resume-sheet{grid-template-columns:1fr;width:100%;margin-bottom:70px;padding:30px 20px}.resume-sheet aside{border-right:0;border-bottom:1px solid var(--line);padding:0 0 35px}.resume-skills{grid-template-columns:1fr}.contact-hero{padding-block:80px 60px}.contact-email{font-size:18px}.availability{grid-template-columns:auto 1fr}.availability>span:last-child{grid-column:2}}.resume-cert-link{border-radius:4px;display:block}.resume-cert-link p{color:var(--ink-soft);margin:0 0 10px}.resume-cert-link:hover h3{color:var(--coral)}.resume-cert-link:focus-visible{outline:2px solid var(--coral);outline-offset:6px}
