/* **********************************************************
 * BLOG
 * ******************************************************** */

/* Blog Heading Sizes */
.elementor-kit-7.single-post .jupiterx-post-body h2 {
	font-size: clamp(40px, calc(40px + (65 - 40) * ((100vw - 320px) / (1920 - 320)) + max(0px, ((100vw - 1920px) * 0.025))), 100vw);
	font-family: "Special Elite", Sans-serif;
}
.elementor-kit-7.single-post .jupiterx-post-body h3 {
	font-size: clamp(35px, calc(35px + (50 - 35) * ((100vw - 320px) / (1920 - 320)) + max(0px, ((100vw - 1920px) * 0.025))), 100vw);	
	font-family: "Special Elite", Sans-serif;
}

/* Blog Buttons */
/* a.raven-post-button {
    padding: ;	
} */


/* *****************************
 * BLOG LANDING & ARCHIVE 
 * *************************** */
/* Blog Search Box - Use code if need to adjust focus state of blog search field 
.elementor-search-form--skin-minimal:focus-within {
    outline-width: 0 !important;
    outline-style: unset !important;
}

*/


/* *****************************
 * BLOG SELECT
 * *************************** */
.jet-select select {
	background: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;	
	position: relative;
}
.jet-select .jet-select__control {
    background: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
}
.jet-select:after {
	align-items: center;
	content: "\e909";
	display: flex;
	font-family: 'Happy Icons' !important;
	font-size: 16px;
	font-weight: 900;
	justify-content: flex-end;
	pointer-events: none;
	position: absolute;
	right: 1rem;
	top: calc(50% + 1px);
	color: #fff !important;
}
.jet-select:after {
    transform: translateY(-50%);	
}
.jet-filter {
    --tabindex-color: #ccc !important;
    --tabindex-shadow-color: transparent !important; 
}


/* *****************************
 * BLOG ARCHIVE
 * *************************** */
.btn-archive-view-all a {
    width: 100%;
}


/* *****************************
 * BLOG SINGLE
 * *************************** */
/* SOCIAL */
.single-post .jupiterx-social-share-link {
	color: #fff;
	margin: 2rem 1rem 1rem 0;
	border-radius: 0;
	width: auto !important;
}
.single-post .jupiterx-icon {
	opacity: 1 !important;
	padding: .5rem;
	width: auto !important;
}
.single-post .jupiterx-social-share-link:hover {
	color: #EEE;
}

/* BLOG SINGLE TEMPLATE IF USED - POST NAVIGATION */
.raven-post-navigation {
    display: flex !important;
}
.raven-post-navigation [rel="next"],
.raven-post-navigation [rel="prev"] {
    width: 50% !important;   
}
.raven-post-navigation .raven-post-navigation-title {
	margin-top: 0 !important;
}

@media (max-width: 768px) { 
    .raven-post-navigation {
        display: flex !important;
        flex-direction: column;
    }    
    .raven-post-navigation [rel="next"],
    .raven-post-navigation [rel="prev"] {
        padding-bottom: 2rem;
        width: 100% !important;   
    }
}
@media (max-width: 480px) {
    .elementor-widget-raven-post-navigation.raven-post-navigation-type-image-box .raven-post-navigation {
        grid-template-columns: 1fr
    }
    .raven-post-navigation {
        display: flex !important;
        flex-direction: column;
    }    
	.raven-post-navigation-content-wrapper {
        width: 100% !important;   		
    }	
	body .elementor-widget-raven-post-navigation.raven-post-navigation-type-standard .raven-post-navigation-next-previous-content {
		display: flex !important;
	}
    .raven-post-navigation [rel="next"],
    .raven-post-navigation [rel="prev"] {
		display: block !important;
        padding-bottom: 1rem;
        width: 100% !important; 	
    }
}


/* *****************************
 * RAVEN MATRIX NEWS LANDING LOOP TEMPLATE
 * *************************** */
.raven-posts.raven-posts-matrix .raven-sortable-items {
    background: var(--e-global-color-secondary);
    padding: 0.5rem;
    border: 1px solid var(--e-global-color-primary);
}

/* RESPONSIVE ADJUSTMENTS */
@media (max-width: 768px) {
	.raven-posts.raven-posts-matrix .raven-posts-item.raven-matrix-item {
		width: 100% !important;
	}
}


/* *****************************
 * BLOG LOOP - ROW 1 One Post - ROW 2 Three Posts - ROW 3 One Post, etc
 * *************************** */
