.elementor-kit-6{--e-global-color-primary:#D65002;--e-global-color-secondary:#54595F;--e-global-color-text:#FFFFFFCC;--e-global-color-accent:#D65002;--e-global-color-339b412:#D65002;--e-global-color-30b61e8:#000000;--e-global-color-d20a56f:#131313;--e-global-color-e503b57:#FFFFFF;--e-global-color-5e4637e:#FFFFFFCC;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Open Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:600;--e-global-typography-e317735-font-family:"Open Sans";--e-global-typography-e317735-font-weight:400;--e-global-typography-49aa860-font-family:"Open Sans";--e-global-typography-49aa860-font-weight:600;--e-global-typography-4183e1a-font-family:"Montserrat";--e-global-typography-4183e1a-font-weight:700;--e-global-typography-5576e79-font-family:"Montserrat";--e-global-typography-5576e79-font-weight:600;background-color:#000000;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#D65002;font-family:var( --e-global-typography-e317735-font-family ), Open Sans;font-weight:var( --e-global-typography-e317735-font-weight );color:#FFFFFF;border-radius:50px 50px 50px 50px;padding:20px 70px 20px 70px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:var( --e-global-color-d20a56f );color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:50px;--container-default-padding-right:0px;--container-default-padding-bottom:50px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:50px;--container-default-padding-right:20px;--container-default-padding-bottom:50px;--container-default-padding-left:20px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:50px;--container-default-padding-right:20px;--container-default-padding-bottom:50px;--container-default-padding-left:20px;}}/* Start custom CSS *//* Inline text links (form consent, text blocks) */
.elementor-field-type-acceptance a,
.elementor-widget-text-editor a { color: #D65002; text-decoration: none; transition: color .2s; }
.elementor-field-type-acceptance a:hover,
.elementor-widget-text-editor a:hover { text-decoration: underline; }

/* Breadcrumb links (product pages) */
.stg-breadcrumb a { color: #FFFFFF; text-decoration: none; transition: color .2s; }
.stg-breadcrumb a:hover, .stg-breadcrumb a:focus { color: #D65002; text-decoration: none; }

/* ===== Design polish 2026-11-04 ===== */

/* Header: subtle dark gradient so the menu stays readable on bright hero photos */
[data-elementor-type="header"] > .e-con:first-child {
  background-image: linear-gradient(180deg, rgba(0,0,0,.65) 0%, rgba(0,0,0,.35) 60%, rgba(0,0,0,0) 100%);
}

/* Card links (Explore…, View Case Study, Visit website) aligned to the bottom of each card */
.stg-push-bottom { margin-top: auto !important; }

/* Subheadings inside text blocks (e.g. "Every Booster includes") in the brand heading font */
.elementor-widget-text-editor h3,
.elementor-widget-text-editor h4 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  font-size: 22px;
  line-height: 1.3;
  color: #FFFFFF;
  margin: 1.6em 0 .6em;
}
@media (max-width: 767px) {
  .elementor-widget-text-editor h3,
  .elementor-widget-text-editor h4 { font-size: 19px; }
}

/* Mobile / tablet menu: dark dropdown in brand style, larger tap targets */
[data-elementor-type="header"] .elementor-nav-menu--dropdown {
  background-color: #131313 !important;
  border-top: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 18px 40px rgba(0,0,0,.5);
}
[data-elementor-type="header"] .elementor-nav-menu--dropdown a {
  color: #FFFFFF !important;
  background-color: transparent !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  padding: 16px 24px !important;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
[data-elementor-type="header"] .elementor-nav-menu--dropdown .sub-menu a {
  font-family: "Open Sans", sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,.8) !important;
  padding: 13px 24px 13px 40px !important;
  background-color: #0B0B0B !important;
}
[data-elementor-type="header"] .elementor-nav-menu--dropdown a:hover,
[data-elementor-type="header"] .elementor-nav-menu--dropdown a.elementor-item-active,
[data-elementor-type="header"] .elementor-nav-menu--dropdown a.highlighted {
  color: #D65002 !important;
}
[data-elementor-type="header"] .elementor-menu-toggle { background-color: rgba(0,0,0,.35) !important; border-radius: 8px; padding: 8px; }

/* Buttons: brand font */
.elementor-button { font-family: "Montserrat", sans-serif; font-weight: 600; letter-spacing: .01em; }


/* Check icons: one brand colour everywhere (some uploaded SVGs had a hard-coded green) */
.elementor-icon-list-icon svg [fill="#43A047"] { fill: #D65002; }

.stg-eyebrow .elementor-heading-title { text-transform: uppercase; }

/* Loop cards (products, cases) fill the full row height so their links line up */
.elementor-loop-container:not(.swiper-wrapper) > .e-loop-item { height: 100%; }
.elementor-loop-container:not(.swiper-wrapper) > .e-loop-item > .e-con { height: 100%; }


/* ===== Footer: carbon as brand surface ===== */
.stg-footer { position: relative; isolation: isolate; }
/* soft fade from the black page into the carbon, and a darker base behind the legal line */
.stg-footer::after {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: linear-gradient(180deg, #000 0%, rgba(0,0,0,0) 22%, rgba(0,0,0,0) 72%, rgba(0,0,0,.7) 100%);
}
.stg-footer > .e-con-inner, .stg-footer > .e-con { position: relative; z-index: 1; }

/* CTA card: dark glass, the carbon shows through */
.stg-footer-cta {
  background-color: rgba(19,19,19,.82) !important;
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 24px 60px rgba(0,0,0,.45);
}

/* one link style for menus, phone and e-mail */
.stg-footer .elementor-nav-menu a.elementor-item,
.stg-footer-contact .elementor-widget-text-editor a,
.stg-footer-bottom .elementor-widget-text-editor a {
  font-family: "Open Sans", sans-serif !important; font-weight: 400 !important; font-size: 15px !important;
  color: rgba(255,255,255,.75) !important; text-decoration: none !important; transition: color .2s;
}
.stg-footer .elementor-nav-menu a.elementor-item { padding-top: 7px !important; padding-bottom: 7px !important; }
.stg-footer .elementor-nav-menu a.elementor-item:hover,
.stg-footer-contact .elementor-widget-text-editor a:hover,
.stg-footer-bottom .elementor-widget-text-editor a:hover { color: #D65002 !important; }
.stg-footer .elementor-nav-menu a.elementor-item::after { display: none !important; }
.stg-footer-contact .elementor-widget-text-editor { color: rgba(255,255,255,.75); line-height: 1.7; }
.stg-footer-contact .elementor-widget-text-editor strong { color: #fff; }

/* social icons: outlined circles, orange on hover */
.stg-footer-social .elementor-social-icons-wrapper { justify-content: flex-start; gap: 10px; }
.stg-footer-social .elementor-social-icon {
  background: transparent !important; border: 1px solid rgba(255,255,255,.2); border-radius: 50% !important;
  width: 40px; height: 40px; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; margin: 0 !important;
  transition: border-color .2s, background-color .2s;
}
.stg-footer-social .elementor-social-icon svg { fill: #fff; width: 16px; height: 16px; }
.stg-footer-social .elementor-social-icon:hover { background-color: #D65002 !important; border-color: #D65002; }

/* bottom bar: divider + quieter text */
.stg-footer-bottom { border-top: 1px solid rgba(255,255,255,.1); margin-top: 56px !important; padding-top: 24px !important; padding-bottom: 32px !important; }
.stg-footer-bottom .elementor-widget-text-editor, .stg-footer-bottom .elementor-widget-text-editor p { font-size: 14px !important; color: rgba(255,255,255,.55) !important; margin: 0; }
.stg-footer-bottom .elementor-widget-text-editor a { font-size: 14px !important; color: rgba(255,255,255,.55) !important; }

/* Product spec table: readable labels */
.single-products .e-grid > .e-con:first-child > .elementor-widget-heading .elementor-heading-title { font-size: 14px !important; line-height: 1.4; }


/* ===== Button hover states ===== */
.elementor-button {
  transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease, color .2s ease !important;
}
.elementor-button:hover,
.elementor-button:focus-visible {
  background-color: #B84400 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(214, 80, 2, .35);
}
.elementor-button:active { transform: translateY(0); box-shadow: 0 4px 10px rgba(214, 80, 2, .3); }
.elementor-button:focus-visible { outline: 2px solid #FFFFFF; outline-offset: 3px; }
.elementor-button .elementor-button-icon { transition: transform .2s ease; }
.elementor-button:hover .elementor-button-icon { transform: translateX(4px); }

/* Card links (Explore…, View Product, Read case): light up on hover */
.stg-push-bottom a, .stg-push-bottom .elementor-heading-title { transition: color .2s ease; }
.stg-push-bottom a:hover, .stg-push-bottom a:hover .elementor-heading-title, .stg-push-bottom a:focus-visible { color: #FFFFFF !important; }
.stg-push-bottom .elementor-heading-title { display: inline; }

@media (prefers-reduced-motion: reduce) {
  .elementor-button, .elementor-button .elementor-button-icon { transition: none !important; }
  .elementor-button:hover { transform: none; }
}


/* ===== Photo treatment: black overlay so photos sit in the dark site ===== */
/* Content photos (jpg/webp) — not logos, icons, header or footer */
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]) img:is([src*=".jpg"],[src*=".jpeg"],[src*=".webp"],[src*=".JPG"],[src*="Stogger-Booster-130"],[src*="Presentation-14"]):not(.stg-marquee img) {
  filter: brightness(.74) saturate(.9);
  transition: filter .35s ease, transform .5s ease;
}
/* clickable photos (cards, gallery, lightbox) light up on hover */
a:hover img:is([src*=".jpg"],[src*=".jpeg"],[src*=".webp"],[src*=".JPG"],[src*="Stogger-Booster-130"]),
.e-loop-item:hover img:is([src*=".jpg"],[src*=".jpeg"],[src*=".webp"],[src*=".JPG"],[src*="Stogger-Booster-130"]) {
  filter: brightness(.92) saturate(1);
}

/* Hero background photos: extra black layer under the existing gradient */
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]):not(.e-loop-item) > .e-con:first-child {
  box-shadow: inset 0 0 0 100vmax rgba(0,0,0,.3);
}

/* Background videos (homepage hero): same black layer */
.elementor-background-video-container { filter: brightness(.7) saturate(.9); }


/* ===== Image sizing & corners ===== */
/* Photos never stretch: crop to the box when a fixed height is set */
.elementor-widget-image img:is([src*=".jpg"],[src*=".jpeg"],[src*=".webp"],[src*=".JPG"]),
.elementor-widget-theme-post-featured-image img { object-fit: cover; object-position: center center; }
/* One corner radius for standalone photos */
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]) .elementor-widget-image img:is([src*=".jpg"],[src*=".jpeg"],[src*=".webp"],[src*=".JPG"]) { border-radius: 10px !important; }
/* Article sidebar thumbnails: same radius as the rest */
.elementor-791 .elementor-widget-theme-post-featured-image img { border-radius: 10px !important; }

/* Card photos (products, cases, articles): rounded on top only, flush with the card */
.elementor .elementor.e-loop-item:is(.elementor-1188, .elementor-268, .elementor-613):not([data-elementor-type="header"]):not([data-elementor-type="footer"]) .elementor-widget-theme-post-featured-image.elementor-widget-image img:is([src*=".jpg"],[src*=".jpeg"],[src*=".webp"],[src*=".JPG"],[src]) { border-radius: 10px 10px 0 0 !important; }


/* ===== Heroes fade into the black page ===== */
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]):not(.e-loop-item) > .e-con:first-child,
.stg-photo-band { position: relative; }
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]):not(.e-loop-item) > .e-con:first-child::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 38%; min-height: 140px;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.55) 55%, #000 100%);
  pointer-events: none; z-index: 1;
}
/* photo band: soft fade at top and bottom */
.stg-photo-band::after {
  content: ""; position: absolute; inset: -1px 0; pointer-events: none; z-index: 1;
  background: linear-gradient(180deg, #000 0%, rgba(0,0,0,0) 22%, rgba(0,0,0,0) 72%, #000 100%);
}
/* keep hero content above the fade */
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]):not(.e-loop-item) > .e-con:first-child > .e-con-inner > .elementor-element,
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]):not(.e-loop-item) > .e-con:first-child > .elementor-element,
.stg-photo-band > .e-con-inner > .elementor-element, .stg-photo-band > .elementor-element { position: relative; z-index: 2; }


