:root {
  --header-outer-height: 100px;
  --header-inner-height: 80px;
  --header-height-difference: calc(
    var(--header-outer-height) - var(--header-inner-height)
  );
  --header-bg: #fbfbff;

  --bs-blue: #2A51C7;
  --bs-indigo: #7969EB;
  --bs-purple: #B269EB;
  --bs-pink: #FF81E8;
  --bs-red: #FF3A6C;
  --bs-orange: #FF8C6C;
  --bs-yellow: #FBF843;
  --bs-green: #93E436;
  --bs-teal: #30E48A;
  --bs-cyan: #02BAED;
  --bs-black: #2A2A32;
  --bs-white: #fbfbff;
  --bs-gray: #66666d;
  --bs-gray-dark: #42424C;
  --bs-gray-50: #f8f8ff;
  --bs-gray-100: #f0f0f7;
  --bs-gray-200: #e6e6ed;
  --bs-gray-300: #CFCFE1;
  --bs-gray-400: #B8B8D0;
  --bs-gray-500: #9A9AAF;
  --bs-gray-600: #7D7D8E;
  --bs-gray-700: #5F5F6D;
  --bs-gray-800: #42424C;
  --bs-gray-900: #2A2A32;
  --bs-primary: #0C343D;
  --bs-primary-dark:#2A2A32;
  --bs-secondary: #2118AD;
  --bs-success: #30E48A;
  --bs-info: #2ab2c7;
  --bs-warning: #FF8C6C;
  --bs-danger: #FF3A6C;
  --bs-light: #f8f8ff;
  --bs-link-color: #7969EB;
  --bs-link-hover-color: #6157B3;
  --bs-border-color: #CFCFE1;
  --bs-body-color: #2A2A32;
  --bs-body-bg: #fbfbff;
}

@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Source+Sans+3:ital,wght@0,200..900;1,200..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@100..900&display=swap');

