.elementor-294 .elementor-element.elementor-element-2f4cd4c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-294 .elementor-element.elementor-element-a72c122{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-294 .elementor-element.elementor-element-6b6eb9a{--display:flex;}.elementor-294 .elementor-element.elementor-element-c838018{padding:0px 0px 0px 0px;}/* Start custom CSS for html, class: .elementor-element-fe278f9 *//* =========================================================
   ASF GIFT CARD HERO
   UNIQUE NAMESPACE: asf-gcp9h
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');


/* =========================================================
   MAIN WRAPPER
   ========================================================= */

.asf-gcp9h-wrap {

  --asf-gcp9h-orange: #f04f0d;
  --asf-gcp9h-yellow: #ffc501;
  --asf-gcp9h-red: #760012;

  position: relative;

  width: 100%;

  overflow: hidden;

  font-family: 'Poppins', sans-serif;

  color: #ffffff;

  background:
    radial-gradient(
      circle at 76% 48%,
      rgba(240, 79, 13, 0.20) 0%,
      rgba(240, 79, 13, 0.07) 30%,
      transparent 58%
    ),
    linear-gradient(
      135deg,
      #130806 0%,
      #210c07 50%,
      #080808 100%
    );

}


/* TOP BRAND LINE */

.asf-gcp9h-wrap::before {

  content: "";

  position: absolute;

  top: 0;
  left: 0;

  width: 100%;
  height: 4px;

  background:
    linear-gradient(
      90deg,
      #f04f0d 0%,
      #ffc501 50%,
      #f04f0d 100%
    );

}


/* =========================================================
   INNER SHELL
   ========================================================= */

.asf-gcp9h-shell {

  position: relative;

  z-index: 2;

  width: min(
    1180px,
    calc(100% - 40px)
  );

  min-height: 575px;

  margin: 0 auto;

  display: grid;

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

  align-items: center;

  gap: 35px;

  padding:
    72px 0
    65px;

}


/* =========================================================
   LEFT COPY
   ========================================================= */

.asf-gcp9h-copy {

  position: relative;

  z-index: 5;

  max-width: 640px;

}


/* KICKER */

.asf-gcp9h-kicker {

  display: inline-flex;

  align-items: center;

  gap: 9px;

  margin-bottom: 18px;

  color: #ffc501;

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 1.8px;

}


.asf-gcp9h-kicker-mark {

  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #f04f0d;

  box-shadow:
    0 0 0 4px rgba(240,79,13,0.10),
    0 0 15px rgba(240,79,13,0.55);

}


/* =========================================================
   MAIN HEADING
   ========================================================= */

.asf-gcp9h-heading {

  max-width: 650px;

  margin: 0 0 19px;

  color: #ffffff;

  font-size: clamp(
    42px,
    4.6vw,
    64px
  );

  line-height: 1.04;

  font-weight: 600;

  letter-spacing: -2.2px;

}


.asf-gcp9h-heading em {

  display: inline;

  color: #f04f0d;

  font-style: normal;

}


/* DESCRIPTION */

.asf-gcp9h-description {

  max-width: 530px;

  margin: 0 0 23px;

  color:
    rgba(
      255,
      255,
      255,
      0.70
    );

  font-size: 14px;

  line-height: 1.75;

  font-weight: 400;

}


/* =========================================================
   GUEST OPTIONS
   ========================================================= */

.asf-gcp9h-options {

  display: flex;

  flex-wrap: wrap;

  gap: 7px;

  margin-bottom: 29px;

}


.asf-gcp9h-options span {

  display: inline-flex;

  align-items: center;

  min-height: 29px;

  padding:
    0 12px;

  border:
    1px solid
    rgba(
      255,
      197,
      1,
      0.27
    );

  border-radius: 50px;

  background:
    rgba(
      255,
      255,
      255,
      0.045
    );

  color:
    rgba(
      255,
      255,
      255,
      0.84
    );

  font-size: 9px;

  font-weight: 600;

}


/* =========================================================
   CTA AREA
   ========================================================= */

.asf-gcp9h-actions {

  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 21px;

  margin-bottom: 22px;

}


/* PRIMARY */

.asf-gcp9h-primary {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 16px;

  min-height: 48px;

  padding:
    0 21px;

  border-radius: 6px;

  background: #f04f0d;

  color: #ffffff !important;

  text-decoration: none !important;

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 0.45px;

  box-shadow:
    0 10px 25px
    rgba(
      240,
      79,
      13,
      0.22
    );

  transition:
    transform .25s ease,
    background .25s ease,
    box-shadow .25s ease;

}


.asf-gcp9h-primary span {

  font-size: 17px;

  line-height: 1;

}


.asf-gcp9h-primary:hover {

  transform:
    translateY(-2px);

  background: #ff5b18;

  box-shadow:
    0 15px 32px
    rgba(
      240,
      79,
      13,
      0.34
    );

}


/* SECONDARY */

.asf-gcp9h-secondary {

  display: inline-flex;

  align-items: center;

  gap: 7px;

  padding-bottom: 4px;

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

  color: #ffffff !important;

  text-decoration: none !important;

  font-size: 10px;

  font-weight: 600;

  transition: .2s ease;

}


.asf-gcp9h-secondary span {

  color: #ffc501;

  font-size: 14px;

}


.asf-gcp9h-secondary:hover {

  color: #ffc501 !important;

}


/* =========================================================
   TRUST META
   ========================================================= */

.asf-gcp9h-meta {

  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 9px;

  color:
    rgba(
      255,
      255,
      255,
      0.52
    );

  font-size: 9px;

  font-weight: 500;

}


.asf-gcp9h-meta-item {

  display: inline-flex;

  align-items: center;

  gap: 6px;

}


.asf-gcp9h-meta i {

  width: 1px;

  height: 12px;

  background:
    rgba(
      255,
      255,
      255,
      0.18
    );

}


.asf-gcp9h-check {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  width: 17px;
  height: 17px;

  border-radius: 50%;

  background:
    rgba(
      255,
      197,
      1,
      0.11
    );

  color: #ffc501;

  font-size: 9px;

  font-weight: 800;

}


/* =========================================================
   RIGHT VISUAL
   ========================================================= */

.asf-gcp9h-visual {

  position: relative;

  min-height: 440px;

  display: flex;

  align-items: center;

  justify-content: center;

}


/* ORANGE LIGHT */

.asf-gcp9h-orbit {

  position: absolute;

  width: 390px;

  height: 390px;

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(
        240,
        79,
        13,
        0.27
      ) 0%,
      rgba(
        240,
        79,
        13,
        0.08
      ) 38%,
      transparent 70%
    );

  filter: blur(8px);

}


