/*
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 */


/* Favorit fonts */
/* Regular */
@font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Regular.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap; 
}
/* RegularItalic */
@font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-RegularItalic.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-RegularItalic.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap; 
}
/* Medium */
@font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Medium.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap; 
}
/* MediumItalic */
@font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-MediumItalic.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-MediumItalic.woff') format('woff');
  font-weight: 500;
  font-style: italic;
  font-display: swap; 
}
/* Bold */
@font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Bold.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap; 
}
/* BoldItalic */
@font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-BoldItalic.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-BoldItalic.woff') format('woff');
  font-weight: 700;
  font-style: italic;
  font-display: swap; 
}
/* Book */
/* @font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Book.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Book.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap; 
} */
/* BookItalic */
/* @font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-BookItalic.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-BookItalic.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap; 
} */
/* Light */
@font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Light.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap; 
}
/* LightItalic */
@font-face {
  font-family: 'Favorit';
  src: url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-LightItalic.woff2') format('woff2'),
       url('https://email.zappistore.com/hubfs/raw_assets/public/zappi-u5/fonts/Favorit-LightItalic.woff') format('woff');
  font-weight: 300;
  font-style: italic;
  font-display: swap; 
}

/* Base */
:root {

    /* Height of the fixed header (see u5m-mega-menu, which anchors its panels to it) */
    --header-height: 100px;

    /* Header promo banner (see body.has-header-banner in u5m-header-banner module) */
    --header-banner-offset: 0px;

    /* Colors */
    /* --action1: #733bf7;
    --action2: #00a4bd; */
    --action1: var(--blueberry);
    --action2: var(--mango);
    --black: #181818;
    --white: #ffffff;
    --gray1: #F5F5F5;
    --gray2: #E5E5E5;
    --gray3: #D4D4D4;
    --light-gray:#fafafa;
    --dark-gray:#2b2b2b;
    --blueberry:#0032C7;
    --blueberry-light:#4D70D8;
    --guava:#FF3D70;
    --mango:#FFB000;
     /*black */
    --black-80: rgba(0, 0, 0, .8);
    --black-50: rgba(0, 0, 0, .5);
    --black-30: rgba(0, 0, 0, .3);
    --black-20: rgba(0, 0, 0, .2);
    --black-10: rgba(0, 0, 0, .1);
    /* white */
    --white-80: rgba(255, 255, 255, .8);
    --white-50: rgba(255, 255, 255, .5);
    --white-30: rgba(255, 255, 255, .3);
    --white-20: rgba(255, 255, 255, .2);
    --white-10: rgba(255, 255, 255, .1);
    /* Gradients */
    --gradient1: linear-gradient(90deg, var(--blueberry) 0%, var(--guava) 100%);


    --gradient2: linear-gradient(-45deg, var(--guava) 0%, var(--mango)50%);
    --gradient3: linear-gradient(-45deg, var(--blueberry-light) 0%, var(--blueberry)50%);
    --gradientFooter:linear-gradient(#003ddb00 64.33%,#003ddb),linear-gradient(258.81deg,#fd507e 21.27%,#0b44d8 118.07%);
    /* Font */
    --font1: 'Favorit', sans-serif;
    /* Border Radius */
    --border-small: 4px;
    --border1: 12px;
    --border2: 24px;
    --border3: 36px;
    --borderRounded:50px;
    /*  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;
    --center: 1420px;
    --center-large: 1500px;
     


    --small-button-padding:4px 14px 2px 14px;
  
    /* Spacing */

    --section-padding-none:0;    
    --section-padding-small:80px 0;
    --section-padding-medium:100px 0;    
    --section-padding-large:120px 0;
    --hero-padding:180px 0 100px; 
    /* Same values split out so a hero can cancel one edge on its own */
    --hero-padding-top:180px;
    --hero-padding-bottom:100px;
    
    body.hs-landing-page {
        --hero-padding:160px 0 100px; 
        --hero-padding-top:160px;
        --hero-padding-bottom:100px;
        
    }
    
    body:not(.hs-landing-page).has-header-banner {
        --hero-padding:220px 0 100px; 
        --hero-padding-top:220px;
        --hero-padding-bottom:100px;
        @media (max-width: 1024px) {
            --hero-padding:210px 0 100px; 
            --hero-padding-top:210px;
            --hero-padding-bottom:100px;
        }
        @media (max-width: 768px) {
            --hero-padding:200px 0 80px; 
            --hero-padding-top:200px;
            --hero-padding-bottom:80px;
        }
    }

    

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

    @media(max-width: 1024px){

        --section-padding-small:60px 0;
        --section-padding-medium:80px 0;
        --section-padding-large:100px 0;
        --hero-padding:160px 0 100px;        
        --hero-padding-top:160px;
        --hero-padding-bottom:100px;
        --section-margin-small:0 auto 60px auto;    
        --section-margin-medium:0 auto 80px auto;    
        --section-margin-large:0 auto 100px auto;        
    }
    @media(max-width: 768px){

        --section-padding-small:36px 0;
        --section-padding-medium:50px 0;
        --section-padding-large:80px 0;
        --hero-padding:160px 0 80px;        
        --hero-padding-top:160px;
        --hero-padding-bottom:80px;
        --section-margin-small:0 auto 36px auto;    
        --section-margin-medium:0 auto 50px auto;    
        --section-margin-large:0 auto 80px auto;        
    }
}

/* When the header banner is visible (not cookie-dismissed); tune --header-banner-offset to match rendered banner height */
body.has-header-banner {
    --header-banner-offset: 56px;
}
/* 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;
}

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

.center-largest {
  float: none;
  margin-left: auto;
  margin-right: auto;
  max-width: var(--center-largest);
  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 */

/* 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 {
  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-x: hidden;
    overflow-y: auto;
  }

  &::backdrop {
    backdrop-filter: blur(5px);
    background-color: rgb(from var(--blueberry) r g b / 0.5);
    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: var(--blueberry);
    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, 0.9);

      svg {
        path {
          fill: var(--black);
        }
      }
    }
  }

  .popover-content-container {
    &:has(form) {
      max-width: 860px;
      width: 100%;
    }

    max-height: 650px;
    overflow-y: scroll;
    text-align: initial;

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
      color: initial;
    }
  }
}

/*****************************************************/
/* Team Member Popover CSS */
.popover-container.team-member {
  &::backdrop {
    backdrop-filter: blur(5px);
    background-color: rgba(214, 214, 214, 0.5);
  }

  .popover-inner-container {
    padding: 0;
  }

  .popover-content-container {
    display: flex;
    flex-direction: row;
    gap: 30px;
    align-items: flex-start;

    @media (max-width: 1024px) {
      flex-direction: column-reverse;
      gap: 0;
      justify-content: flex-end;
      max-height:100%;
    }

    .popover-content-inner {
      padding: 36px;
      flex: 0 1 50%;
      flex-grow: 1;

      @media (max-width: 1024px) {
        flex: unset;
        padding: 24px;
      }
    }

    .popover-image-container {
      flex: 0 0 50%;
      position: sticky;
      top: 0px;

      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }

      @media (max-width: 1440px) {
        position: relative;
        top: unset;
        flex: 0 0 250px;
        max-width: 250px;
        width: 100%;
        height: 100%;
        aspect-ratio: 1/1;
        border-radius: 50%;
        background-color: var(--mango);
        overflow: hidden;
        object-fit: cover;
        margin-top: 36px;
        margin-right: 36px;

        img {
          width: 100%;
          height: 100%;
          object-fit: cover;
        }
      }

      @media (max-width: 1024px) {
        flex: 0 0 150px;
        max-width: 150px;
        margin-top: 24px;
        margin-left: 24px;
        margin-right: auto;
      }
    }
  }

  .popover-content-upper {
    display: block;
    margin-bottom: 20px;

    .popover-member-name {
      margin-bottom: 0;
      font-weight: bold;
      @media (max-width: 768px) {
        font-size: 58px;
        line-height: 1.1;
      }
      @media (max-width: 580px) {
        font-size: 48px;
      }
      @media (max-width: 480px) {
        font-size: 42px;
      }
    }

    .popover-member-position,
    .social-links a {
      letter-spacing: 0.05em;
      color: var(--guava)!important;
      font-weight: 700;
      margin-left: 0;
      margin-right: 0;
      margin-bottom: 0;
    }

    .popover-member-position {
      margin-top: 15px;
    }

    .social-links {
      margin-top: 5px;

      .social-link {
        
        transition: var(--animation1);

        &:before {
          display: none;
        }

        svg {
          position: relative;
          top: 2px;

          path {
            transition: var(--animation1);
            fill: var(--guava);
          }
        }

        &:hover,
        &:focus {
          color: var(--blueberry)!important;
          text-decoration: none!important;
          svg {
            path {
              fill: var(--blueberry);
            }
          }
        }
      }
    }
  }

  .popover-member-bio {
    display: block;
    @media (max-width: 768px) {
      font-size: 15px;
      p {
        font-size:15px;
      }
    }
  }
}

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

