body, html {
    margin: 0;
    padding: 0;
    font-family: HelveticaNeue, Arial, sans-serif;
    /* background-color: #000; */
    /* background-color: #FDFCFB;     */
    background-color: #0E0E0E; 
    color: #FFF; 
}

@font-face {
    font-family: 'HelveticaNeue';
    src: url('fonts/HelveticaNeue_Bold.ttf') format('truetype');
}

/* @font-face {
    font-family: 'HelveticaNeue';
    src: url('fonts/Helvetica_Regular.otf') format('opentype');
} */

/* @font-face {
    font-family: 'HelveticaNeue';
    src: url('fonts/Berthold_Akzidenz_Grotesk_Medium.otf') format('opentype');
} */

.poster {
    width: 100vw;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.spiral-image {
    background-image: url('images/torus-black-on-white-6605b1c9823e1.png');
    background-size: cover;
    height: 300px;
    width: 300px;
}

.spiral-image-light-theme {
    background-image: url('images/torus-black-on-white-6605b1c9823e1.png');
    background-size: cover;
    height: 300px;
    width: 300px;
}

.spiral-image-dark-theme {
    background-image: url('images/torus-white-on-black-6605b1c966ef9.png');
    background-size: cover;
    height: 300px;
    width: 300px;
}

.flex-item {
    flex: 1;
}

h1 {
    font-size: calc(18px + 2.0vw);
    text-transform: none;
    margin: 0;
    margin-bottom: 1em;
    text-align: center;
}

p {
    font-size: calc(14px + 1.0vw);
    text-transform: none;
    margin: 0;
    margin-top: 0.5vw;
    text-align: center;    
}

.light-theme {
    background-color: #FDFCFB;
    color: #000;
}

.dark-theme {
    background-color: #0E0E0E;
    color: #FFF;
}

.long-text {
    overflow-wrap: break-word;
}

.email {
    position: fixed;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%);
}

#theme-toggle {
    font-family: HelveticaNeue, Arial, sans-serif;
    position: fixed;    
    top: 0;
    right: 0;
    transform: translateX(-50%);
}

