/* Service controls share one readable scale; illustrations fit their content. */
#services .service-panel { min-width:0; }
#services .service-story { min-width:0; }
#services .service-actions { display:flex; gap:12px; align-items:stretch; margin-top:24px; }
#services #service-page-link,#services .service-scope-link { box-sizing:border-box; display:flex; justify-content:space-between; align-items:center; gap:20px; min-height:52px; height:auto; padding:14px 18px; margin:0; border-radius:8px; font:500 15px/1.35 var(--font-brand); text-transform:none; letter-spacing:0; white-space:normal; }
#services #service-page-link { background:#bddff1; color:#10222f; border:1px solid #bddff1; }
#services .service-scope-link { border:1px solid #8aabc04d; color:#d5e3ec; }
#services #service-page-link>span,#services .service-scope-link>span { flex:none; font-size:23px; line-height:1; margin:0; }
#services .deliverable-label { margin:28px 0 14px; font-size:12px; line-height:1.4; letter-spacing:.08em; text-align:left; }
#services .service-panel[data-layout="backend"] { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-rows:auto auto auto auto; gap:24px 40px; min-height:0; }
#services .service-panel[data-layout="backend"] .service-story { grid-column:1; grid-row:2; text-align:left; align-self:center; padding:0; width:auto; }
#services .service-panel[data-layout="backend"] .service-story h3 { font-size:clamp(32px,3.5vw,54px); line-height:1.03; }
#services .service-panel[data-layout="backend"] .service-fit { display:grid; margin:24px 0 0; }
#services .service-panel[data-layout="backend"] .service-scene { grid-column:2; grid-row:2/5; min-height:0; height:auto; align-self:center; overflow:visible; padding:0; background:none; border:0; transform:none; }
#services .service-panel[data-layout="backend"] .deliverable-label { grid-column:1; grid-row:3; margin:0; text-align:left; }
#services .service-panel[data-layout="backend"] .deliverable-grid { grid-column:1; grid-row:4; display:grid; grid-template-columns:1fr 1fr; margin:0; }
#services .service-panel[data-layout="backend"] .service-actions { grid-column:1/-1; grid-row:5; justify-content:flex-start; margin:0; }
.service-infrastructure .service-hero { grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:clamp(28px,4vw,65px); padding-top:125px; min-height:0; }
.service-infrastructure .service-hero h1 { font-size:clamp(54px,5vw,90px); max-width:100%; }
.service-infrastructure .system-map { max-width:none; width:100%; padding:22px; background:radial-gradient(ellipse at 60% 45%,#41678425,transparent 70%),#0a1119; }
.service-infrastructure .system-map>p { font-size:13px; margin-top:16px; }
.service-infrastructure .system-map-top { font-size:10px; }
.service-infrastructure .service-actions { gap:12px; }
.service-infrastructure .service-actions a,.service-infrastructure .service-contact a { min-height:52px; padding:14px 18px; border-radius:8px; font-size:14px; line-height:1.35; text-transform:none; }
.service-infrastructure .system-choices a { min-height:52px; font-size:14px; }
.service-infrastructure .system-detail { align-items:start; }
.service-infrastructure .system-section-title h2 { scroll-margin-top:110px; }
@media(max-width:1100px) {
 #services .service-panel[data-layout="backend"] { gap:24px; }
 .service-infrastructure .service-hero { grid-template-columns:1fr; }
 .service-infrastructure .service-hero>div { max-width:800px; }
 .service-infrastructure .system-map { max-width:760px; justify-self:center; }
}
@media(max-width:900px) {
 #services .service-panel[data-layout="backend"] { display:flex; flex-direction:column; }
 #services .service-panel[data-layout="backend"] .service-panel-top{order:1} #services .service-panel[data-layout="backend"] .service-story{order:2} #services .service-panel[data-layout="backend"] .service-actions{order:3} #services .service-panel[data-layout="backend"] .service-scene{order:4;width:100%;max-width:700px;margin:8px auto 0} #services .service-panel[data-layout="backend"] .deliverable-label{order:5;margin:0} #services .service-panel[data-layout="backend"] .deliverable-grid{order:6;width:100%}
}
@media(max-width:800px) {
 #services .service-actions { flex-direction:column; width:100%; gap:10px; }
 #services #service-page-link,#services .service-scope-link { width:100%; min-height:52px; padding:14px 16px; font-size:15px; }
 #services .service-story h3 { font-size:clamp(29px,7.7vw,45px); line-height:1.08; }
 #services .service-story>p:not(.service-fit) { font-size:16px; line-height:1.6; }
 #services .service-fit { font-size:15px; line-height:1.5; margin-bottom:0; }
 #services .deliverable-label { margin-top:26px; }
 #services .service-scene { max-width:100%; }
 #services .service-panel[data-layout="backend"] .service-story h3 { font-size:clamp(29px,7.7vw,45px); }
 #services .service-panel[data-layout="backend"] .deliverable-grid { grid-template-columns:1fr; }
 #services .service-tab strong { font-size:18px; line-height:1.2; overflow-wrap:normal; }
 .service-infrastructure .service-hero { padding-top:110px; gap:32px; }
 .service-infrastructure .service-hero h1 { font-size:clamp(48px,12vw,76px); }
 .service-infrastructure .service-actions { display:grid; grid-template-columns:1fr; }
 .service-infrastructure .system-map { padding:14px; border-radius:12px; }
 .service-infrastructure .service-hero .system-map>p { font-size:12px; }
 .service-infrastructure .system-choices a { padding:12px; font-size:13px; }
 .service-infrastructure .system-section-title h2 { font-size:clamp(34px,8.5vw,55px); }
 .service-infrastructure .service-contact a { width:100%; }
}
@media(max-width:360px) { .service-infrastructure .system-map-top>span { max-width:115px;line-height:1.5; }.sw-overline{letter-spacing:.04em} }