/* 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(--black-10);
        }
      }

      &.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(--white-20);
          }
        }
      }
    }
  }
}

.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: 18px;
  line-height: 1.61803398875;
  /* Golden ratio */
  font-family: var(--font1);
  color: var(--black);
  font-weight: normal;
}




/* 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);
  }
}
} */


/* 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;
}


h1.xl,h2.xl,h3.xl,h4.xl,h5.xl,h6.xl {
  font-size: 122px;
  line-height:.87;
  @media (max-width: 1024px) {
    font-size: 60px;
  }
  @media (max-width: 580px) {
    font-size: 48px;
  }
}

/* heading styles */
h1,
.h1 {
  font-family: var(--font1);
  font-size: 60px;
  letter-spacing: -0.035em;
  margin-bottom: 30px;
  line-height: 1.1;
  margin-top: 0;
  font-weight: bold;

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

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

}

h2,
.h2 {
  font-family: var(--font1);
  font-size: 54px;
  letter-spacing: -0.035em;
  margin-bottom: 30px;
  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.035em;
  margin-bottom: 25px;
  line-height: 1.1;
  margin-top: 0;
  @media (max-width: 1024px) {
    font-size: 32px;
  }

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

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

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

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

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

h6,
.h6 {
  font-family: var(--font1);
  font-size: 20px;
  letter-spacing: -0.035em;
  margin-bottom: 25px;
  line-height: 1.1;
  margin-top: 0;
  @media (max-width: 1024px) {
    font-size: 19px;
  }

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

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

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

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

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

.b3 {
  font-family: var(--font1);
  font-size: 18px;
  line-height: 1.6;
  letter-spacing: -0.035em;
  margin-bottom: 20px;

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

.b4 {
  font-family: var(--font1);
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: -0.035em;
  margin-bottom: 20px;

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

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

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

.b6 {
  font-family: var(--font1);
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: -0.035em;
  margin-bottom: 10px;

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

.blockquote,blockquote {
  font-family: var(--font1);
  font-size: 28px;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: -0.035em;
  margin: 50px auto;
  display: block;
  max-width: 100%;
  @media (max-width: 580px) {
    font-size: 20px;
  }
  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: 400;
  letter-spacing: -0.035em;
  display: block;
  margin-bottom: 12px;
  color: var(--guava);
  @media (max-width: 580px) {
    font-size: 12px;
  }
}
/*
  Button styles stack on .button-span: base (btn | btn-stroked | btn-text) + optional theme (*-mode).
  Theme classes only override colors / hover — see u5-button-group.html.
*/

.button-group {
  .button-span {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
  }
}

/* -------------------------------------------------------------------------- */
/* Solid — .btn */
/* -------------------------------------------------------------------------- */
a.btn,
span.btn a,
input.hs-button,
span.btn button:not(.close-btn),
button.btn,
.systems-page form button {
  display: inline-block;
  font-family: var(--font1);
  color: var(--white);
  background-color: var(--blueberry);
  border: 2px solid var(--blueberry);
  border-radius: var(--borderRounded);
  padding: 12px 16px 10px 16px;
  margin: 0;
  transition: var(--animation1);
  text-decoration: none;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: 0.04em;
  cursor: pointer;
  text-align: center;

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

a.btn:hover,
a.btn:focus,
span.btn a:hover,
span.btn a:focus,
input.hs-button:hover,
input.hs-button:focus,
span.btn button:not(.close-btn):hover,
span.btn button:not(.close-btn):focus,
button.btn:hover,
button.btn:focus,
.systems-page form button:hover,
.systems-page form button:focus {
  background-color: var(--mango);
  border-color: var(--mango);
  color: var(--white);
}

/* Theme: dark — inverted surface */
span.btn-dark-mode a,
a.btn-dark-mode,
span.btn-dark-mode button:not(.close-btn),
button.btn-dark-mode {
  color: var(--blueberry);
  background-color: var(--white);
  border-color: var(--white);
}

a.btn-dark-mode:hover,
a.btn-dark-mode:focus,
span.btn-dark-mode a:hover,
span.btn-dark-mode a:focus,
span.btn-dark-mode button:not(.close-btn):hover,
span.btn-dark-mode button:not(.close-btn):focus,
button.btn-dark-mode:hover,
button.btn-dark-mode:focus {
  background-color: var(--mango);
  border-color: var(--mango);
  color: var(--white);
}

/* Theme: blueberry — mango fill */
span.btn-blueberry-mode a,
a.btn-blueberry-mode,
span.btn-blueberry-mode button:not(.close-btn),
button.btn-blueberry-mode {
  color: var(--blueberry);
  background-color: var(--mango);
  border-color: var(--mango);
}

a.btn-blueberry-mode:hover,
a.btn-blueberry-mode:focus,
span.btn-blueberry-mode a:hover,
span.btn-blueberry-mode a:focus,
span.btn-blueberry-mode button:not(.close-btn):hover,
span.btn-blueberry-mode button:not(.close-btn):focus,
button.btn-blueberry-mode:hover,
button.btn-blueberry-mode:focus {
  background-color: var(--guava);
  border-color: var(--guava);
  color: var(--white);
}

/* Theme: mango — same default as .btn; hover → guava */
a.btn-mango-mode:hover,
a.btn-mango-mode:focus,
span.btn-mango-mode a:hover,
span.btn-mango-mode a:focus,
span.btn-mango-mode button:not(.close-btn):hover,
span.btn-mango-mode button:not(.close-btn):focus,
button.btn-mango-mode:hover,
button.btn-mango-mode:focus {
  background-color: var(--guava);
  border-color: var(--guava);
  color: var(--white);
}

/* Theme: guava — matches default .btn (no extra rules) */

/* -------------------------------------------------------------------------- */
/* Outline — .btn-stroked */
/* -------------------------------------------------------------------------- */
a.btn-stroked,
span.btn-stroked a,
span.btn-stroked button:not(.close-btn),
button.btn-stroked {
  display: inline-block;
  font-family: var(--font1);
  color: var(--blueberry);
  background-color: transparent;
  border: 2px solid var(--blueberry);
  padding: 12px 16px 10px 16px;
  margin: 0;
  transition: var(--animation1);
  font-weight: bold;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-decoration: none;
  cursor: pointer;
  text-align: center;
  border-radius: var(--borderRounded);

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

a.btn-stroked:hover,
a.btn-stroked:focus,
span.btn-stroked a:hover,
span.btn-stroked a:focus,
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(--mango);
  border-color: var(--mango);
  color: var(--white);
}

/* Theme: dark — light outline */
a.btn-stroked-dark-mode,
span.btn-stroked-dark-mode a,
span.btn-stroked-dark-mode button:not(.close-btn),
button.btn-stroked-dark-mode {
  color: var(--white);
  border-color: var(--white);
}

a.btn-stroked-dark-mode:hover,
a.btn-stroked-dark-mode:focus,
span.btn-stroked-dark-mode a:hover,
span.btn-stroked-dark-mode a:focus,
span.btn-stroked-dark-mode button:not(.close-btn):hover,
span.btn-stroked-dark-mode button:not(.close-btn):focus,
button.btn-stroked-dark-mode:hover,
button.btn-stroked-dark-mode:focus {
  background-color: var(--mango);
  border-color: var(--mango);
  color: var(--white);
}

/* Theme: blueberry — mango outline */
a.btn-stroked-blueberry-mode,
span.btn-stroked-blueberry-mode a,
span.btn-stroked-blueberry-mode button:not(.close-btn),
button.btn-stroked-blueberry-mode {
  color: var(--white);
  border-color: var(--white);
}

a.btn-stroked-blueberry-mode:hover,
a.btn-stroked-blueberry-mode:focus,
span.btn-stroked-blueberry-mode a:hover,
span.btn-stroked-blueberry-mode a:focus,
span.btn-stroked-blueberry-mode button:not(.close-btn):hover,
span.btn-stroked-blueberry-mode button:not(.close-btn):focus,
button.btn-stroked-blueberry-mode:hover,
button.btn-stroked-blueberry-mode:focus {
  background-color: var(--guava);
  border-color: var(--guava);
  color: var(--white);
}

/* Theme: mango — same default as .btn-stroked; hover → guava */
a.btn-stroked-mango-mode:hover,
a.btn-stroked-mango-mode:focus,
span.btn-stroked-mango-mode a:hover,
span.btn-stroked-mango-mode a:focus,
span.btn-stroked-mango-mode button:not(.close-btn):hover,
span.btn-stroked-mango-mode button:not(.close-btn):focus,
button.btn-stroked-mango-mode:hover,
button.btn-stroked-mango-mode:focus {
  background-color: var(--guava);
  border-color: var(--guava);
  color: var(--white);
}

/* Theme: guava — matches default .btn-stroked */

/* -------------------------------------------------------------------------- */
/* Text / link — .btn-text */
/* -------------------------------------------------------------------------- */
a.btn-text,
span.btn-text a,
.read-more,
span.btn-text button:not(.close-btn),
button.btn-text {
  font-weight: bold;
  transition: var(--animation1);
  margin: 0;
  cursor: pointer;
  text-decoration: none;
  color: var(--blueberry);
  border: none;
  background-color: transparent;
  padding: 0;
  font-size: 18px;

  &:after {
    content: "→";
    display: inline-block;
    font-family: var(--font1);
    margin-left: 3px;
    font-size: 18px;
    top: 1px;
    line-height: 0;
    position: relative;
    font-weight: 500;
    transition: var(--animation1);
    color: var(--blueberry);
  }
}

a.btn-text:hover,
a.btn-text:focus,
span.btn-text a:hover,
span.btn-text a:focus,
.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(--blueberry-light);

  &:after {
    transform: translateX(2px);
    color: var(--blueberry-light);
  }
}

/* Theme: dark */
a.btn-text-dark-mode,
span.btn-text-dark-mode a,
span.btn-text-dark-mode button:not(.close-btn),
button.btn-text-dark-mode {
  color: var(--white);

  &:after {
    
    color: var(--white);
  }
}

a.btn-text-dark-mode:hover,
a.btn-text-dark-mode:focus,
span.btn-text-dark-mode a:hover,
span.btn-text-dark-mode a:focus,
span.btn-text-dark-mode button:not(.close-btn):hover,
span.btn-text-dark-mode button:not(.close-btn):focus,
button.btn-text-dark-mode:hover,
button.btn-text-dark-mode:focus {
  color: var(--mango);

  &:after {
    transform: translateX(2px);
    color: var(--mango);
  }
}

/* Theme: blueberry — mango label + arrow */
a.btn-text-blueberry-mode,
span.btn-text-blueberry-mode a,
span.btn-text-blueberry-mode button:not(.close-btn),
button.btn-text-blueberry-mode {
  color: var(--mango);

  &:after {
    color: var(--mango);
  }
}

a.btn-text-blueberry-mode:hover,
a.btn-text-blueberry-mode:focus,
span.btn-text-blueberry-mode a:hover,
span.btn-text-blueberry-mode a:focus,
span.btn-text-blueberry-mode button:not(.close-btn):hover,
span.btn-text-blueberry-mode button:not(.close-btn):focus,
button.btn-text-blueberry-mode:hover,
button.btn-text-blueberry-mode:focus {
  color: var(--guava);

  &:after {
    color: var(--guava);
  }
}

/* Theme: mango — default matches .btn-text; hover → guava */
a.btn-text-mango-mode:hover,
a.btn-text-mango-mode:focus,
span.btn-text-mango-mode a:hover,
span.btn-text-mango-mode a:focus,
span.btn-text-mango-mode button:not(.close-btn):hover,
span.btn-text-mango-mode button:not(.close-btn):focus,
button.btn-text-mango-mode:hover,
button.btn-text-mango-mode:focus {
  color: var(--guava);

  &:after {
    color: var(--guava);
  }
}

/* Theme: guava — same default as .btn-text; hover → mango (not blueberry-light) */
a.btn-text-guava-mode:hover,
a.btn-text-guava-mode:focus,
span.btn-text-guava-mode a:hover,
span.btn-text-guava-mode a:focus,
span.btn-text-guava-mode button:not(.close-btn):hover,
span.btn-text-guava-mode button:not(.close-btn):focus,
button.btn-text-guava-mode:hover,
button.btn-text-guava-mode:focus {
  color: var(--mango);

  &:after {
    color: var(--mango);
  }
}

/* -------------------------------------------------------------------------- */
/* Size — .btn__sm / .btn-small */
/* -------------------------------------------------------------------------- */
a.btn.btn__sm,
.btn.btn__sm a,
span.btn-small button:not(.close-btn),
button.btn-small,
a.btn-stroked.btn__sm,
span.btn-stroked.btn__sm a,
span.btn-stroked.btn__sm button:not(.close-btn),
button.btn-stroked.btn__sm {
  padding: var(--small-button-padding);
}
/***************************************/
.card {
  border-radius: var(--border3);
  position: relative;
  display: flex;
  flex-direction: column;
  flex-basis: calc(100% / var(--cols) - var(--gap) / var(--cols) * (var(--cols) - 1));
  border: 2px solid var(--blueberry);
  background-color: var(--white);
  transition: all var(--animation2);
  overflow: hidden;
  &:has(.media) .logo {
    margin-top:-50px;
  }

  /* Outline white content only when card has an image */
  &:has(.media.image) {
    border: 0;
    background-color: transparent;
    overflow: visible;

    &.full-click {
      &:hover,
      &:focus {
        border-color: transparent;

        .content {
          border-color: var(--blueberry-light);
        }
      }
    }

    .media.image {
      border-radius: var(--border3) var(--border3) 0 0;
      overflow: hidden;
    }

    .content {
      border: 2px solid var(--blueberry);
      border-radius: 0 0 var(--border3) var(--border3);
      background-color: var(--white);
    }
  }

  .logo {
   
    padding:8px;
    border:1px solid var(--gray1);
    background-color: var(--white);
    border-radius: var(--border-small);
    display:flex;
    margin-bottom: 20px;
    z-index: 2;
    img {
      height: 24px!important;
      width: auto!important;
    }
  }

  &.full-click {
    &:hover,
    &:focus {
      border-color: var(--blueberry-light);
      /* transform: translateY(-4px); */
    }
    .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;
      /* min-height: 200px; */
      img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
      }
    }
    &.icon {
      padding: 30px 30px 0 30px;
      & > span {
        display: flex;
      }
      svg {
        height: 36px;
        path {
          fill: var(--action1);
        }
      }
    }
  }

  .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;
      align-items: flex-start;
      justify-content: flex-start;
      flex-grow: 1;

      .eyebrow {
        display: inline-block;
        color: var(--guava);
        /* background: rgba(255, 61, 112, 0.05); */
        /* padding: 6px 8px; */
        /* border-radius: 4px; */
        line-height: 1.1;
        font-weight: 500;
        margin-bottom: 12px;
        font-size: 13px;
        letter-spacing: 0.5px;
        display:flex;
        align-items: center;
        justify-content: flex-start;
        gap: 8px;
        span {
          color: var(--guava);
          padding: 4px 6px 2px 6px;
          border-radius: 4px;
          border: 1px solid var(--guava);
          background-color: rgb(from var(--guava) r g b / 0.05);
        }
      }

      span.title {
        display: block;
        color: var(--black);
        font-weight: bold;
        margin: 0;
        line-height: 1.4;
      }

      .subtitle {
        opacity:0.7;
        margin-top: 10px;
        margin-bottom:0; 
      }

      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;
    }
  }
}

/***************************************/
.featured-card {
  @media(min-width: 768px) {
    &:has(.media) .logo {
    margin-top:0;
    }

    .logo {
      position: absolute;
      border:none;
      bottom:-60px;
      right:0;
      padding: 15px;
      border-radius: 10px;
      margin:0;
    }
   
      /* referencing the featured-card class+styles in _05-cards.css */
      display:flex;
      flex-direction:row;
      justify-content: space-between;
      gap: unset;

      &:has(.media.image) {
        .media.image,
        .image {
          border-radius: var(--border3) 0 0 var(--border3);
        }

        .content {
          border-radius: 0 var(--border3) var(--border3) 0;
        }
      }

      .image {        
        position: relative;
        border-radius: var(--border3);
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        min-width: 50%;
        max-width: 50%;
        aspect-ratio: unset!important;
        height: auto;
        img {}
        
      }
      .content {
        width: 50%;
        padding:50px;
        .content-upper {
          position: relative;
          .title {
            font-size: 28px;
            line-height:1.4;
          }
        }
      }
  }
}

/***************************************/
/* used in conjunction with .card and .featured-card */
.horizontal-card {
  @media (min-width: 768px) {
    overflow: visible;
    border-radius: 0;
    border: 0;
    background-color: transparent;
    &:hover,
    &:focus {
      .content {
        border-color: var(--blueberry-light);
      }
    }

    .media {
      border-radius: var(--border3);
      overflow: hidden;
      border: 0;
      aspect-ratio: 1/1 !important;
      transition: var(--animation2);
      flex: 0 0 30%;
      min-width: unset;
    }

    .content {
      flex: 0 1 70%;
      padding: 30px;
      justify-content: flex-start;
      border: 2px solid var(--blueberry);
      border-radius: var(--border3);
      background-color: var(--white);
      .content-upper {
        padding-right:30px;
        flex-grow: 0;

        .title {
          font-size: 26px;
        }
      }
     
      .button-group {
        opacity: 0;
        margin: 0;
        padding: 0;
        font-size: 1px;
        height: 0;
        
      }
    }
  }
}

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

}

