  @font-face {
  font-family: 'Chillax';
  src: url('/assets/fonts/Chillax-Medium.woff2') format('woff2'),
       url('/assets/fonts/Chillax-Medium.woff') format('woff');
  font-weight: normal;
  font-style: normal;

}

html {
  box-sizing: border-box;
  font-size: 18px;
  font-family: "Chillax";
}

*,
*:before,
*:after {
  box-sizing: inherit;
}
h2 {
  text-align: center;
}
body {
  margin: 0px;
  padding: 20px;
  line-height: 1.4;
}

section {
  background-color: rgba(255,255,255,.75);
  border-radius: 15px;
  font-family: "Chillax", arial;
}

#vidBG{
  position: fixed;
  right: 0;
  bottom: 0;
  min-width: 100%; 
  min-height: 100%;
  z-index: -1;
  box-shadow: inset 0 0 0 1000px rgba(0,0,0,.2);
}
.container {
  margin-bottom: 5px;
  padding: 20px;
}

.container h2 {
  text-transform: uppercase;
}

.columns {
  display: flex;
  flex-flow: row wrap;
}



/* HEADER */

header {
  background: url("/assets/images/DuaFlowerWallBG.jpg");
  background-position: left top;
  background-repeat: repeat;
  border-radius: 25px;
}
header img{
  padding: 10px 25px;
  background-color: rgba(255,255,255,.5);
  border-radius: 25px;
}

.headerImg {
  text-align: center;
}
.headerImg img{
  width: 50%;
}



/* NAV BAR */

#topNavSec {
  padding: 10px 0px 10px 0px;
  z-index: 100;
  width: 96%;
}
@media only screen and (max-width: 993px) {
  #topNavSec{
    display:none;
  }
}

#topNavMenu{
  display: flex;
  padding-left: 2%;
  margin-bottom: 0px;
  height: 100%;
}

.topNavItem {
  color: white;
  font-size: 1.5vw;
  text-align: center;
  width: 15%;
  margin-right: 2%;
  border-radius: 5px;
  background-color: #d1b7a2;
  cursor: pointer;
  text-decoration: none;
}

.topNavItem a{
  text-decoration: none;
  color: white;
}

#mobNavSec{
  padding-top: 5px;
  padding-bottom: 1px;
  z-index: 100;
  width: 96%;
}

@media only screen and (min-width: 992px) {
  #mobNavSec{
    display:none;
  }
}

.mobNavMenu {
  display: flex;
  padding-left: 2%;
  margin-bottom: 5px;
  height: 100%;
}

.mobNavItem {
  color: white;
  font-size: 3.5vw;
  text-align: center;
  width: 33%;
  margin-right: 2%;
  border-radius: 5px;
  background-color: #d1b7a2;
  cursor: pointer;
  text-decoration: none;
}

.sticky {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto auto;
  display: block;
  background-color: white;
}

.hiddenMenu {
  display: none !important;;
}


/* OPENTABLE RESERVATION WIDGET */

#ot-widget-container3 {
  margin-top: -35px;
  margin-bottom: -260px;
}

#ot-widget-container4 {
  margin-top: -35px;
  margin-bottom: -70px;
}

#openTable {
  display: flex;
  justify-content: center;
}

#openTblMob {
  margin: 0 auto;
  padding-top: 25px;
  padding-bottom: 20px; 
}

@media only screen and (max-width: 993px) {
  #openTblPC {
     display: none;
  }
} 

@media only screen and (min-width: 992px) {
  #openTblMob {
     display: none;
   }
}



/* MENU */

#menu{
  display: block;
  margin: auto;
}

.menuLine1 {
  text-align:center;
  width: 100%;
  margin-bottom: 5px;
}

@media screen and (max-width: 560px) {
  #menuButtons {
    display: none;
  }

  #mobMenuButtons div {
    display: flex;
  }
}

@media screen and (min-width: 561px) {
  #menuButtons div {
    display: flex;
  }

  #mobMenuButtons {
    display: none;
  }
}

#menuButtons, #mobMenuButtons {
  list-style: none;
  padding: 0px 0px;
  gap: 1px;
}

.menuLine1 .menuButton, .menuLine2 .menuButton {
  padding: 5px;
  cursor: pointer;
  border-radius: 4px;
  box-shadow: 0 12px 16px 0 rgba(187,163,99,0.24);
  background-color: #d1b7a2;
  color: #fff;
  margin-left: 1%;
  text-align: center;  
  font-size: 1.5vw;
}

