.xo-container--box:has(.footer-v12__content-top) {
  border-top: 0.1rem solid color-mix(in srgb, rgba(var(--color-foreground)) calc(0.15 * 100%), transparent);
}

.footer-v12__content-top {
  border-top: 0.1rem solid rgb(var(--color-foreground), 0.15);
  border-bottom: 0.1rem solid rgb(var(--color-foreground), 0.15);
}
@media (max-width: 991px) {
  .footer-v12__content-top {
    border-top: unset;
  }
}

@media (max-width: 1199px) {
  .footer-v12__content-top .footer-v12__grid:first-child .footer-v12__block-text {
    text-align: center;
    width: 100%;
  }
  .footer-v12__content-top .footer-v12__grid:first-child .footer-v12__social {
    justify-content: center;
  }
  .footer-v12__content-top .footer-v12__grid:first-child .footer-v12__block-logo-phone {
    display: inline-flex;
    text-align: center;
    width: 100%;
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .footer-v12__content-top .footer-v12__grid .footer-v12__block {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin: 2rem 0;
  }
  .footer-v12__content-top .footer-v12__grid .footer-v12__block .footer-v12__block-heading::before {
    left: 50%;
    transform: translateX(-50%);
  }
}

.footer-v12__block-heading {
  font-size: calc(var(--font-body-scale) * 1.8rem);
  color: color-mix(in srgb, rgba(var(--color-foreground)) calc(1 * 100%), transparent);
  font-weight: 500;
  padding-bottom: 1rem;
  margin-bottom: 1.5rem;
  text-transform: capitalize;
  position: relative;
}
.footer-v12__block-heading::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 0.1rem;
  width: 3.5rem;
  background-color: rgba(var(--color-foreground), 0.15);
}
@media (min-width: 992px) {
  .footer-v12__block-heading {
    padding-bottom: 2rem;
    margin-bottom: 3rem;
  }
}

.footer-v12__block-list {
  list-style: none;
  margin: 0;
  padding-inline-start: 0;
}
.footer-v12__block-list a {
  color: rgb(var(--color-foreground));
  transition: 0.3s;
}

.footer-v12__block-list-item {
  font-size: calc(var(--font-body-scale) * 1.5rem);
  line-height: calc(1 + 1.28 / var(--font-body-scale));
  transition: all 0.5s;
  font-weight: 500;
}
.footer-v12__block-list-item:hover a {
  color: rgb(var(--color-foreground));
  padding-left: 1rem;
}
.footer-v12__block-list-item a {
  transition: all 0.3s ease;
  color: rgba(var(--color-foreground), 0.5);
}

.footer-v12__field-input {
  display: flex;
  align-items: center;
  background-color: rgb(var(--color-foreground), 0.05);
  max-width: 30rem;
  border-radius: var(--inputs-radius);
}
.footer-v12__field-input .xo-field-input {
  border-bottom: 0;
  margin-bottom: 0;
  padding: 0.6rem 0;
}
.footer-v12__field-input .xo-field-input__input {
  padding: 0;
  border: 0;
  border-radius: unset;
}

.footer-v12__field-button {
  padding: unset;
  line-height: calc(1 + 1.25 / var(--font-heading-scale));
  cursor: pointer;
  height: 100%;
  background-color: transparent;
  border: none;
}

.footer-v12__content-bottom {
  padding: 2.6rem 0;
}

.footer-v12__copyright {
  font-size: calc(var(--font-body-scale) * 1.5rem);
  line-height: calc(1 + 0.57 / var(--font-body-scale));
}
@media (max-width: 767px) {
  .footer-v12__copyright {
    text-align: center;
  }
}

.footer-v12__social-link svg {
  width: 1.6rem;
  height: auto;
}
.footer-v12__social-link svg path {
  transition: fill 0.3s;
  fill: rgba(var(--color-foreground));
}

.footer-v12__social-link:hover svg path {
  fill: rgba(var(--color-foreground), 0.5);
}

.footer-v12__social {
  list-style: none;
  margin-top: 3rem;
  max-height: 2.4rem;
  margin-bottom: unset;
  display: flex;
  gap: 2rem;
}
[dir=ltr] .footer-v12__social {
  padding-inline-start: 0;
}
[dir=rtl] .footer-v12__social {
  padding-inline-start: 0;
}
.footer-v12__social li {
  margin: 0 0.5rem;
  display: flex;
  align-items: center;
}

.footer-v12__social-link {
  color: rgb(var(--color-foreground));
  display: inline-flex;
  justify-content: center;
  align-items: center;
  line-height: calc(1 + 1.7 / var(--font-heading-scale));
  position: relative;
  text-align: center;
  transition: all 0.3s;
}

.footer-v12__button-email {
  height: 100%;
  padding: 0.3rem 2rem;
  color: #fff;
  background: #111;
  border-radius: 0;
  overflow: hidden;
  transition: 0.3s;
  width: auto;
  position: relative;
  border-radius: 0 var(--inputs-radius) var(--inputs-radius) 0;
}
.footer-v12__button-email svg {
  vertical-align: middle;
  padding-bottom: 0.4rem;
}

.footer-v12__field-input .xo-field-input {
  margin: 0 1.2rem;
}

