

/*
Theme Name: BCT Theme
Theme URI: https://example.com/
Author: Paul Wroe
Author URI: https://example.com/
Description: A minimal WordPress theme with jQuery and Bootstrap support.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: my-custom-theme
*/

body {
  font-size:18px !important;
  background-color:white !important;
  font-family: 'Poppins', sans-serif !important;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/******************************************************************/
/*                                                                */
/*                                                                */
/* Donate link in nav                                             */
/*                                                                */
/*                                                                */
/******************************************************************/

#menu-top-level-navigation li.donate a {
  background-color:#0247C3 !important;
  color:white !important;
  border-radius: 50rem !important;
  padding-left:12px !important;
  padding-right:12px !important;


}

/******************************************************************/
/*                                                                */
/*                                                                */
/* Accordion                                                 */
/*                                                                */
/*                                                                */
/******************************************************************/
/* ===== Flat, modern FAQ accordion styling ===== */

/* Remove white background and focus shadow */
.accordion-button,
.accordion-button:focus,
.accordion-button:not(.collapsed) {
    background-color: transparent;
    box-shadow: none;
}

/* Remove borders and rounded corners */
.accordion-item,
.accordion-button {
    border: none;
}

.accordion-item {
  border-radius:0.5em;
}

/* Custom arrow for accordion */
.accordion-button::after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 12px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
    margin-left: auto; /* push to the right */
}

/* Rotate arrow when expanded */
.accordion-button:not(.collapsed)::after {
    transform: rotate(-135deg);
}

/* Spacing and font styling */
.accordion-button {
    padding: 0.75rem 1rem;
    font-weight: 600;
    color: #333;
    text-align: left;
}

.accordion-body {
    padding: 0.75rem 1rem;
    color: #555;
}


.accordion-button .accordion-icon {
  transition: transform 0.25s ease;
}

/* When accordion is OPEN */
.accordion-button:not(.collapsed) .accordion-icon {
  transform: rotate(180deg);
}

.accordion-button:after {
  display:none;
}

/******************************************************************/
/*                                                                */
/*                                                                */
/* Mega menu                                                      */
/*                                                                */
/*                                                                */
/******************************************************************/
.mega-menu {
  position:absolute;
  z-index:1000;
}
.mega-menu h3 {
  font-size:1.25em;
  color: #0247C3;
}

.mega-menu ul li a {
  color: #010649;
  font-weight:500;
  font-size:1.25rem;
  text-decoration:none;

}
.mega-menu ul li a:hover {
  text-decoration:underline;
  color:#0247C3;
}

/******************************************************************/
/*                                                                */
/*                                                                */
/* Intro                                                          */
/*                                                                */
/*                                                                */
/******************************************************************/
#intro-content h2 {
  margin: 0 0 1em 0;
  padding:0 ;
}
#intro-content ul li,
#intro-content p {
  font-size: 1.33rem !important;
  line-height:36px;
}

#intro-content a {
  color: #333;
  text-decoration:underline;;
}

/******************************************************************/
/*                                                                */
/*                                                                */
/* Benefit/grant                                                  */
/*                                                                */
/*                                                                */
/******************************************************************/
.benefit-grant:hover {
  cursor:pointer;
  background-color:#0247C3 !important;
  color:white !important;
}
.benefit-grant:hover p {
  color: white !important;
}


/******************************************************************/
/*                                                                */
/*                                                                */
/* Register with us                                               */
/*                                                                */
/*                                                                */
/******************************************************************/
#register-with-us {

  background: linear-gradient(to bottom, #EBEFF7 0%, #EBEFF7 50%, #ffffff 50%, #ffffff 100%);

}



/******************************************************************/
/*                                                                */
/*                                                                */
/* Buttons                                                        */
/*                                                                */
/*                                                                */
/******************************************************************/
.btn {
  font-size:18px;
  font-weight:700;
  box-shadow: none !important;
  outline: none !important;
  background-image: none !important;
}

