/* Critical Above-the-Fold Styles */
html { box-sizing: border-box; }
*, *::before, *::after { box-sizing: inherit; }
body { margin: 0; }
.main-page.header-main-page { min-height: 72px; }
#result .card-header-box .card-img-top,
.main-card-row .card-header-box .card-img-top {
    aspect-ratio: 237 / 240;
    width: 100%;
    height: auto;
    object-fit: cover;
}
/* Reserve space for card boxes to prevent grid reflow as images lazy-load */
#result .card-box,
.main-card-row .card-box {
    contain: layout;
}
/* Prevent logo from causing CLS — aspect-ratio locks space before image loads */
.header-logo {
    aspect-ratio: 228 / 118;
    height: auto;
    width: 228px;
}
.header-main-page.sticky-header .header-logo {
    width: 120px;
}

/* Header and Navigation Styles */
.text-dangerious{
    color: white !important;
}

.text-danger{
    color: white !important;
}

.navbar-nav .nav-item {
    position: relative;
}

.mega-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    background: #c41425;
    border-radius: 0;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    z-index: 1000;
    display: none;
    overflow: hidden;
}

.mega-menu.active {
    display: block;
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}

.mega-menu-content {
    display: flex;
    max-width: 1700px;
    width: 100%;
    margin: auto;
    margin-right: 0;
    padding-left: 15px;
}

.mega-menu-nav {
    width: 25%;
    padding-top: 80px;
}

.header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab {
    display: block;
    text-decoration: none;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: none;
    cursor: pointer;
    padding-right: 40px;
    background: transparent;
    color: #fff;
    font-size: 33px;
    font-family: "Bebas Neue Pro" !important;
    width: 100% !important;
    text-align: left;
    margin: 0;
    line-height: 50px;
    padding-bottom: 5px;
    margin-bottom: 10px;
    position: relative;
    transition: 0.5s;
}

.header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab:hover,
.header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab.active {
    padding-left: 15px;
    transition: 0.5s;
}

.header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab::after {
    content: "";
    position: absolute;
    width: 50px;
    height: 3px;
    background: #fff;
    left: 0;
    bottom: 0;
    opacity: 0;
    transition: 0.5s;
}

.header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab:hover::after, 
.header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab.active::after, 
.header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab a:hover::after, 
.header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab a.active::after {
    transition: 0.5s;
    opacity: 1;
    left: 15px;
}

.header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab::before{
    font-size: 32px;
    line-height: 40px;
    content: ">";
    position: absolute;
    right: 10px;
    bottom: inherit;
    left: inherit !important;
    width: auto;
    opacity: 1;
}

.mega-content {
    width: 75%;
}

.tab-content {
    display: none;
}

.tab-content.active {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: flex-start;
}
.tab-content .tab-details {
    width: 58%;
    margin-top: 80px;
    padding-left: 30px;
    position: relative;
    padding-right: 30px;
}

