:root {
  /* TOC */
  /* 1. Primitives
     2. Color Variables
     3. Type Variables 
     4. Effect Styles
     5. Spacing/Size Variables
     */

  /* 1. PRIMITIVES */
  --color-grey: #e8e8e8;
  --color-medium-grey: #EBEDEF;
  --color-dark-grey: #676767;
  --color-yellow: #F0C129;
  
  --color-black: rgba(0, 0, 0, 1);
  --color-white: #fff;
  

  /* 2. COLOR VARIABLES */
  --color-primary: var(--color-yellow);
  --color-secondary: var(--color-white);
  --color-tertiary: var(--color-black);

  --color-dark: var(--color-black);
  --color-light: var(--color-white);

  --color-background-dark: var(--color-dark);
  --color-background-light: var(--color-light);
  
  --color-text-dark: var(--color-dark);
  --color-text-light: var(--color-light);

  --light-input: var(--color-light);
  

/* 3. TYPE VARIABLES */
  --font-family-body: "Outfit", Helvetica, sans-serif;
  --font-family-heading: "Kanit", Helvetica, sans-serif;
  

  /* Text-size styles */
  /* base size: body-2 (16px) */
  --display: 5.5rem;
  --display-small: 4.5rem;
  --heading-1: 3.75rem;
  --heading-2-large: 3rem;
  --heading-2: 2.25rem;
  --heading-3: 1.5rem;
  --heading-4: 1.56rem;
  --heading-5: 1.12rem;
  --heading-6: 1.12rem;
  --subtext-1: 1.5rem;
  --body-1: 1.12rem;
  --body-2: 1rem;
  --body-3: 0.88rem;
  --label-3: 0.67rem;
  --label-2: 0.88rem;
  --label-1: 1.12rem;
  --button: 1.25rem;
  --button-large: 1.25rem;

  /* 4. Effect Styles */
  --drop-shadow:  0px 3.5118110179901123px 140.47244262695312px rgba(0, 0, 0, 0.2);
  --drop-shadow--small:  0px 2px 40px rgba(0, 0, 0, 0.15);
  --inner-shadow: inset -10px -10px 5.900000095367432px rgba(216, 216, 216, 0.7),inset 6px 6px 8.399999618530273px rgba(174, 174, 192, 0.8);

  --rounded-image: 1000px;
  --border-radius: .4rem;
  --border-radius-small: .2rem;
  
  --box-shadow: 0px 1rem 1.2rem rgba(0, 0, 0, 10%);
  --box-shadow-small: 0px .6rem .8rem rgba(0, 0, 0, 10%);


  /* 5. Spacing/Size Variables */
  --max-width-desktop: 1140px;
  --section-spacing-base: 4rem;
  --section-spacing-medium: 2rem;
  
  --transition: all .3s ease-in-out;
}

@media (max-width: 990px){
  :root {
    --section-spacing-base: 3rem;
    --section-spacing-medium: 1rem;
  }
}

@media (max-width: 420px){
  :root {
    --section-spacing-base: 3rem;
    --section-spacing-medium: .85rem;
  }
}
html {
  font-size: 16px;
 -webkit-font-smoothing: antialiased;
 font-optical-sizing: auto;
 font-variation-settings:
   "wdth" 100;
}

