@charset "UTF-8";
/*
Theme Name: visionsharp
Theme URI: https://www.visionsharp.co.uk
Author: Visionsharp
Author URI: https://www.visionsharp.co.uk
Version: 1.0
*/
@import "node_modules/@fortawesome/fontawesome-pro/css/all.min.css";
@font-face {
  font-family: "PoetsenOne-Regular";
  src: url("fonts/PoetsenOne-Regular.eot");
  src: url("fonts/PoetsenOne-Regular.eot?#iefix") format("embedded-opentype"), url("fonts/PoetsenOne-Regular.woff2") format("woff2"), url("fonts/PoetsenOne-Regular.woff") format("woff"), url("fonts/PoetsenOne-Regular.ttf") format("truetype"), url("fonts/PoetsenOne-Regular.svg#PoetsenOne-Regular") format("svg");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
:root {
  --font-size-xxxs: calc(max(1.2rem, 14px));
  --font-size-xxs: calc(max(1.6rem, 14px));
  --font-size-xs: calc(max(1.8rem, 14px));
  --font-size-base: calc(max(2rem, 14px));
  --font-size-md: calc(max(2.5rem, 14px));
  --font-size-lg: calc(max(3rem, 14px));
  --font-size-xl: calc(max(4rem, 14px));
  --font-size-2xl: calc(max(5rem, 14px));
  --font-size-3xl: calc(max(7rem, 14px));
}

/***
    The new CSS reset - version 1.8.4 (last updated 14.2.2023)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Reapply the pointer cursor for anchor tags */
a, button {
  cursor: revert;
}

/* Remove list styles (bullets/numbers) */
ol, ul, menu {
  list-style: none;
}

/* For images to not be able to exceed their container */
img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

/* removes spacing between cells in tables */
table {
  border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input, textarea {
  -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
  -webkit-appearance: revert;
  appearance: revert;
}

/* preformatted text - use only for this feature */
:where(pre) {
  all: revert;
}

/* reset default text opacity of input placeholder */
::placeholder {
  color: unset;
}

/* remove default dot (•) sign */
::marker {
  content: initial;
}

/* fix the feature of 'hidden' attribute.
 display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none;
}

/* revert for bug in Chromium browsers
 - fix for the content editable attribute will work properly.
 - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element*/
:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable=true]) {
  -webkit-user-drag: element;
}

/* Revert Modal native behavior */
:where(dialog:modal) {
  all: revert;
}

html {
  scroll-behavior: smooth;
  font-size: 10px;
}
@media (min-width: 992px) {
  html {
    font-size: 7.1145px;
  }
}
@media (min-width: 1400px) {
  html {
    font-size: 7.5px;
  }
}
@media (min-width: 1610px) {
  html {
    font-size: 10px;
  }
}

body {
  line-height: 1.5;
  font-weight: 400;
  font-size: var(--font-size-base);
  font-family: neue-haas-grotesk-display, sans-serif;
  line-height: 2;
  overflow-x: hidden;
}

.editor-styles-wrapper .wp-block {
  max-width: 100%;
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
}
@media (min-width: 992px) {
  .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
    max-width: 92%;
  }
}

.PoetsenOne {
  font-family: PoetsenOne-regular;
  letter-spacing: -0.1rem;
}

.btn {
  background-color: #0053D9;
  height: 5.6rem;
  line-height: 5.6rem;
  width: 16.7rem;
  text-align: center;
  color: #fff;
  font-size: 1.5rem;
  display: inline-block;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 992px) {
  .btn {
    height: 7rem;
    line-height: 7rem;
    width: 24.5rem;
    font-size: var(--font-size-base);
  }
}
.btn:hover {
  background-color: #003996;
}
.btn-white {
  background-color: #fff;
  color: #0053D9;
}
.btn-white:hover {
  background-color: #EFEEF2;
}

.burger {
  z-index: 9999;
  height: 70px;
  width: 70px;
  transition: all 0.3s ease;
  cursor: pointer;
  position: relative;
}
.burger_top, .burger_middle, .burger_bottom {
  position: absolute;
  background: #0053D9;
  border: none;
  height: 3px;
  width: 50%;
  left: 50%;
  transform: translateX(-50%);
  transition: all 0.3s ease;
}
.burger_top {
  top: 17px;
}
.burger_middle {
  top: 30px;
}
.burger_bottom {
  top: 43px;
}
.burger-active .burger_top {
  transform: translateY(13px) translateX(-50%) rotate(45deg);
  background: #0053D9;
}
.burger-active .burger_middle {
  opacity: 0;
  background: #0053D9;
}
.burger-active .burger_bottom {
  transform: translateY(-13px) translateX(-50%) rotate(-45deg);
  background: #0053D9;
}

