/* Theme base styles */

/* Settings
This is where most settings/variables go.
*/




html {
  
  --c-regal-blue: #003A70; /* Dark Blue */
  --c-horizon: #5B7E96; /* Tealish */
  --c-supernova: #FFCD00; /* Lightest Orange */
  --c-web-orange: #F5A800; /* Middle Orange */
  --c-mango-tango: #D77900; /* darkest Orange */
  --c-mine-shaft: #3C3C3E;
  --c-ship-gray: #414042;
  --c-ghost: #C4CCD5;
  --c-athens-gray: #DFE2E7;

  --primary-color: var(--c-regal-blue);

  --font-family-raleway: 'Raleway', sans-serif;
  

  --global-font-size: 1.9rem;
  --global-lineheight: 1.842;
  --body-background: white;
  --body-font-color: var(--c-mine-shaft);
  --body-font-family: var(--font-family-raleway);
  --global-weight-normal: 400;
  --global-weight-bold: 700;
  --global-radius: 0;

  /* --gutters: 3rem; */
  --container-width: 140rem;
  --container-padding: 2rem;
}

/* Tools
Any animations, or functions used throughout the project.
Note: _macros.css needs to be imported into each stylesheet where macros are used and not included here
*/



/* Basic hiding classes */
.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

/* Screen reader visibility classes */
/* Need a "hide-for-sr" class? Add aria-hidden='true' to the element */
.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

/* Only display the element when it's focused */
.show-on-focus:active,
.show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

/* Landscape and portrait visibility */
.show-for-landscape,
.hide-for-portrait {
  display: block !important;
}

@media screen and (orientation: landscape) {
  .show-for-landscape,
  .hide-for-portrait {
    display: block !important;
  }
}

@media screen and (orientation: portrait) {
  .show-for-landscape,
  .hide-for-portrait {
    display: none !important;
  }
}

.hide-for-landscape,
.show-for-portrait {
  display: none !important;
}

@media screen and (orientation: landscape) {
  .hide-for-landscape,
  .show-for-portrait {
    display: none !important;
  }
}

@media screen and (orientation: portrait) {
  .hide-for-landscape,
  .show-for-portrait {
    display: block !important;
  }
}

/* Responsive visibility classes */
@media screen and (max-width:575px) {
  .hide-for-xs-only {
    display: none !important;
  }
}

@media screen and (max-width:0), screen and (min-width:576px) {
  .show-for-xs-only {
    display: none !important;
  }
}

@media print, screen and (min-width:576px) {
  .hide-for-sm {
    display: none !important;
  }
}

@media screen and (max-width:575px) {
  .show-for-sm {
    display: none !important;
  }
}

@media screen and (min-width:576px) and (max-width:767px) {
  .hide-for-sm-only {
    display: none !important;
  }
}

@media screen and (max-width:575px), screen and (min-width:768px) {
  .show-for-sm-only {
    display: none !important;
  }
}

@media print, screen and (min-width:768px) {
  .hide-for-md {
    display: none !important;
  }
}

@media screen and (max-width:767px) {
  .show-for-md {
    display: none !important;
  }
}

@media screen and (min-width:768px) and (max-width:991px) {
  .hide-for-md-only {
    display: none !important;
  }
}

@media screen and (max-width:767px), screen and (min-width:992px) {
  .show-for-md-only {
    display: none !important;
  }
}

@media print, screen and (min-width:992px) {
  .hide-for-lg {
    display: none !important;
  }
}

@media screen and (max-width:991px) {
  .show-for-lg {
    display: none !important;
  }
}

@media screen and (min-width:992px) and (max-width:1199px) {
  .hide-for-lg-only {
    display: none !important;
  }
}

@media screen and (max-width:991px), screen and (min-width:1200px) {
  .show-for-lg-only {
    display: none !important;
  }
}

@media print, screen and (min-width:1200px) {
  .hide-for-xl {
    display: none !important;
  }
}

@media screen and (max-width:1199px) {
  .show-for-xl {
    display: none !important;
  }
}

@media screen and (min-width:1200px) and (max-width:1439px) {
  .hide-for-xl-only {
    display: none !important;
  }
}

@media screen and (max-width:1199px), screen and (min-width:1440px) {
  .show-for-xl-only {
    display: none !important;
  }
}

@media print, screen and (min-width:1440px) {
  .hide-for-xxl {
    display: none !important;
  }
}

@media screen and (max-width:1439px) {
  .show-for-xxl {
    display: none !important;
  }
}


/* Alignment */
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}

@media print, screen and (min-width:576px) {
  .text-sm-left {
    text-align: left;
  }
  .text-sm-right {
    text-align: right;
  }
  .text-sm-center {
    text-align: center;
  }
  .text-sm-justify {
    text-align: justify;
  }
}

@media print, screen and (min-width:768px) {
  .text-md-left {
    text-align: left;
  }
  .text-md-right {
    text-align: right;
  }
  .text-md-center {
    text-align: center;
  }
  .text-md-justify {
    text-align: justify;
  }
}

@media print, screen and (min-width:992px) {
  .text-lg-left {
    text-align: left;
  }
  .text-lg-right {
    text-align: right;
  }
  .text-lg-center {
    text-align: center;
  }
  .text-lg-justify {
    text-align: justify;
  }
}

@media print, screen and (min-width:1200px) {
  .text-xl-left {
    text-align: left;
  }
  .text-xl-right {
    text-align: right;
  }
  .text-xl-center {
    text-align: center;
  }
  .text-xl-justify {
    text-align: justify;
  }
}

@media print, screen and (min-width:1440px) {
  .text-xxl-left {
    text-align: left;
  }
  .text-xxl-right {
    text-align: right;
  }
  .text-xxl-center {
    text-align: center;
  }
  .text-xxl-justify {
    text-align: justify;
  }
}

/* Other */
.text-capitalize {
  text-transform: capitalize;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-wrap {
  word-wrap: break-word !important;
}
/* Spacing */

.mt-0 {
  margin-top: 0 !important;
}
.mt-1 {
  margin-top: 2rem !important;
}
.mt-2 {
  margin-top: 4rem !important;
}
.mt-3 {
  margin-top: 6rem !important;
}
.mt-4 {
  margin-top: 8rem !important;
}
.mt-5 {
  margin-top: 10rem !important;
}
.mt-6 {
  margin-top: 12rem !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}
.mb-1 {
  margin-bottom: 2rem !important;
}
.mb-2 {
  margin-bottom: 4rem !important;
}
.mb-3 {
  margin-bottom: 6rem !important;
}
.mb-4 {
  margin-bottom: 8rem !important;
}
.mb-5 {
  margin-bottom: 10rem !important;
}
.mb-6 {
  margin-bottom: 12rem !important;
}

.pt-0 {
  padding-top: 0 !important;
}
.pt-1 {
  padding-top: 2rem !important;
}
.pt-2 {
  padding-top: 4rem !important;
}
.pt-3 {
  padding-top: 6rem !important;
}
.pt-4 {
  padding-top: 8rem !important;
}
.pt-5 {
  padding-top: 10rem !important;
}
.pt-6 {
  padding-top: 12rem !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}
.pb-1 {
  padding-bottom: 2rem !important;
}
.pb-2 {
  padding-bottom: 4rem !important;
}
.pb-3 {
  padding-bottom: 6rem !important;
}
.pb-4 {
  padding-bottom: 8rem !important;
}
.pb-5 {
  padding-bottom: 10rem !important;
}
.pb-6 {
  padding-bottom: 12rem !important;
}
/* Responsive embed container */
.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 75%;
  overflow: hidden;
}

