@font-face{font-family:matter;src:url(/_next/static/media/e2e63e84307592e3-s.p.ttf) format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:matter;src:url(/_next/static/media/6008137984dbd1df-s.p.ttf) format("truetype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:matter;src:url(/_next/static/media/c79a8fccc9a080f1-s.p.ttf) format("truetype");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:matter;src:url(/_next/static/media/db8f7776298f72f4-s.p.ttf) format("truetype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:matter Fallback;src:local("Arial");ascent-override:78.82%;descent-override:18.49%;line-gap-override:19.46%;size-adjust:102.76%}.__className_20f41a{font-family:matter,matter Fallback}.__variable_20f41a{--font-matter:"matter","matter Fallback"}

/*! 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-font-weight:initial}}}@layer theme{:host,:root{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-normal:400;--font-weight-medium:500;--default-font-family:var(--font-matter);--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{.rounded-full{border-radius:3.40282e+38px}.bg-background{background-color:var(--background)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.opacity-60{opacity:.6}.opacity-75{opacity:.75}}:root{color-scheme:light;--main-background:#f6f6f6;--background:#fff;--foreground:#171717;--accent:#3f3f3f;--accent-strong:#222;--focus-ring:#333;--primary-background:#1c1c1c;--primary-hover:#383838;--primary-foreground:#fff;--chip-background:#f1f1f1;--chip-foreground:#343434;--status-background:#f6f6f6;--status-border:#dedede;--status-foreground:#292929}:root[data-theme=dark]{color-scheme:dark;--main-background:#121212;--background:#1c1c1c;--foreground:#f0f0f0;--accent:#ddd;--accent-strong:#f2f2f2;--focus-ring:#e5e5e5;--primary-background:#ededed;--primary-hover:#fff;--primary-foreground:#191919;--chip-background:#2b2b2b;--chip-foreground:#e7e7e7;--status-background:#292929;--status-border:#454545;--status-foreground:#eee}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--main-background:#121212;--background:#1c1c1c;--foreground:#f0f0f0;--accent:#ddd;--accent-strong:#f2f2f2;--focus-ring:#e5e5e5;--primary-background:#ededed;--primary-hover:#fff;--primary-foreground:#191919;--chip-background:#2b2b2b;--chip-foreground:#e7e7e7;--status-background:#292929;--status-border:#454545;--status-foreground:#eee}}*{box-sizing:border-box}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}.skip-link{z-index:100;background:var(--primary-background);color:var(--primary-foreground);border-radius:8px;padding:12px 16px;font-weight:600;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}body{background:var(--main-background);color:var(--foreground);font-family:var(--font-matter),sans-serif;width:100%;height:auto;min-height:100vh}.site-shell{background:var(--background);width:min(100%,1280px);min-height:100vh;margin:0 auto}.main-container{width:100%;max-width:1280px;height:auto;min-height:calc(100vh - 80px);margin:0 auto;display:flex}.home-page{align-items:center;width:min(100% - 48px,1080px);min-height:calc(100svh - 80px);margin:0 auto;padding:clamp(48px,8vw,96px) 0 80px;display:flex}.home-hero{grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:clamp(40px,8vw,112px);display:grid}.writing-page{width:min(100% - 48px,980px);margin:0 auto;padding:52px 0 88px}.writing-page-header{max-width:700px}.writing-page-header .eyebrow{margin-bottom:10px}.writing-page-header h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.5rem,5.5vw,4rem);font-weight:600;line-height:1.02}.writing-page-header>p:last-child{max-width:620px;color:var(--foreground);margin:17px 0 0}@supports (color:color-mix(in lab,red,red)){.writing-page-header>p:last-child{color:color-mix(in srgb,var(--foreground) 72%,transparent)}}.writing-page-header>p:last-child{font-size:1rem;line-height:1.7}.writing-page-links{justify-content:flex-end;margin:28px 0 18px;display:flex}.writing-page .writing-grid{border-top:1px solid var(--foreground)}@supports (color:color-mix(in lab,red,red)){.writing-page .writing-grid{border-top:1px solid color-mix(in srgb,var(--foreground) 15%,transparent)}}.writing-page .writing-grid{padding-top:22px}.writing-page .writing-card h2{letter-spacing:-.025em;margin:17px 0 0;font-size:1.15rem;font-weight:600;line-height:1.4}.writing-page .writing-card h2 a{color:var(--foreground);text-decoration:none}.writing-page .writing-card h2 a:hover{text-underline-offset:4px;text-decoration:underline}.writing-profile-link,.writing-read-link{color:var(--accent-strong);align-items:center;gap:8px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.writing-profile-link{flex:none;padding-bottom:4px}.writing-profile-link:hover,.writing-read-link:hover{text-underline-offset:4px;text-decoration:underline}.writing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.writing-card{border:1px solid var(--foreground);flex-direction:column;align-items:flex-start;min-width:0;display:flex}@supports (color:color-mix(in lab,red,red)){.writing-card{border:1px solid color-mix(in srgb,var(--foreground) 13%,transparent)}}.writing-card{background:var(--background);border-radius:16px;padding:22px}.writing-meta{color:var(--foreground);flex-wrap:wrap;gap:8px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.writing-meta{color:color-mix(in srgb,var(--foreground) 62%,transparent)}}.writing-meta{font-size:.76rem}.writing-meta span:first-child{color:var(--accent-strong);font-weight:600}.writing-card h3{letter-spacing:-.025em;margin:17px 0 0;font-size:1.15rem;font-weight:600;line-height:1.4}.writing-card h3 a{color:var(--foreground);text-decoration:none}.writing-card h3 a:hover{text-underline-offset:4px;text-decoration:underline}.writing-card>p{color:var(--foreground);margin:10px 0 20px}@supports (color:color-mix(in lab,red,red)){.writing-card>p{color:color-mix(in srgb,var(--foreground) 72%,transparent)}}.writing-card>p{font-size:.9rem;line-height:1.65}.writing-read-link{margin-top:auto}.writing-read-link span{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.writing-read-link span{color:color-mix(in srgb,var(--foreground) 60%,transparent)}}.writing-read-link span{font-size:.78rem;font-weight:400}.hero-copy{max-width:700px}.eyebrow{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin:0 0 18px;font-size:.78rem;font-weight:600;line-height:1.5}.home-hero h1{letter-spacing:-.065em;max-width:720px;margin:0;font-size:clamp(2.7rem,6.4vw,5.4rem);font-weight:700;line-height:.99}.hero-summary{max-width:640px;color:var(--foreground);margin:24px 0 0}@supports (color:color-mix(in lab,red,red)){.hero-summary{color:color-mix(in srgb,var(--foreground) 76%,transparent)}}.hero-summary{font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.75}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{border:1px solid var(--foreground);justify-content:center;align-items:center;gap:9px;min-height:48px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.button{border:1px solid color-mix(in srgb,var(--foreground) 18%,transparent)}}.button{border-radius:999px;padding:0 19px;font-size:.9rem;font-weight:500;text-decoration:none;transition:transform .24s,background-color .24s,color .24s,border-color .24s}.button:hover{transform:translateY(-2px)}.button-primary{border-color:var(--primary-background);background:var(--primary-background);color:var(--primary-foreground)}.button-primary:hover{background:var(--primary-hover)}.button-secondary{background:var(--background);color:var(--foreground)}.hero-photo-wrap{aspect-ratio:1;border:1px solid var(--foreground);width:100%;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.hero-photo-wrap{border:1px solid color-mix(in srgb,var(--foreground) 12%,transparent)}}.hero-photo-wrap{background:var(--background);box-shadow:18px 20px 0 var(--accent);border-radius:48% 48% 42% 42%}@supports (color:color-mix(in lab,red,red)){.hero-photo-wrap{box-shadow:18px 20px 0 color-mix(in srgb,var(--accent) 14%,transparent)}}.hero-photo{object-fit:cover}.social-links{flex-wrap:wrap;gap:18px;margin-top:30px;display:flex}.social-links a{min-width:28px;min-height:28px;color:var(--foreground);justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.social-links a{color:color-mix(in srgb,var(--foreground) 68%,transparent)}}.social-links a{transition:color .24s}.social-links a:hover{color:var(--foreground)}.impact-strip{border-top:1px solid var(--foreground);grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:clamp(60px,9vw,110px);display:grid}@supports (color:color-mix(in lab,red,red)){.impact-strip{border-top:1px solid color-mix(in srgb,var(--foreground) 15%,transparent)}}.impact-strip{border-bottom:1px solid var(--foreground)}@supports (color:color-mix(in lab,red,red)){.impact-strip{border-bottom:1px solid color-mix(in srgb,var(--foreground) 15%,transparent)}}.impact-strip{padding:23px 0}.projects-impact{margin-top:20px}.projects-main{padding:36px 24px 80px;display:block}.projects-content{width:min(100%,980px);max-width:980px;margin:0 auto}.projects-header{max-width:720px;padding-bottom:36px}.projects-header .eyebrow{margin-bottom:10px}.projects-header h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:600}.projects-header>p:last-child{max-width:680px;color:var(--foreground);margin:14px 0 0}@supports (color:color-mix(in lab,red,red)){.projects-header>p:last-child{color:color-mix(in srgb,var(--foreground) 70%,transparent)}}.projects-header>p:last-child{line-height:1.7}.project-section-heading{justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 17px;display:flex}.project-section-heading h2{letter-spacing:-.035em;margin:0;font-size:1.4rem;font-weight:600}.project-section-heading>span{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.project-section-heading>span{color:color-mix(in srgb,var(--foreground) 58%,transparent)}}.project-section-heading>span{font-size:.8rem}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.project-card{border:1px solid var(--foreground);flex-direction:column;align-items:flex-start;min-width:0;display:flex}@supports (color:color-mix(in lab,red,red)){.project-card{border:1px solid color-mix(in srgb,var(--foreground) 13%,transparent)}}.project-card{background:var(--background);border-radius:16px;padding:21px}.project-card-header{justify-content:space-between;align-items:flex-start;gap:14px;width:100%;display:flex}.project-card-header h3{letter-spacing:-.025em;margin:0;font-size:1.12rem;font-weight:600}.project-card-title-group{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.case-study-status{border:1px solid var(--status-border);background:var(--status-background);color:var(--status-foreground);border-radius:999px;align-items:center;gap:7px;padding:5px 9px;font-size:.72rem;font-weight:500;display:inline-flex}.case-study-status:before{background:var(--accent);content:"";border-radius:50%;width:6px;height:6px}.project-period{color:var(--foreground);flex:none}@supports (color:color-mix(in lab,red,red)){.project-period{color:color-mix(in srgb,var(--foreground) 58%,transparent)}}.project-period{text-align:right;font-size:.76rem}.project-role{color:var(--accent);margin:6px 0 0;font-size:.82rem;font-weight:500;line-height:1.5}.project-description,.project-outcome{color:var(--foreground);margin:13px 0 0}@supports (color:color-mix(in lab,red,red)){.project-description,.project-outcome{color:color-mix(in srgb,var(--foreground) 72%,transparent)}}.project-description,.project-outcome{font-size:.9rem;line-height:1.65}.project-outcome strong{color:var(--foreground);font-weight:600}.project-technologies{flex-wrap:wrap;gap:6px;margin-top:15px;display:flex}.project-technologies span{background:var(--chip-background);color:var(--chip-foreground);border-radius:6px;padding:5px 8px;font-size:.7rem;line-height:1.3}.project-store-links{color:var(--foreground);flex-wrap:wrap;align-items:center;gap:9px;margin-top:16px;display:flex}@supports (color:color-mix(in lab,red,red)){.project-store-links{color:color-mix(in srgb,var(--foreground) 60%,transparent)}}.project-store-links{font-size:.8rem}.project-store-links a{color:var(--foreground);text-underline-offset:3px;text-decoration:underline}.project-links-note{color:var(--foreground);margin:16px 0 0}@supports (color:color-mix(in lab,red,red)){.project-links-note{color:color-mix(in srgb,var(--foreground) 54%,transparent)}}.project-links-note{font-size:.78rem;font-style:italic}.case-study-project-link{color:var(--accent-strong);align-items:center;gap:6px;margin-top:16px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.case-study-back:hover,.case-study-footer a:hover,.case-study-project-link:hover{text-underline-offset:4px;text-decoration:underline}.case-study-page{width:min(100% - 48px,1080px);margin:0 auto;padding:40px 0 88px}.case-study-back,.case-study-footer a{color:var(--foreground);align-items:center;gap:9px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.case-study-back,.case-study-footer a{color:color-mix(in srgb,var(--foreground) 70%,transparent)}}.case-study-back,.case-study-footer a{font-size:.9rem;text-decoration:none}.case-study-hero{max-width:900px;padding:68px 0 42px}.case-study-hero .eyebrow{margin-bottom:14px}.case-study-hero h1{letter-spacing:-.065em;margin:0;font-size:clamp(2.8rem,6vw,5rem);font-weight:600;line-height:1}.case-study-summary{max-width:820px;color:var(--foreground);margin:25px 0 0}@supports (color:color-mix(in lab,red,red)){.case-study-summary{color:color-mix(in srgb,var(--foreground) 76%,transparent)}}.case-study-summary{font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.8}.case-study-technologies{flex-wrap:wrap;gap:8px;margin-top:25px;display:flex}.case-study-technologies span{border:1px solid var(--foreground)}@supports (color:color-mix(in lab,red,red)){.case-study-technologies span{border:1px solid color-mix(in srgb,var(--foreground) 12%,transparent)}}.case-study-technologies span{color:var(--foreground);border-radius:999px;padding:7px 11px}@supports (color:color-mix(in lab,red,red)){.case-study-technologies span{color:color-mix(in srgb,var(--foreground) 75%,transparent)}}.case-study-technologies span{font-size:.76rem}.case-study-draft-note{border:1px solid var(--status-border);background:var(--status-background);border-radius:14px;align-items:flex-start;gap:13px;padding:17px 20px;display:flex}.case-study-draft-indicator{background:var(--accent);border-radius:50%;flex:none;width:9px;height:9px;margin-top:7px}.case-study-draft-note p{flex-direction:column;gap:4px;margin:0;font-size:.9rem;line-height:1.6;display:flex}.case-study-draft-note strong{font-weight:600}.case-study-draft-note p span{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.case-study-draft-note p span{color:color-mix(in srgb,var(--foreground) 72%,transparent)}}.case-study-body{grid-template-columns:220px minmax(0,1fr);gap:clamp(38px,7vw,90px);padding-top:70px;display:grid}.case-study-toc{flex-direction:column;align-self:start;gap:13px;display:flex;position:sticky;top:28px}.case-study-toc>p{margin:0 0 5px;font-size:.82rem;font-weight:600}.case-study-toc a{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.case-study-toc a{color:color-mix(in srgb,var(--foreground) 62%,transparent)}}.case-study-toc a{font-size:.8rem;line-height:1.4;text-decoration:none}.case-study-toc a:hover{color:var(--foreground)}.case-study-toc a span{color:var(--accent);margin-right:5px;font-size:.7rem;font-weight:600}.case-study-sections{min-width:0}.case-study-section{border-top:1px solid var(--foreground);grid-template-columns:42px minmax(0,1fr);gap:15px;display:grid}@supports (color:color-mix(in lab,red,red)){.case-study-section{border-top:1px solid color-mix(in srgb,var(--foreground) 15%,transparent)}}.case-study-section{padding:28px 0 34px;scroll-margin-top:30px}.case-study-section-number{color:var(--accent);padding-top:5px;font-size:.78rem;font-weight:600}.case-study-section h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.3rem,2.3vw,1.7rem);font-weight:600}.case-study-section p{max-width:650px;color:var(--foreground);margin:10px 0 0}@supports (color:color-mix(in lab,red,red)){.case-study-section p{color:color-mix(in srgb,var(--foreground) 68%,transparent)}}.case-study-section p{line-height:1.75}.case-study-footer{border-top:1px solid var(--foreground)}@supports (color:color-mix(in lab,red,red)){.case-study-footer{border-top:1px solid color-mix(in srgb,var(--foreground) 15%,transparent)}}.case-study-footer{margin-top:30px;padding-top:22px}.projects-approach,.projects-impact-section{margin-top:58px}.projects-approach{margin-bottom:62px}.additional-projects{border-top:1px solid var(--foreground)}@supports (color:color-mix(in lab,red,red)){.additional-projects{border-top:1px solid color-mix(in srgb,var(--foreground) 16%,transparent)}}.additional-projects{margin-top:22px;padding-top:22px}.additional-projects summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;font-size:1.1rem;font-weight:600;list-style-position:inside;display:flex}.additional-project-action{border:1px solid var(--foreground);align-items:center;gap:8px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.additional-project-action{border:1px solid color-mix(in srgb,var(--foreground) 18%,transparent)}}.additional-project-action{color:var(--foreground);border-radius:999px;padding:9px 13px}@supports (color:color-mix(in lab,red,red)){.additional-project-action{color:color-mix(in srgb,var(--foreground) 74%,transparent)}}.additional-project-action{font-size:.8rem;font-weight:500}.additional-project-action svg{transition:transform .16s}.additional-projects[open] .additional-project-action svg{transform:rotate(180deg)}.additional-projects[open] .project-grid{margin-top:18px}.impact-item{text-align:center;flex-direction:column;align-items:center;gap:5px;display:flex}.impact-item strong{letter-spacing:-.04em;font-size:clamp(1.35rem,2.7vw,2rem);font-weight:600}.impact-item span{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.impact-item span{color:color-mix(in srgb,var(--foreground) 65%,transparent)}}.impact-item span{font-size:.88rem}.principle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.principle-card{border:1px solid var(--foreground);min-height:210px}@supports (color:color-mix(in lab,red,red)){.principle-card{border:1px solid color-mix(in srgb,var(--foreground) 12%,transparent)}}.principle-card{background:var(--background);border-radius:18px;padding:23px}.principle-number{color:var(--accent);font-size:.78rem;font-weight:600}.principle-card h3{letter-spacing:-.025em;margin:25px 0 9px;font-size:1.12rem;font-weight:600}.principle-card p{color:var(--foreground);margin:0}@supports (color:color-mix(in lab,red,red)){.principle-card p{color:color-mix(in srgb,var(--foreground) 70%,transparent)}}.principle-card p{font-size:.92rem;line-height:1.65}@media (max-width:720px){.home-page{width:min(100% - 36px,560px);padding-top:44px}.home-hero{grid-template-columns:1fr;gap:34px}.writing-page{width:min(100% - 36px,560px);padding-top:38px}.writing-grid{grid-template-columns:1fr}.writing-card{padding:18px}.hero-photo-wrap{grid-row:1;width:170px;margin-left:6px}.hero-actions{align-items:stretch}.button{min-height:46px;padding:0 15px;font-size:.84rem}.impact-strip{gap:12px;margin-top:56px}.projects-impact{margin-top:26px}.projects-main{padding:28px 18px 56px}.projects-header{padding-bottom:28px}.project-grid{grid-template-columns:1fr}.project-card{padding:18px}.impact-item span{font-size:.75rem}.principle-grid{grid-template-columns:1fr}.principle-card{min-height:auto}.principle-card h3{margin-top:17px}}@media (prefers-reduced-motion:reduce){.additional-project-action svg,.button,.social-links a{transition:none}}@media (max-width:720px){.case-study-page{width:min(100% - 36px,560px);padding-top:28px}.case-study-hero{padding:52px 0 30px}.case-study-body{grid-template-columns:1fr;gap:34px;padding-top:44px}.case-study-toc{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid;position:static}.case-study-toc>p{grid-column:1/-1}.case-study-section{grid-template-columns:32px minmax(0,1fr);gap:10px;padding:23px 0 28px}}nav{min-height:80px}nav,nav>*{width:100%}nav>*{max-width:1280px;margin:0 auto}.site-nav-inner{justify-content:space-between;align-items:center;min-height:80px;padding:16px 32px;display:flex}.site-nav-links{align-items:center;gap:20px;display:flex}.theme-toggle{border:1px solid var(--foreground);justify-content:center;align-items:center;width:38px;min-height:38px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.theme-toggle{border:1px solid color-mix(in srgb,var(--foreground) 18%,transparent)}}.theme-toggle{background:var(--background);color:var(--foreground);cursor:pointer;font:inherit;white-space:nowrap;border-radius:999px;padding:0;font-size:.82rem;font-weight:500}.theme-toggle svg{width:16px;height:16px}@media (max-width:420px){.site-nav-inner{padding-left:16px;padding-right:16px}.site-nav-links{gap:12px}.theme-toggle{width:38px;padding:0}}body,body *,body :after,body :before{transition-property:color,background-color,border-color,box-shadow,fill,stroke,transform;transition-duration:.24s;transition-timing-function:ease}@media (prefers-reduced-motion:reduce){body,body *,body :after,body :before{transition-duration:.01ms}}@property --tw-font-weight{syntax:"*";inherits:false}