/* Contact options: the phone number / e-mail / address is the link */
.stg-contact-item .elementor-icon-box-description a { color: rgba(255,255,255,.85); text-decoration: none; transition: color .2s ease; }
.stg-contact-item .elementor-icon-box-description a:hover,
.stg-contact-item .elementor-icon-box-description a:focus-visible { color: #D65002; }


/* ===== Mobile: comfortable tap targets for text links ===== */
@media (max-width: 767px) {
  .stg-push-bottom a { display: inline-block; padding: 10px 0; margin: -10px 0; }
  .elementor-widget-post-info a { display: inline-block; padding: 8px 0; margin: -8px 0; }
  .stg-compare .stg-go a { display: inline-block; padding: 10px 0; }
}

@media (max-width: 767px) {
  .e-loop-item .elementor-heading-title a,
  .stg-compare td a,
  .stg-contact-item .elementor-icon-box-description a { display: inline-block; padding: 10px 0; margin: -10px 0; }
}


/* ===== Solution cards: orange border, hover lift + glow, whole card clickable ===== */
a.stg-solution-card, .stg-solution-card {
  border: 1px solid #D65002 !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  color: inherit;
  cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
a.stg-solution-card:hover, a.stg-solution-card:focus-visible {
  border-color: #FF7A2E !important;
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(214, 80, 2, .28), 0 0 0 1px rgba(255, 122, 46, .25);
}
a.stg-solution-card:focus-visible { outline: 2px solid #FFFFFF; outline-offset: 3px; }
a.stg-solution-card .stg-push-bottom .elementor-heading-title { color: #D65002; transition: color .25s ease; }
a.stg-solution-card:hover .stg-push-bottom .elementor-heading-title { color: #FF7A2E; }
@media (prefers-reduced-motion: reduce) { a.stg-solution-card { transition: none; } a.stg-solution-card:hover { transform: none; } }


/* ===== Product carousel: 16:9 frames, never crop the rig ===== */
.elementor-167 .elementor-widget-theme-post-featured-image img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  object-fit: contain !important;
  object-position: center center;
  background-color: #111111;
  border-radius: 10px !important;
}


/* Booster Carbon 130 photo is portrait: focus on the rig when shown in landscape frames */
img[src*="Stogger-Booster-130-on-Brighton-pitch"] { object-fit: cover !important; object-position: center 72% !important; }

/* Sensors header: focus on the rigs on the pitch (BC Place photo) */
.elementor-842 > .e-con:first-child { background-position: center 78% !important; }

/* Product carousel: equal 16:9 frames, all rounded */
.elementor-167 .elementor-widget-theme-post-featured-image img{width:100% !important;height:auto !important;aspect-ratio:16/9 !important;object-fit:cover !important;background:none !important;border-radius:10px !important}

/* Product carousel: side cards less shrunk so gaps stay tight */
@media (min-width:768px){.center-carousel .swiper-slide[style*="scale(0.75)"]{transform:scale(.88) !important}}

/* Replace the theme's default pink link colour everywhere as a fallback */
a{color:#D65002}
a:hover,a:active{color:#FF7A2E}
.skip-link.screen-reader-text:focus{color:#D65002 !important;background:#131313 !important}/* End custom CSS */