/* ============================================================
   Welcome Offer Section (homepage) - Minute Soups
   ============================================================ */
.welcome-offer{
  --wo-green:#1b4d2e;
  --wo-green-dk:#143d24;
  --wo-green-deep:#10371f;
  --wo-cream:#f6f1e2;
  --wo-cream-2:#fbf7ec;
  --wo-tan:#d8cba6;
  --wo-tan-soft:#e7dcbf;
  --wo-gold:#f2c500;
  position:relative;
  background:linear-gradient(180deg,#f7f2e4 0%,#f1ead8 100%);
  padding:56px 16px 64px;
  overflow:hidden;
  font-family:'Poppins','Segoe UI',Helvetica,Arial,sans-serif;
  color:var(--wo-green);
}
.welcome-offer *{box-sizing:border-box;}
.welcome-offer__container{
  position:relative;
  max-width:1180px;
  margin:0 auto;
  z-index:2;
}

/* ---- decorative corner leaves ---- */
.welcome-offer__leaf{
  position:absolute;
  width:140px;
  z-index:1;
  pointer-events:none;
  opacity:.95;
  filter:drop-shadow(0 6px 10px rgba(20,60,30,.12));
}
.welcome-offer__leaf--tl{top:-26px;left:-46px;transform:rotate(8deg);}
.welcome-offer__leaf--tr{top:-30px;right:-46px;transform:scaleX(-1) rotate(6deg);}
.welcome-offer__leaf--bl{bottom:-30px;left:-44px;transform:rotate(-8deg) scaleY(-1);}
.welcome-offer__leaf--br{bottom:-34px;right:-46px;transform:scale(-1,-1) rotate(-4deg);}

/* ---- header ---- */
.welcome-offer__header{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  margin-bottom:26px;
}
.welcome-offer__eyebrow{
  font-family:'Brush Script MT','Segoe Script','Comic Sans MS',cursive;
  font-size:34px;
  line-height:1;
  margin:0 0 2px;
  color:var(--wo-green);
  display:flex;
  align-items:center;
  gap:8px;
}
.welcome-offer__eyebrow img{width:26px;height:auto;}
.welcome-offer__title{
  font-family:Georgia,'Playfair Display','Times New Roman',serif;
  font-weight:700;
  font-size:clamp(40px,6vw,68px);
  line-height:1.02;
  margin:0 0 14px;
  color:var(--wo-green);
  letter-spacing:.5px;
}
.welcome-offer__lead{
  font-size:18px;
  line-height:1.5;
  margin:2px 0;
  color:#34503c;
}
.welcome-offer__lead strong{color:var(--wo-green);font-weight:700;}
.welcome-offer__cup{flex:0 0 auto;}
.welcome-offer__cup img{
  width:min(420px,42vw);
  height:auto;
  display:block;
}

/* ---- shared rounded panel ---- */
.welcome-offer__card,
.welcome-offer__redeem{
  background:linear-gradient(180deg,var(--wo-cream-2),var(--wo-cream));
  border:1.5px solid var(--wo-tan);
  border-radius:24px;
  padding:26px 30px 30px;
  box-shadow:0 10px 30px rgba(40,60,30,.06);
}

/* ---- offers card ---- */
.welcome-offer__card{margin-bottom:18px;}
.welcome-offer__card-title{
  display:flex;align-items:center;justify-content:center;gap:14px;
  font-weight:700;letter-spacing:3px;font-size:20px;text-transform:uppercase;
  color:var(--wo-green);margin-bottom:22px;
}
.welcome-offer__card-title img{width:34px;height:auto;}
.welcome-offer__card-title img:last-child{transform:scaleX(-1);}
.welcome-offer__offers{
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  gap:0 36px;
  align-items:stretch;
}
.welcome-offer__divider{background:var(--wo-tan-soft);width:1px;}
.welcome-offer__offer{display:flex;flex-direction:column;align-items:center;}
.welcome-offer__badge{
  background:var(--wo-green);color:#fff;font-weight:600;letter-spacing:2px;
  font-size:15px;text-transform:uppercase;padding:9px 30px;border-radius:8px;
  margin-bottom:18px;text-align:center;min-width:240px;
}
.welcome-offer__offer-body{
  display:flex;align-items:center;justify-content:center;gap:26px;width:100%;
}
.welcome-offer__discount{display:flex;flex-direction:column;align-items:center;}
.welcome-offer__flat{
  align-self:flex-start;font-weight:700;font-size:20px;letter-spacing:1px;
  color:var(--wo-green);margin-left:4px;
}
.welcome-offer__percent{display:flex;align-items:flex-start;line-height:.9;color:var(--wo-green);}
.welcome-offer__num{font-size:88px;font-weight:800;letter-spacing:-2px;}
.welcome-offer__sign{font-size:40px;font-weight:800;margin-top:8px;}
.welcome-offer__off{font-size:18px;font-weight:800;align-self:flex-end;margin-bottom:14px;margin-left:2px;}
.welcome-offer__rule{
  border:0;border-top:2px solid var(--wo-green);width:180px;margin:6px 0 8px;
}
.welcome-offer__on{font-size:16px;margin:0;color:#34503c;}
.welcome-offer__on strong{color:var(--wo-green);font-weight:700;}
.welcome-offer__on .wo-heart{color:#4f7d54;}
.welcome-offer__code-area{display:flex;flex-direction:column;align-items:center;gap:8px;}
.welcome-offer__use{font-size:16px;color:#34503c;}
.welcome-offer__code{
  position:relative;
  display:inline-block;background:var(--wo-green);color:#fff;font-weight:700;
  font-size:26px;letter-spacing:2px;padding:15px 30px;border-radius:10px;
}
.welcome-offer__code::before{
  content:"";position:absolute;inset:5px;border:2px dashed rgba(255,255,255,.6);
  border-radius:6px;pointer-events:none;
}
.welcome-offer__valid{font-size:15px;color:#5a6b50;}

/* ---- dark band ---- */
.welcome-offer__band{
  position:relative;
  background:linear-gradient(180deg,var(--wo-green),var(--wo-green-dk));
  border-radius:16px;
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:0 40px;
  padding:20px 40px;
  margin-bottom:18px;
  overflow:hidden;
}
.welcome-offer__band-divider{background:rgba(255,255,255,.22);width:1px;height:46px;justify-self:center;}
.welcome-offer__band-item{display:flex;align-items:center;gap:18px;color:#fff;}
.welcome-offer__band-icon{
  flex:0 0 auto;width:54px;height:54px;border-radius:50%;
  border:2px solid rgba(255,255,255,.55);
  display:flex;align-items:center;justify-content:center;
}
.welcome-offer__band-icon svg{width:28px;height:28px;}
.welcome-offer__band-item p{margin:0;font-size:17px;line-height:1.35;}
.welcome-offer__band-item .hl{color:var(--wo-gold);font-weight:700;display:block;}
.welcome-offer__band-item strong{font-weight:700;}

/* ---- how to redeem ---- */
.welcome-offer__redeem{padding-top:22px;}
.welcome-offer__redeem-title{
  display:flex;align-items:center;justify-content:center;gap:16px;
  font-weight:700;letter-spacing:3px;font-size:18px;text-transform:uppercase;
  color:var(--wo-green);margin-bottom:22px;
}
.welcome-offer__redeem-title::before,
.welcome-offer__redeem-title::after{
  content:"";height:2px;width:60px;background:var(--wo-tan);display:inline-block;
}
.welcome-offer__steps{
  list-style:none;margin:0 0 22px;padding:0;
  display:flex;align-items:center;justify-content:space-between;gap:6px;
}
.welcome-offer__step{display:flex;align-items:center;gap:12px;}
.welcome-offer__step-icon{position:relative;flex:0 0 auto;}
.welcome-offer__step-icon .wo-circle{
  width:70px;height:70px;border-radius:50%;background:#efe8d4;
  display:flex;align-items:center;justify-content:center;
}
.welcome-offer__step-icon img{width:40px;height:40px;object-fit:contain;}
.welcome-offer__step-num{
  position:absolute;top:-4px;right:-6px;width:26px;height:26px;border-radius:50%;
  background:var(--wo-green);color:#fff;font-size:14px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
}
.welcome-offer__step p{margin:0;font-size:15px;line-height:1.3;color:#34503c;max-width:130px;}
.welcome-offer__arrow{color:#9bb39f;flex:0 0 auto;}
.welcome-offer__arrow svg{width:26px;height:18px;}
.welcome-offer__thanks-box{
  border:1.5px solid var(--wo-tan-soft);border-radius:16px;
  background:rgba(255,255,255,.45);
  padding:16px 20px;text-align:center;
}
.welcome-offer__thanks-note{
  margin:0 0 4px;font-size:16px;color:#3f5a45;
  display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
}
.welcome-offer__thanks-note img{width:30px;height:auto;}
.welcome-offer__thanks{
  margin:0;font-family:'Brush Script MT','Segoe Script','Comic Sans MS',cursive;
  font-size:30px;color:var(--wo-green);
}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width:900px){
  .welcome-offer__offers{grid-template-columns:1fr;gap:24px;}
  .welcome-offer__divider{width:auto;height:1px;}
  .welcome-offer__band{grid-template-columns:1fr;gap:18px;padding:22px 24px;}
  .welcome-offer__band-divider{width:60%;height:1px;}
  .welcome-offer__steps{flex-wrap:wrap;justify-content:center;gap:18px;}
  .welcome-offer__arrow{display:none;}
  .welcome-offer__step{flex:0 0 44%;}
}
@media (max-width:760px){
  .welcome-offer__header{flex-direction:column-reverse;text-align:center;align-items:center;gap:14px;}
  .welcome-offer__eyebrow{justify-content:center;}
  .welcome-offer__cup img{width:min(320px,70vw);}
  .welcome-offer__leaf{width:96px;}
}
@media (max-width:520px){
  .welcome-offer{padding:40px 12px 48px;}
  .welcome-offer__card,.welcome-offer__redeem{padding:22px 16px;}
  .welcome-offer__num{font-size:68px;}
  .welcome-offer__badge{min-width:0;width:100%;}
  .welcome-offer__offer-body{flex-direction:column;gap:16px;}
  .welcome-offer__step{flex:0 0 100%;justify-content:center;}
  .welcome-offer__step p{max-width:none;}
}
