/* IA: native disclosure, shared direction groups and compact sitemap. */
.services-nojs{display:none}
@media(max-width:860px){.services-nojs{display:inline-flex;min-height:44px;align-items:center}html:not(.js) .burger{display:none}}
.services-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:500 14px var(--font);color:var(--mut)}
.services-toggle svg,.service-group-toggle svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;transform:rotate(0deg);transform-origin:center;transform-box:fill-box}
.services-toggle[aria-expanded=true]{color:var(--lime)}
.services-toggle[aria-expanded=true] svg,.service-group-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.services-panel{position:absolute;top:100%;left:var(--pad);right:var(--pad);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:30px;padding:30px;border:1px solid var(--line2);border-radius:0 0 18px 18px;background:var(--bg);box-shadow:0 24px 48px rgba(0,0,0,.35);max-height:calc(100dvh - 100px - var(--choice-h,0px));overflow-y:auto;overscroll-behavior:contain}
.services-panel[hidden],.services-toggle[hidden],.services-fallback[hidden],.service-links[hidden]{display:none}
.nav .services-direction{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;font-size:18px;font-weight:600;line-height:1.3;color:var(--fg);padding-bottom:16px;border-bottom:1px solid var(--line2);width:100%;min-height:78px}
.services-price{color:var(--lime);font-size:13px;font-weight:500;font-variant-numeric:tabular-nums}
.service-links{list-style:none;margin:14px 0 0;padding:0}
.nav .service-links a{font-size:14px;line-height:1.4;font-weight:400;padding:9px 0;min-height:44px;letter-spacing:normal}
.service-group-toggle{display:none}
.top.services-open{transform:none;background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none}
.services-toggle:focus-visible,.service-group-toggle:focus-visible{outline:2px solid var(--lime);outline-offset:4px;border-radius:4px}
.solution-groups{display:grid;gap:24px}.solution-group h3{font-size:24px;font-weight:500;letter-spacing:-.025em}.solution-group h3 a:hover{color:var(--lime)}.solution-group .sol-grid{margin-top:20px}
@media(min-width:1101px){.solution-group{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:start}.solution-group h3{font-size:20px;padding-top:16px}.solution-group .sol-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;gap:12px}.solution-group .sol-i{min-height:80px;padding:14px 18px;gap:6px}.solutions .sec-head{margin-bottom:32px}.solutions .sol-i::after{right:16px;top:16px}}
.registry-all{margin-top:24px}
.article-group{margin-top:56px}.article-group>h2{font-size:clamp(27px,3vw,38px);font-weight:500;letter-spacing:-.035em;margin-bottom:20px}
.projects-head{padding-top:30px}.projects-head h1{margin:32px 0 20px}.projects-head .sec-lead{max-width:64ch}.projects-head .contextual-links{display:flex;gap:16px 32px;flex-wrap:wrap;margin-top:24px}.projects-page .registry{padding-top:56px}.projects-writeups{padding-bottom:80px}.projects-head+.registry .sec-head{margin-bottom:28px}
.foot{display:grid;grid-template-columns:minmax(180px,.75fr) minmax(0,2fr);align-items:start;gap:36px 60px;padding-top:44px}
.foot-name{padding-top:10px}.foot-map{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:32px}.foot-map h2{font:600 14px var(--font);color:var(--fg);margin:0 0 10px;min-height:44px;display:flex;align-items:center}.foot-map ul{list-style:none;padding:0;margin:0}.foot-pages,.foot-external{display:flex;flex-direction:column;align-items:flex-start}.foot-pages{font-weight:500;color:var(--fg)}.foot-map a{line-height:1.4;padding-block:8px}.foot-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:16px}
@media(max-width:1100px) and (min-width:861px){.services-panel{gap:18px;padding:24px}.nav .services-direction{font-size:16px}.nav .service-links a{font-size:13px}.foot{grid-template-columns:1fr}.foot-name{padding:0}}
@media(max-width:860px){
 .nav.open{justify-content:flex-start;padding-top:76px;padding-bottom:32px;overflow-y:auto;overscroll-behavior:contain;gap:8px}
 .nav>.services-menu{width:100%}.services-toggle{font-size:30px;font-weight:600;letter-spacing:-.04em;color:var(--fg);width:100%;justify-content:space-between;min-height:52px}
 .services-panel{position:static;grid-template-columns:minmax(0,1fr);gap:0;margin:10px 0 12px;padding:0 0 8px 16px;max-height:none;overflow:visible;border:0;border-left:1px solid var(--line2);border-radius:0;box-shadow:none;background:none}
 .services-heading{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line)}
 .nav .services-direction{font-size:19px;min-height:76px;border:0;padding:12px 0;letter-spacing:normal;flex:1}.services-price{font-size:13px}
 .service-group-toggle{display:flex;align-items:center;justify-content:center;width:48px;min-height:48px;flex:none;color:var(--mut)}
 .service-links{margin:4px 0 12px}.nav .service-links a{font-size:16px;font-weight:400;letter-spacing:normal;padding:12px 0;min-height:48px}
 .foot{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:30px}.foot-map{grid-template-columns:1fr 1fr;gap:24px}.foot-map>section{grid-column:1/-1}.foot-map ul{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.foot-map h2{margin-bottom:0}.foot-map a{font-size:14px}.foot-bottom{font-size:12px;align-items:center}.foot-bottom button{text-align:left}
 .solution-group{margin-top:36px}.solution-group h3{font-size:22px}.projects-head{padding-top:16px}.projects-head h1{margin-top:28px}.projects-page .registry{padding-top:40px}.article-group{margin-top:40px}
}
