/*!
Theme Name: daphne
Theme URI: https://them.es/starter
Author: SJ Innovation
Author URI: https://sjinnovation.com/
Description: 
Version: 3.6.0
Requires at least: 5.0
Tested up to: 6.8
Requires PHP: 7.2
License: GPL version 2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0
Tags: custom-background, custom-colors, featured-images, flexible-header, microformats, post-formats, rtl-language-support, theme-options, translation-ready, accessibility-ready
Text Domain: httpsthem-esstarter
*/

/* Don't overwrite this file. Compile "/assets/main.scss" to "/build/main.css" */

/* From http://codex.wordpress.org/CSS */

.alignnone {
	margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
	display: block;
	margin: 5px auto 5px auto;
}

.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

a img.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

a img.alignnone {
	margin: 5px 20px 20px 0;
}

a img.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

a img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption {
	max-width: 96%; /* Image does not overflow the content area */
	padding: 5px 3px 10px;
	text-align: center;
}
.wp-caption.alignnone {
	margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
	margin: 5px 0 20px 20px;
}
.wp-caption img {
	border: 0 none;
	height: auto;
	margin: 0;
	max-width: 98.5%;
	padding: 0;
	width: auto;
}
.wp-caption p.wp-caption-text {
	font-size: 11px;
	line-height: 17px;
	margin: 0;
	padding: 0 4px 5px;
}

.gallery-item {
	display: inline-block;
	text-align: left;
	vertical-align: top;
	width: 50%;
}

.gallery-item a,
.gallery-item a:hover,
.gallery-item a:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	background: none;
	display: inline-block;
	max-width: 100%;
}

.gallery-item a img {
	display: block;
	-webkit-transition: -webkit-filter 0.2s ease-in;
	transition: -webkit-filter 0.2s ease-in;
	transition: filter 0.2s ease-in;
	transition: filter 0.2s ease-in, -webkit-filter 0.2s ease-in;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.gallery-item a:hover img,
.gallery-item a:focus img {
	-webkit-filter: opacity(60%);
	filter: opacity(60%);
}

.gallery-caption {
	display: block;
	text-align: left;
	padding: 0 10px 0 0;
	margin-bottom: 0;
}

.gallery-columns-1 .gallery-item {
	max-width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
	display: none;
}

.bypostauthor {
	font-weight: bold;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

#main {
	margin-top: 0 !important;
}

/* Header Styles with Transparent to Solid Background */

/* Initial transparent header */
.site-header {
    position: sticky;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 1000;
    transition: background-color 0.3s ease;
    background-color: #fff;

}

.site-header.custom-header-class {
    background-color: transparent !important;
	position: fixed !important;
}

/* Scrolled header state */
.site-header.custom-header-class.scrolled {
    background-color: #F7F6F1 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.site-header.custom-header-class.scrolled a {
	color: #0F2E2F !important;
}

/* Logo styling */
.navbar-brand-container {
    display: flex;
    justify-content: center;
    align-items: center;
}

.navbar-brand {
    margin-right: 0 !important;
}

.navbar-brand img.logo {
    max-height: 70px;
    transition: max-height 0.3s ease;
}

.header-container {
	max-width: 1260px !important;
}

.scrolled .navbar-brand img.logo {
    max-height: 50px;
}

/* Navigation container */
.navbar .container-fluid {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Left and right navigation sections */

.navbar-expand-lg {
    background: transparent !important;
}

.navbar-expand-lg .navbar-nav {
    gap: 16px;
}

/* Navigation links */
.navbar-nav .nav-item {
    margin: 0 10px;
}


.site-header.custom-header-class .navbar-nav .nav-link{
     color: #fff;
}

.navbar-nav .nav-link {
    color: #000;
    font-weight: 500;
    padding: 10px 0;
    position: relative;
    transition: color 0.3s ease;
    font-family: "nimbus-sans-extended", sans-serif;
    font-weight: 700;
    text-transform: uppercase;
}

.navbar-nav .nav-link:hover {
    color: #147654;
}

/* Active link styling */
.navbar-nav .current-menu-item .nav-link {
    color: #fff;
}

.navbar-nav .current-menu-item .nav-link:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
}

/* Search form styling */
.header-search {
    margin-left: 15px;
}

.header-search .search-form {
    display: flex;
    align-items: center;
}

.header-search .search-field {
    padding: 5px 10px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 3px 0 0 3px;
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.header-search .search-submit {
    padding: 5px 10px;
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-left: none;
    color: #fff;
    border-radius: 0 3px 3px 0;
    cursor: pointer;
}

@media (max-width: 1300px) {
	.header-container .d-lg-none {
		display: flex !important;
	}
	.header-container .d-lg-flex {
		display: none !important;
	}
	.navbar-toggler {
		position: absolute !important;
		left: 0 !important;
		border: none !important;
	}
	.navbar-toggler {
		order: 3 !important;
		margin-left: auto !important;
	}
	.collapse:not(.show) {
		display: none !important;
	}
}


/* Mobile navigation adjustments */
@media (max-width: 991px) {
	.mobile-social-links .social-media-list {
		list-style: none;
		padding: 0;
		padding-left: 16px;
		font-size: 13px;
		font-family: 'nimbus-sans-extended';
		line-height: 300%;
		text-transform: uppercase;
		font-weight: 700;
	}
	.mobile-social-links .social-media-list a {
		color: #0F2E2F !important;
	}
	.nav-item-container {
		height: 100vh;
		overflow: auto;
		padding-bottom: 64px;
	}
	.navbar-nav .nav-link {
		font-family: 'Sud';
		font-weight: 400;
		font-size: 40px;
		margin-left: 16px;
		border-bottom: 1px solid #F1DEBE;
	}
    .navbar .container-fluid {
        flex-wrap: wrap;
		padding: 10px 15px;
    }
	
	.navbar-expand-lg .navbar-nav {
		gap: 0px;
	}
    
    .site-header {
        background-color: #fff;
    }
    
    .navbar-brand-container {
        order: 1;
    }
    
    .navbar-right {
        order: 2;
        width: 100%;
        padding-left: 0;
    }
	
	.navbar-brand img.logo {
        max-height: 28px;
    }
	
	#navbarNav {
		margin-top: 10px;
		border-top: 1px solid rgba(255, 255, 255, 0.1);
		overflow: auto;
	}
    
    .navbar-toggler {
        order: 3;
        margin-left: auto;
    }
    
    .navbar-collapse {
        width: 100%;
    }
    
    .navbar-nav {
        flex-direction: column; /* Stack menu items vertically */
        padding: 10px 0;
    }
    
    .navbar-nav .nav-item {
        margin: 5px 0;
    }
    
    .header-search {
        margin: 10px 0;
    }
}

/* Footer */

.site-footer {
    background-color: #063D2A !important;
    color: #147654;
    padding: 40px 0;
}

.site-footer a,
.site-footer p,
.site-footer .nav-link {
    color: #147654;
}

.site-footer a:hover, .site-footer a:focus {
    color: #1a9d6e; /* Slightly lighter shade for hover */
}

.footer-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px;
}