@font-face {
    font-family: 'Roboto Slab';
    src: url('../../library/fonts/RobotoSlab-Regular.woff2') format('woff2'),
        url('../../library/fonts/RobotoSlab-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

.header-logo-image-class { 
  background: url('https://www.smartology.net/library/images/smartology.png');
  background-size: contain;
  background-repeat: no-repeat; 
  width: 150px;
  height: 48px;
} 
.footer-logo-image-class { 
  background: url('https://www.smartology.net/library/images/smartology-white.png');
  background-size: contain;
  background-repeat: no-repeat; 
  width: 150px;
  height: 48px;
 } 

/* COLORS */

/* Grey */

.bg-white {
  background-color: #fbfbff;
}
.text-white {
  color: #fbfbff;
}

.bg-grey-50 {
  background-color: #f8f8ff;
}
.text-grey-50 {
  color: #f8f8ff;
}

.bg-grey-100 {
  background-color: #f0f0f7;
}
.text-grey-100 {
  color: #f0f0f7;
}

.bg-grey-200 {
  background-color: #e6e6ed;
}
.text-grey-200 {
  color: #e6e6ed;
}

.bg-grey-300 {
  background-color: #CFCFE1;
}
.text-grey-300 {
  color: #CFCFE1;
}

.bg-grey-400 {
  background-color: #B8B8D0;
}
.text-grey-400 {
  color: #B8B8D0;
}

.bg-grey-500 {
  background-color: #9A9AAF;
}
.text-grey-500 {
  color: #9A9AAF;
}

.bg-grey-600 {
  background-color: #7D7D8E;
}
.text-grey-600 {
  color: #7D7D8E;
}

.bg-grey-700 {
  background-color: #5F5F6D;
}
.text-grey-700 {
  color: #5F5F6D;
}

.bg-grey-800 {
  background-color: #42424C;
}
.text-grey-800 {
  color: #42424C;
}

.bg-grey-900 {
  background-color: #2A2A32;
}
.text-grey-900 {
  color: #2A2A32;
}

.bg-black {
  background-color: #2A2A32;
}
.text-black {
  color: #2A2A32;
}

/* Primary */

.bg-primary-dark {
  background-color: #0C343D;
}
.bg-primary-grey {
  background-color: #B8B8D0;
}
.bg-primary-blue {
  background-color: #2A51C7;
}
.bg-primary-neutral {
  background-color: #afbdc1;
}
.bg-primary-dark-blue {
  background-color: #2118AD;
}
.bg-primary-dark-light {
  background-color: #B8C2FD;
}


.text-primary {
  color: #0c343d;
}
.text-primary-light {
  color: #3d5d64;
}
.text-primary-lighter {
  color: #6d858b;
}
.text-primary-lightest {
  color: #afbdc1;
}

/* Blue */

.bg-blue-darkest {
  background-color: #282C3E;
}
.bg-blue-darker {
  background-color: #29345C;
}
.bg-blue-dark {
  background-color: #294599;
}
.bg-blue {
  background-color: #2A51C7;
}
.bg-blue-light {
  background-color: #5473D1;
}
.bg-blue-lighter {
  background-color: #B8C2FD;
}
.bg-blue-lightest {
  background-color: #D0D8F4;
}

.text-blue-darkest {
  color: #282C3E;
}
.text-blue-darker {
  color: #29345C;
}
.text-blue-dark {
  color: #294599;
}
.text-blue {
  color: #2A51C7;
}
.text-blue-light {
  color: #5473D1;
}
.text-blue-lighter {
  color: #B8C2FD;
}
.text-blue-lightest {
  color: #D0D8F4;
}

/* Indigo */

.bg-indigo-darkest {
  background-color: #302F42;
}
.bg-indigo-darker {
  background-color: #413C67;
}
.bg-indigo-dark {
  background-color: #6157B3;
}
.bg-indigo {
  background-color: #7969EB;
}
.bg-indigo-light {
  background-color: #9488EF;
}
.bg-indigo-lighter {
  background-color: #BAB3F5;
}
.bg-indigo-lightest {
  background-color: #E0DDFB;
}

.text-indigo-darkest {
  color: #302F42;
}
.text-indigo-darker {
  color: #413C67;
}
.text-indigo-dark {
  color: #6157B3;
}
.text-indigo {
  color: #7969EB;
}
.text-indigo-light {
  color: #9488EF;
}
.text-indigo-lighter {
  color: #BAB3F5;
}
.text-indigo-lightest {
  color: #E0DDFB;
}

/* Purple */

.bg-purple-darkest {
  background-color: #362F42;
}
.bg-purple-darker {
  background-color: #3C2955;
}
.bg-purple-dark {
  background-color: #8957B3;
}
.bg-purple {
  background-color: #B269EB;
}
.bg-purple-light {
  background-color: #C188EF;
}
.bg-purple-lighter {
  background-color: #D7B3F5;
}
.bg-purple-lightest {
  background-color: #ECDDFB;
}

.text-purple-darkest {
  color: #362F42;
}
.text-purple-darker {
  color: #3C2955;
}
.text-purple-dark {
  color: #8957B3;
}
.text-purple {
  color: #B269EB;
}
.text-purple-light {
  color: #C188EF;
}
.text-purple-lighter {
  color: #D7B3F5;
}
.text-purple-lightest {
  color: #ECDDFB;
}

/* Pink */

.bg-pink-darkest {
  background-color: #3E3142;
}
.bg-pink-darker {
  background-color: #694267;
}
.bg-pink-dark {
  background-color: #BF66B1;
}
.bg-pink {
  background-color: #FF81E8;
}
.bg-pink-light {
  background-color: #FE98ED;
}
.bg-pink-lighter {
  background-color: #FDBDF4;
}
.bg-pink-lightest {
  background-color: #FBDFFA;
}

.text-pink-darkest {
  color: #3E3142;
}
.text-pink-darker {
  color: #694267;
}
.text-pink-dark {
  color: #BF66B1;
}
.text-pink {
  color: #FF81E8;
}
.text-pink-light {
  color: #FE98ED;
}
.text-pink-lighter {
  color: #FDBDF4;
}
.text-pink-lightest {
  color: #FBDFFA;
}

/* Red */

.bg-red-darkest {
  background-color: #3D2935;
}
.bg-red-darker {
  background-color: #692D41;
}
.bg-red-dark {
  background-color: #BF3358;
}
.bg-red {
  background-color: #FF3A6C;
}
.bg-red-light {
  background-color: #FE6D93;
}
.bg-red-lighter {
  background-color: #FD99B5;
}
.bg-red-lightest {
  background-color: #FBD3E1;
}

.text-red-darkest {
  color: #3D2935;
}
.text-red-darker {
  color: #692D41;
}
.text-red-dark {
  color: #BF3358;
}
.text-red {
  color: #FF3A6C;
}
.text-red-light {
  color: #FE6D93;
}
.text-red-lighter {
  color: #FD99B5;
}
.text-red-lightest {
  color: #FBD3E1;
}

/* Orange */

.bg-orange-darkest {
  background-color: #3D3235;
}
.bg-orange-darker {
  background-color: #694641;
}
.bg-orange-dark {
  background-color: #BF6D59;
}
.bg-orange {
  background-color: #FF8C6C;
}
.bg-orange-light {
  background-color: #FEA189;
}
.bg-orange-lighter {
  background-color: #FDC3B5;
}
.bg-orange-lightest {
  background-color: #FBDCD7;
}

.text-orange-darkest {
  color: #3D3235;
}
.text-orange-darker {
  color: #694641;
}
.text-orange-dark {
  color: #BF6D59;
}
.text-orange {
  color: #FF8C6C;
}
.text-orange-light {
  color: #FEA189;
}
.text-orange-lighter {
  color: #FDC3B5;
}
.text-orange-lightest {
  color: #FBDCD7;
}

/* Yellow */

.bg-yellow-darkest {
  background-color: #555418;
}
.bg-yellow-darker {
  background-color: #BFBC27;
}
.bg-yellow-dark {
  background-color: #DFDD61;
}
.bg-yellow {
  background-color: #FBF843;
}
.bg-yellow-light {
  background-color: #F6F497;
}
.bg-yellow-lighter {
  background-color: #FBFAC3;
}
.bg-yellow-lightest {
  background-color: #FBFBE6;
}

.text-yellow-darkest {
  color: #555418;
}
.text-yellow-darker {
  color: #BFBC27;
}
.text-yellow-dark {
  color: #DFDD61;
}
.text-yellow {
  color: #FBF843;
}
.text-yellow-light {
  color: #F6F497;
}
.text-yellow-lighter {
  color: #FBFAC3;
}
.text-yellow-lightest {
  color: #FBFBE6;
}

/* Green */

.bg-green-darkest {
  background-color: #2c402e;
}
.bg-green-darker {
  background-color: #2f502e;
}
.bg-green-dark {
  background-color: #35702d;
}
.bg-green {
  background-color: #44c72a;
}
.bg-green-light {
  background-color: #a9e49f;
}
.bg-green-lighter {
  background-color: #cdeeca;
}
.bg-green-lightest {
  background-color: #e0f3df;
}

.text-green-darkest {
  color: #2c402e;
}
.text-green-darker {
  color: #2f502e;
}
.text-green-dark {
  color: #35702d;
}
.text-green {
  color: #44c72a;
}
.text-green-light {
  color: #a9e49f;
}
.text-green-lighter {
  color: #cdeeca;
}
.text-green-lightest {
  color: #e0f3df;
}

/* Teal */

.bg-teal-darkest {
  background-color: #28403a;
}
.bg-teal-darker {
  background-color: #295042;
}
.bg-teal-dark {
  background-color: #2DAC6F;
}
.bg-teal {
  background-color: #2ac779;
}
.bg-teal-light {
  background-color: #9de4c3;
}
.bg-teal-lighter {
  background-color: #c7eede;
}
.bg-teal-lightest {
  background-color: #dcf3eb;
}

.text-teal-darkest {
  color: #28403a;
}
.text-teal-darker {
  color: #295042;
}
.text-teal-dark {
  color: #2DAC6F;
}
.text-teal {
  color: #2ac779;
}
.text-teal-light {
  color: #9de4c3;
}
.text-teal-lighter {
  color: #c7eede;
}
.text-teal-lightest {
  color: #dcf3eb;
}

.border-teal-darkest {
  border-color: #28403a;
}
.border-teal-darker {
  border-color: #295042;
}
.border-teal-dark {
  border-color: #2DAC6F;
}
.border-teal {
  border-color: #2ac779;
}
.border-teal-light {
  border-color: #9de4c3;
}
.border-teal-lighter {
  border-color: #c7eede;
}
.border-teal-lightest {
  border-color: #dcf3eb;
}

/* Cyan */

.bg-cyan-darkest {
  background-color: #283d46;
}
.bg-cyan-darker {
  background-color: #294b55;
}
.bg-cyan-dark {
  background-color: #296673;
}
.bg-cyan {
  background-color: #2ab2c7;
}
.bg-cyan-light {
  background-color: #9de4c3;
}
.bg-cyan-lighter {
  background-color: #c7e9f1;
}
.bg-cyan-lightest {
  background-color: #dcf0f7;
}

.text-cyan-darkest {
  color: #283d46;
}
.text-cyan-darker {
  color: #294b55;
}
.text-cyan-dark {
  color: #296673;
}
.text-cyan {
  color: #2ab2c7;
}
.text-cyan-light {
  color: #9de4c3;
}
.text-cyan-lighter {
  color: #c7e9f1;
}
.text-cyan-lightest {
  color: #dcf0f7;
}

.border-cyan-darkest {
  border-color: #283d46;
}
.border-cyan-darker {
  border-color: #294b55;
}
.border-cyan-dark {
  border-color: #296673;
}
.border-cyan {
  border-color: #2ab2c7;
}
.border-cyan-light {
  border-color: #9de4c3;
}
.border-cyan-lighter {
  border-color: #c7e9f1;
}
.border-cyan-lightest {
  border-color: #dcf0f7;
}





html,
body {
  overflow-x: hidden;
  height: 100%;
}

html {
  height: 100%;
  min-height: 100%;
}

.strong {
  font-weight: 900;
}

.page-hero {
  height: auto;
  justify-content: center;
  align-items: center;
  padding: 2.5rem 0;
}

.hero-section {
  width: 80%;
  margin: auto;
  padding: 3rem 0;
}

.hero-text {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.intro-section {
  padding: 5rem 10rem;
}

.desktop-display {
  display: block; /* Display desktop display by default */
}

/* CSS for mobile display */
.mobile-display {
  display: none; /* Hide mobile display by default */
}

@media screen and (max-width: 996px) {
  .desktop-display {
    display: none;
  }
  .mobile-display {
    display: block;
  }
  .page-hero {
    height: auto;
    justify-content: center;
    align-items: center;
    padding: 0 0 2.5rem;
  }
  .intro-section {
    text-align: center;
    padding: 5rem 0;
  }
}

/* Nav Styling */
.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  border-color: #dee2e6 #dee2e6 #fff;
}

.nav-link {
  text-decoration: none;
}


.navbar {
  padding: 0.5rem 0 0.5rem 0;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-around;
}

.navbar-nav li a {
  padding: 10px;
}

.navbar-nav li {
  padding: 2px;
}

.platform-submenu {
  background-color: var(--bs-cyan);
  color: var(--bs-white);
}

.platform-submenu a {
  color: var(--bs-white);
}

.platform-hero {
  background-color: #dcf0f7;
  color: #294b55;
}

.contextual-submenu {
  background-color: var(--bs-blue);
  color: var(--bs-white);
}

.contextual-submenu a {
  color: var(--bs-white);
}

.contextual-hero {
  background-color: #dce2f7;
  color: #293a73;
}

.resources-submenu {
  background-color: var(--bs-orange);
  color: var(--bs-white);
}

.resources-submenu a {
  color: var(--bs-white);
}

.resources-hero {
  background-color: #FBDCD7;
  color: #3D3235;
}

.about-submenu {
  background-color: var(--bs-primary);
  color: var(--bs-white);
}

.about-submenu a {
  color: var(--bs-white);
}

.about-hero {
  background-color: #afbdc1;
  color: #0c343d;
}

ul li {
  list-style: none;
}

#content ul li {
  list-style: disc;
}

.section-graphic-left {
  float: left;
}
.section-graphic-right {
  float: right;
}

#career ul li {
  list-style: circle;
}

