/*
Theme Name: Systems Thinking
Theme URI: /wp-content/themes/tsystemsthinking/
Author: The Stem Group
Author URI: https://www.thestemgroup.com/
Description: This is the the desktop theme for Systems Thinking Voices in Canada
Version: 1.0
License: Not for resale, personal use or useage by other parties but cleint.
License URI: http://www.thestemgroup.com
Tags: two-columns
Text Domain: blank


This theme is protected under copyright of the designer
*/


/*  Main Structure */



html, body {
	min-height:100%;
	margin:0px;
	font-size:16px;
}

.container {
    min-height: calc(100vh - 315px);

}




/*  										Footer 												 */




footer {
  height:275px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  background-image:url(/wp-content/themes/systemsthinking/images/footer-bg.jpg);
  background-position:top center;
  width: 100%;
  border-top: 5px solid #ffc600;
}

.footer-container {
  max-width: 1190px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

#footer-info {
  margin: 125px 0 0 0;
  box-sizing: border-box;
}

#footer-logo {
  margin: 125px 0 0 0;
  box-sizing: border-box;
}

#footer-copy {
  margin: 125px 0 0 0;
  box-sizing: border-box;
}

/*  Mobile styles  */

@media (max-width: 768px) {
  footer {
	height: auto;
    background-color: #4a69a1;
	background-repeat: no-repeat;
}
	
  .footer-container {
    margin: 120px 0 0 0;
    flex-direction: column;
    align-items: center;
  }

  #footer-info, #footer-logo, #footer-copy {
    width: 100%;
    text-align: center; 
    margin: 5% 0 5% 0;
  }
}





/* 							 Header 											 */



header {
	height:130px;
	width:100%;
	text-align:center;
	background-image: url("/wp-content/themes/systemsthinking/images/header-bg.jpg");
	background-repeat: repeat-x;
	margin:0 auto 0 auto;
    background-color:#000000;
	display:block;
}

section.header {
    height: 130px;
    width: 1100px;
    display: inline-block;
}

#header-logo {
	height: 150px;
	width: 170px;
	margin: 0 0 0 -10px;
	border-radius: 0 0 10px 10px;
	z-index: 2;
	float: left;
	background-color: #e3f2ec;
	box-shadow:0px 0px 10px #9f9f9f;
	
}

.header-tagline {
    height: 90px;
    width: 940px;
	margin: 0 0 0 0;
	background-image: url("/wp-content/themes/systemsthinking/images/banner-words-line.svg");
	z-index: 1;
	float: left;
	display: block;
  	position: relative;
  	overflow: hidden;
}

.header-tagline img {
  display: none; /* SVG is hidden by default */
}


/* Mobile Styles */
@media (max-width: 769px) {
    header {
      height: auto;
      width: 100%;
      padding-top: 50px;
      background-image: none;
      background-color: #0b1598;
      background-repeat: no-repeat;
    }

    section.header {
      height: auto;
      width: 100%;
      margin: 0 0 0 0;
      display: flex;
      flex-direction: column;
    }

    #header-logo {
		height: auto;
		width: 100%;
      	margin: 0 0 0 0;
		float: none;
		border-radius: 0 0 5% 5%;

    }

   .header-tagline {
    background-image: none; 
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; 
    height: auto; 
  }

  .header-tagline img {
    display: block;
    width: 100vw; 
    height: auto; 
    max-width: 100%; 
  }
}



/* 										Navigation 										*/

nav {
  height: 40px;  
  width: 910px;
  display: flex;
  align-items: flex-end;
  margin: 0 0 0 30px;
}

.nav-menu {
  list-style: none;
  display: flex;
  justify-content: space-between; 
  width: 100%;
}

.nav-menu li {
  font-size: 1rem;
  color: #000000;
}

.nav-menu li.active-nav-item > a,
.nav-menu li.current-menu-item > a,
.nav-menu li.current-page-ancestor > a {
    border-bottom: 2px solid #f9ec1e;
    padding-bottom: 3px;
}

.nav-menu li.active-nav-item > a:hover,
.nav-menu li.current-menu-item > a:hover,
.nav-menu li.current-page-ancestor > a:hover {
    text-shadow: none;
}

.hamburger {
  display: none;
}

/* Mobile Styles */
@media (max-width: 768px) {
  #header-navigation {
    height: 0;
  }

  .hamburger {
    background: none;
    border: none;
    outline: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
    width: 35px;
    height: 30px;
    position: absolute;
    top: 10px; 
    left: 10px; 
    z-index: 100; 
  }

  .hamburger .bar {
    width: 30px;
    height: 4px;
    background-color: white;
    transition: all 0.3s ease-in-out;
    position: absolute;
  }

  .hamburger .bar:nth-child(1) {
    top: 6px;
  }

  .hamburger .bar:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
  }

  .hamburger .bar:nth-child(3) {
    bottom: 6px;
  }

  .hamburger.open .bar:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }

  .hamburger.open .bar:nth-child(2) {
    opacity: 0;
  }

  .hamburger.open .bar:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }
	
  .nav-menu {
    top: 33px;
    left: 0;
    display: none;
    flex-direction: column;
    width: 100%;
    background-color: #0b1598;
    position: absolute;
    box-shadow:0px 0px 20px #9f9f9f;
    z-index: 10;
  }

  .nav-menu.active {
    display: flex;
  }
	
	.nav-menu li {
    font-size: 2rem;
		line-height: 3rem;
    text-align: left; 
    padding: 8px 15px;
  }

  .nav-menu li.active-nav-item > a,
  .nav-menu li.current-menu-item > a,
  .nav-menu li.current-page-ancestor > a {
      border-bottom: none;
      background-color: rgba(255, 255, 255, 0.1);
  }

  .nav-menu li.active-nav-item > a {
      color: #f9ec1e !important;
  }
}
  



/* 										 Banners: 									;  */



#banner-bottom {
	height:50px;
	width:100%;
	margin:0 auto 30px auto;
	text-align:center;
	background-image: url("/wp-content/themes/systemsthinking/images/banner-bottom-bg.jpg");
	background-repeat: repeat-x;
	display:block;
}


#banner-about-us,
#banner-projects,
#banner-learning,
#banner-contact-us,
#banner-res-articles,
#banner-res-books,
#banner-res-organization,
#banner-directory,
#banner-welcome,
#banner-resources,
#banner-experience-st,
#banner-res-media,
#banner-res-education,
#banner-signup,
#banner-blog {
    height: 330px;
    width: 100%;
    background-size: cover;
    background-position: center;
    overflow: hidden;
}