.tab-content .tab-details:after {
    content: "";
    position: absolute;
    width: 3px;
    height: 100%;
    left: 0px;
    top: 0;
    bottom: 0;
    margin: auto;
    background: #fff;
}
.tab-content .tab-image {
    width: 42%;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

.mega-content h3 {
    font-size: 35px;
    color: #fff;
    font-family: "Bebas Neue Pro" !important;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: 0.05em;
    margin: 0;
}

.mega-content p {
    margin-bottom: 10px;
    letter-spacing: 1px;
    font-family: "Bebas Neue Pro";
    font-weight: 400;
    color: #fff;
    font-size: 35px;
    line-height: 50px;
}

.tab-content .tab-details .read-more-btn {
    font-size: 30px;
    font-family: "Bebas Neue Pro";
    background: #fff;
    color: #c41425;
    line-height: 45px;
    padding: 10px 30px;
    display: inline-block;
    border-radius: 15px;
    margin: 0 !important;
    margin-top: 20px !important;
    font-weight: 600;
    border: 0;
    width: auto !important;
}
.tab-content .tab-details .read-more-btn:after{
    display: none;
}

.social-section h4 {
    font-size: 50px;
    font-family: "Bebas Neue Pro" !important;
    text-transform: uppercase;
    font-weight: 600;
}

.social-icons {
    display: flex;
    gap: 10px;
}

.social-icons a {
    width: 40px;
    height: 40px;
    background: rgba(255,255,255,0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-decoration: none;
    transition: all 0.3s ease;
}

.social-icons a:hover {
    background: white;
    color: #dc2626;
    transform: translateY(-2px);
}

.content-image {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.navbar-nav .nav-link {
    cursor: pointer;
    position: relative;
}

.navbar-nav .nav-link.active {
    color: #dc2626 !important;
}
.social-section {
    position: absolute;
    bottom: 170px;
}
.header-main-page .sticky-center-nav ul li .social-icons a:after, 
.header-main-page .sticky-center-nav ul li .social-icons a:before{
    display: none;
}

.header-main-page .sticky-center-nav ul li .social-icons a {
    background: #fff;
    width: 35px !important;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 0px 6px #000;
    margin-right: 5px;
    border-radius: 50%;
    line-height: 1.2;
    min-width: 22px;
    position: relative;
    margin: 0;
}
.header-main-page .sticky-center-nav ul li .social-icons a i {
    color: #c41425;
    font-size: 20px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-43%, -43%);
}
.header-main-page .sticky-center-nav ul li .social-icons a:hover {
    background: #c41425;
}
.header-main-page .sticky-center-nav ul li .social-icons a:hover i{
    color: #fff;
}
.tab-content .tab-details span {
    display: inline-block;
    width: 70%;
    color: #fff;
    font-family: "Bebas Neue Pro";
    font-size: 30px;
    padding-left: 30px;
}

.store-mega-menu .social-section {
    position: static;
}
.store-mega-menu .social-section .social-icons {
    flex-wrap: wrap;
}
.store-mega-menu .tab-content .tab-details {
    margin-bottom: 30px;
    margin-top: 50px;
}
.store-mega-menu .mega-menu-nav {
    padding-top: 50px;
    padding-bottom: 20px;
    padding-right: 5px;
}

/* Notification Styles */
.notification-bell {
    position: absolute;
    top: 20px;
    left: 20px;
    color: #fff;
    cursor: pointer;
    font-size: 18px;
}
.notification-list {
    display: flex;
    align-items: flex-start;
}
.notification-icon {
    height: 60px !important;
    width: 60px;
    background: #fff;
    border-radius: 100px;
    margin-right: 15px;
}
.notification-icon img {
    border-radius: 100px;
    height: 60px !important;
    width: 60px;
    object-fit: contain;
    display: block;
}
.notification-text {
    width: calc(100% - 75px);
}
.notification-list .notification-text h5, .notification-list .notification-text p {
    line-height: 1.2;
}
.notification-back {
    position: absolute;
    top: 20px;
    left: 20px;
}
.title-date {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.title-date small.text-muted {
    font-size: 12px;
}
.notification-list .notification-text h5 {
    width: 240px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 600 !important;
}
.modal-title.notification-title {
    margin-bottom: 25px;
}
.notification-list .notification-text p {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    font-weight: 400 !important;
    font-size: 16px;
}
.notifications-wrapper {
    max-height: 66vh;
    overflow-y: auto;
    padding-right: 10px;
}
.notifications-wrapper::-webkit-scrollbar {
    width: 7px;
}
.notifications-wrapper::-webkit-scrollbar-track {
    background-color: #c41425;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}
.notifications-wrapper::-webkit-scrollbar-thumb {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    background: #e7e7e7; 
}
.notification-box.unseen {
    background-color: #bcbcbc;
}
.notification-box.seen {
    background-color: #ffffff;
}

/* Responsive Styles */
@media (max-width: 1800px) {
    .header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab {
        font-size: 31px;
        line-height: 40px;
    }
    .social-section {
        bottom: 200px;
    }
    .tab-content .tab-details .read-more-btn {
        margin-top: 10px !important;
    }
}
@media (max-width: 1600px) {
    .mega-content p {
        font-size: 30px;
        line-height: 35px;
    }
    .tab-content .tab-details span {
        width: 60%;
    }
}
@media (max-width: 1440px) {
    .social-section {
        bottom: 120px;
    }
}
@media (max-width: 1366px) {
    .header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab {
        font-size: 28px;
        line-height: 30px;
    }
    .mega-content p {
        font-size: 24px;
        line-height: 30px;
    }
    .social-section {
        bottom: 30px;
    }
}
@media (max-width: 1200px) {
    .header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab {
        font-size: 23px;
        line-height: 30px;
    }
    .mega-content h3 {
        font-size: 30px;
    }
    .mega-content p {
        font-size: 20px;
        line-height: 24px;
    }
    .tab-content .tab-details .read-more-btn {
        margin-top: 5px !important;
        font-size: 24px;
        line-height: 30px;
    }
    .tab-content .tab-details span {
        font-size: 24px;
        padding-left: 25px;
    }
    .social-section h4 {
        font-size: 36px;
    }
}
@media (max-width: 1024px) {
    .header-main-page .sticky-center-nav ul li .mega-menu-nav .nav-tab {
        font-size: 20px;
    }
    .tab-content .tab-details .read-more-btn {
        padding: 10px 15px 7px;
    }
}
@media (max-width: 991.98px){
    .main-header.mobile-header-sec ul.head-nav-list li a:before,
    .main-header.mobile-header-sec ul.head-nav-list li a:after{
        display: none;
    }
    .main-header.mobile-header-sec ul.head-nav-list li a{
        display: flex;
        width: 100% !important;
        align-items: center;
        justify-content: space-between;
    }
    ul.head-nav-list li.nav-item-mobile.active i.rotated:before{
        content: "\f077";
    }
    .main-header.mobile-header-sec ul.head-nav-list li ul.mobile-dropdown li a {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}