/* =========================================================
   GIFT CARD IMAGE
   ========================================================= */

.asf-gcp9h-art {

  position: relative;

  z-index: 3;

  width: min(
    480px,
    91%
  );

  transform:
    rotate(2deg);

  filter:
    drop-shadow(
      0 30px 35px
      rgba(
        0,
        0,
        0,
        0.48
      )
    );

  transition:
    transform .35s ease;

}


.asf-gcp9h-art:hover {

  transform:
    rotate(0deg)
    translateY(-5px);

}


.asf-gcp9h-art-img {

  display: block;

  width: 100%;

  height: auto;

  border-radius: 14px;

}


/* =========================================================
   FLOATING BADGE
   ========================================================= */

.asf-gcp9h-badge {

  position: absolute;

  z-index: 6;

  top: 52px;

  right: -2px;

  display: flex;

  align-items: center;

  gap: 9px;

  padding:
    9px 12px;

  border:
    1px solid
    rgba(
      255,
      255,
      255,
      0.12
    );

  border-radius: 9px;

  background:
    rgba(
      0,
      0,
      0,
      0.74
    );

  backdrop-filter:
    blur(12px);

  box-shadow:
    0 12px 25px
    rgba(
      0,
      0,
      0,
      0.25
    );

}


.asf-gcp9h-badge-icon {

  display: flex;

  align-items: center;

  justify-content: center;

  width: 28px;
  height: 28px;

  border-radius: 7px;

  background: #ffc501;

  color: #000000;

  font-size: 13px;

}


.asf-gcp9h-badge-copy strong,
.asf-gcp9h-badge-copy small {

  display: block;

}


.asf-gcp9h-badge-copy strong {

  color: #ffffff;

  font-size: 9px;

  line-height: 1.1;

}


.asf-gcp9h-badge-copy small {

  margin-top: 3px;

  color:
    rgba(
      255,
      255,
      255,
      0.48
    );

  font-size: 6px;

  letter-spacing: .4px;

}


/* =========================================================
   FOOD TAG
   ========================================================= */

.asf-gcp9h-food-tag {

  position: absolute;

  z-index: 6;

  bottom: 44px;

  left: 0;

  display: flex;

  align-items: center;

  gap: 9px;

  padding:
    9px 13px;

  border-radius: 9px;

  background: #ffffff;

  color: #000000;

  box-shadow:
    0 15px 30px
    rgba(
      0,
      0,
      0,
      0.26
    );

}


.asf-gcp9h-food-tag > span {

  font-size: 19px;

}


