@charset "UTF-8";
/*!
* Theme Name: Box Fresh Bathrooms
* Theme URI: https://hitsradioadvertising.co.uk
* Author: Aaron Nergaard - Bauer Create
* Author URI: https://hitsradioadvertising.co.uk
* Description: Theme for use on Box Fresh Bathrooms Website
* Requires at least: WordPress 6.0.0
* Version: 0.4.0
* Text Domain: box
*/
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/poppins-v21-latin-regular.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: italic;
  font-weight: 400;
  src: url("fonts/poppins-v21-latin-italic.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 500;
  src: url("fonts/poppins-v21-latin-500.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: italic;
  font-weight: 500;
  src: url("fonts/poppins-v21-latin-500italic.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 600;
  src: url("fonts/poppins-v21-latin-600.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: italic;
  font-weight: 600;
  src: url("fonts/poppins-v21-latin-600italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

main {
  display: block;
}

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

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

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

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

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

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

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

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

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

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

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

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

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

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

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

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

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

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

* {
  position: relative;
}

html {
  font-size: 62.5%;
}

body {
  font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  background-color: #FFFFFF;
  font-size: 1.6rem;
  line-height: 1.6em;
  font-weight: 400;
}

img,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}
.video-wrapper iframe,
.video-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#skip-to-content:not(:focus-visible) {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  word-wrap: normal !important;
  overflow: hidden;
}

.alt-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  margin: 0;
  padding: 1.3rem 1.8rem;
  box-sizing: border-box;
  border: 0.1rem solid currentColor;
  border-radius: 0;
  outline: 0;
  outline-offset: 0;
  text-align: center;
  font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.2em;
  color: #0040D1;
  background-color: #FFFFFF;
  cursor: pointer;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.1;
  font-weight: 600;
  color: #0040D1;
  margin: 1.6rem auto;
}

/**
 * Accordion v3.3.4
 * Lightweight and accessible accordion module created in pure Javascript
 * https://github.com/michu2k/Accordion
 *
 * Copyright (c) Michał Strumpf
 * Published under MIT License
 */
.ac {
  margin-top: 8px;
  border: 1px solid #eee;
  background-color: #fff;
  box-sizing: border-box;
}

.ac .ac-header {
  margin: 0;
  padding: 0;
}

.ac .ac-trigger {
  font: bold 16px "Arial", sans-serif;
  color: #111;
  text-align: left;
  width: 100%;
  padding: 8px 32px 8px 8px;
  display: block;
  cursor: pointer;
  background-color: transparent;
  transition: color 0.25s ease;
  position: relative;
  text-decoration: none;
  margin: 0;
  border: 0;
}

.ac .ac-trigger::after {
  content: "+";
  text-align: center;
  width: 15px;
  transform: translate(0, -50%);
  position: absolute;
  right: 10px;
  top: 50%;
}

.ac .ac-trigger:focus {
  color: #8a8a8a;
}

.ac .ac-panel {
  overflow: hidden;
  transition-property: height, visibility;
  transition-timing-function: ease;
}

.ac .ac-panel .ac-text {
  font: 15px/24px "Arial", sans-serif;
  color: #111;
  padding: 8px;
  margin: 0;
}

.ac.js-enabled .ac-panel {
  visibility: hidden;
}

.ac.is-active .ac-panel {
  visibility: visible;
}

.ac.is-active > .ac-header .ac-trigger::after {
  content: "–";
}

.glide {
  position: relative;
  width: 100%;
  box-sizing: border-box;
}
.glide * {
  box-sizing: inherit;
}
.glide__track {
  overflow: hidden;
}
.glide__slides {
  position: relative;
  width: 100%;
  list-style: none;
  backface-visibility: hidden;
  transform-style: preserve-3d;
  touch-action: pan-Y;
  overflow: hidden;
  margin: 0;
  padding: 0;
  white-space: nowrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: nowrap;
  will-change: transform;
}
.glide__slides--dragging {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.glide__slide {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  white-space: normal;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}
.glide__slide a {
  -webkit-user-select: none;
          user-select: none;
  -webkit-user-drag: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.glide__arrows {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.glide__bullets {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.glide--rtl {
  direction: rtl;
}

.glide__arrow {
  position: absolute;
  display: block;
  top: 50%;
  z-index: 2;
  color: white;
  text-transform: uppercase;
  padding: 9px 12px;
  background-color: transparent;
  border: 2px solid rgba(255, 255, 255, 0.5);
  border-radius: 4px;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  text-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.1);
  opacity: 1;
  cursor: pointer;
  transition: opacity 150ms ease, border 300ms ease-in-out;
  transform: translateY(-50%);
  line-height: 1;
}
.glide__arrow:focus {
  outline: none;
}
.glide__arrow:hover {
  border-color: white;
}
.glide__arrow--left {
  left: 2em;
}
.glide__arrow--right {
  right: 2em;
}
.glide__arrow--disabled {
  opacity: 0.33;
}
.glide__bullets {
  position: absolute;
  z-index: 2;
  bottom: 2em;
  left: 50%;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  list-style: none;
  transform: translateX(-50%);
}
.glide__bullet {
  background-color: rgba(255, 255, 255, 0.5);
  width: 9px;
  height: 9px;
  padding: 0;
  border-radius: 50%;
  border: 2px solid transparent;
  transition: all 300ms ease-in-out;
  cursor: pointer;
  line-height: 0;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  margin: 0 0.25em;
}
.glide__bullet:focus {
  outline: none;
}
.glide__bullet:hover, .glide__bullet:focus {
  border: 2px solid white;
  background-color: rgba(255, 255, 255, 0.5);
}
.glide__bullet--active {
  background-color: white;
}
.glide--swipeable {
  cursor: grab;
  cursor: -webkit-grab;
}
.glide--dragging {
  cursor: grabbing;
  cursor: -webkit-grabbing;
}

#site-header {
  background-color: #FFFFFF;
  padding: 3.5rem;
}
#site-header .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
}
@media screen and (max-width: 45rem) {
  #site-header .inner {
    flex-wrap: wrap;
    justify-content: center;
  }
}
#site-header .left {
  flex: 0 0 33.33%;
}
@media screen and (max-width: 80rem) {
  #site-header .left {
    flex: 0 0 120px;
  }
}
@media screen and (max-width: 45rem) {
  #site-header .left {
    flex: 0 0 60px;
  }
}
#site-header .center {
  flex: 0 0 33.33%;
}
@media screen and (max-width: 80rem) {
  #site-header .center {
    flex: auto;
  }
}
@media screen and (max-width: 45rem) {
  #site-header .center {
    flex: 0 0 17.5rem;
  }
}
#site-header .right {
  flex: 0 0 33.33%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0 1.6rem;
}
@media screen and (max-width: 80rem) {
  #site-header .right {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 45rem) {
  #site-header .right {
    flex: 0 0 100%;
    justify-content: center;
    margin-top: 1.5rem;
  }
}
#site-header .site-logo {
  width: 120px;
  display: inline-block;
}
@media screen and (max-width: 45rem) {
  #site-header .site-logo {
    width: 60px;
  }
}
#site-header .site-logo img {
  width: 100%;
}
#site-header p.strapline {
  font-size: 4.8rem;
  line-height: 1.1;
  font-weight: 600;
  color: #0040D1;
  max-width: 44rem;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 80rem) {
  #site-header p.strapline {
    text-align: left;
    margin: 0;
    padding-left: 3rem;
    font-size: 3rem;
    max-width: 24rem;
  }
}
@media screen and (max-width: 45rem) {
  #site-header p.strapline {
    font-size: 2rem;
    padding-left: 1.5rem;
    max-width: 16rem;
  }
}
#site-header p.strapline em {
  font-style: italic;
}
@media screen and (max-width: 80rem) {
  #site-header .search {
    flex: 0 0 100%;
    margin-bottom: 1.5rem;
  }
}
@media screen and (max-width: 45rem) {
  #site-header .search {
    display: none;
  }
}
#site-header .search form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: nowrap;
  width: 180px;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 45rem) {
  #site-header .search form {
    width: 50%;
    margin: 0 auto;
  }
}
#site-header .search input[type=text] {
  border: 2px solid #0040D1;
  border-radius: 5rem 0 0 5rem;
  padding: 1rem 2rem;
  border-right: none;
  box-sizing: border-box;
  background-color: #FFFFFF;
  flex: 0 0 calc(180px - 4rem);
  max-width: calc(180px - 4rem);
  min-width: 0;
  color: #0040D1;
  font-size: 1.4rem;
}
@media screen and (max-width: 80rem) {
  #site-header .search input[type=text] {
    flex: 0 0 calc(100% - 4rem);
    max-width: calc(100% - 4rem);
  }
}
#site-header .search input[type=submit] {
  border: 2px solid #0040D1;
  border-radius: 0 5rem 5rem 0;
  box-sizing: border-box;
  padding: 0;
  width: 4rem;
  height: 4rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 2rem;
  border-left: none;
  background-color: #FFFFFF;
  flex: 0 0 4rem;
}
#site-header .basket a {
  color: #FFFFFF;
  text-decoration: none;
}
#site-header .basket a:hover {
  color: #FFFFFF;
  text-decoration: none;
}
#site-header .basket-button {
  background-color: #0040D1;
  border: 2px solid #0040D1;
  color: #FFFFFF;
  border-radius: 5rem;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: nowrap;
}
#site-header .basket-button .text {
  color: inherit;
  padding: 0 1.6rem;
  font-size: 1.4rem;
}
#site-header .basket-button .icon {
  background-color: #FFFFFF;
  border-radius: 100%;
  padding: 1rem;
}
#site-header .basket-button .icon img {
  height: 1.6rem;
}
#site-header .account .icon {
  height: 40px;
}
#site-header .account .icon a {
  border: 2px solid #0040D1;
  border-radius: 5rem;
  display: inline-block;
  background-color: #FFFFFF;
  border-radius: 100%;
  padding: 1rem;
  line-height: 1;
  box-sizing: border-box;
  margin: 0;
}
#site-header .account .icon img {
  height: 1.6rem;
}

#toggle-mobile-menu {
  display: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid #FFFFFF;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  line-height: 1.1;
}
@media screen and (max-width: 60rem) {
  #toggle-mobile-menu {
    display: inline-block;
  }
}
#toggle-mobile-menu span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
#toggle-mobile-menu .icon {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
#toggle-mobile-menu .icon svg {
  height: 1em;
  width: auto;
  fill: currentColor;
}
#toggle-mobile-menu:hover {
  border: 2px solid #FFFFFF;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}

