.footer-v2__top {
  padding: 5rem 0;
  border-bottom: 0.1rem solid rgba(var(--color-foreground), 0.15);
}

.footer-v2__heading {
  font-size: calc(var(--font-body-scale) * 1.4rem);
  color: color-mix(in srgb, rgba(var(--color-foreground)) calc(1 * 100%), transparent);
  padding-bottom: 1.7rem;
  margin-bottom: 1.5rem;
  text-transform: uppercase;
  position: relative;
}
.footer-v2__heading::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 0.1rem;
  width: 3.5rem;
  background-color: rgba(var(--color-foreground), 0.15);
}

.footer-v2__list {
  list-style: none;
  margin: 0;
  padding-inline-start: 0;
}
.footer-v2__list a {
  color: rgb(var(--color-foreground), 0.5);
  transition: 0.3s;
  font-weight: 500;
}

.footer-v2__list-item {
  padding: 0.4rem 0;
  font-size: calc(var(--font-body-scale) * 1.5rem);
  transition: all 0.5s;
  font-weight: 400;
}
.footer-v2__list-item:hover a {
  color: rgb(var(--color-foreground));
  padding-left: 10px;
}

.footer-v2__field-input {
  display: flex;
  align-items: center;
  border-radius: var(--inputs-radius);
  overflow: hidden;
}
.footer-v2__field-input .xo-field-input {
  border: 0.1rem solid rgba(var(--color-foreground), 0.15);
  border-right: none;
  border-top-left-radius: var(--inputs-radius);
  border-bottom-left-radius: var(--inputs-radius);
}
.footer-v2__field-input .xo-field-input__input {
  padding: 1.3rem 1.5rem;
  line-height: calc(1 + 0.5 / var(--font-heading-scale));
  border: none;
}

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

.footer-v2__social {
  display: flex;
  align-items: flex-end;
}

.footer-v2__content-bottom {
  padding: 1.5rem 0;
}

.footer-v2__payment {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.footer-v2__logo-phone {
  display: flex;
  flex-direction: column;
  margin-bottom: 2.5rem;
  gap: 2rem;
}

.footer-v2__address ul {
  list-style: none;
  margin: 0;
  padding: 0;
  font-weight: 500;
  color: rgb(var(--color-foreground), 0.5);
}

.footer-v2__subtext {
  font-weight: 500;
  color: rgb(var(--color-foreground), 0.5);
}

.footer-v2__address ul li {
  margin-bottom: 0;
  font-size: calc(var(--font-body-scale) * 1.5rem);
  line-height: calc(1 + 0.6 / var(--font-heading-scale));
}

.footer-v2__phone-title {
  margin-bottom: 1.5rem;
  text-transform: uppercase;
  line-height: calc(1 + 0.12 / var(--font-heading-scale));
  font-size: calc(var(--font-heading-scale) * var(--font-body-scale) * 1.2rem);
}

.footer-v2__phone-num {
  font-size: calc(var(--font-body-scale) * 3.4rem);
  color: rgb(var(--color-foreground));
  line-height: calc(1 + -0.3 / var(--font-heading-scale));
}

.footer-v2__social-link svg path {
  transition: fill 0.1s;
  fill: rgba(var(--color-foreground));
}

.footer-v2__social-link:hover svg path {
  fill: rgba(var(--color-background));
}

.footer-v2__social {
  list-style: none;
  margin-top: 3rem;
  margin-bottom: unset;
  display: flex;
}
[dir=ltr] .footer-v2__social {
  padding-inline-start: 0;
}
[dir=rtl] .footer-v2__social {
  padding-inline-start: 0;
}
.footer-v2__social li {
  margin: 0 0.5rem;
}

.footer-v2__social-link {
  color: rgb(var(--color-foreground));
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  border: 0.1rem solid rgba(var(--color-foreground), 0.5);
  line-height: calc(1 + 1.7 / var(--font-heading-scale));
  position: relative;
  width: 4rem;
  height: 4rem;
  text-align: center;
  transition: all 0.3s;
}
.footer-v2__social-link svg {
  width: 1.2rem;
}
.footer-v2__social-link:hover {
  background-color: rgb(var(--color-foreground));
  border: 0.1rem solid rgb(var(--color-foreground));
}

.footer-v2__input-box {
  line-height: calc(1 + 1.25 / var(--font-heading-scale));
  margin: 0 1.2rem;
}

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

.footer-v2__block {
  margin-top: 2rem;
}

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

@media (min-width: 992px) {
  .footer-v2__copyright-payment .xo-image {
    display: flex;
    justify-content: right;
  }
}

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

.footer-v2__copyright-content {
  font-size: calc(var(--font-body-scale) * 1.4rem);
}
.footer-v2__copyright-content a {
  color: rgba(var(--color-foreground), 0.3);
  transition: 0.3s;
  font-weight: 500;
  position: relative;
}
.footer-v2__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-v2__copyright-content a:hover {
  color: rgb(var(--color-foreground));
}
.footer-v2__copyright-content a:hover::after {
  width: 100%;
}

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

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

.footer-v2__theme-name,
.footer-v2__powered-shopify {
  color: rgba(var(--color-foreground), 0.3);
  transition: 0.3s;
  font-weight: 500;
  position: relative;
}
.footer-v2__theme-name::after,
.footer-v2__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-v2__theme-name:hover {
  color: rgb(var(--color-foreground));
}
.footer-v2__theme-name:hover::after {
  width: 100%;
}

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

.footer-v2__shop-name {
  color: rgba(var(--color-foreground), 0.6);
  transition: 0.3s;
  font-weight: 500;
  position: relative;
}
.footer-v2__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-v2__shop-name:hover {
  color: rgb(var(--color-foreground));
}
.footer-v2__shop-name:hover::after {
  width: 100%;
}

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

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

.footer-v2__button-email {
  height: 100%;
  padding: 0 2rem;
  color: rgb(var(--color-background));
  background: rgb(var(--color-foreground));
  border-radius: 0;
  transition: 0.3s;
  width: auto;
  position: relative;
  overflow: hidden;
}
.footer-v2__button-email svg {
  vertical-align: middle;
  padding-bottom: 0.2rem;
}
.footer-v2__button-email svg path {
  fill: rgb(var(--color-background));
}

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

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

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

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

.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);
}