/* =========================================================
   FOLLOWERS STORE
   PRODUCT VIP
   ========================================================= */

.product-vip-body {
  overflow-x: hidden;

  background:
    linear-gradient(
      180deg,
      #eef3f9,
      #f5f7fb
    );

  color: #101827;
}


/* =========================================================
   HEADER
   ========================================================= */

.product-vip-body .site-header {
  position: relative;
  z-index: 30;

  border-bottom:
    1px solid
    rgba(255,255,255,.065);

  background:
    #06101d;
}

.product-vip-body
.site-header .nav-shell {
  min-height: 82px;
}

.product-vip-body
.site-header .brand {
  color: #fff;
}

.product-vip-body
.site-header .brand strong {
  color: #fff;
}

.product-vip-body
.site-header .brand small {
  color:
    rgba(196,211,231,.59);
}

.product-vip-body
.site-header .brand-mark {
  color: #fff;

  background:
    linear-gradient(
      145deg,
      #2467e8,
      #3b8dff
    );

  box-shadow:
    0 12px 30px
    rgba(36,103,232,.23);
}

.product-vip-body
.site-header .public-shop-action,

.product-vip-body
.site-header .public-login-link {
  color: #fff;
}

.product-vip-body
.site-header .public-account-button {
  border:
    1px solid
    rgba(255,255,255,.12);

  color: #fff;

  background:
    rgba(255,255,255,.06);
}

.product-vip-body
.site-header .fp-public-menu-trigger {
  border:
    1px solid
    rgba(255,255,255,.13);

  color: #fff;

  background:
    rgba(255,255,255,.06);

  box-shadow: none;
}


/* =========================================================
   PAGE
   ========================================================= */

.product-vip-body
.product-page {
  position: relative;

  min-height: 80vh;

  padding:
    46px 0 90px;

  overflow: hidden;
}

.product-vip-body
.product-page::before {
  content: "";

  position: absolute;

  width: 650px;
  height: 650px;

  top: -280px;
  left: -280px;

  pointer-events: none;

  border-radius: 50%;

  background:
    rgba(47,111,237,.06);

  filter:
    blur(10px);
}


/* =========================================================
   BACK LINK
   ========================================================= */

.product-vip-body
.back-link {
  position: relative;

  display: inline-flex;

  align-items: center;

  gap: 7px;

  margin-bottom: 24px;

  color: #64748b;

  font-size: 11px;

  font-weight: 800;

  text-decoration: none;
}

.product-vip-body
.back-link:hover {
  color: #2467e8;
}


/* =========================================================
   MAIN LAYOUT
   ========================================================= */

.product-vip-body
.product-layout {
  position: relative;

  display: grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(410px,.82fr);

  align-items: start;

  gap: 28px;
}


/* =========================================================
   PRODUCT INFORMATION
   ========================================================= */

.product-vip-body
.product-information {
  position: relative;

  overflow: hidden;

  min-height: 570px;

  padding:
    39px 39px 36px;

  border:
    1px solid
    rgba(255,255,255,.08);

  border-radius: 26px;

  color: #fff;

  background:
    radial-gradient(
      circle at 80% 12%,
      rgba(50,128,255,.19),
      transparent 31%
    ),
    linear-gradient(
      145deg,
      #06101d,
      #0b1930
    );

  box-shadow:
    0 28px 80px
    rgba(15,23,42,.15);
}

.product-vip-instagram
.product-information {
  background:
    radial-gradient(
      circle at 82% 10%,
      rgba(223,70,153,.21),
      transparent 30%
    ),
    radial-gradient(
      circle at 65% 80%,
      rgba(108,72,255,.12),
      transparent 32%
    ),
    linear-gradient(
      145deg,
      #06101d,
      #11152d
    );
}

.product-vip-tiktok
.product-information {
  background:
    radial-gradient(
      circle at 82% 10%,
      rgba(36,210,219,.17),
      transparent 30%
    ),
    linear-gradient(
      145deg,
      #06101d,
      #081a23
    );
}