#main-menu {
  font-size: 1.5rem;
  line-height: 1.5;
  background-color: #0040D1;
  text-align: center;
}
@media screen and (max-width: 60rem) {
  #main-menu {
    padding: 1rem 0;
  }
}
#main-menu ul {
  margin: 0;
  list-style-type: none;
  box-sizing: border-box;
  padding-left: 0;
}
@media screen and (max-width: 60rem) {
  #main-menu ul.open {
    transform: translateX(-100%);
    display: block;
    box-shadow: 0 0 10rem rgb(0, 0, 0);
  }
}
#main-menu ul.sub-menu {
  background-color: #FFFFFF;
  color: #0040D1;
  display: none;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
  max-width: 100%;
  position: absolute;
  top: 4rem;
  left: 0;
  z-index: 99;
  padding: 3rem 0;
  gap: 3rem;
}
@media screen and (min-width: 60rem) {
  #main-menu ul.sub-menu {
    box-shadow: 0rem 3rem 1.5rem rgba(0, 0, 0, 0.5);
  }
}
#main-menu ul.sub-menu li {
  font-weight: 700;
}
#main-menu ul.sub-menu li.menu-item-has-children a {
  border-bottom: 1px solid #F3F3F3;
}
#main-menu ul.sub-menu li ul li {
  font-weight: 400;
}
#main-menu ul.sub-menu li ul li a {
  border-bottom: 0 !important;
}
#main-menu ul.sub-menu a {
  color: #0040D1;
  padding: 0.5rem 3rem;
}
@media screen and (max-width: 60rem) {
  #main-menu ul {
    position: fixed;
    padding-top: 10vh;
    z-index: 99;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 100%;
    max-width: 40rem;
    margin: 0;
    outline: 0;
    overflow: auto;
    background-color: #0040D1;
    transition: transform 0.4s;
    text-align: left;
  }
}
#main-menu ul li {
  display: inline-block;
  vertical-align: top;
  position: unset;
}
@media screen and (max-width: 60rem) {
  #main-menu ul li {
    display: block;
    border-bottom: 1px solid #FFFFFF;
    padding-left: 1.5rem;
  }
}
@media screen and (min-width: 60rem) {
  #main-menu ul li.menu-item-has-children:hover {
    background-color: #FFFFFF;
    color: #0040D1;
  }
}
@media screen and (min-width: 60rem) {
  #main-menu ul li.menu-item-has-children:hover a {
    color: #0040D1;
  }
}
@media screen and (min-width: 60rem) {
  #main-menu ul li.menu-item-has-children:hover ul.sub-menu {
    display: grid;
  }
}
#main-menu ul li.menu-item-has-children:hover ul.sub-menu ul.sub-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  position: relative;
  top: unset;
  padding: 0;
  gap: 0;
}
@media screen and (min-width: 60rem) {
  #main-menu ul li.menu-item-has-children:hover ul.sub-menu ul.sub-menu {
    box-shadow: none;
  }
}
#main-menu ul li.close-nav {
  border-bottom: none;
  padding-left: 2.6rem;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 60rem) {
  #main-menu ul li.close-nav {
    display: none;
  }
}
#main-menu ul li.close-nav a {
  font-size: 0;
  line-height: 0;
  width: 1.6rem;
  height: 1.6rem;
  border: 2px solid #FFFFFF;
  background-image: url("data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='%23ffffff'%3E%3Cg id='x'%3E%3Cg id='Line_7' data-name='Line 7'%3E%3Cpath d='m3.79,50c-.97,0-1.94-.37-2.68-1.11-1.48-1.48-1.48-3.88,0-5.36L43.53,1.11c1.48-1.48,3.88-1.48,5.36,0s1.48,3.88,0,5.36L6.47,48.89c-.74.74-1.71,1.11-2.68,1.11Z'/%3E%3C/g%3E%3Cg id='Line_8' data-name='Line 8'%3E%3Cpath d='m46.21,50c-.97,0-1.94-.37-2.68-1.11L1.11,6.47C-.37,4.99-.37,2.59,1.11,1.11s3.88-1.48,5.36,0l42.42,42.42c1.48,1.48,1.48,3.88,0,5.36-.74.74-1.71,1.11-2.68,1.11Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  background-size: 1.6rem;
  background-repeat: no-repeat;
  background-position: center;
}
#main-menu ul li.close-nav a:hover {
  background-color: rgba(255, 255, 255, 0.25);
}
#main-menu ul a {
  color: #FFFFFF;
  text-decoration: none;
  padding: 1rem 3rem;
  display: block;
}
@media screen and (max-width: 60rem) {
  #main-menu ul a {
    padding: 1rem;
  }
}

.wpcf7 form .wpcf7-response-output {
  margin: 3rem auto;
  padding: 1rem 2rem;
  border: none;
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
  display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
  background-color: #FFFFFF;
  color: #0040D1;
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
  background-color: #FF5F5F;
  color: #FFFFFF;
}

.wpcf7 form.spam .wpcf7-response-output {
  background-color: #FF5F5F;
  color: #FFFFFF;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  background-color: #FF5F5F;
  color: #FFFFFF;
}

.wpcf7-list-item {
  display: inline-block;
  margin: 0 0 0 1rem;
}

.wpcf7-spinner {
  display: inline-block;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 38 38' xmlns='http://www.w3.org/2000/svg' stroke='%23ffffff'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(1 1)' stroke-width='6'%3E%3Ccircle stroke-opacity='.5' cx='18' cy='18' r='18'/%3E%3Cpath d='M36 18c0-9.94-8.06-18-18-18'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 18 18' to='360 18 18' dur='1s' repeatCount='indefinite'/%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  background-size: contain;
  background-position: center center;
  width: 45px;
  height: 45px;
  margin-left: 0;
  margin-top: 0;
  background-repeat: no-repeat;
}

.wpcf7 form .wpcf7-spinner:before {
  background-color: transparent;
}

form.submitting input[type=submit] {
  display: none;
}

form.submitting .wpcf7-spinner {
  visibility: visible;
}