.posts-loop .elementor-posts-container {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.posts-loop .elementor-posts-container .elementor-post {
  flex: 1 1 100%;
}
/* Full width for 1st and 5th posts */
.posts-loop .elementor-posts-container .elementor-post:nth-child(1),
.posts-loop .elementor-posts-container .elementor-post:nth-child(5) {
  flex: 1 1 100%; 
}
 /* Three posts per row */
.posts-loop .elementor-posts-container .elementor-post:nth-child(2),
.posts-loop .elementor-posts-container .elementor-post:nth-child(3),
.posts-loop .elementor-posts-container .elementor-post:nth-child(4),
.posts-loop .elementor-posts-container .elementor-post:nth-child(6),
.posts-loop .elementor-posts-container .elementor-post:nth-child(7),
.posts-loop .elementor-posts-container .elementor-post:nth-child(8) {
  flex: 1 1 calc(33.33% - 1.5rem);
}

@media (max-width: 1200px) and (min-width: 769px) {
  /* First row - 1 post */
  .posts-loop .elementor-posts-container .elementor-post:nth-child(1) {
    flex: 1 1 100%;
  }
  /* Alternating rows - 2 posts per row */
  .posts-loop .elementor-posts-container .elementor-post:nth-child(2),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(3),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(4),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(5),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(6),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(7),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(8) {
    flex: 1 1 calc(50% - 1.5rem); /* 2 posts per row */
  }
  /* Last post full width if needed */
  .posts-loop .elementor-posts-container .elementor-post:nth-child(odd):last-child {
    flex: 1 1 100%;
  }
}

@media (max-width: 768px) {
  /* All Rows Full Width */
  .posts-loop .elementor-posts-container .elementor-post {
    flex: 1 1 100% !important;
  }
}


/* *****************************
 * BLOG LOOP - Alternating 60/40 Layout
 * *************************** */

/* Styling for individual grid items */
.elementor-posts-container .elementor-grid-item {
  background: #00000050;
  border: 2px solid #755339;
  padding: 2rem !important;
}
.elementor-post__thumbnail {
    box-shadow: 0 0 30px #000;
}
.elementor-posts-container .elementor-post__title a:hover {
    color: #C7171B !important;
}
.elementor-posts-container .elementor-post__read-more:hover {
    color: #9B7D65 !important;
}
.elementor-posts .elementor-post__excerpt p {
    font-size: clamp(17.85px, calc(17.85px + (18.25 - 17.85) * ((100vw - 320px) / (1920 - 320)) + max(0px, ((100vw - 1920px) * 0.0125))), 100vw) !important;
    line-height: 1.5em !important;	
}
.elementor-posts .elementor-post__read-more {
    font-size: clamp(17.85px, calc(17.85px + (18.25 - 17.85) * ((100vw - 320px) / (1920 - 320)) + max(0px, ((100vw - 1920px) * 0.0125))), 100vw) !important;
    line-height: 1.5em !important;	
}


/* Grid Layout */
.posts-loop .elementor-posts-container {
  display: grid !important;
  gap: 3rem !important;
  grid-template-columns: repeat(3, 1fr) !important; /* Three Columns for 60/40 split */
}

/* Odd Rows: first post 60% width, second post 40% width */
.posts-loop .elementor-posts-container .elementor-post:nth-child(1),
.posts-loop .elementor-posts-container .elementor-post:nth-child(5) {
  grid-column: span 2 !important; /* 60% width */
  grid-row: span 1 !important;
	margin-left: 5rem;	
}
.posts-loop .elementor-posts-container .elementor-post:nth-child(2),
.posts-loop .elementor-posts-container .elementor-post:nth-child(6) {
  grid-column: span 1 !important; /* 40% width */
  grid-row: span 1 !important;
}

/* Even Rows: first post 40% width, second post 60% width */
.posts-loop .elementor-posts-container .elementor-post:nth-child(3) {
  grid-column: span 1 !important; /* 40% width */
  grid-row: span 1 !important;
}

.posts-loop .elementor-posts-container .elementor-post:nth-child(4) {
  grid-column: span 2 !important; /* 60% width */
  grid-row: span 1 !important;
  margin-right: 5rem !important;	
}

/* Match thumbnail heights */
.posts-loop .elementor-posts-container .elementor-post__thumbnail {
  position: relative;
  overflow: hidden;
}

.posts-loop .elementor-posts-container .elementor-post__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Ensures image fills container while maintaining aspect ratio */
}

/* Set a consistent height for thumbnails in paired rows */
.posts-loop .elementor-posts-container .elementor-post:nth-child(1) .elementor-post__thumbnail,
.posts-loop .elementor-posts-container .elementor-post:nth-child(2) .elementor-post__thumbnail,
.posts-loop .elementor-posts-container .elementor-post:nth-child(3) .elementor-post__thumbnail,
.posts-loop .elementor-posts-container .elementor-post:nth-child(4) .elementor-post__thumbnail,
.posts-loop .elementor-posts-container .elementor-post:nth-child(5) .elementor-post__thumbnail,
.posts-loop .elementor-posts-container .elementor-post:nth-child(6) .elementor-post__thumbnail {
  height: 400px; /* Adjust this value to your preferred height */
}

@media (max-width: 1024px) {
  /* All posts full width at 1024px and below */
  .posts-loop .elementor-posts-container {
    grid-template-columns: repeat(1, 1fr) !important;
  }
  .posts-loop .elementor-posts-container .elementor-post,
  .posts-loop .elementor-posts-container .elementor-post:nth-child(1),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(2),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(3),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(4),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(5),
  .posts-loop .elementor-posts-container .elementor-post:nth-child(6) {
    grid-column: span 1 !important;
    grid-row: span 1 !important;
	margin: 0 !important;	  
  }
  .elementor-posts-container .elementor-grid-item {
    padding: 1.5rem !important;
  }
  /* Reset thumbnail height */
  .posts-loop .elementor-posts-container .elementor-post__thumbnail {
    height: auto;
  }
}