/* Services: shared site palette, quiet surfaces and a single task selection. */
.servicesPage .sg-section{padding:64px 0;scroll-margin-top:100px}
.servicesPage .sg-heading{margin:12px 0 14px;font-size:clamp(30px,3.4vw,48px);line-height:1.08;letter-spacing:-.045em;font-weight:750;text-wrap:balance}
.servicesPage .sg-intro{max-width:610px;margin:0;color:var(--services-muted);font-size:16px;line-height:1.6}
.sg-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:30px 0 18px}
.sg-choice{position:relative;display:flex;flex-direction:column;gap:15px;min-height:204px;padding:25px;border:1px solid var(--services-line);border-radius:24px;background:var(--services-surface);color:var(--services-text);font:inherit;text-align:left;cursor:pointer;transition:border-color .25s,background .25s,box-shadow .25s,transform .3s cubic-bezier(.22,1,.36,1);-webkit-tap-highlight-color:transparent}
.sg-choice:active{transform:scale(.985)}
.sg-choice-mark{transition:background .25s,color .25s,border-color .25s,transform .3s cubic-bezier(.22,1,.36,1)}
.sg-choice[aria-pressed="true"] .sg-choice-mark{transform:scale(1.06)}
.sg-route-stage{position:relative;border-radius:28px;overflow-anchor:none}
.sg-route-stage.is-switching{overflow:hidden}
.sg-route-stage.is-switching .sg-route{transform-origin:50% 20%}
.sg-entry-pending{opacity:0}
.sg-choice:hover{border-color:rgba(var(--services-accent-rgb),.38);background:var(--services-surface-strong)}
.sg-choice[aria-pressed="true"]{border-color:rgba(var(--services-accent-rgb),.65);background:var(--services-surface-strong);box-shadow:inset 0 0 0 1px rgba(var(--services-accent-rgb),.15)}
.sg-choice-top{display:flex;align-items:center;justify-content:space-between;color:var(--services-muted);font-size:12px;font-weight:600;letter-spacing:.05em}
.sg-choice-mark{display:grid;place-items:center;width:23px;height:23px;border:1px solid var(--services-line);border-radius:50%;font-size:12px}
.sg-choice[aria-pressed="true"] .sg-choice-mark{background:var(--services-text);color:var(--services-bg);border-color:transparent}
.sg-choice-title{max-width:260px;font-size:23px;line-height:1.16;letter-spacing:-.035em;font-weight:700}
.sg-choice-desc{color:var(--services-muted);font-size:14px;line-height:1.5}
.sg-route{display:grid;grid-template-columns:1.06fr 1fr;overflow:hidden;border:1px solid var(--services-line);border-radius:28px;background:var(--services-surface)}
.sg-route[hidden]{display:none}
.sg-route-copy{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(25px,3.5vw,44px)}
.sg-kicker{font-size:11px;font-weight:650;letter-spacing:.09em;text-transform:uppercase;color:var(--services-muted)}
.servicesPage .sg-route h3{font-size:clamp(26px,2.7vw,36px);line-height:1.12;letter-spacing:-.04em;margin:17px 0 14px;font-weight:720}
.sg-route-lead{color:var(--services-muted);font-size:15px;line-height:1.65;margin:0 0 22px}
.sg-facts{display:grid;gap:18px;margin:0 0 28px}
.sg-facts dt{font-size:13px;font-weight:700;margin-bottom:5px}
.sg-facts dd{margin:0;color:var(--services-muted);font-size:14px;line-height:1.55}
.sg-cta{display:inline-flex;align-items:center;justify-content:center;gap:24px;margin-top:auto;padding:13px 19px;border:1px solid var(--services-text);border-radius:999px;background:var(--services-text);color:var(--services-bg);font-size:13px;font-weight:650;text-decoration:none}
.sg-cta:hover{opacity:.85}
.sg-case{display:flex;flex-direction:column;justify-content:flex-end;min-width:0;border-left:1px solid var(--services-line);text-decoration:none;color:var(--services-text);background:var(--services-surface)}
.sg-case-image{overflow:hidden;flex:1;min-height:230px;background:#101116}
.sg-case img{display:block;width:100%;height:100%;min-height:230px;object-fit:cover;aspect-ratio:16/10;transition:transform .5s ease}
.sg-case:hover img{transform:scale(1.025)}
.sg-case-caption{display:grid;gap:8px;padding:22px 26px}
.sg-case-caption strong{font-size:19px;font-weight:700;letter-spacing:-.025em}
.sg-case-caption span{color:var(--services-muted);font-size:13px;line-height:1.5}
.sg-case-caption .sg-case-link{margin-top:6px;color:var(--services-text);font-weight:650}
.sg-catalog-link{display:inline-block;margin-top:22px;font-size:13px;font-weight:600;text-underline-offset:5px}
.sg-section a:focus-visible,.sg-choice:focus-visible{outline:2px solid var(--services-text);outline-offset:5px}
.servicesPage .servicesCatalogSection{padding-top:34px;padding-bottom:64px}
.servicesPage .serviceCatalogDetailInner{display:block;min-height:0;padding:0 24px 30px}
.servicesPage .serviceCatalogFacts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px 42px;transform:none}
.servicesPage .serviceCatalogFactTitle{margin:0 0 8px;font-size:14px;font-weight:650;letter-spacing:-.01em;line-height:1.4;text-transform:none}
.servicesPage .serviceCatalogFactText{font-size:14px;line-height:1.65}
.sg-service-summary{position:relative;max-width:820px;margin:0 0 26px;font-size:16px;line-height:1.6;color:var(--services-muted)}
.serviceCatalogItem:is(:hover,:focus-within,.is-open) .sg-service-summary{color:rgba(255,255,255,.8)}
html.dark .serviceCatalogItem:is(:hover,:focus-within,.is-open) .sg-service-summary{color:rgba(11,12,15,.72)}
.sg-form-context{padding:12px 16px;margin:0 0 22px;border:1px solid var(--services-line);border-radius:14px;font-size:13px;color:var(--services-muted)}
.sg-form-context[hidden]{display:none}
@media(max-width:760px){
 .servicesPage .sg-section{padding:40px 0}
 .sg-choices{gap:10px;margin-top:24px}
 .sg-choice{padding:18px;min-height:220px;border-radius:20px}
 .sg-choice-title{font-size:20px}.sg-choice-desc{font-size:13px}
 .sg-route{grid-template-columns:1fr;border-radius:24px}.sg-case{border-left:0;border-top:1px solid var(--services-line)}
 .sg-case-image{min-height:0}.sg-case img{min-height:0;aspect-ratio:16/9;max-height:320px}
 .servicesPage .serviceCatalogDetailInner{padding:0 12px 26px}
 .servicesPage .serviceCatalogFacts{grid-template-columns:minmax(0,1fr);gap:23px}
 .sg-service-summary{font-size:15px;margin-bottom:25px}
}
@media(max-width:520px){
 .sg-choices{grid-template-columns:1fr}
 .sg-choice{display:grid;grid-template-columns:1fr 30px;gap:7px 15px;min-height:0;padding:20px}
 .sg-choice-top{grid-column:2;grid-row:1/3;align-self:center}.sg-choice-top>span:first-child{display:none}
 .sg-choice-title{grid-column:1;grid-row:1;max-width:none;font-size:21px}.sg-choice-desc{grid-column:1;grid-row:2}
 .sg-cta{width:100%;box-sizing:border-box}
}
@media(prefers-reduced-motion:reduce){.sg-choice,.sg-choice-mark,.sg-case img{transition:none}.sg-choice:active{transform:none}.sg-entry-pending{opacity:1}}