.wpcf7-spinner::before {
  content: "";
  position: absolute;
  background-color: #fbfbfc; /* Light Gray 100 */
  top: 4px;
  left: 4px;
  width: 6px;
  height: 6px;
  border: none;
  border-radius: 100%;
  transform-origin: 8px 8px;
  animation-name: spin;
  animation-duration: 1000ms;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

.form-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 3rem;
}
.form-grid .half {
  flex: 0 0 calc(50% - 3rem + 1.5rem);
  overflow: hidden;
}
@media screen and (max-width: 60rem) {
  .form-grid .half {
    flex: 0 0 100%;
  }
}
.form-grid .full {
  flex: 0 0 100%;
  overflow: hidden;
}
.form-grid label {
  display: block;
  text-transform: uppercase;
  font-size: 1.8rem;
  letter-spacing: 0.4rem;
  margin-bottom: 0.5rem;
}
.form-grid input[type=text],
.form-grid input[type=number],
.form-grid input[type=tel],
.form-grid input[type=email],
.form-grid select,
.form-grid textarea {
  width: 100%;
  max-width: 100%;
  padding: 0.8rem 1rem;
  border-radius: 0;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.form-grid input[type=submit] {
  border: 2px solid #FFFFFF;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 3em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
}
.form-grid input[type=submit]:hover {
  border: 2px solid #FFFFFF;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
}

.wpcf7-not-valid-tip {
  color: #FF5F5F;
}

/* Home slider */
.box-slides {
  overflow: hidden;
  width: 100%;
  box-sizing: border-box;
}
.box-slides .slide {
  position: relative;
  box-sizing: border-box;
  height: 100%;
}
.box-slides .glide__slide {
  align-self: stretch;
  height: auto;
}
.box-slides .slide-inner {
  max-width: 1280px;
  padding: 12rem 2rem;
  margin: 0 auto;
}
.box-slides .slide-title {
  margin-bottom: 1.6rem;
}
.box-slides .slide-title h2 {
  display: inline-block;
  padding: 1rem;
  font-size: 5rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto;
  line-height: 1.2;
}
@media screen and (max-width: 60rem) {
  .box-slides .slide-title h2 {
    font-size: 3.5rem;
  }
}
.box-slides .slide-text p {
  display: inline-block;
  padding: 1rem;
  font-size: 2.4rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto;
  line-height: 1.2;
}
@media screen and (max-width: 60rem) {
  .box-slides .slide-text p {
    font-size: 1.6rem;
  }
}
.box-slides .slide-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
}
.box-slides img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.box-slides .button {
  margin-top: 3rem;
  border: 2px solid #0040D1;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
}
.box-slides .button span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
.box-slides .button .arrows {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
.box-slides .button:hover {
  border: 2px solid #0040D1;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}

/* home intro */
.intro {
  padding: 0 3rem;
  margin: 3rem auto;
}
.intro .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  max-width: 1280px;
  margin: 0 auto;
  gap: 3rem;
}
@media screen and (min-width: 60rem) {
  .intro .inner {
    flex-direction: row-reverse;
  }
}
.intro .text {
  flex: 0 0 calc(50% - 30px + 15px);
}
@media screen and (max-width: 60rem) {
  .intro .text {
    flex: 0 0 100%;
  }
}
.intro .image {
  flex: 0 0 calc(50% - 30px + 15px);
}
@media screen and (max-width: 60rem) {
  .intro .image {
    flex: 0 0 100%;
  }
}
.intro h1, .intro h2 {
  font-size: 5rem;
}
@media screen and (max-width: 60rem) {
  .intro h1, .intro h2 {
    font-size: 3rem;
  }
}
.intro h3, .intro h4, .intro h5, .intro h6 {
  font-size: 3rem;
}
@media screen and (max-width: 60rem) {
  .intro h3, .intro h4, .intro h5, .intro h6 {
    font-size: 2rem;
  }
}
.intro strong {
  font-size: 2.8rem;
  font-weight: 500;
}
@media screen and (max-width: 60rem) {
  .intro strong {
    font-size: 1.8rem;
  }
}
.intro .button {
  border: 2px solid #0040D1;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
}
.intro .button span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
.intro .button .arrows {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
.intro .button:hover {
  border: 2px solid #0040D1;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}
.intro p:has(.button) {
  margin-top: 3rem;
}

/* Home categories */
.home-categories {
  padding: 0 3rem;
  margin: 3rem auto;
}
.home-categories .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  margin: 0 auto;
  gap: 1.5rem;
}
.home-categories .box-card {
  aspect-ratio: 1/1;
  flex: 0 0 calc(25% - 1.5rem + 0.375rem);
  background-color: #f1f2f3;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 90rem) {
  .home-categories .box-card {
    flex: 0 0 calc(50% - 1.5rem + 0.75rem);
  }
}
.home-categories .box-card.callout {
  aspect-ratio: 2/1;
  flex: 0 0 calc(50% - 1.5rem + 0.75rem);
  background-color: #0040D1;
  color: #FFFFFF;
  text-align: center;
}
@media screen and (max-width: 90rem) {
  .home-categories .box-card.callout {
    flex: 0 0 100%;
    aspect-ratio: unset;
    padding: 6rem 0;
  }
}
.home-categories .box-card.callout .callout-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.home-categories .box-card.callout .intro {
  color: inherit;
  text-transform: uppercase;
  font-size: 1.8rem;
  line-height: 1.2;
  margin: 0 auto;
  max-width: 75%;
}
@media screen and (max-width: 60rem) {
  .home-categories .box-card.callout .intro {
    font-size: 1.6rem;
    max-width: 90%;
  }
}
.home-categories .box-card.callout .heading {
  color: inherit;
  font-size: 5rem;
  line-height: 1.1;
  margin: 2rem auto;
  max-width: 75%;
}
@media screen and (max-width: 144rem) {
  .home-categories .box-card.callout .heading {
    font-size: 4rem;
    max-width: 80%;
  }
}
@media screen and (max-width: 60rem) {
  .home-categories .box-card.callout .heading {
    font-size: 3rem;
    max-width: 90%;
  }
}
.home-categories .box-card.callout .text {
  color: inherit;
  margin: 0 auto;
  max-width: 60%;
}
@media screen and (max-width: 144rem) {
  .home-categories .box-card.callout .text {
    max-width: 80%;
  }
}
@media screen and (max-width: 60rem) {
  .home-categories .box-card.callout .text {
    font-size: 1.4rem;
    max-width: 90%;
  }
}
.home-categories .box-card.video {
  aspect-ratio: 2/1;
  flex: 0 0 calc(50% - 1.5rem + 0.75rem);
  background-color: #0040D1;
  color: #FFFFFF;
  text-align: center;
}
@media screen and (max-width: 90rem) {
  .home-categories .box-card.video {
    flex: 0 0 100%;
    order: 1;
  }
}
.home-categories .box-card.video .callout-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.home-categories .box-card.video .video-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home-categories .box-card.video video {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
  mix-blend-mode: screen;
}
.home-categories .box-card img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.home-categories .box-card a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.home-categories .box-card span {
  display: inline-block;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 1.6rem 3rem;
  width: auto;
  background-color: #0040D1;
  color: #FFFFFF;
  font-size: 2.8rem;
  line-height: 1.1;
}
@media screen and (max-width: 60rem) {
  .home-categories .box-card span {
    font-size: 1.6rem;
    padding: 0.8rem 1.6rem;
  }
}

/* Contact block */
.contact-block {
  margin: 0 auto;
  background-color: #0040D1;
  color: #FFFFFF;
}
.contact-block .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 auto;
}
.contact-block h1, .contact-block h2, .contact-block h3, .contact-block h4, .contact-block h5, .contact-block h6 {
  color: #FFFFFF;
  font-size: 5rem;
}
.contact-block .left {
  flex: 0 0 50%;
}
@media screen and (max-width: 60rem) {
  .contact-block .left {
    flex: 0 0 100%;
  }
}
.contact-block .left .form-outer {
  padding: 10rem;
}
@media screen and (max-width: 90rem) {
  .contact-block .left .form-outer {
    padding: 5rem;
  }
}
.contact-block .right {
  flex: 0 0 50%;
  align-self: stretch;
}
@media screen and (max-width: 60rem) {
  .contact-block .right {
    flex: 0 0 100%;
  }
}
.contact-block .right img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.contact-block .form-grid {
  margin-top: 5rem;
}
.contact-block select {
  background-image: url("data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cdefs%3E%3Cstyle%3E.arrow-down-class %7Bfill: %230040d1;stroke-width: 0px;%7D%3C/style%3E%3C/defs%3E%3Cpath id='Polygon_1' data-name='Polygon 1' class='arrow-down-class' d='m25,47.37L0,2.63h50l-25,44.74Z'/%3E%3C/svg%3E");
  background-position: center right 1rem;
  background-repeat: no-repeat;
  background-size: 1.5rem;
  padding-right: 3.5rem;
}

/* Trending block */
.trending-block {
  overflow: hidden;
  position: relative;
  margin: 10rem auto;
}
@media screen and (max-width: 45rem) {
  .trending-block {
    margin: 3rem auto;
  }
}
.trending-block .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 66.66vw;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 60rem) {
  .trending-block .bg {
    width: 50vw;
  }
}
@media screen and (max-width: 45rem) {
  .trending-block .bg {
    width: 100vw;
    height: 200px;
  }
}
.trending-block .inner {
  overflow: hidden;
}
.trending-block .content {
  margin-left: 56.66vw;
  padding-left: 3rem;
  padding: 0 3rem;
  margin-top: 10vw;
  margin-bottom: 10vw;
}
@media screen and (max-width: 60rem) {
  .trending-block .content {
    margin-left: 40%;
  }
}
@media screen and (max-width: 45rem) {
  .trending-block .content {
    margin-left: 0;
    margin-top: calc(200px - 1.75rem);
  }
}
.trending-block .inset {
  padding-left: 10vw;
}
@media screen and (max-width: 45rem) {
  .trending-block .inset {
    padding-left: 5vw;
  }
}
.trending-block p.prefix {
  display: inline-block;
  padding: 1rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.4rem;
}
.trending-block .box-prefix {
  margin-bottom: 1.6rem;
}
.trending-block h2 {
  display: inline-block;
  padding: 1rem;
  font-size: 5rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto;
  line-height: 1.2;
}
@media screen and (max-width: 90rem) {
  .trending-block h2 {
    font-size: 3.5rem;
  }
}
.trending-block .button {
  border: 2px solid #0040D1;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
}
.trending-block .button span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
.trending-block .button .arrows {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
.trending-block .button:hover {
  border: 2px solid #0040D1;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}
.trending-block p:has(.button) {
  margin-top: 3rem;
}

/* Product sub categories */
.category-block {
  overflow: hidden;
  position: relative;
  margin: 10rem auto;
}
@media screen and (max-width: 45rem) {
  .category-block {
    margin: 3rem auto;
  }
}
.category-block:nth-of-type(2n) .bg {
  left: unset;
  right: 0;
}
.category-block:nth-of-type(2n) .content {
  margin-right: 66.66vw;
  margin-left: 0;
  padding-right: 3rem;
  padding-left: 0;
  padding: 0 3rem;
  margin-top: 10vw;
  margin-bottom: 10vw;
}
@media screen and (max-width: 60rem) {
  .category-block:nth-of-type(2n) .content {
    margin-right: 50vw;
  }
}
@media screen and (max-width: 45rem) {
  .category-block:nth-of-type(2n) .content {
    margin-right: 0;
    margin-top: calc(200px - 1.75rem);
  }
}
.category-block:nth-of-type(2n) .inset {
  padding-right: 0;
}
.category-block .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 66.66vw;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 60rem) {
  .category-block .bg {
    width: 50vw;
  }
}
@media screen and (max-width: 45rem) {
  .category-block .bg {
    width: 100vw;
    height: 200px;
  }
}
.category-block .inner {
  overflow: hidden;
}
.category-block .content {
  margin-left: 66.66vw;
  padding-left: 3rem;
  padding: 0 3rem;
  margin-top: 10vw;
  margin-bottom: 10vw;
}
@media screen and (max-width: 60rem) {
  .category-block .content {
    margin-left: 50vw;
  }
}
@media screen and (max-width: 45rem) {
  .category-block .content {
    margin-left: 0;
    margin-top: calc(200px - 1.75rem);
  }
}
.category-block .inset {
  padding-left: 0;
}
.category-block p.prefix {
  display: inline-block;
  padding: 1rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.4rem;
}
.category-block .box-prefix {
  margin-bottom: 1.6rem;
}
.category-block h2 {
  display: inline-block;
  padding: 1rem;
  font-size: 5rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto;
  line-height: 1.2;
}
@media screen and (max-width: 90rem) {
  .category-block h2 {
    font-size: 3.5rem;
  }
}
.category-block .content .button {
  border: 2px solid #0040D1;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
}
.category-block .content .button span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
.category-block .content .button .arrows {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
.category-block .content .button:hover {
  border: 2px solid #0040D1;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}
.category-block p:has(.button) {
  margin-top: 3rem;
}

/* Page content */
.page-content {
  max-width: 1660px;
  padding: 6rem 3rem;
  margin: 0 auto;
}
.page-content.page-categories {
  max-width: 100%;
  padding: 0;
}
.page-content.page-categories .category-block:nth-child(odd) .bg {
  left: 33.33vw;
}
@media screen and (max-width: 60rem) {
  .page-content.page-categories .category-block:nth-child(odd) .bg {
    left: 50vw;
  }
}
@media screen and (max-width: 45rem) {
  .page-content.page-categories .category-block:nth-child(odd) .bg {
    left: 0;
  }
}
.page-content.page-categories .category-block:nth-child(odd) .content {
  margin-left: 0;
  margin-right: 66.66%;
  padding-right: 3rem;
  padding-left: 3rem;
}
@media screen and (max-width: 60rem) {
  .page-content.page-categories .category-block:nth-child(odd) .content {
    margin-right: 50vw;
  }
}
@media screen and (max-width: 45rem) {
  .page-content.page-categories .category-block:nth-child(odd) .content {
    margin-right: 0;
  }
}

/* WooCommerce */
.woocommerce ul.products {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 3rem;
}
@media screen and (max-width: 45rem) {
  .woocommerce ul.products {
    gap: 1.5rem;
  }
}
.woocommerce ul.products:before, .woocommerce ul.products:after {
  content: unset;
  display: unset;
  clear: unset;
}
.woocommerce ul.products li.product {
  float: unset;
  clear: unset !important;
  margin: 0;
  background-color: #F3F3F3;
  flex: 0 0 calc(25% - 3rem + 0.75rem);
  width: 0 0 calc(25% - 3rem + 0.75rem);
}
@media screen and (max-width: 80rem) {
  .woocommerce ul.products li.product {
    flex: 0 0 calc(33.3333333333% - 3rem + 1rem);
    width: 0 0 calc(33.3333333333% - 3rem + 1rem);
  }
}
@media screen and (max-width: 60rem) {
  .woocommerce ul.products li.product {
    flex: 0 0 calc(50% - 3rem + 1.5rem);
    width: 0 0 calc(50% - 3rem + 1.5rem);
  }
}
@media screen and (max-width: 45rem) {
  .woocommerce ul.products li.product {
    width: 100%;
    flex: 0 0 100%;
  }
}
.woocommerce ul.products li.product a {
  color: #0040D1;
  text-decoration: none;
}
.woocommerce ul.products li.product a:hover {
  color: #000000;
}
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail {
  width: 100%;
  background-color: #FFFFFF;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  text-align: center;
  padding: 0 1rem;
  font-size: 2rem;
  margin: 0 auto 1rem;
}
.woocommerce ul.products li.product .price {
  font-size: 2rem;
  color: #000000;
  text-align: center;
}
.woocommerce ul.products li.product .button {
  display: block;
  border-radius: 0;
  text-align: center;
  background-color: #0040D1;
  color: #FFFFFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}
.woocommerce ul.products li.product .button:hover {
  background-color: #000000;
  color: #FFFFFF;
}
.woocommerce ul.products li.product .button .icon {
  margin-left: 0.5rem;
}
.woocommerce ul.products li.product .button .icon img {
  height: 1em;
  margin: 0 auto;
}
.woocommerce ul.products li.product .onsale {
  background-color: #0040D1;
  line-height: 1;
  border-radius: 0;
  padding: 0.5rem;
  min-height: 0;
  height: auto;
  margin: -1rem -1rem 0 0;
}
.woocommerce div.product div.summary h1 {
  font-size: 5rem;
}
@media screen and (max-width: 60rem) {
  .woocommerce div.product div.summary h1 {
    font-size: 3rem;
  }
}
.woocommerce div.product div.summary .price {
  font-size: 2.8rem;
  color: #000000;
}
.woocommerce div.product form.cart {
  margin: 2rem auto;
}

span.bullet {
  color: #0040D1;
}

.woocommerce-message {
  border: none;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  padding: 1.5rem 1.5rem 1.5rem 6rem;
  margin: 0 0 2em;
  position: relative;
  background-color: #F3F3F3;
  color: #0040D1;
  border: none;
  font-size: 1.6rem;
}

.woocommerce-error {
  color: #FFFFFF;
  background-color: #FF5F5F;
}

.woocommerce-message::before,
.woocommerce-info::before {
  color: #0040D1;
}

.woocommerce-error::before {
  color: #FFFFFF;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button {
  background-color: #0040D1;
  color: #FFFFFF;
  border-radius: 0;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button:hover {
  background-color: #000000;
  color: #FFFFFF;
}

.additional-information {
  width: 100%;
  display: block;
  float: left;
  padding: 6rem 0;
}
.additional-information .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  margin: 0 auto;
  gap: 3rem;
}
.additional-information .column {
  flex: 0 0 calc(25% - 3rem + 0.75rem);
}
@media screen and (max-width: 80rem) {
  .additional-information .column {
    flex: 0 0 calc(50% - 3rem + 1.5rem);
  }
}
@media screen and (max-width: 60rem) {
  .additional-information .column {
    flex: 0 0 100%;
  }
}
.additional-information .column:first-of-type {
  flex: 0 0 calc(50% - 3rem + 1.5rem);
}
@media screen and (max-width: 80rem) {
  .additional-information .column:first-of-type {
    flex: 0 0 100%;
  }
}
.additional-information .product-description {
  -moz-columns: 2;
       columns: 2;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}
@media screen and (max-width: 60rem) {
  .additional-information .product-description {
    -moz-columns: 1;
         columns: 1;
  }
}
.additional-information .product-description p:first-of-type {
  margin-top: 0;
}
.additional-information .product-description p:last-of-type {
  margin-bottom: 0;
}
.additional-information .instructions a {
  border: 2px solid #0040D1;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
  word-wrap: break-word;
  white-space: pre-wrap;
}
.additional-information .instructions a span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
.additional-information .instructions a .arrows {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
.additional-information .instructions a:hover {
  border: 2px solid #0040D1;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  width: 150px;
}
@media screen and (max-width: 60rem) {
  .woocommerce-account .woocommerce-MyAccount-navigation {
    width: calc(100% - 6rem);
    margin-bottom: 3rem;
  }
}

.woocommerce-account .woocommerce-MyAccount-content {
  width: calc(100% - 150px - 9rem);
}
@media screen and (max-width: 60rem) {
  .woocommerce-account .woocommerce-MyAccount-content {
    width: 100%;
  }
}

.woocommerce-MyAccount-navigation {
  background-color: #F3F3F3;
  color: #0040D1;
  padding: 3rem;
}
.woocommerce-MyAccount-navigation ul {
  list-style-type: none;
  padding-left: 0;
  margin: 0 auto;
}
.woocommerce-MyAccount-navigation ul li {
  margin: 1rem auto;
}
.woocommerce-MyAccount-navigation ul li:first-of-type {
  margin-top: 0;
}
.woocommerce-MyAccount-navigation ul li:last-of-type {
  margin-bottom: 0;
}
.woocommerce-MyAccount-navigation ul a {
  color: #0040D1;
  text-decoration: none;
}
.woocommerce-MyAccount-navigation ul a:hover {
  color: #000000;
  text-decoration: none;
}

.woocommerce-MyAccount-content {
  font-size: 2.4rem;
  line-height: 1.5;
}
.woocommerce-MyAccount-content a {
  color: #0040D1;
  text-decoration: none;
}
.woocommerce-MyAccount-content a:hover {
  color: #0040D1;
  text-decoration: underline;
}
.woocommerce-MyAccount-content .button {
  font-size: 1.6rem !important;
}
@media screen and (max-width: 767px) {
  .woocommerce-MyAccount-content .woocommerce-Address {
    margin-bottom: 3rem;
  }
}

.not {
  font-size: 0.8em;
}

.woocommerce table.woocommerce-orders-table,
.woocommerce table.woocommerce-MyAccount-paymentMethods,
.woocommerce table.woocommerce-table--order-details,
.woocommerce table.shop_table {
  border-radius: 0;
  border: none;
  border-collapse: collapse;
}
.woocommerce table.woocommerce-orders-table .woocommerce-button,
.woocommerce table.woocommerce-orders-table .button,
.woocommerce table.woocommerce-MyAccount-paymentMethods .woocommerce-button,
.woocommerce table.woocommerce-MyAccount-paymentMethods .button,
.woocommerce table.woocommerce-table--order-details .woocommerce-button,
.woocommerce table.woocommerce-table--order-details .button,
.woocommerce table.shop_table .woocommerce-button,
.woocommerce table.shop_table .button {
  margin: 0.5rem;
}
.woocommerce table.woocommerce-orders-table .woocommerce-button:last-of-type,
.woocommerce table.woocommerce-orders-table .button:last-of-type,
.woocommerce table.woocommerce-MyAccount-paymentMethods .woocommerce-button:last-of-type,
.woocommerce table.woocommerce-MyAccount-paymentMethods .button:last-of-type,
.woocommerce table.woocommerce-table--order-details .woocommerce-button:last-of-type,
.woocommerce table.woocommerce-table--order-details .button:last-of-type,
.woocommerce table.shop_table .woocommerce-button:last-of-type,
.woocommerce table.shop_table .button:last-of-type {
  margin-right: 0;
}
.woocommerce table.woocommerce-orders-table .woocommerce-button.pay,
.woocommerce table.woocommerce-orders-table .button.pay,
.woocommerce table.woocommerce-MyAccount-paymentMethods .woocommerce-button.pay,
.woocommerce table.woocommerce-MyAccount-paymentMethods .button.pay,
.woocommerce table.woocommerce-table--order-details .woocommerce-button.pay,
.woocommerce table.woocommerce-table--order-details .button.pay,
.woocommerce table.shop_table .woocommerce-button.pay,
.woocommerce table.shop_table .button.pay {
  background-color: #08D566;
}
.woocommerce table.woocommerce-orders-table .woocommerce-button.pay:hover,
.woocommerce table.woocommerce-orders-table .button.pay:hover,
.woocommerce table.woocommerce-MyAccount-paymentMethods .woocommerce-button.pay:hover,
.woocommerce table.woocommerce-MyAccount-paymentMethods .button.pay:hover,
.woocommerce table.woocommerce-table--order-details .woocommerce-button.pay:hover,
.woocommerce table.woocommerce-table--order-details .button.pay:hover,
.woocommerce table.shop_table .woocommerce-button.pay:hover,
.woocommerce table.shop_table .button.pay:hover {
  background-color: #000000;
}
.woocommerce table.woocommerce-orders-table .woocommerce-button.cancel, .woocommerce table.woocommerce-orders-table .woocommerce-button.delete,
.woocommerce table.woocommerce-orders-table .button.cancel,
.woocommerce table.woocommerce-orders-table .button.delete,
.woocommerce table.woocommerce-MyAccount-paymentMethods .woocommerce-button.cancel,
.woocommerce table.woocommerce-MyAccount-paymentMethods .woocommerce-button.delete,
.woocommerce table.woocommerce-MyAccount-paymentMethods .button.cancel,
.woocommerce table.woocommerce-MyAccount-paymentMethods .button.delete,
.woocommerce table.woocommerce-table--order-details .woocommerce-button.cancel,
.woocommerce table.woocommerce-table--order-details .woocommerce-button.delete,
.woocommerce table.woocommerce-table--order-details .button.cancel,
.woocommerce table.woocommerce-table--order-details .button.delete,
.woocommerce table.shop_table .woocommerce-button.cancel,
.woocommerce table.shop_table .woocommerce-button.delete,
.woocommerce table.shop_table .button.cancel,
.woocommerce table.shop_table .button.delete {
  background-color: #FF5F5F;
}
.woocommerce table.woocommerce-orders-table .woocommerce-button.cancel:hover, .woocommerce table.woocommerce-orders-table .woocommerce-button.delete:hover,
.woocommerce table.woocommerce-orders-table .button.cancel:hover,
.woocommerce table.woocommerce-orders-table .button.delete:hover,
.woocommerce table.woocommerce-MyAccount-paymentMethods .woocommerce-button.cancel:hover,
.woocommerce table.woocommerce-MyAccount-paymentMethods .woocommerce-button.delete:hover,
.woocommerce table.woocommerce-MyAccount-paymentMethods .button.cancel:hover,
.woocommerce table.woocommerce-MyAccount-paymentMethods .button.delete:hover,
.woocommerce table.woocommerce-table--order-details .woocommerce-button.cancel:hover,
.woocommerce table.woocommerce-table--order-details .woocommerce-button.delete:hover,
.woocommerce table.woocommerce-table--order-details .button.cancel:hover,
.woocommerce table.woocommerce-table--order-details .button.delete:hover,
.woocommerce table.shop_table .woocommerce-button.cancel:hover,
.woocommerce table.shop_table .woocommerce-button.delete:hover,
.woocommerce table.shop_table .button.cancel:hover,
.woocommerce table.shop_table .button.delete:hover {
  background-color: #000000;
}

@media screen and (max-width: 767px) {
  .woocommerce-orders-table__row,
  tr.payment-method {
    margin-bottom: 3rem;
  }
}

.form-row label {
  font-size: 1.6rem;
}

.woocommerce-input-wrapper,
.woocommerce-EditAccountForm {
  font-size: 1.6rem;
}
.woocommerce-input-wrapper input[type=text],
.woocommerce-input-wrapper input[type=email],
.woocommerce-input-wrapper input[type=tel],
.woocommerce-input-wrapper input[type=password],
.woocommerce-EditAccountForm input[type=text],
.woocommerce-EditAccountForm input[type=email],
.woocommerce-EditAccountForm input[type=tel],
.woocommerce-EditAccountForm input[type=password] {
  padding: 0.8rem 1rem;
  border-radius: 0;
  border: 1px solid #0040D1;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.woocommerce-EditAccountForm fieldset {
  border: none;
  padding: 0;
  margin: 3rem 0 0;
}
.woocommerce-EditAccountForm .woocommerce-form-row {
  padding: 0 !important;
}
.woocommerce-EditAccountForm legend {
  font-size: 2.8rem;
  line-height: 1.2;
  font-weight: 600;
  color: #0040D1;
  margin-bottom: 1.5rem;
}
.woocommerce-EditAccountForm .show-password-input {
  color: #0040D1;
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
  background-color: #FFFFFF;
  border-radius: 0;
}

#add_payment_method #payment ul.payment_methods,
.woocommerce-cart #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods {
  background-color: transparent;
  padding-top: 0;
  padding-bottom: 0;
  border-bottom: none;
  border-radius: 0;
}

[type=radio] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 0.75em;
  height: 0.75em;
  border-radius: 100%;
  border: 2px solid #0040D1;
  background-color: #F3F3F3;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
[type=radio]:checked {
  background-size: 0.4em;
  background-image: url("data:image/svg+xml,%3Csvg fill='%230040D1' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='50' cy='50' r='50' /%3E%3C/svg%3E");
}

.woocommerce-SavedPaymentMethods [type=radio] {
  -webkit-appearance: none !important;
     -moz-appearance: none !important;
          appearance: none !important;
  width: 2rem !important;
  height: 2rem !important;
  border-radius: 100% !important;
  border: 2px solid #0040D1 !important;
  background-color: #F3F3F3 !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
.woocommerce-SavedPaymentMethods [type=radio]:checked {
  background-size: 1rem !important;
  background-image: url("data:image/svg+xml,%3Csvg fill='%230040D1' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='50' cy='50' r='50' /%3E%3C/svg%3E") !important;
}

.payment_method_stripe label img {
  display: none;
}

#add_payment_method #payment div.payment_box,
.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
  background-color: #0040D1;
  color: #FFFFFF;
  font-size: 2rem;
}
#add_payment_method #payment div.payment_box a,
.woocommerce-cart #payment div.payment_box a,
.woocommerce-checkout #payment div.payment_box a {
  color: #FFFFFF;
  text-decoration: underline;
  font-weight: 600;
}
#add_payment_method #payment div.payment_box a:hover,
.woocommerce-cart #payment div.payment_box a:hover,
.woocommerce-checkout #payment div.payment_box a:hover {
  color: #FFFFFF;
  text-decoration: underline;
}

#add_payment_method #payment div.payment_box::before,
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before {
  border: 1em solid #0040D1;
  border-right-color: transparent;
  border-left-color: transparent;
  border-top-color: transparent;
}

fieldset {
  border: 2px solid #FFFFFF;
  background-color: #FFFFFF;
  padding: 1.6rem;
}

#payment .form-row {
  padding-top: 0 !important;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt {
  background-color: #0040D1;
  color: #FFFFFF;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt:hover {
  background-color: #000000;
  color: #FFFFFF;
}

#customer_login .woocommerce-form {
  border: 2px solid #0040D1;
  border-radius: 0;
}
#customer_login .woocommerce-form input[type=text],
#customer_login .woocommerce-form input[type=email],
#customer_login .woocommerce-form input[type=password] {
  padding: 0.8rem 1rem;
  border-radius: 0;
  border: 1px solid #0040D1;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
#customer_login .woocommerce-form .show-password-input {
  color: #0040D1;
}
#customer_login .woocommerce-form-login {
  background-color: #0040D1;
  color: #FFFFFF;
}
#customer_login .woocommerce-form-login a {
  color: #FFFFFF;
}
#customer_login .woocommerce-form-login a:hover {
  color: #FFFFFF;
}
#customer_login .woocommerce-form-login .button {
  background-color: #08D566;
  color: #FFFFFF;
}
#customer_login .woocommerce-form-register a {
  color: #0040D1;
}
#customer_login .woocommerce-form-register a:hover {
  color: #0040D1;
}