/***************************************/
.blog-card {
  /* blog cards use shared .card image outline pattern */
}


/*****************************************/
/******* CUSTOM CARDS FOR THEME *********/
/***************************************/


/****** LANDSCAPE CARDS landscape-card***************************************/
.landscape-card {
  max-width: 560px;

  &.light-mode {
    --landscape-card-background-color: var(--white);
    --landscape-card-eyebrow-color: var(--guava);
    --landscape-card-title-color: var(--black);
    --landscape-card-description-color: var(--black);
    --landscape-card-description-link-color: var(--blueberry);
    border: 2px solid var(--blueberry);

    &:has(.media.image) {
      border: 0;
      background-color: transparent;
      overflow: visible;

      .media.image {
        border-radius: 0 var(--border3) var(--border3) 0;
      }

      .content,
      .content-wrapper {
        border: 2px solid var(--blueberry);
        border-radius: var(--border3) 0 0 var(--border3);
        background-color: var(--white);
      }

      @media (max-width: 992px) {
        .media.image {
          border-radius: var(--border3) var(--border3) 0 0;
        }

        .content,
        .content-wrapper {
          border-radius: 0 0 var(--border3) var(--border3);
        }
      }
    }
  }
  &.guava-mode {
    --landscape-card-background-color: var(--guava);
    --landscape-card-eyebrow-color: var(--white);
    --landscape-card-title-color: var(--white);
    --landscape-card-description-color: var(--white);    
    --landscape-card-description-link-color: var(--white);
    border:none;
  }
  &.mango-mode {
    --landscape-card-background-color: var(--mango);    
    --landscape-card-eyebrow-color: var(--blueberry);
    --landscape-card-title-color: var(--blueberry);
    --landscape-card-description-color: var(--blueberry);        
    --landscape-card-description-link-color: var(--blueberry);
    border:none;
  }
  &.blueberry-mode {
    --landscape-card-background-color: var(--blueberry);
    --landscape-card-eyebrow-color: var(--white);
    --landscape-card-title-color: var(--white);
    --landscape-card-description-color: var(--white);        
    --landscape-card-description-link-color: var(--white);
    border:none;
  }
  &.dark-mode {
    --landscape-card-background-color: var(--black);
    --landscape-card-eyebrow-color: var(--white);
    --landscape-card-title-color: var(--white);
    --landscape-card-description-color: var(--white);        
    --landscape-card-description-link-color: var(--white);
    border:none;
  }
  position: relative;
  display: flex;
  flex-direction: row;
  overflow: hidden;
  flex-basis: calc(100% / var(--cols) - var(--gap) / var(--cols) * (var(--cols) - 1));
  border-radius: var(--border3);
  background-color: var(--landscape-card-background-color);
  /* transition: all var(--animation2); */
  @media (max-width: 992px) {
    flex-direction: column-reverse;
  }

  &.full-click {
   
    .button-group a,
    .button-group button {
      &:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 2;
      }
    }
  }

  

  .media {
    min-width: 144px;
    overflow: hidden;
    @media (max-width: 992px) {
      width: 100%;
      min-height: 200px;
    }
    @media (max-width: 768px){
      min-height: 144px;
    }
    @media (max-width: 580px){
      display:none;
    }
    &.image {
      position: relative;
      /* min-height: 200px; */
      img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
      }
    }
    &.icon {
      
      & > span {
        display: flex;
      }
      svg {
        height: 36px;
        path {
          fill: var(--action1);
        }
      }
    }
  }

  .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;
      align-items: flex-start;
      justify-content: flex-start;
      flex-grow: 1;

      span.eyebrow {
        color:var(--landscape-card-eyebrow-color);
        display: inline-block;
        font-size: 12px;
        letter-spacing: 0.5px;
        margin-bottom: 8px;
      }

      span.title {
        color: var(--landscape-card-title-color);
        display: block;
        font-weight: 700;
        margin: 0;
        line-height: 1.2;
        letter-spacing:-.4px;
      }

      span.description {
        margin-top: 10px;
        color: var(--landscape-card-description-color);
        display: block;
        margin-bottom: 0;
        letter-spacing:-.05px;
        p {
          letter-spacing:-.05px;
        }
        p:last-of-type {
          margin-bottom: 0;
        }
        a {
          position: relative;
          z-index: 3;
          color: var(--landscape-card-description-link-color);
          text-decoration: underline;
          &:hover,&:focus {
            color: var(--landscape-card-description-link-color);
            opacity:.7;
          }
        }
      }
    }

    .button-group {
      margin-top: 30px;
      .btn a, .btn-stroked a {
        padding: var(--small-button-padding);
      }
    }
  }
}

