/* sbs-fonts */
/* Self-hosted Google Fonts (SIL OFL): Archivo, IBM Plex Sans, IBM Plex Mono. Built by staging/tools/build-fonts.js */
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 300 900; font-stretch: 100% 125%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/Archivo-latin-ext-0.woff2") format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'Archivo'; font-style: normal; font-weight: 300 900; font-stretch: 100% 125%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/Archivo-latin-1.woff2") format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 400; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexMono-latin-ext-2.woff2") format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 400; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexMono-latin-3.woff2") format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 500; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexMono-latin-ext-4.woff2") format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 500; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexMono-latin-5.woff2") format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 600; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexMono-latin-ext-6.woff2") format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 600; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexMono-latin-7.woff2") format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 400; font-stretch: 100%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexSans-latin-ext-8.woff2") format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 400; font-stretch: 100%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexSans-latin-9.woff2") format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 500; font-stretch: 100%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexSans-latin-ext-8.woff2") format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 500; font-stretch: 100%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexSans-latin-9.woff2") format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 600; font-stretch: 100%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexSans-latin-ext-8.woff2") format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 600; font-stretch: 100%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexSans-latin-9.woff2") format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 700; font-stretch: 100%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexSans-latin-ext-8.woff2") format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 700; font-stretch: 100%; font-display: swap; src: url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/gf/IBMPlexSans-latin-9.woff2") format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* sbs-fontawesome */
/*!
 * Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2023 Fonticons, Inc.
 */
/* SIGMA BROOKS subset: 173 icons, built by staging/tools/build-icons.js */
.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-classic,.fa-sharp,.fas,.fa-solid,.far,.fa-regular,.fab,.fa-brands{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fas,.fa-classic,.fa-solid,.far,.fa-regular{font-family:'Font Awesome 6 Free'}.fab,.fa-brands{font-family:'Font Awesome 6 Brands'}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:0.625em;line-height:0.1em;vertical-align:0.225em}.fa-xs{font-size:0.75em;line-height:0.08333em;vertical-align:0.125em}.fa-sm{font-size:0.875em;line-height:0.07143em;vertical-align:0.05357em}.fa-lg{font-size:1.25em;line-height:0.05em;vertical-align:-0.075em}.fa-xl{font-size:1.5em;line-height:0.04167em;vertical-align:-0.125em}.fa-2xl{font-size:2em;line-height:0.03125em;vertical-align:-0.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul > li{position:relative}.fa-li{left:calc(var(--fa-li-width,2em) * -1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,0.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,0.08em);padding:var(--fa-border-padding,0.2em 0.25em 0.15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,0.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,0.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.28,0.84,0.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.28,0.84,0.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.4,0,0.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.4,0,0.6,1))}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.4,0,0.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.4,0,0.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,0.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,0.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,0.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-0.5em));transform:scale(var(--fa-bounce-jump-scale-x,0.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-0.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,0.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,0.95)) translateY(0)}57%{-webkit-transform:scale(1,1) translateY(var(--fa-bounce-rebound,-0.125em));transform:scale(1,1) translateY(var(--fa-bounce-rebound,-0.125em))}64%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}100%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,0.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,0.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,0.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-0.5em));transform:scale(var(--fa-bounce-jump-scale-x,0.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-0.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,0.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,0.95)) translateY(0)}57%{-webkit-transform:scale(1,1) translateY(var(--fa-bounce-rebound,-0.125em));transform:scale(1,1) translateY(var(--fa-bounce-rebound,-0.125em))}64%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}100%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,0.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,0.4)}}@-webkit-keyframes fa-beat-fade{0%,100%{opacity:var(--fa-beat-fade-opacity,0.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,100%{opacity:var(--fa-beat-fade-opacity,0.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,none));transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-message::before{content:"\f27a"}.fa-file-lines::before{content:"\f15c"}.fa-wave-square::before{content:"\f83e"}.fa-flag-checkered::before{content:"\f11e"}.fa-comments::before{content:"\f086"}.fa-clipboard-list::before{content:"\f46d"}.fa-truck-ramp-box::before{content:"\f4de"}.fa-user-check::before{content:"\f4fc"}.fa-box-archive::before{content:"\f187"}.fa-earth-africa::before{content:"\f57c"}.fa-cloud::before{content:"\f0c2"}.fa-pen-ruler::before{content:"\f5ae"}.fa-people-arrows::before{content:"\e068"}.fa-table::before{content:"\f0ce"}.fa-compass::before{content:"\f14e"}.fa-laptop-code::before{content:"\f5fc"}.fa-people-group::before{content:"\e533"}.fa-lightbulb::before{content:"\f0eb"}.fa-cloud-showers-heavy::before{content:"\f740"}.fa-sitemap::before{content:"\f0e8"}.fa-cloud-sun-rain::before{content:"\f743"}.fa-lock::before{content:"\f023"}.fa-gas-pump::before{content:"\f52f"}.fa-share-nodes::before{content:"\f1e0"}.fa-hourglass-half::before{content:"\f252"}.fa-users::before{content:"\f0c0"}.fa-plug::before{content:"\f1e6"}.fa-stopwatch::before{content:"\f2f2"}.fa-pills::before{content:"\f484"}.fa-bookmark::before{content:"\f02e"}.fa-bullseye::before{content:"\f140"}.fa-chart-simple::before{content:"\e473"}.fa-vial::before{content:"\f492"}.fa-gauge::before{content:"\f624"}.fa-wand-magic-sparkles::before{content:"\e2ca"}.fa-user::before{content:"\f007"}.fa-globe::before{content:"\f0ac"}.fa-star::before{content:"\f005"}.fa-shuffle::before{content:"\f074"}.fa-server::before{content:"\f233"}.fa-heart-pulse::before{content:"\f21e"}.fa-microchip::before{content:"\f2db"}.fa-user-group::before{content:"\f500"}.fa-headset::before{content:"\f590"}.fa-rotate-left::before{content:"\f2ea"}.fa-circle-check::before{content:"\f058"}.fa-compass-drafting::before{content:"\f568"}.fa-user-tie::before{content:"\f508"}.fa-certificate::before{content:"\f0a3"}.fa-box-open::before{content:"\f49e"}.fa-address-card::before{content:"\f2bb"}.fa-seedling::before{content:"\f4d8"}.fa-envelope-open::before{content:"\f2b6"}.fa-arrows-rotate::before{content:"\f021"}.fa-shield-halved::before{content:"\f3ed"}.fa-virus::before{content:"\e074"}.fa-layer-group::before{content:"\f5fd"}.fa-newspaper::before{content:"\f1ea"}.fa-language::before{content:"\f1ab"}.fa-hand-holding-heart::before{content:"\f4be"}.fa-magnifying-glass-chart::before{content:"\e522"}.fa-arrow-up-right-from-square::before{content:"\f08e"}.fa-leaf::before{content:"\f06c"}.fa-chart-pie::before{content:"\f200"}.fa-chart-line::before{content:"\f201"}.fa-arrow-right::before{content:"\f061"}.fa-screwdriver-wrench::before{content:"\f7d9"}.fa-heart::before{content:"\f004"}.fa-money-bill-transfer::before{content:"\e528"}.fa-circle::before{content:"\f111"}.fa-clipboard-check::before{content:"\f46c"}.fa-file-image::before{content:"\f1c5"}.fa-circle-question::before{content:"\f059"}.fa-code-branch::before{content:"\f126"}.fa-route::before{content:"\f4d7"}.fa-tags::before{content:"\f02c"}.fa-eye::before{content:"\f06e"}.fa-comment-dots::before{content:"\f4ad"}.fa-phone::before{content:"\f095"}.fa-user-gear::before{content:"\f4fe"}.fa-cubes::before{content:"\f1b3"}.fa-arrow-left::before{content:"\f060"}.fa-ruler::before{content:"\f545"}.fa-users-viewfinder::before{content:"\e595"}.fa-table-cells::before{content:"\f00a"}.fa-user-secret::before{content:"\f21b"}.fa-phone-volume::before{content:"\f2a0"}.fa-satellite::before{content:"\f7bf"}.fa-envelope::before{content:"\f0e0"}.fa-circle-nodes::before{content:"\e4e2"}.fa-user-doctor::before{content:"\f0f0"}.fa-camera::before{content:"\f030"}.fa-calendar-check::before{content:"\f274"}.fa-truck::before{content:"\f0d1"}.fa-minus::before{content:"\f068"}.fa-gear::before{content:"\f013"}.fa-cart-shopping::before{content:"\f07a"}.fa-clock::before{content:"\f017"}.fa-mobile-screen::before{content:"\f3cf"}.fa-coins::before{content:"\f51e"}.fa-network-wired::before{content:"\f6ff"}.fa-flask::before{content:"\f0c3"}.fa-calculator::before{content:"\f1ec"}.fa-file-circle-check::before{content:"\e5a0"}.fa-house::before{content:"\f015"}.fa-file-medical::before{content:"\f477"}.fa-bolt::before{content:"\f0e7"}.fa-industry::before{content:"\f275"}.fa-thumbs-down::before{content:"\f165"}.fa-bug::before{content:"\f188"}.fa-bell::before{content:"\f0f3"}.fa-location-dot::before{content:"\f3c5"}.fa-arrow-down::before{content:"\f063"}.fa-gauge-high::before{content:"\f625"}.fa-envelope-open-text::before{content:"\f658"}.fa-hospital::before{content:"\f0f8"}.fa-boxes-stacked::before{content:"\f468"}.fa-link::before{content:"\f0c1"}.fa-magnifying-glass::before{content:"\f002"}.fa-chevron-down::before{content:"\f078"}.fa-ranking-star::before{content:"\e561"}.fa-arrow-up::before{content:"\f062"}.fa-list-check::before{content:"\f0ae"}.fa-user-shield::before{content:"\f505"}.fa-truck-fast::before{content:"\f48b"}.fa-circle-half-stroke::before{content:"\f042"}.fa-diagram-project::before{content:"\f542"}.fa-grip::before{content:"\f58d"}.fa-plus::before{content:"\2b"}.fa-xmark::before{content:"\f00d"}.fa-chalkboard-user::before{content:"\f51c"}.fa-quote-left::before{content:"\f10d"}.fa-map::before{content:"\f279"}.fa-rocket::before{content:"\f135"}.fa-chevron-left::before{content:"\f053"}.fa-chevron-right::before{content:"\f054"}.fa-percent::before{content:"\25"}.fa-trophy::before{content:"\f091"}.fa-rotate::before{content:"\f2f1"}.fa-robot::before{content:"\f544"}.fa-gears::before{content:"\f085"}.fa-building::before{content:"\f1ad"}.fa-file-export::before{content:"\f56e"}.fa-shield-heart::before{content:"\e574"}.fa-chart-column::before{content:"\e0e3"}.fa-infinity::before{content:"\f534"}.fa-calendar::before{content:"\f133"}.fa-scale-balanced::before{content:"\f24e"}.fa-check::before{content:"\f00c"}.fa-briefcase::before{content:"\f0b1"}.fa-user-tag::before{content:"\f507"}.fa-book-open::before{content:"\f518"}.fa-triangle-exclamation::before{content:"\f071"}.fa-database::before{content:"\f1c0"}.fa-paper-plane::before{content:"\f1d8"}.fa-person-walking-arrow-right::before{content:"\e552"}.fa-brain::before{content:"\f5dc"}.fa-thumbs-up::before{content:"\f164"}.fa-file-invoice::before{content:"\f570"}.fa-magnifying-glass-dollar::before{content:"\f688"}.fa-building-columns::before{content:"\f19c"}.fa-video::before{content:"\f03d"}.fa-graduation-cap::before{content:"\f19d"}.sr-only,.fa-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only-focusable:not(:focus),.fa-sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:root,:host{--fa-style-family-brands:'Font Awesome 6 Brands';--fa-font-brands:normal 400 1em/1 'Font Awesome 6 Brands'}@font-face{font-family:'Font Awesome 6 Brands';font-style:normal;font-weight:400;font-display:swap;src:url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/fa-brands-400.woff2") format("woff2")}.fab,.fa-brands{font-weight:400}.fa-aws:before{content:"\f375"}.fa-linkedin-in:before{content:"\f0e1"}.fa-r-project:before{content:"\f4f7"}.fa-facebook-f:before{content:"\f39e"}.fa-instagram:before{content:"\f16d"}.fa-whatsapp:before{content:"\f232"}.fa-docker:before{content:"\f395"}.fa-python:before{content:"\f3e2"}.fa-github:before{content:"\f09b"}.fa-youtube:before{content:"\f167"}:root,:host{--fa-style-family-classic:'Font Awesome 6 Free';--fa-font-regular:normal 400 1em/1 'Font Awesome 6 Free'}@font-face{font-family:'Font Awesome 6 Free';font-style:normal;font-weight:400;font-display:swap;src:url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/fa-regular-400.woff2") format("woff2")}.far,.fa-regular{font-weight:400}:root,:host{--fa-style-family-classic:'Font Awesome 6 Free';--fa-font-solid:normal 900 1em/1 'Font Awesome 6 Free'}@font-face{font-family:'Font Awesome 6 Free';font-style:normal;font-weight:900;font-display:swap;src:url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/fa-solid-900.woff2") format("woff2")}.fas,.fa-solid{font-weight:900}@font-face{font-family:'Font Awesome 5 Brands';font-display:swap;font-weight:400;src:url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/fa-brands-400.woff2") format("woff2")}@font-face{font-family:'Font Awesome 5 Free';font-display:swap;font-weight:900;src:url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/fa-solid-900.woff2") format("woff2")}@font-face{font-family:'Font Awesome 5 Free';font-display:swap;font-weight:400;src:url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/fa-regular-400.woff2") format("woff2")}@font-face{font-family:'FontAwesome';font-display:swap;src:url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/fa-solid-900.woff2") format("woff2")}@font-face{font-family:'FontAwesome';font-display:swap;src:url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/fa-brands-400.woff2") format("woff2")}@font-face{font-family:'FontAwesome';font-display:swap;src:url("https://sigmabrooks.com/wp-content/plugins/sigma-brooks-site/assets/fonts/fa-regular-400.woff2") format("woff2");unicode-range:U+F003,U+F006,U+F014,U+F016-F017,U+F01A-F01B,U+F01D,U+F022,U+F03E,U+F044,U+F046,U+F05C-F05D,U+F06E,U+F070,U+F087-F088,U+F08A,U+F094,U+F096-F097,U+F09D,U+F0A0,U+F0A2,U+F0A4-F0A7,U+F0C5,U+F0C7,U+F0E5-F0E6,U+F0EB,U+F0F6-F0F8,U+F10C,U+F114-F115,U+F118-F11A,U+F11C-F11D,U+F133,U+F147,U+F14E,U+F150-F152,U+F185-F186,U+F18E,U+F190-F192,U+F196,U+F1C1-F1C9,U+F1D9,U+F1DB,U+F1E3,U+F1EA,U+F1F7,U+F1F9,U+F20A,U+F247-F248,U+F24A,U+F24D,U+F255-F25B,U+F25D,U+F271-F274,U+F278,U+F27B,U+F28C,U+F28E,U+F29C,U+F2B5,U+F2B7,U+F2BA,U+F2BC,U+F2BE,U+F2C0-F2C1,U+F2C3,U+F2D0,U+F2D2,U+F2D4,U+F2DC}

/* sbs-sigma */
/* ==========================================================================
   SIGMA BROOKS — staging stylesheet
   Every token below maps to an Elementor Site Setting (see ELEMENTOR-MIGRATION.md).
   All classes are prefixed `sb-` so this file can be pasted into
   Elementor > Site Settings > Custom CSS without clashing with the theme.
   ========================================================================== */

:root {
  /* Global Colors (Elementor > Site Settings > Global Colors) */
  --sb-navy: #071C33;
  --sb-navy-deep: #04121F;
  --sb-blue: #0B73D9;
  --sb-orange: #FF8A00;
  --sb-mist: #E6ECF2;
  --sb-charcoal: #1F2937;
  --sb-bg: #F6F8FB;
  --sb-white: #FFFFFF;
  --sb-line: #E2E8F0;
  --sb-muted: #4B5563;
  --sb-muted-light: #9CA3AF;
  --sb-whatsapp: #25D366;

  /* Global Fonts (Elementor > Site Settings > Global Fonts) */
  --sb-font-heading: "Archivo", "Arial", sans-serif; /* Google "Archivo"; width axis 125% = expanded */
  --sb-font-body: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --sb-font-mono: "IBM Plex Mono", ui-monospace, Consolas, monospace;

  /* Layout (Elementor > Site Settings > Layout: content width 1440, padding 48/24) */
  --sb-content: 1440px;
  --sb-gutter: 48px;
  --sb-radius: 12px;
  --sb-radius-lg: 16px;
  --sb-glow: 0 0 80px -20px rgba(11, 115, 217, .35);
}

