:root{color-scheme:light;color:#192333;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#192333;--muted:#586475;--accent:#245bcc;--border:#dde2e9;background:#f8f9fb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}svg{flex-shrink:0}h1,h2,h3,p,figure{margin:0}ul,ol{margin:0;padding:0}::selection{color:var(--ink);background:#cddfff}:focus-visible{outline:3px solid var(--accent);outline-offset:6px;border-radius:3px}main:focus{outline:none}.site-shell{width:min(1120px,100% - 96px);margin-inline:auto}.skip-link{z-index:10;color:#fff;background:var(--ink);border-radius:6px;padding:12px 18px;position:absolute;top:12px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:112px;display:flex}.wordmark{font-size:calc(27px * var(--text-scale,1));letter-spacing:-1.6px;font-weight:750}.wordmark span,.accent,.name-period{color:var(--accent)}.main-nav{font-size:calc(14px * var(--text-scale,1));align-items:center;gap:32px;font-weight:550;display:flex}.main-nav a{padding-block:12px}.nav-external,.text-link,.source-link,.social-links a,.site-footer a{align-items:center;gap:6px;display:inline-flex}.main-nav svg{width:16px;height:16px}.main-nav a:hover,.text-link:hover,.social-links a:hover,.site-footer a:hover{color:var(--accent)}.eyebrow{font-size:calc(11px * var(--text-scale,1));letter-spacing:1.6px;text-transform:uppercase;font-weight:650;line-height:1.6}.hero{grid-template-columns:1.1fr 1fr;align-items:end;gap:56px;padding-block:88px 94px;display:grid}.hero-role{color:var(--muted);align-items:center;gap:10px;margin-bottom:25px;display:flex}.role-mark{background:var(--accent);border-radius:50%;width:6px;height:6px}.hero h1{font-size:calc(clamp(78px, 9.4vw, 118px) * var(--text-scale,1));letter-spacing:-7px;font-weight:650;line-height:.93}.hero-intro{padding-bottom:4px}.intro-text{max-width:450px;font-size:calc(clamp(24px, 2.6vw, 32px) * var(--text-scale,1));letter-spacing:-.9px;text-wrap:pretty;font-weight:400;line-height:1.45}.hero-actions{font-size:calc(13px * var(--text-scale,1));flex-wrap:wrap;align-items:center;gap:24px;margin-top:30px;font-weight:550;display:flex}.button{min-height:48px;font-size:calc(13px * var(--text-scale,1));border-radius:7px;justify-content:center;align-items:center;gap:14px;padding:13px 19px;font-weight:600;transition:background-color .15s;display:inline-flex}.button-primary{color:#fff;background:var(--accent)}.button-primary:hover{background:#194bad}.button svg{width:17px;height:17px}.text-link{min-height:44px}.text-link svg{width:17px;height:17px}.work-section{border-top:1px solid var(--border);padding-top:36px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px;display:flex}.section-heading .eyebrow{color:var(--muted);margin-bottom:8px}h2{font-size:calc(clamp(30px, 3.7vw, 42px) * var(--text-scale,1));letter-spacing:-1.6px;font-weight:550;line-height:1.15}.section-aside{font-size:calc(12px * var(--text-scale,1));color:var(--muted);padding-bottom:4px;line-height:1.5}.project-list{gap:26px;display:grid}.project{border:1px solid var(--border);background:#fff;border-radius:16px;grid-template-columns:1fr 1.08fr;grid-template-areas:"visual copy";display:grid;overflow:hidden}.project-copy{grid-area:copy;padding:38px 38px 32px}.project-kicker{color:var(--muted);align-items:center;gap:12px;margin-bottom:16px;display:flex}.project-kicker .eyebrow{font-size:calc(10px * var(--text-scale,1));letter-spacing:1.3px}.project-number{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:calc(11px * var(--text-scale,1));color:var(--accent)}.project h3{font-size:calc(32px * var(--text-scale,1));letter-spacing:-1px;margin-bottom:16px;font-weight:600;line-height:1.15}.project-description{font-size:calc(14px * var(--text-scale,1));color:#465366;text-wrap:pretty;line-height:1.85}.project-note{font-size:calc(12px * var(--text-scale,1));color:var(--muted);margin-top:12px;line-height:1.7}.technologies{flex-wrap:wrap;gap:7px;margin-top:20px;list-style:none;display:flex}.technologies li{font-size:calc(10px * var(--text-scale,1));color:#47566b;background:#f5f6f9;border:1px solid #e8ebf0;border-radius:5px;padding:5px 9px;font-weight:550;line-height:1.4}.source-link{min-height:32px;color:var(--accent);font-size:calc(13px * var(--text-scale,1));margin-top:23px;font-weight:650}.source-link:hover{text-underline-offset:5px;text-decoration:underline}.source-link svg{width:18px;height:18px;transition:transform .15s}.source-link:hover svg{transform:translate(2px,-2px)}.workflow{border-right:1px solid var(--border);background-color:#eef4ff;background-image:radial-gradient(#bbcff1 .65px,#0000 .65px);background-size:16px 16px;flex-direction:column;grid-area:visual;justify-content:center;padding:36px 42px;display:flex;position:relative}.workflow--code-analysis{background-color:#f0f3f8;background-image:radial-gradient(#c5cfdf .65px,#0000 .65px)}.workflow-caption{gap:8px;margin-bottom:23px;display:grid}.workflow-caption .eyebrow{font-size:calc(9px * var(--text-scale,1));letter-spacing:1.4px;color:#516a91}.workflow-title{max-width:270px;font-size:calc(21px * var(--text-scale,1));letter-spacing:-.55px;font-weight:550;line-height:1.4}.workflow-steps{gap:10px;list-style:none;display:grid}.workflow-step{background:#ffffffed;border:1px solid #d9e3f1;border-radius:7px;align-items:center;gap:13px;min-height:57px;padding:11px 15px;display:flex;position:relative;box-shadow:0 2px 4px #25467303}.workflow-step:not(:last-child):after{content:"";background:#a7bddf;width:1px;height:11px;position:absolute;bottom:-11px;left:26px}.step-number{color:#5878aa;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:10px}.step-title{font-size:calc(11px * var(--text-scale,1));font-weight:600;line-height:1.5;display:block}.step-detail{font-size:calc(10px * var(--text-scale,1));color:#62738b;margin-top:1px;line-height:1.5;display:block}.step-dot{border:1px solid #8ba8d2;border-radius:50%;flex-shrink:0;width:5px;height:5px;margin-left:auto}.workflow-step:last-child{background:#e4edfc;border-color:#c7d7ee}.workflow-step:last-child .step-dot{background:var(--accent);border-color:var(--accent)}.contact-section{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;align-items:center;gap:60px;margin-top:72px;padding-block:74px 78px;display:grid}.contact-heading .eyebrow{color:var(--muted);margin-bottom:10px}.contact-heading h2{font-size:calc(52px * var(--text-scale,1));letter-spacing:-2px}.contact-heading>p:last-child{max-width:350px;color:var(--muted);font-size:calc(13px * var(--text-scale,1));margin-top:14px;line-height:1.8}.contact-details{justify-self:end}.email-link{font-size:calc(clamp(21px, 2.65vw, 31px) * var(--text-scale,1));letter-spacing:-.8px;align-items:center;gap:15px;padding-block:8px;font-weight:450;display:inline-flex}.email-link svg{color:var(--accent);width:27px;height:27px}.email-link:hover{color:var(--accent)}.social-links{color:var(--muted);font-size:calc(12px * var(--text-scale,1));gap:26px;margin-top:15px;display:flex}.social-links a{min-height:34px}.social-links svg{width:15px;height:15px}.site-footer{border-top:1px solid var(--border);font-size:calc(11px * var(--text-scale,1));color:var(--muted);justify-content:space-between;align-items:center;gap:20px;padding-block:26px;display:flex}.site-footer a{min-height:30px}.site-footer svg{width:14px;height:14px}.not-found{min-height:65vh;padding-block:120px 150px}.not-found .eyebrow{color:var(--muted)}.not-found h1{font-size:calc(clamp(44px, 7vw, 80px) * var(--text-scale,1));letter-spacing:-3px;margin-top:20px;line-height:1.1}.not-found>p:not(.eyebrow){max-width:430px;color:var(--muted);margin-top:24px;line-height:1.8}.not-found .button{margin-top:30px}@media (width>=1440px){.hero{padding-top:100px;padding-bottom:106px}}@media (width<=1000px){.site-shell{width:calc(100% - 64px)}.hero{gap:35px;padding-block:72px 76px}.hero h1{font-size:calc(94px * var(--text-scale,1));letter-spacing:-5.5px}.intro-text{font-size:calc(26px * var(--text-scale,1))}.hero-actions{gap:16px}.project-copy,.workflow{padding:30px}.project-description{font-size:calc(13px * var(--text-scale,1))}}@media (width<=760px){.site-shell{width:calc(100% - 48px)}.site-header{min-height:88px}.main-nav{font-size:calc(12px * var(--text-scale,1));gap:24px}.hero{grid-template-columns:1fr;gap:32px;padding-block:57px 62px}.hero-role{margin-bottom:22px}.hero h1{font-size:calc(clamp(83px, 15vw, 114px) * var(--text-scale,1));letter-spacing:-5.5px}.intro-text{max-width:470px;font-size:calc(25px * var(--text-scale,1));letter-spacing:-.6px}.hero-actions{gap:23px;margin-top:23px}.section-heading{align-items:start}.section-aside{text-align:right;max-width:145px;font-size:calc(10px * var(--text-scale,1));padding-top:5px}.project{grid-template-columns:1fr;grid-template-areas:"copy""visual"}.project-copy{padding:29px 27px 26px}.project-description{font-size:calc(14px * var(--text-scale,1))}.project-note{font-size:calc(12px * var(--text-scale,1))}.workflow{border-right:0;border-top:1px solid var(--border);padding:28px}.workflow-title{max-width:none;font-size:calc(20px * var(--text-scale,1))}.workflow-caption{margin-bottom:18px}.workflow-steps{grid-template-columns:1fr 1fr;gap:10px}.workflow-step{align-items:start;gap:10px;padding:12px}.workflow-step:not(:last-child):after{display:none}.step-number{margin-top:3px}.step-dot{display:none}.step-detail{font-size:calc(9px * var(--text-scale,1))}.step-title{font-size:calc(10px * var(--text-scale,1))}.contact-section{grid-template-columns:1fr;gap:24px;margin-top:48px;padding-block:48px}.contact-heading h2{font-size:calc(44px * var(--text-scale,1))}.contact-details{justify-self:start}.email-link{font-size:calc(27px * var(--text-scale,1))}.social-links{margin-top:8px}.not-found{padding-block:85px 110px}}@media (width<=380px){.site-shell{width:calc(100% - 36px)}.main-nav{gap:17px}.section-heading{display:block}.section-aside{text-align:left;max-width:none;margin-top:12px}.hero h1{font-size:calc(80px * var(--text-scale,1))}.project-copy{padding:26px 22px}.workflow{padding:25px 20px}.workflow-steps{grid-template-columns:1fr}.step-title{font-size:calc(11px * var(--text-scale,1))}.step-detail{font-size:calc(10px * var(--text-scale,1))}.email-link{font-size:calc(24px * var(--text-scale,1))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}
