/* Reference-led glass: real backdrop blur, a single rim, and soft optical depth. */
.flux-button{--flux-ink:#071225;--flux-glow:0 0 18px 2px #52b74726,0 0 40px 6px #52b7471a;--flux-surface:linear-gradient(165deg,#ffffff66,#ffffff14 52%,#d6dcd829);--flux-base:#eef4f01f;--flux-edge:#07122530;--flux-top:#ffffffeb;--flux-bottom:#ffffffd9;--flux-shadow:0 16px 28px -15px #07122547,0 34px 48px -26px #07122530;--flux-reflection-opacity:.12;position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:64px;max-width:100%;padding:18px 30px;border:1px solid var(--flux-edge);border-top-color:var(--flux-top);border-bottom-color:var(--flux-bottom);border-radius:999px;background:var(--flux-surface),var(--flux-base);color:var(--flux-ink);box-shadow:var(--flux-shadow);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);font-size:15px;font-weight:600;line-height:1.4;letter-spacing:-.01em;white-space:nowrap;text-decoration:none;touch-action:manipulation;overflow:visible}
.flux-button.flux-button--green{--flux-ink:#f6fff7;--flux-surface:linear-gradient(165deg,#ffffff0f,#ffffff03 48%,#b4e0be0a);--flux-base:#173b2499;--flux-edge:#dcf5df52;--flux-top:#effff0a6;--flux-bottom:#d6f5db38;--flux-shadow:0 10px 24px -12px #00000080;--flux-glow:0 0 18px 2px #52b74744,0 0 42px 8px #52b74726;--flux-reflection-opacity:.2}
.flux-button:before{content:"";position:absolute;inset:1px;z-index:1;border-radius:inherit;background:none;box-shadow:var(--flux-glow);opacity:0;transition:opacity .32s ease-out;pointer-events:none}
.flux-button .flux-button__label{position:relative;z-index:2;display:inline;font:inherit;line-height:1.4;pointer-events:none}
.flux-button__canvas{position:absolute;inset:-26px;z-index:0;width:calc(100% + 52px);height:calc(100% + 52px);pointer-events:none;opacity:var(--flux-reflection-opacity)}
.flux-button.is-3d,.flux-button.is-3d:hover,.flux-button.flux-button--light:hover{background:var(--flux-surface),var(--flux-base);color:var(--flux-ink);box-shadow:var(--flux-shadow);border-color:var(--flux-edge);border-top-color:var(--flux-top);border-bottom-color:var(--flux-bottom)}
.flux-button:focus-visible{outline:3px solid var(--blue);outline-offset:7px}
.flux-button:focus-visible:after{content:"";position:absolute;inset:-7px;z-index:3;border:3px solid var(--blue);border-radius:inherit;pointer-events:none}
.flux-button:focus-visible:before,.flux-button:active:before{opacity:1}
@media(hover:hover){.flux-button:hover:before{opacity:1}}
.header nav a.flux-button{min-height:48px;padding:13px 24px;font-size:12px;color:var(--flux-ink)}
.header nav a.flux-button:hover{background:var(--flux-surface),var(--flux-base);color:var(--flux-ink)!important;border-color:var(--flux-edge);border-top-color:var(--flux-top);border-bottom-color:var(--flux-bottom)}
.header nav .flux-button .flux-button__label{display:inline;font:inherit}
.flux-button--contact{min-height:72px;padding:22px 34px;font-size:17px}
.career-form-link.flux-button{white-space:normal;max-width:100%;text-align:center;font-size:13px;margin-top:20px}

/* Native service accordions share the glass finish without extra canvases. */
.service .expand{--icon-glass-tint:#eef4f01f;background:linear-gradient(165deg,#ffffff66,#ffffff14 52%,#d6dcd829),var(--icon-glass-tint);border:1px solid #07122530;border-top-color:#ffffffeb;border-bottom-color:#ffffffd9;box-shadow:0 6px 12px -7px #07122547,0 13px 21px -14px #07122530;backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);color:#071225;transition:box-shadow .24s ease,transform .2s ease;pointer-events:none}
.service[open] .expand{--icon-glass-tint:#52b74738;background:linear-gradient(165deg,#ffffff73,#ffffff14 52%,#c2e8bc30),var(--icon-glass-tint);border-color:#4b7c4247;border-top-color:#f1ffebeb;border-bottom-color:#e5f7dbe6;color:#173b24}
.service .expand:before,.service .expand:after{top:50%;left:50%;width:14px;height:1.5px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%)}
.service .expand:after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .22s ease,opacity .18s ease}
.service[open] .expand:after{transform:translate(-50%,-50%) rotate(90deg) scaleX(0);opacity:0}
@media(hover:hover){.service summary:hover .expand{box-shadow:0 6px 12px -7px #07122547,0 0 14px 1px #52b7472b,0 0 28px 3px #52b74714}}
.service summary:focus-visible .expand{box-shadow:0 6px 12px -7px #07122547,0 0 14px 1px #52b7472b,0 0 28px 3px #52b74714}
.service summary:active .expand{transform:scale(.95)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.service .expand{--icon-glass-tint:#edf1ee}.service[open] .expand{--icon-glass-tint:#d8ead3}}
@media(prefers-reduced-transparency:reduce){.service .expand{--icon-glass-tint:#edf1ee;backdrop-filter:none;-webkit-backdrop-filter:none}.service[open] .expand{--icon-glass-tint:#d8ead3}}
@media(prefers-reduced-motion:reduce){.service .expand,.service .expand:after{transition:none}}
@media(forced-colors:active){.service .expand,.service[open] .expand,.service summary:hover .expand,.service summary:focus-visible .expand{background:ButtonFace;color:ButtonText;border:1px solid ButtonText;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}}

@media(max-width:900px){.header nav{gap:24px}.header .logo img{width:175px}}
@media(max-width:760px){
  .menu-toggle:not([hidden]){display:flex;align-items:center;gap:12px;color:white;background:transparent;border:1px solid #ffffff70;padding:9px 12px;font-size:12px;font-weight:600}.menu-toggle span{font-size:20px;line-height:1}
  .js .header nav{display:none;position:absolute;top:calc(100% - 10px);left:var(--gutter);right:var(--gutter);background:#102039;padding:22px;box-shadow:0 16px 30px #0003}
  .js .header nav.open{display:flex;align-items:stretch;flex-direction:column;gap:16px}
  .js .header nav>a{padding:12px}
  .header nav a.flux-button{align-self:flex-start;padding:13px 24px}
}
@media(max-width:640px){.header .logo img{width:155px}.flux-button{min-height:60px;padding:17px 26px}.flux-button--contact{min-height:66px;padding:20px 30px;margin-top:30px}.career-form-link.flux-button{padding:17px 24px}}
@media(prefers-reduced-motion:reduce){.flux-button:before{transition:none}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.flux-button{--flux-base:#edf1eef2}.flux-button.flux-button--green{--flux-base:#102b20f2}}
@media(prefers-reduced-transparency:reduce){.flux-button{--flux-base:#edf1ee;backdrop-filter:none;-webkit-backdrop-filter:none}.flux-button.flux-button--green{--flux-base:#102b20}}
@media(forced-colors:active){.flux-button,.flux-button.flux-button--green,.flux-button.is-3d,.flux-button.is-3d:hover,.flux-button.flux-button--light:hover,.header nav a.flux-button:hover{border:1px solid ButtonText;background:ButtonFace;color:ButtonText!important;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.flux-button__canvas,.flux-button:before{display:none}}
