:root
{
    /* Colors */
    --color-light-blue: rgba(0, 173, 230, 1);

    --color-dark-blue: rgba(33, 58, 88, 1);

    --color-mid-blue: rgb(0,91,127);

    --color-darker-blue: rgb(0,45,64);

}

/* ------------------------------------------------ */
/* Reset                                            */
/* ------------------------------------------------ */

html, body, ul, li
{
    margin: 0;
    padding: 0;
    font-family: 'Open Sans';
}

html {
    background:  var(--color-dark-blue);
    background-size: cover;
    color: white;
    scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
    padding: 0;
}

ul
{
    list-style-type: none;
}

p
{
    text-align: justify;
    font-size: 0.85rem;
    margin: 0;
    padding: 0;
}

a {
    color: white;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
    cursor: pointer;
}

a:active
{
    color: grey;
}


/* ------------------------------------------------ */
/* Fonts                                            */
/* ------------------------------------------------ */

@font-face
{
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: url("assets/fonts/Open_Sans/static/OpenSans/OpenSans-Regular.ttf") format("truetype");
}

.font-s
{
    font-size: 0.75rem;
}

.font-sm
{
    font-size: 0.85rem;
}

.font-m
{
    font-size: 1rem;
}

.font-l
{
    font-size: 1.25rem;
}

.font-xl
{
    font-size: 1.5rem;
}

.font-xxl
{
    font-size: 2rem;
}

.font-xxxl
{
    font-size: 3rem;
}

.startpage-branding--main {
    display: flex;
    flex-direction: column;      /* stapelt die Elemente vertikal */
    align-items: center;         /* zentriert horizontal */
    justify-content: center;     /* zentriert vertikal */
    min-height: 100vh;           /* füllt die komplette Höhe des Viewports */
    text-align: center;          /* optional: Text in der Mitte */
  }