.product-vip-youtube
.product-information {
  background:
    radial-gradient(
      circle at 82% 10%,
      rgba(255,50,64,.18),
      transparent 30%
    ),
    linear-gradient(
      145deg,
      #07101b,
      #22131c
    );
}


/* GRID TEXTURE */

.product-vip-body
.product-information::before {
  content: "";

  position: absolute;

  inset: 0;

  opacity: .35;

  pointer-events: none;

  background-image:
    linear-gradient(
      rgba(255,255,255,.017) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255,255,255,.017) 1px,
      transparent 1px
    );

  background-size:
    48px 48px;
}


/* PRODUCT ICON */

.product-vip-body
.product-icon-large {
  position: relative;
  z-index: 2;

  display: grid;

  place-items: center;

  width: 72px;
  height: 72px;

  margin:
    0 0 23px;

  border:
    1px solid
    rgba(255,255,255,.12);

  border-radius: 21px;

  color: #fff;

  background:
    rgba(255,255,255,.065);

  box-shadow:
    0 18px 42px
    rgba(0,0,0,.16);

  backdrop-filter:
    blur(14px);

  -webkit-backdrop-filter:
    blur(14px);
}

.product-vip-body
.product-icon-large
.platform-brand-icon {
  width: 36px;
  height: 36px;
}


/* CATEGORY */

.product-vip-body
.category-pill {
  position: relative;
  z-index: 2;

  min-height: 29px;

  padding:
    0 11px;

  border:
    1px solid
    rgba(101,158,255,.18);

  color: #79a9ff;

  background:
    rgba(47,111,237,.08);

  font-size: 8px;

  font-weight: 900;

  letter-spacing: .1em;

  text-transform: uppercase;
}

.product-vip-instagram
.category-pill {
  border-color:
    rgba(224,86,164,.2);

  color: #ed7db9;

  background:
    rgba(206,64,145,.09);
}


/* TITLE */

.product-vip-body
.product-information h1 {
  position: relative;
  z-index: 2;

  max-width: 650px;

  margin:
    17px 0 15px;

  color: #fff;

  font-size:
    clamp(
      43px,
      6vw,
      67px
    );

  line-height: .96;

  letter-spacing: -.057em;
}

.product-vip-body
.product-description {
  position: relative;
  z-index: 2;

  max-width: 600px;

  margin: 0;

  color:
    rgba(196,210,230,.69);

  font-size: 14px;

  line-height: 1.7;
}


/* =========================================================
   FEATURE LIST
   ========================================================= */

.product-vip-body
.feature-list {
  position: relative;
  z-index: 2;

  display: grid;

  gap: 0;

  max-width: 610px;

  margin-top: 32px;

  border-top:
    1px solid
    rgba(255,255,255,.075);
}

.product-vip-body
.feature-list > div {
  display: grid;

  grid-template-columns:
    34px
    minmax(0,1fr);

  align-items: center;

  gap: 12px;

  padding:
    14px 0;

  border-bottom:
    1px solid
    rgba(255,255,255,.075);
}

.product-vip-body
.feature-check {
  display: grid;

  place-items: center;

  width: 30px;
  height: 30px;

  border:
    1px solid
    rgba(84,223,167,.13);

  border-radius: 9px;

  color: #6be5b3;

  background:
    rgba(60,210,153,.07);

  font-size: 11px;
}

.product-vip-body
.feature-list strong {
  display: block;

  color: #edf3fa;

  font-size: 12px;
}

.product-vip-body
.feature-list p {
  margin:
    3px 0 0;

  color:
    rgba(169,185,206,.64);

  font-size: 10px;

  line-height: 1.5;
}


/* =========================================================
   ORDER CARD
   ========================================================= */