/*CTA ROW SIMPLE COLUMNS CTA ROW CARD cta-row-card***************************************/
.cta-row-card {
  &.light-mode {
    --cta-card-background-color: transparent;
    --cta-card-eyebrow-color: var(--guava);
    --cta-title-color: var(--black);
    --cta-description-color: var(--black);
    --cta-title-span-color: var(--blueberry);
    --cta-title-mark-gradient: var(--gradient1);
    --cta-button-flair-color: var(--blueberry);
  }
  &.guava-mode {
    --cta-card-background-color: var(--guava);
    --cta-card-eyebrow-color: var(--white);
    --cta-title-color: var(--white);
    --cta-description-color: var(--white);
    --cta-title-span-color: var(--mango);
    --cta-title-mark-gradient: var(--gradient3);
    --cta-button-flair-color: var(--white);
  }
  &.mango-mode {
    --cta-card-background-color: var(--mango);
    --cta-card-eyebrow-color: var(--blueberry);
    --cta-title-color: var(--blueberry);
    --cta-description-color: var(--blueberry);
    --cta-title-span-color: var(--guava);
    --cta-title-mark-gradient: var(--gradient1);
    --cta-button-flair-color: var(--blueberry);
  }
  &.blueberry-mode {
    --cta-card-background-color: var(--blueberry);
    --cta-card-eyebrow-color: var(--white);
    --cta-title-color: var(--white);
    --cta-description-color: var(--white);
    --cta-title-span-color: var(--mango);
    --cta-title-mark-gradient: var(--gradient2);
    --cta-button-flair-color: var(--white);
  }
  &.dark-mode {
    --cta-card-background-color: var(--black);
    --cta-card-eyebrow-color: var(--white);
    --cta-title-color: var(--white);
    --cta-description-color: var(--white);
    --cta-title-span-color: var(--mango);
    --cta-title-mark-gradient: var(--gradient1);
    --cta-button-flair-color: var(--white);
  }

  &.light-mode,
  &.mango-mode {
    .content .content-upper span.title mark {
      background: var(--cta-title-mark-gradient);
      -webkit-background-clip: text !important;
      background-clip: text !important;
      color: transparent;
      -webkit-text-fill-color: transparent;
      -webkit-box-decoration-break: clone;
      box-decoration-break: clone;
    }
  }

  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-basis: calc(100% / var(--cols) - var(--gap) / var(--cols) * (var(--cols) - 1));
  flex-grow: 1;
  padding: 100px;
  background-color: var(--cta-card-background-color);
  @media (max-width: 1024px) {
    padding: 80px 40px;
  }
  @media (max-width: 767px) {
    padding: 50px 20px;
  }

  &.full-click {
    .button-group a,
    .button-group button {
      &:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
      }
    }
  }

  .content {
    
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-grow: 1;

    .content-upper {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      flex-grow: 1;

      span.eyebrow {
        color: var(--cta-card-eyebrow-color);
      }

      span.title {
        display: block;
        color: var(--cta-title-color);
        font-weight: bold;
        margin-bottom:0;
        span {
          color: var(--cta-title-span-color);
        }
        mark {
          background: none;
          color: var(--mango);
        }
      }

      span.description {
        color: var(--cta-description-color);
        display: block;
        max-width: 600px;
        margin: 0 auto;
        margin-top: 20px;
        text-align: center;
        p:last-of-type {
          margin-bottom: 0;
        }
      }
    }

    .button-group {
      margin-top: 30px;
      .button-flair {
        path {
          stroke: var(--cta-button-flair-color);
        }
      }
    }
  }
}



