.custom-mega-menu-panel, .custom-mega-menu-panel-mobile {
  border-radius: 1em;
}
.custom-mega-menu-panel h2, .custom-mega-menu-panel-mobile h2 {
  font-size: var(--wp--preset--font-size--xx-small);
  font-family: Manrope;
  font-weight: 800;
  font-style: ExtraBold;
  leading-trim: NONE;
  line-height: 100%;
  letter-spacing: 1.7px;
  text-transform: uppercase;
  color: var(--wp--preset--color--tmb-text-grey);
  margin: 0 0 1em 0;
}
.custom-mega-menu-panel h3, .custom-mega-menu-panel-mobile h3 {
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--tmb-text-dark-grey);
  font-weight: 700;
}
.custom-mega-menu-panel p, .custom-mega-menu-panel .wp-block-button__link, .custom-mega-menu-panel-mobile p, .custom-mega-menu-panel-mobile .wp-block-button__link {
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--tmb-text-grey);
  line-height: 1em;
}
.custom-mega-menu-panel p.wp-block-button__link, .custom-mega-menu-panel .wp-block-button__link.wp-block-button__link, .custom-mega-menu-panel-mobile p.wp-block-button__link, .custom-mega-menu-panel-mobile .wp-block-button__link.wp-block-button__link {
  padding: 0.5em 1em;
}
.mega-menu-desktop-wrapper .custom-mega-menu-panel.is-size-normal, .mega-menu-desktop-wrapper .custom-mega-menu-panel-mobile.is-size-normal {
  --menu-base-width: 350px;
  --column-base-width: 150px;
}
.custom-mega-menu-panel .wp-block-columns, .custom-mega-menu-panel-mobile .wp-block-columns {
  margin-bottom: 1em;
}

.wp-block-navigation .wp-block-navigation-item__content {
  --nav-link-hover: var(--wp--preset--color--tmb-light-blue);
}
.wp-block-navigation .wp-block-navigation-item__content .wp-block-navigation-item__label {
  border-radius: 0.5em;
}

@media (min-width: 1025px) {
  .nav-drawer .wp-block-group:has(> :is(.is-style-is-member, .is-style-is-guest) > .is-style-primary-header-nav) {
    width: 100%;
    justify-content: center;
    max-width: none;
    margin-top: revert-layer;
  }
  .nav-drawer .wp-block-group.desktop-align-right a {
    white-space: nowrap;
  }
}
header .wp-block-button.csi-render-slug-person.csi-pos-left a.wp-block-button__link {
  font-size: 0;
  padding-left: 0;
  padding-right: 0;
}
header .wp-block-button.csi-render-slug-person.csi-pos-left a.wp-block-button__link:before {
  background-size: auto;
  width: 46px;
  height: 46px;
  border-radius: 50vmin;
  border: 1px solid var(--wp--preset--color--tmb-blue);
}
header .wp-block-button.csi-render-slug-person.csi-pos-left a.wp-block-button__link:hover:before {
  background-color: var(--wp--preset--color--tmb-light-blue);
}

.wp-block-cover__inner-container.wp-block-cover-is-layout-constrained > * {
  margin-block-start: 1.2rem;
  margin-block-end: 0;
}

p.wp-block-paragraph:is(.has-small-font-size, .has-x-small-font-size, .has-xx-small-font-size):has(+ h2.wp-block-heading) {
  margin-bottom: 0;
}
p.wp-block-paragraph:is(.has-small-font-size, .has-x-small-font-size, .has-xx-small-font-size):has(+ h2.wp-block-heading) + h2.wp-block-heading {
  margin-block-start: 0;
}