.product-vip-body
.order-card {
  position: sticky;

  top: 100px;

  padding: 27px;

  border:
    1px solid
    rgba(15,23,42,.075);

  border-radius: 25px;

  background:
    rgba(255,255,255,.98);

  box-shadow:
    0 25px 70px
    rgba(15,23,42,.11);
}


/* HEADING */

.product-vip-body
.order-card-heading {
  margin-bottom: 20px;

  padding-bottom: 18px;

  border-bottom:
    1px solid
    rgba(15,23,42,.065);
}

.product-vip-body
.order-card-heading .eyebrow {
  color: #2f6fed;

  font-size: 8px;

  font-weight: 900;

  letter-spacing: .13em;
}

.product-vip-body
.order-card-heading h2 {
  margin:
    7px 0 0;

  color: #101827;

  font-size: 28px;

  line-height: 1.05;

  letter-spacing: -.04em;
}


/* =========================================================
   PACKAGE GRID
   ========================================================= */

.product-vip-body
.package-grid {
  display: grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0,1fr)
    );

  gap: 8px;
}

.product-vip-body
.package-option {
  position: relative;

  display: grid;

  gap: 5px;

  min-height: 72px;

  padding:
    12px;

  overflow: hidden;

  border:
    1px solid
    rgba(15,23,42,.085);

  border-radius: 13px;

  color: #101827;

  background:
    #f8fafc;

  cursor: pointer;

  text-align: left;

  transition:
    border-color .15s ease,
    background .15s ease,
    box-shadow .15s ease,
    transform .15s ease;
}

.product-vip-body
.package-option:hover {
  border-color:
    rgba(47,111,237,.34);

  transform:
    translateY(-1px);
}

.product-vip-body
.package-option span {
  color: #738095;

  font-size: 10px;

  font-weight: 750;
}

.product-vip-body
.package-option strong {
  color: #101827;

  font-size: 18px;

  line-height: 1;
}

.product-vip-body
.package-option.selected {
  border-color: #2f6fed;

  color: #fff;

  background:
    linear-gradient(
      135deg,
      #2164df,
      #348cff
    );

  box-shadow:
    0 11px 27px
    rgba(47,111,237,.18);
}

.product-vip-body
.package-option.selected span,

.product-vip-body
.package-option.selected strong {
  color: #fff;
}

.product-vip-body
.package-option.selected::after {
  content: "✓";

  position: absolute;

  top: 9px;
  right: 9px;

  display: grid;

  place-items: center;

  width: 18px;
  height: 18px;

  border:
    1px solid
    rgba(255,255,255,.2);

  border-radius: 50%;

  background:
    rgba(255,255,255,.12);

  color: #fff;

  font-size: 9px;

  font-weight: 900;
}


/* =========================================================
   FORM FIELDS
   ========================================================= */

.product-vip-body
.target-field {
  margin-top: 21px;
}

.product-vip-body
.target-field label,

.product-vip-body
.public-customer-grid label,

.product-vip-body
.checkout-coupon-box > label {
  display: block;

  margin-bottom: 7px;

  color: #344054;

  font-size: 10px;

  font-weight: 850;
}

.product-vip-body
.target-field input,

.product-vip-body
.public-customer-grid input,

.product-vip-body
.checkout-coupon-row input {
  width: 100%;

  height: 48px;

  box-sizing: border-box;

  border:
    1px solid
    #d8dee8;

  border-radius: 11px;

  outline: none;

  color: #101827;

  background: #f8fafc;

  font: inherit;

  font-size: 13px;

  transition:
    border-color .15s ease,
    box-shadow .15s ease,
    background .15s ease;
}

.product-vip-body
.target-field input {
  padding:
    0 13px;
}

.product-vip-body
.public-customer-grid input {
  margin-top: 0;

  padding:
    0 13px;
}

.product-vip-body
.target-field input:focus,

.product-vip-body
.public-customer-grid input:focus,

