/*
1. Libraries
2. Base
*/
/* Enable CSS debug mode */
/* * {border: 1px solid red;} */
/* Libraries */
*,
*:before,
*:after {
  box-sizing: border-box;
} /* box-sizing: border-box */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct box sizing in Firefox.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * remove the inheritance of text transform in Edge and Firefox.
 * 1. remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
 */
legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
} /* https://github.com/necolas/normalize.css */

/* CSS variables */
:root {
  --column-gap: 2.13%;
  --column-width-multiplier: 8.333;
}
/* Mobile layout */
.row-fluid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

  .row-fluid .span1,
  .row-fluid .span2,
  .row-fluid .span3,
  .row-fluid .span4,
  .row-fluid .span5,
  .row-fluid .span6,
  .row-fluid .span7,
  .row-fluid .span8,
  .row-fluid .span9,
  .row-fluid .span10,
  .row-fluid .span11,
  .row-fluid .span12{
  min-height: 1px;
  width: 100%;
}
/* Desktop layout */
@media (min-width: 768px) {
  .row-fluid {
flex-wrap: nowrap;
justify-content: space-between;
  }
  
.row-fluid .span1 {
  width: calc(var(--column-width-multiplier) * 1% * 1 - var(--column-gap) * (11 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span2 {
  width: calc(var(--column-width-multiplier) * 1% * 2 - var(--column-gap) * (10 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span3 {
  width: calc(var(--column-width-multiplier) * 1% * 3 - var(--column-gap) * (9 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span4 {
  width: calc(var(--column-width-multiplier) * 1% * 4 - var(--column-gap) * (8 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span5 {
  width: calc(var(--column-width-multiplier) * 1% * 5 - var(--column-gap) * (7 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span6 {
  width: calc(var(--column-width-multiplier) * 1% * 6 - var(--column-gap) * (6 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span7 {
  width: calc(var(--column-width-multiplier) * 1% * 7 - var(--column-gap) * (5 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span8 {
  width: calc(var(--column-width-multiplier) * 1% * 8 - var(--column-gap) * (4 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span9 {
  width: calc(var(--column-width-multiplier) * 1% * 9 - var(--column-gap) * (3 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span10 {
  width: calc(var(--column-width-multiplier) * 1% * 10 - var(--column-gap) * (2 * var(--column-width-multiplier) / 100));
}
  
.row-fluid .span11 {
  width: calc(var(--column-width-multiplier) * 1% * 11 - var(--column-gap) * (1 * var(--column-width-multiplier) / 100));
}
  
} /* layout classes https://github.com/HubSpot/cms-theme-boilerplate */
.content-wrapper {
  margin: 0 auto;
  padding: 0;
}

@media screen and (min-width: 1380px) {
  .content-wrapper {
    padding: 0;
  }
}

.dnd-section>.row-fluid {
  margin: 0 auto;
}

.dnd-section .dnd-column {
  padding: 0;
}

@media (max-width: 767px) {
  .dnd-section .dnd-column {
    padding: 0;
  }
} /* dnd classes https://github.com/HubSpot/cms-theme-boilerplate */
[data-sal] {
    transition-delay: 0s;
    transition-delay: var(--sal-delay, 0s);
    transition-duration: .2s;
    transition-duration: var(--sal-duration, .2s);
    transition-timing-function: ease;
    transition-timing-function: var(--sal-easing, ease)
}

[data-sal][data-sal-duration="200"] {
    transition-duration: .2s
}

[data-sal][data-sal-duration="250"] {
    transition-duration: .25s
}

[data-sal][data-sal-duration="300"] {
    transition-duration: .3s
}

[data-sal][data-sal-duration="350"] {
    transition-duration: .35s
}

[data-sal][data-sal-duration="400"] {
    transition-duration: .4s
}

[data-sal][data-sal-duration="450"] {
    transition-duration: .45s
}

[data-sal][data-sal-duration="500"] {
    transition-duration: .5s
}

[data-sal][data-sal-duration="550"] {
    transition-duration: .55s
}

[data-sal][data-sal-duration="600"] {
    transition-duration: .6s
}

[data-sal][data-sal-duration="650"] {
    transition-duration: .65s
}

[data-sal][data-sal-duration="700"] {
    transition-duration: .7s
}

[data-sal][data-sal-duration="750"] {
    transition-duration: .75s
}

[data-sal][data-sal-duration="800"] {
    transition-duration: .8s
}

[data-sal][data-sal-duration="850"] {
    transition-duration: .85s
}

[data-sal][data-sal-duration="900"] {
    transition-duration: .9s
}

[data-sal][data-sal-duration="950"] {
    transition-duration: .95s
}

[data-sal][data-sal-duration="1000"] {
    transition-duration: 1s
}

[data-sal][data-sal-duration="1050"] {
    transition-duration: 1.05s
}

[data-sal][data-sal-duration="1100"] {
    transition-duration: 1.1s
}

[data-sal][data-sal-duration="1150"] {
    transition-duration: 1.15s
}

[data-sal][data-sal-duration="1200"] {
    transition-duration: 1.2s
}

[data-sal][data-sal-duration="1250"] {
    transition-duration: 1.25s
}

[data-sal][data-sal-duration="1300"] {
    transition-duration: 1.3s
}

[data-sal][data-sal-duration="1350"] {
    transition-duration: 1.35s
}

[data-sal][data-sal-duration="1400"] {
    transition-duration: 1.4s
}

[data-sal][data-sal-duration="1450"] {
    transition-duration: 1.45s
}

[data-sal][data-sal-duration="1500"] {
    transition-duration: 1.5s
}

[data-sal][data-sal-duration="1550"] {
    transition-duration: 1.55s
}

[data-sal][data-sal-duration="1600"] {
    transition-duration: 1.6s
}

[data-sal][data-sal-duration="1650"] {
    transition-duration: 1.65s
}

[data-sal][data-sal-duration="1700"] {
    transition-duration: 1.7s
}

[data-sal][data-sal-duration="1750"] {
    transition-duration: 1.75s
}

[data-sal][data-sal-duration="1800"] {
    transition-duration: 1.8s
}

[data-sal][data-sal-duration="1850"] {
    transition-duration: 1.85s
}

[data-sal][data-sal-duration="1900"] {
    transition-duration: 1.9s
}

[data-sal][data-sal-duration="1950"] {
    transition-duration: 1.95s
}

[data-sal][data-sal-duration="2000"] {
    transition-duration: 2s
}

[data-sal][data-sal-delay="50"] {
    transition-delay: .05s
}

[data-sal][data-sal-delay="100"] {
    transition-delay: .1s
}

[data-sal][data-sal-delay="150"] {
    transition-delay: .15s
}

[data-sal][data-sal-delay="200"] {
    transition-delay: .2s
}

[data-sal][data-sal-delay="250"] {
    transition-delay: .25s
}

[data-sal][data-sal-delay="300"] {
    transition-delay: .3s
}

[data-sal][data-sal-delay="350"] {
    transition-delay: .35s
}

[data-sal][data-sal-delay="400"] {
    transition-delay: .4s
}

[data-sal][data-sal-delay="450"] {
    transition-delay: .45s
}

[data-sal][data-sal-delay="500"] {
    transition-delay: .5s
}

[data-sal][data-sal-delay="550"] {
    transition-delay: .55s
}

[data-sal][data-sal-delay="600"] {
    transition-delay: .6s
}

[data-sal][data-sal-delay="650"] {
    transition-delay: .65s
}

[data-sal][data-sal-delay="700"] {
    transition-delay: .7s
}

[data-sal][data-sal-delay="750"] {
    transition-delay: .75s
}

[data-sal][data-sal-delay="800"] {
    transition-delay: .8s
}

[data-sal][data-sal-delay="850"] {
    transition-delay: .85s
}

[data-sal][data-sal-delay="900"] {
    transition-delay: .9s
}

[data-sal][data-sal-delay="950"] {
    transition-delay: .95s
}

[data-sal][data-sal-delay="1000"] {
    transition-delay: 1s
}

[data-sal][data-sal-easing=linear] {
    transition-timing-function: linear
}

[data-sal][data-sal-easing=ease] {
    transition-timing-function: ease
}

[data-sal][data-sal-easing=ease-in] {
    transition-timing-function: ease-in
}

[data-sal][data-sal-easing=ease-out] {
    transition-timing-function: ease-out
}

[data-sal][data-sal-easing=ease-in-out] {
    transition-timing-function: ease-in-out
}

[data-sal][data-sal-easing=ease-in-cubic] {
    transition-timing-function: cubic-bezier(.55, .055, .675, .19)
}

[data-sal][data-sal-easing=ease-out-cubic] {
    transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

[data-sal][data-sal-easing=ease-in-out-cubic] {
    transition-timing-function: cubic-bezier(.645, .045, .355, 1)
}

[data-sal][data-sal-easing=ease-in-circ] {
    transition-timing-function: cubic-bezier(.6, .04, .98, .335)
}

[data-sal][data-sal-easing=ease-out-circ] {
    transition-timing-function: cubic-bezier(.075, .82, .165, 1)
}

[data-sal][data-sal-easing=ease-in-out-circ] {
    transition-timing-function: cubic-bezier(.785, .135, .15, .86)
}

[data-sal][data-sal-easing=ease-in-expo] {
    transition-timing-function: cubic-bezier(.95, .05, .795, .035)
}

[data-sal][data-sal-easing=ease-out-expo] {
    transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}

[data-sal][data-sal-easing=ease-in-out-expo] {
    transition-timing-function: cubic-bezier(1, 0, 0, 1)
}

[data-sal][data-sal-easing=ease-in-quad] {
    transition-timing-function: cubic-bezier(.55, .085, .68, .53)
}

[data-sal][data-sal-easing=ease-out-quad] {
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
}

[data-sal][data-sal-easing=ease-in-out-quad] {
    transition-timing-function: cubic-bezier(.455, .03, .515, .955)
}

[data-sal][data-sal-easing=ease-in-quart] {
    transition-timing-function: cubic-bezier(.895, .03, .685, .22)
}

[data-sal][data-sal-easing=ease-out-quart] {
    transition-timing-function: cubic-bezier(.165, .84, .44, 1)
}

[data-sal][data-sal-easing=ease-in-out-quart] {
    transition-timing-function: cubic-bezier(.77, 0, .175, 1)
}

[data-sal][data-sal-easing=ease-in-quint] {
    transition-timing-function: cubic-bezier(.755, .05, .855, .06)
}

[data-sal][data-sal-easing=ease-out-quint] {
    transition-timing-function: cubic-bezier(.23, 1, .32, 1)
}

[data-sal][data-sal-easing=ease-in-out-quint] {
    transition-timing-function: cubic-bezier(.86, 0, .07, 1)
}

[data-sal][data-sal-easing=ease-in-sine] {
    transition-timing-function: cubic-bezier(.47, 0, .745, .715)
}

[data-sal][data-sal-easing=ease-out-sine] {
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}

[data-sal][data-sal-easing=ease-in-out-sine] {
    transition-timing-function: cubic-bezier(.445, .05, .55, .95)
}

[data-sal][data-sal-easing=ease-in-back] {
    transition-timing-function: cubic-bezier(.6, -.28, .735, .045)
}

[data-sal][data-sal-easing=ease-out-back] {
    transition-timing-function: cubic-bezier(.175, .885, .32, 1.275)
}

[data-sal][data-sal-easing=ease-in-out-back] {
    transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55)
}

[data-sal|=fade] {
    opacity: 0;
    transition-property: opacity
}

[data-sal|=fade].sal-animate,
body.sal-disabled [data-sal|=fade] {
    opacity: 1
}

[data-sal|=slide] {
    opacity: 0;
    transition-property: opacity, transform
}

[data-sal=slide-up] {
    transform: translateY(20%)
}

[data-sal=slide-down] {
    transform: translateY(-20%)
}

[data-sal=slide-left] {
    transform: translateX(20%)
}

[data-sal=slide-right] {
    transform: translateX(-20%)
}

[data-sal|=slide].sal-animate,
body.sal-disabled [data-sal|=slide] {
    opacity: 1;
    transform: none
}

[data-sal|=zoom] {
    opacity: 0;
    transition-property: opacity, transform
}

[data-sal=zoom-in] {
    transform: scale(.5)
}

[data-sal=zoom-out] {
    transform: scale(1.1)
}

[data-sal|=zoom].sal-animate,
body.sal-disabled [data-sal|=zoom] {
    opacity: 1;
    transform: none
}

[data-sal|=flip] {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition-property: transform
}

[data-sal=flip-left] {
    transform: perspective(2000px) rotateY(-91deg)
}

[data-sal=flip-right] {
    transform: perspective(2000px) rotateY(91deg)
}

[data-sal=flip-up] {
    transform: perspective(2000px) rotateX(-91deg)
}

[data-sal=flip-down] {
    transform: perspective(2000px) rotateX(91deg)
}

[data-sal|=flip].sal-animate,
body.sal-disabled [data-sal|=flip] {
    transform: none
}

/*# sourceMappingURL=sal.css.map*/ /* https://github.com/mciastek/sal */




    @font-face {
        font-family: 'Helvetica Neue';
        src: url('https://5014803.fs1.hubspotusercontent-na1.net/hubfs/5014803/raw_assets/public/institute-at-precision-u5/fonts/HelveticaNeue-Light.woff2') format('woff2');
        font-weight: 300;
        font-style: normal;
        font-display: swap;
    }
    @font-face {
        font-family: 'Helvetica Neue';
        src: url('') format('woff2');
        font-weight: 400;
        font-style: normal;
        font-display: swap;
    }
    @font-face {
        font-family: 'Helvetica Neue';
        src: url('https://5014803.fs1.hubspotusercontent-na1.net/hubfs/5014803/raw_assets/public/institute-at-precision-u5/fonts/HelveticaNeue-Medium.woff2') format('woff2');
        font-weight: 700;
        font-style: normal;
        font-display: swap;
    }


/* Base */
:root {

    /* Colors */
    --action1: #733bf7;
    --action2: #00a4bd;
    --black: #000000;
    --white: #ffffff;
    --body-bg:#131316;
    --gray1: #3E3E40;
    --gray2: #18181B;
    --gray3: #131316;
    --light-gray:#f4f4f4;
    --dark-gray:#2b2b2b;
    --card-bg:#F9F9FA;
    --header-bg:#26272B;
    /* THEME */
    
    --action1:#C12A90;
    --action2:#983377;

    --pink:#C12A90;
    --pink-dark:#983377;

    --gold:#FFD700;
    --gold-dark:#917527;

    --teal:#3A5469;
    --teal-dark:#354758;

    --gray-input-bg:#3A5469;
    --gray-input-bg-hover:#70707B;
    --gray-input-stroke:rgb(from var(--white) r g b / 0.18);
    /* some defaults */
    

     
    /* Gradients */
    --gradient1: linear-gradient(-45deg, var(--action1) 0%, var(--action2)50%);
    
    
    
    
    
    
    
    /* Font */

   
    --font1: 'Inter' , sans-serif;
    --font2: 'Helvetica Neue' , sans-serif;
    











    /* Border Radius */
    --border1: 10px;
    --border2: 20px;
    --border3: 30px;
    /*  Shadow */
    
    --shadow1: rgba(0, 0, 0, 0.1) 0px 2px 12px 0px;
    --shadow2: rgba(0, 0, 0, 0.1) 0px 12px 24px 0px;
    --shadow3: rgba(0, 0, 0, 0.1) 0px 16px 32px 0px;
    --textShadow1: 0px 0px 2px rgba(0,0,0,0.5);
    /*  Animation */
    --animation1: .1s ease-in;
    --animation2: .25s ease-in;
    --animation3: 1s ease-in;
    /*  Widths */
    --center: 1240px;
    --center-small: 900px;
    /* Spacing */
    --section-padding-none:0;    
    --section-padding-small:50px 0;
    --section-padding-medium:80px 0;    
    --section-padding-large:100px 0;

    --section-margin-none:0 auto;
    --section-margin-small:0 auto 50px auto;    
    --section-margin-medium:0 auto 80px auto;    
    --section-margin-large:0 auto 100px auto;    

    --section-padding-hero: 220px 0 80px;


    --pill-width: 1320px;
}


section.pill-mode {
  padding: var(--section-padding-medium);
  margin: 80px auto;
  max-width: var(--pill-width);
  padding-left: 40px;
  padding-right: 40px;
  width: calc(100% - 80px);
  border-radius: var(--border3);
  overflow: hidden;
  position: relative;
 @media(max-width: 580px) {
  padding-left: 20px;
  padding-right: 20px;
  width: calc(100% - 20px);
  padding-top: 40px;
  padding-bottom: 40px;
 }
}
/* Centering */
.center {
  float: none;
  margin-left: auto;
  margin-right: auto;
  max-width: var(--center);
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
}

.center-small {
  float: none;
  margin-left: auto;
  margin-right: auto;
  max-width: var(--center-small);
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
}

/* Default anchor link offset */
.anchor {
  display: block;
  position: relative;
  top: -160px;
  visibility: hidden;
}


.shadow-boxes {
  background-color: var(--black-10);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
  padding: 50px;

  .box {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--white);
    padding: 16px;
    aspect-ratio: 1/1;
    max-width: 250px;
    width: 100%;

    &.shadow1 {
      box-shadow: var(--shadow1);
    }

    &.shadow2 {
      box-shadow: var(--shadow2);
    }

    &.shadow3 {
      box-shadow: var(--shadow3);
    }
  }

}

/* Popover styling */

/* remove padding from the iframe popover --- hubspot embedded forms come with extra padding */
.popover-inner-container:has(iframe) {
    padding: 0 !important;
   
}

/* When any card popover is open, lock body scroll. Using class so it works with top-layer. */
body:has(.popover-container:popover-open) {
  overflow: hidden;
}
.popover-container {
  .hsfc-Step__Content {
    /* remove padding from the form step content */
    padding:0;
  }
  border:none;
  background: transparent;
  &:has(form) {
    .popover-inner-container {
      background: transparent;
      padding:0;
    }
  }

  /* Keep dialog within the viewport when short (Popover UA centers tall boxes → top/bottom clip). */
  &:popover-open {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    min-height: 0;
    overflow: hidden;
    max-height: calc(
      100vh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 32px
    );
    max-height: calc(
      100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 32px
    );
  }

  /* Scroll the white panel when the stack exceeds the viewport; avoid nested flex on content (collapses height when popover is intrinsic-sized). */
  &:popover-open .popover-inner-container {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden auto;
    scrollbar-width: none;

    &::-webkit-scrollbar {
      display: none;
    }
  }

  &::backdrop {
    background: rgba(0, 0, 0, 0.9);
    backdrop-filter: none;
    transition: background-color 0.3s;
    transition-behavior: allow-discrete;
    position: fixed;
    pointer-events: auto;
    inset: 0px;
  }

  .popover-inner-container {
    padding: 30px;
    overflow: visible;
    border-radius: var(--border3);
    box-shadow: var(--shadow3);
    background-color: var(--white);
    @media (max-width: 580px) {
      padding: 20px;
    }
  }


  /**/
  button.close-btn {
    display: block;
    margin:0 0 20px auto;
    border:none;
    background:rgba(255,255,255,.25);
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    border-radius: 50%;
    border: 2px solid var(--white);
    transition: var(--animation1);
    span {
      display: flex;
      justify-content: center;
      align-items: center;
      text-align: center;
    }
    svg {
      width: 16px;
      height: 16px;
      path {
        fill: var(--white);
        transition: var(--animation1);
      }
    }
    &:hover,&:focus {
      background: rgba(255,255,255,.9);
      svg {
        path {
          fill: var(--black);
        }
      }
    }
  }
  .popover-content-container {
    &:has(form) {
      max-width: 860px;
      width: 100%;
    }
    max-height: 720px;
    overflow: hidden auto;
    scrollbar-width: none;
    text-align:initial;

    &::-webkit-scrollbar {
      display: none;
    }

    h1,h2,h3,h4,h5,h6 {
      color: initial;
    }
  }
}
/* Team Member Popover CSS */
.popover-container.team-member {
  .popover-content-upper {
    display:block;
    margin-bottom: 30px;
    .popover-member-name {
      margin-bottom:0;
      font-weight: bold;
     }
     .popover-member-position {
      margin-top: 10px;
      margin-bottom:0;
     }
     .social-links {
       display:flex;
       margin-top: 20px;
       gap: 5px;
       a {
         margin:0;
         display:flex;
       }
       a:after {
         display:none;
       }
       a:hover {
         svg path {
           fill: var(--action1);
         }
       }
     }
  }

  .popover-member-bio {
    display: block;
  }
  
}


/*---------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------*/

/* splide pagination and arrows */
ul.splide__pagination {
  position: relative;
  margin-top: 30px;
  bottom: unset;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
  padding:0;
  li {
    margin:0;
    padding:0;

    button.splide__pagination__page {
      width: 24px;
      height: 24px;
      margin:0;
      opacity:1;
      border: 2px solid var(--black);
      border-radius: 50%;
      background: transparent;
      transform: none;
      transition: var(--animation1);
      &:not(.is-active) {
        &:hover,&:focus {
          background: var(--light-gray);
          
        }
      }
      &.is-active {
        background: var(--black);
        transform: none;
      }
    }
  }
  .dark-mode & {
    li {
      button.splide__pagination__page {
        border: 2px solid var(--white);
        &.is-active {
          background: var(--white);
          transform: none;
        }
        &:not(.is-active) {
          &:hover,&:focus {
            background: var(--light-gray);
          }
        }
      }
     
    }
  }
}

.splide__arrows {
  .splide__arrow {
    background:var(--white);
    border: 1px solid var(--gray1);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: var(--animation1);
    box-shadow: var(--shadow1);
    opacity:1!important;
      svg {
        transition: var(--animation1);
        path {
          fill: var(--black);
          transition: var(--animation1);
        }
      }    
    &.splide__arrow--prev {
      left: -18px;
      transform:scale(0.8);
    }
    &.splide__arrow--next {
      right: -18px;
      transform:scale(0.8);
    }

    &:hover:not(:disabled) {
      border: 1px solid var(--black);
      background-color: var(--black);
      opacity:1!important;
      svg {
        path {
          fill: var(--white);
        }
      }
    }
  }
  .dark-mode & {
    .splide__arrow {
      background:var(--white);
      border: 1px solid var(--gray1);
      svg path {
        fill: var(--black);
      }
      &:hover:not(:disabled) {
        border: 1px solid var(--gray2);
        background-color: var(--light-gray);
        svg path {
          fill: var(--black);
        }
      }
    }
  }
}
/* body */
body {
  font-size: 16px;
  line-height: 1.61803398875;
  /* Golden ratio */
  font-family: var(--font1);
  color: var(--black);
  font-weight: normal;
}


/* Set default text size */

section:not(.dark-mode) {
  h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6 {
  span {
    color: var(--action1);
  }
}
}

section.dark-mode {
  h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6 {
  span {
    color: var(--white);
  }
}
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-weight: bold;
}

h1 {}

h2 {}

h3 {}

h4 {}

h5 {}

h6 {}

/* 0 top margin on 1st header */
p:first-child,
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
  margin-top: 0;
}




/* heading styles */
h1,
.h1 {
  font-family: var(--font2);
  font-size: 58px;
  letter-spacing: 0;
  margin-bottom: 20px;
  line-height: 1.1;
  margin-top: 0;

  @media (max-width: 1024px) {
    font-size: 48px;
  }

  @media (max-width: 580px) {
    font-size: 36px;
    margin-bottom: 20px;
  }

}

h2,
.h2 {
  font-family: var(--font2);
  font-size: 48px;
  letter-spacing: 0;
  margin-bottom: 20px;
  margin-top: 0;
  line-height: 1.1;

  @media (max-width: 1024px) {
    font-size: 38px;
  }

  @media (max-width: 580px) {
    font-size: 32px;
    margin-bottom: 20px;
  }
}

h3,
.h3 {
  font-family: var(--font1);
  font-size: 36px;
  letter-spacing: 0;
  margin-bottom: 15px;
  line-height: 1.1;
  margin-top: 0;
  @media (max-width: 1024px) {
    font-size: 32px;
  }

  @media (max-width: 580px) {
    font-size: 28px;
    margin-bottom: 15px;
  }
}

h4,
.h4 {
  font-family: var(--font2);
  font-size: 28px;
  letter-spacing: 0;
  margin-bottom: 15px;
  line-height: 1.1;
  margin-top: 0;
  @media (max-width: 1024px) {
    font-size: 28px;
  }

  @media (max-width: 580px) {
    font-size: 24px;
    margin-bottom: 15px;
  }
}

h5,
.h5 {
  font-family: var(--font2);
  font-size: 20px;
  letter-spacing: 0;
  margin-bottom: 15px;
  line-height: 1.1;
  margin-top: 0;
  @media (max-width: 1024px) {
    font-size: 24px;
  }

  @media (max-width: 580px) {
    font-size: 20px;
    margin-bottom: 15px;
  }
}

h6,
.h6 {
  font-family: var(--font2);
  font-size: 18px;
  letter-spacing: 0;
  margin-bottom: 10px;
  line-height: 1.1;
  margin-top: 0;
}

/* body styles */
.b1 {
  font-family: var(--font1);
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 20px;

  @media (max-width: 580px) {
    font-size: 18px;
  }
}

.b2 {
  font-family: var(--font1);
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 20px;

  @media (max-width: 580px) {
    font-size: 16px;
  }
}

.b3 {
  font-family: var(--font1);
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 20px;

  @media (max-width: 580px) {
    font-size: 15px;
  }
}

.b4 {
  font-family: var(--font1);
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 20px;

  @media (max-width: 580px) {
    font-size: 14px;
  }
}

.b5 {
  font-family: var(--font1);
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 20px;

  @media (max-width: 580px) {
    font-size: 13px;
  }
}

.b6 {
  font-family: var(--font1);
  font-size: 13px;
  line-height: 1.6;
  margin-bottom: 10px;

  @media (max-width: 580px) {
    font-size: 12px;
  }
}

.blockquote,blockquote {
  font-family: var(--font1);
  font-size: 20px;
  font-weight: 500;
  font-style: italic;
  margin: 50px auto;
  display: block;
  padding: 50px;
  max-width: 100%;
  border-radius: var(--border3);
  border: 1px solid var(--gray1);
  background: var(--white);
  @media (max-width: 1024px) {
    padding: 30px;
    
  }
  @media (max-width: 580px) {
    padding: 20px;
    font-size: 18px;
  }
  p:last-of-type {
    margin-bottom: 0;
  }
  p:first-of-type {
    margin-top: 0;
  }


}

.eyebrow {
  font-family: var(--font1);
  font-size: 14px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  display: block;
  margin-bottom: 12px;
  @media (max-width: 580px) {
    font-size: 12px;
  }
}
body {
--btn-padding: 15px 40px 15px 40px;
--btn-border-width: 1px;
--btn-border-radius: var(--border1);
--btn-font-family: var(--font1);
--btn-font-weight:500;
--btn-font-size: 18px;
--btn-line-height: 1.2;
--btn-letter-spacing: .25px;
--btn-text-decoration: none;
--btn-cursor: pointer;
--btn-text-align: center;
--btn-transition: var(--animation1);
--btn-margin: 0;
}
/********************************/
/* BUTTON SPAN .button-span */
/********************************/
span.btn-inner {
  position: relative;
  a:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}


span.button-span .btn-inner {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

span.button-span .btn-inner a,
span.button-span .btn-inner button:not(.close-btn),
span.button-span .btn-inner .hs-cta-wrapper a {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  box-shadow: none;
  cursor: pointer;
  display:inline-block;
}

span.button-span .btn-inner .hs-cta-wrapper {
  display: contents;
}

a {
  &.btn,&.btn-secondary,&.btn-white,&.btn-stroked,&.btn-text{
    display:inline-block;
  }
}



/********************************/
/********************************/
/********************************/
/********************************/
/********************************/
/********************************/




/****************/
/* BUTTON .btn */
/**************/

a.btn,
span.btn a,
span.button-span.btn .btn-inner,
button.btn,
input.hs-button,
.systems-page form button {
  /* display: inline-block; */
  font-family: var(--btn-font-family);
  color: var(--white);
  background-color: var(--action1);
  border: var(--btn-border-width) solid var(--action1);
  border-radius: var(--btn-border-radius);
  padding: var(--btn-padding);
  margin: var(--btn-margin);
  transition: var(--btn-transition);
  text-decoration: none;
  font-weight: var(--btn-font-weight);
  font-size: var(--btn-font-size);
  line-height: var(--btn-line-height);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: none;
  cursor: pointer;
  text-align: center;
  
}

a.btn:hover,
a.btn:focus,
span.btn a:hover,
span.btn a:focus,
span.button-span.btn:hover .btn-inner,
span.button-span.btn:focus-within .btn-inner,
button.btn:hover,
button.btn:focus,
input.hs-button:hover,
input.hs-button:focus,
.systems-page form button:hover,
.systems-page form button:focus {
  background-color: var(--action2);
  color: var(--white);
}
/****************/
/* BUTTON SECONDARY .btn-secondary */
/**************/
a.btn-secondary,
span.btn-secondary a,
span.button-span.btn-secondary .btn-inner,
button.btn-secondary {
  /* display: inline-block; */
  font-family: var(--btn-font-family);
  color: var(--white);
  background-color: var(--teal);
  border: var(--btn-border-width) solid var(--gray-input-stroke);
  border-radius: var(--btn-border-radius);
  padding: var(--btn-padding);
  margin: var(--btn-margin);
  transition: var(--btn-transition);
  text-decoration: none;
  font-weight: var(--btn-font-weight);
  font-size: var(--btn-font-size);
  line-height: var(--btn-line-height);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: none;
  cursor: pointer;
  text-align: center;
}

a.btn-secondary:hover,
a.btn-secondary:focus,
span.btn-secondary a:hover,
span.btn-secondary a:focus,
span.button-span.btn-secondary:hover .btn-inner,
span.button-span.btn-secondary:focus-within .btn-inner,
button.btn-secondary:hover,
button.btn-secondary:focus {
  background-color: var(--teal-dark);
  border-color: var(--gray-input-stroke);
  color: var(--white);
}



/***************************/
/* BUTTON WHITE .btn-white */
/***************************/
a.btn-white,
span.button-span.btn-white .btn-inner,
button.btn-white {
  /* display: inline-block; */
  font-family: var(--btn-font-family);
  color: var(--black);
  background-color: var(--white);
  border: var(--btn-border-width) solid var(--light-gray);
  border-radius: var(--btn-border-radius);
  padding: var(--btn-padding);
  margin: var(--btn-margin);
  transition: var(--btn-transition);
  text-decoration: none;
  font-weight: var(--btn-font-weight);
  font-size: var(--btn-font-size);
  line-height: var(--btn-line-height);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: none;
  cursor: pointer;
  text-align: center;
}

a.btn-white:hover,
a.btn-white:focus,
span.btn-white>a:hover,
span.btn-white>a:focus,
span.button-span.btn-white:hover .btn-inner,
span.button-span.btn-white:focus-within .btn-inner,
button.btn-white:hover,
button.btn-white:focus {
  background-color: #EAE9E8;
}

/*---------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------*/

/********************************/
/* BUTTON STROKED .btn-stroked */
/******************************/
a.btn-stroked,
span.btn-stroked a,
span.button-span.btn-stroked .btn-inner,
span.btn-stroked button:not(.close-btn),
button.btn-stroked {
  font-family: var(--btn-font-family);
  color: var(--black);
  background-color: transparent;
  border: var(--btn-border-width) solid var(--black);
  padding: var(--btn-padding);
  margin: var(--btn-margin);
  transition: var(--btn-transition);
  font-weight: var(--btn-font-weight);
  font-size: var(--btn-font-size);
  line-height: var(--btn-line-height);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: none;
  cursor: pointer;
  text-align: center;
  border-radius: var(--border1);
  .dark-mode-btn & {
    border-color: var(--gray-input-stroke);
    color: var(--white);
  }
}

a.btn-stroked:hover,
a.btn-stroked:focus,
span.btn-stroked a:hover,
span.btn-stroked a:focus,
span.button-span.btn-stroked:hover .btn-inner,
span.button-span.btn-stroked:focus-within .btn-inner,
span.btn-stroked button:not(.close-btn):hover,
span.btn-stroked button:not(.close-btn):focus,
button.btn-stroked:hover,
button.btn-stroked:focus {
  background-color: var(--black);
  color: var(--white);
  .dark-mode-btn & {
    border-color: var(--gray-input-stroke);
    background-color: var(--gray-input-bg-hover);
    color: var(--white);
  }
}



/*---------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------*/


/**************************/
/* BUTTON TEXT .btn-text */
/*************************/
a.btn-text,
span.btn-text a,
span.button-span.btn-text .btn-inner,
.read-more,
span.btn-text button:not(.close-btn),
button.btn-text {
  font-family: var(--btn-font-family);
  font-weight: var(--btn-font-weight);
  /* margin: 20px 0; */
  margin: var(--btn-margin);
  display: inline-flex;
  cursor: pointer;
  text-decoration: none;
  color: var(--black);
  border: none;
  background-color: transparent;
  padding:0;
  font-size: var(--btn-font-size);
  .dark-mode-btn & {
    color: var(--white);
  }
  .btn-icon {
    svg {
      path {
        fill: var(--action1);
        .dark-mode-btn & {
          fill: var(--white);
        }
      }
    }
  }

}

a.btn-text:hover,
a.btn-text:focus,
span.btn-text a:hover,
span.btn-text a:focus,
span.button-span.btn-text:hover .btn-inner,
span.button-span.btn-text:focus-within .btn-inner,
.read-more:hover,
.read-more:focus,
span.btn-text button:not(.close-btn):hover,
span.btn-text button:not(.close-btn):focus,
button.btn-text:hover,
button.btn-text:focus {
  color: var(--action1);
  .dark-mode-btn & {
    color: var(--white);
    svg path {
      fill: var(--white);
      }
  }
}

span.btn-text a:hover::after,
span.btn-text a:focus::after,
span.button-span.btn-text:hover .btn-inner a::after,
span.button-span.btn-text:focus-within .btn-inner a::after {
  transform: translateX(2px);
}






/*---------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------*/


/* BUTTON SMALL .btn__sm */
a.btn.btn__sm,
.btn.btn__sm a,
span.button-span.btn.btn__sm .btn-inner,
span.btn__sm button:not(.close-btn),
button.btn__sm {
  padding: 8px 20px 7px 20px;
  font-size: 16px;
  line-height: 1.2;
}

a.btn-secondary.btn__sm,
span.btn-secondary.btn__sm .btn-inner,
span.btn-secondary.btn__sm button:not(.close-btn),
button.btn-secondary.btn__sm {
  padding: 8px 20px 7px 20px;
  font-size: 16px;
  line-height: 1.2;
}

a.btn-white.btn__sm,
span.btn-white.btn__sm .btn-inner,
span.btn-white.btn__sm button:not(.close-btn),
button.btn-white.btn__sm {
  padding: 8px 20px 7px 20px;
  font-size: 16px;
  line-height: 1.2;
}

a.btn-stroked.btn__sm,
span.btn-stroked.btn__sm .btn-inner,
span.btn-stroked.btn__sm button:not(.close-btn),
button.btn-stroked.btn__sm {
  padding: 8px 20px 7px 20px;
  font-size: 16px;
  line-height: 1.2;
}

a.btn-text.btn__sm,
span.btn-text.btn__sm .btn-inner,
span.btn-text.btn__sm button:not(.close-btn),
button.btn-text.btn__sm {
  font-size: 16px;
  line-height: 1.2;
}


/**************************/
/* BUTTON ICONS .has-icon */
/**************************/
span.button-span.has-icon .btn-icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  line-height: 0;

  svg {
    height: 0.85em;
    width: auto;

    path {
      fill: currentColor;
    }
  }
}

span.button-span.has-icon:hover .btn-icon,
span.button-span.has-icon:focus-within .btn-icon {
  transform: translateX(2px);
}
/***************************************/
.card {
  border-radius: var(--border2);
  
    position: relative;
    display: flex;
    flex-direction: column;
    flex-basis: calc(100% / var(--cols) - var(--gap) / var(--cols) * (var(--cols) - 1));
    border: 1px solid var(--light-gray);
   
    transition: all var(--animation2);
    background-color: var(--card-bg);

  &.full-click {
    &:hover,&:focus {
      border: 1px solid var(--action1);
      background-color: var(--white);
    }
    .btn-inner,.button-span {
      position:unset;
    }
    .button-group a, .button-group button {
      &:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
      }
    }
  }

  &:has(.media.icon) {
    .content {
      padding-top: 20px;
    }
    }

  .media {
    
    &.image {
      position: relative;
      aspect-ratio: 16/9;
      border-top-right-radius: inherit;
      border-top-left-radius: inherit;
      overflow: hidden;
      max-height: 240px;
     &.ratio-16-9 {
      aspect-ratio: 16/9;
     }
     &.ratio-4-3 {
      aspect-ratio: 4/3;
      max-height: unset;
     }
     &.ratio-1-1 {
      aspect-ratio: 1/1;
      max-height: unset;
     }
      /* min-height: 200px; */
      img {
        
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
      }
      &.display-image {}
      &.logo-icon {
        margin: 30px 30px -10px 30px;
        height: 36px;
        width:auto;
        border-radius: 0;
        img {
          height: 36px;
          width: auto;
          object-fit: contain;
        }
        &>span {
          display: flex;
        }
        svg {
          height:  36px;
        }
      }
    }
    &.icon {
      padding: 30px 30px 0 30px;
      &>span {
        display: flex;
      }
      svg {
        height:  36px;
        path {
          fill: var(--action1);
        }
      }
    }
  }

  &.left-aligned {
    .content-upper {
      align-items: flex-start;
      text-align: left;
    }
  }
  &.center-aligned {
    text-align: center;
    .button-group {
      justify-content: center;
      margin-left:auto;
      margin-right: auto;
    }
    .content-upper {
      align-items: center;
      text-align: center;
    }
    .media {
      &.image {
        &.logo-icon {
          img {
            margin-left:auto;
            margin-right: auto;
            right:0;
          }
        }
      }
      &.icon,&.icon>span {
        justify-content: center;
      }
    }
  }


  .content {
    padding: 30px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    flex-grow: 1;


   .content-upper {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex-grow: 1;

      span.eyebrow {
        max-width:max-content;
        display: inline-block;
        line-height: 1.1;
        font-weight: 400;
        margin-bottom: 12px;
        font-size: 12px;
        letter-spacing: 0;
        padding: 6px 8px 4px;
        border-radius: 16px;
        text-transform:none;
        border:1px solid rgb(from var(--teal) r g b / 0.15);
        color: var(--black);
        
        .dark-mode & {
          color: var(--white);
          border: 1px solid var(--gray-input-stroke);
          background-color: rgb(from var(--teal) r g b / 0.15);
        }
        &.commercialization--access,&.precision-aq,&.pink-eyebrow {
          background-color: var(--pink-dark)!important;
          color: var(--white)!important;
          border: 1px solid var(--pink)!important;
        }
        &.research--development,&.precision-for-medicine,&.gold-eyebrow {
          background-color: var(--gold-dark)!important;
          color: var(--white)!important;
          border: 1px solid var(--gold)!important;
        }
      }

      span.title {
        display: block;
        color: var(--black);
        font-weight: bold;
        margin:0;
        line-height: 1.4;
        
      }
      span.position {
        display: block;
        color: var(--black);
        font-weight: 400;
        margin-top: 4px;
        margin-bottom:0;
        line-height: 1.4;
        font-size: 14px;
      }

      span.description {
        margin-top: 10px;
        color: var(--black);
        display: block;
        margin-bottom: 0;
        p:last-of-type {
          margin-bottom: 0;
        }
      }
   }

    .button-group {
      margin-top: 30px;
    }

  }
  section.dark-mode & {
    border: 1px solid var(--gray-input-stroke);
    background-color: var(--gray1);
    &.full-click:hover,&.full-click:focus {
      border: 1px solid rgb(from var(--white) r g b / 0.8);
      background-color: rgb(from var(--body-bg) r g b / 0.95);
    }
    .media.icon svg path {
      fill: var(--white);
    }
    .content {
      
      .content-upper {
        .title,.position,.description,.description p,.description * {
          color: var(--white);
        }
      }

    }
  }
}

/***************************************/
.featured-card {
  /* featured cards use .card class */
  @media(min-width: 768px) {
   overflow: hidden;
    flex-direction:row;
    /* align-items: flex-start; */
    align-items: unset!important;
    justify-content: space-between;
    /* padding: 30px;
    gap: 30px; */
  
    .media {
max-height: unset!important;
      width: 40%;
      /* border-radius: var(--border1)!important;
      border-top-right-radius: var(--border1);
      border-top-left-radius: var(--border1); */
      border-top-right-radius: 0!important;
      border-bottom-right-radius: 0;
    }
    .content {
      width: 60%;
      /* padding:0; */
      .content-upper {
        span.eyebrow {
          /* font-size: 15px;
          padding: 8px 10px; */
        }
        .title {
          font-size: 22px;
        }
      }
    }
  }
  
}

/*****Resource Card**********************************/
.resource-card {
 /* resource cards use .card class */
}

/***************************************/
.blog-card {
  .read-time {
    margin-top: 10px;
  }
}
/*
 * HubSpot new forms (v4): class selectors alone often fail because form UI lives
 * in shadow DOM or a cross-origin iframe. CSS variables on an ancestor are the
 * supported override (--hsf-background__padding pierces shadow DOM).
 * For cross-origin iframe embeds (e.g. popover rich-text embeds), parent CSS
 * cannot reach inside — use HubSpot's "developer" embed code or offset the iframe.
 */
:root {
  --hsf-background__padding: 0;
  --hsf-default-background__padding: 0;
}

[data-hsfc-id="Renderer"] .hsfc-Step .hsfc-Step__Content {
  padding: 0 !important;
}


.form,.popover-content-container:has(form) {
  background-color: var(--card-bg);
  padding: 30px;
  max-width: 765px;
  margin: 0 auto;
  float: none;
  overflow: auto;
  border-radius: var(--border3);
  border: 1px solid var(--light-gray);
  transition: var(--animation2) border;
  &:not(:has(.submitted-message)) {
    &:focus-within {
      border: 1px solid var(--action1);
    }
  }
  .submitted-message {
    text-align: center;
  }
  .form-title:empty {
    display: none;
  }

  form {
    
    .hs-richtext.hs-main-font-element {
      br {
        display: none;
      }
      span {
        display:block;
      }
      margin-bottom: 20px;
    }


    margin-bottom: 0;

    .hs-form-field {
      >label {
        font-size: 12px;
        font-weight: bold;
        line-height: 1.2;
        letter-spacing: 1px;
        pointer-events: auto;
      }
    }


    /* error messages */
    .hs_error_rollup {
      margin-top: 20px;

      .hs-error-msgs {
        margin-top: 0;
      }
    }

    ul.hs-error-msgs {
      margin: -10px 0 20px 0;
      padding: 0;
      list-style: none;

      li {
        display: block;
        text-align: center;
        margin: 0;
        width: 100%;
        font-size: 14px;
        line-height: 1.2;
        font-weight: bold;
        padding: 10px;
        border-radius: var(--border1);
        color: var(--white);
        background-color: red;
      }
    }


    /****** FORM INPUTS ******/
    .form-columns-1,
    .form-columns-2 {
      .input {
        margin-right: 0 !important;
      }
    }

    .form-columns-2 {
      display: flex;
      gap: 20px;
    }

    fieldset {
      max-width: unset;
    }


    input,
    select,
    textarea, select {
      border: 1px solid var(--light-gray);
     
      &:focus {
        outline: 1px solid var(--action1);
      }
      &.error,
      &.invalid {
        border: 1px solid red;
      }
    }



    /* Text Based Inputs */
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="number"],
    input[type="password"] {
      border-radius: var(--border1);
      margin-top: 2px;
      margin-bottom: 20px;
      font-size: 16px;
      background-color: var(--white);
      padding: 16px;
      width: 100% !important;
      appearance: none;
      border: 1px solid var(--light-gray);
      &:not(.error):not(.invalid) {
        border: 1px solid var(--light-gray);
      }
      &.error, &.invalid {
        border: 1px solid red;
      }
    }


    /* Select Inputs */


    select {
      position: relative;
      border: 1px solid var(--light-gray);
      border-radius: var(--border1);
      margin-top: 2px;
      margin-bottom: 20px;
      font-size: 16px;
      background-color: var(--white);
      padding: 16px;
      cursor: pointer;
      width: 100% !important;
      appearance: none;
      background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23000"><path d="M480-357.85 253.85-584 296-626.15l184 184 184-184L706.15-584 480-357.85Z"/></svg>');
      background-repeat: no-repeat;
      background-position: right 16px center;
      background-size: 24px;
      color: var(--black);
      &::placeholder {
        color: var(--gray2);
      }
    }

    /* Radios and Checkboxes */
    ul.inputs-list {
      &.multi-container {
        list-style: none;
        padding: 0;
        margin-top: 8px;
        margin-bottom: 20px;

        label {
          >span {
            font-size: 14px;
            font-weight: normal;
            line-height: 1.2;
            pointer-events: auto;
          }
        }

        /* Shared Input Styles */
        input {
          margin-right: 5px;
          cursor: pointer;
         
        }

        /* Radio Input */
        input[type="radio"] {
          
        }

        /* Checkbox Input */
        input[type="checkbox"] {
          
        }
      }
    }


    /* Textarea Input */
    textarea {
      border: 1px solid var(--light-gray);
      border-radius: var(--border1);
      margin-top: 2px;
      margin-bottom: 20px;
      font-size: 16px;
      background-color: var(--white);
      padding: 16px;
      width: 100% !important;
      min-height: 150px;
      resize: vertical;
    }

    .legal-consent-container {
      font-size: 13px;
      font-weight: normal;
      line-height: 1.6;
      pointer-events: auto;
      display: flex;
      flex-direction: column;
      gap: 10px;

      * {
        margin: 0 !important;
      }

      ul {
        list-style: none;
        padding: 0;
        margin: 0;

        li {
          label {
            display: flex;
            gap: 5px;
            cursor: pointer;

            span {
              margin: 0;
            }
          }
        }
      }
      a {
        &:hover,&:focus {
          color: var(--action2);
        }
      }
    }

    /* Button */
    .hs-button {
      margin-top: 30px;
      margin-bottom: 0;
      display: block;
      width: 100%;
      font-size: 18px;
      border:1px solid var(--action1)!important;
    }
  }

  .dark-mode & {
    background-color: rgba(255, 255, 255, .95);
  }
}

/* for the "new" hubspot form tool */
.form,.popover-content-container:has(form) {
  .hsfc-Renderer {
    p {
      font-family: var(--font1)!important;
      color: var(--black)!important;
      margin: 0 0 10px 0;
    }
    .hsfc-FormWrapper {
      form {
        .hsfc-Step {
          .hsfc-Step__Content {
            padding:0!important;
            /*---- FORM ROWS ----*/
            .hsfc-Row {
              margin-bottom:20px;
              label {
                font-size: 12px;
                font-weight: bold;
                line-height: 1.2;
                letter-spacing: 1px;
                pointer-events: auto;
              }
              input {
                margin-bottom:0;
                border: 1px solid var(--light-gray);
              }
              /* FIELD TYPE SPECIFIC STYLES */
              /* rich text */
              .hsfc-RichText {
                margin-bottom: 30px;
                p:last-of-type {
                  margin-bottom:0;
                }
              }
              /* text input */
              .hsfc-TextField {}
              /* phone input */
              .hsfc-PhoneField {
                .hsfc-PhoneInput {
                  margin-bottom: 20px;
                  .hsfc-PhoneInput__FlagAndCaret {
                    border-color: transparent!important;
                  }
                  input.hsfc-TextInput {
                    margin-bottom:0;
                    margin-top:0;
                  }

                }
              }
              /* textarea field */
              .hsfc-TextareaField {
                textarea {
                  background-color: var(--white);
                  border: 1px solid var(--light-gray);
                }
              }
              /* single checkbox field */
              .hsfc-CheckboxField {
                margin-bottom: 10px;
              }
              /* multiple checkbox field */
              .hsfc-CheckboxFieldGroup {
                margin-bottom:10px;
              }
              /* radio button field */
              .hsfc-RadioFieldGroup {
                margin-bottom: 10px;
              }
              /* file upload field */
              /* select/dropdown field */

            }
            /*---- SUBMIT BUTTON(S) ----*/
            .hsfc-NavigationRow {
              /*button style from buttons.css*/
              button[type="submit"] {
                display: block;
                width:100%;
                display: inline-block;
                font-family: var(--font1);
                color: var(--white);
                background-color: var(--action1);
                border: 2px solid var(--action1);
                border-radius: var(--border1);
                padding: 15px 40px 15px 40px;
                /* margin: 20px 0; */
                margin:0;
                transition: var(--animation1);
                text-transform: uppercase;
                text-decoration: none;
                font-weight: bold;
                font-size: 14px;
                line-height: 1.2;
                letter-spacing: .25px;
                text-decoration: none;
                cursor: pointer;
                text-align: center;
              &:hover,&:focus {
                transform: none;
                background-color: var(--black);
                color: var(--white);
                border-color: var(--black);
              }
              }
            }
          }
        }
      }
    }
  }
}

.hs-search-field {
  --search-button-bg: var(--action1);
  --search-button-color: var(--white);
  --search-border: var(--action1);
  --search-height: 48px;
  --search-radius: 6px;

  .hs-search-field__bar {
    form {
      display: flex;
      align-items: stretch;
      gap: 0;
      flex-wrap: nowrap;
      margin-bottom: 0;
    }

    .hs-search-field__input {
      height: var(--search-height);
      min-height: var(--search-height);
      padding: 0 1rem;
      border: 1px solid var(--search-border);
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
      border-top-left-radius: var(--search-radius);
      border-bottom-left-radius: var(--search-radius);
      font-size: 16px;
      line-height: 1;
      box-sizing: border-box;
      flex: 0 0 180px;
      appearance: none;

      &:focus {
        outline: none;
        border-color: var(--search-button-bg);
        box-shadow: 0 0 0 3px color-mix(in srgb, var(--search-button-bg) 20%, transparent);
      }
    }

    .search-button {
      height: var(--search-height);
      min-height: var(--search-height);
      padding: 0 1rem;
      border: none;
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
      border-top-right-radius: var(--search-radius);
      border-bottom-right-radius: var(--search-radius);
      background: var(--search-button-bg);
      color: var(--search-button-color);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      box-sizing: border-box;
      transition: background 0.2s ease, transform 0.2s ease;

      &:hover {
        filter: brightness(0.95);
      }

      &:focus {
        outline: none;
        box-shadow: 0 0 0 3px color-mix(in srgb, var(--search-button-bg) 20%, transparent);
      }

      svg {
        width: 20px;
        height: 20px;
        fill: currentColor;
      }
    }
  }
  ul.hs-search-field__suggestions {
    margin-top: 0;
    margin-bottom: 0;
  }
}


form {
  .hs-form__virality-link {
    display: none!important;
  }
  & .hsfc-Step {
    & .hsfc-Step__Content {
        & .hsfc-Row {
            input[type="checkbox"] {
              border: 1px solid var(--gray1) !important;
            }
          }
        }
      
  }
}
/* Keep background from scrolling when menu is open */
html.menu-open {
  overflow-y: hidden;
}
html {
  scroll-behavior: smooth;
}

/* set body offset height for fixed header */
body {
  /* margin-top: 100px; */
}

body.hide-header {
  margin-top: 0;
}

body.lp-sign-up {
  margin-top: 0;
}



/* HubSpot Cookie Notification */
div#hs-eu-cookie-confirmation.hs-cookie-notification-position-bottom.can-use-gradients {
  box-shadow: 2px -1px 5px 0px rgba(0, 0, 0, 0.05);
  border: 0;
  background-color: rgba(var(--white), .9);

  div#hs-eu-cookie-confirmation-inner {
    background-color: rgba(var(--white), 0);
    padding: 15px 20px 10px 20px;
    max-width: 1240px;

    p {
      margin-bottom: 0;
    }

    div#hs-en-cookie-confirmation-buttons-area {
      text-align: left;
      margin: 0;

      a#hs-eu-confirmation-button {
        font-weight: bold;
        margin: 10px 0;

        &:hover {
          background-color: var(--black);
        }
      }
    }
  }
}

/* default p size */
p {
  line-height: 1.5;
}

a {
  color: var(--action1);
  
 
}

blockquote,
blockquote p {}

em {
  font-style: italic;
}

strong {
  font-weight: bold;
}

ul {
  list-style: disc;
  padding-left: 40px;
  margin-top: 0;
  margin-bottom: 30px;
  display: inline-block;
  text-align: left;
}



ol {
  list-style: decimal;
  padding-left: 30px;
  margin-top: 0;
  margin-bottom: 30px;
}

li {
  margin-bottom: 5px;
  letter-spacing: .5px;
  &::marker {
    color: var(--action1);
    
  }
  section.dark-mode & {
    &::marker {
      color: var(--white)!important;
    }
    }
}

ul ul,
ul ol,
ol ol,
ol ul {
  margin: 20px 0 20px 20px;
}

input {
  font-family: var(--font1);
}

button {
  font-family: var(--font1);
  cursor: pointer;
}

/* Forms */
form {
  margin-bottom: 30px
}

::-webkit-input-placeholder {
  color: var(--gray3);
  opacity: 1;
  font-weight: normal;
}

/* Webkit input placeholders */
::-moz-placeholder {
  color: var(--gray3);
  opacity: 1;
  font-weight: normal;
}

/* Firefox input placeholders */
:-ms-input-placeholder {
  color: var(--gray3);
  opacity: 1;
  font-weight: normal;
}

/* IE  input placeholders */
/* Images */
img {
  max-width: 100%;
  height: auto;
  border: 0;
  -ms-interpolation-mode: bicubic;
  vertical-align: bottom;
}

/* Make responsive, clear border, fix IE scaling, suppress the space beneath the baseline, fix Webkit blurring on scaled down files */
svg {
  max-width: 100%;
  width: auto;
  height: auto;
}

/* Horizontal Rule */
hr {
  margin-top: 30px;
  margin-bottom: 35px;
  border-width: 0;
  border-top: 1px solid var(--gray1);
}

/* Abbreviations */
abbr[title] {
  border: 0;
}

/* Code */
code {
  padding: 1px;
  margin: 0 10px;
  white-space: nowrap;
  background: var(--gray1);
  border: 1px solid var(--gray1);
  border-radius: 0;
}

pre>code {
  display: block;
  padding: 1px 15px;
  white-space: pre;
  margin-bottom: 30px
}

pre {
  overflow-x: auto;
}

/* responsive pre elements */
table pre {
  white-space: pre-wrap;
}

/* responsive pre tables */
/* Tables */
th,
td {
  padding: 10px 20px;
  text-align: left;
  border-bottom: 1px solid var(--gray1);
}

th:first-child,
td:first-child {
  padding-left: 0;
}

th:last-child,
td:last-child {
  padding-right: 0;
}

table {
  margin-bottom: 30px
}

table th {
  text-transform: uppercase;
}

table td {
  border-bottom: 1px solid var(--gray2);
  font-size: 14px;
}

a[href='javascript:;'] {
  cursor: default;
}

section[class*='u5m-'] {
  scroll-margin-top: 145px;
  
}

.hs_cos_wrapper_type_form {
  h3 {
    text-align: center;
  }

  form {}
}
section.u5m-404-error,
section.u5m-500-error,section.u5m-backup-unsubscribe {
  margin: 0 auto;
  text-align: center;
  min-height: 60vh;
  display:flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background-color: var(--body-bg);
  color: var(--white);
  @media (max-width: 768px) {
    min-height: 35vh;
  }
  
}

section.u5m-backup-unsubscribe {
  
  text-align: center;
  #hs_cos_wrapper_backup_unsubscribe_email_simple_subscription {
    h3 {
      max-width: 900px;
      margin-left: auto;
      margin-right: auto;
      font-size: 20px;
      line-height: 1.4;
    }
  }


  form {
    h3 {
      font-size: 12px;
      font-weight: bold;
      text-align: left;
      margin-bottom: 4px;
    }

    input {
      border: 1px solid transparent;
      border-radius: 4px;
      margin-top: 2px;
      margin-bottom: 0;
      font-size: 16px;
      padding: 16px;
      width: 100%;
    }

    padding-bottom: 50px;
  }
}

section.u5m-membership-login,
section.u5m-membership-register,
section.u5m-membership-reset-password-request,
section.u5m-membership-reset-password,
section.u5m-password-prompt {

span.form-separator {
  display:block;
  margin-top: 20px;
}

  margin: 180px auto 80px;
  text-align: center;

  ul.hs-error-msgs {
    margin: 10px 0 20px 0;
  }
  .form {
    &.membership-reset-password-request {
      div.hs-form-field:has(ul.no-list) {
        display:none;
      }
      div.hs-form-field {
        input.hs-input {
          margin-bottom: 0;
        }
      }
    }
    &.membership-login, &.membership-register {
      div.hs-form-field:has(ul.no-list) {
        display:none;
      }
    }


    h1 {
      font-size: 40px;
      margin-bottom: 10px;
    }
    form {
      label:not(.hs-error-msg) {
        float:left;
        
      }
      .no-list li label, label#hs-register-widget-checkbox-consent {
        float:none;
      }
      label#hs-register-widget-checkbox-consent {
        position: relative;
        top: -2px;
      }
      label.hs-login-widget-email-label {
        margin-bottom: 10px;
      }
      a.hs-reset-widget-show-password, a.hs-register-widget-show-password, a.hs-login-widget-show-password {
        float:right;
        margin-left:10px;
        position: relative;
        font-size: 14px;
        top: -5px;
        &:hover,&:focus {
          color: var(--black);
        }
      }
      a#hs_login_reset {
        margin-top: 20px;
        display:block;
        &:hover,&:focus {
          color: var(--black);
        }
      }
      .hs-form-field:has(#hs-login-widget-remember),.hs-form-field:has(#hs-passwordless-auth-checkbox-consent){
        display: flex;
        gap: 10px;
        margin-top: 30px;
      }
   
    input[type="password"] {
      height:auto!important;
      margin-bottom: 0;
    }

  }
  }
  div>p {
    margin-top: 20px;
    a {
      &:hover,&:focus {
        color: var(--black);
      }
    }
  }

}

section.u5m-password-prompt {
  form {
    padding-top: 30px;
  }
}

section.u5m-search-results {
  margin: 180px auto 100px;
  .section-inner.center {
    .systems-page {
      h1 {}
      .filters-wrapper {
        margin-bottom: 80px;
        @media (max-width: 768px) {
          margin-bottom: 50px;
        }
        select {
          position: relative;
          border: 1px solid var(--gray1);
          border-radius: var(--border1);
          transition: border-color var(--animation2);
          margin-top: 0px;
          margin-bottom: 0px;
          font-size: 16px;
          background-color: var(--white);
          padding: 16px;
          cursor: pointer;
          width: 100% !important;
          appearance: none;
          background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23000"><path d="M480-357.85 253.85-584 296-626.15l184 184 184-184L706.15-584 480-357.85Z"/></svg>');
          background-repeat: no-repeat;
          background-position: right 16px center;
          background-size: 24px;
          color: var(--black);
          &::placeholder {
            color: var(--gray2);
          }
          &:hover,&:focus {
            border-color: var(--action1);
          }
        }
      }
      .hs-search-results {
        p.hs-search-results__message {}

      }
    }
  }

  /* search results 'card' style found in u5m-search-results.module.css */
  ul.hs-search-results__listing {
   
  }
  .hs-search__no-results {
    p {
      font-size: 18px;

    }
  }
}

section.u5m-subscription-preferences {
  margin: 180px auto 80px;
.page-header br {
  display: none;
}
  .systems-page {
    .form-group {
      .form {
        max-width: 1000px;
        form {
          h1 {
            font-size: 40px;
          }
          h2 {
            font-size: 24px;
          }
          .email-prefs {
            margin-top: 30px;
            div.item {
              border-bottom: 1px solid var(--gray1);
              margin-bottom: 25px;
              .item-inner {
                padding-bottom: 25px;
                  div.checkbox-row span span {
                    font-weight: bold;
                    padding-left: 5px;
                  }
               p {
                margin:0;
                padding-left: 22px;
               } 
              }


            }
          }
          

          div.subscribe-options p span {
            font-weight: bold;
            padding-left: 5px;
          }
        }
      }
    }
  }
}

section.u5m-subscriptions-confirmation {
  margin: 180px auto 80px;
  form {
    margin-top: 20px;
    fieldset {
      padding:0;
      &#hs-subscriptions-unsubscribe-survey-fieldset {
        legend {
          margin-bottom: 10px;
        }
        #hs-subscriptions-unsubscribe-survey-options {
          div {
            margin-bottom: 5px;
            label {
              input {margin-right: 5px;}
            }
          }
        }
      }
      textarea {
        margin: 20px 0 0 0;
      }
    }
    button {}
  }
  div.success {
    font-weight: bold;
  }
}
.visually-hidden,
.sr-only {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.001s;
    transition-duration: 0.001s;
    animation-iteration-count: 1;
  }
}

.skip-to-content-link {
  background: var(--action1);
  min-height: 40px;
  left: 50%;
  padding: 10px;
  position: absolute;
  transform: translate(-50%, -200%);
  transition: transform 0.3s;
  z-index: 20;
  display:flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: var(--white);
  font-weight: bold;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: .25px;
  cursor: pointer;
}

.skip-to-content-link:focus {
  transform: translate(-50%, 0%);
}
section.u5m-blog-post {
  position: relative;
  &.has-sidebar {
    --content-width: 1240px;
    --body-max-width: 800px;
  }
  &:not(.has-sidebar) {
    --content-width:920px;
  }

  /*****************************************/
  /* .hero */
  /*****************************************/
  .hero {
    background-color: var(--light-gray);
    margin-bottom:0;
    position: relative;
    padding: 80px 0px;
    @media(max-width: 580px) {
      padding: 50px 0px;
    }

    

    .section-inner.center {
      max-width: var(--content-width);

      .content {
        padding: 0;
        margin: 0 auto;

        span.date {
          display:block;
          margin-bottom: 15px;
          font-weight: 500;
          font-size: 14px;
        }

        h1.title {
          margin: 0;
        }

        .author-wrap {
          display: flex;
          align-items: center;
          margin: 20px auto 0 auto;
          justify-content:flex-start;
          gap: 10px;
          .avatar {
            overflow: hidden;
            height: 36px;
            width: 36px;
            border-radius: 50%;
            img {
              object-fit: cover;
              object-position: 50% 50%;
              width: 100%;
              height: 100%;
            }

          }

          .author-link {
            font-size: 14px;
            a {
              font-weight: 500;
              color: var(--black);
              transition: var(--animation1);
            }

            a:hover {
              color: var(--action1);
            }
          }
        }
      }
    }
  }

  /*****************************************/
  /* .share */
  /*****************************************/
  .share {
    margin-bottom: 50px;
    padding: 8px 0;
    background-color: var(--white);
    border-top: 1px solid var(--gray1);
    border-bottom: 1px solid var(--gray1);
    position: sticky;
    top: 100px;
    z-index:2;
    .section-inner.center {
      max-width: var(--content-width);
      display:flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      span.label {
        font-weight: 600;
        font-size: 14px;
        margin-right:10px;
      }
      .share-links {
        display:flex;
        gap: 5px;
        align-items: center;
        flex-direction:row;
        a {
          display:flex;
          svg {
            path {
              fill: var(--black);
              transition: var(--animation1);
            }
          }
          &:hover,&:focus {
            svg {
              path {
                fill: var(--action1);
              }
            }
          }
        }
      }

    }
  }

  /*****************************************/
  /* .body */
  /*****************************************/
  .body {
    max-width: var(--content-width);
    margin: 0 auto;
    padding: 0 20px;

    .content {
      img {
        border-radius: var(--border2);
      }
      p,
      ul,
      ol {}

      h1 {}

      h2 {}

      h3 {}

      h4 {}

      h5 {}

      h6 {}

      h1,h2,h3,h4,h5,h6 {
        margin-top: 30px;
      }

      blockquote {
        p {}
      }

      a {
        font-weight: bold;

        &:hover {
          color: var(--black);
        }
      }
    }



    &.has-sidebar {
      display: flex;
      flex-direction: row;
      gap: 80px;

      @media(max-width: 991px) {
        flex-direction: column;
      }

      .content {
          max-width: var(--body-max-width);
          width: 100%;
          @media(max-width: 991px) {
            order:2;
            max-width: 100%;
          }
          h2 {
            scroll-margin-top:160px;
          }
        }
      .blog-sidebar {
        max-width: 320px;
        width: 100%;
        position:relative;
        @media(max-width: 991px) {
          order:1;
          max-width: 100%;
        }
        .blog-sidebar-inner {
          position:sticky;
          top: 170px;
          padding: 20px;
          background-color: var(--white);
          border-radius: var(--border2);
          border: 1px solid var(--gray1);
          .title {
            font-weight: 600;
            margin-bottom:12px;
          }
          .toc-list {
            padding-left:20px;
            margin:0;
            li.toc-item {
              margin-bottom:12px;
              line-height:1.4;
              &::marker {
                color: var(--action1);
                font-weight: 600;
              }
              &:last-of-type {
                margin-bottom:0;
              }
              a.toc-link {
                color: var(--black);
                transition: var(--animation1);
                text-decoration: none;
                &.active {
                  color: var(--action1);
                }
                &:hover,&:focus {
                  color: var(--action1);
                  text-decoration:underline;
                }
              }
            }
          }
        }
      }
    }
  }

  /*****************************************/
  /* .topics */
  /*****************************************/

  .topics {
    max-width: var(--content-width);
    margin: 0 auto;
    padding: 0 20px;
    margin-top: 50px;
    padding-top:  50px;
    border-top: 1px solid var(--gray1);
    display:flex;
    flex-direction:row;
    align-items: center;
    gap: 12px;
    .label {
      font-size: 13px;
      font-weight: 500;
      display:inline-block;
    }
    .topics-list {
      display:flex;
      flex-direction:row;
      column-gap: 8px;
      row-gap: 10px;
      .link {
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        white-space: nowrap;
        font-size: 13px;
        font-weight: 500;
        text-decoration: none;
        color: var(--black);
        padding: 5px 8px;
        border-radius: var(--border2);
        background-color: var(--white);
        transition: var(--animation1);
        border: 1px solid var(--gray1);
        &:hover {
          background-color: var(--black);
          border-color: var(--black);
          color: var(--white);
        }
      }
    }
  }

  /*****************************************/
  /* .author  -- removed */
  /*****************************************/
  .author {
    display:none;
    max-width: var(--content-width);
    display: flex;
    align-items: center;
    margin: 50px auto;
    padding: 0 20px;

    .meta {
      flex: 0 0 170px;
      text-align: center;

      .avatar {
        width: 100px;
        height: 100px;
        background-image: url('https://302335.fs1.hubspotusercontent-na1.net/hubfs/302335/default-avatar.png');
        background-size: cover;
        background-position: 50%;
        border-radius: 50%;
        margin: 0 auto;

        @media (max-width: 575.98px) {
          margin-bottom: 30px;
        }
      }
    }

    .bio {
      .name {
        margin: 0;
      }

      p {
        margin-top: 20px;
      }

      .social {
        .label {
          @media (max-width: 575.98px) {}
        }

        a {
          font-size: 20px;
          margin-left: 10px;

          @media (max-width: 575.98px) {
            font-size: 18px;
            margin-left: 8px;
          }
        }
      }
    }
  }

  /*****************************************/
  /* .comments -- removed */
  /*****************************************/
  .comments {
    display:none;
    margin-bottom: 100px;

    h2.heading {
      text-align: center;
      margin: 100px auto 0 auto;
    }

    .content {
      max-width: 1000px;
      margin-top: 50px;

      form {
        .hs-button {}
      }
    }
  }
}
/* CSS Keyframes */
@keyframes fadeIn1 {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

@keyframes fadeIn2 {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }

  50% {
    opacity: 0;
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}
/* default anchor link offset */
div.hs_cos_wrapper_widget section.top-margin-none {
  margin-top: 0;
}

/* module overrides */
div.hs_cos_wrapper_widget section.top-margin-small {
  margin-top: 50px;

  @media (max-width: 767px) {
    margin-top: 35px;
  }

  @media (max-width: 575.98px) {
    margin-top: 25px;
  }
}

div.hs_cos_wrapper_widget section.top-margin-medium {
  margin-top: 100px;

  @media (max-width: 767px) {
    margin-top: 75px;
  }

  @media (max-width: 575.98px) {
    margin-top: 50px;
  }
}

div.hs_cos_wrapper_widget section.top-margin-large {
  margin-top: 150px;

  @media (max-width: 767px) {
    margin-top: 115px;
  }

  @media (max-width: 575.98px) {
    margin-top: 75px;
  }
}

div.hs_cos_wrapper_widget section.bottom-margin-none {
  margin-bottom: 0;
}

div.hs_cos_wrapper_widget section.bottom-margin-small {
  margin-bottom: 50px;

  @media (max-width: 767px) {
    margin-bottom: 35px;
  }

  @media (max-width: 575.98px) {
    margin-bottom: 25px;
  }
}

div.hs_cos_wrapper_widget section.bottom-margin-medium {
  margin-bottom: 100px;

  @media (max-width: 767px) {
    margin-bottom: 75px
  }

  @media (max-width: 575.98px) {
    margin-bottom: 50px
  }
}

div.hs_cos_wrapper_widget section.bottom-margin-large {
  margin-bottom: 150px;

  @media (max-width: 767px) {
    margin-bottom: 115px;
  }

  @media (max-width: 575.98px) {
    margin-bottom: 75px;
  }
}

div.hs_cos_wrapper_widget section.top-padding-none {
  padding-top: 0;
}

div.hs_cos_wrapper_widget section.top-padding-small {
  padding-top: 50px;

  @media (max-width: 767px) {
    padding-top: 35px;
  }

  @media (max-width: 575.98px) {
    padding-top: 25px;
  }
}

div.hs_cos_wrapper_widget section.top-padding-medium {
  padding-top: 100px;

  @media (max-width: 767px) {
    padding-top: 75px;
  }

  @media (max-width: 575.98px) {
    padding-top: 50px;
  }
}

div.hs_cos_wrapper_widget section.top-padding-large {
  padding-top: 150px;

  @media (max-width: 767px) {
    padding-top: 115px;
  }

  @media (max-width: 575.98px) {
    padding-top: 75px;
  }
}

div.hs_cos_wrapper_widget section.bottom-padding-none {
  padding-bottom: 0;
}

div.hs_cos_wrapper_widget section.bottom-padding-small {
  padding-bottom: 50px;

  @media (max-width: 767px) {
    padding-bottom: 35px;
  }

  @media (max-width: 575.98px) {
    padding-bottom: 25px;
  }
}

div.hs_cos_wrapper_widget section.bottom-padding-medium {
  padding-bottom: 100px;

  @media (max-width: 767px) {
    padding-bottom: 75px;
  }

  @media (max-width: 575.98px) {
    padding-bottom: 50px;
  }
}

div.hs_cos_wrapper_widget section.bottom-padding-large {
  padding-bottom: 150px;

  @media (max-width: 767px) {
    padding-bottom: 115px;
  }

  @media (max-width: 575.98px) {
    padding-bottom: 75px;
  }
}
/* styles shared with u5-additional-content.html partial */
.intro-content {
    display: flex;
    flex-direction: column;

    &.left-aligned {
        align-items: flex-start;
        justify-content: flex-start;
        text-align: left;

        .heading,
        .description {
            margin-left: 0;
            margin-right: auto;
        }

        .button-group {
            justify-content: flex-start;
        }
    }
    &.left-aligned.two-column {
        @media (min-width: 992px) {
            flex-direction: row;
            gap: 50px;
            justify-content: space-between;
            align-items: flex-end;
            width: 100%;
            .intro-content-upper {
                flex: 0 1 60%;
            }
            .button-group {
                flex: 0 1 40%;
                margin:0;
                display: flex;
                justify-content: flex-end;
                align-items: flex-end;
            }
        } 
    }

    &.center-aligned {
        align-items: center;
        justify-content: center;
        text-align: center;
        margin-left: auto;
        margin-right: auto;

        .heading,
        .description {
            margin-left: auto;
            margin-right: auto;
        }

        .button-group {
            justify-content: center;
        }
    }

    .eyebrow {


        
    }

    .heading {
        max-width: 900px;
        margin-top: 0;
    }
    .subheading {
       display:block;
       margin-top: 10px;
       
    }

    span.description {
        margin-bottom: 0;
        max-width: 750px;
        display: block;

        * {
            font-size: inherit;
        }

        *:last-child {
            margin-bottom: 0;
        }

        a {
            text-decoration: underline;

            &:hover,
            &:focus {
                opacity:.7;
            }
        }
    }

    .icon-links {
        margin-top: 20px;
        display: flex;
        gap: 10px;
        a {
            transition: var(--animation2);
            display: flex;
            align-items: center;
            justify-content: center;
            height: 24px;
            svg {
                height: 24px;
                width: auto;
                transition: var(--animation2);
            }
            &:hover,&:focus {
                opacity:.7;
                svg {
                    transform: translateY(-2px);
                }
                
            }
        }

    }

    .button-group {
        display: flex;
        gap: 20px;
        align-items: center;

        flex-wrap: wrap;
        margin-top: 30px;



        span.button-span {
            @media (max-width: 767px) {
                width: auto;
            }

            a {
                margin: 0;
            }
        }
    }

}







section.dark-mode {
    .intro-content {
        .intro-content-upper {
            .eyebrow {
                color: var(--white);
            }
    
            h1,
            h2,
            h3 {
                color: var(--white);
            }
    
            span.description {
                color: var(--white);
                font-weight: 500;
    
                * {
                    color: var(--white);
    
                }
    
                a {
                    text-decoration: underline;
    
                    &:hover,
                    &:focus {
                        opacity: .8;
                    }
                }
    
            }
        }
        .icon-links {
            a {
                svg {
                    path {
                        fill: var(--white);
                    }
                }
            }
        }

    }
   
}