:root{--paper:#f6f2ec;--ink:#302a26;--wine:#78434e;--muted:#70675f;--line:#e2d9cf;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--wine);outline-offset:6px}.wrap{max-width:1260px;width:calc(100% - 112px);margin:auto}.header{max-width:1440px;margin:auto;padding:25px 56px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:13px;font-family:var(--serif);font-size:25px;line-height:1.2;color:var(--wine);white-space:nowrap}.brand small{display:block;font:9px Arial,sans-serif;letter-spacing:3.8px;margin-top:8px}.header nav{display:flex;align-items:center;gap:34px;font-size:12px}.header nav a:hover,.text-link:hover{color:var(--wine)}.nav-contact{border:1px solid var(--wine);padding:10px 22px;color:var(--wine)}.nav-contact span{margin-left:30px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:85px;padding-top:70px;padding-bottom:65px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2.2px;color:var(--wine);font-weight:600;margin:0 0 27px}.dot{display:inline-block;width:6px;height:6px;background:var(--wine);border-radius:100%;margin-right:8px;vertical-align:middle}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(52px,5.5vw,80px);line-height:1.06;letter-spacing:-3.4px;margin-bottom:27px}em{font-weight:400;color:var(--wine)}.intro{font-family:var(--serif);font-size:23px;margin-bottom:12px}.hero-description{max-width:410px;color:var(--muted);font-size:14px;line-height:1.85;margin-bottom:26px}.button{display:inline-flex;gap:35px;align-items:center;background:var(--wine);color:#fff9f0;padding:14px 24px;font-size:12px;transition:background .2s}.button:hover{background:#55202a}.button span{font-size:19px}.text-link{display:block;width:fit-content;font-size:11px;margin-top:18px;border-bottom:1px solid var(--line);padding-bottom:6px}.text-link span{margin-left:20px}.hero-location{display:flex;gap:35px;font-size:8px;letter-spacing:1.5px;margin-top:44px;color:var(--muted)}.portrait{margin:0 auto;position:relative;width:100%;max-width:340px;padding:9px 9px 0;border:1px solid #e6ddd4;border-radius:180px 180px 18px 18px;background:#fbf8f3;box-shadow:0 20px 65px -35px #6b4c3a45}.portrait-frame{height:auto;aspect-ratio:4/5;overflow:hidden;background:#fff;border-radius:170px 170px 12px 12px}.portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 40%;transform:scale(1.015)}.portrait figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 5px;font-family:var(--serif);font-size:16px}.portrait figcaption span:last-child{font:7px Arial;letter-spacing:.6px}.principles{background:linear-gradient(180deg,var(--paper),#eee7df 40%,#eee7df 60%,var(--paper));border:0}.principles .wrap{display:flex;justify-content:space-between;align-items:center;padding:22px 0;font:17px var(--serif)}.principles i{font-size:23px;color:var(--wine)}.section{padding-top:100px;padding-bottom:100px}h2{font-size:clamp(37px,4vw,55px);letter-spacing:-1.7px;line-height:1.15;margin-bottom:25px}.about{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.about-copy{padding-top:35px}.about-copy>p{color:var(--muted);font-size:14px}.about-copy .lead{font:25px/1.5 var(--serif);color:var(--ink);margin-bottom:24px}.about-details{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;border-top:1px solid var(--line);padding-top:24px;margin-top:28px}.about-details small{display:block;font-size:9px;letter-spacing:1.6px;color:var(--wine);margin-bottom:10px}.about-details span{font-size:12px}.practice{background:linear-gradient(180deg,var(--paper),#eee7df 15%,#eee7df 85%,var(--paper))}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:40px}.section-head>p{max-width:300px;color:var(--muted);font-size:13px;padding-bottom:12px}.practice-list{border-top:1px solid #c9bfb1}details{border-bottom:1px solid #c9bfb1}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:35px;padding:27px 0}summary::-webkit-details-marker{display:none}.number{font-size:11px;color:var(--wine);min-width:28px}summary h3{font-size:29px;line-height:1.3;margin:0}.plus{margin-left:auto;position:relative;width:24px;height:24px;flex-shrink:0}.plus:before,.plus:after{content:'';position:absolute;background:var(--wine);width:15px;height:1px;left:4px;top:12px}.plus:after{transform:rotate(90deg)}details[open] .plus:after{transform:rotate(0)}.detail-content{margin-left:63px;padding:0 0 30px;max-width:710px}.detail-content p{font-size:14px;color:var(--muted);max-width:620px}.detail-content>span{font-size:8px;letter-spacing:1.5px;color:var(--wine)}.experience{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.experience-heading>p:not(.eyebrow){max-width:300px;color:var(--muted);font-size:13px}.seal{margin-top:30px;opacity:.75}.timeline{border-left:1px solid var(--line);padding-left:35px}.timeline article{position:relative;border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:25px}.timeline article:last-child{border-bottom:0;margin:0;padding:0}.timeline article:before{position:absolute;content:'';width:7px;height:7px;left:-39px;top:6px;background:var(--wine);border-radius:50%}.date{font-size:8px;letter-spacing:1.2px;color:var(--wine);margin-bottom:8px}.timeline h3{font-size:26px;margin-bottom:5px}.timeline .office{font-size:12px;color:var(--ink);margin-bottom:9px}.timeline p:last-child{font-size:13px;color:var(--muted);margin-bottom:0}.education{border-top:1px solid var(--line);padding:40px 0 85px;display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.education .eyebrow{margin-bottom:12px}.education h3{font-size:28px}.education>div>p:not(.eyebrow){font-size:13px;margin-bottom:12px}.education .thesis{border-top:1px solid var(--line);padding-top:18px;margin-top:22px;font-family:var(--serif);font-size:17px!important}.thesis small{display:block;font:11px Arial;color:var(--muted);padding-top:8px}.contact{background:linear-gradient(125deg,#80515b,#6b3c47 65%,#75434d);color:#f7efe5;padding:75px 0}.contact-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:90px;align-items:center}.contact .eyebrow{color:#dbb2ab}.contact h2{font-size:58px}.contact em{color:#dfb6ad}.contact p{font-size:13px;color:#dfcec8}.contact-action{padding-top:25px}.email-label{font-size:9px;letter-spacing:2px;color:#dbb2ab}.email{display:flex;justify-content:space-between;gap:15px;font:clamp(19px,2.1vw,29px) var(--serif);padding:18px 0;border-bottom:1px solid #9a6269;overflow-wrap:anywhere}.email span{flex-shrink:0}.contact button{background:none;border:0;color:#ecd7ce;padding:14px 0;font-size:10px}.contact button span{margin-left:16px}.contact-action p{max-width:420px;font-size:11px;line-height:1.8;margin-top:20px;color:#cdb8b3}#copy-status{display:block;font-size:11px;min-height:18px}.contact a:focus-visible,.contact button:focus-visible{outline-color:#fff}footer{padding-top:35px;padding-bottom:25px}.footer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.footer-top>a:last-child{font-size:11px}.disclaimer{font-size:10px;line-height:1.8;color:var(--muted);max-width:850px}.footer-bottom{display:flex;justify-content:space-between;padding-top:20px;margin-top:25px;border-top:1px solid var(--line);font-size:9px;color:var(--muted)}.skip{position:fixed;top:-60px;left:20px;z-index:20;background:white;padding:10px}.skip:focus{top:10px}@media(min-width:1500px){.hero{gap:100px}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.header{padding:22px 32px}.header nav{gap:20px}.hero{gap:35px}h1{font-size:60px}.portrait{max-width:300px}.portrait figcaption span:last-child{display:none}.about,.experience,.education,.contact-inner{gap:45px}.contact h2{font-size:48px}.principles .wrap{font-size:15px}}@media(max-width:720px){html{scroll-padding-top:24px}.wrap{width:calc(100% - 40px)}.header{padding:18px 20px;position:relative;flex-wrap:wrap;gap:0}.brand{font-size:22px}.brand img{width:41px;height:41px}.menu-toggle{display:flex;gap:12px;background:none;border:0;color:var(--wine);font-size:12px;padding:10px 0}.header nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:20px}.header nav.open{display:flex}.header nav a{padding:13px 10px;border-bottom:1px solid var(--line)}.nav-contact{margin-top:10px}.hero{grid-template-columns:1fr;gap:35px;padding:42px 0}.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:22px}h1{font-size:58px;letter-spacing:-2.8px}.hero-description{max-width:100%}.hero-location{margin-top:28px}.portrait{max-width:260px;width:100%;margin:6px auto 10px}.portrait-frame{height:auto;aspect-ratio:4/5}.portrait figcaption span:last-child{display:none}.principles .wrap{display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:15px;text-align:center}.principles i{display:none}.section{padding-top:60px;padding-bottom:60px}.about,.experience,.education,.contact-inner{grid-template-columns:1fr;gap:24px}.about-copy{padding-top:0}h2{font-size:43px}.about-copy .lead{font-size:23px}.section-head{display:block;margin-bottom:25px}.section-head>p{max-width:100%;padding:0}.section-head h2{margin-bottom:20px}summary{gap:12px;padding:23px 0}summary h3{font-size:23px}.number{min-width:20px;font-size:9px}.detail-content{margin-left:32px}.experience-heading .seal{display:none}.timeline{margin-left:4px;padding-left:25px}.timeline article:before{left:-29px}.education{padding-top:30px;padding-bottom:50px}.education h3{margin-bottom:0}.contact{padding:55px 0}.contact h2{font-size:48px}.contact-action{padding-top:0}.email{font-size:23px}.footer-top .brand{font-size:20px}.footer-bottom{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Soft motion and restrained surface treatments. */
.button,.nav-contact{border-radius:7px;transition:background .25s ease,box-shadow .25s ease,transform .25s ease}
.button:hover{background:#693642;box-shadow:0 8px 22px -12px #78434e88;transform:translateY(-2px)}
.nav-contact:hover{background:#eee5e2}
.text-link,.header nav a,.footer-top>a:last-child{transition:color .25s ease,border-color .25s ease}
.hero-copy{animation:soft-enter .9s cubic-bezier(.2,.65,.3,1) both}
.portrait{animation:soft-enter 1.1s .12s cubic-bezier(.2,.65,.3,1) both}
.portrait:before{content:'';position:absolute;inset:-36px;z-index:-1;border-radius:50%;background:radial-gradient(ellipse,#e9dcd666,transparent 70%);pointer-events:none}
summary{transition:color .25s ease}summary:hover{color:var(--wine)}
.plus:after{transition:transform .3s ease}
details[open] .detail-content{animation:soft-enter .4s ease both}
.soft-enter{animation:soft-enter .8s cubic-bezier(.2,.65,.3,1) both}
@keyframes soft-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:720px){.portrait figcaption{justify-content:center}.hero{gap:26px}.hero-copy{animation-duration:.7s}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.button:hover{transform:none}}
