/*
Theme Name: OnePress Child
Theme URI: https://www.famethemes.com/themes/onepress/
Author: FameThemes
Author URI: http://www.famethemes.com
Description: OnePress is an outstanding creative and flexible WordPress one page theme well suited for business website, portfolio, digital agency, product showcase, freelancers and everyone else who appreciate good design. The theme overall is an elegant and classic one, a fine example of Bootstrap 4 WordPress theme which compatibility with latest version of WooCommerce. (Live preview : https://demos.famethemes.com/onepress)
Version: 10.9.25
Template:     onepress-hammersmith
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: onepress
*/
.fa6, .fa6b, .fa6l{
  font-family: 'Font Awesome 6 Pro' !important;
}
.fa6b{
  font-weight: bold !important;
}
.fa6l{
  font-weight: 300 !important
}
.fa-twitter:before {
  content: "\e61b"  !important;
  font-family: 'Font Awesome 6 Brands';
}
.breadcrumbs{
  display: none;
}

.no-sidebar .entry-content > .alignfull{
max-width: 100vw;
max-width: calc(var(--vw, 1vw) * 100);
width: 100vw;
width: calc(var(--vw, 1vw) * 100);
transform: translateX(-50%);
left: 50%;
position: relative;
}
.kt-inner-column-height-full.kt-tab-layout-inherit:not(.kt-row-layout-row)>.wp-block-kadence-column>.kt-inside-inner-col, .kt-inner-column-height-full.kt-tab-layout-row>.wp-block-kadence-column>.kt-inside-inner-col{
  height: 100% !important;
}
.no-sidebar .entry-content > .alignfull{
  transform: unset;
  width: 100%;
  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: -50%;
  margin-left: -50vw;
}
img {
  border-radius:  8px;
}
#page{
  overflow-x: hidden;
}
.onepress-menu a{
  letter-spacing: 0;
  text-transform: none;
}

#primary{
	padding-top: 0; padding-bottom: 0;
}
.entry-content{
	margin-bottom: 0;
}
.no-sidebar .entry-content > .alignfull{
	margin-top: 0;
	margin-bottom: 0;
}
p {
  font-size: 1em;
  font-family: Poppins;
}
.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__content{
  padding-right: 0;
}
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{
  padding-left: 0;
}
#masthead{
  padding: 15px 0
}
.site-branding .no-logo-img.has-desc, .site-branding .has-logo-img, .site-header{
  line-height: unset;
}
#masthead > .container{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#masthead > .container > div{
  flex: 1;
}
#masthead > .container > div.site-branding{
  max-width: 300px;
  float: none;
}
.header-right-wrapper{
  text-align: right;
}
.onepress-menu{
  float: none;
  text-align: right;
  display: inline-block;
}
.onepress-menu ul, .onepress-menu li{
  text-align: left
}
.onepress-menu > li{
  float: none;
  display: inline-block;
}

