/* ===============================
   ACCORDION BLURB – STYLES
================================ */

.accordion-blurb {
  position: relative;
  cursor: pointer;
}

/* Hide description by default */
.accordion-blurb .et_pb_blurb_description {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition:
    max-height 0.4s ease,
    opacity 0.3s ease;
}

/* Open state */
.accordion-blurb.is-open .et_pb_blurb_description {
  max-height: 500px;
  opacity: 1;
}

/* Header positioning */
.accordion-blurb .et_pb_module_header {
  position: relative;
  padding-right: 56px; /* space for icon */
}

/* ===============================
   ICON CONTAINER
================================ */

.accordion-blurb .accordion-icon {
  position: absolute;
  right: 0;
  top: 40%;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  border: 1px solid #0c284c;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  transition:
    background-color 0.25s ease,
    border-color 0.25s ease;
  pointer-events: none;
}

/* ===============================
   ARROW (FIXED)
================================ */

.accordion-blurb .accordion-icon::before {
  content: '';
  width: 6px;
  height: 6px;
  border-right: 2px solid #0c284c;
  border-bottom: 2px solid #0c284c;
  position: absolute;
  top: 8px;

  /* FIX: center-based rotation */
  transform: rotate(45deg);
  transform-origin: center;
  transition: transform 0.25s ease;
}

/* Open state arrow */
.accordion-blurb.is-open .accordion-icon::before {
  transform: rotate(-135deg);
  position: absolute;
  top: 12px;
}

/* ===============================
   HOVER STATES
================================ */

.accordion-blurb:hover .accordion-icon {
  background-color: #29abe2;
  border-color: #29abe2;
}

/* ===============================
   OPTIONAL: subtle hover feedback
================================ */

.accordion-blurb:hover {
  border-color: #29abe2;
}
