@charset "UTF-8";
/**
 * CONTENTS
 *
 * SETTINGS
 * Variables............Globally-available variables and config.
 * Z-Index..............Semantic z-index manifest
 *
 * TOOLS
 * Mixins...............Useful mixins.
 * Include Media........Sass library for writing CSS media queries.
 * Media Query Test.....Displays the current breakport you're in.
 *
 * GRID
 * Blueprint............CSS grid framework.
 *
 * GENERIC
 * Reset................A level playing field.
 *
 * BASE
 * Forms................Common and default form styles.
 * Headings.............H1–H6 styles.
 * Links................Link styles.
 * Lists................Default list styles.
 * Main.................Page body defaults.
 * Media................Image and video styles.
 * Tables...............Default table styles.
 * Text.................Default text styles.
 *
 * LAYOUT
 * Grids................Grid/column classes.
 * Wrappers.............Wrapping/constraining elements.
 *
 * OBJECTS
 * Buttons..............Various button styles and styles.
 * Icons................Icon styles and settings.
 * Lists................Various site list styles.
 * Navs.................Site navigations.
 * Media................Specific media objects, e.g. figures
 * Messaging............Alerts, banners, messages, etc...
 *
 * TEXT
 * Text.................Various text-specific class definitions.
 *
 * PAGE STRUCTURE
 * Article..............Post-type pages with styled text.
 * Footer...............The main page footer.
 * Header...............The main page header.
 * Main.................Content area styles.
 *
 * MODIFIERS
 * Animations...........Animation and transition effects.
 * Colors...............Text and background colors.
 * Display..............Show and hide and breakpoint visibility rules.
 * Spacings.............Padding and margins in classes.
 *
 * COMPONENTS
 * Blocks...............Modular components often consisting of text and media.
 * Cards................Modular components for mainly text and data (card-like).
 * Heros................Leading hero image/caption section of a content type.
 * Sections.............Larger components of pages.
 * Forms................Specific form styling.
 * Carousels............Styles for all things carousels/slideshows.
 *
 * VENDOR
 * Slick Slider.........The last carousel you'll ever need.
 *
 * TRUMPS
 * Helper Classes.......Helper classes loaded last in the cascade.
 */
/*------------------------------------*\
        $SETTINGS
\*------------------------------------*/
/*------------------------------------*\
        $VARIABLES
\*------------------------------------*/
/**
 * Grid & Baseline Setup
 */
/**
 * Theme Colors
 */
/**
 * Default Colors
 */
/**
 * Style Colors
 */
/**
 * Typography
 */
/**
 * Icons
 */
/**
 * Common Breakpoints
 */
/**
 * Animation
 */
/**
 * Border Styles
 */
/**
 * Default Spacing/Padding
 * Maintain a spacing system divisible by 10
 */
:root {
  --body-font-size: 16px;
  --font-size-xxs: 11px;
  --font-size-xs: 14px;
  --font-size-s: 18px;
  --font-size-m: 22px;
  --font-size-l: 24px;
  --font-size-xl: 28px;
  --font-size-xxl: 32px;
  --font-size-xxxl: 55px; }

@media screen and (max-width: 1023.98px) {
  :root {
    --font-size-xxxl: 32px;
    --font-size-xxl: 28px;
    --font-size-xl: 24px;
    --font-size-l: 22px; } }

/*------------------------------------*\
        $TOOLS
\*------------------------------------*/
/* ------------------------------------*\
        $MIXINS
\*------------------------------------ */
/**
 * Standard paragraph
 */
/**
 * String interpolation function for SASS variables in SVG Image URI's
 */
/**
 * Icon background
 */
/* ------------------------------------*\
        $MEDIA QUERY TESTS
\*------------------------------------ */
/*------------------------------------*\
        $GRID
\*------------------------------------*/
/*!
        Blueprint CSS 3.1.1
        https://blueprintcss.dev
        License MIT 2019
*/
/*------------------------------------*\
        $VARIABLES
\*------------------------------------*/
/**
 * Grid & Baseline Setup
 */
/**
 * Theme Colors
 */
/**
 * Default Colors
 */
/**
 * Style Colors
 */
/**
 * Typography
 */
/**
 * Icons
 */
/**
 * Common Breakpoints
 */
/**
 * Animation
 */
/**
 * Border Styles
 */
/**
 * Default Spacing/Padding
 * Maintain a spacing system divisible by 10
 */
:root {
  --body-font-size: 16px;
  --font-size-xxs: 11px;
  --font-size-xs: 14px;
  --font-size-s: 18px;
  --font-size-m: 22px;
  --font-size-l: 24px;
  --font-size-xl: 28px;
  --font-size-xxl: 32px;
  --font-size-xxxl: 55px; }

@media screen and (max-width: 1023.98px) {
  :root {
    --font-size-xxxl: 32px;
    --font-size-xxl: 28px;
    --font-size-xl: 24px;
    --font-size-l: 22px; } }

html {
  box-sizing: border-box; }

*,
*::before,
*::after {
  box-sizing: inherit; }

[data-bp~="container"] {
  width: 100%;
  margin: 0 auto;
  display: block;
  max-width: 1220px; }

[data-bp~="grid"] {
  display: grid !important;
  grid-gap: 20px;
  grid-template-columns: repeat(12, 1fr); }

[data-bp~="vertical-start"] {
  align-items: start; }

[data-bp~="vertical-center"] {
  align-items: center; }

[data-bp~="vertical-end"] {
  align-items: end; }

[data-bp~="between"] {
  justify-content: center; }

[data-bp~="gap-none"] {
  grid-gap: 0;
  margin-bottom: 0; }

[data-bp~="gap-column-none"] {
  grid-column-gap: 0; }

[data-bp~="gap-row-none"] {
  grid-row-gap: 0;
  margin-bottom: 0; }

[data-bp~="first"] {
  order: -1; }

[data-bp~="last"] {
  order: 12; }

[data-bp~="hide"] {
  display: none !important; }

[data-bp~="show"] {
  display: initial !important; }

[data-bp~="grid"][data-bp~="minmax"] {
  grid-template-columns: repeat(12, minmax(0, 1fr)); }

[data-bp~="grid"][data-bp*="@"] {
  grid-template-columns: 12fr; }

[data-bp~="grid"][data-bp*="@sm"],
[data-bp~="grid"][data-bp*="@md"],
[data-bp~="grid"][data-bp*="@lg"],
[data-bp~="grid"][data-bp*="@xl"] {
  grid-template-columns: 12fr; }

[data-bp~="1@sm"],
[data-bp~="1@md"],
[data-bp~="1@lg"],
[data-bp~="1@xl"], [data-bp~="2@sm"],
[data-bp~="2@md"],
[data-bp~="2@lg"],
[data-bp~="2@xl"], [data-bp~="3@sm"],
[data-bp~="3@md"],
[data-bp~="3@lg"],
[data-bp~="3@xl"], [data-bp~="4@sm"],
[data-bp~="4@md"],
[data-bp~="4@lg"],
[data-bp~="4@xl"], [data-bp~="5@sm"],
[data-bp~="5@md"],
[data-bp~="5@lg"],
[data-bp~="5@xl"], [data-bp~="6@sm"],
[data-bp~="6@md"],
[data-bp~="6@lg"],
[data-bp~="6@xl"], [data-bp~="7@sm"],
[data-bp~="7@md"],
[data-bp~="7@lg"],
[data-bp~="7@xl"], [data-bp~="8@sm"],
[data-bp~="8@md"],
[data-bp~="8@lg"],
[data-bp~="8@xl"], [data-bp~="9@sm"],
[data-bp~="9@md"],
[data-bp~="9@lg"],
[data-bp~="9@xl"], [data-bp~="10@sm"],
[data-bp~="10@md"],
[data-bp~="10@lg"],
[data-bp~="10@xl"], [data-bp~="11@sm"],
[data-bp~="11@md"],
[data-bp~="11@lg"],
[data-bp~="11@xl"], [data-bp~="12@sm"],
[data-bp~="12@md"],
[data-bp~="12@lg"],
[data-bp~="12@xl"] {
  grid-column: span 12;
  -ms-grid-column-span: 12; }

[data-bp~="grid"][data-bp~="1"] {
  grid-template-columns: repeat(12, 1fr); }

[data-bp~="1"] {
  grid-column: span 1/span 1;
  -ms-grid-column-span: 1; }

[data-bp~="grid"][data-bp~="2"] {
  grid-template-columns: repeat(6, 1fr); }

[data-bp~="2"] {
  grid-column: span 2/span 2;
  -ms-grid-column-span: 2; }

[data-bp~="grid"][data-bp~="3"] {
  grid-template-columns: repeat(4, 1fr); }

[data-bp~="3"] {
  grid-column: span 3/span 3;
  -ms-grid-column-span: 3; }

[data-bp~="grid"][data-bp~="4"] {
  grid-template-columns: repeat(3, 1fr); }

[data-bp~="4"] {
  grid-column: span 4/span 4;
  -ms-grid-column-span: 4; }

[data-bp~="grid"][data-bp~="5"] {
  grid-template-columns: repeat(2.4, 1fr); }

[data-bp~="5"] {
  grid-column: span 5/span 5;
  -ms-grid-column-span: 5; }

[data-bp~="grid"][data-bp~="6"] {
  grid-template-columns: repeat(2, 1fr); }

[data-bp~="6"] {
  grid-column: span 6/span 6;
  -ms-grid-column-span: 6; }

[data-bp~="grid"][data-bp~="7"] {
  grid-template-columns: repeat(1.71429, 1fr); }

[data-bp~="7"] {
  grid-column: span 7/span 7;
  -ms-grid-column-span: 7; }

[data-bp~="grid"][data-bp~="8"] {
  grid-template-columns: repeat(1.5, 1fr); }

[data-bp~="8"] {
  grid-column: span 8/span 8;
  -ms-grid-column-span: 8; }

[data-bp~="grid"][data-bp~="9"] {
  grid-template-columns: repeat(1.33333, 1fr); }

[data-bp~="9"] {
  grid-column: span 9/span 9;
  -ms-grid-column-span: 9; }

[data-bp~="grid"][data-bp~="10"] {
  grid-template-columns: repeat(1.2, 1fr); }

[data-bp~="10"] {
  grid-column: span 10/span 10;
  -ms-grid-column-span: 10; }

[data-bp~="grid"][data-bp~="11"] {
  grid-template-columns: repeat(1.09091, 1fr); }

[data-bp~="11"] {
  grid-column: span 11/span 11;
  -ms-grid-column-span: 11; }

[data-bp~="grid"][data-bp~="12"] {
  grid-template-columns: repeat(1, 1fr); }

[data-bp~="12"] {
  grid-column: span 12/span 12;
  -ms-grid-column-span: 12; }

[data-bp~="offset-1"] {
  grid-column-start: 1; }

[data-bp~="offset-2"] {
  grid-column-start: 2; }

[data-bp~="offset-3"] {
  grid-column-start: 3; }

[data-bp~="offset-4"] {
  grid-column-start: 4; }

[data-bp~="offset-5"] {
  grid-column-start: 5; }

[data-bp~="offset-6"] {
  grid-column-start: 6; }

[data-bp~="offset-7"] {
  grid-column-start: 7; }

[data-bp~="offset-8"] {
  grid-column-start: 8; }

[data-bp~="offset-9"] {
  grid-column-start: 9; }

[data-bp~="offset-10"] {
  grid-column-start: 10; }

[data-bp~="offset-11"] {
  grid-column-start: 11; }

[data-bp~="offset-12"] {
  grid-column-start: 12; }

@media (min-width: 500px) {
  [data-bp~="grid"][data-bp~="1@sm"] {
    grid-template-columns: repeat(12, 1fr); }
  [data-bp~="1@sm"] {
    grid-column: span 1/span 1;
    -ms-grid-column-span: 1; }
  [data-bp~="grid"][data-bp~="2@sm"] {
    grid-template-columns: repeat(6, 1fr); }
  [data-bp~="2@sm"] {
    grid-column: span 2/span 2;
    -ms-grid-column-span: 2; }
  [data-bp~="grid"][data-bp~="3@sm"] {
    grid-template-columns: repeat(4, 1fr); }
  [data-bp~="3@sm"] {
    grid-column: span 3/span 3;
    -ms-grid-column-span: 3; }
  [data-bp~="grid"][data-bp~="4@sm"] {
    grid-template-columns: repeat(3, 1fr); }
  [data-bp~="4@sm"] {
    grid-column: span 4/span 4;
    -ms-grid-column-span: 4; }
  [data-bp~="grid"][data-bp~="5@sm"] {
    grid-template-columns: repeat(2.4, 1fr); }
  [data-bp~="5@sm"] {
    grid-column: span 5/span 5;
    -ms-grid-column-span: 5; }
  [data-bp~="grid"][data-bp~="6@sm"] {
    grid-template-columns: repeat(2, 1fr); }
  [data-bp~="6@sm"] {
    grid-column: span 6/span 6;
    -ms-grid-column-span: 6; }
  [data-bp~="grid"][data-bp~="7@sm"] {
    grid-template-columns: repeat(1.71429, 1fr); }
  [data-bp~="7@sm"] {
    grid-column: span 7/span 7;
    -ms-grid-column-span: 7; }
  [data-bp~="grid"][data-bp~="8@sm"] {
    grid-template-columns: repeat(1.5, 1fr); }
  [data-bp~="8@sm"] {
    grid-column: span 8/span 8;
    -ms-grid-column-span: 8; }
  [data-bp~="grid"][data-bp~="9@sm"] {
    grid-template-columns: repeat(1.33333, 1fr); }
  [data-bp~="9@sm"] {
    grid-column: span 9/span 9;
    -ms-grid-column-span: 9; }
  [data-bp~="grid"][data-bp~="10@sm"] {
    grid-template-columns: repeat(1.2, 1fr); }
  [data-bp~="10@sm"] {
    grid-column: span 10/span 10;
    -ms-grid-column-span: 10; }
  [data-bp~="grid"][data-bp~="11@sm"] {
    grid-template-columns: repeat(1.09091, 1fr); }
  [data-bp~="11@sm"] {
    grid-column: span 11/span 11;
    -ms-grid-column-span: 11; }
  [data-bp~="grid"][data-bp~="12@sm"] {
    grid-template-columns: repeat(1, 1fr); }
  [data-bp~="12@sm"] {
    grid-column: span 12/span 12;
    -ms-grid-column-span: 12; }
  [data-bp~="offset-1@sm"] {
    grid-column-start: 1; }
  [data-bp~="offset-2@sm"] {
    grid-column-start: 2; }
  [data-bp~="offset-3@sm"] {
    grid-column-start: 3; }
  [data-bp~="offset-4@sm"] {
    grid-column-start: 4; }
  [data-bp~="offset-5@sm"] {
    grid-column-start: 5; }
  [data-bp~="offset-6@sm"] {
    grid-column-start: 6; }
  [data-bp~="offset-7@sm"] {
    grid-column-start: 7; }
  [data-bp~="offset-8@sm"] {
    grid-column-start: 8; }
  [data-bp~="offset-9@sm"] {
    grid-column-start: 9; }
  [data-bp~="offset-10@sm"] {
    grid-column-start: 10; }
  [data-bp~="offset-11@sm"] {
    grid-column-start: 11; }
  [data-bp~="offset-12@sm"] {
    grid-column-start: 12; }
  [data-bp~="hide@sm"] {
    display: none !important; }
  [data-bp~="show@sm"] {
    display: initial !important; }
  [data-bp~="first@sm"] {
    order: -1; }
  [data-bp~="last@sm"] {
    order: 12; } }

@media (min-width: 768px) {
  [data-bp~="grid"][data-bp~="1@md"] {
    grid-template-columns: repeat(12, 1fr); }
  [data-bp~="1@md"] {
    grid-column: span 1/span 1;
    -ms-grid-column-span: 1; }
  [data-bp~="grid"][data-bp~="2@md"] {
    grid-template-columns: repeat(6, 1fr); }
  [data-bp~="2@md"] {
    grid-column: span 2/span 2;
    -ms-grid-column-span: 2; }
  [data-bp~="grid"][data-bp~="3@md"] {
    grid-template-columns: repeat(4, 1fr); }
  [data-bp~="3@md"] {
    grid-column: span 3/span 3;
    -ms-grid-column-span: 3; }
  [data-bp~="grid"][data-bp~="4@md"] {
    grid-template-columns: repeat(3, 1fr); }
  [data-bp~="4@md"] {
    grid-column: span 4/span 4;
    -ms-grid-column-span: 4; }
  [data-bp~="grid"][data-bp~="5@md"] {
    grid-template-columns: repeat(2.4, 1fr); }
  [data-bp~="5@md"] {
    grid-column: span 5/span 5;
    -ms-grid-column-span: 5; }
  [data-bp~="grid"][data-bp~="6@md"] {
    grid-template-columns: repeat(2, 1fr); }
  [data-bp~="6@md"] {
    grid-column: span 6/span 6;
    -ms-grid-column-span: 6; }
  [data-bp~="grid"][data-bp~="7@md"] {
    grid-template-columns: repeat(1.71429, 1fr); }
  [data-bp~="7@md"] {
    grid-column: span 7/span 7;
    -ms-grid-column-span: 7; }
  [data-bp~="grid"][data-bp~="8@md"] {
    grid-template-columns: repeat(1.5, 1fr); }
  [data-bp~="8@md"] {
    grid-column: span 8/span 8;
    -ms-grid-column-span: 8; }
  [data-bp~="grid"][data-bp~="9@md"] {
    grid-template-columns: repeat(1.33333, 1fr); }
  [data-bp~="9@md"] {
    grid-column: span 9/span 9;
    -ms-grid-column-span: 9; }
  [data-bp~="grid"][data-bp~="10@md"] {
    grid-template-columns: repeat(1.2, 1fr); }
  [data-bp~="10@md"] {
    grid-column: span 10/span 10;
    -ms-grid-column-span: 10; }
  [data-bp~="grid"][data-bp~="11@md"] {
    grid-template-columns: repeat(1.09091, 1fr); }
  [data-bp~="11@md"] {
    grid-column: span 11/span 11;
    -ms-grid-column-span: 11; }
  [data-bp~="grid"][data-bp~="12@md"] {
    grid-template-columns: repeat(1, 1fr); }
  [data-bp~="12@md"] {
    grid-column: span 12/span 12;
    -ms-grid-column-span: 12; }
  [data-bp~="offset-1@md"] {
    grid-column-start: 1; }
  [data-bp~="offset-2@md"] {
    grid-column-start: 2; }
  [data-bp~="offset-3@md"] {
    grid-column-start: 3; }
  [data-bp~="offset-4@md"] {
    grid-column-start: 4; }
  [data-bp~="offset-5@md"] {
    grid-column-start: 5; }
  [data-bp~="offset-6@md"] {
    grid-column-start: 6; }
  [data-bp~="offset-7@md"] {
    grid-column-start: 7; }
  [data-bp~="offset-8@md"] {
    grid-column-start: 8; }
  [data-bp~="offset-9@md"] {
    grid-column-start: 9; }
  [data-bp~="offset-10@md"] {
    grid-column-start: 10; }
  [data-bp~="offset-11@md"] {
    grid-column-start: 11; }
  [data-bp~="offset-12@md"] {
    grid-column-start: 12; }
  [data-bp~="hide@md"] {
    display: none !important; }
  [data-bp~="show@md"] {
    display: initial !important; }
  [data-bp~="first@md"] {
    order: -1; }
  [data-bp~="last@md"] {
    order: 12; } }

@media (min-width: 1024px) {
  [data-bp~="grid"][data-bp~="1@lg"] {
    grid-template-columns: repeat(12, 1fr); }
  [data-bp~="1@lg"] {
    grid-column: span 1/span 1;
    -ms-grid-column-span: 1; }
  [data-bp~="grid"][data-bp~="2@lg"] {
    grid-template-columns: repeat(6, 1fr); }
  [data-bp~="2@lg"] {
    grid-column: span 2/span 2;
    -ms-grid-column-span: 2; }
  [data-bp~="grid"][data-bp~="3@lg"] {
    grid-template-columns: repeat(4, 1fr); }
  [data-bp~="3@lg"] {
    grid-column: span 3/span 3;
    -ms-grid-column-span: 3; }
  [data-bp~="grid"][data-bp~="4@lg"] {
    grid-template-columns: repeat(3, 1fr); }
  [data-bp~="4@lg"] {
    grid-column: span 4/span 4;
    -ms-grid-column-span: 4; }
  [data-bp~="grid"][data-bp~="5@lg"] {
    grid-template-columns: repeat(2.4, 1fr); }
  [data-bp~="5@lg"] {
    grid-column: span 5/span 5;
    -ms-grid-column-span: 5; }
  [data-bp~="grid"][data-bp~="6@lg"] {
    grid-template-columns: repeat(2, 1fr); }
  [data-bp~="6@lg"] {
    grid-column: span 6/span 6;
    -ms-grid-column-span: 6; }
  [data-bp~="grid"][data-bp~="7@lg"] {
    grid-template-columns: repeat(1.71429, 1fr); }
  [data-bp~="7@lg"] {
    grid-column: span 7/span 7;
    -ms-grid-column-span: 7; }
  [data-bp~="grid"][data-bp~="8@lg"] {
    grid-template-columns: repeat(1.5, 1fr); }
  [data-bp~="8@lg"] {
    grid-column: span 8/span 8;
    -ms-grid-column-span: 8; }
  [data-bp~="grid"][data-bp~="9@lg"] {
    grid-template-columns: repeat(1.33333, 1fr); }
  [data-bp~="9@lg"] {
    grid-column: span 9/span 9;
    -ms-grid-column-span: 9; }
  [data-bp~="grid"][data-bp~="10@lg"] {
    grid-template-columns: repeat(1.2, 1fr); }
  [data-bp~="10@lg"] {
    grid-column: span 10/span 10;
    -ms-grid-column-span: 10; }
  [data-bp~="grid"][data-bp~="11@lg"] {
    grid-template-columns: repeat(1.09091, 1fr); }
  [data-bp~="11@lg"] {
    grid-column: span 11/span 11;
    -ms-grid-column-span: 11; }
  [data-bp~="grid"][data-bp~="12@lg"] {
    grid-template-columns: repeat(1, 1fr); }
  [data-bp~="12@lg"] {
    grid-column: span 12/span 12;
    -ms-grid-column-span: 12; }
  [data-bp~="offset-1@lg"] {
    grid-column-start: 1; }
  [data-bp~="offset-2@lg"] {
    grid-column-start: 2; }
  [data-bp~="offset-3@lg"] {
    grid-column-start: 3; }
  [data-bp~="offset-4@lg"] {
    grid-column-start: 4; }
  [data-bp~="offset-5@lg"] {
    grid-column-start: 5; }
  [data-bp~="offset-6@lg"] {
    grid-column-start: 6; }
  [data-bp~="offset-7@lg"] {
    grid-column-start: 7; }
  [data-bp~="offset-8@lg"] {
    grid-column-start: 8; }
  [data-bp~="offset-9@lg"] {
    grid-column-start: 9; }
  [data-bp~="offset-10@lg"] {
    grid-column-start: 10; }
  [data-bp~="offset-11@lg"] {
    grid-column-start: 11; }
  [data-bp~="offset-12@lg"] {
    grid-column-start: 12; }
  [data-bp~="hide@lg"] {
    display: none !important; }
  [data-bp~="show@lg"] {
    display: initial !important; }
  [data-bp~="first@lg"] {
    order: -1; }
  [data-bp~="last@lg"] {
    order: 12; } }