.wp-block-columns{
  margin-bottom: 0;
}
p:empty{
  display: none;
}
#back-to-top{
  position: fixed;
  bottom: 0;
  right: 10px;
  background: gray;
  padding: 5px 10px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  color: #fff;
  border: 0;
}
.tab-slider .kt-tabs-title-list{
  display: none !important;
}
.tab-slider .kt-tabs-content-wrap .wp-block-kadence-tab{
  padding: 0 !important;
  outline: none !important;
  border: 0 !important
}
.tab-slider .kt-tabs-content-wrap .ab-block-container{
  position: relative;
}
.tab-slider .kt-tabs-content-wrap .ab-block-container:before{
  content: '';
  padding-bottom: 30%;
  display: block;
  position: relative;
}
.tab-slider .kt-tabs-content-wrap .ab-block-container .ab-container-content{
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  left: 50%;
  width: 100%;
  z-index: 20
}
.thumbnail.square, .thumbnail.rectangular{
  position: relative;
}
.thumbnail.square:before, .thumbnail.rectangular:before{
  content: '';
  padding-bottom: 100%;
  position: relative;
  display: block;
}
.thumbnail.rectangular:before{
  padding-bottom: 56%;
}
.thumbnail.square img, .thumbnail.rectangular img{
  position: absolute; top: 0; left: 0; right: 0; bottom: 0;
  height: 100%; width: 100%; object-fit: cover;
}
#page .pagination{
  display: block;
  margin: 20px 0;
}
#page .pagination .page-numbers{
  padding: 3px 12px 5px;
  border: 1px solid;
  margin-right: 5px;
  border-radius: 2px;
  text-decoration: none !important
}
#page .pagination .page-numbers.current, #page .pagination .page-numbers:hover{
  background: #ddd;
  text-decoration: none;
}
#page .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), #page .gform_wrapper select, #page .gform_wrapper textarea{
  width: 100%;
  padding: 10px;
  line-height: unset;
  box-shadow: none;
  background: #fff;
  min-height: unset;
  outline: none;
}
#page .gform_wrapper .gform_footer{
  margin-top: 20px;
}
.kb-blocks-bg-video-container .fluid-width-video-wrapper{
  padding-top: 0 !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.offset-to-left, .offset-to-right{
  width: calc(100% +((100vw - 1140px) / 2));
}
.offset-to-left{
  margin-left: calc(((100vw - 1140px) / 2)* -1);
}

.about-nav {
  display: flex;
  list-style-type: none;
  padding-left: 0px;
  margin: 0px;
}
.about-nav li a {
  text-transform: uppercase;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.about-nav li a:hover {
  color: #bc5aa2 !important;
}
.about-nav li {
  margin-left: 0px !important;
  margin-right: 20px;
}

.about-hero h1 {
  color: #003348;
  font-size: 36px; 
}
.about-hero p {
  font-size: 22px;
}
.entry-content li {
  margin-left: 0px;
}
@media (max-width: 1200px){
  .offset-to-left, .offset-to-right{
    width: 100%;
  }
  .offset-to-left{
    margin-left:0
  }
  #nav_menu-2 ul, #nav_menu-2 ul li{
    padding: 0;
  }
  .container{
    width: 100%;
  }
  #nav-toggle span, #nav-toggle span:before, #nav-toggle span:after{
    background: #A06443;
  }
  #nav-toggle{
    position: relative;
    top: 0;
    display: block
  }
  .onepress-menu ul.sub-menu li a {
    color: #bc5aa2 !important;
    text-decoration: none;
    font-size: 18px;
  }
  .onepress-menu{
    top: 0 !important;
    height: 100% !important;
    position: fixed !important;
    bottom: 0;
    right: 0;
    max-width: 400px;
    background: #4C525D;
    padding-top: 70px;
    padding-left: 30px;
    padding-right: 30px;
    margin-top: 0 !important;
    background: #fff !important;
  }
  #footer-widgets #text-3 .textwidget p {
    color: #000 !important;
  }
  .onepress-menu.onepress-menu-mobile a{
    color: #fff ;
  }
  .onepress-menu.onepress-menu-mobile li{
    background: #fff;
  }
  .onepress-menu.onepress-menu-mobile li a{
    padding-left: 0; padding-right: 0;
    text-transform:normal;
  }
  .onepress-menu ul, .onepress-menu ul li a{
    background: transparent;
  }
  .onepress-menu a{
    font-size: 20px;
  }
  .onepress-menu li.current-menu-item > a, .onepress-menu li a:hover{
    color: #0c0c0c !important;
  }
  .onepress-menu .nav-toggle-subarrow{
    left: unset !important;
    right: 0;
  }
  .onepress-menu .nav-toggle-subarrow{
    border-left: 0 !important;
  }
  .onepress-menu.onepress-menu-mobile li{
    border-top: 1px solid #A06443;
  }

  .onepress-menu.onepress-menu-mobile > li > a, .onepress-menu.onepress-menu-mobile .nav-toggle-subarrow{
    padding: 20px;
  }
  .onepress-menu{
    transition: right .2s;
    right: -100%;
  }
  .onepress-menu.onepress-menu-mobile{
    right: 0;
    box-shadow: 2px -5px 9px #a6a6a6
  }
  .onepress-menu.onepress-menu-mobile ul li a{
    padding: 12px 20px;
  }
  .onepress-menu{
    transform: none;
  }
  #nav-toggle.nav-is-visible {
    position: fixed;
    top: 30px;
    z-index: 10000000;
    right: 30px;
  }
  #nav-toggle.nav-is-visible span:before, #nav-toggle.nav-is-visible span:after{
    background: #fff;
  }
  .onepress-menu li ul:before{
    display: none;
  }
  .onepress-menu > li >ul{
    padding: 0 0px 0 20px !important;
  }
  #nav-toggle span{
    width: 36px;
  }
  #nav-toggle span:before, #nav-toggle span:after{
    width: 30px;
  }
  #nav-toggle.nav-is-visible span:after{
    top: 10px;
  }
  #nav-toggle.nav-is-visible span:before{
    top: -10px;
  }
  #content-inside {
    padding: 0 25px;
  }
  .entry-content > .alignfull.gb-block-container:not(.full-width-content) > div > .gb-container-content,
  .entry-content > .alignfull:not(.full-width-content) > div > .kt-row-column-wrap,
  .entry-content > .alignfull:not(.full-width-content) > .kt-row-column-wrap{
    padding-left: 25px !important;
    padding-right: 25px !important;
  }
  #masthead .overlay{
    position: fixed;
    top: 0; left: 0; bottom: 0;
    background: #000;
    opacity: 0;
    right: -100%;
    transition: opacity .5s;
    z-index: 100;
    width: 0;
  }
  #masthead .nav-is-visible + .overlay{
    right: 0;
    width: 100%;
    opacity: 0.6;
  }
}