#policy ul {
  list-style-type: none;
  margin-left: 10px;
}

#policy ul li {
  margin-bottom: 12px;
  margin-left: -10px;
  display: flex;
  align-items: flex-start;
}

#policy ul li::before {
  color: transparent;
  font-size: 1px;
  content: " ";
  margin-top: 8px;
  margin-right: 15px;
  padding: 7px;
  background-color: #0e738a;
  -webkit-mask-image: url("../../library/images/icon.png");
  -webkit-mask-size: cover;
}

@media print {
  html {
    height: auto;
    min-height: auto;
  }
}

svg {
  margin-left: 5px;
}

body {
  min-height: 100%;
  position: relative;
  font-family: "Source Sans 3", Arial, Helvetica, sans-serif;
}

body a {
  text-decoration: none;
  line-height: 120%;
  font-weight: 500;
}

.section {
  padding: 2.5rem 0;
}

header {
  position: absolute;
  width: 100%;
  z-index: 99;
}

.fill {
  min-height: 100%;
  height: 100%;
}

footer {
  width: 100%;
  padding: 30px 10px 15px;
  background: #0c343d;
  color: var(--bs-white);
}

#logo-list {
  float: right;
}

footer img {
  padding: 0 10px;
}

footer .col {
  margin-top: 1px;
}

footer a,
footer .nav a {
  color: var(--bs-white);
  padding-bottom: 0;
}

footer .nav-link:hover,
footer .nav-link:focus {
  color: #0e738a;
}

footer a {
  color: var(--bs-white);
}

footer a:hover {
  color: #0e738a;
  font-weight: 500;
}

footer .footer-logo {
  display: inherit;
  margin-bottom: 10px;
  height: 50px;
}

/* Sticky header */
.header-outer {
  /* Make it stick */
  height: var(--header-outer-height);
  position: sticky;
  top: calc(
    var(--header-height-difference) * -1
  ); /* Multiply by -1 to get a negative value */
  display: flex;
  align-items: center;

  /* Other */
  background-color: var(--header-bg);
}

.header-inner {
  /* Make it stick */
  height: var(--header-inner-height);
  position: sticky;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.responsive-wrapper {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

header .logo {
  max-width: 150px;
}

.logo {
  margin: 20px 0;
  height: auto;
}
header .logo img {
  margin: 20px 0;
}

header .nav {
  padding: 10px;
}

.platform:hover {
  color: var(--bs-cyan);
}

.resources:hover {
  color: var(--bs-orange);
}

.company:hover {
  color: var(--bs-blue);
}

.contact:hover {
  color: var(--bs-green);
}

.platform.active {
  font-weight: 600;
  color: var(--bs-cyan);
}

@media (min-width: 992px) and (max-width: 1199px) {
  header .nav {
    padding-top: 42px;
  }
}

@media only screen and (max-width: 992px) {
  body {
    margin-top: 0rem;
  }
  .header-outer {
    height: auto;
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
  }

  .header-inner {
    height: auto;
    position: relative;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .navbar {
    padding-top: 0.5rem;
    padding-bottom: 1.5rem !important;
  }

  #footer-sitemap-list,
  #footer-policies-list,
  #login-register-list,
  #iab-logos,
  #logo-list {
    margin-bottom: 1rem;
  }

  #logo-list p {
    padding-left: 10px;
  }
}

@media (min-width: 1199px) {
  header .nav {
    padding-top: 65px;
  }
}

#homepage-header .container {
  position: static;
  top: --header-outer-height;
}

video {
  width: 100%;
  height: auto;
}

header .navbar-default {
  background: transparent;
}

.page-numbers.current {
  background: #0c343d;
  color: var(--bs-white);
}

nav {
  width: 100%;
  z-index: 10;
}

.navbar-brand {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  text-decoration: none;
  white-space: nowrap;
}

.navbar-nav.container-fluid.menu-item-1 {
  background-color: var(--bs-blue);
  color: var(--bs-white);
}

.navbar-nav.container-fluid.menu-item-2 {
  background-color: var(--bs-orange);
  color: var(--bs-white);
}

.btn-floating {
  color: var(--bs-white);
  background-color: none;
  width: 50px;
  height: 50px;
  border: 1px solid #0c343d;
}

.btn-floating svg {
  margin: 0px;
}

.accordion-button {
  background: transparent;
}

