@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;400;600&display=swap');

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	transition: all 0.3s ease-in-out;
}

:root {
	/* Colors */
	--red: hsl(0, 78%, 62%);
	--cyan: hsl(180, 62%, 55%);
	--orange: hsl(34, 97%, 64%);
	--blue: hsl(212, 86%, 64%);
	--very-dark-blue: hsl(234, 12%, 34%);
	--grayish-blue: hsl(229, 6%, 66%);
	--very-light-gray: hsl(0, 0%, 98%);
	--body-dark: #363c3e;
	--card-dark: #64656a;
	--yellow: #ffc107;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}


body {
	font-family: 'Poppins', sans-serif;
	font-size: 15px;
	background-color: var(--very-light-gray);
}

header {
	padding-top: 50px;
	width: 90%;
	margin: 0 auto;
}

.title {
	text-align: center;
	font-weight: 400;
	font-size: 25px;
	color: var(--grayish-blue);
	margin-bottom: 20px;
	line-height: 1.3;
}

.title .w-600 {
	display: block;
	font-weight: 600;
	color: var(--very-dark-blue);
}

.header-p {
	color: var(--grayish-blue);
	text-align: center;
	font-size: 17px;
	line-height: 1.5;
	max-width: 500px;
	margin: 0 auto;
	font-weight: 200;
}

/* Cards */
.card__container {
	width: 90%;
	margin: 50px auto;
	padding: 0 5px;
}
.card {
	background-color: #fff;
	margin-bottom: 30px;
	border-radius: 8px;
	padding: 25px;
	box-shadow: 0 5px 20px rgba(0,0,0,0.2);
	text-align: right;
}

.card--supervisor {
	border-top: 7px solid var(--cyan);
}

.card--team {
	border-top: 7px solid var(--red);
}

.card--karma {
	border-top: 7px solid var(--orange);
}

.card--calculator {
	border-top: 7px solid var(--blue);
}

.card-title, .card-paragraph {
	text-align: left;
}

.card-title {
	font-size: 22px;
	font-weight: 600;
	color: var(--very-dark-blue);
	margin-bottom: 10px;
}

.card-paragraph {
	color: var(--grayish-blue);
	line-height: 1.5;
	margin-bottom: 40px;
	font-weight: 200;
}

.card img {
	width: 70px;
	height: 70px;
	filter: drop-shadow(0 0 4px rgba(0,0,0,0.5));
}

/* Change theme button */
.theme-btn {
	position: fixed;
	bottom: 1vh;
	right: 2vw;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #363c3e;
	border: none;
	outline: none;
	z-index: 50;
	cursor: pointer;
}

.theme-img {
	width: 20px;
	height: 20px;
	object-fit: cover;
}


/* Styles for dark mode */
.dark {
	background-color: var(--body-dark);
}

.dark .theme-btn {
	background-color: var(--yellow);
}

.dark-card {
	background-color: var(--card-dark);
}

.light-color {
	color: var(--very-light-gray);
}

.white-color, .dark .w-600 {
	color: #fff;
}



/* TABLETS */
@media screen and (min-width: 768px) {
	.title {
		font-size: 45px;
	}

	.header-p {
		font-size: 20px;
		max-width: 600px;
	}

	.card__container {
		display: grid;
		grid-template-columns: repeat(2,1fr);
		grid-gap: 30px;
	}

	.card {
		margin-bottom: 0;
	}

	.card-title {
		font-size: 25px;
	}

	.card-paragraph {
		width: 80%;
	}
}

/* DESKTOP */
@media screen and (min-width: 1024px) {
	.card__container {
		grid-template-columns: repeat(3,1fr);
		grid-template-rows: repeat(4,120px);
		grid-template-areas: 
			"  .   area-1    ."
			"area-2 area-1 area-3"
			"area-2 area-4 area-3"
			"  .   area-4    .";
		margin: 70px auto;
	}

	.card--team {
		grid-area: area-1;
	}

	.card--supervisor {
		grid-area: area-2;
	}

	.card--calculator {
		grid-area: area-3;
	}

	.card--karma {
		grid-area: area-4;
	}

	.card img {
		width: 80px;
		height: 80px;
	}
}