:root{--navy:#102b40;--gold:#d4aa18;--gold-dark:#896600;--cream:#f7f2e8;--ink:#152631;--alert:#b92f35}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fffdf9;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}header{height:84px;padding:0 clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:28px;background:#fffdf9;border-bottom:1px solid rgba(212,170,24,.28)}.logo{width:210px;height:74px;display:flex;align-items:center;justify-content:center;overflow:hidden}.logo img{width:220px;transform:scale(1.55);transform-origin:center 43%}nav{display:flex;gap:32px;font-size:14px;font-weight:800}nav a:hover{color:var(--gold-dark)}.call{background:var(--navy);color:#fff;border-radius:6px;padding:14px 20px;font-weight:900}.service-hero{background-image:linear-gradient(90deg,rgba(248,245,238,.99),rgba(248,245,238,.91) 48%,rgba(248,245,238,.6)),url('/rose-city-pros-walkerville-owner-van-hero.png');background-size:cover;background-position:center;min-height:650px;display:flex;align-items:center}.hero-inner{width:min(1180px,calc(100% - 40px));margin:auto;padding:55px 0}.crumb{display:flex;gap:9px;flex-wrap:wrap;color:#6c7a82;font-size:12px}.crumb a{font-weight:800;color:var(--navy)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:80px;align-items:center}.eyebrow,.overline{text-transform:uppercase;letter-spacing:.16em;color:var(--gold-dark);font-size:11px;font-weight:900}.hero-grid h1{max-width:760px;margin:18px 0 24px;color:var(--navy);font:700 clamp(52px,6vw,82px)/.98 Georgia,serif;letter-spacing:-.04em}.lead{max-width:680px;color:#485d68;font-size:20px;line-height:1.65}.actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}.actions a{min-height:54px;padding:0 23px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:20px;font-weight:900}.primary{background:var(--gold);color:var(--navy);box-shadow:0 10px 22px rgba(137,102,0,.18)}.secondary{background:rgba(255,255,255,.8);border:1px solid rgba(16,43,64,.3);color:var(--navy)}.trust{display:flex;flex-wrap:wrap;gap:23px;margin-top:30px;color:#52646e;font-size:12px;font-weight:800}.trust span:before{content:"✓";color:var(--gold-dark);margin-right:6px}.hero-grid>aside{background:var(--navy);color:#fff;border-top:4px solid var(--gold);border-radius:8px;padding:36px;box-shadow:0 25px 60px rgba(16,43,64,.25)}.hero-grid>aside strong{font:700 28px/1.12 Georgia,serif}.hero-grid>aside p{color:#b8c7cf;line-height:1.65}.hero-grid>aside a{display:block;color:#f1cb4e;font-size:24px;font-weight:900;margin:25px 0 7px}.hero-grid>aside small{color:#91a6b1}.content-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);gap:80px;width:min(1120px,calc(100% - 40px));margin:auto;padding:105px 0}.content-grid h2,.faq h2,.related h2,.bottom-cta h2{color:var(--navy);font:700 clamp(36px,4vw,56px)/1.08 Georgia,serif;letter-spacing:-.03em;margin:13px 0 25px}.intro{color:#526873;font-size:18px;line-height:1.8}.content-grid h3{color:var(--navy);font:700 27px Georgia,serif;margin:42px 0 18px}.content-grid ul{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;padding:0;list-style:none}.content-grid li{padding:15px 15px 15px 42px;background:#f8f5ef;position:relative;font-weight:800;color:#3e5561}.content-grid li:before{content:"✓";position:absolute;left:16px;color:var(--gold-dark)}.process ol{display:grid;gap:1px;padding:0;list-style:none;background:#ddd8cf}.process li{display:grid;grid-template-columns:180px 1fr;gap:25px;background:#fffdf9;padding:21px}.process li span{color:#61727b}.areas{align-self:start;position:sticky;top:30px;background:var(--navy);color:#fff;padding:34px;border-radius:7px;border-top:4px solid var(--gold)}.areas h2{color:#fff;font-size:31px}.areas p{color:#b9c7cf;line-height:1.7}.areas a{display:inline-block;margin-top:12px;color:#f2cc51;font-weight:900}.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;padding:95px max(20px,calc((100% - 1120px)/2));background:var(--cream)}details{border-top:1px solid #d8d1c5;padding:20px 0}details:last-child{border-bottom:1px solid #d8d1c5}summary{cursor:pointer;color:var(--navy);font:700 19px Georgia,serif}details p{color:#596d77;line-height:1.7;margin:14px 0 0}.related{padding:95px max(20px,calc((100% - 1120px)/2))}.related>div{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ddd7ce;border-left:1px solid #ddd7ce}.related a{padding:24px;border-right:1px solid #ddd7ce;border-bottom:1px solid #ddd7ce;color:var(--navy);font-weight:900;display:flex;justify-content:space-between}.related a span{color:var(--gold-dark)}.bottom-cta{padding:75px max(20px,calc((100% - 1120px)/2));background:var(--navy);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:50px}.bottom-cta h2{color:#fff;max-width:680px;margin-bottom:10px}.bottom-cta p:not(.overline){color:#aebec7}.bottom-cta .actions{margin:0}.bottom-cta .light{color:#fff;border-color:#718997;background:transparent}footer{display:grid;grid-template-columns:1fr 1.2fr auto;align-items:center;gap:30px;padding:45px max(20px,calc((100% - 1120px)/2)) 25px;background:#0b2233;color:#fff}footer img{width:190px;background:#fff;border-radius:5px}footer p{color:#96a8b2;font-size:12px}footer>a{font-weight:900}footer small{grid-column:1/-1;border-top:1px solid #29404f;padding-top:20px;color:#6f8490}.mobile-call{display:none}@media(max-width:900px){nav{display:none}.hero-grid,.content-grid,.faq{grid-template-columns:1fr}.hero-grid{gap:40px}.service-hero{background-image:linear-gradient(rgba(248,245,238,.95),rgba(248,245,238,.98)),url('/rose-city-pros-walkerville-owner-van-hero.png')}.areas{position:static}.related>div{grid-template-columns:1fr 1fr}.bottom-cta{align-items:flex-start;flex-direction:column}footer{grid-template-columns:1fr 1fr}}@media(max-width:600px){body{padding-bottom:54px}header{height:70px;padding:0 16px}.logo{width:145px;height:62px}.logo img{width:160px}.top-call{font-size:12px;padding:11px}.hero-inner{padding:38px 0}.hero-grid h1{font-size:46px}.lead{font-size:17px}.actions{display:grid}.trust{display:grid}.hero-grid>aside{padding:28px}.content-grid{padding:70px 0}.content-grid ul{grid-template-columns:1fr}.process li{grid-template-columns:1fr;gap:6px}.faq,.related,.bottom-cta{padding-top:70px;padding-bottom:70px}.related>div{grid-template-columns:1fr}footer{grid-template-columns:1fr}.mobile-call{display:block;position:fixed;z-index:20;left:0;right:0;bottom:0;background:var(--alert);color:#fff;text-align:center;padding:17px;font-weight:900}}

/* Shared neighborhood links in the existing footer. */
.neighborhood-links{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}.neighborhood-links h2{font:700 18px Georgia,serif;margin:0;color:#fff}.neighborhood-links a{color:#f2cc51;font-size:14px;font-weight:700}.neighborhood-links a:hover{text-decoration:underline}

.local-reviews{padding:80px max(20px,calc((100% - 1120px)/2));background:var(--cream)}.local-reviews h2{font:700 clamp(32px,4vw,48px)/1.12 Georgia,serif;color:var(--navy);margin:16px 0 30px}.local-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.local-review-grid blockquote{margin:0;padding:28px;background:var(--navy);color:#fff;border-radius:7px}.local-review-grid blockquote>div{color:var(--gold);letter-spacing:.12em}.local-review-grid blockquote p{font:italic 18px/1.6 Georgia,serif}.local-review-grid footer{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:0;background:transparent;font-size:14px}.local-review-grid footer span{color:#b9c7cf}.local-review-link{display:inline-block;margin-top:28px;color:var(--gold-dark);font-weight:700;text-decoration:underline}@media(max-width:900px){.local-review-grid{grid-template-columns:1fr}}
.areas.areas-compact{padding:22px}.areas-compact h2{font-size:24px;line-height:1.15;margin:12px 0}.areas-compact p{font-size:14px;line-height:1.5}.areas-compact a{margin-top:6px;font-size:14px}.areas-compact iframe{height:220px;margin-top:16px!important}

.full-service-areas{font-size:14px;line-height:1.7;max-width:900px}

/* Page navigation: native disclosure supports touch, mouse and keyboard. */
header:has(>.page-menu){position:relative;z-index:30;gap:16px}
.page-menu{position:static;margin-left:auto;color:#102b40}
.page-menu>summary{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 16px;border:1px solid #102b40;border-radius:6px;cursor:pointer;font:700 16px Arial,sans-serif;list-style:none;background:#fff}
.page-menu>summary::-webkit-details-marker{display:none}
.page-menu[open]>summary{background:#102b40;color:#fff}
.page-menu .page-menu-panel{position:absolute;top:100%;right:20px;width:min(920px,calc(100vw - 40px));max-height:75vh;overflow:auto;overscroll-behavior:contain;background:#fff;color:#102b40;border:1px solid #d7dfe3;border-top:4px solid #d4aa18;border-radius:0 0 8px 8px;box-shadow:0 16px 40px #102b4033;padding:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;font:400 16px/1.4 Arial,sans-serif;text-align:left}
.page-menu:not([open]) .page-menu-panel{display:none}
.page-menu .page-menu-quick{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 16px;border-bottom:1px solid #d7dfe3;padding-bottom:16px}
.page-menu .page-menu-group{display:flex;flex-direction:column;align-items:stretch}
.page-menu .page-menu-group h2{font:700 17px/1.4 Arial,sans-serif;margin:0 0 10px;color:#102b40;letter-spacing:normal}
.page-menu .page-menu-panel a{display:block;padding:10px 8px;min-height:44px;font:400 16px/1.5 Arial,sans-serif;color:#102b40;text-transform:none;letter-spacing:normal}
.page-menu .page-menu-panel a:hover{background:#f6f1e8;text-decoration:underline}
.page-menu a:focus-visible,.page-menu>summary:focus-visible{outline:3px solid #896600;outline-offset:3px}
@media(max-width:700px){.page-menu .page-menu-panel{grid-template-columns:1fr;right:12px;width:calc(100vw - 24px);padding:20px;gap:20px}.page-menu .page-menu-quick{gap:4px 10px}header:has(>.page-menu){padding-left:12px;padding-right:12px;gap:8px}.page-menu>summary{padding:10px;font-size:14px}header:has(>.page-menu)>.header-cta,header:has(>.page-menu)>.top-call{display:none}}

.review-carousel{display:block!important;min-width:0}
.review-carousel blockquote{min-height:240px;display:flex;flex-direction:column;justify-content:center;margin:0}
.review-carousel blockquote[hidden]{display:none!important}
.review-carousel-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:18px}
.review-carousel-controls button{min-width:44px;min-height:44px;padding:10px 16px;border:1px solid #d4aa18;background:#102b40;color:#fff;border-radius:6px;font:700 16px Arial,sans-serif;cursor:pointer}
.review-carousel-controls button:hover{background:#234b64}
.review-carousel-controls button:focus-visible{outline:3px solid #d4aa18;outline-offset:3px}
.review-carousel-status{font:400 16px Arial,sans-serif;min-width:45px;text-align:center}
.reviews-section>.review-carousel-controls{grid-column:2;margin-top:-50px}
@media(max-width:980px){.reviews-section>.review-carousel-controls{grid-column:1;margin-top:-24px}}