@media (min-width: 1200px) {
  [data-bp~="grid"][data-bp~="1@xl"] {
    grid-template-columns: repeat(12, 1fr); }
  [data-bp~="1@xl"] {
    grid-column: span 1/span 1;
    -ms-grid-column-span: 1; }
  [data-bp~="grid"][data-bp~="2@xl"] {
    grid-template-columns: repeat(6, 1fr); }
  [data-bp~="2@xl"] {
    grid-column: span 2/span 2;
    -ms-grid-column-span: 2; }
  [data-bp~="grid"][data-bp~="3@xl"] {
    grid-template-columns: repeat(4, 1fr); }
  [data-bp~="3@xl"] {
    grid-column: span 3/span 3;
    -ms-grid-column-span: 3; }
  [data-bp~="grid"][data-bp~="4@xl"] {
    grid-template-columns: repeat(3, 1fr); }
  [data-bp~="4@xl"] {
    grid-column: span 4/span 4;
    -ms-grid-column-span: 4; }
  [data-bp~="grid"][data-bp~="5@xl"] {
    grid-template-columns: repeat(2.4, 1fr); }
  [data-bp~="5@xl"] {
    grid-column: span 5/span 5;
    -ms-grid-column-span: 5; }
  [data-bp~="grid"][data-bp~="6@xl"] {
    grid-template-columns: repeat(2, 1fr); }
  [data-bp~="6@xl"] {
    grid-column: span 6/span 6;
    -ms-grid-column-span: 6; }
  [data-bp~="grid"][data-bp~="7@xl"] {
    grid-template-columns: repeat(1.71429, 1fr); }
  [data-bp~="7@xl"] {
    grid-column: span 7/span 7;
    -ms-grid-column-span: 7; }
  [data-bp~="grid"][data-bp~="8@xl"] {
    grid-template-columns: repeat(1.5, 1fr); }
  [data-bp~="8@xl"] {
    grid-column: span 8/span 8;
    -ms-grid-column-span: 8; }
  [data-bp~="grid"][data-bp~="9@xl"] {
    grid-template-columns: repeat(1.33333, 1fr); }
  [data-bp~="9@xl"] {
    grid-column: span 9/span 9;
    -ms-grid-column-span: 9; }
  [data-bp~="grid"][data-bp~="10@xl"] {
    grid-template-columns: repeat(1.2, 1fr); }
  [data-bp~="10@xl"] {
    grid-column: span 10/span 10;
    -ms-grid-column-span: 10; }
  [data-bp~="grid"][data-bp~="11@xl"] {
    grid-template-columns: repeat(1.09091, 1fr); }
  [data-bp~="11@xl"] {
    grid-column: span 11/span 11;
    -ms-grid-column-span: 11; }
  [data-bp~="grid"][data-bp~="12@xl"] {
    grid-template-columns: repeat(1, 1fr); }
  [data-bp~="12@xl"] {
    grid-column: span 12/span 12;
    -ms-grid-column-span: 12; }
  [data-bp~="offset-1@xl"] {
    grid-column-start: 1; }
  [data-bp~="offset-2@xl"] {
    grid-column-start: 2; }
  [data-bp~="offset-3@xl"] {
    grid-column-start: 3; }
  [data-bp~="offset-4@xl"] {
    grid-column-start: 4; }
  [data-bp~="offset-5@xl"] {
    grid-column-start: 5; }
  [data-bp~="offset-6@xl"] {
    grid-column-start: 6; }
  [data-bp~="offset-7@xl"] {
    grid-column-start: 7; }
  [data-bp~="offset-8@xl"] {
    grid-column-start: 8; }
  [data-bp~="offset-9@xl"] {
    grid-column-start: 9; }
  [data-bp~="offset-10@xl"] {
    grid-column-start: 10; }
  [data-bp~="offset-11@xl"] {
    grid-column-start: 11; }
  [data-bp~="offset-12@xl"] {
    grid-column-start: 12; }
  [data-bp~="hide@xl"] {
    display: none !important; }
  [data-bp~="show@xl"] {
    display: initial !important; }
  [data-bp~="first@xl"] {
    order: -1; }
  [data-bp~="last@xl"] {
    order: 12; } }

[data-bp~="flex"] {
  flex-wrap: wrap;
  display: flex; }

[data-bp~="fill"] {
  flex: 1 1 0%;
  flex-basis: 0%; }

[data-bp~="fit"] {
  flex-basis: auto; }

[data-bp~="float-center"] {
  margin-left: auto;
  margin-right: auto;
  display: block;
  float: none; }

[data-bp~="float-left"] {
  float: left; }

[data-bp~="float-right"] {
  float: right; }

[prefix~="clear-fix"]::after {
  content: "";
  display: table;
  clear: both; }

[data-bp~="text-left"] {
  text-align: left !important; }

[data-bp~="text-right"] {
  text-align: right !important; }

[data-bp~="text-center"] {
  text-align: center !important; }

[data-bp~="1--max"] {
  max-width: 101.66667px !important; }

[data-bp~="2--max"] {
  max-width: 203.33333px !important; }

[data-bp~="3--max"] {
  max-width: 305px !important; }

[data-bp~="4--max"] {
  max-width: 406.66667px !important; }

[data-bp~="5--max"] {
  max-width: 508.33333px !important; }

[data-bp~="6--max"] {
  max-width: 610px !important; }

[data-bp~="7--max"] {
  max-width: 711.66667px !important; }

[data-bp~="8--max"] {
  max-width: 813.33333px !important; }

[data-bp~="9--max"] {
  max-width: 915px !important; }

[data-bp~="10--max"] {
  max-width: 1016.66667px !important; }

[data-bp~="11--max"] {
  max-width: 1118.33333px !important; }

[data-bp~="12--max"] {
  max-width: 1220px !important; }

[data-bp~="full-width"] {
  width: 100%; }

@media (max-width: 500px) {
  [data-bp~="full-width-until@sm"] {
    width: 100% !important;
    max-width: 100% !important; } }

@media (max-width: 768px) {
  [data-bp~="full-width-until@md"] {
    width: 100% !important;
    max-width: 100% !important; } }

@media (max-width: 1024px) {
  [data-bp~="full-width-until@lg"] {
    width: 100% !important;
    max-width: 100% !important; } }

@media (max-width: 1200px) {
  [data-bp~="full-width-until@xl"] {
    width: 100% !important;
    max-width: 100% !important; } }

[data-bp~="margin--xs"] {
  margin: 5px !important; }

[data-bp~="margin-top--xs"] {
  margin-top: 5px !important; }

[data-bp~="margin-bottom--xs"] {
  margin-bottom: 5px !important; }

[data-bp~="margin-right--xs"] {
  margin-right: 5px !important; }

[data-bp~="margin-left--xs"] {
  margin-left: 5px !important; }

[data-bp~="padding--xs"] {
  padding: 5px !important; }

[data-bp~="padding-top--xs"] {
  padding-top: 5px !important; }

[data-bp~="padding-bottom--xs"] {
  padding-bottom: 5px !important; }

[data-bp~="padding-right--xs"] {
  padding-right: 5px !important; }

[data-bp~="padding-left--xs"] {
  padding-left: 5px !important; }

[data-bp~="margin--sm"] {
  margin: 10px !important; }

[data-bp~="margin-top--sm"] {
  margin-top: 10px !important; }

[data-bp~="margin-bottom--sm"] {
  margin-bottom: 10px !important; }

[data-bp~="margin-right--sm"] {
  margin-right: 10px !important; }

[data-bp~="margin-left--sm"] {
  margin-left: 10px !important; }

[data-bp~="padding--sm"] {
  padding: 10px !important; }

[data-bp~="padding-top--sm"] {
  padding-top: 10px !important; }

[data-bp~="padding-bottom--sm"] {
  padding-bottom: 10px !important; }

[data-bp~="padding-right--sm"] {
  padding-right: 10px !important; }

[data-bp~="padding-left--sm"] {
  padding-left: 10px !important; }

[data-bp~="margin"] {
  margin: 30px !important; }

[data-bp~="margin-top"] {
  margin-top: 30px !important; }

[data-bp~="margin-bottom"] {
  margin-bottom: 30px !important; }

[data-bp~="margin-right"] {
  margin-right: 30px !important; }

[data-bp~="margin-left"] {
  margin-left: 30px !important; }

[data-bp~="padding"] {
  padding: 30px !important; }

[data-bp~="padding-top"] {
  padding-top: 30px !important; }

[data-bp~="padding-bottom"] {
  padding-bottom: 30px !important; }

[data-bp~="padding-right"] {
  padding-right: 30px !important; }

[data-bp~="padding-left"] {
  padding-left: 30px !important; }

[data-bp~="margin--lg"] {
  margin: 20px !important; }

[data-bp~="margin-top--lg"] {
  margin-top: 20px !important; }

[data-bp~="margin-bottom--lg"] {
  margin-bottom: 20px !important; }

[data-bp~="margin-right--lg"] {
  margin-right: 20px !important; }

[data-bp~="margin-left--lg"] {
  margin-left: 20px !important; }

[data-bp~="padding--lg"] {
  padding: 20px !important; }

[data-bp~="padding-top--lg"] {
  padding-top: 20px !important; }

[data-bp~="padding-bottom--lg"] {
  padding-bottom: 20px !important; }

[data-bp~="padding-right--lg"] {
  padding-right: 20px !important; }

[data-bp~="padding-left--lg"] {
  padding-left: 20px !important; }

[data-bp~="margin--none"] {
  margin: 0 !important; }

[data-bp~="margin-top--none"] {
  margin-top: 0 !important; }

[data-bp~="margin-bottom--none"] {
  margin-bottom: 0 !important; }

[data-bp~="margin-right--none"] {
  margin-right: 0 !important; }

[data-bp~="margin-left--none"] {
  margin-left: 0 !important; }

[data-bp~="padding--none"] {
  padding: 0 !important; }

[data-bp~="padding-top--none"] {
  padding-top: 0 !important; }

[data-bp~="padding-bottom--none"] {
  padding-bottom: 0 !important; }

[data-bp~="padding-right--none"] {
  padding-right: 0 !important; }

[data-bp~="padding-left--none"] {
  padding-left: 0 !important; }

/*------------------------------------*\
        $GENERIC
\*------------------------------------*/
/* ------------------------------------*\
        $RESET
\*------------------------------------ */
/* Border-Box http:/paulirish.com/2012/box-sizing-border-box-ftw/ */
*,
*::before,
*::after {
  box-sizing: border-box; }

body {
  margin: 0;
  padding: 0; }

blockquote,
body,
div,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
html,
iframe,
label,
legend,
li,
nav,
object,
ol,
p,
section,
table,
ul {
  margin: 0;
  padding: 0; }

article,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block; }

address {
  font-style: normal; }

/*------------------------------------*\
        $BASE
\*------------------------------------*/
/*------------------------------------*\
        $FONTS
\*------------------------------------*/
/**
 * Ideal Sans
 */
