@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{--ink:#18231d;--muted:#66736c;--green:#169b5b;--green-dark:#087443;--mint:#eaf8ef;--paper:#fbfcfa;--line:#dfe7e1;--night:#14221a;--white:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}h1,h2,h3{letter-spacing:-.035em;margin:0;font-family:Manrope,sans-serif;line-height:1.08}p{margin:0 0 1rem}.shell{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.narrow{max-width:820px}.site-header{height:82px;padding:0 max(20px,calc((100vw - var(--max))/2));border-bottom:1px solid var(--line);z-index:20;backdrop-filter:blur(14px);background:#fbfcfaeb;align-items:center;gap:30px;display:flex;position:sticky;top:0}.brand{white-space:nowrap;align-items:center;gap:11px;font:700 1rem Manrope;display:flex}.brand-mark{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.site-header nav{gap:25px;margin-left:auto;display:flex}.site-header nav a,.small-button{font-size:.9rem;font-weight:600}.site-header nav a:hover{color:var(--green)}.small-button{border:1px solid var(--ink);border-radius:99px;padding:8px 15px}.hero{padding:120px 0 70px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--green);margin-bottom:18px;font-size:.74rem;font-weight:700}.hero h1,.page-hero h1{max-width:1000px;font-size:clamp(3rem,8vw,6.8rem)}.rotating{color:var(--green);transition:opacity .2s,transform .2s;display:inline-block}.rotating.swap{opacity:0;transform:translateY(8px)}.hero-copy{max-width:760px;color:var(--muted);margin:32px 0;font-size:clamp(1.15rem,2.5vw,1.55rem)}.actions{flex-wrap:wrap;align-items:center;gap:25px;display:flex}.button{background:var(--green);color:#fff;border-radius:7px;padding:13px 22px;font-weight:700;display:inline-flex;box-shadow:0 8px 20px #169b5b29}.button:hover{background:var(--green-dark);transform:translateY(-1px)}.button.secondary{color:var(--ink);border:1px solid var(--ink);box-shadow:none;background:0 0}.text-link{font-weight:700}.text-link:hover{color:var(--green)}.signal-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);grid-template-columns:repeat(4,1fr);margin-top:95px;padding:20px 0;font-size:.86rem;display:grid}.signal-row span+span{border-left:1px solid var(--line);padding-left:24px}.section{padding:105px 0}.section-heading{max-width:730px;margin-bottom:45px}.section-heading h2,.cta h2{margin-bottom:18px;font-size:clamp(2.1rem,4.5vw,4rem)}.section-heading>p:last-child{color:var(--muted);font-size:1.16rem}.section-heading.horizontal{justify-content:space-between;align-items:end;max-width:none;display:flex}.card-grid{gap:18px;display:grid}.card-grid.three{grid-template-columns:repeat(3,1fr)}.card-grid.two{grid-template-columns:repeat(2,1fr)}.card{border:1px solid var(--line);background:#fff;border-radius:12px;flex-direction:column;align-items:flex-start;min-height:280px;padding:30px;display:flex}.card:hover{border-color:#a7cdb6;transform:translateY(-3px);box-shadow:0 20px 50px #18231d0f}.card-index{color:var(--green);margin-bottom:55px;font:600 .8rem Manrope}.card h3,.card h2{margin-bottom:15px;font-size:1.5rem}.card p{color:var(--muted)}.card a{color:var(--green-dark);margin-top:auto;font-weight:700}.featured-card{background:var(--mint)}.dark-section{background:var(--night);color:#fff}.split{grid-template-columns:1fr 1fr;gap:90px;display:grid}.split h2{font-size:clamp(2.3rem,5vw,4.6rem)}.split>div:last-child{color:#bbcac0;font-size:1.18rem}.eyebrow.light{color:#62d28f}.post-list{border-top:1px solid var(--line)}.post-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:30px;padding:30px 5px;display:grid}.post-row:hover h2,.post-row:hover h3{color:var(--green)}.post-row h2,.post-row h3{margin-bottom:8px;font-size:1.55rem}.post-row p{color:var(--muted);margin-bottom:8px}.post-date{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem!important}.post-row>span{font-size:1.5rem}.cta{text-align:center;background:var(--mint);border-radius:16px;margin-block:60px 110px;padding:80px 20px}.cta p:not(.eyebrow){color:var(--muted);font-size:1.15rem}.cta .button{margin-top:15px}.page-hero{padding:100px 0 75px}.page-hero>p:last-child{color:var(--muted);max-width:720px;margin-top:25px;font-size:1.35rem}.page-section{padding-bottom:110px}.timeline{border-top:1px solid var(--line)}.timeline article{border-bottom:1px solid var(--line);grid-template-columns:190px 1fr;gap:35px;padding:38px 0;display:grid}.timeline article>span{color:var(--green);font-size:.85rem;font-weight:700}.timeline h2{font-size:1.8rem}.timeline p{color:var(--muted);max-width:720px}.timeline a{color:var(--green-dark);font-weight:700}.story h2{font-size:2rem}.story p{font-size:1.15rem}.tint{background:var(--mint)}.stat-grid{grid-template-columns:repeat(4,1fr);gap:30px;display:grid}.stat-grid div{flex-direction:column;gap:10px;display:flex}.stat-grid strong{color:var(--green-dark);font:800 2.2rem Manrope}.stat-grid span{color:var(--muted)}.project-card{min-height:330px}.project-card .card-index{margin-bottom:25px}.tag-row{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.tag{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:99px;padding:5px 9px;font-size:.76rem}.prose{font-size:1.08rem}.prose.large{font-size:1.18rem}.prose h2{margin:50px 0 16px;font-size:2rem}.prose p,.prose li{color:#3d4b43}.prose li{margin-bottom:10px}.article{padding:90px 0 120px}.article h1{margin:15px 0 25px;font-size:clamp(2.6rem,6vw,5rem)}.article-dek{color:var(--muted);font-size:1.35rem}.article .prose{margin-top:60px}.back-link{color:var(--green-dark);font-weight:700}.resume-hero{justify-content:space-between;align-items:end;display:flex}.resume-grid{grid-template-columns:280px 1fr;gap:75px;display:grid}.resume-grid aside{border-right:1px solid var(--line);padding-right:35px}.resume-grid aside h3{margin:32px 0 8px;font-size:1rem}.resume-grid aside h3:first-child{margin-top:0}.resume-grid aside p{color:var(--muted);font-size:.9rem}.resume-main>h2{margin-bottom:25px;font-size:2rem}.resume-main article{border-top:1px solid var(--line);grid-template-columns:1fr auto;column-gap:25px;padding:28px 0;display:grid}.resume-main article h3{font-size:1.35rem}.resume-main article p,.resume-main article span{color:var(--muted);font-size:.9rem}.resume-main article ul{grid-column:1/-1;padding-left:20px}.contact-page{padding:130px 0}.contact-page h1{font-size:clamp(3rem,7vw,6rem)}.contact-page>p:not(.eyebrow){color:var(--muted);margin:30px 0;font-size:1.35rem}.contact-details{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:35px;margin-top:80px;padding-top:25px;display:flex}footer{border-top:1px solid var(--line);padding:55px max(20px,calc((100vw - var(--max))/2));color:var(--muted);grid-template-columns:1fr auto;gap:30px;display:grid}.footer-brand{color:var(--ink);margin-bottom:15px}.footer-links{gap:20px;display:flex}.copyright{border-top:1px solid var(--line);grid-column:1/-1;padding-top:20px;font-size:.8rem}@media (width<=760px){.site-header{height:70px}.site-header nav{display:none}.small-button{margin-left:auto}.hero{padding-top:75px}.hero h1,.page-hero h1{font-size:clamp(2.7rem,14vw,4.2rem)}.signal-row{grid-template-columns:1fr 1fr;gap:15px}.signal-row span+span{border:0;padding:0}.card-grid.three,.card-grid.two,.split,.stat-grid,.resume-grid{grid-template-columns:1fr}.section{padding:75px 0}.split{gap:35px}.section-heading.horizontal,.resume-hero{display:block}.section-heading.horizontal .text-link,.resume-hero .button{margin-top:20px;display:inline-flex}.timeline article{grid-template-columns:1fr;gap:8px}.resume-grid aside{border-right:0;border-bottom:1px solid var(--line);padding:0 0 25px}.footer-links{flex-wrap:wrap}footer{grid-template-columns:1fr}.copyright{grid-column:1}.site-header .brand span:last-child{display:none}}.story>div:last-child{color:var(--muted)}.hero{padding-top:125px}.hero h1{max-width:1080px;font-size:clamp(3rem,7.2vw,6.2rem)}.hero-accent{color:#a85a37}.hero-copy{max-width:790px}.home-evidence{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:16px;display:grid}.evidence-note{opacity:0;background:#f1e7d8;border-radius:4px 14px;gap:20px;min-height:330px;padding:27px 25px 25px 31px;transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1),box-shadow .25s;display:flex;position:relative;overflow:hidden;transform:translateY(22px)}.evidence-note.is-visible{opacity:1;transform:translateY(0)}.evidence-note:nth-child(2){transition-delay:.1s}.evidence-note:nth-child(3){transition-delay:.2s}.evidence-note:hover{transform:translateY(-4px);box-shadow:0 16px 36px #18231d18}.evidence-mark{color:#a85a37;writing-mode:vertical-rl;letter-spacing:.1em;font:700 .74rem Manrope}.evidence-note .eyebrow{color:#a85a37;margin:0 0 15px;font-size:.66rem}.evidence-note h3{max-width:310px;margin-bottom:15px;font-size:1.62rem;line-height:1.12}.evidence-note div>p:not(.eyebrow){color:#5a635c;max-width:350px;font-size:.96rem}.evidence-note a{color:#854323;border-bottom:1px solid #d4a178;margin-top:13px;font-weight:700;display:inline-block}.evidence-note-green{background:#e2eee4}.evidence-note-green .eyebrow,.evidence-note-green .evidence-mark{color:#087443}.evidence-note-green a{color:#087443;border-color:#88b69a}.evidence-note-paper{background:#ede9dd}.evidence-doodle{letter-spacing:-.12em;color:#18231d0d;pointer-events:none;font:800 4rem Manrope;position:absolute;bottom:-18px;right:16px;transform:rotate(-12deg)}.evidence-note-green .evidence-doodle{color:#08744312}.dark-section .split>div:last-child p{max-width:620px}.section-heading h2{max-width:850px}@media (width<=900px){.home-evidence{grid-template-columns:1fr}.evidence-note{min-height:0;padding:26px 28px}.evidence-note h3{max-width:580px}.evidence-note div>p:not(.eyebrow){max-width:680px}}@media (width<=760px){.hero{padding-top:88px}.hero h1{font-size:clamp(2.65rem,12vw,4.2rem)}.home-evidence{gap:12px}.evidence-note{gap:14px;padding:24px 20px}.evidence-note h3{font-size:1.5rem}.evidence-doodle{font-size:3.4rem}}@media (prefers-reduced-motion:reduce){.evidence-note{opacity:1;transition:none;transform:none}.evidence-note:hover{transform:none}}.evidence-note{opacity:1;transform:none}.motion-ready .evidence-note{opacity:0;transform:translateY(22px)}.motion-ready .evidence-note.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.motion-ready .evidence-note{opacity:1;transform:none}}.contact-socials{text-align:center;color:var(--muted);flex-wrap:wrap;justify-content:center;gap:12px 28px;margin-top:22px;padding:4px 0;font-size:.92rem;display:flex}.contact-socials a{transition:color .18s}.contact-socials a:hover{color:var(--green-dark)}.contact-socials span{color:var(--green);font-size:.82em}.project-disclosure{padding:0;transition:border-color .2s,box-shadow .2s,transform .2s;overflow:hidden}.project-disclosure[open]{border-color:#a7cdb6;grid-column:1/-1;transform:none;box-shadow:0 20px 50px #18231d0f}.project-disclosure>summary{cursor:pointer;flex-direction:column;align-items:flex-start;width:100%;min-height:330px;padding:30px;list-style:none;display:flex}.project-disclosure>summary::-webkit-details-marker{display:none}.project-disclosure>summary::marker{content:""}.project-disclosure>summary:focus-visible{outline:3px solid var(--green);outline-offset:-5px;border-radius:12px}.project-disclosure>summary .card-index{margin-bottom:25px}.project-disclosure>summary h2{margin:0 0 15px;font-size:1.5rem}.project-disclosure>summary p:not(.eyebrow){color:var(--muted);margin-bottom:0}.project-open-label{width:100%;color:var(--green-dark);justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding-top:22px;font-weight:700;display:flex}.project-open-label span{font-size:1.35rem;line-height:1;transition:transform .2s}.project-disclosure[open] .project-open-label span{transform:rotate(45deg)}.project-detail{border-top:1px solid var(--line);max-width:880px;padding:30px}.project-detail>p{color:var(--muted)}.project-detail .project-detail-lede{color:var(--ink);margin-bottom:18px;font:700 1.22rem Manrope}.project-detail h3{margin:28px 0 12px;font-size:1.15rem}.project-detail ul{color:var(--muted);margin:0 0 24px;padding-left:22px}.project-detail li{margin-bottom:9px;padding-left:4px}.project-detail .project-status{border-top:1px solid var(--line);margin-top:26px;padding-top:18px}.project-status strong{color:var(--ink)}.project-ask{font-weight:600;color:var(--ink)!important;margin-top:24px!important}.project-links{flex-wrap:wrap;gap:12px 24px;margin-top:24px;display:flex}.project-links a{color:var(--green-dark);text-underline-offset:3px;font-weight:700;text-decoration:underline}@media (width<=760px){.project-disclosure[open]{grid-column:auto}.project-disclosure>summary,.project-detail{padding:24px}}.timeline article.timeline-feature{grid-template-columns:190px 1fr}.timeline-feature-content>p{max-width:760px}.work-story-link{color:var(--green-dark);margin-top:4px;font-weight:700;display:inline-block}.linkedin-proof{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px;display:grid}.linkedin-proof-single{grid-template-columns:minmax(0,calc(33.3333% - 12px));max-width:100%}.social-proof-pair{grid-template-columns:repeat(2,minmax(0,1fr));max-width:calc(66.6667% + 6px)}.linkedin-proof-card{border:1px solid var(--line);background:var(--white);border-radius:12px;min-width:0;transition:transform .2s,border-color .2s,box-shadow .2s;overflow:hidden}.linkedin-proof-card:hover{border-color:#a7cdb6;transform:translateY(-4px);box-shadow:0 18px 42px #18231d14}.linkedin-proof-image{aspect-ratio:4/5;background:#eef3ef;position:relative;overflow:hidden}.linkedin-proof-image img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.linkedin-proof-card:hover .linkedin-proof-image img{transform:scale(1.025)}.social-proof-badge{color:#fff;border-radius:5px;place-items:center;min-width:31px;height:31px;padding:0 7px;font:800 1rem Arial,sans-serif;display:grid;position:absolute;top:12px;right:12px;box-shadow:0 5px 15px #00000029}.social-proof-badge-linkedin{background:#0a66c2}.social-proof-badge-builder{color:#f90;letter-spacing:-.03em;background:#161e2d;font-size:.76rem}.social-proof-badge-instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);font-size:1.3rem}.social-proof-badge-website{background:#a96f2b}.social-proof-badge-nextdoor{color:#183300;background:#8ed500}.linkedin-proof-copy{padding:18px}.linkedin-proof-copy p.linkedin-proof-label{color:var(--green);letter-spacing:.08em;text-transform:uppercase;margin:0 0 9px;font-size:.69rem;font-weight:700}.linkedin-proof-copy h3{letter-spacing:-.02em;margin-bottom:22px;font-size:1.08rem;line-height:1.24}.linkedin-proof-copy>span{color:var(--green-dark);font-size:.84rem;font-weight:700}.timeline .timeline-feature-content .linkedin-proof p{max-width:none}@media (width<=900px){.linkedin-proof{scroll-snap-type:x mandatory;grid-template-columns:repeat(3,260px);padding:0 1px 18px;overflow-x:auto}.linkedin-proof-card{scroll-snap-align:start}}@media (width<=760px){.timeline article.timeline-feature{grid-template-columns:1fr}.linkedin-proof{grid-template-columns:repeat(3,min(78vw,290px));margin-top:26px}.linkedin-proof-single{grid-template-columns:min(78vw,290px)}.social-proof-pair{grid-template-columns:repeat(2,min(78vw,290px));max-width:none}.linkedin-proof-copy{padding:16px}.linkedin-proof-image{aspect-ratio:4/5}}.social-proof-badge-builder img{object-fit:contain;width:24px;height:24px;display:block}.social-proof-badge-instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}.social-proof-badge-instagram svg{fill:none;stroke:#fff;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px;display:block}.social-proof-badge-instagram .instagram-flash{fill:#fff;stroke:none}.nylt-proof-image{background:#fff;place-items:center;display:grid}.nylt-proof-image img{object-fit:contain;width:58%;height:58%}.nylt-proof-card .linkedin-proof-copy{border-top:1px solid var(--line)}.faber-projects{padding-top:70px}.faber-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.faber-project-card{border:1px solid var(--line);background:#fff;border-radius:12px;transition:transform .2s,border-color .2s,box-shadow .2s;overflow:hidden}.faber-project-card:hover{border-color:#a7cdb6;transform:translateY(-4px);box-shadow:0 18px 42px #18231d14}.faber-project-image{aspect-ratio:4/3;background:#eef3ef;overflow:hidden}.faber-project-image img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.faber-project-card:hover .faber-project-image img{transform:scale(1.025)}.faber-project-copy{padding:22px}.faber-project-copy .eyebrow{margin-bottom:10px;font-size:.65rem}.faber-project-copy h3{margin-bottom:11px;font-size:1.4rem}.faber-project-copy>p:not(.eyebrow){color:var(--muted);min-height:4.5em;margin-bottom:18px;font-size:.95rem}.faber-project-copy>span{color:var(--green-dark);font-size:.78rem;font-weight:700}@media (width<=760px){.faber-project-grid{grid-template-columns:1fr}.faber-project-copy>p:not(.eyebrow){min-height:0}}.faber-project-gallery{aspect-ratio:4/3;background:var(--paper);gap:3px;display:grid;overflow:hidden}.faber-project-gallery img{object-fit:cover;width:100%;height:100%;min-height:0;display:block}.faber-project-gallery-two{grid-template-columns:1fr 1fr}.faber-project-gallery-three{grid-template-rows:1fr 1fr;grid-template-columns:1.15fr .85fr}.faber-project-gallery-three img:first-child{grid-row:1/3}.faber-pet-gallery{aspect-ratio:4/3;grid-template-rows:1.2fr 1fr 1fr;grid-template-columns:repeat(2,minmax(0,1fr))}.faber-pet-gallery img:first-child{object-position:center 42%;grid-column:1/3}.faber-project-carousel{aspect-ratio:4/3;background:#eef3ef;position:relative;overflow:hidden}.faber-project-track{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x;width:100%;height:100%;display:flex;overflow-x:auto}.faber-project-track::-webkit-scrollbar{display:none}.faber-project-track:focus-visible{outline:3px solid var(--green);outline-offset:-3px}.faber-project-slide{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;width:100%;height:100%}.faber-project-slide img{object-fit:cover;width:100%;height:100%;display:block}.faber-carousel-button{z-index:1;color:#fff;cursor:pointer;background:#121c179e;border:1px solid #ffffffb8;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;transition:background .18s,transform .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.faber-carousel-button:hover{background:#121c17e6;transform:translateY(-50%)scale(1.05)}.faber-carousel-button:focus-visible{outline-offset:3px;outline:3px solid #fff}.faber-carousel-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.faber-carousel-previous{left:12px}.faber-carousel-next{right:12px}.faber-carousel-count{color:#fff;font-variant-numeric:tabular-nums;pointer-events:none;background:#121c17b8;border:1px solid #fff3;border-radius:99px;padding:4px 9px;font-size:.72rem;line-height:1.4;position:absolute;bottom:12px;right:12px}.faber-carousel-caption{border-top:1px solid var(--line);background:#f7f9f7;flex-direction:column;justify-content:center;gap:4px;min-height:76px;padding:13px 20px 12px;display:flex}.faber-carousel-caption p{color:var(--ink);margin:0;font-size:.87rem;line-height:1.4}.faber-carousel-caption span{color:var(--green-dark);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:700}.faber-project-carousel{touch-action:pan-x}.faber-project-carousel .faber-carousel-count{font-variant-numeric:tabular-nums}@media (width<=980px){.faber-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.faber-project-grid{grid-template-columns:1fr}}.social-proof-badge-story{color:#fff;letter-spacing:.03em;background:#073b5a;font-size:.72rem}.contact-profiles{flex-wrap:wrap;gap:12px;margin-top:42px;display:flex}.contact-profile{border:1px solid var(--line);background:var(--white);border-radius:16px;flex:230px;align-items:center;gap:13px;min-width:0;max-width:100%;padding:10px 14px 10px 10px;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.contact-profile:hover{border-color:#a7cdb6;transform:translateY(-3px);box-shadow:0 16px 36px #18231d14}.contact-profile img{object-fit:cover;border-radius:11px;flex:0 0 64px;width:64px;height:64px;display:block}.contact-profile>span{flex-direction:column;gap:2px;min-width:0;display:flex}.contact-profile small{color:var(--muted);white-space:nowrap;font-size:.7rem}.contact-profile strong{color:var(--ink);white-space:nowrap;font:700 .92rem Manrope}.contact-profile strong span{color:var(--green)}.contact-profile:first-child strong span{color:#0a66c2}.contact-profile:nth-child(3) strong span{color:#c13584}.contact-page .contact-profiles+.contact-details{margin-top:44px}@media (width<=760px){.contact-profiles{grid-template-columns:1fr;display:grid}.contact-profile{width:100%}.contact-details{gap:10px 24px}}.about-profiles{margin:34px 0 10px}.prose .contact-profile{text-decoration:none}.prose .contact-profile small,.prose .contact-profile strong{line-height:1.4}.resume-profiles{margin-top:-34px;margin-bottom:70px}.resume-profiles+.resume-grid{padding-top:0}@media (width<=760px){.resume-profiles{margin-top:-35px;margin-bottom:55px}}.project-details{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:80px;padding-top:15px;display:grid}.project-details-heading h2{margin-bottom:20px;font-size:clamp(2rem,4vw,3.6rem)}.project-details-heading>p:not(.eyebrow){max-width:580px;color:var(--muted);font-size:1.08rem}.project-details-heading .button{margin-top:18px}.project-detail-list{border-top:1px solid var(--line);margin:0}.project-detail-list>div{border-bottom:1px solid var(--line);grid-template-columns:135px 1fr;gap:22px;padding:20px 0;display:grid}.project-detail-list dt{color:var(--green);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:700}.project-detail-list dd{color:#3d4b43;margin:0;font-size:1rem}@media (width<=820px){.project-details{grid-template-columns:1fr;gap:45px}.project-detail-list>div{grid-template-columns:110px 1fr}}:root{color-scheme:dark;--ink:#eceeef;--muted:#a8adb2;--green:#c4c9cd;--green-dark:#e0e3e5;--mint:#303337;--paper:#222426;--line:#484c50;--night:#191b1d;--white:#2d3033}body{background:var(--paper);color:var(--ink)}footer{isolation:isolate;background-color:#10151a;background-image:linear-gradient(90deg, #05090db3, #05090d75 55%, #05090d9e), var(--footer-photo,url(/_astro/site-footer-horizon.p5RYFy27.jpeg));color:#ffffffd1;text-shadow:0 1px 6px #000000d9;background-position:50% 56%;background-size:cover;border-top-color:#ffffff38;position:relative;overflow:hidden}footer .footer-brand,footer .footer-links a,footer .copyright{color:#fff}footer .copyright{border-top-color:#ffffff47}footer .brand-mark{color:#f4fff6;text-shadow:none;background:#34a853}.site-header{isolation:isolate;background-color:#30343a;background-image:linear-gradient(90deg, #0a0e1294, #0a0e1257 48%, #0a0e1294), var(--header-photo,url(/_astro/IMG_6483.wWYpYE-e.jpeg));color:#fff;will-change:transform;background-position:50% 48%;background-size:cover;border-bottom-color:#ffffff38;transition:transform .22s;overflow:hidden;transform:translateY(0);box-shadow:0 4px 20px #0003}.site-header.header-hidden{pointer-events:none;transform:translateY(-100%)}@media (prefers-reduced-motion:reduce){.site-header{transition:none}}.site-photo-layer{z-index:0;pointer-events:none;background:#182028;position:absolute;inset:0;overflow:hidden}.site-photo-layer:after{content:"";background:linear-gradient(90deg,#05090d6b,#05090d33 52%,#05090d66);position:absolute;inset:0}.site-photo-layer img{object-fit:cover;object-position:center 50%;filter:brightness(1.18)saturate(1.08);opacity:0;width:100%;height:100%;transition:opacity 1.2s;position:absolute;inset:0}.site-photo-layer img.is-visible{opacity:1}.site-header>:not(.site-photo-layer),footer>:not(.site-photo-layer){z-index:1;position:relative}.site-header .brand,.site-header nav a,.site-header .small-button{color:#fff;text-shadow:0 1px 5px #000000b8}.site-header nav a:hover{color:#fff;text-underline-offset:4px;text-decoration:underline 1px}.site-header .small-button{backdrop-filter:blur(5px);background:#0e121642;border-color:#ffffffd1}.brand-mark{color:#202224}.site-header .brand-mark{color:#f4fff6;background:#34a853;padding:0 2px 2px 0;font-family:Iowan Old Style,Baskerville,Palatino Linotype,Georgia,serif;font-size:1.35rem;font-style:italic;font-weight:700;line-height:1;box-shadow:inset 0 0 0 1px #191b1d26}.button{color:#202224;box-shadow:0 8px 20px #00000038}.button:hover{color:#202224}.card,.tag,.faber-project-card{background:var(--white)}.prose p,.prose li,.project-detail-list dd{color:#c4c8cb}.evidence-note,.evidence-note-green,.evidence-note-paper{background:#303337}.evidence-mark,.evidence-note .eyebrow,.evidence-note a,.evidence-note-green .eyebrow,.evidence-note-green .evidence-mark,.evidence-note-green a,.hero-accent{color:#d0d4d7}.evidence-note a,.evidence-note-green a{border-color:#70767b}.evidence-note div>p:not(.eyebrow){color:#b4b9bd}.evidence-doodle,.evidence-note-green .evidence-doodle{color:#eceeef0d}.dark-section{background:var(--night)}.linkedin-proof-image,.faber-project-image,.faber-project-carousel{background:#292c2f}.faber-carousel-caption{background:#303337}.card:hover,.linkedin-proof-card:hover,.faber-project-card:hover,.contact-profile:hover,.project-disclosure[open]{border-color:#696f74}.project-detail-list dd{color:#c4c8cb}::selection{color:#fff;background:#777e83}.free-time-section{padding:30px 0 110px}.free-time-section .section-heading{max-width:680px}.free-time-disclosure{border:1px solid var(--line);background:#282b2e;border-radius:16px;overflow:hidden}.free-time-disclosure[open]{border-color:#a7cdb6;box-shadow:0 20px 50px #0000002e}.free-time-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:24px;min-height:112px;padding:22px 28px;list-style:none;display:flex}.free-time-summary::-webkit-details-marker{display:none}.free-time-summary::marker{content:""}.free-time-summary:focus-visible{outline-offset:-5px;outline:3px solid #34a853}.free-time-summary>span:first-child{gap:5px;display:grid}.free-time-summary .eyebrow{margin-bottom:7px;font-size:.62rem}.free-time-summary h2{color:var(--ink);letter-spacing:-.035em;margin:0;font:700 clamp(1.4rem,3vw,2rem)/1.1 Manrope,sans-serif}.free-time-summary-copy,.free-time-summary-action>span:first-child{color:var(--muted);font-size:.88rem}.free-time-summary-action{flex:none;align-items:center;gap:16px;display:flex}.free-time-toggle{border:1px solid var(--line);color:#34a853;border-radius:50%;place-items:center;width:38px;height:38px;transition:transform .2s;display:grid}.free-time-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.free-time-disclosure[open] .free-time-toggle{transform:rotate(180deg)}.free-time-content{padding:0 22px 18px}.free-time-carousel{aspect-ratio:16/10;background:#1b1d1f;position:relative;overflow:hidden}.free-time-track{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x;width:100%;height:100%;display:flex;overflow-x:auto}.free-time-track::-webkit-scrollbar{display:none}.free-time-track:focus-visible{outline-offset:-3px;outline:3px solid #34a853}.free-time-slide{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;width:100%;height:100%}.free-time-slide img{object-fit:contain;object-position:center center;background:#1b1d1f;width:100%;height:100%;display:block}.free-time-control{z-index:1;color:#f4f5f6;cursor:pointer;background:#191b1dc7;border:1px solid #ffffff61;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.free-time-control:hover{background:#34a853}.free-time-control:focus-visible{outline-offset:3px;outline:2px solid #34a853}.free-time-control svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.free-time-previous{left:13px}.free-time-next{right:13px}.free-time-count{color:#f4f5f6;font-variant-numeric:tabular-nums;background:#191b1dc7;border:1px solid #fff3;border-radius:99px;padding:4px 9px;font-size:.72rem;position:absolute;bottom:13px;right:13px}.free-time-description{color:var(--muted);margin:0;padding:17px 24px 21px;font-size:.9rem}@media (width<=760px){.free-time-section{padding-bottom:75px}.free-time-summary{align-items:flex-start;padding:20px}.free-time-summary-action{gap:8px}.free-time-summary-action>span:first-child{display:none}.free-time-content{padding:0 12px 12px}.free-time-description{padding-inline:10px}}