h1,
h2,
h3,
.h1,
.h2,
.h3 {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

h4,
h5,
h6,
.h4,
.h5,
.h6 {
  font-family: "Roboto Slab", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

form {
  padding: 10px;
}

.nav > li > a {
  color: #000000;
}

.nav > li > a:hover,
.nav > li > a:focus {
  background-color: transparent;
}

.well {
  color: #000000;
}

@media print {
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6 {
    font-size: 20px !important;
  }

  p {
    font-size: 14px !important;
  }

  .text-uppercase {
    text-transform: uppercase;
  }

  img {
    max-width: 100% !important;
    height: auto !important;
  }

  .img-footer {
    padding: 10px;
    float: right;
  }

  .navbar {
    display: block;
  }

  #navbar,
  .navbar-toggle {
    display: none !important;
  }

  .feature-item img {
    max-width: 100px !important;
  }
}

.svg-inline--fa.fa-w-14 {
  width: 0.875em;
}

.page-banner {
  position: relative;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: top center;
}

@media screen and (max-width: 992px) {
  .page-banner {
    background-size: cover;
  }
}

.page-banner .banner-text-wrapper {
  position: absolute;
  bottom: 40px;
  text-align: center;
  text-shadow: 1px 1px 1px #333333;
}

@media only screen and (max-width: 991px) {
  .page-banner .banner-text-wrapper {
    width: 100%;
    

  }
}

.page-banner .banner-text-wrapper .lead {
  font-size: 28px;
  font-weight: bold;
  color: var(--bs-white);
  margin: 0 0 20px;
}

.page-banner .banner-text-wrapper p {
  font-size: 18px;
  color: var(--bs-white);
  margin: 0 0 40px 0;
  font-weight: 500;
}

.highlighted {
  background-color: #cedee2;
}

.has-background {
  background-color: #cedee2;
  padding: 20px;
  margin-bottom: 10px;
}

@media (min-width: 1200px) {
  .page-banner .banner-text-wrapper {
    right: auto;
    left: 20%;
  }

  #contact-locations-banner.page-banner.banner-text-wrapper {
    right: auto;
    left: 30%;
  }

  .page-banner .banner-text-wrapper .lead {
    font-size: 40px;
  }

  .page-banner .banner-text-wrapper p {
    font-size: 26px;
  }
}

@media (min-width: 460px) and (max-width: 860px) {
  #contact-locations-banner.page-banner.address-list {
    right: auto;
    left: 20%;
    margin-top: 160px;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .page-banner .banner-text-wrapper {
    right: auto;
    left: 20%;
  }

  .page-banner .banner-text-wrapper .lead {
    font-size: 34px;
  }

  .page-banner .banner-text-wrapper p {
    font-size: 22px;
  }
}

@media screen and (max-width: 992px) {
  .page-banner {
    min-height: 480px;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .page-banner {
    min-height: 220px;
  }
}

.page-intro {
  margin: 10px 0;
}

.page-intro > p {
  font-size: 22px;
  margin: 0 0 40px 0;
  text-align: center;
}

@media only screen and (max-width: 991px) {
  .page-intro > p {
    font-size: 18px;
  }
}

.bottom-banner {
  height: 360px;
  min-height: 360px;
}

.content-panel {
  position: relative;
  overflow: visible;
  float: left;
  margin: 0 0 40px 0;
}

.content-panel .btn {
  margin: 20px 0 0 0;
}

.content-panel.panel-img-left img {
  float: left;
}

@media (min-width: 992px) {
  .content-panel.panel-img-left .content-panel-content {
    padding: 0 0 0 30px;
  }
}

.content-panel.panel-img-right img {
  float: right;
}

@media (min-width: 992px) {
  .content-panel.panel-img-right .content-panel-content {
    padding: 0 30px 0 0;
  }
}

.card-body {
  padding: 8px;
}

#logo-banner {
  background-color: var(--bs-gray-50);
}
#logo-banner .carousel-item {
  transition: transform 10s linear;
}
.carousel-inner {
  width: 100%;
  margin: 0 auto;
}
.carousel-wrapper .carousel-inner {
  height: 40px;
}
.carousel-wrapper .carousel-inner .image-wrapper {
  margin: auto;
  text-align: center;
}
.carousel-wrapper .carousel-inner .image-wrapper img {
  vertical-align: middle;
  display: inline-block;
  max-height: 40px;
  max-width: 100%;
  height: auto;
  margin: auto 20px;
}

@media only screen and (max-width: 950px) {
  #logo-banner {
    height: auto;
    padding: 30px 0;
  }

  .carousel-wrapper .carousel-inner .image-wrapper img {
    vertical-align: middle;
    display: inline-block;
    max-height: 40px;
    max-width: 100%;
    height: auto;
    padding: 10px 0;
    margin: 0 20px;
  }
}

.study-showcase .showcase-item .image-wrapper img {
  vertical-align: middle;
  display: inline;
  max-height: 120px;
  max-width: 220px;
}

.study-showcase .showcase-item p {
  padding: 20px 0;
  border-top: 1px solid #b1abad;
}

.form-control {
  width: 100%;
  height: 35px;
  margin: 5px 0;
  padding: 1px 2px;
  background-color: var(--bs-white);
  border: 2px solid;
  border-color: transparent transparent var(--bs-indigo) var(--bs-white);
  color: #0c343d;
  border-radius: 0;
}

#consent {
  margin: 0 0 16px 8px;
}

.row-height {
  display: table;
  table-layout: fixed;
  height: 100%;
  width: 100%;
}

.table-cell {
  display: table-cell;
  float: none;
  height: 100%;
}

.col-middle {
  vertical-align: middle;
}

#platform-card p {
  margin-bottom: 0.5rem;
}

@media screen and (max-width: 768px) {
  .temp-margin-top {
    margin-top: 20px;
  }
}

#about .lead {
  font-size: 20px;
}

#about .btn {
  display: inline-block;
}

#about-more p {
  width: 80%;
}

#owners,
#brands {
  text-align: center;
}

#technical p {
  margin-top: 30px;
}

#continue {
  position: relative;
  /*  height: 600px;*/
  overflow: hidden;
}

.statistics-wrapper {
  margin: 0 0 30px 0;
}

#for-brand .statistics-list {
  margin: 0;
}

@media only screen and (max-width: 992px) {
  #for-brand .statistics-list .statistics-item strong {
    font-size: 40px;
    line-height: 40px;
  }

  #for-brand .statistics-list .statistics-item p {
    font-size: 12px;
  }
}

.carousel-wrapper h4 {
  border-bottom: 1px solid #0e738a;
  padding-bottom: 20px;
  font-size: 26px;
  margin-bottom: 20px;
}

@media only screen and (max-width: 1200px) {
  .carousel-wrapper h4 {
    font-size: 16px;
    margin: 30px 0 20px;
  }
}

@media (min-width: 767px) and (max-width: 768px) {
  .carousel-wrapper h4 {
    margin: 20px 0;
  }
}

/*.carousel-wrapper .carousel-inner {
  height: 60px;
  margin-bottom: 40px;
}*/

.carousel-wrapper .carousel-inner .image-wrapper {
  /*line-height: 60px;
  max-height: 60px;*/
  text-align: center;
  margin: auto;
}

.carousel-wrapper .carousel-inner .image-wrapper img {
  vertical-align: middle;
  display: inline-block;
  max-height: 40px;
  max-width: 50%;
  height: auto;
  margin: auto 20px;
}

.carousel-control-next-icon,
.carousel-control-prev-icon {
  background-image: none !important; /*overrides default white arrows*/
}

.carousel-control-next,
.carousel-control-prev {
  margin: auto;
  text-align: center;
  min-height: 300px;
}

@media only screen and (max-width: 992px) {
  #logo-banner {
    height: auto;
    padding: 30px 0;
  }

  .carousel-wrapper .carousel-inner .image-wrapper img {
    vertical-align: middle;
    display: inline-block;
    max-height: 40px;
    max-width: 100%;
    height: auto;
    padding: 10px 20px;
    margin: 0 20px;
  }
}

#post-page .page-banner {
  min-height: 320px;
}

#about-page .fa-linkedin-square {
  /*    font-size: 20px;*/
  color: #0077b5;
}

