* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    list-style: none;
    font-family: 'Roboto', sans-serif;
}

body {
    background-color: #AED6F1;
}

.resume-contents {
    min-height: 100vh;
    width: 80%;
    margin: 2rem auto;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
}

.left-section {
    grid-column: span 2;
    height: 100%;
    background-color: #34495E;
}

.right-section {
    grid-column: span 5;
    height: 100%;
    background-color: #D6DBDF;
}

.left-section-contents {
    padding: 2rem 2rem;
}

.profile {
    width: 100%;
    border-bottom: 2px solid #1B2631;
}

.profile .profile-image {
    width: 100%;
    border-radius: 50%;
    border: 8px solid #1B2631;
}

.name {
    color: #D6DBDF;
    font-size: 30px;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
    font-weight: bold;
    padding: 1rem 0;
}

.profession {
    color: #F9E79F;
    font-size: 20px;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 2px;
    font-weight: bold;
    padding-bottom: 1rem;
}

/* .contact-info { border-bottom: 2px solid #1B2631; } */
.left-title {
    color: #D6DBDF;
    font-size: 20px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding-top: 3rem;
}

.linkedin-link {
    font-size: 16px;
    color: #2E86C1;
    text-decoration: none;
}

.linkedin-link:hover {
    text-decoration: underline;
}

.contact-info ul {
    padding-top: 1.5rem;
}

.contact-info ul li a,
.references ul li a {
    color: inherit;
    /* Herda a cor do texto normal */
    text-decoration: none;
    /* Remove o sublinhado */
}

.contact-info ul li,
.references ul li {

    padding: .4rem 0;
    display: flex;
    align-items: center;
    color: #d6dbdfaf;
    letter-spacing: 1px;
    font-size: 18px;
}

.contact-info ul li i,
.references ul li i {
    padding-right: 1rem;
    font-size: 18px;
    color: #2E86C1;
}

.skills ul {
    padding-top: 1.5rem;
}

.skills ul li p {
    padding: .4rem 0;
    color: #d6dbdfaf;
    font-size: 18px;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    text-transform: uppercase;
}

.certificado-link {
    display: inline-block;
    padding: 10px 20px;
    background-color: #2E86C1;
    color: white;
    text-decoration: none;
    /* Remove o sublinhado */
    font-size: 16px;
    border-radius: 5px;
    transition: background-color 0.3s;
}

/* Efeito ao passar o mouse sobre o link */
.certificado-link:hover {
    background-color: #21638F;
}

/* Estilo para os links */
.refer a {
    text-decoration: none;
    /* Remove o sublinhado */
    color: #2E86C1;
    /* Cor personalizada para o link */
}

/* Estilo para o link ao passar o mouse */
.refer a:hover {
    color: #21638F;
    /* Alterar a cor do link ao passar o mouse */
    background-color: transparent;
    /* Remover o fundo ao passar o mouse */
}

.referance-name {
    padding-top: 1.5rem;
    padding-bottom: .4rem;
    font-size: 18px;
    color: #F9E79F;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.referance-profession {
    font-size: 16px;
    color: #d6dbdfaf;
    letter-spacing: 1px;
    /* text-transform: uppercase; */
    padding-bottom: .4rem;
}


.right-section-contents {
    padding: 2rem 2rem;
}

.right-title {
    color: #34495E;
    font-size: 40px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding: 2rem 0;
    position: relative;
}

.gap {
    padding-bottom: 2rem;
}

.about-me-contents {
    font-size: 18px;
    letter-spacing: 1px;
    line-height: 1.2rem;
    display: block;
    margin: 3px 0;
}

.experience-contents,
.education-contents,
.awards-contents {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    padding-bottom: 1rem;
}

.exp-company-name,
.education-school-name,
.awards-company-name {
    font-size: 20px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #21638f;
    padding-bottom: .4rem;
}

.exp-time-period,
.educationp-time-period,
.awards-time-period {
    font-size: 18px;
    letter-spacing: 1px;
    line-height: 2rem;
}

.exp-position,
.education-subject,
.awards-name {
    font-size: 20px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #2E86C1;
    padding-bottom: .4rem;
}

.exp-desc,
.education-desc,
.awards-desc {
    font-size: 16px;
    letter-spacing: 1px;
    line-height: 1.5rem;
    border-left: 3px solid #a5a3a3;
    padding-left: 5px;
}

