body {
    font-family: 'Inter', system-ui, sans-serif;
}

html, body {
    overflow-x: hidden;
}

.heading-font {
    font-family: 'Playfair Display', serif;
}

.hero-video-container {
    position: relative;
    overflow: hidden;
}

.hero-video-container::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(10,47,35,0.35), rgba(10,47,35,0.55));
    z-index: 1;
}

.tail-container {
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
    padding-left: 1rem;
    padding-right: 1rem;
}

.nav-link {
    position: relative;
    transition: all 0.3s ease;
}

.nav-link:after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: -4px;
    left: 0;
    background-color: #D4AF37;
    transition: width 0.3s ease;
}

.nav-link:hover:after {
    width: 100%;
}

.category-tile {
    transition: all 0.6s cubic-bezier(0.4,0,0.2,1);
    overflow: hidden;
}

.category-tile img{
    transition: transform 0.7s ease;
}

.category-tile:hover img {
    transform: scale(1.12);
}

.category-tile:hover .overlay {
    background: linear-gradient(to top, rgba(10,47,35,0.85), rgba(10,47,35,0.4));
}

.gold-btn {
    position: relative;
    overflow: hidden;
}

.gold-btn::after {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 40%;
    height: 200%;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.4), transparent);
    transform: skewX(-25deg);
    animation: shimmer 4s infinite;
    will-change: transform;
}

@keyframes shimmer {
    100% { transform: translateX(400%); }
}

.footer-link {
    transition: all 0.3s ease;
}

.footer-link:hover {
    color: #D4AF37;
    transform: translateX(6px);
}


/* ================= MOBILE HERO FIX ================= */

@media (max-width: 768px) {

    /* Hero section height adjustment */
    .hero-video-container{
        min-height: 100vh;
        padding-top: 110px;
        padding-bottom: 80px;
    }

    /* Hero heading size fix */
    .hero-video-container h1{
        font-size: 3.2rem !important;
        line-height: 1;
    }

    /* Reduce hero paragraph width */
    .hero-video-container p{
        font-size: 16px;
        line-height: 1.6;
    }

    /* Buttons stack nicely */
    .hero-video-container .flex.flex-wrap{
        flex-direction: column;
        align-items: flex-start;
    }

    /* Button size adjustment */
    .hero-video-container button{
        width: 100%;
        justify-content: center;
    }

    /* Scroll indicator visibility */
    .hero-video-container .absolute.bottom-10{
        bottom: 25px;
        z-index: 10;
    }

/* HERO BADGE */

.hero-badge{
    margin-top:15px;
}

.hero-badge .badge-dot{
    width:8px;
    height:8px;
    background:#D4AF37;
    border-radius:50%;
    animation:badgePulse 2s infinite;
}

@keyframes badgePulse{
    0%{transform:scale(1);opacity:1;}
    50%{transform:scale(1.4);opacity:.6;}
    100%{transform:scale(1);opacity:1;}
}


}
.scroll-hint{
    display:none;
    justify-content:center;
    align-items:center;
    font-size:23px;
    color:#777;
    margin-bottom:14px;
}

@media (max-width:768px){
.scroll-hint{
    display:flex;
}
}


.niva-card{
background:white;
padding:30px;
border-radius:20px;
transition:all .35s ease;
text-align:center;
box-shadow:0 10px 25px rgba(0,0,0,.06);
}

.niva-card:hover{
transform:translateY(-8px);
box-shadow:0 25px 50px rgba(0,0,0,.12);
}

.niva-card .icon{
font-size:40px;
margin-bottom:10px;
}

.category-card img{
border-radius:20px;
margin-bottom:12px;
}

.category-card{
transition:transform .3s ease;
}

.category-card:hover{
transform:scale(1.05);
}