.w-layout-layout {
  grid-row-gap: 20px;
  grid-column-gap: 20px;
  grid-auto-columns: 1fr;
  justify-content: center;
  padding: 20px;
}

.w-layout-cell {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

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

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

.navbar {
  background-image: url('../images/navbarbg.png');
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 20px;
  padding-bottom: 20px;
}

.navbarlink {
  font-family: Great Vibes, cursive;
  font-size: 24px;
}

.heart-separator {
  background-image: url('../images/hearts_separator.png');
  background-position: 50%;
  background-size: contain;
  min-height: 15px;
  max-height: 15px;
}

.hero-section {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: cover;
}

.image {
  max-width: 50%;
}

.cell {
  justify-content: center;
  align-items: center;
}

.button {
  color: #fff;
  text-shadow: 0 1px 1px #0003;
  background-color: #fcaecd;
  background-image: linear-gradient(135deg, #eb98bb40, #fc9abfbf 30%, #f8cedc 51%, #ff8bbbbf 74%, #ee9ac1), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 7px;
  padding: 10px 40px;
  font-family: Bitter, serif;
  font-size: 24px;
  font-weight: 700;
}

.cell-2 {
  justify-content: center;
  align-items: center;
}

.div-block {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: auto;
}

.heading {
  text-align: center;
  font-family: Great Vibes, cursive;
}

.heading.footer {
  color: #54404b;
  text-shadow: 0 2px 0 rgba(255, 255, 255, .85), 0 8px 28px rgba(243, 128, 168, .2);
  margin-bottom: 48px;
  font-size: clamp(1.85rem, 4.5vw, 2.5rem);
  position: relative;
  z-index: 1;
}

.cell-3 {
  justify-content: center;
  align-items: center;
}

.link {
  color: #000;
  font-family: Bitter, serif;
  font-weight: 700;
  text-decoration: none;
}

.link-block {
  margin-left: 20px;
}

.cell-4, .cell-5, .cell-6 {
  justify-content: center;
  align-items: center;
}

.best-sellers-section {
  padding-top: 40px;
  padding-bottom: 0;
}

.best-sellers-section #w-node-d460d4ff-71ec-a6f3-8163-91533d9d424b-ffcb9db3 {
  width: 100%;
  max-width: 1040px;
  margin-left: auto;
  margin-right: auto;
}

.best-sellers-section .w-layout-cell {
  align-items: center;
}

.body {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: auto;
}

.best-seller-card {
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  display: flex;
}

.photo_frame {
  background-image: url('../images/photobg.png');
  background-position: 50%;
  background-size: cover;
  min-width: 500px;
  min-height: 1000px;
}

.image-2 {
  max-width: 50%;
}

.image-3 {
  max-width: 200px;
}

.footer-image {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding-top: 40px;
  padding-bottom: 40px;
  display: flex;
  background-image: linear-gradient(180deg, transparent 45%, rgba(255, 249, 252, .45) 82%, rgba(255, 240, 247, .82) 100%);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.footer-image.newsletter-section {
  padding-top: 48px;
  padding-bottom: 56px;
  background-image: linear-gradient(180deg, rgba(255, 252, 254, .55) 0%, rgba(255, 240, 247, .78) 100%);
}

.newsletter-inner {
  width: 100%;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  text-align: center;
}

.newsletter-title {
  margin-bottom: 10px;
}

.newsletter-lead {
  color: #6e5f66;
  font-family: Bitter, serif;
  font-size: 15px;
  line-height: 1.55;
  margin-top: 0;
  margin-bottom: 26px;
  letter-spacing: -.02em;
}

.newsletter-section .newsletter-form-wrap {
  width: 100%;
  max-width: 100%;
  margin-top: 0;
  margin-bottom: 0;
}

.newsletter-section .form.newsletter-form {
  justify-content: stretch;
  align-items: stretch;
  width: 100%;
  max-width: 440px;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid rgba(243, 128, 168, .32);
  border-radius: 999px;
  overflow: hidden;
  background-color: #fff;
  box-shadow: 0 6px 24px rgba(243, 128, 168, .1);
}

.newsletter-section .newsletter-input {
  border: none;
  border-radius: 0;
  flex: 1;
  min-width: 0;
  padding: 14px 20px;
  font-size: 15px;
  font-family: Bitter, serif;
}

.newsletter-section .newsletter-input:focus {
  outline: none;
}

.newsletter-section .newsletter-input:focus-visible {
  outline: 2px solid #f380a8;
  outline-offset: -2px;
}

.newsletter-section .newsletter-submit {
  border-radius: 0;
  flex-shrink: 0;
  padding: 14px 26px;
  font-family: Bitter, serif;
  font-weight: 700;
  font-size: 15px;
  letter-spacing: .02em;
}

.image-4 {
  max-width: 150px;
}

.image-5 {
  width: 65%;
  max-width: none;
  padding-left: 40px;
  padding-right: 40px;
}

.subscribe-form-wrapper {
  width: 60%;
  margin-top: 20px;
  margin-bottom: 20px;
}

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

.text-field {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  margin-bottom: 0;
}

.submit-button {
  background-color: #f380a8;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}

.field-label {
  margin-bottom: 0;
  font-family: Great Vibes, cursive;
  font-size: 25px;
}

.margin-bottom-48 {
  margin-bottom: 48px;
}

.icon-small {
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  display: flex;
}

.footer-menu {
  grid-column-gap: 44px;
  grid-row-gap: 24px;
  flex-wrap: wrap;
  flex: none;
  align-items: center;
  display: flex;
}

.footer-bottom-b {
  flex-direction: column;
  align-items: center;
  display: flex;
  position: relative;
  z-index: 1;
}

.margin-bottom-32 {
  margin-bottom: 32px;
}

.footer-column {
  color: #ec038c;
  background-color: rgba(255, 255, 255, .52);
  border: 1px solid rgba(255, 255, 255, .9);
  border-radius: 16px;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 20px 18px 16px;
  box-shadow: 0 8px 28px rgba(243, 128, 168, .1);
}

.footer-social-link {
  color: #adb5bd;
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: color .3s, background-color .3s, background-image .3s, box-shadow .3s, transform .3s;
  display: flex;
}

.footer-social-link:hover {
  color: #fff;
  background-image: linear-gradient(135deg, #fcaecd, #f380a8 50%, #f8cedc);
  box-shadow: 0 6px 18px rgba(243, 128, 168, .4);
  transform: translateY(-2px);
}

.footer-link {
  color: #5c5458;
  letter-spacing: -.02em;
  border-radius: 8px;
  width: 100%;
  margin-top: 6px;
  margin-bottom: 6px;
  padding: 8px 10px;
  font-size: 15px;
  font-weight: 500;
  line-height: 22px;
  text-decoration: none;
  transition: color .25s, background-color .25s, transform .25s, padding-left .25s;
}

.footer-link:hover {
  color: #ec038c;
  background-color: rgba(255, 255, 255, .65);
  transform: translateX(4px);
}

.footer-block {
  background-color: #fdf2f7;
  background-image:
    linear-gradient(168deg, #fff9fc 0%, #ffecf7 36%, #fce8f0 68%, #fad8e8 100%),
    radial-gradient(ellipse 110% 55% at 50% -5%, rgba(255, 255, 255, .75) 0%, transparent 58%),
    radial-gradient(ellipse 70% 45% at 100% 40%, rgba(252, 174, 205, .22) 0%, transparent 55%),
    radial-gradient(ellipse 65% 50% at 0% 75%, rgba(253, 200, 220, .28) 0%, transparent 50%);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: 24px;
  padding: 64px 102px 48px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 28px rgba(243, 128, 168, .12), 0 20px 48px rgba(252, 174, 205, .1), inset 0 1px 0 rgba(255, 255, 255, .65);
}

.footer-block::before {
  content: "";
  background: linear-gradient(90deg, #fcaecd, #f380a8, #fff5fb, #f380a8, #fcaecd);
  background-size: 200% 100%;
  width: 100%;
  height: 5px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.footer-title {
  color: #f380a8;
  letter-spacing: .04em;
  text-transform: uppercase;
  margin-bottom: 18px;
  padding-bottom: 8px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  display: inline-block;
}

.footer-title::after {
  content: "";
  background: linear-gradient(90deg, #f380a8, #fcaecd, rgba(252, 174, 205, 0));
  border-radius: 999px;
  width: 100%;
  max-width: 48px;
  height: 3px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.footer-logo {
  flex: none;
  position: relative;
  z-index: 1;
}

.footer-logo img {
  transition: transform .35s ease, filter .35s ease;
  filter: drop-shadow(0 6px 16px rgba(243, 128, 168, .25));
}

.footer-logo:hover img {
  transform: scale(1.05);
  filter: drop-shadow(0 10px 26px rgba(243, 128, 168, .4));
}

.margin-bottom-64 {
  margin-bottom: 64px;
  position: relative;
  z-index: 1;
}

.footer-brand {
  align-items: center;
  display: flex;
}

.footer-social {
  grid-column-gap: 16px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.footer-scroll-button {
  background-color: #fff;
  border-radius: 99px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  display: flex;
  box-shadow: 0 24px 64px #e0e0e07a;
}

.footer-scroll-button.gray-100 {
  background-color: #f9fafb;
}

.footer-detail {
  color: #7a6e75;
  margin-bottom: 0;
  font-size: 12px;
  line-height: 16px;
  letter-spacing: .03em;
}

.footer-content-c {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 420px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
  z-index: 1;
}

.footer-content-c .paragraph-regular {
  color: #54404b;
}

.footer-content-c .margin-bottom-32 > div {
  color: #ec038c;
  letter-spacing: .02em;
  margin-top: 14px;
  font-family: Great Vibes, cursive;
  font-size: clamp(1.35rem, 3.5vw, 1.65rem);
  line-height: 1.35;
}

.margin-bottom-82 {
  margin-bottom: 16px;
}

.footer-large-grid {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  grid-template-rows: auto;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}

.footer-large-grid .footer-wrapper:empty {
  display: none;
}

.footer-scroll-wrapper {
  justify-content: flex-end;
  display: flex;
  position: absolute;
  inset: auto 0% 0% auto;
}

.footer-divider-s {
  background: linear-gradient(90deg, rgba(252, 174, 205, 0), #fcaecd 15%, #f380a8 50%, #fcaecd 85%, rgba(252, 174, 205, 0));
  width: 100%;
  max-width: 320px;
  height: 2px;
  margin-top: 28px;
  margin-bottom: 28px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 999px;
}

.paragraph-regular {
  color: #000;
  letter-spacing: -.02em;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 1.8;
}

.paragraph-small {
  color: #fff;
  letter-spacing: -.02em;
  margin-bottom: 0;
  font-size: 14px;
  line-height: 1.8;
}

.footer-scroll {
  grid-column-gap: 8px;
  align-items: center;
  font-weight: 500;
  display: flex;
}

.footer-detail-link {
  color: #353b41;
  text-align: center;
  letter-spacing: -.02em;
  font-size: 14px;
  font-weight: 500;
  line-height: 16px;
  text-decoration: none;
  transition: color .3s;
}

.footer-detail-link:hover {
  color: #f380a8;
}

.icon-regular {
  color: #f380a8;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  display: flex;
}

.footer-wrapper {
  grid-row-gap: 24px;
  flex-direction: column;
  display: flex;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.search-results-section {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: auto;
}

.search-results-header {
  justify-content: space-between;
  align-items: center;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 20px;
  display: flex;
}

.image-6 {
  width: 40%;
  max-width: 40%;
}

.div-block-4 {
  width: 50%;
}

.text-block {
  color: #54404b;
  text-align: center;
  justify-content: flex-end;
  align-items: center;
  font-family: Great Vibes, cursive;
  font-size: 25px;
  display: flex;
}

.heading-2 {
  font-family: Great Vibes, cursive;
}

.search-result-list {
  display: none;
}

.body-2 {
  background-image: url('../images/herobg.png');
  background-position: 50%;
  background-size: cover;
}

.search-result-wrapper {
  background-image: linear-gradient(#ffffff80, #ffffff80), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border-radius: 10px;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  width: 50%;
  margin-left: 60px;
  margin-right: 60px;
  padding: 10px;
  display: flex;
  position: relative;
}

.search-result-card-link {
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: 10px;
}

.search-result-card-link:focus-visible {
  outline: 2px solid #f380a8;
  outline-offset: 2px;
}

.text-block-2 {
  margin-top: 10px;
  font-family: Changa One, Impact, sans-serif;
  font-size: 18px;
  font-weight: 400;
}

.shop-now-button-search-results {
  width: 75%;
}

.shop-now {
  max-width: 100%;
  margin-top: 10px;
  margin-bottom: 10px;
}

.shop-now-button-link,
.shop-now-button-search-results {
  position: relative;
  display: inline-block;
  isolation: isolate;
}

button.shop-now-button-link {
  appearance: none;
  -webkit-appearance: none;
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  font: inherit;
  text-align: inherit;
}

.shop-now-button-link .image-3,
.shop-now-button-link > img,
.shop-now-button-search-results .shop-now,
.shop-now-button-search-results > img {
  position: relative;
  z-index: 1;
  vertical-align: middle;
  border-radius: 12px;
  transition: transform .28s ease, filter .28s ease;
}

.shop-now-button-link:hover .image-3,
.shop-now-button-link:hover > img,
.shop-now-button-search-results:hover .shop-now,
.shop-now-button-search-results:hover > img {
  transform: scale(1.04);
  filter: drop-shadow(0 6px 14px rgba(243, 128, 168, .55));
}

.shop-now-button-link::before,
.shop-now-button-link::after,
.shop-now-button-search-results::before,
.shop-now-button-search-results::after {
  z-index: 2;
  pointer-events: none;
  line-height: 1;
  position: absolute;
}

.shop-now-button-link::before,
.shop-now-button-search-results::before {
  content: "✦";
  color: #fff;
  text-shadow: 0 0 4px #fff, 0 0 10px #f380a8, 0 0 16px #fcaecd;
  font-size: clamp(11px, 2.4vw, 15px);
  top: -4px;
  left: 4%;
  animation: shop-now-sparkle 2.1s ease-in-out infinite;
}

.shop-now-button-link::after,
.shop-now-button-search-results::after {
  content: "✧";
  color: #fffcef;
  text-shadow: 0 0 4px #fff, 0 0 8px #fcaecd, 0 0 14px #f380a8;
  font-size: clamp(10px, 2.2vw, 14px);
  bottom: 2px;
  right: 6%;
  animation: shop-now-sparkle 2.1s ease-in-out infinite;
  animation-delay: .85s;
}

@media (prefers-reduced-motion: no-preference) {
  .shop-now-button-link .image-3,
  .shop-now-button-link > img,
  .shop-now-button-search-results .shop-now,
  .shop-now-button-search-results > img {
    animation: shop-now-soft-glow 2.6s ease-in-out infinite;
  }
}

@keyframes shop-now-sparkle {
  0%, 100% {
    opacity: .4;
    transform: scale(.75) rotate(-6deg);
  }

  40% {
    opacity: 1;
    transform: scale(1.2) rotate(10deg);
  }

  65% {
    opacity: .85;
    transform: scale(1) rotate(-4deg);
  }
}

@keyframes shop-now-soft-glow {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(243, 128, 168, 0), 0 4px 14px rgba(252, 174, 205, .3);
  }

  50% {
    box-shadow: 0 0 0 3px rgba(255, 236, 247, .55), 0 6px 22px rgba(243, 128, 168, .4);
  }
}

@media (prefers-reduced-motion: reduce) {
  .shop-now-button-link .image-3,
  .shop-now-button-link > img,
  .shop-now-button-search-results .shop-now,
  .shop-now-button-search-results > img {
    animation: none;
  }

  .shop-now-button-link::before,
  .shop-now-button-link::after,
  .shop-now-button-search-results::before,
  .shop-now-button-search-results::after {
    animation: none;
    opacity: .9;
  }
}

.image-7 {
  border-radius: 10px;
}

.cell-7 {
  justify-content: center;
  align-items: center;
}

.quick-stack {
  padding-bottom: 60px;
}

.quick-stack.wf-layout-layout .w-layout-cell {
  justify-content: flex-start;
  align-items: center;
}

.quick-stack .search-result-wrapper {
  width: 100%;
  max-width: 360px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.quick-stack .image-7 {
  width: 100%;
  height: auto;
  display: block;
}

.container-2 {
  text-align: center;
  justify-content: center;
  align-items: center;
  display: flex;
}

.body-3 {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: cover;
}

.cell-10 {
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 991px) {
  .container {
    justify-content: center;
    align-items: center;
  }

  .footer-bottom-b {
    grid-row-gap: 24px;
    flex-direction: column;
  }

  .footer-title {
    margin-bottom: 24px;
  }

  .footer-large-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .footer-scroll-wrapper {
    margin-top: 48px;
    position: static;
  }

  .div-block-2, .div-block-3 {
    width: 50%;
  }

  .search-result-wrapper {
    margin-left: 10px;
    margin-right: 10px;
  }

  .cell-8, .cell-9 {
    justify-content: center;
    align-items: center;
  }
}

@media screen and (max-width: 767px) {
  .footer-block {
    padding: 48px 24px;
  }

  .footer-large-grid {
    grid-column-gap: 24px;
  }
}

@media screen and (max-width: 479px) {
  .container {
    justify-content: flex-start;
    align-items: center;
  }

  .div-block {
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .heading {
    text-align: center;
  }

  .image-5 {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }

  .subscribe-form-wrapper {
    flex-flow: column;
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
    display: flex;
  }

  .newsletter-section .form.newsletter-form {
    flex-direction: column;
    border-radius: 16px;
    max-width: none;
    overflow: hidden;
  }

  .newsletter-section .newsletter-input {
    border-radius: 16px 16px 0 0;
    text-align: center;
  }

  .newsletter-section .newsletter-submit {
    border-radius: 0 0 16px 16px;
    width: 100%;
  }

  .footer-menu {
    flex-direction: column;
  }

  .footer-large-grid {
    grid-template-columns: 1fr;
  }

  .heading-2 {
    padding-left: 10px;
    padding-right: 10px;
    font-size: 26px;
  }

  .bold-text {
    font-size: 18px;
  }
}

#w-node-_0357dc84-d3b3-e39d-b2bf-66ce4cb9148f-ffcb9db3 {
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
}

#w-node-c26d9727-4b36-f8c4-e8ef-a5c67847f754-ffcb9db3 {
  grid-row: span 2 / span 2;
}

#w-node-cb975e36-e8a9-d025-7c1f-edc96d6e7902-ffcb9db3 {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

#w-node-d460d4ff-71ec-a6f3-8163-91533d9d424b-ffcb9db3 {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

#w-node-_06301a40-8e7a-aafa-6fba-b2005993c640-ffcb9db3, #w-node-_06301a40-8e7a-aafa-6fba-b2005993c650-ffcb9db3, #w-node-_06301a40-8e7a-aafa-6fba-b2005993c65d-ffcb9db3, #w-node-_06301a40-8e7a-aafa-6fba-b2005993c66a-ffcb9db3, #w-node-_06301a40-8e7a-aafa-6fba-b2005993c677-ffcb9db3, #w-node-_06301a40-8e7a-aafa-6fba-b2005993c678-ffcb9db3 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b332b4a2-bd24-989d-5fd7-2e0abe3410f1-7422200e {
  grid-template-rows: auto auto auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

#w-node-f9e4070e-851c-3c27-a8bf-7d8ed7d71f02-7422200e, #w-node-f9e4070e-851c-3c27-a8bf-7d8ed7d71f12-7422200e, #w-node-f9e4070e-851c-3c27-a8bf-7d8ed7d71f1f-7422200e, #w-node-f9e4070e-851c-3c27-a8bf-7d8ed7d71f2c-7422200e, #w-node-f9e4070e-851c-3c27-a8bf-7d8ed7d71f39-7422200e, #w-node-f9e4070e-851c-3c27-a8bf-7d8ed7d71f3a-7422200e {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-ee42393e-6524-9266-2fa4-c57113c39338-0b8db76b {
  grid-template-rows: auto auto auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

#w-node-_22d206e2-f604-6724-ceb3-20fc9a3aaa76-0b8db76b, #w-node-_22d206e2-f604-6724-ceb3-20fc9a3aaa86-0b8db76b, #w-node-_22d206e2-f604-6724-ceb3-20fc9a3aaa93-0b8db76b, #w-node-_22d206e2-f604-6724-ceb3-20fc9a3aaaa0-0b8db76b, #w-node-_22d206e2-f604-6724-ceb3-20fc9a3aaaad-0b8db76b, #w-node-_22d206e2-f604-6724-ceb3-20fc9a3aaaae-0b8db76b {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-ec94097a-4da5-0409-b92b-1df36a1db261-7ce33e8e {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
}

@media screen and (max-width: 991px) {
  #w-node-d460d4ff-71ec-a6f3-8163-91533d9d424b-ffcb9db3 {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }

  .best-sellers-section #w-node-d460d4ff-71ec-a6f3-8163-91533d9d424b-ffcb9db3 .w-layout-cell:nth-child(3) {
    grid-column: 1 / -1;
  }

  #w-node-b332b4a2-bd24-989d-5fd7-2e0abe3410f1-7422200e,
  #w-node-ee42393e-6524-9266-2fa4-c57113c39338-0b8db76b {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }
}

@media screen and (max-width: 767px) {
  #w-node-b332b4a2-bd24-989d-5fd7-2e0abe3410f1-7422200e,
  #w-node-ee42393e-6524-9266-2fa4-c57113c39338-0b8db76b {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }
}

@media screen and (max-width: 600px) {
  #w-node-b332b4a2-bd24-989d-5fd7-2e0abe3410f1-7422200e,
  #w-node-ee42393e-6524-9266-2fa4-c57113c39338-0b8db76b {
    grid-template-columns: 1fr;
  }

  .quick-stack.w-layout-layout {
    grid-column-gap: 14px;
    grid-row-gap: 18px;
    padding-left: 12px;
    padding-right: 12px;
  }

  .quick-stack .search-result-wrapper {
    max-width: none;
  }
}

@media screen and (max-width: 479px) {
  #w-node-_0357dc84-d3b3-e39d-b2bf-66ce4cb9148f-ffcb9db3 {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  #w-node-c26d9727-4b36-f8c4-e8ef-a5c67847f754-ffcb9db3 {
    grid-row: span 2 / span 2;
  }

  #w-node-cb975e36-e8a9-d025-7c1f-edc96d6e7902-ffcb9db3, #w-node-d460d4ff-71ec-a6f3-8163-91533d9d424b-ffcb9db3 {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  #w-node-b332b4a2-bd24-989d-5fd7-2e0abe3410f1-7422200e, #w-node-ee42393e-6524-9266-2fa4-c57113c39338-0b8db76b {
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr;
  }
}

.product-detail-breadcrumb-wrap {
  padding-top: 16px;
  padding-bottom: 8px;
}

.product-breadcrumb {
  color: #54404b;
  letter-spacing: .02em;
  justify-content: center;
  align-items: center;
  gap: 10px;
  font-family: Bitter, serif;
  font-size: 15px;
  display: flex;
  flex-wrap: wrap;
}

.product-breadcrumb a {
  color: #f380a8;
  font-weight: 600;
  text-decoration: none;
  transition: color .25s;
}

.product-breadcrumb a:hover {
  color: #ec038c;
}

.product-breadcrumb-sep {
  color: #fcaecd;
  font-size: 12px;
  line-height: 1;
}

.product-breadcrumb-current {
  color: #353b41;
  font-weight: 600;
}

.product-detail-main {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: cover;
  padding: 32px 16px 56px;
}

.product-detail-inner {
  max-width: 1100px;
}

.product-detail-grid {
  grid-column-gap: 48px;
  grid-row-gap: 36px;
  grid-template-rows: auto;
  grid-template-columns: 1.05fr 1fr;
  grid-auto-columns: 1fr;
  align-items: start;
  display: grid;
}

.product-gallery-main {
  background-image: linear-gradient(#ffffffd9, #ffffffd9), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 20px;
  padding: 20px;
  box-shadow: 0 24px 64px #f380a833;
}

.product-gallery-main-img {
  border-radius: 14px;
  width: 100%;
  max-height: 520px;
  object-fit: cover;
  display: block;
}

.product-gallery-thumbs {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
  display: flex;
}

.product-thumb {
  border: 3px solid #fff0;
  border-radius: 12px;
  padding: 0;
  transition: border-color .2s, box-shadow .2s;
  overflow: hidden;
  background: none;
}

.product-thumb:hover,
.product-thumb.is-active {
  border-color: #f380a8;
  box-shadow: 0 8px 24px #fcaecd59;
}

.product-thumb img {
  object-fit: cover;
  width: 76px;
  height: 76px;
  display: block;
}

.product-info {
  background-image: linear-gradient(rgba(255, 249, 252, .97), rgba(255, 249, 252, .97)), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 20px;
  padding: 28px 28px 32px;
  box-shadow: 0 20px 56px #ee9ac126;
}

.product-badge {
  color: #ec038c;
  letter-spacing: .06em;
  text-transform: uppercase;
  background-color: #ffecf7;
  border-radius: 999px;
  margin-bottom: 12px;
  padding: 6px 14px;
  font-family: Bitter, serif;
  font-size: 11px;
  font-weight: 700;
  display: inline-block;
}

.product-title {
  text-align: left;
  margin-top: 0;
  margin-bottom: 8px;
  font-size: clamp(2rem, 4vw, 2.75rem);
  line-height: 1.15;
}

.product-price {
  margin-bottom: 16px;
}

.product-price-current {
  color: #ec038c;
  font-family: Changa One, Impact, sans-serif;
  font-size: 28px;
}

.product-lead {
  color: #54404b;
  border-bottom: 1px solid #fcaecd66;
  margin-bottom: 22px;
  padding-bottom: 22px;
  font-family: Bitter, serif;
  font-size: 16px;
  line-height: 1.65;
}

.product-variants {
  flex-direction: column;
  gap: 18px;
  margin-bottom: 22px;
  display: flex;
}

.variant-group {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.variant-label {
  color: #f380a8;
  letter-spacing: .02em;
  font-family: Great Vibes, cursive;
  font-size: 22px;
}

.variant-pills {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}

.variant-pill {
  color: #54404b;
  cursor: pointer;
  background-color: #fff;
  border: 2px solid #fff;
  border-radius: 999px;
  padding: 8px 18px;
  font-family: Bitter, serif;
  font-size: 14px;
  font-weight: 600;
  transition: background-color .2s, border-color .2s, color .2s, box-shadow .2s;
  box-shadow: 0 2px 12px #f8cedc59;
}

.variant-pill:hover {
  border-color: #fcaecd;
}

.variant-pill.is-selected {
  color: #fff;
  background-image: linear-gradient(135deg, #fcaecd, #f380a8 45%, #f8cedc);
  border-color: #fff;
  box-shadow: 0 6px 20px #f380a855;
}

.product-qty-row {
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
  display: flex;
  flex-wrap: wrap;
}

.qty-control {
  border: 2px solid #fff;
  border-radius: 999px;
  align-items: center;
  gap: 4px;
  padding: 4px 6px;
  display: inline-flex;
  box-shadow: 0 4px 16px #fcaecd40;
}

.qty-btn {
  color: #ec038c;
  cursor: pointer;
  background-color: #ffecf7;
  border: none;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  font-family: Bitter, serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  transition: background-color .2s;
}

.qty-btn:hover {
  background-color: #fcaecd;
}

.qty-value {
  min-width: 28px;
  font-family: Bitter, serif;
  font-size: 17px;
  font-weight: 700;
  text-align: center;
}

.product-actions {
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 24px;
  display: flex;
}

.product-add-cart-btn {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  border: none;
  border-radius: 12px;
  padding: 16px 32px;
  min-width: 220px;
  max-width: 100%;
  background-image: linear-gradient(135deg, #fcaecd, #f380a8 42%, #ec038c);
  box-shadow: 0 4px 18px #f380a855, 0 0 0 1px #ffffffaa;
  transition: transform .25s ease, box-shadow .25s ease;
}

.product-add-cart-btn:hover {
  transform: scale(1.03);
  box-shadow: 0 8px 26px #f380a877, 0 0 0 1px #fff;
}

.product-add-cart-btn:focus-visible {
  outline: 2px solid #ec038c;
  outline-offset: 3px;
}

.product-add-cart-label {
  font-family: Changa One, Impact, sans-serif;
  font-size: clamp(1.05rem, 2.4vw, 1.3rem);
  color: #fff;
  letter-spacing: .06em;
  text-shadow: 0 1px 2px #00000018;
}

.product-wishlist {
  color: #f380a8;
  cursor: pointer;
  background-color: #fff;
  border: 2px solid #fcaecd;
  border-radius: 999px;
  align-items: center;
  gap: 10px;
  padding: 10px 20px;
  font-family: Bitter, serif;
  font-size: 15px;
  font-weight: 600;
  transition: background-color .2s, border-color .2s, color .2s;
  display: flex;
}

.product-wishlist:hover {
  color: #fff;
  background-color: #f380a8;
  border-color: #f380a8;
}

.product-wishlist:hover .product-wishlist-icon {
  filter: brightness(0) invert(1);
}

.product-wishlist-icon {
  flex: none;
}

.product-wishlist.is-saved {
  color: #ec038c;
  border-color: #ec038c;
  background-color: #fff5fa;
}

.product-wishlist.is-saved:hover {
  color: #fff;
  background-color: #ec038c;
  border-color: #ec038c;
}

.result-card-favorite {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
  width: 40px;
  height: 40px;
  border: 2px solid #fff;
  border-radius: 999px;
  background-color: #ffffffe6;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  padding: 0;
  display: flex;
  box-shadow: 0 2px 12px #f380a840;
}

.result-card-favorite:hover {
  border-color: #fcaecd;
}

.result-card-favorite.is-saved {
  background-color: #ec038c;
  border-color: #ec038c;
}

.result-card-favorite.is-saved img {
  filter: brightness(0) invert(1);
}

.product-trust {
  grid-row-gap: 8px;
  color: #54404b;
  margin: 0;
  padding: 0;
  font-family: Bitter, serif;
  font-size: 14px;
  line-height: 1.5;
  list-style: none;
}

.product-trust-item {
  position: relative;
  padding-left: 22px;
}

.product-trust-item::before {
  content: "♥";
  color: #fcaecd;
  font-size: 12px;
  position: absolute;
  left: 0;
  top: .35em;
}

.product-detail-accordions {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: cover;
  padding: 40px 16px 48px;
}

.product-detail-accordions-inner {
  max-width: 720px;
}

.product-accordions-heading {
  margin-bottom: 20px;
}

.product-accordion {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.product-accordion-item {
  background-image: linear-gradient(#fffffff2, #fffffff2), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 32px #f380a822;
}

.product-accordion-summary {
  color: #54404b;
  cursor: pointer;
  padding: 16px 20px;
  font-family: Bitter, serif;
  font-size: 17px;
  font-weight: 700;
  list-style: none;
}

.product-accordion-summary::-webkit-details-marker {
  display: none;
}

.product-accordion-summary::after {
  content: "+";
  color: #f380a8;
  float: right;
  font-weight: 700;
}

.product-accordion-item[open] .product-accordion-summary::after {
  content: "−";
}

.product-accordion-body {
  border-top: 1px solid #fcaecd59;
  padding: 0 20px 18px;
}

.product-accordion-text {
  color: #54404b;
  margin: 14px 0 0;
  font-family: Bitter, serif;
  font-size: 15px;
  line-height: 1.65;
}

.product-related-section {
  padding-bottom: 48px;
}

.product-related-section .search-result-wrapper {
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.product-related-grid.wf-layout-layout {
  grid-template-rows: auto;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-column-gap: 24px;
  grid-row-gap: 28px;
  width: 100%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
  box-sizing: border-box;
}

.product-related-section .product-related-card {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}

.product-related-section .product-related-card .image-7 {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  aspect-ratio: 1;
}

.product-related-section .product-related-card .text-block-2 {
  font-size: clamp(14px, 2.2vw, 17px);
  text-align: center;
  margin-top: 8px;
}

.product-related-section .product-related-card .shop-now-button-search-results {
  width: 100%;
  max-width: 200px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.product-related-section .product-related-card .shop-now,
.product-related-section .product-related-card .shop-now-button-search-results > img {
  width: 100%;
  max-width: 200px;
  height: auto;
  margin-top: 8px;
  margin-bottom: 8px;
}

@media screen and (max-width: 991px) {
  .product-detail-grid {
    grid-template-columns: 1fr;
  }

  .product-gallery-main-img {
    max-height: 420px;
  }

  .product-related-grid.wf-layout-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media screen and (max-width: 767px) {
  .product-info {
    padding: 22px 18px 26px;
  }

  .product-related-grid.wf-layout-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}

.cart-page-main {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: cover;
  padding: 28px 16px 56px;
}

.cart-page-inner {
  max-width: 1100px;
}

.cart-page-heading {
  margin-top: 0;
  margin-bottom: 8px;
}

.cart-page-lead {
  color: #54404b;
  text-align: center;
  margin-top: 0;
  margin-bottom: 28px;
  font-family: Bitter, serif;
  font-size: 16px;
  line-height: 1.6;
}

.contact-page-main {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: cover;
  padding: 28px 16px 56px;
}

.contact-page-inner {
  max-width: 1100px;
}

.contact-page-heading {
  margin-top: 0;
  margin-bottom: 8px;
  text-align: center;
}

.contact-page-lead {
  color: #54404b;
  text-align: center;
  margin-top: 0;
  margin-bottom: 32px;
  font-family: Bitter, serif;
  font-size: 16px;
  line-height: 1.6;
}

.contact-layout {
  grid-column-gap: 32px;
  grid-row-gap: 28px;
  grid-template-columns: 1fr 320px;
  grid-template-rows: auto;
  align-items: start;
  display: grid;
}

.contact-form-card,
.contact-aside-card,
.giveaways-rules-card,
.giveaways-aside-card {
  background-image: linear-gradient(#fffffff2, #fffffff2), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 16px;
  padding: 24px 22px 28px;
  box-shadow: 0 10px 32px #f380a822;
}

.contact-card-title {
  margin-top: 0;
  margin-bottom: 18px;
  font-size: clamp(1.5rem, 4vw, 2rem);
  text-align: left;
}

.contact-page-form {
  flex-direction: column;
  align-items: stretch;
  gap: 0;
}

.contact-field-group {
  margin-bottom: 18px;
}

.contact-field-group .field-label {
  display: block;
  margin-bottom: 6px;
}

.contact-optional {
  font-family: Bitter, serif;
  font-size: 14px;
  color: #7a656e;
}

.contact-page-form .text-field {
  width: 100%;
  border-radius: 10px;
  box-sizing: border-box;
  margin-bottom: 0;
  min-height: 0;
}

.contact-page-form textarea.text-field {
  min-height: 140px;
  resize: vertical;
  padding-top: 12px;
  padding-bottom: 12px;
}

.contact-submit {
  border-radius: 10px;
  margin-top: 4px;
  padding-left: 28px;
  padding-right: 28px;
  align-self: flex-start;
}

.contact-aside-text {
  color: #54404b;
  margin: 0 0 20px;
  font-family: Bitter, serif;
  font-size: 15px;
  line-height: 1.6;
}

.contact-aside-block {
  margin-bottom: 20px;
}

.contact-aside-block:last-child {
  margin-bottom: 0;
}

.contact-aside-label {
  color: #353b41;
  margin-bottom: 6px;
  font-family: Bitter, serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.contact-aside-link {
  color: #ec038c;
  font-family: Bitter, serif;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  transition: color .2s;
}

.contact-aside-link:hover {
  color: #f380a8;
}

.contact-aside-hours {
  color: #54404b;
  margin: 0;
  font-family: Bitter, serif;
  font-size: 15px;
  line-height: 1.55;
}

.contact-aside-shop {
  display: inline-block;
  margin-top: 4px;
}

.contact-aside-shop .image-3 {
  max-width: 200px;
}

.gift-card-hint {
  color: #7a656e;
  margin: 0 0 16px;
  font-family: Bitter, serif;
  font-size: 14px;
  line-height: 1.55;
}

.gift-card-section-title {
  margin-top: 8px;
}

.gift-card-amount-grid {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto;
  margin-bottom: 14px;
  display: grid;
}

.gift-card-amount-btn {
  color: #54404b;
  cursor: pointer;
  background-color: #fff;
  border: 2px solid #f380a8;
  border-radius: 10px;
  padding: 12px 10px;
  font-family: Bitter, serif;
  font-size: 16px;
  font-weight: 700;
  transition: border-color .2s, color .2s, background .2s;
}

.gift-card-amount-btn:hover,
.gift-card-amount-btn:focus-visible {
  color: #ec038c;
  border-color: #ec038c;
  outline: none;
}

.gift-card-amount-btn.is-selected {
  color: #fff;
  background-image: linear-gradient(145deg, #ec038c, #f380a8);
  border-color: #ec038c;
}

.gift-card-amount-btn-wide {
  grid-column: 1 / -1;
}

.gift-card-custom-panel[hidden] {
  display: none !important;
}

.gift-card-qty-input {
  max-width: 120px;
}

.gift-card-summary-price {
  color: #353b41;
  margin: 0 0 16px;
  font-family: Bitter, serif;
  font-size: 1.35rem;
  font-weight: 700;
}

.gift-card-add-wrap {
  margin-top: 4px;
}

.gift-card-add-wrap .submit-button {
  border-radius: 10px;
  width: 100%;
  max-width: 320px;
}

.gift-card-feedback {
  color: #2d6a4f;
  min-height: 1.4em;
  margin-top: 12px;
  font-family: Bitter, serif;
  font-size: 15px;
}

.gift-card-aside-visual {
  text-align: center;
  margin-bottom: 16px;
}

.gift-card-aside-img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
}

.gift-card-aside-tight {
  margin-bottom: 0;
}

.giveaways-page-main {
  background-image: url('../images/herobg.png');
  background-position: 0 0;
  background-size: cover;
  padding: 28px 16px 56px;
}

.giveaways-page-inner {
  max-width: 1100px;
}

.giveaways-hero-wrap {
  border: 2px solid #fff;
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 28px;
  box-shadow: 0 10px 32px #f380a822;
  text-align: center;
  background-image: linear-gradient(#fffffff2, #fffffff2), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
}

.giveaways-hero-img {
  width: 100%;
  max-width: 720px;
  height: auto;
  vertical-align: middle;
  display: inline-block;
}

.giveaways-layout {
  grid-column-gap: 32px;
  grid-row-gap: 28px;
  grid-template-columns: 1fr 320px;
  grid-template-rows: auto;
  align-items: start;
  display: grid;
}

.giveaways-steps {
  color: #54404b;
  margin: 0;
  padding-left: 1.25em;
  font-family: Bitter, serif;
  font-size: 15px;
  line-height: 1.65;
}

.giveaways-steps li {
  margin-bottom: 12px;
}

.giveaways-steps li:last-child {
  margin-bottom: 0;
}

.giveaways-disclaimer {
  color: #7a656e;
  margin: 20px 0 0;
  font-family: Bitter, serif;
  font-size: 13px;
  line-height: 1.55;
}

.giveaways-aside-highlight {
  color: #ec038c;
  font-family: Bitter, serif;
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 12px;
  line-height: 1.5;
}

.giveaways-newsletter-line {
  margin-bottom: 0;
}

.cart-layout {
  grid-column-gap: 32px;
  grid-row-gap: 28px;
  grid-template-columns: 1fr 340px;
  grid-template-rows: auto;
  align-items: start;
  display: grid;
}

.cart-lines {
  grid-row-gap: 16px;
  flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.cart-line {
  background-image: linear-gradient(#fffffff2, #fffffff2), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 16px;
  grid-column-gap: 20px;
  grid-row-gap: 12px;
  grid-template-columns: 100px 1fr auto auto;
  align-items: center;
  padding: 16px 18px;
  display: grid;
  box-shadow: 0 10px 32px #f380a822;
}

.cart-line-image-wrap {
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 16px #fcaecd40;
}

.cart-line-image {
  aspect-ratio: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.cart-line-body {
  min-width: 0;
}

.cart-line-title {
  color: #353b41;
  font-family: Bitter, serif;
  font-size: 18px;
  font-weight: 700;
  text-decoration: none;
  transition: color .2s;
  display: inline-block;
}

.cart-line-title:hover {
  color: #ec038c;
}

.cart-line-options {
  color: #54404b;
  margin: 6px 0 4px;
  font-family: Bitter, serif;
  font-size: 14px;
  line-height: 1.45;
}

.cart-line-price-each {
  color: #f380a8;
  margin: 0;
  font-family: Great Vibes, cursive;
  font-size: 22px;
}

.cart-line-qty {
  flex-direction: column;
  align-items: center;
  gap: 8px;
  display: flex;
}

.cart-line-qty-label {
  font-size: 18px;
}

.cart-line-total-col {
  text-align: right;
  min-width: 88px;
}

.cart-line-line-total {
  color: #ec038c;
  margin: 0 0 10px;
  font-family: Changa One, Impact, sans-serif;
  font-size: 20px;
}

.cart-remove {
  color: #f380a8;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  font-family: Bitter, serif;
  font-size: 14px;
  font-weight: 600;
  text-decoration: underline;
  transition: color .2s;
}

.cart-remove:hover {
  color: #ec038c;
}

.cart-summary {
  background-image: linear-gradient(#fffffff2, #fffffff2), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 16px;
  padding: 22px 22px 26px;
  position: sticky;
  top: 16px;
  box-shadow: 0 16px 48px #f380a828;
}

.cart-summary-title {
  color: #353b41;
  text-align: left;
  margin-top: 0;
  margin-bottom: 18px;
  font-family: Great Vibes, cursive;
  font-size: 32px;
}

.cart-summary-rows {
  border-bottom: 1px solid #fcaecd59;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 18px;
  padding-bottom: 16px;
  display: flex;
}

.cart-summary-row {
  color: #54404b;
  justify-content: space-between;
  align-items: baseline;
  font-family: Bitter, serif;
  font-size: 15px;
  display: flex;
}

.cart-summary-row strong {
  color: #353b41;
  font-weight: 700;
}

.cart-summary-total {
  color: #ec038c;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 20px;
  font-family: Changa One, Impact, sans-serif;
  font-size: 22px;
  display: flex;
}

.cart-summary-note {
  color: #54404b;
  margin: -8px 0 16px;
  font-family: Bitter, serif;
  font-size: 13px;
  line-height: 1.5;
}

.cart-checkout-wrap {
  margin-bottom: 16px;
}

.cart-checkout-wrap .cart-checkout-btn {
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  border-radius: 10px;
  padding-top: 14px;
  padding-bottom: 14px;
  display: block;
  text-decoration: none;
}

.cart-continue {
  color: #f380a8;
  text-align: center;
  font-family: Bitter, serif;
  font-size: 15px;
  font-weight: 600;
  display: block;
}

.cart-continue:hover {
  color: #ec038c;
}

.cart-promo {
  margin-bottom: 18px;
}

.cart-promo-label {
  color: #f380a8;
  margin-bottom: 8px;
  font-family: Great Vibes, cursive;
  font-size: 22px;
  display: block;
}

.cart-promo-row {
  gap: 0;
  display: flex;
}

.cart-promo-row .text-field {
  flex: 1;
  border: 2px solid #fcaecd;
  border-right: none;
  border-radius: 10px 0 0 10px;
}

.cart-promo-apply {
  color: #fff;
  cursor: pointer;
  background-color: #f380a8;
  border: 2px solid #f380a8;
  border-radius: 0 10px 10px 0;
  padding: 10px 16px;
  font-family: Bitter, serif;
  font-size: 15px;
  font-weight: 700;
  transition: background-color .2s, border-color .2s;
}

.cart-promo-apply:hover {
  background-color: #ec038c;
  border-color: #ec038c;
}

.cart-empty {
  background-image: linear-gradient(#fffffff2, #fffffff2), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  text-align: center;
  border: 2px solid #fff;
  border-radius: 20px;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
  padding: 48px 28px;
  box-shadow: 0 16px 48px #f380a828;
}

.cart-empty-icon {
  color: #fcaecd;
  margin-bottom: 12px;
  font-size: 42px;
  line-height: 1;
}

.cart-empty-title {
  margin-top: 0;
  margin-bottom: 12px;
}

.cart-empty-text {
  color: #54404b;
  margin-top: 0;
  margin-bottom: 24px;
  font-family: Bitter, serif;
  font-size: 16px;
  line-height: 1.6;
}

.cart-empty-actions {
  flex-direction: column;
  align-items: center;
  gap: 16px;
  display: flex;
}

.cart-empty-actions .shop-now-button-link .image-3 {
  max-width: 220px;
}

.link.cart-nav-count {
  min-width: 1.25em;
  text-align: center;
}

.nav-wishlist-heart {
  vertical-align: middle;
  display: inline-block;
}

.link.wishlist-nav-count {
  min-width: 1.25em;
  text-align: center;
}

.nav-cart-link {
  vertical-align: middle;
  display: inline-block;
  position: relative;
}

.nav-cart-badge.cart-nav-count {
  z-index: 1;
  color: #fff;
  background-color: #ec038c;
  border-radius: 999px;
  min-width: 1.25em;
  padding: 2px 6px;
  font-size: 12px;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  position: absolute;
  top: -8px;
  right: -6px;
}

.wishlist-line {
  grid-template-columns: 100px 1fr auto;
}

.wishlist-line-actions {
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  display: flex;
}

.wishlist-view-product {
  color: #ec038c;
  font-family: Bitter, serif;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: color .2s;
}

.wishlist-view-product:hover {
  color: #f380a8;
}

.wishlist-items-panel {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

.wishlist-page-main .wishlist-items-panel .cart-lines {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-column-gap: 24px;
  grid-row-gap: 24px;
}

.wishlist-page-main .wishlist-items-panel .wishlist-line {
  grid-template-columns: 1fr;
  grid-template-rows: none;
  flex-flow: column;
  align-items: center;
  text-align: center;
  display: flex;
  margin: 0;
}

.wishlist-page-main .wishlist-items-panel .cart-line-image-wrap {
  width: 100%;
  max-width: 220px;
}

.wishlist-page-main .wishlist-items-panel .cart-line-body {
  width: 100%;
}

.wishlist-page-main .wishlist-items-panel .cart-line-title {
  display: block;
}

.wishlist-page-main .wishlist-items-panel .wishlist-line-actions {
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin-top: 8px;
}

@media screen and (max-width: 991px) {
  .wishlist-page-main .wishlist-items-panel .cart-lines {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .wishlist-line {
    grid-template-columns: 88px 1fr;
    grid-template-rows: auto auto;
  }

  .wishlist-line-actions {
    grid-column: 1 / -1;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }

  .cart-layout {
    grid-template-columns: 1fr;
  }

  .contact-layout {
    grid-template-columns: 1fr;
  }

  .gift-card-amount-grid {
    grid-template-columns: 1fr 1fr;
  }

  .giveaways-layout {
    grid-template-columns: 1fr;
  }

  .contact-aside-card {
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
  }

  .giveaways-aside-card {
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
  }

  .cart-summary {
    position: static;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
  }

  .cart-line {
    grid-template-columns: 88px 1fr;
    grid-template-rows: auto auto;
  }

  .cart-line-qty {
    grid-column: 1 / -1;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
  }

  .cart-line-total-col {
    grid-column: 2;
    grid-row: 1;
    text-align: right;
    align-self: start;
  }
}

@media screen and (max-width: 767px) {
  .wishlist-page-main .wishlist-items-panel .cart-lines {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media screen and (max-width: 479px) {
  .cart-line {
    grid-template-columns: 72px 1fr;
  }

  .wishlist-line {
    grid-template-columns: 72px 1fr;
  }

  .cart-line-title {
    font-size: 16px;
  }
}

@media (prefers-reduced-motion: no-preference) {
  @keyframes home-fade-rise {
    from {
      opacity: 0;
      transform: translateY(28px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @keyframes home-card-drop {
    from {
      opacity: 0;
      transform: translateY(-52px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @keyframes hero-mannequin-pop {
    0%, 100% {
      transform: translateY(0) scale(1) rotate(-0.6deg);
      filter: drop-shadow(0 6px 18px rgba(243, 128, 168, .3));
    }

    50% {
      transform: translateY(-14px) scale(1.035) rotate(0.6deg);
      filter: drop-shadow(0 14px 36px rgba(252, 174, 205, .55)) drop-shadow(0 0 22px rgba(255, 255, 255, .4));
    }
  }

  body.body .hero-section .w-layout-cell {
    animation: home-fade-rise .78s cubic-bezier(.22, 1, .36, 1) both;
  }

  body.body .hero-section .w-layout-cell:nth-child(1) {
    animation-delay: .06s;
  }

  body.body .hero-section .w-layout-cell:nth-child(2) {
    animation-delay: .18s;
  }

  body.body .hero-section .w-layout-cell:nth-child(3) {
    animation-delay: .3s;
  }

  body.body .hero-section img.image {
    transform-origin: 50% 88%;
    animation: hero-mannequin-pop 4.2s ease-in-out .5s infinite;
  }

  body.body .div-block .w-layout-cell {
    animation: home-fade-rise .72s cubic-bezier(.22, 1, .36, 1) both;
  }

  body.body .div-block .w-layout-cell:nth-child(1) {
    animation-delay: .4s;
  }

  body.body .div-block .w-layout-cell:nth-child(2) {
    animation-delay: .52s;
  }

  body.body .div-block .w-layout-cell:nth-child(3) {
    animation-delay: .64s;
  }

  body.body .best-sellers-section > .heading {
    animation: home-fade-rise .68s cubic-bezier(.22, 1, .36, 1) both;
    animation-delay: .72s;
  }

  body.body .best-sellers-section .best-seller-card {
    animation: home-card-drop .72s cubic-bezier(.34, 1.2, .64, 1) both;
  }

  body.body .best-sellers-section .w-layout-cell:nth-child(1) .best-seller-card {
    animation-delay: .78s;
  }

  body.body .best-sellers-section .w-layout-cell:nth-child(2) .best-seller-card {
    animation-delay: .92s;
  }

  body.body .best-sellers-section .w-layout-cell:nth-child(3) .best-seller-card {
    animation-delay: 1.06s;
  }

  body.body .footer-image {
    animation: home-fade-rise .8s cubic-bezier(.22, 1, .36, 1) both;
    animation-delay: 1.28s;
  }

  @keyframes footer-ribbon-shimmer {
    0% {
      background-position: 0% 50%;
    }

    100% {
      background-position: 200% 50%;
    }
  }

  .footer-block::before {
    animation: footer-ribbon-shimmer 14s linear infinite;
  }
}

.about-scrapbook-body {
  background-color: #fce8ef;
  background-image:
    radial-gradient(ellipse 100% 80% at 10% 20%, #fff6 0%, transparent 55%),
    radial-gradient(ellipse 70% 60% at 90% 60%, #ffb7d055 0%, transparent 45%),
    radial-gradient(circle at 50% 100%, #f8c4d633 0%, transparent 40%),
    url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='.07'/%3E%3C/svg%3E");
  min-height: 100vh;
}

.about-scrapbook-body .product-detail-breadcrumb-wrap.w-container {
  max-width: 1100px;
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}

.about-scrapbook-body .heart-separator {
  background-repeat: repeat-x;
  background-size: auto 100%;
  background-position: center top;
}

.about-topbar {
  z-index: 100;
  background-color: #fff;
  border-bottom: 1px solid #fcaecd66;
  padding-top: 12px;
  padding-bottom: 12px;
  position: relative;
  box-shadow: 0 4px 24px #f380a814;
}

.about-topbar-inner {
  max-width: 1100px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px 20px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
}

.about-topbar-logo-img {
  max-height: 52px;
  width: auto;
  display: block;
}

.about-topbar-nav {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px 20px;
  display: flex;
}

.about-topbar-link {
  color: #353b41;
  font-family: "Playfair Display", Bitter, Georgia, serif;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none;
  transition: color .2s;
}

.about-topbar-link:hover {
  color: #ec038c;
}

.about-topbar-link--current {
  color: #ec038c;
  font-weight: 700;
}

.about-topbar-actions {
  align-items: center;
  gap: 10px;
  display: flex;
}

.about-topbar-heart {
  opacity: .85;
}

.about-topbar-count {
  color: #353b41;
  font-family: Bitter, serif;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.about-topbar-cart-label {
  color: #353b41;
  font-family: "Playfair Display", Bitter, Georgia, serif;
  font-size: 15px;
  text-decoration: none;
}

.about-topbar-cart-label:hover {
  color: #ec038c;
}

.about-topbar-burger {
  display: none;
  background: none;
  border: none;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  padding: 8px;
  cursor: pointer;
}

.about-topbar-burger-line {
  background-color: #353b41;
  width: 22px;
  height: 2px;
  border-radius: 1px;
  display: block;
}

.about-topbar-drawer {
  background-color: #fff;
  border-bottom: 1px solid #fcaecd66;
  padding: 16px 20px 20px;
}

.about-topbar-drawer-nav {
  flex-direction: column;
  gap: 14px;
  display: flex;
}

.about-topbar-drawer-link {
  color: #353b41;
  font-family: Bitter, serif;
  font-size: 17px;
  font-weight: 600;
  text-decoration: none;
}

.about-topbar-drawer-link:hover {
  color: #ec038c;
}

.about-scrapbook-bg {
  position: relative;
  overflow-x: clip;
  padding-bottom: 48px;
}

.about-deco {
  z-index: 0;
  opacity: .35;
  pointer-events: none;
  font-size: 22px;
  line-height: 1;
  position: absolute;
}

.about-deco--butterfly {
  color: #f380a8;
  top: 12%;
  right: 8%;
  font-size: 28px;
  transform: rotate(12deg);
}

.about-deco--heart1 {
  color: #fcaecd;
  top: 22%;
  left: 4%;
  font-size: 18px;
}

.about-deco--heart2 {
  color: #f380a8;
  bottom: 38%;
  right: 6%;
  font-size: 16px;
}

.about-deco--sparkle1 {
  color: #fff;
  top: 28%;
  left: 18%;
  font-size: 14px;
}

.about-deco--sparkle2 {
  color: #fff;
  top: 40%;
  right: 22%;
  font-size: 12px;
}

.about-deco--flower {
  color: #ec038c;
  bottom: 52%;
  left: 10%;
  font-size: 20px;
  opacity: .25;
}

.about-hero-title-wrap {
  z-index: 1;
  max-width: 1100px;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding: 36px 20px 28px;
  display: flex;
  position: relative;
}

.about-hero-title-cluster {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 16px 24px;
  display: flex;
}

.about-title-side-deco {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  font-size: 32px;
  line-height: 1;
  display: flex;
  flex-shrink: 0;
}

.about-crown {
  filter: drop-shadow(0 2px 4px #f380a844);
}

.about-title-collage {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 6px 8px;
  margin: 0;
  display: flex;
  flex: 0 1 auto;
}

.about-scrap-letter {
  color: #2a2228;
  text-shadow: 0 1px 0 #fff8;
  border: 1px solid #fff;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  min-width: 1.15em;
  min-height: 1.35em;
  padding: 6px 10px;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.75rem, 5vw, 2.75rem);
  font-weight: 700;
  display: inline-flex;
  box-shadow: 3px 5px 0 #f380a833, 0 8px 20px #ec038c22;
}

.about-scrap-letter--1 {
  background-image: linear-gradient(145deg, #ffe0ec, #ffb7d0);
  transform: rotate(-2deg);
}

.about-scrap-letter--2 {
  background-image: linear-gradient(145deg, #fff0f5, #fcaecd);
  transform: rotate(2deg);
}

.about-scrap-letter--3 {
  background-image: linear-gradient(145deg, #ffd6e8, #ff9ec8);
  transform: rotate(-1deg);
}

.about-scrap-letter--4 {
  background-image: linear-gradient(145deg, #fce4ec, #f8bbd9);
  transform: rotate(2deg);
}

.about-scrap-letter--5 {
  background-image: linear-gradient(145deg, #fff5f8, #f48fb1);
  transform: rotate(-2deg);
}

.about-scrap-letter--gap {
  background: none;
  border: none;
  min-width: .35em;
  padding: 0;
  box-shadow: none;
}

.about-scrap-letter--6 {
  background-image: linear-gradient(145deg, #f8bbd9, #f06292);
  color: #fff;
  transform: rotate(1deg);
}

.about-scrap-letter--7 {
  background-image: linear-gradient(145deg, #fce4ec, #ec407a);
  color: #fff;
  transform: rotate(-2deg);
}

.about-main {
  z-index: 1;
  grid-column-gap: 48px;
  grid-row-gap: 36px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding: 20px 20px 48px;
  display: grid;
  position: relative;
}

.about-intro-column {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}

.about-paper {
  position: relative;
}

.about-paper--intro {
  clip-path: polygon(0% 2%, 3% 0%, 98% 1%, 100% 4%, 99% 96%, 97% 100%, 2% 99%, 0% 97%);
  background-image: linear-gradient(#fffef9f5, #fffef9f5), url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)' opacity='.04'/%3E%3C/svg%3E");
  border: 1px solid #fff;
  padding: 32px 28px 36px;
  box-shadow: 6px 10px 28px #54404b18, 0 0 0 1px #fcaecd33;
  transform: rotate(-0.5deg);
}

.about-washi--corner {
  background-image: repeating-linear-gradient(45deg, #ff8fab 0px, #ff8fab 3px, #fff 3px, #fff 6px, #c2185b33 6px, #c2185b33 7px);
  width: 72px;
  height: 22px;
  position: absolute;
  top: -8px;
  left: 24px;
  transform: rotate(-8deg);
  box-shadow: 0 1px 3px #00000014;
}

.about-script-headline {
  color: #3d2a32;
  margin-top: 0;
  margin-bottom: 20px;
  font-family: "Dancing Script", Great Vibes, cursive;
  font-size: clamp(1.85rem, 4vw, 2.5rem);
  font-weight: 600;
  line-height: 1.25;
}

.about-body-text {
  color: #3d2a32;
  margin-bottom: 16px;
  font-family: Bitter, Georgia, serif;
  font-size: 16px;
  line-height: 1.7;
}

.about-body-text:last-of-type {
  margin-bottom: 0;
}

.about-paper-heart {
  color: #fcaecd;
  opacity: .6;
  font-size: 20px;
  position: absolute;
  bottom: 14px;
  right: 20px;
}

.about-visual-column {
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 28px;
  display: flex;
  min-width: 0;
  width: 100%;
}

.about-polaroid {
  background-color: #fff;
  margin: 0;
  padding: 14px 14px 16px;
  position: relative;
  box-shadow: 4px 12px 32px #ec038c22, 0 0 0 1px #0000000a;
}

.about-polaroid--lead {
  max-width: 320px;
  width: 100%;
  padding-bottom: 52px;
  transform: rotate(-2deg);
}

.about-polaroid-inner {
  overflow: hidden;
}

.about-polaroid-img {
  border-radius: 2px;
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 1;
  object-fit: cover;
}

.about-polaroid-label {
  text-align: center;
  margin-top: 14px;
  position: absolute;
  bottom: 12px;
  left: 0;
  right: 0;
}

.about-polaroid-name {
  color: #ec038c;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 20px;
  font-weight: 700;
  display: block;
}

.about-polaroid-role {
  color: #54404b;
  font-family: Bitter, Georgia, serif;
  font-size: 14px;
  font-style: italic;
  display: block;
}

.about-tape {
  z-index: 2;
  opacity: .92;
  position: absolute;
  box-shadow: 0 1px 2px #00000018;
}

.about-tape--1 {
  background-image: repeating-linear-gradient(90deg, #f8bbd9 0px, #f8bbd9 5px, #fff 5px, #fff 10px);
  width: 56px;
  height: 20px;
  top: -10px;
  left: 50%;
  transform: translateX(-50%) rotate(-4deg);
}

.about-tape--2 {
  background-image: repeating-linear-gradient(-55deg, #ce93d8 0px, #ce93d8 4px, #fce4ec 4px, #fce4ec 8px);
  width: 44px;
  height: 18px;
  top: -6px;
  right: 12px;
  transform: rotate(6deg);
}

.about-tape--3 {
  background-image: repeating-linear-gradient(90deg, #ff80ab 0px, #ff80ab 4px, #fff 4px, #fff 8px);
  width: 44px;
  height: 18px;
  top: -6px;
  left: 14px;
  transform: rotate(-5deg);
}

.about-tape--4 {
  background-image: repeating-linear-gradient(90deg, #f48fb1 0px, #f48fb1 5px, #fff 5px, #fff 10px);
  width: 52px;
  height: 18px;
  top: -8px;
  left: 50%;
  transform: translateX(-50%) rotate(3deg);
}

.about-polaroid-sticker {
  color: #ec038c;
  font-size: 18px;
  position: absolute;
  bottom: 48px;
  right: 8px;
  transform: rotate(12deg);
}

.about-polaroid-duo {
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 20px 24px;
  display: flex;
}

.about-polaroid--small {
  max-width: 200px;
  padding-bottom: 28px;
}

.about-polaroid--tilt-r {
  transform: rotate(3deg);
}

.about-polaroid--tilt-l {
  transform: rotate(-3deg);
}

.about-polaroid-flower {
  color: #f380a8;
  font-size: 22px;
  position: absolute;
  bottom: 8px;
  right: 10px;
}

.about-polaroid-heart {
  color: #fcaecd;
  font-size: 18px;
  position: absolute;
  bottom: 10px;
  left: 12px;
}

.about-scallop-wrap {
  max-width: 100%;
  margin-top: 8px;
  margin-bottom: 0;
  padding: 0;
}

.about-scallop {
  background: radial-gradient(circle at 50% 0, transparent 11px, #ffb7d0 11px);
  background-size: 26px 14px;
  background-repeat: repeat-x;
  height: 14px;
}

.about-follow-block {
  z-index: 1;
  text-align: center;
  background-image: linear-gradient(180deg, #ffb7d0cc 0%, #fce8ef 100%);
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding: 40px 20px 48px;
  position: relative;
}

.about-follow-collage {
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 10px;
  margin: 0 0 28px;
  display: flex;
}

.about-scrap-word {
  color: #2a2228;
  border: 1px solid #fff;
  border-radius: 4px;
  padding: 8px 14px 10px;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.15rem, 3vw, 1.5rem);
  font-weight: 700;
  display: inline-block;
  box-shadow: 2px 4px 0 #f380a844, 0 6px 16px #ec038c1a;
}

.about-scrap-word--1 {
  background-image: linear-gradient(135deg, #fff5f8, #fce4ec);
  transform: rotate(-3deg);
}

.about-scrap-word--2 {
  background-image: linear-gradient(135deg, #ffe0ec, #f8bbd9);
  transform: rotate(2deg);
}

.about-scrap-word--3 {
  background-image: linear-gradient(135deg, #fff, #fce4ec);
  transform: rotate(4deg);
}

.about-scrap-word--4 {
  background-image: linear-gradient(135deg, #f8bbd9, #f48fb1);
  color: #fff;
  transform: rotate(-2deg);
}

.about-scrap-word--5 {
  background-image: linear-gradient(135deg, #ec407a, #ad1457);
  color: #fff;
  transform: rotate(3deg);
}

.about-social-row {
  justify-content: center;
  gap: 18px;
  margin-bottom: 28px;
  display: flex;
}

.about-social-btn {
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  width: 52px;
  height: 52px;
  transition: transform .2s, box-shadow .2s;
  display: flex;
  box-shadow: 0 6px 20px #54404b22;
}

.about-social-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 28px #ec038c33;
}

.about-social-btn--ig {
  padding: 0;
}

.about-social-btn--x {
  background-color: #111;
  padding: 0;
}

.about-newsletter-form {
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 0;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.about-newsletter-sr {
  clip: rect(0 0 0 0);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.about-newsletter-input {
  color: #353b41;
  background-color: #fff;
  border: 2px solid #fff;
  border-radius: 10px 0 0 10px;
  flex: 1;
  min-width: 0;
  padding: 14px 18px;
  font-family: Bitter, serif;
  font-size: 16px;
  box-shadow: inset 0 1px 3px #f380a822;
}

.about-newsletter-input::placeholder {
  color: #9e8e96;
}

.about-newsletter-submit {
  color: #fff;
  cursor: pointer;
  background-image: linear-gradient(135deg, #f06292, #ec038c);
  border: 2px solid #fff;
  border-left: none;
  border-radius: 0 10px 10px 0;
  padding: 14px 28px;
  font-family: "Playfair Display", Bitter, serif;
  font-size: 17px;
  font-weight: 700;
  transition: filter .2s;
}

.about-newsletter-submit:hover {
  filter: brightness(1.05);
}

.about-newsletter-thanks {
  color: #353b41;
  margin-top: 16px;
  font-family: Bitter, serif;
  font-size: 16px;
}

.about-bottom {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px 32px;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding: 40px 20px 32px;
  display: flex;
}

.about-polaroid--bottom {
  max-width: 240px;
  padding-bottom: 36px;
  transform: rotate(4deg);
}

.about-bottom-caption {
  color: #3d2a32;
  text-align: center;
  margin-top: 12px;
  font-family: "Dancing Script", Great Vibes, cursive;
  font-size: 1.65rem;
  font-weight: 600;
}

.about-continue-link {
  color: #54404b;
  font-family: Bitter, serif;
  font-size: 17px;
  font-weight: 600;
  text-decoration: none;
  transition: color .2s;
}

.about-continue-link:hover {
  color: #ec038c;
}

.about-mini-footer {
  text-align: center;
  padding: 24px 20px 32px;
}

.about-mini-footer-text {
  color: #54404b;
  margin: 0;
  font-family: Bitter, serif;
  font-size: 14px;
}

.about-mini-footer-a {
  color: #ec038c;
  font-weight: 600;
  text-decoration: none;
}

.about-mini-footer-a:hover {
  text-decoration: underline;
}

@media screen and (max-width: 991px) {
  .about-main {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .about-intro-column {
    order: 1;
  }

  .about-visual-column {
    order: 2;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }

  .about-polaroid--lead {
    transform: rotate(-2deg);
  }
}

@media screen and (max-width: 767px) {
  .about-topbar-nav,
  .about-topbar-actions {
    display: none;
  }

  .about-topbar-burger {
    display: flex;
  }

  .about-newsletter-form {
    flex-direction: column;
    width: 100%;
  }

  .about-newsletter-input {
    border-radius: 10px 10px 0 0;
    border-bottom: none;
  }

  .about-newsletter-submit {
    border-radius: 0 0 10px 10px;
    border: 2px solid #fff;
    border-top: 1px solid #fcaecd66;
  }

  .about-bottom {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .about-hero-title-wrap {
    flex-direction: column;
    align-items: center;
  }

  .about-hero-title-cluster {
    flex-direction: column;
    align-items: center;
  }

  .about-title-side-deco {
    flex-direction: row;
  }
}

.checkout-page-main {
  padding-bottom: 64px;
}

.checkout-page-inner {
  max-width: 1100px;
}

.checkout-page-main .heading,
.order-confirm-main .heading {
  font-family: Bitter, serif;
  font-weight: 700;
}

.checkout-page-main .field-label {
  font-family: Bitter, serif;
  font-size: 14px;
  font-weight: 600;
}

.checkout-page-main .w-input,
.checkout-page-main .w-select {
  font-family: Bitter, serif;
}

.checkout-aside .cart-summary-title {
  font-family: Bitter, serif;
  font-size: clamp(1.25rem, 2.5vw, 1.65rem);
  font-weight: 700;
}

.checkout-stepper {
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 8px 12px;
  max-width: 720px;
  margin: 0 auto 24px;
  padding: 0;
  list-style: none;
  display: flex;
}

.checkout-stepper-item {
  margin: 0;
  padding: 0;
}

.checkout-stepper-sep {
  color: #fcaecd;
  align-self: center;
  margin: 0;
  padding: 0;
  font-size: 14px;
  list-style: none;
}

.checkout-step {
  color: #7a656e;
  cursor: pointer;
  background-image: linear-gradient(#fffffff2, #fffffff2), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 999px;
  align-items: center;
  gap: 10px;
  padding: 10px 18px;
  font-family: Bitter, serif;
  font-size: 14px;
  font-weight: 600;
  transition: color .2s, border-color .2s, box-shadow .2s, background-color .2s;
  display: flex;
  box-shadow: 0 4px 16px #fcaecd33;
}

.checkout-step:hover {
  color: #ec038c;
  border-color: #fcaecd;
}

.checkout-step.is-active {
  color: #fff;
  background-image: linear-gradient(135deg, #fcaecd, #f380a8 45%, #f8cedc);
  border-color: #fff;
  box-shadow: 0 6px 20px #f380a855;
}

.checkout-step.is-done {
  color: #54404b;
  border-color: #fcaecd;
}

.checkout-step-num {
  color: #fff;
  background-color: #ec038c;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 26px;
  height: 26px;
  font-family: Changa One, Impact, sans-serif;
  font-size: 14px;
  line-height: 1;
  display: flex;
}

.checkout-step.is-active .checkout-step-num {
  color: #ec038c;
  background-color: #fff;
}

.checkout-step.is-done .checkout-step-num {
  color: #fff;
  background-color: #f380a8;
}

.checkout-step-text {
  text-align: left;
  white-space: nowrap;
}

.checkout-step-error {
  color: #ad1457;
  text-align: center;
  background-color: #fff0f5;
  border: 1px solid #fcaecd;
  border-radius: 10px;
  max-width: 560px;
  margin: 0 auto 20px;
  padding: 12px 16px;
  font-family: Bitter, serif;
  font-size: 15px;
}

.checkout-layout {
  grid-column-gap: 32px;
  grid-row-gap: 28px;
  grid-template-columns: 1fr 340px;
  align-items: start;
  display: grid;
}

.checkout-panels {
  min-width: 0;
}

.checkout-panel[hidden] {
  display: none !important;
}

.checkout-card {
  background-image: linear-gradient(#fffffff2, #fffffff2), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 16px;
  padding: 24px 22px 28px;
  box-shadow: 0 10px 32px #f380a822;
}

.checkout-card-title {
  text-align: left;
  margin-top: 0;
  margin-bottom: 14px;
  font-size: clamp(1.35rem, 3vw, 1.75rem);
}

.checkout-card-title--spaced {
  margin-top: 28px;
}

.checkout-card-hint {
  color: #54404b;
  margin-top: -6px;
  margin-bottom: 16px;
  font-family: Bitter, serif;
  font-size: 14px;
  line-height: 1.55;
}

.checkout-card-hint--legal {
  font-size: 13px;
}

.checkout-grid-2 {
  grid-column-gap: 16px;
  grid-row-gap: 0;
  grid-template-columns: 1fr 1fr;
  display: grid;
}

.checkout-grid-3 {
  grid-column-gap: 14px;
  grid-row-gap: 0;
  grid-template-columns: 1.4fr 0.6fr 1fr;
  display: grid;
}

.checkout-fieldset {
  border: none;
  margin: 0 0 8px;
  padding: 0;
}

.checkout-fieldset-legend {
  clip: rect(0 0 0 0);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.checkout-radio-card {
  cursor: pointer;
  background-color: #fff;
  border: 2px solid #fff;
  border-radius: 14px;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 12px;
  padding: 14px 16px;
  transition: border-color .2s, box-shadow .2s;
  display: flex;
  box-shadow: 0 2px 12px #f8cedc59;
}

.checkout-radio-card:hover {
  border-color: #fcaecd;
}

.checkout-radio-input {
  accent-color: #ec038c;
  flex: none;
  width: 20px;
  height: 20px;
  margin-top: 2px;
}

.checkout-radio-body {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.checkout-radio-title {
  color: #353b41;
  font-family: Bitter, serif;
  font-size: 16px;
  font-weight: 700;
}

.checkout-radio-desc {
  color: #54404b;
  font-family: Bitter, serif;
  font-size: 13px;
  line-height: 1.45;
}

.checkout-radio-input:checked + .checkout-radio-body .checkout-radio-title {
  color: #ec038c;
}

.checkout-nav-buttons {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-top: 28px;
  display: flex;
}

.checkout-nav-buttons--final {
  justify-content: flex-end;
}

.checkout-link-back {
  color: #f380a8;
  font-family: Bitter, serif;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
}

.checkout-link-back:hover {
  color: #ec038c;
}

.checkout-btn-primary {
  color: #fff;
  background-image: linear-gradient(135deg, #fcaecd, #f380a8 40%, #ec038c);
  border: 2px solid #fff;
  border-radius: 999px;
  padding: 12px 28px;
  font-family: Bitter, serif;
  font-size: 16px;
  font-weight: 700;
  box-shadow: 0 6px 20px #f380a855;
}

.checkout-btn-primary:hover {
  filter: brightness(1.05);
}

.checkout-btn-secondary {
  color: #54404b;
  background-color: #fff;
  border: 2px solid #fcaecd;
  border-radius: 999px;
  padding: 12px 24px;
  font-family: Bitter, serif;
  font-size: 16px;
  font-weight: 600;
}

.checkout-btn-secondary:hover {
  border-color: #f380a8;
  color: #ec038c;
}

.checkout-place-order-btn {
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  line-height: 0;
}

.checkout-place-order-btn .image-3 {
  max-width: 240px;
}

.checkout-aside .checkout-summary-lines {
  border-bottom: 1px solid #fcaecd59;
  flex-direction: column;
  gap: 12px;
  max-height: 280px;
  margin: 0 0 16px;
  padding: 0 0 16px;
  list-style: none;
  display: flex;
  overflow-y: auto;
}

.checkout-summary-line {
  grid-column-gap: 12px;
  grid-template-columns: 48px 1fr auto;
  align-items: center;
  display: grid;
}

.checkout-summary-thumb {
  border-radius: 8px;
  width: 48px;
  height: 48px;
  object-fit: cover;
}

.checkout-summary-line-body {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.checkout-summary-line-title {
  color: #353b41;
  font-family: Bitter, serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}

.checkout-summary-line-meta {
  color: #7a656e;
  font-family: Bitter, serif;
  font-size: 12px;
  line-height: 1.35;
}

.checkout-summary-line-price {
  color: #ec038c;
  font-family: Changa One, Impact, sans-serif;
  font-size: 15px;
}

.checkout-summary-totals {
  margin-bottom: 8px;
}

.checkout-review-block {
  border-top: 1px solid #fcaecd59;
  margin-top: 8px;
  padding-top: 16px;
}

.checkout-review-heading {
  text-align: left;
  color: #f380a8;
  margin: 16px 0 8px;
  font-family: Bitter, serif;
  font-size: 1.125rem;
  font-weight: 700;
}

.checkout-review-heading:first-child {
  margin-top: 0;
}

.checkout-review-fill {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.checkout-review-row {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.checkout-review-label {
  color: #7a656e;
  font-family: Bitter, serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.checkout-review-value {
  color: #54404b;
  font-family: Bitter, serif;
  font-size: 15px;
  line-height: 1.45;
}

.order-confirm-main {
  min-height: 50vh;
  padding-bottom: 64px;
}

.order-confirm-inner {
  max-width: 640px;
}

.order-confirm-kicker {
  color: #fcaecd;
  text-align: center;
  margin: 0 0 8px;
  font-size: 36px;
  line-height: 1;
}

.order-confirm-heading {
  margin-top: 0;
  margin-bottom: 12px;
}

.order-confirm-sub {
  color: #54404b;
  text-align: center;
  max-width: 480px;
  margin: 0 auto 28px;
  font-family: Bitter, serif;
  font-size: 17px;
  line-height: 1.6;
}

.order-confirm-card {
  background-image: linear-gradient(#fffffff2, #fffffff2), url('../images/herobg.png');
  background-position: 0 0, 0 0;
  background-size: auto, auto;
  border: 2px solid #fff;
  border-radius: 16px;
  padding: 28px 24px 32px;
  box-shadow: 0 10px 32px #f380a822;
}

.order-confirm-lead {
  color: #54404b;
  text-align: center;
  margin: 0 0 24px;
  font-family: Bitter, serif;
  font-size: 17px;
  line-height: 1.6;
}

.order-confirm-empty .order-confirm-card {
  text-align: center;
}

.order-confirm-id-label {
  color: #7a656e;
  text-align: center;
  margin: 0 0 4px;
  font-family: Bitter, serif;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.order-confirm-id {
  color: #ec038c;
  text-align: center;
  margin: 0 0 16px;
  font-family: Changa One, Impact, sans-serif;
  font-size: 28px;
}

.order-confirm-total-wrap {
  color: #54404b;
  text-align: center;
  border-bottom: 1px solid #fcaecd59;
  margin: 0 0 20px;
  padding-bottom: 20px;
  font-family: Bitter, serif;
  font-size: 17px;
}

.order-confirm-items-title {
  text-align: left;
  margin-top: 0;
  margin-bottom: 12px;
  font-size: 1.75rem;
}

.order-confirm-lines {
  flex-direction: column;
  gap: 10px;
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
  display: flex;
}

.order-confirm-line {
  color: #54404b;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  font-family: Bitter, serif;
  font-size: 15px;
  display: flex;
}

.order-confirm-line-title {
  flex: 1;
  min-width: 0;
}

.order-confirm-line-price {
  color: #ec038c;
  font-family: Changa One, Impact, sans-serif;
  font-size: 16px;
  flex: none;
}

.order-confirm-note {
  color: #7a656e;
  margin: 0 0 24px;
  font-family: Bitter, serif;
  font-size: 14px;
  line-height: 1.55;
}

.order-confirm-inline-a {
  color: #ec038c;
  font-weight: 600;
}

.order-confirm-actions {
  flex-direction: column;
  align-items: center;
  gap: 14px;
  display: flex;
}

.order-confirm-content[hidden],
.order-confirm-empty[hidden] {
  display: none !important;
}

@media screen and (max-width: 991px) {
  .checkout-layout {
    grid-template-columns: 1fr;
  }

  .checkout-aside {
    position: static;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
  }

  .checkout-grid-3 {
    grid-template-columns: 1fr 1fr;
  }
}

@media screen and (max-width: 767px) {
  .checkout-step-text {
    white-space: normal;
    max-width: 140px;
  }

  .checkout-grid-2,
  .checkout-grid-3 {
    grid-template-columns: 1fr;
  }

  .checkout-nav-buttons--final {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .checkout-place-order-btn .image-3 {
    max-width: 100%;
    width: 100%;
  }
}

@media (pointer: fine) and (hover: hover) {
  * {
    cursor: url("../images/cursor-heart.svg") 16 26, auto !important;
  }

  input[type="text"],
  input[type="email"],
  input[type="search"],
  input[type="password"],
  input[type="tel"],
  input[type="url"],
  input[type="number"],
  textarea {
    cursor: text !important;
  }
}