body {
  font-size: 20px;
  font-family: 'Poppins', sans-serif;
}
h1, h2, h3, h4, h5, h6 {
   font-family: "Capriola", sans-serif;
  font-weight: 600;
}

h1 {
  font-weight: 500;
  font-size: 60px;
}
h2 {
  font-weight: 500;
}
h3 {
  font-size: 28px;
  font-weight: 500;
}
h3 strong {
  font-weight: 600;
}
.calendar-container h3 {
  font-weight: 400;
}
.wp-block-button a {
  font-size: 18px;
}
.payment-gateway p {
  font-size: 15px;
}
/* ============================================================
 *    Express Engine  Header, Navigation, Search & Buttons (added)
 *    ============================================================ */

/* Navigation font: Poppins */
.onepress-menu,
.onepress-menu a,
#site-navigation,
#nav-toggle {
    font-family: 'Poppins', sans-serif;
  font-weight: normal;font-size: 18px
}

/* Shorter header */
#masthead {
    padding-top: 8px;
    padding-bottom: 8px;
}
#masthead > .container {
  max-width: 1250px;
}
#masthead .custom-logo {
    max-height: 90px;
    width: auto;
    transition: max-height .3s ease;
}
.onepress-menu .outline-nav a {
  border: 1px solid #bc5aa2;
  padding: 10px;
  border-radius: 30px;
  width: 120px; text-align: center;
  
}
/* Sticky header shrink-on-scroll */
#masthead.header-fixed {
    transition: padding .3s ease, box-shadow .3s ease;
}
#masthead.ee-scrolled {
    padding-top: 4px;
    padding-bottom: 4px;
    box-shadow: 0 4px 14px rgba(0,0,0,.1);
}
#masthead.ee-scrolled .custom-logo {
    max-height: 44px;
}