@media only screen and (max-width: 993px) {
  .menuLine1 .menuButton, .menuLine2 .menuButton{
    font-size: 3.5vw;
  }
}

.menuLine1 .menuButton {
  width: 32%;
}

.menuLine2 .menuButton {
  width: 32%;
}


.menuButton:hover {
  background-color: #c3bebb;
  border-radius: 5%;
}

.menuDisp {
  display: none;
}

.menuDisp.active {
  display: block;
}

#menuContent {
  margin-top: 20px;
}

.menuDisp img {
  width: 100%;
  border-radius: 5px;
}

#menu .active-button {
  background-color: #d4d2cf; 
  color: #fff;
}



/* ABOUT US */

#aboutUs {
  width: 100%;
  margin: 10px auto;
  text-align: justify;
  align-content: center;
  justify-content: center;
}

#aboutUs .column {
  flex: 2;
  transition: 0.2s;
  margin: 15px;
  align-content: center;
}

.abtPic {
  transition: 0.2s;
  margin: 20px;
  align-content: center;
}

@media only screen and (min-width: 990px) {
  .abtPic {
    flex: 1;
  }
}

#abtUsPic {
  max-height: 100%;
  max-width: 100%;
}
.body {
  font-family: Arial, sans-serif;
  background-color: #dfd5d5;
}



/* OLIVE OIL */ 
#oliveOilSocial {
  text-align: center;
}

#oliveOilText {
  display: inline-block;
  text-align: justify;
}

@media only screen and (min-width: 990px) {
  #oliveOilText{
    width: 72%;
    margin-right: 2%;
  }
}

.subtext {
  font-size: calc(100% - 4px);
}


#oliveOilImgDiv {
  display: inline-block;
  vertical-align: top;
}

@media only screen and (min-width: 990px) {
  #oliveOilImgDiv{
    width: 25%;
  }
}

#oliveOilImg {
  width: 100%;
}


/* GALLERY */

#gallery {
  display: block;
}

#gallery .carousel-inner {
  height: 0;
  padding-bottom: 25%; /* this sets carousel aspect ratio (4:1 here) */
}

#gallery .carousel-item {
  position: absolute !important;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

#gallery .active.carousel-item{
  transition: opacity .6s 0s ease-in-out;
}

#gallery .carousel-item-start {
  transition: opacity .6s 0s ease-in-out;
}


#gallery .carousel-item img {
  height: 100%; /* Bootstrap handles width already */
  object-fit: contain; /* or 'contain' if you want stretch instead of crop */
  left: 6rem; /*important */
  margin: 0 auto; /*important */
  max-width: 50%; /*important */
  min-width: 50%;
  border-radius: 5px;
 /*background-color: rgba(255,255,255,1);*/
}

#gallery .carousel-control-prev-icon,
#gallery .carousel-control-next-icon {
  height: 15%;
  width: 25%;
  outline: black;
  background-color: rgba(0, 0, 0, 0.7);
  background-size: 100%, 100%;
  border-radius: 50%;
}

#gallery .carousel-control-prev {
  left: 20% !important;
}

#gallery .carousel-control-next {
  right: 20% !important;
}

#gallery .carousel-control-prev-icon{
  background-position: bottom 0px right 2px !important;
}

#gallery .carousel-control-next-icon{
  background-position: bottom 0px right -2px !important;
}



/* CONTACT US */

#contactUs{
  display: block;
}
#contactUs .container {
  display: flex;
  justify-content: space-evenly;
  align-items: flex-start;
  padding: 20px;
  margin-top: 50px;
}

.contact-form {
  background-color: #fff;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  width: 45%;
}
.map-container {
  position: relative;
  display: flex;
  align-items: center;
}

iframe {
  flex: 1;
}

.directions-link {
  margin-left: 10px;
  white-space: nowrap;
}
.location-info,
.address,
.number {
  display: flex;
  justify-content: start;
}

#contactUs,
h3 {
  text-align: left;
}

#contactUs h3 {
  font-size: 1.5rem;
}

#Hours h3 {
  padding-left: 2rem;
}

#hoursList li {
  text-align: left;
  white-space: nowrap;
}

.hoursDay {
  float: left;
  width: 50px;
}

#directionsBtn {
  padding: 0.75rem;
  text-align: left;
}



/* FOOTER */

footer {
  font-family: "Chillax", arial;
  font-size: 18px;
}
footer section {
  background: transparent;
}

#copyright {
  background-color: rgba(0, 0, 0, 0.7)
}
