:root{color:#17211f;background:#f7f4ee;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility;--ink: #13201f;--ink-2: #253634;--paper: #f7f4ee;--paper-2: #ebe6dc;--surface: #fffdf8;--line: rgba(19, 32, 31, .14);--muted: #6d746f;--gold: #b98a4a;--wine: #7d2637;--sage: #5d796f;--shadow: 0 24px 70px rgba(19, 32, 31, .16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:linear-gradient(180deg,#fffdf8db,#f7f4eef2),var(--paper)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}:focus-visible{outline:3px solid rgba(185,138,74,.54);outline-offset:3px}.site-shell{min-height:100vh;overflow-x:hidden}.topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:24px;width:100%;min-height:72px;margin:0 auto;padding:12px max(16px,calc((100% - 1180px)/2));background:#f7f4eee0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:11px;min-width:0}.brand-mark,.card-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border:1px solid rgba(185,138,74,.34);background:#fbf5e8;color:var(--wine)}.brand strong,.brand small{display:block}.brand strong{overflow-wrap:anywhere;font-family:Georgia,Times New Roman,serif;font-size:1rem;line-height:1.15}.brand small{color:var(--muted);font-size:.78rem}.nav{display:flex;align-items:center;gap:6px;color:#33423f;font-size:.94rem}.nav a{border-radius:999px;padding:9px 12px;transition:background .16s ease,color .16s ease}.nav a:hover{background:#13201f12;color:var(--ink)}.topbar-cta,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;border-radius:4px;border:1px solid transparent;padding:0 18px;font-weight:760;transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease}.topbar-cta,.primary-button{background:var(--wine);color:#fffaf1;box-shadow:0 16px 34px #7d263733}.topbar-cta:hover,.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.secondary-button{border-color:#fffaf185;background:#fffdf817;color:#fffdf8}.menu-toggle{display:none;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink)}.hero-section{position:relative;display:grid;align-items:center;min-height:calc(100svh - 72px);overflow:hidden;background:var(--ink)}.hero-media,.hero-overlay{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.88}.hero-overlay{background:linear-gradient(90deg,#13201fe6,#13201fad 44%,#13201f42),linear-gradient(0deg,#13201f75,#13201f14)}.hero-content{position:relative;z-index:1;width:min(1180px,calc(100% - 32px));margin:0 auto;padding:96px 0 118px;color:#fffdf8}.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--gold);font-size:.78rem;font-weight:820;letter-spacing:0;text-transform:uppercase}.hero-content h1{max-width:760px;margin:18px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.2rem,8vw,7.8rem);line-height:.95;letter-spacing:0}.hero-content p{max-width:650px;margin:0;color:#fffdf8db;font-size:clamp(1.03rem,2vw,1.28rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.trust-strip{position:relative;z-index:5;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;width:min(1180px,calc(100% - 32px));margin:-34px auto 0;box-shadow:var(--shadow)}.trust-strip div{display:flex;align-items:center;gap:10px;min-height:78px;padding:18px 20px;background:var(--surface);color:var(--ink-2);font-weight:740}.trust-strip svg{color:var(--sage);flex:0 0 auto}.section,.approach-band,.profile-section,.contact-section{width:min(1180px,calc(100% - 32px));margin:0 auto}.section{padding:104px 0}.section-heading{max-width:760px;margin:0 auto 46px;text-align:center}.section-heading.left{margin:0;text-align:left}.section-heading.compact{max-width:680px}.section-heading h2,.approach-copy h2,.profile-copy h2,.contact-info h2{margin:12px 0 14px;color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4.2vw,4rem);line-height:1.02;letter-spacing:0}.section-heading p,.approach-copy p,.profile-copy p,.contact-info p{margin:0;color:var(--muted);font-size:1.05rem}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.practice-card,.testimonial-card,.publication-item,.contact-form,.faq-list details{border:1px solid var(--line);border-radius:8px;background:var(--surface)}.practice-card{min-height:260px;padding:28px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.practice-card:hover{transform:translateY(-3px);border-color:#b98a4a6b;box-shadow:0 20px 42px #13201f1a}.card-icon{margin-bottom:26px;color:var(--wine)}.practice-card h3,.timeline-item h3,.publication-item h3{margin:0 0 10px;color:var(--ink);font-size:1.18rem;line-height:1.25}.practice-card p,.timeline-item p,.testimonial-card blockquote,.faq-list p{margin:0;color:var(--muted)}.approach-band{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:64px;padding:86px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.timeline{display:grid;gap:14px}.timeline-item{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start;padding:22px 0;border-bottom:1px solid var(--line)}.timeline-item:first-child{padding-top:0}.timeline-item:last-child{border-bottom:0}.timeline-item>span{color:var(--gold);font-family:Georgia,Times New Roman,serif;font-size:1.7rem;line-height:1}.profile-section{display:grid;grid-template-columns:minmax(280px,.86fr) minmax(0,1.14fr);gap:64px;align-items:center;padding:108px 0}.profile-image{position:relative;min-height:620px;overflow:hidden;border-radius:8px;background:var(--paper-2);box-shadow:var(--shadow)}.profile-image img{width:100%;height:100%;min-height:620px;object-fit:cover;object-position:center top}.profile-copy p+p{margin-top:16px}.profile-points{display:grid;gap:12px;margin-top:28px}.profile-points span{display:flex;align-items:center;gap:10px;color:var(--ink-2);font-weight:740}.profile-points svg{color:var(--wine);flex:0 0 auto}.muted-section{width:100%;max-width:none;padding-right:max(16px,calc((100% - 1180px)/2));padding-left:max(16px,calc((100% - 1180px)/2));background:#ece7dc}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.testimonial-card{display:flex;min-height:260px;flex-direction:column;justify-content:space-between;margin:0;padding:28px}.testimonial-avatar{width:58px;height:58px;margin-bottom:22px;border:2px solid rgba(185,138,74,.32);border-radius:999px;background:var(--paper-2);object-fit:cover;object-position:center}.testimonial-card blockquote{font-size:1.02rem}.testimonial-card figcaption{display:grid;gap:2px;margin-top:26px}.testimonial-card strong{color:var(--ink)}.testimonial-card span{color:var(--muted);font-size:.92rem}.split-section{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:54px;align-items:start}.publication-list{display:grid;gap:14px}.publication-item{display:grid;grid-template-columns:minmax(120px,.24fr) 1fr auto;gap:20px;align-items:center;min-height:96px;padding:20px 24px;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.publication-item:hover{transform:translate(3px);border-color:#b98a4a70;box-shadow:0 18px 38px #13201f14}.publication-item span{color:var(--wine);font-weight:780}.publication-item small{color:var(--muted);white-space:nowrap}.faq-section{padding-top:20px}.faq-list{display:grid;gap:12px;max-width:860px;margin:0 auto}.faq-list details{padding:20px 24px}.faq-list summary{cursor:pointer;color:var(--ink);font-weight:780}.faq-list p{padding-top:12px}.contact-section{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(320px,1.18fr);gap:54px;align-items:start;padding:104px 0}.contact-methods{display:grid;gap:12px;margin-top:28px}.contact-methods a,.contact-methods span{display:inline-flex;align-items:center;gap:10px;width:fit-content;color:var(--ink-2);font-weight:740}.contact-methods svg{color:var(--wine)}.contact-form{display:grid;gap:17px;padding:30px;box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form label{display:grid;gap:7px;color:var(--ink);font-size:.94rem;font-weight:780}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(19,32,31,.2);border-radius:4px;background:#fffaf1;color:var(--ink);padding:13px 14px;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:#7d263794;background:#fffdf8;box-shadow:0 0 0 4px #7d263714}.consent{grid-template-columns:auto 1fr;align-items:start;gap:10px;color:var(--muted);font-size:.9rem;font-weight:620}.consent input{width:18px;height:18px;margin-top:2px;accent-color:var(--wine)}.field-error{color:#9f1f34;font-size:.84rem;font-weight:720}.success-message{border:1px solid rgba(93,121,111,.34);border-radius:4px;background:#5d796f1c;color:#36554b;padding:12px 14px;font-weight:740}.full-width{width:100%}.footer{padding:64px max(16px,calc((100% - 1180px)/2)) 34px;background:var(--ink);color:#fffdf8d1}.footer-main{display:grid;grid-template-columns:minmax(260px,1.1fr) minmax(160px,.55fr) minmax(260px,.95fr);gap:72px}.footer-brand strong{display:block;color:#fffdf8;font-family:Georgia,Times New Roman,serif;font-size:1.68rem;letter-spacing:.12em}.footer-brand p{max-width:420px;margin:24px 0 0;color:#fffdf8b8;font-family:Georgia,Times New Roman,serif;font-size:1.08rem;line-height:1.48}.footer h2{margin:0 0 22px;color:var(--gold);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.footer-nav,.footer-contact,.footer-bottom div{display:grid;gap:12px}.footer-nav a,.footer-contact a{color:#fffdf8b3;font-family:Georgia,Times New Roman,serif;font-size:1rem;transition:color .16s ease}.footer-nav a:hover,.footer-contact a:hover,.footer-bottom a:hover{color:#fffdf8}.footer-contact{font-style:normal}.footer-contact a{display:flex;align-items:flex-start;gap:12px}.footer-contact svg{margin-top:2px;color:var(--gold);flex:0 0 auto}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:68px;padding-top:26px;border-top:1px solid rgba(255,253,248,.12);color:#fffdf86b;font-size:.92rem}.footer-bottom div{grid-auto-flow:column;gap:34px}.footer-bottom a{color:#fffdf87a}@media(max-width:980px){.topbar{grid-template-columns:1fr auto}.nav{position:absolute;top:72px;right:0;left:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px;border:1px solid var(--line);background:#fffdf8f7;box-shadow:var(--shadow)}.nav-open{display:flex}.nav a{border-radius:4px;padding:13px 14px}.topbar-cta{display:none}.menu-toggle{display:grid}.hero-content{padding-top:70px}.practice-grid,.testimonial-grid{grid-template-columns:repeat(2,1fr)}.approach-band,.profile-section,.split-section,.contact-section{grid-template-columns:1fr;gap:36px}.profile-section{padding-top:84px}.profile-image,.profile-image img{min-height:520px}}@media(max-width:720px){.topbar{width:100%;min-height:68px;padding-right:14px;padding-left:14px}.brand strong{font-size:.94rem}.hero-section{min-height:auto}.hero-content{width:min(100% - 28px,1180px);padding:52px 0 58px}.hero-content h1{font-size:clamp(2.7rem,14vw,3.9rem)}.hero-actions{display:grid}.trust-strip,.practice-grid,.testimonial-grid,.form-row{grid-template-columns:1fr}.trust-strip{margin-top:-22px}.section,.approach-band,.profile-section,.contact-section{width:min(100% - 28px,1180px)}.section{padding:72px 0}.muted-section{width:100%;padding-right:14px;padding-left:14px}.practice-card,.testimonial-card,.contact-form{padding:22px}.timeline-item{grid-template-columns:48px 1fr;gap:14px}.profile-image,.profile-image img{min-height:440px}.publication-item{grid-template-columns:1fr;gap:8px;padding:20px}.publication-item small{white-space:normal}.footer{padding-top:48px}.footer-main{grid-template-columns:1fr;gap:34px}.footer-bottom{align-items:flex-start;flex-direction:column;margin-top:42px}.footer-bottom div{flex-wrap:wrap;grid-auto-flow:row;gap:12px}}@media(max-width:430px){.brand-mark{width:38px;height:38px}.brand small{display:none}.hero-content h1{font-size:clamp(2.46rem,13vw,3.35rem)}.section-heading h2,.approach-copy h2,.profile-copy h2,.contact-info h2{font-size:2rem}}
