/*
 Theme Name:   Neuros Custom
 Description:  Custom child theme for 2TInteractive - All customizations isolated here
 Theme URI:	   https://2tinteractive.com
 Author:       2TInteractive
 Author URI:   https://2tinteractive.com
 Template:     neuros
 Version:      1.0.0
 License: GNU  General Public License version 3.0
 License URI:  http://www.gnu.org/licenses/gpl-3.0.html
 Text Domain:  neuros-custom
*/

/* =Theme customization starts here
------------------------------------------------------- */

/* Ensure header is visible on all archive pages */
body.archive .header,
body.home .header,
body.category .header,
body.tag .header {
    display: block !important;
    visibility: visible !important;
}

/* Ensure logo container and logo are visible */
body.archive .header .logo-container,
body.home .header .logo-container,
body.category .header .logo-container,
body.tag .header .logo-container,
.header .logo-container {
    display: block !important;
    visibility: visible !important;
}

body.archive .header .logo-container a,
body.home .header .logo-container a,
body.category .header .logo-container a,
body.tag .header .logo-container a,
.header .logo-container a {
    display: block !important;
    visibility: visible !important;
}

body.archive .header .logo-container img,
body.home .header .logo-container img,
body.category .header .logo-container img,
body.tag .header .logo-container img,
.header .logo-container img {
    display: block !important;
    visibility: visible !important;
    max-width: 100%;
    height: auto;
}

body.archive .header-menu-container,
body.home .header-menu-container,
body.category .header-menu-container,
body.tag .header-menu-container {
    display: block !important;
    visibility: visible !important;
}

/* Ensure header-icons-container is visible */
.header .header-icons-container {
    display: flex !important;
    visibility: visible !important;
    align-items: center;
}

/* Archive Grid: Equal Height Items & Uniform Image Dimensions */
.archive-listing-wrapper.grid-listing {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch; /* Make all items equal height */
}

.archive-listing-wrapper.grid-listing .grid-item {
    display: flex;
    flex-direction: column;
    height: 100%; /* Ensure items take full height of their container */
}

.archive-listing-wrapper.grid-listing .grid-item .blog-item,
.archive-listing-wrapper.grid-listing .grid-item .standard-blog-item-wrapper {
    display: flex;
    flex-direction: column;
    height: 100%; /* Full height for content */
}

/* Uniform Image Container - Fixed Aspect Ratio */
.archive-listing-wrapper.grid-listing .post-media-wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 66.666%; /* 3:2 aspect ratio (2/3 = 0.666) */
    overflow: hidden;
    background-color: #f0f2f4; /* Fallback background */
}

.archive-listing-wrapper.grid-listing .post-media-wrapper picture,
.archive-listing-wrapper.grid-listing .post-media-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Crop to fill container uniformly */
    object-position: center; /* Center the image */
}

.archive-listing-wrapper.grid-listing .post-media-wrapper a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
}

/* Ensure content area takes remaining space */
.archive-listing-wrapper.grid-listing .grid-item .post-meta-header,
.archive-listing-wrapper.grid-listing .grid-item .post-title,
.archive-listing-wrapper.grid-listing .grid-item .post-content {
    flex: 0 0 auto; /* Don't grow/shrink */
}

.archive-listing-wrapper.grid-listing .grid-item .post-more-button {
    margin-top: auto; /* Push to bottom */
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .archive-listing-wrapper.grid-listing .post-media-wrapper {
        padding-bottom: 75%; /* Slightly taller on tablets */
    }
}

@media (max-width: 575px) {
    .archive-listing-wrapper.grid-listing .post-media-wrapper {
        padding-bottom: 60%; /* Slightly shorter on mobile */
    }
}

/* Page Title Styling - Left Aligned */

.page-title-subtitle {
    font-size: 14px !important;
}

/* Animated Heading Styles for Page Titles */
.page-title-archive-animated.neuros_heading_animation .neuros-heading .neuros-heading-content .word {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    -ms-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    -moz-align-items: flex-start;
    -ms-align-items: flex-start;
    align-items: flex-start;
    -webkit-clip-path: inset(-0.15em -0.1em);
    clip-path: inset(-0.15em -0.1em);
}

.page-title-archive-animated.neuros_heading_animation .neuros-heading .neuros-heading-content .word .letter {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    -ms-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    -moz-align-items: flex-start;
    -ms-align-items: flex-start;
    align-items: flex-start;
    opacity: 0;
    -webkit-transform: translateY(120%);
    -ms-transform: translateY(120%);
    transform: translateY(120%);
    animation: fadeIn 0.35s forwards, headingAnimation 0.7s cubic-bezier(0.26, -0.14, 0, 1.01) forwards;
}

@keyframes fadeIn {
    to {
        opacity: 1;
    }
}

@keyframes headingAnimation {
    to {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

.page-title-container .page-title-box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.page-title-container h1.page-title,
.page-title-container h1.neuros-heading.page-title {
    font-family: 'Bebas Neue', sans-serif !important;
    text-align: left;
}

.page-title-container .page-title-subtitle {
    display: block;
    font-size: 14px !important;
    font-weight: 400;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 10px;
    opacity: 0.8;
    color: inherit;
}

.page-title-container h1.page-title {
    font-family: 'Bebas Neue', sans-serif !important;
    text-align: left;
}

.page-title-container .page-title-description {
    display: block;
    margin-top: 15px;
    text-align: left;
}

.page-title-container .page-title-description small {
    font-size: 14px !important;
}

.page-title-container .page-title-description p {
    margin: 0;
    font-size: 14px !important;
    line-height: 1.6;
    opacity: 0.9;
}