.footer-menu-col .menu {
    list-style: none;
    padding: 0;
    margin-bottom: 15px;
    display: flex;
    flex-direction: column;
}

.footer-menu-col .nav-link, .footer-menu-col p {
    padding: 0px;
    display: inline-block;
	font-size: 13px;	
	font-family: "nimbus-sans-extended", sans-serif;
	font-weight: 700;
	line-height: 180%;
	text-transform: uppercase;
}

#footer .menu-item a[aria-current=page] {
    color: #147654 !important;
}

.footer-menu-col p {
    padding: 0 !important;
    margin-top: 0 !important;
}

.footer-menu-col .copyright {
    margin: 0;
    font-size: 14px;
}

.footer-sub-logo-col img.sub-logo {
    width: 124px;
    height: auto;
}

.footer-nav .nav-item {
	padding: 0 10px !important;
}

.footer-social-col .social-media-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
}

.footer-social-col .social-media-list li {
    margin: 0;
	padding: 0 10px !important;
	text-transform: uppercase;
}

.footer-social-col .social-media-list a {

    text-decoration: none;
    font-size: 13px;	
	font-family: "nimbus-sans-extended", sans-serif;
	font-weight: 700;
	line-height: 180%;
}

.footer-logo-row {
    margin-top: 30px !important;
}

.footer-logo-row img.logo {
    max-width: 100%;
	width: 100%;
    height: auto;
}

.site-footer .widget-area {
    margin-top: 30px;
}

.site-footer .edit-link a {
    color: #fff;
}


.navbar-toggler-icon {
	background-image: none !important;
	mix-blend-mode: difference !important;
}

.summer-pick-media-container .vc_custom_1419240502350 {
	background-color: transparent !important;
}

.summer-pick-media-container h4 {
    font-weight: 700;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: 0.32px;
}

.summer-pick-media-container p {
	font-weight: 400;
	font-style: normal;
	font-size: 13px;
	line-height: 190%;
    letter-spacing: 0.32px;
}

.related-content {
    margin-top: 2rem;
    padding: 1rem 0;
}

.related-title {
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

.related-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

.related-post {
    text-align: center;
    display: flex;
    flex-direction: column;
    min-height: 250px; /* Minimum height to ensure consistency */
}

.related-thumbnail {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3; /* Enforce 4:3 aspect ratio for thumbnails */
    overflow: hidden;
}

.related-thumbnail img {
    width: 100%;
    height: 100% !important;
    object-fit: cover; /* Scale image to cover the area */
    display: block;
}

.related-post-title {
    font-size: 1.1rem;
    margin-top: 0.5rem;
    flex-grow: 1; /* Allow title area to grow and fill space */
    display: flex;
    align-items: flex-start; /* Align title at the top */
    overflow: hidden;
    max-height: 3.3rem; /* Limit title height (approx 2 lines) */
}

.related-post-title a {
    text-decoration: none;
    color: #333;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* Limit to 2 lines of text */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis; /* Add ellipsis for long titles */
}

.related-post-title a:hover {
    text-decoration: underline;
}

.collab-section-title h2  {
	color: #ffffff; 
	font-size: 80px; 
	line-height: 75px;
}

.dropdown-item.active, .dropdown-item:active {
	background-color: #C17354 !important;
	color: #fff !important;
}

@media (max-width: 768px) {
    .related-grid {
        grid-template-columns: 1fr; /* Stack posts vertically on small screens*/
    }
    .related-post {
        min-height: 200px; /* Adjust for smaller screens */
    }
	.wpb_column.vc_column_container.vc_col-sm-6.vc_col-lg-6.vc_col-xs-12 {
    	order: -1;
	}
	
	.collab-section-title h2 {
		font-size: 36px;
		line-height: 40px;
		margin-top: 24px;
	}
}