/*
 Theme Name:   Springfield Urban League
 Theme URI:    https://www.upsweptcreative.com/
 Description:  Theme for Springfield Urban League, built as GeneratePress child theme
 Author:       Chynna Lew for Upswept Creative
 Author URI:   https://www.upsweptcreative.com
 Template:     generatepress
 Version:      1.0
*/

/* TABLE OF CONTENTS
* 0. FONTS AND COLORS
* 1. TYPOGRAPHY
* 2. ELEMENTS
-- 2.1 TRIANGLES
-- 2.2 BUTTONS
-- 2.3 ICON COLUMNS
-- 2.4 CTAS
-- 2.5 INTERIOR HERO
-- 2.6 FORMS
-- 2.7 EVENTS SHORTCODES
-- 2.8 ACCORDION
* 3. NAVIGATION
* 4. HOMEPAGE
-- 4.1 HOMEPAGE HERO
-- 4.2 THE MOVEMENT
-- 4.3 LATEST EVENTS
-- 4.4 OUR IMPACT
-- 4.5 RECENT NEWS
* 5. SINGLE POSTS AND PAGES
-- 5.1 OUR TEAM
-- 5.2 EVENTS
-- 5.3 SHOP
-- 5.4 BLOG
-- 5.5 ACCOUNT
-- 5.6 COMMUNITY & SHAREHOLDER
-- 5.7 PROGRAM TYPE page archive
* 6. FOOTER
*/

/* ---------------
0. FONTS AND COLORS
----------------- */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Besley:ital,wght@0,400..900;1,400..900&display=swap');
@font-face {
    font-family: "Motiva Sans";
    src: url(fonts/MotivaSansExtraBold.ttf);
}

/*
  font-family: "Montserrat", sans-serif;
font-family: "Open Sans", sans-serif;
  font-family: "Motiva Sans";
 */

:root {
    --red: #C3122F;
    --gold: #E49600;
    --gray: #D5D7D8;
}

body {
    background-color: white;
    color: black;
    font-family: "Open Sans", sans-serif;
}

.inside-article {
    background-color: transparent;
}

/* ---------------
1. TYPOGRAPHY
----------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Motiva Sans";
}

h2 {
    color: var(--red);
}

.tribe-events-header__title-text {
    font-family: "Motiva Sans", Arial, sans-serif !important;
}

.large-text {
    font-size: 3.5em;
}

.caveat {
    font-family: sans-serif !important;
}

body {
    color: #000;
}

p a {
    font-family: "Open Sans", sans-serif;
}

a {
    font-family: "Open Sans", sans-serif;

}

@media (max-width: 782px) {

    h1,
    .home-hero h1 {
        font-size: 2.8em !important;
    }

    h2,
    h2.woocommerce-loop-product__title {
        font-size: 2.2em !important;
    }

    h3 {
        font-size: 1.8em !important;
    }

    h4 {
        font-size: 1.4em !important;
    }
}

@media (max-width: 600px) {

    h1,
    .home-hero h1 {
        font-size: 2.2em !important;
    }

    h2,
    h2.has-x-large-font-size,
    h2.woocommerce-loop-product__title {
        font-size: 1.6em !important;
    }

    h3 {
        font-size: 1.2em !important;
    }

    h4 {
        font-size: 1.2em !important;
    }
}

/* ---------------
2. ELEMENTS
----------------- */
html {
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}
.grid-container{
	max-width: 100vw;
}
.site,
.site-main,
.inside-article {
    margin-bottom: 0px !important;
    margin-top: 0px !important;
    padding: 0px !important;
}

body {
    overflow-x: hidden;
    z-index: 1;
}

.site-info,
.page .featured-image {
    display: none;
}

.wp-block-columns {
    gap: 5px;
}

.wp-block-columns:has(+ .wp-block-columns) {
    margin-bottom: 5px;
}
.z-10{
	position: relative;
	z-index: 10;
}

@media (min-width: 1280px) {

    .site-main .wp-block-group__inner-container {
        padding-left: 0px !important;
        padding-right: 0px !important;

    }
		.wp-block-column.has-background .wp-block-group__inner-container{
		padding-left: 40px !important;
		padding-right: 40px !important;
	}

}

@media (max-width: 782px) {

    .order-1,
    .order-2 {
        position: relative;
    }

    .order-1 {
        order: 1;
    }

    .order-2 {
        order: 2;
    }
}
 /* align buttons at the bottom of the gray boxes */
.wp-block-latest-posts__list li{
    position: relative;
		padding-bottom: 60px !important;
}

.wp-block-latest-posts__list li .read-more{
    position: absolute;
	bottom: 20px;
}

.wp-block-column.has-gray-background-color .wp-block-buttons{
		bottom: 40px;
	  position: absolute;
	width: calc(100% - 80px);
}

