/* Static service pages: shared shell and interactions remain in site-v10. */
.seo-page main{min-width:0}
.seo-breadcrumbs{padding-top:26px;font-size:14px;line-height:1.6;color:var(--muted)}
.seo-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}
.seo-breadcrumbs li{min-width:0}
.seo-breadcrumbs li+li::before{content:'/';margin-right:12px;color:var(--olive)}
.seo-breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.seo-breadcrumbs li[aria-current]{max-width:72ch}
.seo-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:64px;align-items:center;padding-block:36px 84px}
.seo-hero h1{font-size:clamp(38px,3.6vw,56px);line-height:1.12;max-width:19ch;letter-spacing:-.045em}
.seo-intro{font-size:18px;line-height:1.7;color:var(--muted);max-width:66ch;margin-top:26px}
.seo-hero-copy>.eyebrow{max-width:54ch}
.seo-hero-actions{gap:12px}
.seo-hero-actions .button{padding-inline:18px}
.seo-hero .next-step{font-size:16px;max-width:65ch}
.seo-hero-links{display:flex;flex-wrap:wrap;gap:0 28px;margin-top:13px}
.seo-hero-links a{display:inline-flex;align-items:center;gap:9px;min-height:44px;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:5px}
.seo-hero-links .icon{width:18px;height:18px;flex-basis:18px}
.seo-hero-photo{min-width:0;align-self:center}
.seo-hero-photo img{aspect-ratio:4/4.7;object-fit:cover;object-position:48% 50%;border-radius:24px;background:var(--soft)}
.seo-hero-photo figcaption{font-size:14px;line-height:1.65;max-width:48ch}
.seo-split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:100px;align-items:start}
.seo-section-heading{display:block;margin:0}
.seo-section-heading h2{max-width:15ch}
.seo-symptoms{background:var(--soft);border-block:1px solid var(--line)}
.seo-symptom-list{border-top:1px solid var(--line);max-width:70ch}
.seo-symptom-list li{display:flex;align-items:flex-start;gap:18px;padding:21px 0;border-bottom:1px solid var(--line);font-size:18px;line-height:1.65}
.seo-symptom-list .icon{margin-top:4px;flex-shrink:0;color:var(--olive)}
.seo-symptom-list li>span{min-width:0}
.seo-checks{background:var(--green);color:var(--surface)}
.seo-checks .eyebrow{color:var(--lime)}
.seo-check-list{display:grid;gap:24px;max-width:70ch}
.seo-check-list li{display:flex;align-items:flex-start;gap:22px;font-size:18px;line-height:1.65;color:var(--light-ink)}
.seo-list-number{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border:1px solid #8a9e83;border-radius:50%;font-size:14px;font-weight:700;line-height:1;color:var(--lime)}
.seo-check-list li>span:last-child{padding-top:5px;min-width:0}
.seo-solutions-list{border-top:1px solid var(--line)}
.seo-solution{display:grid;grid-template-columns:72px minmax(0,1fr);gap:28px;padding-block:32px;border-bottom:1px solid var(--line)}
.seo-solution-number{font-size:30px;font-weight:600;line-height:1.3;letter-spacing:-.045em;color:var(--olive)}
.seo-solution h3{font-size:24px;line-height:1.35;max-width:42ch}
.seo-solution p{margin-top:14px;font-size:17px;line-height:1.8;color:var(--muted);max-width:70ch}
.seo-cost{padding-top:0;padding-bottom:0}
.seo-cost-panel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:60px;margin:0;padding:44px;border:1px solid var(--line);border-radius:20px;background:var(--soft)}
.seo-cost-copy,.seo-cost-factors{min-width:0}
.seo-cost-copy h2{font-size:clamp(30px,3vw,42px);line-height:1.22;max-width:24ch}
.seo-cost-panel .eyebrow{font-size:14px;margin:0 0 16px}
.seo-cost-panel .seo-price-note{font-size:17px;line-height:1.75;margin-top:20px;max-width:66ch}
.seo-cost-copy>.text-action{margin-top:22px;max-width:100%;align-items:flex-start}
.seo-cost-copy>.text-action .icon{margin-top:3px}
.seo-cost-panel .seo-cost-factors h3{font-size:19px;line-height:1.5;letter-spacing:-.02em}
.seo-factor-list{margin-top:18px}
.seo-factor-list li{display:flex;align-items:flex-start;gap:12px;font-size:16px;line-height:1.7;padding-block:13px;border-top:1px solid var(--line)}
.seo-factor-list .icon{width:19px;height:19px;flex-basis:19px;margin-top:5px;color:var(--olive)}
.seo-video-section{padding-bottom:0}
.seo-video-section .service-videos{padding:0;margin:0;border:0}
.seo-video-section .service-videos>h4{display:none}
.seo-video-section .video-pair{max-width:920px}
.seo-faq .faq-intro>p:not(.eyebrow){font-size:17px;line-height:1.75}
.seo-faq .faq-answer{font-size:17px;line-height:1.75;max-width:70ch}
.seo-faq .faq-item>summary{min-height:90px}
.seo-faq .faq-intro>.text-action{max-width:100%;align-items:flex-start}
.seo-faq .faq-intro>.text-action .icon{margin-top:3px}
.seo-related{background:var(--soft);border-block:1px solid var(--line)}
.seo-related-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.seo-related-link{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;min-height:116px;border-top:1px solid var(--line);padding-top:22px;font-size:20px;font-weight:700;line-height:1.45;letter-spacing:-.025em;transition:color .18s}
.seo-related-link>span{min-width:0;max-width:27ch}
.seo-related-link>.icon{margin-top:4px;flex-shrink:0}
.seo-contact{padding-top:84px}
.seo-proof-links{display:flex;flex-wrap:wrap;gap:0 26px;margin-top:18px}
.seo-proof-links a{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--light-ink);font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.seo-proof-links .icon{width:18px;height:18px;flex-basis:18px}
.seo-error{max-width:980px;padding-block:80px 100px}
.seo-error h1{max-width:17ch;font-size:clamp(38px,5vw,64px)}
.seo-error>p:not(.eyebrow){font-size:18px;line-height:1.75;max-width:65ch;margin-top:26px;color:var(--muted)}
.seo-error>.button{margin-top:28px}
.seo-error-contact{margin-top:64px;border-top:1px solid var(--line);padding-top:32px}
.seo-error-contact h2{font-size:30px}
.seo-error-contact>p{margin-top:16px;font-size:17px;color:var(--muted);max-width:65ch}
.seo-not-found .site-footer{border-top:1px solid var(--line);padding-top:36px}
@media(hover:hover) and (pointer:fine){
 .seo-related-link:hover,.seo-hero-links a:hover{color:var(--olive)}
 .seo-proof-links a:hover{color:var(--lime)}
}
@media(max-width:1100px){
 .seo-hero{gap:36px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
 .seo-hero h1{font-size:44px}
 .seo-hero-actions .button{width:100%}
 .seo-hero .hero-actions{max-width:420px}
 .seo-split{gap:64px}
 .seo-cost-panel{gap:36px;padding:36px}
 .seo-related-list{gap:24px}
 .seo-related-link{font-size:19px}
}
@media(max-width:900px){
 .seo-hero{grid-template-columns:minmax(0,1fr);gap:30px;padding-block:26px 64px}
 .seo-hero-copy{max-width:760px}
 .seo-hero h1{font-size:clamp(38px,6vw,52px);max-width:25ch}
 .seo-hero .hero-actions{max-width:650px;flex-wrap:nowrap}
 .seo-hero .hero-actions .button-primary{flex:1 1 auto;width:auto}
 .seo-hero .hero-actions .button-secondary{flex:0 0 auto;width:auto}
 .seo-hero-photo{max-width:760px;width:100%}
 .seo-hero-photo img{aspect-ratio:16/8;object-position:50% 48%;border-bottom-right-radius:44px}
 .seo-hero-photo figcaption{max-width:70ch}
 .seo-split{grid-template-columns:minmax(0,1fr);gap:32px}
 .seo-section-heading h2{max-width:24ch}
 .seo-section-heading h2 br{display:none}
 .seo-check-list,.seo-symptom-list{max-width:none}
 .seo-solution{grid-template-columns:48px minmax(0,1fr);gap:22px}
 .seo-cost-panel{grid-template-columns:minmax(0,1fr);gap:32px;padding:32px}
 .seo-cost-copy h2{max-width:28ch}
 .seo-related-list{grid-template-columns:minmax(0,1fr);gap:0}
 .seo-related-link{min-height:88px;align-items:center;padding-block:20px;font-size:21px}
 .seo-related-link>span{max-width:48ch}
 .seo-related-link>.icon{margin-top:0}
 .seo-contact{padding-top:64px}
 .seo-faq .faq-layout{gap:30px}
}
@media(max-width:650px){
 .seo-breadcrumbs{padding-top:16px;font-size:14px}
 .seo-breadcrumbs ol{gap:2px 8px}
 .seo-breadcrumbs li+li::before{margin-right:8px}
 .seo-breadcrumbs li[aria-current]{max-width:100%;line-height:1.6}
 .seo-hero{padding-top:24px;padding-bottom:48px;gap:28px}
 .seo-hero h1{font-size:clamp(34px,8.7vw,43px);line-height:1.15;max-width:23ch;letter-spacing:-.045em}
 .seo-intro{font-size:17px;line-height:1.75;margin-top:22px}
 .seo-hero .hero-actions{flex-direction:column;max-width:none}
 .seo-hero .hero-actions .button{width:100%;flex:auto}
 .seo-hero .next-step{font-size:16px;line-height:1.7}
 .seo-hero-links{gap:0 18px;margin-top:12px}
 .seo-hero-links a{font-size:14px;gap:7px}
 .seo-hero-photo img{aspect-ratio:3/2;object-position:48% 50%;border-bottom-right-radius:36px}
 .seo-hero-photo figcaption{font-size:14px}
 .seo-split{gap:26px}
 .seo-symptom-list li{font-size:17px;line-height:1.75;gap:14px;padding-block:18px}
 .seo-symptom-list .icon{width:21px;height:21px;flex-basis:21px;margin-top:5px}
 .seo-check-list{gap:22px}
 .seo-check-list li{font-size:17px;line-height:1.75;gap:16px}
 .seo-list-number{width:38px;height:38px;flex-basis:38px}
 .seo-check-list li>span:last-child{padding-top:2px}
 .seo-solution{grid-template-columns:32px minmax(0,1fr);gap:16px;padding-block:26px}
 .seo-solution-number{font-size:24px}
 .seo-solution h3{font-size:22px}
 .seo-solution p{font-size:17px;line-height:1.8;margin-top:12px}
 .seo-cost-panel{padding:28px 22px;gap:28px}
 .seo-cost-copy h2{font-size:31px;line-height:1.25;letter-spacing:-.04em}
 .seo-cost-panel .seo-price-note{font-size:17px;line-height:1.75;margin-top:18px}
 .seo-cost-copy>.text-action{font-size:16px;gap:9px}
 .seo-cost-copy>.text-action .icon:first-child{display:none}
 .seo-factor-list li{font-size:16px;line-height:1.75}
 .seo-faq .faq-answer{padding-right:0;font-size:17px}
 .seo-faq .faq-item>summary{gap:16px;min-height:88px}
 .seo-related-link{font-size:19px;gap:16px;min-height:90px}
 .seo-contact{padding-top:48px}
 .seo-proof-links{gap:0 20px;margin-top:14px}
 .seo-proof-links a{font-size:14px;gap:8px}
 .seo-error{padding-block:48px 64px}
 .seo-error h1{font-size:38px;line-height:1.15}
 .seo-error>p:not(.eyebrow){font-size:17px;line-height:1.75;margin-top:22px}
 .seo-error>.button{width:100%;margin-top:24px}
 .seo-error-contact{margin-top:44px;padding-top:28px}
 .seo-error-contact h2{font-size:28px}
}
@media(max-width:380px){
 .seo-hero h1{font-size:33px}
 .seo-cost-panel{padding-inline:20px}
 .seo-cost-copy h2{font-size:29px}
 .seo-solution{gap:12px;grid-template-columns:28px minmax(0,1fr)}
 .seo-related-link{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
 .seo-page .hero-copy>.eyebrow,.seo-page .hero-actions{animation:none}
 .seo-related-link{transition:none}
}

/* Visible crawlable service navigation on the home page and shared footer. */
.service-detail-link{margin-top:18px;font-size:15px;line-height:1.6}
.service-detail-link a{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:var(--green);text-decoration:underline;text-underline-offset:4px}
.service-detail-link .icon{width:18px;height:18px;flex:none;transition:transform .2s ease}
.footer-services{border-top:1px solid var(--line);padding-block:28px}
.footer-services>p{font-weight:700;font-size:16px;margin-bottom:14px}
.footer-services>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 28px}
.footer-services a{display:flex;align-items:center;min-height:44px;font-size:15px;line-height:1.6;padding-block:6px;text-decoration:underline;text-underline-offset:4px}
@media(hover:hover){.service-detail-link a:hover .icon{transform:translateX(4px)}}
@media(max-width:800px){.footer-services>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.footer-services>div{grid-template-columns:minmax(0,1fr);gap:2px}.footer-services a{font-size:15px}}
@media(prefers-reduced-motion:reduce){.service-detail-link .icon{transition:none}}
