*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.6}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible{outline:3px solid #d38116;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15;font-weight:400}h1,h2{font-family:Georgia,'Times New Roman',serif}h2{font-size:44px;letter-spacing:-1.3px}h3{font-size:23px}p{margin-top:16px}header{display:flex;align-items:center;justify-content:space-between;padding:30px 6%;gap:28px}nav{display:flex;gap:27px;align-items:center}nav a{font-size:16px;text-decoration:none;padding:8px 0}.brand{display:inline-flex;flex-direction:column;text-decoration:none;line-height:1;flex-shrink:0}.brand span{font-family:Georgia,serif;font-size:34px;letter-spacing:3px}.brand small{font-size:12px;font-weight:600;letter-spacing:5px;margin-top:10px}.phone{font-weight:700;white-space:nowrap}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;margin:0 0 24px;line-height:1.6}.intro{font-size:21px;line-height:1.6}.button{display:inline-block;padding:15px 25px;background:var(--accent);color:white;text-decoration:none;font-size:17px;font-weight:600;min-height:54px}.button:hover{filter:brightness(.9)}.text-link{font-size:17px;font-weight:600}.actions{display:flex;align-items:center;gap:30px;margin-top:35px}.area{padding:22px 6%;display:flex;justify-content:space-between;gap:20px;font-size:15px;border-bottom:1px solid var(--line)}.area span{opacity:.85}.estate-section{padding:85px 6%;display:grid;grid-template-columns:1fr 1.15fr;gap:8%}.section-intro>p:last-child{max-width:450px}.service-list article{display:flex;gap:24px;border-bottom:1px solid var(--line);padding:25px 0}.service-list article:first-child{padding-top:0}.service-list article>span{font-size:14px;color:var(--accent);padding-top:3px}.service-list p{font-size:17px;margin-top:10px}.other{padding:65px 6%}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:38px}.three>div{border-top:1px solid var(--line);padding-top:24px}.three p{font-size:17px;margin-top:12px}.team{padding:70px 6%;display:grid;grid-template-columns:1.05fr 1fr 1fr;gap:35px}.team h2{font-size:36px}.attorney{border-top:1px solid var(--line);padding-top:20px}.attorney h3{font-family:Georgia,serif;font-size:24px}.attorney p{font-size:16px}.contact{padding:70px 6%;display:grid;grid-template-columns:1.5fr 1fr;gap:8%;background:var(--ink);color:white}.contact p{max-width:480px}.contact-details{display:flex;align-items:flex-start;flex-direction:column}.big-phone{font-size:34px;font-family:Georgia,serif;text-decoration:none;margin-bottom:12px}.contact-details>a:not(.big-phone){font-size:16px}.contact-details p{font-size:17px}footer{padding:24px 6%;display:flex;justify-content:space-between;gap:22px;background:var(--ink);color:white;border-top:1px solid #ffffff40;font-size:12px}.skip{position:absolute;top:-100px;left:16px;background:white;color:black;padding:12px;z-index:100}.skip:focus{top:12px}
.heritage{--ink:#172f42;--paper:#fff;--accent:#745925;--line:#cbd1d3}.heritage .utility{display:flex;justify-content:space-between;background:var(--ink);color:white;padding:10px 6%;font-size:13px}.heritage .utility>span:first-child{letter-spacing:1.5px}.heritage .utility .phone{margin-left:12px}.heritage header{border-bottom:1px solid var(--line)}.heritage .hero{background:var(--ink);color:#fff;text-align:center;padding:66px 6% 0}.heritage .hero .eyebrow{color:#dcca9f}.heritage h1{font-size:clamp(48px,5.8vw,82px);letter-spacing:-2px;line-height:1.05}.heritage .intro{color:#e1e6e9;margin-top:26px}.heritage .actions{justify-content:center}.heritage .hero .button{background:#e5d1a4;color:#172f42}.heritage .hero-rule{border-top:1px solid #ffffff45;margin-top:60px;padding:20px 0;display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px}.heritage .area{background:#f2f4f4}.heritage .other{background:#f0f2f3}.heritage .team .eyebrow{color:var(--accent)}
.mainstreet{--ink:#382f2b;--paper:#fcf9f3;--accent:#883b2b;--line:#cfc5b8}.mainstreet header{padding-top:28px;padding-bottom:25px}.mainstreet .header-right{display:flex;align-items:flex-end;flex-direction:column;font-size:13px}.mainstreet .header-right .phone{font-size:25px;text-decoration:none}.mainstreet>nav{padding:12px 6%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:45px}.mainstreet .hero{display:grid;grid-template-columns:1.15fr 1fr;padding:52px 6% 64px;gap:8%;align-items:stretch}.mainstreet h1{font-size:clamp(58px,7vw,96px);line-height:1.03;letter-spacing:-4px}.mainstreet .hero .eyebrow{color:var(--accent)}.mainstreet .intro{margin:25px 0 30px}.mainstreet .address-panel{background:#803b2d;color:#fff7e8;padding:30px 32px;display:flex;flex-direction:column;justify-content:space-between;min-height:450px;outline:1px solid #c69e7e;outline-offset:-13px}.panel-name{font-size:12px;letter-spacing:2px}.street-number{display:block;font-size:clamp(85px,10vw,138px);font-family:Georgia,serif;letter-spacing:-6px;line-height:1.05}.street-name{font-family:Georgia,serif;font-size:36px;display:block}.street-town{font-size:15px;display:block;margin-top:12px}.panel-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;font-size:13px;border-top:1px solid #b98069;padding-top:22px}.panel-bottom a{max-width:110px}.mainstreet .estate-section{background:#ece5d8;grid-template-columns:1fr 1fr}.mainstreet .estate-section h2{font-size:52px;line-height:1.15}.large-copy{font-family:Georgia,serif;font-size:28px;line-height:1.35;margin:0}.estate-copy ul{padding-left:22px;margin:25px 0}.estate-copy li{padding:7px 0}.mainstreet .other{display:grid;grid-template-columns:1fr 1fr;gap:8%}.other-rows>div{border-top:1px solid var(--line);padding:23px 0}.other-rows>div:last-child{padding-bottom:0}.other-rows h3{font-family:Georgia,serif;font-size:25px}.other-rows p{font-size:16px;margin-top:10px}.mainstreet .team{border-top:1px solid var(--line)}.mainstreet .area{background:#ece5d8}.mainstreet .contact{background:#803b2d}.mainstreet footer{background:#803b2d}
.counsel{--ink:#123f42;--paper:#fff;--accent:#12605f;--line:#bdcccc}.counsel header{border-bottom:1px solid var(--line);padding:28px 5%;gap:24px}.counsel header .brand span{font-family:Arial,sans-serif;font-weight:700;font-size:27px;letter-spacing:1px}.counsel header .brand small{font-size:11px;letter-spacing:3.8px}.counsel header nav{gap:22px}.counsel header nav a{font-size:14px}.counsel header .phone{font-size:17px}.counsel .hero{display:grid;grid-template-columns:1.05fr 1fr;gap:8%;padding:70px 6%}.counsel h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(55px,6.2vw,86px);font-weight:500;letter-spacing:-4px;line-height:1.04}.counsel h1 em{font-family:Georgia,serif;font-weight:400;color:var(--accent)}.counsel .intro{font-size:19px;margin:26px 0}.counsel .hero-copy .eyebrow{font-size:11px;letter-spacing:1.6px}.counsel .needs{align-self:center;border-top:4px solid var(--ink);padding-top:24px}.counsel .needs>a{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);font-size:23px;line-height:1.4;text-decoration:none}.counsel .needs>a:hover{background:#eaf1ef}.needs-call{margin-top:28px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:15px}.counsel h2{font-family:Arial,sans-serif;font-size:39px;font-weight:500;letter-spacing:-1.3px}.counsel .estate-section{background:#eaf1ef;border-top:1px solid var(--line);gap:6%}.estate-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.estate-grid article{border-top:1px solid var(--line);padding-top:20px}.estate-grid h3{font-weight:500;font-size:22px}.estate-grid p{font-size:17px}.counsel .other{border-bottom:1px solid var(--line)}.counsel .team h2{font-size:31px}.counsel .attorney h3{font-family:Arial,sans-serif;font-size:22px}.counsel .area{background:#eaf1ef}
@media(min-width:1550px){body{max-width:1600px;margin:auto}}@media(max-width:1050px){header{flex-wrap:wrap}nav{gap:20px}.counsel header nav{order:3;width:100%;justify-content:space-between}.team{grid-template-columns:1fr 1fr}.team>div:first-child{grid-column:1/-1}.mainstreet .hero{gap:5%}.panel-bottom{flex-direction:column;align-items:flex-start;gap:12px}.panel-bottom a{max-width:none}}@media(max-width:700px){body{font-size:18px}header{padding:24px 6%}.brand span{font-size:28px}.brand small{font-size:10px}nav{width:100%;gap:10px 23px;flex-wrap:wrap}nav a{font-size:15px}.heritage .utility{font-size:12px}.heritage .utility>span:first-child{display:none}.heritage .utility>span:last-child{width:100%;text-align:center}.heritage .hero{padding-top:45px}.heritage h1{font-size:52px;letter-spacing:-2px}.intro{font-size:19px}.intro br{display:none}.actions{flex-direction:column;gap:23px}.heritage .hero-rule{margin-top:40px;font-size:10px;letter-spacing:1px;gap:20px;text-align:left}.area{flex-direction:column;gap:5px;font-size:14px}.estate-section{grid-template-columns:1fr!important;padding:52px 6%;gap:35px}h2{font-size:36px}.service-list h3{font-size:23px}.other{padding:50px 6%}.three{grid-template-columns:1fr;gap:25px}.team{padding:50px 6%;grid-template-columns:1fr;gap:30px}.team>div:first-child{grid-column:auto}.contact{grid-template-columns:1fr;padding:50px 6%;gap:32px}.big-phone{font-size:32px}footer{flex-direction:column;gap:8px}.mainstreet .header-right>span{display:none}.mainstreet .header-right .phone{font-size:17px}.mainstreet header{gap:20px}.mainstreet>nav{gap:3px 25px;padding-top:10px;padding-bottom:10px}.mainstreet .hero{grid-template-columns:1fr;padding-top:40px;gap:35px}.mainstreet h1{font-size:70px;letter-spacing:-3px}.mainstreet .address-panel{min-height:355px}.street-number{font-size:100px}.panel-bottom{flex-direction:row}.mainstreet .estate-section h2{font-size:43px}.mainstreet .other{grid-template-columns:1fr;gap:30px}.counsel .hero{grid-template-columns:1fr;gap:45px;padding-top:45px;padding-bottom:50px}.counsel h1{font-size:66px;letter-spacing:-3px}.counsel header .phone{font-size:16px}.counsel header nav{flex-wrap:wrap;justify-content:flex-start;gap:5px 24px}.counsel header .brand span{font-size:24px}.counsel header .brand small{font-size:10px}.counsel .needs>a{font-size:22px}.counsel h2{font-size:36px}.estate-grid{grid-template-columns:1fr;gap:25px}.needs-call{font-size:14px}.eyebrow{font-size:12px;letter-spacing:1.5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Authentic building photography and full source-faithful footer. */
.office{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8%;padding:65px 6%;align-items:center;border-top:1px solid var(--line);background:#f2f4f4}.office figure{margin:0;max-width:578px}.office img{width:100%;height:auto;display:block}.office figcaption{font-size:13px;padding-top:12px;letter-spacing:.3px}.office-copy h2{font-size:40px}.office-copy p{max-width:470px}.office-address{border-top:1px solid var(--line);padding-top:22px;margin-top:24px;margin-bottom:24px}.counsel .office{background:#fff}.counsel .office-copy h2{font-size:38px}.building-hero{margin:0;align-self:center;background:#803b2d;color:white;box-shadow:12px 12px 0 #ece5d8}.building-hero img{display:block;width:100%;height:auto}.building-hero figcaption{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:20px 22px;font-family:Georgia,serif;font-size:25px}.building-hero small{display:block;font-family:Arial,sans-serif;font-size:13px;line-height:1.5;margin-top:6px}.building-hero figcaption a{font-family:Arial,sans-serif;font-size:13px;white-space:nowrap}.full-footer{display:block;padding:48px 6% 0;background:var(--footer-bg,var(--ink));color:var(--footer-text,#fff);border-top:1px solid var(--footer-rule,#ffffff35)}.footer-grid{display:grid;grid-template-columns:.85fr 1.12fr 1.4fr 1.3fr;gap:32px;padding-bottom:44px}.footer-identity img{display:block;width:180px;max-width:100%;height:auto}.footer-identity p{font-size:14px;color:var(--footer-muted);line-height:1.7;margin-top:22px}.full-footer h2{font-size:20px;letter-spacing:-.35px;line-height:1.3;margin-bottom:25px;color:var(--footer-heading)}.full-footer ul{padding:0;margin:0;list-style:none}.full-footer li{font-size:14px;line-height:1.65;margin:0 0 9px;color:var(--footer-text)}.footer-contact address{font-size:16px;font-style:normal;margin-bottom:20px;line-height:1.7}.footer-contact>a{display:block;font-size:16px;margin-top:12px;overflow-wrap:anywhere}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--footer-rule);padding:22px 0;font-size:12px;color:var(--footer-muted)}@media(max-width:1050px){.footer-grid{grid-template-columns:1fr 1fr;gap:38px}.footer-identity img{width:150px}}@media(max-width:700px){.office{grid-template-columns:1fr;padding:48px 6%;gap:30px}.office-copy h2,.counsel .office-copy h2{font-size:34px}.building-hero{box-shadow:7px 7px 0 #ece5d8}.building-hero figcaption{padding:17px;font-size:22px;gap:12px}.building-hero figcaption a{font-size:12px}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-identity{display:flex;gap:25px;align-items:center}.footer-identity img{width:110px}.footer-identity p{margin:0}.full-footer h2{margin-bottom:18px}.footer-bottom{flex-direction:column;gap:7px}.full-footer li{font-size:14px}}

/* Each footer continues its page's own palette and typography. */
.heritage{--footer-bg:#172f42;--footer-text:#e1e6e9;--footer-heading:#e5d1a4;--footer-muted:#d2dce2;--footer-rule:#ffffff40}
.mainstreet{--footer-bg:#803b2d;--footer-text:#fff7e8;--footer-heading:#fff7e8;--footer-muted:#f2dfcd;--footer-rule:#ffffff45}
.counsel{--footer-bg:#123f42;--footer-text:#f1f7f5;--footer-heading:#ffffff;--footer-muted:#d2e3df;--footer-rule:#ffffff40}
.mainstreet .full-footer h2{font-size:21px;letter-spacing:-.5px}
.counsel .full-footer h2{font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;line-height:1.6}
.counsel .contact .big-phone{font-family:Arial,Helvetica,sans-serif;font-weight:500;letter-spacing:-.8px}
.full-footer .footer-contact>a{font-size:14px;text-decoration-thickness:1px}
.full-footer .footer-contact address{font-size:14px}
@media(max-width:700px){.full-footer{padding-top:38px}.mainstreet .full-footer h2{font-size:21px}.counsel .full-footer h2{font-size:14px}}

/* WordPress content pages share the approved typography and spacing. */
.site-content{padding:60px 6%;min-height:50vh}.site-content>h1{font-size:clamp(38px,5vw,64px);margin-bottom:35px}.site-content .entry-content{max-width:1100px;margin:auto}.entry-content h2,.entry-content h3{margin:30px 0 14px}.entry-content img{max-width:100%;height:auto}.entry-content p{margin-bottom:18px}.entry-content a{overflow-wrap:anywhere}.navigation.pagination{margin-top:35px}.footer-bottom a{display:inline-block;padding:5px 0}.site-content input,.site-content textarea,.site-content select{max-width:100%;font:inherit}.heritage nav{flex-wrap:wrap}body{overflow-wrap:break-word}

.page-heading{padding:65px 6%;background:var(--ink);color:white}.page-heading h1{font-size:clamp(40px,5vw,68px);max-width:1050px}.page-heading .eyebrow{color:#e5d1a4}.page-copy{padding:50px 6%;max-width:1100px}.page-copy h2{font-size:30px;margin-top:35px;letter-spacing:-.5px}.page-copy h2:first-child{margin-top:0}.page-copy p{max-width:800px}.attorney-profiles article,.faq-list article{padding:26px 0;border-bottom:1px solid var(--line)}.faq-list article:first-child{padding-top:0}.footer-links{text-align:right}.footer-links a{padding:5px 0}@media(max-width:700px){.page-heading{padding:45px 6%}.page-heading h1{font-size:42px;letter-spacing:-1px}.page-copy{padding:35px 6%}.footer-links{text-align:left}}

.secondary-services{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1050px){.secondary-services{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.secondary-services{grid-template-columns:1fr}}

/* Clear, generously sized directions links for office visitors. */
.address-link{display:inline-block;text-decoration:underline;text-underline-offset:4px}
.contact-details>a.directions-button,.office-copy .directions-button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;margin-top:20px;padding:14px 22px;font-size:18px;line-height:1.4;font-weight:700;text-decoration:none;border:2px solid transparent}
.contact-details .directions-button{background:#e5d1a4;color:#172f42}
.office-copy .directions-button{background:#172f42;color:#fff}
.directions-button:hover{filter:brightness(.94)}
.contact-details .directions-note{font-size:15px;margin-top:9px;color:#e1e6e9}
.full-footer .footer-directions{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;font-size:16px!important;font-weight:700}
@media(max-width:700px){.contact-details>a.directions-button,.office-copy .directions-button{width:100%;text-align:center}}

/* Office map and consistent street-address links. */
.office-map{margin-top:24px;max-width:380px;border:1px solid var(--line);background:#fff}
.office-map iframe{display:block;width:100%;height:250px;border:0}
.office-map>a{display:flex;align-items:center;min-height:44px;padding:8px 14px;font-size:16px;font-weight:600;color:#172f42}
.hero-rule a{display:inline-block;padding:10px 0;margin:-10px 0;text-decoration:underline;text-underline-offset:4px}
.office figcaption a,.footer-bottom>span>a{text-decoration:underline;text-underline-offset:3px}
