*, *::before, *::after {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  font-size: 18px;
}
body {
  background-color: #edab20;
  font-size: 18px;
}
main {
  max-width: 1800px;
  display: flex;
  flex-flow: column wrap;
  gap: 40px;
  width:76%;
  margin: 0 auto;
}
.main-container {
  display: flex;
  flex-flow: column wrap;
  justify-content: flex-start;
  align-items: stretch;
  gap: 20px;
}
.main {
  max-width: 1800px;
  display: flex;
  flex-flow: column wrap;
  /*gap: 40px;*/
  width:76%;
  margin: 0 auto;
}
svg.background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index:-1;
}

p {
  font-size: 1.5rem;
  line-height: 2.8rem;
  font-weight: light;
  margin-bottom: 50px;
}
.emphasis-big {
  font-size:1.5rem;
  color:#f7f0e3;
}
.emphasis-bigger {
  font-size:1.8rem;
  color:#f7f0e3;
}

.nowrap {
  white-space:nowrap;
}

.heading {
  position: relative;
}
.heading-top-bg {
  border-radius: 1rem;
  height:200px;
}
.heading-middle {
  border-radius:1rem;
  width:100%;
  padding: 1rem 3rem;
  margin-left: 20px;
  margin-top: -170px;
}
.heading-bottom-bg {
  position:absolute;
  bottom:-10px;
  width:65%;
  margin-left:30%;
  border-radius:30px;
  height:20px;
}
.heading-bottom-bg .flower {
  position:absolute;
  right: -10px;
  bottom: -10px;
}

.standout-1 {
  background-color: #33bebb;
  padding: 1rem 3rem;
  border-radius: 1rem;
  height:200px;
}
.standout-3 {
  margin-top: 60px;
}
.standout-4 {
  background-color: #33bebb;
  position:absolute;
  padding: 1rem 3rem;
  bottom:-60px;
  right:-40px;
  left:unset;
  width:60%;
  height:70%;
  border-radius: 1rem;
}
.standout-4 div {
  font-size:2rem;
  margin-bottom:30px;
  line-height:2.6rem;
}

.about-the-band {
  margin-top:120px;
}
.about-the-band img {
  float:right; width:50%; margin-top:-30px; margin-left:30px;
}

.paisley.upcoming-shows-block {
  background-color:#170d05;
  background-image:url('../images/record-store-shelf-fade.png');
}
.disco-balls {
  position:absolute;
  top:-110px;
  right:0;
  max-width:100%;
}
.email-icon {
  width: 100px;
  background-color: #f7f0e3;
  border-radius: 7px;
  cursor:pointer;
}
.email-icon:hover {
  background-color:#fff;
  cursor:pointer;
}


.sticky-header {
  width:100%;
  height: 190px;
  position:sticky;
  top:0px;
  background-color:#2A180A;
  color:#e8d7b7;
  padding:20px;
  display:flex;
  justify-content: space-between;
  align-items: center;
  gap:20px;
  flex-flow: row nowrap;
  z-index: 20;
  border-bottom: 3px solid #48372c;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.4);
}
.sticky-header--next-show {
  text-align:left;
  line-height: 1.5rem;
  margin-left: 50px;
  font-size:0.9rem;
}
.sticky-header--next-show em, .sticky-header--next-show span {
  font-size:1.2em;
}

.paisley {
  position:relative;
  background-color:#512c1c;
  background-image:url('../images/paisley-background.png');
  padding: 40px;
  color: #e8d7b7;
  border-radius: 1rem;
}

#menu {
  text-align:center;
  background-color: #2A180A;
  border-radius: 50%;
  overflow: hidden;
}

#menu li {
  margin: 2rem auto;
  padding: 0;
  font-size: 1rem;
  transform: translateZ(1px);
  position: relative;
  z-index: 10;
}

#menu a {
  position: relative;
  z-index: 10;
  line-height: 2rem;
}
#menu a label {
  font-size: 1.5rem;
}


#logo {
  margin-left: 100px;
  margin-right: 100px;
}
#logo img {
  height:100%;
  max-height:150px;
  width: auto;
  margin-top:10px;
}


