.restituo-block-contact-cta {
  margin-top: 160.543px;
}
@media (max-width: 767px) {
  .restituo-block-contact-cta {
    margin-top: 75.9109px;
  }
}
.restituo-block-contact-cta .viewport-container {
  position: relative;
}
.restituo-block-contact-cta .wrapper {
  position: relative;
  min-height: 610px;
}
.restituo-block-contact-cta .contact-photo {
  position: absolute;
  z-index: 1;
  left: calc(max(20px, (100% - 1338px) / 2) + 654px);
  top: 0;
  width: calc(100% - max(20px, (100% - 1338px) / 2) - 654px);
  height: 610px;
  object-fit: cover;
}
.restituo-block-contact-cta .contact-panel {
  position: absolute;
  top: 80px;
  left: 1.1355px;
  width: 1072.7286px;
  height: 450px;
  max-width: none;
}
.restituo-block-contact-cta .contact-mark {
  position: absolute;
  top: 80px;
  left: 285px;
  width: 24px;
  height: 84px;
  transform: rotate(90deg);
  transform-origin: top left;
  translate: 84px 0;
}
.restituo-block-contact-cta .contact-mark.bottom {
  top: 530px;
  transform: rotate(90deg) scaleX(-1);
}
.restituo-block-contact-cta .contact-copy {
  position: relative;
  width: 426px;
  max-width: 100%;
  margin-left: 114px;
  padding-top: 180px;
  text-align: center;
}
.restituo-block-contact-cta .contact-eyebrow {
  font-family: "Red Hat Display", sans-serif;
  font-weight: 300;
  font-size: 28px;
  line-height: 36px;
  letter-spacing: -0.02em;
}
@media (max-width: 767px) {
  .restituo-block-contact-cta .contact-eyebrow {
    font-size: 28px;
    line-height: 36px;
    letter-spacing: -0.02em;
  }
}
.restituo-block-contact-cta .contact-eyebrow {
  color: #571b46;
}
.restituo-block-contact-cta .contact-heading {
  font-family: "Red Hat Display", sans-serif;
  font-weight: 700;
  font-size: 48px;
  line-height: 57.6px;
  letter-spacing: -0.02em;
}
@media (max-width: 767px) {
  .restituo-block-contact-cta .contact-heading {
    font-size: 48px;
    line-height: 57.6px;
    letter-spacing: -0.02em;
  }
}
.restituo-block-contact-cta .contact-heading {
  color: #2d0f3a;
  margin-top: -2px;
}
.restituo-block-contact-cta .contact-description {
  font-family: "Red Hat Text", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 26px;
  letter-spacing: -0.02em;
}
@media (max-width: 767px) {
  .restituo-block-contact-cta .contact-description {
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.02em;
  }
}
.restituo-block-contact-cta .contact-description {
  margin-top: 30px;
  color: #000;
}
.restituo-block-contact-cta .link-as-bttn {
  margin-top: 30px;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .restituo-block-contact-cta .contact-photo {
    left: 55%;
    width: 45%;
  }
  .restituo-block-contact-cta .contact-copy {
    width: 50%;
    margin-left: 0;
  }
  .restituo-block-contact-cta .contact-heading {
    font-family: "Red Hat Display", sans-serif;
    font-weight: 700;
    font-size: 48px;
    line-height: 56px;
    letter-spacing: -0.02em;
    font-size: 36px;
    line-height: 36px;
    letter-spacing: -0.02em;
  }
}
@media (max-width: 767px) {
  .restituo-block-contact-cta .contact-photo {
    position: relative;
    left: 0;
    width: 100%;
    height: 298px;
  }
  .restituo-block-contact-cta .wrapper {
    min-height: 450px;
  }
  .restituo-block-contact-cta .contact-panel {
    top: 0;
    left: calc(50% - 536.3643px);
  }
  .restituo-block-contact-cta .contact-mark {
    top: 0;
    left: calc(50% - 42px);
  }
  .restituo-block-contact-cta .contact-mark.bottom {
    top: 450px;
  }
  .restituo-block-contact-cta .contact-copy {
    width: 100%;
    margin: 0;
    padding-top: 85px;
  }
  .restituo-block-contact-cta .contact-description {
    width: 284px;
    max-width: 100%;
    margin: 20px auto 0;
  }
  .restituo-block-contact-cta .link-as-bttn {
    margin-top: 34px;
  }
  .restituo-block-contact-cta .contact-heading {
    overflow-wrap: anywhere;
  }
}
@media (max-width: 389px) {
  .restituo-block-contact-cta .contact-heading {
    font-family: "Red Hat Display", sans-serif;
    font-weight: 700;
    font-size: 48px;
    line-height: 56px;
    letter-spacing: -0.02em;
    font-size: 36px;
    line-height: 36px;
    letter-spacing: -0.02em;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .restituo-block-contact-cta.has-cta-motion:not(.is-cta-photo-visible) .contact-photo {
    opacity: 0;
  }
  .restituo-block-contact-cta.has-cta-motion:not(.is-cta-copy-visible) .contact-panel, .restituo-block-contact-cta.has-cta-motion:not(.is-cta-copy-visible) .contact-mark, .restituo-block-contact-cta.has-cta-motion:not(.is-cta-copy-visible) .contact-copy > * {
    opacity: 0;
  }
  .restituo-block-contact-cta.has-cta-motion.is-cta-photo-visible .contact-photo {
    animation: restituo-cta-photo-in 900ms cubic-bezier(0.2, 0.6, 0.3, 1) backwards;
  }
  .restituo-block-contact-cta.has-cta-motion.is-cta-copy-visible .contact-panel {
    animation: restituo-cta-panel-in 700ms cubic-bezier(0.2, 0.6, 0.3, 1) backwards;
  }
  .restituo-block-contact-cta.has-cta-motion.is-cta-copy-visible .contact-mark {
    animation: restituo-cta-mark-in 700ms cubic-bezier(0.2, 0.6, 0.3, 1) backwards;
    animation-delay: 100ms;
  }
  .restituo-block-contact-cta.has-cta-motion.is-cta-copy-visible .contact-mark.bottom {
    animation-delay: 400ms;
  }
  .restituo-block-contact-cta.has-cta-motion.is-cta-copy-visible .contact-copy > * {
    animation: restituo-cta-copy-in 700ms cubic-bezier(0.2, 0.6, 0.3, 1) backwards;
  }
  .restituo-block-contact-cta.has-cta-motion.is-cta-copy-visible .contact-eyebrow {
    animation-delay: 100ms;
  }
  .restituo-block-contact-cta.has-cta-motion.is-cta-copy-visible .contact-heading {
    animation-delay: 200ms;
  }
  .restituo-block-contact-cta.has-cta-motion.is-cta-copy-visible .contact-description {
    animation-delay: 300ms;
  }
  .restituo-block-contact-cta.has-cta-motion.is-cta-copy-visible .link-as-bttn {
    animation-delay: 400ms;
  }
}
.restituo-block-contact-cta.is-cta-immediate .contact-copy > * {
  transition: none;
}
@keyframes restituo-cta-photo-in {
  from {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
  }
  to {
    opacity: 1;
    clip-path: inset(0);
  }
}
@keyframes restituo-cta-panel-in {
  from {
    opacity: 0;
    translate: -32px 0;
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}
@keyframes restituo-cta-mark-in {
  from {
    opacity: 0;
    scale: 0.75;
  }
  to {
    opacity: 1;
    scale: 1;
  }
}
@keyframes restituo-cta-copy-in {
  from {
    opacity: 0;
    translate: 0 24px;
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}

.page-offer .restituo-block-contact-cta {
  margin-top: 112px;
}
.page-about .restituo-block-contact-cta {
  margin-top: 93.543px;
}
.page-articles .restituo-block-contact-cta {
  margin-top: 187px;
}
.page-article .restituo-block-contact-cta {
  margin-top: 112px;
}
@media (max-width: 767px) {
  .restituo-page .restituo-block-contact-cta {
    margin-top: 60px;
  }
}