/* ==========================================================================
   WP Block Styles — button, buttons, accordion, list
   Converted from SCSS/Tailwind to plain CSS.
   Colors: primary #2C2874 | secondary #00B0A5 | contrast #DA1174
   ========================================================================== */

/* --------------------------------------------------------------------------
   wp-buttons
   -------------------------------------------------------------------------- */

.wp-block-buttons {
    margin-block-start: 1.5rem;
}

.wp-block-buttons.is-style-evenly {
    justify-content: space-evenly;
}

.wp-block-buttons.is-style-evenly .wp-block-button {
    flex: 1 1 0%;
}

@media screen and (max-width: 639px) {
    .wp-block-buttons {
        flex-direction: column;
    }
    .wp-block-buttons .wp-block-button {
        width: 100%;
    }
    .wp-block-buttons .wp-block-button .wp-element-button {
        width: 100%;
        justify-content: center;
    }
}

/* --------------------------------------------------------------------------
   wp-button
   -------------------------------------------------------------------------- */

.wp-block-button .wp-element-button {
    opacity: 1 !important;
    text-decoration: none !important;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: #2C2874;
    font-weight: 600;
    background-color: rgba(218, 17, 116, 0.1);
    box-shadow: 0 0 0 2px rgba(218, 17, 116, 0.25);
    border-radius: 0.375rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.625rem;
    transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-button .wp-element-button::after {
    display: block;
    line-height: 0;
    flex-shrink: 0;
}

.wp-block-button .wp-element-button:hover {
    background-color: rgba(218, 17, 116, 0.2);
    box-shadow: 0 0 0 2px rgba(218, 17, 116, 0.4);
}

.wp-block-button.is-style-download-button .wp-element-button::after {
    content: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_22710_561)'%3E%3Cpath d='M13.125 9.375V11.875C13.125 12.2065 12.9933 12.5245 12.7589 12.7589C12.5245 12.9933 12.2065 13.125 11.875 13.125H3.125C2.79348 13.125 2.47554 12.9933 2.24112 12.7589C2.0067 12.5245 1.875 12.2065 1.875 11.875V9.375M4.375 6.25L7.5 9.375M7.5 9.375L10.625 6.25M7.5 9.375V1.875' stroke='%232C2874' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_22710_561'%3E%3Crect width='15' height='15' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
}