/* Header search (icon + expandable form beside the menu) */
.header-right-wrapper {
    display: flex;
    align-items: center;
    justify-content: right;
    column-gap: 60px
}
.ee-header-search {
    position: relative;
    display: flex;
    align-items: center;
    margin-left: 16px;
}
.ee-search-toggle {
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    line-height: 1;
    color: #4a4a4a;
    display: inline-flex;
    transition: color .25s ease, transform .25s ease;
}
.ee-search-toggle:hover {
    color: #C0367D;
    transform: scale(1.15);
}
.ee-search-form {
    display: none;
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    min-width: 350px;
    background: #fff;
    padding: 10px;
    border-radius: 8px;
    box-shadow: 0 10px 25px rgba(0,0,0,.15);
    z-index: 999;
}
.ee-search-form.is-active {
    display: block;
}
.ee-search-form .search-form {
    display: flex;
    gap: 6px;
}
.ee-search-form input.search-field {
    flex: 1;
    min-width: 0;
    padding: 8px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
}
.ee-search-form input.search-submit {
    padding: 8px 12px;
    border: none;
    border-radius: 4px;
    background: #C0367D;
    color: #fff;
    cursor: pointer;
    font-family: 'Bricolage Grotesque', sans-serif;
    transition: background .25s ease, transform .25s ease;
}
.ee-search-form input.search-submit:hover {
    background: #a12868;
    transform: translateY(-2px);
}

/* Buttons: font + hover/animation effect, applied site-wide */
.kt-button,
.kb-button,
.wp-block-button__link,
.onepress-menu li.outline-nav > a,
.gform_button,
button,
input[type="submit"],
input[type="button"] {
    font-family: 'Bricolage Grotesque', sans-serif;
    transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease, color .25s ease, border-color .25s ease;
}
.kt-button:hover,
.kb-button:hover,
.wp-block-button__link:hover,
.onepress-menu li.outline-nav > a:hover,
.gform_button:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
    box-shadow: 0 10px 20px rgba(0,0,0,.15);
}
.kt-button:active,
.wp-block-button__link:active,
.onepress-menu li.outline-nav > a:active {
    transform: translateY(-1px) scale(1);
}

/* Description section (section 3) gradient background */
.entry-content .kb-row-layout-id19_5cb301-f6.has-hs-6-background-color {
    background: linear-gradient(180deg, #49c6c6 0%, #2f7fd8 100%);
}
.counter-container .wp-block-image {
  margin-bottom: 0px;

}
.counter-container .wp-block-image img {
  max-height: 55px;
}
.h-counter .kb-count-up-process {
  color: #bc5aa2;
  font-size: 60px;
  font-weight: 600;
  font-family: Poppins;
}
.h-counter .kb-count-up-title
{
  font-family: "Capriola", sans-serif;
  font-weight: 500;
  margin-top: -10px;
}
#nav_menu-2 {
  max-width: 100px;
  margin: auto
}
#nav_menu-2 ul a {
  text-transform: uppercase;
  color: #BC5AA2;
  font-weight: 600;
}
#footer-1 form {
  display: flex;
}
#colophon #footer-1 form input[type="email"] {
  border: 1px solid #BC5AA2 !important;
  color: #BC5AA2;
  font-size: 14px;
}
#colophon #footer-1 form input[type="submit"] {
  background: #BC5AA2;
  font-size: 14px;
}
#page .gform_wrapper .gform_footer {
  margin: 0px;
}
#footer-3 img {max-width: 225px!important;}
#footer-3 aside {
  text-align:center;
}

/* ===== Rays graphic beside intro paragraph ===== */
.rays {
    position: relative;
}
.rays::before,
.rays::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 34px;
    height: 120px;
    background: url('../../uploads/2026/07/rays.svg') no-repeat center center;
    background-size: contain;
    transform: translateY(-50%);
    pointer-events: none;
}
.rays::before {
    left: -70px;
   transform: translateY(-50%) scaleX(-1);
}
.rays::after {
    right: -70px;
    transform: translateY(-50%) scaleX(1);
}
@media (max-width: 767px) {
    .rays::before,
  .rays::after {
        display: none;
  }
}
.impact-img, .impact-img img {
  padding: 0px;
  margin: 0px;
}
.entry-content blockquote
{
  background: transparent;
}

.kt-accodion-icon-style-basic .kt-blocks-accordion-icon-trigger:after, .kt-accodion-icon-style-basic .kt-blocks-accordion-icon-trigger:before, .kt-accodion-icon-style-basiccircle .kt-blocks-accordion-icon-trigger:after, .kt-accodion-icon-style-basiccircle .kt-blocks-accordion-icon-trigger:before {
  height: 2px !important;
  width: 14px !important;
  left: 5px !important;
  top: 11px !important;
}