.asf-gcp9h-food-tag strong,
.asf-gcp9h-food-tag small {

  display: block;

}


.asf-gcp9h-food-tag strong {

  font-size: 9px;

  font-weight: 700;

}


.asf-gcp9h-food-tag small {

  margin-top: 2px;

  color: #777777;

  font-size: 7px;

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

  .asf-gcp9h-shell {

    grid-template-columns:
      minmax(0, 1fr)
      minmax(330px, .85fr);

    gap: 20px;

    min-height: 530px;

    padding:
      58px 0
      55px;

  }


  .asf-gcp9h-heading {

    font-size: 43px;

  }


  .asf-gcp9h-description {

    font-size: 12px;

  }


  .asf-gcp9h-visual {

    min-height: 360px;

  }


  .asf-gcp9h-orbit {

    width: 320px;
    height: 320px;

  }


  .asf-gcp9h-badge {

    top: 34px;

  }


  .asf-gcp9h-food-tag {

    bottom: 22px;

  }

}


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

@media (max-width: 680px) {

  .asf-gcp9h-wrap {

    background:
      radial-gradient(
        circle at 50% 55%,
        rgba(
          240,
          79,
          13,
          0.18
        ),
        transparent 47%
      ),
      linear-gradient(
        155deg,
        #130806 0%,
        #210c07 55%,
        #080808 100%
      );

  }


  .asf-gcp9h-shell {

    display: flex;

    flex-direction: column;

    width:
      calc(100% - 30px);

    min-height: auto;

    gap: 12px;

    padding:
      50px 0
      42px;

    text-align: center;

  }


  .asf-gcp9h-copy {

    width: 100%;

  }


  .asf-gcp9h-kicker {

    margin-bottom: 13px;

    font-size: 8px;

    letter-spacing: 1.5px;

  }


  .asf-gcp9h-heading {

    max-width: 460px;

    margin:
      0 auto
      15px;

    font-size:
      clamp(
        35px,
        10vw,
        48px
      );

    letter-spacing:
      -1.5px;

  }


  .asf-gcp9h-description {

    max-width: 440px;

    margin:
      0 auto
      18px;

    font-size: 11px;

    line-height: 1.65;

  }


  .asf-gcp9h-options {

    justify-content: center;

    gap: 5px;

    margin-bottom: 21px;

  }


  .asf-gcp9h-options span {

    min-height: 27px;

    padding:
      0 9px;

    font-size: 8px;

  }


  .asf-gcp9h-actions {

    justify-content: center;

    gap: 16px;

    margin-bottom: 17px;

  }


  .asf-gcp9h-primary {

    min-height: 44px;

    padding:
      0 16px;

    font-size: 9px;

  }


  .asf-gcp9h-secondary {

    font-size: 9px;

  }


  .asf-gcp9h-meta {

    justify-content: center;

    font-size: 8px;

  }


  .asf-gcp9h-visual {

    width: 100%;

    min-height: 295px;

    margin-top: 3px;

  }


  .asf-gcp9h-orbit {

    width: 280px;
    height: 280px;

  }


  .asf-gcp9h-art {

    width:
      min(
        390px,
        88%
      );

  }


  .asf-gcp9h-badge {

    top: 12px;

    right: 0;

    padding:
      7px 9px;

  }


  .asf-gcp9h-badge-icon {

    width: 23px;
    height: 23px;

    font-size: 10px;

  }


  .asf-gcp9h-badge-copy strong {

    font-size: 7px;

  }


  .asf-gcp9h-badge-copy small {

    font-size: 5px;

  }


  .asf-gcp9h-food-tag {

    left: 0;

    bottom: 7px;

    padding:
      7px 9px;

  }


  .asf-gcp9h-food-tag > span {

    font-size: 15px;

  }


  .asf-gcp9h-food-tag strong {

    font-size: 7px;

  }


  .asf-gcp9h-food-tag small {

    font-size: 6px;

  }

}


/* =========================================================
   SMALL PHONES
   ========================================================= */

