/* Donna-inspired editorial redesign | 2026-10-16 | reversible design layer */
:root{--d-bg:#f6f4ef;--d-paper:#fffefa;--d-ink:#252725;--d-muted:#666963;--d-line:#dcded6;--d-accent:#52634f;--d-accent-dark:#354532;--d-serif:Georgia,"Times New Roman",serif}
html{scroll-behavior:smooth}
body{background:var(--d-bg)!important;color:var(--d-ink)!important;font-family:Inter,"Segoe UI",Arial,sans-serif!important;line-height:1.7}
body p,body li{line-height:1.78}
h1,h2,h3,.hero-title,.section-title,.page-title{letter-spacing:-.028em;line-height:1.2;color:var(--d-ink)}
h1,h2,.hero-title,.page-title{font-family:var(--d-serif)!important;font-weight:500!important}
h1{font-size:clamp(2.35rem,5vw,5rem)!important}
h2{font-size:clamp(1.75rem,3vw,3.05rem)}
h3{font-size:clamp(1.13rem,1.6vw,1.55rem)}
.container{width:min(100% - 42px,1180px)!important;margin-left:auto!important;margin-right:auto!important}
header,.site-header,.main-header{background:rgba(255,254,250,.96)!important;border-bottom:1px solid var(--d-line)!important;box-shadow:0 4px 24px rgba(27,32,28,.045)!important}
header a,.site-header a,.main-header a{color:var(--d-ink)}
nav a:hover,.site-nav a:hover{color:var(--d-accent)!important}
.hero,.page-hero,.hero-section{background:linear-gradient(135deg,#e9eae2 0%,#f6f4ef 53%,#e6e9e1 100%)!important;color:var(--d-ink)!important;border-bottom:1px solid var(--d-line)}
.hero h1,.page-hero h1,.hero p,.page-hero p,.hero .lead,.page-hero .lead{color:var(--d-ink)!important}
.hero,.page-hero{padding-top:clamp(68px,8vw,118px)!important;padding-bottom:clamp(68px,8vw,118px)!important}
.section,.article-section{padding-top:clamp(48px,6vw,86px);padding-bottom:clamp(48px,6vw,86px)}
.section-kicker,.eyebrow,.kicker{font-size:.78rem!important;letter-spacing:.14em!important;text-transform:uppercase;color:var(--d-accent)!important;font-weight:700}
.service-card,.article-card,.blog-card,.feature-card,.card{background:var(--d-paper)!important;border:1px solid var(--d-line)!important;border-radius:5px!important;box-shadow:0 8px 28px rgba(32,39,33,.045)!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.service-card:hover,.article-card:hover,.blog-card:hover,.feature-card:hover{transform:translateY(-3px);box-shadow:0 17px 38px rgba(32,39,33,.09)!important;border-color:#aeb8ac!important}
.service-card,.article-card{padding:clamp(22px,2.8vw,34px)!important}
.btn,button.btn,a.btn{border-radius:4px!important;min-height:46px;letter-spacing:.01em;transition:background .2s ease,transform .2s ease}
.btn:not(.light):not(.outline),.btn.primary{background:var(--d-accent-dark)!important;border-color:var(--d-accent-dark)!important;color:#fff!important}
.btn:not(.light):hover,.btn.primary:hover{background:#263625!important;transform:translateY(-1px)}
.btn.light,.btn.outline{background:transparent!important;border:1px solid var(--d-accent-dark)!important;color:var(--d-accent-dark)!important}
.article-section .container>p,.article-section .container>ul,.article-section .container>ol{max-width:77ch}
.article-section a:not(.btn),.service-card a:not(.btn),.article-card a:not(.btn){text-decoration-thickness:1px;text-underline-offset:3px}
img{max-width:100%;height:auto}
footer,.site-footer{background:#252d27!important;color:#f0f0eb!important}
footer a,.site-footer a{color:#f0f0eb!important}
footer a:hover,.site-footer a:hover{color:#c8d7c6!important}
:focus-visible{outline:3px solid #668561!important;outline-offset:3px}
@media(max-width:760px){.container{width:min(100% - 30px,1180px)!important}.hero,.page-hero{padding:54px 0!important}h1{font-size:clamp(2.1rem,9vw,3.1rem)!important}h2{font-size:clamp(1.55rem,6vw,2.2rem)}.service-grid,.article-grid,.cards-grid{grid-template-columns:1fr!important}.service-card,.article-card{padding:22px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Contrast corrections confirmed against live desktop screenshot */
body .hero h1,body .hero-section h1,body .hero .hero-title,body .home-hero h1{color:#fffefa!important}
body .site-header a,body .main-header a,body header nav a,body header .nav a,body header .site-name{color:#252725!important;opacity:1!important}
body .hero p,body .hero-section p{color:#f1eee7!important}
body .hero .section-kicker,body .hero-section .section-kicker{color:#d6b777!important}

/* Navigation brand contrast and mobile safety */
.site-header .brand,.site-header .brand *,header .brand,header .brand *,header .logo-text,header .site-title,header .site-brand,header .site-brand *{color:#252725!important;text-shadow:none!important;opacity:1!important}
@media(max-width:760px){body{overflow-x:hidden}header .container,.site-header .container{max-width:100%!important}h1,h2,h3{overflow-wrap:break-word}img,video,iframe{max-width:100%}}

/* Explicit brand text contrast */
.site-header>a.brand span,.site-header>a.brand span strong,.site-header>a.brand span small{color:#252725!important;opacity:1!important;text-shadow:none!important}

@media(max-width:760px){.hero .hero-content{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;padding-inline:16px!important}.hero .hero-content h1{font-size:clamp(2rem,8vw,2.8rem)!important;line-height:1.12!important;max-width:100%!important;min-width:0!important;overflow-wrap:anywhere!important;white-space:normal!important}.hero .hero-content p{max-width:100%!important}.hero .hero-buttons{flex-wrap:wrap!important}}

/* Compact editorial hierarchy — service index */
.home-geo-answer.section{padding:44px 0 46px!important;background:#f8f7f3!important}
.home-geo-answer .container.narrow{width:min(100% - 40px,1040px)!important;max-width:1040px!important}
.home-geo-answer .section-kicker{display:block;margin:0 0 9px!important;font-size:10px!important;letter-spacing:.17em!important;color:#827150!important}
.home-geo-answer h2{max-width:830px!important;font-size:clamp(29px,3.1vw,43px)!important;line-height:1.14!important;margin:0 0 16px!important;letter-spacing:-.025em!important;color:#1f2630!important}
.home-geo-answer p{font-family:Inter,"Segoe UI",Arial,sans-serif!important;font-size:14px!important;line-height:1.65!important;color:#4c535a!important;max-width:850px!important;margin:0 0 10px!important}
.home-geo-answer p + p{font-size:13px!important;margin:12px 0 12px!important}
.home-geo-answer ul{padding:0!important;margin:15px 0 0!important;list-style:none!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:26px!important;row-gap:0!important}
.home-geo-answer li{display:flex!important;align-items:center!important;min-height:51px!important;margin:0!important;padding:0!important;list-style:none!important;border-bottom:1px solid #dddcd4!important}
.home-geo-answer li::marker{content:""!important}
.home-geo-answer li::before{content:""!important;display:none!important}
.home-geo-answer li a{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;padding:13px 2px!important;color:#29343b!important;text-decoration:none!important;font:500 13px/1.45 Inter,"Segoe UI",Arial,sans-serif!important}
.home-geo-answer li a::after{content:"→";flex:none;color:#947b55;font-size:20px;line-height:1}
.home-geo-answer li a:hover{color:#7b5638!important}
.home-geo-answer li a:focus-visible{outline:2px solid #697c61!important}
@media(max-width:680px){.home-geo-answer.section{padding:32px 0 35px!important}.home-geo-answer .container.narrow{width:calc(100% - 34px)!important}.home-geo-answer h2{font-size:clamp(28px,7.2vw,36px)!important}.home-geo-answer p{font-size:13px!important}.home-geo-answer ul{grid-template-columns:1fr!important;margin-top:11px!important}.home-geo-answer li{min-height:47px!important}.home-geo-answer li a{padding:11px 0!important;font-size:13px!important}}
/* Reduce excessively tall service sections without touching content */
.section:not(.hero):not(.home-geo-answer):not(.page-hero){padding-top:clamp(38px,5vw,66px)!important;padding-bottom:clamp(38px,5vw,66px)!important}
.section-head{margin-bottom:clamp(18px,2.5vw,30px)!important}
.section-head p{max-width:76ch}

/* Law services compressed; defeats older high-specificity grid rules */
html body main section.section.home-geo-answer{padding:38px 0 40px!important}
html body main section.section.home-geo-answer>.container.narrow{display:block!important;width:min(calc(100% - 40px),1020px)!important;max-width:1020px!important;margin-inline:auto!important}
html body main section.section.home-geo-answer .section-kicker{display:block!important;margin:0 0 9px!important;font-size:11px!important;letter-spacing:.12em!important}
html body main section.section.home-geo-answer h2{display:block!important;max-width:840px!important;margin:0 0 13px!important;font-size:clamp(27px,3vw,39px)!important;line-height:1.14!important}
html body main section.section.home-geo-answer>.container.narrow>p{display:block!important;max-width:850px!important;margin:0 0 10px!important;font:400 14px/1.65 Inter,"Segoe UI",Arial,sans-serif!important;color:#4c535a!important}
html body main section.section.home-geo-answer>.container.narrow>ul{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:24px!important;row-gap:0!important;margin:12px 0 0!important;padding:0!important;list-style:none!important}
html body main section.section.home-geo-answer>.container.narrow>ul>li{display:block!important;min-height:49px!important;margin:0!important;padding:0!important;border-bottom:1px solid #dddcd4!important}
html body main section.section.home-geo-answer>.container.narrow>ul>li::before{display:none!important;content:none!important}
html body main section.section.home-geo-answer>.container.narrow>ul>li>a{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:12px 0!important;color:#29343b!important;font:500 13px/1.5 Inter,"Segoe UI",Arial,sans-serif!important}
html body main section.section.home-geo-answer>.container.narrow>ul>li>a::after{content:"→";color:#90764e;font-size:19px;flex:none}
@media(max-width:680px){html body main section.section.home-geo-answer{padding:28px 0 30px!important}html body main section.section.home-geo-answer>.container.narrow>ul{grid-template-columns:1fr!important}html body main section.section.home-geo-answer>.container.narrow>p{font-size:13px!important}}

/* Verified mobile hero sizing and touch spacing */
@media(max-width:680px){html body main section.hero .hero-content h1{font-size:clamp(30px,8.4vw,38px)!important;line-height:1.14!important;letter-spacing:-.035em!important;overflow-wrap:normal!important;word-break:normal!important}html body main section.hero{min-height:0!important}html body main section.hero .hero-content{padding-block:34px!important}html body main section.hero .eyebrow{font-size:10px!important;line-height:1.5!important;letter-spacing:.1em!important}html body main section.hero .hero-lead,html body main section.hero .hero-text{font-size:14px!important;line-height:1.65!important}html body main section.hero .hero-buttons{gap:10px!important}html body main section.hero .hero-buttons>a{min-height:44px!important}}

/* Handles mobile layout viewport and compact tablet widths */
@media(max-width:1100px){html body main section.hero .hero-content h1{font-size:clamp(30px,3.9vw,42px)!important;line-height:1.15!important;letter-spacing:-.025em!important}html body main section.hero{min-height:0!important}}

@media(max-width:1100px){html body main section.hero.signature-hero div.container.hero-content h1.signature-display{font-size:clamp(30px,8vw,38px)!important;line-height:1.12!important}}
