:root {
	--white: #fff;
	--bg-color: #f5f5f5;
	--black: #000;
	--color-1: #ffb8b8;
	--color-2: #009bf5;
	--color-3: #025878;
	--color-4: #ffbbe3;
	--color-5: #9B5DE5;
	--dark-1: #333333;
	--dark-2: #0e1217;
}

*, *::after, *::before {
	margin: 0;
	border: 0;
	box-sizing: border-box;
}

html {
	font-family: 'Poppins', sans-serif;
	font-size: 62.5%; /* font-size 1em = 10px on default browser settings */
}

body 
{
	font-size: 2.1rem;
}

p {
	margin-bottom: 1rem;
}


section:nth-child(2n+1)
{
	background-color: var(--bg-color);
}


#presentation {
	text-align: center;
	padding-top: 2rem;
	background: var(--color-3);
	background: linear-gradient(90deg, var(--color-3) 0%, var(--color-2) 100%);
	color: var(--white);
}

.container {
	padding: 1rem;
	max-width: 130rem;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	gap: 3rem;
}

.name {
	font-size: 3.4rem;
}

.profile-image {
	max-width: 100%;
	width: 20rem;
	border-radius: 50%;
}

.me {
	max-width: 80rem;
	text-align: left;
	padding-top: 2rem;
}

.flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 2rem;
	/* max-width: 80%;
	margin: 0 auto; */
}

section {
	padding-top: 4rem;
	padding-bottom: 4rem;
}

.title {
	text-align: center;
	margin-bottom: 4rem;
}

.button {
	display: inline-block;
	border: 1px solid;
	padding: 0.2rem 2rem;
	border-radius: 0.4rem;
	text-decoration: none;
}

.button--primary {
	background: var(--color-3);
	color: var(--white);
}

.button--primary:hover {
	background: var(--color-2);
}

.heart::before {
	content: "\1F499";
}

.card {
	display: flex;
	border: 1px solid #ccc;
	padding: 2rem;
	border-radius: 0.4rem;
	box-shadow: 4px 4px 5px #999;
	background-color: var(--white);
	color: var(--black);
}

.card .card__content {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.card .card__content .button{
	align-self: end;
	margin-top: auto;
}

.card-grid {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 2rem;
}

.card-grid .card {
	flex: 1 1 40rem;
	min-height: 18rem;

}

.repository {
	display: flex;
	gap: 2rem;
}

.repository .repository__name {
	font-size: 2.4rem;
}
.repository p {
	font-size: 1.8rem;
}
.repository .repository__img {
	width: 7rem;
}

.repository .repository__img img {
	width: 100%;
}

.timeline {
	position: relative;
	padding: 2rem 2rem 2rem 4rem;
	max-width: 100%;
}

.timeline::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 1rem;
	width: 0.5rem;
	height: 100%;
	background: var(--color-2);
}

.timeline__content {
	position: relative;
	padding: 2rem;
	margin-bottom: 2rem;
}

.timeline__content::before {
	content: "";
	width: 1.8rem;
	height: 1.8rem;
	background: var(--color-3);
	position: absolute;
	border-radius: 50%;
	left: -3.6rem;
	top: 3rem;
}

.timeline__content::after {
	content: " ";
	width: 50%;
	height: 0;
	display: block;
	position: absolute;
	top: 3.7rem;
	border: 3px dashed var(--color-3);
	left: -1rem;
	z-index: 1;
}

.timeline__event {
	max-width: 90%;
	margin: 0 auto;
	flex-wrap: wrap;
	position: relative;
	z-index: 2;
}

.timeline__event h2 {
	font-size: 2.2rem;
}

.timeline__event .timeline__description {
	display: block;
	font-size: 1.8rem;
	width: 100%;   
}

.footer {
	text-align: center;
	padding: 1.5rem;
	background: var(--dark-1);
	color: var(--white);        
	font-size: 1.6rem;
}

.footer p {
	margin-bottom: 0;
}

.footer a, .footer a:visited  {
	color: var(--white);
	text-decoration: none;
}

.timeline__event.education {
	background: #d7ebf2;
}

@media only screen and (min-width: 900px) {
	#presentation {
		padding-top: 4rem;
		padding-bottom: 4rem;
		
	}

	.timeline {
		padding-left: 2rem;
	}

	.timeline::before {
		left: 50%;
	}

	.timeline__content {
		width: 50%;
		display: flex;
		z-index: 2;
	}

	.timeline__content::after { 
		width: 6.6rem;
		z-index: 1;
	}

	.timeline__content:nth-child(2n+1)::before {
		left: auto;
		right: -1.1rem;
	}

	.timeline__content:nth-child(2n+1)::after {
		right: 1.5rem;
		left: auto;
	}
	
	/* Move the card to the right */
	.timeline__content:nth-child(2n) {
		transform: translateX(100%);
		display: flex;
		justify-content: end;
	}
	
	.timeline__content:nth-child(2n)::before {
		left: -0.6rem;
	}

	.timeline__content:nth-child(2n)::after {
		left: 1.7rem;
	}

	.timeline__content:nth-child(2n+1) .timeline__event.card {
		box-shadow: -4px 4px 5px #999;
	}

	.timeline__event {
		margin: inherit;
	}
}

/* HEADER */
.header {
    background-color: var(--dark-1);
    color: var(--white);
    padding: 1rem 0;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.header__logo {
    font-size: 2.4rem;
    font-weight: bold;
}

.header__nav {
    display: flex;
    align-items: center;
}

.header__menu {
    list-style: none;
    display: flex;
    gap: 2rem;
    margin: 0;
    padding: 0;
}

.header__menu li a {
    color: var(--white);
    text-decoration: none;
    font-size: 1.8rem;
    transition: color 0.3s ease;
}

.header__menu li a:hover {
    color: var(--color-2);
}

section {
    scroll-margin-top: 6rem; /* Ajuste conforme a altura do header */
}

/* Esconder o botão de navegação em telas grandes */
.header__toggle {
    display: none;
}

/* Header responsivo para dispositivos menores */
@media (max-width: 768px) {
    .header {
        padding: 1rem;
    }

    .header__logo {
        font-size: 2rem;
    }

    .header__nav {
        display: none; /* Esconde o menu no layout inicial */
        flex-direction: column;
        gap: 1rem;
        background-color: var(--dark-1);
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        padding: 1rem 0;
    }

    .header__menu {
        flex-direction: column;
        align-items: center;
    }

    .header__menu li a {
        font-size: 1.6rem;
    }

    .header__toggle {
        display: block;
        font-size: 2rem;
        color: var(--white);
        background: none;
        border: none;
        cursor: pointer;
    }

    .header__nav.active {
        display: flex; /* Mostra o menu quando ativo */
    }
}