/* =========================================
   ACCORDION (generic)
   ========================================= */

.c-accordion{
  margin:64px 0;
}

/* Header row: title + intro on same line */
.c-accordion__header{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:baseline;
  margin-bottom:28px;
}

.c-accordion__heading{
  margin:0;               /* was margin-bottom: 28px; now handled by header */
}

.c-accordion__intro{
  margin:0;
  max-width:70ch;
  text-align:right;
}

/* Stack header on small screens */
@media (max-width:768px){
  .c-accordion__header{
    flex-direction:column;
    align-items:flex-start;
  }
  .c-accordion__intro{
    text-align:left;
    max-width:unset;
  }
}

.c-accordion__list{
  display:grid;
  gap:8px;
}

.c-accordion__item{
  border-bottom:1px solid #1a1f2a;
}

.c-accordion__trigger{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 0;
  background:none;
  border:0;
  text-align:left;
  font:inherit;
  cursor:pointer;
  color:#1a1f2a;
}

/* Optional: improve keyboard focus visibility */
.c-accordion__trigger:focus-visible{
  outline:2px solid currentColor;
  outline-offset:4px;
}

.c-accordion__title{
  font-weight:500;
  padding-left:22px;
}

.c-accordion__panel{
  padding-bottom:12px;
}

.c-accordion__content{
  padding:2rem;
}

.c-accordion__content p{
  margin:8px 0 0;
}

.c-accordion__link{
  text-decoration:underline;
  padding:2px;
}

/* Icon base */
.c-accordion__icon{
  position:relative;
  width:14px;
  height:14px;
  flex-shrink:0;
}

/* =========================================
   ICON: PLUS (default)
   ========================================= */
[data-accordion-icon="plus"] .c-accordion__icon::before,
[data-accordion-icon="plus"] .c-accordion__icon::after{
  content:"";
  position:absolute;
  inset:0;
  margin:auto;
  background:currentColor;
}

[data-accordion-icon="plus"] .c-accordion__icon::before{
  height:1px;
  width:100%;
}

[data-accordion-icon="plus"] .c-accordion__icon::after{
  width:1px;
  height:100%;
}

[data-accordion-icon="plus"] .c-accordion__trigger[aria-expanded="true"] .c-accordion__icon::after{
  opacity:0;
}

/* =========================================
   ICON: CHEVRON
   ========================================= */
[data-accordion-icon="chevron"] .c-accordion__icon::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:8px;
  height:8px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:translate(-50%, -50%) rotate(45deg);
  transition:transform 150ms ease;
}

[data-accordion-icon="chevron"] .c-accordion__trigger[aria-expanded="true"] .c-accordion__icon::before{
  transform:translate(-50%, -50%) rotate(-135deg);
}

/* =========================================
   Astra / global button shadow override
   ========================================= */
button,
.ast-button,
.button,
input[type="button"],
input[type="reset"],
input[type="submit"],
a:where(.wp-block-button__link){
  box-shadow:none;
}
