:root{
	--purple: #6C3180;
	--yellow: #EFB905;
	--purplelight: #F2ECF4;
	--purpledark: #482055;
	--font-size-exlarge:55px;
	--font-size-large:34px;
	--font-size-med:22px;
	--font-size-gen:16px;
	--font-size-small:13px;
	--font-size-smaller:10px;
}




/* Headings */
h1, h2, h3, h4 {
  font-family: var(--font-primary);
  font-weight: 700; 
  color: var(--colour-primarydark);
  margin-top: 0;
  margin-bottom: 0.5em;
  line-height: 1.2;
}

h1 {
  font-size: var(--font-size-xxlarge);
  color: var(--colour-primary);
}

h2 {
    font-size: 31px;
    color: #638A3F;
    text-transform: uppercase;
    font-weight: normal;

}

h3 {
 font-size: 18px;
  display: table;
}

h4 {
  font-size: var(--font-size-med);
  color: var(--colour-secondary);
  font-weight: 600;
  display: table;
}




.core_a_center{
  text-align: center !important;
  margin: 0 auto !important;
}

.core_p_top{
  padding-top: 120px;
}

.core_p_bot{
  padding-bottom: 120px;
}


.core_m_top{
  margin-top: 120px;
}

.core_m_bot{
  margin-bottom: 120px;
}

/* Base column */
/* .col {
  flex-grow: 1;
  flex-basis: 0;
  min-width: 150px; 
}


.col_1_2 {
  flex: 0 0 calc(50% - 8px);
  max-width: calc(50% - 8px);
}

.col_1_3 {
  flex: 0 0 calc((100% / 3) - 10.67px);
  max-width: calc((100% / 3) - 10.67px);
}

.col_1_4 {
  flex: 0 0 calc(25% - 12px);
  max-width: calc(25% - 12px);
} */


.flex-container {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

.col {
  flex: 1;
  min-width: 150px;
}


.col_1_2 { flex: 2; }   
.col_1_3 { flex: 1; }  
.col_1_4 { flex: 1; } 


/* Force max 6 per row */
.flex-6 {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
}


/* Force max 4 per row */
.flex-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);

}

/* Force max 4 per row */
.flex-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

/* Force max 2 per row */
.flex-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}





@media only screen and (max-width: 1400px) {
   
}


@media only screen and (max-width: 1200px) {
   
}


@media only screen and (max-width: 1024px) {


   .flex-4,
  .flex-3 {
    grid-template-columns: repeat(2, 1fr);
  }
   
}


@media only screen and (max-width: 768px) {


    .flex-4,
  .flex-3,
  .flex-2 {
    grid-template-columns: 1fr;
  }


   .flex-container {
    flex-direction: column;
    gap: 20px;
    flex-wrap: nowrap;
  }
  .col {
    flex: 1 1 100%;
  }




  
	/* .col_1_2, .col_1_3, .col_1_4 {
    flex: 0 0 100%;
    max-width: 100%;
  }

   #footer .flex-container .col:first-child {
    flex: 0 0 100%;
    max-width: 100%;
  } */

}


@media only screen and (max-width: 480px) {
   
}


@media only screen and (max-width: 320px) {


}