@import url('https://fonts.googleapis.com/css2?family=Black+Ops+One&family=Caveat:wght@400..700&family=Dancing+Script:wght@400..700&family=Finlandica+Text:ital,wght@0,100..900;1,100..900&family=Newsreader:ital,opsz,wght@0,6..72,200..800;1,6..72,200..800&family=Outfit:wght@100..900&family=Quicksand:wght@300..700&family=Sansita+Swashed:wght@300..900&family=VT323&display=swap');
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{
    background:black;
    overflow-x:hidden;
}

.first{

    background-image:url(./images/net1.jpg);
   width: 100%;
   height: 100vh;
   background:linear-gradient(rgba(0, 0, 0, 0.812),rgba(0,0,0,0.5)),url(./images/net1.jpg);
}

/* ==========================
        HEADER
========================== */

header{
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 20px 0;

    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Logo */

header img{
    width: 170px;
}

/* Right Side */

#hd{
    display: flex;
    align-items: center;
    gap: 15px;
}

/* Language Selector */

.language-box{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    height: 42px;
    padding: 0 12px;

    border: 1px solid gray;
    border-radius: 4px;

    background: rgba(0,0,0,0.4);
}

.language-box i{
    color: white;
    font-size: 16px;
}

#lang{
    background: transparent;
    color: white;
    border: none;
    outline: none;
    cursor: pointer;
    font-size: 15px;
}

#lang option{
    color: black;
}

/* Sign In Button */

.signin-btn{
    height: 42px;
    padding: 0 18px;

    border: none;
    border-radius: 4px;

    background: #e50914;
    color: white;

    font-size: 15px;
    font-weight: bold;

    cursor: pointer;
    transition: 0.3s;
}

.signin-btn:hover{
    background: #c11119;
}

/* ==========================
          HERO
========================== */

.hero{
    min-height: 80vh;

    display: flex;
    flex-direction: column;

    justify-content: center;
    align-items: center;

    text-align: center;
    color: white;
}

.hero h1{
    font-size: 64px;
    font-weight: 900;
    line-height: 1.1;
}

.hero h3{
    margin-top: 20px;
    font-size: 24px;
    font-weight: 500;
}

.hero p{
    margin-top: 25px;
    font-size: 18px;
}

/* Email Section */

.email-box{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;

    margin-top: 30px;
}

.email-box input{
    width: 380px;
    height: 56px;

    padding-left: 15px;

    background: rgba(0,0,0,0.5);
    border: 1px solid gray;

    color: white;
    font-size: 17px;
}

.email-box input::placeholder{
    color: #ccc;
}

.start-btn{
    width: 220px;
    height: 56px;

    background: #e50914;
    color: white;

    border: none;
    border-radius: 4px;

    font-size: 22px;
    font-weight: bold;

    cursor: pointer;
    transition: 0.3s;
}

.start-btn:hover{
    background: #c11119;
}

/* ==========================
          TABLET
========================== */

@media (max-width:992px){

    header{
        padding: 20px;
    }

    header img{
        width: 140px;
    }

    #hd{
        gap: 12px;
    }

    .language-box{
        height: 40px;
        padding: 0 10px;
    }

    .signin-btn{
        height: 40px;
        padding: 0 16px;
    }

    .hero h1{
        font-size: 48px;
    }

    .hero h3{
        font-size: 22px;
    }

    .hero p{
        font-size: 16px;
    }

    .email-box input{
        width: 300px;
    }

    .start-btn{
        width: 190px;
    }
}

/* ==========================
          MOBILE
========================== */

@media (max-width:768px){

    .first{
        padding: 20px;
    }

    header{
        padding: 15px 0;
    }

    header img{
        width: 110px;
    }

    #hd{
        gap: 10px;
    }

    .language-box{
        height: 38px;
        padding: 0 10px;
    }

    #lang{
        width: 70px;
        font-size: 14px;
    }

    .signin-btn{
        height: 38px;
        padding: 0 14px;
        font-size: 14px;
    }

    .hero{
        min-height: 70vh;
    }

    .hero h1{
        font-size: 36px;
    }

    .hero h3{
        font-size: 18px;
    }

    .hero p{
        width: 90%;
        font-size: 15px;
    }

    .email-box{
        flex-direction: column;
        width: 100%;
    }

    .email-box input,
    .start-btn{
        width: 100%;
        max-width: 500px;
    }
}

/* ==========================
        SMALL MOBILE
========================== */

@media (max-width:480px){

    header{
        padding: 10px 0;
    }

    header img{
        width: 90px;
    }

    #hd{
        gap: 8px;
    }

    .language-box{
        height: 36px;
        padding: 0 8px;
    }

    #lang{
        width: 60px;
        font-size: 13px;
    }

    .signin-btn{
        height: 36px;
        padding: 0 10px;
        font-size: 13px;
    }

    .hero h1{
        font-size: 30px;
    }

    .hero h3{
        font-size: 16px;
    }

    .hero p{
        font-size: 14px;
    }

    .email-box input{
        height: 50px;
        font-size: 15px;
    }

    .start-btn{
        height: 50px;
        font-size: 18px;
    }
}

 .curve {
    position: relative;
}