.responsive-embed iframe,
.responsive-embed object,
.responsive-embed embed,
.responsive-embed video,
.flex-video iframe,
.flex-video object,
.flex-video embed,
.flex-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.responsive-embed.widescreen,
.flex-video.widescreen {
  padding-bottom: 56.25%;
}

.responsive-embed.portrait,
.flex-video.portrait {
  padding-bottom: 177.77%;
}

.responsive-embed.square,
.flex-video.square {
  padding-bottom: 100%;
}


/* <div class="breakpoint-indicator"></div> */

.breakpoint-indicator {
  background-color: #333;
  color: white;
  font-family: monospace;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1;
  padding: 0.6rem 1rem;
  border-radius: 0 0.5rem 0 0;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 10000;
}@media screen and (min-width: 0px) {
    .breakpoint-indicator:after {
      content: 'xs \003C 576px';
    }
  }@media screen and (min-width: 576px) {
    .breakpoint-indicator:after {
      content: 'sm \2265 576px';
    }
  }@media screen and (min-width: 768px) {
    .breakpoint-indicator:after {
      content: 'md \2265 768px';
    }
  }@media screen and (min-width: 992px) {
    .breakpoint-indicator:after {
      content: 'lg \2265 992px';
    }
  }@media screen and (min-width: 1200px) {
    .breakpoint-indicator:after {
      content: 'xl \2265 1200px';
    }
  }@media screen and (min-width: 1440px) {
    .breakpoint-indicator:after {
      content: 'xxl \2265 1440px';
    }
  }

/* Generic
This is where reset, normalize & box-sizing styles go.
*/

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

 html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}
html {
  box-sizing: border-box;
  font-size: 62.5%;
  scroll-behavior: smooth;
}

/* Set box-sizing globally to handle padding and border widths */
*,
*::before,
*::after {
  box-sizing: inherit;
}

/* Default body styles */
body {
  margin: 0;
  padding: 0;
  background: var(--body-background);
  font-family: var(--body-font-family);
  font-size: var(--global-font-size);
  font-weight: var(--global-weight-normal);
  line-height: var(--global-lineheight);
  color: var(--body-font-color);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  /* Get rid of gap under images by making them display: inline-block; by default */
  display: inline-block;
  vertical-align: middle;

  /* Grid defaults to get images and embeds to work properly */
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
}

/* Make sure textarea takes on height automatically */
textarea {
  height: auto;
  min-height: 5rem;
  border-radius: var(--global-radius);
}

/* Make select elements are 100% width by default */
select {
  box-sizing: border-box;
  width: 100%;
  border-radius: var(--global-radius);
}

/* Styles Google Maps and MapQuest embeds properly */
.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important;
}

/* Reset <button> styles created by most browsers */
button {
  padding: 0;
  appearance: none;
  border: 0;
  border-radius: var(--global-radius);
  background: transparent;
  line-height: 1;
  cursor: auto;
}

/* Prevent text overflow on pre */
pre {
  overflow: auto;
}

/* Make reset inherit font-family instead of settings sans-serif */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
}

/* Internal classes to show/hide elements in JavaScript */
.is-visible {
  display: block !important;
}

.is-hidden {
  display: none !important;
}

/* Objects
Non-cosmetic design patterns including grid and layout classes)
*/

.body-wrapper {
  position: relative;
  overflow: hidden;
}

.container {
  width: 100%;
  max-width: calc( var(--container-width) + var(--container-padding) * 2 );
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
}

/* .container--narrow {
  --container-width: 110rem;
  --container-padding: 6rem;
} */
@media (min-width: 992px) {
  .container--narrow {
    --container-width: 110rem;
    --container-padding: 6rem;
  }
  .container .container--narrow {
    --container-padding: 4rem;
  }

  .container--very-narrow {
    --container-width: 84rem;
  }
}


/* Elements
Base HMTL elements are styled in this section (<body<, <h1>, <a>, <p>, <button> etc.)
*/



/* Typography resets */
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

/* Paragraphs */
p {
  margin-top: 1.842rem;
  margin-bottom: 1.842rem;
  letter-spacing: 0.015em;
}

/* Emphasized text */
em,
i {
  font-style: italic;
  line-height: inherit;
}

/* Strong text */
strong,
b {
  font-weight: var(--global-weight-bold);
  line-height: inherit;
}


h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-weight: 700;
  margin-top: 3rem;
  margin-bottom: 3rem;
}

p:first-child,
ul:first-child,
ol:first-child,
h1:first-child, .h1:first-child,
h2:first-child, .h2:first-child,
h3:first-child, .h3:first-child,
h4:first-child, .h4:first-child,
h5:first-child, .h5:first-child,
h6:first-child, .h6:first-child {
  margin-top: 0;
}

h1, .h1 {
  font-size: 4rem;
  line-height: 1.066em;
  font-weight: 900;
  color: var(--c-regal-blue);
}
h2, .h2 {
  font-size: 3rem;
  line-height: 1.166em;
  color: var(--c-regal-blue);
}
h3, .h3 {
  font-size: 2.4rem;
  line-height: 1.125em;
}
h4, .h4 {
  font-size: 2.2rem;
  line-height: 1.166em;
}
h5, .h5 {
  font-size: 2rem;
  line-height: 1.458em;
  font-weight: 600;
  letter-spacing: 0.015em;
}
h6, .h6 {
  font-size: 1.8rem;
  line-height: 1.842em;
  font-weight: 600;
  letter-spacing: 0.1em;
}

@media (min-width: 992px) {
  h1, .h1 {
    font-size: 7.5rem;
  }
  h2, .h2 {
    font-size: 6rem;
  }
  h3, .h3 {
    font-size: 4rem;
  }
  h4, .h4 {
    font-size: 3rem;
  }
  h5, .h5 {
    font-size: 2.4rem;
  }
  h6, .h6 {
    font-size: 1.9rem;
  }
}