#about-page .team-list {
  margin: 0 -20px -20px 0;
  overflow: hidden;
}

#about-page .team-list .team-sprite {
  margin: 0 20px 20px 0;
  width: auto;
  float: left;
}

#about-page .team-list .team-sprite h3 {
  margin: 0 0 10px 0;
  font-size: 20px;
  font-weight: 400;
  text-transform: inherit;
}

#about-page .team-list .team-sprite .team-sprite-header {
  display: -webkit-inline-box;
}

.team-sprite-header {
  display: -webkit-inline-box;
  overflow: hidden;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.team-sprite-wrapper {
  padding-left: 5px;
}

.team-sprite-wrapper .btn-lg {
  padding: 10px 20px;
}

#about-page .team-list .team-sprite .team-sprite-header p {
  font-size: 14px;
}

#about-page .team-list .team-sprite .team-sprite-header .team-sprite-wrapper {
  height: 125px;
  padding-left: 5px;
}

#about-page .team-list .team-sprite .team-sprite-header .btn {
  float: left;
  width: 100%;
}

#about-page .team-list .team-sprite .truncate {
  float: left;
}

.truncate {
  overflow: hidden;
  height: 170px;
}

#about-page .card .card-body .card-title {
  display: -webkit-inline-box;
}

.card-title a:focus {
  outline: 2px solid black;
}

#about-page .team-list .team-sprite p {
  float: left;
}

.team-list .team-sprite img {
  max-width: 20rem;
  text-align: center !important;
}

.contributor-list img {
  max-width: 15rem;
  text-align: center !important;
}

.smart-infographic .infographic-image img {
  max-width: 100%;
  text-align: center !important;
}

.smart-info img {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px; /* adds space between image and text */
}

.icon-image {
  text-align: center !important;
}

.smart-icon .icon-image img {
  max-width: 10rem;
}

.smart-icon .icon-image-small img {
  max-width: 8rem;
}

.smart-icon .icon-image-large img {
  max-width: 15rem;
}

.hero-image {
  text-align: center !important;
}

.hero-image img {
  max-width: 100%;
}

@media (max-width: 1240px) {
  .team-list .team-sprite img {
    max-width: 15rem;
  }
  .hero-image img {
    max-width: 80%;
  }
}

@media (min-width: 992px) {
  #about-page .team-list .team-sprite:nth-child(3n + 1) {
    clear: both;
  }
}

@media (min-width: 768px) and (max-width: 992px) {
  #about-page .team-list .team-sprite:nth-child(2n + 1) {
    clear: both;
  }
}

@media only screen and (max-width: 767px) {
  #about-page .team-list {
    margin: 0;
  }

  #about-page .team-list .team-sprite {
    width: 350px;
    margin: 0 auto;
    float: none;
  }

  #about-page .team-list .team-sprite .btn {
    font-size: 12px;
  }
}

@media (min-width: 768px) and (max-width: 992px) {
  #about-page .team-list .team-sprite {
    width: 350px;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  #about-page .team-list .team-sprite {
    width: 306px;
  }

  #about-page .team-list .team-sprite .btn {
    font-size: 12px;
  }
}

#insight-archive {
  border-top: 1px solid #b1abad;
}

#insight-list {
  margin: 40px 0 0 0;
}

#insight-list .listpost {
  margin: 0 0 80px 0;
  float: left;
}

#insight-list .listpost a {
  color: #000000;
}

#insight-list .listpost > .img-wrapper {
  max-width: 50%;
  width: 50%;
  overflow: hidden;
  padding: 0 10px;
}

#insight-list .listpost > .img-wrapper img {
  max-width: 100%;
  height: auto;
  margin: auto;
}

#insight-list .listpost h2 {
  margin-top: 0;
  line-height: 20px;
  font-weight: 600;
}

@media only screen and (max-width: 992px) {
  #insight-list .listpost h2 {
    margin: 0 0 10px 0;
  }
}

#insight-list .listpost h2 a {
  font-size: 22px;
}

@media (min-width: 992px) {
  #insight-list .listpost .category {
    margin: 40px 0 0 0;
  }
}

#insight-list .listpost .post-content {
  margin: 10px 0 0 0;
}

@media only screen and (max-width: 992px) {
  #insight-list .listpost .post-content a {
    font-size: 14px;
  }
}

#insight-list .listpost .post-footer {
  margin: 20px 0 0 0;
}

#insight-list .listpost .read-more {
  float: left;
}

#insight-list .listpost .read-more .btn {
  color: var(--bs-white);
}

#insight-list .listpost .social {
  float: right;
}

#insight-list .listpost .social p {
  line-height: 36px;
  margin: 0 20px 0 0;
}

#insight-list .listpost .social * {
  display: inline-block;
  float: left;
}

#insight-list .listpost .social a {
  height: 36px;
  width: 36px;
  margin: 0 2px;
}

#insight-list .listpost.pull-image-left > img {
  float: left;
}

#insight-list .listpost.pull-image-right > img {
  float: right;
}

@media only screen and (max-width: 992px) {
  #insight-list .listpost {
    margin: 0 0 40px 0;
  }

  #insight-list .listpost > .img-wrapper {
    max-width: 100%;
    width: 100%;
    margin: 0 0 20px 0;
  }
}

#insight-page .breadcrumb {
  margin: 0;
}

#insight-page .page-banner {
  max-height: 320px;
}

#insight-page .section {
  padding: 30px 0;
}

#insight-page .information {
  line-height: 36px;
}

#insight-page .information .social {
  float: right;
}

#insight-page .information .social p {
  margin: 0 20px 0 0;
}

#insight-page .information .social * {
  display: inline-block;
  float: left;
}

#insight-page .information .social a {
  height: 36px;
  width: 36px;
  margin: 0 2px;
}

@media only screen and (max-width: 767px) {
  #insight-page .information .social {
    float: left;
    margin: 20px 0 0 0;
  }
}

#insight-page .post-content {
  margin: 40px 0 0 0;
}

#insight-page .post-content img {
  margin: 20px auto;
}

@media only screen and (max-width: 767px) {
  #insight-page .post-content img {
    width: 100%;
    height: auto;
  }
}

#insight-page .post-content .btn-center-wrapper {
  margin: 40px 0;
}

@media only screen and (max-width: 767px) {
  #insight-page .post-content a {
    display: block;
  }

  #insight-page .btn-center-wrapper a + a {
    margin-top: 20px;
  }
}

#career-page ul {
  margin: 0;
  padding: 0;
}

#career-page ul li {
  list-style: none;
}

#career-page #day-to-day .specification-statistic {
  color: #0c343d;
}

#career-page #day-to-day ul li p {
  font-size: 14px;
}

#career-page #person-specification h2 {
  margin-bottom: 40px;
}

#career-page .specification-list {
  margin: 0 -20px -20px 0;
}

#career-page .specification-list .specification-item {
  position: relative;
  margin: 0 20px 20px 0;
  height: 120px;
}

@media only screen and (max-width: 767px) {
  #career-page .specification-list .specification-item {
    clear: both;
  }
}

#career-page .specification-list .specification-item img {
  float: left;
}

#career-page .specification-list .specification-item h4 {
  float: right;
}

