html {
  font-size: 16px;
}

body {
  font-family: "Baskervville", serif;
  font-size: 16px;
  background-color: #54272a;
}
body p {
  font-size: 16px;
  font-family: "Baskervville", serif;
  text-wrap: balance;
}

div {
  text-wrap: balance;
}

.serif {
  font-family: "Baskervville", serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Libre Franklin", sans-serif;
  font-weight: 700;
}

#logo {
  opacity: 0;
  animation: fadeIn 1s ease-in-out forwards;
}

#mainNavbar {
  background: linear-gradient(rgba(0, 0, 0, 0.8), rgba(84, 39, 42, 0));
}

.navbar-brand img {
  max-width: 26vw;
}

.navbar-nav {
  text-align: right;
}

.navbar-toggler {
  border-radius: 0px;
}

@media screen and (max-width: 999px) {
  .navbar-brand img {
    max-width: 45vw;
  }
}
.nav-link {
  font-family: "Karla", sans-serif;
  font-size: 1.15rem;
  letter-spacing: -1px;
  font-weight: 400;
  padding-right: 1rem !important;
  padding-left: 1rem !important;
  display: inline-block;
  border-bottom: 2px solid transparent;
}
.nav-link:hover {
  color: #bfb4ab;
  border-bottom: 2px solid #bfb4ab;
}

.btn {
  border-radius: 0px;
}

.btn-outline-primary {
  color: #fff;
  border-color: #fff;
}
.btn-outline-primary:hover {
  color: #4f2427;
  background-color: #fff;
  border-color: #fff;
}

footer {
  color: #fff;
  background-color: #54272a;
  position: relative;
}
footer::before {
  content: "";
  position: absolute;
  top: -138px;
  left: 0;
  right: 0;
  height: 140px; /* Height of the wedge */
  background-color: #54272a;
  clip-path: polygon(100% 66%, 0% 100%, 100% 100%);
}
footer h3 {
  font-family: "Karla", sans-serif;
  letter-spacing: -1px;
}
footer a {
  color: #fff;
  text-decoration: none;
  text-decoration: underline;
  text-decoration-color: #6e6a63;
}
footer a:hover {
  color: #000;
}
footer .spacer {
  height: 8.5rem;
}
footer .footer_block {
  border-bottom: 1px solid #fff;
  padding-bottom: 1.7rem;
  margin-bottom: 2rem;
  position: relative;
}
footer .footer_block::after {
  content: "";
  position: absolute;
  bottom: -6px;
  left: 0;
  right: 0;
  height: 1px; /* Height of the wedge */
  border-bottom: 1px solid #fff;
}
footer .footer_block:last-of-type {
  border-bottom: none;
}
footer .footer_block:last-of-type::after {
  display: none;
}
footer .footer_social {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
footer .footer_social i.fa {
  font-size: 3rem;
}
footer .logo {
  margin: 0px auto;
  margin-top: -6rem;
  margin-bottom: 3rem;
  border-radius: 50%;
  height: 175px;
  width: 175px;
}
footer .logo img {
  height: 175px;
  width: 175px;
}

/*
----------------------------------------------------------------------
----------------------------------------------------------------------
    HOMEPAGE
----------------------------------------------------------------------
----------------------------------------------------------------------
*/
@keyframes fillAnimation {
  from {
    fill: transparent;
  }
  to {
    fill: white; /* or any color you prefer */
  }
}
.filled {
  animation: fillAnimation 0.15s forwards; /* Adjust duration as needed */
}

.homepage_intro,
.menu_intro,
.about_intro,
.membership_intro {
  min-height: 100vh;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  color: #fff;
  position: relative;
}

@media screen and (min-width: 999px) {
  .homepage_intro,
  .menu_intro,
  .about_intro {
    background-attachment: fixed;
  }
}
.homepage_intro {
  background-image: url(images/spagetti.jpg);
}

.press_intro {
  background-image: url(images/press.jpg);
}

.hp_animation {
  display: block;
  max-width: 70vw;
  margin: 0px auto;
}

.hp_callout {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  color: #fff;
  background-color: #54272a;
}
.hp_callout .lead {
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
  font-family: "Libre Franklin", sans-serif;
  line-height: 1.2;
}
.hp_callout .lead span {
  color: #bfb4ab;
}
.hp_callout .support {
  padding-top: 1rem;
  font-size: 1.25rem;
  font-weight: 400;
  color: #fff;
}
.hp_callout .padded_area {
  min-height: 30vh;
  border: 1px solid #fff;
  outline: 1px solid #fff;
  outline-offset: 9px;
  padding-top: 15vh;
  padding-bottom: 15vh;
}

/*
----------------------------------------------------------------------
----------------------------------------------------------------------
    MENU PAGE
----------------------------------------------------------------------
----------------------------------------------------------------------
*/
.menu_intro {
  background-image: url(images/pasta-not-patriarchy.jpg);
  min-height: 80vh;
}

.menulinks {
  font-size: 1.5rem;
  font-weight: 100;
  font-family: "Libre Franklin", sans-serif;
  letter-spacing: -1px;
}
.menulinks a {
  color: #fff;
  text-decoration: none;
  display: inline-block;
  font-weight: 400;
  padding: 0px 2rem;
  border-bottom: 2px solid transparent;
}
.menulinks a:hover {
  color: #bfb4ab;
  border-bottom: 2px solid #bfb4ab;
}

@media screen and (max-width: 768px) {
  .menulinks {
    color: #54272a;
  }
  .menulinks a {
    display: block;
    text-align: center;
    max-width: 70vw;
    margin: 0px auto;
    border: 1px solid #fff;
    padding: 0.5rem;
  }
  .menulinks a:hover {
    border-bottom: 1px solid #bfb4ab;
  }
}
/*
----------------------------------------------------------------------
----------------------------------------------------------------------
    ABOUT PAGE
----------------------------------------------------------------------
----------------------------------------------------------------------
*/
.about_intro {
  background-image: url(images/history.jpg);
  background-position: 50% 50%;
  min-height: 80vh;
}

.dining_room {
  background-color: #bfb4ab;
}
.dining_room .carousel-item {
  padding-top: 100px;
  padding-bottom: 100px;
  padding-left: 12vw;
  padding-right: 12vw;
}
.dining_room .carousel-control-prev-icon,
.dining_room .carousel-control-next-icon {
  filter: invert(100%);
}

.about_team {
  background-color: #231f20;
  padding-top: 8rem;
  padding-bottom: 8rem;
  color: #fff;
}
.about_team .lead {
  color: #a19d96;
  font-weight: 700;
  font-size: 2rem;
  font-family: "Libre Franklin", sans-serif;
  line-height: 1.2;
}
.about_team .lead span {
  color: #fff;
}
.about_team .support {
  padding-top: 1rem;
  font-size: 1.25rem;
  font-weight: 400;
  color: #fff;
}
.about_team .support a {
  color: #fff;
  text-decoration: none;
}

.team_member {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.team_member h2,
.team_member h3 {
  color: #54272a;
  font-family: "Baskervville", serif;
  text-transform: none;
  font-weight: 400;
}
.team_member h3 {
  padding-bottom: 1rem;
  font-family: "Libre Franklin", sans-serif;
  color: #a19d96;
}
.team_member #readMore {
  display: block;
  padding-top: 1rem;
  font-size: 1.3rem;
  font-family: "Baskervville", serif;
  color: #a19d96;
}

#teamCarousel {
  background-color: rgb(239, 235, 229);
  padding-top: 5rem;
  padding-bottom: 5rem;
}
#teamCarousel .team_title {
  color: #231f20;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.2;
}
#teamCarousel .carousel-control-prev-icon,
#teamCarousel .carousel-control-next-icon {
  filter: invert(100%);
}