.footer-v12__field-input .xo-field-input__placeholder {
  display: none;
}

.footer-v12__block-text {
  margin-bottom: 2rem;
  margin-top: 2.3rem;
  font-size: calc(var(--font-heading-scale) * var(--font-body-scale) * 1.5rem);
  line-height: calc(1 + 0.5 / var(--font-heading-scale));
  color: rgba(var(--color-foreground), 0.5);
  width: 70%;
  font-weight: 500;
}

@media (min-width: 768px) {
  .footer-v12__copyright-payment {
    text-align: right;
  }
}
@media (max-width: 767px) {
  .footer-v12__copyright-payment {
    text-align: center;
  }
}

.footer-v12__copyright-payment img {
  width: revert-layer;
}

.footer-v12__bottom {
  align-items: center;
}

.footer-v12__copyright-payment .xo-image {
  max-height: 2.5rem;
}
@media (min-width: 992px) {
  .footer-v12__copyright-payment .xo-image {
    display: flex;
    justify-content: right;
  }
}

.footer-v12__grid {
  border-right: 0.1rem solid rgba(var(--color-foreground), 0.15);
  padding: 5rem 1.5rem 4rem 0;
}
.footer-v12__grid:nth-last-child(1) {
  border-right: unset;
}
.footer-v12__grid:nth-child(1) {
  padding-left: unset;
}
@media (max-width: 991px) {
  .footer-v12__grid:nth-child(1) {
    border-right: unset;
    border-bottom: 0.1rem solid rgb(var(--color-foreground), 0.15);
  }
}
@media (max-width: 767px) {
  .footer-v12__grid {
    border-right: unset;
    padding: unset;
  }
  .footer-v12__grid:nth-child(1) {
    padding-top: 2rem;
  }
}

@media (max-width: 991px) {
  .footer-v12__block-input {
    display: flex;
    justify-content: center;
  }
}

.footer-v12__copyright-content {
  font-size: calc(var(--font-body-scale) * 1.4rem);
}

.footer-v12__copyright-content {
  font-size: calc(var(--font-body-scale) * 1.4rem);
}
.footer-v12__copyright-content a {
  color: rgba(var(--color-foreground), 0.3);
  transition: 0.3s;
  font-weight: 500;
  position: relative;
}
.footer-v12__copyright-content a::after {
  content: "";
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -0.1rem;
  display: block;
  width: 0;
  height: 0.1rem;
  background-color: rgba(var(--color-foreground), 0.15);
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.075);
}
.footer-v12__copyright-content a:hover {
  color: rgb(var(--color-foreground));
}
.footer-v12__copyright-content a:hover::after {
  width: 100%;
}

.footer-v12__copyright-content--black a:hover {
  color: rgba(var(--color-foreground), 0.3);
}

.footer-v12__copyright-content .footer-v12__copyright-shopilaunch {
  color: rgba(var(--color-foreground), 0.6);
}

.footer-v12__theme-name,
.footer-v12__powered-shopify {
  color: rgba(var(--color-foreground), 0.3);
  transition: 0.3s;
  font-weight: 500;
  position: relative;
}
.footer-v12__theme-name::after,
.footer-v12__powered-shopify::after {
  content: "";
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -0.1rem;
  display: block;
  width: 0;
  height: 0.1rem;
  background-color: rgba(var(--color-foreground), 0.15);
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.075);
}

.footer-v12__theme-name:hover {
  color: rgb(var(--color-foreground));
}
.footer-v12__theme-name:hover::after {
  width: 100%;
}

.footer-v12__powered-shopify:hover {
  color: rgba(var(--color-foreground), 0.3);
}
.footer-v12__powered-shopify:hover::after {
  width: 100%;
}

.footer-v12__shop-name {
  color: rgba(var(--color-foreground), 0.6);
  transition: 0.3s;
  font-weight: 500;
  position: relative;
}
.footer-v12__shop-name::after {
  content: "";
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -0.1rem;
  display: block;
  width: 0;
  height: 0.1rem;
  background-color: rgba(var(--color-foreground), 0.15);
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.075);
}
.footer-v12__shop-name:hover {
  color: rgb(var(--color-foreground));
}
.footer-v12__shop-name:hover::after {
  width: 100%;
}

.footer-v12__icon-before {
  transition: 0.3s all;
}

.footer-v12__field-button:hover .footer-v12__icon-after {
  top: 50%;
  transform: translate(-50%, -50%);
  left: 50%;
}
.footer-v12__field-button:hover .footer-v12__icon-before {
  transform: translateY(-4rem);
}

.footer-v12__icon-after {
  transform: translate(-50%, 50%);
  position: absolute;
  top: 100%;
  right: 0;
  bottom: 0;
  left: 50%;
  transition: 0.3s;
}

.newsletter-form__message {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 2rem;
  padding: 1rem;
  border-radius: var(--text-boxes-radius);
}

.newsletter-form__message--success {
  background-color: rgba(58, 135, 53, 0.1);
  color: rgb(58, 135, 53);
}

.newsletter-form__message--error {
  background-color: rgba(186, 4, 4, 0.1);
  color: rgb(186, 4, 4);
}