/*==============================================================
#
# Responsive
# File : assets/css/responsive.css
#
==============================================================*/


/*==============================================================
# Mobile Devices (max-width: 767px)
==============================================================*/

@media screen and (max-width: 767px) {

    .blog-landing-page .container,
    .featured-categories .container,
    .latest-posts .container {
        padding: 0px 15px !important;
        margin-top: 5px !important;
    }

    .hero-slider-section .container {
        padding: 0px 15px !important;
        margin-top: 25px !important;
    }

    .hero-slider {
        padding-bottom: 0 !important;
    }

    /* Mobile Hero Slide Wrapper - Stacked 1 Column */
    .hero-slide__wrapper {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: 1fr !important;
        min-height: auto !important;
        background: transparent !important;
    }

    .hero-slide__image {
        position: relative;
        order: 1 !important;
        width: 100% !important;
        height: 334px;
        transform: rotate(0deg);
        opacity: 1;
    }

     .hero-slide__image img {
    width: 100% !important;
    height: auto !important;         /* Allows aspect-ratio to calculate height */
    aspect-ratio: 1.13 / 1 !important; /* Dynamically sets height based on width */
    object-fit: cover !important;
  }

    /* Mobile Text Alignment & Styling */
    .hero-slide__content {
        padding: 24px 18px;
        text-align: left !important;
        align-items: flex-start !important;
    }

    .hero-slide__content .hero-title,
    .hero-slide__content .hero-description,
    .hero-slide__content .hero-badge {
        text-align: left !important;
    }

    .hero-title {
        font-weight: 600;
        font-size: 18px !important;
        line-height: 100%;
        letter-spacing: -0.01em;
        margin-bottom: 12px;
    }

    .hero-description {
        font-size: 13px !important;
        font-weight: 500;
        line-height: 1.7;
        margin-bottom: 20px;
    }

    .hero-badge {
        font-size: 11px;
        padding: 6px 14px;
        margin-bottom: 14px;
    }

    .hero-button {
        width: 160px;
        height: 46px;
        font-size: 14px;
    }

    .slick-dotted.slick-slider {
        margin-bottom: 5px;
    }

    .hero-slider .slick-dots {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100px !important;
        height: 3px !important;
        margin: 20px auto 0 !important;
        background: #f0e4e7 !important;
        border-radius: 2px !important;
        overflow: hidden !important;
        padding: 0 !important;
        list-style: none !important;
    }

    .hero-slider .slick-dots li {
        flex: 1 !important;
        height: 3px !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .hero-slider .slick-dots li button,
    .hero-slider .slick-dots li button:hover,
    .hero-slider .slick-dots li button:focus,
    .hero-slider .slick-dots li button:focus-visible,
    .hero-slider .slick-dots li button:active {
        width: 100% !important;
        height: 3px !important;
        padding: 0 !important;
        border: none !important;
        border: 0 !important;
        outline: none !important;
        outline-style: none !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        background: transparent !important;
    }

    .hero-slider .slick-dots li.slick-active button {
        background: #994F67 !important;
    }

    .hero-slider .slick-prev,
    .hero-slider .slick-next {
        width: 42px;
        height: 42px;
        top: 34%;
    }

    .hero-slider .arrow-icon {
        font-size: 18px;
    }

    .section-heading {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
        margin-bottom: 24px;
    }

    .section-heading h2 {
        font-size: 26px;
    }

    .section-subtitle {
        font-size: 11px;
        letter-spacing: 1.5px;
    }

    .see-more {
        font-size: 14px;
    }

    .featured-categories__title {
        font-weight: 500;
        font-size: 24px;
        line-height: 100%;
        letter-spacing: -0.01em;
        margin-bottom: 10px;
    }

    .category-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .category-card {
        border-radius: 18px;
    }

    .category-card__image {
        aspect-ratio: 16/10;
    }

    .category-card__content {
        padding: 18px;
    }

    .category-card__content h3 {
        font-size: 20px;
    }

    /* Mobile Latest Posts / Trending Card - 1 card per row */
    .latest-posts-grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
        display: grid !important;
    }

    .latest-posts-grid .blog-card,
    .blog-card {
        position: relative !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
        padding: 0 !important;
    }

    .blog-card .blog-card__title a::before {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 1 !important;
        cursor: pointer !important;
    }

    .blog-card a:not(.blog-card__title a),
    .blog-card button,
    .blog-card .blog-card__category,
    .blog-card .blog-card__tag,
    .blog-card .blog-card__meta a {
        position: relative !important;
        z-index: 6 !important;
    }

    .latest-posts-grid .blog-card__image {
        width: 100% !important;
        height: auto !important;
        /* aspect-ratio: 16 / 10 !important; */
            aspect-ratio: 2.13 / 1 !important;
        overflow: hidden !important;
        display: block !important;
    }

    .latest-posts-grid .blog-card__image img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .latest-posts-grid .blog-card__content {
        padding: 14px 0 0 0 !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }

    .latest-posts-grid .blog-card__category,
    .latest-posts-grid .blog-card__excerpt,
    .latest-posts-grid .blog-card__link {
        display: none !important;
    }

    .latest-posts-grid .blog-card__title {
        font-size: 16px !important;
        font-weight: 500 !important;
        color: #333333 !important;
        line-height: 1.35 !important;
        margin-bottom: 12px !important;
    }

    .latest-posts-grid .blog-card__meta {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        padding-top: 10px !important;
        border-top: 1px solid #e9e9e9 !important;
        font-size: 13px !important;
        color: #666666 !important;
    }

    .latest-posts-grid .blog-card__date,
    .latest-posts-grid .blog-card__meta-separator {
        display: none !important;
    }

    .latest-posts-grid .blog-card__read-time {
        font-size: 13px !important;
        color: #666666 !important;
        font-weight: 400 !important;
    }

    .latest-posts-grid .blog-card__arrow {
        display: inline-flex !important;
        align-items: center !important;
        color: #666666 !important;
    }

    /* Latest Posts See More Button at End of Cards for Mobile */
    .latest-posts .see-more--desktop {
        display: none !important;
    }

    .latest-posts__see-more-wrapper {
        display: flex !important;
        justify-content: center !important;
        width: 100% !important;
        margin-top: 24px !important;
        padding-top: 8px !important;
    }

    .latest-posts__see-more-wrapper .see-more {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 120px !important;
        height: 38px !important;
        padding: 8px 24px !important;
        border: 1px solid #444 !important;
        border-radius: 50px !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        color: #333 !important;
        text-decoration: none !important;
    }

}


/*==============================================================
# Touch Devices
==============================================================*/

@media (hover:none){

    .category-card:hover,
    .blog-card:hover{

        transform:none;

    }

    .category-card:hover img,
    .blog-card:hover img,
    .hero-slide:hover img{

        transform:none;

    }

}