﻿/* Variables */
:root {
    --screen-width: calc(100vw - var(--scrollbar-width));
}

/* general */
html {
    font-size: 18px; /* This affects all 'rem' sizes */
    /* Parallaxing */
    overflow: hidden;
}

body {
    font-family: "Futura-Light";
    text-align: center;
}

.scroll-panel {
    /* Parallaxing */
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    perspective: 10px;
    transform-style: preserve-3d;
}

.sections-container {
    /* Parallaxing */
    transform-style: preserve-3d;
}

.section {
    position: relative;
}

.h1, h1,
.h2, h2,
.h3, h3,
.h4, h4,
.h5, h5,
.h6, h6 {
    font-family: 'Futura-Medium-Bt';
}

.h1, h1 {
    text-transform: uppercase;
}

.filled {
    background-color: #ffffff;
}

/* Prevents flickering (which occurs when using a carousel) */
.navbar,
.section {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

a:focus,
button:focus {
    outline: none;
}

/* Header image */
.header-image-panel {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: calc(100vw * 800 / 1920);
    transform-style: preserve-3d;
}

.header-image-panel .header-image {
    /* Parallaxing */
    position: absolute;
    width: 100vw;
    height: 100%;
    left: 0;
    top: calc(-0.5 * (1.4 - 1.0) * (100vh - 100% - 2 * var(--navbar-height-offset)));
    z-index: -1;
    transform: translateZ(-4px) scale(1.4);
}

@supports (-ms-ime-align:auto) {
    /* Edge browser */
    .header-image-panel .header-image {
        top: 0;
        transform: initial;
    }
}

.header-image-panel .header-image-text {
    font-family: 'DIN-Engschrift-Std';
    text-transform: uppercase;
    font-size: 5.5rem;
    color: #ffffff;
    z-index: 1;
}

@media screen and (min-width: 768px) {
    .header-image-panel .header-image-text {
        font-size: 10rem;
    }
}

/* Soft separators */
.soft-separator-top {
    border-top: 1px solid #d0d0d0;
    height: calc(7px + 1px);
}

.soft-separator-bottom {
    border-bottom: 1px solid #d0d0d0;
    height: calc(7px + 1px);
}

/* Quotation block */
.quotation-block {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
    margin-bottom: 20px;
    border-top: 2px solid #000000;
    border-bottom: 2px solid #000000;
    padding: 15px;
    font-family: 'Futura-Medium-Bt';
}

.quotation-block div {
    display: flex;
    margin: 2rem 0;
    font-size: 1.75rem;
    text-transform: uppercase;
}

.quotation-block.subtle div {
    font-size: 1.3rem;
}

/* Whitespace separator */
.whitespace-separator {
    position: relative;
    width: 100%;
    height: 54px;
}

.whitespace-separator .separator-logo {
    position: absolute;
    width: 118px;
    height: 118px;
    left: 50%;
    margin-left: -59px;
    top: 50%;
    margin-top: -59px;
    background-image: url('../images/Gamedia-Logo.png?version=4');
    background-size: 100% 100%;
    z-index: 1;
}