.header {
  position: fixed;
  z-index: 9999;
  width: 100%;
  transition: all 300ms ease-in-out;
}
.header-relative {
  background: #2B2B2B;
}
.header-fill {
  background: #2B2B2B;
}
.header_container {
  display: flex;
  justify-content: space-between;
}
@media (min-width: 992px) {
  .header_container {
    min-height: 10.2rem;
    position: relative;
    align-items: center;
  }
}
.header_logo {
  width: 10rem;
  margin-left: 1.8rem;
  margin-top: 1rem;
  display: block;
  position: relative;
  z-index: 1;
}
@media (min-width: 992px) {
  .header_logo {
    width: 9.8rem;
    margin-top: 0.8rem;
    margin-bottom: 0.8rem;
    max-height: 8.6rem;
  }
}
@media (min-width: 992px) {
  .header_button {
    display: none;
  }
}
.header_button .btn {
  width: 100%;
}
.header_menus {
  display: flex;
  align-items: center;
}
@media (min-width: 992px) {
  .header_menus {
    margin-left: auto;
  }
}
.header_menu {
  display: none;
  align-items: center;
  flex: 1;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  flex-direction: column;
  padding: 90px 20px 20px;
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  background-color: #2B2B2B;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 992px) {
  .header_menu {
    display: flex;
    position: relative;
    padding: 0;
    background-color: inherit;
    height: auto;
    overflow-y: revert;
    overflow-x: revert;
  }
}
.header_menu-on {
  display: block;
}
.header_menu_list {
  display: flex;
  flex-direction: column;
  padding: 40px 0;
}
@media (min-width: 992px) {
  .header_menu_list {
    flex-direction: row;
    padding: 0;
  }
}
@media (min-width: 992px) {
  .header_menu_item {
    padding: 0 2.5rem;
  }
}
.header_menu_link {
  color: #fff;
  line-height: 1.14;
  font-size: var(--font-size-lg);
  display: flex;
  padding: 10px 0;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  position: relative;
  bottom: 0;
  align-items: center;
}
@media (min-width: 992px) {
  .header_menu_link {
    font-size: var(--font-size-base);
    padding: 0;
  }
}
.header_menu_link:hover {
  color: #0053D9;
}
@media (min-width: 992px) {
  .header_menu_link:hover {
    color: #EFEEF2;
    bottom: 3px;
  }
}
.header_menu_link_chevron {
  font-size: 15px;
  margin: 0 0 0 5px;
  fill: currentColor;
  transition: transform 0.3s ease;
  cursor: pointer;
}
.header_menu_link_chevron-active {
  transform: rotate(180deg);
}
.header_call {
  padding: 0 5rem 0 2.5rem;
  display: none;
}
.header_call-mobile {
  display: block;
  padding: 0;
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .header_call-mobile {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .header_call {
    display: block;
  }
}
.header_call_call {
  color: #fff;
  font-size: var(--font-size-xxs);
  line-height: 1.18;
}
.header_call_tel {
  color: #fff;
  font-size: 3rem;
  line-height: 1;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.header_call_tel:hover {
  color: #0053D9;
}
@media (min-width: 992px) {
  .header_call_tel:hover {
    color: #fff;
  }
}
.header_quote {
  height: 13rem;
  width: 16.5rem;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background: rgba(0, 83, 217, 0.8);
  display: none;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 992px) {
  .header_quote {
    display: flex;
    height: 10.2rem;
  }
}
.header_quote:hover {
  background: rgba(0, 57, 150, 0.8);
}
.header_quote_icon, .header_quote_text {
  color: #fff;
}
.header_quote_icon {
  text-align: center;
  line-height: 1.3;
  font-size: var(--font-size-lg);
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .header_quote_icon {
    margin-bottom: 0.6rem;
  }
}
.header_quote_text {
  line-height: 1;
}
.header_basket {
  height: 13rem;
  width: 16.5rem;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  background: rgba(0, 83, 217, 0.8);
  display: none;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 992px) {
  .header_basket {
    display: flex;
    height: 10.2rem;
  }
}
.header_basket:hover {
  background: rgba(0, 57, 150, 0.8);
}
.header_basket_icon, .header_basket_text {
  color: #fff;
}
.header_basket_icon {
  position: relative;
  text-align: center;
  line-height: 1.3;
  font-size: var(--font-size-lg);
  margin-bottom: 1rem;
  display: inline-block;
}
@media (min-width: 992px) {
  .header_basket_icon {
    margin-bottom: 0.6rem;
  }
}
.header_basket_count {
  position: absolute;
  top: -0.6rem;
  right: -1.2rem;
  min-width: 2rem;
  height: 2rem;
  padding: 0 0.5rem;
  background: #fff;
  color: #0053D9;
  border-radius: 1rem;
  font-size: var(--font-size-xxs);
  font-weight: 700;
  line-height: 2rem;
  text-align: center;
}
.header_basket_count-empty {
  display: none;
}
.header_basket_text {
  line-height: 1;
}
.header_buttons {
  height: 11rem;
  width: auto;
  min-width: 11rem;
  padding: 0 1.5rem;
  background: #1D1D1D;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
}
@media (min-width: 992px) {
  .header_buttons {
    display: none;
    height: 13rem;
    width: 13rem;
  }
}
.header_basket_mobile {
  position: relative;
  height: 70px;
  width: 70px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
@media (min-width: 992px) {
  .header_basket_mobile {
    display: none;
  }
}
.header_basket_mobile:hover {
  color: #0053D9;
}
.header_basket_mobile .header_basket_count {
  top: 0.4rem;
  right: 0.4rem;
}

.nav__sub-list {
  display: none;
  padding-left: 2rem;
}
@media (min-width: 992px) {
  .nav__sub-list {
    position: absolute;
    top: 4.8rem;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease-in-out;
    background: #2b2b2b;
    width: 26.1rem;
  }
}
.nav__sub-list .header_menu_item {
  margin: 0;
  padding: 0;
  border: 0;
}
.nav__sub-list .header_menu_link {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.header_menu_item:hover .nav__sub-list {
  opacity: 1;
  visibility: visible;
}

.footer_contact {
  background-color: #EFEEF2;
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 992px) {
  .footer_contact {
    padding-top: 13rem;
    padding-bottom: 15rem;
  }
}
.footer_container {
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px) {
  .footer_container {
    justify-content: space-between;
    flex-direction: row;
  }
}
.footer_col:first-child {
  width: 100%;
}
@media (min-width: 992px) {
  .footer_col:first-child {
    max-width: 36.86%;
  }
}
.footer_col:last-child {
  width: 100%;
}
@media (min-width: 992px) {
  .footer_col:last-child {
    max-width: 51.51%;
  }
}
.footer_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  margin-bottom: 7rem;
  font-weight: 500;
  color: #303030;
}
@media (min-width: 992px) {
  .footer_title {
    font-size: var(--font-size-2xl);
    line-height: 1;
    margin-bottom: 3rem;
  }
}
.footer_content {
  color: #585858;
  font-weight: 500;
  font-size: var(--font-size-xxs);
  line-height: 1.875;
}
@media (min-width: 992px) {
  .footer_content {
    font-size: var(--font-size-base);
    line-height: 2;
  }
}
.footer_content p {
  margin-bottom: 3.8rem;
}
.footer_menus {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
@media (min-width: 992px) {
  .footer_menus {
    flex-direction: row;
    margin-bottom: 11rem;
  }
}
.footer_menus_col {
  width: 100%;
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px) {
  .footer_menus_col {
    max-width: 47%;
    flex-direction: row;
  }
}
.footer_menus_col:first-child {
  flex-direction: column;
  align-items: center;
  margin-bottom: 9.5rem;
}
@media (min-width: 992px) {
  .footer_menus_col:first-child {
    align-items: flex-start;
    margin-bottom: 0;
  }
}
.footer_menus_logo {
  width: 13.3rem;
  margin-bottom: 4.4rem;
}
.footer_menus_socials {
  display: flex;
}
.footer_menus_socials_item {
  height: 5rem;
  width: 5rem;
  background-color: #fff;
  border-radius: 50%;
  margin-right: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.9rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.footer_menus_socials_item:hover {
  background-color: #0053D9;
}
.footer_menus_socials_item:last-child {
  margin-right: 0;
}
.footer_menus_menu_list {
  text-align: center;
}
@media (min-width: 992px) {
  .footer_menus_menu_list {
    text-align: left;
  }
}
.footer_menu {
  width: 100%;
  margin-bottom: 3rem;
}
@media (min-width: 992px) {
  .footer_menu {
    max-width: 50%;
    margin-bottom: 0;
  }
}
.footer_menu:last-child {
  margin-bottom: 0;
}
.footer_menu_list {
  text-align: center;
}
@media (min-width: 992px) {
  .footer_menu_list {
    text-align: left;
  }
}
.footer_menu_item {
  line-height: 1;
  margin-bottom: 2.4rem;
}
@media (min-width: 992px) {
  .footer_menu_item {
    line-height: 2;
    margin-bottom: 0;
  }
}
.footer_menu_title {
  color: #fff;
  font-size: var(--font-size-lg);
  line-height: 1.33;
  margin-bottom: 3rem;
  text-align: center;
  font-weight: 300;
}
@media (min-width: 992px) {
  .footer_menu_title {
    text-align: left;
    font-weight: 400;
  }
}
.footer_menu_link {
  color: #fff;
  font-size: var(--font-size-base);
  line-height: 1.66;
  margin-bottom: 2.4rem;
  font-weight: 300;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 992px) {
  .footer_menu_link {
    font-weight: 400;
  }
}
.footer_menu_link:hover {
  color: #0053D9;
}
.footer_menu_cols {
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px) {
  .footer_menu_cols {
    flex-direction: row;
  }
}
.footer_menu_col {
  width: 100%;
}
@media (min-width: 992px) {
  .footer_menu_col {
    max-width: 50%;
  }
}
.footer_info {
  background-color: #2B2B2B;
  padding-top: 5rem;
  padding-bottom: 2.7rem;
}
@media (min-width: 992px) {
  .footer_info {
    padding-top: 10rem;
    padding-bottom: 5rem;
  }
}
.footer_linear {
  background: linear-gradient(90deg, #0053D9 0%, #E4B704 100%);
  width: 100%;
  height: 2rem;
}
.footer_copyright {
  display: flex;
  justify-content: space-between;
  flex-direction: column-reverse;
}
@media (min-width: 992px) {
  .footer_copyright {
    flex-direction: row;
  }
}
.footer_copyright_date {
  color: #fff;
  font-size: var(--font-size-xs);
  line-height: 1.66;
  text-align: center;
}
@media (min-width: 992px) {
  .footer_copyright_date {
    text-align: left;
  }
}
.footer_copyright_visionsharp {
  color: #fff;
  font-size: var(--font-size-xs);
  line-height: 1.66;
  text-align: center;
}
@media (min-width: 992px) {
  .footer_copyright_visionsharp {
    text-align: left;
  }
}
.footer_copyright_visionsharp a {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.footer_copyright_visionsharp a:hover {
  color: #0053D9;
}
.footer .gform-theme--foundation .gform_fields {
  row-gap: 1rem;
  column-gap: 1rem;
}
.footer .gform-theme--foundation .gfield .ginput_password.large,
.footer .gform-theme--foundation .gfield input.large,
.footer .gform-theme--foundation .gfield select.large,
.footer .gform-theme--foundation .gfield textarea.large {
  height: 5.8rem;
  font-size: var(--font-size-xxs);
  line-height: 5.8rem;
  padding: 0 2rem;
  border-radius: 0;
  border: 0;
  font-weight: 500;
  box-shadow: none;
}
@media (min-width: 992px) {
  .footer .gform-theme--foundation .gfield .ginput_password.large,
  .footer .gform-theme--foundation .gfield input.large,
  .footer .gform-theme--foundation .gfield select.large,
  .footer .gform-theme--foundation .gfield textarea.large {
    height: 7rem;
    line-height: 7rem;
    font-size: var(--font-size-base);
  }
}
.footer .gform-theme--foundation .gfield textarea.large {
  height: 12.5rem;
  line-height: 2;
  padding: 2rem;
  min-block-size: 12.5rem;
}
@media (min-width: 992px) {
  .footer .gform-theme--foundation .gfield textarea.large {
    height: 15rem;
    min-block-size: 15rem;
  }
}
.footer .gform-theme--foundation .gform_footer {
  justify-content: flex-end;
}
.footer #gform_submit_button_1 {
  background-color: #0053D9;
  height: 5.7rem;
  line-height: 5.7rem;
  width: 100%;
  text-align: center;
  color: #fff;
  font-size: var(--font-size-xxs);
  display: inline-block;
  border-radius: 0;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 992px) {
  .footer #gform_submit_button_1 {
    width: calc(50% - 0.5rem);
    height: 7rem;
    line-height: 7rem;
    font-size: var(--font-size-base);
  }
}
.footer #gform_submit_button_1:hover {
  background-color: #003996;
}
.footer .gform-theme--framework .gform_validation_errors {
  background-color: inherit;
  border: 0;
  box-shadow: none;
}
.footer .gform-theme--framework .gform_validation_errors .gform_submission_error {
  font-size: var(--font-size-base);
  font-weight: 500;
  line-height: 1.66;
}
.footer .gform-theme--framework .gfield_validation_message {
  font-size: var(--font-size-xs);
  font-weight: 500;
  line-height: 1.66;
}

.hero {
  position: relative;
}
@media (min-width: 992px) {
  .hero {
    min-height: 76vh;
  }
}
.hero_wrapper {
  position: relative;
  z-index: 1;
  padding: 0;
  display: flex;
  align-items: center;
  padding-bottom: 2rem;
}
@media (min-width: 992px) {
  .hero_wrapper {
    min-height: 76vh;
    padding-bottom: 0;
  }
}
.hero_col {
  width: 100%;
  padding-top: 16rem;
}
@media (min-width: 992px) {
  .hero_col {
    max-width: 47.5%;
    padding-top: 8rem;
  }
}
.hero_title {
  line-height: 1;
  color: #fff;
  margin-bottom: 3rem;
  font-size: var(--font-size-2xl);
  font-weight: 300;
}
@media (min-width: 992px) {
  .hero_title {
    font-size: var(--font-size-3xl);
    font-weight: 400;
  }
}
.hero_content {
  font-size: var(--font-size-xxs);
  line-height: 1.875;
  color: #fff;
  margin-bottom: 3rem;
}
@media (min-width: 992px) {
  .hero_content {
    font-size: var(--font-size-base);
    line-height: 2;
  }
}
.hero_image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}
.hero_buttons {
  display: flex;
}
.hero_button {
  width: 50%;
}
@media (min-width: 992px) {
  .hero_button {
    width: auto;
  }
}
.hero_button:first-child {
  margin-right: 1rem;
}
@media (min-width: 992px) {
  .hero_button:first-child {
    margin-right: 2rem;
  }
}
.hero_button:last-child {
  margin-left: 1rem;
}
@media (min-width: 992px) {
  .hero_button:last-child {
    margin-left: 0;
  }
}
.hero_button_button {
  width: 100%;
}
@media (min-width: 992px) {
  .hero_button_button {
    width: 24.5rem;
  }
}

.twoColumn {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 992px) {
  .twoColumn {
    padding-top: 15rem;
    padding-bottom: 15rem;
  }
}
.twoColumn_cols {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.twoColumn_columnOne {
  width: 100%;
}
@media (min-width: 992px) {
  .twoColumn_columnOne {
    max-width: 47%;
  }
}
.twoColumn_columnTwo {
  width: 100%;
}
@media (min-width: 992px) {
  .twoColumn_columnTwo {
    max-width: 46%;
  }
}
.twoColumn_columnOne_title, .twoColumn_columnTwo_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  color: #303030;
  font-weight: 500;
  margin-bottom: 3rem;
}
@media (min-width: 992px) {
  .twoColumn_columnOne_title, .twoColumn_columnTwo_title {
    font-size: var(--font-size-xl);
    line-height: 1.25;
    margin-bototm: 0;
  }
}
.twoColumn_columnOne_content, .twoColumn_columnTwo_content {
  font-size: var(--font-size-xxs);
  line-height: 1.875;
  color: #585858;
}
@media (min-width: 992px) {
  .twoColumn_columnOne_content, .twoColumn_columnTwo_content {
    font-size: var(--font-size-base);
    line-height: 2;
  }
}

.categoryGrid_grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-gap: 1rem;
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .categoryGrid_grid {
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 0.6rem;
    margin-bottom: 0.6rem;
  }
}
.categoryGrid_grid_link {
  display: block;
  position: relative;
  overflow: hidden;
  aspect-ratio: 1/1;
}
.categoryGrid_grid_link > div:first-child {
  height: 100%;
}
.categoryGrid_grid_link:hover .categoryGrid_grid_image {
  transform: scale(1.2);
}
.categoryGrid_grid_overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  background-color: rgba(43, 43, 43, 0.5);
}
.categoryGrid_grid_overlay2 {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  height: 11.5rem;
  background: linear-gradient(180deg, rgba(43, 43, 43, 0) 0%, rgb(43, 43, 43) 100%);
  display: flex;
  align-items: flex-end;
}
@media (min-width: 992px) {
  .categoryGrid_grid_overlay2 {
    height: 18.5rem;
  }
}
.categoryGrid_grid_image {
  display: block;
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.categoryGrid_grid_title {
  color: #fff;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding-left: 3rem;
  padding-right: 3rem;
  padding-bottom: 3.6rem;
  font-size: var(--font-size-base);
  line-height: 1;
}
@media (min-width: 992px) {
  .categoryGrid_grid_title {
    padding-left: 5rem;
    padding-right: 5rem;
    padding-bottom: 5rem;
    font-size: var(--font-size-lg);
    line-height: 1.33;
  }
}
.categoryGrid_grid_title_plus {
  font-size: 2.4rem;
}
@media (min-width: 992px) {
  .categoryGrid_grid_title_plus {
    font-size: var(--font-size-xl);
  }
}

.contentImage {
  background-color: #2B2B2B;
}
.contentImage_container {
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px) {
  .contentImage_container {
    flex-direction: row;
  }
}
.contentImage_col {
  width: 100%;
  display: flex;
  align-items: center;
}
@media (min-width: 992px) {
  .contentImage_col {
    max-width: 50%;
  }
}
.contentImage_col_content {
  padding: 5rem 2rem;
}
@media (min-width: 992px) {
  .contentImage_col_content {
    padding: 10rem;
  }
}
.contentImage_image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.contentImage_title {
  color: #fff;
  margin-bottom: 3rem;
  font-size: var(--font-size-lg);
  line-height: 1.33;
}
@media (min-width: 992px) {
  .contentImage_title {
    font-size: var(--font-size-2xl);
    line-height: 1;
  }
}
.contentImage_content {
  color: #fff;
  margin-bottom: 5rem;
  font-size: var(--font-size-xxs);
  line-height: 2.5;
}
@media (min-width: 992px) {
  .contentImage_content {
    margin-bottom: 3rem;
    font-size: var(--font-size-base);
    line-height: 2;
  }
}

.icons {
  background-color: #EFEEF2;
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 992px) {
  .icons {
    padding-top: 19rem;
    padding-bottom: 15rem;
  }
}
.icons_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  color: #2B2B2B;
  margin-bottom: 5rem;
  text-align: left;
  font-weight: 500;
  padding-left: 15px;
  padding-right: 15px;
}
@media (min-width: 992px) {
  .icons_title {
    color: #303030;
    line-height: 1;
    text-align: center;
  }
}
.icons_icons {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}
@media (min-width: 992px) {
  .icons_icons {
    max-width: 80%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 8.8rem;
  }
}
.icons_icons_card {
  margin-bottom: 5rem;
}
@media (min-width: 992px) {
  .icons_icons_card {
    margin-bottom: 0;
  }
}
.icons_icons_card:last-child {
  margin-bottom: 0;
}
.icons_icons_icon {
  color: #0053D9;
  font-size: 7.3rem;
  line-height: 1;
  margin-bottom: 2.2rem;
}
@media (min-width: 992px) {
  .icons_icons_icon {
    font-size: 9.4rem;
    line-height: 1;
    margin-bottom: 2.7rem;
  }
}
.icons_icons_text {
  color: #303030;
  font-size: var(--font-size-base);
  line-height: 1.5;
}
@media (min-width: 992px) {
  .icons_icons_text {
    font-size: var(--font-size-md);
    line-height: 1.6;
  }
}

.caseStudies {
  padding-bottom: 5rem;
}
.caseStudies_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  color: #2B2B2B;
  margin-bottom: 5rem;
  text-align: center;
  font-weight: 500;
}
@media (min-width: 992px) {
  .caseStudies_title {
    font-size: var(--font-size-2xl);
    line-height: 1;
    color: #303030;
  }
}
@media (min-width: 992px) {
  .caseStudies_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 5rem;
    margin-bottom: 5rem;
  }
}
.caseStudies_grid_link {
  position: relative;
  margin-bottom: 2rem;
  display: block;
  overflow: hidden;
  aspect-ratio: 4/3;
}
.caseStudies_grid_link:hover .caseStudies_grid_image {
  transform: scale(1.2);
}
@media (min-width: 992px) {
  .caseStudies_grid_link {
    margin-bottom: 0;
  }
}
.caseStudies_grid_link:last-child {
  margin-bottom: 0;
}
.caseStudies_grid_overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  height: 50%;
  background: linear-gradient(180deg, rgba(43, 43, 43, 0) 0%, rgb(43, 43, 43) 100%);
  display: flex;
  align-items: flex-end;
}
.caseStudies_grid_image {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  height: 100% !important;
  width: 100%;
  object-fit: cover;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.caseStudies_grid_title {
  padding-left: 1.6rem;
  padding-right: 1.6rem;
  padding-bottom: 1.3rem;
  font-size: var(--font-size-base);
  line-height: 1;
  color: #fff;
  width: 100%;
}
@media (min-width: 992px) {
  .caseStudies_grid_title {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
    padding-bottom: 2.2rem;
    font-size: var(--font-size-lg);
  }
}
.caseStudies_grid_title_cat {
  font-size: var(--font-size-xxxs);
  line-height: 1.5;
  color: #fff;
}
@media (min-width: 992px) {
  .caseStudies_grid_title_cat {
    font-size: var(--font-size-base);
  }
}

.caseStudySingle_hero {
  position: relative;
  height: 50rem;
  overflow: hidden;
}
@media (min-width: 992px) {
  .caseStudySingle_hero {
    height: 60rem;
  }
}
.caseStudySingle_hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 40%;
  z-index: 2;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
  pointer-events: none;
}
.caseStudySingle_hero_image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.caseStudySingle_hero_overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  height: 50%;
  background: linear-gradient(180deg, rgba(43, 43, 43, 0) 0%, rgb(43, 43, 43) 100%);
  display: flex;
  align-items: flex-end;
  padding-bottom: 4rem;
}
.caseStudySingle_hero_cat {
  font-size: var(--font-size-xxxs);
  line-height: 1.5;
  color: #fff;
  margin-bottom: 0.5rem;
}
@media (min-width: 992px) {
  .caseStudySingle_hero_cat {
    font-size: var(--font-size-base);
  }
}
.caseStudySingle_hero_title {
  font-size: var(--font-size-lg);
  line-height: 1.2;
  color: #fff;
  font-weight: 500;
  margin: 0;
}
@media (min-width: 992px) {
  .caseStudySingle_hero_title {
    font-size: var(--font-size-2xl);
    line-height: 1.1;
  }
}
.caseStudySingle_header {
  padding-top: 15rem;
  padding-bottom: 4rem;
  background-color: #2b2b2b;
}
.caseStudySingle_header .caseStudySingle_hero_cat {
  color: #fff;
}
.caseStudySingle_header .caseStudySingle_hero_title {
  color: #fff;
}
.caseStudySingle_content {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 992px) {
  .caseStudySingle_content {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}
.caseStudySingle_content .container-fluid {
  max-width: 90rem;
}
.caseStudySingle_content h2 {
  font-size: var(--font-size-lg);
  line-height: 1.3;
  color: #2b2b2b;
  font-weight: 500;
  margin-top: 3rem;
  margin-bottom: 1.2rem;
}
@media (min-width: 992px) {
  .caseStudySingle_content h2 {
    font-size: var(--font-size-xl);
  }
}
.caseStudySingle_content h2:first-child {
  margin-top: 0;
}
.caseStudySingle_content h3 {
  font-size: var(--font-size-md);
  line-height: 1.3;
  color: #2b2b2b;
  font-weight: 500;
  margin-top: 3rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 992px) {
  .caseStudySingle_content h3 {
    font-size: var(--font-size-lg);
  }
}
.caseStudySingle_content h4 {
  font-size: var(--font-size-base);
  line-height: 1.4;
  color: #2b2b2b;
  font-weight: 500;
  margin-top: 2.5rem;
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .caseStudySingle_content h4 {
    font-size: var(--font-size-md);
  }
}
.caseStudySingle_content h5, .caseStudySingle_content h6 {
  font-size: var(--font-size-base);
  line-height: 1.4;
  color: #2b2b2b;
  font-weight: 500;
  margin-top: 2rem;
  margin-bottom: 1rem;
}
.caseStudySingle_content p {
  font-size: var(--font-size-base);
  line-height: 1.8;
  color: #4a4a4a;
  margin-bottom: 2rem;
}
.caseStudySingle_content p:last-child {
  margin-bottom: 0;
}
.caseStudySingle_content strong, .caseStudySingle_content b {
  font-weight: 600;
}
.caseStudySingle_content em, .caseStudySingle_content i {
  font-style: italic;
}
.caseStudySingle_content a {
  color: #0053D9;
  text-decoration: underline;
  transition: color 150ms ease;
}
.caseStudySingle_content a:hover {
  color: rgb(0, 53.7396313364, 140.5);
}
.caseStudySingle_content ul, .caseStudySingle_content ol {
  font-size: var(--font-size-base);
  line-height: 1.8;
  color: #4a4a4a;
  margin-bottom: 2rem;
  padding-left: 3rem;
}
.caseStudySingle_content ul {
  list-style-type: disc;
}
.caseStudySingle_content ol {
  list-style-type: decimal;
}
.caseStudySingle_content li {
  margin-bottom: 0.5rem;
}
.caseStudySingle_content li:last-child {
  margin-bottom: 0;
}
.caseStudySingle_content blockquote {
  border-left: 4px solid #0053D9;
  padding: 2rem 3rem;
  margin: 3rem 0;
  background-color: #f7f7f7;
}
.caseStudySingle_content blockquote p {
  font-size: var(--font-size-base);
  font-style: italic;
  color: #2b2b2b;
  margin-bottom: 0;
}
.caseStudySingle_content img {
  max-width: 100%;
  height: auto;
  display: block;
  margin-bottom: 2rem;
}
.caseStudySingle_content figure {
  margin: 3rem 0;
}
.caseStudySingle_content figure img {
  margin-bottom: 1rem;
}
.caseStudySingle_content figure figcaption {
  font-size: var(--font-size-xxxs);
  color: #777;
  text-align: center;
}
.caseStudySingle_content .alignfull {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(-50vw + 50%);
}
.caseStudySingle_content .alignwide {
  max-width: 100%;
}
.caseStudySingle_content .aligncenter {
  text-align: center;
}
.caseStudySingle_content .alignleft {
  float: left;
  margin-right: 2rem;
  margin-bottom: 1rem;
}
.caseStudySingle_content .alignright {
  float: right;
  margin-left: 2rem;
  margin-bottom: 1rem;
}
.caseStudySingle_content .wp-block-gallery {
  margin-bottom: 3rem;
}
.caseStudySingle_content hr {
  border: none;
  border-top: 1px solid #ddd;
  margin: 3rem 0;
}
.caseStudySingle_content table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 2rem;
}
.caseStudySingle_content table th, .caseStudySingle_content table td {
  padding: 1rem 1.5rem;
  border: 1px solid #ddd;
  text-align: left;
  font-size: var(--font-size-base);
}
.caseStudySingle_content table th {
  background-color: #f7f7f7;
  font-weight: 600;
  color: #2b2b2b;
}
.caseStudySingle_content table td {
  color: #4a4a4a;
}