.product-vip-body
.checkout-coupon-row input:focus {
  border-color: #2f6fed;

  background: #fff;

  box-shadow:
    0 0 0 3px
    rgba(47,111,237,.09);
}

.product-vip-body
.target-field small {
  display: block;

  margin-top: 6px;

  color: #8793a5;

  font-size: 9px;

  line-height: 1.45;
}


/* CUSTOMER */

.product-vip-body
.public-customer-grid {
  display: grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0,1fr)
    );

  gap: 10px;

  margin-top: 18px;
}


/* =========================================================
   COUPON
   ========================================================= */

.product-vip-body
.checkout-coupon-box {
  margin-top: 18px;

  padding: 14px;

  border:
    1px solid
    rgba(15,23,42,.065);

  border-radius: 13px;

  background:
    #f8fafc;
}

.product-vip-body
.checkout-coupon-row {
  display: grid;

  grid-template-columns:
    minmax(0,1fr)
    auto;

  gap: 7px;
}

.product-vip-body
.checkout-coupon-row input {
  padding:
    0 12px;
}

.product-vip-body
.checkout-coupon-row button {
  min-width: 75px;

  border: 0;

  border-radius: 10px;

  color: #fff;

  background:
    #101827;

  font-size: 10px;

  font-weight: 850;

  cursor: pointer;
}


/* =========================================================
   ORDER SUMMARY
   ========================================================= */

.product-vip-body
.order-summary {
  display: grid;

  gap: 0;

  margin-top: 18px;

  padding: 0;

  overflow: hidden;

  border:
    1px solid
    rgba(15,23,42,.07);

  border-radius: 14px;

  background:
    #f8fafc;
}

.product-vip-body
.order-summary > div {
  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 18px;

  min-height: 46px;

  padding:
    0 14px;

  border-bottom:
    1px solid
    rgba(15,23,42,.055);
}

.product-vip-body
.order-summary > div:last-child {
  border-bottom: 0;

  background:
    #f1f5fa;
}

.product-vip-body
.order-summary span {
  color: #778499;

  font-size: 10px;
}

.product-vip-body
.order-summary strong {
  color: #101827;

  text-align: right;

  font-size: 12px;
}

.product-vip-body
.order-summary .total-price {
  color: #101827;

  font-size: 23px;

  letter-spacing: -.025em;
}


/* =========================================================
   CHECKOUT BUTTON
   ========================================================= */

.product-vip-body
.checkout-button {
  width: 100%;

  min-height: 53px;

  margin-top: 13px;

  border: 0;

  border-radius: 13px;

  color: #fff;

  background:
    linear-gradient(
      135deg,
      #2163df,
      #338cff
    );

  box-shadow:
    0 14px 30px
    rgba(47,111,237,.2);

  font-size: 12px;

  font-weight: 900;

  cursor: pointer;

  transition:
    transform .15s ease,
    box-shadow .15s ease,
    opacity .15s ease;
}

.product-vip-body
.checkout-button:not(:disabled):hover {
  transform:
    translateY(-1px);

  box-shadow:
    0 17px 36px
    rgba(47,111,237,.26);
}

.product-vip-body
.checkout-button:disabled {
  color:
    rgba(255,255,255,.77);

  background: #9aa6b6;

  box-shadow: none;

  cursor: wait;

  opacity: .75;
}

.product-vip-body
.public-checkout-note {
  margin:
    10px 0 0;

  color: #8b97a8;

  text-align: center;

  font-size: 9px;

  line-height: 1.5;
}


/* =========================================================
   ERROR / EMPTY
   ========================================================= */

.product-vip-body
.public-checkout-error {
  margin-bottom: 16px;

  border:
    1px solid
    #fecaca;

  border-radius: 12px;

  background: #fff4f4;
}

.product-vip-body
.empty-state {
  border:
    1px dashed
    #cfd7e3;

  color: #7c889a;

  background:
    #f8fafc;
}


