/* CSS Reset */

* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
@font-face {
	src: url('./Inter.var.woff2') format('woff2-variations');
	font-family:'Inter';
	font-style: normal;
}


:root {
    font-family: Inter, sans-serif;
    font-feature-settings: 'liga' 1, 'calt' 1; /* fix for Chrome */
}

/* emove default margin and padding */
body, h1, h2, h3, h4, h5, h6, p, ol, ul {
    margin: 0;
    padding: 0;
}


body {
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}

.text-color-white {
    color: white;
}

.text-color-black {
    color: black;
}

/* Set box-sizing to border-box for all elements */
* {
    box-sizing: border-box;
}

/* emove list styles (bullets/numbers) */
ol, ul {
    list-style: none;
}

/* emove default hyperlink styles */
a {
    text-decoration: none;
    color: inherit;
}

/* Set default font family and size */
body {
    font-size: 16px;
    padding: 1em;
    font-variation-settings: "wght" 100, "slnt" 0;
}


header {
    position: sticky;
    top: 0;
    margin-top: -1em;
    padding-top: 1em;
    padding-bottom: 1em;
    margin-left: -1em;
    padding-left: 1em;
    margin-right: -1em;
    background: white;
    z-index: 10;
}

body.text-color-black header {
    background: white;
}

body.text-color-white header {
    background: black;
}

 header {
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
 }
header #logo {
    transition: letter-spacing 0.2s ease-in-out;
    font-size: 1em;
}

header #logo:hover {
    letter-spacing: 0.5em;
}

#logo span {
    transition: font-variation-settings 0.2s ease-in-out, letter-spacing 0.2s ease-in-out;
}

#logo span.effect {
    font-variation-settings: "wght" 900, "slnt" -10;
}

#background-color {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: background-color 0.3s ease-in-out;
    z-index: -1;
}

#background-color::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.1);
    transition: background 0.3s ease-in-out;
}

hr {
    width: 50%;
    margin-top: 2.5em;
    margin-bottom: 2.5em;
    margin-left: 0;
    margin-right: 0;
    height: 2px;
    border: none;
    background: currentColor;
    opacity: 0.2;
}

@media (max-width:767px) {
    ul#links > li >  a, ul#links > li  > .title {
        display: block;
    }
    ul#links > li > a::after, ul#links > li > .title::after {
        display: block;
        width: fit-content;
    }
}

@media (min-width: 768px) {
    body {
        font-size: 20px;
    }
}

@media (min-width: 1200px) { 
    body {
        font-size: 24px;
    }
    #bio .img {
        float: right;
        padding-left: 10px;
    }
    #bio .img, #bio .text {
        width: 50%;
    }

    #bio .img img {
        width: 100%;
        max-width: unset !important;
    }
 }

@media (min-width: 1650px) { 
    body {
        font-size: 30px;
    }
}

/* Add any additional reset styles here */

/* END: CSS Reset */

ul#links li {
    font-size: 3em;
}


body.text-color-white ul#links li > a::after, body.text-color-white ul#links li > .title::after {
    color: black;
    background-color: white;
}

body.text-color-black ul#links li > a::after, body.text-color-black ul#links li > .title::after {
    color: white;
    background-color: black;
}

body.item-focused ul#links li {
    opacity: 0.5;
}

ul#links li.active {
    opacity: 1 !important;
}

ul#links li.active button {
    cursor: zoom-out;
}

ul#links li button, ul#links li .title {
    appearance: none;
    font-size: 1em;
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    cursor: zoom-in;
    font-variation-settings: "wght" 100, "slnt" 0;
    transition: font-variation-settings 0.2s ease-in-out, letter-spacing 0.2s ease-in-out;
    position: relative;
    color: currentColor;
    font-family: inherit;
    display: inline-block;
}

ul#links li  > a::after, ul#links li  > button::after, ul#links li > .title::after {
    content: attr(data-year) '/' attr(data-type);
    font-size: 0.25em;
    padding: 0px 5px;
    font-variation-settings: "wght" 900, "slnt" 0;
    text-transform: uppercase;
}

