.elementor-207 .elementor-element.elementor-element-c7856ad{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-207 .elementor-element.elementor-element-7ca64cb{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-207 .elementor-element.elementor-element-4d50583{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-7ca64cb */.rf-hero{
  background:#0f1a22;
  color:#fff;
}

.rf-hero-overlay{
  padding:90px 20px 80px;
  text-align:center;
  display:flex;
  align-items:center;
  justify-content:center;
}

.rf-hero-content{
  max-width:880px;
  margin:0 auto;
}

/* Eyebrow */
.rf-eyebrow{
  color:#d4af37;
  font-weight:700;
  letter-spacing:.4px;
  font-size:15px;
}

/* Heading */
.rf-hero h1{
  margin:10px 0;
  font-size:40px;
  font-weight:800;
}

/* Text */
.rf-hero p{
  font-size:18px;
  line-height:1.7;
  opacity:.95;
  max-width:760px;
  margin:0 auto 18px;
}

.rf-hero h1{
  margin:10px 0 12px;
  font-size:40px;
  font-weight:800;
  color:#ffffff;   /* ensure visible */
}

.rf-hero p{
  color:#dfe6f0;
}


/* CTA Buttons */
.rf-cta-group{ margin-top:10px; }

.rf-cta-primary{
  display:inline-block;
  padding:12px 26px;
  border-radius:30px;
  background:#d4af37;
  color:#000;
  font-weight:700;
  text-decoration:none;
  margin-right:10px;
}

.rf-cta-secondary{
  display:inline-block;
  padding:12px 24px;
  border-radius:30px;
  border:2px solid #fff;
  color:#fff;
  text-decoration:none;
}

.rf-cta-primary:hover{ background:#ffd873; }
.rf-cta-secondary:hover{ background:#fff; color:#000; }

/* Mobile */
@media(max-width:768px){
  .rf-hero h1{ font-size:28px; }
  .rf-cta-primary,.rf-cta-secondary{
    display:block;
    margin:8px auto;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d11e39e *//* SECTION THEMES */
.light{background:#ffffff}
.soft{background:#f6f8fb}
.dark{background:#0b1217}

/* Section container */
.wrap{
  max-width:1180px;
  margin:0 auto;
  padding:70px 22px;
}

/* Headings */
.section-head{
  text-align:center;
  margin-bottom:18px;
}

.section-head h2{
  font-size:28px;
  font-weight:800;
  margin:0 0 6px;
  color:#0f1a22;
}

.section-head p{
  max-width:820px;
  margin:0 auto;
  line-height:1.7;
  color:#4a5568;
}

/* ---- STEP WORKFLOW ---- */
.steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  margin-top:18px;
}

.step{
  background:#ffffff;
  border-radius:18px;
  padding:20px;
  border:1px solid #e7eaef;
  box-shadow:0 8px 18px rgba(0,0,0,.05);
  transition:.25s;
  min-height:220px;
  display:flex;
  flex-direction:column;
}

.step:hover{
  transform:translateY(-4px);
  border-color:#d4af37;
}

.badge{
  background:#d4af37;
  color:#000;
  display:inline-block;
  border-radius:18px;
  padding:6px 12px;
  font-size:12px;
  font-weight:800;
  margin-bottom:8px;
}

.step h3{
  font-size:16px;
  margin:0 0 8px;
  color:#0f1a22;
}

.step p{
  margin-top:auto;
  color:#475569;
}

/* ---- REFERRAL OPTIONS ---- */
.options-head h2{color:#ffffff}
.options-head p{color:#cbd5e1}

.grid3{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.option{
  background:#14202b;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  padding:22px;
  transition:.25s;
}

.option:hover{
  transform:translateY(-4px);
  background:#1d2c38;
  border-color:#ffd84d;
}

.icon{
  width:40px;
  height:40px;
  border-radius:50%;
  background:#ffd84d;
  color:#000;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:10px;
}

.option h3{
  margin:0 0 6px;
  color:#ffffff;
}

.option p{
  color:#dbe3ec;
}

/* ---- CONTACT PANEL ---- */
.ref-contact{
  margin-top:26px;
  background:#ffffff;
  border:1px solid #e7eaef;
  border-radius:18px;
  padding:22px;
  box-shadow:0 8px 18px rgba(0,0,0,.05);
}

.ref-contact h3{
  margin:0 0 10px;
  font-weight:800;
}

.ref-contact-row{
  display:grid;
  grid-template-columns:140px auto;
  line-height:1.9;
}

.ref-contact span{
  font-weight:700;
  color:#0f1a22;
}

/* ---- TEMPLATE CARDS ---- */
.templates{
  margin-top:26px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.temp-card{
  background:#ffffff;
  border:1px solid #e6e8ee;
  border-radius:18px;
  padding:26px;
  text-align:center;
  transition:.25s;
  box-shadow:0 8px 18px rgba(0,0,0,.06);
}

.temp-card:hover{
  transform:translateY(-4px);
  border-color:#d4af37;
}

.temp-card img{
  max-width:170px;
  margin-bottom:10px;
}

.temp-btn{
  display:inline-block;
  padding:10px 22px;
  border-radius:26px;
  border:1px solid #c9cdd5;
  background:#fff;
  font-weight:700;
  color:#000;
  text-decoration:none;
}

/* ---- CTA ---- */
.refer-cta{
  background:linear-gradient(135deg,#0b1217,#121b22);
  text-align:center;
  color:#ffffff;
}

.refer-btn{
  display:inline-block;
  padding:12px 28px;
  margin-top:10px;
  background:#d4af37;
  color:#000;
  border-radius:30px;
  font-weight:800;
  text-decoration:none;
}

/* ---- RESPONSIVE ---- */
@media(max-width:1000px){
  .steps{grid-template-columns:repeat(2,1fr)}
  .grid3{grid-template-columns:repeat(2,1fr)}
  .templates{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:650px){
  .steps,.grid3,.templates{grid-template-columns:1fr}
  .section-head{text-align:left}
}/* End custom CSS */