/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


.custom-blog-section .featured-post {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 30px;
    margin-bottom: 64px;
}

.custom-blog-section .featured-thumbnail {
    position: relative;
    flex-basis: 57%;
    flex: 1 1 57%;
}

.custom-blog-section .featured-thumbnail img {
    width: 100%;
    border-radius: 20px;
    object-fit: cover;
    height: 100%;
    max-height: 411px;
}

.custom-blog-section .badge {
    position: absolute;
    top: 16px;
    left: 16px;
    background-color: var( --e-global-color-secondary );
    color: #fff;
    padding: 10px 20px;
    font-size: 16px;
    font-weight: 600;
    border-radius: 5px;
    z-index: 2;
    line-height: 24px;
}

.custom-blog-section .featured-content {
    flex: 1 1 43%;
    flex: 1 1 43%;
}

.custom-blog-section .featured-title {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 16px;
    color: #fff;
    line-height: 36px;
    margin-top: 0;
    text-decoration: none;
    letter-spacing: -0.01rem;
}

.custom-blog-section .featured-excerpt {
    font-size: 16px;
    color: #fff;
    line-height: 24px;
    font-weight: 300;
}

.custom-blog-section .grid-posts {
    display: flex;
    flex-wrap: wrap;
    gap: 29px;
    justify-content: space-between;
}

