/* =====================================
   CONTACT PAGE
   ===================================== */

.contact-page{
    background: linear-gradient(135deg, #002D54, #004a87);
    min-height: 100vh;
    padding: 40px 15px;
}

/* Wrapper */
.page{
    max-width: 1000px;
    margin: auto;
}

/* Card Container */
.contact-container{
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.25);
    display: grid;
    grid-template-columns: 1fr 1fr;
    overflow: hidden;
    margin-bottom: 25px;
}

/* LEFT INFO */
.contact-info{
    background: #003358;
    color: #ffffff;
    padding: 30px;
}

.contact-info h2{
    margin-bottom: 15px;
    font-size: 22px;
}

.contact-info p{
    font-size: 14px;
    margin-bottom: 25px;
    opacity: 0.9;
}

.info-box{
    margin-bottom: 18px;
    font-size: 14px;
}

/* RIGHT FORM */
.contact-form{
    padding: 30px;
}

.contact-form h2{
    color: #003358;
    margin-bottom: 10px;
}

.contact-form p{
    font-size: 13px;
    color: #666;
    margin-bottom: 20px;
}

/* Error */
.error-box{
    display: none;
    background: #fdecea;
    color: #b00020;
    padding: 10px 12px;
    border-radius: 8px;
    font-size: 14px;
    margin-bottom: 15px;
    border: 1px solid #f5c2c0;
}

/* Inputs */
label{
    font-size: 14px;
    color: #003358;
    margin-bottom: 5px;
    display: block;
}

input,
textarea{
    width: 100%;
    padding: 12px;
    border-radius: 8px;
    border: 1px solid #ccc;
    font-size: 14px;
    margin-bottom: 15px;
}

textarea{
    resize: none;
    height: 100px;
}

/* Button */
button{
    width: 100%;
    padding: 12px;
    background: #D4AF37;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: bold;
    color: #003358;
    cursor: pointer;
}

button:hover{
    background: #c9a633;
}

/* MAP */
.map-container{
    width: 100%;
    height: 350px;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 15px 40px rgba(0,0,0,0.25);
}

.map-container iframe{
    width: 100%;
    height: 100%;
    border: 0;
}

/* =====================================
   RESPONSIVE
   ===================================== */

@media (max-width: 768px){

    .contact-container{
        grid-template-columns: 1fr;
    }

    .contact-info,
    .contact-form{
        padding: 22px;
    }

    .contact-page{
        padding: 25px 10px;
    }
}