.box-page-title {
  font-size: 3rem;
}
@media screen and (max-width: 45rem) {
  .box-page-title {
    font-size: 2rem;
  }
}

.wc-block-cart-item__wrap a.wc-block-components-product-name {
  color: #0040D1;
  font-weight: 600;
  text-decoration: none;
  font-size: 2rem;
}
.wc-block-cart-item__wrap a.wc-block-components-product-name:hover {
  color: #0040D1;
  text-decoration: underline;
}

.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
  border-left: 1px solid #0040D1 !important;
  border-right: 1px solid #0040D1 !important;
  color: #0040D1 !important;
}

.wc-block-components-quantity-selector:after {
  border-color: #0040D1 !important;
  border-radius: 0 !important;
}

.wc-block-components-quantity-selector > .wc-block-components-quantity-selector__button--minus {
  border-radius: 0 !important;
  color: #0040D1 !important;
}

.wc-block-components-quantity-selector > .wc-block-components-quantity-selector__button--plus {
  border-radius: 0 !important;
  color: #0040D1 !important;
}

.wc-block-components-product-badge {
  background-color: #0040D1;
  color: #FFFFFF;
  border-radius: 0 !important;
}
.wc-block-components-product-badge.wc-block-components-sale-badge {
  background-color: #08D566;
}

