@font-face{font-family:PortfolioSans;src:local(Aptos),local(Segoe UI);font-display:swap}:root{--ink:#172e3b;--muted:#606b6e;--paper:#faf9f5;--white:#fff;--sand:#eeebe3;--line:#dedfd8;--gold:#967448;--sage:#e4eae2;--serif:Georgia, "Times New Roman", serif;--sans:PortfolioSans, "Segoe UI", Arial, sans-serif;--radius:5px;--max:1200px}.credential-entry{border-bottom:1px solid var(--line);margin-bottom:18px;padding:0 0 18px}.credential-entry:last-child{border-bottom:0;margin-bottom:0}.credential-entry p{margin-bottom:5px}.credential-detail{color:var(--muted)!important;font-size:12px!important}.credential-links{flex-wrap:wrap;gap:18px;margin-top:8px;display:flex}.credential-links a{border-bottom:1px solid var(--line);font-size:12px;font-weight:600}.credential-links a:hover{border-bottom-color:currentColor}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);letter-spacing:-.045em;font-weight:400;line-height:1.13}h1{margin-bottom:25px;font-size:clamp(40px,4.5vw,62px)}h2{margin-bottom:22px;font-size:clamp(30px,3.2vw,43px)}h3{letter-spacing:-.02em;margin-bottom:13px;font-size:21px;font-weight:550;line-height:1.35}p{margin-bottom:20px}em{color:var(--gold);font-weight:400}::selection{background:#e1d7c4}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:5px;border-radius:2px;outline:3px solid #a97635}.container{width:min(var(--max), calc(100% - 100px));margin-inline:auto}.section{padding-block:90px}.section-topless{padding-top:8px}.muted{color:var(--muted)}.eyebrow{font-family:var(--sans);letter-spacing:.14em;color:var(--muted);margin-bottom:20px;font-size:11px;font-weight:650;line-height:1.7}.text-link{border-bottom:1px solid #0000;align-items:center;gap:18px;padding-block:5px;font-size:14px;font-weight:600;display:inline-flex}.text-link:hover{border-bottom-color:currentColor}.button{background:var(--ink);border:1px solid var(--ink);border-radius:var(--radius);min-height:50px;color:var(--white);justify-content:center;align-items:center;gap:25px;padding:12px 23px;font-size:14px;font-weight:550;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#294553;transform:translateY(-2px)}.button-outline{color:var(--ink);background:0 0;border-color:#bdc2bf}.button-outline:hover{background:var(--sand)}.button-light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button-light:hover{background:#e9e4d9}.button-row{flex-wrap:wrap;gap:14px;display:flex}.skip-link{background:var(--ink);color:#fff;z-index:100;padding:10px 20px;position:fixed;top:-80px;left:15px}.skip-link:focus{top:10px}.site-header{z-index:50;border-bottom:1px solid var(--line);background:#faf9f5fa;position:sticky;top:0}.nav-wrap{justify-content:space-between;align-items:center;gap:30px;height:87px;display:flex}.brand{white-space:nowrap;letter-spacing:-.025em;align-items:center;gap:16px;font-size:16px;font-weight:600;display:flex}.monogram{font-family:var(--serif);letter-spacing:-.075em;border-right:1px solid var(--line);padding-right:18px;font-size:34px;font-weight:400;line-height:1.15}.monogram span,.footer-name span{color:var(--gold)}.navigation{align-items:center;gap:28px;font-size:13px;font-weight:500;display:flex}.navigation>a{padding-block:10px}.navigation>a[aria-current=page]{color:var(--gold)}.nav-contact{border:1px solid var(--line);border-radius:var(--radius);gap:25px;display:flex;padding:9px 17px!important}.navigation a:hover{color:var(--gold)}.practice-menu{position:relative}.practice-menu summary{cursor:pointer;padding-block:14px;list-style:none}.practice-menu summary::-webkit-details-marker{display:none}.practice-menu summary span{margin-left:8px}.dropdown{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);width:225px;padding:12px;position:absolute;top:45px;left:-20px;box-shadow:0 10px 25px #172e3b10}.dropdown a{padding:9px 10px;display:block}.dropdown a:hover{background:var(--sand)}.menu-toggle{display:none}.hero{grid-template-columns:1.2fr 1fr;align-items:center;gap:65px;padding-block:66px 70px;display:grid}.hero-copy{padding-top:8px}.hero .eyebrow{letter-spacing:.12em;align-items:center;gap:9px;margin-bottom:25px;font-size:10px;display:flex}.status-dot{background:#7e8e75;border-radius:50%;width:6px;height:6px;display:inline-block}.hero h1{margin-bottom:29px;font-size:clamp(42px,4.5vw,63px)}.hero-introduction{margin-bottom:9px;font-size:20px;font-weight:600}.hero-description{max-width:510px;color:var(--muted);margin-bottom:30px;font-size:17px;line-height:1.8}.hero-location{color:var(--muted);align-items:center;gap:9px;margin-top:28px;font-size:11px;display:flex}.hero-location>span:first-child{font-size:18px}.dot-divider{margin-inline:5px}.hero-portrait{background:#e8e7de;border-radius:160px 160px 4px 4px;height:494px;position:relative;overflow:hidden}.hero-portrait>img{width:358px;height:auto;position:absolute;bottom:-64px;left:50%;transform:translate(-50%)}.portrait-topline{letter-spacing:.1em;color:#5e6760;z-index:1;justify-content:space-between;width:100%;padding:0 56px;font-size:8px;display:flex;position:absolute;top:45px}.portrait-caption{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f4f2eaf2;justify-content:space-between;align-items:center;gap:15px;padding:18px 24px;font-size:12px;display:flex;position:absolute;bottom:0;left:0;right:0}.portrait-caption span:first-child{font-family:var(--serif);font-size:19px}.portrait-caption span:last-child{color:var(--muted);font-size:10px}.credibility-strip{border-block:1px solid var(--line)}.credibility-inner{grid-template-columns:repeat(3,1fr);padding-block:24px;display:grid}.credibility-inner p{border-left:1px solid var(--line);flex-direction:column;gap:1px;margin:0;padding-left:40px;display:flex}.credibility-inner p:first-child{border:none;padding-left:0}.credibility-inner strong{font-size:15px;font-weight:550}.credibility-inner span{color:var(--muted);font-size:12px}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px;display:flex}.section-heading .eyebrow{margin-bottom:13px}.section-heading h2{max-width:640px;margin-bottom:15px}.section-heading .section-description{max-width:640px;color:var(--muted);margin-bottom:0;font-size:15px}.section-heading>.text-link{white-space:nowrap;margin-bottom:4px}.pillars{grid-template-columns:repeat(4,1fr);gap:0;display:grid}.pillar{border-left:1px solid var(--line);padding:25px 25px 10px}.pillar:first-child{border-left:none;padding-left:0}.pillar:last-child{padding-right:0}.pillar-number{color:var(--gold);justify-content:space-between;align-items:center;margin-bottom:25px;font-size:11px;display:flex}.pillar-symbol{color:var(--ink);font-size:25px}.pillar h3{max-width:185px;min-height:48px;font-size:18px}.pillar p{color:var(--muted);margin-bottom:23px;font-size:14px;line-height:1.75}.pillar .text-link{gap:16px;font-size:12px}.pillar:hover h3{color:var(--gold)}.featured-section{border-block:1px solid var(--line);background:#f0efe9}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 34px;display:grid}.project-cover{border-radius:4px;flex-direction:column;justify-content:space-between;height:320px;padding:26px 32px;transition:transform .3s;display:flex;position:relative;overflow:hidden}.project-visual-link{border-radius:4px;display:block;overflow:hidden}.project-visual-link:hover .project-cover{transform:scale(1.018)}.navy{color:#f3f0e7;background:#203b49}.sand{color:#3d493f;background:#e6decc}.sage{color:#344f43;background:#d8e2d2}.clay{color:#54463e;background:#ded6cf}.cover-top,.cover-bottom{letter-spacing:.04em;justify-content:space-between;align-items:center;gap:20px;font-size:10px;display:flex}.cover-top{border-bottom:1px solid;padding-bottom:14px}.cover-top span:last-child{font-size:20px}.cover-title{font-family:var(--serif);letter-spacing:-.045em;margin-block:20px;font-size:39px;line-height:1.05}.cover-bottom{opacity:.85;font-size:10px}.cover-mark{font-size:18px;font-family:var(--serif);letter-spacing:-.08em}.project-info{padding-top:24px}.project-info>.eyebrow{margin-bottom:10px;font-size:9px}.project-info>.eyebrow>span{color:var(--gold);margin-right:10px}.project-info h3{font-family:var(--serif);letter-spacing:-.035em;margin-bottom:10px;font-size:29px;font-weight:400}.project-info h3 a{justify-content:space-between;gap:20px;display:flex}.project-info h3 a>span{font-family:var(--sans);font-size:22px}.project-info>p:not(.eyebrow){max-width:510px;color:var(--muted);margin-bottom:16px;font-size:14px}.project-info>.project-role{margin-top:18px;color:var(--ink)!important;margin-bottom:13px!important;font-size:11px!important}.tags{flex-wrap:wrap;gap:7px;display:flex}.tags>span{color:#536059;border:1px solid #c8ccc5;border-radius:3px;padding:4px 9px;font-size:10px;line-height:1.5}.case-link{gap:20px;margin-top:19px;font-size:12px;font-weight:600;display:inline-flex}.case-link:hover{text-decoration:underline}.experience-section{grid-template-columns:.85fr 1.15fr;gap:90px;display:grid}.experience-section>div>p:not(.eyebrow){color:var(--muted);max-width:320px;font-size:15px}.timeline-item{border-top:1px solid var(--line);grid-template-columns:180px 1fr;gap:30px;padding:28px 0;display:grid}.timeline-item:last-child{border-bottom:1px solid var(--line)}.timeline-date{color:var(--muted);margin:0;font-size:12px}.timeline h3{margin-bottom:5px;font-size:19px}.timeline-role{color:var(--muted);margin-bottom:8px;font-size:13px}.timeline-item div>p:last-child{margin-bottom:0}.experience-section .timeline-item{grid-template-columns:1fr;gap:7px;padding-block:22px}.experience-section .timeline-date{letter-spacing:.025em;font-size:10px}.philosophy{text-align:center;padding:40px 100px 95px}.philosophy blockquote{font-family:var(--serif);letter-spacing:-.03em;margin:20px 0 25px;font-size:clamp(26px,2.8vw,38px);line-height:1.4}.philosophy>p:not(.eyebrow){color:var(--muted);font-size:14px}.signature{font-family:var(--serif);color:var(--gold);font-size:22px;font-style:italic}.cta{background:var(--ink);color:var(--paper)}.cta-inner{justify-content:space-between;align-items:center;gap:60px;padding-block:65px;display:flex}.cta .eyebrow{color:#c7b991;margin-bottom:15px;font-size:10px}.cta h2{font-size:39px}.cta p:not(.eyebrow){color:#c0cbd0;margin-bottom:0;font-size:14px}.cta-actions{flex-direction:column;flex-shrink:0;align-items:center;gap:15px;display:flex}.cta-actions .text-link{color:#dce0dd;font-size:12px}.footer{grid-template-columns:1fr 1fr;gap:30px;padding-block:50px 20px;display:grid}.footer-name{font-family:var(--serif);letter-spacing:-.035em;font-size:25px}.footer p{color:var(--muted);margin-top:6px;font-size:12px}.footer-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:25px;font-size:12px;display:flex}.footer-links a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);grid-column:1/-1;justify-content:space-between;padding-top:20px;font-size:10px;display:flex}.page-intro{padding-block:75px 55px}.page-intro h1{max-width:850px}.intro-text{max-width:730px;color:var(--muted);font-size:18px;line-height:1.75}.intro-text p:last-child{margin-bottom:0}.intro-text .button-row{margin-top:28px}.filters{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;padding-bottom:25px;display:flex}.filters button{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:4px;min-height:44px;padding:10px 17px;font-size:12px}.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.filters button:hover:not([aria-pressed=true]){background:var(--sand)}.results-count{color:var(--muted);margin:22px 0 30px;font-size:12px}.evidence-footnote{color:var(--muted);border-top:1px solid var(--line);max-width:800px;margin-top:45px;padding-top:20px;font-size:12px}.case-intro{padding-top:45px}.back-link{margin-bottom:38px;font-size:12px}.case-intro h1{max-width:940px;font-size:clamp(36px,4.4vw,59px)}.case-metadata{border-block:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;gap:35px;margin:30px 0 40px;padding-block:25px;display:grid}.case-metadata dt{letter-spacing:.12em;color:var(--muted);margin-bottom:10px;font-size:10px}.case-metadata dd{margin:0;font-size:13px}.cover-large{height:410px;padding:35px 50px}.cover-large .cover-title{font-size:57px}.cover-large .cover-top,.cover-large .cover-bottom{font-size:12px}.image-caption{color:var(--muted);max-width:900px;padding-top:12px;font-size:11px}.case-layout{grid-template-columns:220px minmax(0,1fr);gap:65px;padding-block:55px 0;display:grid}.case-nav{border-left:1px solid var(--line);align-self:start;padding-left:22px;position:sticky;top:125px}.case-nav .eyebrow{font-size:9px}.case-nav a{color:var(--muted);margin-bottom:15px;font-size:12px;display:block}.case-nav a:hover{color:var(--ink);text-decoration:underline}.case-content{max-width:790px}.case-content section{border-bottom:1px solid var(--line);margin-bottom:40px;padding:0 0 40px}.case-content section:last-child{margin-bottom:0}.case-content .eyebrow{margin-bottom:12px;font-size:10px}.case-content h2{font-size:36px}.case-content h3{margin-top:25px;font-size:19px}.case-content p{color:var(--muted);font-size:16px}.case-content .large-copy{font-family:var(--serif);color:var(--ink);font-size:25px;line-height:1.5}.check-list{color:var(--muted);padding-left:20px;font-size:15px}.check-list li{margin-bottom:12px;padding-left:7px}.check-list li::marker{color:var(--gold)}.process-flow{background:var(--sand);border:1px solid var(--line);border-radius:4px;grid-template-columns:repeat(auto-fit,minmax(95px,1fr));margin:35px 0;padding:0;list-style:none;display:grid}.process-flow li{border-left:1px solid var(--line);padding:20px 15px;font-size:12px;line-height:1.55}.process-flow li:first-child{border-left:none}.step-number{color:var(--gold);margin-bottom:15px;font-size:10px;display:block}.deliverables{padding:0;list-style:none}.deliverables li{border-bottom:1px solid var(--line);gap:25px;padding:15px 0;font-size:15px;display:flex}.deliverables li>span{color:var(--gold);padding-top:3px;font-size:11px}.evidence-placeholder{background:var(--sand);border:1px dashed #b6beb5;border-radius:4px;margin-top:30px;padding:30px}.evidence-placeholder h3{margin-top:8px}.evidence-placeholder p{margin-bottom:0;font-size:13px}.image-gallery{grid-template-columns:1fr 1fr;gap:25px;display:grid}.image-gallery figure{margin:0}.image-gallery .wide{grid-column:1/-1}.image-gallery img{object-fit:contain;width:100%}.image-gallery figcaption{color:var(--muted);margin-top:10px;font-size:12px}.image-gallery .square img{aspect-ratio:1}.image-gallery .portrait img{aspect-ratio:3/4}.split-intro{grid-template-columns:1fr 1.2fr;gap:90px;padding:10px 0 35px;display:grid}.split-intro h2{font-size:35px}.split-intro p{color:var(--muted)}.competency-grid{grid-template-columns:repeat(4,1fr);gap:25px;margin:25px 0 75px;display:grid}.competency-grid article{border-top:1px solid var(--line);padding:25px 0}.competency-grid .eyebrow{color:var(--gold)}.competency-grid h3{margin-top:18px}.competency-grid p{color:var(--muted);font-size:14px}.practice-details{margin-top:50px}.practice-details article{border-top:1px solid var(--line);grid-template-columns:1fr 1.7fr;gap:60px;padding-block:28px;display:grid}.practice-details p{color:var(--muted);margin-bottom:0}.lesson-sample{background:var(--sage);border-radius:4px;grid-template-columns:1fr 1fr;gap:50px;margin-top:50px;padding:40px;display:grid}.lesson-sample h2{font-size:32px}.lesson-sample p{color:var(--muted);font-size:14px}.lesson-sample ol{padding-left:22px}.lesson-sample li{margin-bottom:18px;padding-left:10px;font-size:14px}.about-grid{grid-template-columns:.75fr 1.25fr;align-items:start;gap:80px;display:grid}.about-portrait{background:var(--sand);border-radius:150px 150px 4px 4px;padding:30px 30px 20px}.about-portrait img{object-fit:contain;max-height:450px;margin-inline:auto}.about-portrait p{text-align:center;margin:20px 0 0;font-size:11px}.narrative h2{font-size:37px}.narrative p:not(.eyebrow){color:var(--muted)}.narrative h3{margin-top:30px}.education-grid{grid-template-columns:1fr 1fr;gap:50px;display:grid}.education-grid article{border-top:1px solid var(--line);padding-top:28px}.education-grid h3{font-family:var(--serif);font-size:27px;font-weight:400}.education-grid p{margin-bottom:8px}.education-grid .muted{font-size:13px}.scope-note{color:var(--muted);max-width:850px;margin-top:35px;font-size:12px}.resume-sheet{background:var(--white);border:1px solid var(--line);max-width:1000px;margin-bottom:80px;padding:50px 65px}.resume-heading{border-bottom:2px solid var(--ink);padding-bottom:25px}.resume-heading h2{margin-bottom:10px;font-size:39px}.resume-heading p{margin-bottom:5px;font-size:14px}.resume-heading a{text-decoration:underline}.resume-sheet section{margin-top:35px}.resume-sheet section>h2{font-family:var(--sans);letter-spacing:.01em;border-bottom:1px solid var(--line);padding-bottom:12px;font-size:18px;font-weight:650}.resume-sheet section p{color:#43535b;font-size:14px}.resume-skills{grid-template-columns:1fr 1fr;gap:12px 35px;display:grid}.resume-skills h3{margin-bottom:7px;font-size:15px}.resume-entry{margin-bottom:24px}.resume-entry>div{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.resume-entry h3{margin-bottom:5px;font-size:16px}.resume-entry p{margin-bottom:5px}.resume-highlights{color:#43535b;margin:10px 0 0;padding-left:18px;font-size:14px}.resume-highlights li{margin-bottom:7px;line-height:1.55}.resume-status{border:1px solid var(--line);letter-spacing:.04em;color:var(--muted);margin:0 8px;padding:1px 7px;font-size:11px;display:inline-block}.resume-date{flex-shrink:0;color:var(--muted)!important;font-size:12px!important}.contact-layout{grid-template-columns:1fr 1.2fr;gap:90px;display:grid}.contact-details>h2{font-size:33px}.contact-details>p{color:var(--muted);max-width:340px;font-size:15px}.contact-details dl{margin-block:38px}.contact-details dl div{margin-bottom:25px}.contact-details dt{letter-spacing:.12em;color:var(--muted);margin-bottom:7px;font-size:10px}.contact-details dd{overflow-wrap:anywhere;margin:0;font-size:16px}.contact-details dd a{border-bottom:1px solid var(--line)}.contact-note{border-top:1px solid var(--line);padding-top:20px;font-size:13px!important}.contact-form{border:1px solid var(--line);background:#f0efe8;border-radius:5px;padding:32px}.contact-form label{margin-bottom:19px;font-size:12px;font-weight:600;display:block}.contact-form input,.contact-form textarea,.contact-form select{background:var(--paper);width:100%;color:var(--ink);border:1px solid #c7ccc5;border-radius:3px;min-height:47px;margin-top:7px;padding:12px;font-size:13px;display:block}.contact-form textarea{resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#748078}.form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.optional{color:var(--muted);font-size:11px;font-weight:400}.form-note{color:var(--muted);font-size:11px}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-result{background:var(--sage);border-left:3px solid #60785a;margin-top:25px;padding:18px;font-size:13px}.form-result p{margin-block:8px}.form-error{color:#9a3026;margin-top:20px;font-size:13px}.form-error a{text-decoration:underline}.legal-copy{max-width:800px}.legal-copy h2{margin-top:30px;font-size:28px}.legal-copy a{text-decoration:underline}.not-found{min-height:65vh;padding-block:100px}.not-found p:not(.eyebrow){max-width:560px;color:var(--muted)}.not-found .text-link{margin-left:25px}@media (min-width:1500px){.hero{padding-block:80px}.hero-portrait{height:540px}.hero-portrait>img{width:390px}.hero h1{font-size:65px}}@media (max-width:1100px){.container{width:calc(100% - 60px)}.navigation{gap:17px}.brand{gap:11px;font-size:14px}.hero{gap:35px}.hero-portrait{height:455px}.hero-portrait>img{width:330px;bottom:-50px}.portrait-topline{padding-inline:42px;font-size:7px}.hero h1{font-size:50px}.hero .eyebrow{font-size:9px}.hero-description{font-size:15px}.hero-location{font-size:10px}.hero .button{gap:16px;padding-inline:16px}.portrait-caption{padding-inline:16px}.portrait-caption span:last-child{font-size:8px}.experience-section{gap:50px}.contact-layout{gap:45px}.project-cover{height:285px}.cover-title{font-size:34px}.cover-large{height:390px}.case-layout{grid-template-columns:185px minmax(0,1fr);gap:35px}.competency-grid{gap:20px}.competency-grid h3{font-size:18px}.about-grid{gap:45px}.split-intro{gap:50px}.resume-sheet{padding-inline:45px}}@media (max-width:900px){.nav-wrap{height:74px}.menu-toggle{border:1px solid var(--line);min-height:44px;color:var(--ink);background:0 0;border-radius:3px;padding:8px 14px;font-size:13px;display:block}.navigation{background:var(--paper);border-bottom:1px solid var(--line);max-height:calc(100dvh - 74px);padding:20px 30px;display:none;position:absolute;top:74px;left:0;right:0;overflow-y:auto;box-shadow:0 10px 15px #172e3b0a}.navigation.is-open{flex-direction:column;align-items:stretch;gap:4px;display:flex}.navigation>a,.practice-menu summary{padding-block:11px}.dropdown{box-shadow:none;background:var(--sand);border:none;width:100%;position:static}.nav-contact{justify-content:space-between;max-width:220px;margin-top:8px}.hero{gap:25px}.hero h1{font-size:43px}.hero-portrait{height:420px}.hero-portrait>img{width:305px;bottom:-40px}.portrait-topline{padding-inline:35px;font-size:6px;top:40px}.portrait-caption,.portrait-caption span{display:block}.hero .button{gap:12px;min-height:47px;padding:10px 13px;font-size:12px}.hero-location{font-size:10px;display:block}.hero-location>span:first-child{margin-right:7px}.hero-introduction{font-size:18px}.hero-description{font-size:14px}.pillars{grid-template-columns:repeat(2,1fr);gap:30px 0}.pillar:nth-child(3){border-left:none;padding-left:0}.pillar:nth-child(2){padding-right:0}.pillar h3{max-width:none;min-height:auto}.credibility-inner p{padding-left:20px}.credibility-inner strong{font-size:13px}.credibility-inner span{font-size:10px}.cover-title{font-size:30px}.project-cover{height:270px;padding:23px}.project-info h3{font-size:26px}.project-info>.eyebrow{font-size:8px}.project-info>.eyebrow>span{margin-right:4px}.project-info>p:not(.eyebrow){font-size:13px}.section-heading h2{font-size:35px}.experience-section{grid-template-columns:1fr 1.1fr;gap:40px}.experience-section h2{font-size:33px}.philosophy{padding-inline:30px}.cta-inner{gap:30px}.cta h2{font-size:33px}.footer-links{gap:16px}.case-nav{display:none}.case-layout{display:block}.case-content{max-width:none}.cover-large{height:360px}.cover-large .cover-title{font-size:49px}.competency-grid{grid-template-columns:repeat(2,1fr);margin-bottom:35px}.practice-details article{grid-template-columns:1fr 1.4fr;gap:30px}.about-grid{grid-template-columns:.75fr 1.25fr;gap:30px}.about-portrait{padding-inline:10px}.about-portrait p{font-size:9px}.narrative h2{font-size:30px}.narrative p{font-size:15px}.contact-layout{grid-template-columns:.8fr 1.2fr;gap:30px}.contact-form{padding:23px}.form-row{grid-template-columns:1fr;gap:0}.contact-details>h2{font-size:29px}.resume-entry>div{display:block}.resume-skills{gap:15px}}@media (max-width:640px){.container{width:calc(100% - 40px)}.section{padding-block:55px}.section-topless{padding-top:0}.hero{grid-template-columns:1fr;gap:35px;padding-block:38px 35px}.hero h1{letter-spacing:-.05em;margin-bottom:25px;font-size:40px}.hero .eyebrow{letter-spacing:.12em;margin-bottom:22px;font-size:8px}.hero-copy{padding-top:0}.hero-description{max-width:440px;margin-bottom:25px;font-size:16px}.hero-introduction{font-size:19px}.hero .button{gap:17px;padding:12px 17px;font-size:13px}.hero-location{margin-top:20px;font-size:11px}.hero-portrait{border-radius:120px 120px 4px 4px;width:100%;max-width:450px;height:380px;margin-inline:auto}.hero-portrait>img{width:285px;bottom:-75px}.portrait-topline{padding-inline:45px;font-size:7px;top:30px}.portrait-caption{padding:15px 20px;display:flex}.portrait-caption span:last-child{font-size:9px}.credibility-inner{grid-template-columns:1fr;padding-block:10px}.credibility-inner p{border-left:none;border-top:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center;gap:12px;padding:13px 0}.credibility-inner p:first-child{padding-block:13px}.credibility-inner strong{font-size:12px}.credibility-inner span{text-align:right;font-size:10px}.section-heading{margin-bottom:30px;display:block}.section-heading h2{font-size:33px}.section-heading .section-description{font-size:14px}.section-heading>.text-link{margin-top:18px}.eyebrow{font-size:9px}.pillars{gap:20px 0}.pillar{padding-inline:18px}.pillar-number{margin-bottom:20px}.pillar h3{min-height:46px;font-size:17px}.pillar p{font-size:13px}.pillar .text-link{gap:10px;font-size:11px}.project-grid{grid-template-columns:1fr;gap:40px}.project-cover{height:290px;padding:25px 28px}.cover-title{font-size:38px}.project-info{padding-top:20px}.project-info>.eyebrow{font-size:8px}.project-info h3{font-size:28px}.project-info>p:not(.eyebrow){font-size:14px}.experience-section{grid-template-columns:1fr;gap:25px}.experience-section>div>p:not(.eyebrow){max-width:none}.experience-section h2 br{display:none}.experience-section h2{font-size:34px}.philosophy{padding:10px 5px 55px}.philosophy blockquote{font-size:28px}.philosophy>p:not(.eyebrow){font-size:12px}.cta-inner{padding-block:45px;display:block}.cta h2{font-size:32px}.cta .eyebrow{font-size:8px}.cta-actions{flex-flow:wrap;justify-content:flex-start;gap:24px;margin-top:25px}.cta-actions .button{font-size:13px}.footer{grid-template-columns:1fr;gap:20px;padding-top:35px}.footer p{margin-bottom:0}.footer-links{justify-content:flex-start;gap:23px}.footer-bottom{flex-wrap:wrap;gap:12px;font-size:9px}.footer-bottom span:nth-child(2){order:3;width:100%}.page-intro{padding-block:45px 35px}.page-intro h1{font-size:41px}.intro-text{font-size:16px}.filters{gap:7px}.filters button{padding:8px 12px;font-size:11px}.results-count{font-size:11px}.case-intro{padding-top:25px}.case-intro h1{font-size:39px}.case-metadata{grid-template-columns:1fr;gap:18px;margin-block:25px;padding-block:22px}.case-metadata dt{margin-bottom:4px}.back-link{margin-bottom:25px}.cover-large{height:315px;padding:23px}.cover-large .cover-title{font-size:37px}.cover-large .cover-top,.cover-large .cover-bottom{font-size:9px}.case-layout{padding-top:30px}.case-content h2{font-size:32px}.case-content p{font-size:15px}.case-content section{margin-bottom:30px;padding-bottom:30px}.case-content .large-copy{font-size:24px}.process-flow{grid-template-columns:1fr;margin-block:25px}.process-flow li{border-left:none;border-top:1px solid var(--line);align-items:center;gap:20px;padding:15px 20px;font-size:13px;display:flex}.process-flow li:first-child{border-top:none}.step-number{min-width:20px;margin:0}.evidence-placeholder{padding:24px}.split-intro{grid-template-columns:1fr;gap:0;padding-bottom:10px}.split-intro h2{font-size:30px}.competency-grid{gap:10px 25px;margin-top:15px}.competency-grid h3{font-size:18px}.competency-grid p{font-size:13px}.practice-details article{padding-block:23px;display:block}.practice-details h3{font-size:20px}.practice-details p{font-size:15px}.lesson-sample{grid-template-columns:1fr;gap:15px;margin-top:25px;padding:25px}.lesson-sample ol{margin-block:0}.about-grid{grid-template-columns:1fr;gap:35px}.about-portrait{width:100%;max-width:350px;margin-inline:auto;padding-top:25px}.about-portrait img{width:auto;height:350px}.about-portrait p{font-size:10px}.narrative h2{font-size:33px}.timeline-item{grid-template-columns:1fr;gap:10px;padding-block:22px}.timeline h3{font-size:20px}.timeline-item div>p:last-child{font-size:14px}.education-grid{grid-template-columns:1fr;gap:30px}.education-grid h3{font-size:26px}.resume-sheet{width:calc(100% - 24px);margin-bottom:40px;padding:25px 20px}.resume-heading h2{font-size:32px}.resume-heading p{font-size:12px}.resume-heading a{overflow-wrap:anywhere}.resume-skills{grid-template-columns:1fr;gap:0}.resume-sheet section p{font-size:13px}.resume-sheet .resume-entry h3{font-size:16px}.contact-layout{grid-template-columns:1fr;gap:25px}.contact-details>p{max-width:none}.contact-details dl{margin-block:25px}.contact-form{padding:24px 20px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}.form-row{grid-template-columns:1fr}.not-found{padding-block:60px}.not-found h1{font-size:40px}.not-found .text-link{margin:18px 0;display:flex}.legal-copy h2{font-size:28px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.button:hover,.project-visual-link:hover .project-cover{transform:none}}@media print{@page{size:A4;margin:16mm}body{color:#111;background:#fff;font-size:10pt;line-height:1.4}.site-header,.footer,.no-print,.skip-link,.resume-page>.page-intro{display:none!important}.container{width:100%;max-width:none}.resume-sheet{border:none;max-width:none;margin:0;padding:0}.resume-heading h2{font-size:26pt}.resume-heading p,.resume-sheet section p{color:#111;font-size:10pt}.resume-sheet section{margin-top:18px}.resume-sheet section>h2{break-after:avoid;font-size:12pt}.resume-entry{break-inside:avoid;margin-bottom:15px}.resume-entry h3{font-size:11pt}.resume-entry>div{display:flex}.resume-date{font-size:9pt!important}.resume-skills{grid-template-columns:1fr 1fr;display:grid}.resume-skills>div{break-inside:avoid}a{text-decoration:none}.resume-heading{padding-bottom:15px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.language-switcher{white-space:nowrap;order:3;align-items:center;gap:8px;margin-left:8px;font-size:12px;display:flex}.language-switcher a{min-width:36px;min-height:44px;color:var(--muted);border-bottom:2px solid #0000;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.language-switcher a[aria-current]{color:var(--ink);border-bottom-color:var(--accent);font-weight:700}.language-divider{color:var(--line)}html[lang=zh-Hant-TW] body{font-family:PingFang TC,Microsoft JhengHei,Noto Sans CJK TC,sans-serif;line-height:1.85}html[lang=zh-Hant-TW] h1,html[lang=zh-Hant-TW] h2,html[lang=zh-Hant-TW] h3,html[lang=zh-Hant-TW] .cover-title,html[lang=zh-Hant-TW] blockquote{letter-spacing:.015em;word-break:normal;overflow-wrap:anywhere;font-family:PingFang TC,Microsoft JhengHei,sans-serif;line-height:1.45}html[lang=zh-Hant-TW] .eyebrow,html[lang=zh-Hant-TW] .cover-top,html[lang=zh-Hant-TW] .cover-bottom{letter-spacing:.08em}html[lang=zh-Hant-TW] .hero h1{font-size:clamp(34px,4.1vw,59px);line-height:1.5}html[lang=zh-Hant-TW] .page-intro h1,html[lang=zh-Hant-TW] .case-intro h1{font-size:clamp(33px,4.2vw,57px)}html[lang=zh-Hant-TW] .cover-title{font-size:clamp(27px,2.8vw,40px)}html[lang=zh-Hant-TW] .cover-large .cover-title{font-size:clamp(32px,4.4vw,62px)}html[lang=zh-Hant-TW] .navigation{gap:23px}@media (max-width:1080px){.language-switcher{order:0;margin-left:auto;margin-right:10px}}@media (max-width:640px){.language-switcher{gap:3px;margin-left:auto;margin-right:5px;font-size:11px}.language-switcher a{min-width:31px}.brand>span:last-child{font-size:11px}html[lang=zh-Hant-TW] .hero h1{font-size:36px}html[lang=zh-Hant-TW] .cover-title{font-size:30px}html[lang=zh-Hant-TW] .navigation{gap:4px}html[lang=zh-Hant-TW] .cta h2{font-size:29px}.nav-wrap{gap:8px}}.language-warning{background:var(--paper);border:1px solid var(--line);white-space:normal;z-index:60;width:calc(100% - 40px);max-width:380px;padding:20px;font-size:14px;position:absolute;top:calc(100% + 8px);right:20px;box-shadow:0 12px 35px #172e3b26}.language-warning p{margin:0 0 12px}.language-warning>div{align-items:center;gap:16px;display:flex}.language-warning button{font:inherit;background:var(--ink);color:var(--paper);cursor:pointer;border:0;padding:10px 14px}.language-warning a{color:var(--ink);text-decoration:underline}.menu-toggle{white-space:nowrap;flex-shrink:0}@media (max-width:380px){.brand>span:last-child{display:none}.menu-toggle{padding-inline:10px}}