@font-face {
  font-family: "HCo Ideal Sans SSm";
  src: url("./webfonts/ideal-sans/woff2/IdealSansSSm-Book_Web.woff2") format("woff2"), url("./webfonts/ideal-sans/woff/IdealSansSSm-Book_Web.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "HCo Ideal Sans SSm";
  src: url("./webfonts/ideal-sans/woff2/IdealSansSSm-BookItalic_Web.woff2") format("woff2"), url("./webfonts/ideal-sans/woff/IdealSansSSm-BookItalic_Web.woff") format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: "HCo Ideal Sans SSm";
  src: url("./webfonts/ideal-sans/woff2/IdealSansSSm-Semibold_Web.woff2") format("woff2"), url("./webfonts/ideal-sans/woff/IdealSansSSm-Semibold_Web.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "HCo Ideal Sans SSm";
  src: url("./webfonts/ideal-sans/woff2/IdealSansSSm-Bold_Web.woff2") format("woff2"), url("./webfonts/ideal-sans/woff/IdealSansSSm-Bold_Web.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "HCo Ideal Sans SSm";
  src: url("./webfonts/ideal-sans/woff2/IdealSansSSm-BoldItalic_Web.woff2") format("woff2"), url("./webfonts/ideal-sans/woff/IdealSansSSm-BoldItalic_Web.woff") format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap; }

/**
 * Mercury
 */
@font-face {
  font-family: "HCo Mercury SSm";
  src: url("./webfonts/mercury/woff2/MercurySSm-Book_Web.woff2") format("woff2"), url("./webfonts/mercury/woff/MercurySSm-Book_Web.woff") format("woff");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: "HCo Mercury SSm";
  src: url("./webfonts/mercury/woff2/MercurySSm-BookItalic_Web.woff2") format("woff2"), url("./webfonts/mercury/woff/MercurySSm-BookItalic_Web.woff") format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: "HCo Mercury SSm";
  src: url("./webfonts/mercury/woff2/MercurySSm-Medium_Web.woff2") format("woff2"), url("./webfonts/mercury/woff/MercurySSm-Medium_Web.woff") format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "HCo Mercury SSm";
  src: url("./webfonts/mercury/woff2/MercurySSm-Bold_Web.woff2") format("woff2"), url("./webfonts/mercury/woff/MercurySSm-Bold_Web.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "HCo Mercury SSm";
  src: url("./webfonts/mercury/woff2/MercurySSm-BoldItalic_Web.woff2") format("woff2"), url("./webfonts/mercury/woff/MercurySSm-BoldItalic_Web.woff") format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap; }

/**
 * Operator
 */
@font-face {
  font-family: "HCo Operator SSm";
  src: url("./webfonts/operator/woff2/OperatorSSm-Book_Web.woff2") format("woff2"), url("./webfonts/operator/woff/OperatorSSm-Book_Web.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "HCo Operator SSm";
  src: url("./webfonts/operator/woff2/OperatorSSm-BookItalic_Web.woff2") format("woff2"), url("./webfonts/operator/woff/OperatorSSm-BookItalic_Web.woff") format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: "HCo Operator SSm";
  src: url("./webfonts/operator/woff2/OperatorSSm-Bold_Web.woff2") format("woff2"), url("./webfonts/operator/woff/OperatorSSm-Bold_Web.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "HCo Operator SSm";
  src: url("./webfonts/operator/woff2/OperatorSSm-BoldItalic_Web.woff2") format("woff2"), url("./webfonts/operator/woff/OperatorSSm-BoldItalic_Web.woff") format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: "groot";
  src: url("./webfonts/groot.ttf") format("ttf"), url("./webfonts/groot.woff") format("woff"), url("./webfonts/groot.svg") format("svg"); }

/*------------------------------------*\
        $FORMS
\*------------------------------------*/
form ol,
form ul {
  list-style: none;
  margin-left: 0; }

legend {
  display: table;
  float: left;
  margin: 0;
  padding: 0;
  width: 100%; }
  legend + * {
    clear: both; }

fieldset {
  border: 0;
  padding: 0.01em 0 0;
  margin: 0;
  min-width: 0; }

body:not(:-moz-handler-blocked) fieldset {
  display: table-cell; }

label {
  font-size: 14px;
  margin-bottom: 4px;
  display: block;
  font-weight: bold; }

input,
select,
textarea {
  width: 100%;
  border: none;
  appearance: none; }

input[type="range"] {
  appearance: auto; }

input[type="number"],
input[type="date"],
input[type="text"],
input[type="password"],
input[type="email"],
input[type="search"],
input[type="tel"],
textarea,
.o-select,
select {
  font-size: 16px;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  padding: 18px 20px;
  box-shadow: none;
  border-radius: 1px;
  border: 1px solid #dedede;
  resize: none; }
  input[type="number"]::placeholder,
  input[type="date"]::placeholder,
  input[type="text"]::placeholder,
  input[type="password"]::placeholder,
  input[type="email"]::placeholder,
  input[type="search"]::placeholder,
  input[type="tel"]::placeholder,
  textarea::placeholder,
  .o-select::placeholder,
  select::placeholder {
    color: #c0c1c5; }
  input[type="number"]:focus,
  input[type="date"]:focus,
  input[type="text"]:focus,
  input[type="password"]:focus,
  input[type="email"]:focus,
  input[type="search"]:focus,
  input[type="tel"]:focus,
  textarea:focus,
  .o-select:focus,
  select:focus {
    outline: 2px solid #087d87; }

textarea {
  line-height: 1.5;
  resize: vertical; }

input[type="radio"],
input[type="checkbox"] {
  outline: none;
  margin: 0;
  margin-right: 10px;
  height: 20px;
  width: 20px;
  min-width: 20px;
  line-height: 1;
  background-size: 14px;
  background-repeat: no-repeat;
  background-position: 0 0;
  cursor: pointer;
  display: block;
  float: left;
  border: 1px solid #dedede;
  padding: 0;
  user-select: none;
  appearance: none;
  background-color: #ffffff; }

input[type="radio"] + label,
input[type="checkbox"] + label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  margin-bottom: 0; }

input[type="radio"] ~ label,
input[type="checkbox"] ~ label {
  margin-top: 2px; }

input[type="checkbox"]:checked {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M26.08,3.56l-2,1.95L10.61,19l-5-4L3.47,13.29,0,17.62l2.17,1.73L9.1,24.9,11,26.44l1.77-1.76L28.05,9.43,30,7.48Z' fill='%23087d87'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center center; }

input[type="radio"]:checked {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5.2844 5.2844'%3E%3Ccircle cx='2.6422' cy='2.6422' r='2.6422'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 8px;
  border-color: #282828; }

input[type="checkbox"]:focus,
input[type="radio"]:focus {
  outline: 2px solid #087d87; }

input[type="radio"] {
  border-radius: 50px; }

input[type="checkbox"] {
  border-radius: 2px; }

input[type="submit"] {
  transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1); }

/* clears the "X" from Internet Explorer */
input[type="search"]::-ms-clear {
  display: none;
  width: 0;
  height: 0; }

input[type="search"]::-ms-reveal {
  display: none;
  width: 0;
  height: 0; }

/* clears the "X" from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none; }

/* removes the blue background on Chrome's autocomplete */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  box-shadow: 0 0 0 30px #ffffff inset; }

.o-text-editor {
  line-height: 0; }

.o-select,
select {
  background-color: #ffffff;
  appearance: none;
  position: relative;
  width: 100%;
  cursor: pointer;
  padding: 18px 40px 18px 15px; }

.o-select--small select {
  padding: 10px 40px 10px 14px;
  font-size: 14px; }
  @media (max-width: 500px) {
    .o-select--small select {
      font-size: 16px; } }

.o-select--minimal select {
  background-color: transparent;
  border: none;
  font-size: 13px;
  font-weight: 500;
  color: #087d87;
  padding-left: 5px;
  padding-right: 20px; }
  @media (max-width: 500px) {
    .o-select--minimal select {
      font-size: 16px; } }

.o-selectbox {
  position: relative;
  display: inline-flex;
  width: auto; }
  .o-selectbox::after {
    content: "";
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M.3367,9.0173l13.7566,15.595a1.3393,1.3393,0,0,0,.4377.3127,1.5647,1.5647,0,0,0,.5.0875,1.4505,1.4505,0,0,0,.5252-.1,1.3383,1.3383,0,0,0,.4377-.3127L29.7259,9.0173a1.126,1.126,0,0,0,.25-.4252,1.2513,1.2513,0,0,0,0-.4878,1.176,1.176,0,0,0-.1376-.4627,1.05,1.05,0,0,0-.25-.3877L27.2747,5.303a1.3408,1.3408,0,0,0-1.8509.1375L15.2063,17.2713a.3009.3009,0,0,1-.1.075.2764.2764,0,0,1-.1376,0,.2251.2251,0,0,1-.125,0,.1333.1333,0,0,1-.1126-.075L4.5762,5.4405a1.2506,1.2506,0,0,0-.8629-.4252,1.1384,1.1384,0,0,0-.5,0,1.4282,1.4282,0,0,0-.4252.2376L.4742,7.2539a1.05,1.05,0,0,0-.3126.3877,1.176,1.176,0,0,0-.1376.4627,1.2513,1.2513,0,0,0,0,.4878A1.1251,1.1251,0,0,0,.3367,9.0173Z'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px auto;
    height: 20px;
    width: 20px; }
  .o-selectbox.o-select--small::after {
    width: 15px;
    background-size: 13px auto; }
  .o-selectbox.o-select--minimal::after {
    right: 2px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M.3367,9.0173l13.7566,15.595a1.3393,1.3393,0,0,0,.4377.3127,1.5647,1.5647,0,0,0,.5.0875,1.4505,1.4505,0,0,0,.5252-.1,1.3383,1.3383,0,0,0,.4377-.3127L29.7259,9.0173a1.126,1.126,0,0,0,.25-.4252,1.2513,1.2513,0,0,0,0-.4878,1.176,1.176,0,0,0-.1376-.4627,1.05,1.05,0,0,0-.25-.3877L27.2747,5.303a1.3408,1.3408,0,0,0-1.8509.1375L15.2063,17.2713a.3009.3009,0,0,1-.1.075.2764.2764,0,0,1-.1376,0,.2251.2251,0,0,1-.125,0,.1333.1333,0,0,1-.1126-.075L4.5762,5.4405a1.2506,1.2506,0,0,0-.8629-.4252,1.1384,1.1384,0,0,0-.5,0,1.4282,1.4282,0,0,0-.4252.2376L.4742,7.2539a1.05,1.05,0,0,0-.3126.3877,1.176,1.176,0,0,0-.1376.4627,1.2513,1.2513,0,0,0,0,.4878A1.1251,1.1251,0,0,0,.3367,9.0173Z' fill='%23087d87'/%3E%3C/svg%3E%0A"); }
  @media (min-width: 501px) {
    .o-selectbox--max-width {
      max-width: 170px; } }

/**
 * Fancy radio/checkboxes like buttons
 */
.o-radio-button {
  position: relative; }
  .o-radio-button label {
    padding: 20px;
    border: 1px solid #dedede;
    width: 100%;
    position: relative;
    z-index: 10; }
  .o-radio-button input {
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1; }
    .o-radio-button input:checked + label {
      outline: 2px solid #00a3bf; }
  .o-radio-button__rubric {
    font-size: 11px;
    text-transform: uppercase;
    color: #c74a34;
    font-weight: normal;
    position: absolute;
    top: 10px;
    right: 10px; }

/**
 * Form validation
 */
.has-error {
  display: none; }

.o-form-errors input.is-invalid,
.o-form-errors select.is-invalid {
  border-color: #ec5b3b; }

.o-form-errors p.is-invalid {
  font-size: 14px;
  color: #ec5b3b;
  padding: 3px 0;
  width: 100%; }

.o-form-errors .has-error {
  display: block; }

/**
 * Field groups
 */
.o-field-group--check {
  display: flex;
  align-items: flex-start; }
  .o-field-group--check label {
    font-weight: normal;
    font-size: 14px;
    margin-bottom: 0; }

.o-field-group--methods input {
  margin-top: 5px; }

.o-field-group--methods label svg,
.o-field-group--methods label span {
  display: inline-block;
  vertical-align: top; }

@media (min-width: 501px) {
  .o-field-group--split {
    display: flex;
    justify-content: space-between;
    align-items: stretch; } }

.o-field-group--split > * {
  margin-bottom: 20px; }
  @media (min-width: 501px) {
    .o-field-group--split > * {
      width: calc(50% - 10px);
      margin-bottom: 0; } }

.o-field-group--lg {
  display: block; }
  @media (min-width: 501px) {
    .o-field-group--lg {
      display: inline-block; } }

.o-field-group--lg select,
.o-field-group--lg input {
  border: none; }

.o-field-group--m {
  display: block; }
  @media (min-width: 501px) {
    .o-field-group--m {
      display: inline-block; } }

.o-field-group--m select,
.o-field-group--m input {
  border: none; }
  .o-field-group--m select option,
  .o-field-group--m input option {
    font-size: var(--font-size-s, 18px); }

.o-field-group .has-shadow {
  border: none;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05); }

/**
 * Styles file input
 */
.o-file-input {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1; }

/*------------------------------------*\
        $HEADINGS
\*------------------------------------*/
.o-heading--xxxl {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-xxxl, 55px);
  line-height: 1.2;
  font-weight: bold; }

h1,
.o-heading--xxl {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-xxl, 32px);
  line-height: 1.3;
  font-weight: bold; }

h2,
.o-heading--xl,
.o-field-group--lg select,
.o-field-group--lg input {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-xl, 28px);
  line-height: 1.3;
  font-weight: bold; }

h3,
.o-heading--l {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-l, 24px);
  line-height: 1.4;
  font-weight: bold; }

h4,
.o-heading--m,
.o-field-group--m select,
.o-field-group--m input {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-m, 22px);
  line-height: 1.4;
  font-weight: bold; }

h5,
.o-heading--s {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-s, 18px);
  line-height: 1.6;
  font-weight: normal; }

h6,
.o-heading--xs {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-xs, 14px);
  font-weight: normal;
  line-height: 1.5; }

/**
 * Secondary Headings
 */
.o-heading--secondary--xxl {
  font-family: "HCo Mercury SSm", georgia, serif;
  font-size: var(--font-size-xxl, 32px);
  line-height: 1.3; }

.o-heading--secondary--l {
  font-family: "HCo Mercury SSm", georgia, serif;
  font-size: var(--font-size-l, 24px);
  line-height: 1.4; }

/*------------------------------------*\
        $LINKS
\*------------------------------------*/
a,
.o-link {
  text-decoration: none;
  color: #087d87; }
  a:hover,
  .o-link:hover {
    color: #213e42; }
    a:hover > .o-icon *,
    .o-link:hover > .o-icon * {
      fill: #213e42; }

/**
 * Standard black underlined link.
 */
.c-section-header a.author-link,
.o-underline-link {
  color: #282828;
  text-decoration: underline; }
  .c-section-header a.author-link svg *,
  .o-underline-link svg * {
    fill: #282828; }
  .c-section-header a.author-link:hover,
  .o-underline-link:hover {
    text-decoration: none;
    color: #213e42; }
    .c-section-header a.author-link:hover svg *,
    .o-underline-link:hover svg * {
      fill: #213e42; }

/**
 * Links that look like body copy.
 */
.u-text-link {
  color: #707373;
  text-decoration: none; }
  .u-text-link:hover {
    text-decoration: underline; }

/**
 * Links that wrap content.
 */
.u-link-wrap:hover .o-text,
.u-link-wrap:hover .o-title {
  color: #087d87; }

.u-link-wrap:hover .o-title {
  text-decoration: underline; }

/*------------------------------------*\
        $LISTS
\*------------------------------------*/
ol,
ul {
  margin: 0;
  padding: 0;
  list-style: none; }

/**
 * Definition Lists
 */
dl {
  overflow: hidden;
  margin: 0 0 20px; }

dt {
  font-weight: bold; }

dd {
  margin-left: 0; }

/*------------------------------------*\
        $SITE MAIN
\*------------------------------------*/
body {
  background: #ffffff;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: 16px;
  line-height: 1.3;
  text-size-adjust: 100%;
  color: #282828;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@media (pointer: coarse) and (max-width: 768px) {
  html,
  body {
    overflow-x: hidden;
    -webkit-overflow-scrolling: auto; } }

/*------------------------------------*\
        $MEDIA ELEMENTS
\*------------------------------------*/
/**
 * Flexible Media
 */
img,
video,
object,
svg,
iframe {
  max-width: 100%;
  border: none;
  display: block; }

img {
  height: auto; }

svg {
  max-height: 100%; }

picture,
picture img {
  display: block; }

figure {
  position: relative;
  display: inline-block;
  overflow: hidden; }

figcaption a {
  display: block; }

/**
 * Responsive Video
 */
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  background: #000;
  margin: 20px 0; }

.video-iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0; }

/*------------------------------------*\
        $TABLES
\*------------------------------------*/
table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%; }

th {
  text-align: left;
  border: 1px solid transparent;
  padding: 10px 0;
  text-transform: uppercase;
  vertical-align: top;
  font-weight: bold; }

tr {
  border: 1px solid transparent; }

td {
  border: 1px solid transparent;
  padding: 10px; }

.c-calendar {
  text-align: center; }
  .c-calendar tr {
    border-bottom: 1px solid #dedede; }
  .c-calendar td {
    border-bottom: 1px solid #dedede;
    padding: 10px 5px; }

.c-table--long-values {
  word-break: break-all;
  overflow-wrap: break-word;
  word-wrap: break-word;
  width: 20%; }

.c-table--vertical {
  width: auto; }
  .c-table--vertical th,
  .c-table--vertical td {
    display: table-cell;
    vertical-align: baseline; }
    @media (max-width: 500px) {
      .c-table--vertical th,
      .c-table--vertical td {
        display: block;
        width: 100%; } }
  .c-table--vertical td {
    padding: 20px 0; }
    @media (max-width: 500px) {
      .c-table--vertical td {
        padding: 0 0 20px 0; } }
  .c-table--vertical--right {
    margin-top: 10px;
    margin-left: auto; }
    .c-table--vertical--right td {
      text-align: right;
      padding-right: 0; }
    @media (max-width: 500px) {
      .c-table--vertical--right {
        margin-top: 20px;
        margin-left: initial; }
        .c-table--vertical--right td {
          text-align: left; } }

.c-table {
  padding: 0; }
  @media (max-width: 768px) {
    .c-table {
      border: 0; }
      .c-table thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px; }
      .c-table th,
      .c-table td {
        display: block;
        padding: 10px; }
      .c-table tr {
        background-color: #f0f0f0;
        display: block;
        margin-bottom: 20px; }
      .c-table td {
        border-bottom: 1px solid #dedede;
        min-height: 40px; }
        .c-table td:first-child {
          cursor: pointer; }
          .c-table td:first-child::before {
            content: attr(data-label) " "; }
        .c-table td:last-child {
          border-bottom: 0; }
        .c-table td::before {
          content: attr(data-label) " ";
          font-weight: bold;
          text-transform: uppercase;
          font-size: var(--font-size-xs); } }

.a-table thead th {
  padding-left: 0.3rem;
  border: 1px solid #dedede; }

.a-table tbody td {
  border: 1px solid #dedede; }

/*------------------------------------*\
        $TEXT ELEMENTS
\*------------------------------------*/
/**
 * Text-Related Elements
 */
p {
  line-height: 1.68;
  font-size: 15px; }

small {
  font-size: 90%; }

/**
 * Bold
 */
strong,
b {
  font-weight: bold; }

/**
 * Underlines
*/
u {
  text-underline-position: under; }

/**
 * Blockquote
 */
blockquote {
  display: block;
  border-left: 6px solid #dee9ec;
  /*
     * Padding will add spacing to border so
     * we need to override spacing set from "o-rte-text"
     */
  margin: 40px 0 40px 30px !important;
  position: relative;
  padding-left: 15px; }
  @media (min-width: 769px) {
    blockquote {
      margin: 50px 0 50px 40px !important;
      padding-left: 30px; } }
  blockquote::before {
    content: "\201C";
    font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
    font-size: 40px;
    line-height: 1;
    color: #087d87;
    min-width: 35px;
    position: absolute;
    left: -35px; }
    @media (min-width: 769px) {
      blockquote::before {
        left: -45px;
        min-width: 45px; } }
  blockquote p {
    line-height: 1.7;
    flex: 1; }
  blockquote .o-blockquote__author {
    display: block;
    margin-top: 20px;
    color: #087d87;
    width: 100%; }

/**
 * Cite
 */
cite {
  display: block;
  font-style: normal;
  margin: 10px 0;
  padding-left: 20px;
  border-left: 3px solid #f0f0f0; }
  @media (min-width: 769px) {
    cite {
      margin: 20px 0;
      padding-left: 30px; } }

/**
 * Horizontal Rule
 */
hr {
  height: 1px;
  border: none;
  background-color: #dedede;
  margin: 0 auto; }

/**
 * Abbreviation
 */
abbr {
  border-bottom: 1px dotted #dedede;
  cursor: help; }

/*------------------------------------*\
        $LAYOUT
\*------------------------------------*/
/* ------------------------------------*\
        $GRIDS
\*------------------------------------ */
.l-grid {
  display: grid;
  grid-template-rows: auto;
  grid-column-gap: 20px;
  row-gap: 20px; }
  @media all and (-ms-high-contrast: none) {
    .l-grid {
      display: flex;
      flex-flow: row wrap;
      margin-left: -20px;
      margin-right: -20px; }
      .l-grid > * {
        margin: 20px; } }
  .l-grid-item {
    position: relative; }
  @media (min-width: 1201px) {
    .l-grid--large-gutters {
      grid-column-gap: 80px;
      row-gap: 80px; } }
  @media (min-width: 501px) {
    .l-grid--2up {
      grid-template-columns: repeat(2, 1fr); } }
  @media all and (-ms-high-contrast: none) {
    .l-grid--2up > * {
      width: calc(50% - 40px); } }
  .l-grid--2up--flex {
    display: flex;
    flex-wrap: wrap;
    margin: 0 calc(20px * -1); }
    .l-grid--2up--flex > * {
      width: 100%;
      padding-left: 20px;
      padding-right: 20px;
      margin-top: 40px; }
      @media (min-width: 501px) {
        .l-grid--2up--flex > * {
          width: 50%; } }
  @media (min-width: 501px) {
    .l-grid--3up {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1025px) {
    .l-grid--3up {
      grid-template-columns: repeat(3, 1fr); } }
  @media all and (-ms-high-contrast: none) {
    .l-grid--3up > * {
      width: calc(33.333% - 40px); } }
  .l-grid--4up {
    grid-template-columns: repeat(minmax(200px, 1fr)); }
    @media (min-width: 321px) {
      .l-grid--4up {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 769px) {
      .l-grid--4up {
        grid-template-columns: repeat(3, 1fr); } }
    @media (min-width: 1201px) {
      .l-grid--4up {
        grid-template-columns: repeat(4, 1fr); } }
    @media all and (-ms-high-contrast: none) {
      .l-grid--4up > * {
        width: calc(25% - 40px); } }
  .l-grid--4up--at-medium {
    grid-template-columns: repeat(2, 1fr); }
    @media (min-width: 501px) {
      .l-grid--4up--at-medium {
        grid-template-columns: repeat(3, 1fr); } }
    @media (min-width: 769px) {
      .l-grid--4up--at-medium {
        grid-template-columns: repeat(4, 1fr); } }
    @media all and (-ms-high-contrast: none) {
      .l-grid--4up--at-medium > * {
        width: calc(25% - 40px); } }
  .l-grid--5up {
    grid-row-gap: 40px;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); }
    @media (min-width: 1025px) {
      .l-grid--5up {
        grid-template-columns: repeat(5, 1fr); } }
    @media all and (-ms-high-contrast: none) {
      .l-grid--5up > * {
        width: calc(20% - 40px); } }

/*
 * see @organisms/sections/cta-list.twig
 *
 * These classes are specifically meant to style
 * the cta list section. We're covering older browsers
 * that do not know "how" to push child elements to the
 * next row if there's no more space available.
 *
 * In IE11, we have to specify the exact column and row
 * a child element lives in. IE11 will otherwise stack
 * sibling elements on top of one another.
 */
.l-grid-cta {
  display: grid;
  grid-column-gap: 20px;
  row-gap: 20px; }
  .l-grid-cta--item {
    padding-bottom: 0; }
  .l-grid-cta--item:nth-of-type(1) {
    grid-column: 1;
    grid-row: 1; }
  .l-grid-cta--item:nth-of-type(2) {
    grid-column: 2;
    grid-row: 1; }
  .l-grid-cta--item:nth-of-type(3) {
    grid-column: 1;
    grid-row: 2; }
  .l-grid-cta--item:nth-of-type(4) {
    grid-column: 2;
    grid-row: 2; }
  @media (max-width: 500px) {
    .l-grid-cta {
      display: block; }
      .l-grid-cta--item {
        padding-bottom: 20px; } }

/*------------------------------------*\
        $WRAPPERS & CONTAINERS
\*------------------------------------*/
/**
 * Wrapping element to keep content contained and centered.
 */
.l-wrap {
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
  width: 100%;
  position: relative; }

/**
 * Layout containers - keep content centered and within a maximum width. Also
 * adjusts left and right padding as the viewport widens.
 */
.l-container {
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
  position: relative; }
  .l-container--sm {
    max-width: 730px; }
  .l-container--md {
    max-width: 884px; }
  .l-container--lg {
    max-width: 1000px; }
  .l-container--xl {
    max-width: 1600px; }

.u-max-width--240 {
  width: 100%; }
  @media (min-width: 501px) {
    .u-max-width--240 {
      max-width: 240px; } }

/**
 * Two column layout with larger column leading.
 */
@media (min-width: 1025px) {
  .l-columns {
    display: flex;
    justify-content: space-between;
    align-items: stretch; } }

.l-columns--lg {
  width: 100%;
  margin-bottom: 40px; }
  @media (min-width: 1025px) {
    .l-columns--lg {
      margin-bottom: 0;
      margin-right: 40px; } }
  @media (min-width: 1201px) {
    .l-columns--lg {
      margin-right: 80px; } }
  @media (min-width: 1441px) {
    .l-columns--lg {
      margin-right: 130px; } }

.l-columns--sm {
  width: 100%;
  margin-bottom: 30px; }
  @media (min-width: 1025px) {
    .l-columns--sm {
      min-width: 300px;
      max-width: 300px;
      margin-bottom: 0; } }

/*------------------------------------*\
        $TEXT
\*------------------------------------*/
/*------------------------------------*\
        $TEXT TYPES
\*------------------------------------*/
/**
 * Font Families
 */
.u-font {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif; }

.u-font--primary,
.u-font--primary p {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif; }

.u-font--secondary,
.u-font--secondary p {
  font-family: "HCo Mercury SSm", georgia, serif; }

.u-font--tertiary,
.u-font--tertiary p {
  font-family: "HCo Operator SSm", monaco, "Courier New", "Courier", monospace; }

/**
 * Text Sizes
 */
.u-font--body {
  font-size: var(--body-font-size, 16px); }

.u-font--xs {
  font-size: var(--font-size-xs, 14px); }

.u-font--s {
  font-size: var(--font-size-s, 18px); }

.u-font--m {
  font-size: var(--font-size-m, 22px); }

.u-font--l {
  font-size: var(--font-size-l, 24px); }

.u-font--xl {
  font-size: var(--font-size-xl, 28px); }

.u-font--xxl {
  font-size: var(--font-size-xxl, 32px); }

/**
 * Primary type styles
 */
/**
 * Text Transforms
 */
.u-text-transform--upper {
  text-transform: uppercase; }

.u-text-transform--lower {
  text-transform: lowercase; }

/**
 * Text Styles
 */
.u-text-style--italic {
  font-style: italic; }

.u-font-weight--normal {
  font-weight: normal; }

.u-font-weight--semi {
  font-weight: 500; }

/**
 * Text Positioning
 */
.u-align--center {
  text-align: center; }

.u-align--right {
  text-align: right; }

.u-align--left {
  text-align: left; }

/**
 * Text Decorations
 */
.u-text-decoration--underline {
  text-decoration: underline; }

/**
 * Labels
 */
.o-label, .o-rte-text .o-label {
  text-transform: uppercase;
  font-size: 11px;
  font-weight: bold;
  padding: 6px 17px;
  border-radius: 2px;
  display: inline-flex;
  align-items: center;
  line-height: 1.3;
  justify-content: center; }
  .o-label--sunrise {
    color: #c74a34;
    background-color: #f9e8de; }
  .o-label--rainer-light {
    color: #065860;
    background-color: #ebf3f5; }
  .o-label--canary {
    color: #8b640a;
    background-color: #fcf2d3; }
  .o-label--spearmint {
    color: #427442;
    background-color: #eaf3ec; }
  .o-label--beach {
    color: #282828;
    background-color: #f5f2eb; }
  .o-label .o-icon {
    margin-left: 10px; }

.o-banner {
  display: inline-block;
  text-align: center; }

.o-notification {
  background-color: #bfe8ee;
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  color: #213e42;
  width: 18px;
  height: 18px;
  line-height: 1.5;
  font-size: 11px;
  margin-left: 5px; }
  @media (max-width: 500px) {
    .o-notification {
      width: 24px;
      height: 24px;
      font-size: 14px; } }

/**
 * Dropcap
 */
.o-dropcap {
  width: 70px;
  height: 62px;
  display: block;
  float: left;
  margin-right: 5px;
  position: relative;
  background-image: url("/images/main/dropcap-background.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  font-family: "HCo Mercury SSm", georgia, serif;
  font-size: 62px;
  font-weight: 500;
  text-transform: uppercase;
  color: #ffffff;
  line-height: 1;
  text-align: center; }
  @media (min-width: 769px) {
    .o-dropcap {
      width: 62px;
      height: 64px;
      margin-right: 8px; } }

.has-dropcap.o-rte-text > p:first-of-type {
  position: relative;
  font-size: var(--font-size-m, 22px);
  line-height: 1.7; }
  .has-dropcap.o-rte-text > p:first-of-type::after {
    content: "";
    display: block;
    clear: both; }

/**
 * Kicker /    Rubric styles
 */
.o-kicker,
.o-rubric {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-xs, 14px);
  font-weight: bold;
  text-transform: uppercase;
  display: inline-block; }
  .o-kicker--blue,
  .o-rubric--blue {
    color: #087d87; }

.o-date {
  color: #707373;
  font-family: "HCo Operator SSm", monaco, "Courier New", "Courier", monospace;
  font-size: var(--font-size-xs, 14px); }
  .o-date--top {
    text-align: right;
    padding-bottom: 20px; }
    @media (min-width: 501px) {
      .o-date--top {
        float: right;
        padding-bottom: 0; } }

/**
 * Inline text with left or right aligned icon.
 */
.o-text-with-icon {
  display: inline-flex;
  align-items: center;
  line-height: 1.2; }

/**
 * Commonly used serif styled text.
 */
.o-serif-text,
.o-serif-text > * {
  font-family: "HCo Mercury SSm", georgia, serif;
  font-size: 18px;
  font-weight: normal;
  color: #282828; }
  @media (min-width: 769px) {
    .o-serif-text,
    .o-serif-text > * {
      font-size: 22px; } }

.o-tos {
  border: 2px solid #dedede;
  padding: 20px;
  overflow-y: scroll;
  max-height: 475px; }

/**
 * Rich text editor text
 */
.o-rte-text,
.o-rte-text p {
  line-height: 1.77;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-s, 18px); }

.o-rte-text * + * {
  margin-top: 20px; }

.o-rte-text > .article-section > * + * {
  margin-top: 20px; }

.o-rte-text a {
  text-decoration: underline; }
  .o-rte-text a:hover {
    color: #213e42;
    text-decoration: underline; }

.o-rte-text h1,
.o-rte-text h2,
.o-rte-text h3,
.o-rte-text h4,
.o-rte-text h5,
.o-rte-text h6 {
  padding-top: 10px; }
  @media (min-width: 769px) {
    .o-rte-text h1,
    .o-rte-text h2,
    .o-rte-text h3,
    .o-rte-text h4,
    .o-rte-text h5,
    .o-rte-text h6 {
      margin-bottom: 5px; } }

.o-rte-text h2 {
  font-size: var(--font-size-xl, 28px); }

.o-rte-text h3 {
  font-size: var(--font-size-m, 22px); }

.o-rte-text h4 {
  font-size: var(--font-size-s, 18px);
  text-transform: uppercase;
  font-weight: bold; }

.o-rte-text h5,
.o-rte-text h6 {
  font-size: var(--font-size-xs, 14px);
  text-transform: uppercase;
  font-weight: bold; }

.o-rte-text h2:empty,
.o-rte-text h3:empty,
.o-rte-text p:empty {
  display: none; }

.o-rte-text h2 + h3 {
  margin-top: 0;
  padding-top: 10px; }

.o-rte-text ul,
.o-rte-text ol {
  clear: both;
  position: relative;
  list-style: none; }
  .o-rte-text ul:last-child,
  .o-rte-text ol:last-child {
    margin-bottom: 0; }
  .o-rte-text ul li,
  .o-rte-text ol li {
    margin-bottom: 20px;
    position: relative; }
  .o-rte-text ul ul,
  .o-rte-text ul ol,
  .o-rte-text ol ul,
  .o-rte-text ol ol {
    list-style: none;
    margin-top: 20px;
    margin-bottom: 20px; }

.o-rte-text ul li {
  padding-left: 20px; }
  .o-rte-text ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.5em;
    width: 7px;
    height: 7px;
    background-color: #282828;
    border-radius: 50%; }
  .o-rte-text ul li li::before {
    background-color: transparent;
    border: 2px solid #282828; }

.o-rte-text ol {
  counter-reset: counter; }
  .o-rte-text ol li::before {
    counter-increment: counter;
    content: counter(counter) ".";
    color: #282828;
    font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
    display: inline-block;
    padding-right: 5px; }
  .o-rte-text ol li > ol {
    counter-reset: counter; }
    .o-rte-text ol li > ol > li::before {
      counter-increment: counter;
      content: counters(counter); }

.o-rte-text ul + ul {
  margin-top: 0; }

.o-rte-text ul li + li,
.o-rte-text ol li + li {
  margin-top: 0; }

.o-rte-text code,
.o-rte-text pre {
  background-color: #f0f0f0;
  padding: 5px;
  overflow: auto;
  display: inline-flex;
  max-width: 100%;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

.o-rte-text > .o-figure {
  margin: 40px 0 10px; }

.o-instant-answer,
.o-instant-answer p {
  line-height: 1.77;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-s, 18px); }

.o-instant-answer > * + * {
  margin-top: 20px; }

.o-instant-answer > .article-section > * + * {
  margin-top: 20px; }

.o-instant-answer a {
  text-decoration: underline; }
  .o-instant-answer a:hover {
    color: #213e42;
    text-decoration: underline; }

.o-instant-answer h1,
.o-instant-answer h2,
.o-instant-answer h3,
.o-instant-answer h4,
.o-instant-answer h5,
.o-instant-answer h6 {
  padding-top: 10px; }
  @media (min-width: 769px) {
    .o-instant-answer h1,
    .o-instant-answer h2,
    .o-instant-answer h3,
    .o-instant-answer h4,
    .o-instant-answer h5,
    .o-instant-answer h6 {
      margin-bottom: 5px; } }

.o-instant-answer h2 {
  font-size: var(--font-size-xl, 28px); }

.o-instant-answer h3 {
  font-size: var(--font-size-m, 22px); }

.o-instant-answer h4 {
  font-size: var(--font-size-s, 18px);
  text-transform: uppercase;
  font-weight: bold; }

.o-instant-answer h5,
.o-instant-answer h6 {
  font-size: var(--font-size-xs, 14px);
  text-transform: uppercase;
  font-weight: bold; }

.o-instant-answer h2:empty,
.o-instant-answer h3:empty,
.o-instant-answer p:empty {
  display: none; }

.o-instant-answer h2 + h3 {
  margin-top: 0;
  padding-top: 10px; }

.o-instant-answer ul,
.o-instant-answer ol {
  clear: both;
  position: relative; }
  .o-instant-answer ul:last-child,
  .o-instant-answer ol:last-child {
    margin-bottom: 0; }
  .o-instant-answer ul li,
  .o-instant-answer ol li {
    margin-bottom: 20px;
    position: relative; }
    @media (min-width: 769px) {
      .o-instant-answer ul li,
      .o-instant-answer ol li {
        margin-bottom: 30px; } }
  .o-instant-answer ul ul,
  .o-instant-answer ul ol,
  .o-instant-answer ol ul,
  .o-instant-answer ol ol {
    margin-top: 20px;
    margin-bottom: 20px; }
    @media (min-width: 769px) {
      .o-instant-answer ul ul,
      .o-instant-answer ul ol,
      .o-instant-answer ol ul,
      .o-instant-answer ol ol {
        margin-top: 30px;
        margin-bottom: 30px; } }

.o-instant-answer ul li {
  padding-left: 20px; }

.o-instant-answer ul + ul {
  margin-top: 0; }

.o-instant-answer ul li + li,
.o-instant-answer ol li + li {
  margin-top: 0; }

.o-instant-answer code,
.o-instant-answer pre {
  background-color: #f0f0f0;
  padding: 5px;
  overflow: auto;
  display: inline-flex;
  max-width: 100%; }

.o-instant-answer > .o-figure {
  margin: 40px 0 10px; }

/**
 * Editor tips
 */
.o-text-editor__tips:hover circle {
  fill: #087d87; }

.o-text-editor__tips:hover path {
  fill: #ffffff; }

/**
 * Tool Tip
 */
.o-tooltip {
  position: relative;
  cursor: pointer; }

.o-tooltip:focus .o-tooltip__tip,
.o-tooltip:hover .o-tooltip__tip {
  display: block; }

@media (max-width: 500px) {
  .o-tooltip:focus a + .o-tooltip__tip,
  .o-tooltip:hover a + .o-tooltip__tip {
    display: none; } }

.o-tooltip__tip {
  display: none;
  padding: 20px;
  min-width: 250px;
  width: fit-content;
  position: absolute;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05);
  border-radius: 4px;
  background-color: #ffffff;
  z-index: 100;
  text-align: left; }

.o-tooltip--bottom {
  left: 0;
  bottom: 0;
  transform: translateY(100%); }
  @media (min-width: 1025px) {
    .o-tooltip--bottom {
      left: 50%;
      transform: translate(-50%, 100%); } }
  @media (max-width: 500px) {
    .o-tooltip--bottom {
      left: auto;
      right: 0; } }

.o-tooltip--right {
  left: 100%;
  top: 0; }

/*
 * When there's multiple tooltips on a page,
 * we need a way to signal which one has the
 * highest z-index.
 *
 * Lowest variable ($z-index-1) will move hover box
 * above sticky nav. All we need is to move
 * targeted tooltip above other sibling
 * tooltips.
 */
.o-tooltip--highest {
  z-index: 10000; }

.o-tooltip__text > p {
  font-size: 14px; }

.odometer.odometer-auto-theme .odometer-inside {
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-weight: bold; }

/**
 * Indented element with left border
 */
.o-border-indent {
  border-left: 6px solid #dedede;
  padding-left: 20px; }

.o-colored-text--sunrise {
  color: #c74a34; }

.u-paywall {
  color: transparent;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
  filter: blur(4px);
  user-select: none;
  pointer-events: none;
  cursor: default; }

.verse-line {
  display: block;
  margin-top: 0; }

ul.reference-list {
  margin-top: 0;
  list-style-type: disc;
  padding-left: 40px; }
  ul.reference-list li {
    margin-bottom: 0;
    padding-left: 0; }
    ul.reference-list li::before {
      content: none; }

/*------------------------------------*\
        $OBJECTS
\*------------------------------------*/
/*------------------------------------*\
        $BUTTONS
\*------------------------------------*/
button {
  appearance: none;
  border: none;
  cursor: pointer;
  background-color: transparent;
  padding: 0;
  font-size: 16px;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif; }

.o-button,
.o-button--primary {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 20px 40px;
  color: #ffffff;
  cursor: pointer;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  font-size: 16px;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-weight: bold;
  text-align: center;
  background-color: #c74a34;
  position: relative;
  line-height: 1.1; }
  .o-button:hover,
  .o-button--primary:hover {
    background-color: #ec5b3b;
    color: #ffffff; }
    .o-button:hover svg *,
    .o-button--primary:hover svg * {
      fill: #ffffff; }
  .o-button svg,
  .o-button--primary svg {
    display: inline-block; }
    .o-button svg path,
    .o-button--primary svg path {
      fill: currentColor; }
  .o-button span + font,
  .o-button font + span,
  .o-button--primary span + font,
  .o-button--primary font + span {
    margin-left: 10px; }

a.o-button {
  text-decoration: none; }

a.o-button:hover {
  color: #ffffff;
  text-decoration: none; }

.o-button--secondary, .o-file-input + label {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 20px 40px;
  color: #ffffff;
  cursor: pointer;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  font-size: 16px;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-weight: bold;
  text-align: center;
  background-color: #c74a34;
  position: relative;
  line-height: 1.1;
  background-color: #ebf3f5;
  color: #065860;
  font-weight: 500; }
  .o-button--secondary:hover, .o-file-input + label:hover, .google-button--wrapper:hover .google-button {
    background-color: #ec5b3b;
    color: #ffffff; }
    .o-button--secondary:hover svg *, .o-file-input + label:hover svg *, .google-button--wrapper:hover .google-button svg * {
      fill: #ffffff; }
  .o-button--secondary svg, .o-file-input + label svg {
    display: inline-block; }
    .o-button--secondary svg path, .o-file-input + label svg path {
      fill: currentColor; }
  .o-button--secondary span + font, .o-file-input + label span + font,
  .o-button--secondary font + span,
  .o-file-input + label font + span {
    margin-left: 10px; }
  .o-button--secondary:hover, .o-file-input + label:hover, .google-button--wrapper:hover .google-button {
    background-color: #087d87;
    color: #ffffff; }
    .o-button--secondary:hover svg *, .o-file-input + label:hover svg *, .google-button--wrapper:hover .google-button svg * {
      fill: #ffffff; }

.o-button--secondary-dark {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 20px 40px;
  color: #ffffff;
  cursor: pointer;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  font-size: 16px;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-weight: bold;
  text-align: center;
  background-color: #c74a34;
  position: relative;
  line-height: 1.1;
  color: #ffffff;
  background-color: #087d87;
  font-weight: 500;
  box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2); }
  .o-button--secondary-dark:hover {
    background-color: #ec5b3b;
    color: #ffffff; }
    .o-button--secondary-dark:hover svg * {
      fill: #ffffff; }
  .o-button--secondary-dark svg {
    display: inline-block; }
    .o-button--secondary-dark svg path {
      fill: currentColor; }
  .o-button--secondary-dark span + font,
  .o-button--secondary-dark font + span {
    margin-left: 10px; }
  .o-button--secondary-dark:hover {
    background-color: #213e42; }
    .o-button--secondary-dark:hover svg * {
      fill: #ffffff; }

.o-button--outline {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 20px 40px;
  color: #ffffff;
  cursor: pointer;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  font-size: 16px;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-weight: bold;
  text-align: center;
  background-color: #c74a34;
  position: relative;
  line-height: 1.1;
  background-color: transparent;
  color: #282828;
  border: 1px solid #282828; }
  .o-button--outline:hover {
    background-color: #ec5b3b;
    color: #ffffff; }
    .o-button--outline:hover svg * {
      fill: #ffffff; }
  .o-button--outline svg {
    display: inline-block; }
    .o-button--outline svg path {
      fill: currentColor; }
  .o-button--outline span + font,
  .o-button--outline font + span {
    margin-left: 10px; }
  .o-button--outline:hover, .o-button--outline:focus {
    background-color: #f0f0f0;
    color: #282828; }

.o-button--white {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 20px 40px;
  color: #ffffff;
  cursor: pointer;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  font-size: 16px;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-weight: bold;
  text-align: center;
  background-color: #c74a34;
  position: relative;
  line-height: 1.1;
  background-color: #ffffff;
  color: #282828;
  border: 1px solid #282828; }
  .o-button--white:hover {
    background-color: #ec5b3b;
    color: #ffffff; }
    .o-button--white:hover svg * {
      fill: #ffffff; }
  .o-button--white svg {
    display: inline-block; }
    .o-button--white svg path {
      fill: currentColor; }
  .o-button--white span + font,
  .o-button--white font + span {
    margin-left: 10px; }
  .o-button--white:hover {
    background-color: #f0f0f0;
    color: #282828; }

.o-button--disabled {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 20px 40px;
  color: #ffffff;
  cursor: pointer;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  font-size: 16px;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-weight: bold;
  text-align: center;
  background-color: #c74a34;
  position: relative;
  line-height: 1.1;
  background-color: #f0f0f0;
  color: #c0c1c5;
  pointer-events: none; }
  .o-button--disabled:hover {
    background-color: #ec5b3b;
    color: #ffffff; }
    .o-button--disabled:hover svg * {
      fill: #ffffff; }
  .o-button--disabled svg {
    display: inline-block; }
    .o-button--disabled svg path {
      fill: currentColor; }
  .o-button--disabled span + font,
  .o-button--disabled font + span {
    margin-left: 10px; }
  .o-button--disabled:hover, .o-button--disabled:focus {
    background-color: #f0f0f0;
    color: #c0c1c5; }

.o-button--wide {
  padding: 20px 67px; }

.o-button--small, .o-file-input + label {
  padding: 12px;
  font-size: var(--font-size-xs, 14px); }

.o-button--xsmall {
  padding: 8px;
  font-size: var(--font-size-xs, 14px); }

.o-button.is-processing::before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23 22'%3E%3Cpath d='M8.1017,18.81a1.2135,1.2135,0,0,0,.4039.2734,1.2274,1.2274,0,0,0,.4807.0932,1.24,1.24,0,0,0,.48-.0944,1.2274,1.2274,0,0,0,.4044-.2722L21.9053,6.908a1.21,1.21,0,0,0,.2759-.3971,1.195,1.195,0,0,0,0-.9437,1.21,1.21,0,0,0-.2759-.3972l-2-1.98a1.251,1.251,0,0,0-.8846-.3667,1.227,1.227,0,0,0-.4806.0933,1.2139,1.2139,0,0,0-.404.2734l-9.15,9.0494L4.8088,8.1547a1.19,1.19,0,0,0-.4022-.2792,1.2038,1.2038,0,0,0-.4824-.0948,1.2318,1.2318,0,0,0-.4812.0972,1.2193,1.2193,0,0,0-.4033.2768L1.0922,10.1274a1.225,1.225,0,0,0-.2741.4,1.2089,1.2089,0,0,0,0,.9461,1.2239,1.2239,0,0,0,.2741.4Z' fill='%2361a561'/%3E%3C/svg%3E");
  background-size: 23px 23px;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #eaf3ec;
  outline: 1px solid #61a561;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0; }

/**
 * Off-canvas menu toggle
 */
.o-menu-toggle {
  width: 50px;
  height: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  content: "";
  margin-right: -10px; }
  .o-menu-toggle__line {
    height: 2px;
    background-color: #f0f0f0;
    margin-top: 8px;
    width: 30px;
    transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1);
    transform: rotate(0);
    opacity: 1;
    visibility: visible; }
    .o-menu-toggle__line:first-child {
      margin-top: 0; }
  .o-menu-toggle.menu-is-active .o-menu-toggle__line {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0; }
  .o-menu-toggle.menu-is-active .o-menu-toggle__line:first-child {
    transform: rotate(45deg); }
  .o-menu-toggle.menu-is-active .o-menu-toggle__line:nth-child(2) {
    opacity: 0;
    visibility: hidden; }
  .o-menu-toggle.menu-is-active .o-menu-toggle__line:last-child {
    transform: rotate(-45deg); }

.o-search-toggle {
  width: 50px;
  height: 50px;
  min-width: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  opacity: 1;
  visibility: visible;
  outline: 0;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ctitle%3Eicon-search%3C/title%3E%3Cpath d='M1.91,8.58a5.09,5.09,0,1,1,8.32,1.58l0,0,0,0A5.1,5.1,0,0,1,1.91,8.58Zm8.78,3.18a6.65,6.65,0,1,1,1.06-1.07l4,4a.75.75,0,0,1-1.06,1.06Z' fill='%23ffffff' fill-rule='evenodd'/%3E%3C/svg%3E") center center no-repeat;
  background-size: 24px 24px; }
  @media (min-width: 769px) {
    .o-search-toggle {
      opacity: 0;
      visibility: hidden;
      width: 0;
      min-width: 0; } }
  .o-search-toggle svg path {
    fill: #ffffff; }
  .o-search-toggle.this-is-active {
    background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24.62 24.62'%3E%3Ctitle%3Eicon-close%3C/title%3E%3Cpath d='M14.43,12.31,24.62,2.12,22.5,0,12.31,10.19,2.12,0,0,2.12,10.19,12.31,0,22.5l2.12,2.12L12.31,14.43,22.5,24.62l2.12-2.12Z' fill='%23ffffff' fill-rule='evenodd'/%3E%3C/svg%3E") center center no-repeat;
    background-size: 20px 20px; }

/**
 * Navigation prev/next, also mini pagination
 */
.o-nav-arrow, .slick-slider .slick-arrow {
  width: 50px;
  height: 50px;
  border: 6px solid #dee9ec;
  border-radius: 50%;
  display: inline-block;
  transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1);
  text-align: center;
  text-indent: -999px;
  overflow: hidden;
  position: relative;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05); }
  @media (min-width: 769px) {
    .o-nav-arrow, .slick-slider .slick-arrow {
      width: 72px;
      height: 72px; } }
  .o-nav-arrow::before, .slick-slider .slick-arrow::before {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16.01 24'%3E%3Ctitle%3Earrow--right%3C/title%3E%3Cpath d='M3.21,23.75l12.47-11a1.07,1.07,0,0,0,.25-.35A1.25,1.25,0,0,0,16,12a1.16,1.16,0,0,0-.08-.42,1.07,1.07,0,0,0-.25-.35L3.21.25a.9.9,0,0,0-.34-.2,1,1,0,0,0-.39,0,.94.94,0,0,0-.37.11A.84.84,0,0,0,1.8.36L.24,2.21A1,1,0,0,0,0,3a1,1,0,0,0,.35.69l9.46,8.17a.24.24,0,0,1,.06.08.22.22,0,0,1,0,.11.18.18,0,0,1,0,.1s0,.06-.06.09L.35,20.36a1,1,0,0,0-.34.69.91.91,0,0,0,0,.4,1.14,1.14,0,0,0,.19.34L1.8,23.64a.84.84,0,0,0,.31.25.94.94,0,0,0,.37.11A1,1,0,0,0,2.87,24,.9.9,0,0,0,3.21,23.75Z' fill='%23087d87'/%3E%3C/svg%3E");
    background-size: 17px 17px;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0; }
    @media (min-width: 769px) {
      .o-nav-arrow::before, .slick-slider .slick-arrow::before {
        background-size: 24px 24px; } }
  .o-nav-arrow:hover, .slick-slider .slick-arrow:hover {
    background-color: #087d87;
    border-color: #087d87; }
    .o-nav-arrow:hover + p, .slick-slider .slick-arrow:hover + p {
      color: #213e42; }

.o-nav-arrow--prev, .slick-slider .slick-prev {
  transform: rotate(180deg); }

.o-nav-arrow--top {
  transform: rotate(-90deg); }

/*------------------------------------*\
        $ICONS
\*------------------------------------*/
/**
 * Icon Sizing
 */
.o-icon {
  display: inline-block; }

.u-icon--xs {
  min-width: 13px;
  max-width: 13px;
  min-height: 13px;
  max-height: 13px;
  width: 13px;
  height: 13px; }

.u-icon--s {
  min-width: 16px;
  max-width: 16px;
  min-height: 16px;
  max-height: 16px;
  width: 16px;
  height: 16px; }

.u-icon--m {
  min-width: 24px;
  max-width: 24px;
  min-height: 24px;
  width: 24px;
  max-height: 24px;
  height: 24px; }

.u-icon--l {
  min-width: 36px;
  max-width: 36px;
  min-height: 36px;
  max-height: 36px;
  width: 36px;
  height: 36px; }

.u-icon--xl {
  min-width: 50px;
  max-width: 50px;
  min-height: 50px;
  max-height: 50px;
  width: 50px;
  height: 50px; }

.u-icon--xxl {
  min-width: 75px;
  max-width: 75px;
  min-height: 75px;
  max-height: 75px;
  width: 75px;
  height: 75px; }

/**
 * For buttons/links within containers so the icon doesn"t add to the height
 * of the container (see Tiles).
 */
.has-icon {
  position: relative; }
  .has-icon .o-icon {
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
  .has-icon.has-icon--right {
    padding-right: 55px; }
    .has-icon.has-icon--right .o-icon {
      right: 20px; }

.o-icon--pointer {
  cursor: pointer; }

.o-illo-lightbulb {
  background-image: url("/images/main/illustrations/illo-lightbulb.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-illo-newspaper {
  background-image: url("/images/main/illustrations/illo-newspaper.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-illo-book-plane {
  background-image: url("/images/main/illustrations/illo-book-plane.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-illo-shield {
  background-image: url("/images/main/illustrations/illo-shield.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-illo-wallet {
  background-image: url("/images/main/illustrations/illo-wallet.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-illo-paper-pencil {
  background-image: url("/images/main/illustrations/illo-paper-pencil.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-illo-book-search {
  background-image: url("/images/main/illustrations/illo-book-search.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-illo-grad-cap {
  background-image: url("/images/main/illustrations/illo-grad-cap.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-illo-eye {
  background-image: url("/images/main/illustrations/illo-eye.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-icon-illo-quotes {
  background-image: url("/images/main/illustrations/illo-quotes.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-illo-lifesaver {
  background-image: url("/images/main/illustrations/illo-lifesaver.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.o-icon-coffee-book {
  background-image: url("/images/main/icons/icon-coffee-read.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto; }

.multi-page-pdf--wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 105px 0 20px; }

.multi-page-pdf {
  grid-column: 2;
  position: relative;
  grid-row: 1;
  display: grid;
  justify-items: center;
  width: 115%; }

.multi-page-pdf img {
  grid-column: 1;
  grid-row: 1;
  position: relative; }

.multi-page-pdf:first-of-type {
  z-index: 2;
  top: -70px;
  left: 55px; }

.multi-page-pdf img:first-of-type {
  transform: rotate(10deg);
  z-index: 1;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05); }

.multi-page-pdf img:nth-of-type(2) {
  transform: rotate(20deg);
  left: 20px;
  box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2); }

.multi-page-pdf img:nth-of-type(3) {
  transform: rotate(5deg);
  left: -20px;
  top: -7px;
  box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2); }

.multi-page-pdf:nth-of-type(2) {
  left: -75px;
  top: -50px; }

.multi-page-pdf:nth-of-type(2) img:first-of-type {
  transform: rotate(-15deg);
  left: 15px; }

.multi-page-pdf:nth-of-type(2) img:nth-of-type(2) {
  transform: rotate(-6deg);
  top: -5px;
  left: 30px; }

.multi-page-pdf:nth-of-type(2) img:nth-of-type(3) {
  transform: rotate(-25deg);
  left: -2px;
  top: 3px; }

.multi-page-pdf:first-child:nth-last-child(2),
.multi-page-pdf:first-child:nth-last-child(2) ~ .multi-page-pdf {
  height: 90px; }

.multi-page-pdf:nth-of-type(3) {
  top: 5px;
  left: 3px;
  z-index: 3; }

.multi-page-pdf:nth-of-type(3) img:first-of-type {
  transform: rotate(0deg);
  left: -10px;
  top: -10px; }

.multi-page-pdf:nth-of-type(3) img:nth-of-type(2) {
  transform: rotate(10deg);
  top: -13px;
  left: 8px; }

.multi-page-pdf:nth-of-type(3) img:nth-of-type(3) {
  transform: rotate(-10deg);
  left: -25px;
  top: -12px; }

.multi-page-pdf:only-of-type {
  top: -40px;
  margin-top: -40px;
  width: 150px;
  left: 0; }

.multi-page-pdf:only-of-type img {
  width: 100%;
  height: auto; }

.multi-page-pdf:only-of-type img:first-of-type {
  transform: rotate(0deg); }

.multi-page-pdf:only-of-type img:nth-of-type(2) {
  transform: rotate(10deg);
  top: 5px;
  left: 30px; }
  @media (min-width: 1025px) {
    .multi-page-pdf:only-of-type img:nth-of-type(2) {
      left: 40px; } }

.multi-page-pdf:only-of-type img:nth-of-type(3) {
  transform: rotate(-10deg);
  left: -30px;
  top: 2px; }
  @media (min-width: 1025px) {
    .multi-page-pdf:only-of-type img:nth-of-type(3) {
      left: -40px; } }

.pdf-ad {
  text-align: center;
  background-color: #faf8f5;
  padding: 40px 20px;
  margin: 0 15px;
  border-radius: 2px; }

.study-guide-pdf {
  position: relative;
  margin: 0 auto; }
  @media (min-width: 1025px) {
    .study-guide-pdf {
      min-width: 150%;
      left: -55px; } }

.essay-outlines-pdf {
  position: relative;
  margin: 0 auto; }
  @media (min-width: 1025px) {
    .essay-outlines-pdf {
      min-width: 130%;
      left: -32px; } }

/*------------------------------------*\
        $LISTS
\*------------------------------------*/
/**
 * Standard bullet list
 */
.o-bullet-list {
  list-style-type: disc;
  list-style-position: outside;
  padding-left: 16px; }
  .o-bullet-list li {
    line-height: 1.5; }
  .o-bullet-list ul {
    list-style-type: circle;
    list-style-position: inside;
    margin-left: 16px; }

/**
 * Simple list with top or bottom borders
 */
.o-border-list__list-item {
  border-bottom: 1px solid #dedede;
  padding-bottom: 20px;
  line-height: 1.5; }
  .o-border-list__list-item:last-of-type {
    border-bottom: none; }

.o-border-list__list-item-title {
  margin-bottom: 5px; }

.o-border-list--mini .o-border-list__title {
  font-size: 16px; }

.o-border-list--mini .o-border-list__list-item {
  border-top: 1px solid #dedede;
  border-bottom: none;
  font-size: 14px;
  padding: 20px 0 0; }
  .o-border-list--mini .o-border-list__list-item:first-of-type {
    border-top: none; }

/**
 * Lists featuring media blocks
 */
.o-block-list__heading {
  padding-bottom: 15px; }
  @media (min-width: 501px) {
    .o-block-list__heading {
      display: flex;
      justify-content: space-between;
      align-items: center; } }

.o-block-list__heading--small {
  padding: 25px 0 10px; }

.o-block-list__list-item {
  border-bottom: 1px solid #dedede;
  padding: 15px 0; }
  .o-block-list__list-item:last-of-type {
    border-bottom: none; }

/*
 * List with check icon
 */
.o-check-list li {
  margin-bottom: 20px;
  background-image: url("/images/main/icons/icon-check.svg");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 24px 24px;
  text-align: left;
  padding-left: 34px;
  min-height: 24px; }

.o-check-list.column {
  max-width: 250px; }
  @media (min-width: 501px) {
    .o-check-list.column {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      max-width: 550px; } }

@media (min-width: 501px) {
  .o-check-list.column li {
    width: 45%; } }

.o-number-list {
  list-style: decimal;
  margin-left: 15px; }

.tag-list a {
  display: inline-block;
  margin-bottom: 10px; }
  .tag-list a:last-child {
    margin-bottom: 0; }

/*------------------------------------*\
        $NAVIGATION
\*------------------------------------*/
/**
 * Navigation that scrolls from left to right on smaller viewports.
 */
.o-scroll-nav {
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  z-index: 10; }
  .o-scroll-nav__links {
    text-align: center;
    overflow-x: auto;
    overflow-y: visible;
    display: flex;
    position: relative;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    white-space: nowrap;
    margin: auto; }
    .o-scroll-nav__links::-webkit-scrollbar {
      height: 0;
      background: transparent; }

/**
 * Top level button links in page header (see Topic Study Guide)
 */
.c-tiles__inner {
  margin-left: 0;
  text-align: center; }
  @media (min-width: 1025px) {
    .c-tiles__inner {
      padding: 30px 0;
      margin-top: -30px;
      margin-bottom: -30px; } }

.c-tiles li {
  margin: 0 5px;
  display: inline-block; }
  @media (min-width: 1025px) {
    .c-tiles li {
      margin: 0 10px; } }
  .c-tiles li:first-child a {
    margin-left: 12px; }
  .c-tiles li:last-child a {
    margin-right: 12px; }

.c-tiles--alt .c-tiles__link {
  box-shadow: none;
  background-color: #ebf3f5;
  color: #065860;
  margin-bottom: 20px; }
  .c-tiles--alt .c-tiles__link:hover, .c-tiles--alt .c-tiles__link:focus {
    background-color: #087d87;
    color: #ffffff; }
    .c-tiles--alt .c-tiles__link:hover path, .c-tiles--alt .c-tiles__link:focus path {
      fill: #ffffff; }

.c-tiles__link {
  padding: 20px;
  background-color: #ffffff;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05);
  text-align: center;
  color: #282828;
  border-radius: 2px;
  display: inline-block;
  white-space: nowrap; }
  @media (max-width: 1024px) {
    .c-tiles__link {
      padding: 10px 15px;
      box-shadow: 0 2px 4px rgba(40, 40, 40, 0.03); }
      .c-tiles__link.has-icon--right {
        padding-right: 40px; }
        .c-tiles__link.has-icon--right .o-icon {
          right: 10px; } }
  .c-tiles__link:hover, .c-tiles__link.is-active, .c-tiles__link.this-is-active {
    background-color: #087d87;
    color: #ffffff; }
    .c-tiles__link:hover path, .c-tiles__link.is-active path, .c-tiles__link.this-is-active path {
      fill: #ffffff; }
    @media (min-width: 1025px) {
      .c-tiles__link:hover, .c-tiles__link.is-active, .c-tiles__link.this-is-active {
        box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2); } }

/**
 * Social links
 */
.c-social-links {
  display: flex;
  align-items: center; }
  .c-social-links__link {
    display: flex;
    align-items: center;
    justify-content: center; }
    .c-social-links__link svg {
      width: 36px;
      height: 36px; }
      .c-social-links__link svg path {
        fill: #282828;
        transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1); }
    .c-social-links__link:hover svg path {
      fill: #087d87; }

/**
 * Tabbed navigation
 */
.o-tab-nav {
  position: relative;
  z-index: 10; }
  .o-tab-nav__tabs {
    display: flex;
    align-items: flex-end; }
    .o-tab-nav__tabs > li,
    .o-tab-nav__tabs > .js-tab-slick,
    .o-tab-nav__tabs > .js-tab {
      margin-right: 20px; }
      @media (min-width: 1025px) {
        .o-tab-nav__tabs > li,
        .o-tab-nav__tabs > .js-tab-slick,
        .o-tab-nav__tabs > .js-tab {
          margin-right: 30px; } }
      .o-tab-nav__tabs > li:last-child,
      .o-tab-nav__tabs > .js-tab-slick:last-child,
      .o-tab-nav__tabs > .js-tab:last-child {
        margin-right: 0; }
  .o-tab-nav button {
    white-space: normal; }
  .o-tab-nav__tab {
    padding: 15px 0;
    border-bottom: 2px solid transparent;
    text-decoration: none;
    color: #282828; }
    @media (max-width: 500px) {
      .o-tab-nav__tab {
        font-size: 14px; } }
    .o-tab-nav__tab:hover, .o-tab-nav__tab.this-is-active {
      color: #087d87; }
    .o-tab-nav__tab.this-is-active {
      border-color: #087d87; }
  .o-tab-nav__content {
    width: 100%;
    height: auto; }
    .o-tab-nav__content:not(.this-is-active) {
      display: none;
      height: 0;
      overflow: hidden; }
  .o-tab-nav--border::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: -20px;
    border-bottom: 1px solid #dedede;
    width: calc(100% + 40px); }
    @media (min-width: 769px) {
      .o-tab-nav--border::after {
        left: -40px;
        width: calc(100% + 80px); } }

/**
 * Pagination
 */
.o-pagination ol {
  display: flex;
  justify-content: center;
  align-items: center; }

.o-pagination__item {
  margin: 0 2px; }
  .o-pagination__item > a,
  .o-pagination__item > span {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 2px;
    font-weight: bold; }
  .o-pagination__item > a {
    border: 2px solid transparent; }
    .o-pagination__item > a:hover {
      background-color: #ebf3f5;
      color: #087d87; }
    .o-pagination__item > a:focus {
      border-color: #087d87; }
  .o-pagination__item.is-current span {
    background-color: #087d87;
    color: #ffffff; }

.o-pagination__arrow a {
  background-color: #ebf3f5; }
  .o-pagination__arrow a:hover {
    background-color: #087d87; }
    .o-pagination__arrow a:hover path {
      fill: #ffffff; }

/**
 * Back to top
 */
.o-back-to-top {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 10000; }

/**
 * Alphabet navigation
 */
.c-alpha-list__list {
  display: flex;
  justify-content: space-between; }
  .c-alpha-list__list a {
    width: auto; }
    .c-alpha-list__list a:hover {
      background-color: transparent;
      color: #213e42; }

/**
  * Responsive sidebar nav
*/
/* Define the maximum nesting depth */
/* Adjust this number as needed for your menus */
.l-article__left-sidebar {
  position: relative;
  margin-top: 20px;
  margin-right: 5px;
  /* Sidebar open state on small screens, is-open is added on hamburger click */
  /* Close button styles */
  /* Disable sidebar animations when .no-animation is present on .c-sidebar-nav */ }
  .l-article__left-sidebar .c-hamburger {
    display: none; }
    @media (max-width: 1023px) {
      .l-article__left-sidebar .c-hamburger {
        display: flex;
        position: absolute;
        gap: 4px;
        align-items: center;
        font-size: 18px;
        font-weight: bold;
        color: #000; } }
  .l-article__left-sidebar .c-sidebar-nav {
    position: fixed;
    margin: 0;
    top: 0;
    left: 0;
    height: 100vh;
    background-color: #faf8f5;
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.1);
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    z-index: 1100;
    height: 100vh;
    /* Ensures it spans the full viewport height */
    overflow-y: auto;
    /* Enables vertical scrolling when content overflows */
    overflow-x: hidden;
    pointer-events: none;
    /* Prevent interaction */
    /* Submenu styles */ }
    @media (min-width: 1024px) {
      .l-article__left-sidebar .c-sidebar-nav {
        position: sticky;
        transform: translateX(0);
        margin-left: -20px;
        /* not ideal but compensates for padding of l-wrap*/
        pointer-events: auto; } }
    .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__list {
      transition: transform 0.3s ease;
      /* Smooth slide effect */
      margin-bottom: 20px;
      /*this ensures the proper menu is in the right position,
            we just shift the parent right or left based on the nesting level */ }
      .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__list.n-1 {
        transform: translateX(-100%); }
      .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__list.n-2 {
        transform: translateX(-200%); }
      .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__list.n-3 {
        transform: translateX(-300%); }
    .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__submenu {
      position: absolute;
      top: 0;
      transform: translateX(100%);
      /*hide offscreen */
      visibility: hidden;
      /* Hidden by default */
      opacity: 0;
      /* Fully transparent by default */
      transition: transform 0.3s ease, visibility 0.3s ease, opacity 0.3s ease;
      /* Smooth transitions */
      max-height: calc(100vh - 50px);
      overflow-y: auto;
      overflow-x: hidden;
      pointer-events: none;
      width: 100%; }
    .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__submenu.is-active {
      visibility: visible;
      /* Make it visible */
      opacity: 1;
      /* Fully opaque */
      pointer-events: auto;
      overflow: visible !important;
      /* Allow child submenu to be seen */ }
    .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__header {
      font-weight: bold;
      display: block;
      padding: 10px 40px 10px 15px; }
    .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__link {
      display: flex;
      padding: 10px 20px 10px 15px;
      color: #000;
      text-decoration: none;
      text-align: left;
      align-items: center;
      width: 100%;
      justify-content: space-between;
      position: relative; }
      .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__link:hover {
        background-color: #90d8e2; }
      .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__link.is-active {
        color: #087d87; }
        .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__link.is-active:hover {
          background-color: inherit; }
      .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__link svg {
        flex-shrink: 0;
        pointer-events: none; }
      .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__link.back-button {
        font-weight: bold;
        gap: 10px;
        padding-left: 10px;
        justify-content: flex-start; }
        @media (max-width: 1023px) {
          .l-article__left-sidebar .c-sidebar-nav .c-sidebar-nav__link.back-button {
            width: 90%; } }
  @media (max-width: 1023px) {
    .l-article__left-sidebar.is-open .c-sidebar-nav {
      transform: translateX(0);
      pointer-events: auto; } }
  .l-article__left-sidebar.is-open .c-sidebar-nav__close {
    display: block;
    /* Show close button */ }
  .l-article__left-sidebar.is-open .c-hamburger {
    display: none;
    /* Hide hamburger when sidebar is open */ }
  .l-article__left-sidebar .c-sidebar-nav__close {
    display: none;
    /* Hidden by default */
    position: absolute;
    top: 10px;
    right: 15px;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 1300; }
    .l-article__left-sidebar .c-sidebar-nav__close svg {
      height: 15px;
      width: 15px; }
  .l-article__left-sidebar .c-sidebar-nav.no-animation,
  .l-article__left-sidebar .c-sidebar-nav.no-animation .c-sidebar-nav__list,
  .l-article__left-sidebar .c-sidebar-nav.no-animation .c-sidebar-nav__submenu {
    transition: none !important; }

/*------------------------------------*\
        $MEDIA OBJECTS
\*------------------------------------*/
/*------------------------------------*\
        $MESSAGING
\*------------------------------------*/
/**
 * User logged in status
 */
.is-logged-in.has-messages .c-user-actions__link--account {
  position: relative; }
  @media (min-width: 1201px) {
    .is-logged-in.has-messages .c-user-actions__link--account {
      margin-left: 20px; } }
  .is-logged-in.has-messages .c-user-actions__link--account::after {
    content: "";
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #90d8e2;
    position: absolute;
    right: 8px;
    top: 8px;
    display: block; }

/**
 * Message banner
 */
.c-banner {
  padding: 10px;
  text-align: center;
  display: flex; }
  @media (max-width: 500px) {
    .c-banner {
      justify-content: space-between; } }
  .c-banner p {
    font-weight: 500;
    font-size: 16px; }
  .c-banner .text {
    flex: 1; }
  .c-banner .button {
    padding-left: 10px; }
    @media (max-width: 1200px) {
      .c-banner .button {
        padding-right: 10px; } }

.c-banner--red,
.c-banner--red a {
  color: #c74a34;
  background-color: #f9e8de; }

.c-banner--red svg path {
  fill: #c74a34; }

.c-banner--blue,
.c-banner--blue a {
  color: #087d87;
  background-color: #ebf3f5; }

.c-banner--blue svg path {
  fill: #087d87; }

.notify-msg {
  background: #fad65f;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  color: #282828;
  padding: 5px 10px;
  text-align: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2000;
  display: none;
  font-size: 22px; }

.o-multi-tab-content {
  display: block; }
  .o-multi-tab-content:not(.this-is-active) {
    display: none !important; }

.is-round, .image--lg, .image--sm, .o-block--small .o-block__media, .image--xsm {
  display: flex;
  justify-content: center;
  overflow: hidden;
  border-radius: 50%; }

.image--lg {
  min-width: 88px;
  max-width: 88px;
  height: 88px;
  width: 88px;
  min-height: 88px;
  max-height: 88px; }
  @media (max-width: 1023px) {
    .image--lg {
      min-width: 60px;
      max-width: 60px;
      width: 60px;
      height: 60px;
      min-height: 60px;
      max-height: 60px; } }
  @media (max-width: 500px) {
    .image--lg {
      min-width: 45px;
      min-height: 45px;
      max-width: 45px;
      max-height: 45px;
      height: 45px;
      width: 45px; } }

.image--sm, .o-block--small .o-block__media {
  min-width: 56px;
  min-height: 56px;
  max-width: 56px;
  max-height: 56px;
  height: 56px;
  width: 56px; }

.image--xsm {
  min-width: 40px;
  max-width: 40px;
  width: 40px;
  height: 40px;
  min-height: 40px;
  max-height: 40px; }

[class*="image--"] > img {
  max-height: 100%;
  max-width: none;
  width: auto;
  flex-shrink: 0; }

[class*="image--"] > .is-full-width {
  width: 100%; }

/*------------------------------------*\
        $PAGE STRUCTURE
\*------------------------------------*/
/*------------------------------------*\
        $ARTICLE & RELATED COMPONENTS
\*------------------------------------*/
.l-article {
  position: relative;
  margin-bottom: 40px;
  /*
     * We are formatting "at a glance" divs.
     * Content around divs were overlapping. To fix,
     * we need to copy same styles used in "o-rte-text".
     *
     * Issue is only seen within a study guide's insight
     * so I don't want to apply this globally to all "o-rte-text > div"
     */ }
  @media (min-width: 1025px) {
    .l-article {
      margin-bottom: 60px; } }
  @media (min-width: 1025px) {
    .l-article__content {
      padding-right: 40px; } }
  @media (min-width: 1025px) {
    .l-article__aside {
      padding-top: 100px; } }
  @media (min-width: 769px) {
    .l-article .o-border-list.is-sticky {
      top: 20px;
      position: sticky; } }
  @media (min-width: 1025px) {
    .l-article .o-border-list.is-sticky {
      top: 60px; } }
  .l-article__insight > div {
    line-height: 1.77;
    font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
    font-size: var(--font-size-s, 18px); }

/**
 * Mainly on Study Guide body content
 */
.c-article-header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  padding: 10px 0 20px;
  border-bottom: 2px solid #f0f0f0; }
  .c-article-header__title {
    margin-right: 20px;
    font-size: 24px; }

.c-article-header.with-kicker {
  flex-direction: row-reverse;
  padding: 0;
  border-bottom: transparent; }
  @media (max-width: 500px) {
    .c-article-header.with-kicker {
      display: block; } }

/**
 * Tools for articles
 */
.c-article-tools {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-top: 10px;
  flex-flow: wrap;
  position: relative; }
  .c-article-tools__separator {
    color: #707373;
    margin: 0 0 0 10px; }

.c-article-tools > * {
  margin-left: 10px; }

.c-article-tools > :first-child {
  margin-left: 0; }

/**
 * Article pagination
 */
.c-article-links {
  display: flex;
  justify-content: center;
  width: 250px;
  margin: 0 auto; }

.c-article-link {
  display: block;
  width: 130px;
  text-align: center; }
  .c-article-link--left {
    transform: rotate(180deg); }
  .c-article-link__icon {
    margin-left: auto;
    margin-right: auto; }
  .c-article-link__text {
    font-size: 18px;
    line-height: 1.2; }
  .c-article-link:hover .o-nav-arrow, .c-article-link:hover .slick-slider .slick-arrow, .slick-slider .c-article-link:hover .slick-arrow {
    background-color: #087d87;
    border-color: #087d87; }

/**
 * Answer article content
 */
.c-answer__meta {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap; }
  @media (max-width: 768px) {
    .c-answer__meta {
      margin-bottom: 20px; } }

.c-answer__meta--first {
  display: flex;
  justify-content: flex-start;
  align-items: center; }

.c-answer__icon {
  min-width: 45px;
  max-width: 45px;
  margin-right: 10px; }
  @media (min-width: 769px) {
    .c-answer__icon {
      width: 100%;
      max-width: 80px;
      min-width: 80px;
      margin-right: 20px; } }

.c-answer__icon--round {
  border-radius: 50%; }

.c-answer__content {
  align-items: flex-start; }
  @media (min-width: 769px) {
    .c-answer__content {
      display: flex;
      justify-content: flex-start;
      align-items: center; } }
  .c-answer__content .c-answer__body, .c-answer__content .c-cta-section.has-answer-width {
    margin-left: 0; }

/**
 * Gated content
 */
.o-gated__gate {
  position: relative;
  max-height: 150px;
  overflow: hidden; }
  .o-gated__gate::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to top, #ffffff, rgba(255, 255, 255, 0)); }

.o-gated.this-is-active .o-gated__gate {
  max-height: none;
  overflow: visible; }
  .o-gated.this-is-active .o-gated__gate::after {
    display: none; }

.o-gated.this-is-active .o-gated__toggler {
  margin-top: 30px; }

/**
 * Blurred (paywalled) text
 */
.is-paywalled {
  color: transparent;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
  filter: blur(4px);
  user-select: none;
  pointer-events: none;
  cursor: default; }

.gray-bar {
  border-radius: 5px;
  height: 24px;
  margin: 10px 0;
  background-color: #f0f0f0;
  opacity: 0.8; }

.c-copy-feedback {
  width: 120px;
  background-color: #ffffff;
  color: #282828;
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05);
  border-radius: 4px;
  padding: 5px 0;
  margin-top: 50px; }

.article-byline {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-top: 5px; }
  @media (min-width: 769px) {
    .article-byline {
      flex-direction: row;
      align-items: center;
      line-height: 1; } }

/*------------------------------------*\
        $FOOTER
\*------------------------------------*/
.c-main-footer {
  padding-bottom: 30px;
  background-color: #ffffff;
  border-top: 1px solid #dedede; }
  .c-main-footer__content {
    padding-top: 60px;
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px solid #dedede; }
    @media (min-width: 769px) {
      .c-main-footer__content {
        padding-bottom: 60px;
        padding-top: 80px; } }
  .c-main-footer__logo {
    width: 143px;
    display: block;
    height: 34.5px; }
  @media (max-width: 768px) {
    .c-main-footer__details {
      margin-bottom: 20px; } }
  .c-main-footer__links li {
    margin-top: 12px; }
  @media (max-width: 768px) {
    .c-main-footer__secondary-links {
      margin-top: 20px; } }
  @media (min-width: 769px) {
    .c-main-footer__social {
      justify-self: flex-end; } }
  @media (max-width: 768px) {
    .c-main-footer__copyright {
      padding-top: 20px; } }

.u-full-height .c-main-footer {
  margin-top: 0; }

.o-footer-links a {
  color: #282828;
  text-decoration: none; }
  .o-footer-links a:hover {
    color: #087d87; }

/*------------------------------------*\
        $HEADER
\*------------------------------------*/
.c-main-header {
  background-color: #213e42; }
  .c-main-header__inner {
    width: 100%;
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-start;
    justify-content: space-between;
    color: #ffffff;
    font-size: var(--font-size-xs, 14px);
    padding: 20px 20px; }
    @media (max-width: 1024px) {
      .c-main-header__inner {
        position: relative; }
        .c-main-header__inner > * {
          position: relative;
          z-index: 200; }
        .c-main-header__inner::before {
          content: "";
          position: absolute;
          left: 0;
          top: 0;
          height: 100%;
          width: 100%;
          z-index: 100;
          background-color: #213e42; }
        .c-main-header__inner:has(.c-main-header__search.search-is-active)::before {
          content: none; } }
  .c-main-header__search-trigger {
    width: 50px;
    height: 50px;
    padding: 10px;
    margin-left: -10px; }
    .c-main-header__search-trigger path {
      fill: #ebf3f5; }
    .c-main-header__search-trigger.search-is-active {
      opacity: 0.5; }
  .c-main-header__logo {
    width: 130px;
    min-width: 130px;
    height: 31.5px; }
    @media (min-width: 1025px) {
      .c-main-header__logo {
        margin-right: 25px;
        margin-top: 5px; } }
    @media (max-width: 1024px) {
      .c-main-header__logo {
        align-self: center; } }
  @media (min-width: 1025px) {
    .c-main-header__search {
      justify-content: flex-start;
      flex: 1;
      max-width: 435px; } }
  @media (max-width: 1024px) {
    .c-main-header__search {
      position: absolute;
      top: 0;
      left: 0;
      background-color: #213e42;
      padding: 10px;
      width: 100%;
      z-index: 10;
      box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05);
      transition: transform 0.5s ease-in-out, opacity 0.3s ease-in-out;
      transform: translateY(calc(-100% - 130px)); }
      .c-main-header__search .o-search-toggle {
        display: none; }
      .c-main-header__search .c-search-form.c-search-form--inline .select-and-checkbox {
        display: none; }
      .c-main-header__search.search-is-active .c-search-form.c-search-form--inline .select-and-checkbox {
        display: block; }
      .c-main-header__search.search-is-active {
        transform: translateY(100%);
        opacity: 1; } }
  @media (min-width: 1025px) {
    .c-main-header__navigation {
      width: 100%;
      display: flex;
      flex: 1;
      justify-content: flex-end;
      align-items: flex-start; }
      .c-main-header__navigation > * {
        margin-left: 10px; } }
  .c-main-header__navigation > .o-button {
    font-size: 14px; }
    @media (max-width: 1024px) {
      .c-main-header__navigation > .o-button {
        display: none; } }
  .c-main-header__menu {
    background-color: #ffffff;
    z-index: 10001;
    box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05); }
    @media (max-width: 1024px) {
      .c-main-header__menu {
        position: fixed;
        top: 70px;
        width: 100%;
        height: calc(100% - 70px);
        padding: 30px 20px;
        left: 100%;
        display: flex;
        flex-wrap: wrap;
        align-content: space-between;
        max-width: 380px;
        transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1);
        transform: translateX(0);
        overflow: auto; } }
    @media (min-width: 1025px) {
      .c-main-header__menu {
        position: absolute;
        width: 200px;
        border-radius: 2px;
        top: calc(100% - 10px);
        right: 20px;
        display: none; } }
    @media (max-width: 1024px) {
      .menu-is-active .c-main-header__menu {
        transform: translateX(-100%); } }
    @media (min-width: 1025px) {
      .menu-is-active .c-main-header__menu.main-menu {
        display: block; } }
    .c-main-header__menu > * {
      width: 100%; }
    @media (max-width: 1024px) {
      .c-main-header__menu-list {
        margin-bottom: 20px; } }
    .c-main-header__menu-list a {
      display: block;
      color: #282828; }
      @media (max-width: 1024px) {
        .c-main-header__menu-list a {
          padding: 20px 0;
          font-size: 18px;
          border-bottom: 1px solid #f0f0f0; } }
      @media (min-width: 1025px) {
        .c-main-header__menu-list a {
          padding: 15px 20px; }
          .c-main-header__menu-list a:hover {
            background-color: #ebf3f5; } }

@media (max-width: 1024px) {
  body.menu-is-active {
    overflow: hidden;
    height: 100vh;
    position: fixed;
    width: 100%; } }

/**
 * User profile header nav links
 */
.c-user-actions {
  display: flex;
  flex-direction: row;
  align-items: center; }
  @media (max-width: 1024px) {
    .c-user-actions {
      display: none; } }
  .c-user-actions__link {
    display: flex;
    align-items: center;
    white-space: nowrap;
    height: 30px;
    padding: 0 10px;
    color: #ffffff;
    border-left: 1px solid #ffffff; }
    .c-user-actions__link svg * {
      fill: #ffffff; }
    @media (min-width: 321px) {
      .c-user-actions__link {
        height: 40px;
        padding: 0 16px; } }
    .c-user-actions__link:first-child {
      border-left: none; }
    .c-user-actions__link:hover {
      color: #bfe8ee; }
      .c-user-actions__link:hover svg * {
        fill: #bfe8ee; }

.account-menu-is-active.account-menu {
  display: block !important; }

.account-menu-is-active span.u-icon--s {
  transform: rotate(90deg); }

.account-menu a.details {
  border-bottom: 1px #213e42 solid;
  color: #213e42; }
  .account-menu a.details:hover {
    background: none;
    cursor: default; }

.site-search__results {
  line-height: 1.77;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif !important;
  font-size: var(--font-size-s, 18px) !important;
  padding: 5px !important;
  border: transparent !important;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05); }
  @media (max-width: 500px) {
    .site-search__results {
      max-width: 335px !important; } }
  .site-search__results > li {
    padding: 6px 5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }

.ui-state-active {
  background-color: transparent !important;
  color: #087d87 !important;
  border: transparent !important;
  text-decoration: underline; }

/*------------------------------------*\
        $MAIN CONTENT AREA
\*------------------------------------*/
.c-welcome-page {
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  max-width: 670px;
  padding: 30px;
  margin: 0 auto; }
  .c-welcome-page__logo {
    max-width: 400px;
    margin: 0 auto; }

/**
 * Ad styling (only for prototyping)
 */
.o-ad {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
  left: 50%;
  transform: translateX(-50%); }
  .o-ad__label {
    margin-top: 10px;
    display: block;
    text-align: right;
    width: 100%;
    color: #c0c1c5; }
  .o-ad--300x250, .o-ad--300x600-flex {
    width: 300px; }
  .o-ad--billboard {
    width: 320px; }
    @media (min-width: 751px) {
      .o-ad--billboard {
        width: 728px; } }
    @media (min-width: 1001px) {
      .o-ad--billboard {
        width: 970px; } }

/**
 * Style Guide
 */
.c-style-guide {
  padding: 80px 0; }

.o-sg-section__content p {
  font-size: 14px; }

.c-swatch {
  border: 1px solid #dedede; }
  .c-swatch__color {
    height: 150px;
    position: relative; }
  .c-swatch-a11y {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 5px 7px 2px 0;
    display: flex; }
    .c-swatch-a11y__item {
      margin-left: 5px;
      text-align: center;
      width: 25px; }
    .c-swatch-a11y__letter {
      text-transform: uppercase;
      font-size: 24px;
      display: inline-block;
      padding: 0 4px;
      line-height: 1;
      color: #ffffff; }
      .c-swatch-a11y__letter--bg {
        background-color: #ffffff; }
    .c-swatch-a11y__check {
      background-color: #ffffff;
      display: inline-block;
      width: 12px;
      height: 12px;
      position: relative; }
      .c-swatch-a11y__check svg {
        min-width: 14px;
        min-height: 14px;
        left: 1px;
        bottom: 1px;
        display: block;
        position: absolute;
        fill: #c0c1c5; }
  .c-swatch__details {
    padding: 20px; }

.c-color-bars {
  border: 1px solid #dedede; }

.c-color-bar {
  padding: 20px;
  display: flex;
  justify-content: space-between; }

.c-font-block {
  width: 100%;
  border: 1px solid #dedede; }
  .c-font-block__inner {
    padding: 20px;
    display: flex;
    height: 100%; }
  .c-font-block__content {
    display: flex;
    flex-wrap: wrap;
    align-content: space-between; }
  .c-font-block__free-type {
    font-size: 32px;
    line-height: 1;
    margin-bottom: 40px; }
  .c-font-block__letter {
    font-size: 117px;
    line-height: 0.8;
    align-self: flex-end;
    text-align: right;
    width: 100%;
    max-width: 95px;
    min-width: 95px; }

.patternLink {
  font-size: 14px;
  text-transform: uppercase; }

/*------------------------------------*\
        $MODIFIERS
\*------------------------------------*/
/*------------------------------------*\
        $ANIMATIONS & TRANSITIONS
\*------------------------------------*/
/**
 * Transitions
 */
.has-trans {
  transition: all 0.4s ease-in-out; }

.has-trans--fast {
  transition: all 0.1s ease-in-out; }

.has-zoom {
  overflow: hidden; }
  .has-zoom img {
    transition: transform 0.3s ease-out;
    transform: scale(1); }
  .has-zoom a:hover img {
    transform: scale(1.03); }

/**
 * Fade Classes
 */
.has-fadeup {
  opacity: 0;
  transform: translate(0, 25px);
  transition: all 0.6s ease-out 0.5s; }

.fadeup,
.has-fadeup.is-active {
  opacity: 1;
  transform: translate(0, 0); }

.has-fade-in {
  opacity: 0;
  transition: all 0.3s ease-out; }

.u-fade-in {
  opacity: 1; }

.lazyload,
.lazyloading {
  opacity: 0;
  transform: translate(0, 25px);
  transition: all 0.6s ease-out; }

.lazyloaded {
  opacity: 1;
  transition: opacity 300ms; }

@keyframes bounce {
  0%,
  100% {
    transform: translateY(0); }
  20% {
    transform: translateY(-3px); }
  80% {
    transform: translateY(3px); } }

/*------------------------------------*\
        $COLOR MODIFIERS
\*------------------------------------*/
/**
 * Text Colors
 */
.u-color--black,
.u-color--black a {
  color: #282828; }

.u-color--yellow {
  color: #fad65f; }

.u-color--red {
  color: #fad3ca; }

.u-color--black-transparent {
  color: rgba(40, 40, 40, 0.7); }

.u-color--gray,
.u-color--gray a {
  color: #dedede; }

.u-color--gray--light,
.u-color--gray--light a {
  color: #f0f0f0; }

.u-color--gray--dark {
  color: #c0c1c5; }

.u-color--gray--darker,
.u-color--gray--darker a {
  color: #707373; }

.u-color--white,
.u-color--white a {
  color: #ffffff !important; }

.u-color--primary,
.u-color--primary a {
  color: #c74a34; }

.u-color--secondary,
.u-color--secondary a {
  color: #087d87; }

.u-color--spearmint--dark,
.u-color--spearmint--dark a {
  color: #61a561; }

/**
 * Background Colors
 */
.u-background-color--none {
  background: none; }

.u-background-color--black {
  background-color: #282828; }

.u-background-color--gray {
  background-color: #dedede; }

.u-background-color--gray--light {
  background-color: #f0f0f0; }

.u-background-color--white {
  background-color: #ffffff; }

.u-background-color--beach {
  background-color: #f5f2eb; }

.u-background-color--beach-light {
  background-color: #faf8f5; }

.u-background-color--red {
  background-color: #fad3ca; }

.u-background-color--yellow {
  background-color: #fad65f; }

/**
 * SVG Fill Colors
 */
.u-path-fill--black path {
  fill: #282828; }

.u-path-fill--spearmint--dark path {
  fill: #61a561; }

.u-path-fill--gray path {
  fill: #dedede; }

.u-path-fill--white path {
  fill: #ffffff; }

.u-path-fill--blue path {
  fill: #087d87; }

/*------------------------------------*\
        $DISPLAY STATES
\*------------------------------------*/
/**
 * Display Classes
 */
.u-display--inline {
  display: inline; }

.u-display--inline-block {
  display: inline-block; }

.u-display--block {
  display: block; }

.u-flex {
  display: flex; }

.u-justify-content--space-between {
  justify-content: space-between; }

.u-justify-content--flex-end {
  justify-content: flex-end; }

.u-justify-content--center {
  justify-content: center; }

.u-justify-items--center {
  justify-items: center; }

.u-align-items--center {
  align-items: center; }

.u-align-items--start {
  align-items: flex-start; }

.u-align-items--end {
  align-items: flex-end; }

.u-align-items--baseline {
  align-items: baseline; }

.u-flex-directon--column {
  flex-direction: column; }

.u-flex-remaining-space {
  flex: 1; }

.u-flex-shrink {
  flex-shrink: 0; }

@media (max-width: 500px) {
  .u-hide-until--s {
    display: none; } }

@media (max-width: 768px) {
  .u-hide-until--m {
    display: none; } }

@media (max-width: 1024px) {
  .u-hide-until--l {
    display: none; } }

@media (max-width: 1200px) {
  .u-hide-until--xl {
    display: none; } }

@media (min-width: 501px) {
  .u-hide-after--s {
    display: none; } }

@media (min-width: 769px) {
  .u-hide-after--m {
    display: none; } }

@media (min-width: 1025px) {
  .u-hide-after--l {
    display: none; } }

@media (min-width: 1201px) {
  .u-hide-after--xl {
    display: none; } }

@media (min-width: 769px) {
  .u-inline-desktop {
    display: flex;
    align-items: center; } }

/*------------------------------------*\
        $SPACING
\*------------------------------------*/
.u-spacing > * + * {
  margin-top: 20px; }

.u-padding {
  padding: 20px; }

.u-space {
  margin: 20px; }

.u-padding--top {
  padding-top: 20px; }

.u-space--top {
  margin-top: 20px; }

.u-padding--bottom {
  padding-bottom: 20px; }

.u-space--bottom {
  margin-bottom: 20px; }

.u-padding--left {
  padding-left: 20px; }

.u-space--left {
  margin-left: 20px; }

.u-padding--right {
  padding-right: 20px; }

.u-space--right {
  margin-right: 20px; }

.u-spacing--quarter > * + * {
  margin-top: 5px; }

.u-padding--quarter {
  padding: 5px; }

.u-space--quarter {
  margin: 5px; }

.u-padding--quarter--top {
  padding-top: 5px; }

.u-space--quarter--top {
  margin-top: 5px; }

.u-padding--quarter--bottom {
  padding-bottom: 5px; }

.u-space--quarter--bottom {
  margin-bottom: 5px; }

.u-padding--quarter--left {
  padding-left: 5px; }

.u-space--quarter--left {
  margin-left: 5px; }

.u-padding--quarter--right {
  padding-right: 5px; }

.u-space--quarter--right {
  margin-right: 5px; }

.u-spacing--half > * + * {
  margin-top: 10px; }

.u-padding--half {
  padding: 10px; }

.u-space--half {
  margin: 10px; }

.u-padding--half--top {
  padding-top: 10px; }

.u-space--half--top {
  margin-top: 10px; }

.u-padding--half--bottom {
  padding-bottom: 10px; }

.u-space--half--bottom {
  margin-bottom: 10px; }

.u-padding--half--left {
  padding-left: 10px; }

.u-space--half--left {
  margin-left: 10px; }

.u-padding--half--right {
  padding-right: 10px; }

.u-space--half--right {
  margin-right: 10px; }

.u-spacing--and-half > * + * {
  margin-top: 30px; }

.u-padding--and-half {
  padding: 30px; }

.u-space--and-half {
  margin: 30px; }

.u-padding--and-half--top {
  padding-top: 30px; }

.u-space--and-half--top {
  margin-top: 30px; }

.u-padding--and-half--bottom {
  padding-bottom: 30px; }

.u-space--and-half--bottom {
  margin-bottom: 30px; }

.u-padding--and-half--left {
  padding-left: 30px; }

.u-space--and-half--left {
  margin-left: 30px; }

.u-padding--and-half--right {
  padding-right: 30px; }

.u-space--and-half--right {
  margin-right: 30px; }

.u-spacing--double > * + * {
  margin-top: 40px; }

.u-padding--double {
  padding: 40px; }

.u-space--double {
  margin: 40px; }

.u-padding--double--top {
  padding-top: 40px; }

.u-space--double--top {
  margin-top: 40px; }

.u-padding--double--bottom {
  padding-bottom: 40px; }

.u-space--double--bottom {
  margin-bottom: 40px; }

.u-padding--double--left {
  padding-left: 40px; }

.u-space--double--left {
  margin-left: 40px; }

.u-padding--double--right {
  padding-right: 40px; }

.u-space--double--right {
  margin-right: 40px; }

.u-spacing--triple > * + * {
  margin-top: 60px; }

.u-padding--triple {
  padding: 60px; }

.u-space--triple {
  margin: 60px; }

.u-padding--triple--top {
  padding-top: 60px; }

.u-space--triple--top {
  margin-top: 60px; }

.u-padding--triple--bottom {
  padding-bottom: 60px; }

.u-space--triple--bottom {
  margin-bottom: 60px; }

.u-padding--triple--left {
  padding-left: 60px; }

.u-space--triple--left {
  margin-left: 60px; }

.u-padding--triple--right {
  padding-right: 60px; }

.u-space--triple--right {
  margin-right: 60px; }

.u-spacing--quad > * + * {
  margin-top: 80px; }

.u-padding--quad {
  padding: 80px; }

.u-space--quad {
  margin: 80px; }

.u-padding--quad--top {
  padding-top: 80px; }

.u-space--quad--top {
  margin-top: 80px; }

.u-padding--quad--bottom {
  padding-bottom: 80px; }

.u-space--quad--bottom {
  margin-bottom: 80px; }

.u-padding--quad--left {
  padding-left: 80px; }

.u-space--quad--left {
  margin-left: 80px; }

.u-padding--quad--right {
  padding-right: 80px; }

.u-space--quad--right {
  margin-right: 80px; }

.u-spacing--zero > * + * {
  margin-top: 0; }

.u-padding--zero {
  padding: 0; }

.u-space--zero {
  margin: 0; }

.u-padding--zero--top {
  padding-top: 0; }

.u-space--zero--top {
  margin-top: 0; }

.u-padding--zero--bottom {
  padding-bottom: 0; }

.u-space--zero--bottom {
  margin-bottom: 0; }

.u-padding--zero--left {
  padding-left: 0; }

.u-space--zero--left {
  margin-left: 0; }

.u-padding--zero--right {
  padding-right: 0; }

.u-space--zero--right {
  margin-right: 0; }

.u-spacing--left > * + * {
  margin-left: 20px; }

.c-indicator {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 10000;
  justify-content: center;
  align-items: center;
  pointer-events: none; }

.c-indicator .htmx-request {
  display: flex;
  pointer-events: all; }

.c-indicator.htmx-request {
  display: flex;
  pointer-events: all; }

.htmx-indicator {
  display: none;
  opacity: 0;
  transition: opacity 500ms ease-in; }

.htmx-request .htmx-indicator {
  display: inline;
  opacity: 1; }

.htmx-request.htmx-indicator {
  display: inline;
  opacity: 1; }

/*------------------------------------*\
        $COMPONENTS
\*------------------------------------*/
[id*="div-gpt-ad"] * {
  margin-left: auto;
  margin-right: auto;
  display: block !important; }

.cnx-float.cnx-float {
  position: unset !important;
  transform: none !important;
  margin-left: auto;
  margin-right: auto; }

.o-content-tags.c-available-tags {
  background-color: #f0f0f0; }

.o-content-tags .o-content-tag {
  padding: 5px 0; }

.o-content-tags .o-content-tag::before {
  display: none; }

.c-available-tag .content-tag__select::before {
  content: "+";
  font-weight: bold;
  cursor: pointer;
  padding: 0 10px; }

.c-selected-tag {
  background-color: #def2f6;
  padding: 5px;
  margin-bottom: 10px; }

.c-selected-tag .content-tag__remove::before {
  content: "x";
  font-weight: bold;
  cursor: pointer;
  padding: 0 10px; }

/* New styles for draggable tags */
.tag-tile {
  border: 1px solid #ccc;
  padding: 10px;
  margin: 5px;
  background-color: #f9f9f9;
  cursor: move;
  /* Changed from pointer to move for better UX */ }

.tag-tile.drag-over {
  border-color: #00f;
  background-color: #f0f8ff; }

/*------------------------------------*\
        $BLOCKS
\*------------------------------------*/
/**
 * Standard block
 */
.o-block__media {
  margin-right: 15px; }
  @media (max-width: 500px) {
    .o-block__media {
      margin-right: 10px; } }

@media (max-width: 500px) {
  .o-block__title {
    font-size: 18px; } }

.o-block__content {
  width: 100%;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  justify-content: center; }

.o-block__description--wrapper {
  margin-top: 10px;
  margin-left: 105px;
  overflow: hidden; }
  @media (max-width: 500px) {
    .o-block__description--wrapper {
      margin-left: 0; } }

.o-block__dek {
  font-size: 14px;
  color: #282828; }
  @media (min-width: 501px) {
    .o-block__dek {
      font-size: 16px;
      padding-top: 5px; } }

@media (min-width: 501px) {
  .o-block__label {
    float: right; } }

.o-block--small .o-block__title {
  font-size: 18px; }

.o-block--small .o-block__dek {
  font-size: 14px;
  color: #707373; }

.o-shadow-block {
  box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2);
  background-color: #ffffff;
  border-radius: 2px;
  display: block; }
  @media (max-width: 500px) {
    .o-shadow-block {
      box-shadow: 0 6px 15px rgba(40, 40, 40, 0.2); } }
  .o-shadow-block__inner {
    padding: 20px; }
  .o-shadow-block__header {
    padding-bottom: 20px; }
  .o-shadow-block__footer {
    padding-top: 20px;
    border-top: 1px dashed #dedede; }
  .o-shadow-block--light {
    box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05); }

.o-shadow-block--thick-padding {
  padding: 30px; }

/**
 * Question block
 */
.c-question-block__text > h1 {
  font-family: "HCo Mercury SSm", georgia, serif;
  font-size: 22px;
  line-height: 1.45;
  font-weight: 600;
  padding-top: 0;
  overflow-wrap: break-word; }
  @media (min-width: 769px) {
    .c-question-block__text > h1 {
      font-size: 28px; } }
  @media (min-width: 1201px) {
    .c-question-block__text > h1 {
      font-size: 32px; } }

.c-question-block__text > p {
  margin-top: 40px; }

.c-question-block__text--with-bottom-border {
  border-bottom: 1px solid #dedede;
  padding-bottom: 30px; }

.c-question-block--with-small-text .c-question-block__text > h1 {
  font-size: 18px; }
  @media (min-width: 769px) {
    .c-question-block--with-small-text .c-question-block__text > h1 {
      font-size: 24px; } }

/*------------------------------------*\
        $CARDS
\*------------------------------------*/
.o-card {
  transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1); }
  .o-card:hover {
    box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2); }
    .o-card:hover .o-kicker {
      color: #087d87; }
  .o-card__title {
    font-weight: 600; }
  .o-card__inner {
    overflow: hidden; }
    .o-card__inner .o-arrow {
      display: inline-block;
      margin-right: 0.5em;
      transition: transform 0.3s ease; }
      .o-card__inner .o-arrow::before {
        content: '▼';
        display: inline-block; }
    .o-card__inner[aria-expanded="true"] .o-arrow::before {
      content: '▲'; }
  @media (min-width: 1025px) {
    .o-card__meta {
      display: flex;
      align-items: flex-start;
      justify-content: space-between; } }
  @media (min-width: 501px) {
    .o-card__description {
      padding-bottom: 40px; } }
  .o-card__label {
    float: right; }
    @media (max-width: 1439px) {
      .o-card__label {
        margin-right: 5px;
        float: none; } }

.o-card--toggle {
  opacity: 0;
  height: 0;
  overflow: hidden;
  transition: opacity 0.3s ease, height 0.3s ease; }
  .o-card--toggle.this-is-active {
    opacity: 1;
    height: auto;
    overflow: visible; }

/*
 * Styles below are overriding o-rte-text by increasing specificity
 */
.o-rte-text .o-card .o-kicker {
  font-size: 14px; }

.o-rte-text .o-card h3 {
  margin: 0; }

.o-rte-text .o-card__text p {
  line-height: 1.68;
  font-size: 16px; }

.o-rte-text .o-card a {
  text-decoration: none; }

.o-rte-text .o-card .o-date {
  font-family: "HCo Operator SSm", monaco, "Courier New", "Courier", monospace;
  font-size: 14px; }

/**
 * Card-like appearance used in activity logs
 */
.c-log-item {
  transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1); }
  .c-log-item:hover {
    box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2); }
  .c-log-item__inner {
    padding: 24px 20px;
    position: relative; }
    @media (min-width: 501px) {
      .c-log-item__inner {
        display: flex;
        align-items: flex-start; } }
  @media (min-width: 501px) {
    .c-log-item__col1 {
      margin-right: 30px; } }
  .c-log-item__col2 {
    position: relative;
    overflow: hidden;
    flex: 1; }
  .c-log-item__comment {
    margin-top: 20px;
    padding-left: 20px;
    border-left: 6px solid #dedede; }
  .c-log-item__label {
    float: right; }
    @media (min-width: 501px) {
      .c-log-item__label {
        position: absolute;
        right: 0;
        bottom: 0; } }
  @media (min-width: 501px) {
    .c-log-item--with-label .c-log-item__comment {
      margin-bottom: 50px; } }
  .c-log-item--with-label .c-log-item__label {
    margin-top: 20px; }
  @media (min-width: 501px) {
    .c-log-item--with-label .c-log-item__header {
      padding-right: 150px; } }
  @media (min-width: 501px) {
    .c-log-item--with-comment .c-log-item__header {
      padding-right: 0; } }
  .c-log-item--with-comment .c-log-item__comment a {
    color: #087d87;
    text-decoration: underline; }

.c-messages {
  max-width: auto; }
  @media (min-width: 1025px) {
    .c-messages {
      max-width: 200px; } }
  .c-messages__menu {
    display: flex;
    justify-content: center; }
    .c-messages__menu > li {
      padding-right: 20px; }
    .c-messages__menu > li > a {
      display: inline-block; }
    @media (min-width: 1025px) {
      .c-messages__menu {
        display: block; }
        .c-messages__menu > li {
          padding-right: 0; } }

.c-message.is-active {
  border: 2px solid #087d87; }

/*------------------------------------*\
        $CAROUSELS
\*------------------------------------*/
/**
 * Slick carousel styles
 */
@media (min-width: 769px) {
  .slick-slider {
    margin-bottom: 60px; } }

@media (max-width: 1440px) {
  .slick-slider {
    margin-left: 30px;
    margin-right: 30px; } }

.slick-slider .slick-arrow {
  position: absolute;
  top: 50%;
  z-index: 10; }

.slick-slider .slick-prev {
  left: -20px;
  transform: translate(-50%, -50%) rotate(180deg); }
  @media (min-width: 769px) {
    .slick-slider .slick-prev {
      left: 0; } }

.slick-slider .slick-next {
  right: -20px;
  transform: translate(50%, -50%); }
  @media (min-width: 769px) {
    .slick-slider .slick-next {
      right: 0; } }

.slick-slider .slick-disabled {
  border-color: #dedede; }
  .slick-slider .slick-disabled::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16.01 24'%3E%3Ctitle%3Earrow--right%3C/title%3E%3Cpath d='M3.21,23.75l12.47-11a1.07,1.07,0,0,0,.25-.35A1.25,1.25,0,0,0,16,12a1.16,1.16,0,0,0-.08-.42,1.07,1.07,0,0,0-.25-.35L3.21.25a.9.9,0,0,0-.34-.2,1,1,0,0,0-.39,0,.94.94,0,0,0-.37.11A.84.84,0,0,0,1.8.36L.24,2.21A1,1,0,0,0,0,3a1,1,0,0,0,.35.69l9.46,8.17a.24.24,0,0,1,.06.08.22.22,0,0,1,0,.11.18.18,0,0,1,0,.1s0,.06-.06.09L.35,20.36a1,1,0,0,0-.34.69.91.91,0,0,0,0,.4,1.14,1.14,0,0,0,.19.34L1.8,23.64a.84.84,0,0,0,.31.25.94.94,0,0,0,.37.11A1,1,0,0,0,2.87,24,.9.9,0,0,0,3.21,23.75Z' fill='%23dedede'/%3E%3C/svg%3E"); }

.slick-slider .slick-list {
  margin-left: -10px;
  margin-right: -10px;
  overflow: visible; }

.slick-slider .slick-track {
  display: flex;
  align-items: stretch; }

.slick-slider .slick-slide {
  height: auto; }

.slick-slider .slick-dots {
  width: 100%;
  text-align: center;
  padding: 40px 0 0;
  position: absolute;
  left: 0;
  bottom: -60px; }
  @media (max-width: 768px) {
    .slick-slider .slick-dots {
      display: none !important; } }
  .slick-slider .slick-dots li {
    overflow: hidden;
    text-indent: -99px;
    background-color: #dbd2bd;
    border-radius: 50%;
    height: 12px;
    width: 12px;
    display: inline-block;
    margin: 0 8px;
    cursor: pointer; }
    .slick-slider .slick-dots li:first-child {
      margin-left: 0; }
    .slick-slider .slick-dots li:last-child {
      margin-right: 0; }
    .slick-slider .slick-dots li.slick-active {
      background-color: #065860; }
      .slick-slider .slick-dots li.slick-active span.slick-sr-only {
        color: #ebf3f5 !important; }

.slick-adaptive .slick-slide {
  height: fit-content; }

.slick-slide > div,
.slick-slide > div > div {
  height: 100%; }

/**
 * Improved .sr-only class by ffoodd: https://gist.github.com/ffoodd/000b59f431e3e64e4ce1a24d5bb36034
 */
.slick-sr-only {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important; }

/**
 * Standard carousel
 */
.o-carousel-section__header {
  position: relative;
  z-index: 10; }

.o-carousel--with-active-slide .slick-slide:not(.slick-current) {
  opacity: 0.5; }

.o-carousel--hide-disabled .slick-disabled {
  display: none !important; }

.o-carousel--single {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease-in-out; }
  .o-carousel--single.slick-initialized {
    visibility: visible;
    opacity: 1; }
  @media (max-width: 500px) {
    .o-carousel--single.slick-slider {
      margin: 0; } }
  .o-carousel--single .slick-list {
    overflow: hidden; }
  .o-carousel--single .slick-track {
    display: block; }
  .o-carousel--single .slick-slide {
    margin: 15px; }
    @media (min-width: 501px) {
      .o-carousel--single .slick-slide {
        margin: 30px; } }
  @media (max-width: 500px) {
    .o-carousel--single .slick-prev {
      display: none !important; } }
  @media (min-width: 1201px) {
    .o-carousel--single .slick-prev {
      left: -30px; } }
  @media (min-width: 1441px) {
    .o-carousel--single .slick-prev {
      left: -40px; } }
  @media (max-width: 500px) {
    .o-carousel--single .slick-next {
      display: none !important; } }
  @media (min-width: 1201px) {
    .o-carousel--single .slick-next {
      right: -30px; } }
  @media (min-width: 1441px) {
    .o-carousel--single .slick-next {
      right: -40px; } }
  .o-carousel--single .slick-arrow {
    top: 270px; }
  .o-carousel--single .slick-dots {
    display: block !important; }

/*
 * Pre-styling carousel before slick js kicks in
 */
/* stylelint-disable no-duplicate-selectors */
.o-carousel {
  display: flex;
  align-items: stretch;
  width: 1920px; }

/* stylelint-enable no-duplicate-selectors */
.o-carousel > * {
  width: 240px; }

.slick-initialized {
  display: block;
  width: auto; }

.slick-initialized > * {
  width: auto; }

/**
 * Slide
 */
.o-slide {
  background-color: #ffffff;
  padding: 20px;
  display: block;
  min-height: 170px;
  margin: 0 10px;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05);
  height: 100%;
  text-align: center; }
  @media (min-width: 769px) {
    .o-slide {
      padding: 30px; } }
  .o-slide__inner {
    position: relative; }
  .o-slide__media {
    margin: 0 auto 10px; }
  .o-slide__text, .o-slide__title {
    color: #282828;
    width: 100%; }
  .o-slide__title {
    font-weight: 600; }
  .o-slide__label {
    margin-top: 10px;
    width: 100%; }
    @media (min-width: 769px) {
      .o-slide__label {
        text-align: right; } }
  .o-slide--small .o-slide__title {
    font-size: 18px; }
  .o-slide--inline {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: space-between; }
    .o-slide--inline .o-slide__inner {
      width: 100%; }
      @media (min-width: 769px) {
        .o-slide--inline .o-slide__inner {
          display: flex;
          align-items: center;
          text-align: left; } }
    .o-slide--inline .o-slide__media {
      overflow: hidden; }
      @media (min-width: 769px) {
        .o-slide--inline .o-slide__media {
          margin: 0 20px 0 0; } }
    @media (min-width: 769px) {
      .o-slide--inline .o-slide__label {
        justify-content: flex-end; } }

.o-text-slide {
  text-align: left;
  overflow: hidden; }
  @media (min-width: 769px) {
    .o-text-slide {
      padding: 40px 50px; } }
  .o-text-slide .o-slide__inner {
    height: 100%; }
  .o-text-slide__label {
    position: absolute;
    right: 0;
    bottom: 0; }

/**
 * Slideshows (single slide)
 */
.c-slideshow.slick-slider {
  margin-left: 0;
  margin-right: 0; }

.c-slideshow .slick-dots {
  text-align: left;
  bottom: -40px;
  display: block !important; }

.c-slideshow .slick-list {
  margin: 0;
  overflow: hidden; }

.c-answer-carousel {
  overflow: visible; }

.dropdownMenu .menuTitleDown {
  float: left; }

.dropdownMenu .menuTitleBar:hover {
  cursor: pointer; }

.dropdownMenu .menuItems {
  position: absolute;
  z-index: 1000;
  left: 0;
  background: transparent; }

.dropdownMenu .menuItemsHolder {
  position: absolute;
  display: none;
  text-align: left;
  left: auto; }

.dropdownMenu .submenuRight {
  position: relative;
  float: left;
  top: 7px;
  display: none; }

.dropdownMenu .menuItem {
  float: left;
  white-space: nowrap;
  min-width: 100%;
  width: 100%; }

.dropdownMenu .item {
  display: inline-block;
  white-space: nowrap;
  padding: 5px 15px 10px 5px;
  font-size: 14px; }

.dropdownMenu.open-left .menuItemsInner {
  float: left;
  border: solid 1px #f0f0f0;
  border-top-right-radius: 0; }

.dropdownMenu.open-left .menuItem {
  border-top-right-radius: 0; }

.dropdownMenu.classic {
  margin: 15px 0;
  padding: 5px 10px; }
  .dropdownMenu.classic::after {
    clear: both;
    content: "";
    display: block; }
  .dropdownMenu.classic .menuTitleBar {
    background: #ebf3f5;
    float: left;
    border-radius: 0;
    border: solid 1px #dedede; }
    .dropdownMenu.classic .menuTitleBar:hover .menuTitleDown {
      background: #087d87;
      color: #ffffff; }
  .dropdownMenu.classic .menuTitle {
    float: left;
    padding: 12px;
    font-size: 11px;
    color: #087d87;
    font-weight: bold; }
  .dropdownMenu.classic .menuTitleDown {
    padding: 8px 8px 10px;
    border-left: solid 1px #dedede;
    color: #087d87;
    font-weight: bold; }
    .dropdownMenu.classic .menuTitleDown i.ss-icon {
      font-size: 14px; }
  .dropdownMenu.classic .menuTitleBar.open {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; }
  .dropdownMenu.classic .open .menuTitleDown {
    background: #dedede; }
  .dropdownMenu.classic .menuItems {
    top: 26px; }
  .dropdownMenu.classic .menuItemsInner {
    background: #ffffff;
    box-shadow: 5px 5px 5px #dedede; }
  .dropdownMenu.classic .menuItem {
    border-top: solid 1px #ffffff;
    border-bottom: solid 1px #ffffff;
    background: #ffffff;
    text-decoration: none; }
    .dropdownMenu.classic .menuItem:hover {
      background: #bfe8ee;
      border-top: solid 1px #90d8e2;
      border-bottom: solid 1px #90d8e2; }
  .dropdownMenu.classic .itemIcon i {
    color: #213e42; }
  .dropdownMenu.classic .item {
    color: #282828; }

.dropdownMenu.header .menuTitleDown i {
  line-height: 12px; }

.dropdownAnswerOuter {
  position: absolute; }

.dropdownAnswerInner {
  position: relative;
  left: 500px;
  top: -2; }

.submenuItem:hover .submenuRight {
  display: block; }

.dropdownMenuStatus {
  margin-left: 15px;
  margin-top: 7px; }

.shared-border {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

/*------------------------------------*\
        $SPECIFIC FORMS
\*------------------------------------*/
.c-search-form--inline {
  display: flex;
  width: 100%; }

.c-search-form form,
.c-search-form .c-search-form__input--wrapper {
  width: 100%; }
  @media (max-width: 1024px) {
    .c-search-form form,
    .c-search-form .c-search-form__input--wrapper {
      display: flex;
      justify-content: space-between;
      align-items: stretch; } }
  @media (min-width: 1025px) {
    .c-search-form form,
    .c-search-form .c-search-form__input--wrapper {
      width: 100%;
      position: relative; } }

.c-search-form .search-inputs {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 10px; }
  .c-search-form .search-inputs .search-inputs__row {
    display: flex;
    justify-content: space-between;
    align-items: center; }
  .c-search-form .search-inputs .search-inputs__checkbox-row {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px; }

.c-search-form .select-container {
  flex: 0 0 auto; }
  .c-search-form .select-container .c-search-form__select {
    display: block;
    vertical-align: middle;
    height: 40px;
    padding: 10px;
    width: 80px;
    appearance: none;
    -webkit-appearance: none; }

.c-search-form .c-search-form__input--wrapper {
  flex: 1;
  display: flex;
  align-items: center;
  margin-left: 5px;
  position: relative; }
  @media (min-width: 1025px) {
    .c-search-form .c-search-form__input--wrapper {
      width: auto; } }

.c-search-form .c-search-form__input {
  height: 40px;
  border: none;
  padding: 10px 20px 10px 5px;
  flex-grow: 1; }

.c-search-form .search-button {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 50px;
  background: #c74a34;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff; }

.c-search-form .search-button svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2; }

.c-search-form .search-button:hover svg {
  stroke: #762c1f; }

.c-search-form .c-search-form__select {
  border: none;
  border-right: 2px solid #f0f0f0;
  padding: 10px 25px 10px 10px;
  width: 120px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }
  @media (min-width: 1025px) {
    .c-search-form .c-search-form__select {
      padding: 10px 30px 10px 20px; } }

@media (max-width: 1024px) {
  .c-search-form .o-selectbox::after {
    right: 5px; } }

.c-search-form .o-button {
  min-width: 75px;
  margin-left: 10px; }

/**
 * Ask Question form
 */
@media (min-width: 501px) {
  .c-ask-question__footer {
    display: flex;
    align-items: flex-start;
    justify-content: space-between; } }

.c-ask-question__first {
  margin-bottom: 20px; }
  @media (min-width: 501px) {
    .c-ask-question__first {
      padding-right: 20px;
      margin-bottom: 0; } }

.c-ask-question__last {
  min-width: 140px; }

/**
 * Filters
 */
.c-list-filters {
  padding: 10px 0;
  margin-bottom: 20px; }
  @media (min-width: 1201px) {
    .c-list-filters {
      padding: 20px 0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 60px; } }
  @media (min-width: 1201px) {
    .c-list-filters {
      padding: 30px 0; } }
  .c-list-filtersshort {
    padding: 0;
    margin: 0; }
  .c-list-filters__col1 {
    display: flex;
    align-items: center; }
    @media (max-width: 1024px) {
      .c-list-filters__col1 {
        margin-bottom: 10px; } }
    .c-list-filters__col1 > * + * {
      margin-left: 10px; }
  .c-list-filters__total {
    font-size: 18px; }
    @media (min-width: 1025px) {
      .c-list-filters__total {
        font-size: 22px; } }
  @media (max-width: 768px) {
    .c-list-filters__form > * {
      width: 100%; }
      .c-list-filters__form > * + * {
        margin-top: 5px; } }
  @media (min-width: 769px) {
    .c-list-filters__form {
      display: flex;
      align-items: stretch; }
      .c-list-filters__form > * + * {
        margin-left: 10px; } }
    @media (min-width: 769px) and (min-width: 1025px) {
      .c-list-filters__form > * + * {
        margin-left: 20px; } }

.form-grid-col-fields {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .form-grid-col-fields .col {
    min-width: 9rem;
    margin: 5px 0; }
  .form-grid-col-fields .buttons {
    justify-content: flex-end; }
  .form-grid-col-fields__col {
    flex: 0 0 100%; }
  .form-grid-col-fields__two_thirds_col {
    flex: 0 0 63%; }
  .form-grid-col-fields__two_col {
    flex: 0 0 47%; }
  .form-grid-col-fields__three_col {
    flex: 0 0 30%; }
  .form-grid-col-fields__four_col {
    flex: 0 0 22%; }
  .form-grid-col-fields__five_col {
    flex: 0 0 18%; }
  .form-grid-col-fields__six_col {
    flex: 0 0 14%; }

.a-list-filters {
  padding: 0;
  margin-bottom: 1rem; }
  @media (min-width: 1201px) {
    .a-list-filters {
      display: flex;
      justify-content: space-between;
      align-items: center; } }
  .a-list-filters__col1 {
    display: flex;
    align-items: center; }
    @media (max-width: 1024px) {
      .a-list-filters__col1 {
        margin-bottom: 10px; } }
    .a-list-filters__col1__lg {
      flex-basis: 48%; }
    .a-list-filters__col1 > * + * {
      margin-left: 10px; }
  .a-list-filters__total {
    font-size: 18px; }
    @media (min-width: 1025px) {
      .a-list-filters__total {
        font-size: 22px; } }

/**
 * Rich text editor
 */
@media (max-width: 500px) {
  .o-text-editor__meta {
    display: block; }
    .o-text-editor__meta > * {
      display: flex;
      margin-bottom: 10px; } }

.c-seo-form,
.c-at-a-glance-form,
.c-blurb-form {
  display: none; }
  .c-seo-form.this-is-active,
  .c-at-a-glance-form.this-is-active,
  .c-blurb-form.this-is-active {
    display: block; }

/**
 * Checkout Form
 */
.o-preloader {
  position: absolute;
  background: #ffffff;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 100;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0.7; }

#js-subscription-toggle {
  margin-bottom: 10px; }
  #js-subscription-toggle .switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 24px; }
    #js-subscription-toggle .switch input {
      opacity: 0;
      width: 0;
      height: 0; }
      #js-subscription-toggle .switch input:checked + .slider {
        background-color: #087d87; }
        #js-subscription-toggle .switch input:checked + .slider:before {
          transform: translateX(32px); }
    #js-subscription-toggle .switch .slider {
      position: absolute;
      cursor: pointer;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-color: #ccc;
      transition: 0.4s;
      border-radius: 24px; }
      #js-subscription-toggle .switch .slider:before {
        position: absolute;
        content: '';
        height: 18px;
        width: 18px;
        left: 4px;
        bottom: 3px;
        background-color: white;
        transition: 0.4s;
        border-radius: 50%; }
    #js-subscription-toggle .switch .slider-label {
      position: absolute;
      top: 50%;
      transform: translateY(-50%); }
      #js-subscription-toggle .switch .slider-label.left {
        left: -95px; }
      #js-subscription-toggle .switch .slider-label.right {
        right: -95px; }

#alt_subscriptions_container,
#alt_value_props,
#alt_testimonials,
#alt_checkout_header {
  display: none; }

/*------------------------------------*\
        $HEROS
\*------------------------------------*/
.c-home-hero {
  padding-top: 30px;
  position: relative;
  background-image: url("/images/main/illustrations/illo-mesh-top-left.png"), url("/images/main/illustrations/illo-mesh-bottom-right.png");
  background-position: left top, right bottom;
  background-repeat: no-repeat;
  background-size: 50% auto; }
  @media (min-width: 769px) {
    .c-home-hero {
      background-size: 30% auto; } }
  @media (min-width: 1025px) {
    .c-home-hero {
      padding-top: 110px;
      background-image: url("/images/main/illustrations/illo-home-hero.svg"), url("/images/main/illustrations/illo-mesh-top-left.png"), url("/images/main/illustrations/illo-mesh-bottom-right.png");
      background-position: center 50px, left top, right bottom;
      background-repeat: no-repeat;
      background-size: 1400px auto, 309px auto, 280px auto; } }
  @media (min-width: 1025px) and (min-width: 1025px) {
    .c-home-hero h2.hero-top-large {
      margin-top: 110px; } }
  .c-home-hero__inner {
    max-width: 800px;
    margin-bottom: 40px; }
    .c-home-hero__inner p {
      text-align: left; }
  .c-home-hero__heading .u-fancy-underline {
    line-height: 1; }
  @media (max-width: 768px) {
    .c-home-hero__heading br {
      display: none; } }
  @media (min-width: 1025px) {
    .c-home-hero__heading {
      font-size: 60px; } }
  .c-home-hero .c-home-hero__search-input {
    box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2);
    background-image: url("/images/main/icons/icon-search.svg");
    background-position: left 24px center;
    background-repeat: no-repeat;
    background-size: 24px;
    border: none;
    padding-left: 60px; }
    @media (min-width: 1025px) {
      .c-home-hero .c-home-hero__search-input {
        font-size: 22px; } }

.image-tools {
  width: 100%;
  height: 20px;
  background: #ffffff;
  display: none;
  position: absolute;
  opacity: 0.8;
  filter: alpha(opacity=80);
  min-width: 60px;
  border-bottom: solid 1px #f0f0f0; }

.image-pos {
  position: relative; }

.qaImageInner:hover .image-tools {
  display: block; }

.qaImageInner {
  max-height: 300px;
  overflow: hidden; }

.flagged {
  border: solid 1px #7e1b0c;
  background: #dfcaca;
  padding: 5px 10px 10px;
  margin-bottom: 5px; }

.deleteQuestionImg i.ss-icon,
.deleteAnswerImg i.ss-icon,
.flagQAImage i.ss-icon {
  color: #dedede; }

.deleteQuestionImg:hover i.ss-icon,
.deleteAnswerImg:hover i.ss-icon,
.flagQAImage:hover i.ss-icon {
  color: #087d87; }

.flagged .flagQAImage {
  display: none; }

.undoPanel {
  clear: both;
  padding-bottom: 10px;
  margin: 5px;
  float: left;
  width: 200px;
  display: none; }

.flaggedMsg {
  margin-bottom: 10px;
  display: none;
  width: 180px; }

.flaggedMsgTxt {
  color: #282828;
  font-weight: bold; }

.flagged .flaggedMsg {
  display: block; }

.undoText {
  color: #282828 !important;
  font-weight: bold; }

.qaImage {
  float: left;
  margin: 5px; }

.qaImageImg {
  width: 200px; }

.flagged .qaImageImg {
  width: 180px; }

.imageTiles {
  width: 300px;
  display: block;
  overflow: hidden; }
  @media (min-width: 501px) {
    .imageTiles {
      width: 460px; } }

.reviewedMsg {
  font-weight: bold;
  margin: 10px 0; }

.imgShared {
  background-repeat: no-repeat;
  cursor: pointer;
  display: block;
  float: right;
  height: 18px;
  margin-top: 2px;
  width: 20px; }

.generated-math-img {
  display: inline; }

.hh-dash {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  padding: 1rem;
  color: #ffffff;
  background: #213e42;
  display: none;
  z-index: 10000;
  font-size: 18px; }
  @media (min-width: 501px) {
    .hh-dash {
      display: block;
      font-size: 18px; } }

.hh-dash-toggle {
  background: #213e42;
  padding: 1rem;
  position: fixed;
  bottom: 0;
  right: 0;
  margin: 0;
  display: block; }
  @media (min-width: 501px) {
    .hh-dash-toggle {
      display: none; } }

.hh-dash__stats {
  text-align: right;
  overflow-wrap: break-all;
  word-wrap: break-all;
  word-break: break-all; }

.hh-dash__stat {
  display: block; }
  @media (min-width: 501px) {
    .hh-dash__stat {
      margin-right: 1rem;
      float: left; } }

.messagebox {
  background: #def2f6;
  padding: 1.3rem 1.2rem;
  margin: 0 auto;
  text-align: center; }
  .messagebox h2,
  .messagebox h3 {
    margin: 0;
    color: #087d87;
    font-size: 2rem;
    font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
    margin-bottom: 1rem; }
  .messagebox.error, .messagebox.warning {
    background: #fad3ca; }
    .messagebox.error h2,
    .messagebox.error h3,
    .messagebox.error strong, .messagebox.warning h2,
    .messagebox.warning h3,
    .messagebox.warning strong {
      word-wrap: break-word;
      color: #7e1b0c; }
    .messagebox.error pre, .messagebox.warning pre {
      font-size: 1rem;
      white-space: pre-wrap;
      word-wrap: break-word; }
  .messagebox.alert, .messagebox.success {
    background: #90d8e2; }
  .messagebox p,
  .messagebox h2,
  .messagebox h3 {
    max-width: 51.33rem;
    margin: 0 auto; }
  .messagebox span.ss-icon {
    float: right; }

.c-progress-bar {
  display: flex;
  justify-content: space-between;
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
  z-index: 10000; }

.c-progress-bar-wrap {
  position: relative;
  margin: 75px 20px 55px; }
  @media (max-width: 500px) {
    .c-progress-bar-wrap {
      margin: 65px 0 55px; } }

.c-progress-bar__circle {
  width: 45px;
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #ffffff;
  background-color: #90d8e2;
  position: relative;
  z-index: 5; }

.c-progress-bar__circle strong {
  display: none;
  margin-top: -4px; }

.c-progress-bar__circle:first-of-type .c-progress-bar__tip {
  left: 0;
  transform: none; }

.c-progress-bar__circle:first-of-type .c-progress-bar__tip::after {
  left: 20px; }

.c-progress-bar__circle:last-of-type .c-progress-bar__tip {
  left: auto;
  right: 0;
  transform: none; }

.c-progress-bar__circle:last-of-type .c-progress-bar__tip::after {
  left: auto;
  right: 8px; }

.c-progress-bar__tip {
  display: none;
  position: absolute;
  padding: 15px;
  background-color: #ffffff;
  top: calc(-100% - 20px);
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 12px rgba(40, 40, 40, 0.1);
  border-radius: 5px;
  color: #707373;
  font-size: 11px;
  font-weight: bold;
  white-space: nowrap;
  border: 2px solid #dedede; }

.c-progress-bar__tip::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  transform: translateX(-50%) rotate(45deg);
  width: 12px;
  height: 12px;
  background-color: #ffffff;
  border-right: 2px solid #dedede;
  border-bottom: 2px solid #dedede;
  z-index: 0; }

.c-progress-bar__label {
  font-size: 11px;
  font-weight: bold;
  display: block;
  position: absolute;
  left: 50%;
  bottom: -25px;
  transform: translateX(-50%);
  color: #ababab; }

.c-progress-bar .is-active {
  background-color: #fad65f; }

.c-progress-bar .is-activity {
  animation: glow 1s infinite alternate; }

@keyframes glow {
  from {
    box-shadow: 0 0 3px -3px #fad65f; }
  to {
    box-shadow: 0 0 3px 3px #fad65f; } }

.c-progress-bar .tracker.step-1 ~ .is-active,
.c-progress-bar .tracker.step-last ~ .is-active {
  background-color: #90d8e2; }

.c-progress-bar .is-active .c-progress-bar__label {
  color: #087d87; }

.c-progress-bar .is-active .c-progress-bar__tip {
  display: block; }

.c-progress-bar .is-active ~ .c-progress-bar__circle strong {
  display: block; }

.c-progress-bar .is-active ~ .c-progress-bar__circle .o-icon {
  display: none; }

.c-progress-bar .is-active ~ .c-progress-bar__circle {
  background-color: #dedede; }

.c-progress-bar .tracker {
  position: absolute;
  width: calc(100% - 40px);
  height: 7px;
  background-color: #dedede;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.c-progress-bar .tracker.is-urgent {
  background-image: linear-gradient(to right, #c74a34 0%, transparent 10%); }

.c-progress-bar .tracker.step-1 {
  background-image: linear-gradient(to right, #90d8e2 0%, transparent 10%); }

.c-progress-bar .tracker.step-2 {
  background-image: linear-gradient(to right, #90d8e2 0%, #fad65f 35%, transparent 35%); }

.c-progress-bar .tracker.step-3 {
  background-image: linear-gradient(to right, #90d8e2 35%, #fad65f 67%, transparent 67%); }

.c-progress-bar .tracker.step-last {
  background-color: #90d8e2; }

.c-progress-bar .is-urgent ~ .is-active {
  background-color: #c74a34; }

.c-progress-bar .is-urgent ~ .is-active .c-progress-bar__label {
  color: #c74a34; }

.c-progress-bar-bg {
  position: absolute;
  left: -2px;
  top: -2px;
  min-width: calc(100% + 4px);
  display: flex;
  justify-content: space-between;
  width: 100%;
  z-index: 0; }

.c-progress-bar-bg *,
.c-progress-bar-bg::before {
  box-sizing: unset; }

.c-progress-bar-bg::before {
  content: "";
  position: absolute;
  width: calc(100% - 40px);
  height: 7px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 2px solid #ffffff;
  box-shadow: 0 0 4px rgba(40, 40, 40, 0.2);
  z-index: 0; }

.c-progress-bar-bg span {
  width: 45px;
  height: 45px;
  display: block;
  border: 2px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 0 4px rgba(40, 40, 40, 0.2);
  position: relative;
  z-index: 5; }

.c-star-selected {
  color: #fad65f;
  text-shadow: #282828; }

.c-star-container .c-star {
  cursor: pointer;
  font-family: "HCo Operator SSm", monaco, "Courier New", "Courier", monospace;
  font-size: var(--font-size-l, 24px); }

.c-star-current-selection {
  color: #707373; }

@media (min-width: 501px) {
  .rating {
    display: flex;
    justify-content: flex-end;
    align-items: center; } }

.thumbs-up svg,
.thumbs-down svg {
  fill: #c0c1c5;
  color: #ffffff; }

.thumbs-up.is-active svg {
  fill: #427442;
  color: #61a561; }

.thumbs-down.is-active svg {
  fill: #c74a34;
  color: #f5a694; }

.inner-fill {
  fill: currentColor; }

/******** Error Message ********/
@keyframes shake {
  0% {
    transform: rotate(5deg); }
  25% {
    transform: rotate(-5deg); }
  50% {
    transform: rotate(15deg); }
  75% {
    transform: rotate(-5deg); }
  100% {
    transform: rotate(0deg); } }

.ask-question,
.ask-topic {
  position: relative; }

.ask-question.flex-mobile {
  display: inline-block; }
  @media (max-width: 500px) {
    .ask-question.flex-mobile {
      display: flex;
      align-items: baseline; } }

.ask-question .ask-error-message {
  bottom: 0; }

.ask-topic .ask-error-message {
  bottom: -50px; }

.ask-error-message {
  position: absolute;
  z-index: 1000;
  background-color: #fad3ca;
  padding: 2px 10px 10px;
  color: #7e1b0c;
  font-weight: bold;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05);
  animation: shake 0.3s; }

@media (max-width: 500px) {
  .ask-error-message p {
    font-size: 14px; } }

.arrow-up {
  position: relative;
  bottom: 13px;
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 14px solid #fad3ca; }

/*------------------------------------*\
        $PAGE SECTIONS
\*------------------------------------*/
.o-section {
  position: relative;
  z-index: 1;
  overflow: hidden; }
  .o-section--with-padding {
    padding-top: 20px;
    padding-bottom: 20px; }

@media (max-width: 1024px) {
  [class*="u-background-color"].o-section--with-padding {
    padding-bottom: 40px; } }

.c-section-header {
  text-align: center;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto; }
  .c-section-header__image {
    margin: 0 auto 10px auto; }
  @media (max-width: 1024px) {
    .c-section-header__dek {
      font-size: 14px; } }
  .c-section-header__dek a {
    color: #282828; }
  .c-section-header__dek a:hover {
    text-decoration: underline; }
  .c-section-header__kicker {
    display: block; }
  @media (max-width: 500px) {
    .c-section-header--with-image {
      width: 100%;
      display: flex;
      align-items: flex-start;
      justify-content: flex-start;
      text-align: left; }
      .c-section-header--with-image .c-section-header__image {
        margin: 0 15px 0 0; } }
  .c-section-header--skinny {
    max-width: 550px; }

.c-section-header.with-padding {
  padding-top: 30px;
  padding-bottom: 30px; }

.c-section-header.with-no-bottom-padding {
  padding-bottom: 0; }
  @media (min-width: 1025px) {
    .c-section-header.with-no-bottom-padding {
      padding-bottom: 0; } }

.c-section-header__link {
  font-size: 14px;
  padding-left: 10px; }
  @media (max-width: 1024px) {
    .c-section-header__link {
      padding-left: 0; } }

.c-page-header__cta {
  position: initial;
  white-space: nowrap;
  margin-left: 20px; }
  @media (max-width: 1439px) {
    .c-page-header__cta {
      margin-right: 20px; } }

.c-page-header__nav {
  max-width: 100vw; }

.c-page-header .o-ad--leaderboard {
  margin-bottom: 20px;
  max-width: 100vw; }

/**
 * Page headers
 */
.c-page-intro--with-secondary-nav {
  padding-bottom: 65px;
  margin-bottom: -50px; }
  @media (min-width: 1025px) {
    .c-page-intro--with-secondary-nav {
      padding-bottom: 70px; } }
  @media (min-width: 1025px) {
    .c-page-intro--with-secondary-nav {
      margin-bottom: 0;
      padding-bottom: 85px; } }

.c-page-intro--with-overlap .c-page-header {
  padding-bottom: 90px; }
  @media (min-width: 1025px) {
    .c-page-intro--with-overlap .c-page-header {
      padding-bottom: 120px; } }
  @media (min-width: 1441px) {
    .c-page-intro--with-overlap .c-page-header {
      padding-bottom: 140px; } }

.c-page-intro--with-overlap .c-page-intro--lower {
  position: relative;
  margin-top: -60px;
  z-index: 10; }
  @media (min-width: 1025px) {
    .c-page-intro--with-overlap .c-page-intro--lower {
      margin-top: -80px; } }

@media (min-width: 1441px) {
  .c-page-intro--with-overlap--lg .c-page-header {
    padding-bottom: 180px; } }

@media (min-width: 1441px) {
  .c-page-intro--with-overlap--lg .c-page-intro--lower {
    margin-top: -150px; } }

.c-page-intro.no-subnav {
  padding-bottom: 20px;
  margin-bottom: -20px; }
  @media (min-width: 1025px) {
    .c-page-intro.no-subnav {
      padding-bottom: 40px;
      margin-bottom: 0; } }

.has-hero-section .hero-section {
  margin-top: -20px; }
  @media (max-width: 1023px) {
    .has-hero-section .hero-section {
      margin-top: 10px; } }

/*
 * Pseudo Element Textures
 *
 * This is primarily used to apply the end of page fade for the right side of elements.
 */
.c-page-header::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 30px;
  height: 100%;
  pointer-events: none;
  background-image: linear-gradient(to right, rgba(250, 248, 245, 0), rgba(250, 248, 245, 0.8)); }

/**
 * Basic page sections
 */
.c-basic-header {
  margin: 40px 0 100px; }
  @media (min-width: 1025px) {
    .c-basic-header {
      margin: 80px 0; } }
  @media (min-width: 1025px) {
    .c-basic-header {
      margin: 100px 0 150px; } }

@media (min-width: 1025px) {
  .c-basic-section {
    padding-top: 80px;
    padding-bottom: 40px; } }

.c-basic-section.has-texture {
  padding-bottom: 120px; }
  @media (min-width: 1025px) {
    .c-basic-section.has-texture {
      padding-bottom: 180px; } }

.c-basic-section--with-overlap {
  position: relative;
  z-index: 0;
  padding-top: 60px;
  padding-bottom: 40px;
  margin-top: -100px; }
  @media (min-width: 769px) {
    .c-basic-section--with-overlap {
      padding-top: 200px;
      margin-top: -155px; } }

.c-basic-section--with-graphic {
  background-image: url("/images/main/illustrations/illo-swirly-arrow.svg");
  background-size: 130px auto;
  background-position: calc(50% - 650px) 170px;
  background-repeat: no-repeat; }

.c-basic-image-section {
  text-align: center;
  position: relative;
  z-index: 10; }
  .c-basic-image-section--with-overlap {
    margin-top: -80px; }
    @media (min-width: 1025px) {
      .c-basic-image-section--with-overlap {
        margin-top: -130px;
        margin-bottom: 100px; } }
  .c-basic-image-section img {
    margin: 0 auto; }

.has-remove-button::before {
  content: "\2715";
  position: absolute;
  right: 0;
  top: -7px;
  background: #dedede;
  padding: 2px 5px;
  border-radius: 50%;
  cursor: pointer;
  font-size: 11px; }

/**
 * Header Nav
 */
.header-nav .c-section-header {
  text-align: left;
  max-width: initial;
  margin-right: 0;
  display: flex;
  align-items: center;
  padding-left: 20px; }
  @media (max-width: 499px) {
    .header-nav .c-section-header {
      align-items: flex-start; } }

.header-nav .c-section-header__image {
  margin: 0 20px 0 0; }
  @media (max-width: 1023px) {
    .header-nav .c-section-header__image {
      margin-right: 15px; } }

.header-nav .c-section-header__dek {
  padding-left: 2px; }

.wrapper {
  max-width: 1135px; }

/**
 * Call to Action section
 */
.c-cta-section--set-width {
  max-width: 700px;
  padding-bottom: 20px; }

.c-cta-section .c-cta-section__title {
  margin: 0 auto;
  max-width: 590px;
  padding: 0; }

.c-cta-section .c-cta-section__text * {
  font-size: 16px; }

.c-cta-section .o-block__media {
  border-radius: 0;
  margin: 0 auto 20px; }

.c-cta-section .o-check-list li {
  padding-left: 34px;
  margin-bottom: 20px;
  font-size: 16px; }

.c-cta-section .o-check-list li::before {
  display: none; }

.c-cta-section .c-cta-section__link {
  font-size: 14px; }

.c-cta-section--with-border, .c-cta-section--with-blue-border {
  border: 6px solid #f9e8de;
  padding: 40px;
  margin: 40px auto;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05); }

.c-cta-section--with-blue-border {
  border-color: #ebf3f5; }

@media (max-width: 500px) {
  .c-cta-download {
    padding: 30px; } }

.c-cta-download .c-cta-section--wrapper {
  display: flex;
  justify-content: center; }

.c-cta-download .o-block__media {
  margin: 0 15px 0 0; }

.c-cta-download .c-cta-section__title {
  align-self: center;
  text-align: left;
  margin: 0; }

/**
 * Recent Activity blocks
 */
.recent-activity {
  background-color: #ffffff;
  border-radius: 2px;
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05);
  padding: 20px; }
  @media (min-width: 769px) {
    .recent-activity {
      padding: 30px; } }

.recent-activity .item {
  border-top: 1px solid #dedede;
  padding: 20px 0 20px;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: space-between; }

.more-button,
.recent-activity .item:nth-child(n+6) {
  display: none; }

.recent-activity .item:nth-child(n+6) ~ .more-button {
  display: block; }

.recent-activity.this-is-active .item {
  display: flex; }

.recent-activity.this-is-active .toggle .o-icon {
  transform: rotate(180deg); }

/**
 * Callout (copy left/right and image left/right)
 */
.c-callout__media {
  text-align: center; }
  .c-callout__media img {
    width: 100%;
    max-width: 450px; }
    @media (max-width: 768px) {
      .c-callout__media img {
        max-width: 70%;
        margin-left: 0; } }

/**
 * Apply curly arrow illustration to this section
 */
.c-answer-carousel .o-carousel-section__inner {
  position: relative; }
  .c-answer-carousel .o-carousel-section__inner::before {
    content: "";
    background-image: url("/images/main/illustrations/illo-curly-arrow.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left top;
    position: absolute;
    left: -50px;
    top: 0;
    height: 115%;
    width: 33.5%;
    z-index: 0; }
    @media (max-width: 1024px) {
      .c-answer-carousel .o-carousel-section__inner::before {
        display: none; } }
    @media (max-width: 1440px) {
      .c-answer-carousel .o-carousel-section__inner::before {
        top: 50px; } }

/**
 * Aside stats
 */
@media (min-width: 501px) and (max-width: 1024px) {
  .c-aside-stats {
    display: grid;
    grid-template-rows: auto;
    grid-column-gap: 20px;
    row-gap: 20px;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 80px; }
    .c-aside-stats > * {
      margin-top: 0; } }

@media (max-width: 500px) {
  .c-invoice--mobile--padding {
    padding-top: 10px; } }

.c-invoice__block {
  display: flex;
  justify-content: space-between;
  align-items: center; }
  @media (max-width: 500px) {
    .c-invoice__block {
      display: block; } }

@media (max-width: 768px) {
  .c-application__example--mobile-padding {
    padding-left: 25px; } }

.c-application__example--border {
  border-right: 6px solid #dedede;
  padding-right: 65px;
  margin-right: 30px; }
  @media (max-width: 768px) {
    .c-application__example--border {
      border-right: transparent;
      border-left: 6px solid #282828;
      padding-left: 20px;
      padding-right: 0;
      margin-right: 0; } }

.c-application__example--vertical {
  margin-top: auto;
  margin-bottom: auto; }

.c-profile-pic {
  display: flex; }
  @media (max-width: 500px) {
    .c-profile-pic {
      display: block; } }
  @media (max-width: 500px) {
    .c-profile-pic--padding-mobile {
      margin-bottom: 20px; } }

.c-modal {
  width: 750px;
  max-width: 100%;
  max-height: 100%;
  z-index: 10000;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  @media (max-width: 768px) {
    .c-modal {
      height: 100%;
      width: 100%;
      left: 0;
      top: 0;
      transform: none; } }
  .c-modal__container--top {
    padding: 60px 60px 40px 60px; }
    @media (max-width: 768px) {
      .c-modal__container--top {
        padding: 30px 30px 20px 30px; } }
  .c-modal__container--bottom {
    padding: 40px 60px 60px 60px;
    border-top: 1px dashed #dedede; }
    @media (max-width: 768px) {
      .c-modal__container--bottom {
        padding: 20px 30px 30px 30px; } }
  .c-modal__images {
    max-height: 700px;
    max-width: 545px; }
  .c-modal__btn--close {
    position: absolute;
    width: 23px;
    right: 40px;
    top: 35px; }
  .c-modal--wrapper {
    position: relative; }
  .c-modal--overlay {
    width: 100%;
    height: 100%;
    z-index: 200;
    /* places the modal overlay between the main page and the modal dialog*/
    background-color: #faf8f5;
    opacity: 0.9;
    position: fixed;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0; }
  .c-modal--scroll {
    max-height: calc(100vh - 485px);
    overflow-y: auto; }
    @media (max-width: 768px) {
      .c-modal--scroll {
        max-height: calc(100vh - 290px); } }

.c-modal .scroll {
  max-height: calc(100vh - 300px);
  overflow-y: auto;
  word-break: break-word; }

.c-modal .js-sliding-container {
  min-height: 300px;
  opacity: 0;
  max-height: 0;
  transition: all 0.8s ease-in; }

.c-modal .js-sliding-container.animate {
  opacity: 1;
  max-height: 500px; }

.c-modal .js-progress {
  min-height: 30px;
  opacity: 0;
  max-height: 0;
  transition: all 0.8s ease-in; }

.c-modal .js-progress.animate {
  opacity: 1;
  max-height: 3px; }

.c-modal--with-list .title {
  padding: 60px 60px 30px 60px; }
  @media (max-width: 768px) {
    .c-modal--with-list .title {
      padding: 60px 30px 20px 30px; } }

.c-modal--with-list .list {
  padding: 0 60px 0 60px; }
  @media (max-width: 768px) {
    .c-modal--with-list .list {
      padding: 0 30px 0 30px; } }

.c-modal--with-list .button {
  padding: 30px 0 30px 0; }

.c-modal--overlay.light {
  opacity: 0.7; }

.c-modal--overlay.dark {
  opacity: 0.98; }

.c-book {
  display: flex; }
  .c-book__img {
    padding-right: 30px;
    text-align: center;
    min-width: 175px; }
    @media (max-width: 500px) {
      .c-book__img {
        padding-right: 20px;
        min-width: auto;
        width: 175px; } }

.c-book img {
  margin-bottom: 20px;
  box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2); }
  @media (max-width: 500px) {
    .c-book img {
      margin-bottom: 10px; } }

@media (max-width: 500px) {
  .c-book .o-button {
    padding: 20px 10px;
    width: 100%; } }

.checkout .item-review + .form {
  grid-row: 1 / 4; }
  @media (max-width: 1024px) {
    .checkout .item-review + .form {
      grid-row: 2; } }

.checkout .item-review {
  margin-top: 60px;
  grid-row: 1; }
  @media (max-width: 1024px) {
    .checkout .item-review {
      margin-top: 0; } }

.checkout .item-review + .aside {
  grid-row: 2; }
  @media (max-width: 1024px) {
    .checkout .item-review + .aside {
      grid-row: 3; } }

.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0; }

.breadcrumbs ul {
  padding: 0;
  margin: 0;
  list-style: none; }

.breadcrumbs li {
  display: inline; }

.breadcrumbs li a:hover {
  text-decoration: underline; }

.breadcrumbs li::after {
  content: ">"; }

.breadcrumbs li:last-child::after {
  content: ""; }

.breadcrumbs li:last-child {
  font-weight: bold; }

.essay-outline-text {
  line-height: 1.77;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif;
  font-size: var(--font-size-s, 18px); }

.essay-outline-text.essay-outline-text ol {
  list-style-position: outside; }

.essay-outline-text.essay-outline-text > ol {
  list-style-type: upper-roman; }

.essay-outline-text.essay-outline-text > ol li {
  margin-left: 10px;
  margin-bottom: 30px; }
  @media (min-width: 769px) {
    .essay-outline-text.essay-outline-text > ol li {
      margin-left: 20px; } }

.essay-outline-text.essay-outline-text > ol ol {
  list-style-type: upper-latin;
  margin-top: 10px;
  margin-bottom: 30px; }

.essay-outline-text.essay-outline-text > ol ol li {
  margin-left: 20px;
  margin-bottom: 10px; }
  @media (min-width: 769px) {
    .essay-outline-text.essay-outline-text > ol ol li {
      margin-left: 40px; } }

/*------------------------------------*\
        $VENDORS
\*------------------------------------*/
/*------------------------------------*\
        $SLICK SLIDER
\*------------------------------------*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  user-select: none;
  -webkit-touch-callout: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0; }

.slick-list:focus {
  outline: none; }

.slick-list.dragging {
  cursor: pointer;
  cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: 0;
  margin-right: auto; }

.slick-track::before,
.slick-track::after {
  display: table;
  content: ""; }

.slick-track::after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir="rtl"] .slick-slide {
  float: right; }

.slick-slide img {
  display: block; }

.slick-slide.slick-loading img {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.o-carousel--single .generated-math-img {
  display: inline !important; }

.o-rte .mce-path > .mce-path-item,
.o-rte .mce-path > .mce-divider,
.o-rte .mce-branding {
  display: none; }

.o-rte .mce-wordcount {
  position: relative;
  padding: 10px 0;
  font-family: "HCo Ideal Sans SSm", verdana, sans-serif; }

.o-rte .mce-edit-area {
  min-height: 210px;
  border-color: #c0c1c5 !important; }

.o-rte .mce-tinymce {
  background: transparent;
  border: transparent; }

.o-rte .mce-statusbar {
  background: transparent; }

.o-rte .mce-toolbar-grp {
  border: 1px solid #c0c1c5;
  background-color: #f0f0f0;
  display: flex;
  justify-content: flex-end; }
  @media (min-width: 769px) {
    .o-rte .mce-toolbar-grp {
      padding: 15px; } }

.o-rte #mceu_15-body {
  white-space: initial;
  text-align: end; }

.o-rte iframe {
  min-height: 195px !important; }

@font-face {
  font-family: 'groot';
  src: url("fonts/groot.ttf?h0rh6b") format("truetype"), url("fonts/groot.woff?h0rh6b") format("woff"), url("fonts/groot.svg?h0rh6b#groot") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="groot-icon-"], [class*=" groot-icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'groot' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.groot-icon-cog:before {
  content: ""; }

.groot-icon-menu:before {
  content: ""; }

.groot-icon-menu-down:before {
  content: ""; }

.groot-icon-menu-up:before {
  content: ""; }

.groot-icon-plus:before {
  content: ""; }

.groot-icon-minus:before {
  content: ""; }

.groot-icon-cancel-circle:before {
  content: ""; }

.groot-icon-circle-up:before {
  content: ""; }

.groot-icon-circle-down:before {
  content: ""; }

.groot-tree {
  position: relative;
  padding: 0 0 0 1.1em;
  font-size: 0.8rem; }
  .groot-tree .groot-tree {
    margin-top: 0;
    margin-bottom: 0; }

.groot-leaf {
  position: relative;
  list-style: none;
  margin: 0; }
  .groot-leaf .groot-icon {
    cursor: pointer;
    color: rgba(0, 0, 0, 0.4); }
    .groot-leaf .groot-icon.disabled {
      cursor: not-allowed;
      color: rgba(0, 0, 0, 0.1); }
  .groot-leaf__toggle {
    position: absolute;
    top: 0;
    left: 0; }
  .groot-leaf__up {
    position: absolute;
    top: 0;
    left: 1.1em; }
  .groot-leaf__down {
    position: absolute;
    top: 0;
    left: 2.2em; }
  .groot-leaf__label {
    display: block;
    padding: 0 1.1em 0 3.3em;
    font-weight: bold;
    text-decoration: none;
    cursor: pointer; }
  .groot-leaf.active .groot-leaf__label {
    color: #1f1f1f; }
  .groot-leaf.inactive .groot-leaf__label {
    color: rgba(0, 0, 0, 0.4); }
  .groot-leaf__label.drag-target {
    background-color: #ffcc89; }
  .groot-leaf__label:hover {
    background-color: #ffcc89; }
  .groot-leaf__menu {
    position: absolute;
    top: 0;
    right: 0; }
  .groot-leaf__label-field {
    position: relative;
    width: 95%;
    padding: 0.3rem; }

.groot-menu-container {
  display: none; }

.groot-menu {
  position: absolute;
  left: 0;
  width: 90%;
  margin: 0 auto;
  padding: 0.5rem;
  background-color: #fff;
  border: 1px solid #1f1f1f;
  box-shadow: 1px 1px 5px #2e3336;
  z-index: 999; }
  .groot-menu__item {
    list-style: none;
    margin: 0; }
  .groot-menu__label {
    color: #1f1f1f;
    font-weight: bold;
    text-decoration: none;
    cursor: pointer; }
  .groot-menu__label:hover {
    background-color: #ffcc89; }
  .groot-menu__close {
    cursor: pointer; }

.groot-tree {
  width: 100%;
  padding: 0 0 0 18px;
  font-size: var(--font-size-s, 18px); }

.groot-leaf .groot-icon {
  padding-top: 0.4rem; }

.groot-leaf__up {
  left: 18px; }

.groot-leaf__down {
  left: 36px; }

.groot-leaf__label {
  padding: 0 18px 0 54px; }

.groot-leaf__label.drag-target {
  background-color: #dedede; }

.groot-leaf__label:hover {
  background-color: #dedede; }

.groot-leaf__label-field {
  width: 100%;
  max-height: var(--font-size-s, 18px); }

.groot-menu {
  background-color: #ffffff;
  border: 1px solid #282828;
  box-shadow: transparent; }
  .groot-menu__label {
    color: #282828; }

.google-button--wrapper #___savetodrive_0,
.google-button--wrapper iframe,
.google-button--wrapper {
  width: 90px !important; }

.google-button {
  position: absolute;
  top: 0;
  pointer-events: none; }

/*------------------------------------*\
        $TRUMPS
\*------------------------------------*/
/*------------------------------------*\
        $HELPER/TRUMP CLASSES
\*------------------------------------*/
/*
 * Remove once admin pages are moved over.
 *
 * This is a temporary class to fix overflowing
 * admin content.
 */
.u-horizontal-scroll {
  overflow-x: scroll; }

/**
 * Completely remove from the flow but leave available to screen readers.
 */
.is-vishidden,
.visually-hidden {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  padding: 0;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px); }

/**
 * Hide elements only present and necessary for js enabled browsers.
 */
.no-js .no-js-hide {
  display: none; }

/**
 * Misc
 */
.u-full-width {
  width: 100%; }

.u-width-inherit {
  width: inherit; }

.u-no-wrap {
  white-space: nowrap; }

.u-rounded {
  border-radius: 50%; }

.u-not-round {
  border-radius: 0; }

.u-strike, .u-strike--gray {
  position: relative;
  display: inline-block; }
  .u-strike::after, .u-strike--gray::after {
    content: "";
    position: absolute;
    top: calc(50% - 1px);
    left: -2px;
    width: calc(100% + 4px);
    height: 3px;
    background-color: #c74a34;
    border-radius: 2px; }
  .u-strike--gray::after {
    top: calc(50%);
    height: 2px;
    background-color: #707373; }

.u-position-relative {
  position: relative; }

.u-height-fit-content {
  height: fit-content; }

.u-width-fit-content {
  width: fit-content; }

/**
 * Center block
 */
.u-center-block {
  margin-left: auto;
  margin-right: auto; }

@media (min-width: 501px) {
  .u-vertically-inline {
    display: flex;
    align-items: center; }
    .u-vertically-inline > * + * {
      margin-left: 20px; } }

.u-reversed-out {
  color: #ffffff; }
  .u-reversed-out p,
  .u-reversed-out h1 a,
  .u-reversed-out h2 a,
  .u-reversed-out h3 a {
    color: #ffffff; }

/**
 * Remove all margins/padding
 */
.u-no-spacing {
  padding: 0;
  margin: 0; }

/**
 * Active on/off states
 */
.u-active--off {
  display: none; }

[class*="-is-active"].js-toggle-parent .u-active--on,
[class*="-is-active"].js-toggle .u-active--on {
  display: none; }

[class*="-is-active"].js-toggle-parent .u-active--off,
[class*="-is-active"].js-toggle .u-active--off {
  display: inline-block; }

[class*="-is-active"] .u-hide-on-active {
  display: none; }

/**
 * Breakout content
 */
.u-breakout {
  margin-right: -20px;
  margin-left: -20px; }
  @media (min-width: 1441px) {
    .u-breakout {
      margin-left: -40px;
      margin-right: -40px; } }

/**
 * Justify left/right content
 */
.u-split-content {
  display: flex;
  flex-flow: column-reverse wrap;
  justify-content: flex-end; }
  .u-split-content > * + * {
    margin-bottom: 30px; }
  @media (min-width: 501px) {
    .u-split-content {
      justify-content: space-between;
      align-items: flex-start;
      flex-flow: initial; } }

.u-border {
  border-top: 1px solid #dedede; }

.u-border--gray {
  border: 2px solid #f0f0f0; }

.u-border--dotted {
  border-top: 1px dashed #dedede; }

.u-border-bottom--dotted {
  border-bottom: 1px dashed #dedede; }

hr.u-border--dotted {
  height: 0;
  background-color: transparent; }

.u-border--none {
  border: none; }

.with-beach-border {
  border: 6px solid #f9e8de;
  border-color: #f5f2eb; }

.u-box-shadow {
  box-shadow: 0 4px 12px rgba(40, 40, 40, 0.05); }

.u-box-shadow--thick {
  box-shadow: 0 8px 24px rgba(40, 40, 40, 0.2); }

.u-border-radius {
  border-radius: 2px; }

.u-padding-20 {
  padding: 20px; }

/**
 * Sticky things
 */
@media (min-width: 769px) {
  .is-sticky {
    position: sticky;
    top: 40px; } }

/**
 * Illustrations & Textures
 */
.has-corner-illo {
  background-image: url("/images/main/illustrations/illo-corner-pattern.png");
  background-repeat: no-repeat; }
  .has-corner-illo--top-right {
    background-position: top right; }
  .has-corner-illo--person-writing, .has-corner-illo--teacher-grading {
    background-image: none; }
    @media (min-width: 769px) {
      .has-corner-illo--person-writing, .has-corner-illo--teacher-grading {
        background-size: 150px auto; } }
    @media (min-width: 1025px) {
      .has-corner-illo--person-writing, .has-corner-illo--teacher-grading {
        background-size: 240px auto; } }
    @media (min-width: 1441px) {
      .has-corner-illo--person-writing, .has-corner-illo--teacher-grading {
        background-size: 400px auto; } }
  @media (min-width: 769px) {
    .has-corner-illo--person-writing {
      background-image: url("/images/main/illustrations/illo-person-writing.png"); } }
  @media (min-width: 769px) {
    .has-corner-illo--teacher-grading {
      background-image: url("/images/main/illustrations/teacher-grading.png"); } }
  .has-corner-illo--students {
    background-image: url("/images/main/illustrations/students-2.png");
    background-position: top -2px right -2px; }
    @media (max-width: 1023px) {
      .has-corner-illo--students {
        background-image: none; } }
    @media (min-width: 1025px) {
      .has-corner-illo--students {
        background-size: 240px auto; } }
    @media (min-width: 1441px) {
      .has-corner-illo--students {
        background-size: 350px auto; } }

.has-texture {
  background-image: url("/images/main/texture-beach-light.svg"), linear-gradient(#faf8f5 95%, transparent 20px);
  background-repeat: repeat-x, repeat;
  background-position: center bottom -1px, center top;
  background-size: 1302px, auto; }
  .has-texture--long {
    background-image: url("/images/main/texture-beach-light.svg"), linear-gradient(#faf8f5 99%, transparent 20px);
    background-repeat: repeat-x, repeat;
    background-position: center bottom -1px, center top;
    background-size: 1302px, auto; }
  .has-texture--beach {
    background-image: url("/images/main/texture-beach.svg"), linear-gradient(#f5f2eb 95%, transparent 20px); }
  .has-texture--top {
    position: relative; }
    .has-texture--top::before {
      content: "";
      position: absolute;
      top: -59px;
      left: 0;
      width: 100vw;
      height: 60px;
      background-image: url("/images/main/texture-beach-light.svg");
      background-repeat: repeat-x;
      background-position: center top -1px;
      background-size: 1305px;
      transform: rotate(180deg); }

.u-fancy-underline {
  position: relative;
  z-index: 1;
  line-height: 1.4;
  display: inline-block; }
  .u-fancy-underline::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.2em;
    width: 100%;
    height: 20px;
    background-image: url("/images/main/illustrations/illo-underline.svg");
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: 100% auto;
    z-index: -1; }

/*
 * TODO-HOTFIX: This is a simple fix for now.
 *
 * When we have long fancy lines, we need a way
 * to break up the line on mobile.
 * Solution is to wrap smaller text with class
 * and have them 'appear' as one line on desktop
 * but broken up on mobile.
 */
.u-fancy-underline + .u-fancy-underline::after {
  left: -20px;
  width: 115%; }
  @media (max-width: 500px) {
    .u-fancy-underline + .u-fancy-underline::after {
      left: 0;
      width: 100%; } }

/**
 * Accordions
 */
.o-accordion.this-is-active .o-accordion__content {
  display: block; }

.o-accordion.this-is-active .o-accordion__icon {
  transform: rotate(180deg); }

.o-accordion__trigger {
  cursor: pointer; }

.o-accordion__icon {
  transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1); }

.o-accordion__content {
  display: none; }

.u-align-right {
  margin-left: auto; }

.hidden {
  display: none; }

.visibility-hidden {
  visibility: hidden; }

/**
 * jquery ui greybox styling
 */
#GB_window {
  background: #ffffff;
  overflow: hidden; }

#GB_frame {
  width: 100%;
  height: 100%; }

#GB_window img#GB_loader {
  display: block;
  width: 100px;
  margin: 20px auto; }

/**
 * used to remove an outline
 */
.u-no-outline {
  outline: none; }

.u-z-index--100 {
  z-index: 10000 !important; }

.u-float-right {
  float: right; }

.u-float-left {
  float: left; }

.u-blur {
  color: transparent;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
  filter: blur(4px);
  user-select: none;
  pointer-events: none;
  cursor: default; }

.u-ghost {
  opacity: 0.5;
  background-color: #dee9ec; }

/*# sourceMappingURL=main.css.map */