#career-page .specification-list .specification-item p {
  text-align: center;
}

@media (min-width: 767px) and (max-width: 991px) {
  #career-page .specification-list .specification-item img {
    float: left;
  }

  #career-page .specification-list .specification-item h4 {
    float: right;
  }
}

#career-page .specification-list .specification-item .specification-title {
  margin: 0 0 0 20px;
  float: left;
}

@media only screen and (max-width: 767px) {
  #career-page .specification-list .specification-item .specification-title {
    margin: 0;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

@media (min-width: 480px) and (max-width: 767px) {
  #career-page .specification-list .specification-item {
    height: 180px;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  #career-page .specification-list .specification-item {
    height: auto;
    width: 350px;
  }

  #career-page .specification-list .specification-item img {
    max-width: 120px;
  }
}

@media (min-width: 992px) {
  #career-page .specification-list .specification-item {
    height: auto;
    width: 220px;
  }

  #career-page .specification-list .specification-item img {
    max-width: 100px;
  }
}

@media (min-width: 1200px) {
  #career-page .specification-list .specification-item {
    height: auto;
    width: 270px;
  }

  #career-page .specification-list .specification-item img {
    max-width: 140px;
  }
}

@media (min-width: 768px) {
  #career-page .specification-list .specification-item {
    float: left;
  }

  #career-page .specification-list .specification-item img {
    margin: 0 auto;
    float: none;
  }

  #career-page .specification-list .specification-item .specification-title {
    text-align: center;
    width: 100%;
    margin: 10px 0;
  }
}

#career-page #desirable ul {
  margin: 0 0 -15px 0;
}

#career-page #desirable ul li {
  margin: 0 0 15px 0;
}

#contact-page .locations-sprite {
  padding: 0px 5px 30px 0;
}

#contact-page h3 {
  margin-top: 16px;
}

#contact-page .lead {
  margin-top: 0;
  margin-bottom: 16px;
}

#solutions-list .page-intro {
  margin: 50px 0;
}

#solutions-list .content-panel {
  height: auto;
  /*height: 500px;*/
  /*    @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
              height: 410px;
            }
            @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
              height: auto;
            }
            @media only screen and (max-width: @screen-xs-max) {
              height: auto;
            }*/
}

#solutions-list .content-panel > img {
  width: 150%;
  max-width: 100%;
}

#solutions-list .content-panel .content-panel-content {
  margin-bottom: 20px;
}

#solutions-list .content-panel .content-panel-content .brand-image {
  display: inline-block;
  margin: 30px 0 20px;
}

@media (min-width: 992px) {
  #solutions-list .content-panel .content-panel-content {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

@media (min-width: 992px) {
  #solutions-list .content-panel.panel-img-left > img {
    margin-left: -33%;
  }
}

@media (min-width: 992px) {
  #solutions-list .content-panel.panel-img-right > img {
    margin-right: -33%;
  }
}

#solutions-list-intro img {
  margin: 0 auto;
}

.nav-tabs,
.nav-pills {
  text-align: center;
}

.nav-tabs > li,
.nav-pills > li {
  float: none;
  display: inline-block;
  /*display: inline;
  /* ie7 fix */
  zoom: 1;
  /* hasLayout ie7 trigger */
}

.nav-tabs {
  text-align: center;
  border-color: #0e738a;
  border-bottom: 1px solid #0e738a;
  display: flex;
  justify-content: space-around;
}

.nav-tabs > li {
  text-decoration: underline;
  float: none;
  display: inline-block;
  /**display: inline;
  /* ie7 fix */
  zoom: 1;
  /* hasLayout ie7 trigger */
}

.nav-tabs > li a {
  color: #0c343d;
}

.nav-tabs li:hover a {
  border-color: transparent;
}

.nav-tabs > a {
  text-decoration: none;
  float: none;
  display: inline-block;
  /*display: inline;*/
  color: #0c343d;
  /* ie7 fix */
  zoom: 1;
  /* hasLayout ie7 trigger */
}

.nav-tabs a:hover {
  border-color: transparent;
  color: #0e738a;
}

#study-page-intro {
  margin: 40px 0 0;
}
*/ .alignnone {
  margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 5px auto;
}

.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

a img.alignnone {
  margin: 5px 20px 20px 0;
}

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Generic Events page template styling */

#events-landing-page #events-intro p {
  font-size: 24px;
}

.sm-animation {
  display: block;
  width: 100%;
  height: auto;
}

@media screen and (max-width: 992px) {
  .sm-animation {
    display: block;
    max-width: 100%;
    height: auto;
  }
}

#smart-tagline h1 {
  text-transform: none;
  font-family: "Lato Bold";
}

/*#icon {
  transition: 0.3s;
}

#icon:hover {
  transform: translate(0, -10px);
}*/

#benefits {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

#engagement h4 {
  padding-bottom: 20px;
}

#engagement p {
  text-align: left;
}

#engagement {
  padding-top: 20px;
  padding-bottom: 40px;
  margin-left: auto;
  margin-right: auto;
}

.testimonials {
  margin: 20px auto;
  max-width: 100%;
  height: auto;
}

#testimonials {
  min-height: 320px;
  border: 1px solid #0e738a;
  border-radius: 0.25rem;
  display: flex;
}

#testimonials h5 {
  padding: 20px 10px;
}

#testimonials h6 {
  font-style: italic;
  font-weight: 700;
  color: #0e738a;
  font-size: 18px;
}

#testimonials .carousel-inner {
  width: 66%;
  margin: 0 auto;
}

#for-brand {
  align-self: center;
  margin: auto 0;
}

#for-brand svg {
  width: 16px;
}

.table tfoot th,
.table thead th {
  background-color: #0c343d;
  color: #fff;
}

.table td {
  padding: 10px 15px;
}

.table td:hover {
  background-color: #a2c3c8;
  opacity: 75%;
}

.solutions-table td {
  padding: 10px 15px;
  margin-top: 1rem;
}

.solutions-table td:hover {
  font-weight: bold;
}

/* FREQUENT ASKED QUESTION */

.card-header {
  padding: 1rem;
  background-color: #f8f8ff;
}


.tab-pane {
  display: none;
}

.tab-content {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  overflow: hidden;
  padding: 48px;
}

.scolling-content {
  margin: 0 auto;
  height: 555px;
  overflow-y: scroll;
  scroll-snap-type: y mandatory;
  position: relative;
}

.scolling-content .content {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  margin: 48px 0;
  padding-right: 20px;
  scroll-snap-align: start;
}

#swapable-image {
  margin-left: 48px;
  width: 200px !important;
  height: 172px;
}

/*.active {
  display: flex !important;
  flex-direction: row;
  align-items: center;
} increase specificity to avoid this class affecting homepage logo carousel*/

.img-placeholder {
  height: 200px;
  background-color: #495057;
  margin: 60px 0 30px 0;
}

.show {
  visibility: visible;
  opacity: 1;
}

.nav-tabs .nav-link {
  border-top: 2px solid #0c343d;
  border-left: 1px solid #dee2e6;
  border-right: 1px solid #dee2e6;
  margin: 0.5rem auto 0;
  padding: 0.5rem 1.5rem;
  font-size: 18px;
  font-weight: 900;
  color: #0c343d;
}