/* ===================================================
   FAQ Accordion - Custom Plus/Minus Circle Icons
=================================================== */
.kt-blocks-accordion-icon-trigger {
	background-color: transparent !important;
	border-radius: 0 !important;
	background-image: url('../../uploads/2026/07/plus-circle.svg') !important;
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: contain !important;
	width: 28px !important;
	height: 28px !important;
	transition: transform 0.3s ease !important;
	display: inline-block !important;
}
.kt-blocks-accordion-icon-trigger:before,
.kt-blocks-accordion-icon-trigger:after {
	content: none !important;
	display: none !important;
}
.kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-icon-trigger {
	background-image: url('../../uploads/2026/07/minus-circle.svg') !important;
}


/* ###################################################
   Our Team - Slick Carousel Styles
################################################### */
.kb-query-grid-wrap.slick-initialized {
	display: block !important;
}
.kb-query-grid-wrap.slick-slider {
	position: relative;
	padding: 0 48px;
}
.kb-query-grid-wrap .kb-query-item {
	padding: 0 12px;
	box-sizing: border-box;
}
.kb-query-grid-wrap .slick-track {
	display: flex !important;
	align-items: stretch;
}
.kb-query-grid-wrap .slick-slide {
	height: auto;
}
.kb-query-grid-wrap .slick-list {
	overflow: hidden;
}
.team-carousel-arrow {
	position: absolute;
	top: 150px !important;
	transform: translateY(-50%) !important;
	width: 42px !important;
	height: 42px !important;
	background-color: transparent !important;
	background-image: url('../../uploads/2026/07/arrow-next.png') !important;
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: contain !important;
	border: none !important;
	border-radius: 0 !important;
	opacity: 0.85 !important;
	transition: opacity 0.3s ease !important;
	z-index: 10 !important;
	cursor: pointer !important;
}
.team-carousel-arrow:before {
	content: none !important;
}
.team-carousel-arrow:hover,
.team-carousel-arrow:focus {
	opacity: 1 !important;
}
.team-carousel-next {
	right: 0 !important;
}
.team-carousel-prev {
	left: 0 !important;
	transform: translateY(-50%) scaleX(-1) !important;
}
.team-carousel-prev:hover,
.team-carousel-prev:focus {
	transform: translateY(-50%) scaleX(-1) !important;
	opacity: 1 !important;
}
.team-carousel-arrow .screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
}
@media (max-width: 600px) {
	.kb-query-grid-wrap.slick-slider {
		padding: 0 34px;
	}
	.team-carousel-arrow {
		width: 32px !important;
		height: 32px !important;
	}
}
.sec-classes div div > .kt-inside-inner-col {
  border-radius: 8px;
}
.sec-classes div div div > .wp-block-group {
  padding: 20px;
  margin-bottom: 5px;
}
.sec-classes div div div > .wp-block-group p {
  font-size: 14px;
}
.class-testimonial .splide__arrow:before {
  display: none;
}

.class-testimonial .splide__arrow {
  background-color: transparent;
  border: none;
  width: 34px;
  height: 34px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.class-testimonial .splide__arrow svg {
  display: none;
}

.class-testimonial .splide__arrow--next {
  background-image: url('../../uploads/2026/07/testimonial-arrow.png') !important;
  
}

.class-testimonial .splide__arrow--prev {
  background-image: url('../../uploads/2026/07/testimonial-arrow.png') !important;
  transform: scaleX(-1) !important;
}
.class-testimonial .kb-splide .splide__arrow {
    background-repeat: no-repeat !important;
    background-size: contain !important;
    border: none;
    height: 2em !important;
    width: 2em !important;
}
.kb-splide .splide__arrow:hover {
background-size: contain;
background-repeat: no-repeat;
 height: 2em;
  width: 2em;
}


#gform_2 #gform_submit_button_2 {
    border-radius: 30px;
    margin-top: 20px;
    padding-left: 30px;
    padding-right: 30px;
}
@media (max-width: 1000px){
  #masthead .onepress-menu > li.outline-nav > a {
margin-top: 20px !important;
}
}

