/*-----------------------------------------------------------------------------------

Item Name: Borox - Tailwind CSS Personal Portfolio Template.
Author: ashishmaraviya
Version: 1
Copyright 2023

-----------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------
    Included CSS INDEX
-----------------------------------------------------------------------------------

01. Typography

02. Utilities
    - variables

03. Layouts
    - common
    - header

04. Pages
    - home-page

-----------------------------------------------------------------------------------*/
/*base*/
/* Typography */
/* Quicksand font*/
@font-face {
  font-family: "Quicksand";
  src: url("../font/Quicksand-Light.ttf");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Quicksand";
  src: url("../font/Quicksand-Regular.ttf");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Quicksand";
  src: url("../font/Quicksand-Medium.ttf");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Quicksand";
  src: url("../font/Quicksand-SemiBold.ttf");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Quicksand";
  src: url("../font/Quicksand-Bold.ttf");
  font-weight: 700;
  font-style: normal;
}
/* Montserrat font */
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-Thin.ttf");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-ThinItalic.ttf");
  font-weight: 100;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-ExtraLight.ttf");
  font-weight: 200;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-ExtraLightItalic.ttf");
  font-weight: 100;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-Light.ttf");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-LightItalic.ttf");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-Regular.ttf");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-Regular.ttf");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-Medium.ttf");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-MediumItalic.ttf");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-SemiBold.ttf");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-SemiBoldItalic.ttf");
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-Bold.ttf");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-BoldItalic.ttf");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-ExtraBold.ttf");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-ExtraBoldItalic.ttf");
  font-weight: 800;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-Black.ttf");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../font/Montserrat-BlackItalic.ttf");
  font-weight: 900;
  font-style: italic;
}
/* utilities */
/* variables */
/* layout */
/* common */
body {
  width: 100%;
  height: 100%;
  position: relative;
  font-family: "Montserrat";
  font-weight: 400;
}

h1 {
  font-family: "Quicksand";
  font-weight: 700;
  letter-spacing: 0.01rem;
  line-height: 1.2;
}

h2, h3, h4, h5, h6 {
  font-family: "Quicksand";
  font-weight: 400;
  letter-spacing: 0.01rem;
  line-height: 1.2;
}

@-webkit-keyframes shadowRolling {
  0% {
    -webkit-box-shadow: 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
            box-shadow: 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
  }
  12% {
    -webkit-box-shadow: 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
            box-shadow: 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
  }
  25% {
    -webkit-box-shadow: 110px 0 #7963e0, 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
            box-shadow: 110px 0 #7963e0, 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
  }
  36% {
    -webkit-box-shadow: 120px 0 #7963e0, 110px 0 #7963e0, 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0);
            box-shadow: 120px 0 #7963e0, 110px 0 #7963e0, 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0);
  }
  50% {
    -webkit-box-shadow: 130px 0 #7963e0, 120px 0 #7963e0, 110px 0 #7963e0, 100px 0 #7963e0;
            box-shadow: 130px 0 #7963e0, 120px 0 #7963e0, 110px 0 #7963e0, 100px 0 #7963e0;
  }
  62% {
    -webkit-box-shadow: 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0, 120px 0 #7963e0, 110px 0 #7963e0;
            box-shadow: 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0, 120px 0 #7963e0, 110px 0 #7963e0;
  }
  75% {
    -webkit-box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0, 120px 0 #7963e0;
            box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0, 120px 0 #7963e0;
  }
  87% {
    -webkit-box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0;
            box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0;
  }
  100% {
    -webkit-box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0);
            box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0);
  }
}

@keyframes shadowRolling {
  0% {
    -webkit-box-shadow: 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
            box-shadow: 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
  }
  12% {
    -webkit-box-shadow: 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
            box-shadow: 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
  }
  25% {
    -webkit-box-shadow: 110px 0 #7963e0, 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
            box-shadow: 110px 0 #7963e0, 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0), 0px 0 rgba(121, 99, 224, 0);
  }
  36% {
    -webkit-box-shadow: 120px 0 #7963e0, 110px 0 #7963e0, 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0);
            box-shadow: 120px 0 #7963e0, 110px 0 #7963e0, 100px 0 #7963e0, 0px 0 rgba(121, 99, 224, 0);
  }
  50% {
    -webkit-box-shadow: 130px 0 #7963e0, 120px 0 #7963e0, 110px 0 #7963e0, 100px 0 #7963e0;
            box-shadow: 130px 0 #7963e0, 120px 0 #7963e0, 110px 0 #7963e0, 100px 0 #7963e0;
  }
  62% {
    -webkit-box-shadow: 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0, 120px 0 #7963e0, 110px 0 #7963e0;
            box-shadow: 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0, 120px 0 #7963e0, 110px 0 #7963e0;
  }
  75% {
    -webkit-box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0, 120px 0 #7963e0;
            box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0, 120px 0 #7963e0;
  }
  87% {
    -webkit-box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0;
            box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 130px 0 #7963e0;
  }
  100% {
    -webkit-box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0);
            box-shadow: 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0), 200px 0 rgba(121, 99, 224, 0);
  }
}
#bx-overlay {
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: #fff;
  z-index: 99;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#bx-overlay .loader {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  color: #7963e0;
  left: -100px;
  -webkit-animation: shadowRolling 2s linear infinite;
          animation: shadowRolling 2s linear infinite;
}