/* Individual background images */
#banner-about-us { background-image: url(/wp-content/themes/systemsthinking/images/banner-about-us.jpg); }
#banner-projects { background-image: url(/wp-content/themes/systemsthinking/images/banner-projects.jpg); }
#banner-learning { background-image: url(/wp-content/themes/systemsthinking/images/banner-learning.jpg); }
#banner-contact-us { background-image: url(/wp-content/themes/systemsthinking/images/banner-contact-us.jpg); }
#banner-res-articles { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-articles.jpg); }
#banner-res-books { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-books.jpg); }
#banner-res-organization { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-organizations.jpg); }
#banner-directory { background-image: url(/wp-content/themes/systemsthinking/images/banner-directory.jpg); }
#banner-welcome { background-image: url(/wp-content/themes/systemsthinking/images/banner-welcome.jpg); }
#banner-resources { background-image: url(/wp-content/themes/systemsthinking/images/banner-resources.jpg); }
#banner-experience-st { background-image: url(/wp-content/themes/systemsthinking/images/banner-experience-st.jpg); }
#banner-res-media { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-media.jpg); }
#banner-res-education { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-education.jpg); }
#banner-signup { background-image: url(/wp-content/themes/systemsthinking/images/banner-signup.jpg); }
#banner-blog { background-image: url(/wp-content/themes/systemsthinking/images/banner-blog.jpg); }


/* Mobile styles */
@media (max-width: 768px) {
    #banner-bottom {
        width: 100%;
        min-width: 0;
        margin: 0 auto 0 auto;
    }

    #banner-about-us,
    #banner-projects,
    #banner-learning,
    #banner-contact-us,
    #banner-res-articles,
    #banner-res-books,
    #banner-res-organization,
    #banner-directory,
    #banner-welcome,
    #banner-resources,
    #banner-res-media,
    #banner-res-education,
    #banner-signup,
    #banner-blog {
        height: 500px;
        width: 100vw;
        min-width: 0;
        margin: 0 auto 0 auto;
        background-size: cover;      /* Show full image, no cropping */
        background-repeat: no-repeat;
        background-position: center;
    }

    /* Mobile-specific background images */
    #banner-about-us { background-image: url(/wp-content/themes/systemsthinking/images/banner-about-us-mobile.jpg); }
    #banner-projects { background-image: url(/wp-content/themes/systemsthinking/images/banner-projects-mobile.jpg); }
    #banner-learning { background-image: url(/wp-content/themes/systemsthinking/images/banner-learning-mobile.jpg); }
    #banner-contact-us { background-image: url(/wp-content/themes/systemsthinking/images/banner-contact-us-mobile.jpg); }
    #banner-res-articles { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-articles-mobile.jpg); }
    #banner-res-books { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-books-mobile.jpg); }
    #banner-res-organization { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-organizations-mobile.jpg); }
    #banner-directory { background-image: url(/wp-content/themes/systemsthinking/images/banner-directory-mobile.jpg); }
    #banner-welcome { background-image: url(/wp-content/themes/systemsthinking/images/banner-welcome-mobile.jpg); }
    #banner-resources { background-image: url(/wp-content/themes/systemsthinking/images/banner-resources-mobile.jpg); }
    #banner-experience-st { background-image: url(/wp-content/themes/systemsthinking/images/banner-experience-st-mobile.jpg); }
    #banner-res-media { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-media-mobile.jpg); }
    #banner-res-education { background-image: url(/wp-content/themes/systemsthinking/images/banner-res-education-mobile.jpg); }
    #banner-signup { background-image: url(/wp-content/themes/systemsthinking/images/banner-signup-mobile.jpg); }
    #banner-blog { background-image: url(/wp-content/themes/systemsthinking/images/banner-blog-mobile.jpg); }
}




/*  												Content 									 */



.content {
	height:auto;
	width: min(90%, 1100px);
	margin:0 auto 65px auto;
	overflow: hidden;
}




/*    											 homepage  										 */

#home-quote {
	height:auto;
	width: min(90%, 1100px);
	margin:0 auto 55px auto;
	background-color:#ffffff;
	overflow: hidden;
}

#home-welcome {
	height:auto;
	width: min(90%, 1100px);
	margin:0 auto 55px auto;
	background-color:#ffffff;
	overflow: hidden;
}






/*		Homepage Tour Area  	*/

#home-tour-wrapper {
    width: 100%;
    padding-top: 80px;
    margin-bottom: 80px;
    background-image: url(/wp-content/themes/systemsthinking/images/banner-home-tour.jpg);
    background-position: top;
    background-attachment: fixed;
    background-size: cover;
    box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}


.home-tour-container {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.home-tour-box {
    width: calc(33.33% - 20px);
    max-width: 313px;
    height: 200px;
    margin-bottom: 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    vertical-align: top;
    box-sizing: border-box;
}


@media (max-width: 768px) {
    #home-tour-wrapper {
        background-image: url(/wp-content/themes/systemsthinking/images/banner-home-tour-mobile.jpg);
        background-attachment: scroll;
    }
    .home-tour-box {
        width: 100%;
        max-width: 400px; 
        margin: 0 auto 40px auto; 
    }
}



/*		Homepage FAQ Area  	*/

#home-faq-wrapper {
    height: auto;
    width: 100%;
    padding: 80px 0 65px 0;
    margin-bottom: 80px;
    background-image: url(/wp-content/themes/systemsthinking/images/banner-home-faq.jpg);
    background-position: center;
    background-attachment: scroll;
    text-align: center;
    box-shadow: 0 -15px 15px 0px rgba(0, 0, 0, 0.3), 0 15px 15px 0px rgba(0, 0, 0, 0.3);
}

section.home-faq-container {
    height: auto;
    width: 733px;
    text-align: center;
    margin: 0 auto;
    padding: 0 0 0 365px; 
}


@media (max-width: 768px) {
    #home-faq-wrapper {
      padding: 5% 0 10% 0;
      margin-bottom: 80px;
    background-image: url(/wp-content/themes/systemsthinking/images/banner-home-faq-mobile.jpg);
    background-attachment: scroll;
      
    }
	
	section.home-faq-container {
        width: 90%;
        max-width: 90%;
        padding: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
    }
}





/*    											 About Us Page 										 */


/*   quest area   */


#about-quest-wrapper {
	width: 100%;
	padding-top:80px;
    margin-bottom: 80px;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-about-quest-midspan.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}



section.about-quest-container {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}



.about-quest-box {
    width: calc(33.33% - 20px);
    max-width: 313px;
    height: 200px;
    margin-bottom: 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    vertical-align: top;
    box-sizing: border-box;
}


@media (max-width: 768px) {
    #about-quest-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;
        background-image: url(/wp-content/themes/systemsthinking/images/banner-about-quest-midspan-mobile.jpg);
        background-attachment: scroll;
        
        }

    .about-quest-box {
        width: 100%;
        max-width: 400px; 
        margin: 0 auto 40px auto; 
    }
}