@media (max-width: 600px){
  .wp-block-media-text.is-stacked-on-mobile{
    display: block;
  }
  .wp-block-media-text .wp-block-media-text__media{
    margin-bottom: 20px;
  }
  .entry-content .kt-testimonial-item-wrap blockquote {
    padding: 0px;
  }
  .kt-testimonial-item-wrap .kt-testimonial-name {
    font-size: 14px !important;
    text-align: center !important;
  }
  .wp-block-media-text .wp-block-media-text__content{
    padding-left: 0;
    padding-right: 0;
  }
  .header-right-wrapper {
    column-gap: 0px !important;
  }
  #footer-2 aside {
   
  }
  .sidebar .widget ul {
    list-style: none;
    padding: 0px;
    max-width: 150px;
}
  .sidebar .widget ul li {
    text-align: center;
  }
#footer-2 ul#menu-footer-links {
  max-width: 150px;
}
#footer-1 h2 {
  text-align: center;
}
#footer-1 .textwidget p {
  text-align: center;
}
#footer-1 form {
    display: flex;
    margin: auto;
    max-width: 300px;
}
.about-nav li {
    margin-left: 0px !important;
    margin-right: 10px;
    font-size: 14px;
}
}

/* BH-18 START: more space between hero video and hero text (about-hero column) */
.kadence-column21_6e05c2-50.about-hero {
    padding-left: 40px;
}
/* BH-18 END */

/* BH-2 START: site-wide button hover fill (client card #2, home) */
.wp-block-button__link:hover,
.wp-block-kadence-singlebtn a:hover,
a.kb-btn-global-outline:hover {
  background-color: currentColor;
  -webkit-text-fill-color: #ffffff;
  transition: background-color 0.25s ease;
}
/* BH-2 END */

/* BH-10-11-12 START: icon-list link hover effect (home "Our Goal" links) */
.kt-svg-icon-list-text a:hover {
  text-decoration: underline;
  opacity: 0.75;
}
/* BH-10-11-12 END */

/* BH-46-48 START: mobile background scale instead of zoom-crop (home hero + pattern row, client cards #46/#48) */
@media (max-width: 480px) {
  /* Home hero: fill the whole section on mobile (no gray gaps) */
  .kb-row-layout-id19_9b6ebf-d5 {
    background-size: cover !important;
    background-position: 70% center !important;
  }
  .kb-row-layout-id19_782361-71 > .kt-row-layout-overlay {
    background-size: contain !important;
  }
}
/* BH-46-48 END */

/* BH-49 START: full-width background image column above contact box on mobile (client card #49) */
@media (max-width: 480px) {
  .kadence-column19_33a25f-95 {
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }
}
/* BH-49 END */


/* BH-2FIX START: strengthen button hover fill specificity (client card #2, home) */
.wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-kadence-singlebtn a:hover,
a.kb-btn-global-outline:hover {
  background-color: currentColor !important;
  -webkit-text-fill-color: #ffffff !important;
}
/* BH-2FIX END */


/* BH-2FIX2 START: correct hover fill colors (avoid white-on-white; navy fill for outline buttons, darken for solid buttons; client card #2, home) */
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-kadence-singlebtn.kb-btn-global-outline a:hover,
.kb-btn-global-outline:hover {
  background-color: #003348 !important;
  -webkit-text-fill-color: #ffffff !important;
  color: #ffffff !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
  filter: brightness(0.88);
}
/* BH-2FIX2 END */

/* BH-15 START: parallax on the music-note pattern row background (card #15) */
.kb-row-layout-id19_782361-71 > .kt-row-layout-overlay {
  background-attachment: fixed;
}
@media (max-width: 480px) {
  .kb-row-layout-id19_782361-71 > .kt-row-layout-overlay {
    background-attachment: scroll; /* fixed backgrounds are unreliable on mobile Safari */
  }
}
/* BH-15 END */