.nav-tabs .nav-link:hover {
  background-color: #dee2e6;
  border-top: 2px solid #0c343d;
  color: var(--bs-white);
}

.nav-tabs .button {
  text-align: center;
  border-color: #0e738a;
  border-bottom: 1px solid #0e738a;
  display: flex;
  justify-content: space-around;
}

/* .nav-link.active {
  color: #495057 !important;
} */

.scrolling-content {
  margin: 0 auto;
  height: 555px;
  overflow-y: scroll;
  scroll-snap-type: y mandatory;
  position: relative;
}

.scrolling-content .content {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  margin: 48px 0;
  padding-right: 20px;
  scroll-snap-align: start;
}

#swapable-image {
  margin-left: 48px;
  width: 200px;
  height: 172px;
}

.tab-content {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
}
@media screen and (max-width: 992px) {
  #swapable-image {
    margin: 0 auto;
  }

  .tab-content {
    flex-direction: column;
    align-items: flex-start;
  }

  .scrolling-content {
    scroll-snap-type: none;
    height: 300px;
    margin-top: 24px;
  }

  .scrolling-content .content {
    scroll-snap-align: none;
    justify-content: flex-start;
    height: auto;
    margin: 24px 0;
    padding-right: 0;
  }
}

/* RESOURCE PAGE  */

.resource {
  margin: 20px auto;
  max-width: 100%;
  height: auto;
}

#resource {
  min-height: 320px;
  border-bottom: 1px solid #0e738a;
  border-radius: 0.25rem;
  display: flex;
}

#resource .card-header {
  padding: 8px;
  border: transparent;
}

#resource p {
  font-size: 15px;
}

/* #resource h5 {
  padding: 20px 10px;
} */

#resource h6 {
  font-weight: 700;
  font-size: 12px;
}

#resource .carousel-inner {
  width: 90%;
  margin: 10px auto;
}

#resource .carousel-control-next,
.carousel-control-prev {
  width: 2%;
}

#resource .carousel-indicators {
  margin-bottom: 0rem;
  margin-top: 0.5rem;
}

#resource .carousel-indicators [data-bs-target] {
  background-color: #0c343d;
}

#resource img {
  border-radius: 4px;
  width: 100%;
  height: 135px;
  object-fit: cover;
}

.hide {
  display: none;
}

/* INSIGHTS ARTICLE SINGLE  */

#insight-info {
  border-right: 1px solid #0c343d;
}

.insights-img {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 100%;
}

#insight-info .card-header {
  padding: 8px 0;
  background-color: var(--bs-white);
  border: transparent;
}

#insight-info .card-footer {
  background-color: var(--bs-white);
  padding: 8px 0;
  border: transparent;
}

/* #insight-line {
  height: 250px;
  width: 1px;
  border-right: 1px solid #0c343d;
} */

/* Update the existing custom slider CSS block in style.css, starting around line 1240 */

        /* Base Styling for the Slider */
        .slider-container {
            margin: 0 auto;
            position: relative;
            padding: 0; /* FIX: Removed horizontal padding to prevent container overflow */
        }

        /* 1. The viewport that hides overflowing cards */
        .slider-wrapper {
            overflow: hidden;
        }

        /* 2. The movable track containing all the cards */
        .slider-track {
            display: flex; /* Lay out items horizontally */
            transition: transform 0.5s ease-in-out; /* Smooth sliding animation */
            padding: 10px 0; /* Add some vertical padding */
        }

        /* 3. Styling for each individual card item - Shows 4 cards on large screens */
        .card-item {
            /* Force each item to take exactly one-fourth of the wrapper width */
            flex: 0 0 25%;
            max-width: 25%;
            padding: 0 10px; /* Space between cards */
            box-sizing: border-box; /* Include padding in the width calculation */
        }

        /* Navigation Buttons */
        .nav-button {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent black */
            color: white;
            border: none;
            cursor: pointer;
            padding: 0;
            z-index: 10;
            width: 40px;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
        }

        .nav-button:hover {
            background-color: rgba(0, 0, 0, 0.7);
        }

        /* FIX: Apply left/right positioning to all slider buttons */
        #prevButtonInsights, #prevButtonContextual { left: -15px; } 
        #nextButtonInsights, #nextButtonContextual { right: -15px; }

        /* Disabled state */
        .nav-button:disabled {
            background-color: transparent;
            cursor: default;
        }

        /* Responsive Adjustments: Show 2 items on medium screens */
        @media (max-width: 1199px) {
            .card-item {
                flex: 0 0 50%;
                max-width: 50%;
            }
        }

        /* Responsive Adjustments: Show 1 item on small screens */
        @media (max-width: 767px) {
            .card-item {
                flex: 0 0 100%;
                max-width: 100%;
            }
        }

/* CASE STUDY STYLING  */

#case-study .card-body {
  padding: 0 20px 8px 8px;
}

/* Move reCaptcha badge to the left */
.grecaptcha-badge {
  width: 70px !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
  left: 4px !important;
}
.grecaptcha-badge:hover {
  width: 256px !important;
}

/* cookie consent banner styling */

/* cookie-consent-banner needs both a class and an id to receive styling from this stylesheet */

.cookie-consent-banner {
  position: fixed;
  bottom: 0;
  z-index: 9999;
  width: 100%;
  background-color: #fbfbff;
  box-shadow: 0 2px 10px 0 rgb(0 0 0 / 10%);
}

#cookie-consent-banner p {
  margin: 0;
}

#cookie-consent-banner-inner {
  display: flex;
  margin: 40px auto 40px auto;
  width: 50%;
  max-width: 1440px;
  align-items: center;
  justify-content: space-between;
}

#cookie-consent-banner-inner button {
  white-space: nowrap;
}

#cookie-banner-close {
  position: absolute;
  right: 20px;
  top: 20px;
  user-select: none;
  cursor: pointer;
}

@media only screen and (max-width: 991px) {
  #cookie-consent-banner-inner {
    flex-direction: column;
    text-align: center;
  }

  #cookie-consent-banner-inner button {
    margin-top: 10px;
  }
}

/* NEWs PAGE  */

#news-events {
  min-height: 320px;
  display: flex;
}

#news-events .card-header {
  padding: 8px;
  background-color: var(--bs-body-bg);
  border: transparent;
}

#news-events .card-body {
  height: 100%;
  background-color: var(--bs-white);
  padding: 8px;
  border: transparent;
}

#news-events p {
  font-size: 15px;
}

#news-events h6 {
  font-weight: 700;
  font-size: 12px;
}

#news-events img {
  border-radius: 15px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hide {
  display: none;
}

#latest-news .card-header {
  padding-right: 1.5rem;
  background-color: var(--bs-white);
  border: transparent;
}

#latest-news .card-body {
  height: 100%;
  background-color: var(--bs-white);
  padding: 8px;
  border: transparent;
}

#latest-news p {
  font-size: 15px;
}

#latest-news h6 {
  font-weight: 700;
  font-size: 12px;
}

#latest-news img {
  border-radius: 15px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*-------- CREATIVE PAGE --------*/
dotlottie-player.dlp-300x600 {
  width: 300px !important;
  height: 600px !important;
  float: right;
}

#mpu-anim-container {
  background-color: #fff !important;
}