/*   quest area   */


.belt-container {
	height:auto;
	width: min(90%, 1100px);
	margin:0 auto 80px auto;
	background-color:#ffffff;
	overflow: hidden;
	display: flex;
	justify-content: space-between;
    gap: var(--gap, 80px); /* Margin between box elements*/
}

.belt-left {
	flex-basis: 66%; 
    max-width: 66%;
    display: flex;
    flex-direction: column; 
    justify-content: center;
	order: 1;
}

.belt-right {
    flex-basis: 33%; 
    max-width: 33%; 
    display: flex;
    flex-direction: column; 
    justify-content: center;
	order: 2;
}

@media (max-width: 768px) {

    .belt-container {
        flex-direction: column;
        width: 90%;
    }

    .belt-left {
        flex-basis: auto; 
        max-width: 100%; 
    }

    .belt-right {
        flex-basis: auto; 
        max-width: 100%;
    }

}




/*   About Team   */





.about-team-container {
    width: 90%;
    max-width: 1100px;
    text-align: center;
    margin: 35px auto 40px auto;
    display: flex;
    flex-wrap: wrap; 
    justify-content: space-evenly;
    align-items: flex-start;
    gap: 20px; 
}

.cocreators {
    width: calc(33.33% - 20px);
    max-width: 340px;
    min-height: auto;
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    box-sizing: border-box;
}

.contributors {
    width: 160px;  
    max-width: 160px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    box-sizing: border-box;
}



@media (max-width: 768px) {

    .cocreators, .contributors {
        width: 100%; 
        margin-bottom: 20px;
    }
    
}



/*   About Us - Quest - History   */



.about-quest-history-wrapper {
	width:100%;
	padding:80px 0 80px 0;
    margin-bottom: 80px;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-about-quest-history-leaves.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}



.about-quest-history {
	width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


@media (max-width: 768px) {

    .about-quest-history-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-about-quest-history-leaves-mobile.jpg);
        background-attachment: scroll;
        
    }

    .about-quest-history {
        width: 90%;
        max-width: 400px; 
        margin: 0 auto 40px auto; 
    }
}





/*   About Us - Quest - Stem   */


.about-quest-stem-wrapper {
	width:100%;
	padding:80px 0 80px 0;
    margin-bottom: 80px;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-about-quest-stem-davinci-bg.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}



.about-quest-stem {
	width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media (max-width: 768px) {

.about-quest-stem-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-about-quest-stem-davinci-bg-mobile.jpg);
        background-attachment: scroll;
        
    }

    .about-quest-stem {
        width: 90%;
        max-width: 400px; 
        margin: 0 auto 40px auto; 
    }
}


/*     Experience ST   */


.experience-q-wrapper {
	width:100%;
	padding: 80px 0;
    margin-bottom: 80px;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-about-quest-history-leaves.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}

.experience-q-container {
	width: min(90%, 1100px);
    margin: 0 auto;
}


.experience-q {
	width: 100%;
	padding: 80px;
	box-sizing: border-box;
	background:rgba(250, 250, 250, 0.9);
	border-radius: 10px;
    border:1px solid #ccc;
    font-family:Baskerville, "Palatino Linotype", Palatino, "Century Schoolbook L", "Times New Roman", serif;
}

@media (max-width: 768px) {

.experience-q-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner0about-quest-history-leaves-mobile.jpg);
        background-attachment: scroll;
        
    }

    .experience-q {
        padding: 40px 20px; /* Reduce padding for mobile */
    }
}



/*    											 Resources Page 										 */


#resources-wrapper {
	width: 100%;
	padding-top:80px;
    margin-bottom: 80px;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-resources-background.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}



.resources-container {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}



.resources-box {
    width: calc(33.33% - 20px);
    max-width: 313px;
    height: 200px;
    margin-bottom: 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    vertical-align: top;
    box-sizing: border-box;
}


@media (max-width: 768px) {

#resources-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-resources-background-mobile.jpg);
        background-attachment: scroll;
        
    }

    .resources-box {
        width: 100%;
        max-width: 400px; 
        margin: 0 auto 40px auto; 
    }
}




/*    Resource sub pages   */

#resources-item-wrapper {
	width: 100%;
	padding-top:80px;
    margin-bottom: 80px;
	background-color: whitesmoke;
    box-shadow: 0 -15px 15px 0px rgba(0,0,0,0.3), 0 15px 15px 0px rgba(0,0,0,0.3);
}


.resources-item-container {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
	gap: 80px;
    justify-content: space-around;
}

.resources-item-box {
    flex: 0 0 calc(50% - 40px); 
    margin-bottom: 80px;
    display: flex;
	justify-content: flex-start;
    align-items: flex-start;
    box-sizing: border-box;
}

.resource-item-box-left {
	width: 33%;
	float: left;
}

.resource-item-box-right {
	width: 66%;
	float: left;
}


@media (max-width: 768px) {
    .resources-item-container {
        width: 96vw;
        max-width: 100vw;
        padding: 0 2vw;
        margin: 0 auto 40px auto;
        box-sizing: border-box;
        flex-direction: column;      
        gap: 0;                 
        display: flex;             
    }
    .resources-item-box {
        width: 100%;
        margin: 0 auto 40px auto;
        flex-direction: row;  
    }
    .resource-item-box-left {
	width: 33%;
	float: none;
    }
}

.resource-item-box-right {
	width: 66%;
	float: none;

}

/*    Signup Pages    */


.signup-eligibility-wrapper {
	width:100%;
	padding:80px 0 80px 0;
    margin-bottom: 80px;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-signup-eligibility-bg.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}

.signup-tribute-wrapper {
	width:100%;
	padding:80px 0 80px 0;
    margin-bottom: 80px;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-signup-intribute-bg.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}



.signup-box {
	width: 90%;
    max-width: 1100px;
    margin: 0 auto;
	background:rgba(250, 250, 250, 0.9);
	border-radius: 10px;
    border:1px solid #ccc;
    padding:40px;
    box-sizing: border-box;
}

@media (max-width: 768px) {

.signup-eligibility-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-signup-eligibility-bg-mobile.jpg);
        background-attachment: scroll;
        
    }

.signup-tribute-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-signup-intribute-bg-mobile.jpg);
        background-attachment: scroll;
        
    }

    .signup-box {
        width: 90%;
        max-width: 400px; 
        margin: 0 auto 40px auto; 
    }
}








/* 										Blog Sections										*/


  
/* Articles Section */

.blog-intro {
	height:auto;
	width: min(90%, 1100px);
	margin:0 auto 65px auto;
	background-color:#ffffff;
	overflow: hidden;
}