/* BH-2FIX3 START: pseudo-element fill overlay (bypasses background-color cascade conflict from kadence-blocks plugin CSS; client card #2, home) */
.wp-block-button.is-style-outline .wp-block-button__link,
a.kb-btn-global-outline {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.wp-block-button.is-style-outline .wp-block-button__link::before,
a.kb-btn-global-outline::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #003348;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.25s ease;
  z-index: -1;
  pointer-events: none;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover::before,
a.kb-btn-global-outline:hover::before {
  transform: scaleX(1);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover *,
a.kb-btn-global-outline:hover,
a.kb-btn-global-outline:hover * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  fill: #ffffff !important;
}
/* BH-2FIX3 END */


/* BH-1 START: center the "Donate" pill text (parent theme .onepress-menu > li:last-child > a zeroes padding-right, this button is the last nav item, which pulled the text visually off-center) + fill hover using the header's existing accent color (client card #1). !important + #masthead prefix needed: an inline customizer/WPCode style block sets #masthead .onepress-menu > li > a { color: #bc5aa2 } at higher specificity than a plain .outline-nav a:hover rule, which otherwise kept hover text pink-on-pink (invisible) */
.onepress-menu > li.outline-nav:last-child > a {
  padding-right: 10px;
}
#masthead .onepress-menu .outline-nav a:hover {
  background-color: #bc5aa2 !important;
  border-color: #bc5aa2 !important;
  color: #ffffff !important;
}
/* BH-1 END */

/* BH-14 START: more space above the "Our Impact" header, less space to the quote/testimonial section below it (client card #14, home) */
.wp-elements-96f5a2d5bf25b6a1c9a952f5346551d6 {
  margin-top: 40px;
}
.kb-row-layout-id19_4eb5a4-72 .wp-block-spacer {
  height: 8px !important;
}
/* BH-14 END */

/* BH-17 START: about-page sub-nav hover color changed from pink to navy (client card #17) */
.about-nav li a:hover {
  color: #003348 !important;
}
/* BH-17 END */

/* BH-19 START: slightly more space between each icon and the header below it, both about-page icon blocks (client card #19) */
.wp-block-kadence-spacer.kt-block-spacer-21_900e7d-ba .kt-block-spacer,
.wp-block-kadence-spacer.kt-block-spacer-21_e54aad-7d .kt-block-spacer {
  height: 35px !important;
}
/* BH-19 END */

/* BH-47 START: shrink the homepage hero heading on mobile and fix awkward line breaks (client card #47) */
@media (max-width: 767px) {
  .kt-adv-heading19_92c118-d2 {
    font-size: 30px !important;
    line-height: 1.2 !important;
  }
}
/* BH-47 END */