.wp-block-column.has-gray-background-color .wp-block-group:has(.wp-block-buttons){
	height: 100%;
    position: relative;
		padding-bottom: 70px !important;
}
@media (min-width: 1201px) {
    .break-1000.wp-block-columns {
        align-items: stretch;
        width: 100%;
    }
}
@media (max-width: 1200px){

	.break-1000.wp-block-columns{
		flex-wrap: wrap !important;
		max-height: fit-content;
		height: fit-content !important;
	}
	.break-1000.wp-block-column{
		min-width: 100%;
	}
}
/* ---------------
2.1 TRIANGLES
----------------- */
.polygon-overlay,
.polygon-background {
    position: absolute;
    z-index: 0;
}

.triangle-gold-1 {
    aspect-ratio: 1/2;
    /* background: var(--gold); */
	background-color: #333;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    opacity: .4;
    position: relative;
    width: 100px;
}

.triangle-red-1 {
    aspect-ratio: 2;
    background: var(--red);
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    height: 100px;
    opacity: .5;
    position: absolute;
}

.triangle-red-2 {
    aspect-ratio: 1/2;
    background: var(--red);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    opacity: .5;
    position: absolute;
    width: 100px;
}

.triangle-gold-2 {
    aspect-ratio: 2;
    /* background: var(--gold); */
	background-color: #333;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    height: 100px;
    opacity: .4;
    position: absolute;
}

.rhombus-red-1 {
    aspect-ratio: 1;
    background: var(--red);
    clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
    height: 200px;
    opacity: .5;
    position: absolute;
}

/* ---------------
2.1.1 BACKGROUND GROUPS
----------------- */
/*red triangle right justified */
.red-triangle-background {
    margin-top: -30px;
    position: relative;
    overflow: hidden;
}

.red-triangle-background .polygon-background {
    height: 1000px;
    right: 0px;
    top: 80px;
    width: 500px;
}

.red-triangle-background .polygon-background .triangle-red-2 {
    height: 100%;
    width: 100%;
    transform: rotate(180deg)
}

.red-triangle-background .wp-block-columns,
.red-triangle-background h2,
.red-triangle-background ul,
.red-triangle-background p,
.red-triangle-background h3,
.red-triangle-background .wp-block-group,
.triangle-right .wp-block-group {
    position: relative;
    z-index: 2;
}

/*gold triangle left justified */
.gold-triangle-background {
    margin-top: -30px;
    position: relative;
    overflow: hidden;
}

.gold-triangle-background .polygon-background {
    height: 1000px;
    left: 0px;
    top: 80px;
    width: 500px;
}

.gold-triangle-background .polygon-background .triangle-gold-1 {
    height: 100%;
    width: 100%;
}

.gold-triangle-background .wp-block-columns {
    position: relative;
    z-index: 1;
}

/* ---------------
-- 2.2 BUTTONS
----------------- */
.wp-block-buttons a.wp-block-button__link,
.read-more {
    background-color: var(--red);
    border: 0px;
    border-radius: 0;
    font-family: Montserrat, sans-serif;
    font-weight: 700;
    padding: 12px 25px;
    text-transform: uppercase;
    transition: all .3s;
    width: fit-content;
}

.wp-block-buttons .gold-button a.wp-block-button__link,
.has-red-background-color {
    /* background-color: var(--gold); */
	background-color: black;
}

.wp-block-buttons .gold-button a.wp-block-button__link:hover {
    background-color: var(--gold);
}

.has-red-background-color .wp-block-buttons a.wp-block-button__link{
	/* background-color: var(--gold); */
	background-color: black;
}

.has-red-background-color .wp-block-buttons a.wp-block-button__link:hover{
	background-color: var(--gold);
	color: white;
}
.has-red-background-color a {
	color: white;
}


.read-more:hover {
    /* background-color: var(--gold); */
	background-color: black;
}

.read-more {
    color: white !important;
    display: block;
    margin-top: 10px;
    text-decoration: none;
    transition: all .5s;
}

/* ---------------
2.3 ICON COLUMNS
----------------- */
.icon-columns .wp-block-group__inner-container {
    padding: 0px;
}

.icon-columns .wp-block-column {
    align-items: center;
    border-bottom: 1px solid white;
    border-left: 1px solid white;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    padding: 30px;
    transition: all 0.5s;
}

.icon-columns .wp-block-columns:has(+ .wp-block-columns) {
    margin-bottom: 0px;
}

.icon-columns .wp-block-column:last-child {
    border-right: 1px solid white;
}

.icon-columns .wp-block-column:hover {
    background-color: black;
}

.icon-columns .wp-block-column h3 {
    margin-bottom: 0px;
}

.icon-columns .wp-block-column h3 a {
    font-weight: 900;
    text-decoration: none;
}

.icon-columns .wp-block-column h3 a:hover {
    color: white;
}

.icon-columns .wp-block-column img {
    max-height: 200px;
    padding: 0 20px 0 20px;
    width: auto
}

@media (min-width: 782px) {
    .icon-columns:not(.break-1000) .wp-block-columns {
        align-items: stretch;
        gap: 0px;
        height: 250px;
        width: 100%;
    }
}
@media (min-width: 1201px) {
    .icon-columns.break-1000 .wp-block-columns {
        align-items: stretch;
        gap: 0px;
        height: 250px;
        width: 100%;
    }
}
@media (max-width: 1200px){

	.icon-columns.break-1000 .wp-block-columns, .break-1000.wp-block-columns{
		flex-wrap: wrap !important;
		max-height: fit-content;
		height: fit-content !important;
	}
	.icon-columns.break-1000 .wp-block-column, .break-1000 .wp-block-column{
		min-width: 100%;
	}
}
/* ---------------
-- 2.4 CTAS
----------------- */
.cta {
    max-height: 500px;
    min-height: 500px;
}

