:root {
  --off-white: #ece7e3;
  --green: #435145;
}

.w-layout-blockcontainer {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

@media screen and (max-width: 991px) {
  .w-layout-blockcontainer {
    max-width: 728px;
  }
}

@media screen and (max-width: 767px) {
  .w-layout-blockcontainer {
    max-width: none;
  }
}

body {
  color: #333;
  background-color: #1c1c20;
  font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

.upload-section {
  background-image: linear-gradient(#0000006b, #0000006b), linear-gradient(0deg, #000000de, #fff0), url('../images/5x7-mom-tippy.webp');
  background-position: 0 0, 0 0, 50%;
  background-size: auto, auto, cover;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  display: flex;
}

.form-wrapper {
  flex-flow: column;
  align-items: center;
  width: 30vw;
  display: flex;
}

.field-label {
  color: var(--off-white);
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 400;
}

.text-field {
  background-color: var(--off-white);
  border-radius: 10px;
  width: 100%;
}

.submit-button {
  text-transform: uppercase;
  border-radius: 10px;
  width: 100%;
  font-size: 12px;
}

.upload-wrapper {
  margin-bottom: 10px;
}

.upload-button {
  width: 100%;
  color: var(--off-white);
  text-transform: uppercase;
  background-color: #8c8fc5;
  border-radius: 10px;
  padding-top: 12px;
  padding-bottom: 12px;
  font-size: 12px;
}

.heading {
  color: var(--off-white);
  text-align: center;
  margin-bottom: 15px;
  font-family: Georgia, Times, Times New Roman, serif;
  font-weight: 400;
}

.text-block {
  color: var(--off-white);
  text-align: center;
  margin-bottom: 39px;
}

.text-block-2 {
  color: var(--off-white);
  text-align: center;
}

.link-block {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  text-transform: uppercase;
  background-color: #ece7e324;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  width: 50%;
  padding-top: 11px;
  padding-bottom: 11px;
  font-size: 12px;
  text-decoration: none;
  display: flex;
}

.form, .form-block {
  width: 100%;
}

.icon {
  width: 20px;
}

.body {
  background-color: #f4f0e7;
}

.error-message {
  text-align: center;
  border-radius: 10px;
}

.success-message {
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  background-color: #ece7e39e;
  border-radius: 10px;
}

.text-block-3 {
  color: #282a3a;
  text-transform: uppercase;
  font-weight: 700;
}

.hero-heading-left {
  z-index: 0;
  background-image: linear-gradient(#c4d2c2, #c4d2c2 57%, #c4d2c200);
  border-bottom: 1px #e4ebf3;
  justify-content: center;
  align-items: center;
  height: 80vh;
  padding: 80px 30px;
  display: flex;
  position: relative;
}

.container {
  z-index: 10;
  width: 100%;
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.hero-wrapper {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.hero-split {
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 46%;
  display: flex;
  position: relative;
}

.margin-bottom-24px {
  color: #435145;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-top: 19px;
  margin-bottom: 1px;
  font-family: Times New Roman, TimesNewRoman, Times, Baskerville, Georgia, serif;
  font-size: 16px;
}

.button-primary {
  color: #fff;
  letter-spacing: 2px;
  text-transform: uppercase;
  background-color: #1a1b1f;
  padding: 12px 25px;
  font-size: 12px;
  line-height: 20px;
  transition: all .2s;
}

.button-primary:hover {
  color: #fff;
  background-color: #32343a;
}

.button-primary:active {
  background-color: #43464d;
}

.shadow-two {
  width: 600px;
  min-width: 600px;
}

.image {
  position: absolute;
  inset: 0% -66% 0% auto;
}

.heading-2 {
  text-align: center;
  text-indent: 2px;
  text-transform: uppercase;
  font-family: Times New Roman, TimesNewRoman, Times, Baskerville, Georgia, serif;
  font-size: 21px;
  font-weight: 400;
}

.hero-split-left {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 46%;
  display: flex;
  position: relative;
}

.hero-split-right {
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 46%;
  display: flex;
  position: relative;
}

.hero-text {
  width: 500px;
}

.sub-title {
  color: var(--green);
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-top: 8px;
  font-family: Times New Roman, TimesNewRoman, Times, Baskerville, Georgia, serif;
  font-size: 15px;
}

.sub-title.margin-0 {
  margin-top: -4px;
}

.wrapper {
  position: relative;
  overflow: hidden;
}

.image-2 {
  position: absolute;
}

.wcolor-tl {
  z-index: 1;
  mix-blend-mode: multiply;
  position: fixed;
}

.wcolour-br {
  z-index: 1;
  mix-blend-mode: multiply;
  position: fixed;
  inset: 0% 0% 0% auto;
}

.verse {
  z-index: 5;
  border-bottom: 1px #e4ebf3;
  padding: 80px 30px;
  position: relative;
}

.verse-wrapper {
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.margin-bottom-24px-2 {
  color: var(--green);
  text-transform: uppercase;
  margin-bottom: 24px;
  padding-left: 114px;
  padding-right: 114px;
  font-family: Times New Roman, TimesNewRoman, Times, Baskerville, Georgia, serif;
  font-size: 17px;
  line-height: 35px;
}

.text-span {
  display: block;
}

.generation {
  z-index: 5;
  border-bottom: 1px #e4ebf3;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 0 30px 80px;
  display: flex;
  position: relative;
}

.generation-wrapper {
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.heading-3 {
  color: var(--green);
  letter-spacing: 3px;
  text-transform: uppercase;
  margin-bottom: 37px;
  padding-left: 0;
  padding-right: 0;
  font-family: Times New Roman, TimesNewRoman, Times, Baskerville, Georgia, serif;
  font-size: 30px;
  font-weight: 400;
}

.heading-3.padding {
  padding-left: 92px;
  padding-right: 92px;
}

.header-image {
  width: 220px;
  margin-bottom: 25px;
}

.column-text {
  color: var(--green);
  text-align: left;
  column-count: 2;
  font-size: 15px;
  line-height: 24px;
}

.spirit {
  z-index: 5;
  border-bottom: 1px #e4ebf3;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 0 30px 80px;
  display: flex;
  position: relative;
}

.generation-copy {
  z-index: 5;
  border-bottom: 1px solid #e4ebf3;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 0 30px 80px;
  display: flex;
  position: relative;
}

.love {
  z-index: 5;
  border-bottom: 1px #e4ebf3;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 0 30px 250px;
  display: block;
  position: relative;
}

.service-wrapper {
  text-align: center;
  mix-blend-mode: multiply;
  background-color: #8faf9480;
  border-radius: 20px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding: 50px 59px;
  display: flex;
  position: relative;
}

.service-column-text {
  color: var(--green);
  text-align: center;
  font-family: Times New Roman, TimesNewRoman, Times, Baskerville, Georgia, serif;
  font-size: 19px;
  line-height: 38px;
}

.button {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  width: 75%;
  height: 59px;
  color: var(--off-white);
  letter-spacing: 0;
  background-color: #dd7a7d;
  border-radius: 50px;
  justify-content: center;
  align-items: center;
  margin-top: 36px;
  margin-bottom: 38px;
  font-size: 17px;
  text-decoration: none;
  display: flex;
}

.text-block-4 {
  color: var(--off-white);
  font-size: 16px;
}

.image-3 {
  color: #ece7e3;
  width: 240px;
  position: absolute;
  inset: -24% -13% 0% auto;
}

.map-icon {
  width: 25px;
}

.photos {
  z-index: 5;
  border-bottom: 1px #e4ebf3;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 0 30px 80px;
  display: block;
  position: relative;
}

.text {
  color: var(--green);
  text-align: left;
  column-count: 0;
  font-size: 15px;
  line-height: 24px;
}

.service-footer {
  color: var(--green);
  text-align: center;
  column-count: 0;
  padding-left: 74px;
  padding-right: 74px;
  font-size: 15px;
  line-height: 24px;
}

.link {
  color: var(--green);
  font-weight: 700;
  text-decoration: none;
}

.footer-wrapper {
  flex-flow: column;
  align-items: center;
  display: flex;
}

.link-block-2 {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  color: var(--green);
  justify-content: center;
  align-items: center;
  font-weight: 700;
  text-decoration: none;
  display: flex;
}

.vintage-annie {
  width: 540px;
}

.slider {
  background-color: #ddd0;
  min-height: 700px;
  margin-left: auto;
  margin-right: auto;
}

.video {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
}

.code-embed {
  justify-content: center;
  align-items: center;
  display: flex;
}

@media screen and (max-width: 991px) {
  .form-wrapper {
    width: 80vw;
  }

  .hero-heading-left {
    justify-content: center;
    align-items: flex-start;
    height: 1160px;
  }

  .container {
    max-width: 728px;
  }

  .hero-wrapper {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: -40px;
  }

  .hero-split {
    max-width: 100%;
    margin-bottom: 40px;
  }

  .image {
    width: 440px;
    top: 3%;
    right: -16%;
  }

  .hero-split-left, .hero-split-right {
    max-width: 100%;
    margin-bottom: 40px;
  }

  .wcolour-br {
    inset: auto 0% 0%;
  }

  .generation, .spirit, .love, .photos {
    padding-left: 60px;
    padding-right: 60px;
  }

  .service-footer {
    padding-left: 0;
    padding-right: 0;
  }

  .footer-wrapper {
    padding-left: 97px;
    padding-right: 97px;
  }
}

@media screen and (max-width: 767px) {
  .hero-heading-left, .verse {
    padding: 60px 15px;
  }

  .margin-bottom-24px-2 {
    padding-left: 30px;
    padding-right: 30px;
  }

  .generation, .spirit {
    padding: 60px 30px;
  }

  .generation-copy {
    padding: 60px 15px;
  }

  .love {
    padding: 60px 29px;
  }

  .button {
    width: 110%;
    margin-bottom: -30px;
  }

  .image-3 {
    width: 160px;
    position: relative;
    top: 0%;
    right: 0%;
    transform: rotate(90deg);
  }

  .photos {
    padding: 60px 15px;
  }

  .footer-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media screen and (max-width: 479px) {
  .heading {
    font-size: 30px;
  }

  .link-block {
    width: 100%;
  }

  .hero-heading-left {
    justify-content: center;
    align-items: flex-start;
    height: 1070px;
  }

  .container {
    max-width: none;
  }

  .image {
    width: 370px;
    display: none;
    top: 23%;
    right: -22%;
  }

  .hero-split-left {
    padding-left: 25px;
    padding-right: 25px;
  }

  .hero-split-right {
    justify-content: center;
    align-items: center;
  }

  .wcolor-tl {
    position: absolute;
    inset: 0% auto auto 0%;
  }

  .verse {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .generation {
    padding-top: 25px;
    padding-bottom: 25px;
  }

  .heading-3.padding {
    padding-left: 0;
    padding-right: 0;
  }

  .column-text {
    column-count: 1;
  }

  .spirit {
    padding-top: 25px;
    padding-bottom: 25px;
  }

  .love {
    padding: 25px 30px 50px;
  }

  .service-wrapper {
    padding: 20px;
  }

  .button {
    margin-bottom: -28px;
  }

  .image-3 {
    width: 140px;
    position: relative;
    top: 0%;
    right: 0%;
    overflow: visible;
    transform: rotate(90deg);
  }

  .photos, .footer-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}


