@charset "UTF-8";
/* CSS Document */

/* Navbar Section */
.navbar img,
.navbar .nav-item,
.navbar .btn-outside-popup,
.navbar-toggler {
    opacity: 1;
    animation: none !important;
}

/* Header Section */
.header-section {
    width: 100%;
    height: 100%;
    background-color: var(--color-primary-bg);
}

.header-content {
    width: 100%;
    height: 100%;
}

.header-text {
    width: 100%;
    padding: var(--space-xl);
}

.header-text h1 {
    color: var(--color-secondary);
    margin-bottom: var(--space-xs);
    text-shadow: 2px 2px 4px var(--color-shadows);
}


.header-image {
    width: 100%;
    height: 100%;
    padding: var(--space-xl);
}

.header-image .image-section {
    position: relative;
    width: 525px;
    height: 275px;
}

.header-image .img-box {
    position: absolute;
    width: 500px;
    height: 250px;
    top: 0;
    left: 0;
    border-radius: var(--border-secondary-radius);
    box-shadow: var(--shadow-secondary) var(--shadow-tertiary) var(--shadow-tertiary) var(--color-shadows);
    overflow: hidden;
    z-index: 2;
    transition: 0.3s ease-in-out;
}

.header-image .img-box:hover {
    transform: scale(1.05);
    box-shadow: var(--shadow-tertiary) var(--shadow-quarternary) var(--shadow-tertiary) var(--color-shadows);
}

.header-image .img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.3s ease-in-out;
}

.header-image .img-box img:hover {
    transform: scale(1.05);
}

.header-image .bg-box {
    position: absolute;
    width: 60%;
    height: 50%;
    right: 0;
    bottom: 0;
    border-radius: var(--border-secondary-radius);
    background: var(--color-quarternary-bg-gradient);
    box-shadow: var(--shadow-primary) var(--shadow-primary) var(--shadow-secondary) var(--color-shadows);
    z-index: 1;
}


@media screen and (min-width: 1536px) {
    
    .header-text p {
        max-width: 70%;
    }

    .header-image .image-section {
        width: 600px;
        height: 375px;
    }
    
    .header-image .img-box {
        width: 575px;
        height: 350px;
    }
}

@media screen and (max-width: 1199.98px) {

    .header-text {
        padding: var(--space-m);
    }

    .header-image {
        padding: var(--space-m);
    }

    
  .header-image .image-section {
        width: 100%;
        height: 300px;
    }
    
    .header-image .img-box {
        width: 95%;
        height: 275px;
    }
}

@media screen and (max-width: 767.98px) {
    
    .header-content {
        flex-direction: column !important;
    }

    .header-text {
        padding: var(--space-s);
    }

    .header-image {
        padding: var(--space-s);
    }

    .header-image .image-section {
        width: 100%;
        height: 220px;
    }
    
    .header-image .img-box {
        width: 95%;
        height: 200px;
    }
}

/*Technology Section */
.technology-section {
    position: relative;
    overflow: hidden;
    background-color: var(--color-secondary-bg);
    padding: var(--space-xl) 0;
}

.bento-technology {
    width: 100%;
    height: 250px;
    gap: var(--space-s);
}

.bento-technology .techno-row {
    flex: 1 1 0;
    gap: var(--space-s);
}

.bento-technology .techno-row .col {
    flex: 1 1 0;
    border-radius: var(--border-secondary-radius);
    background: var(--color-tertiary-bg-gradient);
    box-shadow: var(--shadow-primary) var(--shadow-primary) var(--shadow-secondary) var(--color-shadows);
    transition: 0.3s ease-in-out;
}

.bento-technology .techno-row .col:hover {
    transform: scale(1.05);
    box-shadow: var(--shadow-secondary) var(--shadow-secondary) var(--shadow-tertiary) var(--color-shadows);
}

.bento-technology .techno-row .col a {
    text-decoration: none;
}

.bento-technology .techno-row .col h6 {
    color: var(--color-secondary-text);
}

.bento-technology .techno-row .col h6:hover {
    color: var(--color-primary);
}

.bento-tech-2 {
    width: 100%;
    height: 113px;
    gap: var(--space-s);
}

.bento-tech-2 .inner-col {
    flex: 1 1 0;
    border-radius: var(--border-secondary-radius);
    background: var(--color-tertiary-bg-gradient);
    box-shadow: var(--shadow-primary) var(--shadow-primary) var(--shadow-secondary) var(--color-shadows);
    transition: 0.3s ease-in-out;
}