/* BH-2FIX4 START: hover text-color fix for the two "Sign up now" buttons whose inline base color is already white - site-wide hover (BH-2 blocks) leaves them white-on-white on hover (found while fixing card #47/#50 group, documented on card #34) */
.kb-btn22_124e56-2d:hover, .kb-btn19_977762-77:hover { background-color: #003348 !important; }
/* BH-2FIX4 END */

/* BH-56 START: mobile background scale instead of zoom-crop (annual-event-landing-page hero pattern overlay, client card #56 - same treatment as home cards #46/#48) */
@media (max-width: 480px) {
  .kb-row-layout-id294_4906c2-e3 > .kt-row-layout-overlay {
    background-size: contain !important;
  }
}
/* BH-56 END */


/* BH-45 START: gradient background matching Figma mockup on the /about hero blue row (client card #45) */
.kb-row-layout-id21_adc591-03 {
	background-image: linear-gradient(180deg, #5abfb9 0%, #02a0db 42%, #016f98 100%);
}
/* BH-45 END */

/* BH-3 START: subtle scroll-triggered fade-up on content sections, site-wide (client card #3).
   Only ever applies while assets/theme.js has flagged <html> with .js-anim, so content can
   never be left invisible when JS is off or fails. Replaces (not stacks on) the old
   animate.css .animated/.fadeIn reveal on these same rows. */
html.js-anim .entry-content > .wp-block-kadence-rowlayout,
html.js-anim .entry-content > .wp-block-group,
html.js-anim .entry-content > .wp-block-kadence-column {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity 0.6s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.6s cubic-bezier(0.22, 0.61, 0.36, 1);
	will-change: opacity, transform;
	animation: none !important;
}
html.js-anim .entry-content > .wp-block-kadence-rowlayout.ee-anim-in,
html.js-anim .entry-content > .wp-block-group.ee-anim-in,
html.js-anim .entry-content > .wp-block-kadence-column.ee-anim-in {
	opacity: 1;
	transform: none;
}
@media (prefers-reduced-motion: reduce) {
	html.js-anim .entry-content > .wp-block-kadence-rowlayout,
	html.js-anim .entry-content > .wp-block-group,
	html.js-anim .entry-content > .wp-block-kadence-column {
		opacity: 1;
		transform: none;
		transition: none;
	}
}
/* BH-3 END */
.btn-ctrl a:hover {
  background: #fff !important;
  color: #bc5aa2 !important;
  border: 1px solid #bc5aa2;
  -webkit-text-fill-color: #bc5aa2 !important;
  filter: brightness(1) !important;

}
.btn-ctrl.btn-green a:hover {
  color: #72c7af !important;
  border: 1px solid #72c7af;
  -webkit-text-fill-color: #72c7af !important;
}
.btn-ctrl.btn-blue a:hover {
  color: #009fdb !important;
  border: 1px solid #009fdb;
  -webkit-text-fill-color: #009fdb !important;
}
#page .outline-btns div a:hover {background: #bc5aa2 !important}
/* BH-UNIFORM-BTN START: site-wide uniform button hover - every button fills #bc5aa2 with white text.
   Excluded on purpose: the footer newsletter form (lives in #colophon) and the Get Involved page (page-id-23). */

/* a) Buttons that already sit at solid #bc5aa2 become pink outlines at rest,
      otherwise the shared pink hover fill would be invisible. */
body:not(.page-id-23) #content .wp-block-button:not(.is-style-outline) > .wp-block-button__link.has-hs-3-background-color,
body:not(.page-id-23) #content .gform_button {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 2px solid #bc5aa2 !important;
  color: #bc5aa2 !important;
  -webkit-text-fill-color: #bc5aa2 !important;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}

/* b) The one shared hover state */
body:not(.page-id-23) #content .wp-block-button .wp-block-button__link:hover,
body:not(.page-id-23) #content .wp-block-kadence-singlebtn a:hover,
body:not(.page-id-23) #content .kb-button:hover,
body:not(.page-id-23) #content a.kb-btn-global-outline:hover,
body:not(.page-id-23) #content .wp-block-button:not(.is-style-outline) > .wp-block-button__link.has-hs-3-background-color:hover,
body:not(.page-id-23) #content .gform_button:hover {
  background: #bc5aa2 !important;
  background-color: #bc5aa2 !important;
  border-color: #bc5aa2 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  filter: none !important;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
body:not(.page-id-23) #content .wp-block-button.is-style-outline .wp-block-button__link:hover::before,
body:not(.page-id-23) #content a.kb-btn-global-outline:hover::before {
  background-color: #bc5aa2 !important;
}

/* c) Buttons that sit ON a #bc5aa2 band (About / Classes "Contact Us") cannot show a pink
      fill, so they use the inverse of the same treatment: white fill, pink text. */
body:not(.page-id-23) #content .wp-block-button.is-style-outline > .wp-block-button__link.has-hs-3-background-color:hover {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border-color: #ffffff !important;
  color: #bc5aa2 !important;
  -webkit-text-fill-color: #bc5aa2 !important;
}
body:not(.page-id-23) #content .wp-block-button.is-style-outline > .wp-block-button__link.has-hs-3-background-color:hover::before {
  background-color: #ffffff !important;
}
/* BH-UNIFORM-BTN END */
