/* ======================================= */
/* 1. Estilos Base (Mobile First)          */
/* Empilha o conteúdo em telas pequenas.   */
/* ======================================= */

:root {
    --azul: #132748;
    --amarelo: #d99000;
    --branco: #f3f3f3;
    --branco-a: #fff;
}



/* Estilos Globais de Lista */
.profile li {
    text-align: center;
    list-style: none;
    /* Remove marcadores de lista */
}

/* Contêiner Principal */
.profile {
    margin: 10px 0;
    /* Ajusta margem vertical */
}

.profile section {
    max-width: 100%;
    /* Largura total no mobile */
    padding: 10px;
    margin: 0 auto;
}

/* Card Principal (Article) */
.profile article {
    border: solid 2px var(--azul);
    border-radius: 20px;
    /* Mobile: Empilha os blocos .professor e .disciplina */
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 20px 10px;
    /* Remover altura fixa (height: 1500px) se houver no seu CSS original */
}

/* --------------------------------------- */
/* A. Seção Professor (Mobile)             */
/* --------------------------------------- */

.professor {
    display: flex;
    flex-direction: column;
    align-items: center;
    /* Centraliza verticalmente no mobile */
    flex: 1 1 100%;
    gap: 20px;
}

.professor img {
    /* Imagens responsivas e limitadas */
    width: 90%;
    max-width: 250px;
    height: auto;
    /* Mantém proporção */
    border-radius: 100%;
    object-fit: cover;
    border: 4px solid var(--azul);
}

.professor-info {
    width: 100%;
    padding: 0 10px;
}

.professor-info h1 {
    font-size: 24px;
    margin-bottom: 10px;
    margin-left: 0;
    /* REMOVIDA largura fixa que atrapalhava */
    text-align: center;
    color: var(--azul);
}

.professor-info p {
    padding-left: 0;
    font-size: 16px;
    margin-bottom: 15px;
    line-height: 1.5;
    text-align: left;
}

/* Botão Mais/Voltar (se for o mesmo estilo) */
.professor-info .mais {
    width: 100px;
    height: 40px;
    background: var(--azul);
    color: var(--branco);
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.professor-info .mais:hover {
    color: var(--azul);
    background: var(--branco);
}

/* --------------------------------------- */
/* B. Seção Disciplina (Mobile)            */
/* --------------------------------------- */

.disciplina {
    flex: 1 1 100%;
    padding: 10px 5px;
    align-items: center;
    /* Centraliza o bloco de disciplinas */
}

.disciplina h3 {
    font-size: 22px;
    margin-bottom: 15px;
    text-align: center;
    color: var(--azul);
}

.periodos {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 100%;
    /* Ocupa 100% da disciplina */
    max-width: 450px;
    /* Limite para não esticar demais em telas maiores */
    margin: 0 auto;
    /* Centraliza o grupo de períodos */
    margin-left: 0;
    /* REMOVIDA largura fixa que atrapalhava */
}

.periodo {
    background: var(--branco);
    width: 90%;
    /* Ocupa 100% do .periodos */
    border-radius: 10px;
    padding: 15px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    font-size: 18px;
}

.periodo h4 {
    font-size: 1rem;
    margin-bottom: 8px;
    text-align: center;
}

/* --------------------------------------- */
/* C. Botão Voltar (.back)                 */
/* --------------------------------------- */

.back {
    display: flex;
    background: var(--azul);
    align-items: center;
    width: 130px;
    border-radius: 10px;
    margin-top: 90px;
    margin-left: 20px;
    transition: 0.5s;
}

.back img {
    width: 40px;
    margin-left: 10px;
}

.back:hover {
    cursor: pointer;
    /* Adicione um hover para o back também, se desejar */
}

/* ======================================= */
/* 2. Media Query - Tablet/Landscape (>= 768px) */
/* Ativa o layout de 2 colunas */
/* ======================================= */

@media (min-width: 768px) {
    
    .profile article {
        /* Muda para layout de 2 colunas */
        flex-direction: row; 
        flex-wrap: nowrap;
        justify-content: space-between;
        gap: 40px;
        padding: 40px;
    }

    /* As duas seções dividem o espaço igualmente */
    .professor,
    .disciplina {
        flex: 1 1 50%; /* Cada um ocupa metade do espaço */
    }

    .professor {
        /* Alinha a imagem e info na horizontal, alinhados ao topo */
        flex-direction: column;
        gap: 30px;
    }

    .professor img {
        /* Tamanho fixo para imagem no tablet/desktop */
        width: 200px; 
        height: auto;
    }

    .professor-info h1 {
        text-align: left;
    }
    
    .disciplina {
        /* Alinha o conteúdo ao topo da coluna */
        align-items: flex-start;
        padding: 0;
    }

    .periodos {
        /* Remove o limite de max-width aqui para usar todo o 50% disponível */
        max-width: none;
    }
}

/* ======================================= */
/* 3. Media Query - Desktop (>= 1024px)    */
/* Refina o layout para monitores maiores  */
/* ======================================= */

@media (min-width: 1024px) {
    
    .profile section {
        max-width: 1200px;
        padding: 0;
    }

    .professor img {
        /* Aumenta o tamanho da imagem no desktop */
        width: 300px; 
    }
}