/* =========================================================
   FOOTER
   ========================================================= */

.product-vip-body
.site-footer {
  border-top:
    1px solid
    rgba(255,255,255,.06);

  color: #fff;

  background:
    #091423;
}

.product-vip-body
.site-footer strong {
  color: #fff;
}

.product-vip-body
.site-footer p,

.product-vip-body
.site-footer .footer-note {
  color:
    rgba(188,203,222,.57);
}


/* =========================================================
   PRODUCT VIP TABLET
   ========================================================= */

@media screen and (max-width: 900px) {

  .product-vip-body
  .product-layout {
    grid-template-columns:
      minmax(0,1fr);

    gap: 17px;
  }

  .product-vip-body
  .order-card {
    position: static;
  }

  .product-vip-body
  .product-information {
    min-height: 0;
  }

}


/* =========================================================
   PRODUCT VIP MOBILE
   ========================================================= */

@media screen and (max-width: 640px) {

  /* HEADER */

  .product-vip-body
  .site-header .nav-shell {
    min-height: 68px;
  }


  /* PAGE */

  .product-vip-body
  .product-page {
    padding:
      26px 0 58px;
  }

  .product-vip-body
  .back-link {
    margin-bottom: 16px;

    font-size: 10px;
  }


  /* PRODUCT INFO */

  .product-vip-body
  .product-information {
    padding:
      23px 20px 22px;

    border-radius: 20px;
  }

  .product-vip-body
  .product-icon-large {
    width: 57px;
    height: 57px;

    margin-bottom: 17px;

    border-radius: 17px;
  }

  .product-vip-body
  .product-icon-large
  .platform-brand-icon {
    width: 28px;
    height: 28px;
  }

  .product-vip-body
  .category-pill {
    min-height: 26px;

    font-size: 7px;
  }

  .product-vip-body
  .product-information h1 {
    margin:
      13px 0 11px;

    font-size:
      clamp(
        36px,
        11vw,
        48px
      );

    line-height: .98;
  }

  .product-vip-body
  .product-description {
    font-size: 12px;

    line-height: 1.6;
  }


  /* FEATURES */

  .product-vip-body
  .feature-list {
    margin-top: 22px;
  }

  .product-vip-body
  .feature-list > div {
    grid-template-columns:
      29px
      minmax(0,1fr);

    gap: 10px;

    padding:
      11px 0;
  }

  .product-vip-body
  .feature-check {
    width: 27px;
    height: 27px;

    border-radius: 8px;

    font-size: 10px;
  }

  .product-vip-body
  .feature-list strong {
    font-size: 11px;
  }

  .product-vip-body
  .feature-list p {
    font-size: 9px;
  }


  /* ORDER CARD */

  .product-vip-body
  .order-card {
    padding:
      20px 16px 17px;

    border-radius: 20px;
  }

  .product-vip-body
  .order-card-heading {
    margin-bottom: 15px;

    padding-bottom: 14px;
  }

  .product-vip-body
  .order-card-heading h2 {
    font-size: 24px;
  }


  /* PACKAGES

     Keep TWO columns on mobile.
     Easier to compare without tall cards.
  */

  .product-vip-body
  .package-grid {
    grid-template-columns:
      repeat(
        2,
        minmax(0,1fr)
      );

    gap: 7px;
  }

  .product-vip-body
  .package-option {
    min-height: 64px;

    padding:
      10px;

    border-radius: 11px;
  }

  .product-vip-body
  .package-option span {
    padding-right: 17px;

    font-size: 9px;
  }

  .product-vip-body
  .package-option strong {
    font-size: 16px;
  }


  /* INPUTS */

  .product-vip-body
  .target-field {
    margin-top: 17px;
  }

  .product-vip-body
  .target-field input,

  .product-vip-body
  .public-customer-grid input,

  .product-vip-body
  .checkout-coupon-row input {
    height: 47px;

    font-size: 16px;
  }

  .product-vip-body
  .public-customer-grid {
    grid-template-columns:
      1fr;

    gap: 11px;

    margin-top: 16px;
  }


  /* COUPON */

  .product-vip-body
  .checkout-coupon-box {
    margin-top: 16px;

    padding: 12px;
  }

  .product-vip-body
  .checkout-coupon-row button {
    min-width: 68px;

    padding:
      0 11px;
  }


  /* SUMMARY */

  .product-vip-body
  .order-summary {
    margin-top: 16px;
  }

  .product-vip-body
  .order-summary > div {
    min-height: 43px;

    padding:
      0 12px;
  }

  .product-vip-body
  .order-summary .total-price {
    font-size: 21px;
  }


  /* BUTTON */

  .product-vip-body
  .checkout-button {
    min-height: 51px;

    margin-top: 11px;

    border-radius: 12px;
  }

}


