:root {
    --light: #fefefe;
    --medium: #cacaca;
    --dark: #323232;

    /*cookie consent modal colors*/
    --cc-bg: var(--dark);
    --cc-text: var(--light);
    --cc-btn-primary-bg: #60fed2;
    --cc-btn-primary-text: #000;
    --cc-btn-primary-hover-bg: #4dd4ae;
    --cc-btn-secondary-bg: #242c31;
    --cc-btn-secondary-text: var(--cc-text);
    --cc-btn-secondary-hover-bg: #2b353c;
    --cc-toggle-bg-off: #667481;
    --cc-toggle-bg-on: var(--cc-btn-primary-bg);
    --cc-toggle-bg-readonly: #343e45;
    --cc-toggle-knob-bg: var(--cc-cookie-category-block-bg);
    --cc-toggle-knob-icon-color: var(--cc-bg);
    --cc-cookie-category-block-bg: #1e2428;
    --cc-cookie-category-block-bg-hover: #242c31;
    --cc-section-border: #222a30;
    --cc-block-text: #bac9cf;
    --cc-cookie-table-border: #2b3035;
    --cc-overlay-bg: rgba(4, 6, 8, .85);
    --cc-webkit-scrollbar-bg: #2c343a;
    --cc-webkit-scrollbar-bg-hover: #384148;
}

html,
body {
    margin: 0;
    height: 100%;
    width: 100%;
    font-size: 12pt;
    background-color: var(--light);
    display: flex;
}

#container {
    display: flex;
    width: 100%;
    flex-direction: column;
}

header {
    background-color: var(--dark);
    height: 4rem;
}

main {
    flex: 1;
    /* to scroll just the "main" div */
    overflow: auto;
}

section {
    /* takes the visible area of the "main" div */
    height: 100%;
    overflow: auto;
    flex-direction: row;
    background: var(--light);
}

section:nth-child(odd) {
    background-color: var(--medium);
}

footer {
    background: var(--dark);
    color: var(--light);
    align-items: center;

}

footer p {
    margin: 0;
    padding: 1rem;
    text-align: center;
}

footer a {
    color: var(--light);
    text-decoration: none;
}

footer a:visited {
    color: var(--medium);
    text-decoration: none;
}

.half-height {
    height: 50%;
}

/* Smartphones */
@media only screen and (min-device-width : 320px) and (max-device-width : 767px) and (orientation: landscape) {
    section {
        background: green;
    }

    /* Cookie Consent Modal*/
    #cm {
        font-size: 1rem;
    }
}

@media only screen and (max-device-width : 767px) and (orientation: portrait) {
    section {
        background: orange;
    }
    
    header {
        height: 8rem;
    }
    /* Cookie Consent Modal*/
    #cm {
        font-size: 3rem;
    }

    #cs {
        font-size: 2rem;
        padding: 0 1em;
    }

    #c-s-in {
        height: 100%;
        max-height: 90%;
        position: relative;
    }
}

/* Tablets */
@media only screen and (min-device-width : 768px) and (max-device-width : 1223px) and (orientation: landscape) {
    section {
        background: red;
    }

    /* Cookie Consent Modal*/
    #cm {
        font-size: 1.5rem;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1223px) and (orientation: portrait) {
    section {
        background: grey;
    }

    /* Cookie Consent Modal*/
    #cm {
        font-size: 2rem;
    }

    #cs {
        font-size: 2rem;
        padding: 0 1em;
    }

    #c-s-in {
        height: 100%;
        max-height: 90%;
        position: relative;
    }
}

/* Desktops and Laptops */
@media only screen and (min-width : 1224px) and (max-device-width : 1823px) {
    section {
        background: royalblue;
    }
}

/* Large Screens */
@media only screen and (min-width : 1824px) {
    section {
        background: yellow;
    }
}