/* Header */
#top-menu li.active a {
  color: #7963e0;
}

.bx-static {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  position: absolute;
  z-index: 30;
  padding: 10px 0;
}

.bx-fixed {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  position: fixed;
  background-color: rgba(255, 255, 255, 0.95) !important;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.12);
  z-index: 30;
}

.bx-dark {
  background-color: #1d1a29 !important;
}

@media (min-width: 1024px) {
  #mobile-menu {
    display: block !important;
  }
}
@media (max-width: 1024px) {
  #mobile-menu {
    display: none;
  }
}
/* Pages */
/* home-page */
#scrollup.show {
  visibility: visible;
}

#scrollup {
  visibility: hidden;
}

/* portfolio */
.portfolio-tabs ul .active {
  color: #7963e0 !important;
}

.portfolio-img .bottom-contain {
  display: none;
}
.portfolio-img:hover .bottom-contain {
  display: block;
}
.portfolio-img:hover .top-contain {
  display: none;
}


        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
        }

        .particle-container {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none;
            overflow: hidden;
        }

        .particle {
            position: absolute;
            background: #7963e0;
            border-radius: 50%;
            opacity: 0.6;
            animation: float 6s ease-in-out infinite;
        }

        .particle.binary {
            background: none;
            color: #7963e0;
            font-family: 'Courier New', monospace;
            font-size: 12px;
            font-weight: bold;
            animation: matrixFall 8s linear infinite;
        }

        .particle.code {
            background: none;
            color: #00ff41;
            font-family: 'Courier New', monospace;
            font-size: 10px;
            animation: codeScroll 10s linear infinite;
            opacity: 0.4;
        }

        .particle.glow {
            background: radial-gradient(circle, #7963e0 0%, transparent 70%);
            border-radius: 50%;
            animation: pulse 3s ease-in-out infinite;
        }

        .particle.network {
            width: 2px;
            height: 2px;
            background: #7963e0;
            box-shadow: 0 0 10px #7963e0;
            animation: networkPulse 4s ease-in-out infinite;
        }

        @keyframes float {
            0%, 100% { transform: translateY(0px) translateX(0px); }
            25% { transform: translateY(-20px) translateX(10px); }
            50% { transform: translateY(-10px) translateX(-15px); }
            75% { transform: translateY(-25px) translateX(5px); }
        }

        @keyframes matrixFall {
            0% { 
                transform: translateY(-100px);
                opacity: 0;
            }
            10% { opacity: 1; }
            90% { opacity: 1; }
            100% { 
                transform: translateY(100vh);
                opacity: 0;
            }
        }

        @keyframes codeScroll {
            0% { 
                transform: translateX(-100px);
                opacity: 0;
            }
            10% { opacity: 0.4; }
            90% { opacity: 0.4; }
            100% { 
                transform: translateX(100vw);
                opacity: 0;
            }
        }

        @keyframes pulse {
            0%, 100% { 
                opacity: 0.3;
                transform: scale(1);
            }
            50% { 
                opacity: 0.8;
                transform: scale(1.2);
            }
        }

        @keyframes networkPulse {
            0%, 100% { 
                opacity: 0.3;
                box-shadow: 0 0 5px #7963e0;
            }
            50% { 
                opacity: 1;
                box-shadow: 0 0 20px #7963e0;
            }
        }

        .hero-bg {
            background: linear-gradient(135deg, #161321 0%, #1a1627 50%, #161321 100%);
            position: relative;
        }

        .hero-bg::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: radial-gradient(ellipse at 30% 50%, rgba(121, 99, 224, 0.1) 0%, transparent 50%),
                        radial-gradient(ellipse at 70% 80%, rgba(121, 99, 224, 0.08) 0%, transparent 50%);
            pointer-events: none;
        }

        .text-glow {
            text-shadow: 0 0 20px rgba(121, 99, 224, 0.5);
        }

        .btn-glow {
            box-shadow: 0 0 20px rgba(121, 99, 224, 0.4);
            transition: all 0.3s ease;
        }

        .btn-glow:hover {
            box-shadow: 0 0 30px rgba(121, 99, 224, 0.8);
            transform: translateY(-2px);
        }

        @media (max-width: 768px) {
            .particle {
                display: none;
            }
            .particle.binary {
                display: block;
            }
        }