.wc-block-components-totals-footer-item {
  color: #0040D1;
}

.wc-block-components-text-input input {
  border-color: #0040D1 !important;
  border-radius: 0 !important;
  padding: 2.5rem 1.5rem 1rem 1rem !important;
}

.wc-block-components-totals-coupon__input label {
  left: 1rem !important;
}

.wc-block-cart__submit-button {
  background-color: #08D566;
  color: #FFFFFF;
  text-decoration: none;
  font-weight: 600;
}
.wc-block-cart__submit-button:hover {
  background-color: #000000;
  color: #FFFFFF;
  text-decoration: none;
}

.wc-block-components-totals-coupon__button {
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
  font-weight: 600;
  border: none;
}
.wc-block-components-totals-coupon__button:hover {
  background-color: #000000;
  color: #FFFFFF;
  text-decoration: none;
}

.wc-block-checkout__add-note .wc-block-components-textarea {
  border-color: #0040D1 !important;
  border-radius: 0 !important;
}

.wc-block-components-checkout-place-order-button {
  background-color: #08D566;
  color: #FFFFFF;
  text-decoration: none;
  font-weight: 600;
  border: none;
}
.wc-block-components-checkout-place-order-button:hover {
  background-color: #000000;
  color: #FFFFFF;
  text-decoration: none;
}

.wc-block-components-totals-coupon-link {
  color: #0040D1;
  font-weight: 600;
  text-decoration: none;
}
.wc-block-components-totals-coupon-link:hover {
  color: #0040D1;
  text-decoration: underline;
}

.wc-block-components-address-card,
.wc-block-checkout__payment-method .wc-block-components-radio-control {
  border-radius: 0 !important;
  border-color: #0040D1 !important;
}

.woocommerce-order-overview {
  padding-left: 0;
}

.woocommerce-thankyou-order-received {
  font-size: 4rem;
  font-weight: 600;
  color: #0040D1;
  line-height: 1.2;
}
@media screen and (max-width: 45rem) {
  .woocommerce-thankyou-order-received {
    font-size: 3rem;
  }
}

.woocommerce-order-overview {
  margin-bottom: 2rem !important;
}
.woocommerce-order-overview li {
  margin: 0 auto 2rem;
}
@media screen and (max-width: 45rem) {
  .woocommerce-order-overview li {
    width: 100%;
    padding-right: 0;
    border-right: none !important;
  }
}

.woocommerce-customer-details address {
  border: none !important;
  padding: 0 !important;
}

.wc_payment_method fieldset {
  padding: 0;
  border: none;
}
.wc_payment_method fieldset .woocommerce-SavedPaymentMethods-saveNew {
  padding: 1.6rem;
}
.wc_payment_method fieldset .woocommerce-SavedPaymentMethods-saveNew input[type=checkbox] {
  margin-right: 1rem !important;
}
.wc_payment_method fieldset .woocommerce-SavedPaymentMethods-saveNew label {
  color: #000000;
}
.wc_payment_method fieldset.wc-payment-form {
  border: 2px solid #FFFFFF;
  background-color: #FFFFFF;
  padding: 1.6rem;
}

.woocommerce-privacy-policy-text a {
  color: #0040D1;
  text-decoration: underline;
  font-weight: 600;
}
.woocommerce-privacy-policy-text a:hover {
  color: #0040D1;
  text-decoration: underline;
}

/* Parent Category */
.box-parent-category {
  padding: 6rem 20vw 0;
}
@media screen and (max-width: 60rem) {
  .box-parent-category {
    padding: 6rem 6rem 0;
  }
}
@media screen and (max-width: 45rem) {
  .box-parent-category {
    padding: 3rem;
  }
}
.box-parent-category h1 {
  display: inline-block;
  padding: 1rem;
  font-size: 5rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto;
  line-height: 1.2;
}
@media screen and (max-width: 90rem) {
  .box-parent-category h1 {
    font-size: 3.5rem;
  }
}
.box-parent-category p {
  width: 100%;
}
.box-parent-category p:last-of-type {
  margin-bottom: 0;
}

.cat-hero {
  padding: 10vw 3rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 45rem) {
  .cat-hero {
    padding: 20vw 3rem;
  }
}
.cat-hero .inner {
  max-width: 1660px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}
.cat-hero h1 {
  display: inline-block;
  padding: 1rem;
  font-size: 5rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 0 1.5rem;
  line-height: 1.2;
}
@media screen and (max-width: 90rem) {
  .cat-hero h1 {
    font-size: 3.5rem;
  }
}
.cat-hero p {
  display: inline-block;
  padding: 1rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.2;
  max-width: 900px;
}

