html { scroll-behavior: smooth; }

.hero-pattern {
    background-image: linear-gradient(rgba(15, 23, 42, 0.88), rgba(15, 23, 42, 0.72)), url('../images/factory/factory-60.jpg');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.section-pattern {
    background-color: #ffffff;
    background-image: radial-gradient(#e5e7eb 1px, transparent 1px);
    background-size: 20px 20px;
}

/* Gallery Tabs */
.gallery-tab {
    background: #fff;
    color: #475569;
    border: 1.5px solid #e2e8f0;
}
.gallery-tab:hover {
    border-color: #1d4ed8;
    color: #1d4ed8;
}
.gallery-tab.active-tab {
    background: #1d4ed8;
    color: #fff;
    border-color: #1d4ed8;
    box-shadow: 0 4px 14px rgba(29,78,216,0.3);
}

/* Gallery item hover zoom override */
.gallery-item img {
    transition: transform 0.4s ease;
}
.gallery-item:hover img {
    transform: scale(1.08);
}

/* Smooth fade for gallery filter */
.gallery-item {
    transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Floating button pulse */
@keyframes float-pulse {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-4px); }
}
.float-pulse {
    animation: float-pulse 2.5s ease-in-out infinite;
}

/* Counter number style */
.counter {
    font-variant-numeric: tabular-nums;
}