@media (max-width: 767px) {
  :root { --sb-gutter: 16px; }
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body {
  margin: 0;
  background: var(--sb-bg);
  color: var(--sb-charcoal);
  font: 400 16px/1.6 var(--sb-font-body);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img, svg { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; background: none; border: 0; }
h1, h2, h3, h4, p { margin: 0; }
ul { margin: 0; padding: 0; list-style: none; }
:focus-visible { outline: 3px solid var(--sb-orange); outline-offset: 2px; border-radius: 6px; }
.sb-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- Typography (Elementor global typography presets) ---------- */
.sb-h1 { font: 800 clamp(2.5rem, 5vw, 4.25rem)/1.05 var(--sb-font-heading); letter-spacing: -.02em; }
.sb-h2 { font: 700 clamp(2rem, 4vw, 3rem)/1.1 var(--sb-font-heading); letter-spacing: -.01em; color: var(--sb-navy); }
.sb-h2--sm { font-size: clamp(1.75rem, 3vw, 2.25rem); }
.sb-h3 { font: 700 1.25rem/1.25 var(--sb-font-heading); color: var(--sb-navy); }
.sb-h3--lg { font-size: 1.5rem; }
.sb-lede { font-size: 1.125rem; color: var(--sb-muted); max-width: 42rem; }
.sb-eyebrow { font: 600 .75rem/1 var(--sb-font-mono); letter-spacing: .15em; text-transform: uppercase; color: var(--sb-blue); }
.sb-mono { font-family: var(--sb-font-mono); letter-spacing: .05em; }
.sb-accent { color: var(--sb-orange); }
.sb-on-dark .sb-h2, .sb-on-dark .sb-h3 { color: var(--sb-white); }
.sb-on-dark .sb-lede { color: #D1D5DB; }

/* ---------- Layout primitives (= Elementor Section / Container) ---------- */
.sb-section { padding-block: 80px; position: relative; }
.sb-section--mist { background: var(--sb-mist); }
.sb-section--white { background: var(--sb-white); }
.sb-section--navy { background: var(--sb-navy); color: var(--sb-white); overflow: hidden; }
.sb-container { max-width: var(--sb-content); margin-inline: auto; padding-inline: var(--sb-gutter); position: relative; }
.sb-head { margin-bottom: 48px; display: grid; gap: 16px; }
.sb-head--center { text-align: center; justify-items: center; }
.sb-head--split { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 24px; }
.sb-grid { display: grid; gap: 24px; }
.sb-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; }
.sb-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sb-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sb-align-center { align-items: center; }
.sb-align-start { align-items: start; }
@media (max-width: 1024px) {
  .sb-grid--2 { grid-template-columns: 1fr; }
  .sb-grid--3, .sb-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .sb-section { padding-block: 56px; }
  .sb-grid--3, .sb-grid--4 { grid-template-columns: 1fr; }
}

.sb-glow { position: absolute; width: 600px; height: 600px; border-radius: 50%; background: var(--sb-blue); filter: blur(120px); opacity: .1; pointer-events: none; }
.sb-glow--tr { right: -10%; top: -10%; }
.sb-glow--bl { left: -10%; bottom: -10%; width: 500px; height: 500px; }

/* ---------- Buttons (Elementor Button widget, global button style) ---------- */
.sb-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; border-radius: 8px; font-weight: 600; font-size: 1rem; padding: 12px 24px; transition: background-color .2s, border-color .2s, color .2s; text-align: center; }
.sb-btn--sm { font-size: .875rem; padding: 10px 20px; }
.sb-btn--primary { background: var(--sb-orange); color: var(--sb-navy); }
.sb-btn--primary:hover { background: #E67C00; }
.sb-btn--ghost { border: 1px solid rgba(255, 255, 255, .2); color: var(--sb-white); font-weight: 500; }
.sb-btn--ghost:hover { border-color: rgba(255, 255, 255, .45); }
.sb-btn--whatsapp { border: 1px solid rgba(34, 197, 94, .4); color: #4ADE80; font-weight: 500; }
.sb-btn--whatsapp:hover { background: rgba(34, 197, 94, .1); }
.sb-btn--block { width: 100%; }
.sb-link { font-size: .875rem; font-weight: 600; color: var(--sb-blue); }
.sb-link:hover, a:hover > .sb-link { text-decoration: underline; }

/* Header: see header.css */
.sb-logo { display: flex; align-items: center; gap: 12px; }
.sb-logo__name { color: var(--sb-white); font: 800 1.25rem/1 var(--sb-font-heading); font-stretch: 112%; letter-spacing: -.01em; }

/* Hero: see hero.css */
.sb-btn-row { display: flex; flex-wrap: wrap; gap: 16px; }

/* ---------- Platforms strip ---------- */
.sb-strip { background: var(--sb-mist); padding-block: 48px; border-block: 1px solid var(--sb-line); }
.sb-strip .sb-eyebrow { display: block; text-align: center; color: #6B7280; margin-bottom: 32px; }

/* ---------- Cards ---------- */
.sb-card { display: block; border: 1px solid var(--sb-line); border-radius: var(--sb-radius); padding: 24px; background: var(--sb-white); transition: border-color .2s, box-shadow .2s; }
.sb-card:hover { border-color: rgba(11, 115, 217, .4); }
.sb-card__icon { width: 48px; height: 48px; border-radius: 8px; background: rgba(11, 115, 217, .1); color: var(--sb-blue); display: flex; align-items: center; justify-content: center; font-size: 1.25rem; margin-bottom: 20px; transition: transform .3s; }
.sb-card:hover .sb-card__icon { transform: scale(1.1); }
.sb-card .sb-h3 { margin-bottom: 8px; }
.sb-card__text { font-size: .875rem; color: var(--sb-muted); margin-bottom: 16px; }
.sb-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.sb-tags li { font-size: .75rem; background: var(--sb-mist); padding: 4px 8px; border-radius: 4px; }

/* ---------- Free tools ---------- */
.sb-panel { background: var(--sb-white); border: 1px solid var(--sb-line); border-radius: var(--sb-radius-lg); padding: 32px; }
.sb-tabs { display: flex; flex-wrap: wrap; gap: 8px; border-bottom: 1px solid var(--sb-line); padding-bottom: 16px; margin-bottom: 24px; }
.sb-tab { padding: 8px 16px; border-radius: 8px; font-size: .875rem; font-weight: 500; color: #6B7280; }
.sb-tab:hover { color: var(--sb-navy); }
.sb-tab[aria-selected="true"] { background: var(--sb-navy); color: var(--sb-white); }
.sb-progress { height: 4px; background: var(--sb-mist); border-radius: 4px; overflow: hidden; margin-bottom: 20px; }
.sb-progress > span { display: block; height: 100%; background: var(--sb-blue); width: 0; transition: width .3s; }
.sb-quiz__step { font: 700 1.25rem/1.3 var(--sb-font-heading); color: var(--sb-navy); margin-bottom: 8px; }
.sb-quiz__q { color: var(--sb-muted); margin-bottom: 16px; }
.sb-options { display: grid; gap: 8px; }
.sb-option { width: 100%; text-align: left; padding: 12px 16px; border: 1px solid var(--sb-line); border-radius: 8px; font-size: .875rem; transition: border-color .2s, background-color .2s; }
.sb-option:hover { border-color: var(--sb-blue); background: rgba(11, 115, 217, .05); }
.sb-option[aria-pressed="true"] { border-color: var(--sb-blue); background: rgba(11, 115, 217, .05); font-weight: 500; }
.sb-quiz__nav { display: flex; justify-content: space-between; margin-top: 24px; }
.sb-quiz__nav button { font-size: .875rem; font-weight: 600; color: var(--sb-blue); padding: 8px 4px; }
.sb-quiz__nav button:disabled { color: #CBD5E1; cursor: default; }

.sb-field { display: grid; gap: 6px; }
.sb-field label, .sb-label { font-size: .875rem; font-weight: 500; color: #374151; }
.sb-field output { font: 600 .875rem/1 var(--sb-font-mono); color: var(--sb-blue); }
.sb-field__row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.sb-range { width: 100%; accent-color: var(--sb-blue); }
.sb-stack { display: grid; gap: 20px; }

.sb-result { background: var(--sb-navy); color: var(--sb-white); border-radius: var(--sb-radius-lg); padding: 32px; box-shadow: var(--sb-glow); }
.sb-result .sb-eyebrow { margin-bottom: 8px; display: block; }
.sb-score { font: 700 clamp(3rem, 6vw, 3.75rem)/1 var(--sb-font-heading); color: var(--sb-orange); margin-bottom: 8px; }
.sb-score small { font-size: 1.5rem; color: var(--sb-muted-light); }
.sb-result__text { color: #D1D5DB; margin-bottom: 24px; }
.sb-meter { height: 14px; background: rgba(255, 255, 255, .08); border-radius: 7px; overflow: hidden; }
.sb-meter > span { display: block; height: 100%; width: 0; background: linear-gradient(90deg, var(--sb-blue), var(--sb-orange)); border-radius: 7px; transition: width .4s; }
.sb-meter__scale { display: flex; justify-content: space-between; font: 400 .6875rem/1 var(--sb-font-mono); color: var(--sb-muted-light); margin-top: 8px; }
.sb-result .sb-btn { margin-top: 24px; }
.sb-roi-figs { display: grid; gap: 16px; margin-bottom: 8px; }
.sb-roi-figs dt { font-size: .75rem; color: var(--sb-muted-light); }
.sb-roi-figs dd { margin: 0; font: 600 1.75rem/1.2 var(--sb-font-mono); color: var(--sb-orange); }
.sb-note { font-size: .75rem; color: var(--sb-muted-light); }
[hidden] { display: none !important; }
@media (max-width: 767px) { .sb-panel, .sb-result { padding: 24px; } }

/* ---------- Process timeline ---------- */
.sb-steps { position: relative; display: flex; justify-content: space-between; gap: 16px; }
.sb-steps::before { content: ""; position: absolute; top: 20px; left: 0; right: 0; height: 2px; background: var(--sb-mist); }
.sb-step { position: relative; display: flex; align-items: center; gap: 16px; background: var(--sb-white); padding-right: 12px; }
.sb-step__node { width: 40px; height: 40px; flex-shrink: 0; border-radius: 50%; background: var(--sb-white); border: 2px solid var(--sb-mist); display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: .875rem; }
.sb-step--active .sb-step__node { border-color: var(--sb-blue); color: var(--sb-blue); }
.sb-step__title { font: 700 1rem/1.3 var(--sb-font-heading); color: var(--sb-navy); }
.sb-step__time { font: 400 .75rem/1.4 var(--sb-font-mono); color: #6B7280; }
@media (max-width: 1024px) {
  .sb-steps { flex-direction: column; gap: 28px; }
  .sb-steps::before { top: 0; bottom: 0; left: 19px; right: auto; width: 2px; height: auto; }
}

/* ---------- Case studies ---------- */
.sb-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 40px; }
.sb-filter { padding: 8px 16px; background: var(--sb-white); color: #4B5563; border: 1px solid var(--sb-line); border-radius: 8px; font-size: .875rem; font-weight: 500; }
.sb-filter:hover { border-color: var(--sb-blue); }
.sb-filter[aria-pressed="true"] { background: var(--sb-navy); color: var(--sb-white); border-color: var(--sb-navy); }
.sb-case { display: block; border: 1px solid var(--sb-line); border-radius: var(--sb-radius); overflow: hidden; background: var(--sb-white); transition: border-color .2s; }
.sb-case:hover { border-color: rgba(11, 115, 217, .4); }
.sb-case__top { background: var(--sb-navy); color: var(--sb-white); padding: 24px; }
.sb-case__metric { font: 700 3rem/1.1 var(--sb-font-heading); color: var(--sb-orange); margin-top: 8px; }
.sb-case__sub { color: #D1D5DB; font-size: .875rem; margin-top: 4px; }
.sb-case__body { padding: 24px; }
.sb-case__body .sb-h3 { font-size: 1.125rem; margin-bottom: 8px; }
.sb-empty { grid-column: 1 / -1; padding: 32px; text-align: center; color: var(--sb-muted); border: 1px dashed #CBD5E1; border-radius: var(--sb-radius); background: var(--sb-white); }
@media (max-width: 767px) { .sb-case__metric { font-size: 2.5rem; } }

/* ---------- Industries ---------- */
.sb-industry { border: 1px solid rgba(255, 255, 255, .1); border-radius: var(--sb-radius); padding: 24px; transition: border-color .2s, box-shadow .2s; }
.sb-industry:hover { border-color: var(--sb-blue); box-shadow: 0 0 30px -10px rgba(11, 115, 217, .3); }
.sb-industry i { color: var(--sb-blue); font-size: 1.5rem; margin-bottom: 16px; display: block; }
.sb-industry .sb-h3 { font-size: 1.125rem; margin-bottom: 8px; }
.sb-industry p { font-size: .875rem; color: var(--sb-muted-light); }

/* ---------- Academy / Insights ---------- */
.sb-chip { display: inline-block; background: var(--sb-mist); border-radius: 6px; padding: 4px 12px; margin-bottom: 24px; font: 600 .75rem/1.4 var(--sb-font-mono); color: var(--sb-navy); letter-spacing: .08em; }
.sb-col-intro { color: var(--sb-muted); margin: 16px 0 32px; }
.sb-course { display: flex; align-items: flex-start; gap: 16px; padding: 16px; border: 1px solid var(--sb-line); border-radius: 8px; transition: border-color .2s; }
.sb-course + .sb-course { margin-top: 16px; }
.sb-course:hover { border-color: rgba(11, 115, 217, .4); }
.sb-course__icon { width: 40px; height: 40px; flex-shrink: 0; border-radius: 6px; background: rgba(11, 115, 217, .1); color: var(--sb-blue); display: flex; align-items: center; justify-content: center; }
.sb-course__title { font: 700 1rem/1.3 var(--sb-font-heading); color: var(--sb-navy); }
.sb-course:hover .sb-course__title { color: var(--sb-blue); }
.sb-course__meta { font-size: .875rem; color: #6B7280; }
.sb-post { display: block; border-bottom: 1px solid var(--sb-line); padding-bottom: 24px; }
.sb-post + .sb-post { margin-top: 24px; }
.sb-post:last-child { border-bottom: 0; }
.sb-post .sb-h3 { margin-top: 4px; transition: color .2s; }
.sb-post:hover .sb-h3 { color: var(--sb-blue); }
.sb-post p { font-size: .875rem; color: #6B7280; margin: 8px 0 12px; }

/* ---------- Contact ---------- */
.sb-contact .sb-h2 { margin-bottom: 24px; }
.sb-contact .sb-lede { margin-bottom: 32px; }
.sb-contact__links { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.sb-mail { display: inline-flex; align-items: center; gap: 12px; padding: 12px 24px; font-weight: 500; color: var(--sb-white); transition: color .2s; }
.sb-mail:hover { color: var(--sb-orange); }
.sb-form-card { background: var(--sb-white); color: var(--sb-charcoal); border-radius: var(--sb-radius-lg); padding: 32px; }
.sb-form-card .sb-h3, .sb-on-dark .sb-form-card .sb-h3 { margin-bottom: 24px; color: var(--sb-navy); }
.sb-form { display: grid; gap: 20px; }
.sb-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.sb-input { width: 100%; border: 1px solid #CBD5E1; border-radius: 8px; padding: 10px 16px; font-size: .875rem; background: var(--sb-white); outline: none; }
.sb-input:focus { border-color: var(--sb-blue); box-shadow: 0 0 0 1px var(--sb-blue); }
.sb-input[aria-invalid="true"] { border-color: #DC2626; }
.sb-consent { display: flex; align-items: flex-start; gap: 12px; font-size: .75rem; color: #6B7280; cursor: pointer; }
.sb-consent input { margin-top: 3px; }
.sb-consent a { color: var(--sb-blue); text-decoration: underline; }
.sb-form__msg { font-size: .875rem; border-radius: 8px; padding: 12px 16px; }
.sb-form__msg--ok { background: #ECFDF5; color: #065F46; }
.sb-form__msg--err { background: #FEF2F2; color: #991B1B; }
@media (max-width: 767px) {
  .sb-form-card { padding: 24px; }
  .sb-form__row { grid-template-columns: 1fr; }
}

/* ---------- Footer ---------- */
.sb-footer { background: var(--sb-navy-deep); color: var(--sb-muted-light); padding-block: 64px; }
.sb-footer__grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 48px; }
.sb-footer .sb-logo { margin-bottom: 24px; }
.sb-footer__about { font-size: .875rem; max-width: 24rem; margin-bottom: 24px; }
.sb-social { display: flex; gap: 16px; }
.sb-social a { width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .1); display: flex; align-items: center; justify-content: center; transition: border-color .2s, color .2s; }
.sb-social a:hover { border-color: var(--sb-blue); color: var(--sb-blue); }
.sb-footer h4 { color: var(--sb-white); font: 700 1rem/1.3 var(--sb-font-heading); margin-bottom: 24px; }
.sb-footer__links { display: grid; gap: 12px; font-size: .875rem; }
.sb-footer__links a:hover, .sb-legal a:hover { color: var(--sb-white); }
.sb-footer__bar { border-top: 1px solid rgba(255, 255, 255, .1); padding-top: 32px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px; }
.sb-legal { display: flex; flex-wrap: wrap; gap: 16px 32px; font-size: .75rem; }
.sb-subscribe { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; }
.sb-subscribe form { display: flex; gap: 8px; }
.sb-subscribe input { background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .1); border-radius: 4px; padding: 6px 12px; font-size: .75rem; color: var(--sb-white); outline: none; }
.sb-subscribe input:focus { border-color: var(--sb-blue); }
.sb-subscribe button { background: rgba(255, 255, 255, .1); color: var(--sb-white); padding: 6px 12px; border-radius: 4px; font-size: .75rem; font-weight: 500; }
.sb-subscribe button:hover { background: rgba(255, 255, 255, .2); }
.sb-copy { font-size: .75rem; color: #6B7280; }
.sb-dpa { font-size: .625rem; color: #4B5563; margin-top: 24px; }
@media (max-width: 1024px) { .sb-footer__grid { grid-template-columns: 1fr 1fr; } .sb-footer__brand { grid-column: 1 / -1; } }
@media (max-width: 767px) { .sb-footer__grid { grid-template-columns: 1fr; gap: 32px; } }

/* ---------- Floating WhatsApp + mobile bottom bar ---------- */
.sb-wa-fab { position: fixed; right: 24px; bottom: 24px; z-index: 50; width: 56px; height: 56px; border-radius: 50%; background: var(--sb-whatsapp); color: var(--sb-white); display: flex; align-items: center; justify-content: center; font-size: 1.5rem; box-shadow: 0 10px 20px rgba(0, 0, 0, .2); transition: background-color .2s; }
.sb-wa-fab:hover { background: #20BD5A; }
.sb-mbar { display: none; }
@media (max-width: 767px) {
  .sb-wa-fab { display: none; }
  .sb-mbar { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: var(--sb-navy); border-top: 1px solid rgba(255, 255, 255, .1); }
  .sb-mbar .sb-btn { padding: 10px 12px; font-size: .9375rem; }
  .sb-mbar__wa { background: var(--sb-whatsapp); color: var(--sb-white); }
  body { padding-bottom: 68px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; }
}

/* Archivo width axis: expanded headings (the font shorthand resets font-stretch) */
.sb-h1,
.sb-h2,
.sb-h3,
.sb-quiz__step,
.sb-score,
.sb-step__title,
.sb-case__metric,
.sb-course__title,
.sb-footer h4 { font-stretch: 125%; }

/* X logo (Font Awesome 6.4.0 has no fa-x-twitter glyph) */
.sb-icon-x { display: inline-block; width: 1em; height: 1em; vertical-align: -0.125em; }

/* sbs-header */
/* ==========================================================================
   SIGMA BROOKS — Global header
   Elementor: paste into the Header template's Custom CSS (or Site Settings).
   Depends on the tokens defined in sigma.css (:root --sb-*).
   ========================================================================== */

:root {
  --sbh-util-h: 44px;
  --sbh-main-h: 92px;
  --sbh-bg: #0A1F38;
  --sbh-line: rgba(255, 255, 255, .08);
  --sbh-text: #E8EEF5;
  --sbh-text-2: #B4C1D1;
  --sbh-ink-grad: var(--sb-orange);
  --sbh-cta-grad: linear-gradient(180deg, #FF9B26 0%, #FF7E00 100%);
}
@media (max-width: 1200px) { :root { --sbh-main-h: 72px; } }
@media (max-width: 767px)  { :root { --sbh-util-h: 38px; --sbh-main-h: 64px; } }

.sbh-wrap { max-width: 1760px; margin-inline: auto; padding-inline: var(--sb-gutter); }

.sbh-skip { position: absolute; left: 16px; top: -48px; z-index: 100; background: var(--sb-orange); color: var(--sb-navy); font-weight: 600; padding: 10px 16px; border-radius: 8px; transition: top .2s; }
.sbh-skip:focus { top: 12px; }

.sbh-staging { background: var(--sb-orange); color: var(--sb-navy); text-align: center; font: 600 .75rem/1.4 var(--sb-font-mono); padding: 6px 16px; letter-spacing: .04em; }

/* ---------- Shell: util bar scrolls away, main bar sticks ---------- */
.sbh {
  position: sticky;
  top: calc(var(--sbh-util-h) * -1);
  z-index: 60;
  color: var(--sbh-text);
  background:
    radial-gradient(900px 220px at 88% 120%, rgba(11, 115, 217, .16), transparent 70%),
    linear-gradient(180deg, #081B31 0%, var(--sbh-bg) 100%);
  box-shadow: 0 18px 40px -24px rgba(4, 18, 31, .7);
}
.sbh-main { transition: background-color .3s, box-shadow .3s; }
.sbh.is-scrolled .sbh-main { background: rgba(8, 27, 49, .9); box-shadow: 0 12px 30px -14px rgba(0, 0, 0, .55); }
@supports (backdrop-filter: blur(1px)) {
  .sbh.is-scrolled .sbh-main { backdrop-filter: saturate(140%) blur(14px); }
}

/* ---------- Utility bar ---------- */
.sbh-util { height: var(--sbh-util-h); border-bottom: 1px solid var(--sbh-line); font-size: .875rem; color: var(--sbh-text); }
.sbh-util__inner { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.sbh-util__group { display: flex; align-items: center; height: 100%; }
.sbh-util__group > li { display: flex; align-items: center; height: 100%; }
.sbh-util__group > li + li { border-left: 1px solid rgba(255, 255, 255, .12); height: 18px; }
.sbh-util__group > li:first-child .sbh-util__item { padding-left: 0; }
.sbh-util__group--right > li:last-child .sbh-util__item { padding-right: 0; }
.sbh-util__item { display: inline-flex; align-items: center; gap: 9px; padding: 0 22px; height: 100%; white-space: nowrap; color: var(--sbh-text); transition: color .2s; }
a.sbh-util__item:hover, button.sbh-util__item:hover { color: var(--sb-white); }
a.sbh-util__item:hover i:not(.sbh-ic-green) { color: var(--sb-orange); }
.sbh-util__item i { font-size: 1rem; transition: color .2s; }
.sbh-util__icon i { font-size: 1.125rem; }
.sbh-ic-orange { color: var(--sb-orange); }
.sbh-ic-blue { color: #3B8FF0; }
.sbh-ic-green { color: var(--sb-whatsapp); font-size: 1.125rem !important; }
.sbh-chev { font-size: .6875rem !important; margin-left: 2px; transition: transform .25s; }
[aria-expanded="true"] > .sbh-chev { transform: rotate(180deg); }

/* status: open / closed */
.sbh-status { gap: 10px; }
.sbh-status strong { font-weight: 600; color: var(--sbh-text-2); }
.sbh-status__sep { color: #64748B; }
.sbh-dot { width: 9px; height: 9px; border-radius: 50%; background: #64748B; flex-shrink: 0; }
.is-open .sbh-dot { background: #22C55E; animation: sbh-pulse 2.2s infinite; }
.is-open.sbh-status strong { color: #34D399; }
@keyframes sbh-pulse { 0% { box-shadow: 0 0 0 0 rgba(34, 197, 94, .55); } 70% { box-shadow: 0 0 0 7px rgba(34, 197, 94, 0); } 100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); } }

/* location popover */
.sbh-loc { position: relative; }
.sbh-loc__pop { position: absolute; top: calc(100% + 6px); left: -8px; z-index: 70; width: 300px; padding: 18px 20px; border-radius: 12px; background: var(--sb-white); color: var(--sb-charcoal); box-shadow: 0 24px 50px -16px rgba(4, 18, 31, .55); animation: sbh-pop .16s ease-out; }
.sbh-loc__pop::before { content: ""; position: absolute; top: -6px; left: 28px; width: 12px; height: 12px; background: var(--sb-white); transform: rotate(45deg); border-radius: 2px; }
.sbh-loc__title { font: 700 1rem/1.3 var(--sb-font-heading); color: var(--sb-navy); }
.sbh-loc__addr { font-size: .875rem; color: #475569; margin: 4px 0 14px; }
.sbh-loc__todo { color: #C2410C; font-size: .75rem; }
.sbh-loc__meta { display: grid; gap: 8px; margin: 0 0 14px; padding: 12px 0; border-block: 1px solid var(--sb-line); font-size: .8125rem; }
.sbh-loc__meta div { display: flex; justify-content: space-between; gap: 12px; }
.sbh-loc__meta dt { color: #64748B; }
.sbh-loc__meta dd { margin: 0; font-weight: 600; color: var(--sb-navy); text-align: right; }
.sbh-loc__link { display: inline-flex; align-items: center; gap: 8px; font-size: .875rem; font-weight: 600; color: var(--sb-blue); }
.sbh-loc__link:hover { text-decoration: underline; }
.sbh-loc__link i { font-size: .6875rem; }

@media (max-width: 1260px) { .sbh-util__group > li.sbh-hide-md, .sbh-util__group > li:has(> .sbh-hide-md) { display: none; } }
@media (max-width: 1024px) { .sbh-loc__btn .sbh-hide-sm, .sbh-status__sep, .sbh-status [data-sbh-status] { display: none; } }
@media (max-width: 767px) {
  .sbh-util { font-size: .8125rem; }
  .sbh-util__item { padding: 0 12px; }
  .sbh-hide-sm { display: none; }
  .sbh-loc__btn .sbh-chev { display: none; }
  .sbh-status__sep, .sbh-status [data-sbh-status] { display: none; }
  .sbh-loc__pop { width: min(300px, calc(100vw - 32px)); }
}

/* ---------- Main bar ---------- */
.sbh-main { position: relative; height: var(--sbh-main-h); }
.sbh-main__inner { height: 100%; display: flex; align-items: center; gap: 40px; }

.sbh-logo { display: flex; align-items: center; flex-shrink: 0; }
.sbh-logo__img { display: block; height: 66px; width: auto; transition: filter .3s, transform .3s; }
.sbh-logo:hover .sbh-logo__img { filter: drop-shadow(0 0 14px rgba(255, 138, 0, .25)); }

.sbh-nav { position: relative; margin-inline: auto; height: 100%; }
.sbh-nav__list { display: flex; align-items: center; gap: 8px; height: 100%; }
.sbh-nav__list > li { height: 100%; display: flex; align-items: center; }
.sbh-link { white-space: nowrap; display: inline-flex; align-items: center; gap: 9px; height: 44px; padding: 0 16px; border-radius: 8px; font-size: 1.0625rem; font-weight: 600; color: var(--sb-white); letter-spacing: -.005em; transition: color .2s; }
.sbh-link:hover, .sbh-link[aria-expanded="true"], .sbh-link.is-current { color: var(--sb-orange); }
.sbh-link i { font-size: .6875rem; transition: transform .25s; }
.sbh-link[aria-expanded="true"] i { transform: rotate(180deg); }
.sbh-ink { position: absolute; bottom: calc(50% - 26px); left: 0; height: 3px; width: 0; border-radius: 3px; background: var(--sbh-ink-grad); box-shadow: 0 0 12px rgba(255, 138, 0, .45); opacity: 0; transition: transform .35s cubic-bezier(.4, 0, .2, 1), width .35s cubic-bezier(.4, 0, .2, 1), opacity .2s; pointer-events: none; }
.sbh-ink.is-visible { opacity: 1; }

.sbh-actions { display: flex; align-items: center; gap: 16px; flex-shrink: 0; }
.sbh-search { position: relative; display: inline-flex; align-items: center; gap: 12px; width: 256px; height: 50px; padding: 0 16px; border: 1px solid rgba(255, 255, 255, .12); border-radius: 14px; background: rgba(255, 255, 255, .03); color: #93A3B8; font-size: .9375rem; text-align: left; transition: border-color .2s, background-color .2s, color .2s; }
.sbh-search > i { font-size: 1.125rem; color: #CBD5E1; }
.sbh-search:hover { border-color: rgba(255, 255, 255, .28); background: rgba(255, 255, 255, .06); color: #CBD5E1; }
.sbh-search__label { flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sbh-search .sbh-kbd { opacity: 0; transition: opacity .2s; }
.sbh-search:hover .sbh-kbd, .sbh-search:focus-visible .sbh-kbd { opacity: 1; }
.sbh-kbd { font: 500 .6875rem/1 var(--sb-font-mono); padding: 4px 6px; border-radius: 4px; border: 1px solid rgba(255, 255, 255, .15); background: rgba(255, 255, 255, .05); color: #CBD5E1; }
.sbh-vr { width: 1px; height: 32px; background: rgba(255, 255, 255, .1); }

.sbh-cta { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 14px; height: 54px; padding: 0 26px 0 28px; border-radius: 12px; background: var(--sbh-cta-grad); color: #0A1F38; font-weight: 700; font-size: 1.0625rem; letter-spacing: -.005em; overflow: hidden; isolation: isolate; white-space: nowrap; box-shadow: 0 10px 28px -10px rgba(255, 138, 0, .75), inset 0 1px 0 rgba(255, 255, 255, .35); transition: box-shadow .25s, transform .2s; }
.sbh-cta::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(110deg, transparent 35%, rgba(255, 255, 255, .45) 50%, transparent 65%); transform: translateX(-100%); transition: transform .7s; }
.sbh-cta:hover { box-shadow: 0 14px 34px -10px rgba(255, 138, 0, .9), inset 0 1px 0 rgba(255, 255, 255, .35); transform: translateY(-1px); }
.sbh-cta:hover::before { transform: translateX(100%); }
.sbh-cta i { font-size: 1.0625rem; transition: transform .25s; }
.sbh-cta:hover i { transform: translateX(4px); }
.sbh-cta__short { display: none; }
.sbh-cta--block { width: 100%; height: 54px; font-size: 1rem; }

.sbh-burger { display: none; width: 46px; height: 46px; border-radius: 10px; position: relative; border: 1px solid rgba(255, 255, 255, .12); }
.sbh-burger span { position: absolute; left: 12px; right: 12px; height: 2px; border-radius: 2px; background: var(--sb-white); transition: transform .3s, opacity .2s, top .3s; }
.sbh-burger span:nth-child(1) { top: 15px; }
.sbh-burger span:nth-child(2) { top: 21px; right: 18px; background: var(--sb-orange); }
.sbh-burger span:nth-child(3) { top: 27px; }
.sbh-burger[aria-expanded="true"] span:nth-child(1) { top: 21px; transform: rotate(45deg); }
.sbh-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.sbh-burger[aria-expanded="true"] span:nth-child(3) { top: 21px; transform: rotate(-45deg); }

@media (max-width: 1680px) {
  .sbh-main__inner { gap: 28px; }
  .sbh-search { width: 210px; }
  .sbh-link { padding: 0 12px; font-size: 1rem; }
}
@media (max-width: 1560px) {
  .sbh-search { width: 50px; padding: 0; justify-content: center; }
  .sbh-search__label, .sbh-search .sbh-kbd, .sbh-vr { display: none; }
}
@media (max-width: 1400px) {
  .sbh-logo__img { height: 58px; }
  .sbh-cta { height: 50px; padding: 0 20px; font-size: 1rem; }
  .sbh-link { padding: 0 10px; }
  .sbh-nav__list { gap: 2px; }
}
@media (max-width: 1320px) {
  .sbh-cta__full { display: none; }
  .sbh-cta__short { display: inline; }
}
@media (max-width: 1200px) {
  .sbh-nav { display: none; }
  .sbh-burger { display: block; }
  .sbh-actions { margin-left: auto; gap: 10px; }
  .sbh-search { width: 46px; height: 46px; border-radius: 10px; }
  .sbh-cta { height: 46px; }
}
@media (max-width: 767px) {
  .sbh-logo__img { height: 42px; }
  .sbh-actions .sbh-cta { display: none; }
  .sbh-search { width: 44px; height: 44px; border-color: transparent; background: none; }
  .sbh-burger { width: 44px; height: 44px; }
}

/* ---------- Light main bar (.sbh--light, the chosen default): navy utility bar + white main bar.
   Remove the class to get the all-navy variant (then use logo-header-ondark.png). ---------- */
.sbh--light { background: var(--sb-white); box-shadow: 0 10px 30px -18px rgba(7, 28, 51, .35); }
.sbh--light .sbh-util { background: linear-gradient(180deg, #081B31 0%, #0A1F38 100%); }
.sbh--light .sbh-main { background: var(--sb-white); border-bottom: 1px solid #E2E8F0; }
.sbh--light.is-scrolled .sbh-main { background: rgba(255, 255, 255, .92); box-shadow: 0 10px 30px -16px rgba(7, 28, 51, .3); }
.sbh--light .sbh-link { color: #0A1F38; }
.sbh--light .sbh-link:hover, .sbh--light .sbh-link[aria-expanded="true"] { color: #0B63BE; }  /* 5.6:1 on white; orange text would fail (2.2:1) */
.sbh--light .sbh-link.is-current { color: #0A1F38; }
.sbh--light .sbh-ink { box-shadow: none; }
.sbh--light .sbh-search { background: #F1F5F9; border-color: #E2E8F0; color: #64748B; }
.sbh--light .sbh-search > i { color: #0A1F38; }
.sbh--light .sbh-search:hover { background: #E9EEF4; border-color: #CBD5E1; color: #475569; }
.sbh--light .sbh-kbd { background: var(--sb-white); border-color: #CBD5E1; color: #475569; }
.sbh--light .sbh-vr { background: #E2E8F0; }
.sbh--light .sbh-burger { border-color: #E2E8F0; }
.sbh--light .sbh-burger span { background: #0A1F38; }
.sbh--light .sbh-burger span:nth-child(2) { background: var(--sb-orange); }
.sbh--light .sbh-cta { box-shadow: 0 8px 20px -10px rgba(255, 138, 0, .8), inset 0 1px 0 rgba(255, 255, 255, .35); }
.sbh--light .sbh-logo:hover .sbh-logo__img { filter: none; }
.sbh--light .sbh-mega { border-top: 1px solid #E2E8F0; }
@media (max-width: 767px) { .sbh--light .sbh-search { background: none; border-color: transparent; } }
/* ---------- end light theme ---------- */

/* ---------- Scroll progress ("Σ of the page read") ---------- */
.sbh-progress { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; pointer-events: none; }
.sbh-progress span { display: block; height: 100%; width: 100%; background: var(--sbh-ink-grad); transform-origin: 0 50%; transform: scaleX(0); }

/* ---------- Mega panels ---------- */
.sbh-mega {
  position: absolute; left: 0; right: 0; top: 100%;
  background: var(--sb-white); color: var(--sb-charcoal);
  border-bottom: 1px solid var(--sb-line);
  box-shadow: 0 30px 60px -20px rgba(7, 28, 51, .35);
  max-height: calc(100vh - var(--sbh-main-h));
  overflow-y: auto;
  visibility: hidden; opacity: 0; transform: translateY(-8px);
  transition: opacity .22s, transform .22s, visibility 0s linear .22s;
}
.sbh-mega.is-open { visibility: visible; opacity: 1; transform: none; transition: opacity .22s, transform .22s, visibility 0s; }
.sbh-mega__inner { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 40px; padding-block: 36px 32px; }
.sbh-mega__label { font: 600 .6875rem/1 var(--sb-font-mono); letter-spacing: .16em; text-transform: uppercase; color: #64748B; margin-bottom: 16px; }
.sbh-mega__grid { display: grid; gap: 4px; }
.sbh-mega__grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sbh-mega__grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sbh-mega__cols { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }

.sbh-mi { display: flex; align-items: flex-start; gap: 14px; padding: 14px; border-radius: 10px; transition: background-color .2s; }
.sbh-mi:hover, .sbh-mi:focus-visible { background: var(--sb-bg); }
.sbh-mi strong { display: block; font: 700 .9375rem/1.3 var(--sb-font-heading); color: var(--sb-navy); transition: color .2s; }
.sbh-mi small { display: block; font-size: .8125rem; line-height: 1.45; color: #64748B; margin-top: 3px; }
.sbh-mi:hover strong { color: var(--sb-blue); }
.sbh-mi__icon { width: 40px; height: 40px; flex-shrink: 0; border-radius: 10px; background: rgba(11, 115, 217, .1); color: var(--sb-blue); display: flex; align-items: center; justify-content: center; font-size: 1rem; transition: background-color .2s, color .2s, transform .25s; }
.sbh-mi:hover .sbh-mi__icon { background: var(--sb-blue); color: var(--sb-white); transform: translateY(-2px); }
.sbh-mi__icon--orange { background: rgba(255, 138, 0, .12); color: #C2410C; }
.sbh-mi:hover .sbh-mi__icon--orange { background: var(--sb-orange); color: var(--sb-navy); }
.sbh-mi--compact { flex-direction: column; gap: 10px; }
.sbh-mi--compact strong { font-size: .875rem; }

.sbh-mega__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-top: 20px; padding: 14px 16px; border-radius: 10px; background: var(--sb-mist); font-size: .875rem; color: #475569; }
.sbh-mega__foot a { font-weight: 600; color: var(--sb-blue); display: inline-flex; align-items: center; gap: 6px; }
.sbh-mega__foot a:hover { text-decoration: underline; }
.sbh-mega__foot i { font-size: .6875rem; }
.sbh-mega__all { margin-left: auto; color: var(--sb-navy) !important; }

.sbh-feature { position: relative; overflow: hidden; border-radius: 14px; padding: 28px; background: var(--sb-navy); color: var(--sb-white); display: flex; flex-direction: column; }
.sbh-feature::after { content: "Σ"; position: absolute; right: -10px; bottom: -48px; font: 800 11rem/1 var(--sb-font-heading); color: rgba(255, 255, 255, .04); pointer-events: none; }
.sbh-feature__eyebrow { font: 600 .6875rem/1.3 var(--sb-font-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--sb-blue); margin-bottom: 12px; }
.sbh-feature__title { font: 700 1.375rem/1.25 var(--sb-font-heading); margin-bottom: 10px; }
.sbh-feature__meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.sbh-feature__meta span { font: 500 .75rem/1 var(--sb-font-mono); padding: 6px 8px; border-radius: 6px; background: rgba(255, 255, 255, .08); color: #E2E8F0; }
.sbh-feature__meta span:last-child { background: rgba(255, 138, 0, .15); color: var(--sb-orange); }
.sbh-feature__list { display: grid; gap: 10px; font-size: .875rem; color: #CBD5E1; margin-bottom: 22px; }
.sbh-feature__list i { color: var(--sb-orange); margin-right: 8px; font-size: .75rem; }
.sbh-feature__big { font: 800 4rem/1 var(--sb-font-heading); color: var(--sb-orange); }
.sbh-feature__caption { font-size: .875rem; color: #CBD5E1; margin: 10px 0 16px; }
.sbh-spark { width: 100%; height: 48px; margin-bottom: 18px; }
.sbh-feature__link { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; font-weight: 600; font-size: .875rem; color: var(--sb-orange); position: relative; z-index: 1; }
.sbh-feature__link i { transition: transform .2s; font-size: .75rem; }
.sbh-feature__link:hover i { transform: translateX(4px); }
.sbh-feature--post { background: linear-gradient(160deg, #0C2745, var(--sb-navy)); }

@media (max-width: 1280px) {
  .sbh-mega__inner { grid-template-columns: minmax(0, 1fr) 300px; gap: 28px; }
  .sbh-mega__grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sbh-mi--compact { flex-direction: row; }
}

.sbh-backdrop { position: fixed; inset: 0; z-index: 55; background: rgba(4, 18, 31, .45); opacity: 0; transition: opacity .22s; }
.sbh-backdrop.is-visible { opacity: 1; }
@supports (backdrop-filter: blur(1px)) { .sbh-backdrop { backdrop-filter: blur(2px); } }

/* ---------- Drawer (≤1024px) ---------- */
.sbh-drawer { position: fixed; left: 0; right: 0; bottom: 0; top: var(--sbh-drawer-top, 0px); z-index: 58; background: var(--sb-navy); color: var(--sb-white); display: flex; flex-direction: column; overflow-y: auto; overscroll-behavior: contain; padding: 8px var(--sb-gutter) calc(24px + env(safe-area-inset-bottom)); visibility: hidden; opacity: 0; transform: translateY(-10px); transition: opacity .25s, transform .25s, visibility 0s linear .25s; }
.sbh-drawer.is-open { visibility: visible; opacity: 1; transform: none; transition: opacity .25s, transform .25s, visibility 0s; }
.sbh-drawer__nav { flex: 1; }
.sbh-drawer__link, .sbh-acc__btn { display: flex; width: 100%; align-items: center; justify-content: space-between; padding: 18px 0; border-bottom: 1px solid rgba(255, 255, 255, .08); font: 700 1.375rem/1.2 var(--sb-font-heading); color: var(--sb-white); text-align: left; }
.sbh-acc__btn i { font-size: .875rem; color: var(--sb-blue); transition: transform .25s; }
.sbh-acc__btn[aria-expanded="true"] i { transform: rotate(45deg); color: var(--sb-orange); }
.sbh-acc__panel { padding: 8px 0 16px; border-bottom: 1px solid rgba(255, 255, 255, .08); display: grid; gap: 2px; }
.sbh-acc__panel a { display: block; padding: 10px 12px; border-radius: 8px; color: #CBD5E1; font-size: 1rem; }
.sbh-acc__panel a:hover, .sbh-acc__panel a[aria-current="page"] { background: rgba(255, 255, 255, .06); color: var(--sb-white); }
.sbh-acc__all { color: var(--sb-orange) !important; font-weight: 600; }
.sbh-drawer__link[aria-current="page"] { color: var(--sb-orange); }
.sbh-drawer__foot { display: grid; gap: 16px; padding-top: 28px; }
.sbh-drawer__contact { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.sbh-drawer__contact a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 48px; border-radius: 8px; font-weight: 600; }
.sbh-drawer__wa { background: var(--sb-whatsapp); color: var(--sb-white); }
.sbh-drawer__mail { border: 1px solid rgba(255, 255, 255, .2); }
.sbh-drawer__meta { display: flex; align-items: center; justify-content: center; gap: 8px; font: 400 .75rem/1 var(--sb-font-mono); color: var(--sb-muted-light); }
@media (min-width: 1201px) { .sbh-drawer { display: none; } }

/* ---------- Command palette ---------- */
.sbh-palette { position: fixed; inset: 0; z-index: 80; display: flex; justify-content: center; align-items: flex-start; padding: 12vh 16px 16px; background: rgba(4, 18, 31, .6); }
@supports (backdrop-filter: blur(1px)) { .sbh-palette { backdrop-filter: blur(6px); } }
.sbh-palette[hidden] { display: none; }
.sbh-palette__box { width: 100%; max-width: 620px; background: var(--sb-white); border-radius: 16px; box-shadow: 0 40px 80px -20px rgba(0, 0, 0, .5), 0 0 0 1px rgba(11, 115, 217, .15); overflow: hidden; animation: sbh-pop .18s ease-out; }
@keyframes sbh-pop { from { opacity: 0; transform: translateY(-6px) scale(.985); } }
.sbh-palette__field { display: flex; align-items: center; gap: 12px; padding: 0 16px; border-bottom: 1px solid var(--sb-line); }
.sbh-palette__field i { color: var(--sb-blue); }
.sbh-palette__field input { flex: 1; height: 60px; border: 0; outline: 0; font-size: 1.0625rem; color: var(--sb-navy); background: transparent; min-width: 0; }
.sbh-palette__field .sbh-kbd, .sbh-palette__hint .sbh-kbd { border-color: var(--sb-line); background: var(--sb-bg); color: #64748B; }
.sbh-palette__list { max-height: min(56vh, 440px); overflow-y: auto; padding: 8px; }
.sbh-palette__group { font: 600 .6875rem/1 var(--sb-font-mono); letter-spacing: .14em; text-transform: uppercase; color: #94A3B8; padding: 14px 12px 8px; }
.sbh-palette__item a { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 10px; color: var(--sb-charcoal); }
.sbh-palette__item i { width: 32px; height: 32px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; background: var(--sb-mist); color: var(--sb-navy); font-size: .8125rem; flex-shrink: 0; }
.sbh-palette__item strong { font-weight: 600; font-size: .9375rem; }
.sbh-palette__item small { display: block; font-size: .75rem; color: #64748B; }
.sbh-palette__item mark { background: rgba(255, 138, 0, .22); color: inherit; border-radius: 2px; }
.sbh-palette__item[aria-selected="true"] a { background: var(--sb-navy); color: var(--sb-white); }
.sbh-palette__item[aria-selected="true"] small { color: #94A3B8; }
.sbh-palette__item[aria-selected="true"] i { background: var(--sb-orange); color: var(--sb-navy); }
.sbh-palette__empty { padding: 28px 16px; text-align: center; color: #64748B; font-size: .9375rem; }
.sbh-palette__empty a { color: var(--sb-blue); font-weight: 600; }
.sbh-palette__hint { display: flex; gap: 16px; align-items: center; padding: 10px 16px; border-top: 1px solid var(--sb-line); background: var(--sb-bg); font-size: .75rem; color: #64748B; }
.sbh-palette__hint span { display: inline-flex; align-items: center; gap: 4px; }
.sbh-palette__brand { margin-left: auto; font-family: var(--sb-font-mono); color: var(--sb-blue); }
@media (max-width: 767px) { .sbh-palette { padding-top: 16px; } .sbh-palette__hint { display: none; } }

body.sbh-lock { overflow: hidden; }
body.sbh-menu-open .sb-mbar, body.sbh-menu-open .sb-wa-fab { display: none; }

@media (prefers-reduced-motion: reduce) {
  .sbh *, .sbh-drawer, .sbh-palette__box { transition: none !important; animation: none !important; }
}

/* Small phones (after the 767px rules so it wins) */
@media (max-width: 400px) {
  .sbh-logo__img { height: 38px; }
  .sbh-main__inner { gap: 12px; }
}

/* Archivo width axis: expanded headings (the font shorthand resets font-stretch) */
.sbh-loc__title,
.sbh-mi strong,
.sbh-feature::after,
.sbh-feature__title,
.sbh-feature__big,
.sbh-drawer__link,
.sbh-acc__btn { font-stretch: 125%; }

/* very small phones: drop the X icon from the utility bar */
@media (max-width: 400px) { .sbh-util__group > li:has(> [data-sbh-x]) { display: none; } }

/* ---------- Services mega: floating card (reference design) ---------- */
.sbh-link { position: relative; }
.sbh--light .sbh-link[aria-expanded="true"]::after { content: ""; position: absolute; left: 16px; right: 16px; bottom: -2px; height: 2px; border-radius: 2px; background: var(--sb-orange); }
.sbh-mega--card { background: transparent; border: 0 !important; box-shadow: none; padding: 6px var(--sb-gutter) 28px; }
.sbh-sv { max-width: 1732px; margin-inline: auto; padding: 38px 46px 24px; border-radius: 18px; background: #FFFFFF; border: 1px solid #E6ECF3;
  box-shadow: 0 40px 80px -30px rgba(7, 28, 51, .35), 0 2px 8px rgba(7, 28, 51, .05); color: var(--sb-charcoal); }

.sbh-sv__head { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 32px; align-items: start; }
.sbh-sv__eyebrow { font: 600 .8125rem/1 var(--sb-font-body); letter-spacing: .22em; text-transform: uppercase; color: #64748B; }
.sbh-sv__title { margin-top: 14px; font-family: var(--sb-font-heading); font-stretch: 100%; font-weight: 700; font-size: clamp(1.75rem, 2.3vw, 2.5rem); line-height: 1.12; letter-spacing: -.02em; color: var(--sb-navy); }
.sbh-sv__title span { color: var(--sb-orange); }
.sbh-sv__lede { margin-top: 10px; max-width: 100ch; font-size: 1.125rem; line-height: 1.5; color: #475569; }
.sbh-sv__all { display: flex; flex-direction: column; gap: 6px; margin-top: 6px; padding: 8px 30px 8px 26px; border-left: 1px solid #D5DEE8; }
.sbh-sv__all strong { display: inline-flex; align-items: center; gap: 10px; font: 700 1.125rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: #0B63BE; }
.sbh-sv__all strong i { font-size: .875rem; transition: transform .2s; }
.sbh-sv__all small { font-size: .9375rem; color: #64748B; }
.sbh-sv__all:hover strong i { transform: translateX(4px); }

.sbh-sv__body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 30%); gap: 32px; margin-top: 30px; align-items: stretch; }
.sbh-sv__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.sbh-sv__card { display: flex; align-items: center; gap: 22px; height: 100%; padding: 20px 24px 20px 22px; border-radius: 12px; border: 1px solid #E2E8F0; background: #FFFFFF;
  transition: border-color .2s, box-shadow .2s, transform .2s; }
.sbh-sv__card:hover, .sbh-sv__card:focus-visible { border-color: #BFD6F0; box-shadow: 0 16px 32px -20px rgba(11, 99, 190, .45); transform: translateY(-2px); }
.sbh-sv__icon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 80px; height: 80px; border-radius: 12px; font-size: 2rem; }
.sbh-sv__icon--blue   { background: #EAF2FC; color: #0B63BE; }
.sbh-sv__icon--orange { background: #FFF2E6; color: #F27A0C; }
.sbh-sv__icon--purple { background: #F0EEFD; color: #4F46E5; }
.sbh-sv__icon--sky    { background: #EAF3FC; color: #1477D4; }
.sbh-sv__icon--green  { background: #EAF7EF; color: #16A34A; }
.sbh-sv__icon--red    { background: #FDEEEC; color: #E5452F; }
.sbh-sv__txt { flex: 1; min-width: 0; }
.sbh-sv__txt strong { display: block; font: 700 1.3125rem/1.2 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.01em; color: var(--sb-navy); transition: color .2s; }
.sbh-sv__txt small { display: block; margin-top: 8px; font-size: 1.0625rem; line-height: 1.45; color: #64748B; }
.sbh-sv__card:hover .sbh-sv__txt strong { color: #0B63BE; }
.sbh-sv__go { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 50%; background: #EEF4FB; color: #0A1F38; font-size: .9375rem; transition: background-color .2s, color .2s, transform .2s; }
.sbh-sv__card:hover .sbh-sv__go { background: #0B63BE; color: #FFFFFF; transform: translateX(3px); }

.sbh-sv__offer { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; align-items: flex-start; padding: 32px 30px 36px; border-radius: 14px;
  background: radial-gradient(120% 90% at 100% 100%, #0E2D52 0%, #071C33 55%, #06162A 100%); color: #FFFFFF; }
.sbh-sv__lines { position: absolute; right: 0; bottom: 0; width: 82%; height: 82%; z-index: -1; pointer-events: none; }
.sbh-sv__offer-eyebrow { font: 600 .875rem/1 var(--sb-font-body); letter-spacing: .2em; text-transform: uppercase; color: #FF8A00; }
.sbh-sv__offer-title { margin-top: 18px; font: 700 clamp(1.75rem, 2.1vw, 2.25rem)/1.1 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; }
.sbh-sv__offer-text { margin-top: 12px; max-width: 22rem; font-size: 1.1875rem; line-height: 1.4; color: #E2E8F0; }
.sbh-sv__chips { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 22px; }
.sbh-sv__chips span { display: inline-flex; align-items: center; gap: 12px; padding: 12px 20px; border-radius: 8px; border: 1px solid rgba(255, 255, 255, .22); background: rgba(255, 255, 255, .04); font-weight: 600; font-size: 1.0625rem; color: #FFFFFF; }
.sbh-sv__chips span i { font-size: 1.125rem; }
.sbh-sv__chips .is-price { color: #FF9A2E; }
.sbh-sv__checks { display: grid; gap: 10px; margin-top: 26px; font-size: 1.125rem; color: #E6EDF5; }
.sbh-sv__checks i { margin-right: 14px; color: #FF8A00; }
.sbh-sv__btn { margin-top: 30px; display: inline-flex; align-items: center; gap: 18px; padding: 17px 32px; border-radius: 8px; background: linear-gradient(180deg, #FF9A1F, #FF8400); color: #0A1F38; font: 700 1.1875rem/1 var(--sb-font-heading); font-stretch: 100%;
  box-shadow: 0 10px 24px -12px rgba(255, 138, 0, .9); transition: transform .2s, box-shadow .2s; }
.sbh-sv__btn i { transition: transform .2s; }
.sbh-sv__btn:hover { transform: translateY(-1px); box-shadow: 0 14px 28px -12px rgba(255, 138, 0, 1); }
.sbh-sv__btn:hover i { transform: translateX(4px); }

.sbh-sv__start { display: flex; align-items: center; gap: 24px; margin: 24px -18px 0; padding: 18px 32px 18px 28px; border-radius: 14px; background: #EEF4FB; transition: background-color .2s; }
.sbh-sv__start:hover { background: #E4EEF9; }
.sbh-sv__compass { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; border: 2px solid #0A1F38; color: #0A1F38; }
.sbh-sv__compass i { font-size: 1.375rem; }
.sbh-sv__start-txt { flex: 1; min-width: 0; }
.sbh-sv__start-txt strong { display: block; font: 700 1.1875rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: var(--sb-navy); }
.sbh-sv__start-txt small { display: block; margin-top: 4px; font-size: 1rem; color: #475569; }
.sbh-sv__start-link { display: inline-flex; align-items: center; gap: 10px; font: 700 1.1875rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: #0B63BE; white-space: nowrap; }
.sbh-sv__start-link i { transition: transform .2s; }
.sbh-sv__start:hover .sbh-sv__start-link i { transform: translateX(4px); }

@media (max-width: 1440px) {
  .sbh-sv { padding: 30px 32px 20px; }
  .sbh-sv__body { gap: 24px; }
  .sbh-sv__grid { gap: 14px; }
  .sbh-sv__card { gap: 16px; padding: 16px 18px; }
  .sbh-sv__icon { width: 60px; height: 60px; font-size: 1.5rem; }
  .sbh-sv__txt strong { font-size: 1.125rem; }
  .sbh-sv__txt small { font-size: .9375rem; margin-top: 6px; }
  .sbh-sv__go { width: 40px; height: 40px; }
  .sbh-sv__offer { padding: 26px 24px 28px; }
  .sbh-sv__offer-text, .sbh-sv__checks { font-size: 1rem; }
  .sbh-sv__chips span { padding: 10px 14px; font-size: .9375rem; }
  .sbh-sv__btn { padding: 15px 24px; font-size: 1.0625rem; }
  .sbh-sv__start { margin-inline: -10px; }
}
@media (max-width: 1200px) {
  .sbh-sv__lede { font-size: 1rem; }
  .sbh-sv__body { grid-template-columns: minmax(0, 1fr) 300px; }
  .sbh-sv__go { display: none; }
  .sbh-sv__chips { gap: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .sbh-sv__card, .sbh-sv__go, .sbh-sv__btn, .sbh-sv__btn i, .sbh-sv__all strong i, .sbh-sv__start-link i { transition: none; }
  .sbh-sv__card:hover, .sbh-sv__card:hover .sbh-sv__go, .sbh-sv__btn:hover { transform: none; }
}
@media (max-width: 1760px) {
  .sbh-sv__chips { gap: 10px; }
  .sbh-sv__chips span { gap: 10px; padding: 10px 14px; font-size: .9375rem; }
}
/* laptops and shorter screens: keep the whole card on screen */
@media (max-height: 960px) and (min-width: 1025px) {
  .sbh-mega--card { padding-bottom: 16px; }
  .sbh-sv { padding: 24px 30px 16px; }
  .sbh-sv__title { margin-top: 10px; font-size: clamp(1.625rem, 2vw, 2.125rem); }
  .sbh-sv__lede { margin-top: 6px; font-size: 1rem; }
  .sbh-sv__all { padding-block: 4px; }
  .sbh-sv__body { margin-top: 18px; }
  .sbh-sv__grid { gap: 12px; }
  .sbh-sv__card { padding: 12px 16px; }
  .sbh-sv__icon { width: 54px; height: 54px; font-size: 1.375rem; }
  .sbh-sv__txt small { margin-top: 4px; font-size: .9375rem; }
  .sbh-sv__offer { padding: 20px 22px 22px; }
  .sbh-sv__offer-title { margin-top: 10px; font-size: 1.625rem; }
  .sbh-sv__offer-text { margin-top: 6px; font-size: 1rem; }
  .sbh-sv__chips { margin-top: 14px; }
  .sbh-sv__chips span { padding: 8px 12px; font-size: .875rem; }
  .sbh-sv__checks { margin-top: 14px; gap: 6px; font-size: .9375rem; }
  .sbh-sv__btn { margin-top: 16px; padding: 12px 20px; font-size: 1rem; }
  .sbh-sv__start { margin-top: 14px; padding: 10px 22px; }
  .sbh-sv__compass { width: 40px; height: 40px; }
  .sbh-sv__start-txt strong, .sbh-sv__start-link { font-size: 1.0625rem; }
  .sbh-sv__start-txt small { font-size: .9375rem; }
}
@media (max-height: 840px) and (min-width: 1025px) {
  .sbh-sv__lede, .sbh-sv__all small, .sbh-sv__offer-text { display: none; }
  .sbh-sv__body { grid-template-columns: minmax(0, 1fr) 340px; }
  .sbh-sv__txt small { font-size: .875rem; line-height: 1.35; }
  .sbh-sv__offer-title { font-size: 1.5rem; }
  .sbh-sv__chips span { padding: 7px 10px; font-size: .8125rem; }
  .sbh-sv__go { width: 34px; height: 34px; }
}

/* ---------- Industries mega: floating card (reference design; reuses .sbh-sv head styles) ---------- */
.sbh-in { padding-bottom: 0; }
.sbh-in__body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(380px, 30%); gap: 56px; }
.sbh-in__main { position: relative; }
.sbh-in__main::after { content: ""; position: absolute; top: 0; bottom: 0; right: -28px; width: 1px; background: #E6ECF3; }
.sbh-in__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 64px; margin-top: 26px; border-top: 1px solid #EDF1F6; position: relative; }
.sbh-in__grid::before { content: ""; position: absolute; top: 18px; bottom: 18px; left: 50%; width: 1px; background: #EDF1F6; }
.sbh-in__grid li { border-bottom: 1px solid #EDF1F6; }
.sbh-in__grid li:nth-last-child(-n + 2) { border-bottom: 0; }
.sbh-in__item { display: flex; align-items: center; gap: 22px; padding: 20px 6px 20px 0; border-radius: 10px; transition: background-color .2s; }
.sbh-in__item:hover, .sbh-in__item:focus-visible { background: #F7FAFD; }
.sbh-in__icon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 66px; height: 66px; border-radius: 12px; font-size: 1.625rem; transition: transform .25s; }
.sbh-in__item:hover .sbh-in__icon { transform: translateY(-2px); }
.sbh-in__icon--blue   { background: #EAF2FC; color: #0B63BE; }
.sbh-in__icon--sky    { background: #EAF3FC; color: #1477D4; }
.sbh-in__icon--orange { background: #FFF1E3; color: #F27A0C; }
.sbh-in__icon--red    { background: #FDEEEE; color: #E14B4B; }
.sbh-in__icon--green  { background: #EAF7EF; color: #16A34A; }
.sbh-in__icon--purple { background: #F2EEFD; color: #7C3AED; }
.sbh-in__txt { flex: 1; min-width: 0; }
.sbh-in__txt strong { display: block; font: 700 1.25rem/1.2 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.01em; color: var(--sb-navy); transition: color .2s; }
.sbh-in__txt small { display: block; margin-top: 6px; font-size: 1.0625rem; color: #64748B; }
.sbh-in__item:hover .sbh-in__txt strong { color: #0B63BE; }
.sbh-in__chev { flex-shrink: 0; font-size: .875rem; color: #64748B; transition: transform .2s, color .2s; }
.sbh-in__item:hover .sbh-in__chev { transform: translateX(3px); color: #0B63BE; }

.sbh-in__feature { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; align-items: flex-start; padding: 46px 40px 40px; border-radius: 16px;
  background: radial-gradient(90% 70% at 100% 100%, #13365E 0%, #0A2340 45%, #071A30 100%); color: #FFFFFF; transition: box-shadow .25s; }
.sbh-in__feature:hover { box-shadow: 0 24px 50px -24px rgba(7, 28, 51, .8); }
.sbh-in__tower { position: absolute; right: 0; bottom: 0; width: 46%; height: 100%; z-index: -1; pointer-events: none; }
.sbh-in__lights rect { animation: sbh-in-flicker 5s ease-in-out infinite; }
.sbh-in__lights rect:nth-child(3n) { animation-delay: 1.6s; } .sbh-in__lights rect:nth-child(3n + 1) { animation-delay: 3.1s; }
@keyframes sbh-in-flicker { 50% { opacity: .35; } }
.sbh-in__feature-eyebrow { display: inline-flex; align-items: center; gap: 14px; font: 600 .875rem/1 var(--sb-font-mono); letter-spacing: .18em; text-transform: uppercase; color: #FF9A2E; }
.sbh-in__feature-eyebrow span { width: 28px; height: 2px; background: #FF8A00; }
.sbh-in__feature-title { margin-top: 26px; font: 700 clamp(2rem, 2.6vw, 2.75rem)/1.05 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; }
.sbh-in__feature-text { margin-top: 22px; max-width: 20rem; font-size: 1.1875rem; line-height: 1.5; color: #E2E8F0; }
.sbh-in__feature-rule { width: min(270px, 70%); height: 1px; margin-top: 30px; background: rgba(255, 255, 255, .16); }
.sbh-in__feature-big { margin-top: 26px; font: 800 clamp(3.5rem, 4.6vw, 4.75rem)/.95 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.03em; color: #FF8A00; }
.sbh-in__feature-cap { margin-top: 12px; font-size: 1.1875rem; color: #E2E8F0; }
.sbh-in__feature-link { margin-top: auto; padding-top: 34px; display: inline-flex; align-items: center; gap: 14px; font: 700 1.25rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: #FF9A2E; }
.sbh-in__feature-link i { transition: transform .2s; }
.sbh-in__feature:hover .sbh-in__feature-link i { transform: translateX(4px); }

.sbh-in__foot { display: flex; align-items: center; gap: 22px; margin: 32px -46px 0; padding: 22px 46px; border-top: 1px solid #E6ECF3; }
.sbh-in__foot-icon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 10px; background: #EAF2FC; color: #0B63BE; font-size: 1.375rem; }
.sbh-in__foot-q { font-size: 1.1875rem; color: var(--sb-navy); }
.sbh-in__foot-link { display: inline-flex; align-items: center; gap: 10px; font: 700 1.1875rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: #0B63BE; }
.sbh-in__all { margin-left: auto; display: inline-flex; align-items: center; gap: 12px; padding: 8px 6px 8px 38px; border-left: 1px solid #E6ECF3; font: 700 1.1875rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: var(--sb-navy); }
.sbh-in__foot-link i, .sbh-in__all i { transition: transform .2s; }
.sbh-in__foot-link:hover i, .sbh-in__all:hover i { transform: translateX(4px); }
.sbh-in__foot-link:hover, .sbh-in__all:hover { text-decoration: underline; }

@media (max-width: 1440px) {
  .sbh-in__body { gap: 40px; grid-template-columns: minmax(0, 1fr) minmax(320px, 30%); }
  .sbh-in__main::after { right: -20px; }
  .sbh-in__grid { column-gap: 40px; }
  .sbh-in__item { gap: 16px; padding-block: 14px; }
  .sbh-in__icon { width: 52px; height: 52px; font-size: 1.3rem; }
  .sbh-in__txt strong { font-size: 1.125rem; } .sbh-in__txt small { font-size: .9375rem; margin-top: 4px; }
  .sbh-in__feature { padding: 32px 28px 28px; }
  .sbh-in__feature-text, .sbh-in__feature-cap { font-size: 1.0625rem; }
  .sbh-in__feature-link { font-size: 1.125rem; }
  .sbh-in__foot { margin-inline: -32px; padding: 16px 32px; margin-top: 22px; }
  .sbh-in__foot-icon { width: 46px; height: 46px; font-size: 1.125rem; }
  .sbh-in__foot-q, .sbh-in__foot-link, .sbh-in__all { font-size: 1.0625rem; }
}
@media (max-width: 1200px) {
  .sbh-in__body { grid-template-columns: minmax(0, 1fr) 280px; gap: 32px; }
  .sbh-in__main::after { right: -16px; }
  .sbh-in__grid { column-gap: 24px; }
  .sbh-in__chev { display: none; }
  .sbh-in__feature-big { font-size: 3rem; }
}
@media (max-height: 960px) and (min-width: 1025px) {
  .sbh-in__grid { margin-top: 16px; }
  .sbh-in__item { padding-block: 10px; }
  .sbh-in__icon { width: 46px; height: 46px; font-size: 1.125rem; }
  .sbh-in__feature { padding: 24px 26px 22px; }
  .sbh-in__feature-title { margin-top: 14px; font-size: 2rem; }
  .sbh-in__feature-text { margin-top: 12px; }
  .sbh-in__feature-rule { margin-top: 16px; }
  .sbh-in__feature-big { margin-top: 14px; font-size: 3.25rem; }
  .sbh-in__feature-link { padding-top: 18px; }
  .sbh-in__foot { margin: 14px -30px 0; padding: 10px 30px; }
  .sbh-in__foot-icon { width: 40px; height: 40px; }
}
@media (max-height: 840px) and (min-width: 1025px) {
  .sbh-in__txt small { font-size: .875rem; }
  .sbh-in__item { padding-block: 7px; }
  .sbh-in__feature-text { font-size: .9375rem; }
  .sbh-in__feature-big { font-size: 2.75rem; }
}
@media (prefers-reduced-motion: reduce) {
  .sbh-in__lights rect { animation: none; }
  .sbh-in__item, .sbh-in__icon, .sbh-in__chev, .sbh-in__feature-link i, .sbh-in__foot-link i, .sbh-in__all i { transition: none; }
  .sbh-in__item:hover .sbh-in__icon { transform: none; }
}

/* ---------- Resources mega: floating card (reference design; reuses .sbh-sv shell) ---------- */
.sbh-rs { padding-bottom: 0; }
.sbh-rs__body { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(360px, 1fr); gap: 0; }
.sbh-rs__col { padding-right: 40px; }
.sbh-rs__col--mid { padding-left: 40px; border-left: 1px solid #E6ECF3; }
.sbh-rs__label { font: 600 .8125rem/1 var(--sb-font-body); letter-spacing: .22em; text-transform: uppercase; color: #64748B; margin-bottom: 20px; }
.sbh-rs__go { flex-shrink: 0; color: #FF8A00; font-size: 1rem; transition: transform .2s; }
.sbh-rs__txt { flex: 1; min-width: 0; }
.sbh-rs__txt strong { display: block; font: 700 1.1875rem/1.25 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.01em; color: var(--sb-navy); transition: color .2s; }
.sbh-rs__txt small { display: block; margin-top: 6px; font-size: 1rem; line-height: 1.4; color: #64748B; }

.sbh-rs__tools { display: grid; gap: 18px; }
.sbh-rs__tool { display: flex; align-items: center; gap: 20px; padding: 22px 24px; border-radius: 14px; border: 1px solid #E6ECF3; background: #FFFFFF; box-shadow: 0 14px 30px -26px rgba(7, 28, 51, .5); transition: border-color .2s, box-shadow .2s, transform .2s; }
.sbh-rs__tool:hover, .sbh-rs__tool:focus-visible { border-color: #FFD3A8; box-shadow: 0 18px 34px -24px rgba(255, 138, 0, .55); transform: translateY(-2px); }
.sbh-rs__tool:hover .sbh-rs__go, .sbh-rs__item:hover .sbh-rs__go { transform: translateX(4px); }
.sbh-rs__ticon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 62px; height: 62px; border-radius: 12px; background: #FFF1E3; color: #F27A0C; font-size: 1.5rem; }
.sbh-rs__gauge { flex-shrink: 0; width: 64px; height: 40px; overflow: visible; }
.sbh-rs__gauge text { font: 700 10px var(--sb-font-mono); fill: #0A1F38; }
.sbh-rs__gauge-val { stroke-dasharray: 100; stroke-dashoffset: 28; transition: stroke-dashoffset 1s cubic-bezier(.22, .61, .36, 1); }
.sbh-rs__tool:hover .sbh-rs__gauge-val { stroke-dashoffset: 8; }
.sbh-rs__chip { flex-shrink: 0; padding: 6px 10px; border-radius: 8px; background: #EAF7EF; color: #15803D; font: 700 .75rem/1 var(--sb-font-mono); letter-spacing: .08em; }
.sbh-rs__note { display: flex; align-items: center; gap: 8px; margin-top: 18px; font-size: .875rem; color: #64748B; }
.sbh-rs__note i { color: #16A34A; font-size: .8125rem; }

.sbh-rs__list li + li { border-top: 1px solid #EDF1F6; }
.sbh-rs__item { display: flex; align-items: center; gap: 20px; padding: 14px 8px 14px 0; border-radius: 10px; transition: background-color .2s; }
.sbh-rs__item:hover, .sbh-rs__item:focus-visible { background: #F7FAFD; }
.sbh-rs__item:hover .sbh-rs__txt strong, .sbh-rs__tool:hover .sbh-rs__txt strong { color: #0B63BE; }
.sbh-rs__icon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 12px; background: #EAF2FC; color: #0B63BE; font-size: 1.375rem; }

.sbh-rs__feature { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; justify-content: center; margin-left: 40px; padding: 40px 40px 36px; border-radius: 16px;
  background: radial-gradient(110% 90% at 100% 100%, #13365E 0%, #0A2340 50%, #071A30 100%); color: #FFFFFF; box-shadow: 0 30px 60px -36px rgba(7, 28, 51, .9); transition: box-shadow .25s; }
.sbh-rs__feature:hover { box-shadow: 0 34px 70px -34px rgba(7, 28, 51, 1); }
.sbh-rs__sigma { position: absolute; right: -24px; bottom: -36px; width: 46%; height: auto; z-index: -1; opacity: .9; transition: transform .6s cubic-bezier(.22, .61, .36, 1); }
.sbh-rs__feature:hover .sbh-rs__sigma { transform: translate(-6px, -6px); }
.sbh-rs__feyebrow { font: 600 .875rem/1.3 var(--sb-font-mono); letter-spacing: .16em; text-transform: uppercase; color: #3B8FF0; }
.sbh-rs__ftitle { margin-top: 18px; max-width: 14em; font: 800 clamp(1.75rem, 2.2vw, 2.375rem)/1.12 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; }
.sbh-rs__ftext { margin-top: 18px; max-width: 24rem; font-size: 1.125rem; line-height: 1.55; color: #E2E8F0; }
.sbh-rs__fmeta { display: flex; align-items: center; gap: 22px; margin-top: 28px; }
.sbh-rs__flink { display: inline-flex; align-items: center; gap: 12px; font: 700 1.25rem/1 var(--sb-font-heading); font-stretch: 100%; color: #FF8A00; }
.sbh-rs__flink i { transition: transform .2s; } .sbh-rs__feature:hover .sbh-rs__flink i { transform: translateX(4px); }
.sbh-rs__fread { display: inline-flex; align-items: center; gap: 8px; padding-left: 22px; border-left: 1px solid rgba(255, 255, 255, .25); font-size: 1rem; color: #CBD5E1; }

.sbh-rs__foot { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 30px -46px 0; border-top: 1px solid #E6ECF3; background: #F8FAFD; border-radius: 0 0 18px 18px; }
.sbh-rs__footlink { display: flex; align-items: center; gap: 16px; padding: 18px 46px; transition: background-color .2s; }
.sbh-rs__footlink + .sbh-rs__footlink { border-left: 1px solid #E6ECF3; }
.sbh-rs__footlink:hover { background: #EEF4FB; }
.sbh-rs__footlink > span:nth-child(2) { flex: 1; min-width: 0; }
.sbh-rs__footlink strong { display: block; font: 700 1rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: var(--sb-navy); }
.sbh-rs__footlink small { display: block; margin-top: 3px; font-size: .875rem; color: #64748B; }
.sbh-rs__footlink > i { color: #0B63BE; font-size: .875rem; transition: transform .2s; }
.sbh-rs__footlink:hover > i { transform: translateX(4px); }
.sbh-rs__footicon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; background: #FFFFFF; border: 1px solid #E2E8F0; color: #0B63BE; }

@media (max-width: 1440px) {
  .sbh-rs__body { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(300px, .95fr); }
  .sbh-rs__col { padding-right: 28px; } .sbh-rs__col--mid { padding-left: 28px; }
  .sbh-rs__feature { margin-left: 28px; padding: 30px 28px; }
  .sbh-rs__tool { gap: 14px; padding: 16px 18px; }
  .sbh-rs__ticon { width: 50px; height: 50px; font-size: 1.25rem; }
  .sbh-rs__icon { width: 46px; height: 46px; font-size: 1.125rem; }
  .sbh-rs__item { gap: 14px; padding-block: 11px; }
  .sbh-rs__txt strong { font-size: 1.0625rem; } .sbh-rs__txt small { font-size: .9375rem; }
  .sbh-rs__gauge { display: none; }
  .sbh-rs__ftext { font-size: 1rem; }
  .sbh-rs__flink { font-size: 1.125rem; }
  .sbh-rs__foot { margin-inline: -32px; }
  .sbh-rs__footlink { padding: 14px 32px; }
}
@media (max-width: 1200px) {
  .sbh-rs__body { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); row-gap: 24px; }
  .sbh-rs__feature { grid-column: 1 / -1; margin-left: 0; padding: 24px 28px; }
  .sbh-rs__ftitle { max-width: none; font-size: 1.5rem; margin-top: 10px; }
  .sbh-rs__ftext { max-width: 40rem; margin-top: 8px; }
  .sbh-rs__fmeta { margin-top: 14px; }
  .sbh-rs__sigma { width: 18%; bottom: -40px; }
  .sbh-rs__chip { display: none; }
}
@media (max-height: 960px) and (min-width: 1025px) {
  .sbh-rs__label { margin-bottom: 12px; }
  .sbh-rs__tools { gap: 12px; }
  .sbh-rs__tool { padding: 14px 18px; }
  .sbh-rs__item { padding-block: 9px; }
  .sbh-rs__feature { padding: 26px 28px; }
  .sbh-rs__ftitle { margin-top: 12px; }
  .sbh-rs__ftext { margin-top: 10px; }
  .sbh-rs__fmeta { margin-top: 18px; }
  .sbh-rs__foot { margin: 18px -30px 0; }
  .sbh-rs__footlink { padding: 11px 30px; }
}
@media (max-height: 840px) and (min-width: 1025px) {
  .sbh-rs__note, .sbh-rs__footlink small { display: none; }
  .sbh-rs__txt small { font-size: .875rem; margin-top: 3px; }
  .sbh-rs__icon { width: 40px; height: 40px; }
  .sbh-rs__ftext { font-size: .9375rem; }
}
@media (prefers-reduced-motion: reduce) {
  .sbh-rs__tool, .sbh-rs__go, .sbh-rs__gauge-val, .sbh-rs__sigma, .sbh-rs__flink i, .sbh-rs__footlink > i { transition: none; }
  .sbh-rs__tool:hover, .sbh-rs__feature:hover .sbh-rs__sigma { transform: none; }
}
.sbh-rs__fmeta { flex-wrap: wrap; row-gap: 10px; }
.sbh-rs__flink, .sbh-rs__fread { white-space: nowrap; }
@media (max-width: 1440px) {
  .sbh-rs__chip { display: none; }
  .sbh-rs__fread { padding-left: 16px; }
  .sbh-rs__fmeta { gap: 16px; }
}

/* Smallest phones (320 px): the social icons in the utility bar no longer fit */
@media (max-width: 359px) { .sbh-util__icon { display: none; } }

/* sbs-service-detail */
/* ==========================================================================
   Service detail pages (/services/<slug>/), generated by tools/gen-service-pages.js
   Prefix .sbsd-  ·  motion: js/service-detail.js adds .sbsd-js + .is-in (once), off for reduced motion
   ========================================================================== */
.sbsd {
  --sd-navy: #0A1F38; --sd-ink: #0B63BE; --sd-orange: #FF8A00; --sd-text: #475569; --sd-muted: #64748B;
  --sd-line: #E2E8F0; --sd-soft: #F4F7FB; --sd-green: #16A34A;
  position: relative; font-family: var(--sb-font-body); color: var(--sb-charcoal);
}
.sbsd *, .sbsd *::before, .sbsd *::after { box-sizing: border-box; }
.sbsd-wrap { max-width: 1760px; margin-inline: auto; padding-inline: var(--sb-gutter); position: relative; z-index: 1; }
.sbsd :where(h1, h2, h3, p, ul, ol, dl, dd, figure) { margin: 0; }
.sbsd :where(ul, ol) { padding: 0; list-style: none; }
.sbsd a { text-decoration: none; color: inherit; }
.sbsd-head { margin-bottom: 32px; }
.sbsd-head--split { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 32px; }
.sbsd-h2 { font-family: var(--sb-font-heading); font-stretch: 100%; font-weight: 700; font-size: clamp(1.75rem, 2.4vw, 2.5rem); line-height: 1.12; letter-spacing: -.02em; color: var(--sd-navy); }
.sbsd-sub { margin-top: 10px; font-size: 1.125rem; line-height: 1.5; color: var(--sd-muted); }
.sbsd-eyebrow { display: inline-flex; align-items: center; gap: 14px; font: 600 .8125rem/1 var(--sb-font-mono); letter-spacing: .2em; text-transform: uppercase; color: var(--sd-navy); }
.sbsd-eyebrow span { width: 40px; height: 2px; background: var(--sd-orange); }

/* buttons */
.sbsd-actions { display: flex; flex-wrap: wrap; gap: 14px; }
.sbsd-btn { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 54px; padding: 0 28px; border-radius: 8px; font: 700 1.0625rem/1 var(--sb-font-heading); font-stretch: 100%; transition: transform .2s, box-shadow .2s, background-color .2s, border-color .2s; }
.sbsd-btn i { font-size: .875rem; transition: transform .2s; }
.sbsd-btn:hover i.fa-arrow-right { transform: translateX(4px); }
.sbsd-btn--primary { background: linear-gradient(180deg, #FF9A1F, #FF8400); color: var(--sd-navy); box-shadow: 0 12px 26px -14px rgba(255, 138, 0, .95); }
.sbsd-btn--primary:hover { transform: translateY(-1px); box-shadow: 0 16px 30px -14px rgba(255, 138, 0, 1); }
.sbsd-btn--ghost { background: #FFFFFF; border: 1px solid #D5DEE8; color: var(--sd-navy); }
.sbsd-btn--ghost i.fa-chart-column { color: var(--sd-orange); }
.sbsd-btn--ghost:hover { border-color: var(--sd-ink); }
.sbsd-btn--onDark { border: 1px solid rgba(255, 255, 255, .35); color: #FFFFFF; }
.sbsd-btn--onDark:hover { border-color: #FFFFFF; background: rgba(255, 255, 255, .06); }
.sbsd .sbsd-link { display: inline-flex; align-items: center; gap: 10px; font-weight: 700; color: var(--sd-ink); }
.sbsd-link i { font-size: .8125rem; transition: transform .2s; }
.sbsd-link:hover i { transform: translateX(4px); }
.sbsd .sbsd-chipbtn { display: inline-flex; align-items: center; gap: 10px; padding: 12px 18px; border-radius: 8px; background: #EAF2FC; color: var(--sd-ink); font-weight: 700; font-size: .9375rem; transition: background-color .2s; }
.sbsd-chipbtn:hover { background: #DCEAFA; }

/* ---------- 01 hero ---------- */
.sbsd-hero { overflow: hidden; padding: 28px 0 64px; background: linear-gradient(180deg, #F8FAFD 0%, #EEF3F9 100%); }
.sbsd-hero__curves { position: absolute; right: -10%; bottom: -55%; width: 70%; aspect-ratio: 1; border-radius: 50%; border: 1px solid rgba(255, 138, 0, .22); pointer-events: none;
  box-shadow: 0 0 0 48px rgba(255, 255, 255, 0), 0 0 0 49px rgba(255, 138, 0, .1), 0 0 0 110px rgba(255, 255, 255, 0), 0 0 0 111px rgba(11, 99, 190, .07); }
.sbsd-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(rgba(10, 31, 56, .07) 1px, transparent 1.2px) 0 0 / 22px 22px;
  -webkit-mask-image: radial-gradient(60% 80% at 0% 100%, #000, transparent 70%); mask-image: radial-gradient(60% 80% at 0% 100%, #000, transparent 70%); }
.sbsd-hero__grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.1fr); gap: 56px; align-items: center; }
.sbsd-crumbs ol { display: flex; flex-wrap: wrap; gap: 6px 10px; font-size: .9375rem; color: var(--sd-muted); }
.sbsd-crumbs li + li::before { content: "\203A"; margin-right: 10px; color: #94A3B8; }
.sbsd-crumbs a:hover { color: var(--sd-ink); }
.sbsd-crumbs [aria-current] { color: var(--sd-navy); font-weight: 600; }
.sbsd-hero .sbsd-eyebrow { margin-top: 34px; }
.sbsd-hero__title { margin-top: 18px; font-family: var(--sb-font-heading); font-stretch: 100%; font-weight: 800; font-size: clamp(2.375rem, 3.8vw, 4rem); line-height: 1.04; letter-spacing: -.03em; color: var(--sd-navy); }
.sbsd-hero__sub { display: block; margin-top: 10px; font-weight: 500; font-size: .78em; line-height: 1.1; letter-spacing: -.025em; }
.sbsd-hero__sub strong { display: block; font-weight: 800; color: var(--sd-orange); }
.sbsd-hero__lede { margin-top: 24px; max-width: 38rem; font-size: 1.1875rem; line-height: 1.6; color: var(--sd-text); }
.sbsd-hero .sbsd-actions { margin-top: 32px; }
.sbsd-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 44px; padding-top: 28px; border-top: 1px solid #DCE4EE; }
.sbsd-points li { display: flex; align-items: flex-start; gap: 12px; }
.sbsd-points__icon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: #E6EFFA; color: var(--sd-ink); font-size: 1rem; }
.sbsd-points li:last-child .sbsd-points__icon { background: #FFF0E0; color: #E06A00; }
.sbsd-points strong { display: block; font-weight: 700; font-size: .9375rem; color: var(--sd-navy); }
.sbsd-points small { display: block; margin-top: 3px; font-size: .875rem; line-height: 1.4; color: var(--sd-muted); }
.sbsd-hero__visual { position: relative; }
.sbsd-hero__visual::before { content: ""; position: absolute; inset: 8% -4% -6% 10%; border-radius: 40px; background: radial-gradient(closest-side, rgba(11, 99, 190, .22), transparent); filter: blur(30px); z-index: -1; }

/* ---------- product mock-ups ---------- */
.sbsd-app { --a-pad: 18px; display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 14px; font-size: 12px; color: #334155; }
.sbsd-app--solo { grid-template-columns: minmax(0, 1fr); }
.sbsd-app__side { border-radius: 14px; padding: 18px 12px; background: linear-gradient(180deg, #0C2747, #071A30); color: #B8C6D8; box-shadow: 0 30px 60px -30px rgba(7, 28, 51, .7); margin-block: 26px; }
.sbsd-app__brand { display: block; padding: 0 8px 16px; font: 800 .9375rem/1 var(--sb-font-heading); letter-spacing: .06em; color: #FFFFFF; }
.sbsd-app__brand b { color: var(--sd-orange); }
.sbsd-app__side li { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 8px; font-size: 12px; }
.sbsd-app__side li.is-on { background: rgba(255, 255, 255, .08); color: #FFFFFF; }
.sbsd-app__side li i { width: 14px; font-size: 11px; text-align: center; }
.sbsd-app__main { display: grid; gap: 12px; align-content: start; padding: var(--a-pad); border-radius: 16px; background: #FFFFFF; border: 1px solid #E3E9F1; box-shadow: 0 40px 80px -36px rgba(7, 28, 51, .45), 0 2px 6px rgba(7, 28, 51, .05); }
.sbsd-app__bar { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.sbsd-app__bar p { font: 700 1rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: var(--sd-navy); }
.sbsd-app__dots { display: flex; gap: 4px; } .sbsd-app__dots i { width: 4px; height: 4px; border-radius: 50%; background: #94A3B8; }
.sbsd-live { display: inline-flex; align-items: center; gap: 6px; padding: 4px 9px; border-radius: 999px; background: #EAF7EF; color: var(--sd-green); font-weight: 600; font-size: 11px; }
.sbsd-live::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; animation: sbsd-pulse 2s ease-in-out infinite; }
@keyframes sbsd-pulse { 50% { opacity: .35; } }
.sbsd-kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.sbsd-kpis--stack { grid-template-columns: 1fr; }
.sbsd-kpi { padding: 10px 12px; border-radius: 10px; border: 1px solid var(--sd-line); background: #FBFCFE; min-width: 0; }
.sbsd-kpi span { display: block; font-size: 10.5px; color: var(--sd-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sbsd-kpi strong { display: block; margin-top: 4px; font: 700 1.125rem/1.1 var(--sb-font-heading); font-stretch: 100%; color: var(--sd-navy); white-space: nowrap; }
.sbsd-kpi em { display: inline-flex; align-items: center; gap: 4px; margin-top: 4px; font-style: normal; font-weight: 600; font-size: 10.5px; color: var(--sd-green); }
.sbsd-kpi em i { font-size: 8px; }
.sbsd-tile { min-width: 0; padding: 12px; border-radius: 10px; border: 1px solid var(--sd-line); }
.sbsd-tile__title { margin-bottom: 8px; font-weight: 700; font-size: 11.5px; color: var(--sd-navy); }
.sbsd-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.sbsd-row--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.sbsd-chart { display: block; width: 100%; height: auto; overflow: visible; }
.sbsd-grid { stroke: #EEF2F7; stroke-width: 1; }
.sbsd-axis { font: 9px var(--sb-font-body); fill: #94A3B8; }
.sbsd-area { fill: rgba(11, 99, 190, .07); }
.sbsd-band { fill: rgba(255, 138, 0, .14); }
.sbsd-threshold { stroke: #E5452F; stroke-width: 1.2; stroke-dasharray: 4 4; }
.sbsd-line { fill: none; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1; stroke-dashoffset: 0; }
.sbsd-line--0 { stroke: var(--sd-ink); }
.sbsd-line--1 { stroke: var(--sd-orange); }
.sbsd-dot { fill: #FFFFFF; stroke: var(--sd-ink); stroke-width: 2; }

.sbsd-bars { display: flex; align-items: flex-end; gap: 6px; height: 92px; }
.sbsd-bar { flex: 1; height: var(--v); border-radius: 3px 3px 1px 1px; background: linear-gradient(180deg, #4C93E6, #1D66C2); transform-origin: 50% 100%; }
.sbsd-bar.is-hi { background: linear-gradient(180deg, #FFA43D, #FF7A00); }
.sbsd-hbars { display: grid; gap: 8px; }
.sbsd-hbars li { display: grid; grid-template-columns: minmax(64px, 1fr) 1.3fr 34px; align-items: center; gap: 8px; font-size: 10.5px; color: var(--sd-text); }
.sbsd-hbars span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sbsd-hbars i { position: relative; height: 7px; border-radius: 4px; background: #EEF2F7; overflow: hidden; }
.sbsd-hbars i::after { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--v); border-radius: 4px; background: linear-gradient(90deg, #1D66C2, #5AA2FF); transform-origin: 0 50%; }
.sbsd-hbars li:first-child i::after { background: linear-gradient(90deg, #FF7A00, #FFA43D); }
.sbsd-hbars b { text-align: right; font-weight: 600; color: var(--sd-navy); }
.sbsd-donutwrap { display: flex; align-items: center; gap: 12px; }
.sbsd-donut { width: 78px; height: 78px; flex-shrink: 0; transform: rotate(-90deg); }
.sbsd-donut__bg { fill: none; stroke: #EEF2F7; stroke-width: 6; }
.sbsd-legend { display: grid; gap: 6px; flex: 1; min-width: 0; font-size: 10.5px; }
.sbsd-legend li { display: flex; align-items: center; gap: 6px; }
.sbsd-legend i { width: 8px; height: 8px; border-radius: 2px; flex-shrink: 0; }
.sbsd-legend b { margin-left: auto; font-weight: 600; color: var(--sd-navy); }
.sbsd-list li { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 7px 0; border-bottom: 1px solid #F0F3F8; font-size: 11px; color: var(--sd-text); }
.sbsd-list li:last-child { border-bottom: 0; }
.sbsd-list span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sbsd-list b { color: var(--sd-navy); margin-right: 6px; }
.sbsd-risk { flex-shrink: 0; font-style: normal; font-weight: 700; padding: 3px 8px; border-radius: 999px; color: #B45309; background: rgba(255, 138, 0, calc(var(--r) / 400%)); background: color-mix(in srgb, #FF8A00 calc(var(--r) * .3), #FFFFFF); }
.sbsd-pill { flex-shrink: 0; font-style: normal; font-weight: 600; font-size: 10px; padding: 3px 9px; border-radius: 999px; background: #EAF2FC; color: var(--sd-ink); }
.sbsd-pill.is-warn, i.is-warn { color: #C2410C; } .sbsd-pill.is-warn { background: #FFF1E3; }
.sbsd-pill.is-ok, i.is-ok { color: var(--sd-green); } .sbsd-pill.is-ok { background: #EAF7EF; }
.sbsd-pill.is-mute { background: #F1F5F9; color: var(--sd-muted); }
.sbsd-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.sbsd-chips span { padding: 6px 12px; border-radius: 999px; border: 1px solid var(--sd-line); font-weight: 600; font-size: 11px; color: var(--sd-text); }
.sbsd-chips .is-on { background: var(--sd-navy); border-color: var(--sd-navy); color: #FFFFFF; }

/* automation flow */
.sbsd-flow { display: flex; align-items: center; padding: 14px; border-radius: 12px; background: var(--sd-soft); }
.sbsd-node { flex: 0 1 25%; display: grid; justify-items: center; gap: 4px; padding: 12px 6px; border-radius: 10px; background: #FFFFFF; border: 1px solid var(--sd-line); text-align: center; box-shadow: 0 8px 18px -14px rgba(7, 28, 51, .4); }
.sbsd-node i { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%; background: #EAF2FC; color: var(--sd-ink); font-size: 14px; }
.sbsd-node:last-child i { background: #FFF0E0; color: #E06A00; }
.sbsd-node b { font-size: 11.5px; color: var(--sd-navy); }
.sbsd-node small { font-size: 10px; color: var(--sd-muted); }
.sbsd-wire { flex: 1 1 18px; min-width: 10px; height: 2px; background: repeating-linear-gradient(90deg, var(--sd-orange) 0 6px, transparent 6px 11px) 0 0 / 22px 2px; animation: sbsd-flow 1s linear infinite; }
@keyframes sbsd-flow { to { background-position: 22px 0; } }
.sbsd-compare { display: grid; gap: 12px; }
.sbsd-compare li { display: grid; grid-template-columns: 1fr 1.6fr auto; align-items: center; gap: 10px; font-size: 11px; color: var(--sd-text); }
.sbsd-compare div { display: grid; gap: 3px; }
.sbsd-compare i { display: block; height: 7px; border-radius: 4px; transform-origin: 0 50%; }
.sbsd-compare .is-before, .sbsd-key .is-before { width: var(--a); background: #A9BBD1; }
.sbsd-compare .is-after, .sbsd-key .is-after { width: var(--b); background: var(--sd-orange); }
.sbsd-compare b { font-weight: 700; color: var(--sd-navy); white-space: nowrap; } .sbsd-compare em { font-style: normal; font-weight: 400; color: var(--sd-muted); }
.sbsd-key { display: flex; gap: 16px; margin-top: 12px; font-size: 10.5px; color: var(--sd-muted); }
.sbsd-key span { display: inline-flex; align-items: center; gap: 6px; }
.sbsd-key i { width: 14px !important; height: 6px; border-radius: 3px; }

/* GenAI chat */
.sbsd-chat { display: grid; gap: 10px; padding: 14px; border-radius: 12px; background: var(--sd-soft); }
.sbsd-msg { max-width: 88%; padding: 10px 13px; border-radius: 12px; font-size: 12px; line-height: 1.5; }
.sbsd-msg--user { justify-self: end; background: var(--sd-navy); color: #FFFFFF; border-bottom-right-radius: 4px; }
.sbsd-msg--ai { background: #FFFFFF; border: 1px solid var(--sd-line); border-bottom-left-radius: 4px; }
.sbsd-msg__who { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 4px; font-weight: 700; font-size: 11px; color: var(--sd-ink); }
.sbsd-msg__who i { color: var(--sd-orange); }
.sbsd-cites { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px !important; }
.sbsd-cites span { display: inline-flex; align-items: center; gap: 5px; padding: 3px 8px; border-radius: 6px; background: #EAF2FC; color: var(--sd-ink); font-weight: 600; font-size: 10px; }
.sbsd-guard { display: flex; align-items: center; gap: 6px; font-size: 10.5px; color: var(--sd-green); font-weight: 600; }
.sbsd-radar { display: block; width: 100%; max-width: 180px; height: auto; margin-inline: auto; overflow: visible; }
.sbsd-radar__ring { fill: none; stroke: #E2E8F0; }
.sbsd-radar__val { fill: rgba(11, 99, 190, .18); stroke: var(--sd-ink); stroke-width: 1.5; stroke-linejoin: round; transform-origin: 70px 62px; }
.sbsd-radar text { font: 7px var(--sb-font-body); fill: var(--sd-muted); }
.sbsd-matrix { position: relative; height: 230px; margin: 4px 0 18px 18px; border-left: 1px solid #CBD5E1; border-bottom: 1px solid #CBD5E1;
  background: linear-gradient(#F8FAFD, #F8FAFD) 0 0 / 50% 50% no-repeat, linear-gradient(rgba(255, 138, 0, .07), rgba(255, 138, 0, .07)) 100% 0 / 50% 50% no-repeat; }
.sbsd-matrix__q { position: absolute; right: 8px; top: 8px; font: 600 9.5px/1 var(--sb-font-mono); letter-spacing: .1em; text-transform: uppercase; color: #C2410C; }
.sbsd-matrix__q--2 { right: auto; left: 8px; color: var(--sd-muted); }
.sbsd-matrix__x, .sbsd-matrix__y { position: absolute; font-style: normal; font-size: 10px; color: var(--sd-muted); }
.sbsd-matrix__x { right: 0; bottom: -17px; } .sbsd-matrix__y { left: -18px; top: 0; writing-mode: vertical-rl; transform: rotate(180deg); }
.sbsd-pt { position: absolute; left: var(--x); bottom: var(--y); width: 12px; height: 12px; margin: 0 0 -6px -6px; border-radius: 50%; background: #5AA2FF; box-shadow: 0 0 0 4px rgba(90, 162, 255, .2); }
.sbsd-pt.is-hi { background: var(--sd-orange); box-shadow: 0 0 0 4px rgba(255, 138, 0, .22); }
.sbsd-pt b { position: absolute; left: 50%; bottom: 16px; transform: translateX(-50%); white-space: nowrap; font-weight: 600; font-size: 10px; color: var(--sd-navy); }

/* MLOps */
.sbsd-stages { display: flex; flex-wrap: wrap; gap: 6px; }
.sbsd-stage { display: inline-flex; align-items: center; gap: 6px; padding: 7px 11px; border-radius: 8px; border: 1px solid var(--sd-line); font-weight: 600; font-size: 11px; color: var(--sd-muted); }
.sbsd-stage i { font-size: 9px; }
.sbsd-stage.is-ok { background: #EAF7EF; border-color: #C9EBD5; color: var(--sd-green); }
.sbsd-stage.is-run { background: #EAF2FC; border-color: #C7DBF3; color: var(--sd-ink); }
.sbsd-stage.is-run i { animation: sbsd-spin 1.6s linear infinite; }
@keyframes sbsd-spin { to { transform: rotate(360deg); } }
.sbsd-table { width: 100%; border-collapse: collapse; font-size: 11px; }
.sbsd-table th, .sbsd-table td { padding: 7px 4px; border-bottom: 1px solid #F0F3F8; text-align: left; color: var(--sd-text); white-space: nowrap; }
.sbsd-table tr:last-child > * { border-bottom: 0; }
.sbsd-table th { color: var(--sd-navy); font-weight: 700; }
.sbsd-tile--spark .sbsd-chart { margin-top: 6px; }
.sbsd-big { display: block; font: 700 1.25rem/1 var(--sb-font-heading); font-stretch: 100%; color: var(--sd-navy); }

/* vision + documents */
.sbsd-vision { position: relative; aspect-ratio: 16 / 10; border-radius: 12px; overflow: hidden; background: #0A1F38; }
.sbsd-vision img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(1.05); }
.sbsd-box { position: absolute; left: var(--x); top: var(--y); width: var(--w); height: var(--h); border: 2px solid #FF8A00; border-radius: 6px; box-shadow: 0 0 0 999px rgba(4, 18, 31, 0) inset; }
.sbsd-box b { position: absolute; left: -2px; top: -22px; padding: 3px 7px; border-radius: 4px; background: #FF8A00; color: var(--sd-navy); font-size: 10px; white-space: nowrap; }
.sbsd-box.is-ok { border-color: #4ADE80; } .sbsd-box.is-ok b { background: #4ADE80; }
.sbsd-box.is-mid { border-color: #FACC15; } .sbsd-box.is-mid b { background: #FACC15; }
.sbsd-scan { position: absolute; left: 0; right: 0; top: 0; height: 30%; background: linear-gradient(180deg, transparent, rgba(90, 162, 255, .28)); border-bottom: 1px solid rgba(140, 195, 255, .8); animation: sbsd-scan 3.6s ease-in-out infinite; }
@keyframes sbsd-scan { 0% { transform: translateY(-100%); } 60%, 100% { transform: translateY(340%); } }
.sbsd-doc { display: grid; grid-template-columns: .8fr 1.2fr; gap: 14px; }
.sbsd-doc__page { display: grid; align-content: start; gap: 9px; padding: 16px 14px; border-radius: 8px; background: #FBFCFE; border: 1px solid var(--sd-line); box-shadow: 4px 4px 0 #EEF2F7; }
.sbsd-doc__page i { display: block; width: var(--w); height: 6px; border-radius: 3px; background: #E2E8F0; }
.sbsd-doc__page i.is-hl { background: rgba(11, 99, 190, .28); outline: 1px solid rgba(11, 99, 190, .5); outline-offset: 2px; }
.sbsd-fields { display: grid; gap: 4px; }
.sbsd-fields li { display: grid; grid-template-columns: 92px 1fr 40px; align-items: center; gap: 8px; padding: 6px 0; border-bottom: 1px solid #F0F3F8; font-size: 11px; }
.sbsd-fields span { color: var(--sd-muted); } .sbsd-fields b { color: var(--sd-navy); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sbsd-fields em { font-style: normal; font-weight: 700; font-size: 10px; color: var(--sd-green); text-align: right; }

/* ---------- 02 what you get ---------- */
.sbsd-get { padding: 88px 0 40px; background: #FFFFFF; }
.sbsd-get__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.sbsd-get__card { position: relative; display: block; height: 100%; padding: 28px 28px 30px; border-radius: 14px; border: 1px solid var(--sd-line); background: #FFFFFF; box-shadow: 0 18px 40px -34px rgba(7, 28, 51, .4); transition: border-color .25s, box-shadow .25s, transform .25s; }
.sbsd-get__card:hover { border-color: #BFD6F0; box-shadow: 0 24px 44px -28px rgba(11, 99, 190, .45); transform: translateY(-3px); }
.sbsd-get__icon { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 12px; font-size: 1.375rem; }
.sbsd-tone--blue { background: #EAF2FC; color: var(--sd-ink); }
.sbsd-tone--navy { background: #EEF2F7; color: var(--sd-navy); }
.sbsd-tone--orange { background: #FFF1E3; color: #EA6A00; }
.sbsd-get__go { position: absolute; top: 26px; right: 26px; display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: #F1F6FC; color: var(--sd-ink); font-size: .8125rem; transition: background-color .2s, color .2s, transform .2s; }
.sbsd-get__card:hover .sbsd-get__go { background: var(--sd-ink); color: #FFFFFF; transform: translateX(2px); }
.sbsd-get__card strong { display: block; margin-top: 22px; font: 700 1.25rem/1.25 var(--sb-font-heading); font-stretch: 100%; color: var(--sd-navy); }
.sbsd-get__card small { display: block; margin-top: 10px; font-size: 1rem; line-height: 1.55; color: var(--sd-muted); }

/* ---------- 03 approach ---------- */
.sbsd-approach { padding: 64px 0 96px; background: #FFFFFF; }
.sbsd-steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 28px; counter-reset: step; }
.sbsd-step { position: relative; }
.sbsd-step:not(:last-child)::after { content: ""; position: absolute; top: 28px; left: 76px; right: -6px; height: 0; border-top: 1.5px dashed #C9D5E3; }
.sbsd-step:not(:last-child)::before { content: ""; position: absolute; top: 24px; right: -4px; width: 8px; height: 8px; border-top: 1.5px solid #9FB3CC; border-right: 1.5px solid #9FB3CC; transform: rotate(45deg); }
.sbsd-step__icon { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 14px; font-size: 1.5rem; background: #FFF1E3; color: #EA6A00; box-shadow: 0 10px 22px -16px rgba(234, 106, 0, .7); }
.sbsd-step:nth-child(3) .sbsd-step__icon, .sbsd-step:nth-child(4) .sbsd-step__icon { background: #EAF2FC; color: var(--sd-ink); box-shadow: 0 10px 22px -16px rgba(11, 99, 190, .7); }
.sbsd-step__num { display: block; margin-top: 22px; font: 700 1.0625rem/1 var(--sb-font-mono); color: var(--sd-navy); }
.sbsd-step strong { display: block; margin-top: 6px; font: 700 1.25rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: var(--sd-navy); }
.sbsd-step small { display: block; margin-top: 10px; max-width: 17rem; font-size: 1rem; line-height: 1.55; color: var(--sd-muted); }

/* ---------- 04 impact ---------- */
.sbsd-impact { overflow: hidden; padding: 96px 0; background: linear-gradient(180deg, #F3F7FC, #F8FAFD); }
.sbsd-impact__glow { position: absolute; left: -12%; top: -30%; width: 55%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(closest-side, rgba(90, 162, 255, .35), transparent); pointer-events: none; }
.sbsd-impact__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); gap: 72px; align-items: center; }
.sbsd-impact__visual { max-width: 760px; }
.sbsd-impact__text { margin-top: 18px; max-width: 36rem; font-size: 1.1875rem; line-height: 1.6; color: var(--sd-text); }
.sbsd-checks { display: grid; gap: 18px; margin-top: 32px; }
.sbsd-checks li { display: flex; align-items: center; gap: 16px; font-weight: 600; font-size: 1.0625rem; color: var(--sd-navy); }
.sbsd-checks i { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: var(--sd-orange); color: #FFFFFF; font-size: .75rem; box-shadow: 0 6px 14px -6px rgba(255, 138, 0, .9); }

/* ---------- 05 tools ---------- */
.sbsd-tools { padding: 88px 0 40px; background: #FFFFFF; }
.sbsd-tools__list { display: flex; flex-wrap: wrap; gap: 14px; }
.sbsd-tool { flex: 1 1 auto; display: flex; align-items: center; justify-content: center; gap: 12px; white-space: nowrap; min-height: 64px; padding: 0 24px; border-radius: 12px; border: 1px solid var(--sd-line); background: #FFFFFF; font-weight: 600; font-size: 1rem; color: #334155; box-shadow: 0 10px 24px -22px rgba(7, 28, 51, .5); transition: transform .2s, border-color .2s; }
.sbsd-tool:hover { transform: translateY(-2px); border-color: #C7D6E8; }
.sbsd-tool__icon { width: 28px; text-align: center; font-size: 1.5rem; color: var(--brand); }
.sbsd-tool__logo { width: 28px; height: 28px; flex-shrink: 0; background: var(--brand); -webkit-mask: var(--logo) center / contain no-repeat; mask: var(--logo) center / contain no-repeat; }

/* ---------- 06 case study ---------- */
.sbsd-case { padding: 72px 0 40px; background: #FFFFFF; }
.sbsd-case__card { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.3fr) minmax(0, .75fr); align-items: stretch; gap: 0; border-radius: 18px; border: 1px solid var(--sd-line); background: #FFFFFF; overflow: hidden; box-shadow: 0 30px 60px -44px rgba(7, 28, 51, .5); }
.sbsd-case__media { position: relative; min-height: 300px; }
.sbsd-case__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sbsd-case__body { display: flex; flex-direction: column; justify-content: center; padding: 40px 44px; }
.sbsd-case__tag { font: 600 .8125rem/1 var(--sb-font-mono); letter-spacing: .16em; text-transform: uppercase; color: #EA6A00; }
.sbsd-case__title { margin-top: 14px; font: 700 clamp(1.375rem, 1.8vw, 1.875rem)/1.2 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.015em; color: var(--sd-navy); }
.sbsd-case__text { margin-top: 14px; font-size: 1.0625rem; line-height: 1.6; color: var(--sd-text); }
.sbsd-case__body .sbsd-link { margin-top: 22px; }
.sbsd-case__metrics { display: grid; align-content: center; gap: 22px; margin: 20px; padding: 28px 30px; border-radius: 14px; background: linear-gradient(160deg, #EEF4FC, #E3EDF9); }
.sbsd-case__metrics dt { font: 800 clamp(1.75rem, 2.4vw, 2.5rem)/1 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; color: var(--sd-ink); }
.sbsd-case__metrics div:last-child dt { color: var(--sd-navy); }
.sbsd-case__metrics dd { margin-top: 6px; font-size: .9375rem; color: var(--sd-muted); }

/* ---------- 07 FAQ ---------- */
.sbsd-faq { padding: 72px 0 96px; background: #FFFFFF; }
.sbsd-faq__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 24px; align-items: start; }
.sbsd-faq__col { display: grid; gap: 14px; }
.sbsd-faq__item { border-radius: 12px; border: 1px solid var(--sd-line); background: #FFFFFF; transition: border-color .2s, box-shadow .2s; }
.sbsd-faq__item[open] { border-color: #C7D6E8; box-shadow: 0 16px 34px -28px rgba(11, 99, 190, .5); }
.sbsd-faq__item summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 24px; cursor: pointer; list-style: none; font-weight: 700; font-size: 1.0625rem; color: var(--sd-navy); }
.sbsd-faq__item summary::-webkit-details-marker { display: none; }
.sbsd-faq__item summary i { flex-shrink: 0; font-size: .875rem; color: #64748B; transition: transform .25s, color .2s; }
.sbsd-faq__item[open] summary i { transform: rotate(45deg); color: var(--sd-ink); }
.sbsd-faq__item summary:hover { color: var(--sd-ink); }
.sbsd-faq__item summary:focus-visible { outline: 3px solid #8EC0FF; outline-offset: 2px; border-radius: 12px; }
.sbsd-faq__item p { padding: 0 24px 22px; font-size: 1rem; line-height: 1.6; color: var(--sd-muted); }

/* ---------- 08 CTA ---------- */
.sbsd-cta { overflow: hidden; padding: 84px 0; background: radial-gradient(90% 140% at 100% 100%, #0E2D52, #071C33 55%, #06162A); color: #FFFFFF; }
.sbsd-cta__city { position: absolute; right: 0; bottom: 0; width: 48%; height: 100%; pointer-events: none; opacity: .75;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 45%); mask-image: linear-gradient(90deg, transparent, #000 45%); }
.sbsd-cta__inner { max-width: 1760px; }
.sbsd-cta__eyebrow { display: inline-flex; align-items: center; gap: 14px; font: 600 .8125rem/1 var(--sb-font-mono); letter-spacing: .2em; text-transform: uppercase; color: #CBD5E1; }
.sbsd-cta__eyebrow span { width: 40px; height: 2px; background: var(--sd-orange); }
.sbsd-cta__title { margin-top: 20px; max-width: 18em; font: 700 clamp(1.875rem, 3vw, 3rem)/1.12 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; }
.sbsd-cta__text { margin-top: 16px; max-width: 40rem; font-size: 1.1875rem; line-height: 1.55; color: #CBD5E1; }
.sbsd-cta .sbsd-actions { margin-top: 32px; }

/* ---------- 09 related ---------- */
.sbsd-related { padding: 88px 0 104px; background: linear-gradient(180deg, #FFFFFF, #F6F8FB); }
.sbsd-related__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.sbsd-related__card { display: flex; gap: 22px; height: 100%; padding: 30px 30px 28px; border-radius: 14px; border: 1px solid var(--sd-line); background: #FFFFFF; transition: border-color .25s, box-shadow .25s, transform .25s; }
.sbsd-related__card:hover { border-color: #BFD6F0; box-shadow: 0 24px 44px -30px rgba(11, 99, 190, .45); transform: translateY(-3px); }
.sbsd-related__icon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 14px; background: #EAF2FC; color: var(--sd-ink); font-size: 1.375rem; }
.sbsd-related__card strong { display: block; font: 700 1.25rem/1.2 var(--sb-font-heading); font-stretch: 100%; color: var(--sd-navy); }
.sbsd-related__card small { display: block; margin-top: 10px; font-size: 1rem; line-height: 1.5; color: var(--sd-muted); }
.sbsd-related__card em { display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; font-style: normal; font-weight: 700; color: var(--sd-ink); }
.sbsd-related__card em i { font-size: .8125rem; transition: transform .2s; }
.sbsd-related__card:hover em i { transform: translateX(4px); }

/* ---------- motion (only when JS opted in) ---------- */
.sbsd-js .sbsd-app .sbsd-line { transition: stroke-dashoffset 1.6s cubic-bezier(.22, .61, .36, 1) .2s; }
.sbsd-js .sbsd-app:not(.is-in) .sbsd-line { stroke-dashoffset: 1; }
.sbsd-js .sbsd-app .sbsd-line--1 { transition-delay: .45s; }
.sbsd-js .sbsd-app .sbsd-bar, .sbsd-js .sbsd-app .sbsd-hbars i::after, .sbsd-js .sbsd-app .sbsd-compare i { transition: transform .9s cubic-bezier(.22, .61, .36, 1); transition-delay: calc(.25s + var(--i, 0) * 60ms); }
.sbsd-js .sbsd-app:not(.is-in) .sbsd-bar { transform: scaleY(0); }
.sbsd-js .sbsd-app:not(.is-in) .sbsd-hbars i::after, .sbsd-js .sbsd-app:not(.is-in) .sbsd-compare i { transform: scaleX(0); }
.sbsd-js .sbsd-app .sbsd-pt, .sbsd-js .sbsd-app .sbsd-box, .sbsd-js .sbsd-app .sbsd-node { transition: opacity .6s ease, transform .6s cubic-bezier(.22, .61, .36, 1); transition-delay: calc(.3s + var(--i, 0) * 110ms); }
.sbsd-js .sbsd-app:not(.is-in) .sbsd-pt, .sbsd-js .sbsd-app:not(.is-in) .sbsd-box, .sbsd-js .sbsd-app:not(.is-in) .sbsd-node { opacity: 0; transform: translateY(8px); }
.sbsd-js [data-sbsd-reveal] > * { transition: opacity .8s ease, transform .8s cubic-bezier(.22, .61, .36, 1); transition-delay: calc(var(--i, 0) * 90ms); }
.sbsd-js [data-sbsd-reveal]:not(.is-in) > * { opacity: 0; transform: translateY(18px); }

/* ---------- responsive ---------- */
@media (max-width: 1400px) {
  .sbsd-hero__grid { gap: 40px; }
  .sbsd-app { grid-template-columns: 128px minmax(0, 1fr); }
  .sbsd-app--solo { grid-template-columns: minmax(0, 1fr); }
  .sbsd-points { grid-template-columns: 1fr; gap: 14px; }
  .sbsd-steps { gap: 20px; }
  .sbsd-case__body { padding: 32px; }
}
@media (max-width: 1200px) {
  .sbsd-hero__grid, .sbsd-impact__grid { grid-template-columns: minmax(0, 1fr); }
  .sbsd-hero__visual, .sbsd-impact__visual { max-width: 820px; width: 100%; }
  .sbsd-points { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sbsd-impact__grid { gap: 48px; }
  .sbsd-impact__copy { order: -1; }
  .sbsd-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 40px; }
  .sbsd-step:nth-child(3)::after, .sbsd-step:nth-child(3)::before { display: none; }
  .sbsd-case__card { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
  .sbsd-case__metrics { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 0; }
  .sbsd-related__card { flex-direction: column; gap: 18px; }
}
@media (max-width: 1024px) {
  .sbsd-get__grid, .sbsd-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sbsd-faq__grid { grid-template-columns: minmax(0, 1fr); }
  .sbsd-steps { grid-template-columns: minmax(0, 1fr); row-gap: 0; }
  .sbsd-step { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: 20px; padding-bottom: 28px; }
  .sbsd-step > :not(.sbsd-step__icon) { grid-column: 2; }
  .sbsd-step__icon { grid-row: 1 / span 3; }
  .sbsd-step__num { margin-top: 2px; }
  .sbsd-step small { max-width: 36rem; }
  .sbsd-step::before { display: none !important; }
  .sbsd-step:not(:last-child)::after { display: block !important; top: 64px; bottom: 6px; left: 27px; right: auto; width: 0; height: auto; border-top: 0; border-left: 1.5px dashed #C9D5E3; }
}
@media (max-width: 767px) {
  .sbsd-hero { padding: 20px 0 48px; }
  .sbsd-hero .sbsd-eyebrow { margin-top: 24px; }
  .sbsd-hero__lede, .sbsd-impact__text, .sbsd-cta__text { font-size: 1.0625rem; }
  .sbsd-actions .sbsd-btn { width: 100%; }
  .sbsd-points { grid-template-columns: minmax(0, 1fr); margin-top: 32px; }
  .sbsd-app { grid-template-columns: minmax(0, 1fr); --a-pad: 12px; font-size: 11px; }
  .sbsd-app__side { display: none; }
  .sbsd-kpi { padding: 8px; } .sbsd-kpi strong { font-size: .9375rem; }
  .sbsd-row, .sbsd-row--3 { grid-template-columns: minmax(0, 1fr); }
  .sbsd-doc { grid-template-columns: minmax(0, 1fr); } .sbsd-doc__page { display: none; }
  .sbsd-flow { padding: 10px; } .sbsd-node { padding: 10px 4px; } .sbsd-node small { display: none; }
  .sbsd-node i { width: 28px; height: 28px; font-size: 12px; } .sbsd-node b { font-size: 10px; }
  .sbsd-get, .sbsd-tools, .sbsd-related { padding-top: 64px; }
  .sbsd-approach, .sbsd-faq { padding-bottom: 64px; }
  .sbsd-impact, .sbsd-cta { padding: 64px 0; }
  .sbsd-get__grid, .sbsd-related__grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .sbsd-get__card { padding: 22px; }
  .sbsd-tool { min-height: 52px; padding: 0 16px; font-size: .9375rem; }
  .sbsd-case__card { grid-template-columns: minmax(0, 1fr); }
  .sbsd-case__media { min-height: 200px; }
  .sbsd-case__body { padding: 24px 22px; }
  .sbsd-case__metrics { grid-template-columns: minmax(0, 1fr); margin: 0 16px 16px; padding: 22px; gap: 16px; }
  .sbsd-faq__item summary { padding: 18px; font-size: 1rem; } .sbsd-faq__item p { padding: 0 18px 18px; }
  .sbsd-cta__city { width: 100%; opacity: .35; }
  .sbsd-matrix { height: 200px; }
}
@media (max-width: 420px) {
  .sbsd-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sbsd-kpis > :nth-child(3) { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .sbsd-live::before, .sbsd-wire, .sbsd-stage.is-run i, .sbsd-scan { animation: none; }
  .sbsd-scan { display: none; }
  .sbsd-get__card, .sbsd-related__card, .sbsd-tool, .sbsd-btn { transition: none; }
  .sbsd-get__card:hover, .sbsd-related__card:hover, .sbsd-tool:hover, .sbsd-btn:hover { transform: none; }
}
.sbsd [hidden] { display: none !important; }

/* programme format chips (training) */
.sbsd-get__meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.sbsd-get__meta span { padding: 4px 10px; border-radius: 999px; background: #EEF3F9; font: 600 .75rem/1.3 var(--sb-font-mono); letter-spacing: .02em; color: #0B63BE; }
.sbsd-get__meta span + span { background: #FFF4E6; color: #B45309; }

/* sbs-industry-detail */
/* ==========================================================================
   Industry detail pages (/industries/<slug>/), generated by tools/gen-industry-pages.js
   Builds on css/service-detail.css (.sbsd base, buttons, tools, FAQ). Prefix .sbid-
   Photos: Pixabay Content License (assets/photos/CREDITS.md)
   ========================================================================== */
.sbid { --id-navy: #071C33; background: #F7F9FC; }
.sbsd-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.sbid-eyebrow { display: inline-flex; align-items: center; gap: 14px; font: 600 .8125rem/1.3 var(--sb-font-mono); letter-spacing: .18em; text-transform: uppercase; color: #FF9A2E; }
.sbid-eyebrow span { width: 34px; height: 2px; flex-shrink: 0; background: var(--sd-orange); }
.sbid-kicker { display: inline-flex; align-items: center; gap: 16px; font-weight: 600; font-size: 1.1875rem; color: var(--sd-navy); }
.sbid-kicker span { width: 34px; height: 2px; background: var(--sd-orange); }
.sbid-h2 { display: flex; align-items: center; gap: 14px; font-family: var(--sb-font-heading); font-stretch: 100%; font-weight: 700; font-size: clamp(1.5rem, 2vw, 2rem); line-height: 1.15; letter-spacing: -.015em; color: var(--sd-navy); }
.sbid-mark { position: relative; flex-shrink: 0; width: 30px; height: 2px; background: var(--sd-orange); }
.sbid-mark::after { content: ""; position: absolute; left: 50%; top: 50%; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border-radius: 50%; background: #FFFFFF; border: 2px solid var(--sd-orange); box-sizing: border-box; }
.sbid-headrow { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 32px; margin-bottom: 28px; }
.sbid-note { font-size: .9375rem; color: var(--sd-muted); }
.sbid-tone--blue { background: #EAF2FC; color: var(--sd-ink); }
.sbid-tone--orange { background: #FFF1E3; color: #EA6A00; }
.sbid-tone--green { background: #EAF7EF; color: #16A34A; }
.sbid-tone--purple { background: #F2EEFD; color: #7C3AED; }
.sbid-tone--red { background: #FDEEEE; color: #E14B4B; }

/* ---------- 01 hero (dark, photo on the right) ---------- */
.sbid-hero { overflow: hidden; isolation: isolate; padding: 30px 0 0; background: var(--id-navy); color: #FFFFFF; }
.sbid-hero__photo { position: absolute; inset: 0 0 0 30%; z-index: -1; background: linear-gradient(rgba(7, 28, 51, calc(1 - var(--sbid-dim, 1))), rgba(7, 28, 51, calc(1 - var(--sbid-dim, 1)))), var(--sbid-photo) var(--sbid-pos, center) / cover no-repeat; } /* --sbid-dim tints (a filter would leave a seam) */
.sbid-hero__photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--id-navy) 0%, rgba(7, 28, 51, .82) 30%, rgba(7, 28, 51, .25) 70%, rgba(7, 28, 51, .1) 100%), linear-gradient(0deg, rgba(7, 28, 51, .92) 0%, rgba(7, 28, 51, 0) 42%); }
.sbid-crumbs ol { color: #CBD5E1; }
.sbid-crumbs [aria-current] { color: #FFFFFF; }
.sbid-crumbs a:hover { color: #FFFFFF; }
.sbid-hero .sbid-eyebrow { margin-top: 40px; }
.sbid-hero__title { margin-top: 18px; font-family: var(--sb-font-heading); font-stretch: 100%; font-weight: 800; font-size: clamp(2.75rem, 4.6vw, 4.5rem); line-height: 1.02; letter-spacing: -.03em; }
.sbid-hero__lede { margin-top: 22px; max-width: 36rem; font-size: 1.25rem; line-height: 1.55; color: #E2E8F0; }
.sbid-hero .sbsd-actions { margin-top: 32px; }
.sbid-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 64px; padding: 28px 0 34px; }
.sbid-stats div { padding: 0 32px; border-left: 1px solid rgba(255, 255, 255, .2); }
.sbid-stats div:first-child { padding-left: 0; border-left: 0; }
.sbid-stats dt { white-space: nowrap; font: 700 clamp(2rem, 3vw, 2.875rem)/1 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; }
.sbid-stats dd { margin-top: 8px; max-width: 11rem; font-size: 1rem; line-height: 1.35; color: #CBD5E1; }

/* ---------- 02 overview ---------- */
.sbid-overview { padding: 88px 0 40px; }
.sbid-overview__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); gap: 72px; align-items: center; }
.sbid-overview__title { margin-top: 24px; font-family: var(--sb-font-heading); font-stretch: 100%; font-weight: 700; font-size: clamp(2rem, 3vw, 3rem); line-height: 1.12; letter-spacing: -.025em; color: var(--sd-navy); text-wrap: balance; }
.sbid-overview__title strong { color: var(--sd-orange); }
.sbid-overview__text { margin-top: 24px; max-width: 40rem; font-size: 1.1875rem; line-height: 1.6; color: var(--sd-muted); }
.sbid-benefits { display: grid; gap: 28px; padding: 36px 36px; border-radius: 16px; background: linear-gradient(160deg, #F1F5FB, #EAF0F8); border: 1px solid #E3EAF3; }
.sbid-benefits li { display: flex; align-items: flex-start; gap: 22px; }
.sbid-benefits__icon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 12px; font-size: 1.375rem; background: #FFFFFF !important; box-shadow: 0 8px 20px -14px rgba(7, 28, 51, .5); }
.sbid-benefits strong { display: block; font-weight: 700; font-size: 1.125rem; color: var(--sd-navy); }
.sbid-benefits small { display: block; margin-top: 6px; font-size: 1rem; line-height: 1.5; color: var(--sd-muted); }

/* ---------- cards (03 challenges, 04 solutions) ---------- */
.sbid-challenges { padding: 56px 0 24px; }
.sbid-challenges .sbid-h2 { margin-bottom: 28px; }
.sbid-solutions { padding: 56px 0 96px; }
.sbid-cards { display: grid; gap: 22px; }
.sbid-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sbid-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sbid-card { position: relative; padding: 28px 28px 30px; border-radius: 14px; border: 1px solid var(--sd-line); background: #FFFFFF; box-shadow: 0 18px 40px -36px rgba(7, 28, 51, .45); }
.sbid-card--link { padding: 0; transition: border-color .25s, box-shadow .25s, transform .25s; }
.sbid-card--link a { display: flex; flex-direction: column; height: 100%; padding: 28px 28px 26px; }
.sbid-card--link:hover { border-color: #BFD6F0; box-shadow: 0 24px 44px -28px rgba(11, 99, 190, .45); transform: translateY(-3px); }
.sbid-card__icon { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 12px; font-size: 1.3rem; }
.sbid-card strong { display: block; margin-top: 22px; font: 700 1.25rem/1.25 var(--sb-font-heading); font-stretch: 100%; color: var(--sd-navy); }
.sbid-card small { display: block; margin-top: 10px; font-size: 1rem; line-height: 1.55; color: var(--sd-muted); }
.sbid-card em { margin-top: auto; padding-top: 20px; display: inline-flex; align-items: center; gap: 10px; font-style: normal; font-weight: 700; color: var(--sd-ink); }
.sbid-card em i { font-size: .8125rem; transition: transform .2s; }
.sbid-card--link:hover em i { transform: translateX(4px); }

/* ---------- 05 case study (dark band) ---------- */
.sbid-case { padding: 84px 0; background: radial-gradient(90% 120% at 0% 0%, #0E2D52, #071C33 60%, #06162A); color: #FFFFFF; }
.sbid-case__grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 64px; align-items: center; }
.sbid-case__media { position: relative; aspect-ratio: 16 / 11; border-radius: 16px; overflow: hidden; box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .8); }
.sbid-case__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sbid-case__title { margin-top: 20px; font: 700 clamp(1.75rem, 2.5vw, 2.5rem)/1.15 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; }
.sbid-case__text { margin-top: 18px; font-size: 1.1875rem; line-height: 1.6; color: #E2E8F0; }
.sbid-case__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 32px 0 36px; }
.sbid-case__metrics div { padding: 0 28px; border-left: 1px solid rgba(255, 255, 255, .2); }
.sbid-case__metrics div:first-child { padding-left: 0; border-left: 0; }
.sbid-case__metrics dt { white-space: nowrap; font: 800 clamp(1.5rem, 1.9vw, 2.5rem)/1 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; color: var(--sd-orange); }
.sbid-case__metrics dd { margin-top: 10px; font-size: 1.0625rem; line-height: 1.4; color: #E2E8F0; }

/* ---------- 06 tools, 07 related, 08 FAQ ---------- */
.sbid-tools { padding: 80px 0 32px; }
.sbid-related { padding: 56px 0 32px; }
.sbid-faq { padding: 56px 0 96px; }
.sbid-related__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.sbid-related__card { display: flex; align-items: flex-start; gap: 18px; height: 100%; padding: 26px; border-radius: 14px; border: 1px solid var(--sd-line); background: #FFFFFF; transition: border-color .25s, box-shadow .25s, transform .25s; }
.sbid-related__card:hover { border-color: #BFD6F0; box-shadow: 0 24px 44px -30px rgba(11, 99, 190, .45); transform: translateY(-3px); }
.sbid-related__icon { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 12px; font-size: 1.3rem; }
.sbid-related__card strong { display: block; font: 700 1.125rem/1.25 var(--sb-font-heading); font-stretch: 100%; color: var(--sd-navy); transition: color .2s; }
.sbid-related__card:hover strong { color: var(--sd-ink); }
.sbid-related__card small { display: block; margin-top: 8px; font-size: .9375rem; line-height: 1.45; color: var(--sd-muted); }
.sbid .sbsd-tool { background: #FFFFFF; }
.sbid .sbsd-faq__item { background: #FFFFFF; }

/* ---------- 09 CTA (dark, photo on the right) ---------- */
.sbid-cta { overflow: hidden; isolation: isolate; padding: 88px 0; background: var(--id-navy); color: #FFFFFF; }
.sbid-cta__photo { position: absolute; inset: 0 0 0 45%; z-index: -1; background: linear-gradient(rgba(7, 28, 51, calc(1 - var(--sbid-dim, 1))), rgba(7, 28, 51, calc(1 - var(--sbid-dim, 1)))), var(--sbid-photo) var(--sbid-pos, center) / cover no-repeat; } /* --sbid-dim tints (a filter would leave a seam) */
.sbid-cta__photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--id-navy) 0%, rgba(7, 28, 51, .7) 40%, rgba(7, 28, 51, .35) 100%); }
.sbid-cta__title { margin-top: 20px; max-width: 18em; font: 700 clamp(1.875rem, 3vw, 3rem)/1.12 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; }
.sbid-cta__text { margin-top: 16px; max-width: 40rem; font-size: 1.1875rem; line-height: 1.55; color: #E2E8F0; }
.sbid-cta .sbsd-actions { margin-top: 32px; }

/* ---------- responsive ---------- */
@media (max-width: 1200px) {
  .sbid-overview__grid, .sbid-case__grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .sbid-case__media { max-width: 760px; }
  .sbid-cards--4, .sbid-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sbid-hero__photo { inset: 0 0 0 20%; }
}
@media (max-width: 1024px) {
  .sbid-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 28px; }
  .sbid-stats div:nth-child(3) { padding-left: 0; border-left: 0; }
  .sbid-cards--3 { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
  .sbid-hero__photo, .sbid-cta__photo { inset: 0; opacity: .55; }
  .sbid-hero__photo::after { background: linear-gradient(180deg, rgba(7, 28, 51, .55), var(--id-navy) 92%); }
  .sbid-cta__photo::after { background: rgba(7, 28, 51, .72); }
  .sbid-hero .sbid-eyebrow { margin-top: 28px; }
  .sbid-hero__lede, .sbid-overview__text, .sbid-case__text, .sbid-cta__text { font-size: 1.0625rem; }
  .sbid-stats { margin-top: 44px; padding-bottom: 28px; }
  .sbid-stats div { padding: 0 16px; }
  .sbid-stats dd { font-size: .875rem; }
  .sbid-stats dt { font-size: 1.625rem; white-space: normal; }
  .sbid-overview { padding-top: 64px; }
  .sbid-benefits { padding: 24px 20px; gap: 22px; }
  .sbid-cards--4, .sbid-related__grid { grid-template-columns: minmax(0, 1fr); }
  .sbid-card, .sbid-card--link a { padding: 22px; }
  .sbid-solutions { padding-bottom: 64px; }
  .sbid-case, .sbid-cta { padding: 64px 0; }
  .sbid-case__metrics { grid-template-columns: minmax(0, 1fr); gap: 18px; margin: 26px 0 30px; }
  .sbid-case__metrics div, .sbid-case__metrics div:first-child { padding: 0 0 0 16px; border-left: 2px solid rgba(255, 138, 0, .5) !important; }
  .sbid-tools { padding-top: 56px; }
  .sbid-faq { padding-bottom: 64px; }
  .sbid-h2 { font-size: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .sbid-card--link, .sbid-related__card { transition: none; }
  .sbid-card--link:hover, .sbid-related__card:hover { transform: none; }
}

/* sbs-footer */
/* ==========================================================================
   SIGMA BROOKS - Global CTA ("Let's talk") + footer   (partials/footer.html)
   Copy rule: no em-dashes.
   ========================================================================== */

.sbct, .sbft {
  --ft-wrap: 1760px;
  --ft-bg: #071A2E;
  --ft-text: #B7C4D4;
  --ft-muted: #8496AC;
  --ft-line: rgba(150, 180, 220, .16);
  --ft-orange: #FF851B;
}

/* ---------- CTA ---------- */
.sbct { position: relative; overflow: hidden; isolation: isolate; padding: 92px 0 72px; color: #FFFFFF;
  background: linear-gradient(90deg, #06172A 0%, #07192D 38%, rgba(7, 25, 45, .2) 70%), #071A2E; }
.sbct-scene, .sbct-photo { position: absolute; object-fit: cover; object-position: 60% 40%; top: 0; right: 0; bottom: 0; width: 64%; height: 100%; z-index: -2;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 34%); mask-image: linear-gradient(90deg, transparent 0, #000 34%); }
.sbct::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(90deg, #06172A 0%, rgba(6, 23, 42, .92) 36%, rgba(6, 23, 42, .25) 62%, rgba(6, 23, 42, .1) 100%), linear-gradient(0deg, rgba(6, 18, 33, .6), transparent 40%); }
.sbct-lights circle { animation: sbct-twinkle 4s ease-in-out infinite; }
.sbct-lights circle:nth-child(3n) { animation-delay: 1.2s; } .sbct-lights circle:nth-child(3n + 1) { animation-delay: 2.4s; }
@keyframes sbct-twinkle { 50% { opacity: .35; } }
.sbct-dots { position: absolute; left: 0; bottom: 24px; width: 26%; height: 200px; z-index: -1; pointer-events: none;
  background: radial-gradient(circle, rgba(150, 185, 230, .22) 1px, transparent 1.5px) 0 0 / 18px 18px;
  -webkit-mask-image: linear-gradient(45deg, #000, transparent 70%); mask-image: linear-gradient(45deg, #000, transparent 70%); }

.sbct-inner { max-width: var(--ft-wrap); margin-inline: auto; padding-inline: var(--sb-gutter); display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 460px); gap: 40px 64px; align-items: end; }
.sbct-eyebrow { display: flex; align-items: center; gap: 18px; margin-bottom: 26px; font: 600 .8125rem/1 var(--sb-font-body); letter-spacing: .26em; text-transform: uppercase; color: #D7E0EB; }
.sbct-eyebrow span { width: 42px; height: 2px; border-radius: 2px; background: var(--ft-orange); }
.sbct-title { font-family: var(--sb-font-heading); font-stretch: 106%; font-weight: 800; font-size: clamp(2.5rem, 4.4vw, 4.5rem); line-height: 1.04; letter-spacing: -.035em; color: #FFFFFF; }
.sbct-title strong { font-weight: 800; color: var(--ft-orange); }
.sbct-lede { margin-top: 24px; max-width: 44rem; font-size: clamp(1.0625rem, 1.35vw, 1.3125rem); line-height: 1.55; color: var(--ft-text); }
.sbct-points { display: flex; flex-wrap: wrap; margin: 38px 0 0; padding: 0; list-style: none; }
.sbct-points li { display: flex; align-items: flex-start; gap: 18px; padding: 2px 34px; }
.sbct-points li:first-child { padding-left: 0; }
.sbct-points li + li { border-left: 1px solid var(--ft-line); }
.sbct-tile { display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; flex-shrink: 0; border-radius: 10px; background: rgba(255, 133, 27, .12); border: 1px solid rgba(255, 133, 27, .28); color: var(--ft-orange); font-size: 1.375rem; }
.sbct-points strong { display: block; font-weight: 600; font-size: 1.0625rem; color: #FFFFFF; }
.sbct-points span:not(.sbct-tile) { display: block; margin-top: 6px; max-width: 13rem; font-size: 1rem; line-height: 1.5; color: var(--ft-text); }

.sbct-actions { display: grid; gap: 16px; padding-bottom: 6px; }
.sbct-btn { display: flex; align-items: center; gap: 16px; min-height: 64px; padding: 0 26px; border-radius: 10px; font-weight: 600; font-size: 1.125rem; text-decoration: none; transition: transform .2s, box-shadow .2s, background-color .2s, border-color .2s; }
.sbct-btn span { flex: 1; }
.sbct-btn i:first-child { font-size: 1.375rem; width: 26px; text-align: center; }
.sbct-btn i:last-child { transition: transform .22s; }
.sbct-btn:hover i:last-child { transform: translateX(4px); }
.sbct-btn--primary { background: linear-gradient(180deg, #FF9B26, #FF7E00); color: #071C33; box-shadow: 0 14px 32px -14px rgba(255, 126, 0, .85); }
.sbct-btn--primary:hover { transform: translateY(-1px); box-shadow: 0 18px 38px -14px rgba(255, 126, 0, 1); }
.sbct-btn--ghost { border: 1px solid rgba(255, 255, 255, .55); background: rgba(6, 23, 42, .35); color: #FFFFFF; }
.sbct-btn--ghost:hover { border-color: #FFFFFF; background: rgba(255, 255, 255, .06); }
.sbct-mail { display: inline-flex; align-items: center; gap: 14px; justify-self: start; padding: 8px 10px; font-weight: 600; font-size: 1.0625rem; color: #FFFFFF; text-decoration: none; }
.sbct-mail i { font-size: 1.125rem; color: #D7E0EB; }
.sbct-mail:hover { color: var(--ft-orange); }
.sbct a:focus-visible { outline: 3px solid #8EC0FF; outline-offset: 3px; }

/* ---------- footer ---------- */
.sbft { background: var(--ft-bg); color: var(--ft-text); border-top: 1px solid var(--ft-line); padding: 60px 0 34px; }
.sbft-inner { max-width: var(--ft-wrap); margin-inline: auto; padding-inline: var(--sb-gutter); }
.sbft-grid { display: grid; grid-template-columns: minmax(0, 2.1fr) minmax(0, 1.25fr) minmax(0, .9fr) minmax(0, 1fr) minmax(0, 1.45fr); gap: 40px; padding-bottom: 46px; border-bottom: 1px solid var(--ft-line); }
.sbft-logo__img { display: block; height: 56px; width: auto; max-width: 100%; }
.sbft-logo { display: inline-flex; align-items: center; gap: 16px; color: #FFFFFF; text-decoration: none; font: 800 1.625rem/1 var(--sb-font-heading); font-stretch: 106%; letter-spacing: -.01em; }
.sbft-about { margin-top: 24px; max-width: 26rem; font-size: 1.0625rem; line-height: 1.55; color: var(--ft-text); }
.sbft-social { display: flex; gap: 20px; margin: 30px 0 0; padding: 0; list-style: none; }
.sbft-social a { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .4); color: #FFFFFF; font-size: 1.0625rem; transition: border-color .2s, color .2s, background-color .2s; }
.sbft-social a:hover { border-color: var(--ft-orange); color: var(--ft-orange); }
.sbft-h { margin-bottom: 22px; font: 600 .8125rem/1 var(--sb-font-body); letter-spacing: .22em; text-transform: uppercase; color: #FFFFFF; }
.sbft-col ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.sbft-col a { font-size: 1.0625rem; color: var(--ft-text); text-decoration: none; transition: color .2s; }
.sbft-col a:hover { color: #FFFFFF; }
.sbft-news__text { font-size: 1rem; line-height: 1.55; color: var(--ft-text); max-width: 22rem; }
.sbft-form { display: flex; margin-top: 22px; border-radius: 8px; overflow: hidden; border: 1px solid rgba(150, 180, 220, .25); background: rgba(255, 255, 255, .03); }
.sbft-form input { flex: 1; min-width: 0; height: 52px; padding: 0 18px; border: 0; background: transparent; color: #FFFFFF; font-size: 1rem; }
.sbft-form input::placeholder { color: #7F92A8; }
.sbft-form input:focus { outline: none; }
.sbft-form:focus-within { border-color: #8EC0FF; box-shadow: 0 0 0 2px rgba(142, 192, 255, .25); }
.sbft-form button { width: 56px; border: 0; background: linear-gradient(180deg, #FF9B26, #FF7E00); color: #071C33; font-size: 1.125rem; cursor: pointer; }
.sbft-form button:focus-visible { outline: 3px solid #8EC0FF; outline-offset: -3px; }
.sbft-news__note { display: flex; align-items: center; gap: 10px; margin-top: 14px; font-size: .9375rem; color: var(--ft-muted); }
.sbft-news__note.is-info { color: #D7E0EB; }
.sbft-news__note.is-error { color: #FFB4A0; }

.sbft-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 32px; padding-top: 30px; }
.sbft-legal { display: flex; flex-wrap: wrap; gap: 10px 34px; margin: 0; padding: 0; list-style: none; }
.sbft-legal a { font-size: .9375rem; color: var(--ft-text); text-decoration: none; }
.sbft-legal a:hover { color: #FFFFFF; }
.sbft-copy { display: flex; flex-wrap: wrap; gap: 8px 0; font-size: .9375rem; color: var(--ft-text); }
.sbft-copy span + span { margin-left: 28px; padding-left: 28px; border-left: 1px solid var(--ft-line); }
.sbft a:focus-visible { outline: 3px solid #8EC0FF; outline-offset: 3px; border-radius: 4px; }

/* ---------- responsive ---------- */
@media (max-width: 1400px) {
  .sbct-points li { padding: 2px 22px; }
  .sbft-grid { grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr)) minmax(0, 1.4fr); gap: 28px; }
}
@media (max-width: 1200px) {
  .sbct-inner { grid-template-columns: 1fr; }
  .sbct-actions { max-width: 520px; }
  .sbct-scene, .sbct-photo, .sbct-sweep { width: 100%; opacity: .55; }
  .sbft-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sbft-brand { grid-column: 1 / -1; }
  .sbft-news { grid-column: 1 / -1; max-width: 520px; }
}
@media (max-width: 767px) {
  .sbct { padding: 64px 0 56px; }
  .sbct-eyebrow { font-size: .6875rem; gap: 12px; }
  .sbct-title br { display: none; }
  .sbct-points { flex-direction: column; gap: 20px; margin-top: 30px; }
  .sbct-points li { padding: 0; border: 0 !important; }
  .sbct-points span:not(.sbct-tile) { max-width: none; }
  .sbct-actions { max-width: none; }
  .sbct-btn { min-height: 58px; padding: 0 18px; font-size: 1.0625rem; }
  .sbct-scene, .sbct-photo { opacity: .4; }
  .sbft-grid { grid-template-columns: 1fr 1fr; gap: 32px 20px; }
  .sbft-col:not(.sbft-news) a { font-size: 1rem; }
  .sbft-copy span + span { margin-left: 0; padding-left: 0; border: 0; width: 100%; }
}
@media (max-width: 400px) {
  .sbft-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .sbct-lights circle { animation: none; }
  .sbct-btn, .sbct-btn i:last-child { transition: none; }
  .sbct-btn--primary:hover { transform: none; }
}

/* CTA points: one row of three (as reference); stacks only on phones */
.sbct-points { display: grid; grid-template-columns: repeat(3, auto); justify-content: start; }
.sbct-points li { min-width: 0; }
@media (max-width: 1500px) { .sbct-points li { padding: 2px 18px; gap: 14px; } .sbct-tile { width: 46px; height: 46px; font-size: 1.2rem; } .sbct-points span:not(.sbct-tile) { max-width: 12rem; } }
@media (max-width: 767px) { .sbct-points { grid-template-columns: 1fr; } }

/* CTA photo (Mt Kenya, Pixabay): fades in from the left; the orange sweep sits on top */
.sbct-photo { filter: saturate(.85); }
.sbct-sweep { position: absolute; top: 0; right: 0; bottom: 0; width: 64%; height: 100%; z-index: -1; pointer-events: none; }
@media (max-width: 1200px) { .sbct-sweep { width: 100%; opacity: .55; } }
/* newsletter code step (js/sigma.js) */
.sbft-form input[data-sb-code] { letter-spacing: .3em; font-variant-numeric: tabular-nums; }
.sbft-news__note .sbft-news__alt { margin-left: 4px; padding: 0; border: 0; background: none; color: inherit; font: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }

/* sbs-assistant */
/* SIGMA BROOKS website assistant (plan v0.4.0). Launcher + chat panel. js/assistant.js builds the markup.
   Copy rule: no em-dashes. Sits left of the WhatsApp button on desktop and above the mobile bottom bar. */
.sbai-launch { position: fixed; right: 92px; bottom: 28px; z-index: 51; display: inline-flex; align-items: center; gap: 10px; height: 48px; padding: 0 18px 0 14px; border: 0; border-radius: 999px; background: var(--sb-navy, #071C33); color: #FFFFFF; font: 600 .9375rem/1 var(--sb-font-body, system-ui, sans-serif); box-shadow: 0 14px 30px -12px rgba(4, 18, 31, .55); cursor: pointer; transition: transform .2s, box-shadow .2s; }
.sbai-launch:hover { transform: translateY(-2px); box-shadow: 0 18px 34px -12px rgba(4, 18, 31, .6); }
.sbai-launch:focus-visible { outline: 3px solid var(--sb-orange, #FF8A00); outline-offset: 3px; }
.sbai-launch__icon { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: var(--sb-orange, #FF8A00); color: var(--sb-navy, #071C33); font-size: .875rem; }
.sbai-launch[aria-expanded="true"] { display: none; }

.sbai-panel { position: fixed; right: 24px; bottom: 24px; z-index: 60; display: flex; flex-direction: column; width: min(400px, calc(100vw - 32px)); height: min(640px, calc(100vh - 48px)); height: min(640px, calc(100dvh - 48px)); border-radius: 18px; background: #FFFFFF; color: var(--sb-charcoal, #1F2937); box-shadow: 0 30px 80px -24px rgba(4, 18, 31, .55); border: 1px solid var(--sb-line, #E2E8F0); overflow: hidden; font: 400 .9375rem/1.55 var(--sb-font-body, system-ui, sans-serif); }
.sbai-panel[hidden] { display: none; }
.sbai-head { display: flex; align-items: center; gap: 12px; padding: 14px 14px 14px 18px; background: var(--sb-navy, #071C33); color: #FFFFFF; }
.sbai-head__mark { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 4px; border-radius: 11px; background: #FFFFFF; box-shadow: 0 0 0 1px rgba(255, 255, 255, .25), 0 6px 14px -6px rgba(0, 0, 0, .45); flex: 0 0 auto; box-sizing: border-box; }
.sbai-head__mark img { display: block; width: 100%; height: 100%; object-fit: contain; }
.sbai-head__title { margin: 0; font: 700 1rem/1.2 var(--sb-font-heading, sans-serif); }
.sbai-head__sub { margin: 2px 0 0; font-size: .75rem; color: #B9C7D8; }
.sbai-head__sub b { display: inline-block; margin-right: 6px; padding: 1px 6px; border-radius: 4px; background: rgba(255, 255, 255, .14); color: #FFFFFF; font: 600 .625rem/1.6 var(--sb-font-mono, monospace); letter-spacing: .08em; }
.sbai-head__btns { margin-left: auto; display: flex; gap: 4px; }
.sbai-iconbtn { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 0; border-radius: 10px; background: transparent; color: #DCE6F2; cursor: pointer; font-size: 1rem; }
.sbai-iconbtn:hover { background: rgba(255, 255, 255, .12); color: #FFFFFF; }
.sbai-iconbtn:focus-visible { outline: 2px solid var(--sb-orange, #FF8A00); outline-offset: 1px; }

.sbai-log { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: 18px 16px 8px; background: var(--sb-bg, #F6F8FB); display: flex; flex-direction: column; gap: 12px; }
.sbai-msg { max-width: 88%; padding: 10px 14px; border-radius: 14px; overflow-wrap: anywhere; }
.sbai-msg p { margin: 0; }
.sbai-msg p + p, .sbai-msg p + ul, .sbai-msg ul + p, .sbai-msg p + ol, .sbai-msg ol + p { margin-top: 8px; }
.sbai-msg ul, .sbai-msg ol { margin: 0; padding-left: 20px; }
.sbai-msg li + li { margin-top: 4px; }
.sbai-msg a { color: var(--sb-blue, #0B73D9); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.sbai-msg--bot { align-self: flex-start; background: #FFFFFF; border: 1px solid var(--sb-line, #E2E8F0); border-bottom-left-radius: 4px; }
.sbai-msg--me { align-self: flex-end; background: var(--sb-navy, #071C33); color: #FFFFFF; border-bottom-right-radius: 4px; white-space: pre-wrap; }
.sbai-msg--err { align-self: flex-start; background: #FEF2F2; border: 1px solid #FECACA; color: #991B1B; }
.sbai-msg--err a { color: #991B1B; }
.sbai-typing { align-self: flex-start; display: inline-flex; gap: 5px; padding: 14px 16px; border-radius: 14px; background: #FFFFFF; border: 1px solid var(--sb-line, #E2E8F0); }
.sbai-typing i { width: 7px; height: 7px; border-radius: 50%; background: #94A3B8; animation: sbai-dot 1.1s infinite ease-in-out; }
.sbai-typing i:nth-child(2) { animation-delay: .15s; } .sbai-typing i:nth-child(3) { animation-delay: .3s; }
@keyframes sbai-dot { 0%, 80%, 100% { opacity: .35; transform: translateY(0); } 40% { opacity: 1; transform: translateY(-3px); } }

.sbai-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.sbai-chip { padding: 8px 12px; border: 1px solid #C9D6E5; border-radius: 999px; background: #FFFFFF; color: var(--sb-navy, #071C33); font: 500 .8125rem/1.2 var(--sb-font-body, sans-serif); cursor: pointer; text-align: left; }
.sbai-chip:hover { border-color: var(--sb-blue, #0B73D9); color: var(--sb-blue, #0B73D9); }
.sbai-chip:focus-visible { outline: 2px solid var(--sb-blue, #0B73D9); outline-offset: 2px; }

.sbai-card { align-self: stretch; padding: 14px; border-radius: 14px; background: #FFFFFF; border: 1px solid #C9D6E5; box-shadow: 0 8px 20px -14px rgba(4, 18, 31, .35); }
.sbai-card__kicker { margin: 0 0 4px; font: 600 .6875rem/1.2 var(--sb-font-mono, monospace); letter-spacing: .1em; text-transform: uppercase; color: #8A4B00; }
.sbai-card__title { margin: 0 0 6px; font: 700 1rem/1.3 var(--sb-font-heading, sans-serif); color: var(--sb-navy, #071C33); }
.sbai-card p { margin: 0 0 10px; font-size: .875rem; color: var(--sb-muted, #4B5563); }
.sbai-btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 8px; background: linear-gradient(180deg, #FF9A1F, #FF8400); color: var(--sb-navy, #071C33); font: 700 .875rem/1 var(--sb-font-body, sans-serif); text-decoration: none; cursor: pointer; }
.sbai-btn:hover { filter: brightness(1.03); }
.sbai-btn:disabled { opacity: .6; cursor: default; }
.sbai-btn:focus-visible { outline: 2px solid var(--sb-navy, #071C33); outline-offset: 2px; }
.sbai-form { display: grid; gap: 8px; }
.sbai-form label { display: grid; gap: 3px; font-size: .75rem; font-weight: 600; color: var(--sb-charcoal, #1F2937); }
.sbai-form input[type="text"], .sbai-form input[type="email"], .sbai-form input[type="tel"], .sbai-form textarea { width: 100%; padding: 8px 10px; border: 1px solid #C9D6E5; border-radius: 8px; font: 400 .875rem/1.4 var(--sb-font-body, sans-serif); color: var(--sb-charcoal, #1F2937); background: #FFFFFF; box-sizing: border-box; }
.sbai-form textarea { resize: vertical; min-height: 54px; }
.sbai-form input:focus, .sbai-form textarea:focus { outline: none; border-color: var(--sb-blue, #0B73D9); box-shadow: 0 0 0 3px rgba(11, 115, 217, .18); }
.sbai-form [aria-invalid="true"] { border-color: #DC2626; }
.sbai-form .sbai-consent { display: flex; gap: 8px; align-items: flex-start; font-weight: 400; color: var(--sb-muted, #4B5563); line-height: 1.45; }
.sbai-consent input { margin-top: 2px; flex: 0 0 auto; }
.sbai-form__err { margin: 0; font-size: .75rem; color: #B91C1C; }
.sbai-form__ok { margin: 0; font-size: .875rem; color: #065F46; }

.sbai-input { display: flex; align-items: flex-end; gap: 8px; padding: 12px 12px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid var(--sb-line, #E2E8F0); background: #FFFFFF; }
.sbai-input textarea { flex: 1; min-height: 44px; max-height: 120px; overflow-y: hidden; padding: 11px 12px; border: 1px solid #C9D6E5; border-radius: 12px; resize: none; font: 400 .9375rem/1.4 var(--sb-font-body, sans-serif); color: var(--sb-charcoal, #1F2937); }
.sbai-input textarea:focus { outline: none; border-color: var(--sb-blue, #0B73D9); box-shadow: 0 0 0 3px rgba(11, 115, 217, .18); }
.sbai-send { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; border-radius: 12px; background: var(--sb-navy, #071C33); color: #FFFFFF; cursor: pointer; font-size: 1rem; flex: 0 0 auto; }
.sbai-send:disabled { opacity: .45; cursor: default; }
.sbai-send:focus-visible { outline: 2px solid var(--sb-orange, #FF8A00); outline-offset: 2px; }
.sbai-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

@media (max-width: 767px) {
  .sbai-launch { right: 16px; bottom: calc(80px + env(safe-area-inset-bottom)); height: 52px; width: 52px; padding: 0; justify-content: center; border-radius: 50%; }
  .sbai-launch__text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .sbai-launch__icon { width: auto; height: auto; background: none; color: var(--sb-orange, #FF8A00); font-size: 1.375rem; }
  .sbai-panel { inset: 0; width: 100%; height: 100%; height: 100dvh; border-radius: 0; border: 0; }
}
@media (prefers-reduced-motion: reduce) { .sbai-typing i { animation: none; } .sbai-launch { transition: none; } }

/* ---------- interactive assistant (plan v0.5.0) ---------- */
.sbai-launch { overflow: visible; }
.sbai-badge { position: absolute; top: -6px; right: -6px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: #DC2626; color: #FFFFFF; font: 700 .6875rem/20px var(--sb-font-body, sans-serif); text-align: center; box-shadow: 0 0 0 2px #FFFFFF; }
.sbai-badge[hidden] { display: none; }
.sbai-head__titles { min-width: 0; }
.sbai-iconbtn[hidden] { display: none; }
.sbai-head__sub b.sbai-live { background: #16A34A; }
.sbai-head__sub b.sbai-wait { background: #B45309; }
.sbai-status { padding: 8px 16px; background: #FFF7ED; border-bottom: 1px solid #FED7AA; color: #7C2D12; font-size: .8125rem; line-height: 1.4; }
.sbai-status.is-live { background: #ECFDF5; border-color: #A7F3D0; color: #065F46; }
.sbai-status[hidden] { display: none; }
.sbai-row { display: flex; flex-direction: column; max-width: 88%; }
.sbai-row--me { align-self: flex-end; align-items: flex-end; }
.sbai-row--bot, .sbai-row--agent, .sbai-row--err { align-self: flex-start; }
.sbai-row .sbai-msg { max-width: 100%; }
.sbai-who { margin: 0 0 3px 4px; font: 600 .6875rem/1.2 var(--sb-font-mono, monospace); letter-spacing: .04em; color: #065F46; }
.sbai-msg--agent { background: #ECFDF5; border: 1px solid #A7F3D0; border-bottom-left-radius: 4px; color: #064E3B; }
.sbai-sys { align-self: center; margin: 2px 0; padding: 6px 12px; border-radius: 999px; background: #E8EEF5; color: #334155; font-size: .75rem; text-align: center; max-width: 92%; }
.sbai-ctas { display: flex; flex-wrap: wrap; gap: 8px; margin-top: -4px; }
.sbai-cta { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border: 0; border-radius: 10px; background: var(--sb-navy, #071C33); color: #FFFFFF; font: 600 .8125rem/1.2 var(--sb-font-body, sans-serif); cursor: pointer; text-align: left; }
.sbai-cta:hover { background: #0B2A4A; }
.sbai-cta--ghost { background: #FFFFFF; color: var(--sb-navy, #071C33); border: 1px solid #C9D6E5; }
.sbai-cta--ghost:hover { background: #F1F5FA; }
.sbai-cta:focus-visible { outline: 2px solid var(--sb-orange, #FF8A00); outline-offset: 2px; }
.sbai-cta i { order: 2; font-size: .75rem; color: var(--sb-orange, #FF8A00); }
.sbai-toast { position: absolute; left: 50%; bottom: 84px; transform: translateX(-50%); display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 999px; background: var(--sb-navy, #071C33); color: #FFFFFF; font-size: .75rem; white-space: nowrap; box-shadow: 0 10px 24px -12px rgba(4, 18, 31, .6); transition: opacity .35s, transform .35s; z-index: 2; }
.sbai-toast i { color: var(--sb-orange, #FF8A00); }
.sbai-toast.is-out { opacity: 0; transform: translate(-50%, 6px); }
.sbai-panel { position: fixed; }
.sbai-confirm { align-self: stretch; padding: 12px; border-radius: 12px; background: #FFFFFF; border: 1px solid #C9D6E5; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.sbai-confirm p { flex: 1 1 100%; margin: 0 0 2px; font-size: .875rem; color: var(--sb-charcoal, #1F2937); }
.sbai-btn--ghost { background: #FFFFFF; border: 1px solid #C9D6E5; color: var(--sb-navy, #071C33); }
.sbai-feedback { display: grid; gap: 10px; }
.sbai-feedback .sbai-card__title { margin: 0; }
.sbai-thumbs { display: flex; gap: 8px; }
.sbai-thumb { display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border: 1px solid #C9D6E5; border-radius: 10px; background: #FFFFFF; color: var(--sb-navy, #071C33); font: 600 .875rem/1 var(--sb-font-body, sans-serif); cursor: pointer; }
.sbai-thumb[aria-pressed="true"] { background: var(--sb-navy, #071C33); border-color: var(--sb-navy, #071C33); color: #FFFFFF; }
.sbai-thumb:disabled { cursor: default; opacity: .7; }
.sbai-thumb:focus-visible, .sbai-btn--ghost:focus-visible { outline: 2px solid var(--sb-blue, #0B73D9); outline-offset: 2px; }
.sbai-fb-label { font-size: .75rem; font-weight: 600; color: var(--sb-charcoal, #1F2937); }
.sbai-feedback textarea { width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid #C9D6E5; border-radius: 8px; font: 400 .875rem/1.4 var(--sb-font-body, sans-serif); resize: vertical; }
.sbai-feedback textarea:focus { outline: none; border-color: var(--sb-blue, #0B73D9); box-shadow: 0 0 0 3px rgba(11, 115, 217, .18); }
.sbai-feedback .sbai-btn { justify-self: start; }
.sbai-newchat { justify-self: start; }
.sbai-input[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { .sbai-toast { transition: none; } }
.sbai-head__title, .sbai-head__sub { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sbai-head__titles { flex: 1 1 auto; }
.sbai-head__btns { margin-left: 0; flex: 0 0 auto; }