.curve::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    

    background: linear-gradient(
        to right,
        transparent,
        red 20%,
        red 80%,
        transparent
    );
    border-radius: 0 0 50% 50% / 0 0 100% 100%;
}


.second{
    background:#000;
    padding:60px 5%;
}

.trending-title{
    color:#fff;
    margin-bottom:30px;
    font-size:30px;
}

#movieCarousel{
    width:100%;
    margin:auto;
}

/* One row inside each slide */

.movie-row{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
}

/* Movie Card */

.movie-row .card{
    width: 180px;
    flex-shrink: 0;
    background: transparent;
    border: none;
    position: relative;
    transition: transform 0.3s;
}

.movie-row .card img{
    width: 100%;
    height: 260px;      /* Same height for every image */
    object-fit: cover;  /* Crops images to fill the box */
    border-radius: 10px;
}

.movie-row .card:hover{
    transform:scale(1.08);
}

.movie-row img{
    width:100%;
    border-radius:10px;
}

.movie-number{
    position:absolute;
    left:-15px;
    bottom:-20px;

    font-size:80px;
    font-weight:900;

    color:black;
    -webkit-text-stroke:2px white;
}



.carousel-control-prev,
.carousel-control-next{
    width:6%;
}

/* --- Tablet --- */

@media(max-width:992px){

    .movie-row .card{
        width:150px;
    }

    .movie-row .card img{
        height:220px;
    }

    .movie-number{
        font-size:60px;
    }
}

/* --- Mobile --- */

@media(max-width:768px){

    .second{
        padding:40px 20px;
    }

    .trending-title{
        font-size:24px;
        text-align:center;
    }

    .movie-row{
        gap:10px;
    }

    .movie-row .card{
        width:120px;
    }

    .movie-row .card img{
        height:180px;
    }

    .movie-number{
        font-size:40px;
        left:-8px;
        bottom:-10px;
    }

    .carousel-control-prev,
    .carousel-control-next{
        width:8%;
    }
}

/* --- Small Mobile --- */

@media(max-width:480px){

   .movie-row .card{
        width:90px;
    }

    .movie-row .card img{
        height:140px;
    }
}

.third{
    background: #000;
    padding: 60px 8%;
}

.join-title{
    color: white;
    font-size: 32px;
    margin-bottom: 30px;
}


.join-container{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.join-card{
    background: linear-gradient(135deg,
                rgba(38,5,170,.7),
                rgba(56,2,104,.8));

    color: white;
    border-radius: 15px;

    padding: 25px;

    display: flex;
    flex-direction: column;

    min-height: 340px;

    transition: 0.3s;
}

.join-card:hover{
    transform: translateY(-8px);
}

.join-card h3{
    font-size: 24px;
    margin-bottom: 20px;
}

.join-card p{
    font-size: 16px;
    line-height: 1.6;
    color: #ddd;

    flex-grow: 1;
}
.join-card img{
    width: 70px;
    margin-top: 20px;
    align-self: flex-end;
}

/* tablet */

@media (max-width: 992px){

    .join-container{
        grid-template-columns: repeat(2, 1fr);
    }

    .join-card{
        min-height: 300px;
    }

    .join-card h3{
        font-size: 22px;
    }

    .join-card p{
        font-size: 15px;
    }

    .join-card img{
        width: 60px;
    }
}

/* mobile */

@media (max-width: 768px){

    .third{
        padding: 40px 20px;
    }

    .join-title{
        font-size: 26px;
        text-align: center;
    }

    .join-container{
        grid-template-columns: 1fr;
    }

    .join-card{
        min-height: auto;
    }

    .join-card h3{
        font-size: 20px;
    }

    .join-card p{
        font-size: 15px;
    }

    .join-card img{
        width: 55px;
    }
}

/* small mobile */

@media (max-width: 480px){

    .third{
        padding: 30px 15px;
    }

    .join-title{
        font-size: 22px;
    }

    .join-card{
        padding: 20px;
    }

    .join-card h3{
        font-size: 18px;
    }

    .join-card p{
        font-size: 14px;
    }

    .join-card img{
        width: 50px;
    }
}

#fourth{
    padding: 70px 20px;
    background-color: #000;
}

#fourth h1{
    color: white;
    text-align: center;
    font-size: 48px;
    margin-bottom: 30px;
}

.faq-container{
    width: 80%;
    max-width: 1000px;
    margin: auto;
}

.faq-item{
    display: flex;
    justify-content: space-between;
    align-items: center;

    text-decoration: none;
    color: white;

    background: #2d2d2d;

    padding: 24px;
    margin-bottom: 8px;

    font-size: 24px;

    transition: 0.3s;
}