/* Legal pages */
.content-thin {
  width: 100%;
  background-color: #F3F3F3;
  margin: 0 auto;
}
.content-thin .inner {
  background-color: #FFFFFF;
  margin: 0 auto;
  max-width: 900px;
  padding: 3rem 1.5rem;
}

/* Contact page */
.contact-image,
.contact-intro {
  margin: 3rem auto;
  text-align: center;
}
.contact-image .inner,
.contact-intro .inner {
  max-width: 1660px;
  margin: 0 auto;
}
.contact-image .inner img,
.contact-intro .inner img {
  width: 100%;
}
.contact-image h1,
.contact-intro h1 {
  font-size: 5rem;
  margin-top: 12rem;
}
@media screen and (max-width: 60rem) {
  .contact-image h1,
  .contact-intro h1 {
    font-size: 3rem;
    margin-top: 3rem;
  }
}

.contact-methods {
  overflow: hidden;
  margin: 3rem auto;
}
.contact-methods .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  max-width: 1660px;
  margin: 0 auto;
  gap: 3rem;
  padding: 0 3rem;
}
.contact-methods .contact-card {
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto;
}
.contact-methods .contact-card .card-inner {
  padding: 3rem;
  text-align: center;
}
.contact-methods .contact-card.card-sm {
  flex: 0 0 calc(25% - 3rem + 0.75rem);
}
@media screen and (max-width: 1200px) {
  .contact-methods .contact-card.card-sm {
    flex: 0 0 calc(50% - 3rem + 1.5rem);
  }
}
@media screen and (max-width: 60rem) {
  .contact-methods .contact-card.card-sm {
    flex: 0 0 100%;
  }
}
.contact-methods .contact-card.card-lg {
  flex: 0 0 calc(50% - 3rem + 0.75rem);
}
@media screen and (max-width: 1200px) {
  .contact-methods .contact-card.card-lg {
    flex: 0 0 100%;
    order: 3;
  }
}
@media screen and (max-width: 60rem) {
  .contact-methods .contact-card.card-lg {
    order: unset;
  }
}
.contact-methods .contact-card.card-lg .card-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.contact-methods .contact-card.card-lg .card-inner .left,
.contact-methods .contact-card.card-lg .card-inner .right {
  flex: 0 0 calc(50% - 1.5rem + 0.375rem);
}
@media screen and (max-width: 60rem) {
  .contact-methods .contact-card.card-lg .card-inner .left,
  .contact-methods .contact-card.card-lg .card-inner .right {
    flex: 0 0 100%;
  }
}
.contact-methods .contact-card.card-lg .card-inner .right h1, .contact-methods .contact-card.card-lg .card-inner .right h2, .contact-methods .contact-card.card-lg .card-inner .right h3, .contact-methods .contact-card.card-lg .card-inner .right h4, .contact-methods .contact-card.card-lg .card-inner .right h5, .contact-methods .contact-card.card-lg .card-inner .right h6 {
  margin: 0 auto 3rem;
}
.contact-methods .contact-card table {
  text-align: left;
  width: 100%;
}
.contact-methods .contact-card table td {
  vertical-align: top;
  font-size: 1.2rem;
  width: 50%;
}
.contact-methods .contact-card table td:last-of-type {
  text-align: right;
}
.contact-methods .contact-card h1, .contact-methods .contact-card h2, .contact-methods .contact-card h3, .contact-methods .contact-card h4, .contact-methods .contact-card h5, .contact-methods .contact-card h6 {
  color: #FFFFFF;
  margin: 6rem auto 3rem;
}
.contact-methods .contact-card a {
  color: #FFFFFF;
  text-decoration: none;
}
.contact-methods .contact-card a:hover {
  color: #FFFFFF;
  text-decoration: underline;
}
.contact-methods .contact-card a.button {
  border: 2px solid #0040D1;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
}
.contact-methods .contact-card a.button span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
.contact-methods .contact-card a.button .arrows {
  display: none;
  margin-left: 0.5em;
  letter-spacing: -6px;
}
.contact-methods .contact-card a.button:hover {
  border: 2px solid #FFFFFF;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}
.contact-methods .contact-card img {
  margin: 0 auto;
  height: 80px;
  width: auto;
}

/* FAQs */
.faqs {
  overflow: hidden;
  margin: 6rem auto;
}
@media screen and (max-width: 60rem) {
  .faqs {
    margin: 3rem auto;
  }
}
.faqs .inner {
  max-width: 1660px;
  margin: 0 auto;
  padding: 0 3rem;
}
.faqs .intro {
  margin: 0 auto;
  padding: 0;
}
.faqs h1, .faqs h2, .faqs h3, .faqs h4, .faqs h5, .faqs h6 {
  margin: 0 auto;
}
.faqs .accordion-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.faqs .ac {
  border: 1px solid #0040D1;
  flex: 0 0 calc(50% - 1.5rem + 0.75rem);
  margin: 0;
}
@media screen and (max-width: 60rem) {
  .faqs .ac {
    flex: 0 0 100%;
  }
}
.faqs .ac-header button {
  background-color: #0040D1;
  color: #FFFFFF;
  padding: 1.5rem 4.5rem 1.5rem 1.5rem;
}
.faqs .ac-header button:active, .faqs .ac-header button:focus, .faqs .ac-header button:hover {
  background-color: #000000;
  color: #FFFFFF;
}
.faqs .ac-text {
  padding: 1.5rem !important;
}
.faqs .ac-text p:first-of-type {
  margin-top: 0;
}
.faqs .ac-text p:last-of-type {
  margin-bottom: 0;
}
.faqs .ac-text a {
  color: #0040D1;
  text-decoration: none;
}
.faqs .ac-text a:hover {
  color: #0040D1;
  text-decoration: underline;
}

/* About us */
.brand-animation {
  position: relative;
  background-color: #0040D1;
}
.brand-animation .inner {
  position: relative;
  aspect-ratio: 3/1;
}
@media screen and (max-width: 60rem) {
  .brand-animation .inner {
    aspect-ratio: 2/1;
  }
}
@media screen and (max-width: 45rem) {
  .brand-animation .inner {
    aspect-ratio: 1/1;
  }
}
.brand-animation .video-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.brand-animation video {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
  mix-blend-mode: screen;
}

.about-content {
  overflow: hidden;
  margin: 3rem auto;
}
.about-content.what .inner {
  justify-content: flex-end;
}
@media screen and (max-width: 1300px) {
  .about-content.what .inner {
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 60rem) {
  .about-content.what .inner {
    flex-direction: column-reverse;
  }
}
.about-content .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
  gap: 1.5rem;
  padding: 0 3rem;
  box-sizing: border-box;
}
@media screen and (max-width: 60rem) {
  .about-content .inner {
    flex-direction: column-reverse;
  }
}
.about-content h2 {
  margin: 0 auto 1rem;
  font-size: 5rem;
}
@media screen and (max-width: 60rem) {
  .about-content h2 {
    font-size: 3rem;
  }
}
.about-content .left {
  flex: 0 0 400px;
}
@media screen and (max-width: 1300px) {
  .about-content .left {
    flex: 0 0 calc(50% - 1.5rem);
  }
}
@media screen and (max-width: 60rem) {
  .about-content .left {
    flex: 0 0 100%;
  }
}
.about-content .right {
  align-self: stretch;
  flex: 0 0 800px;
}
@media screen and (max-width: 1300px) {
  .about-content .right {
    flex: 0 0 calc(50% - 1.5rem);
  }
}
@media screen and (max-width: 60rem) {
  .about-content .right {
    flex: 0 0 100%;
  }
}
.about-content img {
  width: 100%;
}

.about-intro {
  margin: 3rem 0;
}
.about-intro .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  flex-wrap: nowrap;
  width: 100%;
  margin: 0 auto;
  gap: 1.5rem;
  padding: 0 3rem;
  box-sizing: border-box;
}
@media screen and (max-width: 60rem) {
  .about-intro .inner {
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }
}
.about-intro .left {
  flex: 0 0 400px;
  background-color: #F3F3F3;
  box-sizing: border-box;
  width: 100%;
  margin-top: 8.5rem;
}
@media screen and (max-width: 60rem) {
  .about-intro .left {
    flex: 0 0 100%;
    margin-top: 1.5rem;
  }
}
.about-intro .left h1, .about-intro .left h2, .about-intro .left h3, .about-intro .left h4, .about-intro .left h5, .about-intro .left h6 {
  margin: 0 auto;
}
.about-intro .left-inner {
  padding: 3rem;
}
.about-intro .left ul {
  padding: 0;
  list-style-type: none;
}
.about-intro .right {
  flex: auto;
}
@media screen and (max-width: 60rem) {
  .about-intro .right {
    flex: 0 0 100%;
  }
}
.about-intro .right h1 {
  font-size: 5rem;
}
@media screen and (max-width: 60rem) {
  .about-intro .right h1 {
    font-size: 3rem;
  }
}
.about-intro .right .intro-content {
  -moz-column-count: 2;
       column-count: 2;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}
@media screen and (max-width: 45rem) {
  .about-intro .right .intro-content {
    -moz-column-count: 1;
         column-count: 1;
  }
}
.about-intro .right .intro-content p:first-of-type {
  margin-top: 0;
}
.about-intro .right .intro-content p:last-of-type {
  margin-bottom: 0;
}
.about-intro img {
  width: 100%;
}
.about-intro a {
  color: #0040D1;
  text-decoration: none;
}
.about-intro a:hover {
  color: #0040D1;
  text-decoration: underline;
}

/* Related and Upsells */
.related,
.upsells {
  float: left;
}
.related .wc-image-wrap,
.upsells .wc-image-wrap {
  border: none;
}

