@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@1,500;1,600&display=swap");:root{--paper:#f6f3ed;--paper-light:#fcfbf8;--ink:#1d2d3b;--ink-soft:#45545d;--muted:#77817e;--line:#deded6;--teal:#64877f;--teal-light:#dce7e1;--mono:"DM Mono",monospace;--sans:"DM Sans",Arial,sans-serif;--serif:"Playfair Display",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#cbdad2;color:var(--ink)}.section-wrap{width:min(1160px,calc(100% - 64px));margin:0 auto}.site-header{height:82px;border-bottom:1px solid rgba(29,45,59,.09);background:rgba(246,243,237,.93);position:-webkit-sticky;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nav-wrap,.site-header{display:flex;align-items:center}.nav-wrap{width:min(1280px,calc(100% - 64px));margin:auto;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:11px}.brand-mark{font-size:24px;letter-spacing:-2px;font-weight:700}.brand-mark span{color:var(--teal)}.brand-name{font-size:15px;font-weight:600;letter-spacing:.01em}.main-nav{display:flex;align-items:center;gap:34px}.main-nav>a:not(.nav-cta){font-size:14px;color:#59666b;transition:color .2s}.main-nav>a:not(.nav-cta):hover{color:var(--teal)}.nav-cta{display:inline-flex;gap:10px;align-items:center;padding:12px 16px;background:var(--ink);color:white;border-radius:3px;font-size:13px;transition:background .2s,transform .2s}.button-dark:hover,.nav-cta:hover{background:#355267;transform:translateY(-2px)}.menu-toggle{display:none;border:0;background:transparent;color:var(--ink);padding:8px}.hero{min-height:690px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;grid-gap:55px;gap:55px;position:relative;padding-top:45px;padding-bottom:88px}.hero-copy{padding:18px 0 0}.architecture-footer,.architecture-header,.contact-bottom>span,.education-status,.eyebrow,.hero-index,.project-kind,.project-type,.section-kicker,.section-overline,.visual-footer,.visual-topline{font-family:var(--mono)}.eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.13em;color:var(--teal);margin-bottom:28px}.eyebrow-line{width:29px;height:1px;background:var(--teal)}h1{font-size:clamp(48px,5.3vw,73px);line-height:1.055;letter-spacing:-.065em;margin:0}h1,h1 em,h2 em{font-weight:500}h1 em,h2 em{font-family:var(--serif);color:var(--teal);letter-spacing:-.045em}.hero-intro{max-width:460px;margin:28px 0 0;color:#5e6a6d;font-size:17px;line-height:1.85}.hero-intro strong{color:var(--ink);font-weight:600}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 19px;font-size:13px;font-weight:600;border-radius:3px;transition:transform .2s,background .2s}.button-dark{color:white;background:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:10px;font-size:13px;color:#59666b}.text-link:hover{color:var(--teal)}.hero-meta{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:65px;color:#79827e;font-size:12px}.hero-meta span{display:inline-flex;gap:7px;align-items:center}.meta-divider{height:14px;width:1px;background:#c9cbc2}.hero-visual{display:flex;justify-content:flex-end}.visual-shell{width:100%;max-width:510px;min-height:465px;padding:22px 23px 17px;background:#e9eee8;border:1px solid #dce3dc;position:relative;overflow:hidden}.visual-shell:before{content:"";position:absolute;inset:0;opacity:.36;background-image:linear-gradient(rgba(91,126,115,.13) 1px,transparent 0),linear-gradient(90deg,rgba(91,126,115,.13) 1px,transparent 0);background-size:28px 28px;-webkit-mask-image:linear-gradient(180deg,black,transparent 88%);mask-image:linear-gradient(180deg,black,transparent 88%)}.visual-footer,.visual-topline{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2;color:#637b72;font-size:10px;letter-spacing:.1em}.visual-topline>span:first-child{display:flex;align-items:center;gap:8px}.live-dot{width:6px;height:6px;background:#6c9c80;border-radius:50%;box-shadow:0 0 0 4px rgba(108,156,128,.12)}.network-art{height:375px;position:relative}.orbit{position:absolute;border:1px solid rgba(100,135,127,.23);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-one{width:280px;height:280px}.orbit-two{width:390px;height:390px}.network-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.network-lines path{fill:none;stroke:#91aaa0;stroke-width:1.1;stroke-dasharray:4 5}.network-lines .fine-line{opacity:.42;stroke-dasharray:2 7}.node{width:69px;height:69px;border-radius:50%;background:#fbfcf8;border:1px solid #cbd9d1;color:#46675e;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;position:absolute;box-shadow:0 8px 25px rgba(45,75,63,.08)}.node span{font-family:var(--mono);font-size:8px;letter-spacing:.08em}.node-cloud{left:16%;top:12%}.node-core{left:calc(50% - 35px);top:calc(50% - 35px);width:80px;height:80px;color:#f9faf6;background:var(--ink);border-color:var(--ink);z-index:2}.node-server{right:12%;top:12%}.node-code{left:4%;top:52%}.node-circuit{right:5%;top:52%}.node-terminal{left:calc(50% - 34px);bottom:1%}.center-label{position:absolute;left:50%;top:calc(50% + 59px);transform:translateX(-50%);display:flex;flex-direction:column;text-align:center;gap:3px;color:#81958c}.center-label span{font-family:var(--mono);font-size:9px;letter-spacing:.12em}.center-label strong{font-family:var(--serif);font-size:19px;font-style:italic;font-weight:500;color:#58776d}.signal-bars{display:flex;align-items:end;gap:3px;height:10px}.signal-bars i{display:block;width:3px;background:#71968a;height:4px}.signal-bars i:nth-child(2){height:7px}.signal-bars i:nth-child(3){height:5px}.signal-bars i:nth-child(4){height:9px}.hero-index{position:absolute;bottom:30px;left:0;display:flex;align-items:center;gap:14px;color:#8b928b;font-size:10px;letter-spacing:.12em}.index-line{height:1px;width:55px;background:#b9c2b9}.intro-band{background:#eeeee7;padding:105px 0 112px;border-top:1px solid #e2e2d9;border-bottom:1px solid #e2e2d9}.intro-grid{display:grid;grid-template-columns:220px 1fr;grid-gap:55px;gap:55px}.section-kicker{display:flex;align-items:center;gap:13px;color:#74827a;font-size:11px;letter-spacing:.12em;white-space:nowrap}.kicker-rule{display:block;width:38px;height:1px;background:#bdc8bd}.section-overline{color:var(--teal);font-size:11px;letter-spacing:.11em;text-transform:uppercase;margin:0 0 17px}h2{font-size:clamp(36px,4.1vw,53px);line-height:1.12;letter-spacing:-.055em;font-weight:500;margin:0}.intro-columns{display:grid;grid-template-columns:1fr 1fr;grid-gap:36px;gap:36px;margin-top:28px;max-width:790px}.intro-columns p{color:#626e6d;font-size:15px;line-height:1.9;margin:0}.education-line{display:flex;align-items:center;gap:15px;border-top:1px solid #d7dcd3;margin-top:38px;padding-top:20px;max-width:790px}.education-icon{width:39px;height:39px;display:grid;place-items:center;background:#dce6df;color:#52766a}.education-line div:nth-child(2){display:flex;flex-direction:column;gap:4px}.education-line strong{font-size:13px;font-weight:600}.education-line div:nth-child(2) span{color:#78817b;font-size:12px}.education-status{margin-left:auto;color:#66877c;font-size:10px;letter-spacing:.1em}.expertise-section{padding-top:110px;padding-bottom:118px}.section-heading{margin-bottom:44px}.heading-row{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-top:27px}.heading-row h2{margin:0}.heading-aside{max-width:300px;color:#6b7774;font-size:14px;line-height:1.85;margin:0 0 5px}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.skill-card{min-height:190px;padding:24px 25px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:background .25s}.skill-card:hover{background:#eeeee7}.skill-card-top{display:flex;justify-content:space-between;align-items:center;color:#68877d}.skill-card-top span{font-family:var(--mono);font-size:11px;color:#9aa39b}.skill-card h3{font-size:17px;font-weight:600;letter-spacing:-.02em;margin:27px 0 8px}.skill-card p{color:#74807c;font-size:13px;line-height:1.7;max-width:260px;margin:0}.skill-bottom-line{position:absolute;bottom:0;left:25px;width:0;height:2px;background:var(--teal);transition:width .25s}.skill-card:hover .skill-bottom-line{width:40px}.projects-section{padding:105px 0 118px;background:#eeeee7;border-top:1px solid #e1e2d9;border-bottom:1px solid #e1e2d9}.projects-list{border-top:1px solid #d4d9d0}.project-card{display:grid;grid-template-columns:65px minmax(0,1fr) 340px;grid-gap:30px;gap:30px;padding:37px 0;border-bottom:1px solid #d4d9d0}.project-number{font-family:var(--mono);color:#91a097;font-size:13px;padding-top:3px}.project-type{color:#68877d;font-size:10px;letter-spacing:.11em}.project-main h3{font-size:25px;font-weight:500;letter-spacing:-.04em;margin:10px 0 3px}.project-main h4{font-family:var(--serif);font-style:italic;font-weight:500;color:#6c887d;font-size:18px;margin:0}.project-main>p{max-width:580px;color:#687470;font-size:14px;line-height:1.85;margin:15px 0 17px}.tag-list{display:flex;flex-wrap:wrap;gap:6px}.tag-list span{border:1px solid #d2d9d1;padding:6px 8px;color:#64736c;font-family:var(--mono);font-size:10px}.project-aside{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:12px}.architecture-card{background:#f8f8f3;border:1px solid #d9e0d8;padding:15px}.architecture-header{display:flex;justify-content:space-between;gap:8px;color:#819087;font-size:9px;letter-spacing:.08em}.architecture-status{color:#638a76}.architecture-flow{display:flex;align-items:center;margin:21px 0}.architecture-box{min-width:0;flex:1 1;display:flex;align-items:center;flex-direction:column;gap:5px;color:#58796e;text-align:center}.architecture-box span{color:var(--ink);font-size:10px;font-weight:600;white-space:nowrap}.architecture-box small{color:#8b958d;font-size:9px}.flow-connector{height:1px;width:18px;background:#9db3a7;position:relative;flex:0 0 18px}.flow-connector:after{content:"";position:absolute;right:0;top:-3px;width:5px;height:5px;border-top:1px solid #9db3a7;border-right:1px solid #9db3a7;transform:rotate(45deg)}.architecture-footer{display:flex;align-items:center;gap:7px;padding-top:12px;border-top:1px solid #e2e6df;color:#70877c;font-size:10px}.project-kind{text-align:right;color:#89948c;font-size:9px;letter-spacing:.1em}.project-symbol{min-height:115px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;background:#e5eae3;color:#69877c}.project-symbol span{font-family:var(--mono);font-size:10px;text-align:center;letter-spacing:.12em;line-height:1.6}.approach-section{padding-top:105px;padding-bottom:105px}.approach-card{display:grid;grid-template-columns:1fr 1fr;grid-gap:70px;gap:70px;padding:50px;background:#e9eee8;border:1px solid #dce4dc}.approach-left h2{font-size:clamp(34px,3.5vw,45px)}.approach-right{display:flex;flex-direction:column;gap:22px}.approach-point{display:flex;gap:17px;border-bottom:1px solid #d3ddd4;padding-bottom:17px}.approach-point>span{font-family:var(--mono);color:#779489;font-size:11px;padding-top:2px}.approach-point strong{font-size:14px;font-weight:600}.approach-point p{color:#718079;font-size:12px;line-height:1.7;margin:6px 0 0}.contact-section{background:var(--ink);color:#f8f7f1;padding:85px 0 30px}.contact-inner>.section-kicker{color:#a8bcb2}.contact-inner>.section-kicker .kicker-rule{background:#60786f}.contact-inner>.section-overline{color:#a4b9ad;margin-top:76px}.contact-inner h2{font-size:clamp(58px,8vw,96px);line-height:.98}.contact-inner h2 em{color:#a4c0b1}.button-light{background:#e7eee7;color:var(--ink);margin-top:35px}.button-light:hover{background:white;transform:translateY(-2px)}.contact-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #43535a;margin-top:105px;padding-top:20px}.contact-bottom>span{font-size:10px;letter-spacing:.1em;color:#a9b6b0}.social-links{display:flex;gap:9px}.social-links a{width:34px;height:34px;display:grid;place-items:center;border:1px solid #53636a;color:#dce5df;transition:background .2s,color .2s}.social-links a:hover{background:#dce5df;color:var(--ink)}.site-footer{background:#172530;color:#a9b6b0}.footer-inner{display:flex;align-items:center;justify-content:space-between;min-height:76px}.footer-inner .brand-mark{font-size:20px;color:#f5f4ee}.footer-inner>span{font-size:11px;color:#8e9d96}@media (max-width:900px){.hero{gap:30px;min-height:620px}h1{font-size:clamp(44px,6vw,60px)}.visual-shell{min-height:410px;padding-left:15px;padding-right:15px}.network-art{height:320px}.node-cloud{left:9%}.node-server{right:7%}.node-code{left:0}.node-circuit{right:0}.project-card{grid-template-columns:42px minmax(0,1fr) 280px;gap:20px}.approach-card{gap:35px;padding:38px}}@media (max-width:680px){.nav-wrap,.section-wrap{width:min(100% - 40px,540px)}.site-header{height:70px}.brand-name{font-size:14px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:69px;left:0;right:0;padding:20px;background:var(--paper-light);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;box-shadow:0 15px 25px rgba(20,35,40,.07)}.main-nav.open{display:flex}.main-nav>a:not(.nav-cta){padding:14px 4px;border-bottom:1px solid #ecece5;font-size:15px}.nav-cta{justify-content:center;margin-top:13px}.hero{display:flex;flex-direction:column;align-items:stretch;gap:42px;padding-top:64px;padding-bottom:80px}.hero-copy{padding:0}.eyebrow{font-size:10px;margin-bottom:22px}h1{font-size:clamp(43px,11vw,61px)}.hero-intro{font-size:15px;margin-top:22px}.hero-actions{gap:18px;flex-wrap:wrap;margin-top:25px}.hero-meta{margin-top:32px;gap:9px;font-size:11px}.hero-visual{justify-content:center}.visual-shell{max-width:none;min-height:380px}.network-art{height:295px}.orbit-one{width:230px;height:230px}.orbit-two{width:320px;height:320px}.node{width:58px;height:58px}.node-core{width:70px;height:70px}.node-cloud{left:12%;top:10%}.node-server{right:12%;top:10%}.node-code{left:1%;top:50%}.node-circuit{right:1%;top:50%}.node-terminal{bottom:0}.hero-index{bottom:27px}.expertise-section,.intro-band,.projects-section{padding-top:72px;padding-bottom:76px}.intro-grid{grid-template-columns:1fr;gap:32px}.intro-columns{grid-template-columns:1fr;gap:14px;margin-top:22px}.education-line{align-items:flex-start;flex-wrap:wrap}.education-status{margin-left:54px;width:100%}.heading-row{align-items:flex-start;flex-direction:column;gap:16px;margin-top:22px}h2{font-size:39px}.heading-aside{max-width:400px}.skills-grid{grid-template-columns:repeat(2,1fr)}.skill-card{min-height:175px;padding:19px 16px}.skill-card h3{font-size:15px;margin-top:22px}.skill-card p{font-size:12px}.skill-bottom-line{left:16px}.project-card{grid-template-columns:28px minmax(0,1fr);gap:12px;padding:27px 0}.project-main h3{font-size:23px}.project-aside{grid-column:2;margin-top:8px}.project-kind{text-align:left}.architecture-card{max-width:420px}.approach-section{padding-top:70px;padding-bottom:70px}.approach-card{grid-template-columns:1fr;gap:30px;padding:28px 23px}.approach-left h2{font-size:36px}.contact-section{padding-top:65px}.contact-inner>.section-overline{margin-top:57px}.contact-inner h2{font-size:clamp(57px,14vw,78px)}.contact-bottom{margin-top:75px;align-items:flex-start;gap:20px;flex-direction:column}.footer-inner{min-height:90px;flex-wrap:wrap;gap:12px;padding-top:18px;padding-bottom:18px}.footer-inner>span:nth-child(2){order:3;width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}