/*------------------------------------*\
    
    Posts CSS
 
    Posts.................Post content for loop on blog homepage, category, search page, archives, etc.
    Sidebar...............Sidebar elements.

\*------------------------------------*/


.post-item {
    border-top: 1px solid #ddd;
    padding-top: 30px;
    margin-top: 30px;
}

.post-item:first-of-type {
    border-top: 0;
    padding-top: 0;
    margin-top: 0;
}

.post-item__heading a {
    text-decoration: none;
}

.post-item .btn,
.post-item .btn-primary {
    margin-top: 30px;
}

.post-item__meta {
    font-size: .8em;
}


@media (min-width: 1025px) {

    .post-item {
        padding-top: 50px;
        margin-top: 50px;
    }

}


/**
 * Sidebar
 */

/* Blog Sidebar */

.blog .page-sidebar .widget {
	margin-bottom: 50px;
}



/**
* FX Load More
*/

/* Load More Progress Bar */
.load-more__progress {
    margin-top: 15px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 10px;
    border: 0;
    border-radius: 0;
    min-width: 250px;
}
progress::-webkit-progress-bar,
progress::-webkit-progress-value,
progress::-moz-progress-bar {
    height: 10px;
    border: 0;
    border-radius: 0; 
}
progress::-webkit-progress-bar {
    background-color: #ddd;
}
progress::-webkit-progress-value {
    background-color: #4a4a4a; /* TODO: Please add a branded background color for progress bar value */
}

/* Loading Indicator */
.is-loading:before  {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 50px;
    height: 50px;
    border: 5px solid;
    border-color: #E3E3E3 #E3E3E3 transparent;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-animation: simpleSpin 1.5s linear infinite;
    animation: simpleSpin 1.5s linear infinite;
}

/* Load More Button */
.load-more__btn {
    border: 0;
    display: block;
    margin-top: 20px;
}

.load-more__btn.is-loading {
    position: relative;
    opacity: 0.6;
    cursor: not-allowed;
}

.load-more__btn.is-loading:before {
    width: 20px;
    height: 20px;
}

.load-more__btn.is-disabled {
    cursor: not-allowed;
    background-color: #4a4a4a;
}

/* Placeholder Space */
.placeholder-block {
    position: relative;
    display: flex;
}

.placeholder-block__inner {
    flex-grow: 1;
    background-color: #fafafa;
}

.placeholder-block.is-loading:before {
    width: 50px;
    height: 50px;
}

@-webkit-keyframes simpleSpin {
    0% {
        -webkit-transform: translate(-50%, -50%) rotateZ(0deg);
        transform: translate(-50%, -50%) rotateZ(0deg);
    }

    100% {
        -webkit-transform: translate(-50%, -50%) rotateZ(360deg);
        transform: translate(-50%, -50%) rotateZ(360deg);
    }
}

@keyframes simpleSpin {
    0% {
        -webkit-transform: translate(-50%, -50%) rotateZ(0deg);
        transform: translate(-50%, -50%) rotateZ(0deg);
    }

    100% {
        -webkit-transform: translate(-50%, -50%) rotateZ(360deg);
        transform: translate(-50%, -50%) rotateZ(360deg);
    }
}

/* Single Post Pagination */
.post-pagination {
    display: flex;
    justify-content: space-between;
    align-content: center;
}

.btn-post-pagination {
    background:  #dadada;
    font-size:  15px;
    padding:  10px 20px;
    color:  #747474;
    position: relative;
}

.post-pagination-text {
    display: none;
}

.btn-post-pagination:hover {
    background:  #ebebeb;
}

.btn-post-pagination strong {
    display: block;
    font-size: 12px;
}

.btn-previous-post,
.btn-next-post {
    max-width:  48%;
    flex:  0 0 48%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align:  center;
}

.btn-previous-post {
    padding-left:  40px;
}

.btn-next-post {
    padding-right:  40px;
}

.mobile-arrow:after {
    content: '';
    display: block;
    width: 0; 
    height: 0; 
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 6px solid #747474;
}

.mobile-arrow {
    position: absolute;
}

.btn-previous-post .mobile-arrow {
    left:  19px;
}

.btn-next-post .mobile-arrow {
    right:  19px;
}

.btn-previous-post .mobile-arrow:after { 
    transform:  rotate(180deg);
}

@media (min-width: 768px) {
    .post-pagination-text {
        display: block;
    }

    .btn-previous-post,
    .btn-next-post {
        text-align:  inherit;
    }
}


/* Search Results */
.search-result {
    text-decoration: none;
}

.search-result__title {
    margin-bottom: 16px;
}

.search-result__excerpt {
    margin-bottom: 20px;
}

.cards {
	padding: 50px 0;
}

.cards-slide-item-content .btn {
	border: none;
	font-weight: 700;
	background-size: 2px 2px;
}

.js-cards-slider {
    width: calc(100% + 44px);
    margin: 0 -22px;
    padding-bottom: 52px;
}

.js-cards-slider .slick-slide {
	width: 316px;
	margin: 0 10px 20px;
	height: auto;
}

.js-cards-slider .slick-track {
	display: flex;
}

.js-cards-slider .slick-slide div {
	height: 100%;
}

.js-cards-slider .slick-slide .cards-slide {
	height: 100%;
}

.js-cards-slider .slick-slide .cards-slide div {
	height: auto;
}

.cards-slide-item-content h3 {
	font-size: 18px;
	font-weight: 700;
	color: #231F20;
	padding-bottom: 10px;
}

