:root{--bg:#f8f6f1;--surface:#fff;--surface-muted:#eef1ec;--ink:#14212b;--muted:#5f6a72;--line:#d9ded6;--navy:#123247;--green:#254f45;--gold:#a9752d;--focus:#8a5a16;--shadow:0 18px 45px #1232471a;--radius:8px;--container:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);text-rendering:optimizelegibility;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:0;font-family:Georgia,Times New Roman,serif;line-height:1.1}h1{max-width:820px;margin-bottom:1rem;font-size:clamp(2.75rem,7vw,5.75rem)}h2{margin-bottom:.85rem;font-size:clamp(1.75rem,4vw,2.65rem)}h3{margin-bottom:.5rem;font-size:1.2rem}p{color:var(--muted)}.container{width:min(100% - 2rem, var(--container));margin-inline:auto}.narrow{max-width:860px}.section{padding:5rem 0}.site-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f8f6f1f0;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1.25rem;min-height:76px;display:flex}.brand{align-items:center;gap:.75rem;min-width:220px;display:inline-flex}.brand-mark{border:1px solid var(--green);width:42px;height:42px;color:var(--green);border-radius:50%;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:.9rem;font-weight:700;display:grid}.brand-name,.brand-context{display:block}.brand-name{font-weight:700}.brand-context{color:var(--muted);font-size:.78rem}.main-nav,.footer-links{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.main-nav a,.footer-links a{border-radius:var(--radius);color:var(--muted);padding:.55rem .7rem;font-size:.95rem}.main-nav a:hover,.footer-links a:hover{background:var(--surface-muted);color:var(--ink)}.hero{background:var(--surface);border-bottom:1px solid var(--line);padding-top:6rem}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:clamp(2rem,6vw,5rem);display:grid}.hero-subtitle{max-width:720px;color:var(--green);font-size:clamp(1.1rem,2vw,1.35rem);font-weight:700}.hero-text{max-width:760px;font-size:1.05rem}.eyebrow{color:var(--gold);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.7rem;font-size:.78rem;font-weight:800}.button-row{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}.button{border-radius:var(--radius);border:1px solid #0000;justify-content:center;align-items:center;gap:.55rem;min-height:46px;padding:.72rem 1rem;font-weight:800;transition:background .16s,color .16s,border-color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--green);color:#fff}.button-primary:hover{background:#1d4138}.button-secondary{background:var(--surface);border-color:var(--line);color:var(--navy)}.button-secondary:hover{border-color:var(--green)}.button-text{color:var(--navy);background:0 0;padding-inline:0}.portrait-panel{gap:1rem;display:grid}.portrait-frame{border:1px solid var(--line);border-radius:var(--radius);min-height:520px;box-shadow:var(--shadow);background:#eee8df;position:relative;overflow:hidden}.portrait-image{object-fit:cover;object-position:center top;width:100%;height:100%;min-height:520px;display:block}.portrait-note{border-left:4px solid var(--gold);background:var(--surface);justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.portrait-note p{color:var(--ink);margin:0;font-weight:700}.section-heading{max-width:760px;margin-bottom:2rem}.practice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.practice-grid li,.article-card,.experience-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.practice-grid li{min-height:76px;color:var(--ink);align-items:center;padding:1rem;font-weight:800;display:flex}.split-layout{grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:clamp(1.5rem,4vw,4rem);display:grid}.firm-positioning{background:var(--surface-muted);border-block:1px solid var(--line)}.notice{width:min(100% - 2rem, var(--container));border:1px solid #c8d1ca;border-left:5px solid var(--green);border-radius:var(--radius);background:var(--surface);margin:4rem auto;padding:clamp(1.25rem,3vw,2rem)}.notice h2{font-size:1.5rem}.notice p{margin-bottom:0}.cta-band{background:var(--navy);color:#fff}.cta-band p,.cta-band .eyebrow{color:#ffffffc7}.cta-inner{justify-content:space-between;align-items:center;gap:2rem;display:flex}.cta-inner>div:first-child{max-width:740px}.cta-band .button-secondary{color:#fff;background:0 0;border-color:#ffffff59}.page-hero{background:var(--surface);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.5rem,6vw,4.75rem)}.content-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:clamp(1.5rem,4vw,4rem);display:grid}.sidebar-note{border-top:4px solid var(--green);background:var(--surface);padding:1.25rem}.sidebar-note p{margin-bottom:.9rem}.sidebar-note p:last-child{margin-bottom:0}.prose{max-width:800px}.prose p{margin-bottom:1.1rem}.experience-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.experience-item{padding:1.25rem}.experience-item h2{font-size:1.35rem}.article-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.article-card{min-height:250px;padding:1.25rem}.article-card span{color:var(--gold);border:1px solid #d3c39f;border-radius:999px;margin-bottom:1rem;padding:.28rem .55rem;font-size:.78rem;font-weight:800;display:inline-flex}.article-card h2{font-size:1.35rem}.content-band{background:var(--surface-muted);border-block:1px solid var(--line)}.contact-layout{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(1.5rem,4vw,4rem);display:grid}.contact-routes,.form-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:clamp(1.25rem,3vw,2rem)}.route-list{gap:.75rem;margin-top:1.5rem;display:grid}.route-list .button{justify-content:flex-start;width:100%}.contact-form{gap:1rem;margin-top:1.5rem;display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.contact-form label{color:var(--ink);gap:.35rem;font-weight:800;display:grid}.contact-form input,.contact-form select,.contact-form textarea{border-radius:var(--radius);width:100%;color:var(--ink);background:#fff;border:1px solid #c9d0c7;padding:.78rem .85rem}.contact-form textarea{resize:vertical}.field-warning{color:var(--gold);font-size:.88rem;font-weight:700}.hidden-field{display:none!important}.checkbox-label{align-items:flex-start;gap:.7rem!important;font-weight:700!important;display:flex!important}.checkbox-label input{width:18px;min-width:18px;height:18px;margin-top:.25rem}.form-status{border-left:4px solid var(--gold);background:#fbf5e9;margin:0;padding:.85rem 1rem}.legal-page{min-height:64vh}.site-footer{color:#fff;background:#101820;padding:2.2rem 0}.footer-grid{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1.5rem;display:grid}.site-footer p{color:#ffffffc2;max-width:850px;margin-bottom:0;font-size:.92rem}.site-footer a{color:#ffffffd1}.site-footer a:hover{color:#fff;background:#ffffff14}@media (max-width:900px){.section{padding:3.5rem 0}.header-inner,.cta-inner{flex-direction:column;align-items:flex-start}.main-nav{width:100%}.hero-grid,.split-layout,.content-layout,.contact-layout,.footer-grid{grid-template-columns:1fr}.practice-grid,.experience-list,.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portrait-frame,.portrait-image{min-height:420px}}@media (max-width:640px){.container{width:min(100% - 1.25rem, var(--container))}.hero{padding-top:4rem}.brand{min-width:0}.brand-context{display:none}.main-nav a{padding-inline:.5rem}.practice-grid,.experience-list,.article-grid,.field-grid{grid-template-columns:1fr}.button,.route-list .button,.button-row{width:100%}.portrait-frame,.portrait-image{min-height:360px}}
