:root{--ink:#263d35;--green:#35594e;--green-dark:#25453b;--muted:#58685f;--paper:#faf9f6;--cream:#efede5;--line:#d8ddd6;--white:#fff;--gold:#a68148;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.65}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:5px;outline:3px solid #9b5a18}main:focus{outline:none}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1.16}h1{margin-bottom:28px;font-size:clamp(2.5rem,4.3vw,3.6rem)}h2{font-size:clamp(1.75rem,2.7vw,2.6rem)}p{margin-bottom:1.25em}.wrap{width:min(1240px,100% - 96px);margin-inline:auto}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--green);margin-bottom:23px;font-size:.68rem;font-weight:700;line-height:1.6}.contact-strip{background:var(--green);color:#fff;font-size:.72rem}.contact-strip>.wrap{justify-content:space-between;align-items:center;min-height:44px;display:flex}.contact-strip>.wrap>div{gap:28px;display:flex}.contact-strip a{align-items:center;gap:10px;min-height:44px;text-decoration:none;display:flex}.contact-strip img{object-fit:contain;width:16px;height:16px}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:32px;min-height:113px;display:flex}.brand{letter-spacing:-.06em;flex-shrink:0;align-items:center;gap:14px;font-size:1.52rem;font-weight:700;line-height:1.15;text-decoration:none;display:flex}.brand-light{font-weight:400}.brand small{letter-spacing:.18em;margin-top:9px;font-size:.48rem;font-weight:400;display:block}.brand-symbol{align-items:center;gap:4px;width:28px;display:flex;transform:rotate(25deg)}.brand-symbol i{background:var(--green);border-radius:5px;width:5px;height:25px}.brand-symbol i:nth-child(2){height:40px}.brand-symbol i:nth-child(3){height:31px}nav ul{margin:0;padding:0;list-style:none}#hauptnavigation ul{gap:22px;display:flex}#hauptnavigation a{white-space:nowrap;align-items:center;min-height:48px;font-size:.77rem;text-decoration:none;display:flex;position:relative}#hauptnavigation a[aria-current]{font-weight:700}#hauptnavigation a[aria-current]:after{content:"";background:var(--green);height:2px;position:absolute;bottom:1px;left:0;right:0}#hauptnavigation a:hover{color:#527254}.menu-toggle{display:none}.skip-link{color:var(--ink);z-index:20;background:#fff;padding:12px 20px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:64px;padding-block:64px 55px;display:grid}.hero-copy{padding-block:8px}.hero .eyebrow{align-items:center;gap:10px;display:flex}.small-rule{background:var(--gold);width:25px;height:1px}.hero h1{max-width:590px}.hero-description{color:var(--muted);font-size:.93rem;line-height:1.75}.actions{flex-wrap:wrap;align-items:center;gap:25px;margin:30px 0;display:flex}.button{background:var(--green);color:#fff;border:1px solid var(--green);border-radius:3px;justify-content:center;align-items:center;gap:25px;min-height:54px;padding:13px 23px;font-size:.83rem;font-weight:600;text-decoration:none;transition:background-color .18s,transform .16s;display:inline-flex}.button.secondary{color:var(--green);background:0 0;border-color:#9aa99c}.button:active{transform:scale(.98)}.button:hover{background:var(--green-dark);color:#fff}.button:disabled{opacity:.6;cursor:wait}.text-link{align-items:center;gap:16px;min-height:48px;font-size:.83rem;font-weight:600;display:inline-flex}.hero-address{color:var(--muted);gap:9px;margin-bottom:0;font-size:.68rem;display:flex}.hero-address>span{font-size:1.1rem}.hero-visual{padding:0 0 26px;position:relative}.home-photo{margin:0}.home-photo img{aspect-ratio:1.2;object-fit:cover;border-radius:3px;width:100%;height:auto}.photo-label{background:var(--paper);border:1px solid var(--line);align-items:center;gap:12px;max-width:calc(100% - 22px);padding:15px 23px;font-size:.7rem;display:flex;position:absolute;bottom:0;left:22px}.photo-dot{background:var(--green);border-radius:50%;width:7px;height:7px}.quick-links{border-block:1px solid var(--line);grid-template-columns:1fr 1.2fr 1fr;gap:28px;padding-block:26px;display:grid}.quick-links>a{border-right:1px solid var(--line);flex-direction:column;justify-content:center;min-height:58px;padding-inline:24px 30px;text-decoration:none;display:flex;position:relative}.quick-links>a:first-child{padding-left:0}.quick-links>a:last-child{border:0}.quick-links>a>span:first-child{color:var(--muted);margin-bottom:3px;font-size:.67rem}.quick-links strong{font-size:.87rem;font-weight:500}.quick-links>a>span:last-child{color:var(--green);font-size:1.25rem;position:absolute;right:20px}.home-services{padding-block:90px 65px}.home-services .prose>h2{max-width:760px;margin-bottom:44px}.home-services .prose{max-width:none}.service-links{grid-template-columns:1fr 1fr;column-gap:65px;list-style:none;display:grid;margin-bottom:32px!important;padding:0!important}.service-links li{border-top:1px solid var(--line);margin:0!important;padding:0!important}.service-links p{margin:0}.service-links a{padding:24px 37px 24px 0;font-size:.95rem;text-decoration:none;display:block;position:relative}.service-links a:after{content:"↗";color:var(--green);position:absolute;top:24px;right:3px}.service-links a:hover{text-decoration:underline}.practice-teaser{background:var(--cream);grid-template-columns:1fr 1fr;align-items:center;gap:65px;margin-bottom:90px;padding:40px;display:grid}.practice-teaser img{aspect-ratio:1.55;object-fit:cover;width:100%}.practice-teaser .actions{margin-bottom:0}.practice-details{background:#e9eee7;padding-block:60px;overflow:hidden}.qualifications{justify-content:space-between;gap:35px;display:flex;position:relative}.qualifications>div{z-index:1;max-width:830px;position:relative}.qualifications h2{margin-bottom:22px;font-size:2rem}.qualifications .eyebrow{margin-bottom:16px}.credentials{max-width:780px;font-size:.85rem}.qualifications>img{object-fit:cover;object-position:top;opacity:.8;border-radius:70px;align-self:center;width:135px;height:200px}.site-footer{background:var(--paper)}.footer-grid{grid-template-columns:1.2fr 1.2fr .65fr;gap:65px;padding-block:65px 48px;display:grid}.footer-grid h2{letter-spacing:0;max-width:300px;margin-bottom:18px;font-family:Arial,sans-serif;font-size:.85rem;font-weight:700;line-height:1.6}.footer-grid p,.language-list{color:var(--muted);font-size:.82rem}.language-list{padding:0;list-style:none}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:25px;padding-block:22px;font-size:.63rem;display:flex}.page-wrap{padding-block:26px 70px}.breadcrumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:48px;font-size:.75rem;display:flex}.breadcrumbs a{align-items:center;min-height:44px;display:inline-flex}.page-heading{max-width:920px;margin-bottom:45px}.page-heading .eyebrow{margin-bottom:16px}.page-body.with-sidebar{grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:85px;display:grid}.prose{overflow-wrap:break-word;max-width:800px;font-size:1.05rem}.prose p{line-height:1.85}.prose h2{margin:42px 0 24px;font-size:1.75rem}.prose>h2:first-child{margin-top:0}.prose h3{font-size:1.3rem}.prose ul,.prose ol{margin-bottom:30px;padding-left:26px}.prose li{margin-bottom:14px;padding-left:6px}.prose .content-image{margin-block:35px}.content-image img{object-fit:contain;border-radius:3px;width:auto;max-height:650px}.image-group{align-items:flex-start;gap:24px;margin-block:34px;display:flex}.image-group img{object-fit:contain;width:auto;min-width:0;max-width:calc(50% - 12px)}.image-group:has(img:nth-child(3)) img{max-width:calc(33.333% - 16px)}.is-gallery .prose{max-width:920px}.is-gallery .content-image img{width:100%;max-height:none}.is-team .content-image img{width:auto;max-height:500px}.is-team .image-group img{width:auto;height:auto;max-height:460px}.service-navigation{margin-bottom:30px}.service-navigation ul{padding:0;list-style:none}.service-navigation li{border-top:1px solid var(--line);margin:0;padding:0}.service-navigation a{justify-content:space-between;align-items:center;gap:16px;min-height:54px;padding:13px 0;font-size:.86rem;text-decoration:none;display:flex}.service-navigation a[aria-current]{font-weight:700;text-decoration:underline}.service-navigation a:hover{background:#e9eee7}.page-body:not(.with-sidebar) .service-navigation ul{grid-template-columns:1fr 1fr;gap:0 55px;display:grid}.contact-callout{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;margin-top:65px;padding-top:40px;display:flex}.contact-callout h2{margin-bottom:0;font-size:1.75rem}.contact-callout .eyebrow{margin-bottom:12px}.timeline{border-collapse:collapse;width:100%;font-size:.95rem}.timeline th,.timeline td{border-bottom:1px solid var(--line);vertical-align:top;text-align:left;padding:20px 14px 20px 0}.timeline th{width:130px;color:var(--green);font-weight:600}.timeline p{margin:12px 0 0}.hours{margin:0 0 35px}.hours>div{border-bottom:1px solid var(--line);grid-template-columns:155px 1fr;gap:20px;padding:15px 0;display:grid}.hours dt{font-weight:600}.hours dd{margin:0}.hours-block{background:#f0f2ec;margin-bottom:35px;padding:26px 30px}.hours-block .hours{margin:0}.hours-block h2{margin-top:0}.hours-block .hours>div:last-child{border:0}.is-contact .prose{max-width:850px}.form-note{color:var(--muted);font-size:.85rem}form{grid-template-columns:1fr 1fr;gap:28px;margin-top:25px;display:grid}form dl{margin:0}form dd{margin:5px 0 22px}form dt{font-size:.9rem;font-weight:600}input,textarea{width:100%;min-height:50px;color:var(--ink);background:#fff;border:1px solid #819183;border-radius:3px;padding:12px}textarea{resize:vertical;min-height:232px}input[type=submit]{background:var(--green);color:#fff;cursor:pointer;width:auto;padding-inline:35px;font-weight:600}input[type=submit]:hover{background:var(--green-dark)}form:invalid input:user-invalid{border-color:#a52c22}.map-panel{border:1px solid var(--line);background:#edf0e8;margin-top:40px;padding:32px}.map-panel p{font-size:.85rem}.map-panel h2{margin-top:16px}.map{width:100%;height:420px;position:relative;overflow:hidden}[hidden]{display:none!important}@media (hover:hover) and (pointer:fine){.quick-links>a:hover strong{text-underline-offset:5px;text-decoration:underline}.text-link:hover{color:#51734f}}@media (prefers-reduced-motion:no-preference){.hero-copy{animation:.35s ease-out appear}.hero-visual{animation:.45s ease-out appear}@keyframes appear{0%{opacity:.5;transform:translateY(6px)}to{opacity:1;transform:none}}}@media (width>=1500px){.hero{padding-block:85px 65px}.hero h1{font-size:3.7rem}}@media (width<=1199px){.wrap{width:calc(100% - 64px)}.header-inner{gap:20px}#hauptnavigation ul{gap:14px}.brand{font-size:1.35rem}.hero{gap:38px}.hero h1{font-size:3rem}.hero .actions{gap:16px}.button{padding:13px 18px}.page-body.with-sidebar{gap:45px}}@media (width<=1099px){.header-inner{flex-wrap:wrap;min-height:95px;padding-block:18px}.menu-toggle{border:1px solid var(--line);min-height:48px;color:var(--green);background:0 0;border-radius:3px;align-items:center;gap:12px;padding:8px 15px;display:none}.has-menu .menu-toggle{display:flex}#hauptnavigation{width:100%}.has-menu #hauptnavigation{display:none}.has-menu #hauptnavigation.is-open{display:block}#hauptnavigation ul{grid-template-columns:1fr 1fr;gap:5px 24px;display:grid}#hauptnavigation a{min-height:52px;padding:8px;font-size:.9rem}.hero h1{font-size:2.7rem}.hero{gap:30px}.hero-description{font-size:.9rem}.hero-address{font-size:.7rem}.quick-links{gap:10px}.quick-links>a{padding-left:15px}.quick-links strong{font-size:.78rem}.quick-links>a>span:last-child{right:12px}.footer-grid{gap:35px}.hero .eyebrow{font-size:.6rem}.practice-teaser{gap:35px}}@media (width<=760px){:root{font-size:18px}.wrap{width:calc(100% - 40px)}.contact-strip>.wrap>span{display:none}.contact-strip>.wrap{justify-content:center}.contact-strip>.wrap>div{gap:20px}.contact-strip a{gap:7px;font-size:.66rem}.contact-strip img{width:14px;height:14px}.brand{font-size:1.45rem}.brand small{font-size:.45rem}.header-inner{min-height:88px}.hero{grid-template-columns:1fr;gap:32px;padding-block:40px 30px}.hero h1{max-width:580px;font-size:clamp(2.7rem,9vw,3.4rem)}.hero .eyebrow{font-size:.64rem}.hero-description{font-size:1rem}.hero .actions{margin:25px 0 20px}.hero-address{font-size:.73rem}.hero-visual{width:100%;max-width:600px}.home-photo img{aspect-ratio:1.35}.photo-label{padding:12px 15px;font-size:.67rem;left:16px}.quick-links{grid-template-columns:1fr;gap:0;padding-block:6px}.quick-links>a,.quick-links>a:first-child{border-right:0;border-bottom:1px solid var(--line);padding:18px 35px 18px 0}.quick-links strong{font-size:.95rem}.quick-links>a>span:first-child{font-size:.75rem}.quick-links>a>span:last-child{right:4px}.home-services{padding-block:55px}.service-links{grid-template-columns:1fr;gap:0}.home-services .prose>h2{font-size:2rem}.service-links a{font-size:1rem}.practice-teaser{grid-template-columns:1fr;gap:28px;margin-bottom:55px;padding:22px}.practice-teaser .actions{gap:15px}.practice-details{padding-block:40px}.qualifications>img{display:none}.qualifications h2{font-size:1.8rem}.credentials{font-size:.87rem}.footer-grid{grid-template-columns:1fr;gap:30px;padding-block:40px}.footer-grid h2{font-size:1rem}.footer-grid p,.language-list{font-size:.95rem}.language-list{flex-wrap:wrap;gap:6px 22px;display:flex}.footer-bottom{grid-template-columns:1fr;gap:8px;font-size:.77rem;display:grid}.footer-bottom a{align-items:center;min-height:44px;display:inline-flex}.page-wrap{padding-block:16px 45px}.breadcrumbs{margin-bottom:30px;font-size:.77rem}.page-heading{margin-bottom:30px}.page-heading h1{overflow-wrap:break-word;font-size:2.45rem}.page-body.with-sidebar{grid-template-columns:1fr;gap:40px}.prose{font-size:1rem}.prose h2{font-size:1.65rem}.page-body:not(.with-sidebar) .service-navigation ul{grid-template-columns:1fr}.service-navigation a{min-height:58px;font-size:1rem}.contact-callout{flex-direction:column;align-items:flex-start;margin-top:45px;padding-top:28px}.hours-block{padding:20px 17px}.hours>div{grid-template-columns:1fr;gap:3px}.hours dd{font-size:.95rem}.timeline{font-size:.9rem}.timeline th{overflow-wrap:anywhere;width:100px}.timeline td{padding-right:0}.image-group{gap:12px}.image-group img{max-width:calc(50% - 6px)}.image-group:has(img:nth-child(3)) img{max-width:calc(33.333% - 8px)}form{grid-template-columns:1fr;gap:0}textarea{min-height:160px}.map-panel{padding:20px}.map-panel .actions{gap:15px}.map{height:340px}}@media (width<=360px){.wrap{width:calc(100% - 32px)}.contact-strip>.wrap>div{gap:12px}.contact-strip a{font-size:.6rem}.brand{font-size:1.25rem}.brand-symbol{width:23px}.brand{gap:10px}.menu-toggle{padding:8px 10px}.menu-icon{font-size:.9rem}.hero h1{font-size:2.5rem}.actions{gap:12px}.button{gap:15px;font-size:.82rem}.photo-label{font-size:.59rem}#hauptnavigation ul{grid-template-columns:1fr}.timeline th{width:90px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{.contact-strip,.menu-toggle,.actions,.quick-links,.practice-teaser,.service-navigation,.map-panel,form,.footer-bottom{display:none}.wrap{width:100%}.hero,.footer-grid,.page-body.with-sidebar{display:block}.hero-visual{max-width:400px}body{color:#000;background:#fff}a{text-decoration:underline}.practice-details{background:#fff}}#hauptnavigation a{font-size:.89rem}.button,.text-link{font-size:.9rem}.footer-grid p,.language-list,.service-navigation a{font-size:.94rem}.footer-bottom{font-size:.78rem}.hero-address{font-size:.8rem}.quick-links>a>span:first-child{font-size:.78rem}.quick-links strong{font-size:.95rem}.contact-strip{font-size:.78rem}@media (width<=1199px) and (width>=1100px){#hauptnavigation ul{gap:12px}#hauptnavigation a{font-size:.82rem}.brand{font-size:1.25rem}}@media (width<=760px){.contact-strip a{font-size:.72rem}.hero-address{font-size:.77rem}.photo-label{font-size:.72rem}}@media (width<=360px){.contact-strip a,.photo-label{font-size:.65rem}.hero h1{font-size:2.3rem}}
