/* Minimal base. Keep your UI styling separately if you want. */
.sae-accordion { border-top: 1px solid #e9e9e9; }
.sae-item { border-bottom: 1px solid #e9e9e9; }

.sae-trigger{
  width:100%;
  display:flex;
  align-items:flex-start;
  gap:24px;
  background:transparent;
  border:0;
  padding:26px 0;
  text-align:left;
  cursor:pointer;
}

.sae-panel{
  height:0;
  overflow:hidden;
  opacity:0;
  transition:height .42s ease, opacity .28s ease;
  will-change:height, opacity;
}
.sae-item.is-open .sae-panel{ opacity:1; }
/* reset any theme/button styles on our accordion trigger */
.sae-wrap .sae-trigger{
  background: transparent !important;
  color: inherit !important;
  border: 0 !important;
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  border-radius: 0 !important;
}

/* overall row spacing like the design */
.sae-wrap .sae-item{
  border-bottom: 1px solid #e9e9e9;
  padding: 32px 0;
}
.sae-wrap .sae-accordion{
  border-top: 1px solid #e9e9e9;
}

/* row layout: number | text | arrow */
.sae-wrap .sae-trigger{
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 28px;
  padding: 0 !important; /* important to kill theme padding */
}

/* number */
.sae-wrap .sae-num{
  font-weight: 600;
  line-height: 1;
  margin-top: 6px;
}

/* text stack */
.sae-wrap .sae-head{
  flex: 1;
  min-width: 0;
}
.sae-wrap .sae-title{
  display:block;
  font-size: 40px;       /* adjust to match your design */
  line-height: 1.1;
  margin-bottom: 14px;
}
.sae-wrap .sae-best{
  display:block;
  font-size: 18px;
  line-height: 1.5;
}

.sae-wrap .sae-arrow img{
  display:block;
}


/* 4) Force-wrap all text (titles, best for, description) */
.sae-wrap .sae-title,
.sae-wrap .sae-best,
.sae-wrap .sae-desc{
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

span.sae-best strong {
    color: inherit !important;
}
.elementor-10 .elementor-element.elementor-element-2ba4b8d .sae-item:not(.is-open) span.sae-arrow {
    opacity: 0;
    transition: .4s;
}

/* panel text */
.sae-wrap .sae-panel-inner{
  padding-left: 42px;
  padding-right:80px;
  padding-top: 12px;
}
.sae-wrap .sae-desc{
  max-width: 850px;
  font-size: 18px;
  line-height: 1.55;
  margin: 0;
}

/* stop flex children from overflowing the container */
.sae-wrap .sae-trigger { 
  max-width: 100%;
}

.sae-wrap .sae-head{
  flex: 1 1 auto;
  min-width: 0;          /* MOST IMPORTANT in flex layouts */
}

/* force long titles to wrap instead of overflowing */
.sae-wrap .sae-title{
  max-width: 100%;
  overflow-wrap: anywhere;  /* breaks long strings if needed */
  word-break: break-word;
  white-space: normal;
}