:root {
    --bg:#F8F8F8;
    --content-bg: #FFFFFF;
    --content-text: rgb(80, 80, 80);
    --navbar-bg: rgba(255, 255, 255, .4);
    --navbar-text: #101010;
    --figure-width: 35%;

    --tab-bg-selected: transparent;
    --tab-text-selected: rgb(159, 7, 48);
    --tab-bg-unselected: transparent;
    --tab-text-unselected: rgba(159, 7, 48, .3);

    --text-header: rgb(159, 7, 48);

    --accordion-bg-selected: rgb(159, 7, 48);
    --accordion-text-selected: rgb(255, 255, 255);
    --accordion-bg-unselected: rgba(159, 7, 48, .3);
    --accordion-text-unselected: rgba(0,0,0, .3);

    --input-bg: rgb(235, 235, 235);
    --button-bg: rgb(159, 7, 48);
    --button-bg-hover: rgba(159, 7, 48, .3);
    --button-text: rgb(255, 255, 255);

    --footer-bg: rgb(159, 7, 48);
    --footer-text: rgba(255, 255, 255, .7);
    --footer-menu-hover: rgb(255,255,255);

    --link-text: rgb(159, 7, 48);
    --link-text-hover: rgba(159, 7, 48, .4);

    --socialmedia-link-text-header: rgb(0, 0, 0);
    --socialmedia-link-text-header-hover: rgba(0, 0, 0, 0.2);

    --socialmedia-link-text-footer: rgba(255, 255, 255, 0.4);
    --socialmedia-link-text-footer-hover: rgb(255, 255, 255);

}

* {
    margin:0px;
    padding:0px;
}

