:root{
  --white: #ffffff;
  --black: #0E0702;
  --pink: #FF004C;
  --light-pink: #FFE0E2;
  --snow: #FFF7F9;
  --snow-01: #FFECEE;
  --gray: #999495;
  --silver: #CDD0D1;
  --silver-01: #EBECED;
  --brown: #2B1407;

  --btn-primary : #FF004C;
  --btn-primary-border : #FF004C;
  --btn-primary-color : #ffffff;
  --btn-primary-hover : #CC003D;
  --btn-primary-hover-border : #CC003D;
  --btn-primary-hover-color : #ffffff;

  --btn-secondary : #ffffff;
  --btn-secondary-border : #0E0702;
  --btn-secondary-color : #0E0702;
  --btn-secondary-hover : #0E0702;
  --btn-secondary-hover-border : #0E0702;
  --btn-secondary-hover-color : #ffffff;

  --btn-white : #ffffff;
  --btn-white-border : #D7D9DA;
  --btn-white-color : #0E0702;
  --btn-white-hover : #D7D9DA;
  --btn-white-hover-border : #D7D9DA;
  --btn-white-hover-color : #0E0702;

  --filter-pink: invert(15%) sepia(83%) saturate(4796%) hue-rotate(334deg) brightness(98%) contrast(115%);
}
body{
  font-family: 'Poppins';
  font-weight: 300;
  font-style: normal;
  overflow-x: hidden;
  font-size: 1.6rem;
  line-height: 2.8rem;
  color: var(--black);
  background: var(--white);
}
a{
  color: var(--black);
}
p{
  margin-bottom: 2rem;
}
strong{
  font-weight: 600;
}
ul{
  margin-bottom: 2rem;
}
ul > li{
  padding-left: 1.6rem;
  margin-bottom: 1.2rem;
}
ul > li:after {
  position: absolute;
  content: "";
  height: 0.6rem;
  width: 0.6rem;
  left: 0;
  top: 0.9rem;
  border-radius: 50%;
  background: var(--pink);
}
ol{
  counter-reset: number;
  margin-bottom: 2.2rem;
}
ol > li{
  padding-left: 2.5rem;
  counter-increment: number;
  margin-bottom: 0;
}
ol > li:after{
  content: none;
}
ol > li::before {
  position: absolute;
  content: "";
  width: 1.8rem;
  text-align: right;
  left: 0;
  top: 0;
  content: counter(number)".";
}
@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1170px;
  }
}
@media (min-width: 1360px) {
  .container {
    max-width: 1300px;
  }
  .container-md{
    max-width: 1272px;
  }
}
@media (min-width: 1460px) {
  .container {
    max-width: 1430px;
  }
}
@media (min-width: 1500px) {
  .container {
    max-width: 1470px;
  }
}
.bg-black{
  background: var(--black);
}
.bg-snow{
  background: var(--snow);
}
.fw-poppins{
  font-family: 'Poppins';
}
.text-pink{
  color: var(--pink);
}
h1,h2,h3,h4,h5,h6,.fw-dm{
  font-family: 'DM Serif Display';
}
h1,h2,h3,h4,h5,h6,
.fw-24,.fw-20,.fw-18,.fw-16,.fw-14{
  font-weight: normal;
  margin: 0;
}
h1,.h1,.h1 *{
  font-size: 5.6rem;
  line-height: 6.4rem;
}
h2,.h2,.h2 *{
  font-size: 4rem;
  line-height: 4.8rem;
}
h3,.h3,.h3 *{
  font-size: 3.2rem;
  line-height: 4rem;
}
h4,.h4,.h4 *{
  font-size: 2.8rem;
  line-height: 3.6rem;
}
h5,.h5,.h5 *,
.fw-24,.fw-24 *{
  font-size: 2.4rem;
  line-height: 3.2rem;
}
h6,.h6,.h6 *,
.fw-20,.fw-20 *{
  font-size: 2rem;
  line-height: 2.8rem;
}
.fw-18,
.fw-18 *{
  font-size: 1.8rem;
  line-height: 2.8rem;
}
.fw-16,
.fw-16 *{
  font-size: 1.6rem;
  line-height: 2.4rem;
}
.fw-14,
.fw-14 *{
  font-size: 1.4rem;
  line-height: 2.4rem;
}
.fw-12{
  font-size: 1.2rem;
  line-height: 0.8rem;
  font-weight: 500;
  text-transform: uppercase;
}
.btn-group{
  display: flex;
  align-items: center;
  margin: 0 -1rem -1rem;
}
.btn-group.center{
  justify-content: center;
}
.btn-group.end{
  justify-content: end;
}
.btn-group .btn{
  margin: 0 1rem 1rem;
}
.button.pay.btn.btn-secondary,
.button.pay.btn.btn-primary,
#open-geowidget,
.btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 4.8rem;
  padding: 0 2.8rem;
  font-size: 1.6rem;
  font-weight: 500;
  border: 1px solid transparent;
  border-radius: 100rem;
}
.btn-lg{
  height: 6.4rem !important;
}
.btn img{
  margin-right: 0.8rem;
}

