:root{--ink:#062725;--ink2:#0B3B38;--blue:#00A79D;--blue-deep:#00807A;--blue-soft:#7FE5D9;--tint:#E2F6F4;--tint2:#F2FBFA;--signal:#46C86A;--amber:#F59E0B;--slate:#4C6A67;--line:#D2E9E6;--r-sm:10px;--r-md:18px;--r-lg:28px;--r-xl:36px;--shadow-sm:0 1px 2px rgba(6,39,37,.05),0 6px 16px rgba(6,39,37,.05);--shadow-md:0 2px 4px rgba(6,39,37,.04),0 14px 34px rgba(6,39,37,.08);--shadow-lg:0 30px 70px rgba(6,39,37,.16);--display:"Playfair Display",Didot,"Times New Roman",serif;--body:"Montserrat","Helvetica Neue",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--header-h:76px}
html{scroll-behavior:smooth}
body{font-family:var(--body);font-size:17px;line-height:1.7;color:var(--slate);letter-spacing:.3px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body .elementor-widget-heading .elementor-heading-title{font-family:var(--display);color:var(--ink);line-height:1.15;letter-spacing:-.04em;font-weight:700}
body h1.elementor-heading-title{font-size:clamp(2.4rem,6vw,4.2rem);letter-spacing:-.05em;font-weight:800}
body h2.elementor-heading-title{font-size:clamp(2rem,4vw,3rem)}
body h3.elementor-heading-title{font-size:1.28rem}
body .elementor-widget-text-editor,body .elementor-widget-text-editor p{font-family:var(--body);color:var(--slate);margin:0}
body .elementor-widget-icon-list .elementor-icon-list-text{font-family:var(--body);color:var(--slate)}
[id]{scroll-margin-top:calc(var(--header-h) + 18px)}
.gsv-btn .elementor-button,.gsv-btn-ghost .elementor-button,.gsv-btn-light .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--body);font-size:.95rem;font-weight:700;letter-spacing:.5px;padding:16px 32px;min-height:50px;border-radius:999px;border:1.5px solid transparent;white-space:nowrap;transition:all .25s cubic-bezier(.25,.46,.45,.94)}
.gsv-btn .elementor-button{background:var(--blue);color:#fff;box-shadow:0 8px 24px rgba(0,167,157,.35)}
.gsv-btn .elementor-button:hover{background:var(--blue-deep);color:#fff;transform:translateY(-3px);box-shadow:0 12px 36px rgba(0,167,157,.45)}
.gsv-btn-ghost .elementor-button{background:transparent;color:var(--ink);border-color:var(--ink)}
.gsv-btn-ghost .elementor-button:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-2px);background:rgba(0,167,157,.05)}
.gsv-btn-light .elementor-button{background:#fff;color:var(--ink);box-shadow:var(--shadow-md)}
.gsv-btn-light .elementor-button:hover{transform:translateY(-3px);color:var(--ink)}
.gsv-btn-sm .elementor-button{padding:12px 24px;min-height:44px;font-size:.85rem}
.gsv-eyebrow .elementor-heading-title{font-family:var(--mono)!important;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);display:flex;align-items:center;gap:12px;font-weight:700}
.gsv-eyebrow .elementor-heading-title:before{content:"";width:28px;height:1.5px;background:linear-gradient(90deg,var(--blue),rgba(0,167,157,.3));flex:none}
.gsv-eyebrow-c .elementor-heading-title{justify-content:center}
.gsv-lede,.gsv-lede p{font-size:1.12rem;line-height:1.8}
.gsv-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--signal);flex:none;box-shadow:0 0 0 0 rgba(70,200,106,.55);animation:gsvpulse 2.4s infinite;vertical-align:middle;margin-right:8px}
@keyframes gsvpulse{70%{box-shadow:0 0 0 11px rgba(70,200,106,0)}100%{box-shadow:0 0 0 0 rgba(70,200,106,0)}}
.gsv-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1)}
.gsv-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.gsv-reveal{opacity:1;transform:none}}
.gsv-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:border-color .3s ease,box-shadow .3s ease}
.gsv-header.is-stuck{border-bottom-color:var(--line);box-shadow:0 8px 32px rgba(6,39,37,.08);background:rgba(255,255,255,.95)}
.gsv-logo-name .elementor-heading-title{font-family:var(--display);font-weight:700;font-size:.96rem;color:var(--ink);letter-spacing:-.02em;line-height:1.2}
.gsv-logo-sub .elementor-heading-title{font-family:var(--mono)!important;font-weight:400;font-size:.6rem;letter-spacing:.19em;text-transform:uppercase;color:var(--slate);line-height:1.2}
.gsv-phone .elementor-heading-title{font-family:var(--mono)!important;font-size:.88rem;font-weight:500;color:var(--ink);white-space:nowrap;letter-spacing:0}
.gsv-phone .elementor-heading-title a{color:inherit}
.gsv-phone .elementor-heading-title a:hover{color:var(--blue)}
.gsv-hero{position:relative;isolation:isolate;color:#fff}
.gsv-hero:before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(100deg,rgba(6,39,37,.94) 0%,rgba(6,39,37,.80) 42%,rgba(6,39,37,.30) 74%,rgba(6,39,37,.12) 100%),linear-gradient(180deg,rgba(6,39,37,.55) 0%,transparent 30%)}
.gsv-hero>.e-con-inner,.gsv-hero>.elementor-widget,.gsv-hero>.e-con{position:relative;z-index:1}
.gsv-hero .elementor-heading-title{color:#fff}
.gsv-hero .gsv-eyebrow .elementor-heading-title{color:var(--blue-soft)}
.gsv-hero .gsv-eyebrow .elementor-heading-title:before{background:var(--blue-soft)}
.gsv-hero .accent{background:linear-gradient(96deg,#4FD8C9,#A9EFE6);-webkit-background-clip:text;background-clip:text;color:transparent}
.gsv-hero .elementor-widget-text-editor,.gsv-hero .elementor-widget-text-editor p{color:rgba(255,255,255,.86)}
.gsv-hero-note,.gsv-hero-note p{font-size:.9rem!important;color:rgba(255,255,255,.8)!important}
.gsv-hero .gsv-btn-ghost .elementor-button{color:#fff;border-color:rgba(255,255,255,.4)}
.gsv-hero .gsv-btn-ghost .elementor-button:hover{color:#fff;border-color:#fff;background:rgba(255,255,255,.1)}
@media (max-width:760px){.gsv-hero:before{background:linear-gradient(180deg,rgba(6,39,37,.80) 0%,rgba(6,39,37,.93) 55%,rgba(6,39,37,.96) 100%)}}
.gsv-proof{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.gsv-proof__item{padding-left:22px;border-left:1px solid var(--line)}
.gsv-proof__item:first-child{border-left:0;padding-left:0}
.gsv-proof__item .elementor-heading-title{font-family:var(--display);font-size:1.9rem;color:var(--ink);font-weight:700;letter-spacing:-.03em;line-height:1.1}
.gsv-proof__item .elementor-widget-text-editor,.gsv-proof__item .elementor-widget-text-editor p{font-size:.88rem;line-height:1.5}
@media (max-width:780px){.gsv-proof__item:nth-child(odd){border-left:0;padding-left:0}}
@media (max-width:400px){.gsv-proof__item{border-left:0;padding-left:0}}
.gsv-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 28px;box-shadow:var(--shadow-sm);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.gsv-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:#A8DED8}
.gsv-card .elementor-icon-box-icon{margin-bottom:20px}
.gsv-card .elementor-icon{width:46px;height:46px;border-radius:14px;background:var(--tint);display:grid;place-items:center;color:var(--blue);font-size:22px}
.gsv-card .elementor-icon-box-title{margin-bottom:9px}
.gsv-card .elementor-icon-box-title,.gsv-card .elementor-icon-box-title a{font-family:var(--display);font-size:1.28rem;font-weight:700;color:var(--ink);letter-spacing:-.03em;line-height:1.2}
.gsv-card .elementor-icon-box-description{font-size:.96rem;color:var(--slate);line-height:1.7}
.gsv-featlist .elementor-icon-list-item{align-items:flex-start!important;font-size:.99rem}
.gsv-featlist .elementor-icon-list-icon{width:23px;height:23px;border-radius:50%;background:var(--tint);color:var(--blue);display:grid!important;place-items:center;flex:none;margin-top:3px;font-size:10px}
.gsv-featlist .elementor-icon-list-text{color:var(--slate);line-height:1.6}
.gsv-featlist .elementor-icon-list-text b,.gsv-featlist .elementor-icon-list-text strong{color:var(--ink);font-weight:600}
.gsv-media{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--line)}
.gsv-media .elementor-widget-image,.gsv-media figure,.gsv-media img{height:100%;width:100%;display:block}
.gsv-media img{object-fit:cover;aspect-ratio:3/4}
.gsv-media__tag{position:absolute!important;left:16px;bottom:16px;z-index:3;width:auto!important}
.gsv-media__tag .elementor-heading-title{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:999px;padding:8px 15px;font-family:var(--mono)!important;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);display:inline-flex;align-items:center;gap:8px;font-weight:500}
@media (max-width:860px){.gsv-media img{aspect-ratio:4/3}}
.gsv-monitor{background:var(--tint2)}
.gsv-console{background:var(--ink2);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);position:relative}
.gsv-console__bar .elementor-heading-title{color:rgba(255,255,255,.62);font-family:var(--mono)!important;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;font-weight:500}
.gsv-console__bar .elementor-heading-title b{color:#fff;font-weight:500}
.gsv-live .elementor-heading-title{color:#8BE8A3!important}
.gsv-screen{background:linear-gradient(170deg,#0B3B39 0%,#062724 100%);border-radius:var(--r-lg);border:1px solid rgba(255,255,255,.09)}
.gsv-slot{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);border-radius:var(--r-sm)}
.gsv-slot__ph .elementor-icon{height:52px;width:100%;border-radius:7px;background:repeating-linear-gradient(135deg,rgba(255,255,255,.09) 0 7px,rgba(255,255,255,.03) 7px 14px);display:grid;place-items:center;color:rgba(255,255,255,.42);font-size:20px}
.gsv-slot__name .elementor-heading-title{font-family:var(--body)!important;font-size:.78rem;color:#fff;font-weight:500;line-height:1.25;letter-spacing:0}
.gsv-slot__meta .elementor-heading-title{font-family:var(--mono)!important;font-size:.66rem;color:rgba(255,255,255,.5);font-weight:400;letter-spacing:0}
.gsv-bar .elementor-progress-wrapper{height:4px;border-radius:3px;background:rgba(255,255,255,.13);overflow:hidden}
.gsv-bar .elementor-progress-bar{height:4px;background:var(--signal);border-radius:3px;transition:width 1.2s cubic-bezier(.2,.7,.3,1)}
.gsv-bar .elementor-progress-percentage,.gsv-bar .elementor-progress-text{display:none}
.gsv-bar-low .elementor-progress-bar{background:var(--amber)}
.gsv-chip{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);border-radius:12px}
.gsv-chip__k .elementor-heading-title{font-family:var(--mono)!important;font-size:.6rem;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:400}
.gsv-chip__v .elementor-heading-title{font-family:var(--display)!important;font-size:1.02rem;color:#fff;font-weight:600}
.gsv-console__foot .elementor-heading-title{border-radius:14px;background:rgba(0,167,157,.18);border:1px solid rgba(79,216,201,.28);font-family:var(--mono)!important;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#A9EFE6;text-align:center;padding:12px;display:block;font-weight:500}
.gsv-step{position:relative}
.gsv-step__num .elementor-heading-title{font-family:var(--mono)!important;font-size:.72rem;letter-spacing:.16em;color:var(--blue);font-weight:500}
.gsv-step__rail{position:relative;height:34px;margin:12px 0 16px}
.gsv-step__rail:before{content:"";position:absolute;left:0;right:0;top:9px;height:2px;background:var(--line)}
.gsv-step:last-child .gsv-step__rail:before{right:auto;width:9px}
.gsv-step__rail:after{content:"";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--blue);border:2px solid var(--blue);box-shadow:inset 0 0 0 3px #fff;z-index:2}
.gsv-step .elementor-heading-title{font-size:1.05rem}
.gsv-step .elementor-widget-text-editor,.gsv-step .elementor-widget-text-editor p{font-size:.93rem;line-height:1.65}
@media (max-width:1000px){.gsv-step:last-child .gsv-step__rail:before{right:0;width:auto}}
.gsv-ind{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:17px 18px;min-height:64px;display:flex;align-items:center;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.gsv-ind:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:var(--shadow-sm)}
.gsv-ind .elementor-icon-box-wrapper{display:flex;align-items:center;gap:13px;text-align:left;width:100%}
.gsv-ind .elementor-icon-box-icon{margin:0!important;flex:none}
.gsv-ind .elementor-icon{width:34px;height:34px;border-radius:10px;background:var(--tint);color:var(--blue);display:grid;place-items:center;font-size:16px}
.gsv-ind .elementor-icon-box-title,.gsv-ind .elementor-icon-box-title a{font-family:var(--body)!important;font-size:.95rem;font-weight:500;color:var(--ink);letter-spacing:0;margin:0}
.gsv-tile{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);background:#fff;min-height:224px;box-shadow:var(--shadow-sm)}
.gsv-tile-photo .elementor-widget-image,.gsv-tile-photo figure,.gsv-tile-photo img{width:100%;height:100%;display:block}
.gsv-tile-photo img{object-fit:cover}
.gsv-tile-feature{background:linear-gradient(150deg,var(--tint) 0%,#FFF 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:24px 22px}
.gsv-tile-feature .elementor-icon-box-icon{margin-bottom:auto}
.gsv-tile-feature .elementor-icon{width:42px;height:42px;border-radius:13px;background:#fff;color:var(--blue);display:grid;place-items:center;box-shadow:var(--shadow-sm);font-size:20px}
.gsv-tile-feature .elementor-icon-box-title{font-family:var(--display);font-size:1.02rem;color:var(--ink);font-weight:700;margin:0 0 8px}
.gsv-tile-feature .elementor-icon-box-description{font-size:.9rem;color:var(--slate);line-height:1.6}
.gsv-tile-cap{position:absolute!important;left:14px;bottom:14px;z-index:3;width:auto!important}
.gsv-tile-cap .elementor-heading-title{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-family:var(--mono)!important;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-weight:500;display:inline-block}
.gsv-quote{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 28px;box-shadow:var(--shadow-sm)}
.gsv-stars .elementor-heading-title{color:var(--amber);font-size:.85rem;letter-spacing:2px;font-family:var(--body)!important}
.gsv-quote__text,.gsv-quote__text p{font-size:1rem;color:var(--ink);line-height:1.6}
.gsv-quote__by .elementor-icon-box-wrapper{display:flex;align-items:center;gap:13px;text-align:left}
.gsv-quote__by .elementor-icon-box-icon{margin:0!important;flex:none}
.gsv-quote__by .elementor-icon{width:44px;height:44px;border-radius:50%;background:var(--tint);color:var(--blue);display:grid;place-items:center;font-size:18px}
.gsv-quote__by .elementor-icon-box-title{font-family:var(--body)!important;color:var(--ink);font-size:.93rem;font-weight:600;letter-spacing:0;margin:0}
.gsv-quote__by .elementor-icon-box-description{font-size:.84rem;color:var(--slate)}
.gsv-cta{background:radial-gradient(700px 400px at 12% 0%,rgba(0,167,157,.30),transparent 60%),linear-gradient(150deg,var(--ink) 0%,#0C4A46 100%);color:#fff}
.gsv-cta .elementor-heading-title{color:#fff}
.gsv-cta .gsv-eyebrow .elementor-heading-title{color:var(--blue-soft)}
.gsv-cta .gsv-eyebrow .elementor-heading-title:before{background:var(--blue-soft)}
.gsv-cta .gsv-cta__copy .elementor-widget-text-editor,.gsv-cta .gsv-cta__copy .elementor-widget-text-editor p{color:rgba(255,255,255,.78);font-size:1.06rem}
.gsv-cta__list .elementor-icon-list-item{color:rgba(255,255,255,.88);font-size:.98rem}
.gsv-cta__list .elementor-icon-list-text{color:rgba(255,255,255,.88)}
.gsv-cta__list .elementor-icon-list-icon{width:23px;height:23px;border-radius:50%;background:rgba(255,255,255,.14);color:var(--blue-soft);display:grid!important;place-items:center;flex:none;font-size:10px}
.gsv-cta__phone,.gsv-cta__phone p{font-family:var(--mono)!important;font-size:.82rem!important;letter-spacing:.06em;color:rgba(255,255,255,.72)!important}
.gsv-cta__phone a{color:var(--blue-soft)}
.gsv-form{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:clamp(24px,3.4vw,34px);box-shadow:var(--shadow-lg)}
.gsv-form .elementor-heading-title{color:var(--ink)}
.gsv-form .elementor-widget-text-editor,.gsv-form .elementor-widget-text-editor p{color:var(--slate);font-size:.93rem}
.gsv-form .wpforms-field-label{font-family:var(--body);font-size:.86rem!important;font-weight:600!important;color:var(--ink)!important;margin-bottom:7px!important}
.gsv-form .wpforms-container input[type=text],.gsv-form .wpforms-container input[type=email],.gsv-form .wpforms-container input[type=tel],.gsv-form .wpforms-container select,.gsv-form .wpforms-container textarea{width:100%!important;font-family:var(--body)!important;font-size:16px!important;color:var(--ink)!important;padding:13px 15px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:var(--tint2)!important;box-shadow:none!important}
.gsv-form .wpforms-container input:focus,.gsv-form .wpforms-container select:focus,.gsv-form .wpforms-container textarea:focus{background:#fff!important;border-color:var(--blue)!important;outline:none!important;box-shadow:0 0 0 3px rgba(0,167,157,.16)!important}
.gsv-form .wpforms-container textarea{min-height:92px!important;resize:vertical}
.gsv-form .wpforms-container .wpforms-submit{width:100%!important;background:var(--blue)!important;color:#fff!important;border:none!important;border-radius:999px!important;padding:16px 32px!important;font-family:var(--body)!important;font-weight:700!important;font-size:.95rem!important;letter-spacing:.5px;cursor:pointer;box-shadow:0 8px 24px rgba(0,167,157,.35)!important}
.gsv-form .wpforms-container .wpforms-submit:hover{background:var(--blue-deep)!important}
.gsv-form .wpforms-field{padding:0 0 15px!important}
.gsv-footer{background:#041D1B;color:rgba(255,255,255,.66);font-size:.93rem}
.gsv-footer .elementor-heading-title{color:rgba(255,255,255,.66)}
.gsv-foot-h .elementor-heading-title{color:#fff;font-size:.82rem;font-family:var(--mono)!important;font-weight:500;letter-spacing:.15em;text-transform:uppercase}
.gsv-footer .gsv-logo-name .elementor-heading-title{color:#fff}
.gsv-footer .gsv-logo-sub .elementor-heading-title{color:rgba(255,255,255,.5)}
.gsv-foot-about .elementor-heading-title{font-family:var(--body)!important;font-size:.93rem;font-weight:400;line-height:1.7;letter-spacing:.3px;color:rgba(255,255,255,.66);max-width:38ch}
.gsv-footer .xpro-info-list-title,.gsv-footer .xpro-info-list-item-title{font-family:var(--body)!important;font-size:.93rem!important;font-weight:400!important;color:rgba(255,255,255,.66)!important;letter-spacing:.3px}
.gsv-footer .xpro-info-list-item:hover .xpro-info-list-title{color:#fff!important}
.gsv-foot-bottom{border-top:1px solid rgba(255,255,255,.1)}
.gsv-foot-bottom .elementor-heading-title{font-size:.85rem;font-family:var(--body)!important;font-weight:400;color:rgba(255,255,255,.66);letter-spacing:.3px}

.gsv-hero-inner{max-width:640px}
.gsv-head{max-width:68ch}
.gsv-head-c{max-width:68ch;margin-inline:auto;text-align:center}
.gsv-head-c .elementor-widget-text-editor{text-align:center}
.gsv-tint{background:linear-gradient(180deg,#F2FBFA 0%,rgba(242,251,250,.6) 100%)}
.gsv-gallery .gsv-tile-lead{grid-column:span 2;grid-row:span 2;min-height:464px}
@media(max-width:1024px){.gsv-gallery .gsv-tile-lead{grid-column:span 2;grid-row:auto;min-height:300px}}
@media(max-width:767px){.gsv-gallery .gsv-tile-lead{grid-column:span 1}}
.gsv-slot__ph .elementor-widget-container{width:100%}
.gsv-slot__ph .elementor-icon-wrapper{width:100%}
.gsv-media__tag .elementor-widget-container{display:inline-block}
.gsv-tile-cap .elementor-widget-container{display:inline-block}
.gsv-console__bar .elementor-widget{width:auto!important}
.gsv-proof__item .elementor-widget-text-editor p{line-height:1.5}
.gsv-form .wpforms-container{margin:0!important}
.gsv-form .wpforms-title,.gsv-form .wpforms-description{display:none}

/* ---------- XPRO header / footer layout ---------- */
.gsv-header>.e-con-inner{flex-direction:row;align-items:center;justify-content:space-between;gap:28px;flex-wrap:nowrap}
.gsv-header>.e-con-inner>.e-con,.gsv-header>.e-con-inner>.elementor-widget{width:auto;flex:0 0 auto}
.gsv-hdr-logo{flex-direction:row!important;align-items:center;gap:11px;width:auto!important}
.gsv-hdr-logotext{width:auto!important;gap:0}
.gsv-hdr-cta{flex-direction:row!important;align-items:center;gap:14px;width:auto!important}
.gsv-logo-mark .xpro-site-logo img{width:44px;height:44px;object-fit:contain;display:block}
.gsv-logo-name .xpro-heading-title,.gsv-logo-name .xpro-heading-wrapper{font-family:var(--display)!important;font-weight:700;font-size:.96rem;color:var(--ink);letter-spacing:-.02em;line-height:1.2;margin:0}
.gsv-logo-sub .xpro-heading-title,.gsv-logo-sub .xpro-heading-wrapper{font-family:var(--mono)!important;font-weight:400;font-size:.6rem;letter-spacing:.19em;text-transform:uppercase;color:var(--slate);line-height:1.3;margin:0}
.gsv-phone .xpro-heading-title{font-family:var(--mono)!important;font-size:.88rem;font-weight:500;color:var(--ink);white-space:nowrap;letter-spacing:0;margin:0}
.gsv-phone .xpro-heading-title a{color:inherit}
.gsv-phone .xpro-heading-title a:hover{color:var(--blue)}
.gsv-nav .xpro-horizontal-menu>li>a,.gsv-nav ul.xpro-nav-menu>li>a,.gsv-nav .xpro-menu-item>a{font-family:var(--body)!important;font-size:.93rem!important;font-weight:600!important;color:var(--ink)!important;letter-spacing:.4px}
.gsv-nav .xpro-menu-item>a:hover{color:var(--blue)!important}
.gsv-xbtn .xpro-btn,.gsv-xbtn a.xpro-button,.gsv-xbtn .xpro-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--body)!important;font-size:.85rem!important;font-weight:700!important;letter-spacing:.5px;padding:12px 24px!important;min-height:44px;border-radius:999px!important;border:1.5px solid transparent!important;background:var(--blue)!important;color:#fff!important;box-shadow:0 8px 24px rgba(0,167,157,.35);transition:all .25s ease;text-decoration:none}
.gsv-xbtn .xpro-btn:hover,.gsv-xbtn .xpro-button:hover{background:var(--blue-deep)!important;color:#fff!important;transform:translateY(-3px)}
.gsv-xbtn-light .xpro-btn,.gsv-xbtn-light .xpro-button{background:#fff!important;color:var(--ink)!important;box-shadow:var(--shadow-md)}
.gsv-xbtn-light .xpro-btn:hover,.gsv-xbtn-light .xpro-button:hover{background:#fff!important;color:var(--ink)!important}

.gsv-footer .xpro-heading-title{color:rgba(255,255,255,.66);margin:0}
.gsv-foot-h .xpro-heading-title{color:#fff!important;font-size:.82rem!important;font-family:var(--mono)!important;font-weight:500!important;letter-spacing:.15em;text-transform:uppercase;margin:0}
.gsv-footer .gsv-logo-name .xpro-heading-title{color:#fff!important}
.gsv-footer .gsv-logo-sub .xpro-heading-title{color:rgba(255,255,255,.5)!important}
.gsv-foot-about .xpro-heading-title{font-family:var(--body)!important;font-size:.93rem!important;font-weight:400!important;line-height:1.7;letter-spacing:.3px;color:rgba(255,255,255,.66)!important;max-width:38ch;text-transform:none}
.gsv-foot-copy .xpro-heading-title{font-family:var(--body)!important;font-size:.85rem!important;font-weight:400!important;color:rgba(255,255,255,.66)!important;letter-spacing:.3px;margin:0}
.gsv-foot-list .xpro-infolist-wrapper{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.gsv-foot-list .xpro-infolist-item{margin:0;padding:0}
.gsv-foot-list .xpro-infolist-title{font-family:var(--body)!important;font-size:.93rem!important;font-weight:400!important;color:rgba(255,255,255,.66)!important;letter-spacing:.3px;margin:0;line-height:1.5;transition:color .18s ease}
.gsv-foot-list a{text-decoration:none;display:block}
.gsv-foot-list .xpro-infolist-item:hover .xpro-infolist-title{color:#fff!important}
.gsv-foot-bottom{width:100%}
@media(max-width:1024px){.gsv-header>.e-con-inner{flex-wrap:wrap}.gsv-hdr-cta .gsv-phone,.gsv-hdr-cta .gsv-xbtn{display:none}}

/* ---------- specificity overrides (beat body-scoped heading defaults) ---------- */
body .gsv-eyebrow .elementor-heading-title{color:var(--blue)}
body .gsv-hero .elementor-heading-title{color:#fff}
body .gsv-hero .gsv-eyebrow .elementor-heading-title{color:var(--blue-soft)}
body .gsv-hero .accent{color:transparent}
body .gsv-cta .elementor-heading-title{color:#fff}
body .gsv-cta .gsv-eyebrow .elementor-heading-title{color:var(--blue-soft)}
body .gsv-cta .gsv-form .elementor-heading-title{color:var(--ink)}
body .gsv-footer .elementor-heading-title{color:rgba(255,255,255,.66)}
body .gsv-console__bar .elementor-heading-title{color:rgba(255,255,255,.62)}
body .gsv-live .elementor-heading-title{color:#8BE8A3}
body .gsv-slot__name .elementor-heading-title{color:#fff}
body .gsv-slot__meta .elementor-heading-title{color:rgba(255,255,255,.5)}
body .gsv-chip__k .elementor-heading-title{color:rgba(255,255,255,.5)}
body .gsv-chip__v .elementor-heading-title{color:#fff}
body .gsv-console__foot .elementor-heading-title{color:#A9EFE6}
body .gsv-step__num .elementor-heading-title{color:var(--blue)}
body .gsv-stars .elementor-heading-title{color:var(--amber)}
body .gsv-media__tag .elementor-heading-title,body .gsv-tile-cap .elementor-heading-title{color:var(--ink)}
body .gsv-hero .elementor-widget-text-editor p{color:rgba(255,255,255,.86)}
body .gsv-cta .gsv-cta__copy .elementor-widget-text-editor p{color:rgba(255,255,255,.78)}

/* ---------- final alignment + XPRO button markup fixes ---------- */
body .gsv-card .elementor-icon-box-wrapper,
body .gsv-tile-feature .elementor-icon-box-wrapper{text-align:left}
body .gsv-card .elementor-icon-box-icon,
body .gsv-tile-feature .elementor-icon-box-icon{text-align:left;display:flex;justify-content:flex-start}
body .gsv-card .elementor-icon,
body .gsv-tile-feature .elementor-icon{display:inline-grid}
body .gsv-footer .xpro-heading-wrapper,
body .gsv-hdr-logotext .xpro-heading-wrapper,
body .gsv-phone .xpro-heading-wrapper{text-align:left}
body .gsv-foot-bottom .gsv-foot-copy:last-child .xpro-heading-wrapper{text-align:right}
.gsv-xbtn .xpro-elementor-button{display:inline-flex!important;align-items:center;justify-content:center;gap:9px;font-family:var(--body)!important;font-size:.85rem!important;font-weight:700!important;letter-spacing:.5px;padding:12px 24px!important;min-height:44px;border-radius:999px!important;border:1.5px solid transparent!important;background:var(--blue)!important;background-image:none!important;color:#fff!important;box-shadow:0 8px 24px rgba(0,167,157,.35);transition:all .25s ease;text-decoration:none;line-height:1.2}
.gsv-xbtn .xpro-elementor-button:hover{background:var(--blue-deep)!important;color:#fff!important;transform:translateY(-3px)}
.gsv-xbtn .xpro-elementor-button span{color:inherit!important}
.gsv-xbtn-light .xpro-elementor-button{background:#fff!important;color:var(--ink)!important;box-shadow:var(--shadow-md)}
.gsv-xbtn-light .xpro-elementor-button:hover{background:#fff!important;color:var(--ink)!important}
.gsv-foot-list .xpro-infolist-wrapper{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.gsv-foot-list .xpro-infolist-item{margin:0;padding:0;display:block}
.gsv-foot-list .xpro-infolist-content{margin:0}
body .gsv-foot-list .xpro-infolist-title{font-family:var(--body)!important;font-size:.93rem!important;font-weight:400!important;color:rgba(255,255,255,.66)!important;letter-spacing:.3px;margin:0;line-height:1.5;text-transform:none}
body .gsv-foot-list .xpro-infolist-item:hover .xpro-infolist-title{color:#fff!important}
@media(max-width:767px){body .gsv-foot-bottom .gsv-foot-copy .xpro-heading-wrapper{text-align:left!important}}

body .gsv-card .elementor-icon-box-content,body .gsv-card .elementor-icon-box-title,body .gsv-card .elementor-icon-box-description,
body .gsv-tile-feature .elementor-icon-box-content,body .gsv-tile-feature .elementor-icon-box-title,body .gsv-tile-feature .elementor-icon-box-description,
body .gsv-ind .elementor-icon-box-content,body .gsv-ind .elementor-icon-box-title,
body .gsv-quote__by .elementor-icon-box-content,body .gsv-quote__by .elementor-icon-box-title,body .gsv-quote__by .elementor-icon-box-description{text-align:left!important}

/* ============ PAGE HERO (about / industries) ============ */
.gsv-page-hero{background:radial-gradient(760px 420px at 88% 8%,rgba(0,167,157,.10),transparent 62%),linear-gradient(135deg,var(--tint2) 0%,#fff 78%);border-bottom:1px solid var(--line)}
body .gsv-page-hero .elementor-heading-title{color:var(--ink)}
body .gsv-page-hero .elementor-widget-text-editor,body .gsv-page-hero .elementor-widget-text-editor p{max-width:58ch;font-size:1.08rem;color:var(--slate)}
.gsv-page-hero__media{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--line);padding:0}
.gsv-page-hero__media img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
@media(max-width:1024px){.gsv-page-hero__media{display:none!important}}

/* ============ VALUES ============ */
.gsv-value{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:32px 28px;box-shadow:var(--shadow-sm);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.gsv-value:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:#A8DED8}
body .gsv-value__number .elementor-heading-title{font-family:var(--display)!important;font-size:2.2rem;font-weight:700;color:var(--blue);letter-spacing:-.03em;line-height:1}
body .gsv-value .elementor-heading-title{font-size:1.12rem}
body .gsv-value .elementor-widget-text-editor,body .gsv-value .elementor-widget-text-editor p{font-size:.96rem}
.gsv-valcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:24px 20px;text-align:center}
.gsv-valcard .elementor-icon-box-wrapper{text-align:center}
.gsv-valcard .elementor-icon{width:34px;height:34px;border-radius:50%;background:var(--tint);color:var(--blue);display:grid;place-items:center;font-size:14px;margin:0 auto}
.gsv-valcard .elementor-icon-box-icon{margin-bottom:12px}
body .gsv-valcard .elementor-icon-box-title{font-family:var(--display)!important;font-size:.95rem;margin:0;color:var(--ink);font-weight:700}
body .gsv-valcard .elementor-icon-box-description{font-size:.86rem;margin-top:6px;color:var(--slate)}

/* ============ TIMELINE ============ */
.gsv-timeline{position:relative;padding:8px 0}
.gsv-timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent 0%,var(--line) 10%,var(--line) 90%,transparent 100%);transform:translateX(-50%);z-index:0}
.gsv-tl-item{position:relative;z-index:2}
.gsv-tl-dot{position:relative;padding:0!important;width:16px!important;min-width:16px;height:16px;border-radius:50%;background:var(--blue);border:3px solid #fff;box-shadow:0 0 0 2px var(--blue);align-self:center;flex:none}
body .gsv-tl-right .elementor-heading-title,body .gsv-tl-left .elementor-heading-title{font-family:var(--mono)!important;font-size:1.05rem;letter-spacing:.06em;color:var(--blue);margin-bottom:8px}
body .gsv-tl-left .elementor-widget-text-editor,body .gsv-tl-left .elementor-widget-text-editor p,body .gsv-tl-right .elementor-widget-text-editor,body .gsv-tl-right .elementor-widget-text-editor p{font-size:.95rem;max-width:42ch}
.gsv-tl-left{text-align:right}
.gsv-tl-left .elementor-widget-text-editor p{margin-left:auto}
.gsv-tl-right{text-align:left}
@media(max-width:1024px){
.gsv-timeline:before{left:9px}
.gsv-tl-left,.gsv-tl-right{text-align:left!important}
.gsv-tl-left .elementor-widget-text-editor p{margin-left:0}
.gsv-tl-empty{display:none!important}
}

/* ============ TEAM ============ */
.gsv-member{text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 24px;box-shadow:var(--shadow-sm);transition:transform .25s ease,box-shadow .25s ease}
.gsv-member:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.gsv-member .elementor-icon-box-wrapper{text-align:center}
.gsv-member .elementor-icon-box-icon{margin-bottom:16px}
.gsv-member .elementor-icon{width:76px;height:76px;border-radius:50%;background:var(--tint);color:var(--blue);display:grid;place-items:center;font-size:30px;margin:0 auto}
body .gsv-member .elementor-icon-box-title{font-family:var(--display)!important;font-size:1rem;margin:0 0 4px;color:var(--ink);font-weight:700}
body .gsv-member .elementor-icon-box-description{font-size:.88rem;color:var(--slate);line-height:1.6}
.gsv-member .elementor-icon-box-description b,.gsv-member .elementor-icon-box-description strong{color:var(--blue);font-weight:600}

/* ============ CTA BAND ============ */
.gsv-cta-band{background:radial-gradient(900px 450px at 20% 0%,rgba(0,167,157,.28),transparent 65%),radial-gradient(600px 300px at 80% 100%,rgba(0,167,157,.12),transparent 60%),linear-gradient(150deg,var(--ink) 0%,#0C4A46 100%);color:#fff;text-align:center;position:relative;overflow:hidden}
body .gsv-cta-band .elementor-heading-title{color:#fff;font-size:clamp(2rem,4.5vw,3.2rem);margin-bottom:0}
body .gsv-cta-band .elementor-widget-text-editor,body .gsv-cta-band .elementor-widget-text-editor p{max-width:65ch;margin-inline:auto;color:rgba(255,255,255,.88);font-size:1.08rem;line-height:1.8;text-align:center}

/* ============ INDUSTRY CARDS ============ */
.gsv-indcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:36px 32px;box-shadow:var(--shadow-sm);transition:all .35s cubic-bezier(.25,.46,.45,.94)}
.gsv-indcard:hover{transform:translateY(-8px);box-shadow:0 40px 100px rgba(6,39,37,.2),0 0 100px rgba(0,167,157,.08);border-color:var(--blue);background:linear-gradient(135deg,#fff 0%,rgba(242,251,250,.4) 100%)}
.gsv-indcard__icon .elementor-icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,var(--tint),rgba(127,229,217,.5));color:var(--blue);display:grid;place-items:center;font-size:24px;box-shadow:0 4px 16px rgba(0,167,157,.1);transition:transform .3s ease,box-shadow .3s ease}
.gsv-indcard:hover .gsv-indcard__icon .elementor-icon{transform:scale(1.08) rotate(5deg);box-shadow:0 8px 24px rgba(0,167,157,.2)}
.gsv-indcard__icon .elementor-icon-wrapper{text-align:left}
body .gsv-indcard .elementor-heading-title{font-size:1.16rem;font-weight:700}
body .gsv-indcard .elementor-widget-text-editor,body .gsv-indcard .elementor-widget-text-editor p{font-size:.96rem;line-height:1.6}
.gsv-hilite .elementor-icon-list-items{display:grid;gap:11px}
.gsv-hilite .elementor-icon-list-item{align-items:flex-start!important;font-size:.9rem}
.gsv-hilite .elementor-icon-list-icon{color:var(--blue);font-size:5px;margin-top:8px;flex:none;transform:rotate(45deg)}
.gsv-hilite .elementor-icon-list-text{color:var(--slate);line-height:1.6;font-size:.9rem}

/* ============ DEEP DIVE ============ */
.gsv-deepdive{background:#fff;border:1.5px solid var(--line);border-radius:var(--r-lg);box-shadow:0 6px 20px rgba(6,39,37,.06);transition:all .3s ease}
.gsv-deepdive:hover{border-color:var(--blue);box-shadow:var(--shadow-md)}
.gsv-deepdive__visual{background:linear-gradient(150deg,var(--tint) 0%,#fff 100%);border:1px solid var(--line);border-radius:var(--r-lg);display:grid;place-items:center;min-height:300px}
.gsv-deepdive__visual .elementor-icon{color:var(--blue);font-size:104px;display:block}
.gsv-deepdive__visual .elementor-icon-wrapper{text-align:center}
.gsv-dd-list .elementor-icon-list-items{display:grid;gap:14px}
.gsv-dd-list .elementor-icon-list-item{align-items:flex-start!important;font-size:.96rem}
.gsv-dd-list .elementor-icon-list-icon{color:var(--signal);font-size:15px;margin-top:3px;flex:none}
.gsv-dd-list .elementor-icon-list-text{color:var(--slate);line-height:1.6}
@media(max-width:1024px){.gsv-deepdive__visual{min-height:220px;order:-1}.gsv-deepdive__visual .elementor-icon{font-size:76px}}
