/* #region "../src/elements/accordion/accordion.scss" */
/*
- type: css
*/
/*******************************
 * Buttons
 ******************************/
/*
 * Applies the complete set of button styles with all desired style variations.
 * This mixin is normally applied to form buttons or links with
 * the desired button classes eg. .button.style-xxx.
 */
/*
 * Contains styles that all of the buttons have in common.
 * Some button styles might opt out or override some of these styles.
 * One benefit of this approach is that all of the buttons will be consistently
 * configurable with the CSS variables defined below.
 */
/*******************************
 * Button Styles
 *
 * Styles should define the way the buttons look. Depending on the project,
 * you may need to optimize each style based on the section / element that
 * a button is used in. For that purpose you can use the predefined CSS
 * variables to easily overwrite the desired colors based on your need.
 ******************************/
/*******************************
 * Inputs
 ******************************/
.accordion-group {
  --accordion-padding: clamp(1.25rem, 1.0769230769rem + 0.7692307692vw, 1.75rem);
  --accordion-icon-offset: clamp(2.5rem, 1.9807692308rem + 2.3076923077vw, 4rem);
  --accordion-icon-wrapper-size: clamp(2.625rem, 2.2355769231rem + 1.7307692308vw, 3.75rem);
  --accordion-icon-size: 1rem;
  --accordion-gap: clamp(1.125rem, 0.9951923077rem + 0.5769230769vw, 1.5rem);
  --accordion-decoration: var(--primary);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  row-gap: var(--accordion-gap);
}

.accordion {
  --card-padding: 0;
  flex-grow: 1;
  position: relative;
}
.accordion .icon-wrapper {
  position: absolute;
  left: var(--accordion-icon-offset);
  margin-left: calc(-0.5 * var(--accordion-icon-wrapper-size));
}
.accordion .accordion-heading-wrapper {
  position: relative;
}
.accordion .accordion-heading {
  --focus-offset: -6px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  display: inline-flex;
  align-items: center;
  font: inherit;
  line-height: 1;
  letter-spacing: inherit;
  word-spacing: inherit;
  white-space: nowrap;
  background: none;
  color: inherit;
  text-align: left;
  position: relative;
  z-index: 1;
  padding: var(--accordion-padding);
  display: flex;
  font-size: 1rem;
  font-weight: 700;
  gap: clamp(0.75rem, 0.4903846154rem + 1.1538461538vw, 1.5rem);
  align-items: center;
  cursor: pointer;
  justify-content: space-between;
  border-radius: var(--large-radius);
  width: 100%;
  white-space: normal;
  text-align: left;
  line-height: 1.2;
}
:root.no-focus-visible .accordion .accordion-heading:focus {
  outline: var(--focus-width, 2px) solid var(--focus-color, #f04d23);
  outline-offset: var(--focus-offset, 3px);
}

.accordion .accordion-heading:focus:not(:focus-visible) {
  outline: none;
}
.accordion .accordion-heading:focus-visible {
  outline: var(--focus-width, 2px) solid var(--focus-color, #f04d23);
  outline-offset: var(--focus-offset, 3px);
}
.accordion .accordion-heading:is(.accordion-wrapper.style-large *) {
  font-size: clamp(1.375rem, 1.3317307692rem + 0.1923076923vw, 1.5rem);
}
body.no-js .accordion .accordion-heading {
  cursor: default;
}

.accordion .accordion-heading .accordion-icon-wrapper {
  --offset: calc(-0.5 * (var(--accordion-icon-wrapper-size) - var(--accordion-icon-size)));
  flex-shrink: 0;
  width: var(--accordion-icon-wrapper-size);
  height: var(--accordion-icon-wrapper-size);
  margin: var(--offset) var(--offset) var(--offset) 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--accordion-decoration);
  border-radius: 50%;
  background-color: var(--accordion-background);
}
.accordion .accordion-heading .toggle-icon {
  width: var(--accordion-icon-size);
  height: var(--accordion-icon-size);
}
body.no-js .accordion .accordion-heading .toggle-wrapper {
  display: none;
}

.accordion .accordion-heading .toggle-icon-vertical {
  transition: transform 300ms;
  transform-origin: center center;
}
.accordion .accordion-inner {
  position: relative;
  z-index: 1;
  padding: 0 var(--accordion-padding) var(--accordion-padding);
  display: none;
}
.accordion .accordion-inner:last-of-type {
  position: relative;
  top: -1px;
}
.accordion .accordion-inner > :first-child {
  margin-top: 0;
}
.accordion .accordion-inner > :last-child {
  margin-bottom: 0;
}
body.no-js .accordion .accordion-inner {
  display: block;
}

.accordion.accordion-open .accordion-heading .toggle-icon-vertical {
  transform: scaleY(0);
}
/* #endregion "../src/elements/accordion/accordion.scss" */

head{--webpack--css-wpce--accordion:&\.\.\/src\/elements\/accordion\/accordion\.scss;}
/*# sourceMappingURL=css-wpce--accordion.css.map*/