.cta .wp-block-group__inner-container {
    padding: 20px;
}

.cta h2 {
    font-size: 2.5em;
    max-width: 45%;
    text-shadow: 2px 2px 4px black;
    position: relative;
    z-index: 1;
}

.cta .wp-block-buttons,
.cta p {
    position: relative;
    z-index: 1;
}

.cta .polygon-overlay {
    bottom: -590px;
    height: 750px;
    left: -40px;
    width: 750px;
    z-index: 0;
}

.cta .polygon-overlay .triangle-gold-2 {
    height: 100%;
    width: auto;
}

.cta .polygon-overlay .triangle-red-2 {
    bottom: 0px;
    height: auto;
    width: 100%;
}

@media (min-width: 1200px) {
    .cta {
        min-width: 100vw;
        max-width: 100vw;
        /*         margin-left: calc((-100vw + 1200px) / 2) */
    }

    .cta .wp-block-group {
        max-width: 1200px;
        margin: auto;
    }
}

@media (max-width: 700px) {
    .cta h2 {
        max-width: 100%;
    }
}

/* ---------------
-- 2.5 INTERIOR HERO
----------------- */

.interior-hero {
    max-height: 250px;
    min-height: 250px;
    margin-bottom: 0;
}

.interior-hero .wp-block-group__inner-container {
    padding: 0px;
}

.interior-hero h1 {
    color: white;
    position: relative;
    text-shadow: 2px 2px 4px black;
    z-index: 1;
}

.interior-hero .wp-block-buttons {
    position: relative;
    z-index: 1;
}

.interior-hero .polygon-overlay {
    bottom: -240px;
    height: 800px;
    left: -60px;
    width: 800px;
    z-index: 0;
}

.interior-hero .polygon-overlay .triangle-gold-1 {
    height: 100%;
    width: auto;
}

.interior-hero .polygon-overlay .triangle-red-1 {
    bottom: 0px;
    height: auto;
    width: 100%;
}

@media (min-width: 1200px) {
    .interior-hero {
        min-width: 100vw;
        max-width: 100vw;
    }

}

/* ---------------
-- 2.6 FORMS
----------------- */
.gform_wrapper.gravity-theme .field_sublabel_above .description,
.gform_wrapper.gravity-theme .field_sublabel_above .gfield_description,
.gform_wrapper.gravity-theme .field_sublabel_above .gsection_description {
    padding-top: 0px;
    margin-top: -5px;
    font-style: italic;
}

.gform-footer input {
    transition: all .5s;
    font-weight: 900;
}

.gform-footer input:hover {
    background-color: black
}
/* ---------------
-- 2.7 EVENTS SHORTCODES
----------------- */
.tribe-common{
	position: relative;
	z-index: 5;
}
.tribe-events-view--shortcode .tribe-common-l-container, .tribe-events-l-container{
	min-height: 0px !important;
	padding: 40px 0px !important;
}
.tribe-events-view--shortcode .tribe-common-l-container nav a{
	color: white !important;
}
.tribe-events-view--shortcode .tribe-common-l-container nav svg path{
	fill: white !important;
}
.tribe-events-c-events-bar__search-container .tribe-events-c-search__button{
	height: 100%;
	margin-bottom: 0px !important;
}
.tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button{
	border: transparent !important;
	font-weight: normal !important;
	padding: 10px 20px !important;
}
.tribe-events-calendar-list__event-date-tag time span{
	color: white !important;
}
.tribe-compatibility-container .tribe-events-widget-events-list__event-date-tag, .tribe-compatibility-container .tribe-events-widget-events-list__event-date-tag time{
	align-items: center;
	background-color: var(--red);
	color: white;
		display: flex;
	font-weight: bold;
	justify-content: center;
}
.tribe-compatibility-container .tribe-events-widget-events-list__event-wrapper{
	padding: 20px !important;
}
.tribe-compatibility-container .tribe-common-g-row{
	border-bottom: white 1px solid !important;
	margin-bottom: 0px !important;
}

.tribe-compatibility-container  .tribe-events-widget-events-list__view-more{
	display: none;
}
.tribe-compatibility-container{
	background-color: var(--gray)
}

.tribe-events-view--shortcode .tribe-events-calendar-list__month-separator {
	margin: 10px 0;
}

.tribe-events-view--shortcode .tribe-events-calendar-list__event-row {
	margin: 1px !important;
}
.tribe-events-view--shortcode .tribe-events-c-small-cta__link {
	margin: 5px 0 0 0 !important;
}
.tribe-events-view--shortcode .tribe-events-calendar-list__event-title {
	font-size: 20px !important;
	margin-top: 0 !important;;
}

.tribe-events-view--shortcode .tribe-events-c-small-cta {
	margin-top: 0 !important;
}