/*COMPARISON CARD comparison-card***************************************/
.comparison-card {
  &.light-mode {
    border: 1px solid var(--gray1);
    --card-background-color: var(--white);
    --card-eyebrow-color: var(--guava);
    --card-title-color: var(--black);
    --card-description-color: var(--black);
    --card-title-span-color: var(--blueberry);
    --card-title-mark-gradient: var(--gradient1);
    --card-btn-color-key:var(--blueberry);
    --card-btn-hover-color-key:var(--mango);
    --card-btn-text-color:var(--white);    
    --card-btn-hover-text-color:var(--white);    
  }
  &.guava-mode {
    --card-background-color: var(--guava);
    --card-eyebrow-color: var(--white);
    --card-title-color: var(--white);
    --card-description-color: var(--white);
    --card-title-span-color: var(--mango);
    --card-title-mark-gradient: var(--gradient3);
    --card-btn-color-key:var(--white);
    --card-btn-hover-color-key:var(--mango);
    --card-btn-text-color:var(--blueberry);    
    --card-btn-hover-text-color:var(--white);        
  }
  &.mango-mode {
    --card-background-color: var(--mango);
    --card-eyebrow-color: var(--blueberry);
    --card-title-color: var(--blueberry);
    --card-description-color: var(--blueberry);
    --card-title-span-color: var(--guava);
    --card-title-mark-gradient: var(--gradient1);
    --card-btn-color-key:var(--white);
    --card-btn-hover-color-key:var(--guava);
    --card-btn-text-color:var(--blueberry);    
    --card-btn-hover-text-color:var(--white);            
  }
  &.blueberry-mode {
    --card-background-color: var(--blueberry);
    --card-eyebrow-color: var(--white);
    --card-title-color: var(--white);
    --card-description-color: var(--white);
    --card-title-span-color: var(--mango);
    --card-title-mark-gradient: var(--gradient2);
    --card-btn-color-key:var(--white);
    --card-btn-hover-color-key:var(--guava);
    --card-btn-text-color:var(--blueberry);    
    --card-btn-hover-text-color:var(--white);
    color: var(--white);
  }
  &.dark-mode {
    --card-background-color: var(--black);
    --card-eyebrow-color: var(--white);
    --card-title-color: var(--white);
    --card-description-color: var(--white);
    --card-title-span-color: var(--mango);
    --card-title-mark-gradient: var(--gradient1);
    --card-btn-color-key:var(--white);
    --card-btn-hover-color-key:var(--mango);
    --card-btn-text-color:var(--blueberry);    
    --card-btn-hover-text-color:var(--white);            
  }

  &.light-mode,
  &.mango-mode {
    .content .content-upper span.title mark {
      background: var(--card-title-mark-gradient);
      -webkit-background-clip: text !important;
      background-clip: text !important;
      color: transparent;
      -webkit-text-fill-color: transparent;
      -webkit-box-decoration-break: clone;
      box-decoration-break: clone;
    }
  }

  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-basis: calc(100% / var(--cols) - var(--gap) / var(--cols) * (var(--cols) - 1));
  flex-grow: 1;
  padding: 36px;
  background-color: var(--card-background-color);
  border-radius: var(--borderRounded);


  &.full-click {
    
    .button-group a,
    .button-group button {
      &:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
      }
    }
  }

  .content {
    
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    flex-grow: 1;
    margin-left: 0;
    margin-right: auto;

    .content-upper {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-start;
      text-align: left;
      flex-grow: 1;

      span.eyebrow {
        color: var(--card-eyebrow-color);
        text-transform: uppercase;
      }

      span.title {
        display: block;
        color: var(--card-title-color);
        font-weight: bold;
        margin-bottom:0;
        span {
          color: var(--card-title-span-color);
        }
        mark {
          background: none;
          color: var(--mango);
        }
      }

      span.subtitle {
        margin-top:5px;
        margin-bottom:0;
        color: var(--card-description-color);
        font-weight: 700;
        font-size: 15px;
        letter-spacing: 0.5px;
        text-transform: uppercase;
      }

      span.description {
        color: var(--card-description-color);
        display: block;
       
        margin: 20px auto 0 0;
        text-align: left;
        a:not([class]){
          position: relative;
          z-index: 2;
          color: var(--card-description-color);
          text-decoration: underline;
          &:hover,&:focus {
            opacity:.7;
          }
        }
        
        p:last-of-type {
          margin-bottom: 0;
        }
      }
      .icon-listing {
        margin-top: 30px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        text-align: left;
        gap: 8px;
        .icon-listing-title {
          margin-bottom: 2px;
          text-transform: uppercase;
          font-weight: 400;
        }
        .icon-listing-item {
          display: flex;
          align-items: flex-start;
          justify-content: flex-start;
          text-align: left;
          gap: 10px;
          .icon {
            display: flex;
            align-items: flex-start;
            justify-content: center;
            width: 16px;
            height: 16px;
            flex: 0 0 16px;
            svg {
              width: 100%;
              height: 100%;
              fill: var(--card-description-color);
              path {
                fill: var(--card-description-color);
              }
            }
            &:has(.u5-check) {
              width: auto;
              height: auto;
              flex: none;
              align-self: flex-start;
              align-items: flex-start;
              font-size: 1em;
              font-weight: 700;
            }
          }
          &:has(.u5-check) {
            font-size: 16px;
            @media (max-width: 580px) {
              font-size: 14px;
            }
          }
          .text {
            color: var(--card-description-color);
            margin:0;
            line-height: 1.4;
            font-weight: 700;
            p {
              margin: 0;
            }
            strong, b {
              font-weight: 700;
            }
          }
        }
      }
    }

    .button-group {
      margin-top: 30px;
      span.btn a {
        
      padding: var(--small-button-padding);
       background-color: var(--card-btn-color-key);
       border-color: var(--card-btn-color-key);
       color: var(--card-btn-text-color);

       &:hover,&:focus {
        background-color: var(--card-btn-hover-color-key);
        border-color: var(--card-btn-hover-color-key);
        color: var(--card-btn-hover-text-color);
       }
      }
    }
  }
  &:has(.media) {
    flex-direction:row;
    padding:0;
    align-items:unset;
    overflow:hidden;
    @media (max-width: 768px) {
      flex-direction:column;
    }
    .content {
      flex: 0 0 60%;
      max-width: 60%;
      padding: 36px;
      @media (max-width: 768px) {
        flex-basis: auto;
        max-width: none;
      }
    }
    .media {
      flex: 0 0 40%;
      max-width: 40%;
      display:flex;
      flex-direction:column;
      align-items:flex-end;
      justify-content:flex-end;
      text-align:right;
      @media (max-width: 768px) {
        flex-basis: auto;
        max-width: none;
        eight: 200px;
        position: absolute;
        bottom: 0;
        right: 0;
      }
      img {
        transform: scale(1.85);
    transform-origin: bottom right;
    @media (max-width: 768px) {
      position: relative;
      height: 200px;
      width: auto;
      opacity: .5;
    }
      }
    }
  }
}
.form,.popover-content-container:has(form) {
  background-color: var(--light-gray);
  padding: 30px;
  max-width: 765px;
  margin: 0 auto;
  float: none;
  overflow: auto;
  border-radius: var(--border2);
  border: 1px solid var(--gray1);
  .submitted-message {
    text-align: center;
  }
  .form-title:empty {
    display: none;
  }

  form {
    margin-bottom: 0;

    .hs-form-field {
      >label {
        font-size: 12px;
        font-weight: bold;
        line-height: 1.2;
        letter-spacing: 1px;
        pointer-events: auto;
      }
      &.hs-phone {
        margin-bottom: 20px;
        .hs-fieldtype-intl-phone {
          display: flex;
          gap: 12px;
        }
      }
    }
    .hs-fieldtype-intl-phone {
      display: flex;
      gap: 12px;
      &:after {
        display:none;
      }
    }


    /* 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 {
      

      &.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;

      &:not(.error):not(.invalid) {
        border: 1px solid var(--black);
      }
    }

    /* Select Inputs */


    select {
      position: relative;
      border: 1px solid var(--black);
      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"] {
          border: 1px solid var(--black);
          background-color: var(--white);
        }

        /* Checkbox Input */
        input[type="checkbox"] {
          border: 1px solid var(--black);
          background-color: var(--white);
        }
      }
    }


    /* Textarea Input */
    textarea {
      border: 1px solid var(--black);
      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;
            }
          }
        }
      }
    }

    /* Button */
    .hs-button {
      margin-top: 30px;
      margin-bottom: 0;
      display: block;
      width: 100%;
      font-size: 18px;
    }
  }

  .guava-mode &, .mango-mode &, .blueberry-mode &, .dark-mode & {
    background-color: rgba(255, 255, 255, .98);
  }
}

