/* text styles */
.text-primary{
  color:#28a745
}
.text-secondary{
  color:#0284d0
}
/* button */
.btn{
  cursor:pointer;
  display:inline-block;
  padding:10px 30px;
  color:white;
  background-color: #28a745;
  border: none;
  border-radius: 5px;
}
.btn:hover{
  opacity: 0.9;
}
.btn-primary, .bg-primary{
  background: #28a745;
  color:#fff
}
.btn-secondary, .bg-secondary{
  background: #0284d0;
  color:#fff;
}
.btn-dark, .bg-dark{
  background: #333;
  color:#fff;
}
.btn-light, .bg-light{
  background: #f4f4f4;
  color:#333
}
.btn-outline{
  background: transparent;
  border: 1px solid #fff;
}
/* flex items */
.flex-items{
  display:flex;
  text-align:center;
  justify-content:center;
  text-align: center;
  height: 100%;
}
.flex-items > div{
  padding: 20px;
}
/* flex columns */
.flex-columns.flex-reverse .row{
  flex-direction:row-reverse;
}

.flex-columns .row{
  display:flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}
.flex-columns .column{
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex:1;
}
.flex-columns .column .column-1,
.flex-columns .column .column-2{
height: 100%;
}
.flex-columns img{
  width: 100%;
  height:100%;
  object-fit: cover;
}
.flex-columns .column-2{
  display:flex;
  flex-direction: column;
  align-items:flex-start;
  justify-content:center;
  padding:30px;
}
.flex-columns h2{
  font-size:40px;
  font-weight:100;
}
.flex-columns h4{
margin-bottom:10px;
}
.flex-columns p{
  margin:20px 0;
}

/* section header */
.section-header{
  padding:30px;
  display:flex;
  flex-direction: column;
  align-items: center;
  justify-content:center;
  text-align: center;
}
.section-header h2{
  font-size: 40px;
  margin:20px 0;
}
.section-padding{
  padding: 20px 20px 40px;
}

.flex-grid .row{
display: flex;
flex-wrap: wrap;
padding: 0 4px;
}

.flex-grid .column{
    flex:25%;
    max-width: 25%;
    padding: 0 4px;
}
