/* Shared results experience across /results, service pages and verified ad landings */
.rw-results{--rw-blue:#073859;--rw-green:#008967;--rw-muted:#5d6b79;color:#152c3e;font-family:inherit;background:#f8fafb}
.rw-result-hero{background:linear-gradient(125deg,#062f4f 0%,#075f69 100%);color:white;padding:clamp(40px,6vw,84px) 0}
.rw-container{width:min(1160px,calc(100% - 32px));margin:0 auto}
.rw-result-hero .rw-kicker{color:#88e9cc;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:900}
.rw-result-hero h1{font-size:clamp(34px,5vw,62px);line-height:1.08;letter-spacing:-.035em;margin:14px 0}
.rw-result-hero p{color:#e0f2ef;max-width:740px;font-size:clamp(15px,1.6vw,19px);line-height:1.7}
.rw-result-hero a,.rw-result-cta a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:#0aa77c;color:white;font-weight:800;border-radius:12px;padding:13px 20px;min-height:45px;margin-top:17px}
.rw-result-content{padding:clamp(35px,5vw,65px) 0}.rw-result-content h2{font-size:clamp(26px,3vw,39px);font-weight:900;color:#073859}
.rw-result-content .rw-intro{color:var(--rw-muted);line-height:1.7;max-width:780px}
.rw-result-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:26px 0 22px}
.rw-filter-buttons{display:flex;flex-wrap:wrap;gap:8px}.rw-filter-button{border:1px solid #d8e6ec;border-radius:40px;padding:10px 14px;font-weight:800;background:#fff;color:#28445c;min-height:43px;cursor:pointer}
.rw-filter-button[aria-pressed=true]{background:#073859;border-color:#073859;color:white}
.rw-results-search{border:1px solid #d6e0e7;background:#fff;padding:11px 14px;border-radius:12px;max-width:100%;width:270px;min-height:44px}
.rw-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px}
.rw-case-card{min-width:0;background:#fff;border-radius:21px;overflow:hidden;border:1px solid #e0e9ee;box-shadow:0 8px 25px rgba(5,40,60,.06)}
/* Case images must never crop combined BEFORE/AFTER portrait photos. */
.rw-case-image{background:#eef4f6;aspect-ratio:4/3;position:relative;overflow:hidden}
.rw-case-image--single{aspect-ratio:auto;height:auto;min-height:0}
.rw-case-image--single .rw-case-single{display:block;width:100%;height:auto;max-width:100%;aspect-ratio:auto;object-fit:contain;object-position:center}
.rw-case-image--comparison{aspect-ratio:var(--rw-comparison-ratio,4 / 3)}
.rw-case-placeholder{height:100%;min-height:220px;display:grid;place-items:center;color:#607987;font-weight:800}
.rw-image-open{display:flex;align-items:center;justify-content:center;gap:7px;min-height:43px;padding:9px 15px;text-decoration:none;font-size:12px;font-weight:800;background:#f4f8fa;color:#0b566a;border-top:1px solid #e4ecef}
.rw-image-open:hover,.rw-image-open:focus-visible{background:#e7f4f1;color:#045244;text-decoration:underline}
.rw-case-grid[data-rw-visible-count="1"]{grid-template-columns:minmax(0,540px);justify-content:center}
.rw-case-grid:not([data-rw-visible-count])>.rw-case-card:only-child{width:min(100%,540px);grid-column:1/-1;justify-self:center}
.rw-case-card[hidden]{display:none!important}
.rw-compare{height:100%;position:relative;isolation:isolate;overflow:hidden;user-select:none;--rw-split:50%}
/* Contain BOTH images; a source that is portrait will never lose forehead/hairline. */
.rw-compare img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;object-position:center;display:block;pointer-events:none}
.rw-compare-before{clip-path:inset(0 calc(100% - var(--rw-split)) 0 0)}
.rw-compare-rule{position:absolute;left:var(--rw-split);width:3px;background:white;top:0;bottom:0;transform:translateX(-50%);pointer-events:none;box-shadow:0 0 6px rgba(0,0,0,.35)}
.rw-compare-rule:after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;width:37px;height:37px;display:grid;place-items:center;background:white;color:#0b4e62;box-shadow:0 2px 8px rgba(0,0,0,.2);font-size:22px}
.rw-compare-tag{position:absolute;top:10px;padding:5px 9px;border-radius:30px;background:rgba(6,29,44,.77);color:white;font-size:11px;font-weight:800;pointer-events:none}
.rw-compare-tag-before{left:10px}.rw-compare-tag-after{right:10px}
.rw-compare-range-label{position:absolute;inset:0;display:flex;align-items:end;color:transparent;font-size:0}
.rw-compare-range-label input{width:calc(100% - 22px);margin:0 11px 9px;cursor:ew-resize;accent-color:#00a874;height:22px;background:transparent;position:relative;z-index:3}
.rw-case-info{padding:19px}.rw-case-info h3{font-size:19px;line-height:1.3;font-weight:900;color:#073859;margin:11px 0 8px}
.rw-case-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;font-weight:900;text-transform:uppercase;color:#008967;letter-spacing:.05em}
.rw-case-meta time{color:#7b8d98}.rw-case-info p{font-size:13px;line-height:1.65;margin:9px 0;color:#5b6f7f}
.rw-case-description{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.rw-case-info .rw-case-disclaimer{font-size:11px;color:#768792;margin-top:15px}
.rw-case-detail strong{color:#254e61}.rw-case-expand{border-top:1px solid #e1e9ed;margin-top:14px;padding-top:12px}
.rw-case-expand summary{cursor:pointer;color:#0c6b65;font-size:13px;font-weight:800;min-height:30px}
.rw-case-extra{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.rw-case-extra img{width:100%;aspect-ratio:1;object-fit:contain;background:#f2f6f7;border-radius:9px}.rw-result-cta{margin-top:35px;background:#062f4f;border-radius:24px;color:white;padding:clamp(22px,4vw,37px)}.rw-result-cta h2{color:#fff}.rw-result-cta p{color:#d3e9e9}
.rw-no-results{background:#fff;padding:40px;border:1px dashed #bfcfd6;border-radius:16px;color:#566d78;text-align:center}
@media(max-width:1000px){.rw-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.rw-case-grid{grid-template-columns:1fr;gap:16px}.rw-results-search{width:100%}.rw-result-controls{align-items:stretch}.rw-filter-buttons{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:4px 0;scrollbar-width:thin}.rw-filter-button{white-space:nowrap}.rw-case-info{padding:16px}.rw-compare{min-height:210px}}

/* Page builder/theme image rules should not override a case's own portrait ratio. */
.rw-results .rw-case-image--single > img.rw-case-single{width:100%;height:auto;max-height:none;object-fit:contain}
@media(max-width:650px){.rw-case-grid[data-rw-visible-count="1"]{grid-template-columns:minmax(0,1fr)}.rw-case-image--single{aspect-ratio:auto}.rw-image-open{min-height:44px}}