.wp-block-button.is-style-circle-arrow-button .wp-element-button::after {
    content: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 26 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.9997 3.24999C7.6149 3.24999 3.24967 7.61522 3.24967 13C3.24967 18.3848 7.6149 22.75 12.9997 22.75C18.3845 22.75 22.7497 18.3848 22.7497 13C22.7497 7.61521 18.3845 3.24999 12.9997 3.24999ZM8.66634 14.0833C8.06803 14.0833 7.58301 13.5983 7.58301 13C7.58301 12.4017 8.06803 11.9167 8.66634 11.9167L14.7178 11.9167L12.2337 9.43261C11.8107 9.00954 11.8107 8.32378 12.2337 7.90071C12.6568 7.47764 13.3426 7.47764 13.7656 7.90071L18.099 12.234C18.522 12.6571 18.522 13.3429 18.099 13.7659L13.7656 18.0993C13.3426 18.5223 12.6568 18.5223 12.2337 18.0993C11.8107 17.6762 11.8107 16.9904 12.2337 16.5674L14.7178 14.0833L8.66634 14.0833ZM12.9997 1.08333C19.5811 1.08333 24.9163 6.4186 24.9163 13C24.9163 19.5814 19.5811 24.9167 12.9997 24.9167C6.41828 24.9167 1.08301 19.5814 1.08301 13C1.08301 6.4186 6.41828 1.08333 12.9997 1.08333Z' fill='%230A1A5C'/%3E%3C/svg%3E");
    transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-button.is-style-circle-arrow-button .wp-element-button:hover::after {
    transform: translateX(0.25rem);
}

.wp-block-button.is-style-arrow-down-button .wp-element-button {
    background-color: rgba(0, 176, 165, 0.1);
    box-shadow: 0 0 0 1px rgba(0, 176, 165, 0.25);
    border-radius: 4px;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    gap: 0.5rem;
    justify-content: center;
    font-size: 0.875rem;
    letter-spacing: 0.02em;
}

.wp-block-button.is-style-arrow-down-button .wp-element-button::after {
    content: url("data:image/svg+xml,%3Csvg width='10' height='12' viewBox='0 0 10 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 1L5 11M1 7L5 11L9 7' stroke='%232C2874' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.wp-block-button.is-style-arrow-down-button .wp-element-button:hover {
    background-color: rgba(0, 176, 165, 0.2);
    box-shadow: 0 0 0 1px rgba(0, 176, 165, 0.4);
}

.wp-block-button.is-style-arrow-down-button .wp-element-button:hover::after {
    transform: translateY(0.125rem);
}

/* --------------------------------------------------------------------------
   wp-accordion
   -------------------------------------------------------------------------- */

.wp-block-accordion {
    margin-block-start: 2rem;
    margin-block-end: 3rem;
}

.wp-block-accordion .wp-block-accordion-item {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    border-radius: 0.5rem;
    background-color: rgba(0, 176, 165, 0.1);
    box-shadow: 0 0 0 2px rgba(0, 176, 165, 0.25);
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

@media screen and (min-width: 640px) {
    .wp-block-accordion .wp-block-accordion-item {
        padding-top: 0.625rem;
        padding-bottom: 0.625rem;
    }
}

@media screen and (min-width: 1024px) {
    .wp-block-accordion .wp-block-accordion-item:hover {
        background-color: rgba(0, 176, 165, 0.2);
        box-shadow: 0 0 0 2px rgba(0, 176, 165, 0.4);
    }

    .wp-block-accordion .wp-block-accordion-item:hover .wp-block-accordion-heading__toggle-icon {
        background-color: #D1D5DB;
    }
}

.wp-block-accordion .wp-block-accordion-item .wp-block-accordion-heading__toggle {
    gap: 1rem;
}

.wp-block-accordion .wp-block-accordion-item[open],
.wp-block-accordion .wp-block-accordion-item.is-open {
    padding-bottom: 1.5rem;
}

.wp-block-accordion .wp-block-accordion-item[open] .wp-block-accordion-heading__toggle-icon::before,
.wp-block-accordion .wp-block-accordion-item.is-open .wp-block-accordion-heading__toggle-icon::before {
    content: '−';
}

.wp-block-accordion .wp-block-accordion-item h3,
.wp-block-accordion .wp-block-accordion-item .wp-block-accordion-heading {
    margin-bottom: 0;
}

@media screen and (min-width: 768px) {
    .wp-block-accordion .wp-block-accordion-item h3,
    .wp-block-accordion .wp-block-accordion-item .wp-block-accordion-heading {
        font-size: 1.25rem !important;
    }
}

@media screen and (max-width: 768px) {
    .wp-block-accordion .wp-block-accordion-item h3,
    .wp-block-accordion .wp-block-accordion-item .wp-block-accordion-heading {
        font-size: 1.125rem !important;
    }
}

.wp-block-accordion .wp-block-accordion-item .wp-block-accordion-heading__toggle-icon {
    opacity: 1 !important;
    color: transparent !important;
    transform: rotate(0deg) !important;
    background-color: #E5E7EB;
    font-weight: 400;
    font-size: 1.5rem;
    border-radius: 9999px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.wp-block-accordion .wp-block-accordion-item .wp-block-accordion-heading__toggle-icon::before {
    content: '+';
    color: initial;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.wp-block-accordion .wp-block-accordion-item .wp-block-accordion-panel {
    margin-top: 1rem;
}
