.ct-header-text a {
	--theme-text-decoration: none !important;
}

/* Hides the reCAPTCHA badge on every page */
.grecaptcha-badge { visibility: hidden; }

/* Class used to temporarily hide objects in the editor */
.hidden-temp {
	display:none !important
}

/* =========================
   HIDE ON MOBILE
   ========================= */
@media (max-width: 768px) {
  .hide-on-mobile,
  .hide-on-mobile * ,
  .wp-block-image.hide-on-mobile,
  figure.hide-on-mobile,
  .wp-block-cover .hide-on-mobile,
  .wp-block-media-text .hide-on-mobile {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
}

/* =========================
   HIDE ON TABLET
   ========================= */
@media (min-width: 769px) and (max-width: 1024px) {
  .hide-on-tablet,
  .hide-on-tablet * ,
  .wp-block-image.hide-on-tablet,
  figure.hide-on-tablet,
  .wp-block-cover .hide-on-tablet,
  .wp-block-media-text .hide-on-tablet {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
}

/* =========================
   HIDE ON DESKTOP
   ========================= */
@media (min-width: 1025px) {
  .hide-on-desktop,
  .hide-on-desktop * ,
  .wp-block-image.hide-on-desktop,
  figure.hide-on-desktop,
  .wp-block-cover .hide-on-desktop,
  .wp-block-media-text .hide-on-desktop {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
}

/* =========================
   SHOW ONLY ON MOBILE / TABLET / DESKTOP
   ========================= */

/* Show only on mobile */
.show-on-mobile {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
@media (max-width: 768px) {
  .show-on-mobile {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
  }
}

/* Show only on tablet */
.show-on-tablet {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
@media (min-width: 769px) and (max-width: 1024px) {
  .show-on-tablet {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
  }
}

/* Show only on desktop */
.show-on-desktop {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
@media (min-width: 1025px) {
  .show-on-desktop {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
  }
}

/* Adds padding to the top of the logo image on business card pages on tablet and mobile */
@media (max-width: 768px) {
	.bc-logo {
	padding-top: 10px;
	}
}


/* Map popup background and text */
.leaflet-popup-content-wrapper {
    background: #102A5B;  /* primary blue */
    color: #FFFFFF;       /* white text */
    font-family: sans-serif;
    font-size: 16px;
}
.leaflet-popup-tip {
    background: #102A5B;
}



/* Base style for clickable blocks */
.clickable-block {
    position: relative;
    z-index: 1;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}

/* Ensure the column wrapper has a default white background */
.clickable-block .stk-column-wrapper {
    background-color: #ffffff;
    transition: background-color 0.3s ease;
}

/* Hover state */
.clickable-block:hover {
    transform: translateY(-5px) scale(1.03);
    box-shadow: 0 10px 20px rgba(0,0,0,0.4);
    z-index: 10; /* rise above other blocks */
}

/* Apply blue background to the visible wrapper and all text white */
.clickable-block:hover .stk-column-wrapper {
    background-color: #102A5B !important; /* brand blue */
}

.clickable-block:hover h3,
.clickable-block:hover p {
    color: #ffffff !important; /* white text */
}

/* Make sure the transparent link doesn’t block the background */
.clickable-block .stk--transparent-overlay {
    z-index: 5; /* sits below hover background */
}