.articles-wrapper {
    height:auto;
    width: min(90%, 1100px);
    margin:80px auto 65px auto;
    background-color:#ffffff;
    display: flex;
    flex-wrap: wrap;
}

.page-header.archive-header {
    width: 100%;
    flex-basis: 100%;
    margin-bottom: 30px;
}

.articles-widgets {
    width: 25%;
    height: auto;
    margin-right: 80px;
    padding: 20px;
    box-sizing: border-box;
    background-color:whitesmoke;
    border: 1px solid #ccc;
    border-radius: 10px;
    align-self: flex-start;
    order: 1;
}

.articles-content {
    width: calc(75% - 80px);
    display: flex;
    flex-wrap: wrap;
    gap: 80px;
    justify-content: space-around;
    flex-direction: row;
    box-sizing: border-box;
    order: 2;
}



.article-item {
    flex: 0 0 calc(50% - 40px);
    box-sizing: border-box;
}






/* --- Mobile Styles --- */
@media (max-width: 768px) {
    .articles-wrapper {
        flex-direction: column;
        width: 90%;
        margin: 40px auto;
        gap: 0;
    }

    .articles-widgets {
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
        order: 1;
    }

    .articles-content {
        width: 100%;
        order: 2;
        gap: 40px;
        flex-direction: column;
        align-items: center;
    }

    .article-item {
        flex-basis: auto;
        width: 100%;
        max-width: 450px;
    }

}
  /*                 Directory Page              */





.dir-top-wrapper {
	height:auto;
	width: min(90%, 1100px);
	margin:0 auto 0 auto;
	background-color:#ffffff;
	overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    column-gap: 80px;
  }


  .dir-top-half {
    flex: 0 0 calc(50% - 40px); 
	margin: 20px 0 80px 0;	
  }

  


  @media (max-width: 768px) {
    .dir-top-wrapper {
      flex-direction: column;
    }
    .dir-top-half {
      width: 100%;
    }
}




/* --- Directory Canada And Provinces (Restored) --- */

.dir-canada-wrapper {
    width: 100%;
    padding:80px 0 80px 0;
    margin: 0 0 80px 0;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-directory-provinces.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}

.dir-canada-container {
    width: min(90%, 1100px);
    margin: 0 auto;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.dir-canada-top-items-container {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    column-gap: 40px;
}

.dir-canada-top-item-half {
    flex: 0 0 calc(50% - 20px);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.dir-canada-bottom-item {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 20px;
    padding: 20px;
    background-color: rgba(245, 245, 245, 0.7);
    border: 1px solid #ccc;
    border-radius: 10px;
    font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1rem; /* 12 pt */
	color: #000000;
	line-height: 1.8em;
}

@media (max-width: 768px) {
.dir-canada-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-directory-provinces-mobile.jpg);
        background-attachment: scroll;
        
    }
    .dir-canada-container { gap: 20px; }
    .dir-canada-top-items-container { flex-direction: column; column-gap: 0; row-gap: 20px; }
    .dir-canada-bottom-item, .dir-canada-top-item-half { width: 100%; flex-basis: auto; }
}



  


.dir-location-wrapper {
    width: 100%;
    padding:80px 0 80px 0;
    margin: 0 0 80px 0;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-projects-headquarters-bg.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
    /*box-shadow: 0 -15px 15px 0px rgba(0,0,0,0.3), 0 15px 15px 0px rgba(0,0,0,0.3);*/
}


.dir-place-wrapper {   /*  for a different background. */
	width: 100%;
	padding:80px 0 80px 0;
    margin: 0 0 80px 0;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-directory-places.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
    /*box-shadow: 0 -15px 15px 0px rgba(0,0,0,0.3), 0 15px 15px 0px rgba(0,0,0,0.3);*/
}

.dir-models-wrapper {  /*  for a different background. */
	width: 100%;
	padding:80px 0 80px 0;
    margin: 0 0 80px 0;	
    background-image: url(/wp-content/themes/systemsthinking/images/banner-dir-models-bg.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
    /*box-shadow: 0 -15px 15px 0px rgba(0,0,0,0.3), 0 15px 15px 0px rgba(0,0,0,0.3);*/
}


.fullwidth-bg-stacked-container {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap; 
    flex-direction: column;
    row-gap: 80px;

    
}

.fullwidth-bg-stacked-top {
    width: 100%;
    max-width: 1100px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column; 
    justify-content: center;
    margin: 0 auto 0px auto;

    
}

.fullwidth-bg-stacked-bottom {
    width: 100%;
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 20px;
    box-sizing: border-box;
    padding: 20px;
    background-color: rgba(245, 245, 245, 0.7);
    border: 1px solid #ccc;
    border-radius: 10px;
    font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1rem; /* 12 pt */
	color: #000000;
	line-height: 1.8em;
    margin: 0 auto 0 auto;

}

@media (max-width: 768px) {
.dir-location-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-dir-fieldsofbiz-bg-mobile.jpg);
        background-attachment: scroll;
        
    }
.dir-place-wrapper {   /*  for a different background. */
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-directory-places-mobile.jpg);
        background-attachment: scroll;
        
    }
.dir-models-wrapper {  /*  for a different background. */
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-dir-models-bg-mobile.jpg);
        background-attachment: scroll;
        
    }
    .fullwidth-bg-stacked-container {
        /* This reduces the vertical gap between the top and bottom sections on mobile */
        gap: 20px;
    }

    .fullwidth-bg-stacked-left, .fullwidth-bg-stacked-right {
        width: 100%; 
    }
}





  /*                 Directory Single Page              */


  .dir-details-container {
	column-gap: 80px;  		/* Margin between box elements*/
	display: flex;
    margin: 0;
  } 
  
  .dir-profile-details {
    flex: 0 0 calc(50% - 10px); 
	margin: 20px 0 20px 0;	
  }

  .dir-three-wrapper {
    width: 100%;
    padding-top: 80px;
    margin-bottom: 80px;
    background-image: url(/wp-content/themes/systemsthinking/images/banner-home-tour.jpg);
    background-position: top;
    background-attachment: fixed;
    background-size: cover;
    box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
}


