/* REV-24: shared product navigation and reference-locked service pages. */
.refined .site-header nav .service-menu{position:relative;border:0;margin:0;padding:0}
.service-menu>summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;padding:14px 0;font-size:14px;color:#343b37;font-weight:500}
.service-menu>summary::-webkit-details-marker{display:none}.service-menu[open]>summary>span{transform:rotate(180deg)}
.refined .site-header nav .service-menu-panel{position:absolute;top:100%;left:-22px;width:300px;padding:10px;background:white;border:1px solid #dce3df;border-radius:8px;box-shadow:0 12px 32px #17221b12;display:grid;gap:3px;z-index:40}
.refined .site-header nav .service-menu-panel a{display:block;padding:12px;border-radius:4px;margin:0;line-height:1.5;color:#202422;font-size:15px}
.service-menu-panel b{font-weight:550}.service-menu-panel small{display:block;font-size:13px;color:#58635c;margin-top:3px}.service-menu-panel a:hover,.service-menu-panel a[aria-current=page]{background:#f1f5f3}
.refined .service-menu summary:focus-visible{outline:3px solid #a9c9fc;outline-offset:4px}
/* Problem -> matching solution, situated before the product story. */
.problem-solution{padding:88px 0 78px;border-top:1px solid #e0e5e2;background:#fff}
.problem-heading{max-width:820px;margin:0 auto 44px;text-align:center}.problem-heading h2{font-size:clamp(34px,3.6vw,48px);line-height:1.12;margin:18px 0}.problem-heading>p{font-size:19px;color:#505a54}
.problem-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.problem-grid article{min-width:0;display:flex;flex-direction:column}.problem-grid h3{font-size:26px;line-height:1.17;margin:13px 0 15px;text-wrap:pretty}.problem-grid article>p{font-size:17px;line-height:1.7;color:#4c5650;min-height:92px}
.problem-visual{height:224px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:26px;overflow:hidden;margin-bottom:27px}.visual-review{background:#f9f4e6}.visual-work{background:#eef3fa}.visual-search{background:#edf3ef}.problem-number{font-size:12px;letter-spacing:.06em;font-weight:600;color:#535e57}
.mini-proof{width:100%;background:#fff;border:1px solid #e6e3db;padding:22px;display:grid;grid-template-columns:32px 1fr;gap:9px 13px;border-radius:6px}.mini-avatar{display:grid;place-items:center;width:32px;height:32px;background:#f0f1f2;border-radius:50%;font-size:10px}.mini-proof b{font-size:16px;line-height:1.3;font-weight:600}.mini-proof small{font-size:11px;display:block;font-weight:400;margin-top:5px;color:#68716e}.muted-stars{grid-column:1/-1;letter-spacing:4px;color:#a2a7a4;font-size:23px}.mini-proof p{grid-column:1/-1;font-size:12px;color:#556158}
.work-paper{background:white;padding:19px 24px;width:100%;border:1px solid #e1e6ed;border-radius:6px}.work-paper>span{font-size:10px;letter-spacing:.09em;color:#647086;display:block;margin-bottom:10px}.work-paper>div{font-size:13px;line-height:1.8;padding:2px 0}.work-paper i{font-style:normal;color:#1967d2;margin-right:10px}.work-paper>div:first-of-type i{color:#137333}
.search-paper{background:white;width:100%;padding:16px 18px;border:1px solid #dfe6e1;border-radius:6px}.search-paper>span{display:block;font-size:12px;border-bottom:1px solid #edf0ee;padding-bottom:10px}.search-skeleton{display:flex;gap:12px;margin:12px 0}.search-skeleton i{display:block;width:26px;height:26px;background:#e6ede8;border-radius:4px}.search-skeleton div{flex:1;padding-top:3px}.search-skeleton b,.search-skeleton small{display:block;background:#e4e9e6;height:6px;border-radius:2px;width:75%;margin-bottom:7px}.search-skeleton small{width:48%;height:4px;background:#eef0ee}.search-paper p{font-size:11px;color:#536358;margin-top:9px}
.problem-answer{margin-top:23px;padding-top:21px;border-top:1px solid #dce3df}.problem-answer>span{font-size:11px;letter-spacing:.08em;color:#137333;font-weight:650}.problem-answer b{display:block;font-weight:550;font-size:20px;letter-spacing:-.025em;line-height:1.3;margin:8px 0 11px}.problem-answer p{font-size:16px;line-height:1.7;color:#4c5650;min-height:80px}.problem-answer a{display:flex;justify-content:space-between;gap:14px;font-size:14px;font-weight:550;margin-top:18px}.problem-answer a:hover{color:#1967d2}.problem-footnote{font-size:12px;color:#5c675f;margin-top:28px}
/* Shared typography and composition. Keep original Geist, readable body and restrained frames. */
.service-page{--muted:#4d5952}.service-page .service-dot{display:inline-block;height:8px;width:8px;border-radius:50%;margin:0 8px 1px 0}.service-dot.yellow{background:#fbbc04}.service-dot.red{background:#ea4335}.service-dot.blue{background:#4285f4}
.service-page .service-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:76px;padding-block:66px 80px;align-items:center}.service-intro h1{font-size:clamp(44px,4.7vw,66px);line-height:1.055;margin:23px 0;letter-spacing:-.052em}.service-intro-copy>p:not(.service-fine){font-size:20px;line-height:1.65;max-width:510px;color:#45534a}
.service-page .service-fine{font-size:14px;line-height:1.7;color:#526057;margin-top:18px}.service-page .service-intro .actions{margin-top:30px;gap:10px}.service-page .button{font-size:15px}.service-page h2{font-size:clamp(34px,3.5vw,46px);line-height:1.12}.service-page .text-link{font-size:16px;display:inline-block;color:#1967d2;font-weight:550;margin-top:24px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#bdd0ef}.service-page .eyebrow{font-size:12px;line-height:1.7;letter-spacing:.095em;color:#46544b}
.service-sms{background:#f2f6fa;border-radius:10px;padding:22px 24px 12px}.service-sms .sms-stage{padding:0;border:0;background:transparent;box-shadow:none}.service-page .sms-phone{width:min(410px,100%);margin-inline:auto;box-shadow:none}.service-page .sms-thread{height:245px}.service-page .sms-message{font-size:15px;line-height:1.65}.service-page .sms-phone-header{padding:20px}.service-page .sms-choice-area{padding:16px 20px}.service-page .sms-choices{gap:8px}.service-page .sms-choices button,.service-page .sms-followup-options button{font-size:14px;min-height:44px}.service-page .sms-stage-footer{font-size:12px;margin:14px auto 0;max-width:410px}.service-page .sms-job{max-width:410px;margin:0 auto 17px}.service-page .sms-job b{font-size:14px}.service-page .sms-job small{font-size:12px}
.service-friction{padding-block:62px 74px;display:grid;grid-template-columns:1.1fr 1fr;column-gap:95px;border-top:1px solid #e0e5e2}.service-friction>.eyebrow{grid-column:1/-1;margin-bottom:22px}.service-friction>p{font-size:20px;line-height:1.75;color:#45534a;max-width:530px}
.service-process{background:#f4f7f5;padding-block:72px}.service-heading{max-width:730px}.service-heading h2{margin-top:20px}.service-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:47px 0 0;list-style:none;gap:45px}.service-steps li>span{font-size:14px;color:#1967d2;display:block;margin-bottom:21px}.service-steps li h3{font-size:25px;line-height:1.2;letter-spacing:-.035em;margin-bottom:15px}.service-steps li p{font-size:17px;line-height:1.7;color:#45534a}
.service-page .service-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:72px;align-items:center;padding-block:88px}.service-text h2{margin:19px 0 23px}.service-text>p{font-size:18px;line-height:1.75;color:#45534a}.service-text>p+p{margin-top:18px}.plain-checks{list-style:none;padding:0;display:grid;gap:13px;margin:24px 0 0;font-size:16px;color:#394a3f}.plain-checks li{position:relative;padding-left:24px}.plain-checks li:before{content:'✓';position:absolute;left:0;color:#137333}
.standalone-app .story-app{border:1px solid #dce3df;border-radius:8px;box-shadow:none;overflow:hidden;min-height:0!important}.standalone-app .story-app-body{grid-template-columns:minmax(0,1fr);min-height:0!important}.standalone-app .story-sidebar{display:none}.standalone-app .story-screen{padding:26px;min-height:0;height:auto}.standalone-app .story-screen h3{font-size:25px}.standalone-app .story-chrome{font-size:10px}.standalone-app .reply-draft{border:1px solid #e1e5e2;border-top-width:1px}.standalone-app p{color:#39453e}.service-start{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-block:68px;border-block:1px solid #e0e5e2}.service-start h2{margin-top:20px}.service-start p{font-size:18px;line-height:1.75;color:#45534a}.service-start p+p{margin-top:17px}.service-start>div:last-child{padding-top:30px}
.service-page .faq{gap:90px}.service-page .faq summary{font-size:18px}.service-page .faq details p{font-size:17px;line-height:1.75;color:#45534a}.service-page .faq h2{font-size:39px;margin-top:16px}.service-related{padding-block:56px 76px;border-top:1px solid #e0e5e2}.service-related h2{margin-top:18px}.service-related>div{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.service-related a{background:#f3f6f4;border-radius:8px;padding:28px;position:relative}.service-related a>span{font-size:23px;font-weight:550;letter-spacing:-.035em}.service-related a p{font-size:16px;margin-top:7px;color:#45534a}.service-related a i{position:absolute;top:25px;right:25px;font-style:normal;font-size:20px}.service-related a:hover{background:#eaf1ed}.service-close{background:#eaf2ed;padding:68px 0;text-align:center}.service-close h2{margin:17px auto 22px;max-width:800px;color:#202422}.service-close p{font-size:19px;color:#45534a;margin-bottom:26px}.service-close .eyebrow{color:#405849}
/* Websites use the actual interactive example as the main evidence. */
.website-service-intro{padding-block:58px 44px;text-align:center}.website-service-intro h1{font-size:clamp(44px,4.8vw,67px);line-height:1.07;margin:23px auto;max-width:900px}.website-service-intro>p:not(.service-fine){font-size:20px;color:#45534a;max-width:690px;margin-inline:auto;line-height:1.7}.website-service-intro .actions{justify-content:center}
.website-evidence{margin-bottom:64px;border:1px solid #d9e2df;border-radius:9px;overflow:hidden;background:#fff}.evidence-top{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#f5f7f6;padding:14px 22px;font-size:11px;letter-spacing:.04em}.evidence-top>span:first-child{display:flex;gap:6px}.evidence-top i{width:7px;height:7px;background:#ea4335;border-radius:50%;display:block}.evidence-top i:nth-child(2){background:#fbbc04}.evidence-top i:nth-child(3){background:#34a853}.evidence-top a{font-size:12px;color:#1967d2;letter-spacing:0}.website-evidence .mini-website{border:0;border-radius:0}.website-evidence .quote-nav{padding:24px 40px}.website-evidence .quote-brand b{font-size:21px}.website-evidence .quote-brand small{font-size:10px}.website-evidence .quote-proof{padding:14px 40px;font-size:13px}.website-evidence .quote-hero{padding:36px 40px;gap:54px;grid-template-columns:1.05fr 1fr;align-items:start}.website-evidence .quote-intro h2{font-size:39px;line-height:1.1}.website-evidence .quote-intro>p{font-size:16px;line-height:1.7;max-width:470px}.website-evidence .quote-kicker{font-size:11px}.website-evidence .plumber-photo{margin-top:23px}.website-evidence .plumber-photo img{height:180px;width:100%;object-fit:cover}.website-evidence .quote-form{padding:28px}.website-evidence .quote-form h3{font-size:28px;line-height:1.15}.website-evidence .quote-form p{font-size:14px}.website-evidence .quote-form label{font-size:13px;margin-top:17px}.website-evidence .quote-form input,.website-evidence .quote-form textarea{font:14px/1.6 Geist,sans-serif;padding:12px}.website-evidence .quote-form button{font-size:15px;min-height:48px}.website-evidence .quote-form .quote-demo-note{font-size:11px}.website-evidence .quote-intro blockquote{padding-top:16px;margin-top:20px}.website-evidence .quote-intro blockquote p{font-size:14px}.website-evidence .quote-credentials{padding:15px 40px}.evidence-caption{font-size:12px;text-align:center;padding:12px 20px;color:#536159;background:#f5f7f6}
.website-reasons{background:#f4f7f5;padding-block:74px}.reason-rows{margin-top:40px}.reason-rows article{display:grid;grid-template-columns:45px 1fr 220px;gap:24px;border-top:1px solid #dce4df;padding:29px 0;align-items:start}.reason-rows article>span{font-size:14px;color:#1967d2;padding-top:7px}.reason-rows h3{font-size:26px;line-height:1.25}.reason-rows p{font-size:17px;line-height:1.75;max-width:660px;margin-top:10px;color:#45534a}.reason-rows article>b{font-size:13px;font-weight:500;border:1px solid #d4dfd8;border-radius:20px;padding:5px 14px;width:fit-content;justify-self:end;margin-top:5px}.website-offer{background:#edf3ef;padding:36px;border-radius:8px}.website-offer h3{font-size:31px;line-height:1.2;margin:22px 0}.website-offer>p{font-size:16px;line-height:1.7;color:#45534a}.website-offer .service-price{font-size:48px;font-weight:550;letter-spacing:-.04em;line-height:1.15;color:#202422;margin-bottom:20px}.service-price small{font-size:14px;display:block;font-weight:400;letter-spacing:0;margin-top:7px}.website-offer .button{margin-top:23px}
/* Google profile: photographic overview and full, readable profile below. */
.profile-hero-card{border:1px solid #dde4df;border-radius:9px;overflow:hidden}.profile-hero-images{display:grid;grid-template-columns:1.4fr 1fr;gap:3px;height:190px}.profile-hero-images img{height:100%;width:100%;object-fit:cover}.profile-hero-body{padding:27px}.example-label{font-size:10px;letter-spacing:.08em;color:#58645c}.profile-hero-body h2{font-size:31px;margin:12px 0 10px}.profile-hero-rating{font-size:13px;color:#566359}.profile-hero-rating span{color:#a86c00;letter-spacing:2px}.profile-hero-body>p{font-size:14px;margin-top:8px;color:#45534a}.profile-hero-pills{display:flex;gap:9px;margin:20px 0;font-size:12px;color:#1967d2}.profile-hero-pills span{border:1px solid #d4e1f3;border-radius:20px;padding:7px 13px}.profile-hero-body dl{margin:0;font-size:13px}.profile-hero-body dl>div{display:flex;justify-content:space-between;padding:11px 0;border-top:1px solid #edf0ee;gap:12px}.profile-hero-body dt{color:#5f6b62}.profile-hero-body dd{margin:0;text-align:right}.profile-hero-body .text-link{font-size:14px;margin-top:15px}
.full-profile-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:80px;padding-block:86px;align-items:start}.full-profile-section>.service-text{position:sticky;top:36px}.profile-explainer{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:23px}.profile-explainer b{display:block;font-size:18px;font-weight:550}.profile-explainer span{display:block;font-size:16px;color:#536159;margin-top:5px}.full-profile-section .gbp-context{font-size:12px;padding:17px}.full-profile-section .gbp-context small{font-size:9px}.full-profile-section .gbp-main{padding:25px}.full-profile-section .gbp-title h2{font-size:31px}.full-profile-section .gbp-category,.full-profile-section .gbp-section>p,.full-profile-section .gbp-review p,.full-profile-section .gbp-update p{font-size:15px;line-height:1.7;color:#45534a}.full-profile-section .gbp-section h3{font-size:20px}.full-profile-section .gbp-nav{font-size:14px}.full-profile-section .gbp-overview{font-size:14px}.full-profile-section .gbp-services span{font-size:13px}.full-profile-section .gbp-disclaimer{font-size:12px}.full-profile-section .gbp-actions{font-size:13px}.full-profile-section .gbp-photo-row span{font-size:13px}.service-map-section{background:#f4f7f5}.service-map-section .story-screen{padding:20px}.service-map-section .story-screen .visibility-map{height:320px}.service-page .profile-photo-dialog{max-width:850px}.service-page .profile-photo-dialog p{font-size:14px;color:#45534a}.service-page .quote-result{margin-top:15px;font-size:14px!important;color:#17482e!important}
@media(max-width:1050px){.refined .site-header nav{gap:17px}.service-page .service-intro{gap:35px}.service-page .service-split{gap:40px}.service-intro h1{font-size:50px}.service-page .service-intro .button{font-size:14px}.problem-grid{gap:23px}.problem-visual{padding:17px}.problem-grid article>p{min-height:143px}.full-profile-section{gap:40px}.website-evidence .quote-hero{gap:28px}.service-friction{gap:30px}.reason-rows article{grid-template-columns:30px 1fr 180px}}
@media(max-width:760px){
.refined .site-header nav .service-menu{width:100%}.service-menu>summary{padding:12px 0;font-size:16px}.refined .site-header nav .service-menu-panel{position:static;width:100%;box-shadow:none;border:0;background:#f5f7f6;padding:4px 10px;margin:0 0 8px;border-radius:5px}.refined .site-header nav .service-menu-panel a{padding:9px 10px;font-size:15px}.service-menu-panel small{font-size:12px}.refined .site-header nav.open{max-height:calc(100dvh - 92px);overflow:auto}
.problem-solution{padding-block:49px}.problem-heading{text-align:left;margin-bottom:28px}.problem-heading h2{font-size:33px;line-height:1.12}.problem-heading>p{font-size:18px}.problem-grid{grid-template-columns:1fr;gap:37px}.problem-visual{height:198px;padding:22px 36px;margin-bottom:23px}.problem-grid h3{font-size:27px}.problem-grid article>p,.problem-answer p{min-height:0}.problem-grid article>p{font-size:17px}.problem-answer{margin-top:20px}.problem-answer a{margin-top:14px}.problem-footnote{margin-top:25px;font-size:11px}
.service-page .service-intro{grid-template-columns:1fr;gap:33px;padding-block:39px 44px}.service-intro h1{font-size:45px;line-height:1.06;margin:20px 0}.service-intro h1 br{display:none}.service-intro-copy>p:not(.service-fine){font-size:18px}.service-page .service-intro .actions{margin-top:23px}.service-sms{padding:18px 10px 12px}.service-page .sms-thread{height:225px}.service-page .sms-message{font-size:14px}.service-page .sms-choice-area{padding:13px}.service-page .sms-choices button,.service-page .sms-followup-options button{font-size:13px}.service-page .service-fine{font-size:13px}.service-page .service-intro .button{font-size:14px}.service-page h2{font-size:34px;line-height:1.13}.service-friction{grid-template-columns:1fr;padding-block:40px 48px;gap:20px}.service-friction>.eyebrow{margin-bottom:0}.service-friction>p{font-size:18px}.service-process{padding-block:47px}.service-steps{grid-template-columns:1fr;gap:28px;margin-top:32px}.service-steps li{position:relative;padding-left:42px}.service-steps li>span{position:absolute;left:0;top:4px}.service-steps li h3{font-size:24px;margin-bottom:11px}.service-steps li p{font-size:17px}.service-page .service-split{grid-template-columns:1fr;gap:29px;padding-block:47px}.service-text>p{font-size:17px}.standalone-app .story-screen{padding:18px}.standalone-app .story-screen h3{font-size:24px}.service-start{grid-template-columns:1fr;gap:20px;padding-block:42px}.service-start>div:last-child{padding-top:0}.service-start p{font-size:17px}.service-page .faq{gap:26px}.service-page .faq h2{font-size:33px}.service-page .faq summary{font-size:17px}.service-related{padding-block:42px}.service-related>div{grid-template-columns:1fr;gap:13px}.service-related a{padding:23px}.service-related a>span{font-size:23px}.service-close{padding-block:47px}.service-close p{font-size:17px}.service-close h2{font-size:35px}
.website-service-intro{padding-block:39px 30px;text-align:left}.website-service-intro h1{font-size:44px;line-height:1.08;margin:21px 0}.website-service-intro h1 br{display:none}.website-service-intro>p:not(.service-fine){font-size:18px}.website-service-intro .actions{justify-content:flex-start}.website-evidence{margin-bottom:40px}.evidence-top{padding:12px;font-size:8px;gap:8px;flex-wrap:wrap}.evidence-top>span:nth-child(2){flex:1;text-align:right}.evidence-top a{display:block;font-size:12px;flex-basis:100%}.website-evidence .quote-nav{padding:17px}.website-evidence .quote-proof{padding:12px 17px;font-size:11px;gap:10px}.website-evidence .quote-proof small{font-size:9px}.website-evidence .quote-hero{grid-template-columns:1fr;gap:25px;padding:25px 17px}.website-evidence .quote-intro h2{font-size:32px}.website-evidence .quote-intro>p{font-size:15px}.website-evidence .plumber-photo img{height:150px}.website-evidence .quote-form{padding:21px 16px}.website-evidence .quote-form h3{font-size:26px}.website-evidence .quote-fields{grid-template-columns:1fr}.website-evidence .quote-credentials{padding:12px 17px;gap:8px 12px}.website-evidence .quote-credentials span{font-size:10px}.evidence-caption{font-size:11px}.website-reasons{padding-block:44px}.reason-rows{margin-top:28px}.reason-rows article{grid-template-columns:24px 1fr;gap:12px;padding:24px 0}.reason-rows article>b{grid-column:2;justify-self:start}.reason-rows h3{font-size:23px}.reason-rows p{font-size:16px}.website-offer{padding:25px}.website-offer h3{font-size:29px}.website-offer .service-price{font-size:44px}
.profile-hero-images{height:160px}.profile-hero-body{padding:22px}.profile-hero-body h2{font-size:29px}.profile-hero-pills{gap:7px;flex-wrap:wrap}.profile-hero-body dl>div{font-size:12px}.full-profile-section{grid-template-columns:1fr;gap:30px;padding-block:46px}.full-profile-section>.service-text{position:static}.profile-explainer{gap:17px}.full-profile-section .gbp-main{padding:17px}.full-profile-section .gbp-nav{font-size:12px;gap:16px;overflow:auto}.full-profile-section .gbp-context{font-size:10px;padding:13px}.full-profile-section .gbp-context small{font-size:8px}.full-profile-section .gbp-overview{font-size:13px}.full-profile-section .gbp-gallery{height:155px}.full-profile-section .gbp-services span{font-size:12px}.service-page .map-example .story-screen{padding:14px}.service-page .map-example .story-screen h3{font-size:26px}.service-page .map-example .visibility-map{height:280px}.service-page .map-example .visibility-search{font-size:11px}.service-page .map-example .visibility-point-detail{font-size:13px}.service-page .service-map-section .service-split{display:flex;flex-direction:column-reverse}.service-page .service-map-section .standalone-app{width:100%}
}
@media(max-width:360px){.service-intro h1,.website-service-intro h1{font-size:39px}.service-page .actions{align-items:stretch}.service-page .actions .button{width:100%}.problem-visual{padding-inline:23px}.profile-hero-pills span{font-size:11px;padding:6px 10px}.full-profile-section .gbp-main{padding:13px}}

.profile-hero-body .example-label{position:static;display:block;padding:0;border:0;background:none}

.service-intro-copy,.service-sms{min-width:0}
@media(max-width:760px){.service-page .service-intro{grid-template-columns:minmax(0,1fr)}}
