.custom-hero-bg,
.custom-hero-bg svg {
    width: 100vw;
    height: 100vh;
}
.custom-hero-bg,
.custom-hero-bg:after,
.custom-hero-heading {
    bottom: 0;
    right: 0;
    position: absolute;
}
.body {
    max-width: 100vw;
    overflow-x: hidden;
}
@media (min-width: 1440px) {
    .container {
        max-width: 1440px !important;
    }
}
@media (min-width: 992px) {
    #header .header-nav-main nav > ul > li > a {
        font-weight: 500;
        font-size: 16px;
        padding-left: 1.3rem !important;
        padding-right: 1.3rem !important;
    }
    .custom-grid-1 .container .row > :first-child,
    .custom-grid-1 .container .row > :nth-child(3),
    .custom-grid-1 .container .row > :nth-child(6),
    .custom-grid-1 .container .row > :nth-child(8) {
        background-color: var(--grey-100);
    }
}
@media (max-width: 1280px) {
    #header .header-nav-main nav > ul > li > a {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}
.custom-font-size-1 {
    font-size: clamp(28px, 4px + 0.05 * 100vw, 64px);
    line-height: 1.1;
}
.custom-hero-bg {
    top: 0;
    left: 0;
    transition: opacity 0.3s;
}
.custom-hero-bg:after {
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0.8;
    background-color: #0f2923;
}
.custom-hero-bg.loaded {
    opacity: 0.4;
}
.custom-hero-font-1 {
    font-size: clamp(28px, 0px + 0.0583333333 * 100vw, 70px);
    line-height: 1.1;
}
.custom-hero-heading {
    width: 100%;
    text-align: right;
    -webkit-mask-image: linear-gradient(to bottom, black 0%, rgba(0, 0, 0, 0) 100%);
    mask-image: linear-gradient(to bottom, black 0%, rgba(0, 0, 0, 0) 100%);
}
.custom-hero-heading strong {
    text-transform: uppercase;
    font-size: 13cqw;
    line-height: 13cqw;
}

.custom-hero-heading2 {
    width: 100%;
    text-align: right;
}
.custom-hero-heading2 img {
    width: 100%;
    height: 100%;
    max-height: 500px;
    object-fit: contain;
}

.page-header .custom-hero-bg,
.page-header .custom-hero-bg svg {
    height: 500px;
}
@keyframes arrowMove {
    0%,
    100% {
        margin-top: 0;
    }
    50% {
        margin-top: -30px;
    }
}
.custom-el-1,
.custom-el-2 {
    opacity: 0.1;
    align-items: center;
    display: flex;
    justify-content: center;
    flex-direction: column;
    animation: 3s linear infinite arrowMove;
}
.custom-el-1 img {
    margin-bottom: -100px;
}
.custom-el-pos-1 {
    top: 55%;
    left: -60px;
}
.custom-el-2 img {
    margin-bottom: -47px;
}
.custom-el-pos-2 {
    top: 80%;
    right: -30px;
}
.custom-el-3 {
    width: 100%;
    height: 100%;
    max-width: 220px;
    max-height: 220px;
    min-height: 220px;
    position: relative;
    overflow: hidden;
}
.custom-el-3 .custom-el-3-img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.custom-el-3 .custom-el-3-img img {
    transition: transform 2s;
    will-change: transform;
}
.custom-el-3-pos-1 {
    top: 30%;
    z-index: 1;
}
.custom-el-3-pos-2 {
    top: -30%;
}
.custom-el-4-pos {
    margin-top: -15px;
}
.custom-el-pos-5 {
    left: -60px;
    top: 35%;
}
.custom-marquee-1 .js-marquee,
.custom-marquee-1 .js-marquee-wrapper,
.custom-marquee-1 .js-marquee > span {
    display: flex;
}
.custom-avatar-1 {
    width: 70px;
    height: 70px;
    position: relative;
}
.custom-avatar-1-info {
    position: absolute;
    top: -30px;
    text-align: center;
    font-size: 12px;
    white-space: nowrap;
    letter-spacing: -0.5px;
    font-weight: 600;
    margin-left: -15px;
    opacity: 0.5;
}
.custom-grid-1,
.custom-grid-1 .custom-grid-1-item {
    position: relative;
}
.custom-avatar-1-info .animated-icon {
    transform: rotate(120deg);
    float: left;
    margin-right: 5px;
}
.custom-popover-1 {
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -1px;
}
.custom-btn-1 {
    width: 200px;
    height: 200px;
    line-height: 190px;
    border-radius: 100%;
    white-space: nowrap;
}
.custom-grid-1 {
    margin-top: -70px;
}
.custom-grid-1 .container {
    margin: 0 auto;
}
.custom-grid-1 .container .row {
    margin: 0;
}
.custom-grid-1 .container .row > * {
    padding: 0;
    background-color: var(--light);
    min-height: 220px;
    align-items: center;
    overflow: hidden;
}
@media (max-width: 991px) {
    .custom-hero-heading {
        bottom: 80px;
    }
    .custom-grid-1 .container .row > * {
        border: 1px solid var(--grey-100);
    }
}

@media (max-width: 991px) {
    .ban-cont-img{
        display: none;
    }
}


/* Line Drop Animation */
.lines {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  margin: auto;
  width: 100vw;
  z-index: -1;
}

.line {
  height: 100vh;
  width: 1.5px;
  position: absolute;
  background: linear-gradient(0deg, rgb(255 255 255 / 0%) 0%, rgb(255 255 255 / 10%) 100%);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  overflow: hidden;
}

/* Positioning for 7 lines */
.line:nth-child(1) { margin-left: -43%; }
.line:nth-child(2) { margin-left: -30.33%; }
.line:nth-child(3) { margin-left: -18.66%; }
.line:nth-child(4) { margin-left: -7%; }
.line:nth-child(5) { margin-left: 5.66%; }
.line:nth-child(6) { margin-left: 16.33%; }
.line:nth-child(7) { margin-left: 27%; }
.line:nth-child(8) { margin-left: 40%; }

/* animation */
.line::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  width: 100%;
  height: 15vh;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #dddddd3d 75%, #dddddd1f 100%);
  animation: run 5s infinite;
  animation-timing-function: cubic-bezier(0.4, 0.26, 0, 0.97);
}

/* Keyframes */
@keyframes run {
  0% { top: -50%; }
  100% { top: 110%; }
}

/* Animation delays for 7 lines */
.lines .line:nth-child(1)::after { animation-delay: 0.05s; }
.lines .line:nth-child(2)::after { animation-delay: 0.15s; }
.lines .line:nth-child(3)::after { animation-delay: 0.25s; }
.lines .line:nth-child(4)::after { animation-delay: 0.35s; }
.lines .line:nth-child(5)::after { animation-delay: 0.45s; }
.lines .line:nth-child(6)::after { animation-delay: 0.55s; }
.lines .line:nth-child(7)::after { animation-delay: 0.65s; }
.lines .line:nth-child(8)::after { animation-delay: 0.75s; }
