/* Start custom CSS for html, class: .elementor-element-71f5408 *//* =========================
IMPORTS
========================= */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

/* =========================
RESET
========================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  font-family:'Plus Jakarta Sans',sans-serif;
  background:#fff7f8;
  color:#2a1d1f;
  overflow-x:hidden;
}

/* =========================
CONTAINER
========================= */

.container{
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding:0 24px;
}

/* =========================
HERO
========================= */

.hero{
  position:relative;
  overflow:hidden;

  width:100%;

  background:
  radial-gradient(circle at top left,#ffd8df 0%,transparent 28%),
  linear-gradient(180deg,#fff7f8 0%,#fff1f3 100%);

  padding:80px 0;
}

/* DECOR */

.hero::before{
  content:'🧁';

  position:absolute;

  top:80px;
  left:40px;

  font-size:30px;

  opacity:.08;
}

.hero::after{
  content:'🍰';

  position:absolute;

  bottom:50px;
  right:60px;

  font-size:38px;

  opacity:.06;
}

/* =========================
WRAPPER
========================= */

.hero-wrapper{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:60px;
}

/* =========================
CONTENT
========================= */

.hero-content{
  flex:1;
  max-width:560px;
  position:relative;
  z-index:2;
}

/* =========================
BADGE
========================= */

.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;

  padding:10px 18px;

  border-radius:999px;

  background:rgba(255,255,255,.65);

  backdrop-filter:blur(12px);

  border:1px solid rgba(255,255,255,.7);

  color:#9c7c82;

  font-size:14px;
  font-weight:600;

  margin-bottom:26px;

  box-shadow:
  0 10px 30px rgba(255,182,193,.08);
}

/* =========================
HEADLINE
========================= */

.hero-title{
  font-family:'Outfit',sans-serif;

  font-size:82px;
  line-height:.9;
  letter-spacing:-4px;
  font-weight:800;

  color:#2a1d1f;

  margin-bottom:22px;
}

.hero-title span{
  display:block;
  color:#ea7f91;
}

/* =========================
DESCRIPTION
========================= */

.hero-description{
  font-size:21px;
  line-height:1.6;

  color:#6c5a5f;

  max-width:520px;

  margin-bottom:30px;
}

/* =========================
PRICE BOX
========================= */

.hero-price-box{
  display:flex;
  align-items:center;
  gap:14px;

  width:fit-content;

  padding:14px 18px;

  border-radius:20px;

  background:#1f1719;

  margin-bottom:24px;

  box-shadow:
  0 16px 40px rgba(0,0,0,.12);
}

/* OLD PRICE */

.old-price{
  font-size:14px;

  color:#ff8ea1;

  text-decoration:line-through;
}

/* NEW PRICE */

.new-price{
  font-family:'Outfit',sans-serif;

  font-size:42px;
  font-weight:800;

  line-height:1;

  color:#fff;
}

/* MONTH */

.month-price{
  padding:8px 12px;

  border-radius:999px;

  background:#37262b;

  color:#ffb7c4;

  font-size:13px;
  font-weight:600;
}

/* =========================
BUTTON
========================= */

.hero-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:18px 34px;

  border-radius:18px;

  background:
  linear-gradient(135deg,#25D366,#1ebe5d);

  color:#fff;
  text-decoration:none;

  font-size:17px;
  font-weight:700;

  transition:.3s ease;

  box-shadow:
  0 18px 40px rgba(234,127,145,.24);
}

.hero-button:hover{
  transform:translateY(-3px);
}

/* =========================
PROOF
========================= */

.hero-proof{
  display:flex;
  align-items:center;
  gap:14px;

  margin-top:20px;
}

.proof-images{
  display:flex;
}

.proof-images img{
  width:42px;
  height:42px;

  border-radius:50%;
  object-fit:cover;

  border:2px solid #fff;

  margin-left:-10px;
}

.proof-images img:first-child{
  margin-left:0;
}

.hero-proof p{
  font-size:15px;
  color:#5f4d52;
}

/* =========================
VISUAL
========================= */

.hero-visual{
  flex:1;

  position:relative;

  display:flex;
  align-items:center;
  justify-content:center;
}

/* IMAGE AREA */

.hero-image-area{
  position:relative;
}

/* GLOW */

.hero-image-area::before{
  content:'';

  position:absolute;

  width:420px;
  height:420px;

  top:50%;
  left:50%;

  transform:translate(-50%,-50%);

  border-radius:50%;

  background:
  radial-gradient(circle,rgba(255,182,193,.55) 0%,transparent 70%);

  filter:blur(40px);

  z-index:0;
}

/* IMAGE */

.hero-image{
  width:100%;
  max-width:520px;

  position:relative;
  z-index:2;

  filter:
  drop-shadow(0 0 30px rgba(255,182,193,.25));
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.hero-wrapper{
  flex-direction:column;
  text-align:center;
}

.hero-content{
  max-width:100%;
}

.hero-description{
  max-width:100%;
}

.hero-price-box{
  margin:0 auto 24px;
}

.hero-proof{
  justify-content:center;
}

.hero-button{
  width:100%;
}

.hero-title{
  font-size:62px;
}

.hero-image{
  max-width:420px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.container{
  padding:0 16px;
}

.hero{
  padding:16px 0 40px;
}

/* HERO */

.hero-wrapper{
  display:flex;
  flex-direction:column;

  gap:0;
}

/* IMAGE FIRST */

.hero-visual{
  order:-1;

  margin-top:-16px;
  margin-bottom:-10px;
}

/* IMAGE */

.hero-image{
  max-width:360px;
}

/* BADGE */

.hero-badge{
  font-size:12px;

  padding:8px 14px;

  margin-bottom:4px;
}

/* CONTENT */

.hero-content{
  width:100%;

  margin-top:-40px;

  text-align:center;
}

/* TITLE */

.hero-title{
  font-size:42px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:12px;
}

/* DESCRIPTION */

.hero-description{
  font-size:13px;

  line-height:1.45;

  margin-bottom:18px;
}

/* PRICE */

.hero-price-box{
  width:100%;

  justify-content:center;

  gap:10px;

  padding:12px;

  margin-bottom:18px;
}

.old-price{
  font-size:12px;
}

.new-price{
  font-size:34px;
}

.month-price{
  font-size:11px;
}

/* BUTTON */

.hero-button{
  width:100%;

  padding:16px;

  font-size:16px;
}

/* PROOF */

.hero-proof{
  flex-direction:column;

  gap:10px;

  margin-top:14px;
}

.hero-proof p{
  font-size:13px;
}

/* DECOR */

.hero::before{
  top:24px;
  left:14px;

  font-size:18px;
}

.hero::after{
  display:none;
}

}

/* =========================
ELEMENTOR FIX
========================= */

.elementor-section{
  overflow:hidden;
}

.elementor-widget-html{
  width:100%;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-eb01cac *//* =========================
IMPORTS
========================= */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

/* =========================
DOR SECTION
========================= */

.pain-section{
  position:relative;

  padding:110px 0;

  background:
  linear-gradient(
    180deg,
    #fff1f3 0%,
    #ffe9ee 100%
  );

  overflow:hidden;
}

/* =========================
BADGE
========================= */

.pain-badge{
  width:fit-content;

  margin:0 auto 26px;

  padding:10px 20px;

  border-radius:999px;

  background:rgba(255,255,255,.65);

  backdrop-filter:blur(14px);

  border:1px solid rgba(255,255,255,.7);

  color:#9c7c82;

  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:14px;
  font-weight:600;

  box-shadow:
  0 12px 30px rgba(255,182,193,.08);
}

/* =========================
TITLE
========================= */

.pain-title{
  font-family:'Outfit',sans-serif;

  font-size:74px;
  line-height:.92;
  letter-spacing:-4px;
  font-weight:800;

  text-align:center;

  color:#2a1d1f;

  max-width:920px;

  margin:0 auto 26px;
}

.pain-title span{
  display:block;

  color:#ea7f91;
}

/* =========================
DESCRIPTION
========================= */

.pain-description{
  max-width:820px;

  margin:0 auto 56px;

  text-align:center;

  font-family:'Plus Jakarta Sans',sans-serif;

  font-size:22px;
  line-height:1.7;
  font-weight:500;

  color:#6d5a5f;
}

/* =========================
GRID
========================= */

.pain-grid{
  display:grid;

  grid-template-columns:repeat(2,1fr);

  gap:20px;

  max-width:980px;

  margin:0 auto;
}

/* =========================
CARD
========================= */

.pain-card{
  display:flex;
  align-items:center;
  gap:16px;

  padding:24px;

  border-radius:28px;

  background:
  rgba(255,255,255,.55);

  backdrop-filter:blur(18px);

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 18px 40px rgba(255,182,193,.08);

  transition:.3s ease;
}

.pain-card:hover{
  transform:translateY(-4px);
}

/* =========================
FULL CARD
========================= */

.pain-card.full{
  grid-column:1/3;

  justify-content:center;

  background:
  linear-gradient(
    135deg,
    #f6ccd4,
    #f2b4c0
  );

  border:none;
}

/* =========================
ICON
========================= */

.pain-icon{
  width:44px;
  height:44px;

  border-radius:14px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:#fff;

  font-size:18px;

  flex-shrink:0;

  box-shadow:
  0 10px 20px rgba(0,0,0,.04);
}

/* =========================
TEXT
========================= */

.pain-card p{
  font-family:'Plus Jakarta Sans',sans-serif;

  font-size:17px;
  font-weight:500;

  line-height:1.45;

  letter-spacing:-.3px;

  color:#3b2a2f;
}

/* =========================
FOOTER
========================= */

.pain-footer{
  max-width:720px;

  margin:52px auto 0;

  text-align:center;

  font-family:'Plus Jakarta Sans',sans-serif;

  font-size:26px;
  line-height:1.35;
  font-weight:500;

  color:#5b4a4f;
}

.pain-footer strong{
  display:block;

  margin-top:8px;

  font-family:'Outfit',sans-serif;

  font-size:34px;
  font-weight:700;

  letter-spacing:-1px;

  color:#ea7f91;
}

/* =========================
DECORATION
========================= */

.pain-section::before{
  content:'🧁';

  position:absolute;

  top:80px;
  left:60px;

  font-size:28px;

  opacity:.08;
}

.pain-section::after{
  content:'🍰';

  position:absolute;

  bottom:90px;
  right:70px;

  font-size:42px;

  opacity:.06;
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.pain-section{
  padding:90px 0;
}

.pain-title{
  font-size:56px;

  letter-spacing:-3px;
}

.pain-description{
  font-size:19px;
}

.pain-grid{
  gap:16px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.pain-section{
  padding:70px 0;
}

/* BADGE */

.pain-badge{
  font-size:12px;

  padding:8px 14px;

  margin-bottom:18px;
}

/* TITLE */

.pain-title{
  font-size:42px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:18px;
}

/* DESCRIPTION */

.pain-description{
  font-size:15px;

  line-height:1.6;

  margin-bottom:30px;

  padding:0 6px;
}

/* GRID */

.pain-grid{
  grid-template-columns:1fr;

  gap:14px;
}

/* CARD */

.pain-card{
  padding:18px;

  border-radius:22px;
}

/* FULL */

.pain-card.full{
  grid-column:auto;
}

/* CARD TEXT */

.pain-card p{
  font-size:15px;
}

/* FOOTER */

.pain-footer{
  font-size:18px;

  line-height:1.4;

  margin-top:34px;

  padding:0 10px;
}

.pain-footer strong{
  font-size:24px;
}

/* DECOR */

.pain-section::before{
  top:40px;
  left:16px;

  font-size:18px;
}

.pain-section::after{
  display:none;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a37fd55 *//* =========================
SOLUTION
========================= */

.solution-section{
  position:relative;

  padding:120px 0;

  background:
  linear-gradient(
    180deg,
    #fff7f8 0%,
    #fff3f5 100%
  );

  overflow:hidden;
}

/* =========================
WRAPPER
========================= */

.solution-wrapper{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:80px;
}

/* =========================
LEFT
========================= */

.solution-content{
  flex:1;

  max-width:560px;
}

/* BADGE */

.solution-badge{
  width:fit-content;

  margin-bottom:24px;

  padding:10px 18px;

  border-radius:999px;

  background:rgba(255,255,255,.7);

  border:1px solid rgba(255,255,255,.7);

  backdrop-filter:blur(12px);

  font-size:14px;
  font-weight:600;

  color:#9c7c82;

  box-shadow:
  0 10px 30px rgba(255,182,193,.08);
}

/* TITLE */

.solution-title{
  font-family:'Outfit',sans-serif;

  font-size:72px;
  line-height:.92;
  letter-spacing:-4px;
  font-weight:800;

  color:#2a1d1f;

  margin-bottom:24px;
}

.solution-title span{
  display:block;

  color:#ea7f91;
}

/* DESCRIPTION */

.solution-description{
  font-size:22px;
  line-height:1.6;

  color:#6d5a5f;

  margin-bottom:30px;
}

/* =========================
LIST
========================= */

.solution-list{
  display:flex;
  flex-direction:column;

  gap:16px;
}

/* ITEM */

.solution-item{
  display:flex;
  align-items:center;

  gap:14px;

  padding:20px 22px;

  border-radius:22px;

  background:
  rgba(255,255,255,.55);

  backdrop-filter:blur(16px);

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 16px 40px rgba(255,182,193,.08);

  transition:.3s ease;
}

.solution-item:hover{
  transform:translateX(6px);
}

/* CHECK */

.solution-check{
  width:38px;
  height:38px;

  border-radius:12px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:#fff;

  color:#ea7f91;

  font-size:16px;
  font-weight:700;

  flex-shrink:0;
}

/* TEXT */

.solution-item p{
  font-size:17px;
  line-height:1.45;
  font-weight:500;

  color:#3d2b30;
}

/* FOOT */

.solution-footer{
  margin-top:30px;

  font-size:20px;
  line-height:1.5;
  font-weight:600;

  color:#ea7f91;
}

/* =========================
RIGHT
========================= */

.solution-visual{
  flex:1;

  display:flex;
  justify-content:center;
}

/* MOCKUP */

.solution-mockup{
  width:100%;
  max-width:500px;

  padding:24px;

  border-radius:34px;

  background:
  rgba(255,255,255,.55);

  backdrop-filter:blur(24px);

  border:1px solid rgba(255,255,255,.7);

  box-shadow:
  0 30px 60px rgba(255,182,193,.12);

  position:relative;
}

/* TOP */

.mockup-top{
  display:flex;
  gap:8px;

  margin-bottom:24px;
}

.mockup-top span{
  width:12px;
  height:12px;

  border-radius:50%;

  background:#f3c4cc;
}

/* CONTENT */

.mockup-content{
  display:grid;

  grid-template-columns:repeat(2,1fr);

  gap:18px;
}

/* CARD */

.mockup-card{
  padding:24px;

  border-radius:24px;

  background:#fff;

  box-shadow:
  0 10px 30px rgba(255,182,193,.08);
}

.mockup-card.large{
  grid-column:1/3;

  background:
  linear-gradient(
    135deg,
    #f8d5dc,
    #f3bcc7
  );
}

/* SMALL */

.mockup-card small{
  display:block;

  margin-bottom:10px;

  font-size:14px;
  font-weight:600;

  color:#8b6e74;
}

/* STRONG */

.mockup-card strong{
  font-family:'Outfit',sans-serif;

  font-size:34px;
  line-height:1;

  letter-spacing:-1px;

  color:#2a1d1f;
}

/* =========================
DECOR
========================= */

.solution-section::before{
  content:'🍓';

  position:absolute;

  top:100px;
  right:70px;

  font-size:34px;

  opacity:.08;
}

.solution-section::after{
  content:'🧁';

  position:absolute;

  bottom:80px;
  left:60px;

  font-size:28px;

  opacity:.08;
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.solution-wrapper{
  flex-direction:column;

  gap:60px;
}

.solution-content{
  max-width:100%;

  text-align:center;
}

.solution-badge{
  margin:0 auto 24px;
}

.solution-title{
  font-size:58px;
}

.solution-description{
  font-size:18px;
}

.solution-footer{
  font-size:18px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.solution-section{
  padding:80px 0;
}

/* TITLE */

.solution-title{
  font-size:44px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:18px;
}

/* DESC */

.solution-description{
  font-size:15px;

  margin-bottom:22px;
}

/* LIST */

.solution-list{
  gap:12px;
}

/* ITEM */

.solution-item{
  padding:16px;

  border-radius:18px;
}

.solution-item p{
  font-size:14px;
}

/* FOOT */

.solution-footer{
  margin-top:22px;

  font-size:16px;
}

/* MOCKUP */

.solution-mockup{
  padding:18px;

  border-radius:28px;
}

/* GRID */

.mockup-content{
  gap:12px;
}

/* CARD */

.mockup-card{
  padding:18px;

  border-radius:18px;
}

.mockup-card strong{
  font-size:26px;
}

/* DECOR */

.solution-section::before{
  top:40px;
  right:20px;

  font-size:20px;
}

.solution-section::after{
  display:none;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-934d4e8 *//* =========================
STEPS SECTION
========================= */

.steps-section{
  position:relative;

  padding:120px 0;

  background:
  linear-gradient(
    180deg,
    #fff7f8 0%,
    #fff4f6 100%
  );

  overflow:hidden;
}

/* =========================
WRAPPER
========================= */

.steps-wrapper{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:80px;
}

/* =========================
LEFT
========================= */

.steps-content{
  flex:1;

  max-width:560px;
}

/* BADGE */

.steps-badge{
  width:fit-content;

  margin-bottom:24px;

  padding:10px 18px;

  border-radius:999px;

  background:rgba(255,255,255,.65);

  backdrop-filter:blur(14px);

  border:1px solid rgba(255,255,255,.7);

  font-size:14px;
  font-weight:600;

  color:#9c7c82;

  box-shadow:
  0 10px 30px rgba(255,182,193,.08);
}

/* TITLE */

.steps-title{
  font-family:'Outfit',sans-serif;

  font-size:72px;
  line-height:.92;
  letter-spacing:-4px;
  font-weight:800;

  color:#2a1d1f;

  margin-bottom:42px;
}

.steps-title span{
  display:block;

  color:#ea7f91;
}

/* =========================
LIST
========================= */

.steps-list{
  display:flex;
  flex-direction:column;

  gap:22px;
}

/* ITEM */

.step-item{
  display:flex;
  align-items:flex-start;

  gap:18px;

  padding:24px;

  border-radius:28px;

  background:
  rgba(255,255,255,.55);

  backdrop-filter:blur(16px);

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 16px 40px rgba(255,182,193,.08);

  transition:.3s ease;
}

.step-item:hover{
  transform:translateX(6px);
}

/* NUMBER */

.step-number{
  width:58px;
  height:58px;

  border-radius:18px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:
  linear-gradient(
    135deg,
    #f29ca3,
    #ea7f91
  );

  color:#fff;

  font-family:'Outfit',sans-serif;

  font-size:20px;
  font-weight:700;

  flex-shrink:0;

  box-shadow:
  0 14px 30px rgba(234,127,145,.18);
}

/* INFO */

.step-info h3{
  font-size:22px;
  line-height:1.2;
  font-weight:700;

  color:#2a1d1f;

  margin-bottom:8px;
}

.step-info p{
  font-size:16px;
  line-height:1.6;

  color:#6d5a5f;
}

/* =========================
RIGHT
========================= */

.steps-video-area{
  flex:1;

  display:flex;
  justify-content:center;
}

/* VIDEO CARD */

.steps-video-card{
  position:relative;

  width:100%;
  max-width:360px;

  padding:18px;

  border-radius:38px;

  background:
  rgba(255,255,255,.55);

  backdrop-filter:blur(24px);

  border:1px solid rgba(255,255,255,.7);

  box-shadow:
  0 30px 60px rgba(255,182,193,.14);
}

/* GLOW */

.steps-video-card::before{
  content:'';

  position:absolute;

  width:280px;
  height:280px;

  background:
  radial-gradient(circle,
  rgba(255,182,193,.35) 0%,
  transparent 70%);

  top:50%;
  left:50%;

  transform:translate(-50%,-50%);

  filter:blur(40px);

  z-index:0;
}

/* VIDEO */

.steps-video{
  position:relative;
  z-index:2;

  border-radius:28px;

  overflow:hidden;
}

/* PLACEHOLDER */

.video-placeholder{
  width:100%;
  aspect-ratio:9/16;

  background:
  linear-gradient(
    180deg,
    #f7d4db,
    #f0aeb9
  );

  display:flex;
  align-items:center;
  justify-content:center;
}

/* PLAY */

.video-play{
  width:84px;
  height:84px;

  border-radius:50%;

  background:#fff;

  display:flex;
  align-items:center;
  justify-content:center;

  font-size:34px;

  color:#ea7f91;

  box-shadow:
  0 16px 40px rgba(0,0,0,.12);
}

/* =========================
DECOR
========================= */

.steps-section::before{
  content:'🧁';

  position:absolute;

  top:100px;
  left:60px;

  font-size:28px;

  opacity:.08;
}

.steps-section::after{
  content:'🍓';

  position:absolute;

  bottom:80px;
  right:70px;

  font-size:36px;

  opacity:.08;
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.steps-wrapper{
  flex-direction:column;

  gap:60px;
}

.steps-content{
  max-width:100%;

  text-align:center;
}

.steps-badge{
  margin:0 auto 24px;
}

.steps-title{
  font-size:56px;
}

.steps-video-card{
  max-width:420px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.steps-section{
  padding:80px 0;
}

/* TITLE */

.steps-title{
  font-size:48px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:26px;
}

/* VIDEO FIRST */

.steps-video-area{
  order:-1;
}

/* VIDEO */

.steps-video-card{
  max-width:100%;

  padding:14px;

  border-radius:28px;
}

/* PLAY */

.video-play{
  width:68px;
  height:68px;

  font-size:28px;
}

/* LIST */

.steps-list{
  gap:14px;
}

/* ITEM */

.step-item{
  padding:18px;

  border-radius:22px;
}

/* NUMBER */

.step-number{
  width:48px;
  height:48px;

  font-size:16px;

  border-radius:14px;
}

/* TEXT */

.step-info h3{
  font-size:18px;
}

.step-info p{
  font-size:14px;

  line-height:1.5;
}

/* DECOR */

.steps-section::before{
  top:30px;
  left:16px;

  font-size:18px;
}

.steps-section::after{
  display:none;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c04bd00 *//* =========================
TRANSFORM
========================= */

.transform-section{
  position:relative;

  padding:120px 0;

  background:
  linear-gradient(
    180deg,
    #fff0f3 0%,
    #fff7f8 100%
  );

  overflow:hidden;
}

/* =========================
BADGE
========================= */

.transform-badge{
  width:fit-content;

  margin:0 auto 24px;

  padding:10px 18px;

  border-radius:999px;

  background:rgba(255,255,255,.65);

  backdrop-filter:blur(14px);

  border:1px solid rgba(255,255,255,.7);

  font-size:14px;
  font-weight:600;

  color:#9c7c82;

  box-shadow:
  0 10px 30px rgba(255,182,193,.08);
}

/* =========================
TITLE
========================= */

.transform-title{
  font-family:'Outfit',sans-serif;

  font-size:72px;
  line-height:.92;
  letter-spacing:-4px;
  font-weight:800;

  text-align:center;

  color:#2a1d1f;

  max-width:920px;

  margin:0 auto 70px;
}

.transform-title span{
  display:block;

  color:#ea7f91;
}

/* =========================
WRAPPER
========================= */

.transform-wrapper{
  display:flex;
  align-items:center;
  justify-content:center;

  gap:34px;
}

/* =========================
CARD
========================= */

.transform-card{
  flex:1;

  max-width:460px;

  padding:34px;

  border-radius:34px;

  background:
  rgba(255,255,255,.55);

  backdrop-filter:blur(20px);

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 20px 50px rgba(255,182,193,.08);
}

/* BEFORE */

.transform-card.before{
  opacity:.88;
}

/* AFTER */

.transform-card.after{
  background:
  linear-gradient(
    135deg,
    rgba(255,255,255,.85),
    rgba(255,240,244,.92)
  );

  border:1px solid rgba(255,255,255,.95);

  box-shadow:
  0 30px 60px rgba(234,127,145,.12);
}

/* =========================
LABEL
========================= */

.transform-label{
  width:fit-content;

  margin-bottom:28px;

  padding:10px 18px;

  border-radius:999px;

  background:#ffe3e8;

  color:#d06b7d;

  font-size:14px;
  font-weight:700;
}

/* SUCCESS */

.transform-label.success{
  background:#ffd7e1;

  color:#ea7f91;
}

/* =========================
LIST
========================= */

.transform-list{
  display:flex;
  flex-direction:column;

  gap:18px;
}

/* ITEM */

.transform-item{
  display:flex;
  align-items:center;

  gap:14px;

  padding:18px;

  border-radius:20px;

  background:rgba(255,255,255,.7);

  border:1px solid rgba(255,255,255,.8);
}

/* EMOJI */

.transform-item span{
  font-size:24px;

  flex-shrink:0;
}

/* TEXT */

.transform-item p{
  font-size:17px;
  line-height:1.45;
  font-weight:500;

  color:#3d2b30;
}

/* =========================
MIDDLE
========================= */

.transform-middle{
  display:flex;
  align-items:center;
  justify-content:center;
}

/* ARROW */

.transform-arrow{
  width:82px;
  height:82px;

  border-radius:50%;

  display:flex;
  align-items:center;
  justify-content:center;

  background:
  linear-gradient(
    135deg,
    #f29ca3,
    #ea7f91
  );

  color:#fff;

  font-size:34px;
  font-weight:700;

  box-shadow:
  0 20px 40px rgba(234,127,145,.18);
}

/* =========================
DECOR
========================= */

.transform-section::before{
  content:'✨';

  position:absolute;

  top:90px;
  left:60px;

  font-size:28px;

  opacity:.08;
}

.transform-section::after{
  content:'🧁';

  position:absolute;

  bottom:80px;
  right:70px;

  font-size:34px;

  opacity:.08;
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.transform-wrapper{
  flex-direction:column;

  gap:24px;
}

.transform-title{
  font-size:56px;
}

.transform-arrow{
  transform:rotate(90deg);
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.transform-section{
  padding:80px 0;
}

/* TITLE */

.transform-title{
  font-size:42px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:34px;
}

/* CARD */

.transform-card{
  padding:22px;

  border-radius:24px;
}

/* LABEL */

.transform-label{
  margin-bottom:18px;

  font-size:12px;
}

/* LIST */

.transform-list{
  gap:12px;
}

/* ITEM */

.transform-item{
  padding:14px;

  border-radius:16px;
}

/* TEXT */

.transform-item p{
  font-size:14px;
}

/* ARROW */

.transform-arrow{
  width:62px;
  height:62px;

  font-size:24px;
}

/* DECOR */

.transform-section::before{
  top:30px;
  left:16px;

  font-size:18px;
}

.transform-section::after{
  display:none;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-52b4025 *//* =========================
LIBRARY
========================= */

.library-section{
  position:relative;

  padding:120px 0;

  background:
  linear-gradient(
    180deg,
    #fff7f8 0%,
    #fff0f3 100%
  );

  overflow:hidden;
}

/* =========================
BADGE
========================= */

.library-badge{
  width:fit-content;

  margin:0 auto 24px;

  padding:10px 18px;

  border-radius:999px;

  background:rgba(255,255,255,.65);

  backdrop-filter:blur(14px);

  border:1px solid rgba(255,255,255,.7);

  font-size:14px;
  font-weight:600;

  color:#9c7c82;

  box-shadow:
  0 10px 30px rgba(255,182,193,.08);
}

/* =========================
TITLE
========================= */

.library-title{
  font-family:'Outfit',sans-serif;

  font-size:72px;
  line-height:.92;
  letter-spacing:-4px;
  font-weight:800;

  text-align:center;

  color:#2a1d1f;

  max-width:920px;

  margin:0 auto 26px;
}

.library-title span{
  display:block;

  color:#ea7f91;
}

/* =========================
DESCRIPTION
========================= */

.library-description{
  max-width:860px;

  margin:0 auto 70px;

  text-align:center;

  font-size:20px;
  line-height:1.7;
  font-weight:500;

  color:#6d5a5f;
}

/* =========================
GRID
========================= */

.library-grid{
  display:grid;

  grid-template-columns:repeat(3,1fr);

  gap:24px;
}

/* =========================
CARD
========================= */

.library-card{
  border-radius:34px;

  overflow:hidden;

  background:
  rgba(255,255,255,.55);

  backdrop-filter:blur(20px);

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 20px 50px rgba(255,182,193,.08);

  transition:.35s ease;
}

.library-card:hover{
  transform:translateY(-6px);
}

/* =========================
IMAGE
========================= */

.library-image{
  position:relative;

  width:100%;

  aspect-ratio:4/5;

  overflow:hidden;
}

.library-image img{
  width:100%;
  height:100%;

  object-fit:cover;

  display:block;
}

/* =========================
CONTENT
========================= */

.library-content{
  padding:28px;
}

/* ICON */

.library-icon{
  width:54px;
  height:54px;

  border-radius:18px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:
  linear-gradient(
    135deg,
    #f7ccd4,
    #f1b1be
  );

  font-size:24px;

  margin-bottom:18px;
}

/* TITLE */

.library-content h3{
  font-family:'Outfit',sans-serif;

  font-size:30px;
  line-height:1;
  letter-spacing:-1px;
  font-weight:700;

  color:#2a1d1f;

  margin-bottom:14px;
}

/* TEXT */

.library-content p{
  font-size:16px;
  line-height:1.6;
  font-weight:500;

  color:#6d5a5f;
}

/* =========================
FOOTER
========================= */

.library-footer{
  margin-top:60px;

  text-align:center;
}

.library-footer strong{
  display:block;

  margin-bottom:10px;

  font-family:'Outfit',sans-serif;

  font-size:34px;
  line-height:1;
  letter-spacing:-1px;

  color:#ea7f91;
}

.library-footer p{
  font-size:20px;
  line-height:1.6;
  font-weight:500;

  color:#5f4d52;
}

/* =========================
DECOR
========================= */

.library-section::before{
  content:'🍰';

  position:absolute;

  top:100px;
  left:60px;

  font-size:34px;

  opacity:.08;
}

.library-section::after{
  content:'🧁';

  position:absolute;

  bottom:80px;
  right:70px;

  font-size:32px;

  opacity:.08;
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.library-grid{
  grid-template-columns:1fr;

  gap:22px;
}

.library-title{
  font-size:56px;
}

.library-description{
  font-size:18px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.library-section{
  padding:80px 0;
}

/* TITLE */

.library-title{
  font-size:42px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:18px;
}

/* DESCRIPTION */

.library-description{
  font-size:15px;

  line-height:1.6;

  margin-bottom:34px;
}

/* GRID */

.library-grid{
  gap:18px;
}

/* CARD */

.library-card{
  border-radius:24px;
}

/* CONTENT */

.library-content{
  padding:22px;
}

/* ICON */

.library-icon{
  width:48px;
  height:48px;

  border-radius:14px;

  font-size:20px;

  margin-bottom:14px;
}

/* TITLE */

.library-content h3{
  font-size:24px;

  margin-bottom:10px;
}

/* TEXT */

.library-content p{
  font-size:14px;
}

/* FOOTER */

.library-footer{
  margin-top:40px;
}

.library-footer strong{
  font-size:26px;
}

.library-footer p{
  font-size:16px;
}

/* DECOR */

.library-section::before{
  top:30px;
  left:16px;

  font-size:18px;
}

.library-section::after{
  display:none;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-842b2a2 *//* =========================
EMOTION
========================= */

.emotion-section{
  position:relative;

  padding:120px 0;

  background:
  linear-gradient(
    180deg,
    #fff0f3 0%,
    #fff7f8 100%
  );

  overflow:hidden;
}

/* =========================
WRAPPER
========================= */

.emotion-wrapper{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:80px;
}

/* =========================
LEFT
========================= */

.emotion-content{
  flex:1;

  max-width:560px;
}

/* BADGE */

.emotion-badge{
  width:fit-content;

  margin-bottom:24px;

  padding:10px 18px;

  border-radius:999px;

  background:rgba(255,255,255,.65);

  backdrop-filter:blur(14px);

  border:1px solid rgba(255,255,255,.7);

  font-size:14px;
  font-weight:600;

  color:#9c7c82;

  box-shadow:
  0 10px 30px rgba(255,182,193,.08);
}

/* TITLE */

.emotion-title{
  font-family:'Outfit',sans-serif;

  font-size:72px;
  line-height:.92;
  letter-spacing:-4px;
  font-weight:800;

  color:#2a1d1f;

  margin-bottom:26px;
}

.emotion-title span{
  display:block;

  color:#ea7f91;
}

/* DESCRIPTION */

.emotion-description{
  font-size:22px;
  line-height:1.6;
  font-weight:500;

  color:#6d5a5f;

  margin-bottom:26px;
}

/* TEXT */

.emotion-text > p{
  font-size:18px;
  line-height:1.6;

  color:#5f4d52;

  margin-bottom:24px;
}

/* =========================
LIST
========================= */

.emotion-list{
  display:flex;
  flex-direction:column;

  gap:16px;
}

/* ITEM */

.emotion-item{
  display:flex;
  align-items:center;

  gap:14px;

  padding:18px 20px;

  border-radius:22px;

  background:
  rgba(255,255,255,.55);

  backdrop-filter:blur(16px);

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 16px 40px rgba(255,182,193,.08);
}

/* CHECK */

.emotion-item span{
  width:36px;
  height:36px;

  border-radius:12px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:#fff;

  color:#ea7f91;

  font-size:16px;
  font-weight:700;

  flex-shrink:0;
}

/* TEXT */

.emotion-item p{
  font-size:16px;
  line-height:1.45;
  font-weight:500;

  color:#3d2b30;
}

/* FOOTER */

.emotion-footer{
  margin-top:34px;

  font-family:'Outfit',sans-serif;

  font-size:34px;
  line-height:1;
  letter-spacing:-1px;
  font-weight:700;

  color:#ea7f91;
}

/* =========================
RIGHT
========================= */

.emotion-visual{
  flex:1;

  display:flex;
  justify-content:center;
}

/* CARD */

.emotion-card{
  position:relative;

  width:100%;
  max-width:520px;

  padding:40px;

  border-radius:38px;

  background:
  rgba(255,255,255,.55);

  backdrop-filter:blur(24px);

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 30px 60px rgba(255,182,193,.12);

  display:flex;
  align-items:center;
  justify-content:center;
}

/* GLOW */

.emotion-card::before{
  content:'';

  position:absolute;

  width:320px;
  height:320px;

  border-radius:50%;

  background:
  radial-gradient(circle,
  rgba(255,182,193,.35) 0%,
  transparent 70%);

  filter:blur(40px);

  z-index:0;
}

/* IMAGE */

.emotion-image{
  position:relative;
  z-index:2;

  width:100%;
  max-width:420px;

  filter:
  drop-shadow(0 20px 40px rgba(255,182,193,.18));
}

/* =========================
DECOR
========================= */

.emotion-section::before{
  content:'🧁';

  position:absolute;

  top:100px;
  left:60px;

  font-size:28px;

  opacity:.08;
}

.emotion-section::after{
  content:'✨';

  position:absolute;

  bottom:80px;
  right:70px;

  font-size:34px;

  opacity:.08;
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.emotion-wrapper{
  flex-direction:column;

  gap:60px;
}

.emotion-content{
  max-width:100%;

  text-align:center;
}

.emotion-badge{
  margin:0 auto 24px;
}

.emotion-title{
  font-size:56px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.emotion-section{
  padding:80px 0;
}

/* TITLE */

.emotion-title{
  font-size:42px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:18px;
}

/* DESC */

.emotion-description{
  font-size:16px;

  margin-bottom:18px;
}

/* TEXT */

.emotion-text > p{
  font-size:15px;

  margin-bottom:18px;
}

/* LIST */

.emotion-list{
  gap:12px;
}

/* ITEM */

.emotion-item{
  padding:14px 16px;

  border-radius:18px;
}

/* TEXT */

.emotion-item p{
  font-size:14px;
}

/* FOOTER */

.emotion-footer{
  margin-top:24px;

  font-size:26px;
}

/* CARD */

.emotion-card{
  padding:20px;

  border-radius:28px;
}

/* IMAGE */

.emotion-image{
  max-width:300px;
}

/* DECOR */

.emotion-section::before{
  top:30px;
  left:16px;

  font-size:18px;
}

.emotion-section::after{
  display:none;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-cf24d19 *//* =========================
OFFER SECTION
========================= */

.offer-section{
  position:relative;

  padding:120px 0;

  background:
  linear-gradient(
    180deg,
    #fff0f3 0%,
    #ffe6ec 100%
  );

  overflow:hidden;
}

/* =========================
BADGE
========================= */

.offer-badge{
  width:fit-content;

  margin:0 auto 24px;

  padding:10px 18px;

  border-radius:999px;

  background:rgba(255,255,255,.65);

  border:1px solid rgba(255,255,255,.7);

  backdrop-filter:blur(14px);

  font-size:14px;
  font-weight:600;

  color:#9c7c82;
}

/* =========================
TITLE
========================= */

.offer-title{
  font-family:'Outfit',sans-serif;

  font-size:72px;
  line-height:.92;
  letter-spacing:-4px;
  font-weight:800;

  text-align:center;

  color:#2a1d1f;

  max-width:920px;

  margin:0 auto 22px;
}

.offer-title span{
  display:block;

  color:#ea7f91;
}

/* =========================
SUBTITLE
========================= */

.offer-subtitle{
  max-width:720px;

  margin:0 auto 60px;

  text-align:center;

  font-size:20px;
  line-height:1.7;
  font-weight:500;

  color:#6d5a5f;
}

/* =========================
CARD
========================= */

.offer-card{
  max-width:720px;

  margin:0 auto;

  padding:40px;

  border-radius:36px;

  background:
  rgba(255,255,255,.58);

  backdrop-filter:blur(20px);

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 30px 60px rgba(255,182,193,.12);
}

/* =========================
TOP
========================= */

.offer-top{
  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:10px;

  margin-bottom:28px;
}

/* APP */

.offer-app{
  font-size:16px;

  white-space:nowrap;
}

/* TAG */

.offer-tag{
  font-size:11px;

  padding:8px 12px;

  white-space:nowrap;
}

/* APP */

.offer-app{
  font-size:18px;
  font-weight:700;

  color:#2a1d1f;
}

/* TAG */

.offer-tag{
  padding:10px 16px;

  border-radius:999px;

  background:
  linear-gradient(
    135deg,
    #f7ccd4,
    #f1b1be
  );

  color:#8a4d59;

  font-size:13px;
  font-weight:700;
}

/* =========================
PRICE AREA
========================= */

.offer-price-area{
  text-align:center;

  margin-bottom:40px;
}

/* OLD PRICE */

.offer-old-price{
  font-size:18px;
  font-weight:700;

  color:#d56f84;

  text-decoration:line-through;

  margin-bottom:10px;
}

/* MAIN PRICE */

.offer-price{
  font-family:'Outfit',sans-serif;

  display:flex;
  align-items:flex-end;
  justify-content:center;

  gap:4px;

  margin-bottom:18px;

  color:#2a1d1f;

  line-height:.9;

  font-weight:800;
}

/* R$ */

.offer-price .currency{
  font-size:38px;

  margin-bottom:12px;
}

/* 27 */

.offer-price{
  font-size:110px;

  letter-spacing:-6px;
}

/* /mês */

.offer-price .period{
  font-size:34px;

  color:#ea7f91;

  letter-spacing:-1px;

  margin-bottom:14px;
}

/* MONTH TAG */

.offer-month{
  width:fit-content;

  margin:0 auto;

  padding:12px 20px;

  border-radius:999px;

  background:
  linear-gradient(
    135deg,
    #f8d4dc,
    #f2b5c2
  );

  color:#8a4d59;

  font-size:15px;
  font-weight:700;
}

/* =========================
BENEFITS
========================= */

.offer-benefits{
  display:flex;
  flex-direction:column;

  gap:16px;

  margin-bottom:40px;
}

/* BENEFIT */

.offer-benefit{
  padding:18px 20px;

  border-radius:18px;

  background:
  rgba(255,255,255,.72);

  border:1px solid rgba(255,255,255,.8);

  font-size:16px;
  font-weight:500;

  color:#3d2b30;
}

/* =========================
BUTTON
========================= */

.offer-button{
  width:100%;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:20px;

  border-radius:20px;

  background:
  linear-gradient(
    135deg,
    #25D366,
    #1ebe5d
  );

  color:#fff;

  text-decoration:none;

  font-size:18px;
  font-weight:700;

  transition:.3s ease;

  box-shadow:
  0 20px 40px rgba(234,127,145,.22);
}

.offer-button:hover{
  transform:translateY(-3px);
}

/* =========================
FOOT
========================= */

.offer-foot{
  margin-top:22px;

  text-align:center;

  font-size:14px;
  line-height:1.5;

  color:#7c676d;
}

/* =========================
DECOR
========================= */

.offer-section::before{
  content:'🧁';

  position:absolute;

  top:90px;
  left:60px;

  font-size:30px;

  opacity:.08;
}

.offer-section::after{
  content:'🍰';

  position:absolute;

  bottom:80px;
  right:70px;

  font-size:34px;

  opacity:.08;
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.offer-title{
  font-size:56px;
}

.offer-price{
  font-size:92px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.offer-section{
  padding:80px 0;
}

/* TITLE */

.offer-title{
  font-size:42px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:18px;
}

/* SUBTITLE */

.offer-subtitle{
  font-size:15px;

  margin-bottom:34px;
}

/* CARD */

.offer-card{
  padding:24px;

  border-radius:26px;
}

/* TOP */

.offer-top{
  flex-direction:column;

  align-items:flex-start;

  margin-bottom:28px;
}

/* PRICE */

.offer-price{
  font-size:74px;

  letter-spacing:-4px;
}

.offer-price .currency{
  font-size:26px;

  margin-bottom:8px;
}

.offer-price .period{
  font-size:22px;

  margin-bottom:10px;
}

/* MONTH */

.offer-month{
  font-size:12px;

  padding:10px 14px;
}

/* BENEFITS */

.offer-benefits{
  gap:12px;

  margin-bottom:28px;
}

.offer-benefit{
  padding:14px 16px;

  font-size:14px;
}

/* BUTTON */

.offer-button{
  padding:18px;

  font-size:16px;
}

/* FOOT */

.offer-foot{
  font-size:12px;
}

/* DECOR */

.offer-section::before{
  top:30px;
  left:16px;

  font-size:18px;
}

.offer-section::after{
  display:none;
}

/* =========================
MOBILE CLEAN OFFER TOP
========================= */

/* FECHA O PRIMEIRO MOBILE */
}

/* =========================
MOBILE CLEAN OFFER TOP
========================= */

@media(max-width:640px){

/* ESCONDE O NOME */

.offer-app{
  display:none !important;
}

/* TOPO */

.offer-top{
  display:flex !important;

  justify-content:center !important;

  margin-bottom:24px !important;
}

/* TAG CENTRALIZADA */

.offer-tag{
  font-size:11px !important;

  padding:10px 16px !important;

  border-radius:999px !important;

  white-space:nowrap !important;

  margin:0 auto !important;
}

}

/* =========================
FORÇA TAMANHO BOTÃO MOBILE
========================= */

@media(max-width:640px){

.offer-button{
  font-size:14px !important;

  line-height:1.3 !important;

  padding:16px 18px !important;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e6f61e5 *//* =========================
GUARANTEE SECTION
========================= */

.guarantee-section{
  position:relative;

  padding:120px 0;

  background:
  linear-gradient(
    180deg,
    #fff7f8 0%,
    #ffeef2 100%
  );

  overflow:hidden;
}

/* =========================
BADGE
========================= */

.guarantee-badge{
  width:fit-content;

  margin:0 auto 26px;

  padding:10px 18px;

  border-radius:999px;

  background:
  rgba(255,255,255,.6);

  backdrop-filter:blur(14px);

  border:1px solid rgba(255,255,255,.8);

  color:#9c7c82;

  font-size:14px;
  font-weight:700;
}

/* =========================
TITLE
========================= */

.guarantee-title{
  font-family:'Outfit',sans-serif;

  font-size:72px;
  line-height:.92;
  letter-spacing:-4px;
  font-weight:800;

  text-align:center;

  color:#2a1d1f;

  max-width:920px;

  margin:0 auto 30px;
}

.guarantee-title span{
  display:block;

  color:#ea7f91;
}

/* =========================
DESCRIPTION
========================= */

.guarantee-description{
  max-width:860px;

  margin:0 auto 28px;

  text-align:center;

  font-size:22px;
  line-height:1.8;
  font-weight:500;

  color:#5f4d52;
}

.guarantee-description strong{
  color:#ea7f91;
}

/* =========================
SUBTEXT
========================= */

.guarantee-sub{
  max-width:760px;

  margin:0 auto 50px;

  text-align:center;

  font-size:18px;
  line-height:1.7;

  color:#7a666c;
}

/* =========================
PREMIUM FEATURES BLOCK
========================= */

.guarantee-features{
  display:flex;
  align-items:center;
  justify-content:space-around;

  gap:20px;

  max-width:920px;

  margin:0 auto 42px;

  padding:34px;

  border-radius:34px;

  background:
  rgba(255,255,255,.58);

  backdrop-filter:blur(24px);

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 24px 50px rgba(255,182,193,.10);
}

/* FEATURE */

.guarantee-feature{
  flex:1;

  text-align:center;
}

/* ICON */

.feature-icon{
  width:64px;
  height:64px;

  margin:0 auto 16px;

  border-radius:20px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:
  linear-gradient(
    135deg,
    #f7ccd4,
    #f1b1be
  );

  font-size:26px;

  box-shadow:
  0 14px 30px rgba(234,127,145,.12);
}

/* TEXT */

.guarantee-feature p{
  font-size:16px;
  line-height:1.4;
  font-weight:600;

  color:#3d2b30;
}

/* =========================
BUTTON
========================= */

.guarantee-button{
  width:100%;
  max-width:620px;

  margin:0 auto;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:22px;

  border-radius:22px;

  background:
  linear-gradient(
    135deg,
    #25D366,
    #1ebe5d
  );

  color:#fff;

  text-decoration:none;

  font-size:20px;
  font-weight:700;

  box-shadow:
  0 20px 40px rgba(234,127,145,.22);

  transition:.3s ease;
}

.guarantee-button:hover{
  transform:translateY(-3px);
}

/* =========================
FOOT
========================= */

.guarantee-foot{
  margin-top:20px;

  text-align:center;

  font-size:15px;
  line-height:1.5;
  font-weight:600;

  color:#7c676d;
}

/* =========================
DECOR
========================= */

.guarantee-section::before{
  content:'✨';

  position:absolute;

  top:100px;
  left:60px;

  font-size:28px;

  opacity:.08;
}

.guarantee-section::after{
  content:'🧁';

  position:absolute;

  bottom:80px;
  right:70px;

  font-size:32px;

  opacity:.08;
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.guarantee-title{
  font-size:56px;
}

.guarantee-description{
  font-size:19px;
}

.guarantee-features{
  flex-direction:column;

  gap:24px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.guarantee-section{
  padding:80px 0;
}

/* ICON */

.guarantee-icon{
  width:82px;
  height:82px;

  font-size:30px;

  margin-bottom:18px;
}

/* TITLE */

.guarantee-title{
  font-size:42px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:20px;
}

/* DESCRIPTION */

.guarantee-description{
  font-size:15px;

  line-height:1.7;

  margin-bottom:18px;
}

/* SUB */

.guarantee-sub{
  font-size:14px;

  margin-bottom:30px;
}

/* FEATURES */

.guarantee-features{
  flex-direction:column;

  gap:22px;

  padding:24px;

  border-radius:24px;

  margin-bottom:28px;
}

/* ICON */

.feature-icon{
  width:52px;
  height:52px;

  border-radius:16px;

  font-size:22px;

  margin-bottom:12px;
}

/* TEXT */

.guarantee-feature p{
  font-size:14px;
}

/* BUTTON */

.guarantee-button{
  padding:18px;

  border-radius:18px;

  font-size:16px;
}

/* FOOT */

.guarantee-foot{
  font-size:12px;
}

/* DECOR */

.guarantee-section::before{
  top:30px;
  left:16px;

  font-size:18px;
}

.guarantee-section::after{
  display:none;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fc3be14 *//* =========================
LUNA FAQ SECTION
========================= */

.luna-faq-section{
  position:relative;

  padding:120px 0;

  background:
  linear-gradient(
    180deg,
    #fff0f3 0%,
    #fff7f8 100%
  );

  overflow:hidden;
}

/* =========================
BADGE
========================= */

.luna-faq-badge{
  width:fit-content;

  margin:0 auto 24px;

  padding:10px 18px;

  border-radius:999px;

  background:
  rgba(255,255,255,.65);

  backdrop-filter:blur(14px);

  border:1px solid rgba(255,255,255,.8);

  color:#9c7c82;

  font-size:14px;
  font-weight:700;
}

/* =========================
TITLE
========================= */

.luna-faq-title{
  font-family:'Outfit',sans-serif;

  font-size:72px;
  line-height:.92;
  letter-spacing:-4px;
  font-weight:800;

  text-align:center;

  color:#2a1d1f;

  margin:0 auto 60px;
}

.luna-faq-title span{
  display:block;

  color:#25D366;
}

/* =========================
WRAPPER
========================= */

.luna-faq-wrapper{
  max-width:860px;

  margin:0 auto;

  display:flex;
  flex-direction:column;

  gap:18px;
}

/* =========================
ITEM
========================= */

.luna-faq-item{
  border-radius:24px;

  overflow:hidden;

  background:#fff;

  border:1px solid rgba(255,255,255,.8);

  box-shadow:
  0 18px 40px rgba(255,182,193,.08);

  transition:.3s ease;
}

/* =========================
QUESTION
========================= */

.luna-faq-question{
  width:100%;

  padding:26px 30px;

  border:none;
  outline:none;

  background:#fff;

  display:flex;
  align-items:flex-start;
  justify-content:space-between;

  gap:18px;

  cursor:pointer;

  text-align:left;

  transition:.3s ease;

  font-family:'Outfit',sans-serif;

  color:#2a1d1f;
}

/* =========================
TEXT
========================= */

.luna-faq-text{
  flex:1;

  font-size:22px;
  line-height:1.4;
  font-weight:700;

  white-space:normal;

  word-break:break-word;
}

/* =========================
ICON
========================= */

.luna-faq-icon{
  flex-shrink:0;

  width:34px;
  height:34px;

  display:flex;
  align-items:center;
  justify-content:center;

  font-size:28px;
  line-height:1;

  color:#25D366;

  transition:.3s ease;

  margin-top:2px;
}

/* =========================
ANSWER
========================= */

.luna-faq-answer{
  max-height:0;

  overflow:hidden;

  padding:0 30px;

  background:#fff;

  transition:
  max-height .45s ease,
  padding .45s ease;
}

/* ANSWER TEXT */

.luna-faq-answer p{
  font-size:17px;
  line-height:1.8;
  font-weight:500;

  color:#6b585d;
}

/* =========================
ACTIVE
========================= */

.luna-faq-item.active .luna-faq-question{
  background:
  linear-gradient(
    135deg,
    #25D366,
    #1ebe5d
  );

  color:#fff;
}

.luna-faq-item.active .luna-faq-icon{
  color:#fff;

  transform:rotate(45deg);
}

.luna-faq-item.active .luna-faq-answer{
  max-height:400px;

  padding:24px 30px 30px;
}

/* =========================
DECOR
========================= */

.luna-faq-section::before{
  content:'🧁';

  position:absolute;

  top:100px;
  left:60px;

  font-size:28px;

  opacity:.08;
}

.luna-faq-section::after{
  content:'✨';

  position:absolute;

  bottom:80px;
  right:70px;

  font-size:32px;

  opacity:.08;
}

/* =========================
TABLET
========================= */

@media(max-width:980px){

.luna-faq-title{
  font-size:56px;
}

.luna-faq-text{
  font-size:20px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.luna-faq-section{
  padding:80px 0;
}

/* TITLE */

.luna-faq-title{
  font-size:42px;

  line-height:.95;

  letter-spacing:-2px;

  margin-bottom:34px;
}

/* WRAPPER */

.luna-faq-wrapper{
  gap:14px;
}

/* ITEM */

.luna-faq-item{
  border-radius:18px;
}

/* QUESTION */

.luna-faq-question{
  padding:20px 18px;

  gap:12px;
}

/* TEXT */

.luna-faq-text{
  font-size:15px;

  line-height:1.5;
}

/* ICON */

.luna-faq-icon{
  width:24px;
  height:24px;

  font-size:20px;

  margin-top:2px;
}

/* ANSWER */

.luna-faq-answer{
  padding:0 18px;
}

.luna-faq-item.active .luna-faq-answer{
  max-height:500px;

  padding:18px 18px 22px;
}

/* TEXT */

.luna-faq-answer p{
  font-size:14px;

  line-height:1.7;
}

/* DECOR */

.luna-faq-section::before{
  top:30px;
  left:16px;

  font-size:18px;
}

.luna-faq-section::after{
  display:none;
}

}/* End custom CSS */