.elfy-phb-wrap{
  padding: 24px 0;
}

.elfy-phb-inner{
  /*max-width: 1320px;*/
  margin: 0 auto;
  padding: 0 0px;
}

.elfy-phb-box{
  --elfy-left: #0d4770;
  --elfy-right: #3A7CAA;
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  min-height: 280px;
  display: flex;
  align-items: center;
  padding: 48px 54px;

  background: linear-gradient(90deg, var(--elfy-left) 0%, #0F3E3E 55%, var(--elfy-right) 100%);
}

/* grid overlay */
.elfy-phb-box::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px);
  background-size: 64px 64px;
  opacity: .35;
  pointer-events:none;
}

/* vignette/soft shadows */
.elfy-phb-box::after{
  content:"";
  position:absolute;
  inset:-30%;
  background:
    radial-gradient(circle at 30% 60%, rgba(0,0,0,0.45), transparent 55%),
    radial-gradient(circle at 70% 40%, rgba(0,0,0,0.35), transparent 60%);
  pointer-events:none;
}

/* content */
.elfy-phb-content{
  position: relative;
  z-index: 2;
  max-width: 680px;
  color: #fff;
}

.elfy-phb-topline{
  display:flex;
  align-items:center;
  gap: 14px;
  margin: 0 0 18px;
}

.elfy-phb-stars{
  display:flex;
  gap: 6px;
}

.elfy-phb-star{
  width: 18px;
  height: 18px;
  fill: #FFC107;
}

.elfy-phb-trusted{
  font-size: 16px;
  color: rgba(255,255,255,0.92);
}

/* Title */
.elfy-phb-title{
  font-family: "Instrument Serif", serif !important;
  font-size: 56px;
  font-weight: 400;
  line-height: 0.95;
  margin: 0 0 18px;
  color: #fff;
}

/* Desc */
.elfy-phb-desc{
  font-size: 20px;
  line-height: 1.6;
  color: rgba(255,255,255,0.92);
  margin: 0 0 26px;
  max-width: 560px;
}

/* Button */
.elfy-phb-btn{
  display: inline-flex;
  align-items: center;
  gap: 18px;
  padding: 14px 18px 14px 28px;
  border-radius: 999px;
  background: #00C36B;
  color: #fff;
  text-decoration: none;
  font-size: 22px;
  font-weight: 500;
  position: relative;
}

.elfy-phb-btn-arrow{
  width: 46px;
  height: 46px;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(0,0,0,0.22);
}

.elfy-phb-btn-arrow svg{
  width: 22px;
  height: 22px;
  color: #fff;
}

/* Badge (Trust Seal) */
.elfy-phb-badge{
  position: absolute;
  right: 70px;
  top: 50%;
  transform: translateY(-50%);
  width: 117px;
  height: 117px;
  border-radius: 999px;
  background: #C6F06B;
  z-index: 2;
  display:flex;
  align-items:center;
  justify-content:center;

  /* trust seal feel */
  box-shadow:
    0 18px 40px rgba(0,0,0,0.28),
    inset 0 2px 0 rgba(255,255,255,0.35);
}

.elfy-phb-seal-svg{
  width: 156px;
  height: 156px;
  /* ✅ Stagnant (no rotation) */
  animation: none !important;
}

.elfy-phb-seal-ring-outer{
  fill: transparent;
  stroke: rgba(0,0,0,0.72);
  stroke-width: 3;
}

.elfy-phb-seal-ring-inner{
  fill: rgba(255,255,255,0.12);
  stroke: rgba(0,0,0,0.55);
  stroke-width: 2;
  stroke-dasharray: 4 6; /* subtle seal pattern */
}

.elfy-phb-seal-dot{
  fill: rgba(0,0,0,0.65);
}

.elfy-phb-seal-top{
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.5px;
  fill: rgba(0,0,0,0.85);
}

.elfy-phb-seal-year{
  font-size: 34px;
  font-weight: 800;
  letter-spacing: 1px;
  fill: rgba(0,0,0,0.9);
}

.elfy-phb-badge-img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Responsive */
@media (max-width: 1024px){
  .elfy-phb-badge{ right: 24px; width: 140px; height: 140px; }
  .elfy-phb-seal-svg{ width: 140px; height: 140px; }
  .elfy-phb-seal-year{ font-size: 32px; }
}

@media (max-width: 767px){
  .elfy-phb-badge{ display:none; }
}


/* ---------- MOBILE FIXES ---------- */
@media (max-width: 767px){

  /* HERO TITLE – smaller & balanced */
  .elfy-phb-title{
    font-size: clamp(32px, 8vw, 40px);     /* ↓ from 52 */
    line-height: 1.05;
    margin-bottom: 14px;
  }

  /* DESCRIPTION */
  .elfy-phb-desc{
    font-size: 15px;
    line-height: 1.55;
    margin-bottom: 20px;
  }

  /* BUTTON – fix pill shape */
  .elfy-phb-btn{
    font-size: 16px;
    padding: 12px 14px 12px 18px;
    gap: 10px;
    border-radius: 999px;
    white-space: nowrap;
  }

  .elfy-phb-btn-text{
    line-height: 1;
  }

  .elfy-phb-btn-arrow{
    width: 36px;
    height: 36px;
    flex-shrink: 0;
  }

  .elfy-phb-btn-arrow svg{
    width: 18px;
    height: 18px;
  }
  
  .elfy-phb-box{
      padding: 48px 30px;
  }

}

