@font-face {
    font-family: nunito;
    src: url('../fonts/Nunito/Nunito-Regular.ttf');
    font-weight: 400;
}

body.main {
    background-color: #0D1015;
    color: #ffffff;
}

body.sponsor {
    background-color: #1f56b5;
    color: #ffffff;
}

a {
    color: #3081F7;
    text-decoration: none;
}

hr {
    border: none;
    border-top: 5px solid #1f56b5;
}


/* navbar */

.navbar-main {
    background-color: #0D1015;
    padding: 15px 0;
}

.navbar-main .navbar-brand {
    max-width: 180px;
}

.navbar-main .nav-link {
    color: #ffffff;
}

.navbar-main .navbar-collapse>.btn {
    margin-left: auto;
}

.btn-outline-light {
    color: #ffffff;
    border-color: #ffffff;
}

.btn-outline-light:hover {
    background-color: #ffffff;
    border-color: #ffffff;
    color: black; /* Change text color to black on hover */
}

/* Add this to specifically target the anchor tag within the button */
.btn-outline-light:hover .pre-reg-link {
    color: black; /* Ensure the link inside the button also turns black on hover */
}

/* home banner */


.home-banner-wrap {
    padding: 70px 0 30px;

}

.home-banner-content.row {
    position: relative;
    margin: 0;
}

