* {
  box-sizing: border-box;
}

a {
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px;
}

/* First, reset the default outline */
button:focus,
a:focus,
.wdse-accordion-trigger:focus {
  outline: none;
}

/* Then, apply a custom focus style ONLY when focus is visible (keyboard navigation) */
button:focus-visible,
a:focus-visible {
  outline: 2px solid var(--wp--preset--color--contrast);
  outline-offset: 2px;
}

/* For elements that might not be buttons or links but are interactive,
   you'd apply similar rules: */
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.wdse-accordion-trigger:focus-visible {
  outline: 2px solid var(--wp--preset--color--contrast);
  outline-offset: 2px;
}

html {
  scroll-behavior: smooth;
}

/**
 * Header
 */
body:not(.page-template-wp-custom-template-page-fullwidth-transparent-heading)
  .wp-block-kadence-navigation.navigation-desktop-orientation-horizontal
  .navigation[class*='navigation-desktop-style-underline']
  > .menu-container
  > .menu
  > .menu-item
  > .kb-link-wrap
  > .kb-nav-link-content:after {
  background: var(--wp--preset--color--contrast-4);
  opacity: 0.7;
}

@media (min-width: 1025px) {
  .wp-block-kadence-navigation.navigation-desktop-orientation-horizontal
    .menu-item:not(.kb-nav-link-sub-click):hover
    > .sub-menu {
    padding: 20px;
  }
}
.kb-off-canvas-inner {
  justify-content: space-between;
}
header .kb-link-wrap .kb-nav-link-content,
.bluebird-footer-menu a {
  text-decoration-color: var(--wp--preset--color--accent-2) !important;
}
header .kb-link-wrap:hover .kb-nav-link-content,
.bluebird-footer-menu a:hover {
  text-decoration: underline;
  text-decoration-color: var(--wp--preset--color--accent-2) !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 5px;
}

header figure {
  display: flex;
  flex-direction: column;
}

.kb-nav-desktop-horizontal-layout-standard {
  height: fit-content;
}

.wp-block-kadence-header-row .kadence-header-row-inner {
  max-width: calc(1244px + 60px) !important;
}

.menu-item-has-children button {
  transition: transform ease-in-out 0.3s;
}
@media (max-width: 1024px) {
  .menu-item-has-children.menu-item--toggled-on button > svg {
    transform: rotate(180deg);
  }
}
@media (min-width: 1025px) {
  .menu-item-has-children:hover button {
    transform: rotate(180deg);
  }
}
.bluebird-header-btn:hover .kt-btn-inner-text {
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 5px;
}

/**
 * Footer
 */
/* Disclosure */
#disclosure-toggle svg {
  display: flex;
  transition: transform 0.3s ease-in-out;
}

#disclosure-toggle.is-open svg {
  transform: rotate(180deg);
}

.disclosure-content {
  opacity: 0;
  height: 0px;
  overflow: hidden;
  transition: opacity 0.3s ease-in;
}

.disclosure-content.is-open {
  height: 100%;
  opacity: 1;
}

.wdse-footer-email {
  word-break: break-word;
}

.wdse-footer-second-row .kt-row-column-wrap {
  border-top: 1px solid var(--wp--preset--color--accent);
}

.bluebird-footer-button .kb-adv-text-inner {
  text-decoration-color: var(--wp--preset--color--accent-2) !important;
  text-decoration: underline;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 5px;
}

.bluebird-footer-button:hover .kb-adv-text-inner {
  text-decoration: none;
}
.wp-site-blocks .bbpw-btn {
  gap: 22px;
  .kb-svg-icon-wrap svg {
    transition: transform 0.3s ease-in-out;
  }
}
.wp-site-blocks .bbpw-btn:not(.bio-toggle):hover .kb-svg-icon-wrap svg,
.wp-site-blocks .bbpw-btn.is-open .kb-svg-icon-wrap svg {
  transform: rotate(-90deg);
}
.wp-site-blocks .bbpw-btn .kb-svg-icon-wrap {
  background-color: var(--wp--preset--color--accent-2);
}

/* .bluebird-footer-menu ul {
  grid-auto-flow: column;
  grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
} */

.wp-block-query .case_studies a {
  text-decoration: none !important;
}