/* =========================================================
   SMALL IPHONE
   ========================================================= */

@media screen and (max-width: 390px) {

  .product-vip-body
  .product-information h1 {
    font-size: 35px;
  }

  .product-vip-body
  .package-option {
    min-height: 61px;
  }

}


/* FEMININE PRODUCT CHECKOUT V1 */

.product-vip-body {
  --fem-bg: #fff9fb;
  --fem-soft: #fff2f7;
  --fem-card: #ffffff;

  --fem-rose: #d84f85;
  --fem-rose-dark: #b63d6d;

  --fem-plum: #58223f;
  --fem-deep: #321323;

  --fem-lavender: #eee8f8;

  --fem-muted: #806d78;

  --fem-border:
    rgba(116,65,91,.11);

  color:
    var(--fem-deep);

  background:
    linear-gradient(
      180deg,
      #fff9fb,
      #faf4f9
    ) !important;
}


/* =========================================================
   HEADER
   ========================================================= */

.product-vip-body .site-header {
  border-bottom:
    1px solid
    rgba(116,65,91,.08) !important;

  background:
    rgba(255,250,252,.96) !important;

  box-shadow:
    0 10px 35px
    rgba(80,35,57,.035) !important;

  backdrop-filter:
    blur(18px);
}


.product-vip-body .brand-mark {
  color: #fff !important;

  border-color:
    transparent !important;

  background:
    linear-gradient(
      145deg,
      #b83e70,
      #df6d99
    ) !important;

  box-shadow:
    0 10px 25px
    rgba(202,75,126,.22) !important;
}


.product-vip-body .brand strong {
  color:
    var(--fem-deep) !important;
}


.product-vip-body .brand small {
  color:
    #9a7b8a !important;
}


.product-vip-body .public-login-link {
  color:
    var(--fem-plum) !important;
}


.product-vip-body .public-account-button {
  border-color:
    rgba(190,66,113,.13) !important;

  color:
    #fff !important;

  background:
    linear-gradient(
      135deg,
      #b83d70,
      #dc6593
    ) !important;
}


.product-vip-body .fp-public-menu-trigger {
  border-color:
    rgba(116,65,91,.11) !important;

  color:
    var(--fem-deep) !important;

  background:
    #fff !important;
}


/* =========================================================
   PRODUCT HERO
   ========================================================= */

.product-vip-body [class*="product-hero"],
.product-vip-body [class*="product-header"],
.product-vip-body [class*="product-intro"] {
  color:
    var(--fem-deep) !important;

  background:
    radial-gradient(
      circle at 87% 12%,
      rgba(226,139,177,.24),
      transparent 28%
    ),
    radial-gradient(
      circle at 7% 82%,
      rgba(190,170,224,.20),
      transparent 29%
    ),
    linear-gradient(
      145deg,
      #fffdfd,
      #fff3f8 56%,
      #f8f1fa
    ) !important;
}


