.ib-wrapper .row,
.ib-wrapper .row > div[class*='col-']{
	display:flex;
	justify-content:center;
}
.ib-wrapper .row{
	flex-flow:row wrap;
	align-content:flex-start;
	flex:0;
	/* justify-content:center; */
	justify-content: flex-start;
}
.ib-wrapper .row > div[class*='col-'],
.ib-wrapper .container-flex > div[class*='col-']{
	margin:-.2px; /* hack adjust for wrapping */
}
.ib-wrapper .container-flex > div[class*='col-'] > div,
.ib-wrapper .row > div[class*='col-'] > div{
	width:100%;
}

/* ---------
Grid
--------- */

.ib-wrapper .product-layout {
	margin-bottom: 30px !important;
}

.ib-flex h3 {
	display: flex;
    align-items: center;
}

h3 i {
	margin-right: 8px;
}

h3 i.fa {
	font-size: 1.5em;
	color: #7aa93c;
}

.image img {
	/* box-shadow: 0 2px 18px 0 rgba(0,0,0,.3); */
}

.ib-wrapper .ib-flex h3 {
	font-weight: 700;
    font-size: 26px;
	margin-bottom: 15px;
}

.ib-flex .image {
	position: relative;
}

.ib-flex .icon {
	position: absolute;
	top: 10px;
	right: 10px;
	/* width: 30px !important;
	height: 30px; */
	width: fit-content !important;
	display: flex;
	padding: 12px;
	background-color: white;
	border-radius: 50%;
	justify-content: center;
	align-items: center;
	/* background-color: white; */
}

.ib-flex .icon img {
	width: 30px;
	height: 30px;
	border-radius: 50%;
}


.ib-wrapper .ib-grid-flex div{
	width:100%;
}

.ib-caption p {
	/* text-align: center; */
}

.ib-wrapper .ib-flex img {
	border-radius: 5px;
}


.ib-flex h3 a {
	color: #253D4E;
}

.ib-flex h3 a:hover {
	color: #1E913D;
}

.ib-button-group {
	margin-top: 10px;
}

.ib-button-group a {
	font-size: 16px;
}

.ib-wrapper .ib-grid-flex{
	display:flex;
	flex-flow:column nowrap;
	align-items:center;
	flex:1 1 0;
	padding: 20px;
	/* outline: 1px solid #F4F4F4; */
	box-shadow: 0 4px 21px 0 rgb(205 223 227 / 50%);
    border-radius: 10px;
    /* outline-offset: 20px; */
}
.ib-wrapper .ib-grid-flex .ib-flex{
	flex:1 0 auto;
}
.ib-wrapper .ib-grid-flex div.image,
.ib-wrapper .ib-grid-flex div.icon{
	margin-bottom:15px;
	text-align:center;
}
.ib-wrapper .ib-grid-flex div.icon i.fa{
	font-size:40px;
}
.ib-wrapper .ib-grid-flex .ib-caption h4{
	margin:0 0 15px 0;
}
.ib-wrapper .ib-button-group{
	margin: 10px 0 0 0;
	text-align: right;
	display: flex;
	justify-content: flex-end;
	align-items: end;
	font-family: 'Quicksand', sans-serif;
	font-weight: 700;
}

.ib-wrapper .ib-button-group svg {
	font-size: 16px;
	transform: rotate(90deg);
}

/* ---------
List
--------- */
.ib-wrapper .ib-list-flex{
	display:block;
	padding:15px;
}
.ib-wrapper .ib-list-flex div.image,
.ib-wrapper .ib-list-flex div.icon{
	margin:0 10px 10px 0;
	float:left;
}
.ib-wrapper .ib-list-flex div.icon i.fa{
	font-size:40px;
}
.ib-wrapper .ib-list-flex{
	display:flex;
	flex-flow:column wrap;
}
.ib-wrapper .ib-list-flex div.ib-flex{
	flex:1 0 auto;
}
.ib-wrapper .ib-list-flex .ib-caption h4{
	margin:0 0 15px 0;
}