/* =========================================================
   THE GLOBAL MUSEUM PROJECT
   www.museum.com
   Main stylesheet
========================================================= */


/* =========================================================
   BASIC SETTINGS
========================================================= */

:root {

    --red: #b31822;
    --text: #222;
    --background: #ffffff;

    --content-width: 1000px;
    --header-width: 1100px;

    font-family:
        Arial,
        Helvetica,
        sans-serif;
}


* {

    box-sizing: border-box;

}


html,
body {

    margin:0;
    padding:0;

    background:var(--background);

    color:var(--text);

}


body {

    font-size:16px;

    line-height:1.6;

}


a {

    text-decoration:none;

}



/* =========================================================
   HEADER
========================================================= */


.header-top-bar {

    width:100%;

    background:var(--red);

}


.header-inner {

    max-width:var(--header-width);

    height:140px;

    margin:0 auto;

    padding:0 20px;

    display:flex;

    align-items:center;

    justify-content:center;

    position:relative;

}



/* Logo exakt mittig */

.logo {

    position:absolute;

    left:50%;

    transform:translateX(-50%);

}



.logo img {

    width:260px;

    height:auto;

    display:block;

}



/* Sprache rechts */

.language-switch {

    position:absolute;

    right:20px;

    color:white;

    font-size:15px;

    white-space:nowrap;

}


.language-switch a {

    color:white;

}


.language-switch a.active {

    font-weight:bold;

}



/* =========================================================
   MAIN CONTENT
========================================================= */


main {

    padding:40px 20px;

}


/* allgemeiner Inhaltsbereich */

.content,
.home-intro {

    max-width:var(--content-width);

    margin:0 auto;

}



/* Überschriften */

h1 {

    font-size:30px;

    line-height:1.3;

    margin-top:0;

    margin-bottom:20px;

}



h2 {

    font-size:22px;

    line-height:1.4;

    margin-top:35px;

    margin-bottom:15px;

}



h3 {

    font-size:18px;

    margin-top:25px;

}



/* Texte */

p {

    margin:0 0 18px 0;

}


ul {

    margin-bottom:20px;

}



/* =========================================================
   PANORAMA IMAGE
========================================================= */


.panorama-full {

    width:100vw;

    position:relative;

    left:50%;

    transform:translateX(-50%);

    display:flex;

    justify-content:center;

    margin-bottom:35px;

}



.panorama-img {

    width:90vw;

    max-width:2000px;

    height:auto;

    display:block;

}



/* =========================================================
   FOOTER
========================================================= */


.legal-bar {

    background:var(--red);

    color:white;

    margin-top:50px;

    padding:15px 0;

}



.legal-inner {

    max-width:1100px;

    margin:0 auto;

    padding:0 20px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:20px;

    flex-wrap:wrap;

}



.legal-left {

    font-size:14px;

}



.legal-links {

    display:flex;

    gap:18px;

}



.legal-links a {

    color:white;

    font-size:14px;

}



.legal-links a:hover {

    text-decoration:underline;

}



/* =========================================================
   MOBILE
========================================================= */


@media (max-width:900px) {


    .header-inner {

        height:120px;

    }


    .logo img {

        width:220px;

    }


    .language-switch {

        right:15px;

    }


    .content,
    .home-intro {

        max-width:100%;

    }

}



@media (max-width:600px) {


    .header-inner {

        height:100px;

    }


    .logo img {

        width:180px;

    }


    .language-switch {

        font-size:13px;

    }


    h1 {

        font-size:24px;

    }


    h2 {

        font-size:20px;

    }


    main {

        padding:25px 15px;

    }


    .panorama-img {

        width:100vw;

    }


    .legal-inner {

        flex-direction:column;

        text-align:center;

    }


    .legal-links {

        justify-content:center;

        flex-wrap:wrap;

    }

}