.product-vip-body [class*="product-hero"] h1,
.product-vip-body [class*="product-header"] h1,
.product-vip-body [class*="product-intro"] h1 {
  color:
    var(--fem-deep) !important;

  font-family:
    Georgia,
    "Times New Roman",
    serif !important;

  letter-spacing:
    -.045em !important;
}


.product-vip-body [class*="product-hero"] p,
.product-vip-body [class*="product-header"] p,
.product-vip-body [class*="product-intro"] p {
  color:
    var(--fem-muted) !important;
}


/* BACK LINK */

.product-vip-body [class*="back"] {
  color:
    #a44269 !important;
}


/* =========================================================
   MAIN ORDER CARD
   ========================================================= */

.product-vip-body .order-card {
  border:
    1px solid
    var(--fem-border) !important;

  border-radius:
    25px !important;

  background:
    rgba(255,255,255,.97) !important;

  box-shadow:
    0 24px 65px
    rgba(99,48,73,.09) !important;
}


.product-vip-body .order-card-heading {
  border-bottom-color:
    rgba(116,65,91,.08) !important;
}


.product-vip-body .order-card-heading span {
  color:
    var(--fem-rose) !important;
}


.product-vip-body .order-card-heading h2,
.product-vip-body .order-card-heading strong {
  color:
    var(--fem-deep) !important;

  font-family:
    Georgia,
    "Times New Roman",
    serif;
}


/* =========================================================
   PACKAGE OPTIONS
   ========================================================= */

.product-vip-body .package-grid {
  gap:
    11px !important;
}


.product-vip-body .package-option {
  position: relative;

  border:
    1px solid
    rgba(116,65,91,.11) !important;

  border-radius:
    16px !important;

  color:
    var(--fem-deep) !important;

  background:
    linear-gradient(
      145deg,
      #ffffff,
      #fff8fb
    ) !important;

  box-shadow:
    0 8px 24px
    rgba(95,46,70,.04) !important;

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease !important;
}


.product-vip-body .package-option:hover {
  transform:
    translateY(-2px);

  border-color:
    rgba(211,77,129,.23) !important;
}


.product-vip-body .package-option.selected {
  border-color:
    rgba(211,77,129,.46) !important;

  color:
    #fff !important;

  background:
    linear-gradient(
      135deg,
      #b83e70,
      #dd6493
    ) !important;

  box-shadow:
    0 15px 32px
    rgba(188,62,111,.20) !important;
}


.product-vip-body .package-option.selected span,
.product-vip-body .package-option.selected strong {
  color:
    #fff !important;
}


.product-vip-body .package-option span {
  color:
    #6d4d5d !important;
}


.product-vip-body .package-option strong {
  color:
    var(--fem-deep) !important;

  font-size:
    18px !important;
}


/* =========================================================
   INPUTS
   ========================================================= */

.product-vip-body .target-field label,
.product-vip-body .public-customer-grid label,
.product-vip-body .checkout-coupon-box label {
  color:
    #4d3040 !important;

  font-weight:
    800 !important;
}


.product-vip-body input[type="text"],
.product-vip-body input[type="email"],
.product-vip-body input[type="password"] {
  border:
    1px solid
    rgba(116,65,91,.13) !important;

  border-radius:
    15px !important;

  color:
    var(--fem-deep) !important;

  background:
    #fffafd !important;

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.70) !important;
}


.product-vip-body input:focus {
  border-color:
    rgba(211,77,129,.45) !important;

  outline:
    3px solid
    rgba(216,79,133,.08) !important;

  background:
    #fff !important;
}


.product-vip-body input::placeholder {
  color:
    #b29da8 !important;
}


.product-vip-body .target-field small {
  color:
    #9a8390 !important;
}


/* =========================================================
   COUPON
   ========================================================= */

.product-vip-body .checkout-coupon-box {
  border:
    1px solid
    rgba(116,65,91,.09) !important;

  border-radius:
    18px !important;

  background:
    linear-gradient(
      145deg,
      #fff8fb,
      #faf5fb
    ) !important;
}


