@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap');

/* Basic Reset */
* {
margin: 0;
box-sizing: border-box;
}

:root {
--page-padding: 1rem;
--cta-text-color: #FFFFFF;
--cta-background: #25C590;
--heading-primary-color: #052E6F;
--main-text-color: #2F2F2F;
--background-color-white: #FFFFFF;
--background-color-lightblue: #F1FAFF;
--badge-color: #282842;
}

body {
background-color: var(--background-color-lightblue);
}

body, h1, h2, h3, h4, h5, h6, p, a {
font-family: "Inter", serif;
font-style: normal;
}

h1 {
color: var(--heading-primary-color);
font-size: 1.5rem;
font-weight: 700;
margin: 0;
text-align: left;
line-height: 1.2;
}

h2 {
color: var(--heading-primary-color);
font-size: 1.2rem;
font-weight: 700;
margin: 0;
text-align: center;
line-height: 1.2;
margin-bottom: 2rem;
}

/* -------------- Header */

header {
background-color: var(--background-color-white);
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 10%;
position: fixed;
top: 0;
width: 100%;
z-index: 999;
}

.logo img {
height: 20px;
}

.nav-menu {
display: flex;
gap: 1rem;
}

.nav-menu a {
color: var(--main-text-color);
font-size: 0.75rem;
text-decoration: none;
font-weight: 300;
}

.nav-cta {
background-color: var(--cta-background);
padding: 0.75rem 1.5rem;
border-radius: 100px;
display: flex;
color: var(--cta-text-color);
font-size: 0.875rem;
font-weight: 400;
line-height: 1;
text-decoration: none;
}

/* -------------- Hero */

#hero {
height: 100vh;
padding: 3.25rem 15% 0;
background-color: var(--background-color-lightblue);
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-evenly;
}

.hero-inner {
display: flex;
flex-direction: column;
align-items: center;
width: fit-content;
gap: 1.5rem;
}

.hero-inner h1 {
display: flex;
gap: 0.75rem;
margin: 0;
color: var(--heading-primary-color);
text-align: center;
}

.hero-inner h1 span {
font-weight: 600;
}

.list-contianer {
display: flex;
flex-direction: column;
gap: 1rem;
}

.hero-list {
display: flex;
gap: 1rem;
align-items: flex-start;
}

.hero-list p {
font-size: 1rem;
font-weight: 300;
}

.hero-list p span {
font-weight: 700;
}

.hero-mobile-illustrations {
position: absolute;
margin: 0 auto;
left: 0;
right: 0;
bottom: 0;
text-align: center;
width: 100%;
max-width: 650px;
padding: 0px 5% 5px;
}

/* -------------- Intro */

#intro {
background-color: var(--background-color-white);
padding: 5rem 10%;
}

.intro-text-wrap {
display: flex;
flex-direction: column;
gap: 1rem;
}

.intro-text-wrap p {
color: var(--main-text-color);
}

/* -------------- About */

#about {
background-color: var(--background-color-lightblue);
padding: 5rem 10%;
display: flex;
flex-direction: column;
gap: 4rem;
}

.about-inner {
display: flex;
gap: 4rem;
align-items: center;
}

.about-img {
width: 300px;
}

.about-text-wrap {
display: flex;
flex-direction: column;
gap: 1rem;
}

.about-text-wrap h3 {
color: white;
background: var(--heading-primary-color);
width: fit-content;
padding: 0.5rem 1rem;
border-radius: 200px;
font-weight: 400;
}

.about-text-wrap p {
color: var(--main-text-color);
}

/* -------------- USP */

#usp {
background-color: var(--background-color-white);
padding: 5rem 10%;
}

.usp-inner {
display: flex;
flex-direction: column;
}

.usp-container {
display: flex;
align-items: flex-start;
gap: 2rem;
}

.usp-wrap {
display: flex;
flex-direction: column;
align-items: center;
gap: 1.5rem;
width: 25%;
}

.usp-text-wrap {
display: flex;
flex-direction: column;
gap: 0.5rem;
color: var(--main-text-color);
align-items: center;
}

.usp-text-wrap p {
font-weight: 300;
}

/* -------------- Milestones */

#milestones {
background-color: var(--background-color-lightblue);
padding: 5rem 10%;
}

.milestone-list-container {
display: flex;
flex-direction: column;
gap: 1rem;
width: 100%;
max-width: 600px;
margin: 0 auto;
}

.milestones-wrap {
display: flex;
gap: 1rem;
align-items: flex-start;
line-height: 1.4;
}

.milestones-wrap p {
    color: var(--main-text-color);
}

.year {
font-weight: 700;
}

.achievement {
font-weight: 300;
}

/* -------------- Footer */

footer {
display: flex;
flex-direction: column;
align-items: center;
background-color: var(--background-color-white);
padding: 3rem 10%;
gap: 1.5rem;
}

footer h2 {
margin-bottom: 0;
}

.contact-info {
display: flex;
flex-direction: column;
align-items: center;
gap: 1.5rem;
}

.footer-text {
color: var(--main-text-color);
text-align: center;
}

.email-badge {
padding: 1rem 1.5rem;
background-color: var(--heading-primary-color);
border-radius: 200px;
}

.email-address {
color: #FFFFFF;
font-weight: 300;
}

.footer-image {
    margin: 2rem auto;
    width: 100%;
    max-width: 1200px;
}

.footer-link {
display: flex;
gap: 1rem;
}

.footer-link a {
color: var(--main-text-color);
font-size: 0.75rem;
text-decoration: underline;
text-align: center;
}

.footer-copyright {
    color: var(--main-text-color);
    font-size: 0.8rem;
}

/* -------------- Media Queries */


@media screen and (min-width: 1200px) {
header {
    padding: 0.3rem 15%;
    }
    
    #hero, #intro, #about, #usp,  #milestones, footer {
    padding: 3.25rem 15%;
    }

}

@media screen and (max-width: 1000px) {
.nav-menu {
display: none;
}
}

@media screen and (min-width: 641px) {
.about-inner:nth-child(2) {
flex-direction: row-reverse;
}
}

@media screen and (max-width: 640px) {

header {
padding: 0.3rem 1rem;
}

#hero, #intro, #about, #usp,  #milestones, footer {
padding: 3.25rem 1rem;
}

.list-contianer {
    padding: 0 1rem;
}

.hero-mobile-illustrations {
padding: 0px 1rem 5px;
}

#about {
    gap: 2rem;
}

.about-inner {
flex-direction: column;
gap: 1rem;
}

.about-img {
    width: 200px;
}

.usp-container {
flex-direction: column;
gap: 2rem;
}

.usp-wrap {
width: 100%;
}

.milestone-list-container {
width: 100%;
}

.footer-link {
gap: 0.5rem;
}

.footer-link a {
font-size: 0.65rem;
}
}