/*This file is for basic universal styling such as typography, sizing and spacing.*/

/*Removes default settings from the browser*/
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* Root variables for colour, typography, spacing */
:root {
    /* Colours */
    --primary-color: #8ad397;
    --secondary-color: #02313E;
    --accent-color: #F9B35B;
    --other-green: #1AEC7A;
    --orange: #EC654B;
    --white-text-color: #F2F2F2;
    --black: #00171E;
    --grey: #ECF1F4;

    /* Typography */
    --font-family-base: 'Poppins', sans-serif;
    --font-size-base: 16px;
    --font-size-xs: calc(var(--font-size-base) * 0.755); /* Smaller text 12px */
    --font-size-sm: calc(var(--font-size-base) * 0.875); /* Small text 14px */
    --font-size-lg: calc(var(--font-size-base) * 1.125); /* Larger text  18px*/
    --font-size-xl: calc(var(--font-size-base) * 1.618); /* Golden ratio  26px*/
    --font-size-xxl: calc(var(--font-size-base) * 1.978); /* Golden ratio  32px*/
    --line-height-base: 1.6;

    /* Spacing (Golden ratio inspired). If base font size is 16px*/

    --space-xs: 0.25rem; /* 4px */
    --space-sm: 0.5rem;  /* 8px */
    --space-md: 1rem;    /* 16px */
    --space-lg: 2rem;    /* 32px */
    --space-xl: 4rem;    /* 64px */
    --space-xxl: 6rem;    /* 96px */

    /* Border radius */
    --border-radius: 15px;
}

body {
    font-family: var(--font-family-base);
    font-size: var(--font-size-base);
    line-height: var(--line-height-base);
    color: var(--white-text-color);
    background-color: var(--secondary-color);
}

/* Headings */
h1, h2 {
    color: var(--white-text-color);
    font-weight: 400;
    line-height: 1.3;
    margin-top: 0; /*To override type.less default styles*/
    margin-bottom: var(--space-lg);

}

h3 {
    color: var(--white-text-color);
    font-weight: 400;
    line-height: 1.3;
    margin-top: 0; /*To override type.less default styles*/
    margin-bottom: var(--space-md);

}


h4, h5, h6 {
    color: var(--white-text-color);
    font-weight: 400;
    margin-top: 0; /*To override type.less default styles*/

}

h1 { font-size: calc(var(--font-size-base) * 2.618); } /*42px, 2.6em, 2.6rem*/
h2 { font-size: calc(var(--font-size-base) * 2); }  /*32px, 2em, 2rem*/
h3 { font-size: calc(var(--font-size-base) * 1.618); } /*26px, 1.6em, 1.6rem*/
h4 { font-size: var(--font-size-lg); } /*18px, 1.1em, 1.1rem*/
h5 { font-size: var(--font-size-base); } /*16px, 1em, 1rem*/
h6 { font-size: var(--font-size-sm); } /*14px, 0.9em, 0.9rem*/

/* Text elements */

p {
    margin: 0;
}



ul {
    margin: 0;
}

a, a:focus {
    color: var(--white-text-color);
    text-decoration: none;
}


a:hover {
    cursor: pointer;
    font-weight: 500;
    text-decoration: none;
    color: var(--white-text-color);
}

li {
    list-style: none;
    text-decoration: none;
    color: var(--white-text-color);
    font-weight: 300;

}


input {
    font-size: var(--font-size-base);
    border-radius: var(--border-radius);
}


input::placeholder {
    font-size: var(--font-size-base); /* ≈ 16px */
}

img {
    max-width: 100%;
}

.navbar {
    width: 100%;
    border-bottom: 1px solid var(--primary-color);
}

.nav-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 60px;
    width: 95vw;
    margin: 0 auto;


}

.navbar-list-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: var(--space-lg);
    height: 100%;
    margin-bottom: 0;
    width: 500px;

}

.nav-link:hover {
    font-weight: 500;

}

.nav-thermify-logo {
    width: 120px;
    height: auto;

}

/*To ensure every content on the page is the same width*/
.main-container {
    width: 95vw;
    margin: 2% auto 0;
}

/* Django error messages */

.errorlist {
    background-color: #EC654B;
    border-radius: var(--border-radius) 0 var(--border-radius) var(--border-radius);
    margin-bottom: 10px;
    max-width: fit-content;
    justify-self: center;

}

.error-message {
    background-color: #EC654B;
    padding: 5px 10px;
    border-radius: var(--border-radius) 0 var(--border-radius) var(--border-radius);
    max-width: fit-content;
    font-size: var(--font-size-sm);

}

