/* Editorial refinements below the required opening gallery. Uses the established brand tokens.
   Spacing scale: 8, 16, 24, 40, 64, 96. No hidden-on-load content or scroll hijacking. */
:root{--radius:2px}
body{font-size:16px}
h1,h2{font-weight:300;text-wrap:balance}
p{max-width:65ch}










.section{padding-block:96px}
.problems{background:var(--surface)}
.problems .container{display:grid;grid-template-columns:1fr 1.55fr;gap:0 64px;align-items:start}
.problems .section-heading{grid-column:1;grid-row:1;margin:0}
.problems .section-heading h2{font-size:clamp(36px,3.5vw,50px)}
.problem-switch{grid-column:1;grid-row:2;align-self:start;justify-content:flex-start;margin:24px 0 0}
.problem-switch button{min-width:88px;min-height:48px;border-radius:2px}
.problem-grid{grid-column:2;grid-row:1/4;display:block}
.problem-entry{display:grid;grid-template-columns:28px 1fr 24px;gap:8px 16px;width:100%;padding:24px 0;background:none;border:0;border-bottom:1px solid var(--line);text-align:left;align-items:baseline}
.problem-entry:first-child{padding-top:8px}
.problem-number{font-size:11px;color:var(--muted);grid-row:1/3}
.problem-name{font-size:19px;line-height:1.4;color:var(--ink)}
.problem-description{grid-column:2;font-size:13px;line-height:1.65;color:var(--muted);max-width:55ch}
.problem-arrow{grid-column:3;grid-row:1;font-size:22px}
.problem-entry:hover .problem-name{text-decoration:underline;text-underline-offset:5px}
.diagnosis-heading{max-width:860px;margin-bottom:48px}
.diagnosis-layout{grid-template-columns:.8fr 1.2fr;gap:96px}
.diagnosis-layout figure{width:100%;margin:0}
.diagnosis-layout img{height:480px;object-fit:cover;border-radius:0}
.diagnosis-layout h3{font-size:32px}
.effects{margin-top:0}
.effects .section-heading{text-align:left;margin-inline:0}
.effects .section-heading>p{margin-inline:0}
.category-filter{justify-content:flex-start;flex-wrap:wrap}
.category-filter button{min-height:44px;border-radius:2px}
.category-filter button[aria-pressed=true]{background:var(--ink);color:var(--paper);box-shadow:none}
.case-feature{grid-template-columns:1.15fr 1fr;gap:64px;max-width:none;align-items:center}
.case-copy{display:block}.case-copy dl{margin-block:24px}
.effects .fine-print{text-align:left;margin-top:24px}
.comparison{box-shadow:none;border-radius:0}
#case-gallery{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x proximity;padding:0 0 20px;scrollbar-width:thin}
#case-gallery .gallery-card:nth-child(n){flex:0 0 31%;height:330px;min-width:260px;transform:none;border-radius:0;scroll-snap-align:start;box-shadow:none}
#case-gallery .gallery-card>img{height:265px;object-fit:contain;border-radius:0}
#case-gallery .gallery-caption{height:65px;background:transparent;border-radius:0;padding:16px 0}
.gallery-help{text-align:left}
.expert{grid-template-columns:.85fr 1.15fr;gap:96px}
.expert figure{padding-right:40px}.expert figure img{height:auto;aspect-ratio:1;object-fit:cover;border-radius:0}
.client-story .eyebrow{font-size:12px;text-transform:none;letter-spacing:0}
.reviews{text-align:left}.reviews .container{max-width:1000px}.review-controls{justify-content:flex-start}
.technologies{display:block}.technologies>.text-link{margin-top:24px}
.closing-layout{grid-template-columns:1.3fr .7fr}.closing-photo{height:300px}
footer p,footer a{font-size:13px}.newsletter label,.newsletter .fine-print,.footer-bottom,.footer-bottom a{font-size:12px}
.newsletter input{font-size:16px;min-height:48px}
.site-header nav>a:not(.button):hover{text-decoration:underline;text-underline-offset:6px}
@media(prefers-reduced-motion:no-preference){.problem-arrow{transition:transform .18s ease}.problem-entry:hover .problem-arrow{transform:translate(3px,-3px)}}
@media(max-width:1100px){.problems .container{gap:0 40px}.diagnosis-layout,.expert,.case-feature{gap:40px}}
@media(max-width:767px){
 
 
 
 
 
 
 
 .section{padding-block:56px}
 .problems .container{display:block}.problems .section-heading{margin-bottom:24px}.problem-switch{margin-bottom:24px}
 .problem-entry{gap:6px 12px;padding-block:20px}.problem-name{font-size:17px}.problem-description{font-size:13px}
 .diagnosis-layout,.expert,.case-feature,.closing-layout{grid-template-columns:1fr;gap:32px}
 .diagnosis-layout img{height:340px;object-fit:contain;background:var(--surface)}
 .diagnosis-heading{margin-bottom:32px}
 #case-gallery .gallery-card:nth-child(n){flex-basis:88%;height:330px}
 .expert figure{padding:0 15% 0 0}.expert h2{font-size:46px}
 .case-copy dl{margin-block:24px}.category-filter{gap:8px}
 .closing-photo{height:260px}
}

/* Google-sourced reviews form a distinct block; do not relabel Versum quotes. */
.google-reviews{margin-block:40px 56px;padding-bottom:32px;border-bottom:1px solid var(--line)}
.google-reviews h3{font-size:32px;margin-bottom:12px}
.google-review{padding-block:28px;border-bottom:1px solid var(--line)}
.google-review-author{display:flex;align-items:center;gap:12px}
.google-review-author img{width:40px;height:40px;border-radius:50%}
.google-review-meta{font-size:13px;margin:12px 0}
.google-review blockquote{font-size:17px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;max-width:65ch;margin-bottom:12px}
.google-reviews>.fine-print{margin-top:24px}
.google-review-footer{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:16px}
.google-review-footer>img{height:18px;width:auto;object-fit:contain;margin:10px 10px 5px}
#google-provider-attributions{display:flex;gap:16px;flex-wrap:wrap}

.google-profile-fallback{margin-inline-start:24px}
@media(max-width:767px){.google-profile-fallback{display:table;margin:16px 0 0}}