.caseStudyGallery {
  padding-top: 6rem;
  padding-bottom: 6rem;
}
.caseStudyGallery .container-fluid {
  max-width: 100%;
}
@media (min-width: 768px) {
  .caseStudyGallery .container-fluid {
    max-width: 80%;
  }
}
.caseStudyGallery_grid {
  position: relative;
}
.caseStudyGallery_grid-sizer, .caseStudyGallery_grid-item {
  width: 100%;
}
@media (min-width: 768px) {
  .caseStudyGallery_grid-sizer, .caseStudyGallery_grid-item {
    width: calc(50% - 12px);
  }
}
@media (min-width: 992px) {
  .caseStudyGallery_grid-sizer, .caseStudyGallery_grid-item {
    width: calc(25% - 12px);
  }
}
.caseStudyGallery_grid-item {
  cursor: pointer;
  float: left;
  position: relative;
  margin-bottom: 16px;
  overflow: hidden;
}
.caseStudyGallery_grid-item img {
  width: 100%;
  display: block;
  height: auto;
  transition: transform 0.3s ease, z-index 0.3s;
  z-index: 1;
}
.caseStudyGallery_grid-item img:hover {
  transform: scale(1.2);
  z-index: 10;
}

.accreditations {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 992px) {
  .accreditations {
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}
.accreditations_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  color: #2B2B2B;
  margin-bottom: 5rem;
  text-align: center;
  font-weight: 500;
}
@media (min-width: 992px) {
  .accreditations_title {
    font-size: var(--font-size-2xl);
    line-height: 1;
    color: #303030;
  }
}
.accreditations_images {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.accreditations_image {
  width: 100%;
  max-width: 25%;
}
@media (min-width: 992px) {
  .accreditations_image {
    width: auto;
    max-width: auto;
  }
}

.smallHero {
  position: relative;
  min-height: 38.6vh;
}
@media (min-width: 992px) {
  .smallHero {
    min-height: 60vh;
  }
}
.smallHero_wrapper {
  position: relative;
  z-index: 1;
  padding: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
  min-height: 38.6vh;
}
@media (min-width: 992px) {
  .smallHero_wrapper {
    min-height: 60vh;
  }
}
.smallHero_image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}
.smallHero_title {
  font-size: var(--font-size-2xl);
  line-height: 1;
  color: #fff;
  font-weight: 300;
  margin-bottom: 3rem;
  padding-top: 14rem;
  padding-bottom: 14rem;
}
@media (min-width: 992px) {
  .smallHero_title {
    font-size: var(--font-size-3xl);
    font-weight: 400;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.smallHero_mobile_cta {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 992px) {
  .smallHero_mobile_cta {
    display: none;
  }
}
.smallHero_mobile_cta_icon {
  font-size: 2.9rem;
  color: #0053D9;
  margin-right: 2.3rem;
}
.smallHero_mobile_cta_text {
  font-size: var(--font-size-base);
  line-height: 1.5;
  color: #fff;
  font-weight: 300;
}
.smallHero_ctas {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  background: rgba(43, 43, 43, 0.9);
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media (min-width: 992px) {
  .smallHero_ctas {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.smallHero_ctas_wrapper {
  display: none;
  flex-wrap: wrap;
}
@media (min-width: 992px) {
  .smallHero_ctas_wrapper {
    display: flex;
  }
}
.smallHero_ctas_col {
  width: 100%;
  max-width: 33.33%;
  display: flex;
}
.smallHero_ctas_link {
  display: flex;
}
.smallHero_ctas_icon {
  margin-right: 3.7rem;
  font-size: 5.7rem;
  color: #0053D9;
  line-height: 1;
}
.smallHero_ctas_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  color: #fff;
}
.smallHero_ctas_text {
  font-size: var(--font-size-base);
  line-height: 1.5;
  color: #fff;
}

.smallHeroContact {
  position: relative;
  padding-top: 13rem;
}
.smallHeroContact_wrapper {
  position: relative;
  z-index: 1;
  padding: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.smallHeroContact_image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}
.smallHeroContact_title {
  font-size: var(--font-size-2xl);
  line-height: 1;
  color: #fff;
  font-weight: 300;
  margin-bottom: 3rem;
  padding-top: 10rem;
  padding-bottom: 10rem;
}
@media (min-width: 992px) {
  .smallHeroContact_title {
    font-size: var(--font-size-3xl);
    font-weight: 400;
  }
}

.bestSellers {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #EFEEF2;
}
@media (min-width: 992px) {
  .bestSellers {
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}
.bestSellers_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  color: #303030;
  margin-bottom: 5rem;
  font-weight: 500;
}
@media (min-width: 992px) {
  .bestSellers_title {
    font-size: var(--font-size-2xl);
    text-align: center;
  }
}
.bestSellers_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 2rem;
}
@media (min-width: 992px) {
  .bestSellers_grid {
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 5rem;
  }
}
.bestSellers_grid-3 {
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 640px) {
  .bestSellers_grid-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .bestSellers_grid-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
.bestSellers_grid_title {
  font-size: var(--font-size-xs);
  line-height: 1.11;
  font-weight: 300;
  margin-bottom: 1rem;
  color: #303030;
}
@media (min-width: 992px) {
  .bestSellers_grid_title {
    font-size: var(--font-size-lg);
    line-height: 1.33;
    margin-bottom: 1.5rem;
  }
}
.bestSellers_price {
  font-size: var(--font-size-xxxs);
  line-height: 1.33;
  margin-bottom: 1rem;
  font-weight: 600;
  color: #0053D9;
}
@media (min-width: 992px) {
  .bestSellers_price {
    font-size: var(--font-size-lg);
    margin-bottom: 2rem;
  }
}
.bestSellers_btn {
  width: 100%;
  max-width: 100%;
  height: 4rem;
  line-height: 4rem;
}
@media (min-width: 992px) {
  .bestSellers_btn {
    height: 5.6rem;
    line-height: 5.6rem;
  }
}
.bestSellers_image {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.bestSellers_image_overlay {
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  position: relative;
  margin-bottom: 2rem;
  overflow: hidden;
}
.bestSellers_image_overlay:hover .bestSellers_image {
  transform: scale(1.2);
}

.shopCategory {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 992px) {
  .shopCategory {
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}
.shopCategory_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  color: #303030;
  margin-bottom: 5rem;
  font-weight: 500;
}
@media (min-width: 992px) {
  .shopCategory_title {
    font-size: var(--font-size-2xl);
    line-height: 1;
    text-align: center;
  }
}
.shopCategory_grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-gap: 1rem;
}
@media (min-width: 992px) {
  .shopCategory_grid {
    grid-template-columns: repeat(4, 1fr);
    margin-bottom: 1rem;
  }
}
.shopCategory_grid_link {
  display: block;
  position: relative;
  overflow: hidden;
}
.shopCategory_grid_link:hover .shopCategory_grid_image {
  transform: scale(1.2);
}
.shopCategory_grid_overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  background-color: rgba(43, 43, 43, 0.5);
}
.shopCategory_grid_overlay2 {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  height: 10.3rem;
  background: linear-gradient(180deg, rgba(43, 43, 43, 0) 0%, rgb(43, 43, 43) 100%);
  display: flex;
  align-items: flex-end;
}
@media (min-width: 992px) {
  .shopCategory_grid_overlay2 {
    height: 14.3rem;
  }
}
.shopCategory_grid_image {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.shopCategory_grid_image_overlay {
  width: 100%;
  aspect-ratio: 1/1;
  position: relative;
}
.shopCategory_grid_title {
  padding-left: 2.8rem;
  padding-right: 2.8rem;
  padding-bottom: 2.8rem;
  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  font-size: var(--font-size-base);
  line-height: 1;
}
@media (min-width: 992px) {
  .shopCategory_grid_title {
    padding-left: 3.8rem;
    padding-right: 3.8rem;
    padding-bottom: 3.3rem;
    font-size: var(--font-size-lg);
    line-height: 1.33;
  }
}
.shopCategory_grid_title_plus {
  font-size: 2.4rem;
}
@media (min-width: 992px) {
  .shopCategory_grid_title_plus {
    font-size: var(--font-size-xl);
  }
}

.mapDetails {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
}
.mapDetails_offices {
  width: 100%;
  background-color: #2B2B2B;
  top: 0;
  left: 0;
  z-index: 1;
  padding: 5rem 2rem;
  height: 100%;
}
@media (min-width: 992px) {
  .mapDetails_offices {
    padding: 9rem;
    max-width: 65.2rem;
    position: absolute;
  }
}
.mapDetails_map {
  width: 100%;
  height: 35rem;
}
@media (min-width: 992px) {
  .mapDetails_map {
    height: 68.7rem;
  }
}
.mapDetails_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  font-weight: 400;
  color: #fff;
  margin-bottom: 5rem;
}
@media (min-width: 992px) {
  .mapDetails_title {
    font-size: var(--font-size-2xl);
    line-height: 1;
  }
}
.mapDetails_content {
  margin-bottom: 3rem;
  color: #fff;
  display: flex;
}
.mapDetails_content_icon {
  color: #0053D9;
  font-size: var(--font-size-lg);
  line-height: 1;
  margin-right: 2rem;
}
.mapDetails_content_title {
  font-size: var(--font-size-lg);
  line-height: 1;
  margin-bottom: 2rem;
  font-weight: 400;
}
.mapDetails_content_content {
  font-size: var(--font-size-xs);
  line-height: 2;
  font-weight: 300;
}

/* breadcrumb */
.category-back-link {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  color: #0053D9;
  font-size: var(--font-size-xxxs);
  line-height: 1.4;
  padding-top: 2rem;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-bottom: 1rem;
  text-decoration: none;
  transition: color 150ms ease;
}
@media (min-width: 992px) {
  .category-back-link {
    font-size: var(--font-size-xxs);
    padding-top: 0;
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 1.2rem;
  }
}
.category-back-link:hover {
  color: #003a99;
  text-decoration: underline;
}
.category-back-link i {
  font-size: 0.85em;
}

.breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.8rem;
  font-size: var(--font-size-xxxs);
  line-height: 1.5;
  padding-top: 2rem;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-bottom: 2.5rem;
}
@media (min-width: 992px) {
  .breadcrumb {
    font-size: var(--font-size-xxs);
    padding-top: 0;
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 3rem;
  }
}
.breadcrumb a {
  color: #0053D9;
  text-decoration: none;
  transition: color 150ms ease;
}
.breadcrumb a:hover {
  color: #003a99;
  text-decoration: underline;
}
.breadcrumb_separator {
  color: #999;
  font-size: 1rem;
}
@media (min-width: 992px) {
  .breadcrumb_separator {
    font-size: 1.2rem;
  }
}
.breadcrumb_current {
  color: #4a4a4a;
}

/* category page */
.woocommerce .content-area {
  padding-top: 11rem;
  background-color: #EFEEF2;
}
@media (min-width: 992px) {
  .woocommerce .content-area {
    padding-top: 13rem;
  }
}
.woocommerce .content-area .site-main {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 992px) {
  .woocommerce .content-area .site-main {
    padding-top: 0rem;
    padding-bottom: 10rem;
  }
}
.woocommerce .woocommerce-products-header__title.page-title {
  font-size: var(--font-size-xl);
  line-height: 1.25;
  font-weight: 500;
  color: #303030;
  margin-bottom: 3rem;
  display: none;
}
@media (min-width: 992px) {
  .woocommerce .woocommerce-products-header__title.page-title {
    display: block;
  }
}
.woocommerce .term-description {
  font-size: var(--font-size-base);
  line-height: 2;
  color: #585858;
  margin-bottom: 5rem;
  display: none;
}
.woocommerce .term-description p {
  margin-bottom: 1.5rem;
}
.woocommerce .term-description strong,
.woocommerce .term-description b {
  font-weight: 700;
  color: #303030;
}
.woocommerce .term-description ul,
.woocommerce .term-description ol {
  margin: 0 0 2rem 2.4rem;
  padding-left: 2rem;
}
.woocommerce .term-description ul {
  list-style: disc;
}
.woocommerce .term-description ol {
  list-style: decimal;
}
.woocommerce .term-description li {
  margin-bottom: 0.75rem;
  padding-left: 0.4rem;
}
.woocommerce .term-description a {
  color: #1555b8;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 0.18em;
}
@media (min-width: 992px) {
  .woocommerce .term-description {
    display: block;
  }
}
.woocommerce ul.products {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 2rem;
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 5rem;
  }
}
.woocommerce ul.products:before {
  display: none;
}
.woocommerce ul.products li.product {
  width: 100%;
  max-width: 100%;
  margin: 0;
}
.woocommerce ul.products li.product a img {
  width: 100%;
  max-width: 100%;
  margin-bottom: 2rem;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: var(--font-size-xs);
  line-height: 1.11;
  font-weight: 300;
  margin: 0;
  padding: 0;
  margin-bottom: 1rem;
  color: #303030;
}
@media (min-width: 992px) {
  .woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: var(--font-size-lg);
    line-height: 1.33;
    margin-bottom: 2rem;
  }
}
.woocommerce ul.products li.product .price {
  font-size: var(--font-size-xxxs);
  line-height: 1.33;
  margin: 0;
  padding: 0;
  margin-bottom: 1rem;
  font-weight: 600;
  color: #0053D9;
}
@media (min-width: 992px) {
  .woocommerce ul.products li.product .price {
    font-size: var(--font-size-lg);
    margin-bottom: 2rem;
  }
}
.woocommerce .productCategories {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #EFEEF2;
}
@media (min-width: 992px) {
  .woocommerce .productCategories {
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}
.woocommerce .productCategories_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  color: #303030;
  margin-bottom: 5rem;
  font-weight: 500;
}
@media (min-width: 992px) {
  .woocommerce .productCategories_title {
    font-size: var(--font-size-2xl);
    text-align: center;
  }
}
.woocommerce .productCategories_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 2rem;
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .woocommerce .productCategories_grid {
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 2rem;
    margin-bottom: 4rem;
  }
}
.woocommerce .productCategories_grid-3 {
  grid-template-columns: repeat(1, 1fr);
  grid-gap: 5rem;
}
@media (min-width: 640px) {
  .woocommerce .productCategories_grid-3 {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 2rem;
  }
}
@media (min-width: 768px) {
  .woocommerce .productCategories_grid-3 {
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 5rem;
  }
}
.woocommerce .productCategories_grid_item {
  display: flex;
  flex-direction: column;
}
.woocommerce .productCategories_grid > .productCategories_grid_item {
  background: #fff;
  padding: 1.6rem;
  border: 1px solid #e3e3e3;
  text-decoration: none;
}
@media (min-width: 992px) {
  .woocommerce .productCategories_grid > .productCategories_grid_item {
    padding: 2rem;
  }
}
.woocommerce .productCategories_grid_title {
  font-size: var(--font-size-base);
  line-height: 1.33;
  font-weight: 400;
  margin-bottom: 1.5rem;
  color: #303030;
  flex: 1;
  display: block;
  text-decoration: none;
}
@media (min-width: 992px) {
  .woocommerce .productCategories_grid_title {
    margin-bottom: 2rem;
  }
}
.woocommerce .productCategories_grid_title:hover {
  color: #0053D9;
  text-decoration: none;
}
.woocommerce .productCategories_grid_item-product .productCategories_grid_title {
  flex: 0 0 auto;
  min-height: 4.5rem;
}
.woocommerce .productCategories_image_link,
.woocommerce .productCategories_grid > a.productCategories_grid_item {
  display: block;
  text-decoration: none;
  overflow: hidden;
}
.woocommerce .productCategories_image_link,
.woocommerce .productCategories_grid > a.productCategories_grid_item .productCategories_image_overlay {
  margin: -1.6rem -1.6rem 0;
}
@media (min-width: 992px) {
  .woocommerce .productCategories_image_link,
  .woocommerce .productCategories_grid > a.productCategories_grid_item .productCategories_image_overlay {
    margin: -1rem -1rem 0;
  }
}
.woocommerce .productCategories_price {
  font-size: var(--font-size-xxxs);
  line-height: 1.33;
  margin-bottom: 1.2rem;
  font-weight: 600;
  color: #0053D9;
}
.woocommerce .productCategories_price_from {
  display: inline-block;
  font-size: 0.62em;
  font-weight: 500;
  line-height: 1;
  margin-right: 0.35rem;
  vertical-align: baseline;
}
.woocommerce .nsg-price-ex-vat {
  display: inline-block;
  font-size: 0.42em;
  font-weight: 500;
  line-height: 1;
  margin-left: 0.35rem;
  text-transform: none;
  vertical-align: baseline;
}
@media (min-width: 992px) {
  .woocommerce .productCategories_price {
    font-size: var(--font-size-lg);
    margin-bottom: 1.5rem;
  }
}
.woocommerce .productCategories_price del {
  opacity: 0.6;
  font-weight: 400;
  margin-right: 0.8rem;
}
.woocommerce .productCategories_price ins {
  text-decoration: none;
}
.woocommerce .productCategories_variations {
  margin-top: 0;
}
.woocommerce .productCategories_variations .productCategories_variation {
  margin-bottom: 1rem;
}
.woocommerce .productCategories_variations .productCategories_variation label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
.woocommerce .productCategories_variations .productCategories_variation select {
  width: 100%;
  background-color: #fff;
  border: 1px solid #d4d4d4;
  border-radius: 5px;
  padding: 0.9rem 1.2rem;
  font-size: var(--font-size-xxxs);
  color: #303030;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3e%3cpath fill='%230053D9' d='M6 8L0 0h12z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 1.2rem center;
  padding-right: 3rem;
}
.woocommerce .productCategories_variations .single_variation_wrap .single_variation .price {
  display: block;
  font-size: var(--font-size-xxxs);
  font-weight: 600;
  color: #0053D9;
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .woocommerce .productCategories_variations .single_variation_wrap .single_variation .price {
    font-size: var(--font-size-lg);
  }
}
.woocommerce .productCategories_variations .single_variation_wrap .single_variation .stock {
  display: block;
  font-size: var(--font-size-xxxs);
  margin-bottom: 1rem;
}
.woocommerce .productCategories_variations .reset_variations {
  display: inline-block;
  font-size: var(--font-size-xxxs);
  color: #585858;
  margin-bottom: 1rem;
}
.woocommerce .productCategories_variations .reset_variations:hover {
  color: #0053D9;
}
.woocommerce .productCategories_actions {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  margin-top: auto;
  align-items: stretch;
}
@media (min-width: 992px) {
  .woocommerce .productCategories_actions {
    gap: 1rem;
  }
}
.woocommerce .productCategories_actions .productCategories_btn {
  flex: 1;
  border: 0;
  cursor: pointer;
  font-family: inherit;
}
.woocommerce .productCategories_qty {
  width: 11.6rem;
  min-width: 11.6rem;
  display: grid;
  grid-template-columns: 3.4rem 1fr 3.4rem;
  border: 1px solid #d4d4d4;
  background: #fff;
}
.woocommerce .productCategories_qty_btn,
.woocommerce .productCategories_qty_input {
  height: 5.6rem;
  border: 0;
  background: transparent;
  color: #303030;
  font-family: inherit;
  font-size: var(--font-size-xxs);
  line-height: 1;
  text-align: center;
}
.woocommerce .productCategories_qty_btn {
  cursor: pointer;
  padding: 0;
}
.woocommerce .productCategories_qty_btn:hover,
.woocommerce .productCategories_qty_btn:focus {
  color: #0053D9;
}
.woocommerce .productCategories_qty_input {
  width: 100%;
  border-left: 1px solid #d4d4d4;
  border-right: 1px solid #d4d4d4;
  -moz-appearance: textfield;
}
.woocommerce .productCategories_qty_input::-webkit-outer-spin-button,
.woocommerce .productCategories_qty_input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}
.woocommerce .productCategories_actions .productCategories_btn:disabled, .woocommerce .productCategories_actions .productCategories_btn.disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.woocommerce .productCategories_actions .productCategories_btn.add_to_cart_button.added {
  display: none;
}
.woocommerce .productCategories_actions .productCategories_btn.added_to_cart {
  display: none;
}
.woocommerce .productCategories_btn {
  width: 100%;
  max-width: 100%;
  font-size: var(--font-size-xxxs);
  height: 5.6rem;
  line-height: 5.6rem;
  padding: 0 0.8rem;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .woocommerce .productCategories_btn {
    font-size: var(--font-size-xxs);
  }
}
.woocommerce .productCategories_image {
  display: block;
  position: absolute;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
}
.woocommerce .productCategories_image_overlay {
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  position: relative;
  margin-bottom: 1.5rem;
  display: flex;
  justify-content: center;
  background-color: white;
  overflow: hidden;
}
.woocommerce .productCategories_image_link .productCategories_image_overlay:before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(43, 43, 43, 0.55);
  opacity: 0;
  transition: opacity 0.2s ease;
  z-index: 1;
}
.woocommerce .productCategories_image_details {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  color: #fff;
  font-size: var(--font-size-xs);
  line-height: 1;
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}
.woocommerce .productCategories_image_link:hover .productCategories_image_overlay:before,
.woocommerce .productCategories_image_link:focus .productCategories_image_overlay:before,
.woocommerce .productCategories_image_link:hover .productCategories_image_details,
.woocommerce .productCategories_image_link:focus .productCategories_image_details {
  opacity: 1;
}
.woocommerce .woocommerce-product-details__short-description {
  margin-bottom: 3rem;
}
.woocommerce .woocommerce-product-details__short-description p {
  margin-bottom: 3rem;
}
.woocommerce .woocommerce-product-details__short-description p:last-child {
  margin-bottom: 0;
}

