.local-comparison {position:relative!important;width:100%;aspect-ratio:4/3;overflow:hidden;background:#222;border-radius:4px}
.local-comparison>img {position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover}
.local-comparison .comparison-after {clip-path:inset(0 0 0 var(--split,50%))}
.local-comparison .comparison-line {position:absolute;top:0;bottom:0;left:var(--split,50%);width:3px;background:white;pointer-events:none}
.local-comparison .comparison-line:after {content:'↔';position:absolute;top:45%;left:-18px;width:38px;height:38px;line-height:38px;text-align:center;color:#111;background:white;border-radius:50%;font:24px/38px sans-serif}
.local-comparison input[type=range] {position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:3}
.local-comparison:focus-within {outline:3px solid #e6bf55;outline-offset:3px}
.local-comparison .comparison-label {position:absolute;bottom:12px;padding:4px 8px;color:white;background:#000b;font:14px/1.4 sans-serif;pointer-events:none}
.local-comparison .label-before {left:10px}.local-comparison .label-after {right:10px}
/* Independent quote, reviews and article widgets. */
.local-quote,.local-reviews,.local-blog{font-family:Arial,sans-serif;line-height:1.6;max-width:100%;color:#f5f5f5}
.local-quote{background:#171717;border:1px solid #444;border-radius:10px;padding:clamp(18px,3vw,32px)}
.local-quote h3,.local-reviews h2{font-size:clamp(24px,3vw,34px);margin:0 0 12px;color:inherit}
.quote-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.quote-fields label,.local-blog>label{display:block;font-weight:600;font-size:16px}
.quote-fields input,.quote-fields select,.quote-fields textarea,.local-blog input[type=search]{display:block;width:100%;min-height:48px;border:1px solid #999;border-radius:4px;background:white;color:#171717;padding:10px;font:16px/1.5 Arial,sans-serif;box-sizing:border-box}
.quote-fields input:focus,.quote-fields select:focus,.quote-fields textarea:focus,.local-blog input:focus{outline:3px solid #e6bf55;outline-offset:2px}
.quote-details{grid-column:1/-1}.quote-consent{font-size:14px;color:#ddd}
.local-quote button,.local-blog button{background:#e4bf55;color:#151515;border:0;padding:13px 22px;border-radius:4px;font:bold 16px/1.5 Arial,sans-serif;cursor:pointer}
.local-quote button:disabled,.local-blog button:disabled{opacity:.5;cursor:not-allowed}
.local-form-status:not(:empty){padding:12px;border-radius:4px;background:#fff3cd;color:#513c00;clear:both}
.local-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.local-review-grid article,.local-blog article{padding:24px;background:#171717;border:1px solid #444;border-radius:8px}
.local-review-grid h3{font-size:19px;color:inherit;margin:8px 0}.local-review-grid time,.local-blog time{color:#bbb;font-size:14px}
.review-stars{color:#e4bf55;font-size:22px;margin:0}.local-reviews a,.local-blog a,.local-share a{color:#e4bf55!important;text-decoration:underline}
.local-review-grid summary{cursor:pointer;color:#e4bf55}.local-blog-grid{display:grid;gap:20px}.local-blog article h2{font-size:26px;margin:8px 0 12px}.local-blog-pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:24px}
.local-video-poster{margin:0;width:100%}.local-video-poster img{width:100%;height:auto;display:block}.local-video-poster figcaption{font:14px/1.5 Arial,sans-serif;color:#ccc;padding:8px}
.skip-link{position:fixed;top:-100px;left:12px;z-index:99999;background:#fff;color:#111!important;padding:12px}.skip-link:focus{top:12px}
@media(max-width:700px){.quote-fields,.local-review-grid{grid-template-columns:1fr}.local-blog article h2{font-size:22px}.local-blog-pagination{gap:10px}}
.local-quote h3,.local-reviews h2,.local-review-grid h3{color:#f5f5f5!important}
.local-blog [hidden]{display:none!important}
.local-related{display:grid;gap:20px}
.local-video-poster{height:100%;display:flex;flex-direction:column;min-height:0}
.local-video-poster img{flex:1 1 0;min-height:0;height:0;object-fit:contain}
.local-video-poster figcaption{flex:0 0 auto}
.local-review-grid{align-items:start}
.local-review-grid article:has(details[open])>.review-excerpt{display:none}
/* Keep replacement widgets within the original page's spacing. */
.local-quote{padding:20px}
.local-quote h3{font-size:22px!important;line-height:1.25!important;margin:0 0 8px!important}
.local-quote p{margin:8px 0!important;font-size:14px!important;line-height:1.4!important}
.quote-fields{gap:10px 16px}
.quote-fields label{font-size:14px;line-height:1.4}
.quote-fields input,.quote-fields select{min-height:40px;padding:7px 9px;line-height:1.3}
.quote-fields textarea{height:72px;min-height:72px;padding:8px;line-height:1.3}
.local-quote .quote-consent{font-size:12px!important}
.local-quote button{padding:10px 16px;font-size:14px}
.local-review-grid article[hidden]{display:none!important}
.local-review-grid details>p{max-height:240px;overflow:auto}
.local-review-pagination{display:flex;gap:18px;justify-content:center;align-items:center;margin-top:20px;font:16px/1.5 Arial,sans-serif}
.local-review-pagination button{background:#e4bf55;color:#111;border:0;border-radius:4px;padding:10px 18px;font:inherit;cursor:pointer}
.local-review-pagination button:disabled{opacity:.4;cursor:not-allowed}
.local-comparison{height:100%!important;aspect-ratio:auto}
.local-quote>form>h3,.local-quote>form>p:first-of-type{display:none}
/* Blog listing: retain the site's original compact cards and sidebar search. */
.local-blog-original [hidden]{display:none!important}
.local-blog-original .pagination-nav{display:flex;justify-content:center;align-items:center;gap:6px;padding:0;margin:0}
.local-blog-original .pagination-nav button{border:0;background:transparent;color:#fff;font:700 14px/1 Montserrat,Arial,sans-serif;min-width:32px;height:32px;padding:0;cursor:pointer;border-radius:50%}
.local-blog-original .pagination-nav button.active{background:#c00}
.local-blog-original .pagination-nav button[data-blog-prev],.local-blog-original .pagination-nav button[data-blog-next]{font-size:25px;font-weight:400}
.local-blog-original .pagination-nav button:disabled{opacity:.4;cursor:default}
.local-blog-original .pagination-nav button:focus-visible,.local-blog-search input:focus-visible{outline:2px solid white;outline-offset:3px}
.blog-screen-reader{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.local-blog-search .dmBlogSearchIcon{pointer-events:none}
.local-blog-search input.dmBlogSearchInput{height:50px!important}
.local-blog-original .pagination-nav{width:100%;padding:8px 0}
#dm .dmBody div.local-blog-search input.dmBlogSearchInput{height:50px!important}
#dm .dmBody .local-blog-search,#dm .dmBody .local-blog-search .dmBlogSearchWrapper{height:50px!important}
#dm .dmBody .local-blog-search .dmBlogSearchIcon{height:20px!important;line-height:18px!important;top:15px!important}
/* Client-requested agency credit. */
#dm .jigawatt-credit{display:flex!important;justify-content:flex-end;align-items:baseline;gap:8px;color:#fff!important;text-decoration:none!important;white-space:nowrap;padding:4px 0}
#dm .jigawatt-credit-label{font:12px/1.4 Arial,sans-serif;color:#bbb}
#dm .jigawatt-credit-name{font:700 26px/1.2 Arial,sans-serif;letter-spacing:-1px;color:#fff}
#dm .jigawatt-credit:focus-visible{outline:2px solid #fff;outline-offset:4px}

/* Source presentation, independent local functionality. */
#dm .gallery-item .image-container img.gallery-image{height:250px!important;width:100%!important;object-fit:cover!important;display:block}
#dm .restored-quote .local-form-status:empty{display:none}
#dm .restored-quote .local-form-status{font:14px/1.4 Montserrat,sans-serif;margin:0 0 12px!important}
#dm .restored-quote select option{background:#111;color:#fff}
#dm .restored-quote input[type=submit]:disabled{cursor:not-allowed;opacity:.65}
#dm .restored-related .postArticle[hidden]{display:none!important}
#dm .restored-related .postArticle .inner{visibility:visible!important;opacity:1!important;animation:none!important}
#dm .restored-video{height:100%;width:100%}
#dm .restored-video video{display:block;width:100%;height:100%;object-fit:contain}
#dm .local-comparison{border-radius:0;aspect-ratio:auto;background:transparent}
#dm .local-comparison .comparison-line{width:4px;transform:translateX(-50%)}
#dm .local-comparison .comparison-line:after{content:'◀ ▶';box-sizing:border-box;top:50%;left:50%;transform:translate(-50%,-50%);width:45px;height:45px;border:4px solid white;background:transparent;color:white;font:12px/37px Arial,sans-serif;box-shadow:0 0 2px #333;text-shadow:0 0 2px #333}
#dm .local-comparison .comparison-label{background:#bf0000;border-radius:3px;bottom:16px;padding:6.4px 20.8px;font:700 16px/19px Montserrat,sans-serif}
#dm .local-comparison .label-before{left:16px}
#dm .local-comparison .label-after{right:16px}
#dm .jigawatt-credit{padding:0;align-items:center;min-height:0}
#dm .jigawatt-credit-name{font-size:24px;line-height:1}
@media(max-width:767px){#dm .local-comparison .comparison-label{font-size:12px;padding:5px 12px}}

#dm .restored-related .postDescription{display:none!important}

/* Match the original before/after handles; retain keyboard range controls. */
#dm .local-comparison{border-radius:0}
#dm .local-comparison .comparison-line{width:4px;transform:translateX(-50%);background:linear-gradient(to bottom,#fff calc(50% - 22.5px),transparent calc(50% - 22.5px),transparent calc(50% + 22.5px),#fff calc(50% + 22.5px))}
#dm .local-comparison .comparison-line:after{content:"";box-sizing:border-box;top:50%;left:50%;transform:translate(-50%,-50%);width:45px;height:45px;border:4px solid #fff;border-radius:50%;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 37 37'%3E%3Cpath fill='white' d='M6 18.5L15 11.5V25.5ZM31 18.5L22 11.5V25.5Z'/%3E%3C/svg%3E") center/37px 37px no-repeat;box-shadow:none;text-shadow:none}
#dm .local-comparison .comparison-label{display:none}
#dm .local-comparison:focus-within{outline:none}
#dm .local-comparison:has(input:focus-visible){outline:3px solid #e6bf55;outline-offset:3px}

/* Original-style labels appear while hovering over the comparison images. */
#dm .local-comparison .comparison-label{display:block;opacity:0;top:50%;bottom:auto;transform:translateY(-50%);max-width:calc(50% - 30px);padding:.4em .7em;border-radius:3px;background:rgba(0,0,0,.5);color:#fff;font:inherit;line-height:1.4;pointer-events:none;transition:opacity .3s ease-in-out}
#dm .local-comparison .label-before{left:15px;right:auto}
#dm .local-comparison .label-after{right:15px;left:auto}
#dm .local-comparison:hover .comparison-label,#dm .local-comparison:has(input:focus-visible) .comparison-label{opacity:1}
#dm .local-comparison:active .comparison-label{opacity:0}
