@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

:root{
    --primary:#072a6c;
    --secondary:#f7b500;
    --white:#ffffff;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html,
body{
    overflow-x:hidden;
}

body{
    font-family:'Poppins',sans-serif;
    background:#f5f7fb;
    color:#333;
}

/* =========================
   NAVBAR
========================= */

.navbar{
    background:linear-gradient(90deg,#041b4d,#072a6c);
    padding:12px 0;
    box-shadow:0 4px 15px rgba(0,0,0,.15);
}

.navbar-brand{
    color:#fff !important;
    font-size:32px;
    font-weight:800;
}

.navbar-brand span{
    color:var(--secondary);
}

.nav-link{
    color:#fff !important;
    margin-left:15px;
    font-weight:500;
    transition:.3s;
}

.nav-link:hover{
    color:var(--secondary)!important;
}

/*.register-btn{*/
/*    background:var(--secondary);*/
/*    color:#000;*/
/*    padding:10px 22px;*/
/*    border-radius:8px;*/
/*    font-weight:600;*/
/*    text-decoration:none;*/
/*    transition:.3s;*/
/*}*/

/*.register-btn:hover{*/
/*    background:#ffcb36;*/
/*    color:#000;*/
/*}*/

.register-btn {
    display: inline-block;
    background: var(--secondary);
    color: #000;
    padding: 10px 20px;
    border-radius: 8px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
    transition: .3s;
}

.register-btn:hover{
    background:#ffcb36;
    color:#000;
}

/* =========================
   HERO
========================= */

.hero-small{

    background:
    linear-gradient(
        rgba(7,42,108,.92),
        rgba(7,42,108,.92)
    ),
    url('https://images.unsplash.com/photo-1529390079861-591de354faf5?q=80&w=2070&auto=format&fit=crop');

    background-size:cover;
    background-position:center;

    padding:170px 0 100px;

    color:#fff;
    text-align:center;
}

.hero-small h1{
    font-size:56px;
    font-weight:800;
    margin-bottom:15px;
}

.hero-small p{
    font-size:18px;
    max-width:700px;
    margin:auto;
    line-height:1.8;
}

/* =========================
   CARDS
========================= */

.ase-card{
    background:#fff;
    border-radius:20px;
    padding:40px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.success-card{
    background:#fff;
    border-radius:20px;
    padding:50px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

/* =========================
   TITLES
========================= */

.section-title{
    color:var(--primary);
    font-size:2rem;
    font-weight:700;
    margin-bottom:30px;
}

/* =========================
   FORMS
========================= */

.form-label{
    color:var(--primary);
    font-weight:500;
    margin-bottom:8px;
}

.form-control,
.form-select{
    min-height:54px;
    border-radius:12px;
    border:1px solid #d9dee5;
}

textarea.form-control{
    min-height:120px;
    padding-top:12px;
}

.form-control:focus,
.form-select:focus{
    border-color:var(--secondary);
    box-shadow:0 0 0 .2rem rgba(247,181,0,.25);
}

/* =========================
   BUTTONS
========================= */

.btn-ase{
    background:var(--secondary);
    border:none;
    color:#000;
    padding:12px 30px;
    border-radius:10px;
    font-weight:600;
}

.btn-ase:hover{
    background:#ffcb36;
    color:#000;
}

.btn-ase-blue{
    background:var(--primary);
    border:none;
    color:#fff;
    padding:12px 30px;
    border-radius:10px;
    font-weight:600;
}

.btn-ase-blue:hover{
    background:#0d3f99;
    color:#fff;
}

/* =========================
   REGISTRATION ID
========================= */

.reg-id{
    background:#072a6c;
    color:#fff;
    padding:18px;
    border-radius:12px;
    font-size:24px;
    font-weight:700;
    margin:20px 0;
    letter-spacing:1px;
}

/* =========================
   CTA
========================= */

.cta{
    background:linear-gradient(
        135deg,
        var(--secondary),
        #ffd452
    );

    padding:80px 0;
    text-align:center;
}

.cta h2{
    font-size:42px;
    font-weight:800;
    color:#000;
    margin-bottom:15px;
}

.cta p{
    max-width:700px;
    margin:auto;
    margin-bottom:30px;
}

.cta-btn{
    background:var(--primary);
    color:#fff;
    padding:15px 35px;
    border-radius:10px;
    text-decoration:none;
    font-weight:600;
}

.cta-btn:hover{
    color:#fff;
}

/* =========================
   FOOTER
========================= */

footer{
    background:#02163f;
    color:#fff;
    padding:60px 0 20px;
}

footer h4{
    margin-bottom:20px;
    font-weight:700;
}

footer p{
    line-height:1.8;
}

footer a{
    color:#ddd;
    text-decoration:none;
}

.footer-bottom{
    border-top:1px solid rgba(255,255,255,.1);
    margin-top:30px;
    padding-top:20px;
    text-align:center;
}

/* =========================
   TABLET
========================= */

@media(max-width:991px){

    .hero-small{
        padding:140px 0 80px;
        text-align:center;
    }

    .hero-small h1{
        font-size:42px;
    }

    .ase-card{
        padding:30px;
    }

    .success-card{
        padding:35px;
    }

    .navbar-brand{
        font-size:28px;
    }

}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

    .hero-small{
        padding:120px 0 70px;
    }

    .hero-small h1{
        font-size:34px;
        line-height:1.2;
    }

    .hero-small p{
        font-size:16px;
    }

    .ase-card{
        padding:25px;
    }

    .success-card{
        padding:25px;
    }

    .reg-id{
        font-size:18px;
        word-break:break-word;
    }

    .navbar-brand{
        font-size:24px;
    }

}

/* =========================
   SMALL MOBILE
========================= */

@media(max-width:576px){

    .hero-small{
        padding:110px 0 60px;
    }

    .hero-small h1{
        font-size:28px;
    }

    .hero-small p{
        font-size:15px;
    }

    .ase-card{
        padding:20px;
        border-radius:15px;
    }

    .success-card{
        padding:20px;
        border-radius:15px;
    }

    .reg-id{
        font-size:16px;
        padding:12px;
    }

    .btn-ase,
    .btn-ase-blue,
    .btn-primary,
    .btn-success,
    .btn-warning{
        width:100%;
        margin-bottom:10px;
    }

    .form-control,
    .form-select{
        font-size:14px;
    }

}

/* =========================
   EXTRA SMALL MOBILE
========================= */

@media(max-width:380px){

    .hero-small h1{
        font-size:24px;
    }

    .hero-small p{
        font-size:14px;
    }

    .reg-id{
        font-size:14px;
    }

    .success-card{
        padding:15px;
    }

}

/* Navbar buttons */
@media (max-width:991.98px){

    .navbar-nav{
        text-align:center;
        padding-top:15px;
    }

    .navbar-nav .nav-item{
        width:100%;
    }

    .navbar-nav .register-btn{
        display:block;
        width:100%;
        margin:8px 0;
        padding:12px;
    }

    .navbar-nav .nav-link{
        margin-left:0;
        padding:10px 0;
    }

}