.woocommerce_categories {
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 992px) {
  .woocommerce_categories_mobileDetails {
    display: none;
  }
}
.woocommerce_categories_mobileDetails_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  font-weight: 500;
  color: #303030;
  margin-bottom: 3rem;
}
.woocommerce_categories_mobileDetails .term-description {
  font-size: var(--font-size-xxs);
  line-height: 1.875;
  color: #585858;
  margin-bottom: 5rem;
  display: block;
}
.woocommerce_categories_mobileDetails .term-description ul,
.woocommerce_categories_mobileDetails .term-description ol {
  margin-left: 1.6rem;
  padding-left: 1.4rem;
}
.woocommerce_categories_categories {
  width: 100%;
  margin-bottom: 5rem;
}
@media (min-width: 992px) {
  .woocommerce_categories_categories {
    max-width: 25.75%;
    padding-right: 5rem;
    margin-bottom: 0;
  }
}
.woocommerce_categories_categories .bapf_head {
  position: relative;
}
.woocommerce_categories_categories .bapf_head h3 {
  background-color: #2B2B2B;
  display: block;
  width: 100%;
  font-size: var(--font-size-base);
  line-height: 1.33;
  padding: 2rem;
  color: #fff;
  font-weight: 300;
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .woocommerce_categories_categories .bapf_head h3 {
    font-size: var(--font-size-md);
    letter-spacing: 0.15rem;
  }
}
.woocommerce_categories_categories .bapf_head h3:after {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  font-weight: 300;
  content: "\f078";
  font-family: "Font Awesome 6 Pro";
  -webkit-font-smoothing: antialiased;
  display: var(--fa-display, inline-block);
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  position: absolute;
  right: 2rem;
  top: 2.3rem;
  cursor: pointer;
}
@media (min-width: 992px) {
  .woocommerce_categories_categories .bapf_head h3:after {
    display: none;
  }
}
.woocommerce_categories_categories .bapf_body {
  background-color: #fff;
  padding-top: 3rem;
  padding-left: 3rem;
  padding-right: 3rem;
  padding-bottom: 2rem;
  display: none;
}
@media (min-width: 992px) {
  .woocommerce_categories_categories .bapf_body {
    display: block;
  }
}
.woocommerce_categories_categories .bapf_slidr_jqrui .bapf_from,
.woocommerce_categories_categories .bapf_slidr_jqrui .bapf_to {
  font-weight: 300;
  font-size: var(--font-size-base);
  color: #2B2B2B;
  line-height: 1;
  margin-bottom: 0;
}
.woocommerce_categories_categories .bapf_slidr_main.ui-widget-content .ui-slider-range,
.woocommerce_categories_categories .berocket_filter_price_slider.ui-widget-content .ui-slider-range {
  background-color: #0053D9;
  height: 1rem;
  top: -0.3rem;
}
.woocommerce_categories_categories .bapf_slidr_main.ui-widget-content,
.woocommerce_categories_categories .berocket_filter_price_slider.ui-widget-content {
  height: 0.5rem;
  background-color: #2B2B2B;
  margin-bottom: 2.5rem;
  margin-right: 1rem;
}
.woocommerce_categories_categories .bapf_slidr_main.ui-widget-content .ui-slider-handle, .woocommerce_categories_categories .berocket_filter_price_slider.ui-widget-content .ui-slider-handle, .woocommerce_categories_categories .slide.default .bapf_slidr_main .ui-state-default, .woocommerce_categories_categories .slide.default .bapf_slidr_main .ui-widget-header .ui-state-default, .woocommerce_categories_categories .slide.default .bapf_slidr_main.ui-widget-content .ui-state-default, .woocommerce_categories_categories .slide.default .berocket_filter_price_slider .ui-state-default, .woocommerce_categories_categories .slide.default .berocket_filter_price_slider .ui-widget-header .ui-state-default, .woocommerce_categories_categories .slide.default .berocket_filter_price_slider.ui-widget-content .ui-state-default {
  height: 3rem;
  width: 3rem;
  background-color: #0053D9;
  top: -1.2rem;
}
.woocommerce_categories_content {
  width: 100%;
}
@media (min-width: 992px) {
  .woocommerce_categories_content {
    max-width: 74.25%;
  }
}