:root :where(.wp-element-button, .wp-block-button__link) {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.entry-content > .wp-block-group.alignfull:not(.has-background):nth-child(odd) {
  background-color: #FFF;
}

.wp-block-query.show-default-images:not(.wp-block-terms-query *) .wp-block-post {
  --post-aspect-ratio: 16 / 9;
}
.wp-block-query.show-default-images:not(.wp-block-terms-query *) .wp-block-post .wp-block-post-featured-image img {
  aspect-ratio: var(--post-aspect-ratio);
}
.wp-block-query.show-default-images:not(.wp-block-terms-query *) .wp-block-post:not(:has(.wp-block-post-featured-image))::before {
  content: "";
  display: block;
  width: 100%;
  /* 1. This forces the responsive fixed proportions (e.g., 16/9, 4/3, or 1/1) */
  aspect-ratio: var(--post-aspect-ratio);
  /* 2. Natural spacing to push down titles/content below it */
  border-radius: 4px; /* Optional: matches your layout corners */
  /* 3. Inline URL-encoded SVG background */
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://w3.org' width='100' height='100' viewBox='0 0 24 24' fill='none' stroke='%23cccccc' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='3' width='18' height='18' rx='2' ry='2'/><circle cx='8.5' cy='8.5' r='1.5'/><polyline points='21 15 16 10 5 21'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 48px; /* Keeps the central icon a consistent size */
  background-color: #f0f0f0; /* Default placeholder background fill */
}

@keyframes arrow-bounce {
  0% {
    transform: translateY(-1px) translateX(0px) rotate(45deg);
  }
  100% {
    transform: translateY(-1px) translateX(5px) rotate(45deg);
  }
}
.animated-link, .wp-block-post-excerpt__more-text {
  display: inline-flex;
  align-items: center;
  gap: 6px; /* Spaces the text out from the upcoming arrow */
  text-decoration: none;
  color: #0073aa; /* Example WordPress blue */
  font-weight: 600;
  transition: color 0.2s ease;
}
.animated-link:after, .wp-block-post-excerpt__more-text:after {
  content: "";
  display: inline-block;
  /* 1. Sizing the arrow lines */
  width: 6px;
  height: 6px;
  /* 2. Form a right-facing chevron using borders */
  border-top: 2px solid currentColor; /* Inherits your link text color automatically */
  border-right: 2px solid currentColor;
  /* 3. Rotate it 45 degrees to point right */
  transform: rotate(45deg);
  /* 4. Fine-tuning alignment and smooth animation */
  margin-left: 0;
  transition: transform 0.25s cubic-bezier(0.25, 1, 0.5, 1);
}
.animated-link:hover::after, .wp-block-post-excerpt__more-text:hover::after {
  animation: arrow-bounce 0.6s infinite alternate ease-in-out;
}

@media (max-width: 1024px) {
  header:has(.nav-responsive-container) {
    --drawer-padding: 1rem;
  }
  header:has(.nav-responsive-container) .nav-responsive-container .nav-drawer {
    border-radius: var(--drawer-padding);
    margin: var(--drawer-padding);
    height: calc(100vh - var(--drawer-padding) - var(--drawer-padding) - 46px);
    box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.3);
    right: var(--drawer-padding);
  }
  header:has(.nav-responsive-container) .nav-responsive-container .nav-drawer nav {
    height: calc(100vh - var(--nav-logo-spacing) - 46px - var(--drawer-padding) - var(--drawer-padding));
  }
  header:has(.nav-responsive-container:target, .nav-responsive-container.is-active, .is-mobile-preview .nav-responsive-container.editor-open-fallback, .is-tablet-preview .nav-responsive-container.editor-open-fallback) .wp-block-site-logo.is-default-size {
    transform: translate(calc(100vw - var(--drawer-width) - var(--drawer-padding) - var(--drawer-padding)), calc(3 * var(--drawer-padding))) !important;
  }
  body.admin-bar .nav-responsive-container .nav-drawer .wp-block-search__button-inside.wp-block-search__icon-button.wp-block-search {
    top: 4px !important;
    right: 3rem;
  }
}
.wp-block-breadcrumbs li > span {
  color: var(--wp--preset--color--tmb-blue);
}

.wp-block-cover.alignfull .wp-block-cover__inner-container {
  margin: auto !important;
  width: var(--wp--style--global--wide-size) !important;
}
.wp-block-cover.alignfull .wp-block-cover__inner-container.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: 100%;
}
.wp-block-cover.alignfull .wp-block-cover__inner-container .wp-block-columns {
  padding-right: 33%;
}

.wp-block-group.alignwide.has-border-color > details.is-style-plus {
  margin-top: 0;
}
.wp-block-group.alignwide.has-border-color > details.is-style-plus > summary:hover {
  background-color: var(--wp--preset--color--tmb-ice-blue);
}
.wp-block-group.alignwide.has-border-color > details.is-style-plus > summary + * {
  margin-top: 0;
  padding-top: 0;
}
.wp-block-group.alignwide.has-border-color > details.is-style-plus[open] {
  background-color: var(--wp--preset--color--tmb-ice-blue);
}

.wp-block-table.is-style-stripes {
  border-radius: 1em;
}
.wp-block-table.is-style-stripes thead {
  background-color: var(--wp--preset--color--tmb-navy);
  color: white;
}
.wp-block-table.is-style-stripes tbody th {
  font-weight: 200;
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background-color: var(--wp--preset--color--tmb-ice-blue);
}
.wp-block-table.is-style-stripes tbody tr > td:last-child {
  color: Var(--wp--preset--color--tmb-blue);
}

.wp-block-media-text.alignwide.has-media-on-the-right .wp-block-media-text__content {
  padding-left: 0;
}
.wp-block-media-text.alignwide.has-media-on-the-left .wp-block-media-text__content {
  padding-right: 0;
}

.no-wrap-text {
  white-space: nowrap;
  overflow: auto; /* Adds a horizontal scrollbar if the text is too long */
}

/*# sourceMappingURL=theme.css.map */
