/**
 * DenAku site-wide action button design (v1.0.15).
 * Loaded on EVERY public-facing WordPress page, including DenAku inner-page
 * shortcodes, Gutenberg/Elementor content and common contact-form builders.
 * Navigation, FAQ toggles, card links and the mobile menu are not CTA buttons.
 */
:root {
    --denaku-button-gradient: linear-gradient(105deg, #e64036 0%, #f15d2d 52%, #fb802c 100%);
    --denaku-button-gradient-shadow: 0 8px 20px rgba(226, 73, 46, .24);
}

/* Style only actionable button elements, not all links or page controls. */
body :is(
    .denaku-btn,
    a.button, button.button, input.button,
    a.btn, button.btn, input.btn,
    a.btn-primary, button.btn-primary,
    a[class*="denaku-"][class*="btn"],
    button[class*="denaku-"][class*="btn"],
    a[class*="denaku-"][class*="button"],
    button[class*="denaku-"][class*="button"],
    .denaku-inner a[class*="btn"],
    .denaku-inner a[class*="button"],
    .denaku-inner button[type="submit"],
    .denaku-inner input[type="submit"],
    .denaku-page a[class*="btn"],
    .denaku-page a[class*="button"],
    .denaku-page button[type="submit"],
    .wp-block-button__link,
    .wp-element-button,
    .elementor-button,
    .elementor-button-link,
    .wpforms-form button[type="submit"],
    .wpcf7-form input[type="submit"],
    .gform_wrapper input[type="submit"],
    .gform_wrapper button[type="submit"],
    .frm_forms input[type="submit"],
    .denaku-site button[type="submit"],
    input[type="submit"]
) {
    background: var(--denaku-button-gradient) !important;
    background-image: var(--denaku-button-gradient) !important;
    border: 0 !important;
    border-radius: 12px !important;
    color: #fff !important;
    box-shadow: var(--denaku-button-gradient-shadow) !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    text-align: center;
    text-shadow: none !important;
    padding: 15px 23px !important;
    max-width: 100%;
    white-space: normal;
    cursor: pointer;
    transition: filter .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

body :is(
    .denaku-btn,
    a.button, button.button, a.btn, button.btn,
    a.btn-primary, button.btn-primary,
    a[class*="denaku-"][class*="btn"],
    a[class*="denaku-"][class*="button"],
    .denaku-inner a[class*="btn"],
    .denaku-inner a[class*="button"],
    .denaku-page a[class*="btn"],
    .denaku-page a[class*="button"],
    .wp-block-button__link, .wp-element-button,
    .elementor-button, .elementor-button-link
) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

body :is(
    .denaku-btn,
    a.button, button.button, input.button,
    a.btn, button.btn, input.btn,
    a.btn-primary, button.btn-primary,
    a[class*="denaku-"][class*="btn"],
    button[class*="denaku-"][class*="btn"],
    a[class*="denaku-"][class*="button"],
    button[class*="denaku-"][class*="button"],
    .denaku-inner a[class*="btn"],
    .denaku-inner a[class*="button"],
    .denaku-inner button[type="submit"],
    .denaku-inner input[type="submit"],
    .denaku-page a[class*="btn"],
    .denaku-page a[class*="button"],
    .denaku-page button[type="submit"],
    .wp-block-button__link, .wp-element-button,
    .elementor-button, .elementor-button-link,
    .wpforms-form button[type="submit"],
    .wpcf7-form input[type="submit"],
    .gform_wrapper input[type="submit"],
    .gform_wrapper button[type="submit"],
    .frm_forms input[type="submit"],
    .denaku-site button[type="submit"],
    input[type="submit"]
):hover {
    filter: brightness(1.06);
    box-shadow: 0 10px 25px rgba(226, 73, 46, .3) !important;
}

body :is(
    .denaku-btn,
    a.button, button.button, input.button,
    a.btn, button.btn, input.btn,
    .wp-block-button__link, .wp-element-button,
    .elementor-button, .elementor-button-link,
    .wpforms-form button[type="submit"],
    .wpcf7-form input[type="submit"],
    .denaku-inner a[class*="btn"],
    .denaku-inner a[class*="button"],
    input[type="submit"]
):focus-visible {
    outline: 3px solid #181818 !important;
    outline-offset: 3px !important;
}

body :is(button, input[type="submit"], a.button, a.btn, .denaku-btn)[disabled],
body :is(button, input[type="submit"], a.button, a.btn, .denaku-btn)[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: .55;
    filter: grayscale(.35);
}

/* Carousel arrows ARE buttons, but keep their circular navigation treatment. */
body .denaku-site .denaku-slider-arrow {
    background: var(--denaku-button-gradient) !important;
    background-image: var(--denaku-button-gradient) !important;
    border-radius: 50% !important;
    box-shadow: var(--denaku-button-gradient-shadow) !important;
}
body .denaku-site .denaku-slider-arrow:hover { filter: brightness(1.08); }

/* Do not apply the rectangular treatment to the menu or small utility icons. */
body .denaku-header .denaku-menu-toggle,
body .denaku-footer .denaku-socials a { background-image: none; }

@media (max-width: 767px) {
    body :is(.denaku-btn, .wp-block-button__link, .wp-element-button, .elementor-button) {
        padding: 14px 19px !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    body :is(.denaku-btn, .wp-block-button__link, .wp-element-button, .elementor-button) {
        transition: none !important;
    }
}
