/*
    
## ## ## ## ##  ##              ## ## ## ## ##  ## ## ## ## ##  ## ## ## ## ##  ##          ##  ## ## ## ## ##  ## ## ## ## ##
##              ##              ##          ##  ##          ##  ##          ##  ## ##       ##  ##                    ##
##              ##              ##          ##  ##          ##  ##          ##  ##  ##      ##  ##                    ##
##    ## ## ##  ##              ##          ##  ## ## ## ##     ##          ##  ##    ##    ##  ## ## ## ## ##        ##
##          ##  ##              ##          ##  ##          ##  ##          ##  ##      ##  ##  ##                    ##
##          ##  ##              ##          ##  ##          ##  ##          ##  ##        ## #  ##                    ##
## ## ## ## ##  ## ## ## ## ##  ## ## ## ## ##  ## ## ## ## ##  ## ## ## ## ##  ##          ##  ## ## ## ## ##        ##

/**** TEXT & ICONS ****/

/* WHITE */
hr,
.prev, 
.next,
.teaser i,
.teaser p,
.teaser h3,
button,
.button,
input[type=submit],
#topfooter p,
#topfooter a {
    color: var(--white);
}

/* FLAMINGO */
#selection {
    color: var(--flamingo);
}

/* BLUE */
a,
.form h4,
.menuitem a:hover,
#topfooter p > a:hover,
#bottomfooter p > a:hover {
    color: var(--blue);
}

/* BLACK */
#popup h3,
#decline,
h1,
h2,
h3,
h4,
p,
li i,
#selection,
.menuitem a,
#topfooter p,
#topfooter p > a,
#bottomfooter p,
#bottomfooter a {
    color: var(--black);
} 

/* OTHER */
.alert i:nth-of-type(1) {
    color: green;
}

/**** ELEMENT BACKGROUND ****/

/* WHITE */
body,
.bottommenu nav,
.bottommenu,
.dropdown,
#teaserbox .box {
    background: var(--white);    
}

/* BLACK */
button,
.button,
.teaser i,
input[type=submit],
#burgermenu .burger .line {
    background: var(--black);
}

/* GREY */
input,
textarea {
    background: var(--grey);
}

/* FLAMINGO */
.has-figure::after,
.has-figure.fill-flamingo::after {
    background: var(--flamingo);
}

/* CHAMPAGNE */
.has-figure.fill-champagne::after {
    background: var(--champagne);
}

/* BLUE */
.teaser,
#topfooter,
.button:hover,
input[type=submit]:hover,
button:hover {
    background: var(--blue);
}

/* LIGHT BLUE */
#topfooter::after,
.has-figure.fill-light-blue::after {
    background: var(--light-blue);
}

/* BEAU BLUE */
#bottomfooter {
    background: var(--beau-blue);
}

#selection,
#burgermenu,
#decline {
    background: transparent;
}

/* OTHER */
#popup {
    background: #ffffff85;
}

/**** OUTLINE ****/
input:focus,
textarea:focus {
    outline: 1px solid var(--flamingo);
}
#decline {
    outline: 1px solid var(--black);
}
.button:focus-visible,
button:focus-visible,
input[type="submit"]:focus-visible,
a:focus-visible {
    outline: .2rem solid var(--black);
}

/**** BOX SHADOW ****/
.header.fixed {
    box-shadow: -1px 2px 19px 0 rgba(0, 0, 0, .39);
    -webkit-box-shadow: -1px 2px 19px 0 rgba(0, 0, 0, .39);
}
#popup {
    -webkit-backdrop-filter: blur(3rem);
    backdrop-filter: blur(3rem);
    box-shadow: var(--black) 0 0 10rem -4rem;
}

/**** TEXT DECORATION ****/
.menuitem a:hover {
    text-decoration: none;
}
#popup a,
#linkblock li a:hover,
#bottomfooter a {
    text-decoration: underline;
}

/**** TRANSITIONS ****/
nav,
#more,
.all i,
.dropdown,
.menuitem a,
.bottommenu nav,
#selection span {
    transition: all linear 100ms;
}

#burgermenu {
    transition: all linear 200ms;
}

/**** FONTS ****/
@font-face {
    font-family: 'Work Sans';
    src: url(../font/work-sans/WorkSans-VariableFont_wght.ttf);
}
* {
    font-family: 'Work Sans';
    line-height: 1.2;
}

/**** ROOT ****/
:root {
    --white: rgb(255, 255, 255);
    --grey: rgb(240, 240, 240);
    --flamingo: rgb(250, 243, 237);
    --champagne: rgb(241, 225, 209);
    --blue: rgb(44, 113, 168);
    --light-blue: rgb(195, 212, 233);
    --beau-blue: rgb(195, 212, 233);
    --black: rgb(0, 0, 0);
}

/**** TYPOGRAPHY ****/
h1 {
    margin: 0 0 1rem;
    font-size: clamp(1.75rem, 5vw, 3rem);
    font-weight: 500;
    letter-spacing: -3px;
}
h2 {
    margin: 0 0 1rem;
    font-size: clamp(1.45rem, 4vw, 2.5rem);
    font-weight: 500;
    letter-spacing: -3px;
}
h3 {
    margin: 0 0 1rem;
    font-size: clamp(1.3rem, 3vw, 2rem);
    font-weight: 500;
    letter-spacing: -3px;
}
h4 {
    margin: 0 0 1rem;
    font-size: clamp(1.3rem, 3vw, 2rem);
    font-weight: 500;
    letter-spacing: -3px;
}
p {
    margin: 0 0 1rem;
    font-size: clamp(1.1rem, 2vw, 1.25rem);
}