/* Added fallbacks to help with CLS, feel free to remove if it doesn't help on your project */
/* Colours */
/* Fluid heading sizes - set your min/max sizes and you're done! */
/* Some device sizes to use with min-width */
/* adjusted breakpoints for above */
/* 100% widths look better than "Snapping" IMO */
/* Utility */
/* Additional Spacers -- don't think you'll need more than 7, but if you do -- maybe just use a custom class  :)  */
.banner p {
  color: #ffffff;
  font-size: 40px;
  line-height: 1.15;
  text-transform: uppercase;
  font-weight: 800; }
  .banner p:first-of-type {
    font-size: 20px;
    font-family: "Noto Serif", serif;
    font-style: italic;
    font-weight: 400; }
  @media (min-width: 769px) {
    .banner p {
      font-size: 50px; } }
  @media (min-width: 1025px) {
    .banner p {
      font-size: 60px; } }

.intro {
  padding: 100px 0 0px 0; }
  .intro h2 {
    color: #0069A6; }
  .intro h4 {
    color: #E9374B;
    font-style: italic; }
  .intro .imgs-row .img {
    height: 300px;
    padding-bottom: 15px; }
    .intro .imgs-row .img img,
    .intro .imgs-row .img picture {
      width: 100% !important;
      height: 100% !important;
      object-fit: cover; }
    @media (min-width: 769px) {
      .intro .imgs-row .img:nth-of-type(odd) {
        padding-right: 7px; }
      .intro .imgs-row .img:nth-of-type(even) {
        padding-left: 7px; } }

.products-section {
  padding: 100px 0 125px 0; }
  .products-section .sidebar-wrap-col {
    padding: 0 15px;
    width: 100%; }
    @media (min-width: 641px) {
      .products-section .sidebar-wrap-col {
        width: 275px; } }
    @media (min-width: 769px) {
      .products-section .sidebar-wrap-col {
        width: 300px; } }
    @media (min-width: 1025px) {
      .products-section .sidebar-wrap-col {
        width: 330px; } }
    .products-section .sidebar-wrap-col .sidebar-wrap {
      height: 100%;
      width: 100%;
      background-color: rgba(43, 39, 39, 0.04);
      padding: 30px; }
      .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories {
        margin-bottom: 50px; }
        .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .widget-title {
          margin-bottom: 0;
          border-bottom: 0.5px solid #A7A6A6;
          color: #204B6C;
          font-size: 20px;
          font-family: "Noto Serif", serif;
          font-style: italic;
          padding: 12px 20px 12px 0px; }
        .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories {
          list-style: none;
          padding-left: 0;
          display: block; }
          .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories.show {
            display: block; }
          .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-item {
            border-bottom: 0.5px solid #A7A6A6;
            padding: 12px 20px 12px 0px;
            margin-bottom: 0; }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-item > a {
              display: inline-block;
              color: #204B6C;
              font-size: 18px;
              font-weight: 700;
              font-family: "metropolis"; }
          .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent {
            position: relative;
            cursor: pointer;
            margin-bottom: 0; }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent > a {
              max-width: 160px;
              display: inline-block;
              color: #204B6C;
              font-size: 18px;
              font-weight: 700;
              font-family: "metropolis";
              margin-bottom: 0; }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent:after {
              font-family: 'icomoon' !important;
              content: "\e910";
              position: absolute;
              right: 5px;
              top: 16px;
              transition: all ease-in-out 300ms;
              font-size: 12px;
              font-weight: 800;
              color: #204B6C; }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent.show:after {
              font-family: 'icomoon' !important;
              content: "\e90f"; }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent .children {
              list-style: none;
              display: none;
              transition: all ease-in-out 300ms;
              margin-top: 15px;
              padding-left: 0; }
              .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent .children li {
                margin-bottom: 15px; }
                .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent .children li a {
                  color: #204B6C;
                  font-size: 16px;
                  font-weight: 400;
                  font-family: "metropolis"; }
                .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent .children li:after {
                  top: 0; }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent.current-cat-parent > .children {
              display: block; }
              .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent.current-cat-parent > .children .current-cat > a {
                color: #E9374B !important;
                font-weight: bold; }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent.current-cat-parent:after {
              font-family: 'icomoon' !important;
              content: "\e910";
              transform: rotate(90deg); }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent.current-cat > a {
              color: #E9374B !important; }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent.current-cat > .children {
              display: block; }
            .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories > li.cat-parent.current-cat:after {
              font-family: 'icomoon' !important;
              content: "\e910";
              transform: rotate(90deg); }
          .products-section .sidebar-wrap-col .sidebar-wrap .widget_product_categories .product-categories .current-cat > a {
            color: #E9374B !important; }
      .products-section .sidebar-wrap-col .sidebar-wrap .filter-headline {
        margin-bottom: 0;
        color: #204B6C;
        font-size: 20px;
        font-family: "Noto Serif", serif;
        font-style: italic;
        padding: 12px 20px 12px 0px; }
      .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .widget-title-holder .widget-title {
        font-size: 18px;
        font-weight: 700;
        color: #204B6C;
        border-top: 0.5px solid #A7A6A6;
        font-family: "metropolis";
        margin-bottom: 0;
        padding: 12px 20px 12px 0px;
        position: relative;
        cursor: pointer; }
        .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .widget-title-holder .widget-title:after {
          font-family: 'icomoon' !important;
          content: "\e910";
          position: absolute;
          right: 5px;
          top: 16px;
          transition: all ease-in-out 300ms;
          font-size: 12px;
          font-weight: 800;
          color: #204B6C; }
      .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .widget-title-holder.show .widget-title:after {
        content: "\e90f"; }
      .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav:last-of-type {
        border-bottom: 0.5px solid #A7A6A6; }
      .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list {
        list-style: none;
        padding-left: 0;
        display: none;
        transition: all ease-in-out 300ms; }
        .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list > li {
          margin-bottom: 15px; }
          .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list > li span {
            display: none; }
          .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list > li a {
            color: #204B6C;
            font-size: 16px;
            font-weight: 400;
            font-family: "metropolis";
            display: block;
            position: relative;
            padding-right: 50px; }
            .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list > li a:after {
              content: '';
              height: 14px;
              width: 14px;
              background-color: #ffffff;
              position: absolute;
              right: 4px;
              bottom: 7px;
              border: solid 1px #204B6C; }
          .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list > li.chosen a:before {
            font-family: 'icomoon' !important;
            content: "\e90c";
            margin-right: 0;
            height: 14px;
            width: 14px;
            color: #ffffff;
            background-color: #204B6C;
            position: absolute;
            right: 4px;
            bottom: 7px;
            z-index: 9;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 10px; }
        .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list .cat-parent {
          position: relative;
          cursor: pointer;
          margin-bottom: 0; }
          .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list .cat-parent a {
            max-width: 160px;
            display: inline-block;
            color: #000000; }
          .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list .cat-parent:after {
            font-family: 'icomoon' !important;
            content: "\e910";
            position: absolute;
            right: 5px;
            transform-origin: 50;
            top: 8px;
            transition: all ease-in-out 300ms; }
          .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list .cat-parent.show:after {
            font-family: 'icomoon' !important;
            content: "\e90f"; }
          .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list .cat-parent .children {
            list-style: none;
            display: none;
            padding-left: 1.3rem;
            transition: all ease-in-out 300ms;
            margin-top: 15px; }
            .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list .cat-parent .children li {
              margin-bottom: 15px; }
              .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list .cat-parent .children li a {
                color: #565656; }
              .products-section .sidebar-wrap-col .sidebar-wrap .woocommerce-widget-layered-nav .woocommerce-widget-layered-nav-list .cat-parent .children li:after {
                top: 0; }
  .products-section .woocommerce-ordering {
    display: none; }
  .products-section .woocommerce-result-count {
    color: rgba(43, 39, 39, 0.41);
    font-size: 16px;
    padding-top: 0px; }
    @media (min-width: 1025px) {
      .products-section .woocommerce-result-count {
        margin: 0;
        padding-top: 24px; } }
  .products-section .woo-filters {
    padding: 0 15px;
    margin-bottom: 3rem;
    display: inline-block;
    width: 100%; }
    .products-section .woo-filters .woocommerce-product-search {
      display: flex;
      width: 100%; }
      @media (min-width: 1025px) {
        .products-section .woo-filters .woocommerce-product-search {
          float: right;
          width: 300px; } }
      .products-section .woo-filters .woocommerce-product-search .input-btn-group {
        position: relative;
        width: 100%; }
        .products-section .woo-filters .woocommerce-product-search .input-btn-group input[type='search'] {
          width: 100%;
          outline: none;
          border: 1px solid #2B2727;
          border-radius: 0px;
          padding: 15px 15px 15px 50px;
          height: auto !important;
          font-size: 16px;
          opacity: 1;
          background-color: transparent;
          font-family: "metropolis";
          font-weight: 300;
          color: #000000; }
        .products-section .woo-filters .woocommerce-product-search .input-btn-group button {
          position: absolute;
          left: 0;
          background: transparent;
          border: 0;
          outline: 0;
          color: rgba(43, 39, 39, 0.41);
          top: 13px; }
          .products-section .woo-filters .woocommerce-product-search .input-btn-group button span {
            font-size: 24px;
            color: rgba(43, 39, 39, 0.41);
            padding: 0 10px; }
  @media (max-width: 1025px) {
    .products-section .content {
      overflow: hidden; } }
  .products-section .vid-box {
    background: transparent linear-gradient(120deg, #04121C 0%, #0069A6 100%) 0% 0% no-repeat padding-box;
    color: #ffffff;
    padding: 30px 15px; }
    @media (min-width: 769px) {
      .products-section .vid-box {
        padding: 30px; } }
    @media (min-width: 1025px) {
      .products-section .vid-box {
        padding: 35px 30px 35px 45px; } }
    .products-section .vid-box p {
      color: #ffffff; }
    .products-section .vid-box h5 {
      font-style: italic;
      z-index: 9;
      margin-bottom: 0;
      position: relative;
      width: fit-content; }
      @media (min-width: 1025px) {
        .products-section .vid-box h5 {
          width: 125%;
          overflow: hidden; } }
      .products-section .vid-box h5:after {
        content: '';
        position: absolute;
        top: 13px;
        height: 2px;
        background-color: #E9374B;
        margin-left: 15px;
        width: 100%; }
    .products-section .vid-box .vid {
      display: flex;
      justify-content: center;
      align-items: center;
      text-decoration: none;
      position: relative;
      overflow: hidden; }
      .products-section .vid-box .vid span {
        position: absolute;
        color: #ffffff;
        font-size: 30px;
        border: 3px solid #E9374B;
        border-radius: 50%;
        padding: 13px; }
      .products-section .vid-box .vid:hover span {
        color: #E9374B; }
      .products-section .vid-box .vid .vid-thumb {
        object-fit: cover;
        max-width: 100% !important;
        width: 100% !important; }
  .products-section .products .product-card {
    margin-bottom: 2rem;
    position: relative; }
    .products-section .products .product-card .product-img {
      height: 222px;
      padding: 30px;
      overflow: hidden;
      border: 1px solid #A7A6A6; }
      .products-section .products .product-card .product-img img,
      .products-section .products .product-card .product-img picture {
        width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
        max-height: 200px !important;
        transition: all 0.2s linear;
        object-fit: contain; }
    .products-section .products .product-card .woocommerce-loop-product__link:hover img,
    .products-section .products .product-card .woocommerce-loop-product__link:hover picture {
      transform: scale(1.02, 1.02);
      transition: all 0.2s linear; }
    .products-section .products .product-card > .woocommerce-loop-product__link {
      text-decoration: none;
      padding: 1.5rem 0 0 0;
      display: block; }
      .products-section .products .product-card > .woocommerce-loop-product__link .woocommerce-loop-product__title {
        font-size: 18px;
        font-family: "metropolis";
        color: #0069A6;
        font-weight: bold;
        text-decoration: none;
        margin-bottom: 6px; }
  .products-section .woocommerce-pagination {
    margin-top: 45px; }
    .products-section .woocommerce-pagination .page-numbers {
      justify-content: center;
      border: 0 !important; }
      .products-section .woocommerce-pagination .page-numbers li {
        border: 0 !important;
        margin-right: 12px !important; }
      .products-section .woocommerce-pagination .page-numbers .current,
      .products-section .woocommerce-pagination .page-numbers a {
        margin-right: 0px;
        height: 40px;
        width: 40px;
        line-height: 1;
        text-align: center;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        padding: 0 !important;
        text-decoration: none;
        color: #E9374B;
        font-family: "metropolis";
        font-size: 18px; }
        .products-section .woocommerce-pagination .page-numbers .current:hover,
        .products-section .woocommerce-pagination .page-numbers a:hover {
          color: #ffffff;
          background-color: #E9374B; }
        .products-section .woocommerce-pagination .page-numbers .current.prev, .products-section .woocommerce-pagination .page-numbers .current.next,
        .products-section .woocommerce-pagination .page-numbers a.prev,
        .products-section .woocommerce-pagination .page-numbers a.next {
          height: 40px;
          width: 40px;
          line-height: 1;
          margin-right: 0px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          padding: 0 !important;
          color: #E9374B;
          font-family: "metropolis";
          font-size: 29px; }
          .products-section .woocommerce-pagination .page-numbers .current.prev span, .products-section .woocommerce-pagination .page-numbers .current.next span,
          .products-section .woocommerce-pagination .page-numbers a.prev span,
          .products-section .woocommerce-pagination .page-numbers a.next span {
            color: #E9374B;
            background-color: transparent;
            margin-right: 0;
            font-size: 18px; }
          .products-section .woocommerce-pagination .page-numbers .current.prev:hover, .products-section .woocommerce-pagination .page-numbers .current.next:hover,
          .products-section .woocommerce-pagination .page-numbers a.prev:hover,
          .products-section .woocommerce-pagination .page-numbers a.next:hover {
            color: #ffffff;
            background-color: #E9374B; }
            .products-section .woocommerce-pagination .page-numbers .current.prev:hover span, .products-section .woocommerce-pagination .page-numbers .current.next:hover span,
            .products-section .woocommerce-pagination .page-numbers a.prev:hover span,
            .products-section .woocommerce-pagination .page-numbers a.next:hover span {
              color: #ffffff; }
        .products-section .woocommerce-pagination .page-numbers .current.current,
        .products-section .woocommerce-pagination .page-numbers a.current {
          color: #ffffff;
          background-color: #E9374B; }

.trade-associates {
  padding: 75px 0 75px 0;
  background: rgba(43, 39, 39, 0.04); }
  @media (min-width: 769px) {
    .trade-associates {
      background: linear-gradient(90deg, #ffffff 2%, rgba(43, 39, 39, 0.04) 0%); } }
  @media (min-width: 1141px) {
    .trade-associates {
      background: linear-gradient(90deg, #ffffff 3%, rgba(43, 39, 39, 0.04) 0%); } }
  @media (min-width: 1400px) {
    .trade-associates {
      background: linear-gradient(90deg, #ffffff 5%, rgba(43, 39, 39, 0.04) 0%); } }
  .trade-associates h3 {
    color: #0069A6;
    font-size: 30px; }
    @media (min-width: 769px) {
      .trade-associates h3 {
        font-size: 36px; } }
  .trade-associates .container {
    position: relative;
    padding-left: 60px; }
    .trade-associates .container:before {
      position: absolute;
      content: '';
      top: -125px;
      bottom: 0px;
      left: 30px;
      width: 3px;
      background-color: #E9374B; }
    .trade-associates .container .log-wrap img,
    .trade-associates .container .log-wrap picture {
      margin-bottom: 1rem; }
      @media (min-width: 641px) {
        .trade-associates .container .log-wrap img,
        .trade-associates .container .log-wrap picture {
          max-width: 238px !important; } }
      @media (min-width: 769px) {
        .trade-associates .container .log-wrap img,
        .trade-associates .container .log-wrap picture {
          max-width: 190px !important; } }
      @media (min-width: 1141px) {
        .trade-associates .container .log-wrap img,
        .trade-associates .container .log-wrap picture {
          max-width: 210px !important; } }
    .trade-associates .container .log-wrap p {
      font-size: 16px; }