/* 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;
              }
              /* 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; */
                    border: 1px solid var(--black);
                  }
                  input.hsfc-TextInput {
                    margin-bottom:0;
                    margin-top:0;
                    border-left: 0;
                  }

                }
              }
              /* textarea field */
              .hsfc-TextareaField {
                textarea {
                  border: 1px solid var(--black);
                  border-radius: var(--border1);
                  background-color: var(--white);
                  /* border:none; */
                }
              }
              /* 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(--borderRounded);
                padding: 15px 40px 15px 40px;
                /* margin: 20px 0; */
                margin:0;
                transition: var(--animation1);
                text-decoration: none;
                font-weight: bold;
                font-size: 16px;
                line-height: 1.2;
                letter-spacing: .25px;
                text-decoration: none;
                cursor: pointer;
                text-align: center;
              &:hover,&:focus {
                transform: none;
                background-color: var(--mango);
                color: var(--white);
                border-color: var(--mango);
              }
              }
            }
          }
        }
      }
    }
  }
}

.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);
      }
    }

    .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;
  }
}
/* Keep background from scrolling when menu is open */
html.menu-open {
  overflow-y: hidden;
}

/* 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;
}

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

li {
  margin-bottom: 5px;
  letter-spacing: .5px;
}

/* HubSpot's FA check SVG → ✓ at the parent type size, wherever it prints */
.u5-check {
  display: inline-block;
  font-weight: 700;
  font-size: 1em;
  line-height: 1;
  vertical-align: top;
  color: inherit;
}

