/* Paginas de escolas conveniadas (publica e painel do aluno), sem bootstrap.css
   desde 05/11/2026: so o que essas duas paginas usam, com os mesmos tamanhos
   e cores que tinham. */
*, *::before, *::after { box-sizing: border-box; }

body {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.42857143;
    color: #333;
    background-color: #fff;
}

a { color: #337ab7; text-decoration: none; }
a:hover, a:focus { color: #23527c; text-decoration: underline; }

h1, h3, h4, h5 { font-family: inherit; font-weight: 500; line-height: 1.1; color: inherit; }
h1 { margin: 20px 0 10px; font-size: 36px; }
h3 { margin: 20px 0 10px; font-size: 24px; }
h4 { margin: 10px 0; font-size: 18px; }
h5 { margin: 10px 0; font-size: 14px; }
p { margin: 0 0 10px; }
ul { margin-top: 0; margin-bottom: 10px; }
hr { margin: 20px 0; border: 0; border-top: 1px solid #eee; }

.container { width: 100%; max-width: 1170px; margin-right: auto; margin-left: auto; padding-right: 15px; padding-left: 15px; }
@media (max-width: 1199px) { .container { max-width: 970px; } }
@media (max-width: 991px)  { .container { max-width: 750px; } }

.page-header { margin: 40px 0 20px; padding-bottom: 9px; border-bottom: 1px solid #eee; }
.text-center { text-align: center; }

.alert { margin-bottom: 20px; padding: 15px; border: 1px solid transparent; border-radius: 4px; }
.alert-info { border-color: #bce8f1; background-color: #d9edf7; color: #31708f; }

/* Cartao de cada escola */
.cartao-escola {
    margin-bottom: 30px; padding: 20px;
    border: solid 1px #cecece; border-radius: 10px;
    background-color: #fff; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
}
.cartao-escola--painel { margin-bottom: 25px; padding: 15px; }
.cartao-escola--destaque { border: none; background-color: #2c4f4b; color: #fff; text-align: center; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); }

.escola-grade { display: grid; grid-template-columns: 3fr 6fr 3fr; gap: 30px; }
.cartao-escola--painel .escola-grade { align-items: center; }
.escola-centro { text-align: center; }
.escola-logo { display: block; max-width: 100%; height: auto; max-height: 90px; margin: 10px auto; }
.cartao-escola--painel .escola-logo { margin: 0 auto; }
.escola-botoes { padding-top: 20px; text-align: center; }
.cartao-escola--painel .escola-botoes { padding-top: 0; }
.lista-cursos li { margin-bottom: 4px; }

/* Celular e tablet: uma coluna, nada corta na lateral */
@media (max-width: 991px) {
    .escola-grade { grid-template-columns: minmax(0, 1fr); gap: 12px; }
    .escola-botoes { padding-top: 0; }
    .cartao-escola { overflow-wrap: anywhere; }
}

/* Botoes */
.btn {
    display: inline-block; padding: 6px 12px;
    border: 1px solid transparent; border-radius: 4px;
    font-size: 14px; font-weight: 400; line-height: 1.42857143;
    text-align: center; vertical-align: middle; white-space: normal; cursor: pointer;
}
.btn:hover, .btn:focus { text-decoration: none; }
.btn-block { display: block; width: 100%; }
.btn-block + .btn-block { margin-top: 5px; }
.btn-default { border-color: #ccc; background-color: #fff; color: #333; }
.btn-default:hover, .btn-default:focus { border-color: #adadad; background-color: #e6e6e6; color: #333; }
.btn-success { border-color: #4cae4c; background-color: #5cb85c; color: #fff; }
.btn-success:hover, .btn-success:focus { border-color: #398439; background-color: #449d44; color: #fff; }
.btn-primary { border-color: #2e6da4; background-color: #337ab7; color: #fff; }
.btn-primary:hover, .btn-primary:focus { border-color: #204d74; background-color: #286090; color: #fff; }
.btn-warning { border-color: #eea236; background-color: #f0ad4e; color: #fff; }
.btn-warning:hover, .btn-warning:focus { border-color: #d58512; background-color: #ec971f; color: #fff; }