/* Links */
a {
  line-height: inherit;
  color: var(--c-regal-blue);
  text-decoration-line: underline;
  text-decoration-color: var(--c-supernova);
  text-decoration-thickness: 0.2rem;
  text-underline-offset: 0.2rem; /*using ems has issues. chrome won't transition it.*/
  transition: color 0.15s ease-out, background-color 0.15s ease-out, text-decoration-color 0.15s ease-out;
  cursor: pointer;
}

a:hover,
a:focus {
  text-decoration-color: var(--c-web-orange);
}

a img {
  border: 0;
}

/* Horizontal rule */
hr {
  clear: both;
  height: 0;
  margin: 3.6rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 0.1rem solid var(--c-mine-shaft);
  border-left: 0;
}

/* Lists */
ul,
ol,
dl {
  margin-top: 1.842rem;
  margin-bottom: 1.842rem;
  list-style-position: outside;
  letter-spacing: 0.015em;
}

/* List items */
li {
  font-size: inherit;
}

/* Unordered lists */
ul {
  margin-left: 1.2em;
  list-style-type: disc;
}

/* Ordered lists */
ol {
  margin-left: 1.2em;
}

/* Nested unordered/ordered lists */
ul ul,
ol ul,
ul ol,
ol ol {
  margin-left: 1.2em;
  margin-top: 0;
  margin-bottom: 0;
}

 ul > li::marker {
  color: var(--c-ghost);
}
.button {
  display: inline-block;
  vertical-align: middle;
  text-decoration: none ;
  transition: background-color 0.15s ease-out, color 0.15s ease-out, border-color 0.15s ease-out, transform 0.15s ease-out;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  -webkit-appearance: none;
  padding: 0.938em 2em;
  font-family: inherit;
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--c-regal-blue);
  background-color: transparent;
  border-radius: 2rem 0 0 0;
  position: relative;
  z-index: 1;
}
.button::before,
.button::after {
  content: '';
  border-radius: 2rem 0 0 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: background-color 0.15s ease-out, transform 0.15s ease-out;
}
/* offset border */
.button::before {
  border: 0.2rem solid var(--c-supernova);
  z-index: -2;
}
/* faux background */
.button::after {
  background-color: var(--c-supernova);
  z-index: -1;
}

.button:hover,
.button:focus {
  background-color: transparent;
  transform: skew(-12deg);
}
/* offset border hover */
.button:hover::before,
.button:focus::before {
  transform: translate(0.5rem, 0.5rem) skew(12deg);
}
/* faux background hover */
.button:hover::after,
.button:focus::after {
  background-color: white;
  transform: skew(12deg);
}


.hs-button {
  display: inline-block;
  vertical-align: middle;
  text-decoration: none ;
  transition: background-color 0.15s ease-out;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  -webkit-appearance: none;
  padding: 0.813em 2em;
  font-family: inherit;
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--c-regal-blue);
  background-color: var(--c-supernova);
  border: 0.2rem solid var(--c-supernova);
  border-radius: 2rem 0 0 0;
}
.hs-button:hover,
.hs-button:focus {
  background-color: white;
}


.button--alt {
  font-size: var(--global-font-size);
  font-weight: 700;
  letter-spacing: 0.015em;
  border-radius: 0;
  padding: 0.5em 0;
  text-align: left;
}
.button--alt::before {
  content: none;
}
/* underline */
.button--alt::after {
  background-color: var(--c-supernova);
  border-radius: 0;
  top: initial;
  bottom: 0;
  height: 0.2rem;
}
.button--alt:hover,
.button--alt:focus {
  transform: skew(-12deg);
}
/* underline hover */
.button--alt:hover::after,
.button--alt:focus::after {
  background-color: var(--c-web-orange);
  transform: translate(1rem, 0.25rem) skew(12deg);
}



.button--clear {
  padding: 0;
  background-color: transparent;
  color: var(--primary-color);
  border: none;
  text-decoration-line: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 0.11em;
  transition: text-decoration-color 0.15s ease-out;
}

.button--clear:hover,
.button--clear:focus {
  background-color: transparent;
  text-decoration-color: inherit;
}

.button--expanded {
  width: 100%;
}
[type='text'],
[type='password'],
[type='date'],
[type='datetime'],
[type='datetime-local'],
[type='month'],
[type='week'],
[type='email'],
[type='number'],
[type='search'],
[type='tel'],
[type='time'],
[type='url'],
[type='color'],
textarea,
select {
  display: block;
  width: 100%;
  height: 4.6rem;
  padding: 0.5rem 1rem;
  margin-bottom: 2.4rem;
  border: 0.2rem solid var(--c-ghost);
  border-radius: var(--global-radius);
  background-color: white;
  font-family: inherit;
  font-weight: normal;
  line-height: 1.5;
  color: var(--body-font-color);
  transition: box-shadow 0.15s ease-out, border-color 0.25s ease-out;
  appearance: none;
}

[type='file'] {
  margin-bottom: 2.4rem;
}

[type='text']:hover,
[type='text']:focus,
[type='password']:hover,
[type='password']:focus,
[type='date']:hover,
[type='date']:focus,
[type='datetime']:hover,
[type='datetime']:focus,
[type='datetime-local']:hover,
[type='datetime-local']:focus,
[type='month']:hover,
[type='month']:focus,
[type='week']:hover,
[type='week']:focus,
[type='email']:hover,
[type='email']:focus,
[type='number']:hover,
[type='number']:focus,
[type='search']:hover,
[type='search']:focus,
[type='tel']:hover,
[type='tel']:focus,
[type='time']:hover,
[type='time']:focus,
[type='url']:hover,
[type='url']:focus,
[type='color']:hover,
[type='color']:focus,
textarea:hover,
textarea:focus,
select:hover,
select:focus {
  box-shadow: 0 0 0 0.4rem #E6EBF1;
}

[type='text']:focus,
[type='password']:focus,
[type='date']:focus,
[type='datetime']:focus,
[type='datetime-local']:focus,
[type='month']:focus,
[type='week']:focus,
[type='email']:focus,
[type='number']:focus,
[type='search']:focus,
[type='tel']:focus,
[type='time']:focus,
[type='url']:focus,
[type='color']:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: var(--c-regal-blue);
}

textarea {
  height: auto;
  min-height: 20rem;
  max-width: 100%;
}

select:not([multiple]) {
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 3.2rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16.45" height="9.225" viewBox="0 0 16.45 9.225"><path d="M18,27.45a1,1,0,0,1-.707-1.707l6.518-6.518-6.518-6.518a1,1,0,0,1,1.414-1.414l7.225,7.225a1,1,0,0,1,0,1.414l-7.225,7.225A1,1,0,0,1,18,27.45Z" transform="translate(27.45 -17) rotate(90)" fill="%235B7E96"/></svg>');
  background-origin: content-box;
  background-position: right -2.2rem center;
  background-repeat: no-repeat;
  background-size: 1.4rem 0.8rem;
}