.btn.btn-danger {
  background-color:black;
  color:white;
  border:2px solid black;

}
.btn.btn-danger:hover {
  background-color:white;
  color:black;
  border:2px solid black;
}

.btn:focus,
.btn:active,
.btn:focus-visible {
  box-shadow: none !important;
  outline: none !important;
}

.btn.btn-primary {
  background-color:#0247C3 !important;
  color:white;
  border:2px solid #0247C3 !important;
}
.btn.btn-primary:hover {
  color: #0247C3;
  background-color:white !important;
}

.btn.btn-success {
  background-color:#00CEA1 !important;
  color:#02064A;
  border:none !important;
}

.btn.btn-secondary {
  background-color:white;
  color: #02064A !important;
  border:2px solid white;
}

.btn.btn-secondary:hover {
  background-color:transparent;
  color: white !important;
  border:2px solid white;
}

.btn.btn-warning {
  background-color:#FFD800 !important;
  color: #02064A;
  border:2px solid #FFD800;
}

.btn.btn-warning:hover {
  background-color:transparent !important;
  color: white;
}

.btn.btn-default {
  background-color:#f1f1f1 !important;
  color: #666;
  border:2px solid #666;
}








/******************************************************************/
/*                                                                */
/*                                                                */
/* Colours                                                        */
/*                                                                */
/*                                                                */
/******************************************************************/
.bg-light {
  background-color:#EBEFF7 !important;
}

.bg-dark-blue { background-color: #010649 !important; }
.bg-blue { background-color: #0247C3 !important; }

.bg-pink { background-color: rgb(255, 135, 213) !important; }
.text-pink { background-color: rgb(255, 135, 213) !important; }

.bg-white {
  background-color: white !important;
}
.text-blue { color: #0247C3 !important; }

.text-dark-blue { color: #010649 !important; }
.text-dark { color: #02064A !important; }
.text-light-blue { color: #0247C3 !important;  }

.text-yellow {
  color: #FFD800 !important;
}

.bg-grey { background-color: #ECEFF6 !important; }
.text-grey { color: #ECEFF6 !important; }











/*
Footer */
#footer {

}
#mailing-list-wrapper {
  position: absolute;        /* remove from flow so we can place it relative to the parent */
  top: 0;                    /* align its top with the parent's top */
  left: 50%;                 /* put its horizontal center at parent's 50% */
  transform: translate(-50%, -50%); /* shift left by 50% of its own width and up by 50% of its own height */
  z-index: 10;               /* ensure it sits above the parent content */
  /* No width set — keep Bootstrap .container's responsive widths */
}



/* Footer menu */
.footer-menu {
  padding: 0;
}

.footer-menu li {
  display: inline-block;
  margin: 0 10px;
}

.footer-menu a {
  color: #fff;
}

.footer-menu a:hover {
  text-decoration:none;
}

#footer-news-wrap {

  background: linear-gradient(to bottom, transparent 0%, transparent 50%, #010649 50%, #010649 100%);

}





/******************************************************************/
/*                                                                */
/*                                                                */
/* Block                                                          */
/*                                                                */
/*                                                                */
/******************************************************************/
.block {
  border-radius:18px;
  overflow:hidden;
}

.block img {
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
}



/******************************************************************/
/*                                                                */
/*                                                                */
/* Typography                                                     */
/*                                                                */
/*                                                                */
/******************************************************************/
p {
  font-family: 'Poppins', sans-serif !important;
  font-weight:500;
  font-size:1rem;
  line-height:28px;
  color:#02064A;
}

#page-content h2:first-child {
  margin-top:0;
}

#page-content h2 {
  margin-top:2em;
  margin-bottom:0.75em !important;
}
#page-content p {
  margin-bottom:1em;
}

ul li {
  margin-bottom:1em;
  color: #02064A;
  font-size:1rem !important;
  font-weight:500 !important;
}

p.slagan {
  font-weight:500;
  font-size:24px;
  line-height:36px; 
}

h1, .h1 {
  font-family: 'Poppins', sans-serif !important;
  font-size: 3rem;
  font-weight:700 !important;
  margin:0 0 24px 0;
}

h2, .h2 {
  font-family: 'Poppins', sans-serif !important;
  color:#02064A;
  font-size: 2.5rem;
  font-weight:700 !important;
  line-height: 110%;
}

h2 a, .h2 a {
  text-decoration:underline;
  color:#02064A;
  font-size: 2rem;
  font-weight:700 !important;
  line-height: 2rem;
}

h2 a:hover, .h2 a:hover {
  text-decoration:none;
}

h3, .h3 {
  color:#02064A;
  font-size: 1.66rem;
  ine-height:36px;
  font-weight:700;
}

h4, .h4 {
  font-size:18px;
  ine-height:28px;
  font-weight:700;
}



/******************************************************************/
/*                                                                */
/*                                                                */
/* Header                                                         */
/*                                                                */
/*                                                                */
/******************************************************************/
.header-img {
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1; /* ensures text stays on top */
}

.header-img img {
    height: 100%;     /* fit height to header */
    width: auto;      /* preserve aspect ratio */
    max-width: 100vw;  /* prevent it from growing too wide */
    object-fit: cover;
}
.header-hero {
    min-height: auto;
    height: auto;
}

/* Desktop only */
@media (min-width: 768px) {
    .header-hero {
        height: 480px;
    }
}

#header {
  position: relative;
  overflow: hidden; /* optional: prevents image from overflowing */
  padding-top:120px;
  padding-bottom:120px;
  min-height:400px;
}

#header .header-img {
  position: absolute;
  right: 0;
  bottom:0;
  z-index: 10;
}

#header .header-img img {
  height: auto;
  max-width: 40vw; /* adjust size */
  object-fit: contain;
}