.tribe-events-view--shortcode .tribe-events-calendar-list__event-venue,
.tribe-events-view--shortcode .tribe-events-calendar-list__event-description,
.tribe-events-view--shortcode .tribe-events-calendar-list__event-description p {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tribe-events-view--shortcode .tribe-events-l-container {
	padding-top: 0 !important;
}

/* ----------------------
-- 2.8 ACCORDION
----------------------- */

.faq .wp-block-group__inner-container{
	margin-bottom: 0;
	padding: 0;
}

.faq h3 {
	background: var(--red);
	color: white;
	margin-bottom: 0;
	padding: 10px 20px;
}

.faq h3:before{
	content: "+ ";
}

.faq.active h3:before{
    content: "- ";
}
.faq p, 
.faq.close p  {
	height: 0;
    max-height: 0;
	opacity: 0;
    overflow: hidden;
	padding: 0 20px;
    transition: height 0.3s ease-out;
}

.faq.active p , 
.faq.active.close p {
	background: var(--gray);
    max-height: fit-content;
    opacity: 1;
	padding-bottom: 20px;
    transition: height 0.2s ease-out, opacity 0.2s ease-out;
}
.faq.active.close{
	max-height: fit-content;
}

/* large content accordion */
.large-content .faqL .wp-block-group__inner-container{
	padding: 0px;
	padding-bottom: 10px;
}
.large-content .faqL  h2{
	background-color: var(--red);
	color: white;
	margin-bottom: 0px;
	padding: 10px 20px;
	transition: all .5s;
}
.large-content .faqL  h2:hover{
		background-color: var(--gold);
	cursor: pointer !important;
}
.large-content .faqL  h2::before{
	content: "+";
	padding-right: 5px;
}
.large-content .faqL.active  h2::before{
	content: "-";
		padding-right: 13px;
}
.large-content .faqL.active  h2{
	background-color: var(--gold);
}

.large-content .faqL .content{
	background-color: var(--gray);
	height: 0;
	opacity: 0;
	overflow: hidden;
	padding: 20px 20px 0px 20px;
	transition: all .5s;
}
/* ---------------
3. NAVIGATION
----------------- */
.main-navigation a {
    font-family: Montserrat, sans-serif;
    font-weight: bold;
    text-transform: uppercase;
}

.main-navigation .main-nav ul li a {
    padding-left: 0px;
}

.site-header {
    background-color: rgb(255, 255, 255, .85) !important;
    position: sticky;
    top: 0;
    z-index: 10;
}

@media (min-width: 1200px) {
    nav .gp-icon.icon-arrow {
        display: none;
    }
}

/* ---------------
4. HOMEPAGE
----------------- */

/* ---------------
-- 4.1 HOMEPAGE HERO
----------------- */
.home-hero {
    max-height: 650px;
    min-height: 650px;
}

.home-hero .wp-block-group__inner-container {
    padding: 0px;
}

.home-hero h1 {
    text-shadow: 2px 2px 4px black;
    position: relative;
    z-index: 1;
}

.home-hero .wp-block-buttons {
    position: relative;
    z-index: 1;
}

.home-hero .polygon-overlay {
    bottom: -240px;
    height: 800px;
    left: -60px;
    width: 800px;
    z-index: 0;
}

.home-hero .polygon-overlay .triangle-gold-1 {
    height: 100%;
    width: auto;
}

.home-hero .polygon-overlay .triangle-red-1 {
    bottom: 0px;
    height: auto;
    width: 100%;
}

/* ---------------
-- 4.2 THE MOVEMENT
----------------- */
.the-movement,
.triangle-right {
    margin-top: -30px;
    position: relative;
    overflow: hidden;
}

.the-movement .polygon-background,
.triangle-right .polygon-background {
    height: 1000px;
    right: 0px;
    top: 80px;
    width: 500px;
}

.the-movement .polygon-background .triangle-red-2,
.triangle-right .polygon-background .triangle-red-2 {
    height: 100%;
    width: 100%;
    transform: rotate(180deg)
}

.the-movement .wp-block-columns,
.triangle-right .wp-block-columns {
    position: relative;
    z-index: 1;
}

/* ---------------
-- 4.3 LATEST EVENTS
----------------- */
.home-events {
    border-bottom: 1px solid white;
    border-top: 1px solid white;
}

.home-events .wp-block-group__inner-container {
    padding: 0px;
}

.home-events .latest-events {
    border-bottom: 1px white solid;
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    justify-content: center;
    max-width: 1200px;
    padding: 0px 0px;
    width: 100%;
}

.home-events .latest-event {
    border-left: 20px var(--red) solid;
    border-right: 2px white solid;
    background-color: var(--gray);
    padding: 20px;
    width: calc(33.33%);
}

.home-events .latest-events h4,
.home-events .latest-events p {
    margin-bottom: 0px;
}

.home-events .latest-events h4 {
    font-weight: bold;
}

.home-events .wp-block-buttons {
    margin-top: 10px
}

@media (max-width: 700px) {
    .home-events .latest-event {
        width: 100%;
    }
}

/* ---------------
-- 4.4 OUR IMPACT
----------------- */
.our-impact .wp-block-group__inner-container {
    padding: 0px 50px;
}

.our-impact .wp-block-columns {
    gap: 2px;
}

.our-impact .wp-block-column {
    position: relative;
}

.our-impact .wp-block-column:first-child {
    margin-right: 20px;
    padding: 40px 0px;
}

.our-impact .wp-block-column:not(:first-child) {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px;
}

.our-impact .wp-block-column figure {
    background-color: black;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}

.our-impact .wp-block-column:not(:first-child) h2 {
    font-size: 2.5em;
    margin-bottom: 10px
}

.our-impact .wp-block-column:not(:first-child) p {
    font-size: 1.17em;
    line-height: 1.17em;
}

.our-impact .wp-block-column:not(:first-child) h2,
.our-impact .wp-block-column:not(:first-child) p {
    color: white;
    font-weight: bold;
    text-shadow: 2px 2px 5px black;
    position: relative;
    z-index: 1;
}

.our-impact .wp-block-column figure img {
    height: 100%;
    object-fit: cover;
    opacity: .7;
    width: 100%;
}

/* ---------------
-- 4.5 RECENT NEWS
----------------- */
article .post-image img {
    width: 100%
}
}