.button-bottom-right {
  padding:10px 10px 10px 20px;
  position:absolute;
  bottom:-40px;
  right:-20px;
  background-color:#32BEBB;
  display:flex;
  justify-content:end;
  align-items: center;
  border:1px dashed #2A180A;
  color:#2A180A;
  font-size:1.5rem;
}
.button-bottom-right:hover {
  background-color:#0F7D79;
  color:#bcf8f6;
  cursor:pointer;
}

a {
  font-size: 1rem;
  color: #f7f0e3;
}
a:hover {
  text-decoration: none;
  color:#fff;
}

ul.bigger li {
  font-size: 1.8rem;
  line-height: 2.6rem;
}

.video-container {
  flex: 1 1 max-content;
  text-align: center;
  max-width:1800px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto;
  padding:0 0 40px 0;
}
.promo-video {
  overflow:hidden;
  position:absolute;
  top:44px;
  left: calc(50% - 386px);
  z-index:2;
  margin:0;
  padding:0;
  /*background-color:#555;*/
  border-top-left-radius: 10% 10%;
  border-top-right-radius: 10% 10%;
  border-bottom-right-radius: 10% 10%;
  border-bottom-left-radius: 10% 10%;
  /*border:1px solid #444;*/
}
.promo-video--bg {
  box-shadow: 0 8px 12px 0 rgba(0, 0, 0, 0.8);
  width:900px;
  height:400px;
  z-index:1;
  margin:0;
  padding:0;
}


.box-shadow {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.7);
}


.menu-screen-overlay,
#discoid-canv {
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.9); /* Dark background for contrast */
  overflow: hidden; /* Hide overflowing sparkles */
  position: fixed;
  z-index:-1;
}
.menu-screen-overlay { z-index:-2; top:0; left:0; }

canvas {
  top:0;
  left:0;
  display:block;
  opacity:0.2;
}

.that-70s-band-heading {
    font-size:2rem;
}

#footer {
    margin-top:100px;
    width:100%;
    min-height:100px;
    background-color:#2A180A;
    color:#e8d7b7;
    display:flex;
    flex-flow: row nowrap;
    justify-content:space-around;
    align-items:center;
    pad:20px;
}
#footer-text {
    padding: 20px;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
}
#footer-text div {
    text-align: center;
}

.jump-link-target {
    display:block; scroll-margin-top: 100px; width:100%; height:20px;
}

#booking-block h2 {
  font-size:2.6rem; line-height:2.6rem;
}
#booking-block .standout-3 {
  width:35%; margin-top:20px;
}
#booking-block .booking-phone {
  font-size:2.6rem; text-decoration:none;
}


.schedule .event {
  display:flex;
  justify-content: space-between;
  gap: 3%;
  background-color:#000;
  padding:20px;
  border-top: 2px dotted rgb(87, 74, 56);
  border-right: 2px dotted rgb(87, 74, 56);
  border-left: 2px dotted rgb(87, 74, 56);
}
h2.schedule-heading {
  font-size:3rem;
  line-height:3rem;
  margin-bottom: 60px;
}
.schedule .event > div,
.schedule .event > div a,
.schedule .event > div > .color-orange {
  font-size:1.3rem;
} 
.schedule .event--date {
  flex: 0 0 18%;
  color:#fff;
}
.schedule .event--location {
  flex: 1 0 22%; 
}
.schedule .event--city-state {
  flex: 1 0 16%;
  color:#fff;
}
.schedule .event--links {
  flex: 0 1 37%;
  text-align:right;
}
.schedule .event--info {
  width:100%;
  border-bottom: 2px dotted rgb(87, 74, 56);
  border-left: 2px dotted rgb(87, 74, 56);
  border-right: 2px dotted rgb(87, 74, 56);
  font-size: 1rem;
  margin-bottom: 100px;
  background-color:#000;
  padding:10px 20px 20px;
}
.schedule .event--link {
  border: 3px solid #2A180A;
  background-color:#48372c;
  padding:5px 10px;
  margin-right:10px;
  line-height: 2.4rem;
  display:inline-block;
}


a.move-up-image img{
  /* Initial state: no vertical movement */
  transform: translateY(0);
  transform: scaleY(100%);
  transform: scaleX(100%);
  /* Smooth transition for the transform property over 0.3 seconds with an ease effect */
  transition: transform 0.3s ease; 
}

a.move-up-image:hover img {
  /* Final state on hover: move the image up by 10 pixels */
  transform: translateY(-10px) scale(140%);
}