.related {
  position: relative;
  overflow: hidden;
  background-color: #F3F3F3;
  display: flow-root;
  width: 100%;
  padding: 6rem 0 12rem 10vw;
  box-sizing: border-box;
}
@media screen and (max-width: 90rem) {
  .related {
    padding: 6rem 0 12rem 5vw;
  }
}
@media screen and (max-width: 90rem) {
  .related {
    padding: 3rem 0 9rem 3rem;
  }
}
.related .glide {
  margin: 3rem 0 0 auto;
}
.related .glide__slides {
  align-items: stretch;
}
.related .glide__slide {
  height: auto;
}
.related .glide__arrow {
  top: 4rem;
  width: 5rem;
  height: 5rem;
  border: 1px solid #0040D1;
  border-radius: 0;
  padding: 1.5rem;
  box-shadow: none;
}
.related .glide__arrow--left {
  left: 0;
}
.related .glide__arrow--right {
  left: calc(5rem - 1px);
  right: unset;
}
.related .glide__arrow svg {
  fill: currentColor;
  width: 100%;
  height: auto;
}
.related .related-desc p {
  display: inline-block;
  padding: 1rem;
  background-color: #0040D1;
  color: #FFFFFF;
  line-height: 1.2;
  margin: 0 auto;
}
.related h2.related-heading {
  display: inline-block;
  padding: 1rem;
  font-size: 5rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto 1rem;
  line-height: 1.2;
}
@media screen and (max-width: 90rem) {
  .related h2.related-heading {
    font-size: 3.5rem;
  }
}
.related li.product {
  background-color: #FFFFFF;
  overflow: hidden;
}
.related li.product a {
  color: #0040D1;
  text-decoration: none;
}
.related li.product a:hover {
  color: #000000;
}
.related li.product p.prefix {
  display: inline-block;
  padding: 1rem;
  background-color: #0040D1;
  color: #FFFFFF;
  margin: 0 auto;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.4rem;
}
.related li.product img.attachment-woocommerce_thumbnail {
  width: 100%;
  background-color: #FFFFFF;
}
.related li.product .woocommerce-loop-product__title {
  text-align: center;
  padding: 0 1rem;
  font-size: 2rem;
  margin: 2rem auto 1rem;
}
.related li.product .price {
  font-size: 2rem !important;
  color: #000000 !important;
  text-align: center !important;
  width: 100%;
  margin: 0 auto 2rem;
  display: block;
}
.related li.product .button {
  display: block;
  border-radius: 0;
  text-align: center;
  background-color: #0040D1;
  color: #FFFFFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}
.related li.product .button:hover {
  background-color: #000000;
  color: #FFFFFF;
}
.related li.product .button .icon {
  margin-left: 0.5rem;
}
.related li.product .button .icon img {
  height: 1em;
  margin: 0 auto;
}
.related li.product .onsale {
  background-color: #0040D1;
  line-height: 1;
  border-radius: 0;
  padding: 0.5rem;
  min-height: 0;
  height: auto;
  margin: -1rem -1rem 0 0;
}

.entry-summary .product_meta {
  color: #8E8E8E;
  line-height: 1;
}
.entry-summary .stock-wrapper {
  margin-left: 0.5rem;
  padding-left: 0.8rem;
  border-left: 2px solid #8E8E8E;
  color: #08D566;
  text-transform: capitalize;
}

.single-product .product {
  display: flow-root;
}
.single-product .quantity {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-start;
}
.single-product .quantity .plus,
.single-product .quantity .minus {
  border-radius: 0;
  border: 1px solid #0040D1;
  color: #0040D1;
  background-color: #FFFFFF;
  padding: 0.5em 0.75em;
}
.single-product .quantity input.qty {
  border-radius: 0;
  border: 1px solid #0040D1;
  color: #0040D1;
  background-color: #FFFFFF;
  padding: 0.5em 0.75em;
  padding-right: 0;
  width: 3rem;
  border-left: none;
  border-right: none;
}
@media screen and (max-width: 45rem) {
  .single-product .page-content {
    padding-top: 1.5rem;
  }
}
.single-product .woocommerce-product-gallery .flex-viewport {
  border: 1px solid #F3F3F3;
  margin-bottom: 0.8rem;
}
.single-product .woocommerce-product-gallery ol.flex-control-thumbs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.single-product .woocommerce-product-gallery ol.flex-control-thumbs li {
  flex-shrink: 0;
  box-sizing: border-box;
  width: calc(33.3333333333% - 0.8rem + 0.2666666667rem) !important;
  float: unset !important;
  border: 1px solid #F3F3F3;
  margin: 0 !important;
}
@media screen and (max-width: 60rem) {
  .single-product .woocommerce-product-gallery ol.flex-control-thumbs li {
    width: calc(50% - 0.8rem + 0.4rem) !important;
  }
}
.single-product #sidebar {
  display: none;
}

.pswp__button--arrow--left,
.pswp__button--arrow--right {
  margin-top: 50px !important;
}

.woocommerce-breadcrumb {
  margin-bottom: 3rem !important;
}
.woocommerce-breadcrumb a {
  color: #0040D1 !important;
  font-weight: 600;
  text-decoration: none;
}

.woocommerce-pagination {
  margin-top: 6rem;
}
@media screen and (max-width: 60rem) {
  .woocommerce-pagination {
    margin-top: 1.5rem;
  }
}

.page-numbers {
  border-color: #0040D1 !important;
}
.page-numbers li {
  border-color: #0040D1 !important;
}
.page-numbers li span.current {
  background-color: #0040D1 !important;
  color: #FFFFFF !important;
}
.page-numbers li a {
  background-color: #FFFFFF !important;
  color: #0040D1 !important;
}
.page-numbers li a:hover {
  background-color: #0040D1 !important;
  color: #FFFFFF !important;
}

@media screen and (max-width: 60rem) {
  .woocommerce-ordering {
    float: left !important;
    width: 100% !important;
  }
}
.woocommerce-ordering select {
  border: 2px solid #0040D1;
  border-radius: 5rem;
  padding: 0.8rem 3rem 0.8rem 1.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cdefs%3E%3Cstyle%3E.arrow-down-class %7Bfill: %230040d1;stroke-width: 0px;%7D%3C/style%3E%3C/defs%3E%3Cpath id='Polygon_1' data-name='Polygon 1' class='arrow-down-class' d='m25,47.37L0,2.63h50l-25,44.74Z'/%3E%3C/svg%3E");
  background-position: center right 1rem;
  background-repeat: no-repeat;
  background-size: 1.5rem;
  padding-right: 3.5rem;
}

.wc-image-wrap {
  aspect-ratio: 1/1;
  overflow: hidden;
  margin-bottom: 1.5rem;
  border: 1px solid #F3F3F3;
  background-color: #FFFFFF;
  padding: 1rem;
}
.wc-image-wrap img {
  margin-bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: contain !important;
     object-fit: contain !important;
  -o-object-position: center !important;
     object-position: center !important;
}

.cmplz-document {
  max-width: 100% !important;
}
.cmplz-document a {
  color: #0040D1;
}
.cmplz-document a:visited {
  color: #0040D1;
}
.cmplz-document a:hover {
  color: #000000;
}

.glide__bullet {
  border: 2px solid #0040D1;
  background-color: transparent;
  border-radius: 0;
}
.glide__bullet:hover, .glide__bullet:focus {
  border: 2px solid #0040D1;
  background-color: #0040D1;
}
.glide__bullet--active {
  background-color: #0040D1;
}

.error404 .page-content {
  text-align: center;
}
.error404 p {
  font-size: 1.6rem;
}
.error404 a.button {
  border: 2px solid #0040D1;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
}
.error404 a.button span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
.error404 a.button .arrows {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
.error404 a.button:hover {
  border: 2px solid #FFFFFF;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}

.blog-thin .inner {
  padding: 3rem;
}
.blog-thin h1 {
  margin-bottom: 0;
}
.blog-thin p.author {
  margin-top: 0.5em;
  opacity: 0.75;
}
.blog-thin img, .blog-thin video, .blog-thin audio {
  margin: 2rem auto;
}

.rank-math-breadcrumb {
  border: 1px solid #F3F3F3;
  border-radius: 0.25em;
  font-size: 0.8em;
}
.rank-math-breadcrumb p {
  margin: 0.25em 0.5em;
}
.rank-math-breadcrumb a {
  color: #0040D1;
  text-decoration: none;
}
.rank-math-breadcrumb a:hover {
  color: #000000;
}
.rank-math-breadcrumb .separator {
  opacity: 0.5;
}

.page-single-blog {
  margin: 3rem auto 6rem;
  padding: 0 3rem;
  text-align: center;
}
.page-single-blog .inner {
  max-width: 1280px;
  margin: 0 auto;
}
.page-single-blog h1 {
  font-size: 5rem;
}
@media screen and (max-width: 60rem) {
  .page-single-blog h1 {
    font-size: 3rem;
  }
}

#blog-feed {
  padding: 0 3rem;
  margin: 3rem auto;
  overflow: hidden;
}
#blog-feed .inner {
  max-width: 1280px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 3rem;
}
#blog-feed .single-post {
  width: calc(33.3333333333% - 3rem + 1rem);
}
@media screen and (max-width: 80rem) {
  #blog-feed .single-post {
    width: calc(50% - 3rem + 1.5rem);
  }
}
@media screen and (max-width: 60rem) {
  #blog-feed .single-post {
    width: 100%;
  }
}
#blog-feed .single-post a.thumb-link {
  aspect-ratio: 16/9;
  display: block;
  overflow: hidden;
  margin-bottom: 1rem;
  background-color: #F3F3F3;
  background-position: center;
  background-size: auto 50%;
  background-repeat: no-repeat;
}
#blog-feed .single-post a.thumb-link img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
#blog-feed .single-post a {
  color: #0040D1;
  text-decoration: none;
}
#blog-feed .single-post a:hover {
  color: #000000;
  text-decoration: none;
}
#blog-feed .single-post a.button {
  margin-top: 3rem;
  border: 2px solid #0040D1;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
}
#blog-feed .single-post a.button span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
#blog-feed .single-post a.button .arrows {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
#blog-feed .single-post a.button:hover {
  border: 2px solid #0040D1;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}
#blog-feed .single-post h2 {
  font-size: 3rem;
  margin: 0 auto 1rem;
}
@media screen and (max-width: 60rem) {
  #blog-feed .single-post h2 {
    font-size: 2rem;
  }
}
#blog-feed .single-post p {
  margin: 0 auto;
}
#blog-feed .single-post p.date {
  opacity: 0.75;
}

.blog-navigation {
  margin: 3rem auto 0;
  text-align: center;
  flex: 0 0 100%;
}
.blog-navigation ul {
  list-style-type: none;
  padding-left: 0;
}
.blog-navigation li {
  display: inline-block;
  margin: 0 0.25rem 1rem;
  overflow: hidden;
}
.blog-navigation li.active a {
  pointer-events: none;
  background-color: #0040D1;
  color: #FFFFFF;
}
.blog-navigation a {
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  line-height: 1;
  display: inline-block;
  font-size: 1em;
  font-weight: 400;
  padding: 0.5em 0.75em;
}
.blog-navigation a:hover, .blog-navigation a:focus, .blog-navigation a::before {
  background-color: #F3F3F3;
  color: #0040D1;
}

.box-wc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: stretch;
}
@media screen and (max-width: 60rem) {
  .box-wc {
    flex-direction: column;
  }
}
.box-wc #sidebar {
  width: 100%;
  flex: 0 0 300px;
  box-sizing: border-box;
  order: 0;
  background-color: #F3F3F3;
}
@media screen and (max-width: 60rem) {
  .box-wc #sidebar {
    display: none;
  }
}
.box-wc #sidebar .widget-title {
  margin: 0 auto 1.5rem;
}
.box-wc .page-content {
  flex: auto;
  box-sizing: border-box;
  order: 1;
}

