/* 保持原有的样式不变 */
.container[data-v-0fbb339c] {
  max-width: 50rem;
  margin: 0 auto;
  background-color: #ffffff;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}
/* --- Header Section --- */
.header[data-v-0fbb339c] {
  background-color: #5bc568;
  padding: 1.667rem;
  color: white;
}
.header-top[data-v-0fbb339c] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
  margin-bottom: 1.667rem;
}
.logo-placeholder[data-v-0fbb339c] {
  width: 40px;
  height: 40px;
  background-color: #d32f2f;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 0.833rem;
  font-weight: bold;
  color: white;
  border: 2px solid white;
  margin-right: 0.833rem;
}
.store-info img[data-v-0fbb339c] {
  width: 1.1667rem;
  height: 0.833rem;
}
.store-info h1[data-v-0fbb339c] {
  margin: 0;
  font-size: 1.333rem;
  font-weight: bold;
}
.store-info p[data-v-0fbb339c] {
  margin: 0.1667rem 0 0;
  font-size: 1rem;
  opacity: 0.9;
}
.main-headline[data-v-0fbb339c] {
  font-size: 2.4333rem;
  font-weight: 800;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 0.833rem;
  text-shadow: 2px 2px 0px rgba(0, 0, 0, 0.1);
}
/* --- Hero Image Stack Area --- */
.hero-image-area[data-v-0fbb339c] {
  margin-top: 2.667rem;
  position: relative;
  background-color: #ffffff;
  /* 增加高度以容纳层叠的图片 */
  height: 34.833rem;
  overflow: visible;
  /* 允许图片稍微重叠 */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-top: 0.667rem;
}
/* 图片层叠逻辑 */
.stack-layer[data-v-0fbb339c] {
  position: absolute;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
/* 1. 红色雪人卡片 (放在信封后面或看起来像插在里面) */
.img-red-card[data-v-0fbb339c] {
  max-width: 85%;
  width: 29rem;
  z-index: 10;
  /* 最底层 */
  top: -1rem;
  left: 50%;
  /* 稍微旋转并修正位置以模拟插在信封里的效果 */
  -webkit-transform: translateX(-50%) rotate(-5deg);
          transform: translateX(-50%) rotate(-5deg);
}
/* 2. 绿色信封 (中间层) */
.img-envelope[data-v-0fbb339c] {
  max-width: 93.035%;
  width: 30.4rem;
  z-index: 2;
  top: 8.333rem;
  /* 向下移，盖住红色卡片的底部 */
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
/* 3. 白色文字信纸 (最上层) */
.img-note-card[data-v-0fbb339c] {
  background-size: cover;
  width: 13.333rem;
  height: 11.339rem;
  padding: 1.333rem 3.333rem;
  z-index: 3;
  top: 19.333rem;
  /* 放在最下方，盖住信封和红卡 */
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  /* 添加一点阴影让它更有层次感 */
  -webkit-filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
          filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
}
.img-note-card .note-title[data-v-0fbb339c] {
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
}
.logo-placeholder-img[data-v-0fbb339c] {
  width: 100%;
  border-radius: 50%;
}
.img-note-card .note-content[data-v-0fbb339c] {
  font-size: 1.1667rem;
  font-weight: bold;
  text-align: left;
  margin-top: 2.667rem;
}
.img-note-card .note-footer[data-v-0fbb339c] {
  font-size: 1rem;
  font-weight: bold;
  text-align: left;
  margin-top: 2.667rem;
}
/* --- Pricing Section --- */
.price-section[data-v-0fbb339c] {
  text-align: center;
  padding: 2.5rem 1.667rem;
  background-color: white;
  margin-top: 1.667rem;
  /* 给上面的图片留出空间 */
}
.price[data-v-0fbb339c] {
  font-size: 48px;
  font-weight: bold;
  color: #4CAF50;
  margin-bottom: 15px;
  display: block;
}
.redeem-btn[data-v-0fbb339c] {
  background-color: #5bc568;
  color: white!important;
  font-size: 1.667rem;
  font-weight: bold;
  padding: 15px 60px;
  border: none;
  border-radius: 2.5rem;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  -webkit-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.redeem-btn[data-v-0fbb339c]:hover {
  background-color: #4caf50;
}
.gift-card-info[data-v-0fbb339c] {
  font-size: 1.1667rem;
  padding: 1rem 1.667rem 0 1.667rem;
  text-align: center;
}
.gift-card-info .gift-card-info-barcode[data-v-0fbb339c] {
  margin: 1rem 0 1.5rem 0;
  padding-left: 5rem;
  padding-right: 5rem;
}
.gift-card-info .gift-card-info-barcode img[data-v-0fbb339c] {
  width: 100%;
}
.gift-card-info .gift-card-number-info .gift-card-number-number[data-v-0fbb339c] {
  font-weight: bold;
}
.gift-card-info .gift-card-number-info .gift-card-number-pin[data-v-0fbb339c] {
  font-weight: bold;
}
.gift-card-info .gift-card-info-footer[data-v-0fbb339c] {
  font-size: 1rem;
  margin-top: 1rem;
}
.gift-card-info .gift-card-info-footer a[data-v-0fbb339c] {
  color: #4DB15D;
}
.invite-join-info[data-v-0fbb339c] {
  font-size: 1rem;
  padding: 0.5rem 2rem 0 2rem;
  text-align: center;
}
.invite-join-info .invite-join-info-title[data-v-0fbb339c] {
  font-weight: bold;
  font-size: 1.333rem;
  margin-bottom: 1rem;
}
.invite-join-info .invite-join-info-desc[data-v-0fbb339c] {
  padding: 0 1.5rem 0 1.5rem;
  font-weight: 400;
}
.invite-join-info .invite-join-info-desc a[data-v-0fbb339c] {
  color: #4DB15D;
}
.invite-join-info .invite-join-info-btn[data-v-0fbb339c] {
  margin: 1rem auto;
  /* Frame 13 */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* Auto layout */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 15px 60px;
  background: #FFFFFF;
  border: 1px solid #4DB15D;
  border-radius: 2.5rem;
  /* Inside auto layout */
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  -ms-flex-positive: 0;
      flex-grow: 0;
  font-size: 1.333rem;
  color: #4DB15D;
  font-weight: bold;
}
/* --- Footer Section --- */
.app-download[data-v-0fbb339c] {
  text-align: center;
  padding: 0 1.667rem 1.667rem 0.833rem;
}
.app-buttons[data-v-0fbb339c] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 15px;
  margin: 15px 0;
}
.app-download-desc[data-v-0fbb339c] {
  font-size: 1rem;
  font-weight: 400;
  color: #000000;
}
.app-download-footer[data-v-0fbb339c] {
  font-size: 1rem;
  color: #888;
  padding: 0 0.833rem 0 0.833rem;
}
.store-badge[data-v-0fbb339c] {
  border: 1px solid #ddd;
  border-radius: 0.41667rem;
  padding: 0.41667rem 0.833rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
  color: #333;
  width: 140px;
}
.store-badge img[data-v-0fbb339c] {
  height: 24px;
  margin-right: 0.833rem;
}
.store-text span[data-v-0fbb339c] {
  display: block;
  font-size: 0.833rem;
}
.store-text strong[data-v-0fbb339c] {
  display: block;
  font-size: 14px;
}
.footer[data-v-0fbb339c] {
  padding: 0 1.667rem 2.5rem 1.667rem;
  font-size: 1rem;
  line-height: 1.6;
  color: #333;
  text-align: center;
}
.footer p[data-v-0fbb339c] {
  display: block;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-margin-start: 0px;
          margin-inline-start: 0px;
  -webkit-margin-end: 0px;
          margin-inline-end: 0px;
  unicode-bidi: -webkit-isolate;
  unicode-bidi: -moz-isolate;
  unicode-bidi: isolate;
}
.footer a[data-v-0fbb339c] {
  color: #5bc568;
}
.footer-links[data-v-0fbb339c] {
  margin-top: 1.667rem;
}
.footer-links a[data-v-0fbb339c] {
  margin: 0 0.833rem;
  text-decoration: none;
  border-bottom: 1px solid #5bc568;
}

