/* Typography */
@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans_light-webfont.woff2') format('woff2'),
    url('fonts/gill_sans_light-webfont.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans_light_italic-webfont.woff2') format('woff2'),
    url('fonts/gill_sans_light_italic-webfont.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans-webfont.woff2') format('woff2'),
    url('fonts/gill_sans-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans_italic-webfont.woff2') format('woff2'),
    url('fonts/gill_sans_italic-webfont.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans_medium-webfont.woff2') format('woff2'),
    url('fonts/gill_sans_medium-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans_medium_italic-webfont.woff2') format('woff2'),
    url('fonts/gill_sans_medium_italic-webfont.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans_bold-webfont.woff2') format('woff2'),
    url('fonts/gill_sans_bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans_bold_italic-webfont.woff2') format('woff2'),
    url('fonts/gill_sans_bold_italic-webfont.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans_heavy-webfont.woff2') format('woff2'),
    url('fonts/gill_sans_heavy-webfont.woff') format('woff');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Gill Sans';
    src: url('fonts/gill_sans_heavy_italic-webfont.woff2') format('woff2'),
    url('fonts/gill_sans_heavy_italic-webfont.woff') format('woff');
    font-weight: 900;
    font-style: italic;
}

/* Gill Sans Condensed */
@font-face {
    font-family: 'Gill Sans Condensed';
    src: url('fonts/gillsans_condensed-webfont.woff2') format('woff2'),
    url('fonts/gillsans_condensed-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Gill Sans Condensed';
    src: url('fonts/gillsans_condensed_bold-webfont.woff2') format('woff2'),
    url('fonts/gillsans_condensed_bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

/* Reset */
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

* {
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

/* Variables */
:root {
    --slide-duration: 5000ms;
    --text-color: #0a0a0a;
}

/* Utils */
.separator {
    position: relative;
    display: inline-block;
    width: 3px;
    height: 24px;
    margin: 0 16px;
    background-color: var(--text-color);
}

/* Base */
html, body {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: #fff;
    color: var(--text-color);
    font-family: 'Gill Sans', sans-serif;
}

body {
    padding: clamp(2rem, 5vw, 80px);
    padding-top: 3.375rem;
    cursor: pointer;
}

@media (orientation: landscape) and (max-height: 450px) {
    body {
        padding-top: 1.6875rem;
    }
}

body.is-pressed {
    cursor: grabbing;
}

a {
    color: inherit;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/* Slideshow */
.slideshow {
    position: fixed;
    inset: 0;
    z-index: 0;
}

.slide {
    position: absolute;
    width: 100%;
    height: 100%;
    visibility: hidden;
}

.slide picture {
    display: block;
    width: 100%;
    height: 100%;
}

.slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    pointer-events: none;
}

.slide.active {
    z-index: 2;
    visibility: visible;
}

.slide.out {
    opacity: 0;
}

/* Typography scale */
.t1 {
    font-size: clamp(1.2rem, 2vw, 1.667rem);
    letter-spacing: 0.04em;
}

.t2 {
    font-size: clamp(0.95rem, 1.4vw, 1.167rem);
    letter-spacing: 1.5px;
}

/* Details */
.details {
    position: fixed;
    z-index: 10;
    cursor: pointer;
}

.details .separator {
    height: 24px;
}

/* Footer links */
.footer-links {
    display: flex;
    z-index: 10;
    position: fixed;
    left: 50%;
    bottom: 2rem;
    transform: translateX(-50%);
    text-transform: lowercase;
}

@media (min-width: 768px) {
    .footer-links {
        bottom: 3rem;
    }
}

@media (orientation: landscape) and (max-height: 450px) {
    .footer-links {
        bottom: 1.6875rem;
    }
}

.footer-links .separator {
    bottom: -2px;
    width: 2px;
    height: 16px;
}

.footer-links .separator.dot {
    bottom: -8px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.footer-links .separator.hyphen {
    height: 2px;
    width: 10px;
    bottom: -11px;
}




.footer-links.dynamic-aligned {
    transform: none;
    left: var(--alignment-left, 50%);
}