ul.wp-block-latest-posts,
ul.wp-block-latest-posts__list {
    margin-left: 0px !important;
}

ul.wp-block-latest-posts>li {
    background-color: var(--gray);
    padding: 20px;
}

ul.wp-block-latest-posts>li .wp-block-latest-posts__featured-image {
    height: 220px;
    margin-left: -20px;
    margin-top: -20px;
    width: calc(100% + 40px);
}

ul.wp-block-latest-posts>li .wp-block-latest-posts__featured-image img {
    height: calc(100% - 20px);
    object-fit: cover;
    width: 100%;
}

ul.wp-block-latest-posts>li .wp-block-latest-posts__post-title {
    color: black;
    font-weight: bold;
    text-decoration: none;
}
.faq h2{
	background-color: var(--red);
	color: white !important;
	margin-top: 10px;
	padding: 5px 10px !important;
	transition: all .5s;
}
.faq h2:hover{
	background-color: var(--gold);
	cursor: pointer;
}
@media (max-width: 900px) {
    ul.wp-block-latest-posts li {
        min-width: 100%;
    }

    ul.wp-block-latest-posts>li .wp-block-latest-posts__featured-image {
        height: 350px;
    }
}

/* ----------------------
5. SINGLE PAGES AND POSTS
----------------------- */

.intro-block {
    background-color: var(--red);
    color: white;
}

.intro-block h2,
.intro-block h3 {
    color: white;
}

.intro-block .wp-block-buttons a.wp-block-button__link {
    background-color: var(--gold);
}

.intro-block .wp-block-buttons a.wp-block-button__link:hover {
    background-color: black;
    transition: all 0.3s ease;
}

.single-post .inside-article, .single-post .comments-area{
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
}

/* ---------------
-- 5.1 OUR TEAM
----------------- */
.page-template-template_team #actions-archive>div>div>div>div {
    padding-top: 0px;
}

.team-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 40px 0px;
}
.team-column img{
	height: 300px;
	object-fit: cover;
	width: 100%;
}
.team-column {
    background-color: var(--gray);
    position: relative;
    width: calc(33% - 20px);
}

.team-column .text {
    padding: 20px;
}

.team-column .text h3{
	margin-bottom: 5px;
}
.team-column .text p strong{
	color: var(--red);
}
.team-column .text p{
	margin-bottom: 5px;
}
.team-column .faq h2{
	color: black;
	font-size: 1.1em !important;
	margin-bottom: 0px;
		padding: 0px;
	transition: all .5s;
}
.team-column .faq p{
	margin-top: 5px
}
.team-column .faq h2:hover{
	color: var(--red);
}
@media (max-width: 800px) {
    .team-column {
        width: 100%;
    }
}

/* ---------------
-- 5.2 EVENTS
----------------- */
.event-registration-close{
	    font-family: var(--tec-font-family-sans-serif);
	font-size: 14px;
}
.tribe-events .tribe-events-calendar-month__multiday-event-bar-inner, .tribe-events .tribe-events-calendar-month__day-cell--selected, .tribe-events .tribe-events-calendar-month__day-cell--selected:focus, .tribe-events .tribe-events-calendar-month__day-cell--selected:hover{ 
background-color: rgba(195, 18, 47, .2)
}
.tribe-events .tribe-events-calendar-month__mobile-events-icon--event{
	background-color: var(--red);
}
.tribe-events-c-nav__list-item a{
	color: white !important;
}
.tribe-events-c-nav__list-item svg path, .tribe-common .tribe-common-c-loader__dot circle{
	fill: white !important;
}
.tribe-events-c-messages__message-list-item-link, .tribe-events-c-messages__message-list-item-link:hover, .tribe-common .tribe-common-c-svgicon{
	color: var(--red) !important;
}
.tribe-common .tribe-common-anchor-thin-alt{
	border-bottom: var(--red) !important;
}

