/*HEADER*/
/*Header navigation links with only underline when hovering over */
nav.menu-bar ul.weblinks > li.weblink > a {
  background-color: transparent !important;
  text-decoration: none !important;
  color: #333 !important;
}

nav.menu-bar ul.weblinks > li.weblink > a:hover,
nav.menu-bar ul.weblinks > li.weblink > a:focus,
nav.menu-bar ul.weblinks > li.weblink > a.active {
  background-color: transparent !important;
  text-decoration: underline !important;
  color: #333 !important;
}
/*HEADER END*/

/*ALL IMAGE BACKGROUNDS*/

/* Target the custom class (section-background-cover) combined with the section container */
.sectionBlockLayout.section-background-cover {
    /* Desktop/Default Fixes (if needed, but usually handled by inline styles) */
    display: flex; /* Ensures content is vertically centered */
    align-items: center; 
    justify-content: center;
}

/* Apply this fix ONLY on mobile screens (768px and narrower) */
@media screen and (max-width: 768px) {
    
    .sectionBlockLayout.section-background-cover {
        /*
         * 1. THE CRUCIAL FIX: Override the inline 'center center' positioning.
         * Forces the top of the image (where key banner content is) to be visible.
        */
        background-position: top center !important; 
        
        /* * 2. FORCE MOBILE HEIGHT: Reduce height for better screen real estate. 
         * Overrides the inline style's desktop min-height (e.g., 50vh)
        */
        min-height: 18vh !important; 
        
        /* 3. Re-affirm these properties for safety */
        background-size: cover !important;
        background-repeat: no-repeat !important;
    }
}/*ALL IMAGE BACKGROUNDS END*/

/*SECTIONS*/
/* ------------------------------------------------------------------ */
/* DEFINITIVE FIX: Reverse Video/Text Order on Mobile */
/* ------------------------------------------------------------------ */

@media screen and (max-width: 767px) {
    
    /* Target the container (the direct parent of the columns) inside our section */
    .video-text-reverse > .container {
        /* CRITICAL: Force the order to reverse on mobile */
        flex-direction: column-reverse !important; 
        
        /* Ensure it takes up full width for stacking */
        width: 100% !important;
    }
    
    /* Target the columns to ensure they fill the width when stacked */
    .video-text-reverse .columnBlockLayout {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important; 
    }
}/*SECTIONS END*/

/*FORMS*/
/*Remove borders from forms. One commented modification also in portaltheme.css for .crmEntityFormView*/
.crmEntityFormView{
    border: 0px;
}

.crmEntityFormView .actions {
    border-top: 0px;
}

.crmEntityFormView .tab-title {
    border-bottom: 0px;
}
/*FORMS END*/

/*FOOTER*/
footer.footer a {
  font-size: 20px;
  color: #ffffff !important;
  text-decoration: none;
}

.footer-social {
  display: flex;
  gap: 24px;
  align-items: center !important;
  justify-content: center;
  flex-wrap: wrap;
}

.footer-social span {
  font-size: 2rem;         /* increase icon size */
  color: #ffffff;          /* white color for icons */
}

.footer-social a {
  text-decoration: none;
  color: inherit;
}

.footer-social a:hover span {
  opacity: 0.8;
  transform: scale(1.1);
  transition: all 0.2s ease;
}

.footer-address-text {
  color: var(--portalThemeColor1, #ffffff) !important;
  text-align: center!important;
}

.footer-address-heading {
  color: #ffffff; /* or your brand white */
  text-align: center !important;
  margin-top: 1.5rem !important;
}

.footer-contact-heading {
  font-weight: bold;
  margin-top: 1.5rem !important;
  text-align: center;
  color: #ffffff;
}

.footer-contact-text {
  margin: 0;
  text-align: center;
}

.footer-contact-link {
  color: var(--portalThemeColor1, #ffffff);
  text-decoration: none;
}

.footer-contact-link:hover {
  text-decoration: underline;
  color: var(--portalThemeColor1, #ffffff);
}

/*Footer divider lines and mobile view break points*/
@media (max-width: 991.98px) {
  .footer-bottom .row > .order-1,
  .footer-bottom .row > .order-2 {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
  }

  .footer-bottom .row > div {
    text-align: center !important; 
  }

  .footer-social {
    justify-content: center;
  }
  
  .footer-address-heading,
  .footer-address-text {
    text-align: center !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .footer-contact-heading,
  .footer-contact-text {
    text-align: center !important;
  }
}
/*FOOTER END*/

