.brand-caption{display:block;font-size:10px;line-height:1.6;letter-spacing:.035em;max-width:240px}.nav-links{font-size:13px}.nav-links a[aria-current="location"]{color:var(--green);text-decoration:underline;text-underline-offset:7px}.hero .eyebrow{font-size:11px}.hero-art .art-caption{font-size:10px;max-width:calc(100% - 42px);line-height:1.7}.hero-art .art-bottom p:last-child{font-size:10px}.hero-footer .wrap{font-size:10px}.facts .fact span{font-size:11px}.work-section{border-top:1px solid var(--line);background:#eeeee6}.projects-note{font-size:14px}.featured-project{display:grid;grid-template-columns:1.08fr 1fr;gap:52px;margin-top:50px;align-items:center}.featured-image{display:block;min-width:0;border:1px solid #ccd5c6;background:#e1e8d8;padding:17px 17px 0}.featured-image img{width:100%;height:auto;display:block;border:1px solid #d5dbd0;box-shadow:0 10px 26px #173a2610}.featured-image>span{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 1px;font:10px/1.7 var(--mono);color:#385843}.featured-copy .project-status{margin-top:0;font-size:10px;line-height:1.9}.featured-copy h3{font-size:43px;line-height:1.15;letter-spacing:-.045em;margin-top:21px;font-weight:550}.project-deck{font:26px/1.3 var(--serif);letter-spacing:-.035em;margin-top:17px}.featured-copy .project-description{font-size:14px;line-height:1.85;margin-top:18px}.project-points{padding-left:18px;margin:20px 0 0;color:var(--muted);font-size:13px;line-height:1.9}.featured-copy .project-stack{font-size:11px;line-height:1.8;margin-top:22px}.project-actions{display:flex;flex-wrap:wrap;align-items:center;gap:21px;margin-top:25px}.button-dark{background:var(--navy);color:var(--white)}.button-dark:hover{background:#244a43}.featured-copy .project-caption{font-size:11px;line-height:1.85;margin-top:25px}.strength-number{display:block;color:var(--green);font:12px var(--mono);margin-bottom:24px}.strength p{font-size:14px}.learning .eyebrow{font-size:10px}.learning p{font-size:13px}.role-date{font-size:10px}.role-company{font-size:13px}.role-body{font-size:14px}.experience-resume{margin-top:25px}.contact-email{display:block;margin-top:22px;font-size:16px;overflow-wrap:anywhere}.copy-email{border:0;border-bottom:1px solid #779387;color:#dbe8d2;font-size:12px;background:transparent;padding:7px 0;align-self:start;cursor:pointer}.contact .contact-note{font-size:12px;min-height:22px}.footer{font-size:10px;line-height:1.9}.case-hero{padding:78px 0 65px;background:var(--navy);color:var(--white)}.case-hero .eyebrow{color:#bed4bc}.case-hero h1{font-size:clamp(51px,8vw,90px);font-weight:550;letter-spacing:-.06em;margin-top:24px}.case-hero .case-subtitle{font-size:clamp(24px,3vw,38px);font-family:var(--serif);color:var(--lime);margin-top:25px;line-height:1.3;max-width:720px}.case-hero .hero-description{max-width:690px;font-size:16px}.case-back{display:inline-block;color:#b7cbbf;font-size:12px;margin-bottom:40px}.case-layout{display:grid;grid-template-columns:.6fr 1.35fr;gap:80px}.case-layout h2{font-size:32px;letter-spacing:-.04em;font-weight:550;line-height:1.25}.case-body{color:var(--muted)}.case-body p+p{margin-top:20px}.case-body h3{margin-top:32px;font-size:18px;line-height:1.5;color:var(--ink);letter-spacing:-.02em}.case-body ul{padding-left:20px;margin-top:18px}.case-body li+li{margin-top:12px}.case-body a{color:var(--green);text-decoration:underline;text-underline-offset:4px}.case-strip{padding:26px 0;border-bottom:1px solid var(--line)}.case-strip .wrap{display:flex;flex-wrap:wrap;gap:18px 35px;font:11px/1.8 var(--mono);color:var(--muted)}.case-shot{width:100%;height:auto;display:block;border:1px solid var(--line);margin-top:35px}.case-figure{margin:0}.case-figure figcaption{font-size:12px;color:var(--muted);margin-top:13px;line-height:1.8}.case-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:35px}.case-step{padding-top:19px;border-top:1px solid #bdcabc}.case-step span{font:11px var(--mono);color:var(--green)}.case-step h3{margin:14px 0;font-size:18px;line-height:1.4}.case-step p{font-size:14px;color:var(--muted)}.case-note{border-left:2px solid #8cac73;padding:18px 23px;background:#edf0e5;font-size:14px;color:var(--muted);margin-top:30px}.case-table{border-collapse:collapse;width:100%;font-size:14px;margin-top:25px}.case-table th,.case-table td{text-align:left;vertical-align:top;padding:16px 16px 16px 0;border-bottom:1px solid var(--line)}.case-table th{font-weight:500;color:var(--ink)}.case-table td:first-child{width:34%;color:var(--ink)}.resume-page{padding:70px 0 90px}.resume-heading{max-width:850px;margin:auto;border-bottom:1px solid var(--line);padding-bottom:35px}.resume-heading h1{font-size:clamp(43px,6vw,65px);letter-spacing:-.05em;font-weight:550;margin-top:20px}.resume-heading p{margin-top:14px;color:var(--muted)}.resume-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:25px}.resume-body{max-width:850px;margin:40px auto 0}.resume-body h2{font-size:26px;font-weight:500;letter-spacing:-.03em;margin:42px 0 23px}.resume-body h3{font-size:18px;line-height:1.5;letter-spacing:-.01em}.resume-body article{margin:25px 0 35px}.resume-meta{font:11px/1.9 var(--mono);color:var(--green);margin:9px 0 16px}.resume-body ul{padding-left:20px;color:var(--muted);font-size:14px;line-height:1.9}.resume-body li+li{margin-top:8px}.resume-body p{color:var(--muted)}.print-button{cursor:pointer}.resume-print-note{font-size:12px!important}.case-footer-link{font-size:14px;color:#d3e7c2;text-decoration:underline;text-underline-offset:5px}
@media(max-width:950px){.featured-project{gap:32px}.featured-copy h3{font-size:36px}.project-deck{font-size:24px}.case-layout{gap:45px;grid-template-columns:.65fr 1.35fr}}
@media(max-width:750px){.featured-project{grid-template-columns:1fr}.featured-image{max-width:620px}.featured-copy .project-status{margin-top:8px}.case-layout{grid-template-columns:1fr;gap:30px}.case-steps{gap:20px}.nav-links{gap:20px}}
@media(max-width:620px){.brand-caption{font-size:8px;max-width:220px}.hero .eyebrow{font-size:10px}.hero-footer .wrap{font-size:9px}.hero-footer .wrap span:last-child{max-width:170px}.facts .fact span{font-size:10px}.work-section .projects-note{font-size:14px}.featured-project{margin-top:33px;gap:26px}.featured-image{padding:10px 10px 0}.featured-image>span{font-size:9px;padding:13px 1px}.featured-copy h3{font-size:37px}.project-actions{gap:23px}.project-actions .button{padding:13px 17px}.project-deck{font-size:25px}.strength-number{grid-column:1;grid-row:1/3;margin:4px 0 0}.strength p{font-size:14px}.learning .eyebrow{font-size:10px}.learning p{font-size:12px}.role-title{font-size:18px}.role-date{font-size:10px}.role-body{font-size:14px}.contact-email{font-size:15px}.footer{font-size:10px}.case-hero{padding:45px 0}.case-back{margin-bottom:32px}.case-hero .hero-description{font-size:15px}.case-steps{grid-template-columns:1fr;gap:26px}.case-table{font-size:13px}.case-table td:first-child{width:37%}.case-strip .wrap{font-size:10px;gap:8px 22px}.resume-page{padding:44px 0 60px}.resume-body h2{font-size:24px}.resume-actions .button{width:100%}.nav-links .nav-resume{font-size:13px}}
@media print{.header,.resume-actions,.case-back,.contact,.skip-link{display:none!important}.resume-page{padding:0}.resume-body,.resume-heading{max-width:none}.resume-heading h1{font-size:26pt}.resume-body h2{font-size:15pt;margin:23px 0 15px}.resume-body h3{font-size:11pt}.resume-body p,.resume-body li{font-size:10pt;color:#222}.resume-body article{break-inside:avoid;margin:17px 0}.resume-body li+li{margin-top:4px}.resume-meta{font-size:9pt}.resume-print-note{display:none}.case-hero{color:#111;background:#fff}.case-hero .case-subtitle{color:#222}.case-layout{display:block}.section{padding:30px 0}}

.case-implementation{margin-top:23px;padding:16px 0;border-block:1px solid var(--line);font-size:14px}.case-implementation summary{color:var(--green);cursor:pointer}.case-implementation p{padding-top:15px}
/* Readable, keyboard-friendly detail pages and concise homepage. */
.brand-caption{font-size:11px}.nav-links{font-size:14px}.nav-links>a{min-height:44px;display:flex;align-items:center}.nav-toggle{min-height:44px}.button,.text-link,.copy-email{min-height:44px}.button{font-size:14px}.text-link{font-size:14px}.section-no,.eyebrow{font-size:12px}.hero .eyebrow{font-size:12px;line-height:1.8;letter-spacing:.1em}.hero-description{font-size:17px}.hero-grid{min-height:610px;padding:65px 0}.hero-footer .wrap{font-size:12px;letter-spacing:.02em}.hero-art .art-caption,.hero-art .art-bottom p:last-child{font-size:11px}.project-description,.featured-copy .project-description,.strength p,.case-step p{font-size:16px}.project-points,.project-stack,.featured-copy .project-stack{font-size:14px}.featured-copy .project-caption,.featured-copy .project-status,.featured-image>span,.case-strip .wrap,.role-date,.footer{font-size:12px}.project-deck{font-size:25px}.featured-project{gap:42px}.section{padding:78px 0}.contact{padding-top:70px}.contact p{font-size:16px}.contact-linkedin{display:block;color:var(--lime);min-height:44px;padding-top:12px}.contact .contact-note{margin-top:10px!important}.copy-email{padding-block:10px}.plain-footer{background:var(--navy);color:var(--white)}.story-link{margin-top:20px}.about-copy{font-size:17px}.role-company{font-size:15px}.role-body{font-size:16px}.case-table{font-size:16px}.case-table td:first-child{width:32%}.case-implementation{font-size:16px}.case-implementation summary{min-height:44px;display:flex;align-items:center;line-height:1.5}.case-implementation summary::before{content:'+';margin-right:13px;font-size:20px}.case-implementation[open] summary::before{content:'−'}.case-body{font-size:17px}.case-note{font-size:15px}.resume-body ul{font-size:16px}.resume-meta{font-size:12px}.architecture-picker{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}.architecture-picker .button{cursor:pointer;border-color:#738879}.architecture-picker [aria-pressed="true"]{background:var(--navy);color:var(--white)}.architecture-picker [aria-pressed="false"]{background:transparent;color:var(--ink)}.architecture-view{margin-top:28px;border:1px solid #b6c4b0;padding:28px;background:var(--paper)}.evidence-label{font:12px/1.8 var(--mono);color:var(--green)}.architecture-flow{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin:25px 0;gap:24px;counter-reset:flow}.architecture-flow li{border-top:2px solid #547a57;padding-top:16px;counter-increment:flow}.architecture-flow strong{display:block;font-size:17px;line-height:1.5}.architecture-flow strong::before{content:counter(flow) '. ';color:var(--green)}.architecture-flow span{display:block;font-size:15px;line-height:1.7;margin-top:8px;color:var(--muted)}.architecture-caption{font-size:15px;color:var(--muted)}.architecture-status{font-size:14px;margin-top:18px;color:var(--muted)}.pitch-intro{padding-top:32px}.pitch-intro>p+p{margin-top:10px;color:var(--muted);font-size:15px}.pitch-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}.pitch-controls .text-link{background:none;border:0;border-bottom:1px solid currentColor;padding-inline:0;color:var(--green);cursor:pointer}.pitch-slide{background:var(--navy);color:var(--white);padding:60px;margin-block:34px;min-height:480px}.pitch-slide .eyebrow{color:var(--lime)}.pitch-slide h1{font-size:clamp(35px,5vw,65px);font-weight:550;letter-spacing:-.045em;margin-top:30px}.pitch-slide>p:not(.eyebrow){color:#c7d4ce;max-width:760px;font-size:19px;margin-top:30px}.pitch-slide .text-link{margin-top:30px;color:var(--lime)}.pitch-slide .button{margin-top:30px}.pitch-disclosure{font-size:14px;color:var(--muted);margin-bottom:40px}
@media(max-width:900px){.brand-caption{display:none}.nav-links{gap:20px}.architecture-flow{grid-template-columns:repeat(2,1fr)}.hero .hero-description{font-size:16px}}
@media(max-width:620px){.section{padding:55px 0}.brand-name{font-size:12px}.brand-caption{display:none}.hero-grid{min-height:0;padding:48px 0}.hero h1{font-size:clamp(66px,19vw,90px)}.hero .eyebrow{font-size:11px}.hero .hero-description{font-size:16px}.hero-footer .wrap{font-size:11px}.featured-copy h3{font-size:35px}.featured-image>span{font-size:11px;letter-spacing:0}.featured-copy .project-description,.strength p{font-size:16px}.project-actions{gap:12px}.hero-actions .text-link{font-size:14px}.projects-note{font-size:16px}.about-copy{font-size:16px}.architecture-view{padding:20px}.architecture-flow{grid-template-columns:1fr;gap:20px}.architecture-flow span{margin-top:5px}.case-table{font-size:14px}.case-table th,.case-table td{padding:14px 10px 14px 0;overflow-wrap:anywhere}.case-table td:first-child{width:32%}.case-hero h1{font-size:48px}.role-title{font-size:19px}.role-date,.footer{font-size:12px}.footer{flex-wrap:wrap}.pitch-slide{padding:28px 22px;min-height:470px}.pitch-slide h1{font-size:38px}.pitch-slide>p:not(.eyebrow){font-size:17px}.pitch-controls{gap:10px}.pitch-controls .button{padding:10px 14px}.pitch-controls [data-pitch-status]{font-size:14px}.pitch-disclosure{font-size:13px}.contact h2{font-size:43px}.contact-actions{min-width:0}}
@media print{.pitch-controls,.pitch-intro>p+p{display:none}.pitch-slide{break-after:page;background:white;color:#111;min-height:0;margin:0;padding:35px 0}.pitch-slide>p:not(.eyebrow),.pitch-slide .eyebrow{color:#222}.architecture-flow{grid-template-columns:repeat(2,1fr)}}

.about-portrait{margin:34px 0 0;max-width:240px}.about-portrait img{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:50%;background:#2b2b2b}.about-portrait figcaption{margin-top:12px;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}@media(max-width:750px){.about-portrait{max-width:180px}}

/* Meet Matthew introduction (palette and layout follow the supplied handoff guide, adapted to the site's tokens). */
.meet{background:var(--paper)}
.meet-head{display:grid;grid-template-columns:1.45fr 1fr;gap:6%;align-items:end;margin:6px 0 34px}
.meet-aside p{font-size:15px;line-height:1.8;color:var(--muted);max-width:390px}
.meet-watch{background:none;border:0;padding:0;font:inherit;cursor:pointer;margin-top:14px;min-height:44px;text-align:left}
.meet matthew-intro{display:block;width:100%;max-width:1320px}
.meet-note{font-size:13px;line-height:1.6;color:var(--muted);margin-top:12px;max-width:70ch}
.meet-person{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:56px;align-items:center;margin-top:64px}
.meet-welcome{background:#E8E9DF;padding:14px 14px 16px}
.meet-welcome matthew-welcome{display:block;width:100%}
.meet-label{display:block;margin-top:12px;font:11.5px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;color:var(--green)}
.meet-copy h3{font-size:clamp(26px,3.4vw,38px);line-height:1.15;margin:10px 0 16px;font-weight:600;color:var(--ink)}
.meet-copy p{font-size:16px;line-height:1.8;color:var(--muted);max-width:60ch}.meet-copy p+p{margin-top:14px}.meet-copy .text-link{margin-top:18px;display:inline-flex}
@media(max-width:850px){.meet-head{grid-template-columns:1fr;gap:16px}.meet-person{grid-template-columns:1fr;gap:28px}.meet-welcome{max-width:340px}}

.recognition{max-width:320px;margin:18px 0 6px}.recognition-img{margin-top:0}
