@import url('https://fonts.googleapis.com/css2?family=Azeret+Mono:ital,wght@0,100..900;1,100..900&display=swap');
*{box-sizing:border-box;}
html,body{width:100%;height:100%;margin:0;}
body{font-family:'Azeret Mono',monospace;font-variant-ligatures:none;overflow:hidden;}
a{color:black;}
#logo b{display:block;font-weight:800;}
#logo{text-decoration:none;display:flex;flex-flow:row nowrap;gap:0.5rem;align-items:center;justify-content: center;align-content: center;}
#logo span{transition:all 0.5s;}
#logo span:hover{filter:blur(1px);}
#circle{width:1.5rem;height:1.5rem;display:block;border-radius:100%;background:#e2f6f4;filter:blur(0);animation:circleBlur 3s ease-in-out infinite alternate;}@keyframes circleBlur{from{filter:blur(0);}to{filter:blur(5px);}}
#masthead{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem;}
nav a{cursor:pointer;text-decoration:none;transition:all 0.5s;}
nav a:hover{filter:blur(1px);}
nav .menu{display:flex;gap:2rem;text-transform:uppercase;}
p{line-height:1.5em;}
::selection{background:#e2f6f4;}
#primary{width:100%;height:calc(100dvh - var(--header-height));overflow-y:auto;overflow-x:hidden;padding:1rem;padding-top:0;}
p a,.artist-links a{text-decoration:none;padding:5px;background:#e2f6f4;border-radius:5px;}

.artist-page{width:100%;height:calc(100dvh - var(--header-height));display:flex;overflow:hidden;padding-top:0;}
.artist-layout{display:flex;flex:1;min-width:0;min-height:0;gap:1rem;padding:1rem;padding-top:0;}
.artist-sidebar{flex:1;min-width:0;min-height:0;padding:0;overflow:hidden;}
.artist-featured-image{width:100%;aspect-ratio:4/3;background-position:center;background-size:cover;background-repeat:no-repeat;border-radius:10px;}
.artist-sidebar-meta{display:grid;grid-template-columns:1fr 1fr;width:100%;margin-top:.5rem;}
.artist-socials{display:flex;flex-wrap:wrap;gap:1rem;justify-content:flex-end;}
.artist-socials a{display:block;}
.artist-socials img{display:block;width:24px;height:24px;}
.artist-genres{display:flex;flex-wrap:wrap;gap:.5rem;}
.artist-genres span{display:block;padding:5px;background:#e2f6f4;border-radius:5px;}
.artist-content{flex:1;min-width:0;min-height:0;padding:0;overflow-y:auto;overflow-x:hidden;}
.artist-header h1{margin-top:0;margin-bottom:1rem;}
.artist-bio{margin-bottom:1rem;}
.artist-section{width:100%;border-top:1px solid currentColor;}
.artist-section:last-child{border-bottom:1px solid currentColor;}
.artist-section summary{cursor:pointer;padding:1rem 0;list-style:none;text-transform:uppercase;transition:all 0.5s;}
.artist-section summary:hover{filter:blur(1px);}
.artist-section summary::-webkit-details-marker{display:none;}
.artist-section-content{padding:0 0 1rem;}
.artist-embed{width:100%;max-width:100%;margin-bottom:1rem;}
.artist-embed:last-of-type{margin-bottom:0;}
.artist-embed iframe{display:block;width:100%!important;max-width:100%!important;border:0;}
.artist-embed video{display:block;width:100%!important;max-width:100%!important;height:auto;}
.artist-embed embed,.artist-embed object{display:block;width:100%!important;max-width:100%!important;}
.artist-links,.artist-socials{margin:0;padding:0;list-style:none;}
.press-photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;}
.press-photo-grid figure{margin:0;}
.press-photo-grid img{display:block;width:100%;height:auto;}
.artist-concert{display:grid;grid-template-columns:25% 25% 25% 25%;align-items:start;width:100%;}
.artist-concert a{text-decoration:none;}
.concert-url{text-align:right;}
.artist-download-list{display:flex;flex-direction:column;gap:.5rem;}
.artist-download-list a{text-decoration:none;padding:5px;background:#e2f6f4;border-radius:5px;display:block;align-self:flex-start;}
.artist-password-form{display:flex;flex-direction:column;gap:1rem;max-width:400px;}
.artist-password-form input,.artist-password-form button{padding:.75rem;}
.artist-password-error{margin-top:1rem;}
.artist-member{display:grid;grid-template-columns:25% 75%;padding:.25rem 0;width:100%;}
.artist-member-name{font-weight:600;}
.artist-member-instrument{text-align:left;}

.artist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;width:100%;padding-top:0;}
.artist-grid-item{position:relative;display:flex;width:100%;aspect-ratio:4/3;background-position:center;background-size:cover;background-repeat:no-repeat;text-decoration:none;align-items:flex-end;padding:1rem;flex-wrap:wrap;border-radius:10px;filter:brightness(0.9);transition:all 0.5s;}
.artist-grid-item:hover{filter:unset;}
.artist-grid-name{color:white;font-size:1.25rem;text-shadow:0 1px 8px rgba(0,0,0,.5);width:100%;font-weight:bold;}
.artist-grid .artist-genres{font-size:.75rem;}

.artist-section-content *:first-of-type{margin-top:0;}
.artist-section-content *:last-of-type{margin-bottom:0;}

.artist-section-content-contact{display: flex;flex-flow: row wrap;gap:1rem;padding-bottom:1rem;}
.artist-contact{width:100%;}
.artist-contact h3{margin:0;}
.artist-contact a{text-decoration:none;background:#e2f6f4;border-radius:5px;padding:5px;display:inline-block;}

@media(max-width:768px){
body{overflow:auto;}
#masthead{height:auto;}
.artist-page{height:auto;display:block;overflow:visible;}
.artist-layout{display:flex;flex-wrap:wrap;min-height:0;overflow:visible;}
.artist-sidebar{width:100%;flex:none;height:auto;overflow:visible;}
.artist-content{width:100%;flex:none;height:auto;overflow:visible;}
.press-photo-grid{grid-template-columns:1fr;}
.artist-concert{grid-template-columns:1fr 1fr;row-gap:.25rem;padding-bottom:1rem;}
.artist-concert:last-of-type{padding-bottom:0;}
.concert-url{text-align:left;}
.artist-grid{grid-template-columns:1fr;}
.artist-member{grid-template-columns: 100%;}
}