#creative_specs_nav {
  float: none;
  clear: both;
  list-style: none;
  margin: 0px;
  padding: 20px;
}

#creative_specs_nav a {
  display: block;
  width: 100%;
  padding: 20px 10px;
  color: #362F42;
  position: relative;
  z-index: 2;
  text-decoration: none;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

#creative_specs_nav a:hover {
  border-bottom: 0px;
  color: #fbfbff;
}

#creative_specs_nav a:after {
  content: "";
  height: 100%;
  left: 0;
  top: 0;
  width: 0px;
  position: absolute;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  z-index: -1;
}

#creative_specs_nav a:hover:after {
  width: 80%;
  background: #D7B3F5;
}

.top-40 {
  top: 40px;
}

/* Demo */ 

.sidebar {
  width: 230px;
  background: #0C343D;
  color: #fbfbff;
  height: 100vh;
  display: flex;
  flex-direction: column;
  padding: 20px;
  overflow-y: scroll;
  box-sizing: border-box;
  justify-content: space-between;
  position: fixed;  /* Make the sidebar fixed */
}
.sidebar img {
  width: 140px;
  margin-bottom: 30px;
  cursor: pointer;
}
.menu {
  flex-grow: 1;
  overflow-y: auto;
}
.menu-item {
  font-size: 14px;
  margin: 10px 0;
  cursor: pointer;
  padding: 10px;
  border-radius: 4px;
  transition: background 0.2s;
}
.menu-item:hover,
.menu-item.active {
  background: rgba(255, 255, 255, 0.2);
}
.sidebar-footer {
  margin-top: 30px;
  font-size: 14px;
  line-height: 1.6;
}
.sidebar-footer a {
  color: #fbfbff;
  text-decoration: none;
}
.demo-guide {
  flex: 1;
  padding: 40px;
  text-align: center;
  margin-left: 230px; /* Make space for the fixed sidebar */
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.progress-bar {
  height: 6px;
  background: #CECED5;
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 20px;
}
.progress-fill {
  height: 100%;
  width: 0%;
  background: #2AB2C7;
  transition: width 0.3s ease;
}
.demo-guide h2 {
  font-size: 28px;
  margin-bottom: 20px;
}
#step-container {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 50px 0;
}
#step-container .text-content {
  width: 30%; /* Title and description together on the left */
  text-align: left;
  margin-right: 20px;
}
#step-container img {
  width: 65%;
  padding: 0 10px;
  max-height: 800px;
  object-fit: contain;
  border-radius: 8px;
}
.demo-guide p {
  font-size: 16px;
  line-height: 120%;
  color: #5F5F6D;
}

.navigation {
    position: fixed;
}

.navigation button {
  padding: 5px 12px;
  margin: 15px 2px 0;
  border: none;
  background: #2AB2C7;
  color: #fbfbff;
  border-radius: 25px;
  font-size: 15px;
  cursor: pointer;
  min-width: 100px;
}
.navigation button:hover {
    background: #296673; 
}    
.navigation button:disabled {
  background: #ccc;
  cursor: not-allowed;
}
#progress-dots {
  margin-top: 25px;
  display: none;
}
#progress-dots span {
  display: inline-block;
  width: 14px;
  height: 14px;
  background: #CECED5;
  border-radius: 50%;
  margin: 0 6px;
  transition: background 0.3s;
}
#progress-dots .active {
  background: #2AB2C7;
}

/* Microsite */

.microsite-header h1,
.microsite-header h2 {
  font-family: 'Hanken Grotesk';
  font-weight: normal;
  text-transform: none;
}

.microsite-subheader h3,
.microsite-subheader h4,
.microsite-subheader h5,
.microsite-subheader h6 {
  font-family: 'Hanken Grotesk';
  text-transform: none;
}

.microsite-header-overview {
  background: #C7D1F1; 
  background: linear-gradient(90deg, rgba(199, 209, 241, 1) 0%, rgba(251, 251, 255, 1) 94%);
}

.microsite-header-product {
  background: #293A73;
  background: linear-gradient(90deg, rgba(41, 58, 115, 1) 0%, rgba(42, 81, 199, 1) 92%);
}

.microsite-text-large {
  font-size: 90px;
  line-height: 120%;
}

.microsite-section .row {
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 991.98px) {
  .microsite-text-large {
    font-size: 3rem;
  }
}

.microsite img {
  max-width: 100%;
  height: auto;
  max-height: 360px;

}

.microsite-blocks img {
  width: 100%;
  height: 25%;
}

.microsite-section {
  height: 500px;
}

.microsite-card-auto {
  border: #2ac779 1px solid;
  border-radius: 10px;
}

.microsite-card-pro {
  border: #2AB2C7 1px solid;
  border-radius: 10px;
}

/* Initial Hidden State */
.fade-in-section {
  opacity: 0;
  transform: translateY(20px); /* Optional: Start slightly lower for a subtle "slide up" effect */
  transition: opacity 0.6s ease-out, transform 0.6s ease-out; /* Define the transition properties and duration */
  will-change: opacity, transform; /* Optimization hint for the browser */
}

/* Visible (Revealed) State */
.fade-in-section.is-visible {
  opacity: 1;
  transform: translateY(0);
}


/* Gradient */

.gradient-teal-dark-blue-light {
  background: #2DAC6F;
  background: linear-gradient(127deg, rgba(45, 172, 111, 1) 16%, rgba(184, 194, 253, 1) 92%);
}

.gradient-indigo-dark-orange-light {
  background: #6157B3;
  background: linear-gradient(127deg, rgba(97, 87, 179, 1) 27%, rgba(254, 161, 137, 1) 92%);
}

.gradient-red-darker-green-lighter {
  background: #692D41;
  background: linear-gradient(170deg, rgba(105, 45, 65, 1) 27%, rgba(230, 248, 210, 1) 92%);
}

.gradient-cyan-darker-orange-lighter {
  background: #1D5468;
  background: linear-gradient(6deg, rgba(29, 84, 104, 1) 27%, rgba(253, 195, 181, 1) 92%);
}

.gradient-red-dark-blue-light {
  background: #BF3358;
  background: linear-gradient(334deg, rgba(191, 51, 88, 1) 27%, rgba(84, 115, 209, 1) 92%);
}

.gradient-indigo-dark-orange-lighter {
  background: #6157B3;
  background: linear-gradient(143deg, rgba(97, 87, 179, 1) 35%, rgba(253, 195, 181, 1) 92%);
}

.gradient-primary-red-green {
  background-image: linear-gradient(to right, #692d41, #592f4e, #433355, #2b3654, #15364d, #194556, #25545d, #366263, #5a867e, #84ac99, #b3d2b5, #e6f8d2);
}


/* Borders Section */ 

.contributor-teal-dark {
  border-top: 2px solid #2DAC6F;
}

.quote-teal-dark {
  border-left: 2px solid #2DAC6F;
}

.quote-red-dark {
  border-left: 2px solid #692D41;
}

.quote-cyan-dark {
  border-left: 2px solid #1D5468;
}

.contributor-indigo-dark {
  border-top: 2px solid #6157B3;
}

.quote-indigo-dark {
  border-left: 2px solid #6157B3;
}

.header-resource-indigo-dark {
  border-left: 2px solid #6157B3;
}