.custom-blog-section .grid-post {
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 32px 26px;
    flex: 1 1 calc(33% - 29px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 301px;
    height: 100%;
}

.grid-post .post-type {
    font-size: 16px;
    color: #fff;
    margin-bottom: 0;
    line-height: 24px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 10px;
}

.custom-blog-section .grid-post .grid-title {
    font-size: 24px;
    font-weight: 600;
    color: #fff !important;
    margin-bottom: 0;
    line-height: 32px;
    text-decoration: none !important;
    letter-spacing: -0.01rem;
}

.blog-wrapper {
  max-width: 1320px;
  margin: auto;
  padding: 80px 20px 114px;
  font-family: "Outfit", Sans-serif;
}
.blog-title {
  font-size: 64px;
  line-height: 72px;
  margin-bottom: 47px;
  margin-top: 0;
  color: #000;
  font-weight: 700;
  letter-spacing: -0.02em; 
}
.blog-wrapper .featured-post {
    display: flex;
    gap: 30px;
    margin-bottom: 160px;
    flex-wrap: wrap;
    align-items: center;
}
.blog-wrapper .featured-post .featured-image {
    flex-basis: calc(57% - 15px);
    position: relative;
}
.blog-wrapper .featured-post .featured-image img {
    max-width: 100%;
    border-radius: 20px;
    width: 100%;
    max-height: 412px;
    object-fit: cover;
}
.blog-wrapper .featured-post .featured-content {
    flex-basis: calc(43% - 15px);
}
.blog-wrapper .featured-post .featured-image .featured-label {
    background-color: var(--e-global-color-secondary);
    color: #fff;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 16px;
    line-height: 24px;
    position: absolute;
    top: 16px;
    left: 16px;
    font-weight: 500;
}
.blog-wrapper .featured-post .featured-content .featured-post-title {
    font-size: 28px;
    line-height: 36px;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: #000;
}
.blog-wrapper .featured-post .featured-content .featured-post-desc {
    font-size: 16px;
    line-height: 24px;
    color: rgba(118, 118, 118, 1);
    margin-bottom: 32px;
}
.blog-wrapper .featured-post .featured-content .featured-post-readmore {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 16px;
    color: #000;
    line-height: 24px;
    font-weight: 500;
}
.blog-wrapper .featured-post .featured-content .featured-post-readmore:hover {
    color: var(--e-global-color-secondary);
}
.blog-wrapper .blog-filters {
    margin-bottom: 64px;
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}
.blog-wrapper .blog-filters .filter-button {
    margin: 0;
    background-color: rgba(238, 238, 238, 1);
    color: #000;
}
.filter-button {
  padding: 0.4rem 1rem;
  margin: 0 0.3rem 0.5rem 0;
  border: none;
  border-radius: 20px;
  background-color: #eee;
  cursor: pointer;
}
.blog-wrapper .filter-button.active,
.blog-wrapper .filter-button:hover {
  background-color: #000;
  color: #fff;
}

/* Flex layout for blog cards */
.blog-flex-container {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}
.blog-flex-container .blog-card {
    flex: 1 1 calc(33.33% - 30px);
    max-width: 33.33%;
    box-sizing: border-box;
}
.blog-flex-container .blog-card .blog-thumbnail {
    margin-bottom: 32px;
}
.blog-flex-container .blog-card .blog-thumbnail img {
    width: 100%;
    border-radius: 20px;
    max-height: 229px;
	min-height: 229px;
}
.blog-flex-container .blog-card .blog-meta {
    font-size: 16px;
    color: #000;
    margin-bottom: 16px;
    display: flex;
    gap: 16px;
}
.blog-flex-container .blog-card .blog-meta span {
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    border-radius: 5px 5px 5px 5px;
    padding: 10px 20px 10px 20px;
    background-color: rgba(238, 238, 238, 1);
}
.blog-flex-container .blog-card .blog-card-post-title a {
    font-size: 28px;
    line-height: 36px;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: #000;
}
.language-select {
            position: relative;
        }

        .language-select select {
			appearance: none;
			border: 1px solid #000;
			border-radius: 5px;
			background-color: #fff;
			font-size: 16px;
			cursor: pointer;
			width: 145px;
			padding: 9px 20px 9px 45px !important;
			outline: none;
		}

        .language-select svg {
			position: absolute;
			top: 50%;
			left: 20px;
			transform: translateY(-50%);
			pointer-events: none;
		}
		.language-select:after {
			content: "";
			background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z'/%3E%3C/svg%3E");
			width: 8px;
			height: 8px;
			position: absolute;
			right: 20px;
    		top: 18px;
			background-position: center;
			background-repeat: no-repeat;
			background-size: cover;
		}
.language-select:hover select {
    border-color: var(--e-global-color-secondary);
}
/* author box */
.author-box {
    display: flex;
    background-color: #F0FAFF;
    padding: 40px;
    border-radius: 20px;
    margin: 64px 0 0;
}
.author-avatar {
    margin-right: 32px;
}
.author-avatar img {
    border-radius: 50%;
}
.author-info {
    flex: 1;
}
.author-name {
    margin: 0 0 10px 0;
}
.author-bio {
    margin: 0;
    font-size: 16px;
    color: var(--e-global-color-text);
    line-height: 24px;
}
.author-box.no-bio {
    align-items: center;
}
.author-box.no-bio .author-name {
    margin: 0;
}
/* author box */
@media screen and (max-width: 1255px) {
	.language-select svg {
		display: none !important;
	}

	.language-select select {
		width: 80px;
		padding: 9px 10px 9px 10px !important;
	}

	.language-select:after {
		right: 6px;
	}
}
@media screen and (max-width: 991px) {

        .custom-blog-section .grid-post {
        flex: 1 1 100%;
    }
    .custom-blog-section .featured-post {
    flex-wrap: wrap;
}
 .blog-flex-container .blog-card {
    flex: 1 1 calc(50% - 30px);
    max-width: 50%;
}
}
@media (max-width: 767px) {
    .featured-post {
        flex-direction: column;
    }
    .custom-blog-section .featured-thumbnail {
     width: 100%;
    }
  .blog-flex-container .blog-card,
  .blog-wrapper .featured-post .featured-image,
  .blog-wrapper .featured-post .featured-content {
    flex: 1 1 calc(100%);
    max-width: 100%;
    width: 100%;
}
.blog-title {
    font-size: 45px;
    line-height: 53px;
    margin-bottom: 32px;
}
  .featured-post {
    flex-direction: column;
  }
  .blog-card {
    max-width: 100%;
  }
  .blog-wrapper .featured-post {
    margin-bottom: 80px;
}
  .blog-wrapper {
   padding: 50px 20px;
  }
	.author-box {
		flex-direction:column;
		padding: 30px 20px;
		border-radius: 20px;
		margin: 40px 0 0;
	}
	.author-name {
			margin: 16px 0 10px 0;
	}
	
}
