:root {

    --azul-crp: #0B2E59;
    --azul-claro: #154A91;
    --fundo: #F5F7FA;

}


* {
    box-sizing:border-box;
}


body {

    margin:0;
    font-family: 'Inter', Arial, sans-serif;
    background:var(--fundo);
    color:#333;

}



.banner {

    width:100%;
    background:#082C67;
    display:flex;
    justify-content:center;
    align-items:center;
    overflow:hidden;

}


.banner img {

    width:100%;
    max-width:2048px;
    height:auto;
    max-height:220px;
    object-fit:contain;
    display:block;

}


.container {

    max-width:1100px;
    margin:50px auto;
    padding:20px;

}



.card {

    background:white;
    border-radius:18px;
    padding:40px;
    box-shadow:
    0 10px 30px rgba(0,0,0,.08);

}



h1 {

    color:var(--azul-crp);
    font-size:38px;

}



.btn {

    display:inline-block;
    background:var(--azul-crp);
    color:white;
    padding:16px 35px;
    border-radius:10px;
    text-decoration:none;
    font-weight:bold;

}



.btn:hover {

    background:var(--azul-claro);

}



.cards {

    display:grid;
    grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));

    gap:20px;
    margin-top:30px;

}



.info {

    background:#fff;
    padding:25px;
    border-radius:15px;
    text-align:center;

}



footer {

    text-align:center;
    padding:30px;
    color:#666;

}

@media(max-width:768px){

    .banner img {

        max-height:120px;

    }


    h1 {

        font-size:28px;

    }


    .card {

        padding:25px;

    }

}
.form-group {

    margin-bottom:20px;

}


.form-group label {

    display:block;
    font-weight:bold;
    margin-bottom:8px;
    color:#0B2E59;

}


.form-group input {

    width:100%;
    padding:14px;
    border:1px solid #ddd;
    border-radius:8px;
    font-size:16px;

}


.form-group input:focus {

    outline:none;
    border-color:#154A91;

}


.check {

    margin:25px 0;

}


button.btn {

    border:none;
    cursor:pointer;
    font-size:16px;

}
.alert {

    background:#eef5ff;
    border-left:5px solid var(--azul-crp);
    padding:20px;
    border-radius:10px;
    margin:30px 0;
    line-height:1.6;

}


h2 {

    color:var(--azul-crp);
    margin-top:35px;

}



.lgpd {

    background:#fafafa;
    padding:20px;
    border-radius:10px;
    margin:25px 0;
    line-height:1.5;

}



.lgpd input {

    margin-right:10px;

}
.resultado {

    text-align:center;

}


.protocolo {

    margin:30px auto;
    padding:25px;
    background:#f2f6fc;
    border-radius:12px;
    font-size:18px;

}


.protocolo strong {

    display:block;
    margin-top:10px;
    font-size:28px;
    color:var(--azul-crp);

}


.btn {

    display:inline-block;
    padding:14px 25px;
    background:#0B2E59;
    color:white;
    text-decoration:none;
    border-radius:8px;
    margin-top:15px;
    font-weight:bold;

}


.btn:hover {

    opacity:.85;

}
