/* ==========================================================================

	NEWS

========================================================================== */

.news .flex {
	flex-wrap: wrap;
	justify-content: space-between;
}

.news .flex .block {
	display: flex;
	background-color: #fff;
    color: #333;
	width: 100%;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #eee;
    transition: .2s ease-in-out;
}

.news .flex .block:hover {
	border-color: #005691;
}

.news .flex .block .content {
	padding: 10px 30px 30px;
}

.news .flex .block img {
	object-fit: cover;
	width: 300px;
	height: 200px;
	border-radius: 10px;
}

.news .flex .block h3 {
	width: 100%;
	color: #005691;
	font-size: 20px;
	font-weight: 700;
	margin: 0 0 20px;
}

.news .flex .block cite {
	font-size: 14px;
}

/* =============================================================================

	PAGINATION

============================================================================= */

.pagination {
	list-style: none;
	display: flex;
	padding: 0;
	margin: 40px 0 ;
}

.pagination li a,
.pagination li span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	border: 1px solid #ddd;
	border-right: none;
}

.pagination li:last-child a {
	border-right: 1px solid #ddd;
}

.pagination li a:hover {
	color: #005691;
}

.pagination li a.active {
	background-color: #005691;
	color: #fff;
	font-weight: 700;
}

.pagination li a.prev-page {
	border-radius: 5px 0 0 5px;
}

.pagination li a.next-page {
	border-radius: 0 5px 5px 0;
}

.pagination svg {
	width: 10px;
}


/* ==========================================================================

	BLOG

========================================================================== */

.blog {
	padding-bottom: 40px;
}

.blog img {
	object-fit: cover;
	width: max-content;
	height: auto;
	max-width: 100%;
	border-radius: 10px;
}

.blog img.featured {
	width: 1000px;
	height: 600px;
	margin: 30px 0 10px;
}

.blog .heading {
    text-align: left;
    margin-bottom: 20px;
    color: #005691;
    font-size: 35px;
    font-weight: bold;
}

.blog .date {
	color: #727272;
	font-size: 14px;
}

.blog h2 {
	text-align: left;
}

.blog h3 {
	margin-top: 40px;
}

.blog .wp-block-pullquote {
	background-color: #f4f6f9;
    padding: 20px 0;
    margin: 20px 0;
    border-radius: 10px;
}

.blog .wp-block-media-text {
	display: flex;
	align-items: center;
}

.blog .wp-block-media-text img {
	object-fit: contain;
	width: max-content;
}

.blog .wp-block-image {
	margin: 40px 0;
}

.blog .wp-block-embed-youtube {
	margin: 20px 0;
}

.blog .wp-block-embed-youtube iframe {
	max-width: 100%;
	height: 60vw;
	max-height: 675px;
}

/* ==========================================================================

	AUTHOR

========================================================================== */

.blog .author {
	display: flex;
	padding-top: 40px;
	margin-top: 40px;
	border-top: 1px solid #ddd;
}

.blog .author .author-image img {
	object-fit: cover;
	width: 100px;
	height: 100px;
	border-radius: 50%;
}

.blog .author .author-content {
	flex: 1;
	margin-left: 20px;
}

.blog .author .author-name {
	font-weight: 700;
	margin: 0;
}

.blog .author .author-title {
	color: #727272;
	font-size: 14px;
	margin: 5px 0 10px;
}

.blog .author-desc {
	margin: 0;
}

.blog .author-icon {
	width: 25px;
	height: 25px;
	color: #0077b5;
	margin-top: 15px;
}

.blog .wp-block-columns {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.blog .wp-block-columns .wp-block-column {
	margin: 0 20px;
}

figure.wp-block-table {
    width: 100%;
    margin: 20px 0;
}

figure.wp-block-table table {
	width: 100%;
}

figure.wp-block-table td, figure.wp-block-table th {
    padding: 8px;
    border: 1px solid #d9d9d9;
}

/* ==========================================================================

	RESPONSIVE

========================================================================== */

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

	.blog img.featured {
		width: 700px;
		height: 420px;
	}

}

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

	.news .flex .block {
		flex-wrap: wrap;
		padding: 0;
		margin-bottom: 40px;
		border-radius: 10px;
		border: 1px solid #eee;
		overflow: hidden;
	}

	.news .flex .block img {
		width: 100%;
		max-width: max-content;
		border-radius: 0;
		min-width: 430px;
	}

	.news .flex .block .content {
		padding: 20px;
	}

	.blog {
		padding-top: 60px;
	}

	.blog img.featured {
		width: 100%;
		max-width: 400px;
		height: auto;
		max-height: 300px;
	}

	.blog .author {
    	flex-direction: column;
    }

	.blog .author .author-content {
		margin: 20px 0 0;
	}

}