.dir-three-container {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.dir-three-box {
    width: calc(33.33% - 20px);
    max-width: 313px;
    margin: 0 0 80px 0;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    vertical-align: top;
    box-sizing: border-box;
    background:rgba(250, 250, 250, 0.9);
	border-radius: 10px;
    border:1px solid #ccc;
    padding: 20px;
}

.dir-summary-wrapper {
    height:auto;
    width: min(90%, 1100px);
    margin: 80px auto 65px auto;
    background-color:#ffffff;
    display: flex;
    flex-wrap: wrap;
}

.dir-list {
    width: 30%;
    height: auto; /* Let height adjust to content */
    margin-right: 80px; /* Space between sidebar and content */
    padding: 20px;
    box-sizing: border-box;
    background-color:whitesmoke;
    border: 1px solid #ccc;
    border-radius: 10px;
    align-self: flex-start; /* Align sidebar to the top */
    order: 1; /* Widgets come first on desktop */
}

.dir-summary {
    width: calc(70% - 80px); /* Adjusted width to account for margin and padding */
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    flex-direction: column;
    box-sizing: border-box;
    order: 2; /* Content comes after widgets on desktop */
}

  @media (max-width: 768px) {
        .dir-details-container {
        flex-direction: column; 
        width: 100%; 
    }

    .dir-summary-wrapper {
        flex-direction: column;
        width: 90%;
        margin: 40px auto;
        gap: 0;
    }

  .dir-three-wrapper {
        padding: 5% 0 10% 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-home-tour-mobile.jpg);
        background-attachment: scroll;
        
    }

    .dir-three-box {
        width: 100%;
        max-width: 400px; 
        margin: 0 auto 40px auto; 
    }

    .dir-list {
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
        order: 1;
    }

    .dir-summary {
        width: 100%;
        order: 2;
        gap: 40px;
        flex-direction: column;
        align-items: center;
    }
}




/*                                      Resource Page Books                                   */

.res-left-image {
    width: 25%;
    height: auto;
    margin-right: 80px;
    padding: 20px;
    box-sizing: border-box;
    align-self: flex-start;
    order: 1;
}





/* 										A La Cart Sections 										*/



/* Generic two-column layout with whitespace */

.whitespace-columns-wrapper {
	column-gap: 80px;
	display: flex;
    margin: 20px 0 20px 0;
  }
  
.whitespace-columns-column {
    flex: 0 0 calc(50% - 40px);
	margin: 20px 0 20px 0;
}

.whitespace-columns-column-boxed {
    flex: 0 0 calc(50% - 40px);
	margin: 20px 0 20px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 20px;
    box-sizing: border-box;
    padding: 20px;
    background-color: rgba(245, 245, 245, 0.7);
    border: 1px solid #ccc;
    border-radius: 10px;
    font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1rem; /* 12 pt */
	color: #000000;
	line-height: 1.8em;
}

@media (max-width: 768px) {
    .whitespace-columns-wrapper {
      flex-direction: column;
      width: 100%;
      gap: 20px;
    }
    .whitespace-columns-column,
    .whitespace-columns-column-boxed {
      width: 100%;
      flex-basis: auto;
      gap: 20px;
    }
}




/* full width backgrounds */

#full-width-background {
	width: 100%;
	padding:80px 0 80px 0;
    background-image: url(/wp-content/themes/systemsthinking/images/about-quest-midspan.jpg);
    background-position: top;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
    /*box-shadow: 0 -15px 15px 0px rgba(0,0,0,0.3), 0 15px 15px 0px rgba(0,0,0,0.3);*/
}



#full-width-background-container {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}




.full-width-raised-wrapper {
    width: 100%;
    padding: 80px 0 80px 0;
    margin-bottom: 80px;
    background-color: aliceblue;
    box-shadow: 0 -15px 15px 0px rgba(0,0,0,0.3), 0 15px 15px 0px rgba(0,0,0,0.3);
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow: hidden;
}





  /* Even Boxes Layout */
  .even-container {
    width: 90%;
    max-width: 1100px;
	column-gap: 80px;  		/* Margin between box elements*/
	display: flex;
    margin: 20px 0 20px 0;
  }
  
  .even-box {
    flex: 0 0 calc(50% - 40px); 
	margin: 20px 0 20px 0;
	text-align: left;
    box-sizing: border-box; /* Ensure padding is included in the width */
  }

  @media (max-width: 768px) {
    .even-container {
      flex-direction: column; 
      width: 100%; 
      gap: 20px; 
    }
    .even-box {
        width: 90%; /* Set width to less than 100% to create margins */
        margin-left: auto;
        margin-right: auto;
    }
}


  /* Three Boxes Layout */

.thirds-container {
    display: flex;
    flex-wrap: wrap; 
    justify-content: space-between; 
    column-gap: 80px; /* Space between boxes */
    margin: 20px 0;
}

.third-box {
    width: calc(33.33% - 80px); 
    margin-bottom: 20px;
}


@media (max-width: 768px) {
    section.thirds-container {
        flex-direction: column;
        width: 100%;
        gap: 20px;
    }

    .third-box {
        width: 100%; 
    }
}



/*.  Two thirds on the left  */

.twothirdsleft-container {
	height:auto;
	width: min(90%, 1100px);
	margin:0 auto 80px auto;
	background-color:#ffffff;
	overflow: hidden;
	display: flex;
	justify-content: space-between;
    gap: var(--gap, 80px); /* Margin between box elements*/
}

.twothirdsleft-box-left {
	flex-basis: 66%; 
    max-width: 66%;
    display: flex;
    flex-direction: column; 
    justify-content: center;
	order: 1;
}

.twothirdsleft-box-right {
    flex-basis: 33%; 
    max-width: 33%; 
    display: flex;
    flex-direction: column; 
    justify-content: center;
	order: 2;
}

.twothirdsleft-box-left-t {
	flex-basis: 66%; 
    max-width: 66%;
    display: flex;
    flex-direction: column; 
    justify-content: top;
	order: 1;
}

.twothirdsleft-box-right-t {
    flex-basis: 33%; 
    max-width: 33%; 
    display: flex;
    flex-direction: column; 
    justify-content: top;
	order: 2;
}



/*.  one third on the left  */

.onethirdleft-container {
	height:auto;
	width: min(90%, 1100px);
	margin:0 auto 80px auto;
	background-color:#ffffff;
	overflow: hidden;
	display: flex;
	justify-content: space-between;
    gap: var(--gap, 80px); /* Margin between box elements*/
}

.onethirdleft-box-left, .onethirdleft-box-left-t {
    flex-basis: 33%; 
    max-width: 33%; 
    display: flex;
    flex-direction: column; 
    justify-content: center;
	order: 1;
}

.onethirdleft-box-right,.onethirdleft-box-right-t {
	flex-basis: 66%; 
    max-width: 66%;
    display: flex;
    flex-direction: column; 
    justify-content: center;
	order: 2;
}

@media (max-width: 768px) {

      .twothirdsleft-container, 
      .onethirdleft-container {
          flex-direction: column;
          width: 90%;
      }

  .twothirdsleft-box-left,
  .twothirdsleft-box-left-t {
    flex-basis: auto; 
    max-width: 100%; 
	  order: 1;
}
	
	.twothirdsleft-box-right,
  .twothirdsleft-box-right-t {
    flex-basis: auto; 
    max-width: 100%;
	  order: 2; 
}
	
	.onethirdleft-box-left, .onethirdleft-box-left-t {
    flex-basis: auto; 
    max-width: 100%; 
	  order: 1;
}
	
	.onethirdleft-box-right, .onethirdleft-box-right-t {
    flex-basis: auto; 
    max-width: 100%; 
	  order: 2;
}

}