/* Media queries */
@media screen and (max-width:780px) {

    .experience-contents,
    .education-contents,
    .awards-contents {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media screen and (max-width:780px) {
    .left-section {
        grid-column: span 3;
    }

    .right-section {
        grid-column: span 4;
    }

}

@media screen and (max-width:1200px) {
    .resume-contents {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media screen and (max-width:390px) {
    .resume-contents {
        width: 100%;
        margin: 0 auto;
    }

    .name {
        font-size: 20px;
    }

    .profession {
        font-size: 18px;
    }

    .left-title {
        font-size: 18px;
    }

    .right-title {
        font-size: 18px;
    }

    .contact-info ul li,
    .references ul li {
        font-size: 12px;

    }

    .contact-info ul li i,
    .references ul li i {
        /* padding-right: 1rem; */
        font-size: 12px;
    }

    .skills ul li p {
        font-size: 12px;
    }

    .about-me-contents {
        font-size: 16px;
        line-height: 1.5rem;
    }

    .exp-company-name,
    .education-school-name,
    .awards-company-name {
        font-size: 18px;
    }

    .exp-time-period,
    .educationp-time-period,
    .awards-time-period {
        font-size: 16px;
    }

    .exp-position,
    .education-subject,
    .awards-name {
        font-size: 18px;
    }
}

@media print {
    /* Estilos gerais de impressão */
    * {
        background: none !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    body {
        background-color: #fff !important;
        margin: 0;
        padding: 0;
    }

    .resume-contents {
        width: 100%;
        margin: 0;
        display: block;
        padding: 5px;
    }

    .left-section,
    .right-section {
        width: 100%;
        grid-column: span 1;
        height: auto;
        page-break-inside: avoid;
    }

    .profile-image {
        width: 70px !important;
        height: auto !important;
        display: block;
        margin: 0 auto 3px auto;
        border-radius: 50%;
        border: 3px solid #000;
    }

    .name {
        font-size: 18px;
        text-align: left;
    }

    .profession {
        font-size: 14px;
        text-align: left;
    }

    .contact-info,
    .skills,
    .social-links {
        margin: 0 !important;
        padding: 0 !important;
    }

    .contact-info ul li,
    .references ul li,
    .skills ul li p {
        font-size: 12px;
        line-height: 1;
        margin: 0 !important;
        padding: 2px 0 !important;
    }

    .exp-company-name,
    .education-school-name,
    .awards-company-name,
    .exp-position,
    .education-subject,
    .awards-name {
        font-size: 14px;
    }

    .exp-desc,
    .education-desc,
    .awards-desc {
        font-size: 12px;
        border-left: 1px solid #aaa;
        padding-left: 3px;
        margin: 0 !important;
    }

    .social-links {
        display: flex;
        flex-wrap: wrap;
        justify-content: left;
        margin: 0 !important;
        padding: 0 !important;
    }

    .social-links a {
        font-size: 12px;
        margin-right: 5px;
        white-space: nowrap;
    }

    .certificado-link {
        display: none;
    }

    .linkedin-link {
        color: #000 !important;
        text-decoration: underline;
    }

    /* Removendo elementos interativos na impressão */
    nav,
    button,
    a[href]:after {
        display: none;
    }

    /* Impedindo quebra de página entre o título 'Experiência' e seu conteúdo */
    .experience-section {
        page-break-before: always !important;
        page-break-after: avoid !important;
        page-break-inside: avoid !important;
    }

    /* Garante que o título 'Experiência' não fique sozinho na página */
    .experience-title {
        display: block;
        page-break-before: always !important;
    }

    /* Evita que a descrição da experiência seja quebrada entre páginas */
    .experience-contents {
        page-break-before: auto !important;
        page-break-inside: avoid !important;
    }

    .exp-company-name,
    .exp-position,
    .exp-desc {
        page-break-before: auto !important;
        page-break-inside: avoid !important;
    }

    /* Forçar conteúdo de experiência a continuar sem quebras entre título e conteúdo */
    .experience-section,
    .exp-desc {
        page-break-inside: avoid !important;
    }

    /* Melhor controle sobre o layout da experiência */
    .experience-title,
    .experience-contents {
        display: block;
        page-break-before: auto !important;
        page-break-inside: avoid !important;
    }

    .formation-section,
    .certificates-section {
        margin: 0 !important;
        padding: 0 !important;
        page-break-before: auto !important;
        page-break-after: avoid !important;
        page-break-inside: avoid !important;
    }

  /* Seção de Formação Acadêmica */
.academic-background {
    margin-bottom: 0 !important; /* Remover margem após a formação acadêmica */
    padding-bottom: 0 !important; /* Remover preenchimento após a formação acadêmica */
    page-break-after: avoid !important; /* Evitar quebra de página após a formação acadêmica */
}

/* Seção de Certificados */
.certificates-section {
    margin-top: 0 !important;
    padding-top: 0 !important;
    page-break-before: avoid !important; /* Evitar quebra de página antes da seção de certificados */
    page-break-after: avoid !important; /* Evitar quebra de página após a seção de certificados */
}

/* Lista de Certificados */
.certificates-list {
    margin-top: 0 !important;
    padding-top: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 3px !important; /* Menos espaço entre os certificados */
}

/* Certificado Individual */
.certificates-item {
    margin: 0 !important;
    padding: 5px !important; /* Menos preenchimento nos certificados */
    background-color: #f5f5f5;
    border-radius: 5px;
    font-size: 1px !important; /* Diminuindo a fonte do conteúdo dos certificados */
}

/* Ajuste do tamanho da fonte nos certificados */
.certificates-item {
    font-size: 10px !important; /* Diminuindo a fonte dos certificados */
    margin: 0 !important;
    padding: 8px !important; /* Ajuste de padding */
    background-color: #f5f5f5;
    border-radius: 5px;
    page-break-inside: avoid !important;
}

/* Ajuste do conteúdo do certificado */
.certificates-item p {
    font-size: 10px !important; /* Diminuindo o tamanho da fonte do texto */
    line-height: 1.2 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ajuste do título da seção de certificados */
.certificates-title {
    font-size: 14px !important; /* Diminui o tamanho da fonte do título */
    font-weight: bold;
    margin-bottom: 3px !important; /* Ajusta a distância após o título */
    text-transform: uppercase; /* Opcional: deixa o título em maiúsculas */
}

/* Diminuir fonte da lista de certificados */
.certificates-list {
    font-size: 10px !important; /* Ajustando o tamanho da fonte na lista */
    gap: 3px !important; /* Ajustando o espaço entre os itens */
}

/* Reduzindo o espaçamento entre certificados */
.certificates-item {
    margin-bottom: 5px !important; /* Ajusta a margem entre os certificados */
}

}
