/* Four visible areas, brief service cards and progressive technical detail. */
.service-explorer{--sx-accent:#28565d;--sx-tint:#e6eeeb;--sx-switch-height:112px}
.sx-tone-0{--sx-accent:#28565d;--sx-tint:#e6eeeb}
.sx-tone-1{--sx-accent:#85611c;--sx-tint:#f1ead9}
.sx-tone-2{--sx-accent:#4d6652;--sx-tint:#e8ece3}
.sx-tone-3{--sx-accent:#4d596d;--sx-tint:#e8ebf0}
.service-explorer [hidden]{display:none!important}
.sx-head{align-items:end;margin-bottom:36px}
.sx-search-wrap{width:100%;max-width:340px}
.sx-search-wrap label{display:block;font-size:.8rem;font-weight:500;margin-bottom:10px;color:var(--t2)}
.sx-search{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line-2);padding:10px 0}
.sx-search>.ic{width:19px;height:19px;color:var(--t2);flex-shrink:0}
.sx-search input{min-width:0;width:100%;border:0;background:transparent;font:inherit;font-size:.9rem;color:var(--ink);outline:0}
.sx-search:focus-within{border-color:var(--sx-accent);box-shadow:0 1px var(--sx-accent)}
.sx-search input::-webkit-search-cancel-button{display:none}
.sx-search button{width:32px;height:32px;display:grid;place-items:center;border:0;background:transparent;color:var(--ink);cursor:pointer;flex-shrink:0}
.sx-search button .ic{width:18px;height:18px}
.sx-area-switcher{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px 0;background:var(--paper);z-index:12}
.sx-ready .sx-area-switcher{position:sticky;top:var(--hdr);border-bottom:1px solid var(--line)}
.sx-node{display:flex;align-items:flex-start;gap:12px;position:relative;padding:19px 14px;border:1px solid var(--line-2);border-radius:3px;color:var(--ink);text-decoration:none;min-width:0;transition:background .2s,border-color .2s}
.sx-node:hover{background:var(--sx-tint);border-color:var(--sx-accent)}
.sx-node.is-active{background:var(--sx-tint);border-color:var(--sx-accent);box-shadow:inset 0 -3px var(--sx-accent)}
.sx-node-icon{color:var(--sx-accent);flex-shrink:0;padding-top:2px}
.sx-node-icon .ic{width:24px;height:24px}
.sx-node-copy{display:block;min-width:0}
.sx-node-copy strong{display:block;font-size:.91rem;font-weight:600;line-height:1.3;padding-right:10px}
.sx-node-copy>span{display:block;font-size:.72rem;line-height:1.4;margin-top:7px;color:var(--t2)}
.sx-node-marker{position:absolute;right:8px;top:7px;opacity:0;color:var(--sx-accent)}
.sx-node-marker .ic{width:13px;height:13px}
.sx-node.is-active .sx-node-marker{opacity:1}
.sx-panel-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;padding:32px 0 23px}
.sx-kicker{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sx-accent);font-weight:600;margin-bottom:8px}
.sx-panel-heading h3{font-size:clamp(1.3rem,2vw,1.65rem);font-weight:500;line-height:1.2;letter-spacing:-.025em}
.sx-panel-heading>p{max-width:32ch;font-size:.83rem;line-height:1.55;color:var(--t2)}
.sx-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sx-service-card{display:flex;flex-direction:column;text-align:left;padding:21px 22px;border:1px solid var(--line);border-radius:3px;background:transparent;font:inherit;color:var(--ink);cursor:pointer;min-width:0;transition:border-color .2s,background .2s,transform .2s}
.sx-card-top{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;color:var(--sx-accent);font-size:.65rem;letter-spacing:.06em}
.sx-card-top .ic{width:17px;height:17px;transition:transform .2s}
.sx-service-card>strong{display:block;font-weight:500;font-size:1rem;line-height:1.3;margin:15px 0 8px}
.sx-card-teaser{font-size:.81rem;line-height:1.5;color:var(--t2)}
.sx-service-card:hover,.sx-service-card[aria-expanded="true"]{background:var(--sx-tint);border-color:var(--sx-accent)}
.sx-service-card:hover .sx-card-top .ic{transform:translateX(3px)}
.sx-service-card[aria-expanded="true"] .sx-card-top .ic{transform:rotate(90deg)}
.sx-node:focus-visible,.sx-service-card:focus-visible,.sx-back:focus-visible,.sx-result:focus-visible,.service-explorer summary:focus-visible{outline:2px solid var(--sx-accent);outline-offset:4px}
.sx-area,.sx-service,.sx-service-grid,.sx-panel-heading{scroll-margin-top:var(--sx-switch-height)}
.sx-detail-title{outline:none}
.sx-detail-title:focus-visible{outline:2px solid var(--sx-accent);outline-offset:6px}
.sx-detail-body{background:var(--sx-tint);padding:32px;margin-top:20px;border-radius:4px;border-top:3px solid var(--sx-accent)}
.sx-ready .sx-service[open] .sx-detail-body{animation:sx-reveal .22s ease both}
.sx-detail-heading{display:flex;justify-content:space-between;align-items:start;gap:30px}
.sx-detail-code{font-size:.67rem;letter-spacing:.08em;color:var(--sx-accent)}
.sx-detail-title{font-size:clamp(1.3rem,2.4vw,1.9rem);font-weight:500;line-height:1.2;letter-spacing:-.025em;margin-top:12px}
.sx-detail-teaser{font-size:.9rem;color:var(--t2);line-height:1.6;max-width:70ch;margin-top:10px}
.sx-back{display:flex;gap:7px;align-items:center;flex-shrink:0;border:0;border-bottom:1px solid transparent;background:transparent;color:var(--sx-accent);font:inherit;font-size:.75rem;padding:4px 0;cursor:pointer}
.sx-back>.ic{transform:rotate(180deg);width:15px;height:15px}
.sx-back:hover{border-bottom-color:currentColor}
.sx-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:28px 0 30px;list-style:none}
.sx-highlights>li{display:flex;align-items:flex-start;gap:12px;min-width:0;border-top:1px solid color-mix(in srgb,var(--sx-accent) 28%,transparent);padding-top:18px}
.sx-highlight-number{display:grid;place-items:center;width:27px;height:27px;flex-shrink:0;border-radius:50%;background:var(--sx-accent);color:#fff;font-size:.65rem}
.sx-highlights strong{display:block;font-size:.91rem;font-weight:600;line-height:1.3;margin:3px 0 8px}
.sx-highlights p{font-size:.83rem;line-height:1.5;color:var(--t2)}
.sx-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.sx-actions>span{font-size:.75rem;color:var(--t2)}
.sx-contact.btn{background:var(--sx-accent);border-color:var(--sx-accent);color:#fff;font-size:.84rem}
.sx-contact.btn:hover{filter:brightness(.92)}
.sx-full{margin-top:26px;border-top:1px solid color-mix(in srgb,var(--sx-accent) 28%,transparent)}
.sx-full>summary,.sx-technical>summary,.sx-more>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font-size:.84rem;font-weight:500;padding:18px 0}
.service-explorer summary::-webkit-details-marker{display:none}
.sx-full>summary .ic,.sx-technical>summary .ic,.sx-more>summary .ic{width:16px;height:16px;flex-shrink:0;transition:transform .2s}
.sx-full[open]>summary .ic,.sx-technical[open]>summary .ic,.sx-more[open]>summary .ic{transform:rotate(45deg)}
.sx-full-body{max-width:86ch;font-size:.9rem;line-height:1.7;padding:5px 0 16px}
.sx-full-body h5{font-size:1rem;font-weight:600;margin-bottom:8px}
.sx-full-body>p{color:var(--t2)}
.sx-full-body ul{list-style:disc;padding-left:20px;margin-top:16px}
.sx-full-body li+li{margin-top:8px}
.sx-technical{margin-top:24px;border-top:1px solid var(--line)}
.sx-technical>summary{color:var(--t2);font-size:.79rem}
.sx-context{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;padding:8px 0}
.sx-more{min-width:0;border-top:1px solid var(--line)}
.sx-more p,.sx-more dd{font-size:.88rem;line-height:1.65;color:var(--t2)}
.sx-more h5{font-size:.91rem;font-weight:600;margin-bottom:5px}
.sx-process{list-style:none;padding:0 0 20px}
.sx-process li{display:flex;gap:16px;margin:16px 0}
.sx-process li>span{font-size:.72rem;color:var(--sx-accent);padding-top:3px}
.sx-boundaries>div,.sx-glossary>div{margin:12px 0 22px}
.sx-glossary dl{margin-top:12px}
.sx-glossary dt{font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;margin:10px 0 3px}
.sx-norms{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:22px}
.sx-norms span{font-size:.7rem;border:1px solid var(--line);padding:4px 7px}
.sx-faqs>details{border-top:1px solid var(--line)}
.sx-faqs summary{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:.86rem;padding:16px 0;cursor:pointer;list-style:none}
.sx-faqs summary .ic{width:16px;height:16px;flex-shrink:0}
.sx-faqs p{padding-bottom:18px}
.sx-results{padding:28px 0}
.sx-results-count{font-size:.8rem;color:var(--t2);margin-bottom:14px}
.sx-result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sx-result{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--line);background:transparent;font:inherit;text-align:left;cursor:pointer;color:var(--ink)}
.sx-result:hover{background:var(--sand)}
.sx-result small{display:block;font-size:.68rem;color:var(--t2);margin-bottom:6px}
.sx-result strong{display:block;font-weight:500;font-size:.95rem}
.sx-no-results{padding:18px 0;font-size:.9rem;line-height:1.6;color:var(--t2)}
.sx-no-results .tlink{margin-top:18px}
.sx-area-fallback,.sx-service-fallback{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);cursor:pointer;list-style:none}
.sx-enhanced-only{display:none}
.sx-ready .sx-enhanced-only{display:flex}
.sx-ready .sx-search-wrap{display:block}
.sx-ready .sx-service-grid{display:grid}
.sx-ready .sx-area-fallback,.sx-ready .sx-service-fallback{display:none}
@keyframes sx-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:1050px){
 .sx-node{gap:8px;padding:17px 12px}.sx-node-icon .ic{width:20px;height:20px}
 .sx-node-copy strong{font-size:.82rem}.sx-node-copy>span{font-size:.69rem}
 .sx-detail-heading{flex-direction:column;gap:14px}
}
@media(max-width:760px){
 .sx-head{display:block;margin-bottom:22px}.sx-search-wrap{margin-top:26px;max-width:none}
 .sx-area-switcher{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:10px 0}
 .sx-node{padding:14px 10px;min-height:72px;align-items:center}
 .sx-node-copy strong{font-size:.76rem;line-height:1.35;padding-right:0}
 .sx-node-copy>span{display:none}.sx-node-icon .ic{width:20px;height:20px}
 .sx-node-marker{right:5px;top:3px}
 .sx-panel-heading{padding:25px 0 18px;display:block}.sx-panel-heading>p{margin-top:9px;max-width:none;font-size:.79rem}
 .sx-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .sx-service-card{padding:16px}.sx-service-card>strong{font-size:.9rem;margin:11px 0 7px}
 .sx-card-teaser{font-size:.76rem}.sx-card-top{font-size:.61rem}
 .sx-detail-body{padding:23px 21px}.sx-detail-title{font-size:1.4rem}
 .sx-highlights{grid-template-columns:1fr;gap:17px;margin:24px 0}
 .sx-highlights>li{padding-top:16px}.sx-highlights strong{margin-bottom:5px}
 .sx-actions{gap:12px}.sx-contact.btn{width:100%;justify-content:space-between;padding:15px;font-size:.78rem}
 .sx-context,.sx-result-list{grid-template-columns:1fr}
}
@media(max-width:440px){
 .sx-service-grid{grid-template-columns:1fr}
 .sx-service-card{padding:15px 17px}.sx-service-card>strong{margin:7px 0 5px;font-size:.98rem}
 .sx-card-teaser{font-size:.79rem}
 .sx-node{gap:8px}.sx-node-icon .ic{width:19px;height:19px}
}
@media(prefers-reduced-motion:reduce){
 .service-explorer *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}