.split-top-band-wrapper {
    width: 100%;
    padding:80px 0 80px 0;
    margin: 0 0 80px 0;	
    background-image: url(/wp-content/themes/systemsthinking/images/home-banner-tour.jpg);
    background-position: top;
    background-attachment: fixed;
	background-size: cover;
	box-shadow: 0 0 20px rgba(0,0,0,0.3) inset;
    /*box-shadow: 0 -15px 15px 0px rgba(0,0,0,0.3), 0 15px 15px 0px rgba(0,0,0,0.3);*/
}

.split-top-band-container {
    width: min(90%, 1100px);
    margin: 0 auto;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.split-top-band-columns {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    column-gap: 40px;
}

.split-top-band-column {
    flex: 0 0 calc(50% - 20px);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.split-top-band-fullwidth-box {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 20px;
    padding: 20px;
    background-color: rgba(245, 245, 245, 0.7);
    border: 1px solid #ccc;
    border-radius: 10px;
    font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1rem; /* 12 pt */
	color: #000000;
	line-height: 1.8em;
}

@media (max-width: 768px) {
    .split-top-band-wrapper {
        padding: 10px 0 40px 0;
        margin-bottom: 80px;	
        background-image: url(/wp-content/themes/systemsthinking/images/banner-home-tour-mobile.jpg);
        background-attachment: scroll;
    }
      
    .split-top-band-container {
        gap: 20px;
    }
    .split-top-band-columns {
        flex-direction: column;
        column-gap: 0;
        row-gap: 20px;
    }
    .split-top-band-fullwidth-box,
    .split-top-band-column {
        width: 100%;
        flex-basis: auto;
    }
}






/*  										Special Elements 										 */






#rounded_box {
	height:47px;
	width:246px;
	padding-top:8px;
	margin-bottom:17px;
	background-color:#FFFFFF;
	border-radius: 0px 00px 40px 40px / 0px 0px 200px 200px;
	box-shadow:0px 0px 20px #9f9f9f;
}	
	
	
	
.clear {
	clear:both;
	width:100%;
	height:1px;
}

.clearfooter {
	height:80px;!Must be footer height plus required distance content is to be from footer; 
	clear:both;
}


hr.thin {
	height:1px;
	border:0;
	color:#ffffff;
	background-color:#000000;
	width:80%;
}




/*  									Image Styles								 */

.article-thumbnail-image {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin: 0 0 20px 0;
    box-sizing: border-box;
    border-radius: 10px;
    /* The gradient background will act as the border */
    background: linear-gradient(45deg, #fdf200, #03c772, #0fdbff, #f2335b);
}

.article-thumbnail-image img {
    position: absolute;
    /* Inset by 2px to reveal the gradient border, matching .striped */
    top: 2px;
    left: 2px;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    object-fit: cover;
    display: block;
    border-radius: 8px; /* Round corners inside the container: 10px - 2px */
}

/* --- Striped Image Border Styles --- */
.striped {
    padding: 2px;
    background: linear-gradient(45deg, #fdf200, #03c772, #0fdbff, #f2335b);
    border-radius: 10px;
    overflow: hidden;
    line-height: 0;
    display: inline-block; /* Prevents .striped from expanding to 100% width */
    max-width: 100%;       /* Prevents overflow on small screens */
}

.striped img {
    width: auto;           /* Use the image's natural width */
    max-width: 100%;       /* But don't overflow the container */
    height: auto;
    display: block;
    border-radius: 8px;
    overflow: hidden;
}





.img_top_left {
	margin-bottom:40px;
	margin-left:40px;
	margin-right:0px;
	margin-top:0px;
	float:right;

}

.img_mid_left {
	margin-bottom:40px;
	margin-left:40px;
	margin-right:0px;
	margin-top:40px;
	float:right;

}



img {
	border:none;
}

.quest {
	margin: 0 0 100px 0;
}

.cocreator-image {
    width: 300px; 
    height: 300px; 
    border-radius: 50%; 
    object-fit: cover;
}

.contributor-image {
    width: 100px; 
    height: 100px; 
    border-radius: 50%; 
    margin:0 0 20px 0;
    object-fit: cover;
}

.banner-margin-60-10 {
	margin-top: 60px;
	margin-bottom: 10px;
}


.svg-img {
  width: 100%;
  height: 100%;
  object-fit: contain; 
}

.entry-content img {
    max-width: 100%; /* Ensures the image never gets wider than its container */
    height: auto;    /* Maintains the image's aspect ratio as it scales */
}

/*
 * WordPress Image Sizing Fixes
 * These rules prevent smaller images inside posts from stretching to full-width,
 * a common issue when a theme primarily designed for the Classic Editor
 * is used with the Block Editor (Gutenberg).
 */
.entry-content figure {
	/* By default, <figure> is a block-level element that expands to full-width.
	   'display: table' makes it shrink-wrap its content (the image).
	   We also reset the default browser margins. */
	display: table;
	width: auto; /* Let the content (image) determine the width */
	max-width: 100%;
	margin: 0 0 1em 0; /* Reset top/left/right margins, add space at bottom */
}

/* This ensures that figures aligned 'center' are actually centered. */
.entry-content figure.aligncenter {
	margin-left: auto;
	margin-right: auto;
}



/* Constrain embedded iframes and embeds (YouTube, Vimeo, etc.) within content */
.entry-content iframe,
.entry-content embed,
.entry-content video,
main iframe,
main embed,
main video {
  max-width: auto;
  height: auto;
  display: block;
}


/*  											Fonts 											 */





h1 {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 2rem; /* 12 pt */
	color: #000000;
	margin-top: 0px;
	
}

h2 {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.75rem; /* 12 pt */
	color: #000000;
	margin-top: 0px;
	
}

h3 {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.5rem; /* 12 pt */
	color: #000000;
	margin-top: 0px;
	
}



h4 {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.3125rem; /* 12 pt */
	color: #000000;
	margin-top: 0px;
	
}


h5 {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.125rem; /* 12 pt */
	color: #000000;
	margin: 0px;
	
}

h6 {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1rem; /* 12 pt */
	color: #000000;
	font-weight: bold;
	margin-top: 0px;
	
}

p {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1rem; /* 12 pt */
	color: #000000;
	line-height: 1.8em;
	
}


ul {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1rem; /* 12 pt */
	color: #000000;
	line-height: 1.8rem;
	
}



li {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1rem; /* 12 pt */
	color: #000000;
	line-height: 1.8rem;
	
}



.font-footer {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 0.70rem; /* 12 pt */
	color: #000000;
	line-height: 1rem;
}

.link-footer {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 0.7rem; /* 12 pt */
	color: #ffffff;
	font-weight:bold;
	margin:0px;
	
}

.footer-header {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.125rem; /* 12 pt */
	color: #ffffff;
	font-weight:bold;
	margin: 0;
	padding: 0;
	
}


blockquote {
	width: 90%;
  	margin: 0px auto 0 auto;
    background:rgba(250, 250, 250, 0.9);
	border-radius: 10px;
    border:1px solid #ccc;
    font-family:Baskerville, "Palatino Linotype", Palatino, "Century Schoolbook L", "Times New Roman", serif;
    padding:.5em 20px;
    quotes:"\201C""\201D""\2018""\2019";
	
    }
	
	
blockquote p {
    display:block;
    margin-bottom: 10px;
}
	
blockquote cite {
    color:#555555;
    font-size: 1rem;
	margin: 0 0 0 30%;
    display: block;
    margin-top: 10px;
	font-style: italic;
}




.h-0m {
	margin-bottom: 0;
}

.h-10m {
	margin-bottom: 10px;
}

.p-0m {
	margin: 0;
}

.big-text {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.5rem; /* 12 pt */
	color: #000000;
	
}

.participation {
    font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 0.875rem; /* 12 pt */
	color: #000000;
}


.excerpt {
	font-size: 1rem;
}

.white {
	color: #ffffff;
}

.yellow {
	color:#EEFF00;
}

.red {
	color: #FF0004;
}

.green {
	color: #00FF15;
}

.gray {
	color: #8b8b8b;
}



.wpforms-field-description, 
.wpforms-field-label, 
.wpforms-field-sublabel, 
.wpforms-page-next, 
.wpforms-page-button {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";

}


.wpforms-page-indicator-steps {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.75rem; /* 12 pt */
	color: #000000;
	margin-top: 0px;
	
}

.entry-meta,
.entry-meta a,
.entry-utility,
.entry-utility a,
.posted-on,
.byline,
.cat-links,
.tags-links 
 {
	font-family: 'Poppins', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 0.9rem;
	color: #555555;
	font-weight: normal;
	line-height: 1.6;
	margin-bottom: 5px;
}






/*  Links  */




a:link {
    color:#0b1598; 
    text-decoration:none; 
    font-weight:normal; 
}
a:visited {
    color:#0b1598;
    text-decoration:none;
    font-weight:normal;
}
a:hover {
    color:#cec316;
    text-decoration:none;
    text-shadow:1px 1px 2px black;
    font-weight:normal;
}
a:active {
    color:#0b1598;
    text-decoration:none;
    font-weight:normal;
}




a.link-nav:link {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color:#ffffff;
	text-decoration:none;
}
a.link-nav:visited {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color:#ffffff;
	text-decoration:none;
}
a.link-nav:hover {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color:#f9ec1e;
	text-decoration:none;	
    border-bottom: 2px solid #f9ec1e; /* 2px yellow line on hover */
    padding-bottom: 3px;
}
a.link-nav:active {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color:#ffffff;
	text-decoration:none;
}






a.link-nav-red:link {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-weight: bold;
	color:#ec7a8f;
	text-decoration:none;
}
a.link-nav-red:visited {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-weight: bold;
	color:#ec7a8f;
	text-decoration:none;
}
a.link-nav-red:hover {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-weight: bold;
	color:#70be44;
	text-decoration:none;	
    border-bottom: 2px solid #f9ec1e; /* 2px yellow line on hover */
    padding-bottom: 3px;
}
a.link-nav-red:active {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-weight: bold;
	color:#ec7a8f;
	text-decoration:none;
}






a.link_footer:link {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color:#ffffff;
	text-decoration:none;
	margin: 0;
	padding: 0;
}
a.link_footer:visited {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color:#ffffff;
	text-decoration:none;
	margin: 0;
	padding: 0;
}
a.link_footer:hover {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color:#000000;
	text-decoration:none;
	text-shadow:1px 1px 2px black;
	margin: 0;
	padding: 0;
}
a.link_footer:active {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color:#ffffff;
	text-decoration:none;
	margin: 0;
	padding: 0;
}

/* ==========================================================================
   Buttons
   ========================================================================== */

.btn-cta {
    display: inline-block;
    padding: 12px 24px;
    background-color: #0b1598; /* Blue from the mobile header */
    color: #ffffff !important; /* Ensure text is white, overriding default link styles */
    font-family: 'Poppins', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    font-size: 1.1rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    border: none;
    border-radius: 8px; /* Increased corner radius */
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}

.btn-cta:hover,
.btn-cta:focus {
    background-color: #08107a; /* A slightly darker blue for hover */
    color: #f9ec1e !important; /* Change text to yellow for hover */
    text-shadow: none; /* Override default link hover */
    transform: translateY(-2px); /* Add a subtle lift effect */
}



/*** CONTENT : POSTS AND PAGES ***/





/* ==========================================================================
   Custom Sidebar Universal Styles
   ========================================================================== */

.custom-sidebar .custom-sidebar-section,
.custom-sidebar .widget {
    margin-bottom: 30px;
    padding: 15px;
    background-color: whitesmoke;
    border-radius: 10px;
    box-sizing: border-box;
    border-bottom: 1px solid #ddd;
}

.custom-sidebar .custom-sidebar-section:last-child,
.custom-sidebar .widget:last-child {
    margin-bottom: 0;
    border-bottom: none;
}

.custom-sidebar {
    font-size: 1.125rem; /* H5 size */
    /* font-family, color, and font-weight will be inherited */
    margin-top: 0;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
    white-space: nowrap; 
    overflow: hidden; 
    text-overflow: ellipsis; 
}

.widget-title {
    font-size: 1rem;
    margin-top: 0;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
    white-space: nowrap; 
    overflow: hidden;
    white-space: normal;
    line-height: 1.3;
    word-break: break-word;
}

.custom-sidebar .custom-sidebar-dropdown {
    display: block;
    width: 100%;
    padding: 10px 30px 10px 12px;
    margin-top: 5px;
    margin-bottom: 15px;
    font-family: 'Poppins', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    font-size: 0.95rem;
    line-height: 1.5;
    color: #333;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23333'%3E%3Cpath fill-rule='evenodd' d='M8 11.293l-4.646-4.647a.5.5 0 0 1 .708-.708L8 9.879l3.939-3.939a.5.5 0 1 1 .707.707L8 11.293z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 16px;
}

.custom-sidebar .custom-sidebar-dropdown:focus {
    border-color: #0073aa;
    outline: none;
    box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.25);
}

.custom-sidebar .custom-sidebar-dropdown option {
    white-space: normal;
    overflow-wrap: break-word;
    padding: 5px 10px;
}

.custom-sidebar .custom-sidebar-search-form {
    display: flex;
    margin-bottom: 15px;
}

.custom-sidebar .custom-sidebar-search-form label {
    flex-grow: 1; /* Allow the label (containing the input) to take available space */
    display: flex; /* To make its child input fill it */
    min-width: 0; /* Allow label to shrink */
}

.custom-sidebar .custom-sidebar-search-form .search-field {
    width: 100%; /* Make the input fill the label */
    min-width: 0; /* Important for allowing the input to shrink */
    padding: 10px 12px;
    font-family: 'Poppins', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    font-size: 0.95rem;
    color: #333;
    border: 1px solid #ccc;
    border-right: none;
    border-radius: 4px 0 0 4px;
    box-sizing: border-box;
    -webkit-appearance: none;
}

.custom-sidebar .custom-sidebar-search-form .search-field:focus {
    border-color: #0073aa;
    outline: none;
    box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.25) inset;
}

.custom-sidebar .custom-sidebar-search-form .search-submit {
    padding: 10px 15px;
    font-family: 'Poppins', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    font-size: 0.95rem;
    color: #fff;
    background-color: #0073aa;
    border: 1px solid #0073aa;
    border-radius: 0 4px 4px 0;
    cursor: pointer;
    -webkit-appearance: none;
    box-sizing: border-box; 
    flex-shrink: 0; /* Prevent the button from shrinking */
}

.custom-sidebar .custom-sidebar-search-form .search-submit:hover,
.custom-sidebar .custom-sidebar-search-form .search-submit:focus {
    background-color: #005a87;
    border-color: #005a87;
}

/* This rule was already here and is good for accessibility */
.custom-sidebar .custom-sidebar-search-form label .screen-reader-text {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.custom-sidebar .widget ul {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
    margin-bottom: 0;
}

.custom-sidebar .widget ul li {
    padding: 6px 0;
    border-bottom: 1px dotted #e0e0e0;
}

.custom-sidebar .widget ul li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.custom-sidebar .widget ul li a {
    text-decoration: none;
    color: #0073aa;
    display: block;
}

.custom-sidebar .widget ul li a:hover {
    text-decoration: underline;
    color: #005a87;
}

/* --- End Custom Sidebar Universal Styles --- */








/* Style for photo captions */
.wp-caption-text {
	text-align: center;
}
/* Style for edit link */
.post-edit-link {
	font-family: verdana;
	font-size: 1rem;
	color: #F00;
}
.edit-link a:link {
	color: #F00;
	text-decoration: none;
}
.edit-link a:visited {
	color: #F00;
	text-decoration: none;
}
.edit-link a:hover {
	color: #F00;
	text-decoration: none;
	text-shadow: 1px 1px 2px black;
}
.edit-link a:active {
	color: #F00;
	text-decoration: none;
}

/* Entry and Page Titles */
h2.entry-title {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.5rem;
	color: #000000;
	font-weight: bold;
	margin: 0px;
}
h3.entry-title {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.125rem;
	color: #000000;
	font-weight: bold;
}
h3.entry-title a {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.125rem;
	color: #000000;
	font-weight: bold;
	margin: 0px;
}
h2.home-title {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.125rem;
	color: #000000;
	font-weight: bold;
	margin: 0px;
	padding: 0px;
}
h2.latestpost {
	display: block;
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 2rem;
	color: #848484;
	font-weight: bold;
	padding: 0 0 40px 0;
	text-align: center;
}
h2.page-title {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 1.5rem;
	color: #000000;
	font-weight: bold;
	margin: 0px;
}
/* Media Alignment */
.alignright {
	/* Style for right-aligned images in posts */
	margin-left: 20px;
	margin-bottom: 20px;
	margin-top: 20px;
	float: right;
}
.alignleft {
	/* Style for left-aligned images in posts */
	margin-right: 20px;
	margin-bottom: 20px;
	margin-top: 20px;
	float: left;
}
.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
/* Entry Content */
.entry-content {
/* Style that affects actual entry/post content */
}
.entry-content a {
}
.entry-content a:hover {
}
.entry-content ol li {
}
.entry-utility {
	font-family: verdana;
	font-size: 0.8rem;
	color: #000000;/* Style for the entry utility, which sits below a post and provides info like categories, tags, feeds, and an edit link (for authors) */
}
.entry-meta {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 0.8rem;
	color: #000000;	/* Style for the entry metadata (author, etc.) */
}
.meta-prep meta-prep-author {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 0.8rem;
	color: #000000;
}
.skip-link {
	font-family:'Poppins',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 0.8rem;
	color: #000000;/* Style for the skip link *//*position: absolute;
	left: -9000px;*/
}
.navigation {
	font-family: verdana;
	font-size: 0.8rem;
	color: #000000;/* Style for the navigation links (next/previous post) on a given post */
}
/*** CONTENT : COMMENTS ***/

div#comments {
/* Style that affects the DIV containing all the comments */
}
.comments h3 {
/* H3 header style for comments */
}
.comments ol {
/* Comments are displayed as ordered lists by default, so you want to style that list so it looks the way you want */
}
.comments ol li {
/* Style each list item in the comments ordered list */
}
.comments img {
	/* Style for the user avatar beside each comment */
	float: left;
	margin: 0 12px 8px 0;
}
.comments .comment {
/* Style that applies to each individual comment in a series of comments */
}
.children ul li {
/* A style that refers to the children (as in, responses to) any given comment */
}
.comment-reply-link {
/* Style for the "Reply" link on a comment */
}
.comment-meta {
/* Style for metadata for a comment */
}
div#respond {
/* DIV that contains the comment response form */
}
div#respond h3 {
/* H3 header for the comment response form */
}

div#secondary {
/* Secondary Widget Area DIV */
}
.widget-area {
/* Class that applies to BOTH widget areas */
}
.xoxo {
	list-style: none;/* Class that applies to each item in each widget area (an unordered list class) */
}
.sticky {
}
.gallery-caption {
}
.bypostauthor {
}
#nav-below {
	width: 100%;
	text-align: center;
	display: block;
}
.navigation {
	display: block;
	list-style: none;
	font-size: 12px;
}
.navigation li {
	display: inline-block;
}
.navigation li a {
	display: block;
	float: left;
	padding: 4px 9px;
	margin-right: 7px;
	border: 1px solid #efefef;
	text-align: center;
}
.navigation li span.current {
	display: block;
	float: left;
	padding: 4px 9px;
	margin-right: 7px;
	border: 1px solid #efefef;
	background-color: #f5f5f5;
}
.navigation li span.dots {
	display: block;
	float: left;
	padding: 4px 9px;
	margin-right: 7px;
}