.home-banner-content:before {
    content: "";
    position: absolute;
    width: 3px;
    height: 100%;
    top: 0;
    left: 0;
    background-image: linear-gradient(#71bdf7, #1f56b5 50%, #196c2e );
}

.home-banner-content-main {
    padding: 70px 50px 50px;
    position: relative;
    margin-bottom: 20px;
}

.home-banner-content-main h2 {
    font-size: 70px;
    font-weight: bold;
}

.home-banner-content-main .date {
    color: #7E858F;
    font-size: 26px;
    font-weight: 500;
    margin-bottom: 30px;
}

.home-banner-content-main .social {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 30px;
    align-items: center;
}

.home-banner-content-main .input-group {
    max-width: 400px;
    position: relative;
}

.home-banner-content-main .input-group:after {
    content: "";
    position: absolute;
    height: 100%;
    top: 0;
    right: -16px;
    border-right: 1px solid #ffffff;
    opacity: 0.2;
}

.btn-primary {
    background-color: #1f56b5;
    border-color: #1f56b5;
}


.btn-primary:hover {
    background-color: #3ea9f0;
    border-color: #3ea9f0;
}

.home-banner-content-main .social>ul {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    align-items: center;
    margin: 0;
}

.home-banner-content-main .social>ul img {
    height: 35px;
}

.home-banner-content-snp {
    padding: 40px 100px 70px 50px;
    position: relative;
}

.home-banner-content-snp:before {
    content: "";
    position: absolute;
    width: 3px;
    /*height: 50px;
    top: -25px;*/
    left: 0;
    background-color: #0d1015;
}

.home-banner-content-snp .title {
    color: #7E858F;
    font-size: 22px;
    margin-bottom: 30px;
}

.home-banner-content-snp img {
    max-height: 50px;
    padding-right: 40px;
    padding-top: 10px;
    margin-bottom: 15px;
    opacity: 1;
}

.second-row {
    padding-top: 20px;
}

.scaled-image {
    max-width: 180px;
    padding-right: 10px;
    padding-top: 10px;
    opacity: 1;
}


.home-banner-sponsor-logo {
    height: 50px;
    width: auto;
}

/* about (quickfacts) */

.home-about-wrap {
    padding: 50px 0;
}

.home-about-content {
    position: relative;
    padding: 70px 50px 40px;
}

.home-about-content:before {
    content: "";
    position: absolute;
    width: 3px;
    height: 100%;
    top: -100px;
    left: 0;
    /* background-image: linear-gradient(#d2a8ff, rgb(114, 52, 172), rgb(113, 5, 59)) */
    background-image: linear-gradient(#196c2e, #2ea043, #56d364, #ea6045);
}

.home-about-wrap h2 {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 50px;
}

.home-about-item {
    border: 2px solid #1f56b5;
    border-radius: 0.375rem;
    padding: 25px;
    font-size: 18px;
    margin-bottom: 30px;
    background-color: rgba(53, 59, 66, 0.794);
}

.home-about-item h5 {
    font-weight: bold;
    margin-bottom: 15px;
}

/* details (about) */

.home-details-wrap {
    padding: 50px 0;
}

.home-details-wrap h2 {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 50px;
}

.home-details-content {
    position: relative;
    padding: 30px 50px;
}

.home-details-content:before {
    content: "";
    position: absolute;
    width: 3px;
    height: 100%;
    top: -200px;
    left: 0;
    background-image: linear-gradient(#ea6045, #ffa28b, #56d364, #2ea043);
}

/* tracks */

.home-tracks-container {
    padding-right: 20px;
    font-size: 18px;
    margin-bottom: 30px;
    align-content: center;
    align-items: center;
}

.home-tracks-item-1{
    border: 2px solid green;
    /* border-radius: 0.375rem; */
    padding: 25px;
    margin-bottom: 30px;
    justify-content: center;
    background-color: rgba(53, 59, 66, 0.794);

}

.home-tracks-item-2{
    border: 2px solid #3081F7  ;
    /* border-radius: 0.375rem; */
    padding: 25px;
    margin-bottom: 30px;
    justify-content: center;
    background-color: rgba(53, 59, 66, 0.794);

}
.home-tracks-item-3{
    border: 2px solid pink;
    /* border-radius: 0.375rem; */
    padding: 25px;
    margin-bottom: 30px;
    justify-content: center;
    background-color: rgba(53, 59, 66, 0.794);

}

.home-tracks-arrow-placeholder{
    height: 40px;
    width: 40px;
}


/* schedule */

.home-schedule-wrap {
    /*background-color: #161B22;*/
    padding: 50px 0;
}

.home-schedule-wrap h2 {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 50px;
}

.home-schedule-content {
    position: relative;
    padding: 70px 50px;
}

.home-schedule-content:before {
    content: "";
    position: absolute;
    width: 3px;
    height: 100%;
    top: -300px;
    left: 0;
    background-image: linear-gradient(#2ea043, #196c2e 50%, #a371f7);
}

.home-schedule-item h6 {
    font-weight: bold;
    text-align: center;
    margin-bottom: 15px;
}

.home-schedule-item .table {
    background-color: rgba(235, 245, 255, 0.1);
    border-radius: 0.375rem;
    overflow: hidden;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.9);
}

.home-schedule-item .table>:not(caption)>*>* {
    padding: 8px 20px;
    font-weight: 500;
}

.home-schedule-item .table>thead>tr>th {
    text-transform: uppercase;
    font-weight: bold;
}

.home-schedule-item .table>tbody>tr>td:first-child {
    width: 130px;
}

.home-schedule-item .table>thead>tr {
    background-color: rgba(235, 245, 255, 0.05);
}

.home-schedule-item .table>tbody>tr:nth-of-type(even)>* {
    background-color: rgba(235, 245, 255, 0.05);
}

.home-schedule-item .table>tbody>tr:nth-of-type(odd)>* {
    box-shadow: none;
    color: inherit;
}

/* prizes */

.home-team-wrap {
    padding: 50px 0;
}

.home-team-wrap h2 {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 50px;
}

.home-team-content {
    position: relative;
    padding: 70px 50px;
}

.home-team-content:before {
    content: "";
    position: absolute;
    width: 3px;
    height: 100%;
    top: -400px;
    left: 0;
    background-image: linear-gradient(#a371f7, #d2a8ff, rgb(114, 52, 172));
}

.home-team-wrap h2 {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 50px;
}

.home-team-item {
    /* border: 2px solid #570C5A; */
    /* background-color: rgba(105, 53, 156, 0.00); */
    /* border-radius: 0.375rem; */
    padding: 25px;
    font-size: 18px;
    margin-bottom: 30px;
}

.home-team-item img {
    max-width: 180px;
    max-height: 180px;
    margin-bottom: 15px;
}

/* faq */

.home-faq-wrap {
    padding: 50px 0;
}

.home-faq-wrap h2 {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 50px;
}

.home-faq-content {
    position: relative;
    padding: 70px 50px;
}

.home-faq-content:before {
    content: "";
    position: absolute;
    width: 3px;
    height: 1000px;
    top: -500px;
    left: 0;
    background-image: linear-gradient(rgb(114, 52, 172), rgb(113, 5, 59));
}

.home-faq-item .card {
    background-color: rgba(235, 245, 255, 0.1);
    border: 1;
    border-color: #1f56b5;
    margin-bottom: 20px;
}

.home-faq-item .card-header {
    padding: 0 20px;
    border-bottom: 0;
}

.home-faq-item .card-header a {
    padding: 12px 0;
    display: block;
    color: #ffffff;
    font-weight: bold;
    text-align: left;
    border-bottom: 1px solid rgba(235, 245, 255, 0.2);
    border-radius: 0;
}

.home-faq-item .card-header a.collapsed {
    border-color: transparent;
}

.home-faq-item .card-body {
    padding: 15px 20px;
}

/* sponsor */

.sponsor-waiting-wrap {
    padding: 50px 0 50px;


}

.sponsor-waiting-content {
    position: relative;
}

.sponsor-waiting-content-main {
    padding: 70px 50px 50px;
    position: relative;
    margin-bottom: 20px;
    text-align: center;
}

.sponsor-waiting-content-main h2 {
    font-size: 70px;
    font-weight: bold;
}

.sponsor-waiting-content-main p {
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 30px;
}

.sponsor-waiting-content-secondary {
    padding: 50px 50px 50px;
    position: relative;
    margin-bottom: 20px;
    text-align: center;
}

.sponsor-waiting-content-secondary p {
    font-size: 20px;
    margin-bottom: 50px;

}

.pdf-iframe-container iframe {
    width: 100%;
    height: 900px;
    border: none;
  }
  
/* Styles for mobile fallback component */
.mobile-fallback {
display: none;
}

/*gallery styles */
.owl-nav .owl-prev, .owl-nav .owl-next {
  position: absolute;
  top: calc(50% - 15px);
  background: linear-gradient(#71bdf7, #1f56b5 80%, #196c2e ) !important;
  color: #fff !important;
  width: 30px;
  height: 30px;
  line-height: 15px !important;
  border-radius: 50% !important;
  text-align: center;
  transition: all 0.3s ease;
  box-shadow: 0 3px 10px rgba(0,0,0,0.25);
  margin: 0 !important;
}
.owl-nav .owl-prev {
  left: -15px;
}
.owl-nav .owl-next {
  right: -15px;
}
.owl-nav span{
    font-size: 30px;
}
.owl-nav .owl-prev:hover, .owl-nav .owl-next:hover {
  background: #3081F7 !important;
  color: #fff !important;
}
.gallery-wrap{
    padding: 100px 0 50px;
  position: relative;
  margin-bottom: 20px;
}
.gallery-wrap .item{
    overflow: hidden;
}
.gallery-wrap a{
    background-color: transparent;
    width: 100%; 
    height: 270px;
    text-align: center;
    display: block;
    border-radius: 2px;
    overflow: hidden;
}
.gallery-wrap img{
    height: 270px;
    width: auto !important;
    overflow: hidden;
    margin: 0 auto;
}

/* Media query for small screens */
@media screen and (max-width: 768px) {
.gallery-wrap{
    padding: 0;
    width: calc(100% - 40px);
    margin: 0 20px;
}
.gallery-wrap img{
    height: 270px;
    width: 100%;
}

/* Hide iframe on small screens */
.pdf-iframe-container iframe {
    display: none;
}

/* Show mobile fallback on small screens */
.mobile-fallback {
    display: block;
}
}


@media (max-width: 991px) {

    .home-banner-content-main,
    .home-banner-content-snp,
    .home-about-content,
    .home-schedule-content,
    .home-faq-content,
    .home-details-content,
    .sponsor-waiting-content-main {
        padding-left: 40px;
        padding-right: 40px;
    }

    .home-banner-content-main h2,
    .sponsor-waiting-content-main h2 {
        font-size: 50px;
    }

    .sponsor-waiting-content-main p {
        font-size: 25px;
    }

}

@media (max-width: 767px) {

    .home-banner-content-main,
    .home-banner-content-snp,
    .home-about-content,
    .home-details-content,
    .home-schedule-content,
    .home-faq-content,
    .sponsor-waiting-content-main {
        padding: 50px 30px;
    }

    .home-banner-content-main h2,
    .sponsor-waiting-content-main h2 {
        font-size: 40px;
    }

    .home-banner-content-main .date {
        font-size: 22px;
    }

    .home-banner-content-snp {
        padding: 30px 30px 50px;
    }

    .home-banner-content-main .input-group,
    .sponsor-waiting-content-main .input-group {
        flex-direction: column;
        gap: 10px;
    }

    .home-banner-content-main .input-group:after {
        display: none;
    }

    .home-banner-content-main .input-group>*,
    .sponsor-waiting-content-main .input-group>* {
        border-radius: 0.375rem !important;
    }

    .home-banner-content-main .input-group>.form-control,
    .sponsor-waiting-content-main .input-group>.form-control {
        width: 100%;
    }

    .home-details-wrap h2,
    .home-about-wrap h2,
    .home-schedule-wrap h2,
    .home-faq-wrap h2,
    .sponsor-waiting-content-main p {
        font-size: 20px;
    }

    .navbar-main .navbar-brand {
        padding-top: 10px;
    }
}