.owl-carousel .owl-item .product-card-img img,
.owl-carousel .owl-item .add_to_cart_button img {
  width: auto !important;
}
.button.pay.btn.btn-primary:has(~.button.pay.btn.btn-secondary) {
  margin-bottom: 1rem;
}
.button.pay.btn.btn-secondary,
.button.pay.btn.btn-primary,
#open-geowidget,
.btn span + img{
  margin-left: 0.8rem;
  margin-right: 0;
}
.button.pay.btn.btn-secondary,
.button.pay.btn.btn-primary,
#open-geowidget,
.btn-primary{
  background: var(--btn-primary);
  border-color: var(--btn-primary-border);
  color: var(--btn-primary-color);
}
.button.pay.btn.btn-secondary:hover,
.button.pay.btn.btn-primary:hover,
#open-geowidget:hover,
.btn-primary:hover{
  background: var(--btn-primary-hover);
  border-color: var(--btn-primary-hover-border);
  color: var(--btn-primary-hover-color);
}
.btn-secondary{
  background: var(--btn-secondary);
  border-color: var(--btn-secondary-border);
  color: var(--btn-secondary-color);
}
.btn-secondary:hover{
  background: var(--btn-secondary-hover);
  border-color: var(--btn-secondary-hover-border);
  color: var(--btn-secondary-hover-color);
}
.btn-secondary:hover img{
  -webkit-filter: brightness(0) invert(100%);
  filter: brightness(0) invert(100%);
}
.btn-black-outline{
  background: transparent;
  border: 1px solid var(--black);
  color: var(--black);
}
.btn-black-outline:hover{
  background: var(--pink);
  color: var(--white);
  border-color: var(--pink);
}
.btn-black-outline:hover img{
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
.btn-black-outline img{
  margin-right: 1.2rem;
}
.btn-white{
  background: var(--btn-white);
  border-color: var(--btn-white-border);
  color: var(--btn-white-color);
}
.btn-white:hover{
  background: var(--btn-white-hover);
  border-color: var(--btn-white-hover-border);
  color: var(--btn-white-hover-color);
}
.btn-icon{
  height: 6.4rem !important;
  width: 6.4rem !important;
  padding: 0 !important;
  border-radius: 50%;
}
.btn-icon.sm{
  width: 4.8rem !important;
  height: 4.8rem !important;
  color: var(--black);
}
.btn-icon img{
  margin: 0 !important;
}
.btn-icon-black{
  border-color: var(--black);
  background: var(--white);
}
.btn-icon-black:hover{
  border-color: var(--pink);
}
.btn-icon-white{
  border-color: var(--white);
  background: var(--white);
}
.btn-icon-white:hover{
  border-color: var(--pink);
  background: var(--pink);
}
.btn-icon-white:hover img{
  -webkit-filter: brightness(0) invert(100%);
  filter: brightness(0) invert(100%);
}
.btn-owl.disabled{
  pointer-events: none;
  opacity: 0.3;
}
.btn-link{
  font-size: 1.4rem;
  line-height: 2.4rem;
  display: inline-flex;
  align-items: center;
}
.btn-link-lg{
  font-size: 1.6rem;
  font-weight: 500;
}
.btn-link img{
  margin-right: 1.2rem;
}
.btn-link span + img{
  margin-right: 0;
  margin-left: 1.2rem;
}
.btn-link-black{
  color: var(--black);
}
.btn-link-black:hover{
  color: var(--pink);
}
.btn-link-black:hover img{
  -webkit-filter: var(--filter-pink);
  filter: var(--filter-pink);
}
.btn-link-pink{
  color: var(--pink);
}
.btn-link-pink:hover{
  text-decoration: underline !important;
}
.disabled{
  pointer-events: none !important;
  opacity: 0.3 !important;
}
.badge{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2.4rem;
  padding: 0 0.6rem;
  border-radius: 0.4rem;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 500;
}
.badge-secondary{
  background: var(--silver-01);
  color: var(--black);
}
.badge-secondary:hover{
  background: var(--snow-01);
}
.badge-black{
  background: var(--black);
  color: var(--white);
}
.badge-pink{
  background: var(--pink);
  color: var(--white);
}
.badge-yellow{
  background: #F2B000;
  color: var(--white);
}
.badge-red{
  background: #DB0033;
  color: var(--white);
}
.badge-orange{
  background: #F72F00;
  color: var(--white);
}
.badge-green{
  background: #009C00;
  color: var(--white);
}
.input-group{
  position: relative;
}
.form-control{
  outline: none;
  font-family: inherit;
  width: 100%;
  height: 4.8rem;
  border: 1px solid #E1E3E3;
  background: var(--white);
  padding: 0 2rem;
  border-radius: 100rem;
  font-size: 1.4rem;
  font-weight: normal;
  color: var(--black);
}
.form-control:focus{
  border-color: var(--pink);
}
textarea.form-control{
  height: 14.4rem;
  resize: none;
  border-radius: 0.8rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.search-input .form-control{
  padding-left: 4.8rem;
  background-image: url(../images/icon-search.png);
  background-repeat: no-repeat;
  background-position: left 2rem center;
}
.form-control::placeholder{
  opacity: 1;
  color: #767474;
}
.form-control:-ms-input-placeholder{
  color: #767474;
}
.form-control[aria-invalid="true"]{
  border-color: var(--pink);
}
.chk{
  display: block;
  position: relative;
  padding-left: 3rem;
  margin-bottom: 0;
  cursor: pointer;
  font-size: 1.4rem;
  line-height: 2.4rem;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.chk-sm{
  font-size: 1.2rem;
  line-height: 1.8rem;
}
.chk a{
  color: var(--pink);
  text-decoration: underline !important;
}
.chk-white a{
  color: var(--white);
  text-decoration: none !important;
}
.chk-white a:hover{
  text-decoration: underline !important;
}
.chk input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.chk .checkmark {
  position: absolute;
  top: 0.2rem;
  left: 0;
  height: 2rem;
  width: 2rem;
  border: 1px solid #E1E3E3;
  background: var(--white);
  border-radius: 0.2rem;
}
.rdo .checkmark{
  border-radius: 50%;
}
.chk-white .checkmark{
  background: transparent;
}
.chk-sm .checkmark{
  top: 0;
}
.chk input:checked ~ .wpcf7-list-item-label > .checkmark,
.chk input:checked ~ .checkmark {
  border-color: var(--pink);
  background: var(--pink);
}
.rdo input:checked ~ .checkmark{
  background: transparent;
  border-width: 2px;
}
.chk .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}
.chk input:checked ~ .wpcf7-list-item-label > .checkmark:after,
.chk input:checked ~ .checkmark:after {
  display: block;
}
.chk .checkmark:after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/icon-checkbox-tick.png);
  background-repeat: no-repeat;
  background-position: center;
}
.rdo .checkmark:after{
  right: 0;
  bottom: 0;
  margin: auto;
  width: 1rem;
  height: 1rem;
  background: var(--pink);
  border-radius: 50%;
}
label.error{
  color: var(--pink);
  padding-left: 2.4rem;
  display: block;
  margin: 0.8rem 0 0;
  font-size: 1.4rem;
  line-height: 2.4rem;
  font-weight: normal;
  background-image: url(../images/icon-error.png);
  background-repeat: no-repeat;
  background-position: left center;
}
.border-bottom{
  border-bottom: 1px solid #E1E3E3;
}
.border-top{
  border-top: 1px solid #E1E3E3;
}
.border-bottom + .border-top{
  border-top: 0;
}
.no-border{
  border: 0 !important;
}
.rate img{
  width: 1.6rem !important;
  height: auto;
  margin-right: 0.8rem;
}
.rate span{
  font-size: 1.4rem;
  line-height: 2.4rem;
  font-weight: 400;
  margin-right: 0.4rem;
}
.rate span:last-child{
  margin-right: 0;
}
.rate span b,
.rate span strong{
  font-weight: 600;
}
.price ins{
  text-decoration: none;
  font-size: 2.4rem;
  line-height: 120%;
  font-weight: 600;
  margin-right: 0.6rem;
}
.price ins:has(+ del){
  color: var(--pink);
}
.price del{
  font-size: 1.6rem;
  line-height: 2.8rem;
  text-decoration: none;
}
.stars {
  --percent: calc(var(--rating) / 5 * 100%);
  display: inline-block;
  font-size: 1.6rem;
  line-height: 1.6rem;
  height: 1.6rem;
}
.stars::before {
  content: "★★★★★";
  letter-spacing: 0px;
  line-height: 1.6rem;
  background: linear-gradient(90deg, #FFBB52 var(--percent), #ccc var(--percent));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  height: 1.6rem;
  display: block;
}
.fw-12-gray{
  font-size: 1.2rem;
  line-height: 1.8rem;
  font-weight: normal;
  color: var(--gray); 
}
.hide{
  display: none !important;
}
.quantity{
  margin-right: 2.4rem;
}
.quantity button{
  font-size: 1.6rem;
}
.input-quantity{
  outline: none;
  font-family: inherit;
  border: 0;
  width: 3.6rem;
  text-align: center;
  font-size: 1.6rem;
  line-height: 2.8rem;
  -moz-appearance: textfield;
  appearance: textfield;
}
.input-quantity::-webkit-outer-spin-button,
.input-quantity::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.mb-6{
  margin-bottom: 0.6rem;
}
.mb-8{
  margin-bottom: 0.8rem;
}
.mb-10{
  margin-bottom: 1rem;
}
.mb-12{
  margin-bottom: 1.2rem;
}
.mb-16{
  margin-bottom: 1.6rem;
}
.mt-16{
  margin-top: 1.6rem;
}
.mb-20{
  margin-bottom: 2rem;
}
.mt-20{
  margin-top: 2rem;
}
.pt-24{
  padding-top: 2.4rem;
}
.pb-24{
  padding-bottom: 2.4rem;
}
.mb-24{
  margin-bottom: 2.4rem;
}
.mt-24{
  margin-top: 2.4rem;
}
.mb-28{
  margin-bottom: 2.8rem;
}
.pt-32{
  padding-top: 3.2rem;
}
.pb-32{
  padding-bottom: 3.2rem;
}
.mb-32{
  margin-bottom: 3.2rem;
}
.mt-32{
  margin-top: 3.2rem;
}
.pb-40{
  padding-bottom: 4rem;
}
.mb-40{
  margin-bottom: 4rem;
}
.mt-40{
  margin-top: 4rem;
}
.mt-48{
  margin-top: 4.8rem;
}
.mb-48{
  margin-bottom: 4.8rem;
}
.mb-64{
  margin-bottom: 6.4rem;
}
.mt-64{
  margin-top: 6.4rem;
}
.pt-64{
  padding-top: 6.4rem;
}
.pb-64{
  padding-bottom: 6.4rem;
}
.mb-80{
  margin-bottom: 8rem;
}
.mt-80{
  margin-top: 8rem;
}
.pb-80{
  padding-bottom: 8rem;
}
.pt-96{
  padding-top: 9.6rem;
}
.pb-96{
  padding-bottom: 9.6rem;
}
.mb-96{
  margin-bottom: 9.6rem;
}
.mb-104{
  margin-bottom: 10.4rem;
}
.pt-104{
  padding-top: 10.4rem;
}
.pb-104{
  padding-bottom: 10.4rem;
}
.mb-120{
  margin-bottom: 12rem;
}
@media(min-width:1360px) and (max-width:1459.98px){
  body {
    font-size: 1.5rem;
    line-height: 2.4rem;
  }
  h1, .h1, .h1 * {
    font-size: 4.8rem;
    line-height: 5.6rem;
  }
  h2, .h2, .h2 * {
    font-size: 3.6rem;
    line-height: 4.4rem;
  }
  h3, .h3, .h3 * {
    font-size: 3rem;
    line-height: 3.8rem;
  }
  h4, .h4, .h4 * {
    font-size: 2.5rem;
    line-height: 3.3rem;
  }
  h5, .h5, .h5 *, 
  .fw-24, .fw-24 * {
    font-size: 2.2rem;
    line-height: 3rem;
  }
  h6, .h6, .h6 *, 
  .fw-20, .fw-20 * {
    font-size: 1.9rem;
    line-height: 2.7rem;
  }
  .fw-18, .fw-18 * {
    font-size: 1.7rem;
    line-height: 2.7rem;
  }
  .fw-14, .fw-14 * {
    font-size: 1.3rem;
    line-height: 2.3rem;
  }
  .btn-icon {
    height: 5.6rem !important;
    width: 5.6rem !important;
  }
  .mb-40 {
    margin-bottom: 3.2rem;
  }
  .mt-40 {
    margin-top: 3.2rem;
  }
  .pb-40 {
    padding-bottom: 3.2rem;
  }
  .mt-48 {
    margin-top: 4rem;
  }
  .mb-48 {
    margin-bottom: 4rem;
  }
  .mt-64 {
    margin-top: 4.8rem;
  }
  .mb-64 {
    margin-bottom: 4.8rem;
  }
  .pb-96 {
    padding-bottom: 8rem;
  }
  .pt-96 {
    padding-top: 8rem;
  }
  .mb-96 {
    margin-bottom: 8rem;
  }
  .mb-104 {
    margin-bottom: 9.6rem;
  }
  .pb-104 {
    padding-bottom: 9.6rem;
  }
  .pt-104 {
    padding-top: 9.6rem;
  }
}
@media(min-width:1200px) and (max-width:1359.98px){
  body {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
  h1, .h1, .h1 * {
    font-size: 4.8rem;
    line-height: 5.6rem;
  }
  h2, .h2, .h2 * {
    font-size: 3.4rem;
    line-height: 4.4rem;
  }
  h3, .h3, .h3 * {
    font-size: 2.8rem;
    line-height: 3.6rem;
  }
  h4, .h4, .h4 * {
    font-size: 2.4rem;
    line-height: 3.2rem;
  }
  h5, .h5, .h5 *, 
  .fw-24, .fw-24 * {
    font-size: 2.2rem;
    line-height: 3rem;
  }
  h6, .h6, .h6 *, 
  .fw-20, .fw-20 * {
    font-size: 1.9rem;
    line-height: 2.7rem;
  }
  .fw-18, .fw-18 * {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  .fw-16, .fw-16 * {
    font-size: 1.5rem;
    line-height: 2.3rem;
  }
  .fw-14, .fw-14 * {
    font-size: 1.3rem;
    line-height: 2.3rem;
  }
  .button.pay.btn.btn-secondary,
  .button.pay.btn.btn-primary,
  #open-geowidget,
  .btn {
    height: 4.4rem;
    padding: 0 2.2rem;
    font-size: 1.5rem;
  }
  .btn-icon {
    height: 5.6rem !important;
    width: 5.6rem !important;
  }
  .pb-24 {
    padding-bottom: 2rem;
  }
  .pt-24 {
    padding-top: 2rem;
  }
  .mb-40 {
    margin-bottom: 3.2rem;
  }
  .mt-40 {
    margin-top: 3.2rem;
  }
  .pb-40 {
    padding-bottom: 3.2rem;
  }
  .mt-48 {
    margin-top: 4rem;
  }
  .mb-48 {
    margin-bottom: 4rem;
  }
  .mt-64 {
    margin-top: 4.8rem;
  }
  .mb-64 {
    margin-bottom: 4.8rem;
  }
  .mb-80 {
    margin-bottom: 7.2rem;
  }
  .mt-80 {
    margin-top: 7.2rem;
  }
  .pb-96 {
    padding-bottom: 7.2rem;
  }
  .pt-96 {
    padding-top: 7.2rem;
  }
  .mb-96 {
    margin-bottom: 7.2rem;
  }
  .mb-104 {
    margin-bottom: 8.8rem;
  }
  .pb-104 {
    padding-bottom: 8.8rem;
  }
  .pt-104 {
    padding-top: 8.8rem;
  }
}
@media(min-width:992px) and (max-width:1199.98px){
  body {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
  p {
    margin-bottom: 1.6rem;
  }
  h1, .h1, .h1 * {
    font-size: 4.4rem;
    line-height: 5.2rem;
  }
  h2, .h2, .h2 * {
    font-size: 3.2rem;
    line-height: 4rem;
  }
  h3, .h3, .h3 * {
    font-size: 2.8rem;
    line-height: 3.6rem;
  }
  h4, .h4, .h4 * {
    font-size: 2.2rem;
    line-height: 3rem;
  }
  h5, .h5, .h5 *, 
  .fw-24, .fw-24 * {
    font-size: 2rem;
    line-height: 2.8rem;
  }
  h6, .h6, .h6 *, 
  .fw-20, .fw-20 * {
    font-size: 1.8rem;
    line-height: 2.6rem;
  }
  .fw-18, .fw-18 * {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  .fw-16, .fw-16 * {
    font-size: 1.5rem;
    line-height: 2.3rem;
  }
  .fw-14, .fw-14 * {
    font-size: 1.3rem;
    line-height: 2.2rem;
  }
  .button.pay.btn.btn-secondary,
  .button.pay.btn.btn-primary,
  #open-geowidget,
  .btn {
    height: 4.4rem;
    padding: 0 2.4rem;
    font-size: 1.5rem;
  }
  .btn-lg {
    height: 5.6rem !important;
  }
  .btn-icon {
    height: 5.6rem !important;
    width: 5.6rem !important;
  }
  .btn-link-lg {
    font-size: 1.4rem;
  }
  .mb-16 {
    margin-bottom: 1.2rem;
  }
  .mb-20 {
    margin-bottom: 1.6rem;
  }
  .mb-24 {
    margin-bottom: 2rem;
  }
  .pb-24 {
    padding-bottom: 2rem;
  }
  .pt-24 {
    padding-top: 2rem;
  } 
  .pb-32 {
    padding-bottom: 2.4rem;
  }
  .pt-32 {
    padding-top: 2.4rem;
  }
  .mt-32 {
    margin-top: 2.4rem;
  }
  .mb-32 {
    margin-bottom: 2.4rem;
  }
  .mb-40 {
    margin-bottom: 3.2rem;
  }
  .mt-40 {
    margin-top: 3.2rem;
  }
  .pb-40 {
    padding-bottom: 3.2rem;
  }
  .mt-48 {
    margin-top: 4rem;
  }
  .mb-48 {
    margin-bottom: 4rem;
  }
  .mb-64 {
    margin-bottom: 4.8rem;
  }
  .mt-64 {
    margin-top: 4.8rem;
  }
  .mb-80 {
    margin-bottom: 7.2rem;
  }
  .mt-80 {
    margin-top: 7.2rem;
  }
  .pb-96 {
    padding-bottom: 6.4rem;
  }
  .pt-96 {
    padding-top: 6.4rem;
  }
  .mb-96 {
    margin-bottom: 6.4rem;
  }
  .mb-104 {
    margin-bottom: 8rem;
  }
  .pb-104 {
    padding-bottom: 8rem;
  }
  .pt-104 {
    padding-top: 8rem;
  }
}
@media(min-width:768px) and (max-width:991.98px){
  body {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
  p {
    margin-bottom: 1.6rem;
  }
  h1, .h1, .h1 * {
    font-size: 4rem;
    line-height: 4.8rem;
  }
  h2, .h2, .h2 * {
    font-size: 3.2rem;
    line-height: 4rem;
  }
  h3, .h3, .h3 * {
    font-size: 2.8rem;
    line-height: 3.6rem;
  }
  h4, .h4, .h4 * {
    font-size: 2.4rem;
    line-height: 3.2rem;
  }
  h5, .h5, .h5 *, 
  .fw-24, .fw-24 * {
    font-size: 2rem;
    line-height: 2.8rem;
  }
  h6, .h6, .h6 *, 
  .fw-20, .fw-20 * {
    font-size: 1.8rem;
    line-height: 2.6rem;
  }
  .fw-18, .fw-18 * {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  .fw-16, .fw-16 * {
    font-size: 1.5rem;
    line-height: 2.2rem;
  }
  .fw-14, .fw-14 * {
    font-size: 1.3rem;
    line-height: 2.2rem;
  }
  .button.pay.btn.btn-secondary,
  .button.pay.btn.btn-primary,
  #open-geowidget,
  .btn {
    height: 4.4rem;
    padding: 0 2.4rem;
    font-size: 1.5rem;
  }
  .btn-lg {
    height: 5.6rem !important;
  }
  .btn-icon {
    height: 5.6rem !important;
    width: 5.6rem !important;
  }
  .btn-link-lg {
    font-size: 1.4rem;
  }
  .chk {
    font-size: 1.3rem;
    line-height: 2.3rem;
  }
  .chk-sm {
    font-size: 1.1rem;
    line-height: 1.7rem;
  }
  .mb-16 {
    margin-bottom: 1.2rem;
  }
  .mb-20 {
    margin-bottom: 1.6rem;
  }
  .mb-24 {
    margin-bottom: 2rem;
  }
  .pb-32 {
    padding-bottom: 2.4rem;
  }
  .pt-32 {
    padding-top: 2.4rem;
  }
  .mt-32 {
    margin-top: 2.4rem;
  }
  .mb-32 {
    margin-bottom: 2.4rem;
  }
  .mb-40 {
    margin-bottom: 2.8rem;
  }
  .mt-40 {
    margin-top: 2.8rem;
  }
  .pb-40 {
    padding-bottom: 2.8rem;
  }
  .mt-48 {
    margin-top: 3.2rem;
  }
  .mb-48 {
    margin-bottom: 3.2rem;
  }
  .mb-64 {
    margin-bottom: 4rem;
  }
  .mt-64 {
    margin-top: 4rem;
  }
  .mb-80 {
    margin-bottom: 7.2rem;
  }
  .mt-80 {
    margin-top: 7.2rem;
  }
  .pb-96 {
    padding-bottom: 6rem;
  }
  .pt-96 {
    padding-top: 6rem;
  }
  .mb-96 {
    margin-bottom: 6rem;
  }
  .mb-104 {
    margin-bottom: 8rem;
  }
  .pb-104 {
    padding-bottom: 6.4rem;
  }
  .pt-104 {
    padding-top: 6.4rem;
  }
}
@media(max-width:767.98px){
  body {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
  p {
    margin-bottom: 1.6rem;
  }
  h1, .h1, .h1 * {
    font-size: 3.2rem;
    line-height: 3.8rem;
  }
  h2, .h2, .h2 * {
    font-size: 2.8rem;
    line-height: 3.6rem;
  }
  h3, .h3, .h3 * {
    font-size: 2.4rem;
    line-height: 3.2rem;
  }
  h4, .h4, .h4 * {
    font-size: 2.2rem;
    line-height: 3rem;
  }
  h5, .h5, .h5 *, 
  .fw-24, .fw-24 * {
    font-size: 2rem;
    line-height: 2.8rem;
  }
  h6, .h6, .h6 *, 
  .fw-20, .fw-20 * {
    font-size: 1.8rem;
    line-height: 2.6rem;
  }
  .fw-18, .fw-18 * {
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
  .fw-16, .fw-16 * {
    font-size: 1.4rem;
    line-height: 2.2rem;
  }
  .fw-14, .fw-14 * {
    font-size: 1.3rem;
    line-height: 2.3rem;
  }
  .btn-group{
    display: block;
    margin: 0 0 -1rem;
  }
  .button.pay.btn.btn-secondary,
  .button.pay.btn.btn-primary,
  .btn-group .btn {
    margin: 0 0 1rem;
  }
  .button.pay.btn.btn-secondary,
  .button.pay.btn.btn-primary,
  #open-geowidget,
  .btn {
    height: 4.2rem;
    padding: 0 2.4rem;
    font-size: 1.4rem;
  }
  .btn-lg {
    height: 5.6rem !important;
  }
  .btn-icon {
    height: 4.8rem !important;
    width: 4.8rem !important;
  }
  .btn-icon.sm {
    width: 4rem !important;
    height: 4rem !important;
  }
  .btn-link-lg {
    font-size: 1.4rem;
  }
  .chk {
    font-size: 1.3rem;
    line-height: 2.3rem;
  }
  .chk-sm {
    font-size: 1.1rem;
    line-height: 1.6rem;
  }
  label.error {
    padding-left: 2rem;
    margin: 0.6rem 0 0;
    font-size: 1.3rem;
    line-height: 2.3rem;
    background-size: 1.4rem;
  }
  .sec-call-action .btn-group {
    display: flex;
  }
  .sec-call-action .btn-group .btn{
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
  .mb-16 {
    margin-bottom: 1.2rem;
  }
  .mb-20 {
    margin-bottom: 1.6rem;
  }
  .pb-24 {
    padding-bottom: 2rem;
  }
  .pt-24 {
    padding-top: 2rem;
  }
  .mb-24 {
    margin-bottom: 2rem;
  }
  .pt-32 {
    padding-top: 2.4rem;
  }
  .pb-32 {
    padding-bottom: 2.4rem;
  }
  .mt-32 {
    margin-top: 2.4rem;
  }
  .mb-32 {
    margin-bottom: 2.4rem;
  }
  .mb-40 {
    margin-bottom: 2.8rem;
  }
  .mt-40 {
    margin-top: 2.8rem;
  }
  .pb-40 {
    padding-bottom: 2.8rem;
  }
  .mt-48 {
    margin-top: 3.2rem;
  }
  .mb-48 {
    margin-bottom: 3.2rem;
  }
  .mb-64 {
    margin-bottom: 4rem;
  }
  .mt-64 {
    margin-top: 4rem;
  }
  .pt-64 {
    padding-top: 4rem;
  }
  .mb-80 {
    margin-bottom: 5.6rem;
  }
  .pb-80 {
    padding-bottom: 5.6rem;
  }
  .mt-80 {
    margin-top: 5.6rem;
  }
  .pb-96 {
    padding-bottom: 4.8rem;
  }
  .pt-96 {
    padding-top: 4.8rem;
  }
  .mb-96 {
    margin-bottom: 4.8rem;
  }
  .mb-104 {
    margin-bottom: 5.6rem;
  }
  .pb-104 {
    padding-bottom: 4.8rem;
  }
  .pt-104 {
    padding-top: 4.8rem;
  }
}
.quantity:has(> input[name="quantity"]) {
  margin: 0;
}
.product-main .woocommerce-notices-wrapper {
  width: 100%;
}
.product-main .woocommerce-message {
  /* width: fit-content; */
  margin-left: auto;
  margin-right: auto;
}
.woocommerce-NoticeGroup,
.card-sidebar-coupon-message,
.cupon-code-input-message,
.wc-empty-cart-message .woocommerce-info,
.woocommerce-notices-wrapper {
  width: fit-content;
  margin: 0 auto;
  text-align: center;
}
.woocommerce-NoticeGroup .woocommerce-error li::after,
.card-sidebar-coupon-message  .woocommerce-error li::after,
.cupon-code-input-message .woocommerce-error li::after,
.woocommerce-notices-wrapper .woocommerce-error li::after ,
.wc-bacs-bank-details li::after {
  content: none;
}
.woocommerce-error::before, .woocommerce-info::before, .woocommerce-message::before {
  top: 50%;
  transform: translateY(-50%);
}
.woocommerce-NoticeGroup .woocommerce-error,
.cupon-code-input-message .woocommerce-error,
.cupon-code-input-message .woocommerce-message,
.card-sidebar-coupon-message .woocommerce-message,
.card-sidebar-coupon-message .woocommerce-error,
.wc-empty-cart-message .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper ul {
  border: 0;
  border-width: 0;
  outline: none !important;
  background-color: transparent;
}
.wpcf7-list-item {
  margin: 0 !important;
}
.wpcf7-form-control-wrap {
  position: unset;
}

.wpcf7-not-valid-tip {
  display: none !important;
}
.pl-0 {
  padding-left: 0;
}

#ab-cookie-show {
  display: none !important;
}
.added_to_cart.wc-forward {
  text-align: center;
  width: 100%;
  display: none;
  margin-top: 1.2rem;
}

.woocommerce-NoticeGroup, 
.cupon-code-input-message,
.card-sidebar-coupon-message,
.wc-empty-cart-message 
.woocommerce-info, 
.woocommerce-notices-wrapper{
  width: 100%;
}
.woocommerce-notices-wrapper {
  max-width: 144rem;
}
.woocommerce-error {
  padding: 0;
  margin: 0;
}
.woocommerce-error:last-child {
  margin-bottom: 1.6rem !important;
}
.woocommerce-error::before,
.woocommerce-message::before{
  content: none;
}
.woocommerce-error li,
.woocommerce-message{
  outline: none !important;
  border: 1px solid var(--pink) !important;
  background: var(--white) !important;
  border-radius: 0.8rem;
  text-align: left;
  padding: 1.6rem 3.2rem 1.6rem 6.2rem !important;
  margin-bottom: 0.8rem !important;
  position: relative;
  background-image: url(../images/icon-error.png) !important;
  background-repeat: no-repeat !important;
  background-position: left 3.2rem center !important;
  color: #000;
  display: flex;
  align-items: center;
}
.woocommerce-message{
  background-image: url(../images/icon-success.png) !important;
}
.woocommerce-message .button {
  margin-left: auto !important;
  border: 1px solid var(--black) !important;
  background: transparent !important;
  color: var(--black) !important;
  font-size: 1.4rem !important;
  line-height: 2.4rem !important;
  font-weight: 500 !important;
  padding: 0.8rem 2.4rem !important;
  border-radius: 10rem !important;
}
.woocommerce-message .button:hover{
  background: var(--black) !important;
  color: var(--white) !important;
}
@media(max-width:767px){
  .woocommerce-error li,
  .woocommerce-message{
    padding: 1.2rem 1.6rem 1.2rem 3.2rem !important;
    line-height: 1.2;
    font-size: 1.2rem;
    background-position: left 1.2rem center !important;
    background-size: 16px !important;
    display: block;
  }
  .woocommerce-error li:has(.button), 
  .woocommerce-message:has(.button){
    background-position: left 1.2rem top 10px !important;
  }
  .woocommerce-message .button {
    float: none !important;
    display: flex !important;
    width: 14rem;
    justify-content: center;
    margin-top: 10px !important;
    margin-left: -19px !important;
    font-size: 13px !important;
    height: 3.6rem;
    padding: 0 1rem !important;
    align-items: center;
  }
}
.sec-login .woocommerce-error{
  border-top: none;
}
.sec-login .woocommerce-error li::after {
  content: none !important;
}
.sec-login .woocommerce-error {
  margin-bottom: 26px;
}

.btn-translate {
  color: var(--black);
}

.map-list-row li::after {
  content: none !important;
}

/* Select2 Styling */
.select2-container--default .select2-selection--single {
  outline: none;
  font-family: inherit;
  width: 100%;
  height: 4.8rem;
  border: 1px solid #E1E3E3;
  background: var(--white);
  border-radius: 100rem;
  font-size: 1.4rem;
  font-weight: normal;
  color: var(--black);
  display: flex;
  align-items: center;
  padding: 0 2rem;
}

.select2-container--default .select2-selection--single:focus {
  border-color: var(--pink);
  outline: none;
}

.select2-container--default.select2-container--focus .select2-selection--single {
  border-color: var(--pink);
  outline: none;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--black);
  padding: 0;
  line-height: 4.8rem;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #767474;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 4.8rem;
  right: 2rem;
  width: auto;
  display: flex;
  align-items: center;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: var(--black) transparent transparent transparent;
  border-style: solid;
  border-width: 0.6rem 0.4rem 0 0.4rem;
  height: 0;
  left: 50%;
  margin-left: -0.4rem;
  margin-top: -0.3rem;
  position: absolute;
  top: 50%;
  width: 0;
}

.select2-container--default .select2-dropdown {
  border: 1px solid #E1E3E3;
  border-radius: 0.8rem;
  margin-top: 0.4rem;
}

.select2-container--default .select2-results__option {
  padding: 0.8rem 2rem;
  color: var(--black);
  font-size: 1.4rem;
}


.woosb-wrap .woosb-text, .woosb-bundles .woosb-text {
  white-space: normal;
}

#password_strength,
.woocommerce-password-hint,
.woocommerce-password-strength {
  display: none !important;
}

.woocommerce-order.card.expand .card-collapse-info {
  display: flex;
}

#terms_description {
  display: none !important;
}
#custom_consent_0_description, #custom_consent_1_description, #custom_consent_2_description,
#digital_checkbox_field_field #digital_checkbox_field_description {
  display: none !important;
}
.sec-card .woocommerce-error{
  border: 0 !important;
}
.sec-card .woocommerce-error li::after{
  content: none !important;
}
