/* Google fonts import */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Macondo&family=Oswald:wght@200..700&display=swap');

/* CSS variables*/
:root {
    /*--variable-name */
    --primary-font: "Oswald", sans-serif;
    --primary-color: #002060; /* Dark Blue */
    --secondary-color: #416a8e; /* blue */
    --tertiary-color: #BDD7EE; /* light blue */
    --light-highlight: #EEB4D1; /* light pink */
}

/* Override overscroll behavior */
*, *::after, *::before {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* General styles */
body {
    min-height: 100vh;
    display: flex;
    width: 100%;
    flex-direction: column;
    font-family: var(--primary-font);
    overflow-x: hidden;
    overflow-wrap: anywhere;
}

main {
    /* Main element to take up any surplus space to push footer down */
    flex: 1 0 auto;
    max-width: 1399px;
    justify-content: center;
    margin: auto;
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
}


h1, h2, h3, h4 {
    padding-left: 5px;
    text-transform: uppercase;
    text-align: center;
}

h2 {
    color: var(--secondary-color);
}

h3 {
    color: var(--secondary-color);
}

p {  
    padding-left: 1.0rem;
    padding-right: 1.0rem;
}

/* Navbar styling */
header {
    display: flex;
    width: 100%;
}


#navbar {
    background-color: var(--tertiary-color);
    display: flex;
    width: 100%;
}

#site-heading {
    text-wrap: wrap;
}

/* Main content */
.cover-image {
    background: url("../images/home-background.jpeg") no-repeat center center/cover;
    height: 500px;
    width: 100%;
    position: relative;
}

.home-cover-text, .cities-cover-text {
    background-color: rgba(255, 255, 255, 0.865);
    text-align: center;
    position: absolute;
    padding-top: 0.4rem;
    top: 225px;
    width: 100%;
}


.introduction {
    padding-top: 3px;
    padding-bottom: 3px;
    background-color: rgba(189, 215, 238, 0.35);
    position: relative;
}

.introduction h2, .introduction p {
    margin: 10px;
}
/* Country coverage summary */
.coverage {
    margin: 10px;
}

.coverage > h2, .activities-overview > h2 {
    color: var(--primary-color);
    padding-top: 10px;
}

/* Activites section */
.activities-overview {
    background-color: rgba(189, 215, 238, 0.35);
    width: 100%;
}

.activities-overview > div {
    margin-top: 10px;
}

.activities-overview h2 {
    margin: 10px;
}

.activities-list {
    list-style-type: none;
    display: block;
}

.activities-list i {
    padding: 2px;
    padding-bottom: 10px;
}


/* Cities page - overview */
.city-coverage {
    margin-top: 20px;
}

.city-coverage > h2 {
    background-color: rgba(189, 215, 238, 0.5);
}

/* Cities page - gallery */
.gallery {
    display: flex;
    column-count: 3;
    width: 100%;
}

.gallery > img {
    width: calc(100%/3);
}

/* Form */
.signup-form, .response-form {
    background: url("../images/home-background.jpeg");
    background-size: cover;
    width: 100%;
}

.form, .response {
    color: #ffffff;
    background-color: rgb(247, 247, 247, 0.9);
    padding: 30px;
    color: var(--primary-color);
    margin: 30px;
    max-width: 400px;
    width: 75%;
}

.form input {
    width: 100%;
}

.form-buttons {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 10px;
}

.join-button {
    background-color: var(--primary-color);
    color: white;
    width: 99%;
    height: 30px;
    text-transform: uppercase;
    border: none;
}

.text-input:hover {
    border-color: var(--light-highlight);
}

.join-button:hover {
    background-color: var(--light-highlight);
    color: black;
}

/* Footer */
footer {
    display: flex;
    width: 100%;
    max-height: 55px;
}

.contact {
    background-color: var(--primary-color);
    height: 60px;
}

.social-links {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    list-style-type: none;
    font-size: 25px;
    margin: 10px;
    padding: 0;
    
}

.contact .social-links i {
    color: var(--tertiary-color);
    transition: color 0.2s ease-in-out;
}

.contact .social-links i:hover {
    color: var(--light-highlight);
}