.product-vip-body #applyCouponButton {
  border:
    0 !important;

  border-radius:
    14px !important;

  color:
    #fff !important;

  background:
    linear-gradient(
      135deg,
      #58223f,
      #9f3a65
    ) !important;

  box-shadow:
    0 10px 24px
    rgba(90,34,63,.14) !important;
}


.product-vip-body .checkout-coupon-message {
  color:
    #806d78 !important;
}


/* =========================================================
   ORDER SUMMARY
   ========================================================= */

.product-vip-body .order-summary {
  overflow: hidden;

  border:
    1px solid
    rgba(116,65,91,.10) !important;

  border-radius:
    19px !important;

  background:
    linear-gradient(
      145deg,
      #ffffff,
      #fff9fb
    ) !important;
}


.product-vip-body .order-summary > div {
  border-bottom-color:
    rgba(116,65,91,.075) !important;
}


.product-vip-body .order-summary > div:last-child {
  border-bottom: 0 !important;

  background:
    linear-gradient(
      145deg,
      #fff6fa,
      #f8f1fa
    ) !important;
}


.product-vip-body .order-summary span {
  color:
    #88717e !important;
}


.product-vip-body .order-summary strong {
  color:
    var(--fem-deep) !important;
}


.product-vip-body .checkout-discount-value {
  color:
    #a03d67 !important;
}


.product-vip-body .total-price {
  color:
    var(--fem-plum-deep) !important;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    30px !important;
}


/* =========================================================
   CHECKOUT BUTTON
   ========================================================= */

.product-vip-body .checkout-button {
  min-height:
    58px !important;

  border:
    0 !important;

  border-radius:
    16px !important;

  color:
    #fff !important;

  background:
    linear-gradient(
      135deg,
      #b83e70,
      #dd6493 65%,
      #b174c6
    ) !important;

  box-shadow:
    0 16px 34px
    rgba(188,62,111,.22) !important;

  font-weight:
    850 !important;
}


.product-vip-body .checkout-button:hover {
  transform:
    translateY(-1px);

  box-shadow:
    0 20px 40px
    rgba(188,62,111,.27) !important;
}


.product-vip-body .public-checkout-note {
  color:
    #99818e !important;
}


/* =========================================================
   ERROR
   ========================================================= */

.product-vip-body .public-checkout-error {
  border:
    1px solid
    rgba(196,66,91,.13) !important;

  color:
    #8f304a !important;

  background:
    #fff2f5 !important;
}


/* =========================================================
   FOOTER
   ========================================================= */

.product-vip-body .site-footer {
  border-top:
    1px solid
    rgba(116,65,91,.08) !important;

  color:
    #725565 !important;

  background:
    #fff8fb !important;
}


.product-vip-body .site-footer strong {
  color:
    var(--fem-deep) !important;
}


.product-vip-body .site-footer p,
.product-vip-body .site-footer .footer-note {
  color:
    #987f8c !important;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 640px) {

  .product-vip-body .order-card {
    border-radius:
      21px !important;
  }


  .product-vip-body .package-grid {
    grid-template-columns:
      repeat(
        2,
        minmax(0,1fr)
      ) !important;

    gap:
      9px !important;
  }


  .product-vip-body .package-option {
    min-height:
      105px !important;

    padding:
      14px !important;

    border-radius:
      15px !important;
  }


  .product-vip-body .package-option strong {
    font-size:
      17px !important;
  }


  .product-vip-body .public-customer-grid {
    grid-template-columns:
      1fr !important;
  }


  .product-vip-body .checkout-coupon-row {
    gap:
      9px !important;
  }


  .product-vip-body #applyCouponButton {
    min-width:
      105px !important;
  }


  .product-vip-body .checkout-button {
    min-height:
      57px !important;

    border-radius:
      15px !important;
  }

}

/* END FEMININE PRODUCT CHECKOUT V1 */
