/* Agency refresh — campaign pages keep their approved layout. */
.agency-site .nav-cta,.agency-site .button:not(.light){background:var(--accent);border-color:var(--accent);color:#fff}
.agency-site .nav-cta:hover,.agency-site .button:not(.light):hover{background:#843b22;border-color:#843b22}
.agency-site .button,.agency-site .nav-cta{min-height:48px}
.agency-home .hero{background:#f2ece3}
.agency-home .hero-top{align-items:center;padding-top:0}
.home-rating{display:flex;flex-direction:column;gap:10px;width:fit-content;margin-top:22px;font-size:14px;line-height:1.4}
.home-rating>img{width:112px;height:19px;object-fit:contain}
.home-rating>span{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.home-rating strong{font-size:17px}.rating-stars,.review-stars{color:#b46c00;letter-spacing:2px}
.home-rating:hover [data-home-count]{text-decoration:underline;text-underline-offset:4px}
.agency-home .conviction{background:var(--ink);color:#fff;max-width:none;padding:72px max(5%,calc((100vw - 1296px)/2));margin-top:12px}
.agency-home .conviction em{color:#e7b99d}.agency-home .conviction>.eyebrow{color:#c7d9df}
.agency-home .conviction>div p{color:#e0e9ec}.agency-home .conviction>div p:last-child{margin-bottom:0}
.agency-site .service{border-top:3px solid var(--accent)}
.agency-site .service:hover .text-link{color:var(--accent);border-color:var(--accent)}
.agency-site .service .number{color:#984326}
.agency-site .method .steps{grid-auto-rows:auto;row-gap:20px}
.agency-site .method .steps article{border-top-color:var(--accent);display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:20px;align-content:start}
.agency-site .method .steps h3,.agency-site .method .step-top{margin-bottom:0}
.agency-site .method .step-top{color:var(--accent)}
.agency-site .method .steps article:last-child{background:var(--ink);color:#fff}
.agency-site .method .steps article:last-child p{color:#e0e9ec}
.agency-site .method .steps article:last-child .step-top{color:#76d2d5}
@media(min-width:601px){
 .agency-home .hero+.values{grid-auto-rows:auto;row-gap:20px}
 .agency-home .values li{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:20px;align-items:start}
 .agency-home .values li>div{display:contents}
 .agency-home .values p{margin:0}
}
.agency-home .reviews-section{background:#edf2f4;max-width:none;padding-inline:max(5%,calc((100vw - 1296px)/2));border:0}
.agency-home .reviews-summary{grid-template-columns:1fr 1.25fr 1fr;gap:30px}
.agency-home .reviews-score span{color:#b46c00}
.agency-home .reviews-list{gap:22px;align-items:start}
.agency-home .review-card{position:relative;padding:26px;background:#fff;border:1px solid #d3dfe2;border-top:3px solid var(--accent);min-width:0;height:100%}
.agency-home .review-author{align-items:center;min-height:48px;margin-bottom:16px;font-size:15px}
.review-initials{display:grid;place-items:center;border-radius:50%;background:#e5ecef;color:var(--ink);font-size:15px;font-weight:bold;width:42px;height:42px;flex:0 0 42px}
.review-card:nth-child(2) .review-initials{background:#f0e4d9;color:#843b22}
.review-author time{display:block;font-size:13px;color:#52646c;margin-top:2px}
.agency-home .review-card blockquote{font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;margin:0 0 22px}
.agency-home .review-card blockquote p{white-space:pre-line}
.review-stars{font-size:18px;margin:0 0 12px}.review-context{font-size:14px;color:#52646c;margin-bottom:15px}
.review-expand summary{list-style:none;cursor:pointer;font-size:16px;line-height:1.65}
.review-expand summary::-webkit-details-marker{display:none}
.review-expand summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.read-more,.read-less{display:block;text-decoration:underline;text-underline-offset:4px;font-size:14px;margin:14px 0 22px}
.read-less,.review-expand[open] .read-more,.review-expand[open] .review-excerpt{display:none}
.review-expand[open] .read-less{display:block}
.review-source{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:20px;border-top:1px solid #e1e7e9;font-size:13px}
.review-source img{width:112px;height:19px;object-fit:contain}.review-source>span{text-decoration:underline;text-underline-offset:3px}
.reviews-contact{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:35px;margin-top:32px;border-top:1px solid #bcccd2}
.reviews-contact p{font-family:Georgia,serif;font-size:27px;line-height:1.3;margin:0}
.review-controls{display:flex;justify-content:flex-end;align-items:center;gap:18px;margin-top:20px;font-size:14px}
.review-controls[hidden],.site-mobile-contact[hidden]{display:none!important}
.review-controls button{display:grid;place-items:center;width:46px;height:46px;padding:0;background:#fff;color:var(--ink);border:1px solid #b5c8cf;font-size:28px;line-height:1}
.review-controls button:disabled{opacity:.35;cursor:default}
.site-mobile-contact{display:none}
@media(max-width:900px){.agency-home .reviews-summary{grid-template-columns:1fr 1.3fr}.agency-home .reviews-summary>.text-link{grid-column:1/-1}.agency-home .reviews-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.agency-home .review-card{padding:20px}}
@media(max-width:760px){
 .agency-home .hero-top{grid-template-columns:1fr;gap:18px;padding-bottom:28px}
 .agency-home .hero{padding-top:32px}.agency-home .hero h1{font-size:clamp(2.7rem,9.7vw,3.8rem)}
 .agency-home .hero-side>p{margin-bottom:12px}.agency-home .hero-side .muted{margin-bottom:20px}
 .home-rating{margin-top:20px;gap:7px}
 .agency-home .conviction{grid-template-columns:1fr;padding:54px 6%;gap:24px}
 .agency-home .reviews-section{padding-inline:6%}.agency-home .reviews-summary{grid-template-columns:1fr;gap:16px}
 .agency-home .reviews-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding:2px 0 12px;align-items:stretch;scrollbar-width:thin;overscroll-behavior-x:contain}
 .agency-home .review-card{flex:0 0 calc(100% - 24px);scroll-snap-align:start;height:auto;padding:24px}
 .agency-home .review-card:last-child{margin-right:24px}
 .reviews-contact{flex-direction:column;align-items:flex-start;gap:20px}.reviews-contact p{font-size:25px}
 .agency-site:has(.site-mobile-contact){padding-bottom:calc(78px + env(safe-area-inset-bottom))}
 .site-mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:90;display:grid;grid-template-columns:1fr 1.6fr;gap:12px;padding:12px 6% calc(12px + env(safe-area-inset-bottom));background:#fafaf6;border-top:1px solid #cad1d1;box-shadow:0 -4px 20px #142f3c0c}
 .site-mobile-contact .mobile-phone{display:flex;align-items:center;justify-content:center;border:1px solid var(--ink);min-height:48px;font-size:14px}
 .site-mobile-contact .button{justify-content:center;font-size:14px;padding:12px 18px}
}
@media print{.site-mobile-contact,.review-controls{display:none!important}}