.bento-tech-2 .inner-col:hover {
    transform: scale(1.05);
    box-shadow: var(--shadow-secondary) var(--shadow-secondary) var(--shadow-tertiary) var(--color-shadows);
}

.bento-tech-2 .inner-col a {
    text-decoration: none;
    color: var(--color-secondary-text);
}

.bento-tech-2 .inner-col a > h6:hover {
    color: var(--color-primary);
}

@media screen and (max-width: 991.98px) {
    
    .bento-tech-2 {
        height: 175px;
    }
}

@media screen and (max-width: 767.98px) {
    
    .bento-technology {
        height: 520px;
        flex-direction: column !important;
        padding: 0 var(--space-s);
    }

    .bento-technology .techno-row {
        flex-direction: row !important;
    }

    .bento-tech-2 {
        height: 200px;
        flex-wrap: wrap;
        padding: 0 var(--space-s);
    }

    .bento-tech-2 .inner-col { 
        flex: 1 1 calc(50% - .75rem); 
    }

    .bento-tech-2 .inner-col:nth-child(3) {
        flex-basis: 100%; 
    }
}

/* Technology Infinite Scroll */
.scroll-wrapper {
    position: relative;
    overflow: hidden;
    width: 100vw;
    max-width: 100%;
    margin-bottom: var(--space-s);
}

.scroll-wrapper .gradient-left,
.scroll-wrapper .gradient-right {
    position: absolute;
    top: 0;
    width: 80px;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.scroll-wrapper .gradient-left {
    left: 0;
    background: linear-gradient(to right, var(--color-secondary-bg) 0%, transparent 100%);
}

.scroll-wrapper .gradient-right {
    right: 0;
    background: linear-gradient(to left, var(--color-secondary-bg) 0%, transparent 100%);
}

.scroll-wrapper .scroll-container {
    display: flex;
    gap: var(--space-s);
    overflow-x: auto;
    padding: var(--space-s) 0;
    scrollbar-width: none;
    -ms-overflow-style: none;
    touch-action: none;
    -webkit-overflow-scrolling: auto;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    pointer-events: auto;
}

.scroll-wrapper .scroll-container::-webkit-scrollbar {
    display: none;
}

.scroll-wrapper .scroll-container .scroll-item {
    flex-shrink: 0;
    width: 350px;
    height: 350px;
    border-radius: var(--border-secondary-radius);
    box-shadow: var(--shadow-primary) var(--shadow-primary) var(--shadow-secondary) var(--color-shadows);
    overflow: hidden;
    user-select: none;
    transition: 0.3s ease-in-out;
}

.scroll-wrapper .scroll-container .scroll-item:hover {
    transform: scale(1.05);
    box-shadow: var(--shadow-secondary) var(--shadow-secondary) var(--shadow-tertiary) var(--color-shadows);
}

.scroll-wrapper .scroll-container .scroll-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}

@media screen and (max-width: 767.98px) {

    .scroll-wrapper .gradient-left,
    .scroll-wrapper .gradient-right {
        width: 30px;
    }
    
    .scroll-wrapper .scroll-container .scroll-item {
        width: 250px;
        height: 250px;
    }
}

/* Technology Section Footer */
.techno-footer {
    width: 100%;
    height: 100%;
    padding: 0 var(--space-xl);
}

.techno-footer-content {
    text-align: center;
    padding: var(--space-xs);
    background: var(--color-primary-bg-gradient);
    border-radius: var(--border-secondary-radius);
    box-shadow: var(--shadow-primary) var(--shadow-primary) var(--shadow-secondary) var(--color-shadows);
}

@media screen and (max-width: 1199.98px) {
    
    .techno-footer {
        padding: 0 var(--space-m);
    }
}

@media screen and (max-width: 767.98px) {
    
    .techno-footer {
        padding: 0 var(--space-s);
    }
}

/* Navigation buttons */
.nav-dots {
    gap: var(--space-s);
}

.nav-dot {
    width: 15px;
    height: 15px;
    border-radius: var(--border-secondary-radius);
    background: var(--color-primary);
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid var(--color-secondary-bg)
}

.nav-dot.active {
    background: var(--color-secondary);
    transform: scale(1.2);
}

.nav-dot:hover {
    background: rgba(255, 255, 255, 0.8);
}