select[multiple] {
  height: auto;
  background-image: none;
}

label {
  display: block;
  font-size: 1.6rem;
  line-height: 1.3em;
  font-weight: 600;
  margin: 0 0 0.8rem;
}

.hs-form .hs-field-desc {
  font-size: 1.4rem;
  line-height: 1.6em;
  color: var(--c-regal-blue);
  margin: -0.4rem 0 .4rem;
}

/* Inputs List */

.hs-form ul.inputs-list:not(.hs-error-msgs) {
  margin: 0 0 2.4rem 0;
  padding: 0;
  list-style: none;
  line-height: 1;
}

.hs-form ul.inputs-list:not(.hs-error-msgs) label {
  display: inline-grid;
  grid-auto-flow: column;
  align-items: baseline;
  font-size: 1.9rem;
  column-gap: 1rem;
}

.hs-form ul.inputs-list:not(.hs-error-msgs) li:last-child label {
  margin: 0;
}

.hs-form .hs-form-field ul.inputs-list:not(.hs-error-msgs) span {
  font-weight: 400;
}

/* Error */

.hs-form-required {
  color: #B11A11;
  margin-left: 0.2rem;
}

.hs-input.invalid {
  border-color: #B11A11;
}

.hs-error-msgs {
  position: relative;
  top: -1rem;
  margin: 0;
  list-style: none;
  color: #B11A11;
}

.hs-error-msg {
  font-size: 1.6rem;
  font-weight: 400;
}

/* Legal */

.legal-consent-container {
  font-size: 1.6rem;
}

.legal-consent-container .hs-form-booleancheckbox-display > span {
  margin: 0 !important;
}

/* Captcha */

.hs_recaptcha {
  margin-bottom: 2rem;
}

/* Success */
.submitted-message {
  border: 0.2rem solid #1D7006;
  padding: 2rem 2rem 2rem 6rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" viewBox="0 0 25 25"><g transform="translate(-48 -48)"><path d="M60.5,48A12.5,12.5,0,1,1,48,60.5,12.514,12.514,0,0,1,60.5,48Zm0,23.077A10.577,10.577,0,1,0,49.923,60.5,10.589,10.589,0,0,0,60.5,71.077Z" fill="%231D7006"/><path d="M148.423,171.538a.961.961,0,0,1-.715-.318l-3.462-3.846a.962.962,0,1,1,1.429-1.286l2.722,3.024,7.366-8.769a.962.962,0,0,1,1.473,1.237l-8.077,9.615a.962.962,0,0,1-.72.343Z" transform="translate(-90.231 -105.269)" fill="%231D7006"/></g></svg>');
  background-position: 2rem 2.3rem;
  background-repeat: no-repeat;
  background-size: 2.5rem 2.5rem;
  line-height: 1.6;
  min-height: 7.5rem;
}

/* Fix Column Layouts */

.hs-form fieldset {
  max-width: inherit !important;
}

.hs-form fieldset.form-columns-1 .hs-form-field,
.hs-form fieldset.form-columns-2 .hs-form-field,
.hs-form fieldset.form-columns-3 .hs-form-field {
  float: none !important;
  width: 100% !important;
}

.hs-form fieldset.form-columns-1 .hs-form-field .input,
.hs-form fieldset.form-columns-2 .hs-form-field .input,
.hs-form fieldset.form-columns-3 .hs-form-field .input {
  margin-right: 0 !important;
}

.hs-form fieldset.form-columns-1 .hs-form-field .hs-input:not([type='checkbox']):not([type='radio']),
.hs-form fieldset.form-columns-2 .hs-form-field .hs-input:not([type='checkbox']):not([type='radio']),
.hs-form fieldset.form-columns-3 .hs-form-field .hs-input:not([type='checkbox']):not([type='radio']) {
  width: 100% !important;
}

@media (min-width: 576px) {

  .hs-form fieldset.form-columns-2,
  .hs-form fieldset.form-columns-3 {
    display: grid;
    column-gap: 2rem;
  }

  .hs-form fieldset.form-columns-2 {
    grid-template-columns: repeat(2, 1fr);
  }

  .hs-form fieldset.form-columns-3 {
    grid-template-columns: repeat(3, 1fr);
  }

}
svg:not(:root).svg-inline--fa {
  overflow: visible;
}
.svg-inline--fa {
  display: inline-block;
  font-size: inherit;
  height: 1em;
  overflow: visible;
  vertical-align: -0.125em;
}
.svg-inline--fa.fa-lg {
  vertical-align: -0.225em;
}
.svg-inline--fa.fa-w-1 {
  width: 0.0625em;
}
.svg-inline--fa.fa-w-2 {
  width: 0.125em;
}
.svg-inline--fa.fa-w-3 {
  width: 0.1875em;
}
.svg-inline--fa.fa-w-4 {
  width: 0.25em;
}
.svg-inline--fa.fa-w-5 {
  width: 0.3125em;
}
.svg-inline--fa.fa-w-6 {
  width: 0.375em;
}
.svg-inline--fa.fa-w-7 {
  width: 0.4375em;
}
.svg-inline--fa.fa-w-8 {
  width: 0.5em;
}
.svg-inline--fa.fa-w-9 {
  width: 0.5625em;
}
.svg-inline--fa.fa-w-10 {
  width: 0.625em;
}
.svg-inline--fa.fa-w-11 {
  width: 0.6875em;
}
.svg-inline--fa.fa-w-12 {
  width: 0.75em;
}
.svg-inline--fa.fa-w-13 {
  width: 0.8125em;
}
.svg-inline--fa.fa-w-14 {
  width: 0.875em;
}
.svg-inline--fa.fa-w-15 {
  width: 0.9375em;
}
.svg-inline--fa.fa-w-16 {
  width: 1em;
}
.svg-inline--fa.fa-w-17 {
  width: 1.0625em;
}
.svg-inline--fa.fa-w-18 {
  width: 1.125em;
}
.svg-inline--fa.fa-w-19 {
  width: 1.1875em;
}
.svg-inline--fa.fa-w-20 {
  width: 1.25em;
}


/* Components
Specific pieces of UI that are stylized. Typically used for global partial styling
*/




/* If you change headerBP, also change the breakpoint in hero module css */

/* Navigation Skipper */

.skip-to-content {
  position: absolute;
  top: -4.2rem;
  left: 0;
  height: 4rem;
  padding: 1rem;
  color: white;
  font-size: 1.6rem;
  line-height: 1em;
  text-decoration: none;
  border-right: 0.1rem solid white;
  border-bottom: 0.1rem solid white;
  border-bottom-right-radius: 0.8rem;
  background-color: #BF1722;
  transition: top 1s ease-in, background-color 0.5s ease-out;
  z-index: 100;
}