/* ===========================
   Large Tablets / Small Laptops
   (max-width: 1024px)
   =========================== */
@media (max-width: 1024px) {

}


/* ===========================
   Tablets
   (max-width: 768px)
   =========================== */
@media (max-width: 768px) {

}


/* ===========================
   Mobile
   (max-width: 600px)
   =========================== */
@media (max-width: 600px) {

  #header {
    padding-top:40px;
    padding-bottom:0;
  }

}


/* ===========================
   Small Mobile
   (max-width: 400px)
   =========================== */
@media (max-width: 400px) {
  #header {
    padding-top:40px;
    padding-bottom:0;
  }
}







.navbar-nav li.nav-item {
  margin-top:auto;
  margin-bottom:auto;
}
.navbar-nav li.nav-item a:hover {
  color: #0247C3  !important;
  text-decoration:underline;
      text-decoration: underline;        /* show underline */
    text-decoration-thickness: 3px;    /* thickness of the underline */
    text-underline-offset: 8px;        /* distance from the text */
    text-decoration-color: #0247C3;    /* optional: custom color */
}

.navbar-nav .arrow a::after {
    content: '';
    display: inline-block;
    margin-left: 4px;
    width: 0;
    height: 0;
    vertical-align: middle;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid currentColor; /* arrow pointing down */
}



/* MOBILE ONLY */



.wpcf7-submit {
  color: white;
  background-color:#010649;
  border:2px solid #010649;
  border-radius:30px;
  padding:10px 16px;
  font-weight:bold;
}

.wpcf7-text, .wpcf7-textarea, .wpcf7-date {
  border-radius:20px;
  border:2px solid #010649;
}

#referrer-details {
  display:none;
}






.linked-tile:hover {
  cursor:pointer;
}
.linked-tile:hover .block-content {
  background-color: #0247C3 !important;
  color:white;
}
.linked-tile:hover .block-content h3 {
  color:white;
}

div a h3  {
  text-decoration:none !important;
}


.square-img {
  width: 100%;
  aspect-ratio: 1 / 1;   /* keeps it square */
  overflow: hidden;
}