.tribe-common-h2,
.tribe-common-h3,
.tribe-common-h4,
.tribe-common-h5,
.tribe-common-h6,
.tribe-common-h7 {
    font-family: Montserrat, sans-serif !important;
}

.tribe-events-calendar-list__month-separator,
.tribe-events-calendar-list__event-date-tag-weekday,
.tribe-events-calendar-list__event-date-tag-daynum,
.tribe-events-calendar-list__event-title {
    font-weight: bold;
}

.tribe-events-calendar-list__event-date-tag-daynum {
    font-size: 1.8em;
}

.tribe-events-calendar-list__event-date-tag {
    background-color: var(--red);
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-row>.tribe-common-g-col {
    padding: 20px; 	

}

.tribe-events .tribe-events-calendar-list__event-date-tag-weekday,
.tribe-events-calendar-list__event-date-tag-daynum.tribe-common-h5 {
    color: white;
}

.tribe-events-c-top-bar__datepicker-time span {
    padding: 5px 10px !important;
}

.tribe-events-calendar-list__event-wrapper.tribe-common-g-col {
    background-color: var(--gray);
    padding: 20px;
}

.tribe-events .tribe-events-calendar-list__event-date-tag {
    padding: 20px 0px;
}

.tribe-events-calendar-list__event-description .read-more {
    background-color: rgba(0, 0, 0, 0) !important;
    color: var(--red) !important;
    display: inline-block;
    font-weight: 500 !important;
    text-decoration: underline;
}

button.tribe-common-c-btn-icon {
    background-color: rgba(0, 0, 0, 0);
}

button.tribe-common-c-btn-icon svg {
    color: var(--red);
}

button.tribe-common-c-btn-icon svg:hover {
    color: var(--gold);
}
h2.tribe-events-pro-summary__month-separator{
	display: block !important;
}
h2.tribe-events-pro-summary__month-separator::after, li.tribe-events-pro-summary__month-block::marker{
	background-color:transparent !important;
		color: transparent !important;
	display: none;
}
.tribe-common--breakpoint-medium.tribe-events-pro .tribe-events-pro-summary__event-row>.tribe-common-g-col > li{
	padding-left: 20px;
}
.tribe-events-calendar-list__event-description .read-more{
	display: block;
}
.tribe-events-c-small-cta__link.tribe-common-cta.tribe-common-cta--thin-alt,
.tribe-events .tribe-events-c-search__button,
.tribe-events button.tribe-events-c-search__button,
.tribe-common .tribe-common-c-btn-border,
.tribe-tickets__rsvp-actions-button-going,
.tribe-tickets__rsvp-form-button--submit,
.woocommerce div.product form.cart .button {
    background-color: var(--red) !important;
    border: 0px;
    border-radius: 0 !important;
    color: white !important;
    display: block;
    font-family: Montserrat, sans-serif !important;
    font-weight: 500;
    margin-bottom: 8px;
    margin-top: 10px;
    padding: 5px 15px;
    text-transform: uppercase;
    text-decoration: none;
    transition: all .5s;
    width: fit-content;
}

.tribe-events-c-small-cta__link.tribe-common-cta.tribe-common-cta--thin-alt:hover,
.tribe-events .tribe-events-c-search__button:hover,
.tribe-events button.tribe-events-c-search__button:hover,
.tribe-common .tribe-common-c-btn-border:hover,
.woocommerce div.product form.cart .button:hover {
    background-color: var(--gold) !important;
    border: 0px;
    border-radius: 0;
    color: white !important;
    display: block;
    font-weight: 500;
    margin-top: 10px;
    padding: 5px 15px;
    text-transform: uppercase;
    text-decoration: none;
    transition: all .5s;
    width: fit-content;
}

button.tribe-tickets__rsvp-ar-guest-list-item-button {
    background: #999;
    color: black;
    padding: 5px 10px;
}

.tribe-events-c-small-cta {
    font-size: 1em !important;
}

.tribe-events-c-small-cta__link.tribe-common-cta.tribe-common-cta--thin-alt,
.tribe-events-c-small-cta__link.tribe-common-cta.tribe-common-cta--thin-alt:hover {
    display: inline-block;
}

.tribe-events-c-subscribe-dropdown__list {
    background: #EEE !important;
    border-radius: 0 !important;
}

.event-tickets .tribe-tickets__rsvp-wrapper {
    border-radius: 0 !important;
    background: #EEE !important;
}

.event-tickets .tribe-tickets__rsvp-ar-sidebar-wrapper h3 {
    font-size: 1.2em;
}

.event-tickets .tribe-tickets__rsvp-actions-wrapper {
    text-align: left !important;
}

.tribe-events-c-nav__list-item a,
.tribe-events-c-nav__nexttribe-events-c-nav__next,
.tribe-common-b2.tribe-common-b1--min-medium {
    background-color: var(--red);
    color: white;
    padding: 10px 20px;
    text-decoration: none;
    transition: all .5s;
}

.tribe-events-c-nav__list-item a:hover,
.tribe-events-c-nav__nexttribe-events-c-nav__next,
.tribe-common-b2.tribe-common-b1--min-medium:hover {
    background-color: var(--gold)
}

@media (min-width: 768px) {
    .event-tickets .tribe-tickets__rsvp-wrapper {
        max-width: none !important;
    }

    .tribe-tickets__rsvp-ar-form-wrapper {
        width: 60% !important;
    }

    .event-tickets .tribe-tickets__rsvp-ar-sidebar-wrapper {
        border-left: 1px dotted var(--gray);
        width: 40% !important;
    }
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-row,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__month-separator+.tribe-events-calendar-list__event-row {
    margin-bottom: 20px;
    margin-top: 10px;
}
.tribe-events-calendar-list__event-description .read-more{
	    background-color: var(--red) !important;
    border: 0px;
    border-radius: 0;
	color: white !important;
		display: block;
    font-family: Montserrat, sans-serif;
    font-weight: bold !important;
	margin-top: 10px;
    padding: 12px 25px;
	text-decoration: none;
    text-transform: uppercase;
    transition: all .3s;
    width: fit-content;
}
.tribe-events-calendar-list__event-description .read-more:hover{
		    background-color: var(--gold) !important;

}
.single-tribe_events .tribe-events-content {
    min-width: calc(100vw - 80px);
    padding: 0px 40px;
}

.single-tribe_events .tribe-events-nav-pagination {
    display: none;
}

/* SUMMARY VIEWS FOR TRAININGS PAGES */
.page .tribe-events-c-top-bar,
.page .tribe-events-pro-summary-nav,
.page .tribe-events-c-subscribe-dropdown__container {
	display: none !important;
}

.page .tribe-events-pro-summary__month-separator {
	margin-bottom: 5px;
}

.page .tribe-events-pro-summary__month-separator .tribe-events-pro-summary__event-date-tag {
	font-size: 1.1em !important; 
	font-weight: bold !important;
}

.page .tribe-events-pro .tribe-events-pro-summary__month-separator::after {
	background-color: black;
}

.page .tribe-events-pro-summary__event-row {
	background-color: var(--tec-color-border-default);
	margin: 0 !important;
}

.page .tribe-events-pro-summary__event-row .tribe-events-c-small-cta {
	margin-left: 5px;
}

.page .tribe-events-pro-summary__event-row .tribe-events-c-small-cta a {
	border: 1px solid var(--red);
	color: var(--red) !important;
	font-size: 1em;
	padding: 1px 5px;
	text-transform: uppercase;
	transition: all 0.3s ease;
}

.page .tribe-events-pro-summary__event-row .tribe-events-c-small-cta a:hover {
	background-color: var(--red);
	color: white !important;
	transition: all 0.3s ease;
}

.page .tribe-common-g-col.tribe-events-pro-summary__event-date-tag {
	background-color: var(--red);
	margin-top: 0 !important;
	padding: 5px;
}

.page .tribe-events-pro-summary__event-date-tag-weekday,
.page .tribe-events-pro-summary__event-date-tag-daynum {
	color: white !important;
}

.page .tribe-events-pro-summary__date-separator {
	background-color: white !important;
}

/* ---------------
-- 5.3 SHOP
----------------- */
.post-type-archive-product .inside-article .entry-content,
.single-product .inside-article .entry-content,
.wp-block-woocommerce-cart {
    margin: 40px !important;
}

.wp-block-woocommerce-cart {
    max-width: calc(100% - 80px) !important;
}

.woocommerce-archive-wrapper .product {
    background-color: var(--gray);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price {
    padding: 0px 20px;
}

.woocommerce-loop-product__link img {
	border: 1px solid var(--gray);
}

.woocommerce .products .product {
	background-color: var(--gray);
}

.woocommerce ul.products li.product .button {
    margin: 0px 20px 20px 20px;
}
.woocommerce ul.products li.product .button {
    background-color: var(--red);
	border: 8px solid var(--gray) !important;
    border-radius: 0;
    color: white;
	font-family: "Motiva Sans", sans-serif;
    font-weight: 500;
	margin: 5px auto 0 auto !important;
    padding: 10px 20px;
    text-transform: uppercase;
    transition: all .5s;    
	width: 100% !important;
}

.woocommerce ul.products li.product .button:hover {
    background-color: var(--gold);
}

.woocommerce div.product form.cart button {
	font-family: "Motiva Sans", sans-serif !important;
	font-weight: bold !important;
	margin-top: 0 !important;
	padding: 15px 20px !important;
}

.woocommerce-product-attributes-item__label {
	background-color: var(--gray); 
}

.woocommerce-product-attributes-item__value {
	padding: 0 20px !important;
}

@media (max-width: 800px) {
    .woocommerce-archive-wrapper .product {
        min-width: 50%;
    }
}

@media (max-width: 600px) {
    .woocommerce-archive-wrapper .product {
        min-width: 100%;
    }
}

/* ---------------
-- 5.4 BLOG
----------------- */
.blog .site-main {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding: 40px !important;
}
 
.blog .entry-title,
.archive .entry-title {
    font-family: inherit;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 0.5em;
	padding-left: 40px;
	padding-right: 40px;
}

.blog .entry-title a,
.archive .entry-title a {
    color: var(--contrast);
    text-decoration: none;
}


.blog .entry-title a:hover,
.archive .entry-title a:hover {
    text-decoration: underline;
}


.blog .post {

    width: calc(33.33% - 20px);
}

.blog .post .inside-article {
    background-color: var(--gray);
    height: 100%;
    padding: 0px;
    padding-bottom: 40px !important;
    position: relative;
}

.blog .post .post-image {
    height: 300px;
}

.blog .post .post-image img {
    height: 100%;
    object-fit: cover;
    width 100%;
}

.blog .post .entry-summary {
	margin-top: 20px;
    padding: 0px 40px;
}

.blog .post .entry-meta {
    display: none;
}

.single-post .featured-image {
    display: none;
}

.single-post .inside-article {
    padding: 40px !important;
}
#nav-below{
	display: block;
	min-width: 100%;
}

@media (max-width: 900px) {
    .blog .post {
        height: auto;
        min-width: calc(50% - 20px);
    }
}

@media (max-width: 782px) {
    .blog .post {
        height: auto;
        min-width: 100%;
    }
}

/* ---------------
-- 5.5 ACCOUNT
----------------- */
.woocommerce-MyAccount-navigation {
    background-color: var(--red);
    display: flex;
    justify-content: center;
    grid-area: one;
    padding: 40px 0px;
    width: 100% !important;
}

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
}

.woocommerce-MyAccount-navigation ul li a {
    color: white;
    font-weight: bold;
    text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-content {
    background-color: var(--gray);
    grid-area: two;
    padding: 40px;
    width: 100% !important;
}

.woocommerce-account .woocommerce {
    display: grid;
    grid-template-columns: 200px auto;
    grid-template-areas:
        "one two";
    margin: 40px;
}
/* ---------------
5.5 COMMUNITY & SHAREHOLDER
----------------- */
.reports{
	gap: 40px;
	margin-bottom: 40px !important;
}

.reports .wp-block-column:has(img){
	background-color: var(--gray);
}

.reports .wp-block-column{
	padding: 20px
}
.reports .wp-element-caption{
	font-size: 1em;
	font-weight: bold;
}
/* ---------------
5.7 PROGRAM TYPE page archive
----------------- */
.archive.tax-program_type .site-content{
	padding: 40px;
}
.archive.tax-program_type .page-header{
	padding-left: 0px;
	padding-right: 0px;
}
.archive.tax-program_type .page-title{
	color: var(--red);
}
.archive.tax-program_type .interior-hero{
	display: none;
}
.archive.tax-program_type article{
	background-color: var(--gray);
	margin: 10px 0px;
	padding:20px 20px 40px 20px;
}
.archive.tax-program_type article .inside-article{
	background-color: transparent;
}
.archive.tax-program_type article .entry-title{
	padding: 0px;
}
.archive.tax-program_type article .entry-summary{
	margin-bottom: 0px;
		margin-top: 10px;
}
.archive.tax-program_type article .entry-summary .read-more{
	margin-top: 20px;
}
.archive.tax-program_type .post-image{
	max-height: 400px;
	overflow: hidden;
}

.archive.tax-program_type .post-image{
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.program_type-web-based-training #custom-event-form-wrapper{
	max-width: 1600px;
	margin: auto;
	padding-bottom:  40px;
}
#custom-event-form-wrapper .gfield_visibility_hidden{
	display: none !important;
}
#custom-event-form-wrapper .gform-field-label{
	margin-bottom: 0px;
}
#custom-event-form-wrapper .gfield {
	margin-bottom: 10px;
}
#custom-event-form-wrapper .gfield--type-address  > div > span, #custom-event-form-wrapper .ginput_container--name  > span{
	display: flex;
	flex-direction: column;
	max-width: 400px;
}
#custom-event-form-wrapper .gfield--type-address  > div > span > label, #custom-event-form-wrapper .ginput_container--name > span > label{
	order: 1;
}
#custom-event-form-wrapper .gfield--type-address  > div > span > input, #custom-event-form-wrapper .gfield--type-address  > div > span > select, #custom-event-form-wrapper .gfield--type-address  > div > span > input, #custom-event-form-wrapper .ginput_container--name > span > input{
	order: 2;
}
@media (max-width: 1600px){
.program_type-web-based-training #custom-event-form-wrapper{
	max-width: 1200px;
	padding:  0px;
	padding-bottom:  40px;
}	
}
@media (max-width: 1280px){
.program_type-web-based-training #custom-event-form-wrapper{
	padding: 0px 40px;
	padding-bottom:  40px;
}	
}
/* ---------------
6. FOOTER
----------------- */
.cta .wp-block-social-links{
	justify-content: flex-end;
	padding-top: 20px;
	position: relative;
	z-index: 20;
}
.cta .wp-block-social-links .wp-social-link{
	background-color: var(--red);
	transition: all
		.5s;
}
.cta .wp-block-social-links .wp-social-link:hover{
	background-color: var(--gold)
}

.cta .badges ,.cta .badges img {
	 align-items: flex-end;
	 display: flex;
	 justify-content: flex-end;
	max-height: 75px;
	 object-fit: contain;
}
	.cta .badges figure, 	.cta .badges figure img{
		max-width: fit-content !important;
	}