
.accordion-wrapper {
  display: flex;
  gap: 60px;
  align-items: flex-start;
  width: 100%;
  box-sizing: border-box;
}

.accordion-wrapper > .child {
  flex:1;
}

/* STEP */

.step {
  position: relative;
  padding-left: 20px;
  padding-bottom: 26px; /* spacing INCLUDED in line height */
}

/* LINE */

.line {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: #fff;
  transition: background 0.55s ease;
}

.step.active .line {
  background: #6699FF;
}

/* TITLE */

.step-title {
  cursor: pointer;
}

.step-title h3 {
  margin: 0;
  font-size: 24px;
  font-weight: 600;
  color: #1A2640;
  transition: color 0.55s ease;
}

.step.active .step-title h3 {
  color: #111;
}

/* CONTENT */

.step-content {
  font-size: 16px;
  color:#7B7B7B;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.55s ease;
}

.step-content-inner {
  margin-top: 8px;
  color: #666;
  transform: translateY(-10px);
  transition: transform 0.55s ease;
}

.step.active .step-content {
  max-height: 140px;
}

.step.active .step-content-inner {
  transform: translateY(0);
}

/* RIGHT SIDE IMAGES */

.steps-images {
  display: grid;
  grid-template-columns: 1fr;
  align-self: center; 
  width: 100%;
  max-width: 604px;
  margin: 0 auto;
}

.steps-images img {
  grid-column: 1;
  grid-row: 1;
  width: 100%; 
  height: auto;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.55s ease, visibility 0.55s ease;
  z-index: 1;
}

.steps-images img.active {
  opacity: 1;
  visibility: visible;
  z-index: 2;
}

@media (max-width: 768px) {
  .accordion-wrapper {
    flex-direction: column;
    gap: 40px;
  }
  
  .steps {
    width: 100%;
  }

  .steps-images {
    height: auto;
  }
}


.section_title {
    background-color: #f0f5ff;
    color: #0E121B;
    border-radius: 8px;
    padding: 4px 8px;
    width: fit-content;
    display: flex;
    align-items: center;
    gap: 4px;
}

.content_title {
    font-size: 64px;
    font-weight: 300;
    font-family: Metropolis;
    color:#1A2640;
}

.content_subtitle {
    color: #000;
}

.pill_button {
    background: linear-gradient(to right,#6699FF, #1A2640);
    width: fit-content;
    padding: 12px 24px;
    border-radius: 999px;
    color: #fff;
    font-size: 16px;
}


@media (max-width: 1023px) {

  #hero .pill_button {
    margin: 40px auto 0 auto;
  }
}



.child {
  box-sizing: border-box;
}

/* Div 1: Desktop side-by-side, Mobile/Tablet stacked */
.div-1 { display: flex; flex-direction: column; }
@media (min-width: 1024px) {
  .div-1 { flex-direction: row; }
  .div-1 .child { flex: 1; }
}

/* Div 2: Desktop/Tablet 3-col, Mobile stacked */
.div-2 { display: flex; flex-direction: column; }
@media (min-width: 769px) {
  .div-2 { flex-direction: row; }
  .div-2 .child { flex: 1; }
}


/* Div 2a: Desktop 3-col, Tablet 2-col, Mobile stacked */
.div-2a { display: flex; flex-direction: column; }
@media (min-width: 769px) {
  .div-2a { flex-direction: row;  flex-wrap: wrap;}
  .div-2a > .child {  flex: 0 0 calc(50% - 32px); }
}
@media (min-width: 1024px) {
  .div-2a { flex-direction: row;  flex-wrap: wrap;}
  .div-2a > .child { flex:1 }
}



/* Div 3: Desktop side-by-side, Mobile/Tablet swapped stacking */
.div-3 { display: flex; flex-direction: column-reverse; }
@media (min-width: 1024px) {
  .div-3 { flex-direction: row; }
  .div-3 .child { flex: 1; }
}

/* Div 4: Tablet side-by-side, Desktop/Mobile stacked */
.div-4 { display: flex; flex-direction: column; }
@media (min-width: 769px) and (max-width: 1023px) {
  .div-4 { flex-direction: row; }
  .div-4 .child { flex: 1; }
}

/* Div 5: Complex Grid */
.div-5 { display: grid; grid-template-columns: 1fr; gap: 10px; }
@media (min-width: 769px) {
  .div-5 { grid-template-columns: 1fr 1fr; }
  .div-5 .c1 { grid-column: span 2; } /* Full width top */
}
@media (min-width: 1024px) {
  .div-5 { grid-template-columns: repeat(6, 1fr); }
  .div-5 .c1 { grid-column: span 4; } /* 2/3 width */
  .div-5 .c2 { grid-column: span 2; } /* 1/3 width */
  .div-5 .c3, .div-5 .c4, .div-5 .c5 { grid-column: span 2; } /* 3 equal on 2nd line */
}


#full-slideshow {
  width: auto; 
  background: linear-gradient(#e5eeff,#c3d6f9);
  margin: 0 30px;
  box-sizing: border-box; 
  padding:80px 0; 
  margin-top:80px;
  border-radius: 32px;

}

/* BLOG - FAQ */

.accordion {
  max-width: 860px;
  margin: 0 auto;
}

.accordion-item {
  display: block;
  border: 1px solid var(--base-primary-400);
  border-radius: 12px;
  margin-top: 16px;
}

.accordion-title {
  width: 100%;
  border-radius:12px;
  padding: 12px;
  background: #fff;
  border: none;
  text-align: left;
  cursor: pointer;
  font-size: 24px;
  font-weight: 600;
  line-height: 32px;
}

.accordion-content {
  padding: 12px;
  display: none;
  color:#334D80;
  font-size:16px;
  line-height:22px;
}

.accordion-item.active .accordion-content {
  display: block;
  border:0;
}

.accordion-item.active {
  background: linear-gradient(to right,#eef4ff,#cedefb);
  border:0;
}

.accordion-item.active .accordion-title {
  background: transparent;
}


/*
for smooth

.accordion-content {
  max-height: 0;
  overflow: hidden;
  padding: 0 12px;
  transition: max-height 0.3s ease, padding 0.3s ease;
}
.accordion-item.active .accordion-content {
  max-height: 200px;  must be big enough for content 
  padding: 12px;
}

*/