#sidebar {
  padding: 6rem 3rem;
}
@media screen and (max-width: 60rem) {
  #sidebar {
    padding: 3rem 1.5rem;
  }
}
#sidebar h1, #sidebar h2, #sidebar h3, #sidebar h4, #sidebar h5, #sidebar h6 {
  margin: 0;
}
#sidebar ul {
  list-style-type: none;
  padding-left: 0;
  margin: 0;
}
#sidebar .wc-block-product-filters__overlay h3 {
  margin-top: 1.5rem !important;
}
@media screen and (max-width: 80rem) {
  #sidebar li:has(#search-submit) {
    margin-bottom: 1.5rem;
  }
}
#sidebar li:has(#search-submit) form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: nowrap;
  width: 100%;
  margin: 0;
  max-width: 300px;
}
#sidebar li:has(#search-submit) input[type=text] {
  border: 2px solid #0040D1;
  border-radius: 5rem 0 0 5rem;
  padding: 1rem 2rem;
  border-right: none;
  box-sizing: border-box;
  background-color: #FFFFFF;
  flex: auto;
  min-width: 0;
  color: #0040D1;
  font-size: 1.4rem;
  height: 40px;
}
#sidebar li:has(#search-submit) input[type=submit] {
  border: 2px solid #0040D1;
  border-radius: 0 5rem 5rem 0;
  box-sizing: border-box;
  padding: 0;
  width: 4rem;
  height: 4rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 2rem;
  border-left: none;
  background-color: #FFFFFF;
  flex: 0 0 4rem;
}
#sidebar .wc-block-product-filter-removable-chips__item {
  border: 1px solid #0040D1;
  border-radius: 20rem;
  color: #0040D1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
#sidebar .wc-block-product-filter-removable-chips__item span {
  line-height: 1;
}
#sidebar .wc-block-product-filter-removable-chips__item button {
  color: #FF5F5F;
}
#sidebar .wc-block-product-filter-clear-button button {
  border: 2px solid #FF5F5F;
  background-color: #FF5F5F;
  color: #FFFFFF;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
  font-weight: 700;
}
#sidebar .wc-block-product-filter-clear-button button span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
#sidebar .wc-block-product-filter-clear-button button .arrows {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
#sidebar .wc-block-product-filter-clear-button button:hover {
  border: 2px solid #0040D1;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}
#sidebar .wc-block-product-filter-price-slider__left input,
#sidebar .wc-block-product-filter-price-slider__right input {
  border: 1px solid #0040D1;
  border-radius: 20rem;
}
#sidebar .wc-block-product-filter-price-slider__range {
  color: #0040D1;
}

.radix-themes.light {
  background-color: transparent;
}

.rt-PopperContent,
.rt-PopoverContent {
  background-color: #ffffff !important;
}

.rt-BaseCheckboxRoot:where(.rt-variant-surface):where([data-state=unchecked]):before,
.rt-BaseRadioRoot:where(.rt-variant-surface):where(:not(:checked),
[data-state=unchecked]):before,
.rt-SelectTrigger:where(.rt-variant-surface),
.wcf-filter-horizontal-container .wcf-filter-horizontal-trigger {
  box-shadow: inset 0 0 0 2px var(--wpf-primary-color) !important;
}

.rt-SelectTrigger, .wcf-option-label,
.rt-BaseButton:where(.rt-variant-outline) {
  color: #0040D1 !important;
}

.wcf-filter-title svg {
  color: #0040D1 !important;
}

.rt-BaseButton:where(.rt-variant-soft, .rt-variant-ghost) {
  border: 2px solid #0040D1 !important;
  background-color: #FFFFFF !important;
  color: #0040D1 !important;
}

.rt-BaseButton:where(.rt-variant-soft, .rt-variant-ghost):hover {
  border: 2px solid #0040D1 !important;
  background-color: #0040D1 !important;
  color: #FFFFFF !important;
  text-decoration: none !important;
}

.rt-BaseButton:where(.rt-variant-solid) {
  border: 2px solid #0040D1 !important;
  background-color: #0040D1 !important;
  color: #ffffff !important;
}

.rt-BaseButton:where(.rt-variant-solid):hover {
  border: 2px solid #0040D1 !important;
  background-color: #0040D1 !important;
  color: #ffffff !important;
}

#wcf-mobile-drawer h3 {
  margin-left: 0 !important;
}

.wcf-drawer-header {
  background-color: #0040D1 !important;
  color: #ffffff !important;
}

.wcf-drawer-header * {
  color: #ffffff !important;
}

.wcf-filter-remove-btn svg {
  color: #FF5F5F !important;
}

.woocommerce span.onsale {
  background-color: #0040D1;
  line-height: 1;
  border-radius: 0;
  padding: 0.5rem;
  min-height: 0;
  height: auto;
  margin: 0;
  top: 0;
  left: 0;
}

/* Bottom cards */
.bottom-cards {
  position: relative;
  overflow: hidden;
  background-color: #B2C4F1;
  margin: 0 auto;
  padding: 0;
  display: block;
  width: 100%;
}
.bottom-cards .inner {
  max-width: 1280px;
  margin: 6rem auto;
  padding: 0 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 3rem;
}
@media screen and (max-width: 80rem) {
  .bottom-cards .inner {
    flex-wrap: wrap;
    margin: 3rem auto;
    padding: 0 3rem;
  }
}
.bottom-cards .card {
  box-sizing: border-box;
  border: 1.8rem solid #0040D1;
  flex: 0 0 calc(33.3333333333% - 3rem + 1.5rem);
  text-align: center;
  color: #FFFFFF;
  background-color: #0040D1;
}
@media screen and (max-width: 80rem) {
  .bottom-cards .card {
    flex: 0 0 100%;
  }
}
.bottom-cards .card:hover {
  color: #0040D1;
  background-color: #FFFFFF;
}
.bottom-cards .card:hover img {
  filter: brightness(1) invert(0);
}
.bottom-cards .card .card-inner {
  padding: 3rem;
}
.bottom-cards .card img {
  max-width: 40px;
  margin: 0 auto 1rem;
  filter: brightness(0) invert(1);
}
.bottom-cards .card p {
  margin: 0 auto 1rem;
}
.bottom-cards .card .card-heading {
  font-size: 4rem;
  font-weight: 600;
  line-height: 1.2;
  margin: 2rem auto;
}
.bottom-cards .card .card-button {
  margin: 2rem auto 0;
}
.bottom-cards .card .button {
  border: 2px solid #0040D1;
  background-color: #FFFFFF;
  color: #0040D1;
  text-decoration: none;
  padding: 0.75em 1.5em;
  border-radius: 20rem;
  display: inline-block;
  line-height: 1.1;
}
.bottom-cards .card .button span {
  display: inline-block;
  vertical-align: middle;
  line-height: inherit;
}
.bottom-cards .card .button .arrows {
  margin-left: 0.5em;
  letter-spacing: -6px;
}
.bottom-cards .card .button:hover {
  border: 2px solid #0040D1;
  background-color: #0040D1;
  color: #FFFFFF;
  text-decoration: none;
}

#footer {
  overflow: hidden;
  background-color: #0040D1;
  color: #FFFFFF;
}
#footer .inner {
  max-width: 1280px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 3rem;
  padding: 6rem 3rem;
}
@media screen and (max-width: 80rem) {
  #footer .inner {
    padding: 3rem;
  }
}
#footer .left {
  flex: 0 0 calc(30% - 3rem + 1.5rem);
  align-self: flex-start;
}
@media screen and (max-width: 80rem) {
  #footer .left {
    flex: 0 0 calc(50% - 3rem + 1.5rem);
  }
}
@media screen and (max-width: 45rem) {
  #footer .left {
    flex: 0 0 100%;
  }
}
#footer .left video {
  width: 100%;
  mix-blend-mode: screen;
}
#footer .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex: 0 0 calc(70% - 3rem + 1.5rem);
  align-items: flex-start;
  gap: 3rem;
  flex-wrap: nowrap;
}
@media screen and (max-width: 80rem) {
  #footer .right {
    flex: 0 0 100%;
  }
}
@media screen and (max-width: 60rem) {
  #footer .right {
    flex-wrap: wrap;
    text-align: center;
  }
}
#footer .right .column {
  flex: 0 0 calc(33.3333333333% - 3rem + 1.5rem);
}
@media screen and (max-width: 60rem) {
  #footer .right .column {
    flex: 0 0 100%;
  }
}
#footer .right .column ul {
  padding: 0;
  list-style-type: none;
}
#footer .right .column ul li {
  margin: 0 auto 1.6rem;
}
#footer .right .column ul li:last-of-type {
  margin-bottom: 0;
}
#footer .right .column a {
  color: #FFFFFF;
  text-decoration: none;
  word-wrap: break-word;
  white-space: pre-wrap;
}
#footer .right .column a:hover {
  color: #FFFFFF;
  text-decoration: underline;
}
#footer .footer-heading {
  font-size: 2.8rem;
  font-weight: 600;
  margin: 6rem auto 2.5rem;
}
#footer .footer-heading:first-of-type {
  margin-top: 0;
}

.payment-types {
  overflow: hidden;
  background-color: #FFFFFF;
}
.payment-types .inner {
  margin: 0 auto;
  max-width: 1280px;
  text-align: center;
}
.payment-types img {
  display: inline-block;
  width: 50px;
  margin: 1rem;
}

.copyright {
  overflow: hidden;
  background-color: #0040D1;
  color: #FFFFFF;
}
.copyright .inner {
  margin: 0 auto;
  max-width: 1280px;
  text-align: center;
  padding: 0 1.6rem;
}
.copyright img {
  display: inline-block;
  width: 50px;
  margin: 1rem;
}
.copyright a {
  color: #FFFFFF;
  font-weight: 600;
  text-decoration: none;
}
.copyright a:hover {
  color: #FFFFFF;
  text-decoration: underline;
}

.social-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 3rem 0 0;
}
@media screen and (max-width: 60rem) {
  .social-links {
    display: none;
  }
}

.social-icon {
  height: 3rem;
  width: 3rem;
  margin: 0 1rem;
}
.social-icon:first-child {
  margin-left: 0;
}
.social-icon svg {
  height: 3rem;
  width: 3rem;
  fill: #FFFFFF;
}
.social-icon a {
  display: block;
  height: 3rem;
  width: 3rem;
}
.social-icon a svg {
  fill: #FFFFFF;
}
.social-icon a:hover svg,
.social-icon a:focus svg,
.social-icon a:active svg {
  fill: #FFFFFF;
  opacity: 0.8;
}