.icon:has(.u5-check),
.icon-img:has(.u5-check),
.card-icon:has(.u5-check),
.media.icon:has(.u5-check) {
  width: auto;
  height: auto;
  flex: none;
  align-self: flex-start;
  align-items: flex-start;
  font-size: 1em;
  font-weight: 700;
}

svg:has(> g#Check3_layer),
svg:has(path[d^="M173.898 439.404"]) {
  display: none;
}

:has(> svg:has(> g#Check3_layer))::before,
:has(> svg:has(path[d^="M173.898 439.404"]))::before {
  content: "✓";
  font-weight: 700;
  font-size: 1em;
  line-height: inherit;
  vertical-align: top;
  color: inherit;
}

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 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;
  @media (max-width: 768px) {
    min-height: 35vh;
  }
}

section.u5m-404-error {
  min-height: calc(100svh - var(--header-height) - var(--header-banner-offset));
  padding: var(--hero-padding);
  background: var(--white);

  .intro-content {
    .heading {
      max-width: 900px;
      display: block;
      background-color: var(--guava);
      background-image: linear-gradient(260deg, var(--guava) 20%, var(--blueberry) 120%);
      background-size: 100%;
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      color: transparent;
      font-size: 144px;
    }

    .description {
      color: var(--blueberry);
    }
  }
}

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%, -100%);
  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;
  }
  &:has(.share.non-sidebar) {
    .hero {
      margin-bottom:0;
    }
  }

  section[class*="u5m-"] {
    border-radius: var(--border2);
    padding: 40px 20px;
  }

  /*****************************************/
  /* .hero */
  /*****************************************/
  .hero {
    --blog-hero-overlap: 25px;
    --blog-hero-media-width: 50%;
    --blog-hero-bg: var(--mango);
    background-color: var(--blog-hero-bg);
    position: relative;
    padding: var(--hero-padding);
    margin: var(--section-margin-small);

    @media (max-width: 768px) {
      --blog-hero-overlap: 16px;
    }

    &.has-media-overlap {
      z-index: 2;
    }

    &:has(.featured-image) {
      /* Same split as the hero colour panel: the row is the section, the
         image owns the right half to the edge, and the copy keeps the
         container gutter. */
      min-height: 62vh;
      display: flex;
      flex-direction: column;
      @media (max-width: 580px) {
        min-height: 0;
        display: block;
      }
      .section-inner {
        flex: 1 1 auto;
        max-width: none;
        padding-inline: 0;
        width: 100%;
        display: flex;
        align-items: stretch;
        column-gap: 0;
        @media (max-width: 580px) {
          flex-direction: column;
          row-gap: 0;
          max-width: var(--content-width);
          padding-inline: 20px;
        }
        .featured-image {
          flex: 0 0 50%;
          max-width: 50%;
          min-width: 0;
          align-self: stretch;
          position: relative;
          overflow: hidden;
          background-color: var(--blog-hero-bg);
          margin-top: calc((var(--hero-padding-top) - var(--header-height) - var(--header-banner-offset)) * -1);
          margin-bottom: calc((var(--hero-padding-bottom) + var(--blog-hero-overlap)) * -1);

          img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
          }

          @media (max-width: 580px) {
            flex: 1 1 auto;
            width: 100%;
            max-width: 100%;
            align-self: stretch;
            margin-top: 0;
            aspect-ratio: 1 / 1;
          }
        }
        .content {
          flex: 0 0 50%;
          max-width: 50%;
          min-width: 0;
          align-self: center;
          padding-left: max(20px, calc(50% - var(--content-width) / 2 + 20px));
          padding-right: 40px;
          margin: 0;
          @media (max-width: 580px) {
            flex: 1 1 auto;
            max-width: 100%;
            align-self: flex-start;
            padding: 0;
            margin-left: 0;
          }
        }
      }
    }
    

    .section-inner{
      max-width: var(--content-width);
      &:has(.featured-image) {
       
      }
      

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

        span.date {
          display:block;
          margin-bottom: 15px;
          font-weight: 500;
          font-size: 14px;
        }
.date,.eyebrow,.title,.author-wrap,.author-link {
  color: var(--blueberry);
}
        h1.title {
          margin: 0;
          color: var(--blueberry);
        }

        .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(--blueberry);
              transition: var(--animation1);
              text-decoration: none;
            }

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

  /*****************************************/
  /* .share */
  /*****************************************/
  .share.non-sidebar {
    margin-bottom: 50px;
    padding: 8px 0;
    background-color: var(--white);
    border-top: 1px solid var(--blueberry);
    border-bottom: 1px solid var(--blueberry);
    position: sticky;
    transition: var(--animation1);
    --share-top-offset: 100px;
    html.scrolled-up body.has-header-banner.page-scrolled & {
      --share-top-offset: 160px;
    }
    top: var(--share-top-offset);
    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: 700;
        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(--action1);
              transition: var(--animation1);
            }
          }
          &:hover,&:focus {
            svg {
              path {
                fill: var(--guava);
              }
            }
          }
        }
      }

    }
  }

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


    &>.content {
      ul {
        list-style: none;
        padding-left: 0;
        margin-left: 30px;
        li {
          padding-left: 30px;
          position: relative;
          &:before {
            content: '';
            width: 24px;
            height: 1px;
            background-color: var(--guava);
            transform: translate(-3px, 0);
            position: absolute;
            top: 15px;
            left: 0;
          }
        }
      }
      p a:not([class]) {
        
        &:hover,&:focus {
          opacity:.7;
          text-decoration: underline;
        }
      }
      
      p,
      ul,
      ol {}

      h1 {}

      h2 {}

      h3 {}

      h4 {}

      h5 {}

      h6 {}

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

      blockquote {
        p {}
      }

      
    }



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


      --top-offset: 120px;
      html.scrolled-up body.has-header-banner.page-scrolled & {
        --top-offset: 180px;
      }

      @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: 360px;
        width: 100%;
        position:relative;
        @media(max-width: 991px) {
          order:1;
          max-width: 100%;
        }
        .blog-sidebar-inner {
          transition: var(--animation1);
          position:sticky;
          top: var(--top-offset);
          padding: 20px;
          background-color: var(--white);
          border-radius: var(--border2);
          border: 1px solid var(--gray1);
          .title {
            font-weight: 700;
            margin-bottom:12px;
          }
          .toc-list {
            list-style: disc;
            margin: 0;
            padding: 0 0 0 1.25em;
            li.toc-item {
              margin: 0 0 12px;
              line-height: 1.4;
              &::marker {
                color: var(--action1);
              }
              &: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;
                }
              }
            }
          }
        }
        .share-links {
          display:flex;
          gap: 5px;
          align-items: center;
          flex-direction:row;
          margin-top: 20px;
          padding-top: 20px;
          border-top: 1px solid var(--gray1);
          a {
            cursor: pointer;
            display:flex;
            svg {
              path {
                fill: var(--blueberry);
                transition: var(--animation1);
              }
            }
            &:hover,&:focus {
              svg {
                path {
                  fill: var(--guava);
                }
              }
            }
          }
        }
      }
    }
  }

  /*****************************************/
  /* .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(--action1);
        padding: 5px 8px;
        border-radius: var(--border2);
        background-color: var(--white);
        transition: var(--animation1);
        border: 1px solid var(--action1);
        &:hover {
          background-color: var(--action1);
          border-color: var(--action1);
          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;
  }
}
.intro-content {
    display: flex;
    flex-direction: column;

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

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

        .button-group {
            justify-content: flex-start;
        }
    }

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

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

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

    .eyebrow {}

    .heading {
        max-width: 1240px;
        margin-top: 0;
        margin-bottom:0;
        display:inline-block;
        mark {
            background: none;
            }
        
    }
    .heading-underline {
        display:block;
        margin-top:10px;
        max-width: 1024px;
    }

    .intro-typer {
        display: inline;

        .intro-typer__display {
            display: inline;
        }

        .intro-typer__cursor {
            display: inline-block;
            width: 2px;
            height: 0.85em;
            margin-left: 6px;
            vertical-align: -0.05em;
            background: currentColor;
            animation: intro-typer-cursor 1s linear infinite;
        }

        &.intro-typer--typing .intro-typer__cursor {
            animation: none;
            opacity: 1;
        }
    }

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

        * {
            font-size: inherit;
        }

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


    .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;
            }
        }
    }

}

@keyframes intro-typer-cursor {
    0%, 49% {
        opacity: 1;
    }

    50%, 100% {
        opacity: 0;
    }
}
.light-bg {
    background-color: var(--white);
}
.guava-bg {
    background-color: var(--guava);
}
.mango-bg {
    background-color: var(--mango);
}
.blueberry-bg {
    background-color: var(--blueberry);
}
.dark-bg {
    background-color: var(--black);
}
/* background colors and setting inline link style */
section {
    &.light-mode {
        background-color: transparent;
        p>a:not([class]){
            color: var(--blueberry);
            text-decoration: underline;
            &:hover,&:focus {
                color: var(--blueberry-light);
                text-decoration: underline;
            }
        }
        .button-flair {
            
                path {
                    stroke: var(--blueberry);
                }
            
        }
        .intro-content {
            .heading-underline {
                path {
                    stroke: var(--blueberry);
                }
            }
        }
    }
    &.guava-mode {
        background-color: var(--guava);   
        p>a:not([class]){
            color: var(--white);
            text-decoration: underline;
            &:hover,&:focus {
                color: var(--white);
                opacity: 0.8;
                text-decoration: underline;
            }
        }
        .button-flair {
           
                path {
                    stroke: var(--white);
                }
           
        }
        .intro-content {
            .heading-underline {
                path {
                    stroke: var(--white);
                }
            }
        }
    }
    &.mango-mode {
        background-color: var(--mango);
        p>a:not([class]){
            color: var(--blueberry);
            text-decoration: underline;
            &:hover,&:focus {
                color: var(--blueberry-light);
                text-decoration: underline;
            }
        }
        .button-flair {
           
                path {
                    stroke: var(--blueberry);
                }
           
        }
        .intro-content {
            .heading-underline {
                path {
                    stroke: var(--blueberry);
                }
            }
        }
    }
    &.blueberry-mode {
        background-color: var(--blueberry);
        p>a:not([class]){
            color: var(--white);
            text-decoration: underline;
            &:hover,&:focus {
                color: var(--white);
                opacity: 0.8;
                text-decoration: underline;
            }
        }
        .button-flair {
           
                path {
                    stroke: var(--white);
                }
           
        }
        .intro-content {
            .heading-underline {
                path {
                    stroke: var(--white);
                }
            }
        }
    }
    &.dark-mode {
        background-color: var(--black);
        p>a:not([class]){
            color: var(--white);
            text-decoration: underline;
            &:hover,&:focus {
                color: var(--white);
                opacity: 0.8;
                text-decoration: underline;
            }
        }
        .button-flair {
           
                path {
                    stroke: var(--white);
                }
           
        }
        .intro-content {
            .heading-underline {
                path {
                    stroke: var(--white);
                }
            }
        }
    }


}