@media (min-width: 901px) {

    body {
        background-color:var(--bg);
        display:flex;
        flex-direction: column;
        margin-left:10%;
        margin-right:10%;
        font-family: "Roboto";
        font-size: 18px;
        color:var(--content-text);
    }

    header, main, footer {
        background-color:var(--content-bg);
    }

    main {
        padding-left:10px;
        padding-right:10px;
    }

    div.logo img {
        height: 30px;
        margin-left:10px;
    }

    div.horizontal {
        display: flex;
        flex-direction: row;
        width: 100%;
    }

    div.vertical {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    h1 {
        font-size: 32px;
        margin-top:15px;
        margin-bottom:15px;
        width: 100%;
        text-align: center;
    }

    nav {
        width:100%;
        background-image:url('../images/bg.png');
        background-repeat: no-repeat;
        background-size: cover;
        height:700px;
        background-position-y: -650px;
    }

    nav.subpage {
        height:60px;
    }

    nav ul {
        display: flex;
        background-color:var(--navbar-bg);
        list-style: none;
        flex-direction: row;
        justify-content: space-evenly;
        padding-top:20px;
        padding-bottom:20px;
    }

    div.text ul li {
        margin-left: 20px;
    }

    nav ul li a {
        color:var(--navbar-text);
        text-decoration: none;
        font-size: 20px;;
        font-weight: bold;
    }

    div.topheader {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        padding-top:20px;
        padding-bottom:10px;
        flex-shrink: 0;
        flex-grow: 0;
    }

    div.topheader div.contact {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }

    div.topheader div.contact div.contact-item {
        display: flex;
        flex-direction: row;
        margin-left:20px;
        margin-right:20px;
    }

    div.contact-form, div.contact-form div {
        width: 100%;
    }

    div.topheader div.contact div.contact-item div.icon {
        margin-right:10px;
    }

    div.article-content p {
        padding-bottom:10px;
    }

    div.article-content p ul li {
        margin-left:30px;
    }

    div.paragraph {
        display: flex;
        justify-content: space-between;
        padding-bottom:50px;
    }

    div.paragraph.figure-left {
        flex-direction: row;
    }

    div.paragraph.figure-right {
        flex-direction: row-reverse;
    }

    div.figure-full {
        width:100%;
        text-align: center;
        margin-top:20px;
        margin-bottom:20px;
    }

    div.paragraph div.figure img {
        width:100%;
        opacity: .7;
    }

    div.paragraph div.text {
        padding-right:20px;
        padding-left:20px;
        width:100%;
        background-color:rgb(245, 245, 245);
        border-radius: 20px;
        padding:20px;
        font-size: 20px;
    }

    div.paragraph div.text h3 {
        width: 100%;
        text-align: center;
        font-size: 30px;
        color:var(--text-header);
        padding-bottom:30px;
    }

    div.figure-left div.text {
        margin-left:20px;
    }

    div.figure-right div.text {
        margin-right:20px;
    }

    p {
        text-align: justify;
        padding-bottom:20px;
    }

    img.float-left {
        float:left;
        margin-right:40px;
    }

    img.float-right {
        float:right;
        margin-left:40px;
    }

    img.figure {
        border-radius: 8px;
    }

    div.form-input {
        display: flex;
        flex-direction: column;
        margin-bottom:20px;
    }

    div.form-input label {
        font-weight: bold;
    }

    div.form-input textarea, div.form-input input {
        background-color: var(--input-bg);
        border:1px solid var(--input-bg);
        padding-left:20px;
        color:black;
        width:calc(100% - 30px);
        margin-top:10px;
        padding-top:20px;
        padding-bottom:20px;
        font-family: "Roboto";
        font-size:14px;
    }

    form.contact-form {
        display: flex;
        width: 70%;
    }

    form.contact-form button {
        background-color:var(--button-bg);
        border:0px;
        color: var(--button-text);
        font-weight: bold;
        font-size: 16px;
        padding-top:20px;
        padding-bottom: 20px;
        transition: all;
        transition-duration: 0.5s;
        transition-timing-function: ease-out;
    }

    form.contact-form button:hover {
        background-color:var(--button-bg-hover);
    }

    footer {
        background-color:var(--footer-bg);
        margin-top:30px;
        color:var(--footer-text);
        justify-content: space-around;
        display: flex;
        flex-direction: row;
        width: 100%;
        gap: 30px;
        padding-top:20px;
        padding-bottom:20px;
    }

    footer h1 {
        text-align: left;
        margin-bottom:0px;
    }
    footer div {
        flex-shrink: 0;
    }
    footer div.company {
        display: flex;
        flex-direction: column;
        padding-left:40px;
    }

    footer div.company div.socialmedia {
        color:var(--footer-text);
        font-size: 30px;
        margin-bottom:20px;
    }

    footer div.company div.socialmedia a {
        color:var(--socialmedia-link-text-footer);
    }

    footer div.company div.socialmedia a:hover {
        color:var(--socialmedia-link-text-footer-hover);
    }

    header div.socialmedia a {
        color: var(--socialmedia-link-text-header);
    }

    header div.socialmedia a:hover {
        color: var(--socialmedia-link-text-header-hover);
    }

    footer div.menu h2 {
        margin-bottom:25px;
    }

    footer div.menu ul li {
        list-style: none;
        margin-bottom:10px;
    }

    footer div.menu a {
        color:var(--footer-text);
        text-decoration: none;
        transition: all;
        transition-duration: 0.5s;
        transition-timing-function: ease-out;
    }

    footer div.menu a:hover {
        color: var(--footer-menu-hover);
    }


    div.reference-layout {
        display: flex;
        flex-direction: column;
        gap: 5px;
        justify-content: center;
        align-items: center;
    }

    a.link {
        color: var(--link-text);
        text-decoration: none;
        transition: all;
        transition-duration: 0.5s;
    }

    a.link:hover {
        color: var(--link-text-hover);
        text-decoration: underline;
    }

    div.captcha {
        display: flex;
        justify-content: center;
    }

    div.captcha img {
        width: 25%;
    }

    div.feedback {
        font-weight: bold;
        padding-top:20px;
        padding-bottom:20px;
        padding-left:30px;
        margin-top:10px;
        margin-bottom:10px;
        border-radius: 10px;
    }

    div.feedback.success {
        background-color:rgb(172, 223, 174);
        color:rgb(32, 65, 32);
    }

    div.feedback.error {
        background-color:rgb(223, 178, 172);
        color:rgb(65, 32, 32);
    }
}
