.container{

    width:90%;

    max-width:1200px;

    margin:auto;

    padding:70px 0;

}

/* Hero */

.contact-hero{

    height:380px;

    background:linear-gradient(rgba(5,20,45,.75),
    rgba(5,20,45,.75)),
    url("/static/images/contact-banner.jpg");

    background-size:cover;

    background-position:center;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    color:#fff;

}

.contact-overlay h1{

    font-size:52px;

    margin-bottom:20px;

}

.contact-overlay p{

    max-width:800px;

    margin:auto;

    font-size:20px;

    line-height:1.8;

}

/* Grid */

.contact-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:40px;

}

.contact-card{

    background:#fff;

    padding:35px;

    border-radius:15px;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

    color:#222;

}

.contact-card h2{

    color:#0b3d91;

    margin-bottom:20px;

}

.contact-item{

    margin-bottom:25px;

}

.contact-item h4{

    color:#1565c0;

    margin-bottom:8px;

}

.contact-item p{

    color:#555;

    line-height:1.7;

}

/* Form */

.form-group{

    margin-bottom:20px;

}

.form-group label{

    display:block;

    margin-bottom:8px;

    font-weight:600;

    color:#333;

}

.form-group input,

.form-group textarea{

    width:100%;

    padding:14px;

    border:1px solid #ddd;

    border-radius:8px;

    font-size:15px;

}

.contact-btn{

    background:#1565c0;

    color:#fff;

    border:none;

    padding:14px 35px;

    border-radius:8px;

    cursor:pointer;

    font-size:16px;

    font-weight:600;

}

.contact-btn:hover{

    background:#0b3d91;

}

/* Bottom */

.contact-help{

    background:#eef5ff;

    text-align:center;

    padding:80px 20px;

}

.contact-help h2{

    color:#0b3d91;

    margin-bottom:15px;

}

.contact-help p{

    color:#555;

    margin-bottom:30px;

}

.help-btn{

    display:inline-block;

    text-decoration:none;

    background:#1565c0;

    color:#fff;

    padding:14px 35px;

    border-radius:8px;

    font-weight:600;

}

.help-btn:hover{

    background:#0b3d91;

}

@media(max-width:900px){

    .contact-grid{

        grid-template-columns:1fr;

    }

    .contact-overlay h1{

        font-size:40px;

    }

}

.success-card{

    text-align:center;

    background:#ffffff;

    padding:50px;

    border-radius:15px;

    box-shadow:0 10px 35px rgba(0,0,0,.08);

}

.success-icon{

    font-size:60px;

    margin-bottom:20px;

}

.success-card h2{

    color:#2e7d32;

    margin-bottom:15px;

}

.success-card p{

    color:#666;

    line-height:1.8;

}

/*=========================================
Loading Overlay
=========================================*/

#loadingOverlay{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    height:100%;

    background:rgba(255,255,255,.92);

    display:none;

    justify-content:center;

    align-items:center;

    z-index:99999;

}

.loading-box{

    background:white;

    padding:45px;

    border-radius:15px;

    text-align:center;

    box-shadow:0 15px 45px rgba(0,0,0,.18);

    min-width:360px;

}

.loading-box h3{

    color:#0b3d91;

    margin-top:25px;

    margin-bottom:10px;

}

.loading-box p{

    color:#666;

    line-height:1.7;

}

/* Spinner */

.loader{

    width:70px;

    height:70px;

    border:6px solid #dfe8ff;

    border-top:6px solid #1565c0;

    border-radius:50%;

    animation:spin .8s linear infinite;

    margin:auto;

}

@keyframes spin{

    100%{

        transform:rotate(360deg);

    }

}