/* intro content overrides */
section {
    &.light-mode,
    &.mango-mode,
    &.dark-mode {
        --intro-heading-mark-gradient: var(--gradient1);
    }
    &.blueberry-mode {
        --intro-heading-mark-gradient: var(--gradient2);
    }
    &.guava-mode {
        --intro-heading-mark-gradient: var(--gradient3);
    }

    &.light-mode,
    &.mango-mode,
    &.blueberry-mode,
    &.guava-mode,
    &.dark-mode {
        .intro-content {
            .heading {
                mark {
                    background: var(--intro-heading-mark-gradient);
                    -webkit-background-clip: text!important;
                    background-clip: text!important;
                    color: transparent;
                    -webkit-text-fill-color: transparent;
                    -webkit-box-decoration-break: clone;
                    box-decoration-break: clone;
                }
            }
        }
    }
}
section.light-mode {
    .intro-content {
        .heading {
            span {
                color: var(--blueberry);
            }
        }
    }
}



section.mango-mode {
    .intro-content {
        .eyebrow {
            color: var(--blueberry);
        }
        .heading {
            color: var(--blueberry);
            span {
                color: var(--guava);
            }

        }
        span.description {
            color: var(--blueberry);
            * {
                color: var(--blueberry);
            }
            a {
                color: var(--blueberry);
                text-decoration: underline;
                &:hover,
                &:focus {
                    opacity: .8;
                }
            }
        }
    }
}



section.dark-mode, section.guava-mode,section.blueberry-mode {
    .intro-content {
        .intro-content-upper {
            .eyebrow {
                color: var(--white);
            }
            
    
                .heading {
                color: var(--white);
                span {
                    color: var(--mango);
                }
            }
    
            span.description {
                color: var(--white);
                /* font-weight: 500; */
    
                * {
                    color: var(--white);
    
                }
    
            }
        }

    }
}