ul#links > li > a {
    transition: font-variation-settings 0.2s ease-in-out, letter-spacing 0.2s ease-in-out;
    position: relative;
}

ul#links > li:hover {
    opacity: 1 !important;
}

ul#links li > a:hover, ul#links li > button:hover, ul#links li > .title:hover {
    font-variation-settings: "wght" 900, "slnt" -10;
    opacity: 1 !important;
}

#socials li > a::before { 
    content: '';
    display: block;
    position: absolute;
    width: 0;
    bottom: 0;
    left: 0;
    height: 2px;
    background: currentColor;
    transition: width 0.2s ease-in-out;
    pointer-events: none;
}

 #socials li > a:hover::before {
    width: 100%;
    right: 0;
}

ul#links li > a::before {
    content: attr(data-blurb);
    display: block;
    position: absolute;
    width: 100%;
    top: 100%;
    left: 0;
    height: 430px;
    transition: clip 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    z-index: 5;
    background:var(--bg-image), linear-gradient(rgba(0,0,0,0.6),rgba(0,0,0,0.6));
    background-size: cover;
    background-position: center;
    clip: rect(auto, auto, 0, auto);
    font-variation-settings: "wght" 400, "slnt" 0;
    font-size: 0.3em;;
    padding: 0.5em;
    color: white;
    background-blend-mode: overlay;
}

ul#links li > .title.active .about {
    clip: rect(auto, auto, 400px, auto); 
}

ul#links li > .title .about {
    display: block;
    position: absolute;
    width: 97vw;
    top: 100%;
    left: 0;
    height: 430px;
    transition: clip 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    z-index: 5;
    background:var(--bg-image);
    background-size: cover;
    background-position: center;
    clip: rect(auto, auto, 0, auto);
    font-variation-settings: "wght" 400, "slnt" 0;
    font-size: 0.3em;;
    padding: 0.5em;
    color: white;
}

ul#links li .title .about span {
    background: #000;
    padding: 0px 5px;
}

ul#links li > a:hover::before, #socials li > a:hover::before {
    clip: rect(auto, auto, 430px, auto); 
}

#bio {
    font-size: 1em;
    font-variation-settings: "wght" 400;
}

#bio p {
    margin-bottom: 1em;
}

#bio #bio-image {
    width: 100%;
    max-width: 600px;
    margin-bottom: 0.5em;
    border: 2px solid black;
}

#bio .credit {
    font-variation-settings: "wght" 700, "slnt" 0;
    font-size: 0.6em;
    padding-bottom: 2em;
}

#onesheet li {
    font-variation-settings: "wght" 100, "slnt" 0;
    margin-bottom:0.5em;
    font-size: 12px;
}


#socials li {
    font-variation-settings: "wght" 700, "slnt" 0;
    margin-bottom:0.5em;
    font-size:1em;
}

#socials li a {
    position: relative;
    transition: opacity 0.2s ease-in-out, font-variation-settings 0.2s ease-in-out;
}

#socials li a:hover {
    opacity: 0.5;
    font-variation-settings: "wght" 700, "slnt" -10;
}

a.external {
    font-variation-settings: "wght" 900, "slnt" -10;
    font-size: 1.5em;
    display: block;
    margin-top: 1em;
    width: fit-content;
    transition: opacity;
    background: #000;
    padding-right: 8px;
}

a.external:hover {
    opacity: 0.7;
}

a.external svg {
    height: 15px;
}

a.bit-top-track-button, .bit-nav-bar-container {
    display: none !important;
}

.bit-logo-container {
    display: none !important;
}

.bit-widget {
    font-family: inherit !important;
    font-variation-settings: "wght" 700, "slnt" 0;
}

.bit-widget a {
    color: inherit !important;
}

.bit-upcoming-events {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.bit-widget a.bit-offers {
    color: #fff !important;
}

.bit-rsvp-container {
    display: none !important;
}

h3 {
    font-variation-settings: "wght" 700, "slnt" -10;
    font-size: 1.1em;
}