:root{--paper: #f2efe7;--paper-deep: #e8e3d7;--surface: #fbfaf6;--ink: #14243a;--ink-soft: #304056;--muted: #646b73;--line: #c9c4b8;--line-dark: #97958d;--accent: #b33d25;--accent-soft: #e6b3a6;--white: #ffffff;--display: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;--sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--motion-fast: .16s;--motion-base: .26s;--motion-reveal: .44s;--ease-out: cubic-bezier(.22, 1, .36, 1);color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{margin:0;min-width:320px;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.5}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,summary,input,textarea,select{font:inherit}button{color:inherit}img{display:block;max-width:100%}::selection{background:var(--accent);color:var(--white)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}#main-content:focus{outline:none}.site-shell{min-height:100vh}.page{min-height:60vh}.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;padding:.8rem 1rem;background:var(--ink);color:var(--white);font-weight:750}.skip-link:focus{top:1rem}.scroll-progress{position:absolute;right:0;bottom:-1px;left:0;height:2px;z-index:2;background:var(--accent);transform-origin:0 50%}.site-header{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line);background:var(--paper)}.nav-container{width:min(1320px,calc(100% - 48px));min-height:72px;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:inline-flex;align-items:center;gap:.85rem}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--ink);font-family:var(--display);font-size:1.05rem;font-weight:700;letter-spacing:-.08em;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.brand:hover .brand-mark{background:var(--ink);color:var(--white)}.brand-copy{display:flex;flex-direction:column;line-height:1.15}.brand-copy strong{font-size:.83rem}.brand-copy small{margin-top:.2rem;color:var(--muted);font-size:.68rem}.site-nav{display:flex;align-items:center;gap:1.55rem}.nav-link,.nav-resume{position:relative;padding-block:.5rem;font-size:.73rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nav-link:after{content:"";position:absolute;right:0;bottom:.12rem;left:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform var(--motion-fast) var(--ease-out)}.nav-link:hover:after,.nav-link.is-active:after{transform:scaleX(1);transform-origin:left}.nav-link.is-active{color:var(--accent)}.nav-resume{display:inline-flex;align-items:center;gap:.45rem;padding:.65rem .8rem;border:1px solid var(--ink);transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.nav-resume:hover{background:var(--ink);color:var(--white)}.nav-resume svg,.menu-button svg{width:17px;height:17px}.menu-button{width:42px;height:42px;display:none;place-items:center;border:1px solid var(--line-dark);background:transparent;cursor:pointer}.eyebrow,.hero-kicker{margin:0;color:var(--accent);font-size:.69rem;font-weight:850;letter-spacing:.13em;line-height:1.4;text-transform:uppercase}.eyebrow--light{color:#f2b4a4}.hero-kicker{display:flex;align-items:center;gap:.65rem;color:var(--ink-soft)}.hero-kicker>span:first-child,.availability-note>span:first-child,.contact-status>span:first-child{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--accent)}.needs-input{color:#7d321f;font-size:.7rem;font-weight:720;line-height:1.5}h1,h2,h3,p{overflow-wrap:break-word}.home-hero h1,.page-hero h1,.contact-hero h1,.section-intro h2,.page-cta h2,.story-heading h2,.archive-heading h2,.narrative-grid h2,.contact-brief-grid h2,.contact-closing h2,.not-found-inner h1{margin:0;font-family:var(--display);font-weight:400;letter-spacing:-.05em}.home-hero h1 em,.page-hero h1 em,.contact-hero h1 em{color:var(--accent);font-weight:400}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;padding:.8rem 1rem;border:1px solid var(--ink);font-size:.74rem;font-weight:820;letter-spacing:.07em;text-transform:uppercase;transition:transform var(--motion-fast) var(--ease-out),background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease}.button svg,.text-link svg,.inline-arrow-link svg,.card-link svg{width:17px;height:17px;transition:transform var(--motion-fast) var(--ease-out)}.button:hover{transform:translateY(-2px)}.button:hover svg,.inline-arrow-link:hover svg{transform:translate(3px)}.button-primary{background:var(--ink);color:var(--white)}.button-primary:hover{border-color:var(--accent);background:var(--accent)}.button-secondary{background:transparent}.button-secondary:hover{background:var(--surface)}.button-light{border-color:var(--white);color:var(--white)}.button-light:hover{background:var(--white);color:var(--ink)}.text-link,.inline-arrow-link,.card-link{width:fit-content;display:inline-flex;align-items:center;gap:.55rem;border-bottom:1px solid currentColor;padding-block:.4rem;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.card-link:hover svg{transform:translate(3px,-3px)}.home-hero{padding-block:clamp(4.5rem,8vw,7.5rem);border-bottom:1px solid var(--line)}.home-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:center;gap:clamp(3rem,8vw,7rem)}.home-hero h1{max-width:820px;margin-top:1.2rem;font-size:clamp(3.5rem,6.6vw,6.8rem);line-height:.98}.hero-lede{max-width:710px;margin:1.7rem 0 0;color:var(--ink-soft);font-size:clamp(1.05rem,1.6vw,1.24rem);line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:2rem}.availability-note{display:flex;align-items:flex-start;gap:.6rem;margin:1.6rem 0 0}.availability-note>span:first-child{margin-top:.35rem}.portrait{width:min(100%,420px);margin:0 0 0 auto;padding:.6rem .35rem 0}.portrait--compact{width:min(100%,390px)}.portrait-frame{position:relative;aspect-ratio:4 / 5;isolation:isolate;overflow:visible}.portrait-frame:before,.portrait-frame:after{content:"";position:absolute;pointer-events:none;transition:transform .42s var(--ease-out)}.portrait-frame:before{z-index:-2;top:9%;right:4%;bottom:1%;left:8%;border:1px solid var(--ink);border-radius:48% 48% .75rem .75rem/31% 31% .75rem .75rem;background:linear-gradient(90deg,transparent 49.8%,rgb(20 36 58 / 8%) 50%,transparent 50.2%),var(--paper-deep);transform:rotate(-1.6deg)}.portrait-frame:after{z-index:-1;right:-1%;bottom:5%;width:72%;aspect-ratio:1;border-radius:50%;background:var(--accent-soft);opacity:.72;transform:translate(2%,2%)}.portrait-frame img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 16px rgb(20 36 58 / 18%));transform-origin:center bottom;animation:portrait-arrive .72s var(--ease-out) both;transition:transform .42s var(--ease-out),filter .42s ease}.portrait-fallback{width:100%;height:100%}.portrait-fallback{display:grid;place-content:center;gap:1rem;background:linear-gradient(90deg,transparent 49.75%,rgb(20 36 58 / 11%) 50%,transparent 50.25%),linear-gradient(0deg,transparent 49.75%,rgb(20 36 58 / 11%) 50%,transparent 50.25%),var(--paper-deep);text-align:center}.portrait-initials{font-family:var(--display);font-size:clamp(5rem,11vw,8rem);letter-spacing:-.09em;line-height:.8}.portrait-prompt{font-size:.64rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.portrait-corner{z-index:3;position:absolute;width:46px;height:46px;pointer-events:none;transition:transform var(--motion-base) var(--ease-out)}.portrait-corner--top{top:5%;right:1%;border-top:3px solid var(--accent);border-right:3px solid var(--accent)}.portrait-corner--bottom{bottom:1%;left:5%;border-bottom:3px solid var(--ink);border-left:3px solid var(--ink)}.portrait:hover .portrait-frame img{filter:drop-shadow(0 22px 18px rgb(20 36 58 / 22%));transform:translateY(-7px) scale(1.012)}.portrait:hover .portrait-frame:before{transform:rotate(-.5deg) translate(-3px,3px)}.portrait:hover .portrait-frame:after{transform:translate(5%,-1%) scale(1.025)}.portrait:hover .portrait-corner--top{transform:translate(5px,-5px)}.portrait:hover .portrait-corner--bottom{transform:translate(-5px,5px)}@keyframes portrait-arrive{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.portrait figcaption{margin-top:.65rem;color:var(--muted);font-size:.66rem}.proof-band{border-bottom:1px solid var(--line);background:var(--surface)}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);align-items:stretch}.proof-grid>div{min-height:116px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem;padding:1.35rem;border-right:1px solid var(--line)}.proof-grid>div:first-child{padding-left:0}.proof-grid>div:nth-child(3){border-right:0}.proof-grid strong{font-family:var(--display);font-size:2rem;font-weight:400}.proof-grid span{max-width:160px;color:var(--muted);font-size:.69rem;line-height:1.45}.proof-grid>p{grid-column:1 / -1;margin:0;padding:.65rem 0;border-top:1px solid var(--line);color:var(--muted);font-size:.65rem}.site-section{padding-block:clamp(5rem,8vw,8rem);border-bottom:1px solid var(--line)}.section-tint{background:var(--paper-deep)}.section-intro{display:grid;grid-template-columns:minmax(140px,.32fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:start;margin-bottom:clamp(3rem,6vw,5.5rem)}.section-intro h2{max-width:860px;font-size:clamp(2.6rem,5vw,4.9rem);line-height:1.02}.section-intro>div>p{max-width:680px;margin:1.25rem 0 0;color:var(--muted);line-height:1.72}.project-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.project-grid-item{min-width:0;height:100%}.project-grid-item--featured{grid-column:1 / -1}.project-preview{height:100%;display:flex;flex-direction:column;border:1px solid var(--line-dark);background:var(--surface);transition:border-color var(--motion-fast) ease}.project-preview:before,.contribution-card:before,.principle-card:before,.conversation-card:before{content:"";height:3px;display:block;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform var(--motion-base) var(--ease-out)}.project-preview:hover,.project-preview:focus-within{border-color:var(--ink)}.project-preview:hover:before,.project-preview:focus-within:before,.contribution-card:hover:before,.principle-card:hover:before,.conversation-card:hover:before{transform:scaleX(1);transform-origin:left}.project-preview--featured{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)}.project-preview--featured:before{grid-column:1 / -1}.project-preview-media{overflow:clip}.project-preview-media .cover-art{height:100%;transition:transform var(--motion-base) var(--ease-out)}.project-preview:hover .project-preview-media .cover-art,.project-preview:focus-within .project-preview-media .cover-art{transform:scale(1.018)}.project-preview-body{flex:1;display:flex;flex-direction:column;padding:1.5rem}.project-card-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;color:var(--muted);font-size:.65rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase}.project-card-meta span:first-child{color:var(--accent)}.project-preview h3{margin:.7rem 0 .8rem;font-family:var(--display);font-size:clamp(1.9rem,3.5vw,3rem);font-weight:400;letter-spacing:-.035em;line-height:1.03}.project-preview-body>p{margin:0;color:var(--muted);line-height:1.68}.project-preview .card-link{margin-top:auto;padding-top:1.6rem}.section-link-row{display:flex;justify-content:flex-end;margin-top:2rem}.tag-list{display:flex;flex-wrap:wrap;gap:.42rem;margin:1.2rem 0 0;padding:0;list-style:none}.tag-list li{padding:.38rem .52rem;border:1px solid var(--line-dark);background:#fbfaf6b8;font-size:.63rem;font-weight:700;letter-spacing:.04em}.contribution-grid,.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.contribution-card,.principle-card{height:100%;padding:1.65rem;border-right:1px solid var(--line-dark);background:transparent}.contribution-grid>div:last-child .contribution-card,.principles-grid>div:last-child .principle-card{border-right:0}.contribution-card>span,.principle-card>span,.conversation-card>span,.capability-card>span{display:block;margin-top:1rem;color:var(--accent);font-size:.64rem;font-weight:800}.contribution-card h3,.principle-card h3,.experience-teaser h3,.timeline-body h3,.capability-card h3,.conversation-card h3,.personal-card strong{font-family:var(--display);font-weight:400;letter-spacing:-.03em}.contribution-card h3,.principle-card h3{margin:1.2rem 0 .7rem;font-size:1.7rem;line-height:1.1}.contribution-card p,.principle-card p{margin-bottom:0;color:var(--muted);font-size:.88rem;line-height:1.68}.home-story{background:var(--surface)}.story-grid,.narrative-grid,.contact-brief-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(340px,1.2fr);gap:clamp(3rem,8vw,8rem);align-items:start}.story-heading h2,.narrative-grid h2,.contact-brief-grid h2{margin-top:.8rem;font-size:clamp(2.5rem,4.6vw,4.7rem);line-height:1.03}.experience-teaser{padding:2rem;border-top:4px solid var(--accent);background:var(--ink);color:var(--white)}.experience-teaser-meta{display:flex;justify-content:space-between;gap:1rem;margin-bottom:2.6rem;color:#b8c0cb;font-size:.65rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.experience-teaser .eyebrow{color:#f2b4a4}.experience-teaser h3{margin:.55rem 0 1rem;font-size:2.2rem}.experience-teaser>p{color:#c8cfd8;line-height:1.7}.experience-teaser .experience-note{display:block;margin-top:1rem;color:#f2b4a4;font-size:.72rem;font-weight:760;letter-spacing:.04em}.experience-teaser .inline-arrow-link{margin-top:1.7rem;color:var(--white)}.page-cta{padding-block:clamp(4.8rem,8vw,7.5rem);background:var(--ink);color:var(--white)}.page-cta-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(3rem,8vw,8rem);align-items:end}.page-cta .eyebrow{color:#f2b4a4}.page-cta h2{max-width:760px;margin-top:.85rem;font-size:clamp(2.8rem,5.5vw,5.7rem);line-height:.98}.page-cta-grid>div:last-child>p{margin-top:0;color:#c8cfd8;line-height:1.72}.page-cta .button{margin-top:1.2rem}.page-hero{padding-block:clamp(4.8rem,8vw,8rem);border-bottom:1px solid var(--line)}.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:clamp(3rem,8vw,8rem);align-items:end}.page-hero h1{max-width:850px;margin-top:1rem;font-size:clamp(3.5rem,6.7vw,6.9rem);line-height:.96}.page-hero h1+p,.about-page-hero h1+p{max-width:720px;margin:1.6rem 0 0;color:var(--ink-soft);font-size:1.08rem;line-height:1.72}.work-index-card{min-height:275px;display:flex;flex-direction:column;padding:1.4rem;border:1px solid var(--ink);background:var(--surface)}.work-index-card>span,.work-index-card>p{color:var(--muted);font-size:.65rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.work-index-card strong{margin-top:1.8rem;font-family:var(--display);font-size:5.3rem;font-weight:400;line-height:.85}.work-index-card>p{margin-top:.8rem}.work-index-card>a{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1rem;border-top:1px solid var(--line);font-size:.7rem;font-weight:800;text-transform:uppercase}.work-index-card>a svg{width:17px;transition:transform var(--motion-fast) var(--ease-out)}.work-index-card:hover>a svg{transform:translateY(4px)}.work-list-section{padding-block:clamp(5rem,8vw,8rem)}.project-detail-list{display:grid;gap:clamp(5rem,9vw,8rem)}.project-detail-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(2.5rem,5vw,5rem);padding-bottom:clamp(4rem,7vw,6rem);border-bottom:1px solid var(--ink)}.project-detail-list>div:last-child .project-detail-card{padding-bottom:0;border-bottom:0}.project-detail-media{margin:0;overflow:clip}.project-detail-media .cover-art{transition:transform var(--motion-base) var(--ease-out)}.project-detail-card:hover .project-detail-media .cover-art{transform:scale(1.012)}.project-detail-media figcaption{margin-top:.6rem;color:var(--muted);font-size:.64rem}.project-detail-copy h2{margin:.7rem 0 1rem;font-family:var(--display);font-size:clamp(2.5rem,4.2vw,4.2rem);font-weight:400;letter-spacing:-.045em;line-height:1}.project-detail-summary{margin:0;color:var(--ink-soft);font-size:1.06rem;line-height:1.7}.project-facts{display:grid;margin:2rem 0 0}.project-facts>div{display:grid;grid-template-columns:85px 1fr;gap:1rem;padding:.85rem 0;border-top:1px solid var(--line)}.project-facts dt{color:var(--muted);font-size:.64rem;font-weight:820;letter-spacing:.08em;text-transform:uppercase}.project-facts dd{margin:0;font-size:.88rem;line-height:1.62}.project-disclosure,.skills-disclosure{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-disclosure summary,.skills-disclosure summary{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;font-size:.7rem;font-weight:820;letter-spacing:.08em;list-style:none;text-transform:uppercase}.project-disclosure summary::-webkit-details-marker,.skills-disclosure summary::-webkit-details-marker{display:none}.project-disclosure summary svg,.skills-disclosure summary svg{width:17px;transition:transform var(--motion-fast) var(--ease-out)}.project-disclosure[open] summary svg,.skills-disclosure[open] summary svg{transform:rotate(180deg)}.project-disclosure[open]>div,.skills-disclosure[open]>div{animation:disclosure-in var(--motion-base) var(--ease-out) both}.project-disclosure>div{padding:.2rem 0 1rem}.project-disclosure ul{margin:0;padding-left:1.1rem;color:var(--muted);font-size:.86rem;line-height:1.65}.project-disclosure li+li{margin-top:.45rem}.project-status{margin:1rem 0 0}@keyframes disclosure-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.cover-art{min-height:430px;display:grid;grid-template-rows:auto 1fr auto;padding:1.1rem;border:1px solid var(--ink);overflow:clip}.cover-art--compact{min-height:330px;border:0}.cover-art--operations{background:#c8d3c8}.cover-art--learning{background:#d7cdc1}.cover-art--payments{background:#c8ced8}.cover-toolbar,.cover-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.6rem;font-weight:780;letter-spacing:.09em;text-transform:uppercase}.cover-footer strong{font-size:.67rem}.operations-ui{width:min(88%,440px);aspect-ratio:1.24;align-self:center;justify-self:center;display:grid;grid-template-columns:18% 1fr;border:1px solid var(--ink);background:var(--surface);box-shadow:16px 16px #14243a21}.operations-sidebar{display:flex;flex-direction:column;gap:.62rem;padding:.9rem .7rem;border-right:1px solid var(--line-dark);background:var(--ink)}.operations-sidebar i,.ui-title,.metric-row i,.table-lines i{display:block;background:var(--paper-deep)}.operations-sidebar i{height:6px;opacity:.72}.operations-sidebar i:first-child{width:65%;height:17px;margin-bottom:.65rem;background:var(--accent-soft)}.operations-main{padding:1.1rem}.ui-title{width:34%;height:11px;background:var(--ink)}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:1.1rem}.metric-row i{height:54px;border:1px solid var(--line)}.table-lines{display:grid;gap:.5rem;margin-top:1.1rem}.table-lines i{height:7px}.learning-ui{width:min(56%,250px);aspect-ratio:.64;align-self:center;justify-self:center;padding:1rem;border:1px solid var(--ink);border-radius:1.55rem;background:var(--surface);box-shadow:16px 16px #14243a21}.phone-speaker{width:28%;height:5px;margin:0 auto 1.35rem;border-radius:99px;background:var(--ink)}.lesson-card{display:grid;gap:.5rem;padding:.9rem;border:1px solid var(--line);background:var(--paper-deep)}.lesson-card i{display:block;height:7px;background:var(--ink)}.lesson-card i:nth-child(2){width:76%}.lesson-card i:nth-child(3){width:52%;background:var(--accent)}.lesson-progress{height:7px;margin-top:1.1rem;background:var(--paper-deep)}.lesson-progress span{width:68%;height:100%;display:block;background:var(--accent)}.message-row{display:grid;gap:.7rem;margin-top:1.2rem}.message-row i{width:78%;height:34px;display:block;border:1px solid var(--line);background:var(--paper-deep)}.message-row i:last-child{width:62%;margin-left:auto;background:var(--accent-soft)}.payments-ui{width:min(82%,390px);align-self:center;justify-self:center;padding:1.3rem;border:1px solid var(--ink);background:var(--surface);box-shadow:16px 16px #14243a21}.payment-head{display:flex;align-items:center;justify-content:space-between}.payment-head i{width:34%;height:9px;background:var(--ink)}.payment-head span{width:24px;height:24px;border-radius:50%;background:var(--accent)}.payment-amount{width:46%;height:24px;margin-top:1.35rem;background:var(--ink)}.payment-chart{height:100px;display:flex;align-items:end;gap:.55rem;margin-top:1.25rem;padding-bottom:.45rem;border-bottom:1px solid var(--line-dark)}.payment-chart i{flex:1;height:45%;background:var(--accent-soft)}.payment-chart i:nth-child(2){height:72%}.payment-chart i:nth-child(3){height:55%}.payment-chart i:nth-child(4){height:88%;background:var(--accent)}.payment-chart i:nth-child(5){height:68%}.payment-rows{display:grid;gap:.55rem;margin-top:.9rem}.payment-rows i{height:6px;background:var(--paper-deep)}.archive-section{background:var(--paper-deep)}.archive-grid{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);gap:clamp(3rem,7vw,7rem)}.archive-heading h2{margin-top:.8rem;font-size:clamp(2.5rem,4.5vw,4.6rem);line-height:1.03}.archive-heading>p:last-child{color:var(--muted);line-height:1.7}.placeholder-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.project-placeholder{min-height:300px;display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:1.4rem;border:1px dashed var(--line-dark);background:#fbfaf68c;transition:border-color var(--motion-fast) ease,background-color var(--motion-fast) ease}.project-placeholder:hover{border-color:var(--ink);background:var(--surface)}.placeholder-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.65rem;font-weight:800}.placeholder-top svg{width:18px;transition:transform var(--motion-base) var(--ease-out)}.project-placeholder:hover .placeholder-top svg{transform:rotate(90deg)}.project-placeholder h3{margin:0;color:#7d321f;font-family:var(--display);font-size:1.55rem;font-weight:400}.project-placeholder p{margin-bottom:0;color:var(--muted);font-size:.84rem;line-height:1.65}.project-placeholder small{color:var(--muted);font-size:.61rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.about-page-hero{padding-block:clamp(4.8rem,8vw,8rem);border-bottom:1px solid var(--line)}.about-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(3rem,8vw,7rem);align-items:center}.about-page-hero h1{max-width:850px;margin-top:1rem;font-size:clamp(3.5rem,6.5vw,6.7rem);line-height:.97}.about-page-hero .button{margin-top:1.7rem}.about-narrative{background:var(--surface)}.narrative-copy{max-width:700px}.narrative-copy p{margin-top:0;color:var(--muted);font-size:1rem;line-height:1.8}.narrative-copy p:first-child{color:var(--ink-soft);font-size:1.12rem}.principle-card{min-height:270px;display:flex;flex-direction:column}.principle-card p{margin-top:auto}.timeline-list{display:grid;gap:3.2rem}.timeline-entry{display:grid;grid-template-columns:28px minmax(140px,.3fr) minmax(0,1fr);gap:clamp(1.4rem,4vw,4rem);align-items:start}.timeline-marker{position:relative;min-height:100%}.timeline-marker:before{content:"";position:absolute;top:12px;bottom:0;left:6px;width:1px;background:var(--line-dark);transform-origin:top;animation:timeline-grow .7s var(--ease-out) both}.timeline-marker span{position:relative;z-index:1;width:13px;height:13px;display:block;border:3px solid var(--paper);border-radius:50%;background:var(--accent);outline:1px solid var(--accent)}.timeline-list>.timeline-entry:not(:last-child) .timeline-marker:before{bottom:-3.2rem}.timeline-list>.timeline-entry:last-child .timeline-marker:before{display:none}@keyframes timeline-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.timeline-meta{display:flex;flex-direction:column;gap:.4rem;color:var(--muted);font-size:.67rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.timeline-body h3{margin:.55rem 0 1rem;font-size:clamp(2rem,3.2vw,3.15rem);line-height:1.03}.timeline-summary{max-width:770px;color:var(--ink-soft);font-size:1.07rem;line-height:1.7}.timeline-body ul{max-width:820px;margin:1.5rem 0 0;padding:0;list-style:none}.timeline-body li{position:relative;padding:.8rem 0 .8rem 1.45rem;border-top:1px solid var(--line);font-size:.88rem;line-height:1.6}.timeline-body li:before{content:"↳";position:absolute;left:0;color:var(--accent)}.timeline-note{width:fit-content;margin:1rem 0 0;padding:.35rem .55rem;border:1px solid var(--line-dark);color:var(--ink-soft);font-size:.68rem;font-weight:780;letter-spacing:.08em;text-transform:uppercase}.capability-card-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.capability-card{height:100%;padding:1.5rem;border-right:1px solid var(--line-dark);transition:background-color var(--motion-fast) ease}.capability-card-grid>div:last-child .capability-card{border-right:0}.capability-card:hover{background:#fbfaf66b}.capability-card h3{margin:1rem 0;font-size:1.5rem}.capability-card ul{margin:0;padding:0;color:var(--muted);font-size:.82rem;line-height:1.82;list-style:none}.skills-disclosure{margin-top:2rem}.skills-disclosure>div{max-width:850px;padding:0 0 1rem;color:var(--muted);line-height:1.7}.certificate-list{display:grid;gap:1.2rem}.certificate-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);border:1px solid var(--line-dark);background:var(--surface)}.certificate-media{position:relative;min-height:360px;display:block;overflow:hidden;background:var(--paper-deep)}.certificate-media img{width:100%;height:100%;display:block;padding:1rem;object-fit:contain;transition:transform var(--motion-base) var(--ease-out)}.certificate-media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(135deg,transparent 55%,rgb(20 36 58 / 10%))}.certificate-media>span{position:absolute;right:1rem;bottom:1rem;z-index:1;display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .7rem;background:var(--ink);color:var(--white);font-size:.66rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.certificate-media>span svg{width:15px;transition:transform var(--motion-fast) var(--ease-out)}.certificate-media:hover img{transform:scale(1.018)}.certificate-media:hover>span svg{transform:translate(2px,-2px)}.certificate-copy{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(1.5rem,3vw,2.6rem)}.certificate-topline{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .8rem;color:var(--accent);font-size:.66rem;font-weight:800;letter-spacing:.08em;line-height:1.5;text-transform:uppercase}.certificate-copy h3{margin:1.2rem 0 .9rem;font-family:var(--display);font-size:clamp(2rem,3.5vw,3.35rem);font-weight:400;letter-spacing:-.04em;line-height:1.02}.certificate-copy p{margin:0;color:var(--muted);line-height:1.7}.certificate-copy .inline-arrow-link{margin-top:auto;padding-top:2rem}.certificate-slot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem}.certificate-slot{min-height:190px;display:flex;flex-direction:column;justify-content:space-between;padding:1.3rem;border:1px dashed var(--line-dark);background:#fbfaf68c}.certificate-slot>div{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.65rem;font-weight:800;letter-spacing:.08em}.certificate-slot>div svg{width:18px}.certificate-slot h3{margin:1rem 0 0;color:#7d321f;font-family:var(--display);font-size:1.65rem;font-weight:400}.certificate-slot p{margin:1rem 0 0;color:var(--muted);font-size:.8rem;line-height:1.6}.education-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:clamp(3rem,7vw,7rem);align-items:start}.education-main{padding-top:1rem;border-top:4px solid var(--accent)}.education-main h2{margin:.85rem 0 .3rem;font-family:var(--display);font-size:clamp(2.7rem,4.6vw,4.8rem);font-weight:400;letter-spacing:-.045em;line-height:1}.education-school{color:var(--muted)}.education-stats{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin:2rem 0 1rem;padding-block:1rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.74rem;font-weight:800}.coursework-list{display:flex;flex-wrap:wrap;gap:.5rem;margin:2rem 0 0;padding:0;list-style:none}.coursework-list li{padding:.42rem .56rem;border:1px solid var(--line);color:var(--muted);font-size:.68rem}.personal-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.personal-card{min-height:190px;display:flex;flex-direction:column;padding:1.3rem;border:1px solid var(--line-dark);background:var(--surface);transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) ease}.personal-card:hover{transform:translateY(-3px);border-color:var(--ink)}.personal-card>span{color:var(--accent);font-size:.64rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.personal-card strong{margin-top:auto;font-size:2.6rem}.personal-card p{margin-bottom:0;color:var(--muted);font-size:.8rem;line-height:1.6}.personal-card--placeholder{grid-column:1 / -1;min-height:140px;border-style:dashed}.personal-card--placeholder p{margin-top:auto;color:#7d321f}.contact-hero{padding-block:clamp(5rem,9vw,9rem);background:var(--ink);color:var(--white)}.contact-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:clamp(3rem,8vw,8rem);align-items:end}.contact-hero h1{margin-top:1rem;font-size:clamp(3.7rem,7vw,7rem);line-height:.95}.contact-hero h1 em{color:#f2b4a4}.contact-hero-copy>p{margin-top:0;color:#c8cfd8;font-size:1.08rem;line-height:1.75}.contact-status{display:flex;align-items:flex-start;gap:.6rem;margin-top:1.5rem}.contact-status>span:first-child{margin-top:.35rem;background:#f2b4a4}.contact-status .needs-input{color:#f2b4a4}.contact-method-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.contact-method-card{min-height:132px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1.25rem;border:1px solid var(--line-dark);background:var(--surface);transition:border-color var(--motion-fast) ease,background-color var(--motion-fast) ease}.contact-method-card:hover,.contact-method-card:focus-visible{border-color:var(--ink);background:var(--white)}.contact-method-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--ink);transition:transform var(--motion-base) var(--ease-out),background-color var(--motion-fast) ease,color var(--motion-fast) ease}.contact-method-card:hover .contact-method-icon{transform:rotate(-4deg);background:var(--ink);color:var(--white)}.contact-method-icon svg,.contact-method-card>svg{width:18px;height:18px}.contact-method-card>svg{transition:transform var(--motion-fast) var(--ease-out)}.contact-method-card:hover>svg{transform:translate(3px,-3px)}.contact-method-card div{display:flex;flex-direction:column;gap:.35rem}.contact-method-card div>span{color:var(--accent);font-size:.64rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.contact-method-card div>strong{font-size:.86rem;line-height:1.45}.contact-method-card--pending{border-style:dashed}.conversation-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}.conversation-card{min-height:265px;height:100%;padding:1.4rem;border-right:1px solid var(--line-dark)}.conversation-grid>div:last-child .conversation-card{border-right:0}.conversation-card h3{margin:1.2rem 0 .7rem;font-size:1.42rem;line-height:1.1}.conversation-card p{color:var(--muted);font-size:.82rem;line-height:1.65}.contact-brief-grid>div:first-child>p:last-child{color:var(--muted);line-height:1.7}.brief-card{padding:1.5rem;border-top:4px solid var(--accent);background:var(--surface)}.brief-card-head{display:flex;align-items:center;gap:.7rem;color:var(--accent);font-size:.66rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.brief-card-head svg{width:18px}.brief-card ol{margin:1.8rem 0;padding:0;list-style:none}.brief-card li{display:grid;grid-template-columns:36px 1fr;gap:.7rem;padding:.85rem 0;border-top:1px solid var(--line);transition:transform var(--motion-fast) var(--ease-out)}.brief-card li:hover{transform:translate(4px)}.brief-card li span{color:var(--accent);font-size:.66rem;font-weight:800}.brief-card>p{color:var(--muted);font-size:.78rem;line-height:1.6}.contact-closing{padding-block:clamp(4rem,7vw,6.5rem);background:var(--ink);color:var(--white)}.contact-closing-grid{display:flex;align-items:end;justify-content:space-between;gap:2rem}.contact-closing h2{margin-top:.7rem;font-size:clamp(2.7rem,4.8vw,4.8rem);line-height:1}.not-found-inner{min-height:66vh;display:grid;place-items:center start}.not-found-inner>div{max-width:760px}.not-found-inner h1{margin-top:1rem;font-size:clamp(3.4rem,7vw,6.8rem);line-height:.97}.not-found-inner p{color:var(--muted);font-size:1.05rem}.not-found-inner .button{margin-top:1.2rem}.site-footer{background:var(--ink);color:#c8cfd8}.footer-top{min-height:150px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:clamp(2rem,5vw,5rem);padding-block:2rem}.footer-brand{color:var(--white);font-family:var(--display);font-size:1.55rem}.footer-top>div:first-child p{margin:.3rem 0 0;font-size:.68rem}.footer-top nav{display:flex;flex-wrap:wrap;gap:1.2rem}.footer-top nav a{font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:color var(--motion-fast) ease}.footer-top nav a:hover{color:var(--white)}.footer-socials{display:flex;gap:.55rem}.footer-socials a{width:38px;height:38px;display:grid;place-items:center;border:1px solid #5b687b;transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) ease}.footer-socials a:hover{transform:translateY(-3px);border-color:var(--white)}.footer-socials svg{width:16px}.footer-bottom{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid #455367;color:#9da8b6;font-size:.62rem;letter-spacing:.07em;text-transform:uppercase}@media(hover:hover)and (pointer:fine){.project-preview,.project-detail-card,.contribution-card,.principle-card,.conversation-card,.contact-method-card,.personal-card,.project-placeholder{cursor:default}}@media(max-width:1050px){.home-hero-grid,.about-hero-grid,.page-hero-grid,.contact-hero-grid,.page-cta-grid,.education-layout{grid-template-columns:1fr}.home-portrait,.about-portrait{max-width:390px}.portrait{margin:1rem 0 0}.work-index-card{min-height:190px}.project-detail-card,.certificate-card{grid-template-columns:1fr}.certificate-media{min-height:0;aspect-ratio:16 / 10}.archive-grid{grid-template-columns:1fr}.conversation-grid{grid-template-columns:repeat(2,1fr)}.conversation-grid>div:nth-child(2) .conversation-card{border-right:0}.conversation-grid>div:nth-child(-n+2) .conversation-card{border-bottom:1px solid var(--line-dark)}}@media(max-width:900px){.project-preview--featured,.story-grid,.narrative-grid,.contact-brief-grid{grid-template-columns:1fr}.capability-card-grid{grid-template-columns:1fr 1fr}.capability-card-grid>div:nth-child(2) .capability-card{border-right:0}.capability-card-grid>div:last-child{grid-column:1 / -1}.capability-card-grid>div:last-child .capability-card{border-top:1px solid var(--line-dark)}.footer-top{grid-template-columns:1fr auto}.footer-top nav{grid-column:1 / -1;grid-row:2}}@media(max-width:760px){.container,.nav-container{width:min(1180px,calc(100% - 32px))}.nav-container{min-height:64px}.brand-copy small{display:none}.menu-button{display:grid}.site-nav{position:absolute;top:64px;right:0;left:0;min-height:calc(100vh - 64px);flex-direction:column;align-items:stretch;gap:0;padding:1.15rem 1rem 2rem;border-bottom:1px solid var(--line);background:var(--paper);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .18s ease,transform .18s var(--ease-out),visibility .18s}.site-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.site-nav .nav-link{width:100%;padding:1rem 0;border-bottom:1px solid var(--line);opacity:0;transform:translateY(-5px);transition:opacity .18s ease,transform .18s var(--ease-out),color var(--motion-fast) ease}.site-nav.is-open .nav-link{opacity:1;transform:translateY(0)}.site-nav.is-open .nav-link:nth-child(2){transition-delay:30ms}.site-nav.is-open .nav-link:nth-child(3){transition-delay:60ms}.site-nav.is-open .nav-link:nth-child(4){transition-delay:90ms}.nav-resume{width:max-content;margin-top:1.2rem;padding-inline:.8rem}.home-hero,.page-hero,.about-page-hero{padding-block:4rem 4.8rem}.home-hero h1,.page-hero h1,.about-page-hero h1,.contact-hero h1{font-size:clamp(3.15rem,14.5vw,5.3rem)}.hero-actions{align-items:stretch}.proof-grid{grid-template-columns:1fr}.proof-grid>div,.proof-grid>div:first-child{min-height:82px;padding:1rem 0;border-right:0;border-bottom:1px solid var(--line)}.proof-grid>p{border-top:0}.section-intro{grid-template-columns:1fr;gap:1.2rem}.section-intro h2{font-size:clamp(2.5rem,11.5vw,4rem)}.project-preview-grid{grid-template-columns:1fr}.project-grid-item--featured{grid-column:auto}.contribution-grid,.principles-grid,.capability-card-grid,.contact-method-grid,.conversation-grid{grid-template-columns:1fr}.contribution-card,.principle-card,.capability-card,.conversation-card,.contribution-grid>div:last-child .contribution-card,.principles-grid>div:last-child .principle-card,.capability-card-grid>div:last-child .capability-card,.conversation-grid>div:nth-child(2) .conversation-card,.conversation-grid>div:last-child .conversation-card{border-right:0;border-bottom:1px solid var(--line-dark)}.capability-card-grid>div:last-child{grid-column:auto}.capability-card-grid>div:last-child .capability-card{border-top:0}.timeline-entry{grid-template-columns:20px 1fr;gap:1rem}.timeline-meta{grid-column:2;flex-direction:row}.timeline-body{grid-column:2}.timeline-marker{grid-row:1 / span 2}.placeholder-grid,.certificate-slot-grid,.personal-card-grid{grid-template-columns:1fr}.personal-card--placeholder{grid-column:auto}.contact-closing-grid{align-items:flex-start;flex-direction:column}.footer-top{grid-template-columns:1fr}.footer-top nav{grid-column:auto;grid-row:auto}.footer-bottom{align-items:flex-start;flex-direction:column;justify-content:center;padding-block:1rem}}@media(max-width:520px){.hero-actions{flex-direction:column}.button{width:100%}.text-link{margin-top:.25rem}.cover-art{min-height:330px;padding:.85rem}.cover-art--compact{min-height:290px}.operations-ui{width:95%;box-shadow:9px 9px #14243a21}.learning-ui{width:68%;box-shadow:9px 9px #14243a21}.payments-ui{width:92%;box-shadow:9px 9px #14243a21}.project-facts>div{grid-template-columns:1fr;gap:.3rem}.project-detail-copy h2{font-size:2.55rem}.contact-method-card{grid-template-columns:auto 1fr}.contact-method-card>svg{display:none}.footer-top nav{display:grid;grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