.skip-to-content:focus {
  top: 0;
  transition: top 0.1s ease-out, background-color 0.5s ease-out;
}

.skip-to-content:hover {
  background-color: #861018;
}


.site-header-sticky-container {
  width: 100%;
}

.site-header {
  width: 100%;
  background-color: transparent;
  padding: 1rem 0;
/*   position: relative; */
  position: fixed;
  z-index: 101;
  transition: background-color 0.4s ease-out, transform 0.4s ease-out;
}

/* .site-header.is-overlayed {
  position: absolute;
  width: 100%;
  background-color: transparent;
} */

.site-header.is-not-overlayed {
  background-color: #14497B;
}

.site-header.is-overlayed.is-not-at-top {
  background-color: #14497B;
}

.site-header[data-scroll-direction="up"] {
	transform: translateY(0%);
}
.site-header[data-scroll-direction="down"] {
	transform: translateY(-100%);
}
@media (max-width: 1299px) {
  .site-header.has-open-mobile-menu[data-scroll-direction="down"] {
    transform: translateY(0%);
  }
}


.site-header__inner {
  display: grid;
  grid-template-columns: repeat(2, auto);
  justify-content: space-between;
  align-items: center;
  gap: 3rem;
}
@media (min-width: 1300px) {
  .site-header {
    padding: 5.2rem 0 4.5rem;
  }
  .site-header__inner {
    grid-template-columns: repeat(3, auto);
  }
}
@media (max-width: 1299px) {
  .site-header__logo {
    width: 13rem;
  }
}




/* Main Navigation */
.main-nav {
  display: none;
}
@media (min-width: 1300px) {
  .main-nav {
    display: flex;
  }
}
.main-nav a {
  text-decoration: none !important;
}

.main-nav ul {
  list-style: none;
  margin: 0;
  /* padding: 0; */
  line-height: 1.5;
}

.main-nav__list {
  font-size: 1.6rem;
  display: flex;
  gap: 3rem;
}
.main-nav__list a {
  /* transition: font-weight 0.15s ease-out; */
  transition: none;
}
.main-nav__list a:hover {
  /* color: var(--c-mango-tango); */
}

.main-nav__item--has-children {
  position: relative;
}

.main-nav__link {
  position: relative;
  color: white;
  font-weight: 600;
  padding: 0.9rem 0;

  /* Bold on hover fix */
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}
/* Bold on hover fix */
.main-nav__link::after {
  content: attr(data-label);
  content: attr(data-label) / "";
  height: 0;
  visibility: hidden;
  overflow: hidden;
  user-select: none;
  pointer-events: none;
  font-weight: 900;
  font-style: italic;
  letter-spacing: 0.02em;
}

.main-nav__link:hover,
.main-nav__link:focus {
  font-weight: 900;
  font-style: italic;
}

.main-nav__link.active-node:before,
.main-nav__link.active-branch:before {
  content: '';
  display: block;
  height: 0.2rem;
  width: 100%;
  background-color: var(--c-supernova);
  position: absolute;
  bottom: 0.6rem;
}


.main-nav__dropdown {
  /* display:none; */
  visibility: hidden;
  opacity: 0;
  transform: translateX(-50%) translateY(2rem);
  transition: opacity 0.15s ease-out, visibility 0.15s ease-out, transform 0.15s ease-out;

  position: absolute;
  top: 100%;
  z-index: 1;
  left: 50%;

  min-width: 21rem;
  background-color: white;
  box-shadow: 0 0.3rem 0.6rem rgba(0,0,0,0.15);
  padding: 1.2rem 0;
  font-size: 1.5rem;

}