.faq-item:hover{
    background: #414141;
}

.plus{
    font-size: 50px;
    font-weight: 300;
}

/* Tablet */

@media(max-width:992px){

    #fourth h1{
        font-size:40px;
    }

    .list-group{
        width:90%;
    }

    .faq-item{
        font-size:22px;
        padding:22px;
    }

    .plus{
        font-size:45px;
    }
}

/* Mobile */

@media(max-width:768px){

    #fourth{
        background-color: #000;
        padding:50px 15px;
    }

    #fourth h1{
        font-size:32px;
    }

    .list-group{
        width:100%;
    }

    .faq-item{
        font-size:18px;
        padding:18px;
    }

    .plus{
        font-size:35px;
    }
}

/* Small Mobile */

@media(max-width:480px){

    #fourth h1{
        font-size:28px;
    }

    .faq-item{
        font-size:16px;
        padding:16px;
    }

    .plus{
        font-size:30px;
    }
}

#fifth{
    width:100%;
    background:black;
    color:white;

    padding:70px 20px;

    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
}

#fifth h5{
    font-size:20px;
    font-weight:400;
    margin-bottom:25px;
}

.email-container{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;

    width:100%;
    max-width:700px;
}

#mail2{
    flex:1;
    height:56px;

    background:rgba(0,0,0,.6);

    border:1px solid gray;

    color:white;

    padding:15px;

    font-size:17px;
}

#mail2::placeholder{
    color:#b3b3b3;
}

#bt2{
    width:220px;
    height:56px;

    background:#e50914;
    color:white;

    border:none;

    border-radius:4px;

    font-size:22px;
    font-weight:bold;

    cursor:pointer;

    transition:.3s;
}

#bt2:hover{
    background:#c11119;
}

#fifth p{
    width:80%;
    max-width:900px;

    margin-top:30px;

    color:#b3b3b3;

    font-size:15px;
    line-height:1.7;
}
/* tablet */
@media(max-width:992px){

    #fifth{
        padding:60px 20px;
    }

    #fifth h5{
        font-size:18px;
    }

    #bt2{
        width:190px;
        font-size:20px;
    }
}
/* mobile */
@media(max-width:768px){

    #fifth{
        padding:50px 15px;
    }

    #fifth h5{
        font-size:16px;
    }

    .email-container{
        flex-direction:column;
        max-width:500px;
    }

    #mail2{
        width:100%;
    }

    #bt2{
        width:100%;
        font-size:20px;
    }

    #fifth p{
        width:95%;
        font-size:14px;
    }
}

/* small mobile */
@media(max-width:480px){

    #fifth h5{
        font-size:15px;
    }

    #mail2{
        height:50px;
        font-size:15px;
    }

    #bt2{
        height:50px;
        font-size:18px;
    }

    #fifth p{
        font-size:13px;
    }
}


.footer{
    background: #000;
    color: #b3b3b3;
    padding: 60px 8%;
}

.contact{
    font-size: 17px;
    margin-bottom: 35px;
}

.contact a{
    color: #b3b3b3;
}

.contact a:hover{
    color: white;
}

.footer-links{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-bottom: 40px;
}

.footer-column{
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.footer-column a{
    color: #b3b3b3;
    font-size: 15px;
    text-decoration: underline;
}

.footer-column a:hover{
    color: white;
}

.language-box{
    display: inline-flex;
    align-items: center;
    gap: 10px;

    border: 1px solid gray;
    border-radius: 4px;

    padding: 10px 18px;

    margin-bottom: 35px;
}

.language-box i{
    color: white;
}

.language-box select{
    background: transparent;
    color: white;
    border: none;
    outline: none;
    cursor: pointer;
}

.language-box option{
    color: black;
}

.country{
    margin-bottom: 35px;
    font-size: 15px;
}

.captcha{
    max-width: 650px;
    font-size: 14px;
    color: #8c8c8c;
    line-height: 1.6;
}

.captcha a{
    color: #448ef4;
}

.captcha a:hover{
    text-decoration: underline;
}

/* tablet */

@media (max-width: 992px){

    .footer{
        padding: 50px 6%;
    }

    .footer-links{
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }

    .contact{
        font-size: 16px;
    }
}

/* mobile */

@media (max-width: 768px){

    .footer{
        padding: 40px 20px;
    }

    .footer-links{
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .contact{
        font-size: 15px;
    }

    .footer-column a{
        font-size: 14px;
    }

    .language-box{
        padding: 8px 14px;
    }

    .country{
        font-size: 14px;
    }

    .captcha{
        font-size: 13px;
    }
}

/* small mobile */

@media (max-width: 480px){

    .footer{
        padding: 30px 15px;
    }

    .contact{
        font-size: 14px;
    }

    .footer-column a{
        font-size: 13px;
    }

    .language-box{
        width: 140px;
        justify-content: center;
    }

    .country{
        font-size: 13px;
    }

    .captcha{
        font-size: 12px;
    }
}