/* category page */
.woocommerce_cats {
  background-color: #fff;
}
.woocommerce_cats_title {
  background-color: #2B2B2B;
  display: flex;
  width: 100%;
  font-size: var(--font-size-base);
  line-height: 1.33;
  padding: 2rem;
  color: #fff;
  font-weight: 300;
  align-items: center;
  justify-content: space-between;
}
@media (min-width: 992px) {
  .woocommerce_cats_title {
    font-size: var(--font-size-md);
    letter-spacing: 0.15rem;
  }
}
.woocommerce_cats_title_icon {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  font-weight: 300;
  cursor: pointer;
}
@media (min-width: 992px) {
  .woocommerce_cats_title_icon {
    display: none;
  }
}
.woocommerce_cats_title_icon-on {
  transform: rotate(180deg);
}
.woocommerce_cats_list {
  padding: 2rem;
  display: none;
}
@media (min-width: 992px) {
  .woocommerce_cats_list {
    display: block;
  }
}
.woocommerce_cats_list .woocommerce_cats_list {
  padding: 0 1rem;
  margin-bottom: 1rem;
  display: none;
}
.woocommerce_cats_list .woocommerce_cats_list-open {
  display: block;
}
.woocommerce_cats_item a {
  font-weight: 400;
  font-size: var(--font-size-base);
  color: #2B2B2B;
  line-height: 3;
}
.woocommerce_cats_item_icon {
  float: right;
  margin-top: 0.8rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.woocommerce_cats_item_icon-on {
  transform: rotate(180deg);
}
.woocommerce_cats_item .woocommerce_cats_item a {
  font-size: var(--font-size-xs);
}
.woocommerce_cats_item-current > a {
  color: #0053d9;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.woocommerce_cats_item-ancestor > a {
  color: #0053d9;
}
.woocommerce_cats_item-current > a:hover, .woocommerce_cats_item-ancestor > a:hover {
  color: #003fa3;
}

/* Category archive AJAX add-to-cart success/error message */
.wc-ajax-message {
  margin-bottom: 1.5rem;
}
.wc-ajax-message .woocommerce-message,
.wc-ajax-message .woocommerce-error {
  padding: 1.5rem 2rem;
  margin: 0;
  border-radius: 0.5rem;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}
.wc-ajax-message .woocommerce-message {
  background-color: #dcfce7;
  border: 2px solid #22c55e;
  color: #166534;
}
.wc-ajax-message .woocommerce-error {
  background-color: #fef2f2;
  border: 1px solid #fca5a5;
  color: #dc2626;
}
.wc-ajax-message .cart-link {
  display: inline-block;
  margin-left: 1rem;
  padding: 0.5rem 1rem;
  background-color: #166534;
  color: #fff;
  text-decoration: none;
  border-radius: 0.375rem;
  font-weight: 600;
  transition: background-color 0.2s;
}
.wc-ajax-message .cart-link:hover {
  background-color: #15803d;
  color: #fff;
  text-decoration: none;
}

/* product page */
.woocommerce div.product {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.woocommerce div.product div.images.woocommerce-product-gallery {
  width: 100%;
  float: none;
}
@media (min-width: 992px) {
  .woocommerce div.product div.images.woocommerce-product-gallery {
    max-width: 44.15%;
  }
}

.woocommerce div.product div.summary {
  width: 100%;
  float: none;
}
@media (min-width: 992px) {
  .woocommerce div.product div.summary {
    max-width: 50%;
  }
}

.woocommerce div.product .product_title {
  font-size: var(--font-size-lg);
  line-height: 1;
  color: #2B2B2B;
  margin-bottom: 2rem;
  font-weight: 300;
}
@media (min-width: 992px) {
  .woocommerce div.product .product_title {
    font-size: var(--font-size-xl);
    margin-bottom: 3rem;
  }
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price {
  color: #094BB6;
  font-size: var(--font-size-lg);
  line-height: 1.25;
  font-weight: 600;
  margin-bottom: 1.7rem;
}
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price .amount,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price .woocommerce-Price-amount,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price .woocommerce-Price-amount bdi,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price ins,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price del {
  color: inherit !important;
}
@media (min-width: 992px) {
  .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price {
    font-size: var(--font-size-xl);
    margin-bottom: 3rem;
  }
}
.woocommerce div.product .single_variation .woocommerce-variation-price {
  display: none;
}

/* product page variations */
.woocommerce div.product form.cart .variations tbody {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-gap: 2rem;
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .woocommerce div.product form.cart .variations tbody {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 5rem;
    margin-bottom: 3rem;
  }
}
.woocommerce div.product form.cart .variations tbody tr {
  display: flex;
  flex-direction: column;
}

.woocommerce div.product form.cart .variations label {
  font-weight: 500;
  font-size: var(--font-size-xxs);
  line-height: 1;
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .woocommerce div.product form.cart .variations label {
    font-size: var(--font-size-base);
  }
}

.woocommerce div.product form.cart .variations select {
  width: 100%;
  height: 6.2rem;
  padding: 2.2rem 2rem;
  border: 0;
  font-size: var(--font-size-xxs);
  line-height: 1;
  position: relative;
  z-index: 2;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3e%3cpath fill='none' stroke='%23031926' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M2 2l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 2.5rem center;
  background-size: 1.6rem 1rem;
  padding-right: 5rem;
}
@media (min-width: 992px) {
  .woocommerce div.product form.cart .variations select {
    font-size: var(--font-size-base);
    height: 7rem;
    padding: 2.5rem 5rem 2.5rem 2rem;
  }
}

.woocommerce div.product form.cart .variations td {
  position: relative;
  background-color: white;
}
.woocommerce div.product form.cart .variations td:after {
  content: "\f078";
  position: absolute;
  top: calc(50% - 2rem);
  right: 2rem;
  font-size: 2rem;
  color: #031926;
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  height: 2rem;
  width: 2rem;
  z-index: 1;
  display: none;
}

.woocommerce div.product form.cart .reset_variations {
  display: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  display: none;
}

.woocommerce div.product .woocommerce-tabs .panel {
  margin-bottom: 0;
}
.woocommerce div.product .woocommerce-tabs .panel h2 {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  font-weight: 500;
  color: #303030;
  margin-bottom: 3rem;
}
@media (min-width: 992px) {
  .woocommerce div.product .woocommerce-tabs .panel h2 {
    font-size: var(--font-size-xl);
    line-height: 1.25;
  }
}
.woocommerce div.product .woocommerce-tabs .panel p {
  font-size: var(--font-size-xxs);
  line-height: 2;
  color: #585858;
  margin-bottom: 3rem;
}
.woocommerce div.product .woocommerce-tabs .panel p:last-child {
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .woocommerce div.product .woocommerce-tabs .panel p {
    font-size: var(--font-size-base);
  }
}

.woocommerce div.product form.cart .button {
  background-color: #0053D9;
  height: 7rem;
  line-height: 1;
  width: calc(100% - 12.7rem);
  text-align: center;
  color: #fff;
  font-size: var(--font-size-md);
  display: inline-block;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 992px) {
  .woocommerce div.product form.cart .button {
    width: calc(100% - 18.5rem);
  }
}
.woocommerce div.product form.cart .button:hover {
  background-color: #003996;
}

.woocommerce .quantity-wrapper {
  display: flex;
  flex-direction: row;
  float: left;
  background: white;
  align-items: center;
  margin-right: 2rem;
}

.woocommerce .quantity {
  margin: 0 !important;
}

.woocommerce .quantity .qty {
  height: 7rem;
  width: 2rem !important;
  position: relative;
  background-color: #fff;
  color: #2B2B2B;
  font-size: var(--font-size-xs);
  -moz-appearance: textfield; /* Firefox */
}
@media (min-width: 992px) {
  .woocommerce .quantity .qty {
    width: 7rem !important;
    font-size: var(--font-size-md);
  }
}
.woocommerce .quantity .qty::-webkit-inner-spin-button, .woocommerce .quantity .qty::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.woocommerce .quantity .qty-icon {
  height: 5.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 1.5rem;
  cursor: pointer;
  background-color: #fff;
  font-size: 1.5rem;
}
@media (min-width: 992px) {
  .woocommerce .quantity .qty-icon {
    font-size: 2rem;
  }
}

.productNotice {
  background-color: #2B2B2B;
  padding: 2rem 1.6rem;
  width: 100%;
  margin-bottom: 3rem;
}
.productNotice_title {
  font-size: var(--font-size-lg);
  line-height: 1.33;
  color: #fff;
  margin-bottom: 2rem;
}
.productNotice_content {
  font-size: var(--font-size-xxs);
  line-height: 1.87;
  color: #fff;
}

.woocommerce div.product form.cart .variations {
  margin-bottom: 0;
}

.woocommerce ul.products[class*=columns-] li.product,
.woocommerce-page ul.products[class*=columns-] li.product {
  width: 100%;
  max-width: 100%;
  margin-bottom: 0;
}

.woocommerce.single-product .site-main {
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 992px) {
  .woocommerce.single-product .site-main {
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}
.woocommerce.single-product .site-main .container-fluid {
  padding-left: 0;
  padding-right: 0;
}
@media (min-width: 992px) {
  .woocommerce.single-product .site-main .container-fluid {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
.woocommerce.single-product .site-main div.product div.summary {
  padding-right: 2rem;
  padding-left: 2rem;
}
@media (min-width: 992px) {
  .woocommerce.single-product .site-main div.product div.summary {
    padding-left: 0;
    padding-right: 0;
  }
}
.woocommerce.single-product .site-main div.product div.images {
  margin-bottom: 5rem;
}
@media (min-width: 992px) {
  .woocommerce.single-product .site-main div.product div.images {
    margin-bottom: 0;
  }
}

.woocommerce-notices-wrapper .wc-block-components-notice-banner {
  padding: 2rem;
}
.woocommerce-notices-wrapper .wc-block-components-notice-banner svg {
  display: none;
}
.woocommerce-notices-wrapper .wc-block-components-notice-banner .wc-block-components-notice-banner__content {
  padding: 2rem;
  background-color: #fff;
  color: #2B2B2B;
  width: 100%;
}
.woocommerce-notices-wrapper .wc-block-components-notice-banner .wc-block-components-notice-banner__content a {
  background-color: #0053D9;
  height: 7rem;
  text-align: center;
  color: #fff;
  font-size: var(--font-size-base);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  border-radius: 1rem;
  width: 100%;
  margin-bottom: 1rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 992px) {
  .woocommerce-notices-wrapper .wc-block-components-notice-banner .wc-block-components-notice-banner__content a {
    margin-right: 1.5rem;
    margin-left: 1.5rem;
    width: auto;
    margin-bottom: 0;
  }
}
.woocommerce-notices-wrapper .wc-block-components-notice-banner .wc-block-components-notice-banner__content a:hover {
  background-color: #003996;
}

/* Empty Cart */
.cart-empty-container {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 60vh;
  padding: 5rem 2rem;
  background-color: #EFEEF2;
}
.cart-empty-container .cart-empty-content {
  text-align: center;
  max-width: 500px;
}
.cart-empty-container .cart-empty-icon {
  font-size: 4rem;
  color: #ccc;
  margin-bottom: 1.5rem;
}
.cart-empty-container .cart-empty-title {
  font-size: var(--font-size-md);
  font-weight: 700;
  margin-bottom: 1rem;
  color: #222;
}
.cart-empty-container .cart-empty-message {
  font-size: var(--font-size-xxs);
  color: #666;
  line-height: 1.6;
  margin-bottom: 2rem;
}
.cart-empty-container .cart-empty-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #0053D9;
  color: #fff;
  font-size: var(--font-size-xxs);
  height: 7rem;
  padding: 2rem 3rem;
  border-radius: 1rem;
  text-decoration: none;
  transition: background-color 150ms ease;
}
.cart-empty-container .cart-empty-btn:hover {
  background-color: #003996;
}

/*# sourceMappingURL=style.css.map */
