/* Reppy 1.15: single source of truth for native WP landing pages. No legacy v1.x cascades. */
.rsl-page{--rsl-ink:#151515;--rsl-muted:#666;--rsl-line:#e3e3e3;--rsl-surface:#f5f5f5;color:var(--rsl-ink);background:#fff;padding-bottom:70px}
.rsl-page *{box-sizing:border-box;min-width:0}
.rsl-page a{color:inherit}
.rsl-shell{padding-top:0}
.rsl-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:21px 0 19px;color:#777;font-size:12px;line-height:1.5;font-family:inherit}
.rsl-crumb a{text-decoration:none;color:#555}.rsl-crumb a:hover{text-decoration:underline}.rsl-crumb [aria-current]{color:#171717;font-weight:650}
.rsl-eyebrow{display:block;color:#777;font-size:10px;line-height:1.4;letter-spacing:.12em;font-weight:790;text-transform:uppercase}
.rsl-body{padding-top:29px}.rsl-section{margin-bottom:50px}.rsl-section:target{scroll-margin-top:110px}
.rsl-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:0 0 17px}
.rsl-heading h2{font-size:clamp(24px,2.7vw,33px);line-height:1.18;letter-spacing:-.045em;margin:4px 0 0;font-weight:800}
.rsl-heading p{font-size:13px;color:var(--rsl-muted);line-height:1.6;max-width:720px;margin:8px 0 0}
.rsl-section-count{color:#666;font-size:12px;font-weight:650;white-space:nowrap}
.rsl-heading>a{font-size:12px;font-weight:740;white-space:nowrap;text-decoration:none;border-bottom:1px solid #777;padding-bottom:4px}
.rsl-heading>a:hover{border-color:#111}
/* Models: data-focused compact catalogue. Every item has a real destination. */
.rsl-model-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.rsl-model-grid a{position:relative;display:flex;flex-direction:column;min-height:214px;padding:19px;gap:7px;background:#f7f7f7;border:1px solid #ececec;border-radius:15px;text-decoration:none;transition:background .18s,border-color .18s,transform .18s}
.rsl-model-grid a:hover{background:#fff;border-color:#a5a5a5;transform:translateY(-2px)}
.rsl-model-grid a:focus-visible,.rsl-repair-result:focus-visible,.rsl-related-grid a:focus-visible{outline:3px solid #444;outline-offset:3px}
.rsl-card-visual{display:grid;place-items:center;width:58px;height:58px;background:#ededed;border-radius:11px;color:#353535;overflow:hidden;margin-bottom:6px}
.rsl-card-visual img{display:block;width:100%;height:100%;object-fit:contain;padding:4px}.rsl-card-visual svg{width:27px;height:27px}
.rsl-model-tile-label{font-size:10px;color:#777;letter-spacing:.075em;text-transform:uppercase;font-weight:760}
.rsl-model-grid a strong{font-size:17px;line-height:1.25;letter-spacing:-.025em;font-weight:790;overflow-wrap:break-word}
.rsl-model-grid a .rsl-model-price{font-weight:780;font-size:15px;margin:4px 0 0}
.rsl-model-grid a small{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;font-size:12px;font-weight:640;color:#686868}
.rsl-model-grid a small b{font-size:17px;color:#111}
.rsl-service-grid a{min-height:236px;background:#fff}.rsl-service-grid a:hover{background:#f9f9f9}
.rsl-price-note{margin:16px 0 0;font-size:12px;line-height:1.6;color:#777}
/* Model repair cards: actual prices are the visual anchor. */
.rsl-repairs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.rsl-repair-result{display:flex;align-items:center;gap:14px;min-height:98px;padding:17px;background:#fff;border:1px solid #e4e4e4;border-radius:14px;text-decoration:none;transition:background .15s,border-color .15s}
.rsl-repair-result:hover{border-color:#999;background:#f9f9f9}
.rsl-service-icon,.rsl-related-icon{display:grid;place-items:center;flex:none;width:47px;height:47px;background:#f0f0f0;border-radius:11px;color:#333}
.rsl-service-icon svg{width:24px;height:24px}
.rsl-repair-info{display:grid;gap:5px;flex:1;min-width:0}.rsl-repair-info strong{font-weight:790;font-size:15px;line-height:1.25;letter-spacing:-.018em}
.rsl-repair-info small{color:#777;font-size:12px}.rsl-repair-price{display:grid;gap:3px;text-align:right;white-space:nowrap}.rsl-repair-price small{font-size:11px;color:#777}
.rsl-repair-price strong{font-size:17px;letter-spacing:-.03em;font-weight:815}.rsl-repair-arrow{font-size:19px;margin-left:3px;color:#555}
.rsl-model-more-grid,.rsl-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.rsl-model-more-grid a{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:16px;background:#f7f7f7;border:1px solid #eee;border-radius:10px;text-decoration:none;font-size:13px;font-weight:690}
.rsl-model-more-grid a:hover{border-color:#aaa}
.rsl-related-models,.rsl-related{padding-top:27px;border-top:1px solid #eee}
.rsl-related-grid a{display:flex;gap:10px;align-items:center;padding:14px;background:#f7f7f7;border:1px solid #ededed;border-radius:12px;text-decoration:none}
.rsl-related-grid a>span:nth-child(2){display:grid;gap:3px;flex:1}.rsl-related-grid a strong{font-size:13px;line-height:1.3}.rsl-related-grid a small{font-size:11px;color:#777}.rsl-related-grid a b{font-weight:600}.rsl-related-icon{width:39px;height:39px}
.rsl-related-icon svg{width:20px;height:20px}
.rsl-other-repairs{margin-top:20px;border-top:1px solid #eee}.rsl-other-repairs>summary{padding:17px 0;display:flex;justify-content:space-between;font-size:13px;font-weight:700;cursor:pointer;list-style:none}.rsl-other-repairs>summary::-webkit-details-marker{display:none}
.rsl-chip-links{display:flex;flex-wrap:wrap;gap:8px;padding:5px 0 14px}.rsl-chip-links a{border:1px solid #e1e1e1;border-radius:999px;background:#fafafa;padding:9px 13px;text-decoration:none;font-size:12px}
.rsl-local-empty{padding:32px;background:#f7f7f7;border-radius:13px;border:1px solid #ececec}.rsl-local-empty h3{font-size:22px;margin:0 0 9px}.rsl-local-empty p{margin:0 0 12px;color:#666;line-height:1.65}.rsl-local-empty a{display:inline-flex;font-weight:800;color:#111}
.rsl-guidance{display:flex;gap:22px;align-items:start;background:#f7f7f7;border:1px solid #eee;border-radius:13px;padding:22px 24px;margin-bottom:26px}
.rsl-guidance strong{font-size:14px;white-space:nowrap}.rsl-guidance p{color:#666;font-size:13px;line-height:1.65;margin:0}
/* Editorial and FAQs: readable document typography, not a stack of huge heroes. */
.rsl-editorial{max-width:900px;margin:40px 0 35px;border-top:1px solid #e6e6e6;padding-top:32px}
.rsl-editorial h2,.rsl-faq h2{font-size:clamp(23px,2.5vw,32px);line-height:1.2;letter-spacing:-.035em}
.rsl-editorial h3{font-size:20px;margin:25px 0 10px}.rsl-editorial p,.rsl-editorial li{font-size:15px;line-height:1.78;color:#555}
.rsl-editorial img{max-width:100%;height:auto}.rsl-faq{max-width:900px;margin:20px 0 40px}
.rsl-faq details{border-bottom:1px solid #e5e5e5}.rsl-faq summary{padding:18px 0;cursor:pointer;font-size:15px;font-weight:750}.rsl-faq details p{font-size:14px;color:#666;line-height:1.7;margin:0 0 18px}
/* City-specific, real local data only. */
.rsl-city-overview{margin:0 0 50px}.rsl-city-places{margin:30px 0}.rsl-local-stats{display:flex;gap:20px;padding:13px 0 20px;border-bottom:1px solid #e8e8e8;margin-bottom:27px}
.rsl-local-stats>div{display:flex;flex-direction:column;gap:5px;flex:1}.rsl-local-stats strong{font-size:25px;letter-spacing:-.05em}.rsl-local-stats span{font-size:12px;color:#737373}
.rsl-heading-later{margin-top:28px}.rsl-local-models{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rsl-local-model{padding:21px;background:#fafafa;border:1px solid #e7e7e7;border-radius:14px}.rsl-local-brand{font-size:10px;letter-spacing:.08em;color:#777;text-transform:uppercase}.rsl-local-model h3{font-size:19px;margin:7px 0 16px;letter-spacing:-.028em}
.rsl-local-service-list{display:grid;gap:0;border-top:1px solid #e5e5e5}.rsl-local-service-list a{display:flex;justify-content:space-between;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #e5e5e5;text-decoration:none;font-size:12px}
.rsl-local-service-list a>span{display:flex;align-items:center;gap:6px}.rsl-local-service-list a svg{width:17px;height:17px}.rsl-local-service-list a strong{white-space:nowrap;font-size:11px}
.rsl-local-all{display:inline-block;font-size:12px;font-weight:750;margin-top:16px;text-decoration:none}.rsl-local-disclaimer{font-size:11px;line-height:1.6;color:#777;margin:16px 0}
.rsl-local-places{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.rsl-local-places a{display:grid;gap:8px;background:#f7f7f7;border:1px solid #e5e5e5;border-radius:11px;padding:20px;text-decoration:none}
.rsl-place-title{font-size:17px;font-weight:790}.rsl-local-places small{color:#777;font-size:12px}.rsl-place-action{font-size:12px;font-weight:750;padding-top:14px;border-top:1px solid #e4e4e4}
.rsl-city-more,.rsl-hub-next{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:38px 0;background:#f7f7f7;padding:22px 25px;border:1px solid #eee;border-radius:13px}
.rsl-city-more h2,.rsl-hub-next h2{font-size:22px;letter-spacing:-.04em;margin:0 0 8px}.rsl-city-more p,.rsl-hub-next p{font-size:13px;color:#666;line-height:1.6;margin:0}
.rsl-city-more>a,.rsl-hub-next>a{flex:none;background:#111;color:#fff;padding:12px 19px;border-radius:999px;text-decoration:none;font-size:12px;font-weight:780}
/* WP directory hubs: existing native page contents are editable in WordPress. */
.rsl-hub-content{padding:28px max(20px,calc((100vw - 1216px)/2))}.rsl-hub-content :is(img,video,iframe){max-width:100%}
.rsl-hub-next{margin:30px auto 10px}
@media(max-width:1120px){.rsl-model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rsl-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rsl-local-models{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:359px){.rsl-model-grid{grid-template-columns:1fr}.rsl-model-grid a{min-height:148px}.rsl-heading{flex-direction:column}}

/* 1.16 · Landing hero system — same split layout as the homepage, adapted to context. */
.rsl-page{--rsl-accent:#315c75;--rsl-wash:#eaf1f4}
.rsl-hero-split{background:var(--rsl-wash);border:1px solid #dce8ed;border-radius:22px;margin:3px 0 0;overflow:hidden;position:relative}
.rsl-hero-inner{display:grid;grid-template-columns:minmax(0,1.17fr) minmax(230px,.68fr);gap:30px;align-items:center;min-height:320px;padding:36px 37px}
.rsl-hero-kicker{font-size:13px;font-weight:760;color:var(--rsl-accent);letter-spacing:0;text-transform:none;display:block}
.rsl-hero-split .rsl-intro-main h1{font-size:clamp(33px,3.2vw,49px);letter-spacing:-.054em;line-height:1.08;font-weight:795;max-width:755px;color:#192b34;margin:11px 0 13px;overflow-wrap:break-word}
.rsl-hero-split .rsl-intro-main>p{max-width:610px;font-size:15px;line-height:1.65;color:#49616d;margin:0}
.rsl-hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px}
.rsl-hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:45px;padding:11px 20px;border-radius:999px;background:#233f50;color:#fff!important;text-decoration:none;font-size:13px;font-weight:750;white-space:nowrap}
.rsl-hero-cta:hover{background:#142e3c;color:#fff!important}.rsl-hero-cta:focus-visible{outline:3px solid #315c75;outline-offset:3px}
.rsl-hero-subtle{font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:4px;color:#284b60!important}
.rsl-hero-art{min-width:0;min-height:240px;border-radius:15px;position:relative;display:flex;align-items:center;justify-content:center;background:#d9e6ec;overflow:hidden}
.rsl-hero-art .rsl-hero-photo{display:block;max-width:83%;width:auto;height:225px;object-fit:contain;filter:drop-shadow(7px 12px 10px rgba(17,40,54,.13))}
.rsl-hero-big-icon{display:grid;place-items:center;width:145px;height:145px;border-radius:40px;background:#f4f8fa;color:#315c75}
.rsl-hero-big-icon svg{width:78px;height:78px;max-width:80%;max-height:80%;stroke-width:1.2}
.rsl-hero-art-caption{position:absolute;bottom:13px;left:13px;right:13px;display:grid;gap:3px;background:#fff;border:1px solid #dce5e9;border-radius:10px;padding:11px 14px;box-shadow:0 6px 17px rgba(20,40,50,.055)}
.rsl-hero-art-caption strong{font-size:14px;line-height:1.25;color:#172f3b;font-weight:790}
.rsl-hero-art-caption span{font-size:12px;color:#687981}
.rsl-hero-exact .rsl-hero-inner{min-height:256px;padding:29px 32px;grid-template-columns:minmax(0,1.3fr) minmax(165px,.42fr)}
.rsl-hero-exact .rsl-hero-art{min-height:199px}.rsl-hero-exact .rsl-hero-photo{height:170px}
.rsl-hero-exact .rsl-intro-main h1{font-size:clamp(29px,2.8vw,42px)}
.rsl-change{padding:0 32px 20px;margin:0}.rsl-change>summary{display:inline-flex;cursor:pointer;align-items:center;gap:12px;min-height:39px;color:#31566d;font-size:12px;font-weight:740;list-style:none}
.rsl-change>summary::-webkit-details-marker{display:none}.rsl-change>div{background:#fff;border:1px solid #dce5e9;border-radius:12px;padding:16px;margin-top:8px}
.rsl-change .rp-finder{border:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;margin:0!important}
.rsl-type-repair .rsl-body,.rsl-type-repair_city .rsl-body{padding-top:15px}.rsl-exact-offers{margin-bottom:35px}
.rsl-hub-hero{background:#eaf1f4;border:1px solid #dce8ed;border-radius:22px;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(220px,.75fr);min-height:350px;overflow:hidden;padding:36px 36px 0;gap:12px}
.rsl-hub-copy{align-self:center;padding-bottom:38px}.rsl-hub-copy h1{font-size:clamp(32px,3.6vw,54px);max-width:680px;letter-spacing:-.055em;line-height:1.1;color:#192b34;margin:12px 0 16px}
.rsl-hub-copy p{max-width:610px;color:#4c6570;font-size:15px;line-height:1.6;margin:0}.rsl-hub-copy .rsl-hero-cta{margin-top:24px}
.rsl-hub-art{position:relative;display:flex;justify-content:center;align-items:flex-end;min-height:300px;overflow:hidden}
.rsl-hub-art:before{content:"";width:285px;height:285px;background:#d5e4eb;position:absolute;border-radius:50%;top:25px;right:12%}
.rsl-hub-art img{position:relative;z-index:1;height:360px;width:auto;object-fit:contain;transform:rotate(-12deg);margin-bottom:-54px;filter:drop-shadow(12px 10px 12px rgba(10,32,40,.15))}
.rsl-hub-content{scroll-margin-top:100px}
@media(max-width:850px){.rsl-hero-inner{grid-template-columns:minmax(0,1fr) minmax(170px,.47fr);padding:27px;gap:15px}.rsl-hero-art{min-height:220px}.rsl-hub-hero{grid-template-columns:minmax(0,1fr) 195px}.rsl-hub-art img{height:335px}}
@media(max-width:640px){.rsl-page{padding-bottom:30px}.rsl-crumb{padding:14px 0 12px;font-size:11px}.rsl-hero-split{border-radius:16px}.rsl-hero-inner{display:flex;flex-direction:column;align-items:stretch;padding:23px 20px 17px;min-height:0;gap:18px}.rsl-hero-split .rsl-intro-main h1{font-size:clamp(28px,7.5vw,37px);margin:8px 0 11px}.rsl-hero-split .rsl-intro-main>p{font-size:13px}.rsl-hero-actions{margin-top:18px}.rsl-hero-cta{min-height:43px;font-size:12px}.rsl-hero-art{min-height:133px;height:133px}.rsl-hero-art .rsl-hero-photo{height:160px;max-width:70%}.rsl-hero-big-icon{width:88px;height:88px;border-radius:25px}.rsl-hero-big-icon svg{width:50px;height:50px}.rsl-hero-art-caption{left:auto;right:8px;bottom:8px;max-width:70%;min-width:130px;padding:8px 10px}.rsl-hero-art-caption strong{font-size:11px}.rsl-hero-art-caption span{font-size:10px}.rsl-hero-exact .rsl-hero-inner{padding:21px 18px;gap:14px}.rsl-hero-exact .rsl-hero-art{min-height:106px;height:106px}.rsl-hero-exact .rsl-hero-photo{height:125px}.rsl-change{padding:0 18px 16px}.rsl-body{padding-top:21px}.rsl-heading h2{font-size:26px}.rsl-model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rsl-repairs-grid{grid-template-columns:1fr}.rsl-model-grid a{min-height:180px;padding:13px}.rsl-model-grid a strong{font-size:14px}.rsl-service-grid a{min-height:203px}.rsl-card-visual{width:46px;height:46px}.rsl-local-stats{gap:13px;flex-wrap:wrap}.rsl-city-more,.rsl-hub-next{display:block}.rsl-hub-next>a,.rsl-city-more>a{margin-top:14px;display:inline-flex}.rsl-hub-hero{display:flex;flex-direction:column;min-height:0;padding:23px 20px 0;border-radius:16px}.rsl-hub-copy{padding-bottom:0}.rsl-hub-copy h1{font-size:clamp(29px,8vw,39px)}.rsl-hub-copy p{font-size:13px}.rsl-hub-art{min-height:140px;max-height:140px}.rsl-hub-art img{height:205px;margin-bottom:-75px}.rsl-hub-art:before{width:190px;height:190px;top:-20px}.rsl-hub-content{padding:19px 16px}.rsl-related-grid,.rsl-model-more-grid,.rsl-local-models,.rsl-local-places{grid-template-columns:1fr}.rsl-guidance{flex-direction:column;gap:10px}}