@media (max-width: 390px) {

  .asf-gcp9h-shell {

    width:
      calc(100% - 24px);

    padding-top: 44px;

  }


  .asf-gcp9h-heading {

    font-size: 34px;

  }


  .asf-gcp9h-options span:nth-child(4),
  .asf-gcp9h-options span:nth-child(5) {

    display: none;

  }


  .asf-gcp9h-visual {

    min-height: 260px;

  }


  .asf-gcp9h-badge {

    right: -2px;

  }


  .asf-gcp9h-food-tag {

    left: -2px;

  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c838018 *//* =========================================================
   ASF GIFT CARD — HOW IT WORKS
   UNIQUE NAMESPACE: asf-gcp9w
   REFINED WHITE VERSION
   ========================================================= */

.asf-gcp9w-wrap {

  --asf-gcp9w-red: #760012;
  --asf-gcp9w-orange: #f04f0d;
  --asf-gcp9w-yellow: #ffc501;

  --asf-gcp9w-black: #1a1a1a;
  --asf-gcp9w-grey: #666666;
  --asf-gcp9w-light-grey: #e9e6e3;
  --asf-gcp9w-soft-bg: #faf9f8;

  position: relative;

  width: 100%;

  padding: 55px 0 58px;

  background: #ffffff;

  color: var(--asf-gcp9w-black);

  font-family: 'Poppins', sans-serif;

  overflow: hidden;

  box-sizing: border-box;
}


/* =========================================================
   RESET BOX SIZING
   ========================================================= */

.asf-gcp9w-wrap *,
.asf-gcp9w-wrap *::before,
.asf-gcp9w-wrap *::after {

  box-sizing: border-box;

}


/* =========================================================
   TOP ACCENT
   ========================================================= */

.asf-gcp9w-wrap::before {

  content: "";

  position: absolute;

  top: 0;
  left: 50%;

  width: 55px;
  height: 3px;

  transform: translateX(-50%);

  background: var(--asf-gcp9w-red);

  border-radius:
    0 0 4px 4px;

}


/* =========================================================
   MAIN SHELL
   ========================================================= */

.asf-gcp9w-shell {

  position: relative;

  z-index: 2;

  width: min(
    1100px,
    calc(100% - 40px)
  );

  margin: 0 auto;

}


/* =========================================================
   SECTION HEADING
   ========================================================= */

.asf-gcp9w-heading {

  max-width: 650px;

  margin:
    0 auto
    34px;

  text-align: center;

}


/* =========================================================
   EYEBROW
   ========================================================= */

.asf-gcp9w-eyebrow {

  display: inline-block;

  margin-bottom: 7px;

  color: var(--asf-gcp9w-red);

  font-size: 10px;

  line-height: 1.3;

  font-weight: 700;

  letter-spacing: 1.7px;

  text-transform: uppercase;

}


/* =========================================================
   MAIN HEADING
   ========================================================= */

.asf-gcp9w-heading h2 {

  margin:
    0 0
    9px;

  color: var(--asf-gcp9w-black);

  font-size: clamp(
    28px,
    3.5vw,
    38px
  );

  line-height: 1.16;

  font-weight: 600;

  letter-spacing: -1px;

}


/* RED HEADING ACCENT */

.asf-gcp9w-heading h2 strong {

  color: var(--asf-gcp9w-red);

  font-weight: 800;

}


/* =========================================================
   DESCRIPTION
   ========================================================= */

.asf-gcp9w-heading p {

  max-width: 540px;

  margin: 0 auto;

  color: var(--asf-gcp9w-grey);

  font-size: 12px;

  line-height: 1.7;

  font-weight: 400;

}


/* =========================================================
   STEPS GRID
   ========================================================= */

.asf-gcp9w-grid {

  display: grid;

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

  gap: 12px;

}


/* =========================================================
   STEP CARD
   ========================================================= */

.asf-gcp9w-step {

  position: relative;

  min-height: 205px;

  padding:
    22px 18px
    21px;

  background: #ffffff;

  border:
    1px solid
    var(--asf-gcp9w-light-grey);

  border-radius: 11px;

  text-align: center;

  box-shadow:
    0 5px 18px
    rgba(
      30,
      20,
      15,
      0.045
    );

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;

}


/* =========================================================
   CARD HOVER
   ========================================================= */

.asf-gcp9w-step:hover {

  transform:
    translateY(-3px);

  border-color:
    rgba(
      118,
      0,
      18,
      0.22
    );

  box-shadow:
    0 12px 28px
    rgba(
      30,
      20,
      15,
      0.08
    );

}


/* =========================================================
   CARD TOP AREA
   ========================================================= */

.asf-gcp9w-top {

  position: relative;

  width: 100%;

  height: 56px;

  margin-bottom: 13px;

}


/* =========================================================
   STEP NUMBER
   ========================================================= */

.asf-gcp9w-number {

  position: absolute;

  top: -1px;
  left: 0;

  color:
    rgba(
      118,
      0,
      18,
      0.30
    );

  font-size: 10px;

  line-height: 1;

  font-weight: 700;

}


/* =========================================================
   STEP ICON
   ========================================================= */

.asf-gcp9w-icon {

  position: absolute;

  top: 0;
  left: 50%;

  display: flex;

  align-items: center;

  justify-content: center;

  width: 48px;
  height: 48px;

  transform:
    translateX(-50%);

  border-radius: 50%;

  background:
    rgba(
      118,
      0,
      18,
      0.07
    );

  border:
    1px solid
    rgba(
      118,
      0,
      18,
      0.13
    );

  color: var(--asf-gcp9w-red);

  font-size: 19px;

  font-weight: 700;

}


/* =========================================================
   STEP TITLE
   ========================================================= */

.asf-gcp9w-step h3 {

  margin:
    0 0
    7px;

  color: var(--asf-gcp9w-black);

  font-size: 17px;

  line-height: 1.3;

  font-weight: 700;

}


/* =========================================================
   STEP DESCRIPTION
   ========================================================= */

.asf-gcp9w-step p {

  max-width: 205px;

  margin: 0 auto;

  color: var(--asf-gcp9w-grey);

  font-size: 11px;

  line-height: 1.65;

  font-weight: 400;

}


/* =========================================================
   BOTTOM ACCENT
   ========================================================= */

.asf-gcp9w-step::after {

  content: "";

  position: absolute;

  left: 50%;
  bottom: 0;

  width: 32px;
  height: 3px;

  transform:
    translateX(-50%);

  background: var(--asf-gcp9w-red);

  border-radius:
    4px 4px 0 0;

  opacity: 0;

  transition:
    opacity .25s ease;

}


.asf-gcp9w-step:hover::after {

  opacity: 1;

}


/* =========================================================
   OPTIONAL CONNECTING LINE
   DESKTOP ONLY
   ========================================================= */

@media (min-width: 901px) {

  .asf-gcp9w-step:not(:last-child)::before {

    content: "";

    position: absolute;

    top: 49px;

    right: -13px;

    width: 13px;

    height: 1px;

    background:
      #ddd7d3;

    z-index: 3;

  }

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

  .asf-gcp9w-wrap {

    padding:
      48px 0
      51px;

  }


  .asf-gcp9w-heading {

    margin-bottom: 30px;

  }


  .asf-gcp9w-heading h2 {

    font-size: 34px;

  }


  .asf-gcp9w-heading p {

    font-size: 11px;

  }


  .asf-gcp9w-grid {

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

    gap: 10px;

  }


  .asf-gcp9w-step {

    min-height: 190px;

    padding:
      20px 18px;

  }


  .asf-gcp9w-step h3 {

    font-size: 16px;

  }


  .asf-gcp9w-step p {

    font-size: 10.5px;

  }

}


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

@media (max-width: 600px) {

  .asf-gcp9w-wrap {

    padding:
      42px 0
      45px;

  }


  .asf-gcp9w-shell {

    width:
      calc(100% - 28px);

  }


  .asf-gcp9w-heading {

    margin-bottom: 25px;

  }


  .asf-gcp9w-eyebrow {

    margin-bottom: 6px;

    font-size: 9px;

    letter-spacing: 1.4px;

  }


  .asf-gcp9w-heading h2 {

    margin-bottom: 8px;

    font-size: 28px;

    letter-spacing: -.7px;

  }


  .asf-gcp9w-heading p {

    max-width: 430px;

    font-size: 10.5px;

    line-height: 1.6;

  }


  .asf-gcp9w-grid {

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

    gap: 8px;

  }


  .asf-gcp9w-step {

    min-height: 175px;

    padding:
      19px 10px
      17px;

    border-radius: 9px;

  }


  .asf-gcp9w-top {

    height: 49px;

    margin-bottom: 10px;

  }


  .asf-gcp9w-number {

    top: 0;

    font-size: 9px;

  }


  .asf-gcp9w-icon {

    width: 43px;
    height: 43px;

    font-size: 17px;

  }


  .asf-gcp9w-step h3 {

    margin-bottom: 6px;

    font-size: 14px;

  }


  .asf-gcp9w-step p {

    max-width: 155px;

    font-size: 9px;

    line-height: 1.55;

  }


  .asf-gcp9w-step::after {

    width: 27px;

    height: 2px;

  }

}


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

@media (max-width: 380px) {

  .asf-gcp9w-wrap {

    padding:
      37px 0
      40px;

  }


  .asf-gcp9w-shell {

    width:
      calc(100% - 22px);

  }


  .asf-gcp9w-heading h2 {

    font-size: 25px;

  }


  .asf-gcp9w-heading p {

    font-size: 10px;

  }


  .asf-gcp9w-step {

    min-height: 165px;

    padding:
      17px 8px;

  }


  .asf-gcp9w-step h3 {

    font-size: 13px;

  }


  .asf-gcp9w-step p {

    font-size: 8.5px;

  }

}/* End custom CSS */