.cards-slide-item-content p {
	font-size: 15px;
	font-weight: 400;
	color: #41464F;
	margin-bottom: 0;
}

.cards-slide-item-content button {
	position: absolute;
	left: 26px;
	bottom: 30px;
}

.cards-slide-item-image {
	height: 181px !important;
	width: 100%;
	border-radius: 5px 5px 0 0;
	overflow: hidden;
	position: relative;
}

.cards-slide-item-image:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #0072CE;
}

.cards-slide-item-content {
	padding: 20px 26px 69px 26px;
	position: relative;
	height: calc(100% - 181px) !important;
	border-radius: 0 0 5px 5px;
}

.cards-slide-item {
	height: 100%;
	box-shadow: 0 0 20px rgba(0,0,0,0.10);
	background: #fff;
	border-radius: 5px;
	transition: all ease 0.3s;
}

.js-cards-slider .slick-list {
	padding-left: 20px;
}

.cards-btn {
	position: absolute;
	left: 0;
	bottom: 0;
}

.cards-wrapper {
	position: relative;
}

.cards-heading h2 {
	margin-bottom: 25px;
}

.js-cards-slider .slick-next {
    right: 23px;
	margin: 0;
}

.js-cards-slider .slick-prev {
	left: auto;
    right: 73px;
	margin: 0;
}

@media(min-width: 768px) {
	.cards {
	    padding: 60px 0;
	}

	.js-cards-slider {
	    width: 100%;
	    margin: 0;
	}

	.js-cards-slider .slick-list {
	    padding-left: 0;
	}

	.js-cards-slider .slick-next {
        right: 0;
    }

    .js-cards-slider .slick-prev {
        right: 54px;
    }

    .cards-slide-item-image {
	    height: 380px !important;
	}
}

@media(min-width: 1200px) {
	.cards {
	    padding: 100px 0;
	}

	.js-cards-slider {
		display: flex;
		width: calc(100% + 32px);
		margin: 0 -16px;
		padding-bottom: 0;
        flex-wrap: wrap;
	}

	.cards-slide-item {
	    width: calc(33.333% - 32px);
	    margin: 0 16px;
	    display: block !important;
	    height: auto;
	    position: relative;
	    padding-bottom: 72px;
        margin-bottom: 72px;
	}

	.cards-slide-item-content {
	    padding: 20px 30px 0 30px;
	    height: unset !important;
	    position: unset;
	}

	.cards-slide-item-image {
	    height: 240px !important;
	}

	.cards-slide-item-content h3 {
	    font-size: 23px;
	}

	.cards-slide-item-content p {
	    font-size: 17px;
	}

	.cards-slide-item-content button {
	    left: 30px;
	}

	.cards-heading {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		margin-bottom: 40px;
        flex-wrap: wrap;
	}

	.cards-heading h2 {
	    margin-bottom: 0;
	}

	.cards-heading-right {
		margin-bottom: 10px;
	}

	.cards-slide-item:hover {
		transform: scale(1.05);
		box-shadow: 0 0 20px rgba(0,0,0,0.20);
	}

	.cards-slide-item:hover .cards-slide-item-image:after {
		background-color: #091E42;
	}
}
.load-more{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 70px;
}

/**
 * Forms
 */

 .form-col {
    padding: 0;
    margin-bottom: 20px;
    position: relative;
    width: 100%;
  }

  .form-col-marging-b30 {
    margin-bottom: 30px;
  }

label {
    font-size: 16px;
    color: #231F20;
    display: block;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.025em;
    padding-bottom: 6px;
}

label sup {
    color: #E08E01;
    font-size: 16px;
    top: 0;
    }



textarea {
    width: 100%;
    border: 1px solid #CFD1D3;
    border-radius: 3px;
    padding: 13px 20px;
    background: #FFFFFF;
    font-size: 17px;
    color: #41464F;
    resize: none;
    height: 120px;
    transition: all ease 0.3s;
}

/* Removes default webkit form styling */
input:not([type="radio"]):not([type="checkbox"]),
button,
textarea {
    -webkit-appearance: none;
}

input:active,
textarea:active,
select:active,
input:focus,
textarea:focus,
select:focus {
    outline: none;
    border-color: #0072CE;
    border-bottom: 4px solid #0072CE;
    background-color: rgba(0, 144, 206, 0.08);
}

/* default text input style */
[type="text"],
[type="date"],
[type="datetime"],
[type="datetime-local"],
[type="email"],
[type="month"],
[type="number"],
[type="password"],
[type="search"],
[type="tel"],
[type="url"],
[type="week"],
[type="date"] {
    width: 100%;
    border: 1px solid #CFD1D3;
    border-radius: 3px;
    padding: 15px 20px;
    background: #FFFFFF;
    font-size: 17px;
    color: #41464F;
    height: 50px;
    transition: all ease 0.3s;
}

input::placeholder,
textarea::placeholder {
    color: rgba(65,70,79,0.50);
}

/* Removes inconsistent padding from Firefox buttons */
button::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border: none;
    padding: 0;
}

/* Hide reCaptcha badge */
.grecaptcha-badge {
    visibility: hidden;
}


.social-share-row__item::before{
    content: unset;
}
.widget{
    margin-bottom:50px
}

.search-results{
    display: flex;
    flex-direction: column;
    gap: 15px;
  }
  .search-result{
    background: unset;
  }

  .js-load-more-btn.is-disabled{
    display: none;
  }
  .btn-search{
    border: none;
  }
  .single-format-standard .wysiwyg{
    padding-top: 0;
  }