body {
  color: var(--color-dark);
  overflow-x: hidden;
}
@layer custom-styles {
  body {
    font-family: Outfit, sans-serif;
  }

  /* Removing .container breakpoints to allow DND sections to feel tidier */

  @media (min-width: 576px) {
    .container {
      max-width:unset
    }
  }

  @media (min-width: 768px) {
    .container {
      max-width:unset
    }
  }

  @media (min-width: 992px) {
    .container {
        max-width:unset
    }
  }

  .container {
      max-width:1140px;
      padding: 0;
  }



  /* Buttons */
  .hs-submit {
    width: 100%;
  }

  .form-columns-3 .hs-form-field {
    flex: 1;
    max-width: 100%;
  }


  .iu-footer-01 .social {
    padding-bottom: 2rem;
    padding-top: 0;
    margin: 0 !important;
  }

  
  /* :is(.cta_button,
  .cta-button,
  [data-hubspot-cta-id],
  input[type=submit],
  input[type=button],
  .hs-button,
  .interactive-button) {
    border-radius: 3px !important;
  }
   */
  /* Testimonial Cubes */
  [class*=sr-cards-testimonial]  {
     .card {
      border-radius: 3rem 0 3rem 0 !important;
      padding: 2rem;
      overflow: hidden;`
    } 

    .author-meta.sr-spacer-top-50 {
      padding: 0;
      margin: 0;
    }

    #left-quote path {
      fill: currentColor;
    }
  }

  /* Logo Slider */
  .logo-slider img {
    max-height: 80px;
    object-fit: contain;
  }
}
form {
  justify-content: center;
}

#main-content {
  overflow: hidden;
}

/* Typography & Setup */
.dnd-section:not(:is([class*="section-centering"])) {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}

.dnd-section[class*="force-full-width-section"],
.dnd-section[class*="force-full-width-section"] .dnd-column {
  padding: 0;
}

.content-wrapper,
.page-center,
.dnd-section>.row-fluid {
  max-width: var(--max-width-desktop);
  margin: 0 auto;
}

@media (max-width: 1200px){
  .content-wrapper {
    padding: 0 2rem;
  }
}

.dnd-section {
  padding: 80px 1rem
}

body, p {
  font-family: var(--font-family-body);
  font-style: normal;
  font-weight: 400;
  text-decoration: none
}

a:not(.btn, .cta-button, .button, .hs-button) {
  color: var(--color-primary);
  text-decoration: underline;
}

a:not(.btn, .cta-button, .button, .hs-button):is(:hover, :active, :focus) {
    color: var(--color-primary);
}

blockquote {
    border-left-color: #eee
}

table {
    background-color: #fff
}

table,td,th {
    border: 1px solid #0d1932
}

td,th {
    color: #0d1932;
    padding: 18px
}

thead th {
    background-color: #0d1932;
    color: #fff
}

tfoot td {
    background-color: #fff;
    color: #0d1932
}


:where(h1,h2,h3,h4,h5) {
  --margin-bottom: 1rem;   
  --font-weight: 600;

  font-family: var(--font-family-heading);
  font-size: var(--font-size);
  font-weight: var(--font-weight);
}

:where(h1,h2,h3,h4,h5):where(:not([class*=text-],[class*=header-])) {
  line-height: 1.1;
}

h1, .h1 {
  --font-size: 3.75rem;
  --font-weight: 600;

  line-height: 110%; /* 4.125rem */
  letter-spacing: -0.0375rem;
  color: var(--color-text-dark);
}

:is(h2, .h2):is(.large) {
  --font-size: 3rem;
  line-height: 110%; /* 3.3rem */
  letter-spacing: -0.03rem;
}

h2, .h2 {
  --font-size: 2.5rem;
  --font-weight: 600;
  font-style: normal;
  line-height: 110%; /* 3.15rem */
  color: var(--color-text-dark);
}

:is(h3, .h3):is(.large) {
  --font-size: 2rem;
  --font-weight: 500;
  line-height: 120%; /* 2.1rem */
}

h3, .h3 {
  --font-size: 1.8rem;
  --font-weight: 600;
  line-height: 140%; /* 2.1rem */
}

h4, .h4 {
  --font-size: 1.5625rem;
  --font-weight: 600;
  line-height: 140%; /* 2.1rem */
}

:is(.h4, h4):is(.small) {
  --font-size: 1.25rem;
}

:is(h5, .h5).large {
  --font-size: 1.25rem;
}

h5, .h5 {
  --font-size: 1.125rem;
  --font-weight: 600;
  line-height: 126%; /* 1.4175rem */
  letter-spacing: -0.0225rem;
}

h6, .h6 {
  --font-size: 1rem;
  --font-weight: 500;
  line-height: 126%; /* 1.26rem */
  letter-spacing: 0.01rem;  
  font-size: var(--font-size);
}

i, em {
    font-style: italic;
}

.subtext-1 {
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
  color: var(--color-medium-blue)
}

.color-medium-blue {
  color: var(--color-medium-blue);
}

.color-dark {
  color: var(--color-dark);
}

p.large {
  font-size: 1.125rem;
  line-height: 1.5;
}

.preheader.small,
p.small {
  --font-size: .9rem;
  font-size: .9rem;
  line-height: 1.6;
}

p.xsmall {
  --font-size: .8rem;
  font-size: .8rem;
  line-height: 1.6;
}

.preheader {
  text-transform: uppercase;
  font-weight: bold;
}

.preheader.border {
  padding: .5rem .85rem;
  border: currentColor 2px solid;
  display: inline-block;
}

ul li :where(h1,h2,h3,h4,h5) {
  margin-bottom: .5rem;
}

@media (max-width:990px){
  html {
    font-size: 16px; 
  }
  .h1, h1 {
    --font-size: 3rem;
  }
  :is(h2,.h2):is(.large) {
    --font-size: 2.25rem;
  }
  .h2, h2 {
    --font-size: 2rem;
  }
  .h3, h3 {
    --font-size: 1.5rem;
  }
  .h4, h4 {
    --font-size: 1.25rem;
  }
  h5, .h5 {
    --font-size: 1rem;
  }
  :is(.h4, h4):is(.small) {
    --font-size: 1.125rem;
  }
}
@media (max-width:520px){
  html {
    font-size: 14px; 
  }
  h1, .h1 {
    --font-size: 2.6rem;
  }
  :is(h2,.h2):is(.large) {
    --font-size: 2.4rem;
  }
  h2, .h2 {
    --font-size: 2rem;
  }
  .hero h3 {
    --font-size: 1.25rem;
  }
  h5, .h5,
  p, ul {
    font-size: 1.125rem;
  }
/*
  h3, .h3 {
    --font-size: 1.25rem;
  } */
} 

.hs_cos_wrapper_type_rich_text li:not(:last-of-type) {
  margin-bottom: 1rem;
}

.fancy-preheader {
  text-shadow: var(--color-dark) .1rem 0 2rem;
  font-weight: 600
}


.column__image {
  position: relative;
}

@media(min-width:768px){
  .column__image {
    align-self: stretch;
    display: flex;
    justify-content: flex-start;
  }

  .column__image--left {
    order: -1;
    justify-content: flex-end;
  }

  .column__image img {
    height: 100%;
    object-fit: cover;
    width: 50vw;
    max-width: unset;
    position: absolute;
  }
} 
@media (max-width: 767px){
  .column__image{
    width: 100%;
    aspect-ratio: 6/3;
    display: flex;
    justify-content: center;
  }
  .column__image img {
    object-fit: cover;
    width: calc(100vw + 2px);
    height: 100%;
    position: absolute;
  }
}

.teammember {
  border-bottom: 0;

  .teammember__name {
    margin-bottom: 0;
  }
  .teammember__image {
    width: 100%;
    height: auto; 
    aspect-ratio: 2/1.5;
    object-fit: cover;
  }
  .card__body {
    position: relative;
    margin-right: 1rem;
  }
  .card__icon {
    position: absolute;
    top: 1rem;
    right: 0;
  }
}

.accent-graphic {
  pointer-events: none;
}
/* REMOVE THIS AND FIX FOR THE NEW THEME */
/* REMOVE THIS AND FIX FOR THE NEW THEME */
header.header__container[data-layout=desktop] .header__logo-col {
  margin:0;
}

.header__menu-link--active-link a.header__menu-link {
	position: relative;
}

.header__menu-link--active-link a.header__menu-link:after {
	position: absolute;
	background: var(--color-primary);
	bottom:0px;
	width: 100%;
	content: "";
	left:0;
	height: 4px;
}

/* REMOVE THIS AND FIX FOR THE NEW THEME */
/* REMOVE THIS AND FIX FOR THE NEW THEME */