/* opening dropdown */
.main-nav__item--has-children:hover > .main-nav__dropdown {
  /* display: block; */
  visibility: visible;
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.main-nav__dropdown a {
  display: block;
  text-align: center;
  padding: 0.6rem 1.2rem;
}

.main-nav__dropdown a:hover,
.main-nav__dropdown a.active-node {
  font-weight: 600;
  font-style: italic;
}



.site-header__search {
  display: flex;
  justify-content: center;
  position: relative;
  width: 4.6rem;
  height: 4.2rem;
  margin-left: 1.5rem;
}

.site-header__search-input {
  margin: 0;
  border-radius: 2.3rem;
  padding: 0.5rem 0;
  position: absolute;
  right: 0;
  top: -0.2rem;
  width: 0;
  opacity: 0;
  border-width: 0;
  transition: opacity 0.1s ease-out, width 0.15s ease-out, padding 0.15s ease-out, border-width 0.15s ease-out;
  z-index: 1;
}
.site-header__search-input,
.site-header__search-input:hover,
.site-header__search-input:focus {
  box-shadow: 0 0 0 0.4rem rgba(0,0,0,0.5);
  border-color: var(--c-ghost);
}

.site-header__search.is-open .site-header__search-input {
  padding-right: 4.6rem;
  padding-left: 1.5rem;
  width: 30rem;
  opacity: 1;
  border-width: 0.2rem;
}

.site-header__search-button {
  cursor: pointer;
  color: var(--c-mango-tango);
  z-index: 2;
  width: 4.6rem;
  height: 4.2rem;
  transition: color 0.15s ease-out;
}

.site-header__search.is-closed .site-header__search-button:hover,
.site-header__search.is-closed .site-header__search-button:focus {
  color: white;
}

.site-header__search.is-open .site-header__search-button:hover,
.site-header__search.is-open .site-header__search-button:focus {
  color: var(--c-regal-blue);
}





.site-header__sup {
  display: none;
  position: relative;
}
@media (min-width: 1300px) {
  .site-header__sup {
    display: block;
  }
}

.site-header__phone {
  position: absolute;
  width: 100%;
  text-align: center;
  transform: translateY(-4.6rem);
}
.site-header__phone a {
  color: white;
  text-decoration: none !important;
  text-decoration-color: transparent;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.06em;
}
.site-header__phone a:hover,
.site-header__phone a:focus {
  color: var(--c-supernova);
}
/*
.site-header__connect {
  padding-left: 1.2em;
  padding-right: 1.2em;
}
*/








/* Mobile Navigation */

.mobile-nav {
  position: relative;
}
@media (min-width: 1300px) {
  .mobile-nav {
    display: none;
  }
}

.mobile-nav__toggle {
  width: 4.8rem;
  height: 4.8rem;
  cursor: pointer;
  position: relative;
}
.mobile-nav__toggle span {
  display: block;
  position: absolute;
  height: 0.3rem;
  width: 4rem;
  border-radius: 0.15rem;
  opacity: 1;
  left: 0;
  right: 0;
  margin: 0 auto;
  /* transform: rotate(0deg); */
  transition: width 0.15s ease-out;
}
.mobile-nav__toggle span:nth-child(1) {
  top: 1.4rem;
  background-color: var(--c-supernova);
}
.mobile-nav__toggle span:nth-child(2) {
  top: 2.3rem;
  background-color: var(--c-web-orange);
  animation-duration: 0.3s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
.mobile-nav__toggle span:nth-child(3) {
  top: 3.2rem;
  background-color: var(--c-mango-tango);
}
.mobile-nav__toggle.is-open span:nth-child(2) {
  animation-name: toggleOpen;
}
.mobile-nav__toggle.is-closed span:nth-child(2) {
  animation-name: toggleClosed;
}
.mobile-nav__toggle:not(.is-open):hover span:nth-child(2) {
  width: 3rem;
}

@keyframes toggleOpen {
  0% {
    transform: rotate(0deg) scaleX(1);
  }
  40% {
    transform: rotate(0deg) scaleX(0.25);
  }
  60% {
    transform: rotate(60deg) scaleX(0.25);
  }
  100% {
    transform: rotate(60deg) scaleX(1);
  }
}
@keyframes toggleClosed {
  0% {
    transform: rotate(60deg) scaleX(1);
  }
  40% {
    transform: rotate(60deg) scaleX(0.25);
  }
  60% {
    transform: rotate(0deg) scaleX(0.25);
  }
  100% {
    transform: rotate(0deg) scaleX(1);
  }
}



.mobile-nav__menu {
  background-color: white;
  box-shadow: 0 0.3rem 0.6rem rgba(0,0,0,0.15);
  padding: 1.5rem 3rem 3rem;
  position: absolute;
  top: calc(100% + 1rem);
  right: 0;
  width: 35rem;
  max-width: calc(100vw - var(--container-padding)*2);

  transform: translateY(2rem);
  opacity: 0;

  transition: opacity 0.15s ease-out, transform 0.15s ease-out;
  
  max-height: calc(100vh - 13.6rem);
  overflow-y: auto;
}
.mobile-nav__menu:not(.is-open) {
  display: none;
}

.mobile-nav__menu.animate-in {
  opacity: 1;
  transform: translateY(0);
}

.mobile-nav a {
  text-decoration: none !important;
}

.mobile-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  line-height: 1.5;
}

.mobile-nav__list {
  font-size: 1.6rem;
}
.mobile-nav__list a {
  display: block;
  color: var(--c-regal-blue);
}
.mobile-nav__list a:hover,
.mobile-nav__list a.active-branch,
.mobile-nav__list a.active-node {
  color: var(--c-mango-tango);
}

.mobile-nav__item--has-children {
  position: relative;
}

.mobile-nav__link {
  font-weight: 600;
  padding: 0.9rem 0;
}

.mobile-nav__item--has-children .mobile-nav__link {
  margin-right: 3.5rem;
}


.mobile-nav__submenu-toggle {
  position: absolute;
  right: 0;
  top: 0;
  cursor: pointer;
  color: var(--c-supernova);
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  transform: translateX(1.4rem);
  transition: background-color 0.15s ease-out, transform 0.15s ease-out;
}
.mobile-nav__submenu-toggle:after {
  content: '';
  display: block;
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.mobile-nav__submenu-toggle svg {
  transition: color 0.15s ease-out, transform 0.15s ease-out;
}
.mobile-nav__submenu-toggle:hover,
.mobile-nav__submenu-toggle:focus-visible {
  background-color: rgba(0,0,0,0.025);
  color: var(--c-web-orange);
}
.mobile-nav__submenu-toggle[aria-expanded="true"] svg {
  transform: rotate(135deg);
}

.mobile-nav__submenu {
  font-size: 1.5rem;
  transition: height 0.15s ease-out;
  margin-left: 1.5rem !important;
}
.mobile-nav__submenu:not(.is-open) {
  display: none;
}

.mobile-nav__submenu-link {
  padding: 1rem 0;
}


.mobile-nav__phone a {
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.06em;
}
.mobile-nav__phone a:hover,
.mobile-nav__phone a:focus-visible {
  color: var(--c-mango-tango);
}
/*
.mobile-nav__connect {
  margin-top: 1rem;
  padding-left: 1.2em;
  padding-right: 1.2em;
}
*/
.mobile-nav__connect-cta a {
  margin-top: 1rem;
  width: 100%;
}

.mobile-nav__search {
  position: relative;
  margin-top: 2rem;
}
.mobile-nav__search-input {
  margin: 0;
  padding-right: 4.6rem;
}
.mobile-nav__search-button {
  position: absolute;
  top: 0;
  right: 0;
  width: 4.6rem;
  height: 100%;
  cursor: pointer;
  color: var(--c-regal-blue);
  transition: color 0.15s ease-out;
}
.mobile-nav__search-button:hover,
.mobile-nav__search-button:focus {
  color: var(--c-horizon);
}





div.hs-tools-menu {
  top: -3px !important;
  min-height: 30px !important;
}

div.hs-tools-menu.hs-collapsed img.hs-sprocket {
  width: 24px !important;
  right: 3px !important;
}
.lp-site-header {
  background-color: var(--c-athens-gray);
  text-align: center;
  padding: 2rem 0;
}

.lp-site-header__logo {
  display: inline-block;
}

@media (max-width: 991px) {
  .lp-site-header__logo {
    max-width: 13rem;
  }
}
@media (min-width: 992px) {
  .lp-site-header {
    padding: 4.5rem 0;
  }
}
.site-footer strong {
  font-weight: 600;
}

.site-footer__top {
  padding: 4rem 0;
  line-height: 1.3;
  color: var(--c-regal-blue);
}
.site-footer__top > .container {
  gap: 2rem;
  text-align: center;
  display: grid;
}
@media (min-width: 768px) {
  .site-footer__top > .container {
    grid-template-columns: repeat(3,1fr);
    justify-content: space-between;
    text-align: left;
  }
}
@media (min-width: 992px) {
  .site-footer__top > .container {
    grid-template-columns: repeat(5,fit-content(25%));
  }
}

.site-footer__top-column > :last-child {
  margin-bottom: 0;
}

.site-footer__logo {
  display: none;
}
@media (min-width: 768px) {
  .site-footer__logo {
    display: block;
  }
}

.site-footer__address {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .site-footer__address {
    margin-top: 0;
  }
}
.site-footer__address a {
  text-decoration-color: transparent;
}
.site-footer__address a:hover,
.site-footer__address a:focus {
  text-decoration-color: var(--c-supernova);
}


.site-footer__menu {
  margin-left: 0;
  padding: 0;
  list-style: none;
  font-weight: 600;
  line-height: 1.5;
}
.site-footer__menu li {
  margin-bottom: 0.8rem;
}
.site-footer__menu a {
  text-decoration-color: transparent;
  vertical-align: baseline; /* Overridding CTA vertical-align:middle */
}
.site-footer__menu a:hover,
.site-footer__menu a:focus {
  text-decoration-color: var(--c-supernova);
}


.site-footer__socials {
  margin-left: 0;
  padding: 0;
  list-style: none;
  display: flex;
  gap: 0.5rem;
}
.site-footer__socials a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  height: 3.6rem;
  color: var(--c-regal-blue);
  background-color: var(--c-supernova);
  border-radius: 50%;
  box-shadow: 0 0 0 var(--c-supernova);
  transition: background-color 0.15s ease-out, color 0.15s ease-out, box-shadow 0.15s ease-out;
}
.site-footer__socials a:hover,
.site-footer__socials a:focus {
  background-color: white;
  box-shadow: 0.2rem 0.2rem 0 var(--c-supernova);
}
@media (max-width: 767px) {
  .site-footer__socials {
    justify-content: center;
  }
}



.site-footer__bottom {
  background-color: var(--c-athens-gray);
  color: var(--c-regal-blue);
  font-size: 1.4rem;
  text-align: center;
  padding: 1.8rem 0;
}

.site-footer__legal {
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 1.2;
  display: flex;
  flex-flow: column wrap;
  gap: 1rem 0;
}
.site-footer__legal a {
  color: inherit;
  text-decoration: none;
}
.site-footer__legal a:hover,
.site-footer__legal a:focus {
  text-decoration: underline;
}

@media (min-width: 768px) {
  .site-footer__bottom {
    padding: 1.2rem 0;
  }
  .site-footer__legal {
    flex-direction: row;
    justify-content: center;
  }
  .site-footer__legal li:not(:last-child):after {
    content: '·';
    padding: 0 1rem;
  }
}




/* .leadinModal {
  display: none !important;
} */

/* Templates
Specific pieces of UI that are stylized. Typically used for global partial styling
*/




/* Index */

.blog-intro {
  margin: 6rem 0;
}
@media (min-width: 768px) {
  .blog-intro {
    display: grid;
    grid-template-columns: repeat(2,1fr);
  }
  .blog-intro__header {
    /* Calculate linear clamp: https://xgkft.csb.app/ */
    margin-right: clamp(2rem, -11.7347rem + 17.8838vw, 14rem);
  }
  .blog-intro__header h1 {
    margin: 0;
  }
}
@media (min-width: 1440px) {
  .blog-intro__header {
     margin-right: 14rem;
  }
}

.blog-intro__tags-label {
  font-weight: 600;
}
.blog-intro__tags-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.blog-intro__tags-list li {
  display: inline-block;
  margin-right: 2rem;
}
.blog-intro__tags-list a {
  text-decoration-color: transparent;
}
.blog-intro__tags-list a:hover,
.blog-intro__tags-list a:focus {
  text-decoration-color: var(--c-supernova);
}
.blog-intro__tags-list em {
  color: #666;
}


.blog-listing {
  display: grid;
  gap: 2rem;
}
@media (min-width: 768px) {
  .blog-listing {
    grid-template-columns: repeat(2, 1fr);
    gap: 4rem;
  }
}

.blog-listing__post {
  background-color: #F5F6F8;
  border-radius: 2rem 0 2rem 0;
  overflow: hidden;
}
.blog-listing__post-image {
  display: block;
  position: relative;
  height: 0;
  padding-bottom: 60%;
}
.blog-listing__post-image img {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.blog-listing__post-details {
  padding: 3rem;
}
.blog-listing__post-title {
  /* font-weight: 400; */
  margin-bottom: 1.5rem;
}
.blog-listing__post-title a {
  text-decoration-color: transparent;
}
.blog-listing__post-title a:hover,
.blog-listing__post-title a:focus {
  text-decoration-color: var(--c-supernova);
}
.blog-listing__post-details p {
  margin: 1rem 0;
}
.blog-listing__post-read-time {
  font-weight: 600;
  font-size: 1.7rem;
}
@media (min-width: 992px) {
  .blog-listing__post-details {
    padding: 4rem;
  }
}





/* Post */

.blog-post__back {
  margin: 2rem 0;
}
.blog-post__back a {
  display: inline-flex;
  align-items: center;
  font-weight: 700;
  text-decoration:none;
}
.blog-post__back a svg {
  transition: transform 0.15s ease-out;
}
.blog-post__back a span {
  border-bottom: 0.2rem solid var(--c-regal-blue);
  margin-left: 1rem;
  transition: border-color 0.15s ease-out;
}
.blog-post__back a:hover span,
.blog-post__back a:focus span {
  border-color: var(--c-supernova);
}
.blog-post__back a:hover svg,
.blog-post__back a:focus svg {
  transform: translateX(-1rem);
}

.blog-post__name {
  text-align: center;
  margin-top: 3rem !important;
  margin-bottom: 1rem;
}
.blog-post__name::after {
  content: '';
  display: block;
  height: 0.1rem;
  width: 36%;
  background-color: var(--c-ghost);
  margin: 2rem auto 0;
}

.blog-post__meta {
  font-weight: 600;
  text-align: center;
  margin-bottom: 4rem;
}
.blog-post__meta a {
  color: var(--body-font-color);
  text-decoration-color: transparent;
}
.blog-post__meta a:hover,
.blog-post__meta a:focus {
  text-decoration-color: var(--c-supernova);
}

.blog-post__tags {
  text-transform: uppercase;
  font-weight: 600;
  color: var(--c-regal-blue);
  letter-spacing: 0.1em;
}
.blog-post__tags a {
  text-decoration-color: transparent;
}
.blog-post__tags a:hover,
.blog-post__tags a:focus {
  text-decoration-color: var(--c-supernova);
}





/* Author Bio */

.author-bio {
  background-color: #F5F6F8;
  border-radius: 2rem 0 2rem 0;
  padding: 3rem;
  margin: 4rem 0;
  gap: 3rem;
}
.author-bio__image {
  flex: 0 0 auto;
  width: 15rem;
  height: 15rem;
  border-radius: 50%;
  overflow: hidden;
}
.author-bio__image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.author-bio__social {
  display: flex;
  flex-flow: row wrap;
  gap: 1rem;
}
.author-bio__social-label {
  font-style: italic;
  font-weight: 600;
}
.author-bio__social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  height: 3.6rem;
  color: white;
  background-color: var(--c-regal-blue);
  border-radius: 50%;
}
.author-bio__social a:hover,
.author-bio__social a:focus {
  background-color: var(--c-horizon);
}

@media (min-width: 768px) {
  .author-bio {
    display: flex;
  }
}
@media (min-width: 992px) {
  .author-bio {
    padding: 6rem;
    gap: 6rem;
  }
  .author-bio__image {
    width: 18rem;
    height: 18rem;
  }
}





/* Widgets */

.widget {
  margin-bottom: 8rem;
}

.widget__title {
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 3rem;
}

.widget__posts-list {
  list-style: none;
  margin: 0;
  padding: 0;
  line-height: 1.4em;
}

.widget__posts-list li {
  border-top: 0.1rem solid gray;
  padding: 1.6rem 0;
}

.widget__posts-list li:last-child {
  border-bottom: 0.1rem solid gray;
}

.widget__post-title {
  font-weight: 600;
}





/* Pagination */

.blog-pagination {
  font-weight: 600;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  line-height: 1.5em;
  margin: 6rem 0;
}

/* .blog-index .blog-pagination {
  margin-top: 6rem;
} */

.blog-pagination__link {
  color: var(--c-regal-blue);
}

.blog-pagination__numbers {
  display: flex;
  justify-content: center;
}

.blog-pagination__number-link {
  text-decoration: none !important;
  border-radius: 100%;
  border: 0.2rem solid var(--c-supernova);
  background-color: transparent;
  width: 4rem;
  height: 4rem;
  line-height: 3.4rem;
  text-align: center;
  margin: 0 0.5rem;
  transition: border-color 0.15s ease-out;
}

.blog-pagination__number-link:not(.blog-pagination__link--active):hover {
  border-color: var(--c-regal-blue);
}

.blog-pagination__link--active {
  border-color: var(--c-regal-blue);
  background-color: var(--c-regal-blue);
  color: white;
  cursor: initial;
}

.blog-pagination__prev-link,
.blog-pagination__next-link {
  display: flex;
  align-items: center;
  padding: 0.5em 0;
  margin: 0 2rem;
}

.blog-pagination__link-text {
  line-height: 1em;
}

.blog-pagination__prev-link svg {
  margin-right: 1.2rem;
}

.blog-pagination__next-link svg {
  margin-left: 1.2rem;
}

.blog-pagination__prev-link--disabled,
.blog-pagination__next-link--disabled {
  opacity: 0.25;
  text-decoration: none !important;
  cursor: initial;
}

@media (max-width: 575px) {
  .blog-pagination__prev-link {
    order: 1;
  }

  .blog-pagination__next-link {
    order: 2;
  }

  .blog-pagination__numbers {
    order: 3;
    flex-basis: 100%;
    margin-top: 2rem;
  }

}





/* Post Sharing */

.blog-post__sharing {
  padding: 1rem 0;
}

.blog-post__sharing a {
  font-size: 1.3em;
  text-decoration: none !important;
  display: inline-block;
  margin-left: 0.5rem;
  color: var(--c-mango-tango);
}

.blog-post__sharing-label {
  font-style: italic;
  font-weight: 600;
}





/* Comments */

.blog-comments {
  margin-bottom: 8rem;
}

.new-comments {
  margin-bottom: 6rem;
  border-bottom: 0.1rem solid #888;
}

.comment {
  border-top: 0.1rem solid #888;
  padding: 3.5rem 0;
  margin: 0;
}

.comment:not(.depth-0) + .comment.depth-0 {
  margin-top: 3rem;
}

.comment:not(.depth-0) {
  border-color: #ccc;
}

.comment.depth-1 { margin-left:2em; }
.comment.depth-2 { margin-left:4em; }
.comment.depth-3 { margin-left:6em; }
.comment.depth-4 { margin-left:8em; }
.comment.depth-5 { margin-left:10em; }
.comment.depth-6 { margin-left:12em; }
.comment.depth-7 { margin-left:14em; }
.comment.depth-8 { margin-left:16em; }
.comment.depth-9 { margin-left:18em; }

.comment-date,
.comment-from {
  display: inline-block;
}

.comment-from h4 {
  font-size: var(--body-font-size);
  font-weight: 700;
  letter-spacing: normal;
  margin: 0 1rem 0 0;
}

.comment-from h4 a {
  color: var(--body-font-color);
}

.comment-from h4 a:after {
  content: '';
  background-image: url('data:image/svg+xml;utf8,<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="external-link-alt" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="svg-inline--fa fa-external-link-alt fa-w-16"><path fill="rgb%28102, 102, 102%29" d="M432,320H400a16,16,0,0,0-16,16V448H64V128H208a16,16,0,0,0,16-16V80a16,16,0,0,0-16-16H48A48,48,0,0,0,0,112V464a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V336A16,16,0,0,0,432,320ZM488,0h-128c-21.37,0-32.05,25.91-17,41l35.73,35.73L135,320.37a24,24,0,0,0,0,34L157.67,377a24,24,0,0,0,34,0L435.28,133.32,471,169c15,15,41,4.5,41-17V24A24,24,0,0,0,488,0Z" class=""></path></svg>');
  background-repeat: no-repeat;
  background-size: contain;
  display:inline-block;
  width: 0.7em;
  height: 0.7em;
  margin-left: 0.5rem;
}

.comment-date {
  font-size: 0.8em;
  color: #666;
}

.comment-body {
  margin-top: 3rem;
}

.comment-body p:last-child {
  margin-bottom: 1em;
}

.comment-reply-to {
  background: none;
  font-weight: 700;
  font-size: 0.8rem;
  line-height: 1.3em;
  font-style: italic;
  text-transform: none;
  padding: 0;
  border: none;
  border-radius: 0;
  letter-spacing: initial;
  text-decoration-line: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 0.11em;
  color: var(--body-font-color);
  opacity: 0.5;
  transition: all 0.15s ease-out;
}

.comment-reply-to:before {
  content: '';
  background-image: url('data:image/svg+xml;utf8,<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="reply" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="svg-inline--fa fa-reply fa-w-16"><path fill="currentColor" d="M8.309 189.836L184.313 37.851C199.719 24.546 224 35.347 224 56.015v80.053c160.629 1.839 288 34.032 288 186.258 0 61.441-39.581 122.309-83.333 154.132-13.653 9.931-33.111-2.533-28.077-18.631 45.344-145.012-21.507-183.51-176.59-185.742V360c0 20.7-24.3 31.453-39.687 18.164l-176.004-152c-11.071-9.562-11.086-26.753 0-36.328z" class=""></path></svg>');
  background-repeat: no-repeat;
  background-size: contain;
  display:inline-block;
  width: 0.7em;
  height: 0.7em;
  margin-right: 0.7rem;
}

.comment-reply-to:hover,
.comment-reply-to:focus {
  color: inherit;
  text-decoration-color: inherit;
  opacity: 1;
}

.replying {
  padding-left: 2em;
  padding-bottom: 3.5rem;
}

.replying-to {
  display: block;
  margin-bottom: 3rem;
  font-style: italic;
  font-weight: 700;
}

.hs-common-confirm-message{background-color:#cde3cc!important;border:1px solid #360!important;color:#360!important;font-size:15px!important;border-radius:3px!important;padding:8px!important;margin:8px 0!important;}