:root {
  font-size: 100%;
}

/**
* Fluid typography
* @link https://websemantics.uk/tools/responsive-font-calculator/ 
*/
@media (max-width: 62rem) {
  .site h1,
h1.gb-headline, h1.wp-block {
    font-size: 2.441rem;
    /* 2.075rem(33.2px) @ 17.5rem(280px) increasing to 2.807rem(44.912px) @ 62rem(992px) */
    font-size: clamp(2.075rem, 2.075rem + (1vw - 0.175rem) * 1.6449, 2.807rem);
    /* Where: 1.7079 = 100 * font-size_difference / viewport_width_difference */
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h2,
h2.gb-headline, h2.wp-block {
    font-size: 1.563rem;
    /* 1.329rem(21.264px) @ 17.5rem(280px) increasing to 1.797rem(28.752px) @ 62rem(992px) */
    font-size: clamp(1.329rem, 1.329rem + (1vw - 0.175rem) * 1.0517, 1.797rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h2.large,
h2.large.gb-headline, h2.large.wp-block {
    font-size: 1.953rem;
    /* 1.66rem(26.56px) @ 17.5rem(280px) increasing to 2.246rem(35.936px) @ 62rem(992px) */
    font-size: clamp(1.66rem, 1.66rem + (1vw - 0.175rem) * 1.3169, 2.246rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h3,
h3.gb-headline, h3.wp-block {
    font-size: 1.25rem;
    /* 1.188rem(19.008px) @ 17.5rem(280px) increasing to 1.438rem(23.008px) @ 62rem(992px) */
    font-size: clamp(1.188rem, 1.188rem + (1vw - 0.175rem) * 0.5618, 1.438rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.2;
  }
  .site h4, .site .h4,
h4.gb-headline, h4.wp-block, .gb-headline.h4, .wp-block.h4 {
    font-size: 1.25rem;
    /* 1.063rem(17.008px) @ 17.5rem(280px) increasing to 1.438rem(23.008px) @ 62rem(992px) */
    font-size: clamp(1.063rem, 1.063rem + (1vw - 0.175rem) * 0.8427, 1.438rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h4.small,
h4.small.gb-headline, h4.small.wp-block {
    font-size: 1.125rem;
    /* 0.956rem(15.296px) @ 17.5rem(280px) increasing to 1.294rem(20.704px) @ 62rem(992px) */
    font-size: clamp(0.956rem, 0.956rem + (1vw - 0.175rem) * 0.7596, 1.294rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h4.tiny, h4.tiny,
h4.tiny.gb-headline, h4.tiny.wp-block {
    font-size: 0.9rem;
    /* 0.875rem(14px) @ 17.5rem(280px) increasing to 0.925rem(14.8px) @ 62rem(992px) */
    font-size: clamp(0.875rem, 0.875rem + (1vw - 0.175rem) * 0.1124, 0.925rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h4.gb-headline-subheader,
h4.gb-headline-subheader {
    font-size: 0.875rem;
    line-height: 1.1;
  }
  .site h5,
h5.gb-headline, h5.wp-block {
    font-size: 1rem;
    /* 0.825rem(13.2px) @ 17.5rem(280px) increasing to 1rem(16px) @ 62rem(992px) */
    font-size: clamp(0.825rem, 0.825rem + (1vw - 0.175rem) * 0.3933, 1rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.2;
  }
  .site p,
p.gb-headline, p.wp-block {
    font-size: 1rem;
    /* 0.825rem(13.2px) @ 17.5rem(280px) increasing to 1rem(16px) @ 62rem(992px) */
    font-size: clamp(0.825rem, 0.825rem + (1vw - 0.175rem) * 0.3933, 1rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.5;
  }
  .site p.large,
p.gb-headline.large, p.wp-block.large {
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .site p.small,
p.gb-headline.small, p.wp-block.small {
    font-size: 0.875rem;
    /* 0.875rem(14px) @ 17.5rem(280px) increasing to 0.925rem(14.8px) @ 62rem(992px) */
    font-size: calc(0.875rem + (1vw - 0.175rem) * 0.1124);
    /* Where: 0.1124 = 100 * font-size_difference / viewport_width_difference */
    /* Safari resize fix */
    min-height: 0vw;
  }
}
@media (min-width: 62rem) {
  .site h1,
h1.gb-headline, h1.wp-block {
    font-size: 3.815rem;
    /* 2.807rem(44.912px) @ 62rem(992px) increasing to 4.387rem(70.192px) @ 105rem(1680px) */
    font-size: clamp(2.807rem, 2.807rem + (1vw - 0.62rem) * 3.6744, 4.387rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h2,
h2.gb-headline, h2.wp-block {
    font-size: 2.441rem;
    /* 1.797rem(28.752px) @ 62rem(992px) increasing to 2.807rem(44.912px) @ 105rem(1680px) */
    font-size: clamp(1.797rem, 1.797rem + (1vw - 0.62rem) * 2.3488, 2.807rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h2.large,
h2.gb-headline.large, h2.wp-block.large {
    font-size: 3.052rem;
    /* 2.246rem(35.936px) @ 62rem(992px) increasing to 3.51rem(56.16px) @ 105rem(1680px) */
    font-size: clamp(2.246rem, 2.246rem + (1vw - 0.62rem) * 2.9395, 3.51rem);
    /* Where: 5.3231 = 100 * font-size_difference / viewport_width_difference */
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h3,
h3.gb-headline, h3.wp-block {
    font-size: 1.953rem;
    /* 1.438rem(23.008px) @ 62rem(992px) increasing to 2.246rem(35.936px) @ 105rem(1680px) */
    font-size: clamp(1.438rem, 1.438rem + (1vw - 0.62rem) * 1.8791, 2.246rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h4, .site .h4,
h4.gb-headline, h4.wp-block, .gb-headline.h4, .wp-block.h4 {
    font-size: 1.563rem;
    /* 1.438rem(23.008px) @ 62rem(992px) increasing to 1.563rem(25.008px) @ 105rem(1680px) */
    font-size: clamp(1.438rem, 1.438rem + (1vw - 0.62rem) * 0.2907, 1.563rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h4.tiny, h4.tiny, h4.tiny.gb-headline, h4.tiny.wp-block {
    font-size: 0.925rem;
  }
  .site h4.small,
h4.small.gb-headline, h4.small.wp-block {
    font-size: 1.25rem;
    /* 1.294rem(20.704px) @ 62rem(992px) increasing to 1.438rem(23.008px) @ 105rem(1680px) */
    font-size: clamp(1.294rem, 1.294rem + (1vw - 0.62rem) * 0.3349, 1.438rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.1;
  }
  .site h4.gb-headline-subheader,
h4.gb-headline-subheader {
    font-size: 0.875rem;
    /* 0.875rem(14px) @ 62rem(992px) increasing to 1rem(16px) @ 105rem(1680px) */
    font-size: clamp(0.875rem, 0.875rem + (1vw - 0.62rem) * 0.2907, 1rem);
    line-height: 1.1;
  }
  .site h5,
h5.gb-headline, h5.wp-block {
    font-size: 1.125rem;
    /* 1rem(16px) @ 62rem(992px) increasing to 1.125rem(18px) @ 105rem(1680px) */
    font-size: clamp(1rem, 1rem + (1vw - 0.62rem) * 0.2907, 1.125rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.2;
  }
  .site p,
p.gb-headline, p.wp-block {
    font-size: 1.125rem;
    /* 1rem(16px) @ 62rem(992px) increasing to 1.125rem(18px) @ 105rem(1680px) */
    font-size: clamp(1rem, 1rem + (1vw - 0.62rem) * 0.2907, 1.125rem);
    min-height: 0vw; /* Safari resize fix */
    line-height: 1.5;
  }
  .site p.large,
p.gb-headline.large, p.wp-block.large {
    font-size: 1.125rem;
    /* 1.125rem(18px) @ 62rem(992px) increasing to 1.438rem(23.008px) @ 105rem(1680px) */
    font-size: clamp(1.125rem, 1.125rem + (1vw - 0.62rem) * 0.7279, 1.438rem);
    line-height: 1.4;
    min-height: 0vw; /* Safari resize fix */
  }
  .site p.small,
p.gb-headline.small, p.wp-block.small {
    font-size: 0.925rem;
  }
}
/**
* Set the width to auto instead of the same as the height
*/
.gb-icon svg {
  height: auto !important;
}

/**
* Place icon after headline
*/
.reverse-icon .gb-headline-text {
  order: -1;
}

.headline-alt {
  font-family: "neue-haas-grotesk-text", sans-serif;
  text-transform: none;
}

.distributor-map {
  position: relative;
}
.distributor-map__panel {
  height: auto !important;
  width: 100%;
}
@media (min-width: 48rem) {
  .distributor-map__panel {
    position: absolute;
    left: 2rem;
    top: 2rem;
    z-index: 1;
  }
}
@media (min-width: 48rem) {
  .distributor-map__panel {
    width: 40%;
  }
}
@media (min-width: 75rem) {
  .distributor-map__panel {
    width: 25%;
    max-width: 25rem;
  }
}
.distributor-map__listing {
  max-height: 500px;
  overflow-y: scroll;
  position: relative;
}
.distributor-map__message {
  padding: 1rem;
  margin-bottom: 0;
}
.distributor-map #facetwp-map {
  height: 600px;
}
.distributor-map .facetwp-facet {
  margin-bottom: 0;
}

.distributor-card {
  padding: 1rem;
  border-bottom: 1px solid var(--medium-gray);
  transition: all 0.2s ease-in-out;
  cursor: pointer;
}
.distributor-card.is-active {
  background-color: var(--light-gray);
}
.distributor-card:hover {
  background-color: var(--light-gray);
}
.distributor-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.distributor-card__title {
  margin-bottom: 0.5rem;
  line-height: 1.2;
  font-size: 1rem;
  padding-right: 1rem;
}
.distributor-card__type {
  display: flex;
}
.distributor-card__type svg {
  width: 17px;
}
.distributor-card__type > div {
  padding-right: 0.5rem;
}
.distributor-card__type > div:last-of-type {
  padding-right: 0;
}
.distributor-card__contact-info {
  font-size: 0.875rem;
  color: var(--text-color);
}

.facetwp-facet-distributor_cat {
  display: flex;
  padding: 0.7rem 1rem;
  border-top: 1px solid var(--medium-gray);
  border-bottom: 1px solid var(--medium-gray);
}
.facetwp-facet-distributor_cat > div {
  margin-right: 1rem;
}
.facetwp-facet-distributor_cat > div:last-of-type {
  margin-right: 0;
}
.facetwp-facet-distributor_cat .facetwp-checkbox {
  background: url("../images/checkbox.svg") 0 50% no-repeat;
  background-size: 17px 17px;
  padding-left: 22px;
}
.facetwp-facet-distributor_cat .facetwp-checkbox.checked {
  background: url("../images/checkbox-checked.svg") 0 50% no-repeat;
  background-size: 17px 17px;
}
.facetwp-facet-distributor_cat .facetwp-counter {
  display: none;
}

.facetwp-facet-distributor_proximity.facetwp-facet {
  display: flex;
  flex-wrap: nowrap;
}
.facetwp-facet-distributor_proximity.facetwp-facet .facetwp-input-wrap {
  width: 100%;
}
.facetwp-facet-distributor_proximity.facetwp-facet input.facetwp-location {
  width: 100%;
  min-width: 100px;
}

.accordion {
  background-color: transparent;
  color: #444;
  cursor: pointer;
  padding: 18px 18px 18px 0;
  margin-bottom: 0;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 1rem;
  transition: 0.4s;
}
.accordion.active, .accordion:hover, .accordion:focus {
  color: #444;
  background-color: transparent;
}
.accordion:last-child .panel {
  border-bottom: none;
}
.accordion span {
  font-weight: 400;
  padding-left: 0.5em;
}

.accordion:after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15.628 8.936'%3E%3Cpath d='M7.812 6.242L13.721.328a1.112 1.112 0 011.577 0 1.126 1.126 0 010 1.582l-6.7 6.7a1.115 1.115 0 01-1.54.033L.325 1.915A1.117 1.117 0 011.902.333z'/%3E%3C/svg%3E");
  display: inline-block;
  width: 16px;
  float: right;
  margin-left: 5px;
  transition: all 0.2s ease;
}

.active:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.panel {
  border-bottom: 1px solid var(--medium-gray);
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
}

.employee-wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  row-gap: 2rem;
  padding: 1rem 0 2rem;
}
@media (min-width: 48rem) {
  .employee-wrapper {
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}
@media (min-width: 62rem) {
  .employee-wrapper {
    grid-template-columns: repeat(4, 1fr);
  }
}
.employee-meta {
  font-size: 0.875rem;
  color: var(--text-color);
}
@media (min-width: 62rem) {
  .employee-meta {
    font-size: 0.925rem;
  }
}
.employee__title {
  margin-bottom: 0.5rem;
}
.employee figure {
  margin-bottom: 0.5rem;
}
.employee__image {
  border-radius: 5px;
}

.is-hidden {
  display: none;
}

.post-card {
  transition: all 0.3s ease-in-out;
  box-shadow: 0px 0.8px 2.2px -20px rgba(0, 0, 0, 0.02), 0px 2px 5.3px -20px rgba(0, 0, 0, 0.028), 0px 3.8px 10px -20px rgba(0, 0, 0, 0.035), 0px 6.7px 17.9px -20px rgba(0, 0, 0, 0.042), 0px 12.5px 33.4px -20px rgba(0, 0, 0, 0.05), 0px 30px 80px -20px rgba(0, 0, 0, 0.07);
}
.post-card:hover {
  box-shadow: 0px 1.7px 2.2px -15px rgba(0, 0, 0, 0.02), 0px 4px 5.3px -15px rgba(0, 0, 0, 0.028), 0px 7.5px 10px -15px rgba(0, 0, 0, 0.035), 0px 13.4px 17.9px -15px rgba(0, 0, 0, 0.042), 0px 25.1px 33.4px -15px rgba(0, 0, 0, 0.05), 0px 60px 80px -15px rgba(0, 0, 0, 0.07);
}
.post-card .dynamic-entry-excerpt p {
  color: var(--text-color);
}
@media (max-width: 62rem) {
  .post-card .dynamic-entry-excerpt p {
    font-size: 0.875rem;
    /* 0.875rem(14px) @ 17.5rem(280px) increasing to 0.925rem(14.8px) @ 62rem(992px) */
    font-size: calc(0.875rem + (1vw - 0.175rem) * 0.1124);
    /* Where: 0.1124 = 100 * font-size_difference / viewport_width_difference */
    /* Safari resize fix */
    min-height: 0vw;
  }
}
@media (min-width: 62rem) {
  .post-card .dynamic-entry-excerpt p {
    font-size: 0.925rem;
  }
}
.post-card .read-more {
  font-weight: 500;
  border-bottom: 2px solid var(--primary);
  margin-top: 5px;
}

.megamenu {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden; /*[1]*/
  width: 100%;
}
.megamenu[aria-hidden=false] {
  visibility: visible;
}
.megamenu__submenu {
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
}
.megamenu__submenu a {
  color: var(--light);
  font-family: neue-haas-grotesk-text;
  font-size: 1.5rem;
  text-transform: none;
}

.clicky-menu button {
  font-family: eurostile;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--dark);
  padding: 0 20px;
  line-height: 60px;
  background-color: transparent;
}
.clicky-menu button:focus {
  outline: none;
}
.clicky-menu button[aria-expanded=true] .dropdown-arrow {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

svg.dropdown-arrow {
  width: 13px;
  position: relative;
  top: -2px;
  margin-left: 0.5rem;
  transition: all 0.2s ease-in-out;
}

.home .clicky-menu button, .post-image-above-header .clicky-menu button {
  color: #fff;
}
.home .dropdown-arrow, .post-image-above-header .dropdown-arrow {
  fill: var(--light);
}

.submenu-open .site-logo svg {
  fill: #fff;
}
.submenu-open .main-navigation .main-nav ul li a,
.submenu-open .main-navigation .main-nav ul li button,
.submenu-open .main-navigation .main-nav ul li a:hover {
  color: var(--light);
}
.submenu-open .dropdown-arrow {
  fill: var(--light);
}

.main-navigation .main-nav ul li > a span,
.main-navigation .main-nav ul li > button span {
  transition: all 0.2s ease;
  border-bottom: 2px solid transparent;
}

.main-navigation .main-nav ul li[class*=current-menu-] > a span,
.main-navigation .main-nav ul li:not([class*=current-menu-]):hover > a span,
.main-navigation .main-nav ul li:not([class*=current-menu-]):hover > button span {
  border-bottom: 2px solid var(--primary);
}

.icon-pro-menu-bars svg, .icon-menu-bars svg {
  font-size: 40px;
}

.main-navigation .menu-bar-item.has-svg-icon > a {
  line-height: 40px;
}

.line {
  fill: none;
  stroke: currentcolor;
  stroke-width: 6;
  transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1), stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
}

.line1 {
  stroke-dasharray: 60 207;
  stroke-width: 6;
}

.line2 {
  stroke-dasharray: 60 60;
  stroke-width: 6;
}

.line3 {
  stroke-dasharray: 60 207;
  stroke-width: 6;
}

.slide-opened .line1 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
  stroke-width: 6;
}

.slide-opened .line2 {
  stroke-dasharray: 1 60;
  stroke-dashoffset: -30;
  stroke-width: 6;
}

.slide-opened .line3 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
  stroke-width: 6;
}

.slideout-navigation.main-navigation .main-nav ul li a {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.footer-menu {
  margin: 0;
  padding: 0;
  list-style: none;
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
.footer-menu a {
  padding: 0.3rem 0;
  font-size: 1.125rem;
  display: block;
  transition: all 0.2s ease;
}
.footer-menu a:hover {
  color: var(--primary);
}

.site-logo {
  z-index: 10;
  margin-right: auto;
}
.site-logo svg {
  width: 200px;
  fill: currentColor;
}
.site-logo a {
  line-height: 1;
}

.home .site-logo svg, .single-business .site-logo svg {
  fill: var(--light);
}

.main-navigation .inside-navigation {
  padding: 1rem 2rem;
}

.fouc .main-navigation {
  opacity: 0;
  transition: none;
}

.main-navigation {
  opacity: 1;
  transition: 1s opacity;
}
