/*=========================
 HERO
==========================*/


body{
    font-family:'Open Sans',sans-serif;
}

h1,h2,h3,h4,h5,h6,.navbar-brand{
    font-family:'Poppins',sans-serif;
}
.hero{

    position:relative;
    min-height:100vh;

    display:flex;
    align-items:center;

    overflow:hidden;

    background:linear-gradient(135deg,#0b1f5e 0%,#133d9a 55%,#1f64d8 100%);

    color:#fff;

}

.hero-overlay{

    position:absolute;
    inset:0;

    background:
    radial-gradient(circle at top right,rgba(255,193,7,.15),transparent 30%),
    radial-gradient(circle at bottom left,rgba(255,255,255,.08),transparent 35%);

}

.hero-circle{

    position:absolute;

    border-radius:50%;

    filter:blur(10px);

}

.circle1{

    width:350px;
    height:350px;

    background:rgba(255,193,7,.12);

    right:-120px;
    top:-80px;

}

.circle2{

    width:250px;
    height:250px;

    background:rgba(255,255,255,.08);

    left:-70px;
    bottom:-60px;

}

.hero-content{

    position:relative;
    z-index:5;

    max-width:720px;

    padding:120px 0;

}

.hero-badge{

    display:inline-block;

    padding:10px 22px;

    border-radius:50px;

    background:rgba(255,255,255,.12);

    border:1px solid rgba(255,255,255,.2);

    font-size:14px;

    letter-spacing:1px;

    margin-bottom:25px;

}

.hero h1{

    font-size:72px;

    font-weight:800;

    line-height:1;

    margin-bottom:15px;

}

.hero h1 span{

    color:#FFC107;

}

.hero h3{

    font-size:30px;

    margin-bottom:20px;

    font-weight:500;

}

.hero p{

    font-size:18px;

    line-height:1.8;

    color:#e5e5e5;

    margin-bottom:35px;

}

.hero-details{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

    margin-bottom:40px;

}

.detail-card{

    display:flex;

    align-items:center;

    gap:15px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.15);

    padding:18px 22px;

    border-radius:18px;

    backdrop-filter:blur(10px);

}

.detail-card i{

    font-size:24px;

    color:#FFC107;

}

.detail-card h5{

    margin:0;

    font-size:18px;

}

.detail-card small{

    color:#ddd;

}

.hero-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

}

.btn-book{

    background:#FFC107;

    color:#0b1f5e;

    padding:16px 36px;

    border-radius:50px;

    text-decoration:none;

    font-weight:700;

    transition:.3s;

}

.btn-book:hover{

    transform:translateY(-4px);

}

.btn-register{

    border:2px solid #fff;

    color:#fff;

    padding:16px 36px;

    border-radius:50px;

    text-decoration:none;

    transition:.3s;

}

.btn-register:hover{

    background:#fff;

    color:#0b1f5e;

}

/*=========================
 STATS
==========================*/

.stats{

    margin-top:-70px;

    position:relative;

    z-index:10;

}

.stat-card{

    background:#fff;

    border-radius:22px;

    padding:35px;

    text-align:center;

    box-shadow:0 15px 45px rgba(0,0,0,.08);

    transition:.3s;

}

.stat-card:hover{

    transform:translateY(-10px);

}

.stat-card i{

    font-size:34px;

    color:#FFC107;

    margin-bottom:18px;

}

.stat-card h2{

    color:#0b1f5e;

    font-size:42px;

    font-weight:800;

}

.stat-card p{

    margin:0;

    color:#666;

}
.navbar{
    position: fixed;
    top:0;
    left:0;
    width:100%;
    z-index:999;
    padding:18px 0;
    background:transparent;
    transition:.4s;
}

.navbar .nav-link{
    color:#fff !important;
    font-weight:500;
}

.navbar-brand{
    color:#fff !important;
    font-weight:700;
    font-size:28px;
}

.navbar.scrolled{
    background:rgba(8,20,70,.95);
    backdrop-filter:blur(15px);
    box-shadow:0 10px 30px rgba(0,0,0,.15);
}

@media (max-width: 991px) {

    .navbar-collapse{
        background: #0b1f5e;
        padding: 20px;
        border-radius: 15px;
        margin-top: 10px;
    }

    .navbar-nav .nav-link{
        color: #fff !important;
        padding: 12px 0;
    }

}

/* =========================
   STALL BOOKING PAGE
========================= */

body{
    background:#f5f8ff;
}

.card{
    border:none;
    border-radius:24px;
    box-shadow:0 20px 60px rgba(0,0,0,.08);
}

.card h3{
    color:#0b1f5e;
    font-weight:700;
    margin-bottom:30px;
    text-align:center;
}

.form-label{
    font-weight:600;
    color:#0b1f5e;
    margin-bottom:8px;
}

.form-control,
.form-select{

    height:55px;
    border-radius:12px;
    border:1px solid #d6def5;
    box-shadow:none;
}

textarea.form-control{
    height:auto;
    min-height:120px;
}

.form-control:focus,
.form-select:focus{

    border-color:#FFC107;
    box-shadow:0 0 0 .2rem rgba(255,193,7,.2);

}

.btn-primary{

    background:#0b1f5e;
    border:none;
    border-radius:50px;
    padding:14px 45px;
    font-weight:600;
    transition:.3s;

}

.btn-primary:hover{

    background:#FFC107;
    color:#0b1f5e;
    transform:translateY(-3px);

}

.bg-primary{

    background:linear-gradient(135deg,#0b1f5e,#1b4db8)!important;

}

.expo-info{

    background:linear-gradient(135deg,#0b1f5e,#1f64d8);

    color:white;

    border-radius:20px;

    padding:35px;

    height:100%;

}

.expo-info h3{

    color:#FFC107;

    margin-bottom:30px;

    text-align:center;

}

.info-item{

    background:rgba(255,255,255,.08);

    padding:15px;

    border-radius:12px;

    margin-bottom:15px;

    font-size:15px;

}

:root{--primary:#0b1f5e;--secondary:#1f64d8;--accent:#ffc107;--light:#f5f8ff;}
body{font-family:Arial,Helvetica,sans-serif;background:var(--light);color:#222;}
.navbar{background:linear-gradient(135deg,var(--primary),var(--secondary))!important;}
.navbar-brand{font-weight:700}.nav-link{color:#fff!important}
header{background:linear-gradient(135deg,var(--primary),var(--secondary));}
.card{border:none;border-radius:22px;box-shadow:0 15px 40px rgba(0,0,0,.08);}
.card h3,.form-label{color:var(--primary);font-weight:700}
.form-control,.form-select{border-radius:12px;min-height:52px;border:1px solid #d9e2ff}
textarea.form-control{min-height:120px}
.form-control:focus,.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 .2rem rgba(255,193,7,.2)}
.btn-primary{background:var(--primary);border:none;border-radius:40px;padding:.85rem 2.5rem}
.btn-primary:hover{background:var(--accent);color:var(--primary)}
.alert-warning{border-radius:16px}
footer{background:var(--primary);color:#fff;padding:40px 0}
@media(max-width:991px){header{padding:3rem 0!important}.card{margin-bottom:20px}}

