/* Shared visual system: quietly dimensional controls and deliberate spacing. */
:root{--gold:#bc975b;--shadow:0 10px 32px #163e4c0b;--soft-shadow:0 3px 14px #163e4c08;--motion:cubic-bezier(.22,.61,.36,1);--muted:#52676b}
body{background:radial-gradient(ellipse at 8% 0%,#e8f1ef60,transparent 38rem),var(--paper)}
.site-header{background:#faf9f5d9;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border-color:#cbd9d470;transition:box-shadow .3s,background .3s}
.site-header.scrolled{box-shadow:0 6px 24px #173f4c0a;background:#faf9f5ef}
.site-header:after{position:absolute;content:'';bottom:-1px;left:0;width:100%;height:2px;background:linear-gradient(90deg,#b99a61,#d8c8a5);transform:scaleX(var(--scroll-progress,0));transform-origin:left;opacity:.75;pointer-events:none}
.nav-wrap{min-height:94px;gap:25px}.brand{gap:7px;align-items:center}.brand-emblem{width:84px;height:68px;object-fit:contain;flex-shrink:0}.brand-wordmark{width:219px;height:73px;object-fit:contain;flex-shrink:0}.site-header nav{gap:24px;font-size:.74rem}
.site-header nav>a:not(.nav-quote){position:relative;line-height:1.6;padding-block:12px}.site-header nav>a:not(.nav-quote):after{content:'';height:1px;position:absolute;bottom:5px;left:0;right:0;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--motion)}
.site-header nav>a:hover:after,.site-header nav>a[aria-current=page]:after{transform:scaleX(1)}.site-header nav>a[aria-current=page]{color:#376e79}
.button,.nav-quote,.mobile-cta a:last-child{position:relative;isolation:isolate;overflow:hidden;border-radius:11px;background:linear-gradient(135deg,#2d6779ed,#163f54f5);border:1px solid #3b7082;color:#fff;box-shadow:inset 0 1px 0 #ffffff2c,0 5px 13px #123d4b16;transition:transform .25s var(--motion),box-shadow .25s,border-color .25s,background .25s}
.button{padding:13px 20px;min-height:52px;gap:22px}.nav-quote{padding:12px 18px}
.button:before,.nav-quote:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 15%,#ffffff1f 44%,transparent 70%);transform:translateX(-130%);transition:transform .7s var(--motion);pointer-events:none}
.button:hover:before,.nav-quote:hover:before{transform:translateX(120%)}
.button:hover,.nav-quote:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 #ffffff3b,0 9px 22px #123d4b20;border-color:#9bafaa;background:linear-gradient(135deg,#326f80,#19495d)}
.button:active,.nav-quote:active{transform:translateY(0);box-shadow:inset 0 2px 4px #09232c20}
.button>span{display:flex;align-items:center;justify-content:center;min-width:25px;height:25px;background:#ffffff12;border:1px solid #ffffff26;border-radius:50%;font-size:.95rem;transition:transform .25s}
.button:hover>span{transform:translate(1px,-1px)}
.button.outline{background:#ffffff65;border-color:#759a9f80;color:var(--blue);box-shadow:inset 0 1px 0 #fff,0 3px 10px #173f4c06;backdrop-filter:blur(10px)}
.button.outline:hover{background:#ffffffb3;border-color:#ac955d;color:var(--blue);box-shadow:0 8px 20px #123d4b0d}
.button.light{background:linear-gradient(135deg,#ffffffef,#e7f0eae0);color:var(--blue);border-color:#ffffffaa;box-shadow:inset 0 1px 0 #fff,0 5px 16px #05263320}.button.light:hover{background:#fff;color:var(--blue);border-color:#e2c99b}
.text-link{text-decoration-thickness:1px;transition:color .2s,text-decoration-color .2s;text-decoration-color:#91aca9}.text-link:hover{color:#32697a;text-decoration-color:var(--gold)}
.section{padding-block:76px}.tight{padding-top:14px}.section-heading{gap:45px;margin-bottom:32px}.section-heading h2{font-size:clamp(2.5rem,3.7vw,3.8rem)}
.eyebrow{color:#426974;letter-spacing:.15em;margin-bottom:19px}.eyebrow:before{content:'';display:inline-block;width:20px;height:1px;background:var(--gold);vertical-align:middle;margin:0 10px 3px 0}
.hero{min-height:610px;grid-template-columns:1fr 1fr;margin:18px 22px 0;border:1px solid #d0ddd580;border-radius:22px;overflow:hidden;background:#faf9f5b3;box-shadow:var(--shadow)}
.hero-copy{padding:52px 45px 43px max(40px,calc((100vw - 1190px)/2 - 22px))}.hero h1{font-size:clamp(4rem,5.7vw,5.75rem);margin-bottom:22px}.hero .eyebrow{margin-bottom:24px}.hero-lead{font-size:1.09rem;margin-bottom:17px}.hero-detail{font-size:.87rem;line-height:1.8;max-width:420px}.hero .actions{margin-top:26px;gap:23px}.hero-notes{margin-top:27px;gap:10px 15px;font-size:.65rem;color:#4a676d}.hero-image>img{animation:image-settle 1.1s var(--motion) both}.hero-image figcaption{bottom:35px;left:27px;border:1px solid #ffffffe0;border-radius:14px;background:#faf9f5d4;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 12px 24px #163e4c12;padding:17px 24px}.hero-image figcaption b{font-size:1.65rem}.hero-image .photo-note{border-radius:5px;background:#faf9f5d9}
.neighborhood-strip{border-bottom-color:#d6e1db;background:transparent;font-size:.79rem;gap:24px;padding:21px 28px}.neighborhood-strip a{font-size:.7rem}
.service-grid{gap:24px;row-gap:30px}.service-card{background:#ffffff80;border:1px solid #d1dfd780;border-radius:18px;padding:10px;box-shadow:0 3px 12px #163e4c03;transition:transform .32s var(--motion),box-shadow .32s,border-color .32s}
.service-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px #163e4c0e;border-color:#c3b18f80}.service-photo{height:238px;border-radius:11px}.service-photo img{transition:transform .7s var(--motion)}.service-photo>span{border:1px solid #ffffffe0;background:#faf9f5dc;backdrop-filter:blur(12px);border-radius:5px;left:13px;bottom:13px;font-size:.65rem;padding:5px 10px}
.service-copy{padding:22px 14px 18px 38px}.service-copy .small-number{left:12px;top:26px;color:#a58a58}.service-copy h3{font-size:1.85rem}.service-copy p{font-size:.84rem;margin-bottom:19px;line-height:1.7}.service-copy .text-link{font-size:.77rem}.more-services{margin-top:28px;padding-top:22px;font-size:.8rem}
.clarity{padding:72px 0;background:radial-gradient(ellipse at 88% 20%,#3e77885c,transparent 65%),linear-gradient(125deg,#123f54,#1f5466)}.clarity-grid{gap:75px}.clarity h2{font-size:3.4rem}.clarity .eyebrow,.area-feature .eyebrow{color:inherit}.clarity p:not(.eyebrow){font-size:.94rem}.scope-preview{background:#ffffff0c;border:1px solid #ffffff33;backdrop-filter:blur(14px);border-radius:18px;padding:25px 30px;box-shadow:inset 0 1px 0 #ffffff1f,0 14px 35px #0c253815}.scope-preview-head{font-size:1.85rem}.scope-preview>div:not(:first-child){padding:19px 0}.scope-preview b{font-size:.87rem}.scope-preview>div:not(:first-child)>span{font-size:.78rem}.scope-preview p{font-size:.72rem!important}
.steps{gap:30px;margin-top:34px}.steps li{border:1px solid #d2dfd785;background:#ffffff60;padding:26px;border-radius:16px;position:relative;transition:border-color .25s,transform .25s}.steps li:hover{border-color:#bfa97b;transform:translateY(-3px)}.steps li>span{font-size:2rem;color:#a2885a}.steps h3{font-size:1.8rem;margin-top:16px}.steps p{font-size:.87rem;max-width:none;margin-bottom:0}
.area-feature{padding:70px 0;background:radial-gradient(ellipse at 100% 100%,#dfd5bb3b,transparent 55%),linear-gradient(130deg,#e8f1ec,#e3eeeb)}.area-feature-grid{gap:75px}.city-pills{gap:10px 14px}.city-pills a{font-size:.84rem;padding:13px 16px;background:#ffffff52;border:1px solid #ffffff9c;border-radius:9px;box-shadow:inset 0 1px 0 #ffffff72;transition:background .2s,transform .2s,border-color .2s}.city-pills a:hover{background:#ffffffb5;border-color:#c4b58f;transform:translateX(3px)}
.resource-grid{gap:21px}.resource{position:relative;border:1px solid #cddbd580;background:linear-gradient(145deg,#ffffffa6,#ffffff42);border-radius:16px;padding:28px;box-shadow:var(--soft-shadow);transition:transform .3s var(--motion),box-shadow .3s,border-color .3s}.resource:before{position:absolute;content:'';top:0;left:28px;width:34px;height:2px;background:linear-gradient(90deg,#bba16d,#d2c6a5);border-radius:2px}.resource:hover{transform:translateY(-4px);background:#ffffffb0;border-color:#bda77380;box-shadow:var(--shadow)}.resource .eyebrow{font-size:.6rem;margin-bottom:21px}.resource .eyebrow:before{display:none}.resource h3{font-size:1.9rem}.resource p{font-size:.84rem;line-height:1.7}.resource .text-link{font-size:.77rem;margin-top:10px}
.faq-section{padding-bottom:72px;gap:90px}.faq-list details{border-color:#cbd9d380}.faq-list summary{padding-block:20px;font-size:.88rem;transition:color .2s}.faq-list summary:after{height:24px;width:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid #bfcec4;background:#fff6;top:20px;font-size:1rem}.faq-list details[open]>summary{color:#2f7080}.faq-list details[open]>summary:after{background:#e8efea;border-color:#a7bfb9}.faq-list details[open]>p{animation:answer-in .22s var(--motion)}.faq-list p{font-size:.86rem}
.final-cta{padding-block:57px;margin-bottom:18px;border-top-color:#d0ddd6}.final-cta h2{font-size:3.4rem}.final-cta p{font-size:.9rem}.footer-grid{gap:38px}.footer-grid>div:first-child>.brand{display:flex;background:#faf9f5f0;border:1px solid #fff8;border-radius:13px;gap:5px;padding:8px 10px;margin-left:-10px;width:max-content;max-width:100%}.footer-grid .brand-emblem{width:58px;height:50px}.footer-grid .brand-wordmark{width:178px;height:60px}.footer-grid>div:not(:first-child)>a{font-size:.76rem;line-height:1.65;margin-bottom:10px}.footer-grid h3{font-size:.78rem}.footer-grid p{font-size:.78rem;line-height:1.8}.footer-bottom{font-size:.67rem}
.breadcrumbs{padding-top:22px;font-size:.68rem;line-height:1.8}.page-intro{padding-block:36px 38px;position:relative}.page-intro h1{font-size:clamp(3.1rem,4.6vw,4.6rem);max-width:1040px;margin-bottom:22px}.page-intro .eyebrow{margin-bottom:17px}.page-intro .lead{font-size:1rem;line-height:1.8;max-width:780px;margin-bottom:0}.page-intro .actions{margin-top:25px}.page:not(.home) .page-intro:after{content:'';position:absolute;right:0;top:40px;width:130px;height:130px;border:1px solid #bfae8324;border-radius:50%;box-shadow:0 0 0 25px #c4af7c05;pointer-events:none;z-index:-1}
.service-detail{gap:64px;padding-top:10px;padding-bottom:30px}.service-detail aside{border:1px solid #cbd9ce;border-top:2px solid #c9b58d;border-radius:16px;background:linear-gradient(145deg,#f0f5f0e0,#e7efeb9c);padding:30px;box-shadow:var(--soft-shadow)}.service-detail aside h2{font-size:2.2rem;margin-top:22px}.service-detail aside ul{font-size:.86rem;line-height:1.8}.service-detail aside p:not(.eyebrow){font-size:.87rem}.service-detail aside .fine{font-size:.78rem!important}.article-section h2{font-size:2.2rem;line-height:1.2;margin-bottom:15px}.article-section{padding-bottom:18px}.article-section p{font-size:.94rem;line-height:1.85}.service-detail .article-section+.article-section{border-top:1px solid #d8e3dc88;padding-top:22px}
.local-intro{gap:65px;padding-bottom:50px}.local-intro h2{font-size:2.7rem}.local-intro p:not(.eyebrow){font-size:.92rem}.local-note,.reading-aside,.quote-aside{border:1px solid #cbdcd0;border-top:2px solid #ccb990;border-radius:17px;background:linear-gradient(145deg,#edf4ee,#e7eeead9);box-shadow:var(--soft-shadow)}.local-note{padding:30px}.local-note ul{font-size:.88rem}.local-note .big-star,.quote-aside .big-star{font-size:46px;margin-bottom:17px;color:#849e91}.reading-layout{gap:70px;padding-top:8px;padding-bottom:48px}.reading-aside{padding:27px;top:116px}.reading-aside h2{font-size:2.3rem}.reading-aside p{font-size:.88rem}
.soft-section{padding:50px 0;margin-top:18px;background:linear-gradient(130deg,#eaf1ec,#f0f3eb)}.soft-section h2,.two-columns h2{font-size:2.5rem}.soft-section p,.two-columns p{font-size:.93rem}.two-columns{gap:55px}.chips{gap:10px}.chips a{background:#ffffff70;border:1px solid #c0d2c5;border-radius:9px;font-size:.8rem;padding:10px 15px;transition:background .2s,transform .2s}.chips a:hover{background:#fff;transform:translateY(-2px);border-color:#bea779}
.table-scroll{border-radius:15px;border:1px solid #d0ddd4;box-shadow:var(--soft-shadow);background:#fff8}.scope-table{font-size:.85rem}.scope-table caption{padding:16px 20px;background:#eff4ee;text-align:left;font-size:.8rem;caption-side:top}.scope-table th,.scope-table td{padding:17px 18px}.scope-table thead{background:linear-gradient(120deg,#16475b,#2d5e6d)}.scope-table tbody tr{transition:background .2s}.scope-table tbody tr:hover{background:#e4eee7}.scope-table tbody tr:nth-child(even){background:#edf3ee80}
.area-controls{border:1px solid #cadacf;border-radius:16px;background:#edf4efb3;box-shadow:inset 0 1px 0 #fff,0 4px 18px #173f4c05;padding:22px 27px;gap:4px 35px}.area-controls label{font-size:1.9rem}.area-directory{gap:9px 17px}.area-row{border:1px solid #d0ded480;border-radius:9px;background:#ffffff60;padding:12px 14px;font-size:.83rem;transition:background .2s,transform .2s,border-color .2s}.area-row:hover{background:#fff;border-color:#c3ae7b;transform:translateY(-2px)}.area-row small{font-size:.66rem}.area-controls p{font-size:.75rem}.method{border-color:#cadacf}.method summary{font-size:.85rem}
.contact-card{background:linear-gradient(135deg,#ffffffd9,#eef3ed80);border:1px solid #cbdacf;border-radius:17px;padding:32px;box-shadow:var(--soft-shadow);transition:transform .25s,box-shadow .25s,border-color .25s}.contact-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#bba36e}.contact-card h2{font-size:2.7rem}.contact-card p{font-size:.9rem}
.quote-layout{gap:40px;padding-top:8px;padding-bottom:74px;grid-template-columns:1.5fr .8fr}.quote-layout form{border:1px solid #ccd9d2;border-radius:19px;box-shadow:0 12px 30px #173f4c08;background:#ffffffba;backdrop-filter:blur(12px);padding:30px}.quote-aside{padding:30px}.quote-aside h2{font-size:2.6rem}.quote-aside li,.quote-aside p{font-size:.88rem}.progress{gap:13px;align-items:center;padding-bottom:22px;margin-bottom:24px;font-size:.73rem}.progress span{padding:7px 12px;border-radius:7px;border:1px solid transparent}.progress .current{background:#e8f0eb;border-color:#d0e0d4;color:#244f5a}
label{font-size:.8rem;margin-bottom:18px}label>span,legend>span{font-size:.71rem}input,select,textarea{border-color:#bccfc5;border-radius:9px;background:#fbfdfb;transition:border-color .2s,box-shadow .2s,background .2s;min-height:48px;box-shadow:inset 0 1px 2px #173f4c03}input:hover,select:hover,textarea:hover{border-color:#85a8a3}input:focus,select:focus,textarea:focus{outline:0;border-color:#5b8c94;box-shadow:0 0 0 3px #4f859915;background:#fff}.extras label{border-radius:9px;background:#fbfdfb;min-height:47px;font-size:.73rem;transition:border-color .2s,background .2s}.extras label:has(input:checked){border-color:#799e8f;background:#eaf3ec}.extras input{box-shadow:none;border-radius:4px}legend{font-size:.8rem}#request-summary{border-radius:11px;background:#f0f5ef;font-size:.84rem}#quote-review .button{gap:14px}#quote-review>p{font-size:.88rem}.text-button{font-size:.78rem}.quote-layout .fine{font-size:.78rem;line-height:1.8}.sitemap-list>a{font-size:.9rem;padding:8px 12px;border-radius:6px;width:fit-content}.sitemap-list>a:hover{background:#e8f0ea}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .62s var(--motion),transform .62s var(--motion);transition-delay:var(--reveal-delay,0ms)}.reveal.is-visible{opacity:1;transform:translateY(0)}.service-card.reveal.is-visible:hover,.resource.reveal.is-visible:hover{transform:translateY(-4px)}
.hero-copy{animation:copy-enter .7s var(--motion) both}.quote-page #quote-review:not([hidden]){animation:answer-in .28s var(--motion)}
@keyframes copy-enter{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}@keyframes image-settle{from{transform:scale(1.025)}to{transform:scale(1)}}@keyframes answer-in{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.hero{min-height:660px}.hero-copy{padding-right:60px}}
@media(max-width:1150px){.brand-emblem{width:69px;height:60px}.brand-wordmark{width:188px;height:63px}.brand{gap:4px}.nav-wrap{gap:18px}.site-header nav{gap:19px;font-size:.7rem}.nav-quote{padding:12px 14px}.hero-copy{padding:43px 32px}.hero h1{font-size:4.8rem}.hero .actions{gap:17px}.clarity-grid,.area-feature-grid{gap:48px}.clarity h2{font-size:3rem}.service-photo{height:210px}.service-copy{padding-left:31px}.service-copy h3{font-size:1.75rem}.service-copy .small-number{left:9px}.footer-grid{gap:26px}.footer-grid .brand-emblem{width:43px;height:43px}.footer-grid .brand-wordmark{width:153px;height:51px}.service-detail{gap:45px}}
@media(max-width:950px){.brand-emblem{width:62px;height:54px}.brand-wordmark{width:177px;height:59px}.nav-wrap{gap:15px}.site-header nav{gap:16px;font-size:.68rem}.hero{min-height:570px;margin:15px 16px 0;border-radius:17px}.hero h1{font-size:4.05rem}.hero-copy{padding:40px 27px}.hero .actions{flex-direction:column;align-items:flex-start;gap:15px}.hero-notes{font-size:.59rem}.hero-lead{font-size:1rem}.service-copy{padding-left:12px}.service-copy .small-number{display:none}.service-copy h3{font-size:1.6rem}.service-photo{height:190px}.service-copy p{font-size:.82rem}.service-detail{gap:35px}.service-detail aside{padding:25px}.resource{padding:24px}.resource h3{font-size:1.75rem}.footer-grid>div:last-child{gap:20px}.quote-layout{gap:30px}.quote-layout form{padding:25px}.quote-aside{padding:25px}.page-intro h1{font-size:4rem}}
@media(max-width:760px){.nav-wrap{min-height:84px;width:calc(100% - 30px);gap:10px}.site-header nav{top:84px;background:#faf9f5f5;backdrop-filter:blur(20px);padding:16px 22px;border-radius:0 0 16px 16px;font-size:.9rem}.site-header nav>a:not(.nav-quote){padding:13px 4px}.site-header nav>a:not(.nav-quote):after{right:auto;width:24px}.site-header nav .nav-quote{margin-top:12px;border-radius:10px}.brand{gap:3px}.brand-emblem{width:63px;height:57px}.brand-wordmark{width:174px;height:58px}.menu-button{border-radius:8px;padding:9px 10px;font-size:.64rem;background:#ffffff60;box-shadow:inset 0 1px 0 #fff}.hero{min-height:0;margin:12px 12px 0;border-radius:17px;display:flex}.hero-copy{padding:33px 21px 28px}.hero h1{font-size:clamp(3.4rem,11vw,4.6rem);margin-bottom:20px}.hero .eyebrow{font-size:.54rem;letter-spacing:.11em;margin-bottom:20px}.hero .eyebrow:before{width:14px;margin-right:7px}.hero-lead{font-size:1rem}.hero-detail{font-size:.84rem}.hero .actions{flex-direction:row;align-items:center;gap:20px;margin-top:23px}.hero .button{padding:12px 16px;font-size:.75rem;gap:14px}.hero .text-link{font-size:.72rem}.hero-notes{margin-top:23px;gap:8px 13px;font-size:.61rem}.hero-image{min-height:315px}.hero-image figcaption{bottom:26px;left:17px;padding:13px 19px;border-radius:12px}.hero-image figcaption b{font-size:1.4rem}.neighborhood-strip{gap:8px 15px;padding:19px 20px;font-size:.71rem}.section{padding-block:52px}.tight{padding-top:9px}.section-heading{margin-bottom:26px;gap:18px}.section-heading h2{font-size:2.8rem}.section-heading>p{font-size:.87rem}.eyebrow{font-size:.6rem;margin-bottom:16px}.service-grid{gap:23px}.service-card{padding:9px;border-radius:16px}.service-photo{height:248px;border-radius:10px}.service-copy{padding:22px 16px 18px 36px}.service-copy .small-number{display:block;left:12px;top:26px}.service-copy h3{font-size:2rem}.service-copy p{font-size:.87rem}.service-copy .text-link{font-size:.79rem}.service-photo>span{font-size:.66rem}.more-services{margin-top:26px;gap:16px;font-size:.77rem}.clarity{padding:53px 0}.clarity-grid{gap:28px}.clarity h2{font-size:2.8rem}.clarity p:not(.eyebrow){font-size:.9rem}.scope-preview{padding:22px;border-radius:14px}.scope-preview-head{font-size:1.7rem}.steps{gap:17px;margin-top:27px}.steps li{padding:25px 23px 23px 58px;border-radius:14px}.steps li>span{left:20px;top:24px;font-size:1.6rem}.steps h3{font-size:1.8rem;margin-top:0}.steps p{font-size:.86rem}.area-feature{padding:53px 0}.area-feature-grid{gap:27px}.area-feature h2{font-size:2.8rem}.area-feature p:not(.eyebrow){font-size:.9rem}.city-pills{gap:8px 10px}.city-pills a{font-size:.8rem;padding:12px}.resource-grid{gap:17px}.resource{padding:26px;border-radius:15px}.resource h3{font-size:1.95rem}.resource p{font-size:.87rem}.resource .text-link{font-size:.78rem}.faq-section{gap:25px;padding-bottom:51px}.faq-section h2{font-size:2.8rem}.faq-list summary{font-size:.87rem;padding-right:36px}.faq-list p{font-size:.86rem;padding-right:10px}.final-cta{padding-block:44px;gap:25px;margin-bottom:0}.final-cta h2{font-size:2.8rem}.final-cta p{font-size:.87rem}.final-cta>div:last-child{gap:20px}.final-cta>div:last-child .text-link{font-size:.76rem}.button{min-height:48px;border-radius:9px;font-size:.78rem}.mobile-cta{background:#faf9f5e6;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding-top:8px;gap:10px}.mobile-cta a{border-radius:9px;background:#ffffff8f;font-size:.77rem;padding:11px}.mobile-cta a:last-child{background:linear-gradient(135deg,#2b6376,#173f54);border-radius:9px}.footer-grid{gap:30px 20px}.footer-grid>div:first-child>.brand{padding:9px 12px;margin-left:0;width:fit-content}.footer-grid .brand-emblem{width:57px;height:47px}.footer-grid .brand-wordmark{width:186px;height:62px}.footer-grid>div>a{font-size:.77rem!important}.footer-grid>div:not(:first-child)>a{font-size:.77rem}.footer-grid p{font-size:.8rem}.footer-bottom{font-size:.65rem}.breadcrumbs{padding-top:19px;font-size:.61rem;gap:4px}.page-intro{padding:28px 0 30px}.page-intro h1{font-size:clamp(2.85rem,9.4vw,3.8rem);margin-bottom:20px;overflow-wrap:break-word}.page-intro .lead{font-size:.94rem}.page-intro .actions{margin-top:23px;gap:20px}.page:not(.home) .page-intro:after{display:none}.service-detail{gap:30px;padding-top:6px;padding-bottom:22px}.service-detail aside{padding:26px;border-radius:15px}.service-detail aside p:not(.eyebrow),.service-detail aside ul{font-size:.88rem}.article-section h2{font-size:2.1rem}.article-section p{font-size:.92rem;line-height:1.85}.article-section{padding-bottom:17px}.local-intro{gap:23px;padding-bottom:35px}.local-intro h2{font-size:2.45rem}.local-intro p:not(.eyebrow){font-size:.91rem}.local-note{padding:27px;border-radius:15px}.local-note ul{font-size:.9rem}.reading-layout{gap:27px;padding-top:2px;padding-bottom:35px}.reading-aside{padding:27px}.soft-section{padding:39px 0;margin-top:13px}.soft-section h2,.two-columns h2{font-size:2.3rem}.soft-section p,.two-columns p{font-size:.91rem}.chips a{font-size:.77rem;padding:9px 13px}.scope-mobile details{border:1px solid #ceddd1;border-radius:12px;margin-bottom:11px;background:#ffffff85;box-shadow:var(--soft-shadow)}.scope-mobile summary{font-size:1.6rem;padding:18px 40px 18px 19px}.scope-mobile summary:after{right:17px;top:18px;color:#648b83}.scope-mobile ul{padding:0 21px 12px 37px;font-size:.86rem}.scope-mobile li{margin-bottom:12px}.area-controls{padding:20px;border-radius:14px;gap:3px}.area-controls label{font-size:1.85rem}.area-controls p{font-size:.73rem}.area-directory{gap:8px}.area-row{padding:13px 15px;font-size:.88rem}.area-row small{font-size:.7rem}.area-controls input{margin-top:9px}.contact-grid{gap:18px}.contact-card{padding:28px;border-radius:15px}.contact-card h2{font-size:2.4rem}.contact-card p{font-size:.91rem}.two-columns{gap:28px}.quote-page .page-intro{padding-bottom:25px}.quote-layout{padding-top:4px;padding-bottom:53px;gap:27px}.quote-layout form{padding:22px;border-radius:15px}.quote-aside{padding:28px}.quote-aside h2{font-size:2.5rem}.quote-aside p,.quote-aside li{font-size:.89rem}.progress{gap:7px;font-size:.66rem}.progress span{padding:6px 9px}.field-grid{gap:0}label{font-size:.82rem;margin-bottom:18px}input,select,textarea{font-size:16px;min-height:49px}.extras label{font-size:.8rem;min-height:49px}#request-summary{font-size:.82rem;padding:18px}.review-tools{gap:17px}.text-button{font-size:.8rem}.quote-layout .fine{font-size:.79rem}.sitemap-list>a{font-size:.88rem;padding:9px 0}}
@media(max-width:380px){.brand-emblem{width:51px;height:49px}.brand-wordmark{width:156px;height:52px}.nav-wrap{width:calc(100% - 24px)}.hero-copy{padding-inline:17px}.hero h1{font-size:3.3rem}.hero .actions{gap:16px}.hero .text-link{font-size:.7rem}.hero .eyebrow{font-size:.48rem}.quote-layout form{padding:18px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important;transition:none!important}.hero-copy,.hero-image>img,.faq-list details[open]>p{animation:none!important}.button:hover,.nav-quote:hover,.service-card:hover,.resource:hover,.steps li:hover,.city-pills a:hover,.area-row:hover,.contact-card:hover{transform:none!important}.button:before,.nav-quote:before{display:none}html{scroll-behavior:auto}}
@media print{.reveal{opacity:1!important;transform:none!important}.hero-copy,.hero-image>img{animation:none!important}.table-scroll{display:block}.scope-mobile{display:none}.service-card,.resource,.local-note,.reading-aside{box-shadow:none}.site-header:after{display:none}}
/* Second review: protect the narrow quote layout and keep the first screen immediately readable. */
.hero-copy{animation-duration:.48s}.quote-layout>*,.field-grid>*,.service-detail>*,.reading-layout>*{min-width:0}
@keyframes copy-enter{from{opacity:.65;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.quote-layout{grid-template-columns:minmax(0,1fr)}.quote-layout form,.quote-aside{width:100%}.quote-layout .progress{flex-wrap:wrap}.hero-copy{padding-bottom:25px}.hero-notes{font-size:.62rem}}
/* Final motion tuning: content is readable even during a fast scroll. */
.reveal{opacity:.7;transform:translateY(10px);transition-duration:.45s}.reveal.is-visible{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}}
