/* Responsive light-only layout, measured against the live October 29 release. */
:root{color-scheme:light;--bg:#fff;--paper:#fff;--panel:#edf4fc;--panel2:#f6f9fd;--ink:#182b3c;--mut:#56697b;--muted:#56697b;--line:#dce4ec}
html{scroll-behavior:auto}body.sitewide-page{font-size:16px;line-height:1.6}*,*::before,*::after{box-sizing:border-box}main,section,article,figure,aside,form{min-width:0}img,video,iframe{max-width:100%}img{height:auto}button,input,select,textarea{font-family:inherit}p{overflow-wrap:break-word}
.sitewide-page .head{max-width:1248px;min-height:84px;padding:10px 24px;gap:24px}.sitewide-page .head .brand-image{width:72px!important;height:64px!important}.sitewide-page .head .brand-light{display:block!important}.sitewide-page .head .brand-dark{display:none!important}.sitewide-page .head .nav{gap:24px}.sitewide-page .head .nav-links{gap:17px}.sitewide-page .head .actions>.phone{display:inline-flex!important;font-size:14px;align-items:center;min-height:44px}.sitewide-page .head .actions{gap:14px}.sitewide-page .head .menu-btn{flex:none}
.sitewide-page .sitewide-hero-inner{max-width:1248px;padding:40px 24px;gap:48px;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center}.sitewide-page .sitewide-hero h1{font-size:clamp(34px,3.5vw,48px);line-height:1.13;letter-spacing:-1.2px;margin:14px 0 18px;max-width:19em}.sitewide-page .sitewide-hero .sitewide-lead{font-size:16px;line-height:1.6;margin:0 0 16px}.sitewide-page .sitewide-benefits{margin:14px 0}.sitewide-page .sitewide-benefits li{font-size:14px;line-height:1.5;margin:8px 0;padding-left:23px}.sitewide-page .sitewide-hero .btns{gap:10px;margin-top:18px}.sitewide-page .pill,.sitewide-page .button{min-height:44px;padding:10px 17px;font-size:14px}.sitewide-page .sitewide-hero-panel{padding:24px;border:1px solid #dce4ec;border-radius:8px;box-shadow:none;align-self:center}.sitewide-page .sitewide-hero-panel h2{font-size:26px;line-height:1.2;margin:10px 0 12px}.sitewide-page .sitewide-hero-panel p{font-size:14px;line-height:1.55;margin:0 0 14px}.sitewide-page .sitewide-hero-panel p.kicker{font-size:10px;margin-bottom:10px}.sitewide-page .hero-expect{border:0;border-top:1px solid #dce4ec;padding:10px 0;margin:4px 0 14px}.sitewide-page .hero-expect summary{font-size:14px;color:#182b3c;min-height:28px;cursor:pointer;font-weight:600}.sitewide-page .hero-expect .panel-points{margin:8px 0 0}.sitewide-page .hero-expect .panel-points li{font-size:14px;padding-block:8px}
.sitewide-page #homepage-capture{gap:6px;margin-top:14px;padding:0;background:transparent}.sitewide-page #homepage-capture label{font-size:13px;line-height:1.4;margin:0}.sitewide-page #homepage-capture input{min-height:42px;height:42px;padding:8px 10px;font-size:16px}.sitewide-page #homepage-capture .home-disclosure{font-size:11.5px;line-height:1.45;margin:6px 0}.sitewide-page #home-capture-status{font-size:13px;line-height:1.5;margin:0}.sitewide-page #home-capture-status:empty{display:none}
.sitewide-page .block,.sitewide-page .stats,.sitewide-page .areas,.sitewide-page .clients,.sitewide-page .quotes,.sitewide-page .faq{max-width:1248px;padding-inline:24px}.sitewide-page .block{padding-top:56px}.sitewide-page .h2,.sitewide-page h2.h2{font-size:clamp(28px,2.7vw,38px);line-height:1.18;letter-spacing:-.8px}.sitewide-page .lead{font-size:16px;line-height:1.65}.sitewide-page .strip{padding:24px max(24px,calc((100% - 1200px)/2));gap:24px}.sitewide-page .strip strong{font-size:21px}.sitewide-page .strip p{font-size:15px}.sitewide-page .feature{padding:28px;gap:32px;border-radius:8px;align-items:center}.sitewide-page .feature-art{min-height:0;height:320px;max-width:100%;border-radius:8px;overflow:hidden}.sitewide-page .service-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.sitewide-page .story-picture{aspect-ratio:3/2;max-height:360px;border-radius:8px;align-self:center}.sitewide-page .story-picture img{display:block;width:100%;height:100%;object-fit:cover}.sitewide-page .support-story{gap:40px}.sitewide-page .story-points{gap:16px}.sitewide-page .story-points p{font-size:15px}.sitewide-page .industry-banner{aspect-ratio:4/1;max-height:280px;border-radius:8px;margin-bottom:20px}.sitewide-page .industry-banner img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.sitewide-page .industry-grid{gap:18px;align-items:stretch}.sitewide-page .industry-card{padding:24px;gap:12px;border-radius:8px;min-width:0}.sitewide-page .industry-card h3{font-size:23px;line-height:1.22}.sitewide-page .industry-card p{font-size:15px;line-height:1.6}.sitewide-page .industry-card a{font-size:14px}.sitewide-page .stats .stat{padding:20px;border-radius:8px}.sitewide-page .stat b{font-size:28px}.sitewide-page .stat span{font-size:14px}
.sitewide-page .two{gap:40px;align-items:start}.sitewide-page .two>.areas,.sitewide-page .two>.faq,.sitewide-page .areas .areas{padding:0;margin:0;max-width:none}.sitewide-page .area{padding:20px;gap:16px;border-radius:8px;min-height:0}.sitewide-page .area strong{font-size:20px}.sitewide-page .facts{font-size:15px;gap:14px}.sitewide-page .contact{max-width:1200px;margin:56px auto 0;padding:36px;gap:40px;align-items:start;border-radius:8px}.sitewide-page .contact .h2{font-size:36px;line-height:1.16}.sitewide-page .contact .form{padding:24px;border-radius:8px}.sitewide-page .page-contact{padding:40px max(24px,calc((100% - 1200px)/2))!important}.sitewide-page .post-cover{width:100%;height:auto;max-height:360px;object-fit:cover;aspect-ratio:16/9;border-radius:8px!important}.sitewide-page .post-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.sitewide-page iframe,.sitewide-page .map,.sitewide-page .map-panel{width:100%;max-height:360px;aspect-ratio:16/9;border-radius:8px;overflow:hidden}.sitewide-page footer.foot{margin-top:56px;padding:40px max(24px,calc((100% - 1200px)/2)) 28px;gap:28px}.sitewide-page .foot .brand-light{display:none!important}.sitewide-page .foot .brand-dark{display:block!important}.sitewide-page .foot .brand-image{width:80px;height:72px}.sitewide-page .float{font-size:13px;padding:9px 14px;right:18px;bottom:18px;box-shadow:0 3px 12px #1026341a}.sitewide-page .float span{width:28px;height:28px}
/* Reviews: short cards, complete quotes behind a native accessible disclosure. */
.sitewide-page .clients.google-reviews-showcase{display:block;background:#f6f9fd;border:1px solid #e1e7ed;border-radius:8px;margin:40px auto 0;padding:28px 24px}.sitewide-page .google-reviews-intro{display:grid;grid-template-columns:1fr auto;gap:8px 24px;align-items:center}.sitewide-page .google-reviews-intro .kicker{grid-column:1/-1}.sitewide-page .google-reviews-intro h2{font-size:30px;margin:0;line-height:1.2}.sitewide-page .google-reviews-intro h2 br{display:none}.sitewide-page .google-reviews-intro p{font-size:15px;margin:0;grid-column:1}.sitewide-page .google-review-link{grid-column:2;grid-row:2/4;align-self:center;background:#fff;border:1px solid #dce4ec;border-radius:6px;padding:10px 14px;box-shadow:none;font-size:13px}.sitewide-page .native-google-reviews{padding:12px 0 0;background:transparent;box-shadow:none;border:0;border-radius:0;min-width:0}.sitewide-page .review-provenance{font-size:12px;line-height:1.5;margin:0 0 10px;color:#56697b}.sitewide-page .review-controls{gap:12px;margin:8px 0 12px;font-size:12px}.sitewide-page .review-controls button{width:38px;height:38px;min-width:38px;min-height:38px;font-size:18px;border-color:#d0dce6}.sitewide-page .google-review-track{gap:16px;padding:2px 2px 14px;align-items:start;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.sitewide-page .google-review-card{flex:0 0 310px;width:310px;height:300px;max-height:300px;margin:0;padding:20px;border:1px solid #dce4ec;border-radius:8px;background:#fff;color:#182b3c;display:flex;flex-direction:column;gap:9px;scroll-snap-align:start;overflow:hidden;box-shadow:none}.sitewide-page .review-stars{font-size:14px;line-height:1;margin:0;letter-spacing:2px;color:#856018}.sitewide-page .google-review-card figcaption{display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.4}.sitewide-page .google-review-card figcaption strong{font-size:14px;line-height:1.4}.sitewide-page .google-review-card figcaption span{font-size:11px;color:#56697b}.sitewide-page .google-review-card figcaption a{font-size:12px;color:#1759ba;text-decoration:underline}.sitewide-page .google-review-card .review-excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;line-height:1.55;white-space:normal;margin:4px 0 0}.sitewide-page .google-review-card .review-full{border:0;padding:0;margin:0;min-height:0}.sitewide-page .review-full summary{font-size:13px;line-height:1.5;min-height:28px;color:#1759ba;cursor:pointer}.sitewide-page .review-full blockquote{font-size:14px;line-height:1.55;max-height:135px;overflow-y:auto;white-space:pre-wrap;margin:6px 0 0;padding-right:8px}.sitewide-page .google-review-card:has(.review-full[open]) .review-excerpt{display:none}.sitewide-page .review-attributes{font-size:12px;margin:8px 0;color:#56697b}
/* Website Plans uses the same restrained scale without changing its two-step flow. */
.sitewide-page.websiteplans-page .website-hero-inner{max-width:1248px;padding:40px 24px;gap:40px;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}.sitewide-page.websiteplans-page .website-hero-inner h1{font-size:44px;line-height:1.12;letter-spacing:-1.2px}.sitewide-page .website-start-card{padding:24px;border-radius:8px}.sitewide-page .website-start-card h2{font-size:25px;line-height:1.2}.sitewide-page .website-start-card form{padding:0}.sitewide-page.websiteplans-page .section{padding-block:56px}.sitewide-page .plan{padding:24px;border-radius:8px}.sitewide-page .plan h3{font-size:26px}.sitewide-page .plan .price{font-size:38px}.sitewide-page .plan li{font-size:15px;padding-block:9px}.sitewide-page .plan-purpose{font-size:15px}.sitewide-page .signup .consultation{padding-top:40px}.sitewide-page.signup .consultation{padding:40px 0}.sitewide-page.signup .consultation-grid{max-width:1200px;gap:40px}.sitewide-page.signup h1{font-size:44px}.sitewide-page.signup .selection{padding:22px}.sitewide-page.signup form{padding:24px;border-radius:8px}
@media(max-width:1100px){.sitewide-page .head .nav-links{display:none}.sitewide-page .head .menu-btn{display:inline-flex}.sitewide-page .sitewide-hero-inner{gap:30px}.sitewide-page .sitewide-hero h1{font-size:40px}.sitewide-page .clients.google-reviews-showcase{margin-inline:24px}.sitewide-page .contact{margin-inline:24px}.sitewide-page .industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.sitewide-page .head{min-height:76px;padding:8px 20px}.sitewide-page .head .brand-image{width:64px!important;height:58px!important}.sitewide-page .sitewide-hero-inner,.sitewide-page.websiteplans-page .website-hero-inner{grid-template-columns:1fr;padding:30px 20px;gap:24px}.sitewide-page .sitewide-hero h1{font-size:36px;max-width:22em}.sitewide-page .sitewide-hero-copy{max-width:680px}.sitewide-page .sitewide-hero-panel{padding:22px;width:100%;max-width:640px;justify-self:start}.sitewide-page .sitewide-hero-panel h2{font-size:24px}.sitewide-page .support-story,.sitewide-page .two{grid-template-columns:1fr;gap:28px}.sitewide-page .story-picture{width:100%;max-height:320px;aspect-ratio:16/9}.sitewide-page .feature-art{height:280px}.sitewide-page .industry-banner{aspect-ratio:3/1;max-height:220px}.sitewide-page .block{padding-top:40px}.sitewide-page .contact,.sitewide-page .contact.page-contact{grid-template-columns:1fr;gap:24px;padding:28px 20px}.sitewide-page .google-reviews-intro{grid-template-columns:1fr}.sitewide-page .google-review-link{grid-column:1;grid-row:auto;justify-self:start}.sitewide-page .google-reviews-intro h2{font-size:27px}.sitewide-page .clients.google-reviews-showcase{margin:32px 20px 0;padding:24px 20px}.sitewide-page .website-hero-inner h1{font-size:38px!important}.sitewide-page .consultation-grid{grid-template-columns:1fr!important;gap:28px}.sitewide-page .section-heading{gap:24px}.sitewide-page .map,.sitewide-page iframe{max-height:280px}}
@media(max-width:600px){.sitewide-page .head .phone{font-size:13px}.sitewide-page .head .actions{gap:10px}.sitewide-page .head .round{width:40px;height:40px}.sitewide-page .sitewide-hero h1{font-size:32px;letter-spacing:-.8px}.sitewide-page .sitewide-hero .sitewide-lead{font-size:15px}.sitewide-page .sitewide-hero .btns>.pill{width:auto;flex:1 1 140px;font-size:13px;padding:10px 12px}.sitewide-page .sitewide-benefits li{font-size:13px;margin:7px 0}.sitewide-page .sitewide-hero-panel{padding:20px!important}.sitewide-page .sitewide-hero-panel h2{font-size:23px}.sitewide-page .block,.sitewide-page .stats,.sitewide-page .areas,.sitewide-page .quotes,.sitewide-page .faq{padding-inline:20px}.sitewide-page .h2,.sitewide-page h2.h2{font-size:28px}.sitewide-page .feature{padding:22px;gap:24px}.sitewide-page .feature-art{height:220px}.sitewide-page .industry-grid,.sitewide-page .industry-grid.two-up{grid-template-columns:1fr}.sitewide-page .industry-banner{aspect-ratio:16/7;max-height:190px}.sitewide-page .industry-card{padding:22px;gap:10px}.sitewide-page .industry-card h3{font-size:22px}.sitewide-page .story-picture{aspect-ratio:4/3;max-height:250px}.sitewide-page .stats{gap:14px}.sitewide-page .stat b{font-size:24px}.sitewide-page .clients.google-reviews-showcase{margin-inline:16px;padding:22px 16px}.sitewide-page .google-review-card{flex-basis:285px;width:285px;height:300px;padding:18px}.sitewide-page .review-controls{font-size:11px}.sitewide-page .google-reviews-intro h2{font-size:26px}.sitewide-page .contact{margin-inline:16px;padding:24px 18px}.sitewide-page .contact .h2{font-size:30px}.sitewide-page .contact .form{padding:20px 16px}.sitewide-page .float{bottom:12px;right:12px;font-size:12px}.sitewide-page .float span{display:none}.sitewide-page .website-hero-inner h1{font-size:34px!important}.sitewide-page .website-start-card{padding:20px}.sitewide-page .plan{padding:22px}.sitewide-page .plan .price{font-size:36px}.sitewide-page .plan h3{font-size:25px}.sitewide-page .section h2{font-size:29px}.sitewide-page .consultation h1{font-size:36px}.sitewide-page .area{padding:18px}.sitewide-page .area strong{font-size:19px}.sitewide-page .map,.sitewide-page iframe{max-height:220px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sitewide-page .google-review-track{scroll-behavior:auto}}

.sitewide-page .reveal,.js .sitewide-page .reveal{opacity:1;transform:none;transition:none}

.sitewide-page .google-review-card{height:280px;max-height:280px}.sitewide-page .review-full[open]{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.sitewide-page .review-full[open] summary{flex:none}.sitewide-page .review-full[open] blockquote{flex:1;min-height:0;max-height:none;overflow:auto}.sitewide-page .review-full[open] .review-attributes{flex:none;font-size:11px;margin:4px 0}
.sitewide-page .website-start-card{box-shadow:none;align-self:center}.sitewide-page .website-start-card h2{font-size:24px;margin:8px 0 12px}.sitewide-page .website-start-card>p:not(.eyebrow){font-size:14px;line-height:1.5;margin:12px 0 16px}.sitewide-page #websiteplans-first-step label{font-size:13px;margin:10px 0 6px}.sitewide-page #websiteplans-first-step input:not([type=checkbox]){min-height:42px;height:42px;padding:8px 10px}.sitewide-page #websiteplans-first-step .check{font-size:12px;line-height:1.5;margin:14px 0 10px}.sitewide-page #websiteplans-first-step .check input{width:18px;min-width:18px;min-height:18px;height:18px}.sitewide-page #websiteplans-first-step .capture-disclosure{color:#56697b;font-size:12px;line-height:1.5;margin:10px 0}.sitewide-page #websiteplans-first-step #capture-status:empty{display:none}.sitewide-page .website-hero-lead{font-size:16px;line-height:1.6}.sitewide-page .website-benefits{margin:16px 0}.sitewide-page .website-benefits li{font-size:14px;line-height:1.5;margin:10px 0}.sitewide-page .website-areas{gap:6px}.sitewide-page .hero-actions{margin-top:20px}
.sitewide-page .review-full[open]{display:block;flex:none;overflow:visible}.sitewide-page .review-full[open] blockquote{display:block;height:78px;max-height:78px;min-height:78px;overflow-y:auto;margin:4px 0 0;padding-right:8px;overscroll-behavior:contain}.sitewide-page .review-full[open] .review-attributes{max-height:24px;overflow:auto}
.sitewide-page .website-benefit-details{padding:10px 0;margin:12px 0 16px;border-block:1px solid #ffffff40}.sitewide-page .website-benefit-details summary{font-size:14px;min-height:28px;color:#fff;cursor:pointer}.sitewide-page #websiteplans-first-step input{display:block}.sitewide-page .website-start-card .eyebrow{margin-bottom:12px}.sitewide-page .website-start-card #start-title{font-size:24px}.sitewide-page .website-areas{margin-bottom:18px}.sitewide-page .website-hero-copy .hero-actions{gap:14px}@media(max-width:600px){.sitewide-page .website-areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.sitewide-page .website-areas span{font-size:10px;padding:5px 7px;border-radius:5px}.sitewide-page .website-areas span:before{display:none}.sitewide-page .website-hero-copy .hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.sitewide-page .website-hero-copy .hero-actions>.button{font-size:13px;padding-inline:12px}.sitewide-page .website-hero-copy .hero-actions>a:not(.button){font-size:12px}.sitewide-page .website-hero-lead{font-size:15px;margin-bottom:18px}}

.sitewide-page .facts>div{min-width:0}.sitewide-page .facts a{overflow-wrap:anywhere}@media(max-width:600px){.sitewide-page .facts>div:nth-child(3),.sitewide-page .facts>div:nth-child(4){grid-column:1/-1}}

/* Full-width page canvas; content containers remain centered at their own maximum widths. */
body.sitewide-page{width:100%;max-width:none;margin:0}

/* r4: full-bleed review section, thinner cards, full text in an accessible dialog. */
.sitewide-page .head .menu:not([data-open="true"]){display:none}
.sitewide-page .crumbs{max-width:1248px;margin:0 auto;padding:10px 24px;font-size:12px}
.sitewide-page .clients.google-reviews-showcase{width:100%;max-width:none;margin:36px 0 0;padding:24px max(24px,calc((100% - 1200px)/2));border-radius:0;border-inline:0;box-shadow:none}
.sitewide-page .google-reviews-intro h2{font-size:27px}.sitewide-page .native-google-reviews{padding-top:10px}.sitewide-page .review-provenance{font-size:11px;margin-bottom:6px}.sitewide-page .review-controls{margin:6px 0 10px}.sitewide-page .google-review-card{height:220px;max-height:220px;padding:16px;gap:6px;flex-basis:310px;width:310px}.sitewide-page .review-stars{font-size:12px}.sitewide-page .google-review-card figcaption{gap:3px;line-height:1.3}.sitewide-page .google-review-card figcaption strong{font-size:13px}.sitewide-page .google-review-card figcaption span{font-size:10px}.sitewide-page .google-review-card figcaption a{font-size:11px}.sitewide-page .google-review-card .review-excerpt{-webkit-line-clamp:2;font-size:13px;line-height:1.5;margin:3px 0 0}.sitewide-page .review-read{display:block;background:none;border:0;color:#1759ba;text-decoration:underline;font:600 12px/1.4 Arial;padding:3px 0;min-height:24px;cursor:pointer;text-align:left;margin-top:auto;align-self:start}
.sitewide-page .review-dialog{width:min(600px,calc(100% - 32px));max-width:600px;max-height:80vh;max-height:80svh;padding:24px;border:1px solid #dce4ec;border-radius:10px;background:#fff;color:#182b3c;box-shadow:0 16px 60px #10263430;overflow:auto}.sitewide-page .review-dialog::backdrop{background:#10263480}.sitewide-page .review-dialog-head{display:flex;justify-content:space-between;align-items:start;gap:20px}.sitewide-page .review-dialog h2{font-size:23px;line-height:1.3;margin:0}.sitewide-page .review-close{flex:none;background:#f6f9fd;color:#182b3c;border:1px solid #dce4ec;border-radius:5px;padding:8px 10px;min-height:40px;cursor:pointer;font-size:13px}.sitewide-page .review-dialog-meta{font-size:12px;color:#56697b;margin:14px 0}.sitewide-page .review-dialog-body blockquote{margin:0;white-space:pre-wrap;font-size:16px;line-height:1.7;max-height:45vh;overflow:auto;overflow-wrap:anywhere;padding-right:8px}.sitewide-page .review-dialog-source{display:inline-block;color:#1759ba;font-size:13px;margin-top:20px}
@media(max-width:800px){.sitewide-page .clients.google-reviews-showcase{margin:30px 0 0;padding:24px 20px}}
@media(max-width:600px){.sitewide-page .crumbs{padding:10px 20px}.sitewide-page .clients.google-reviews-showcase{padding:22px 20px}.sitewide-page .google-review-card{flex-basis:280px;width:280px;height:220px;max-height:220px;padding:15px}.sitewide-page .google-reviews-intro h2{font-size:24px}.sitewide-page .review-dialog{padding:20px}.sitewide-page .review-dialog h2{font-size:20px}}
@media(max-width:800px){.sitewide-page .crumbs{padding-inline:20px}}
.sitewide-page .how{width:100%;padding:40px max(24px,calc((100% - 1200px)/2));gap:20px}.sitewide-page .how .steps{width:100%;max-width:1200px;align-self:center;margin-top:16px;gap:18px}.sitewide-page .how .step{padding:24px;min-height:220px;border:1px solid #dce4ec;border-radius:8px;gap:12px}.sitewide-page .how .step h3{font-size:23px;line-height:1.25;margin:0}.sitewide-page .how .step p{font-size:15px;line-height:1.6}.sitewide-page .how .stats{width:100%;max-width:1200px;padding:0;margin:22px auto 0;gap:14px;border-top:0}.sitewide-page .how .stats .stat{min-width:0;border:1px solid #dce4ec}@media(max-width:800px){.sitewide-page .how{padding:32px 20px}.sitewide-page .how .steps{grid-template-columns:1fr}.sitewide-page .how .step{min-height:0;padding:22px}.sitewide-page .how .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