@media screen and (max-width: 768px) {
  .dining_room .carousel-item {
    padding-left: 0vw;
    padding-right: 0vw;
  }
  .team_member h2 {
    padding-top: 3rem;
  }
  #teamCarousel .carousel-control-next,
  #teamCarousel .carousel-control-prev {
    top: 100vw;
    bottom: auto;
  }
}
.press_intro {
  background-image: url(images/press.jpg);
  min-height: 80vh;
}

.presslinks {
  font-size: 2rem;
  font-weight: 100;
  font-family: "Libre Franklin", sans-serif;
  letter-spacing: -1px;
}
.presslinks a {
  color: #fff;
  text-decoration: none;
  display: inline-block;
  font-weight: 400;
  border-bottom: 2px solid transparent;
}
.presslinks a:hover {
  color: #bfb4ab;
  border-bottom: 2px solid #bfb4ab;
}

/*
----------------------------------------------------------------------
----------------------------------------------------------------------
    MEMBERSHIP PAGE
----------------------------------------------------------------------
----------------------------------------------------------------------
*/
.membership_intro {
  background-image: url(images/flying2.jpeg);
  min-height: 80vh;
  background-position: 50% 0%;
}

.desktop_hide {
  display: none;
}

@media screen and (max-width: 768px) {
  .container {
    padding-left: 30px;
    padding-right: 30px;
  }
  footer .spacer {
    display: none;
  }
  .mobile_hide {
    display: none;
  }
  .desktop_hide {
    display: block;
  }
  .mobile_no_top_padding {
    padding-top: 0px !important;
  }
  .mobile_no_bottom_padding {
    padding-bottom: 0px !important;
  }
}
/* 

DISABLED DUE TO DESIGN CHANGE


.arrow_stripe, .block_stripe {

    background-repeat: repeat-x;
    background-position: center;
    height:42px;
    background-color:$maroon;
}
.arrow_stripe {
    background-image: url(images/arrow-stripe.png);
}
.block_stripe {
    background-image: url(images/block-stripe.png);
}


.fancy_button_c {
    display:none;
    border: 4px double white;
    padding:1.5rem;
    font-size:1.7rem;
    text-transform: uppercase;
    color:$white;
    position: relative;
    display:block;
    span {
        display:block;
    }
    &:hover {
        color:$light-grey;
        text-decoration: none;

    }
}
.fancy_button_c::before,.fancy_button_c::after,.fancy_button_c > span::before,.fancy_button_c > span::after {
    content: "";
    position: absolute;
    width: 19px;  
    height: 19px; 
    background-size: cover;
}
.fancy_button_c::before {
    top: 0;
    left: 0;
    background-image: url('images/top-left-corner.png');
}
.fancy_button_c::after {
    top: 0;
    right: 0;
    background-image: url('images/top-right-corner.png');
}
.fancy_button_c > span::before {
    bottom: 0;
    left: 0;
    background-image: url('images/bottom-left-corner.png');
}
.fancy_button_c > span::after {
    bottom: 0;
    right: 0;
    background-image: url('images/bottom-right-corner.png');
}

*/