/* Delici - Restaurants HTML Template */

/*** 

====================================================================
      Fonts
====================================================================

***/


@import url('global.css');
@import url('swiper.css');
@import url('owl.css');
@import url('preloader.css');
@import url('font-awesome.css');
@import url('simple-line-icons.css');
@import url('animate.css');
@import url('jquery-ui.css');
@import url('jquery.fancybox.min.css');
@import url('custom-animate.css');


/*** 

====================================================================

  Main Header style

====================================================================

***/

.main-header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  padding: var(--padding-zero);
  background: none;
  min-height: 0;
  z-index: 999;
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.fixed-header.header-down {
  top: -51px;
}

.fixed-header.header-up {
  top: -175px;
}

.main-header .auto-container {
  max-width: 1780px;
  padding: 0 20px;
}

.header-top {
  position: relative;
  padding-top: var(--padding-top-10);
  padding-bottom: var(--padding-bottom-10);
  background: none;
  color: #ffffff;
  border-bottom: 1px solid var(--white-color-opacity-four);
}

.header-top .top-left {
  position: relative;
  float: left;
  line-height: 30px;
}

.header-top .top-info {
  position: relative;
}

.header-top .top-info li {
  position: relative;
  float: left;
  margin-right: 70px;
  line-height: 30px;
  color: #ffffff;
  font-size: 14px;
  font-weight: 400;
}

.header-top .top-info li:last-child {
  margin-right: 0;
}

.header-top .top-info li .icon {
  position: relative;
  padding-right: var(--padding-right-5);
}

.header-top .top-info li:after {
  content: '';
  position: absolute;
  left: 100%;
  margin-left: var(--margin-left-30);
  top: 50%;
  margin-top: -4px;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.header-top .top-info li:last-child:after {
  display: none;
}

.header-top .top-info li a {
  position: relative;
  display: block;
  line-height: 30px;
  color: #ffffff;
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.header-top .top-info li a:hover {
  color: var(--main-color);
}

.header-top .top-right {
  position: relative;
  float: right;
  line-height: 30px;
}

.main-header .header-upper {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  background: none;
  padding: 0 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.0);
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.fixed-header .header-upper {
  position: relative;
  top: 50px;
  background: #202020;
  border-bottom-color: rgba(0, 0, 0, 0.15);
}

.header-two.fixed-header .header-upper {
  background: #ffffff;
}

.main-header ul,
.main-header ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.main-header .main-box {
  position: relative;
  padding: 0px;
}

.main-header .main-box .logo-box {
  position: relative;
  display: block;
  padding: 8px 0px;
  margin-left: 140px;
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  z-index: 5;
}

.fixed-header .main-box .logo-box {
  padding: 8px 0px;
}

.fixed-header .main-menu .navigation>li {
  padding: 15px 0px;
}

.main-header.fixed-header .main-menu .navigation>li>ul {
  top: 134%;
}

.main-header.fixed-header .header-upper .links-box {
  padding: 15px 0px;
}

.main-header .main-box .logo-box .logo {
  position: relative;
  display: block;
}

.main-header .main-box .logo-box .logo img {
  position: relative;
  display: block;
  height: 100px;
  z-index: 1;
}

.main-header .nav-box {
  position: static;
  float: right;
}

.main-header .header-upper .nav-box {
  display: none;
}

.main-header .header-upper .links-box {
  position: relative;
  float: left;
}

.main-header .header-upper .links-box .link {
  position: relative;
  float: left;
  margin-left: var(--margin-left-50);
}

.main-header .header-upper .links-box .link:first-child {
  margin-left: 0;
}

.main-header .info-btn {
  position: relative;
  cursor: pointer;
  background: none;
  font-size: var(--font-16);
  color: var(--white-color);
  padding-top: var(--padding-top-15);
  line-height: 34px;
}

.main-header .info-btn img {
  height: 20px;
}

.main-header .nav-toggler {
  position: relative;
  float: left;
  left: 0;
  top: 0;
  padding: 0;
  display: none;
}

.main-header .nav-toggler button {
  position: relative;
  width: 30px;
  height: 40px;
  line-height: 40px;
  background: none;
  color: #e1e1e1;
  font-size: var(--font-16);
  margin: 0px;
  border-radius: 0px;
  outline: none !important;
}

.main-header .nav-toggler button img {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.main-header .nav-outer {
  position: static;
  float: left;
  display: none;
}

.main-header .link.info-toggler {
  display: none;
}

.main-header .nav-toggler {
  display: block;
}

.main-menu {
  position: static;
  display: block;
  padding: 0px 0px;
}

.main-menu .navbar-collapse {
  padding: 0px;
  margin: 0px;
  border: none;
  box-shadow: none;
}

.main-menu .navigation {
  position: static;
  z-index: 1;
}

.main-menu .navigation>li {
  position: static;
  display: block;
  float: left;
  padding: 15px 0px;
  margin-left: var(--margin-left-50);
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li>a {
  position: relative;
  display: block;
  font-size: var(--font-12);
  color: var(--white-color);
  padding-top: var(--padding-top-20);
  padding-bottom: var(--padding-bottom-20);
  font-weight: 700;
  line-height: 30px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  opacity: 1;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li.dropdown {
  position: relative;
}

.main-menu .navigation>li.dropdown.has-mega-menu {
  position: static;
}

.main-menu .navigation>li.dropdown>a {
  padding-right: var(--padding-right-20);
}

.main-menu .navigation>li.dropdown>a:after {
  font-family: 'Font Awesome 6 Pro';
  content: "\f107";
  position: absolute;
  right: 0px;
  top: 18px;
  display: block;
  line-height: 30px;
  font-size: var(--font-12);
  font-weight: 400;
  z-index: 5;
}

.main-menu .navigation>li>a:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 15px;
  display: block;
  height: 5px;
  border-top: 1px solid var(--main-color);
  border-bottom: 1px solid var(--main-color);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li.dropdown>a:before {
  right: 20px;
}

.main-menu .navigation>li:hover>a:before,
.main-menu .navigation>li.current>a:before,
.main-menu .navigation>li.current-menu-item>a:before {
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
  visibility: visible;
}

.main-menu .navigation>li:hover>a,
.main-menu .navigation>li.current>a,
.main-menu .navigation>li.current-menu-item>a {
  color: var(--main-color);
  text-decoration: none;
  opacity: 1;
}

.main-menu .navigation>li>ul {
  position: absolute;
  left: -35px;
  top: 100%;
  width: 280px;
  padding-top: var(--padding-top-30);
  padding-bottom: var(--padding-bottom-30);
  z-index: 100;
  opacity: 1;
  text-align: left;
  background: var(--color-two);
  border: none;
  border-radius: 0;
  -webkit-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  -ms-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  -o-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  -moz-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
  -moz-transition: all 100ms ease;
  -webkit-transition: all 100ms ease;
  -ms-transition: all 100ms ease;
  -o-transition: all 100ms ease;
  transition: all 100ms ease;
}

.main-menu .navigation>li.dropdown.has-mega-menu>ul {
  left: 0;
  width: 100%;
  padding-top: var(--padding-top-55);
  padding-bottom: var(--padding-bottom-20);
}

.main-menu .navigation>li.dropdown.has-mega-menu>ul .auto-container {
  max-width: 1200px;
}

.main-menu .navigation>li .mega-menu {
  position: relative;
}

.main-menu .navigation>li.dropdown.has-mega-menu>ul:before {
  content: '';
  position: absolute;
  top: 0;
  right: 100%;
  width: 2000px;
  height: 100%;
  background: var(--color-two);
}

.main-menu .navigation>li.dropdown.has-mega-menu>ul:after {
  content: '';
  position: absolute;
  top: 0;
  left: 100%;
  width: 2000px;
  height: 100%;
  background: var(--color-two);
}

.main-menu .navigation>li .mega-menu .menu-inner {
  position: relative;
}

.main-menu .navigation>li .mega-menu .row {
  margin: 0 -25px;
}

.main-menu .navigation>li .mega-menu .menu-block {
  position: relative;
  padding: 0 25px;
  margin-bottom: var(--margin-bottom-30);
  text-align: center;
}

.main-menu .navigation>li .mega-menu .menu-block .image {
  position: relative;
  display: block;
  width: 100%;
  border: 1px solid transparent;
  margin-bottom: var(--margin-bottom-15);
  overflow: hidden;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li .mega-menu .menu-block:hover .image {
  border-color: var(--main-color);
}

.main-menu .navigation>li .mega-menu .menu-block .image img {
  display: block;
  width: 100%;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li .mega-menu .menu-block:hover .image img {
  transform: scale(1.05);
}

.main-menu .navigation>li .mega-menu .menu-block .title {
  position: relative;
  display: block;
  font-size: var(--font-13);
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.main-menu .navigation>li .mega-menu .menu-block .title a {
  position: relative;
  color: var(--white-color);
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li .mega-menu .menu-block:hover .title a {
  color: var(--main-color);
}

.main-menu .navigation>li>ul>li {
  position: relative;
  margin-bottom: var(--margin-bottom-10);
}

.main-menu .navigation>li>ul>li:last-child {
  margin-bottom: 0;
}

.main-menu .navigation>li>ul>li>a {
  position: relative;
  display: block;
  padding-left: var(--padding-left-35);
  padding-right: var(--padding-right-35);
  font-size: var(--font-15);
  line-height: 30px;
  font-weight: 400;
  color: var(--white-color);
  text-transform: capitalize;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li>ul>li.dropdown>a:after {
  font-family: 'Font Awesome 6 Pro';
  content: "\f105";
  position: absolute;
  right: 30px;
  top: 0px;
  display: block;
  line-height: 30px;
  font-size: var(--font-12);
  font-weight: 400;
  z-index: 5;
}

.main-menu .navigation>li>ul>li>a:before {
  content: '';
  position: absolute;
  left: 35px;
  top: 50%;
  margin-top: -4px;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  opacity: 0;
  visibility: hidden;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li>ul>li:hover>a:before,
.main-menu .navigation>li>ul>li.current>a:before {
  opacity: 1;
  visibility: visible;
}

.main-menu .navigation>li>ul>li:hover>a,
.main-menu .navigation>li>ul>li.current>a {
  color: var(--main-color);
  padding-left: 55px;
}


.main-menu .navigation>li.dropdown:hover>ul {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(-30px);
  -ms-transform: translateY(-30px);
  transform: translateY(-30px);
  -moz-transition: all 500ms ease;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

.main-menu .navigation>li>ul>li>ul {
  position: absolute;
  left: 100%;
  top: 0;
  margin-left: 2px;
  width: 280px;
  padding-top: var(--padding-top-30);
  padding-bottom: var(--padding-bottom-30);
  z-index: 100;
  opacity: 1;
  text-align: left;
  background: var(--color-two);
  border: none;
  border-radius: 0;
  -webkit-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  -ms-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  -o-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  -moz-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03), -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
  -moz-transition: all 100ms ease;
  -webkit-transition: all 100ms ease;
  -ms-transition: all 100ms ease;
  -o-transition: all 100ms ease;
  transition: all 100ms ease;
}

.main-menu .navigation>li>ul>li>ul:before {
  content: '';
  position: absolute;
  left: -2px;
  top: 0;
  width: 2px;
  height: 100%;
}

.main-menu .navigation>li>ul>li>ul>li {
  position: relative;
  margin-bottom: var(--margin-bottom-10);
}

.main-menu .navigation>li>ul>li>ul>li:last-child {
  margin-bottom: 0;
}

.main-menu .navigation>li>ul>li>ul>li>a {
  position: relative;
  display: block;
  padding-left: var(--padding-left-35);
  padding-right: var(--padding-right-35);
  font-size: var(--font-15);
  line-height: 30px;
  font-weight: 400;
  color: var(--white-color);
  text-transform: capitalize;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li>ul>li>ul>li>a:before {
  content: '';
  position: absolute;
  left: 35px;
  top: 50%;
  margin-top: -4px;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  opacity: 0;
  visibility: hidden;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-menu .navigation>li>ul>li>ul>li:hover>a:before,
.main-menu .navigation>li>ul>li>ul>li.current>a:before {
  opacity: 1;
  visibility: visible;
}

.main-menu .navigation>li>ul>li>ul>li.dropdown>a:after {
  font-family: 'Font Awesome 6 Pro';
  content: "\f105";
  position: absolute;
  right: 30px;
  top: 0px;
  display: block;
  line-height: 30px;
  font-size: var(--font-12);
  font-weight: 400;
  z-index: 5;
}

.main-menu .navigation>li>ul>li>ul>li:hover>a,
.main-menu .navigation>li>ul>li>ul>li.current>a {
  color: var(--main-color);
  padding-left: 55px;
}

.main-menu .navigation>li>ul>li.dropdown:hover>ul {
  visibility: visible;
  opacity: 1;
  top: 0;
  -webkit-transform: translateY(-30px);
  -ms-transform: translateY(-30px);
  transform: translateY(-30px);
  -moz-transition: all 500ms ease;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

/*** 

====================================================================
  Hidden Sidebar style
====================================================================

***/

body.visible-sidebar {
  overflow-y: hidden;
}

.menu-backdrop {
  position: fixed;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9990;
  background: var(--black-color-opacity);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.visible-sidebar .menu-backdrop {
  opacity: 1;
  visibility: visible;
}

.hidden-bar {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  max-width: 360px;
  background: var(--color-two);
  height: 100%;
  overflow-y: auto;
  z-index: 9999;
  visibility: hidden;
  -ms-transform: translateX(-400px);
  transform: translateX(-400px);
  transition: all 500ms ease-in;
  -webkit-transition: all 500ms ease-in-out;
  -ms-transition: all 500ms ease-in-out;
  -o-transition: all 500ms ease-in-out;
  -moz-transition: all 500ms ease-in-out;
}

.hidden-bar.visible-sidebar {
  opacity: 1;
  visibility: visible;
  -ms-transform: translateX(0px);
  transform: translateX(0px);
}

.hidden-bar ol,
.hidden-bar ol li,
.hidden-bar ul,
.hidden-bar ul li {
  list-style-type: none;
  margin: 0px;
}

.hidden-bar .inner-box {
  position: relative;
  background-color: var(--color-two);
  padding-top: var(--padding-top-75);
  padding-bottom: var(--padding-bottom-50);
}

.hidden-bar .inner-box .cross-icon {
  position: absolute;
  right: 30px;
  top: 30px;
  cursor: pointer;
  font-size: var(--font-14);
  width: 26px;
  height: 26px;
  line-height: 24px;
  text-align: center;
  border: 1px solid #5B3527;
  border-radius: 50%;
}

.hidden-bar .inner-box .cross-icon:hover {
  color: var(--main-color);
  border-color: var(--main-color);
}

.hidden-bar .inner-box .logo-box {
  position: relative;
  line-height: 50px;
  margin-bottom: var(--margin-bottom-60);
  padding-left: var(--padding-left-30);
  padding-right: var(--padding-right-30);
  text-align: center;
}

.hidden-bar .inner-box .logo-box img {
  position: relative;
  max-height: 125px;
}

.hidden-bar h2 {
  position: relative;
  font-size: var(--font-50);
  text-transform: capitalize;
  margin-bottom: var(--margin-bottom-15);
  text-align: center;
}

.hidden-bar .info {
  position: relative;
  text-align: center;
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
}

.hidden-bar .info li {
  position: relative;
  line-height: 1.6em;
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-10);
}

.hidden-bar .info li:last-child {
  margin-bottom: 0;
}

.hidden-bar .info li a {
  color: var(--color-one);
}

.hidden-bar .info li a:hover {
  color: var(--main-color);
}

.hidden-bar .separator {
  position: relative;
  margin-top: var(--margin-top-30);
  margin-bottom: var(--margin-bottom-30);
}

.hidden-bar .separator span {
  position: relative;
  display: block;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  margin: 0 auto;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.hidden-bar .booking-info {
  position: relative;
  text-align: center;
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
}

.hidden-bar .booking-info .bk-title {
  position: relative;
  font-weight: 700;
  text-transform: capitalize;
  margin-bottom: 5px;
}

.hidden-bar .booking-info .bk-no {
  position: relative;
  font-size: var(--font-30);
  color: var(--main-color);
  line-height: 1em;
}

.hidden-bar .booking-info .bk-no a {
  position: relative;
  display: inline-block;
}

.hidden-bar .booking-info .bk-no a:before {
  position: absolute;
  content: '';
  left: 5px;
  right: 5px;
  bottom: -7px;
  height: 5px;
  opacity: 0;
  transform: scale(0.2, 1);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  border-top: 1px solid var(--main-color);
  border-bottom: 1px solid var(--main-color);
}

.hidden-bar .booking-info .bk-no a:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}

.hidden-bar .side-menu {
  position: relative;
  display: block;
  padding-left: var(--padding-left-60);
  padding-right: var(--padding-right-60);
  margin-bottom: var(--margin-bottom-100);
}

.hidden-bar .side-menu ul {
  position: relative;
  border-top: 1px solid var(--white-color-opacity-four);
}

.hidden-bar .side-menu ul li {
  position: relative;
  display: block;
  border-bottom: 1px solid var(--white-color-opacity-four);
}

.hidden-bar .side-menu ul li a {
  position: relative;
  display: block;
  font-weight: 400;
  font-size: var(--font-12);
  line-height: 30px;
  text-transform: uppercase;
  padding-top: var(--padding-top-10);
  padding-bottom: var(--padding-bottom-10);
  letter-spacing: 0.15em;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
}

.hidden-bar .side-menu ul li:hover>a,
.hidden-bar .side-menu ul>li.current>a,
.hidden-bar .side-menu ul>li>ul>li.current>a {}

.hidden-bar .side-menu ul li>a:before {
  content: '';
  position: absolute;
  left: 0px;
  top: 50%;
  margin-top: -4px;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  opacity: 0;
  visibility: hidden;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.hidden-bar .side-menu ul li:hover>a:before,
.hidden-bar .side-menu ul li.current>a:before {
  opacity: 1;
  visibility: visible;
}

.hidden-bar .side-menu ul li:hover>a,
.hidden-bar .side-menu ul li.current>a {
  padding-left: 20px;
}

.hidden-bar .side-menu ul li ul li:last-child {
  border-bottom: none;
}

.hidden-bar .side-menu ul li .btn-expander {
  position: absolute;
  top: 10px;
  right: 0px;
  background: none;
  color: var(--white-color);
  font-size: var(--font-12);
  height: 30px;
  width: 30px;
  text-align: right;
  line-height: 30px;
  border-radius: 0px;
  outline: none;
  cursor: pointer;
  z-index: 1;
}

.hidden-bar .side-menu ul li .btn-expander i {
  font-weight: 700;
}


/*** 

====================================================================
  Hidden Sidebar style
====================================================================

***/

.info-bar {
  position: fixed;
  right: -440px;
  top: 0px;
  width: 100%;
  max-width: 440px;
  height: 100%;
  overflow-y: auto;
  z-index: 99999;
  opacity: 0;
  background: var(--color-two) url(../images/background/pattern-7.png) center top repeat;
  visibility: hidden;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.info-back-drop {
  position: fixed;
  right: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
  background: var(--black-color-opacity-two);
  visibility: hidden;
  z-index: 9990;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
}

.side-content-visible .info-back-drop {
  opacity: 1;
  visibility: visible;
}

.side-content-visible .info-bar {
  right: 0px;
  opacity: 1;
  visibility: visible;
}

.info-bar .inner-box {
  position: relative;
  background: var(--color-two) url(../images/background/pattern-7.png) center top repeat;
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-50);
  padding-left: var(--padding-left-30);
  padding-right: var(--padding-right-30);
  text-align: center;
}

.info-bar .inner-box .cross-icon {
  position: absolute;
  right: 30px;
  top: 30px;
  cursor: pointer;
  color: var(--white-color);
  font-size: var(--font-14);
  width: 26px;
  height: 26px;
  line-height: 24px;
  text-align: center;
  border: 1px solid var(--white-color);
  border-radius: 50%;
}

.info-bar .inner-box .cross-icon:hover {
  color: var(--main-color);
  border-color: var(--main-color);
}

.info-bar .inner-box .logo-box {
  position: relative;
  line-height: 50px;
  margin-bottom: var(--margin-bottom-45);
}

.info-bar .inner-box .logo-box img {
  position: relative;
  max-height: 50px;
}

.info-bar .inner-box .image-box {
  position: relative;
  max-width: 200px;
  margin: 0 auto;
  margin-bottom: var(--margin-bottom-45);
  border-radius: 50%;
}

.info-bar .inner-box .image-box img {
  position: relative;
  display: block;
  width: 100%;
  border-radius: 50%;
}

.info-bar h2 {
  position: relative;
  font-size: var(--font-50);
  text-transform: capitalize;
  margin-bottom: var(--margin-bottom-15);
}

.info-bar .info {
  position: relative;
}

.info-bar .info li {
  position: relative;
  line-height: 1.6em;
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-10);
}

.info-bar .info li:last-child {
  margin-bottom: 0;
}

.info-bar .info li a {
  color: var(--color-one);
}

.info-bar .info li a:hover {
  color: var(--main-color);
}

.info-bar .separator {
  position: relative;
  margin-top: var(--margin-top-30);
  margin-bottom: var(--margin-bottom-30);
}

.info-bar .separator span {
  position: relative;
  display: block;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  margin: 0 auto;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.info-bar .booking-info {
  position: relative;
}

.info-bar .booking-info .bk-title {
  position: relative;
  font-weight: 700;
  text-transform: capitalize;
  margin-bottom: 5px;
}

.info-bar .booking-info .bk-no {
  position: relative;
  font-size: var(--font-30);
  color: var(--main-color);
  line-height: 1em;
}

.info-bar .booking-info .bk-no a {
  position: relative;
  display: inline-block;
  color: var(--main-color);
}

.info-bar .booking-info .bk-no a:before {
  position: absolute;
  content: '';
  left: 5px;
  right: 5px;
  bottom: -8px;
  height: 5px;
  opacity: 0;
  transform: scale(0.2, 1);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  border-top: 1px solid var(--main-color);
  border-bottom: 1px solid var(--main-color);
}

.info-bar .booking-info .bk-no a:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}


/*** 

====================================================================
  Banner Slider Section
====================================================================

***/

.banner-section {
  position: relative;
  padding: 0 0;
  background: var(--black-color);
}

.banner-section .banner-container {
  position: relative;
}

.banner-section .banner-slider {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.banner-section .slide-item {
  position: relative;
  width: 100%;
  padding: 0px;
  overflow: hidden;
}

.banner-section .slide-item:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.0);
  z-index: 1;
}

.banner-section .slide-item .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  -ms-transform: scale(1.0);
  transform: scale(1.0);
  -webkit-transition: all 0ms linear 0ms;
  -ms-transition: all 0ms linear 0ms;
  -o-transition: all 0ms linear 0ms;
  -moz-transition: all 0ms linear 0ms;
  transition: all 0ms linear 0ms;
}

.banner-section .slide-item.swiper-slide-active .image-layer {
  -ms-transform: scale(1.15);
  transform: scale(1.15);
  -webkit-transition: all 7000ms linear 0ms;
  -ms-transition: all 7000ms linear 0ms;
  -o-transition: all 7000ms linear 0ms;
  -moz-transition: all 7000ms linear 0ms;
  transition: all 7000ms linear 0ms;
}

.banner-section .slide-item .image-layer:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.banner-section .slide-item .content-box {
  position: relative;
  display: table;
  vertical-align: middle;
  width: 100%;
  padding-top: var(--padding-top-80);
  padding-bottom: var(--padding-bottom-50);
  height: 880px;
  min-height: 100vh;
  z-index: 10;
}

.banner-section .slide-item .content {
  position: relative;
  display: table-cell;
  width: 100%;
  vertical-align: middle;
  z-index: 5;
}

.banner-section .slide-item .inner {
  position: relative;
  display: block;
  max-width: 950px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  z-index: 5;
  margin-top: 0px;
}

.banner-section .slide-item .subtitle {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
  margin-bottom: var(--margin-bottom-10);
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(30px);
  -ms-transform: translateY(30px);
  transform: translateY(30px);
}

.banner-section .slide-item .pattern-image {
  position: relative;
  width: 100px;
  margin: 0 auto;
  margin-bottom: var(--margin-bottom-30);
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(30px);
  -ms-transform: translateY(30px);
  transform: translateY(30px);
}


.banner-section .swiper-slide-active .subtitle,
.banner-section .swiper-slide-active .pattern-image {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(0);
  -ms-transform: translate(0);
  transform: translate(0);
  -webkit-transition: all 1000ms ease 500ms;
  -ms-transition: all 1000ms ease 500ms;
  -o-transition: all 1000ms ease 500ms;
  -moz-transition: all 1000ms ease 500ms;
  transition: all 1000ms ease 500ms;
}


.banner-section .slide-item h1 {
  position: relative;
  font-weight: 400;
  text-transform: none;
  line-height: 1.0em;
  margin: 0px 0px;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(30px);
  -ms-transform: translateY(30px);
  transform: translateY(30px);
}

.banner-section .slide-item h1 span {
  position: relative;
  display: inline-block;
  vertical-align: top;
}

.banner-section .swiper-slide-active h1 {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(0);
  -ms-transform: translate(0);
  transform: translate(0);
  -webkit-transition: all 1000ms ease 1000ms;
  -ms-transition: all 1000ms ease 1000ms;
  -o-transition: all 1000ms ease 1000ms;
  -moz-transition: all 1000ms ease 1000ms;
  transition: all 1000ms ease 1000ms;
}

.banner-section .slide-item .text {
  position: relative;
  display: block;
  font-size: var(--font-20);
  margin-top: var(--margin-top-10);
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(30px);
  -ms-transform: translateY(30px);
  transform: translateY(30px);
}

.banner-section .swiper-slide-active .text {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(0);
  -ms-transform: translate(0);
  transform: translate(0);
  -webkit-transition: all 1000ms ease 1500ms;
  -ms-transition: all 1000ms ease 1500ms;
  -o-transition: all 1000ms ease 1500ms;
  -moz-transition: all 1000ms ease 1500ms;
  transition: all 1000ms ease 1500ms;
}

.banner-section .slide-item .links-box {
  position: relative;
  display: block;
  padding-top: var(--padding-top-10);
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(30px);
  -ms-transform: translateY(30px);
  transform: translateY(30px);
}

.banner-section .swiper-slide-active .links-box {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(0);
  -ms-transform: translate(0);
  transform: translate(0);
  -webkit-transition: all 1000ms ease 2000ms;
  -ms-transition: all 1000ms ease 2000ms;
  -o-transition: all 1000ms ease 2000ms;
  -moz-transition: all 1000ms ease 2000ms;
  transition: all 1000ms ease 2000ms;
}

.banner-section .slide-item .links-box .link {
  position: relative;
  display: inline-block;
  vertical-align: top;
}

.banner-section .slide-item .links-box .link .theme-btn {}

.banner-section .swiper-button-next,
.banner-section .swiper-button-prev {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  display: inline-block;
  vertical-align: top;
  width: 44px;
  height: 44px;
  line-height: 44px;
  font-size: var(--font-24);
  text-align: center;
  background: transparent;
  color: var(--main-color);
  border-radius: 0%;
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}

.banner-section .swiper-button-next span,
.banner-section .swiper-button-prev span {
  position: relative;
  z-index: 1;
}

.banner-section .swiper-button-next:after,
.banner-section .swiper-button-prev:after {
  display: none;
}

.banner-section .swiper-button-next:before,
.banner-section .swiper-button-prev:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}

.banner-section .swiper-button-next {
  right: 30px;
}

.banner-section .swiper-button-prev {
  left: 30px;
}

.banner-section .swiper-button-next:hover,
.banner-section .swiper-button-prev:hover {
  color: var(--black-color);
}

.banner-section .swiper-button-next:hover:before,
.banner-section .swiper-button-prev:hover:before {
  background: var(--main-color);
}

.banner-section .book-btn {
  position: absolute;
  right: 50px;
  bottom: 50px;
  width: 110px;
  height: 110px;
  z-index: 10;
}

.banner-section .book-btn:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.banner-section .book-btn a {
  position: relative;
  display: block;
  width: 110px;
  height: 110px;
  color: var(--black-color);
  background: var(--main-color);
  padding-top: var(--padding-top-12);
  padding-left: var(--padding-left-10);
  padding-right: var(--padding-right-10);
  text-align: center;
  z-index: 1;
}

.banner-section .book-btn a .icon {
  position: relative;
  display: block;
  margin-bottom: var(--margin-bottom-7);
}

.banner-section .book-btn a .txt {
  position: relative;
  display: block;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 1.5em;
  color: var(--black-color);
  font-size: var(--font-12);
  letter-spacing: 0.15em;
}

/*** 

====================================================================
  Title Box Section
====================================================================

***/

.title-box {
  position: relative;
  margin-bottom: var(--margin-bottom-70);
}

.title-box.centered {
  margin: 0 auto;
  text-align: center;
}

.title-box .subtitle {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
  line-height: 1em;
  margin-bottom: var(--margin-bottom-10);
}

.title-box .pattern-image {
  position: relative;
  margin-bottom: var(--margin-bottom-15) !important;
}

.title-box .pattern-image img {
  max-width: 100px;
}

.title-box.centered .pattern-image {
  margin: 0 auto;
}

.title-box h2 {
  position: relative;
  margin-bottom: 0;
}

.title-box h3 {
  position: relative;
  margin-bottom: 0;
}

.title-box .text {
  position: relative;
  padding-top: var(--padding-top-15);
  line-height: 1.85em;
}

.title-box.centered .text {
  max-width: 420px;
  margin: 0 auto;
}

/*** 

====================================================================
  We Offer Section
====================================================================

***/

.we-offer-section {
  position: relative;
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-50);
  background: var(--color-five);
}

.we-offer-section .right-top-bg {
  position: absolute;
  right: 0;
  top: 0;
}

.we-offer-section .left-bot-bg {
  position: absolute;
  left: 0;
  bottom: 0;
}

.we-offer-section .title-box {
  margin-bottom: -90px;
}

.we-offer-section .row {
  margin: 0 -75px;
}

.offer-block {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.we-offer-section .row .offer-block {
  padding-left: var(--padding-left-75);
  padding-right: var(--padding-right-75);
  margin-bottom: var(--margin-bottom-50);
}

.we-offer-section .row .offer-block:nth-child(2) {
  margin-top: var(--margin-top-160);
}

.offer-block .inner-box {
  position: relative;
  display: block;
  text-align: center;
}

.offer-block .inner-box .image {
  position: relative;
  display: block;
  overflow: hidden;
  padding-top: var(--padding-top-30);
  padding-bottom: var(--padding-bottom-30);
  margin-bottom: var(--margin-bottom-25);
}

.offer-block .inner-box .image:after {
  position: absolute;
  top: 0;
  left: -85%;
  z-index: 2;
  display: block;
  content: '';
  width: 50%;
  height: 100%;
  background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .4) 100%);
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, .4)));
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .4) 100%);
  -webkit-transform: skewX(-25deg);
  -ms-transform: skewX(-25deg);
  transform: skewX(-25deg);
  z-index: 1;
}

.offer-block .inner-box:hover .image:after {
  -webkit-animation: shine 1s;
  animation: shine 1s;
}

.offer-block .inner-box .image:before {
  content: '';
  position: absolute;
  left: 50%;
  margin-left: -70px;
  width: 140px;
  top: 0;
  bottom: 0;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  background: url(../images/background/pattern-8.svg) center repeat;
}

.offer-block .inner-box:hover .image:before {
  transform: rotateY(180deg);
  -webkit-transition-delay: 300ms;
  -moz-transition-delay: 300ms;
  -ms-transition-delay: 300ms;
  -o-transition-delay: 300ms;
  transition-delay: 300ms;
}

.offer-block .inner-box .image img {
  position: relative;
  display: block;
  width: 100%;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

.offer-block .inner-box:hover .image img {
  transform: scale(1.04, 1.04);
}

.offer-block h3 {
  position: relative;
  text-transform: capitalize;
  margin-bottom: var(--margin-bottom-20);
}

.offer-block h3 a {
  color: var(--white-color);
}

.offer-block .more-link {
  position: relative;
}

.offer-block .more-link a {
  display: inline-block;
  vertical-align: top;
  font-size: var(--font-12);
  color: var(--main-color);
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1.5em;
  padding-bottom: 4px;
}

.offer-block .more-link a:before {
  position: absolute;
  content: '';
  left: 5px;
  right: 5px;
  bottom: -4px;
  height: 4px;
  opacity: 0;
  transform: scale(0.2, 1);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  border-bottom: 1px solid var(--main-color);
  border-top: 1px solid var(--main-color);
}

.offer-block .more-link a:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}

.offer-block .more-link a:hover {
  color: var(--white-color);
  border-color: var(--white-color);
}

/*** 

====================================================================
  Story Section
====================================================================

***/

.story-section {
  position: relative;
  padding-top: var(--padding-top-170);
  padding-bottom: var(--padding-bottom-210);
  background-color: var(--color-four);
}

.story-section .left-bg {
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -95px;
}

.story-section .text-col {
  position: relative;
  margin-bottom: var(--margin-bottom-40);
}

.story-section .text-col .inner {
  position: relative;
  display: block;
  padding-right: var(--padding-right-90);
  text-align: center;
}

.story-section .text-col .title-box {
  margin-bottom: var(--margin-bottom-30);
}

.story-section .booking-info {
  position: relative;
  text-align: center;
}

.story-section .booking-info .bk-title {
  position: relative;
  font-weight: 700;
  text-transform: capitalize;
  margin-bottom: 5px;
}

.story-section .booking-info .bk-no {
  position: relative;
  font-size: var(--font-24);
  color: var(--main-color);
  line-height: 1em;
  margin-bottom: var(--margin-bottom-30);
}

.story-section .booking-info .bk-no a {
  color: var(--main-color);
  padding-bottom: var(--padding-bottom-5);
}

.story-section .booking-info .bk-no a:before {
  position: absolute;
  content: '';
  left: 5px;
  right: 5px;
  bottom: 0px;
  height: 5px;
  opacity: 0;
  transform: scale(0.2, 1);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  border-top: 1px solid var(--main-color);
  border-bottom: 1px solid var(--main-color);
}

.story-section .booking-info .bk-no a:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}

.hidden-bar .booking-info .bk-no a:hover::before {
  opacity: 1;
}

.story-section .image-col {
  position: relative;
  margin-bottom: var(--margin-bottom-40);
}

.story-section .image-col .inner {
  position: relative;
  display: block;
}

.story-section .image-col .round-stamp {
  position: absolute;
  right: -60px;
  top: -65px;
  z-index: 3;
}

.story-section .image-col .round-stamp:before {
  position: absolute;
  content: '';
  left: 0px;
  top: 0px;
  right: 0px;
  bottom: 0px;
  background: url(../images/resource/badge-1-bg.png) no-repeat;
}

.story-section .image-col .images {
  position: relative;
  padding-left: var(--padding-left-90);
}

.story-section .image-col .images img {
  position: relative;
  display: block;
  width: 100%;
  z-index: 1;
}

.story-section .image-col .images .image:nth-child(2) {
  position: absolute !important;
  left: 0 !important;
  top: auto !important;
  bottom: -160px !important;
  width: 285px;
  padding-top: var(--padding-top-50);
  padding-bottom: var(--padding-bottom-50);
  z-index: 2;
}

.story-section .image-col .images .image:nth-child(2):before {
  content: '';
  position: absolute;
  left: 50%;
  margin-left: -70px;
  width: 140px;
  top: 0;
  bottom: 0;
  background: url(../images/background/pattern-8.svg) center repeat;
}

/*** 

====================================================================
  Special Dish Section
====================================================================

***/

.special-dish {
  position: relative;
  background: var(--color-five);
}

.special-dish .right-bg {
  position: absolute;
  right: 0;
  bottom: 140px;
}

.special-dish .bottom-image {
  position: absolute;
  right: 0;
  bottom: -170px;
  z-index: 1;
}

.special-dish .outer-container {
  position: relative;
}

.special-dish .row {
  margin: 0 0;
}

.special-dish .image-col {
  position: relative;
  padding: 0 0;
}

.special-dish .image-col .inner {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
}

.special-dish .image-col .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.special-dish .image-col .image-layer:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.special-dish .image-col .image {
  position: relative;
  display: none;
}

.special-dish .image-col .image img {
  position: relative;
  display: block;
  width: 100%;
}

.special-dish .content-col {
  position: relative;
  padding: 0 0;
}

.special-dish .content-col .inner {
  position: relative;
  display: block;
  max-width: 600px;
  padding-top: var(--padding-top-225);
  padding-bottom: var(--padding-bottom-225);
  padding-left: var(--padding-left-130);
  padding-right: var(--padding-right-20);
}

.special-dish .content-col .badge-icon {
  position: absolute;
  left: -60px;
  top: 0;
}

.special-dish .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.special-dish .price {
  position: relative;
  line-height: 30px;
}

.special-dish .price .old {
  position: relative;
  font-size: var(--font-18);
  color: var(--color-three);
  padding-right: var(--padding-right-20);
}

.special-dish .price .new {
  position: relative;
  font-size: var(--font-24);
  color: var(--main-color);
}

.special-dish .content-col .link-box {
  padding-top: var(--padding-top-40);
}

/*** 

====================================================================
  Menu Section
====================================================================

***/

.menu-section {
  position: relative;
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-100);
  overflow: hidden;
  background-color: var(--color-four);
}

.menu-section .left-bg {
  position: absolute;
  left: 0;
  top: 0;
}

.menu-section .right-bg {
  position: absolute;
  right: 0;
  bottom: 0;
}

.menu-section .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.tabs-box {
  position: relative;
}

.tabs-box .tab-buttons {
  position: relative;
}

.tabs-box .tab-buttons .tab-btn {
  position: relative;
  display: inline-block;
  cursor: pointer;
}

.tabs-box .tabs-content {
  position: relative;
}

.tabs-box .tabs-content .tab {
  position: relative;
  display: none;
}

.tabs-box .tabs-content .active-tab {
  display: block;
}

.menu-tabs {
  position: relative;
}

.menu-tabs .buttons {
  position: relative;
  padding-top: var(--padding-top-25);
  padding-bottom: var(--padding-bottom-25);
  border-top: 1px solid var(--white-color-opacity-four);
  border-bottom: 1px solid var(--white-color-opacity-four);
  margin-bottom: var(--margin-bottom-50);
}

.menu-tabs .buttons .tab-buttons {
  position: relative;
  text-align: center;
  font-family: var(--font-family-Forum);
}

.menu-tabs .buttons .tab-buttons .tab-btn {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  margin-left: var(--margin-left-40);
  margin-right: var(--margin-right-40);
  font-size: var(--font-20);
  line-height: 25px;
  text-transform: uppercase;
  padding-bottom: var(--padding-bottom-5);
}

.menu-tabs .buttons .tab-buttons .tab-btn:before {
  content: '';
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 5px;
  border-top: 1px solid var(--main-color);
  border-bottom: 1px solid var(--main-color);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.menu-tabs .buttons .tab-buttons .tab-btn.active-btn:before {
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}

.menu-tabs .buttons .tab-buttons .tab-btn:after {
  content: '';
  position: absolute;
  left: 100%;
  margin-left: 36px;
  top: 50%;
  margin-top: -5px;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.menu-tabs .buttons .tab-buttons .tab-btn:last-child:after {
  display: none;
}

.menu-tabs .menu-col .inner {
  position: relative;
  display: block;
  padding-right: var(--padding-right-80);
  min-height: 100%;
}

.menu-tabs .menu-col .inner:after {
  content: '';
  position: absolute;
  right: -15px;
  top: 0;
  bottom: 50px;
  border-right: 1px solid var(--white-color-opacity-four);
}

.menu-tabs .menu-col:nth-child(2) .inner {
  padding-right: 0;
  padding-left: var(--padding-left-80);
  border-right: none;
}

.menu-tabs .menu-col:nth-child(2) .inner:after {
  display: none;
}

.menu-tabs .dish-block {
  position: relative;
  margin-bottom: var(--margin-bottom-55);
}

.menu-tabs .dish-block .inner-box {
  position: relative;
  padding-left: var(--padding-left-120);
  min-height: 100px;
  padding-top: var(--padding-top-10);
}

.menu-tabs .dish-block .dish-image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100px;
  height: 100px;
  border-radius: 22px;
  overflow: hidden;
  background-color: var(--main-color);
}

.menu-tabs .dish-block .dish-image img {
  position: relative;
  display: block;
  width: 100px;
  height: 100px;
  border-radius: 10px;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

.menu-tabs .dish-block .inner-box:hover .dish-image img {
  opacity: 0.70;
  transform: scale(1.05, 1.05);
}

.menu-tabs .dish-block .title {
  position: relative;
  line-height: 24px;
  margin-bottom: var(--margin-bottom-10);
  font-family: var(--font-family-Forum);
}

.menu-tabs .dish-block .title:before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -3px;
  width: 100%;
  height: 6px;
  border-top: 1px solid var(--white-color-opacity-four);
  border-bottom: 1px solid var(--white-color-opacity-four);
}

.menu-tabs .dish-block .title .ttl {
  position: relative;
  float: left;
  padding-right: var(--padding-right-15);
  background-color: var(--color-four);
  text-transform: capitalize;
}

.menu-tabs .dish-block .title .ttl a {
  color: var(--white-color);
}

.menu-tabs .dish-block .title .ttl a:hover {
  color: var(--main-color);
}

.menu-tabs .dish-block .title .ttl .s-info {
  position: relative;
  display: inline-block;
  line-height: 20px;
  padding: 0 5px;
  font-size: var(--font-14);
  color: var(--color-four);
  background: var(--main-color);
  margin-left: 10px;
}

.menu-tabs .dish-block .title .price {
  position: relative;
  float: right;
  font-size: var(--font-22);
  color: var(--main-color);
  padding-left: var(--padding-left-15);
  background: var(--body-bg-color);
}

.menu-tabs .dish-block .desc {
  position: relative;
  font-size: var(--font-14);
  color: var(--color-one);
}

.menu-tabs .dish-block .desc a {
  color: var(--color-one);
}

.menu-section .open-timing {
  position: relative;
  text-align: center;
}

.menu-section .open-timing .hours {
  position: relative;
  margin-bottom: 25px;
}

/*** 

====================================================================
  Special Offer Section
====================================================================

***/

.special-offer {
  position: relative;
  background: var(--color-four);
  padding-bottom: var(--padding-bottom-100);
}

.special-offer .outer-container {
  position: relative;
  max-width: 1440px;
  padding-left: var(--padding-left-15);
  padding-right: var(--padding-right-15);
  margin: 0 auto;
  padding-top: var(--padding-top-80);
  padding-bottom: var(--padding-bottom-100);
  background: var(--color-five);
}

.special-offer .outer-container:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 15px;
  height: 100%;
  background: url(../images/background/pattern-9.svg) center repeat;
}

.special-offer .outer-container:after {
  content: '';
  position: absolute;
  right: 0;
  top: 0;
  width: 15px;
  height: 100%;
  background: url(../images/background/pattern-9.svg) center repeat;
}

.special-offer .title-box {
  margin-bottom: 40px;
}

.special-offer .offer-block-two.margin-top {
  margin-top: var(--margin-top-40);
}

.offer-block-two {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.special-offer .owl-theme .offer-block-two {
  margin-bottom: 0;
}

.offer-block-two .inner-box {
  position: relative;
  display: block;
  text-align: center;
}

.offer-block-two .inner-box .image {
  position: relative;
  display: block;
  overflow: hidden;
  margin-bottom: var(--margin-bottom-15);
  background-color: var(--main-color);
}

.offer-block-two .inner-box .image img {
  position: relative;
  display: block;
  width: 100%;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
}

.offer-block-two .inner-box:hover .image img {
  opacity: 0.60;
  transform: scale(1.05, 1.05) rotate(2deg);
}

.offer-block-two .image::before {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  display: block;
  content: '';
  width: 0;
  height: 0;
  background: rgba(255, 255, 255, .2);
  border-radius: 0%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
}

.offer-block-two .inner-box:hover .image::before {
  -webkit-animation: circle .95s;
  animation: circle .95s;
}

.offer-block-two h4 {
  position: relative;
  text-transform: capitalize;
  margin-bottom: var(--margin-bottom-10);
}

.offer-block-two h4 a {
  color: var(--white-color);
}

.offer-block-two h4 a:hover {
  color: var(--main-color);
}

.offer-block-two .desc {
  position: relative;
  font-size: var(--font-14);
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-15);
}

.offer-block-two .price {
  position: relative;
  font-family: var(--font-family-Forum);
  font-size: var(--font-20);
  color: var(--main-color);
}

.special-offer .lower-link-box {
  margin-top: var(--margin-top-40);
}

.special-offer .owl-theme .owl-dots {
  display: none;
}

.special-offer .owl-theme .owl-nav {
  position: absolute;
  left: -100px;
  right: -100px;
  height: 0;
  top: 50%;
  margin-top: -22px;
}

.special-offer .owl-theme .owl-nav .owl-next,
.special-offer .owl-theme .owl-nav .owl-prev {
  position: absolute;
  top: 50%;
  display: inline-block;
  vertical-align: top;
  width: 44px;
  height: 44px;
  line-height: 44px;
  font-size: var(--font-24);
  text-align: center;
  background: transparent;
  color: var(--main-color);
  border-radius: 0%;
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}

.special-offer .owl-theme .owl-nav .owl-next span,
.special-offer .owl-theme .owl-nav .owl-prev span {
  position: relative;
  z-index: 1;
}

.special-offer .owl-theme .owl-nav .owl-next:before,
.special-offer .owl-theme .owl-nav .owl-prev:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}

.special-offer .owl-theme .owl-nav .owl-next {
  right: 15px;
}

.special-offer .owl-theme .owl-nav .owl-prev {
  left: 15px;
}

.special-offer .owl-theme .owl-nav .owl-next:hover,
.special-offer .owl-theme .owl-nav .owl-prev:hover {
  color: var(--black-color);
}

.special-offer .owl-theme .owl-nav .owl-next:hover:before,
.special-offer .owl-theme .owl-nav .owl-prev:hover:before {
  background: var(--main-color);
}

/*** 

====================================================================
  Testimonials Section
====================================================================

***/

.testimonials-section {
  position: relative;
  padding-top: var(--padding-top-120);
  padding-bottom: var(--padding-bottom-340);
  background: var(--black-color);
}

.testimonials-section .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.30;
}

.testimonials-section .carousel-box {
  position: relative;
  max-width: 880px;
  margin: 0 auto;
  text-align: center;
}

.testimonials-section .separator {
  position: relative;
  text-align: center;
  margin-top: var(--margin-top-30);
  margin-bottom: var(--margin-bottom-40);
}

.testimonials-section .separator span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 1px;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.testimonials-section .testi-top {
  position: relative;
  text-align: center;
}

.testimonials-section .testi-top .quotes {
  position: relative;
  line-height: 0.7em;
  font-size: var(--font-70);
  font-family: var(--font-family-Forum);
}

.testimonials-section .testi-top .quote-text {
  position: relative;
  line-height: 1.4em;
  font-size: var(--font-50);
  font-family: var(--font-family-Forum);
}

.testimonials-section .thumbs-carousel-box {
  position: relative;
  max-width: 390px;
  margin: 0 auto;
  overflow: hidden;
}

.testimonials-section .testi-thumbs {
  position: relative;
  max-width: 130px;
  margin: 0 auto;
  text-align: center;
}

.testimonials-section .testi-thumbs .owl-stage-outer {
  overflow: visible;
}

.testimonials-section .testi-thumbs .image {
  position: relative;
  width: 100px;
  height: 100px;
  margin: 0 auto;
  margin-bottom: var(--margin-bottom-15);
  -ms-transform: scale(0.80);
  transform: scale(0.80);
  cursor: pointer;
  border-radius: 50%;
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.testimonials-section .testi-thumbs .image img {
  position: relative;
  display: block;
  width: 100%;
  border-radius: 50%;
}

.testimonials-section .testi-thumbs .active .image {
  -ms-transform: scale(1);
  transform: scale(1);
}

.testimonials-section .testi-thumbs .auth-title {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.20em;
  opacity: 0;
  visibility: hidden;
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.testimonials-section .testi-thumbs .active .auth-title {
  opacity: 1;
  visibility: visible;
}

.testimonials-section .owl-theme .owl-nav,
.testimonials-section .owl-theme .owl-dots {
  display: none;
}

/*** 

====================================================================
  Reservation Section
====================================================================

***/

.reserve-section {
  position: relative;
}

.reserve-section:before {
  position: absolute;
  content: '';
  left: 0px;
  right: 0px;
  bottom: 0px;
  height: 660px;
  background: var(--color-four);
}

.reserve-section .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

.reserve-section .outer-box {
  position: relative;
  top: -270px;
  margin-bottom: -270px;
  background: var(--color-five);
  z-index: 1;
}

.reserve-section.style-two {
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-100);
}

.reserve-section.style-two .outer-box {
  margin: 0 0;
  top: 0;
}

.reserve-section .outer-box>.row {
  margin: 0 0;
}

.reserve-section .reserv-col {
  position: relative;
  padding: 0 0;
}

.reserve-section .reserv-col .inner {
  position: relative;
  padding-top: var(--padding-top-75);
  padding-bottom: var(--padding-bottom-60);
  padding-left: var(--padding-left-60);
  padding-right: var(--padding-right-60);
  min-height: 100%;
  background-color: var(--color-five);
}

.reserve-section .reserv-col .title {
  position: relative;
  text-align: center;
  margin-bottom: var(--margin-bottom-40);
}

.reserve-section .reserv-col .title h2 {
  line-height: 1.2em;
}

.reserve-section .reserv-col .title a {
  color: var(--main-color);
}

.reserve-section .reserv-col form .row {
  margin: 0 -10px;
}

.reserve-section .reserv-col form .row .form-group {
  padding: 0 10px;
  margin-bottom: 20px;
}

.reserve-section .reserv-col form .btn-style-one {
  display: block;
  width: 100%;
}

.reserve-section .reserv-col form .btn-style-one .btn-wrap .text-two,
.reserve-section .reserv-col form .btn-style-one .btn-wrap {
  width: 100%;
}

.reserve-section .info-col {
  position: relative;
  padding: 0 0;
  text-align: center;
  background: url(../images/background/pattern-2.png) left top repeat;
}

.reserve-section .info-col .img-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
}

.reserve-section .info-col .inner {
  position: relative;
  padding-top: var(--padding-top-75);
  padding-bottom: var(--padding-bottom-55);
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
  min-height: 100%;
}

.reserve-section.style-two .info-col .inner {
  padding-top: var(--padding-top-60);
}

.reserve-section .info-col .title {
  margin-bottom: var(--margin-bottom-40);
}

.reserve-section.style-two .info-col .title {
  margin-bottom: var(--margin-bottom-30);
}

.reserve-section.style-two .info-col .title .subtitle {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.20em;
  line-height: 1.5em;
  margin-bottom: var(--margin-bottom-5);
}

.reserve-section .info-col .title h2 {
  line-height: 1.0em;
}

.reserve-section .info-col .data {
  max-width: 240px;
  margin: 0 auto;
}

.reserve-section .info-col .discount-info {
  position: relative;
  display: block;
  width: 224px;
  height: 224px;
  margin: 0 auto;
  margin-bottom: var(--margin-bottom-25);
  padding-top: var(--padding-top-60);
}

.reserve-section .info-col .discount-info:before {
  content: '';
  position: absolute;
  left: 26px;
  top: 26px;
  width: 170px;
  height: 170px;
  background: var(--black-color);
  transform: rotate(45deg);
  border-radius: 20px;
}

.reserve-section .info-col .discount-info:after {
  content: '';
  position: absolute;
  left: 26px;
  top: 26px;
  width: 170px;
  height: 170px;
  background: var(--color-four);
  border: 3px solid var(--black-color);
  border-radius: 20px;
}

.reserve-section .info-col .discount-info .s-ttl {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.20em;
  line-height: 1.5em;
  z-index: 1;
}

.reserve-section .info-col .discount-info .num {
  position: relative;
  line-height: 0.9em;
  font-size: var(--font-80);
  font-family: var(--font-family-Forum);
  z-index: 1;
}

.reserve-section .info-col .instruction {
  position: relative;
  line-height: 1.6em;
  color: var(--color-one);
  z-index: 1;
}

.reserve-section.style-two .info-col .link-box {
  position: relative;
  padding-top: var(--padding-top-55);
}

.reserve-section .info-col .booking-info {
  position: relative;
  text-align: center;
  margin-bottom: var(--margin-bottom-20);
}

.reserve-section .info-col .booking-info .bk-title {
  position: relative;
  font-weight: 700;
  text-transform: capitalize;
  margin-bottom: 5px;
}

.reserve-section .info-col .booking-info .bk-no {
  position: relative;
  font-size: var(--font-30);
  color: var(--main-color);
  line-height: 1em;
}

.reserve-section .info-col .booking-info .bk-no a {
  color: var(--main-color);
}

.reserve-section .info-col .booking-info .bk-no a:before {
  position: absolute;
  content: '';
  left: 5px;
  right: 5px;
  bottom: 0px;
  height: 5px;
  opacity: 0;
  transform: scale(0.2, 1);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  border-top: 1px solid var(--main-color);
  border-bottom: 1px solid var(--main-color);
}

.reserve-section .info-col .booking-info .bk-no a:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}

.reserve-section .info-col .separator {
  position: relative;
  margin-bottom: var(--margin-bottom-20);
}

.reserve-section .info-col .separator span {
  position: relative;
  display: block;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  margin: 0 auto;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.reserve-section .info-col .info {
  position: relative;
}

.reserve-section .info-col .info li {
  position: relative;
  line-height: 1.5em;
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-25);
}

.reserve-section .info-col .info li strong {
  display: inline-block;
  color: var(--text-color);
  margin-bottom: var(--margin-bottom-5);
}

.reserve-section .info-col .info li:last-child {
  margin-bottom: 0;
}

/*** 

====================================================================
  Why Us Section
====================================================================

***/

.why-us {
  position: relative;
  background: var(--color-four);
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-60);
}

.why-us .left-bg {
  position: absolute;
  left: 0;
  bottom: 80px;
}

.why-us .right-bg {
  position: absolute;
  right: 0;
  top: -100px;
}

.why-us .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.why-block {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.why-us .row {
  margin: 0 -20px;
}

.why-us .row .why-block {
  padding: 0 20px;
  margin-bottom: 40px;
}

.why-block .inner-box {
  position: relative;
  display: block;
  padding-top: var(--padding-top-30);
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
  padding-bottom: var(--padding-top-40);
  text-align: center;
  min-height: 100%;
  background: var(--color-seven);
}

.why-us .why-block:nth-child(even) .inner-box {
  background: var(--color-eight);
}

.why-block .inner-box .icon-box {
  position: relative;
  display: block;
  line-height: 90px;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  margin-bottom: var(--margin-bottom-20);
}

.why-block .inner-box:hover .icon-box {
  -webkit-transform: scale(-1) rotate(180deg);
  -moz-transform: scale(-1) rotate(180deg);
  -ms-transform: scale(-1) rotate(180deg);
  -o-transform: scale(-1) rotate(180deg);
  transform: scale(-1) rotate(180deg);
}

.why-block .inner-box .icon-box img {
  position: relative;
  max-height: 80px;
}

.why-block h4 {
  position: relative;
  text-transform: capitalize;
  margin-bottom: var(--margin-bottom-20);
}

.why-block h4 a {
  color: var(--white-color);
}

.why-block h4 a:hover {
  color: var(--main-color);
}

.why-block .text {
  position: relative;
  font-size: var(--font-14);
  color: var(--color-one);
}

/*** 

====================================================================
  Featured Links Section
====================================================================

***/

.featured-links {
  position: relative;
}

.featured-links .outer-container {
  position: relative;
}

.featured-links .row {
  margin: 0 0;
}

.featured-links .row .link-block {
  padding: 0 0;
}

.featured-links .link-block {
  position: relative;
  text-align: center;
  background-color: var(--color-two);
}

.featured-links .link-block .inner {
  position: relative;
  min-height: 100%;
  background-color: var(--color-five);
}

.featured-links .link-block .text-block {
  position: relative;
  display: table;
  width: 100%;
  height: 370px;
  vertical-align: middle;
}

.featured-links .link-block.alternate .text-block {
  position: absolute;
  bottom: 0;
  height: 250px;
}

.featured-links .link-block .text-block .bl-inner {
  position: relative;
  display: table-cell;
  width: 100%;
  vertical-align: middle;
}

.featured-links .link-block .text-block .content {
  position: relative;
  max-width: 300px;
  margin: 0 auto;
  padding-bottom: var(--padding-bottom-30);
  padding-top: var(--padding-top-30);
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
}

.featured-links .link-block .text-block .subtitle {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
  margin-bottom: var(--margin-bottom-5);
}

.featured-links .link-block .text-block h3 {
  position: relative;
  text-transform: capitalize;
  margin-bottom: var(--margin-bottom-15);
}

.featured-links .link-block .text-block .text {
  position: relative;
  line-height: 1.5em;
  font-size: var(--font-14);
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-25);
}

.featured-links .link-block .text-block .link {
  position: relative;
}

.featured-links .link-block .text-block .link a {
  position: relative;
  display: inline-block;
  letter-spacing: 0.20em;
  font-weight: 700;
  font-size: var(--font-12);
  text-transform: uppercase;
  padding-bottom: 3px;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.featured-links .link-block .text-block .link a:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0px;
  display: block;
  height: 5px;

  opacity: 0;
  transform: scale(0.2, 1);

  border-top: 1px solid var(--main-color);
  border-bottom: 1px solid var(--main-color);
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.featured-links .link-block .text-block .link a:hover {
  color: var(--white-color);
}

.featured-links .link-block .text-block .link a:hover:before {
  opacity: 1;
  transform: scale(1, 1);
}

.featured-links .link-block .image-box {
  position: relative;
  display: block;
  width: 100%;
  height: 380px;
}

.featured-links .link-block.alternate .image-box {
  position: absolute;
  height: 100%;
}

.featured-links .link-block .image-box .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.featured-links .link-block .image-box .image {
  position: relative;
  display: none;
}

.featured-links .link-block .image-box .image img {
  position: relative;
  width: 100%;
}

/*** 

====================================================================
  Team Section
====================================================================

***/

.team-section {
  position: relative;
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-60);
  background-color: var(--color-four);
}

.team-section .title-box {
  margin-bottom: 40px;
}

.team-section .row {
  margin: 0 -25px;
}

.team-section .left-bg {
  position: absolute;
  left: 0;
  bottom: 0;
}

.team-section .right-bg {
  position: absolute;
  right: 0;
  top: 0;
}

.team-block {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.team-section .row .team-block {
  padding-left: var(--padding-left-25);
  padding-right: var(--padding-right-25);
  margin-bottom: var(--margin-bottom-40);
}

.team-block .inner-box {
  position: relative;
  display: block;
}

.team-block .inner-box .image {
  position: relative;
  display: block;
  margin-bottom: var(--margin-bottom-15);
}

.team-block .inner-box .image img {
  position: relative;
  display: block;
  width: 100%;
}

.team-block .overlay-box {
  position: absolute;
  content: '';
  left: 0px;
  top: 0px;
  right: 0px;
  bottom: 0px;

  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;

  transition: all 900ms ease;
  -moz-transition: all 900ms ease;
  -webkit-transition: all 900ms ease;
  -ms-transition: all 900ms ease;
  -o-transition: all 900ms ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  -webkit-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: right center;
  -ms-transform-origin: right center;
  transform-origin: right center;
  background-position: center center;
}

.team-block .overlay-box:before {
  position: absolute;
  content: '';
  left: 0px;
  top: 0px;
  right: 0px;
  bottom: 0px;
  opacity: 0.40;
  background-color: var(--main-color);
}

.team-block .overlay-box .overlay-inner {
  position: relative;
  text-align: center;
}

.team-block .inner-box:hover .overlay-box {
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  transform: scale(1, 1);
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
}

.team-block .social-box {
  position: relative;
}

.team-block .social-box li {
  position: relative;
  margin: 0px 1px;
  display: inline-block;
  font-family: 'Font Awesome 6 Pro';
}

.team-block .social-box li a {
  position: relative;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  display: inline-block;
  color: var(--white-color);
  background-color: var(--black-color)
}

.team-block .social-box li a:hover {
  background: var(--main-color);
  color: var(--color-five);
}

.team-block h3 {
  position: relative;
  text-transform: capitalize;
  margin-bottom: 0;
}

.team-block h3 a {
  color: var(--white-color);
}

.team-block h3 a:hover {
  color: var(--main-color);
}

.team-block .designation {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
  margin-bottom: var(--margin-bottom-5);
}

.team-block .desc {
  position: relative;
  font-size: var(--font-14);
  color: var(--color-one);
}

/*** 

====================================================================
  Intro Section
====================================================================

***/

.intro-section {
  position: relative;
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-25);
  background: var(--black-color);
}

.intro-section .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  opacity: 0.40;
}

.intro-section .title-box {
  margin-bottom: 40px;
}

.intro-section .content-box {
  position: relative;
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
}

.intro-section .separator {
  position: relative;
  text-align: center;
  margin-top: var(--margin-top-50);
  margin-bottom: var(--margin-bottom-40);
}

.intro-section .separator span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 1px;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.intro-section .content-box h3 {
  position: relative;
  font-size: var(--font-50);
  margin-bottom: var(--margin-bottom-30);
}

.intro-section .content-box .auth-title {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
}

.intro-section .content-box .play-btn {
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  margin: 0 auto;
}

.intro-section .content-box .play-btn .theme-btn {
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  text-align: center;
  line-height: 86px;
  font-size: var(--font-18);
  color: var(--white-color);
  border: 2px solid var(--white-color);
  border-radius: 50%;
}

.intro-section .content-box .play-btn .theme-btn:hover {
  color: var(--main-color);
  border-color: var(--main-color);
}



.intro-section .content-box .play-btn .ripple,
.intro-section .content-box .play-btn .ripple:before,
.intro-section .content-box .play-btn .ripple:after {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  margin-top: -1px;
  margin-left: -1px;
  /* -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); */
  -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  -moz-box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  -ms-box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  -o-box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  -webkit-animation: ripple 3s infinite;
  -moz-animation: ripple 3s infinite;
  -ms-animation: ripple 3s infinite;
  -o-animation: ripple 3s infinite;
  animation: ripple 3s infinite;
}

.intro-section .content-box .play-btn .ripple:before {
  -webkit-animation-delay: .9s;
  -moz-animation-delay: .9s;
  -ms-animation-delay: .9s;
  -o-animation-delay: .9s;
  animation-delay: .9s;
  content: "";
  position: absolute;
}

.intro-section .content-box .play-btn .ripple:after {
  -webkit-animation-delay: .6s;
  -moz-animation-delay: .6s;
  -ms-animation-delay: .6s;
  -o-animation-delay: .6s;
  animation-delay: .6s;
  content: "";
  position: absolute;
}

.intro-section .fact-counter {
  position: relative;
  padding-top: var(--padding-top-75);
  margin-top: var(--margin-top-70);
}

.intro-section .fact-counter:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 18px;
  background: url(../images/background/pattern-10.svg) left top repeat;
}

.intro-section .fact-counter .fact-block {
  position: relative;
  margin-bottom: var(--margin-bottom-50);
}

.intro-section .fact-counter .fact-count {
  position: relative;
  float: left;
}

.intro-section .fact-counter .count-box {
  position: relative;
  line-height: 60px;
  font-size: var(--font-60);
  font-family: var(--font-family-Forum);
}

.intro-section .fact-counter .count-box i {
  font-style: normal;
}

.intro-section .fact-counter .fact-title {
  position: relative;
  float: left;
  padding-top: 10px;
  line-height: 20px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
  margin-left: var(--margin-left-15);
}

/*** 

====================================================================
  News Section
====================================================================

***/

.news-section {
  position: relative;
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-80);
  background: var(--color-five);
}

.news-section .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.news-section .row {
  margin: 0 -25px;
}

.news-block {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.news-section .row .news-block {
  padding: 0 25px;
  margin-bottom: 40px;
}

.news-block .inner-box {
  position: relative;
  display: block;
}

.news-block .image-box {
  position: relative;
  display: block;
}

.news-block .image-box:before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 170px;
  background: rgba(0, 0, 0, 0.70);
  background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.90), rgba(0, 0, 0, 0.70), rgba(0, 0, 0, 0.0));
  background: -ms-linear-gradient(bottom, rgba(0, 0, 0, 0.90), rgba(0, 0, 0, 0.70), rgba(0, 0, 0, 0.0));
  z-index: 1;
}

.news-block .image {
  position: relative;
  display: block;
  z-index: 0;
  overflow: hidden;
}

.news-block .image img {
  position: relative;
  display: block;
  width: 100%;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

.news-block .image:before {
  position: absolute;
  top: 0;
  left: -85%;
  z-index: 2;
  display: block;
  content: '';
  width: 50%;
  height: 100%;
  background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .8) 100%);
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, .8)));
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .8) 100%);
  -webkit-transform: skewX(-25deg);
  -ms-transform: skewX(-25deg);
  transform: skewX(-25deg);
  z-index: 1;
}

.news-block .inner-box:hover .image:before {
  -webkit-animation: shine 1s;
  animation: shine 1s;
}

.news-block .inner-box:hover img {
  transform: scale(1.05, 1.05);
}

.news-block .date {
  position: absolute;
  left: 25px;
  top: 30px;
  z-index: 1;
}

.news-block .date span {
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  line-height: 14px;
  letter-spacing: 0.10em;
  padding: 3px 3px;
  background-color: var(--black-color);
}

.news-block .over-content {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding-left: var(--padding-left-30);
  padding-right: var(--padding-right-25);
  padding-bottom: var(--padding-bottom-25);
  z-index: 3;
}

.news-block .cat {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
  margin-bottom: var(--margin-bottom-5);
}

.news-block h4 {
  position: relative;
  margin-bottom: 0;
}

.news-block h4 a {
  color: var(--text-color);
}

/*** 

====================================================================
  Main Footer
====================================================================

***/

.main-footer {
  position: relative;
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-70);
  background: var(--black-color);
}

.main-footer .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: right top;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.40;
}

.main-footer .upper-section {
  position: relative;
  text-align: center;
  margin-bottom: var(--margin-bottom-70);
}

.main-footer .footer-col {
  position: relative;
  text-align: center;
}

.main-footer .links-col {
  position: relative;
}

.main-footer .links-col.last {
  order: 12;
}

.main-footer .links-col ul li {
  position: relative;
  margin-bottom: var(--margin-bottom-20);
}

.main-footer .links-col ul li:last-child {
  margin-bottom: 0;
}

.main-footer .links-col ul li a {
  position: relative;
  display: inline-block;
  color: #fff;
  line-height: 1.5em;
  text-transform: uppercase;
  font-weight: 700;
  font-size: var(--font-12);
  letter-spacing: 0.30em;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-footer .links-col ul li a:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -7px;
  display: block;
  height: 5px;
  border-top: 1px solid var(--white-color);
  border-bottom: 1px solid var(--white-color);
  transform: scaleX(0);
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-footer .links-col ul li a:hover {
  color: var(--main-color);
}

.main-footer .links-col ul li a:hover:before {
  border-color: var(--main-color);
  transform: scaleX(1);
}

.main-footer .info-col {
  position: relative;
  color: var(--color-one);
  order: 4;
}

.main-footer .links-col .inner {
  position: relative;
  text-align: center;
  padding-top: var(--padding-top-150);
  padding-bottom: var(--padding-bottom-150);
  min-height: 100%;
}

.main-footer .info-col .inner {
  position: relative;
  max-width: 1440px;
  padding-left: var(--padding-left-30);
  padding-right: var(--padding-right-30);
  margin: 0 auto;
  padding-top: var(--padding-top-10);
  padding-bottom: var(--padding-bottom-10);
  background: #F8F1E7 center top repeat;
}

.main-footer .info-col .content {
  position: relative;
  max-width: 460px;
  margin: 0 auto;
}

.main-footer .info-col .inner:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 15px;
  height: 100%;
}

.main-footer .info-col .inner:after {
  content: '';
  position: absolute;
  right: 0;
  top: 0;
  width: 15px;
  height: 100%;
}

.main-footer .info-col .logo {
  position: relative;
  margin-bottom: var(--margin-bottom-40);
}

.main-footer .info-col .info li {
  position: relative;
  line-height: 1.5em;
  margin-bottom: var(--margin-bottom-5);
  font-size: 18px;
  color: #000;
}

.main-footer .info-col .info li:last-child {
  margin-bottom: 0;
}

.main-footer .info-col .info li a {
  font-size: 18px;
  color: #000;
}

.main-footer .info-col .info li a:hover {
  color: var(--main-color);
}

.main-footer .info-col .separator {
  position: relative;
  text-align: center;
  margin-top: var(--margin-top-30);
  margin-bottom: var(--margin-bottom-20);
}

.main-footer .info-col .separator span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 1px;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.main-footer .info-col .newsletter {
  position: relative;
}

.main-footer .info-col .newsletter h3 {
  margin-bottom: 0;
}

.main-footer .info-col .newsletter .text {
  line-height: 1.5em;
  font-size: var(--font-14);
}

.main-footer .info-col .newsletter .text span {
  color: var(--text-color);
}

.main-footer .info-col .newsletter-form {
  position: relative;
  margin-top: var(--margin-top-30);
}

.main-footer .info-col .newsletter-form .form-group {
  position: relative;
  margin-bottom: 0;
}

.main-footer .info-col .newsletter-form .alt-icon {
  position: absolute;
  left: 15px;
  top: 50%;
  margin-top: -15px;
  line-height: 30px;
  font-size: var(--font-14);
  color: var(--white-color);
  font-weight: 400;
  z-index: 1;
  pointer-events: none;
}

.main-footer .info-col .newsletter-form .form-group input[type="text"],
.main-footer .info-col .newsletter-form input[type="email"],
.main-footer .info-col .newsletter-form input[type="password"] {
  position: relative;
  display: block;
  height: 56px;
  width: 100%;
  font-size: var(--font-16);
  color: var(--color-one);
  line-height: 34px;
  font-weight: 400;
  padding: 10px 20px 10px 40px;
  background-color: var(--color-six);
  border: 1px solid var(--white-color-opacity-five);
  border-radius: 0px;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  transition: all 300ms ease;
}

.main-footer .info-col .newsletter-form .form-group input[type="text"]:focus,
.main-footer .info-col .newsletter-form input[type="email"]:focus,
.main-footer .info-col .newsletter-form input[type="password"]:focus {
  border-color: var(--main-color);
}

.main-footer .info-col .newsletter-form button {
  position: absolute;
  right: 0;
  top: 0;
  width: 180px;
  height: 56px;
  line-height: 30px;
}

.btn-style-one .btn-title {
  line-height: 22px;
}

.main-footer .footer-bottom {
  position: relative;
  text-align: center;
}

.main-footer .copyright {
  position: relative;
  color: var(--color-one);
  line-height: 1.5em;
}

.main-footer .copyright a {
  text-decoration: underline;
  color: var(--main-color);
}

/*** 

====================================================================
  Inner Banner Section
====================================================================

***/

.inner-banner {
  position: relative;
  padding-top: var(--padding-top-300);
  padding-bottom: var(--padding-bottom-150);
  background: var(--black-color);
}

.inner-banner .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.40;
}

.inner-banner .pattern-image {
  width: 100px;
  margin: 0 auto;
}

.inner-banner .inner {
  position: relative;
  display: block;
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  z-index: 5;
}

.inner-banner .inner .subtitle {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
  margin-bottom: var(--margin-bottom-0);
}

.inner-banner .inner h1 {
  position: relative;
  font-weight: 400;
  font-size: var(--font-80);
  text-transform: none;
  line-height: 1.0em;
  margin: 0px 0px;
}

.inner-banner .inner h1 span {
  position: relative;
  display: inline-block;
  vertical-align: top;
}

/*** 

====================================================================
  About Section
====================================================================

***/



.about-section .left-bg {
  position: absolute;
  left: 0;
  top: 40%;
}

.about-section .right-bg {
  position: absolute;
  right: 0;
  top: 100px;
}

.about-section .title-box {
  max-width: 920px;
  margin-bottom: var(--margin-bottom-90);
}

.about-section .row {
  margin: 0 -30px;
}

.about-block {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.about-section .row .about-block {
  padding-left: var(--padding-left-30);
  padding-right: var(--padding-right-30);
  margin-bottom: var(--margin-bottom-40);
}

.about-section .inner-box {
  position: relative;
  display: block;
  min-height: 100%;
}

.about-section .info-block {
  text-align: center;
}

.about-section .inner-box .image {
  position: relative;
  display: block;
}

.about-section .inner-box .image img {
  display: block;
  width: 100%;
}

.about-block .text {
  position: relative;
  font-size: var(--font-14);
  line-height: 1.85em;
  margin-bottom: var(--margin-bottom-30);
}

.about-block .signature {
  position: relative;
}

.about-block .author {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.20em;
  margin-top: var(--margin-top-5);
}

.about-block .video-box {
  position: relative;
  margin-top: var(--margin-top-100);
}

.about-block .video-box img {}

.about-block .video-box .play-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -41px 0 0 -41px;
  display: block;
  width: 82px;
  height: 82px;
  text-align: center;
  line-height: 80px;
  font-size: var(--font-18);
  color: var(--white-color);
  border: 1px solid var(--white-color);
  border-radius: 50%;
}



.about-block .video-box .play-btn .ripple,
.about-block .video-box .play-btn .ripple:before,
.about-block .video-box .play-btn .ripple:after {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 82px;
  height: 82px;
  border-radius: 50%;
  margin-top: -1px;
  margin-left: -1px;
  /* -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); */
  -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  -moz-box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  -ms-box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  -o-box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  box-shadow: 0 0 0 0 rgba(255, 255, 255, .6);
  -webkit-animation: ripple 3s infinite;
  -moz-animation: ripple 3s infinite;
  -ms-animation: ripple 3s infinite;
  -o-animation: ripple 3s infinite;
  animation: ripple 3s infinite;
}

.about-block .video-box .play-btn .ripple:before {
  -webkit-animation-delay: .9s;
  -moz-animation-delay: .9s;
  -ms-animation-delay: .9s;
  -o-animation-delay: .9s;
  animation-delay: .9s;
  content: "";
  position: absolute;
}

.about-block .video-box .play-btn .ripple:after {
  -webkit-animation-delay: .6s;
  -moz-animation-delay: .6s;
  -ms-animation-delay: .6s;
  -o-animation-delay: .6s;
  animation-delay: .6s;
  content: "";
  position: absolute;
}



.about-block .video-box .play-btn:hover {
  color: var(--main-color);
  border-color: var(--main-color);
}

.about-section .info-block .inner-box {
  position: relative;
  border: 1px solid var(--main-color);
  padding-top: var(--padding-top-90);
  padding-bottom: var(--padding-bottom-50);
  margin-left: var(--margin-left-15);
  margin-right: var(--margin-right-15);
}

.about-section .info-block .inner-box:before {
  content: '';
  position: absolute;
  left: -14px;
  top: 12px;
  right: -14px;
  bottom: 12px;
  border: 1px solid var(--main-color);
}

.about-section .info-block .info {
  max-width: 100%;
  margin: 0 auto;
}

.about-section .info-block .info li {
  position: relative;
  color: #000;
  line-height: 1.5em;
  margin-bottom: var(--margin-bottom-25);
}

.about-section .info-block .info li:last-child {
  margin-bottom: 0;
}

.about-section .info-block .info li strong {
  position: relative;
  display: block;
  color: #000;
  margin-bottom: var(--margin-bottom-5);
}

.about-section .info-block .info li .address {
  position: relative;
  display: block;
  margin-bottom: var(--margin-bottom-10);
}

.about-section .info-block .info li a {
  color: #5B3527;
}

.about-section .info-block .info li a:hover {
  color: var(--main-color);
}

.about-section .info-block .info li.separator {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.about-section .info-block .info li.separator span {
  position: relative;
  display: block;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  margin: 0 auto;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.about-section .fact-counter {
  position: relative;
  padding-top: var(--padding-top-60);
}

.about-section .fact-counter .fact-block {
  position: relative;
  text-align: center;
  margin-bottom: var(--margin-bottom-50);
}

.about-section .fact-counter .fact-count {
  position: relative;
  line-height: 60px;
  font-size: var(--font-60);
  font-family: var(--font-family-Forum);
}

.about-section .fact-counter .count-box {
  position: relative;
}

.about-section .fact-counter .count-box i {
  font-style: normal;
}

.about-section .fact-counter .fact-title {
  position: relative;
  display: block;
  padding-top: var(--padding-top-5);
  line-height: 20px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
}

/*** 

====================================================================
  Fluid Section
====================================================================

***/

.fluid-section {
  position: relative;
  background: var(--color-five);
}

.fluid-section .right-bg {
  position: absolute;
  right: 0;
  top: 0;
}

.fluid-section .left-bg {
  position: absolute;
  left: 0;
  bottom: 0;
}

.fluid-section .outer-container {
  position: relative;
}

.fluid-section .row {
  margin: 0 0;
}

.fluid-section .image-col {
  position: relative;
  padding: 0 0;
}

.fluid-section.alternate .image-col {
  order: 12;
}

.fluid-section .image-col .inner {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
}

.fluid-section .image-col .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.fluid-section .image-col .image-layer:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.fluid-section .image-col .image {
  position: relative;
  display: none;
}

.fluid-section .image-col .image img {
  position: relative;
  display: block;
  width: 100%;
}

.fluid-section .content-col {
  position: relative;
  padding: 0 0;
  text-align: center;
}

.fluid-section.alternate .content-col {
  order: 0;
}

.fluid-section .content-col .inner {
  position: relative;
  display: block;
  padding-top: var(--padding-top-130);
  padding-bottom: var(--padding-bottom-130);
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
}

.fluid-section .content-col .content-box {
  position: relative;
  display: block;
  width: 100%;
  max-width: 960px;
}

.fluid-section.alternate .content-col .content-box {
  float: right;
}

.fluid-section .content-col .title-box {
  margin-bottom: var(--margin-bottom-5);
  padding: 20px;
}

.fluid-section .content-col .signature {
  position: relative;
}

.fluid-section .content-col .author {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.20em;
  margin-top: var(--margin-top-5);
}

.fluid-section .content-col .link-box {
  padding-top: var(--padding-top-0);
}

.fluid-section.alternate .content-col .link-box {
  padding-top: var(--padding-top-0);
}

/*** 

====================================================================
  Services Section
====================================================================

***/

.services-section {
  position: relative;
  background: var(--color-five);
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-10);
  z-index: 1;
}

.services-section .left-bg {
  position: absolute;
  left: 0;
  top: -130px;
}

.services-section .right-bg {
  position: absolute;
  right: 0;
  bottom: 0px;
}

.services-section .title-box {
  margin-bottom: var(--margin-bottom-80);
}

.services-section .s-col {
  position: relative;
  padding-top: var(--padding-top-60);
}

.services-section .s-col .inner {
  position: relative;
  display: block;
}

.services-section .s-col.last {
  order: 12;
}

.services-section .image-col {
  position: relative;
  margin-bottom: var(--margin-bottom-90);
  order: 5;
}

.services-section .image-col .image-box {
  position: relative;
  display: block;
  padding-top: var(--padding-top-20);
  text-align: center;
}

.services-section .image-col .image-box img {
  position: relative;
  z-index: 1;
}

.services-section .image-col .image-box:before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: -10px;
  bottom: 90px;
  background: url(../images/background/pattern-8.svg) center top no-repeat;
}

.services-section .s-block {
  position: relative;
  margin-bottom: var(--margin-bottom-100);
}

.services-section .s-col .s-block:last-child {
  margin-bottom: 0;
}

.services-section .s-block .inner {
  position: relative;
  display: block;
  min-height: 100px;
  padding-left: var(--padding-left-120);
}

.services-section .s-block.alternate .inner {
  padding-left: 0;
  text-align: right;
  padding-right: var(--padding-right-120);
}

.services-section .s-block .icon-box {
  position: absolute;
  left: 0;
  top: 0;
  width: 100px;
  height: 100px;
  text-align: center;
  line-height: 100px;
  background: var(--color-four);
  border-radius: 50%;
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.s-block .inner:hover .icon-box {
  transform: rotateY(180deg);
}

.services-section .s-block.alternate .icon-box {
  left: auto;
  right: 0;
}

.services-section .s-block .icon-box img {
  max-height: 80px;
}

.services-section .s-block h4 {
  margin-bottom: var(--margin-bottom-5);
}

.services-section .s-block .text {
  position: relative;
  color: var(--color-one);
  font-size: var(--font-14);
}

/*** 

====================================================================
  Testimonials Section
====================================================================

***/

.testimonials-two {
  position: relative;
  background: var(--color-two);
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-100);
  margin-bottom: 50px;
}

.testimonials-two .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

.special-offer .carousel-box {
  position: relative;
}

.testimonials-two .title-box {
  margin-bottom: 40px;
}

.testimonials-two .testi-block {
  position: relative;
}

.testimonials-two .testi-block .inner-box {
  position: relative;
  padding-left: var(--padding-left-40);
  padding-right: var(--padding-right-40);
  padding-top: var(--padding-top-40);
  padding-bottom: var(--padding-bottom-40);
  background: var(--color-five);
}

.testimonials-two .testi-block .quote-icon {
  position: absolute;
  left: 12px;
  top: 12px;
  width: 74px;
}

.testimonials-two .testi-block .rating {
  position: relative;
  font-size: var(--font-12);
  color: var(--main-color);
  letter-spacing: 1px;
  left: 65px;
  line-height: 20px;
  margin-bottom: var(--margin-bottom-20);
}

.testimonials-two .testi-block .text {
  position: relative;
  font-size: var(--font-20);
  line-height: 1.5em;
  font-family: var(--font-family-Forum);
  margin-bottom: var(--margin-bottom-35);
}

.testimonials-two .testi-block .auth-info {
  position: relative;
  min-height: 84px;
  line-height: 20px;
  padding-top: var(--padding-top-20);
  padding-left: var(--padding-left-105);
}

.testimonials-two .testi-block .auth-info .auth-title {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: #5B3527;
  font-size: var(--font-12);
  letter-spacing: 0.20em;
}

.testimonials-two .testi-block .auth-info .location {
  position: relative;
  color: #000;
  font-size: var(--font-14);
}

.testimonials-two .testi-block .auth-info .image {
  position: absolute;
  left: 0;
  top: 0;
  width: 84px;
  height: 84px;
  border-radius: 50%;
  overflow: hidden;
}

.testimonials-two .testi-block .auth-info .image img {
  display: block;
  width: 84px;
  height: 84px;
  border-radius: 50%;
}

.testimonials-two .owl-theme .owl-dots {
  display: none;
}

.testimonials-two .owl-theme .owl-nav {
  position: absolute;
  left: -100px;
  right: -100px;
  height: 0;
  top: 50%;
  margin-top: -22px;
}

.testimonials-two .owl-theme .owl-nav .owl-next,
.testimonials-two .owl-theme .owl-nav .owl-prev {
  position: absolute;
  top: 50%;
  display: inline-block;
  vertical-align: top;
  width: 44px;
  height: 44px;
  line-height: 44px;
  font-size: var(--font-24);
  text-align: center;
  background: transparent;
  color: var(--main-color);
  border-radius: 0%;
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}

.testimonials-two .owl-theme .owl-nav .owl-next span,
.testimonials-two .owl-theme .owl-nav .owl-prev span {
  position: relative;
  z-index: 1;
}

.testimonials-two .owl-theme .owl-nav .owl-next:before,
.testimonials-two .owl-theme .owl-nav .owl-prev:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}

.testimonials-two .owl-theme .owl-nav .owl-next {
  right: 15px;
}

.testimonials-two .owl-theme .owl-nav .owl-prev {
  left: 15px;
}

.testimonials-two .owl-theme .owl-nav .owl-next:hover,
.testimonials-two .owl-theme .owl-nav .owl-prev:hover {
  color: var(--black-color);
}

.testimonials-two .owl-theme .owl-nav .owl-next:hover:before,
.testimonials-two .owl-theme .owl-nav .owl-prev:hover:before {
  background: var(--main-color);
}

/*** 

====================================================================
  Why Us Two Section
====================================================================

***/

.why-us-two {
  position: relative;
  background-color: #0b0b0b;
  padding-top: var(--padding-top-50);
  padding-bottom: var(--padding-bottom-70);
}

.why-us-two .left-bg {
  position: absolute;
  left: 0;
  bottom: 80px;
}

.why-us-two .right-bg {
  position: absolute;
  right: 0;
  top: -100px;
}

.why-us-two .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.why-block-two {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.why-block-two.m-top {
  padding-top: var(--padding-top-40);
}

.why-block-two .inner-box {
  position: relative;
  display: block;
  text-align: center;
  background: var(--color-two);
}

.why-block-two .image-box {
  position: relative;
  overflow: hidden;
  background-color: var(--main-color);
}

.why-block-two .inner-box:hover .image-box img {
  opacity: 0.70;
  transform: scale(1.05, 1.05);
}

.why-block-two .image-box img {
  position: relative;
  display: block;
  width: 100%;
  -moz-transition: all 500ms ease;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

.why-block-two .image-box::after {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  display: block;
  content: '';
  width: 0;
  height: 0;
  background: rgba(255, 255, 255, .2);
  border-radius: 0%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
}

.why-block-two .inner-box:hover .image-box::after {
  -webkit-animation: circle .95s;
  animation: circle .95s;
}

.why-block-two .over-box {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding-left: var(--padding-left-30);
  padding-right: var(--padding-right-30);
  padding-bottom: var(--padding-bottom-40);
  z-index: 3;
}

.why-block-two .image-box:before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 180px;
  background: rgba(0, 0, 0, 0.70);
  background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.95), rgba(0, 0, 0, 0.80), rgba(0, 0, 0, 0.05));
  background: -ms-linear-gradient(bottom, rgba(0, 0, 0, 0.95), rgba(0, 0, 0, 0.80), rgba(0, 0, 0, 0.05));
  z-index: 1;
}

.why-block-two .inner-box .icon-box {
  position: relative;
  display: block;
  line-height: 80px;
  margin-bottom: var(--margin-bottom-15);
}

.why-block-two .inner-box .icon-box img {
  position: relative;
  max-height: 80px;
}

.why-block-two h4 {
  position: relative;
  text-transform: capitalize;
}

.why-block-two h4 a {
  color: var(--white-color);
}

.why-block-two h4 a:hover {
  color: var(--main-color);
}

.why-block-two .text {
  position: relative;
  font-size: var(--font-14);
  color: #fff;
}

/*** 

====================================================================
  Image Gallery Section
====================================================================

***/

.image-gallery {
  position: relative;
  background-color: var(--color-four);
  padding-bottom: var(--padding-bottom-100);
  overflow: hidden;
}

.image-gallery .carousel-box {
  position: relative;
}

.image-gallery .auto-container {
  max-width: 860px;
}

.image-gallery .image-gallery-slider {
  position: static;
}

.image-gallery .image-gallery-slider .owl-stage-outer {
  overflow: visible;
}

.image-gallery .gallery-block {
  position: relative;
}

.image-gallery .gallery-block .image {
  position: relative;
}

.image-gallery .gallery-block .image img {
  position: relative;
  display: block;
  width: 100%;
}

.image-gallery .owl-theme .owl-dots {
  display: none;
}

.image-gallery .owl-theme .owl-nav {
  position: absolute;
  left: 20px;
  right: 20px;
  height: 0;
  top: 50%;
  margin-top: -22px;
}

.image-gallery .owl-theme .owl-nav .owl-next,
.image-gallery .owl-theme .owl-nav .owl-prev {
  position: absolute;
  top: 50%;
  display: inline-block;
  vertical-align: top;
  width: 44px;
  height: 44px;
  line-height: 44px;
  font-size: var(--font-24);
  text-align: center;
  background: transparent;
  color: var(--main-color);
  border-radius: 0%;
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}

.image-gallery .owl-theme .owl-nav .owl-next span,
.image-gallery .owl-theme .owl-nav .owl-prev span {
  position: relative;
  z-index: 1;
}

.image-gallery .owl-theme .owl-nav .owl-next:before,
.image-gallery .owl-theme .owl-nav .owl-prev:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}

.image-gallery .owl-theme .owl-nav .owl-next {
  right: 15px;
}

.image-gallery .owl-theme .owl-nav .owl-prev {
  left: 15px;
}

.image-gallery .owl-theme .owl-nav .owl-next:hover,
.image-gallery .owl-theme .owl-nav .owl-prev:hover {
  color: var(--black-color);
}

.image-gallery .owl-theme .owl-nav .owl-next:hover:before,
.image-gallery .owl-theme .owl-nav .owl-prev:hover:before {
  background: var(--main-color);
}

/*** 

====================================================================
  Menu Section
====================================================================

***/

.menu-one {
  position: relative;
  padding-top: var(--padding-top-90);
  padding-bottom: var(--padding-bottom-60);
  overflow: hidden;
  background-color: var(--color-four);
}

.menu-one.alternate {
  padding-top: 0;
}

.menu-one .left-bg {
  position: absolute;
  left: 0;
  top: 0;
}

.menu-one .right-bg {
  position: absolute;
  right: 0;
  top: 0;
}

.menu-one .right-bg-2 {
  position: absolute;
  right: 0;
  bottom: 80px;
}

.menu-one .title-box {
  margin-bottom: var(--margin-bottom-45);
}

.menu-one .image-col {
  position: relative;
  margin-bottom: 40px;
}

.menu-one.alternate .image-col {
  order: 12;
}

.menu-one .image-col .inner {
  position: relative;
  display: block;
}

.menu-one .image-col .image {
  position: relative;
  display: block;
  padding-left: var(--padding-left-30);
}

.menu-one.alternate .image-col .image {
  padding-left: var(--padding-left-0);
  padding-right: var(--padding-right-30);
}

.menu-one .image-col .image:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 15px;
  height: 100%;
  background: url(../images/background/pattern-9.svg) center top repeat;
}

.menu-one.alternate .image-col .image:before {
  left: auto;
  right: 0;
}

.menu-one .image-col .image img {
  position: relative;
  display: block;
  width: 100%;
}

.menu-one .menu-col {
  position: relative;
}

.menu-one.alternate .menu-col {
  order: 0;
}

.menu-one .menu-col .inner {
  position: relative;
  display: block;
  padding-left: var(--padding-left-20);
  min-height: 100%;
}

.menu-one.alternate .menu-col .inner {
  padding-left: var(--padding-left-0);
  padding-right: var(--padding-right-20);
}

.menu-one .menu-col .dish-block {
  position: relative;
  margin-bottom: var(--margin-bottom-35);
}

.menu-one .menu-col .dish-block .inner-box {
  position: relative;
}

.menu-one .menu-col .dish-block .title {
  position: relative;
  line-height: 24px;
  margin-bottom: var(--margin-bottom-10);
  font-family: var(--font-family-Forum);
}

.menu-one .menu-col .dish-block .title:before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -3px;
  width: 100%;
  height: 6px;
  border-top: 1px solid var(--white-color-opacity-four);
  border-bottom: 1px solid var(--white-color-opacity-four);
}

.menu-one .menu-col .dish-block .title .ttl {
  position: relative;
  float: left;
  padding-right: var(--padding-right-15);
  background-color: var(--color-four);
  text-transform: capitalize;
}

.menu-one .menu-col .dish-block .title .ttl a {
  color: var(--white-color);
}

.menu-one .menu-col .dish-block .title .ttl a:hover {
  color: var(--main-color);
}

.menu-one .menu-col .dish-block .title .ttl .s-info {
  position: relative;
  display: inline-block;
  line-height: 20px;
  padding: 0 5px;
  font-size: var(--font-14);
  color: var(--color-four);
  background: var(--main-color);
  margin-left: 10px;
}

.menu-one .menu-col .dish-block .title .price {
  position: relative;
  float: right;
  font-size: var(--font-22);
  color: var(--main-color);
  padding-left: var(--padding-left-15);
  background-color: var(--color-four);
}

.menu-one .menu-col .dish-block .desc {
  position: relative;
  font-size: var(--font-14);
  color: #000;
  max-width: 350px;
}

.menu-one .menu-col .dish-block .desc a {
  color: var(--color-one);
}

/*** 

====================================================================
  Special Offer Section
====================================================================

***/

.special-offer-two {
  position: relative;
  background-color: var(--color-four);
  padding-bottom: var(--padding-bottom-65);
}

.special-offer-two .left-bg {
  position: absolute;
  left: 0;
  bottom: 25%;
}

.special-offer-two .right-bg {
  position: absolute;
  right: 0;
  top: 0;
}

.special-offer-two .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.offer-block-three {
  position: relative;
  margin-bottom: var(--margin-bottom-35);
}

.offer-block-three .inner-box {
  position: relative;
  display: block;
  text-align: center;
}

.offer-block-three .inner-box .image {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 20px;
  background-color: var(--main-color);
  margin-bottom: var(--margin-bottom-15);
}

.offer-block-three .inner-box .image img {
  position: relative;
  display: block;
  width: 100%;
  border-radius: 20px;
  -moz-transition: all 500ms ease;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

.offer-block-three .inner-box:hover .image img {
  opacity: 0.70;
  transform: scale(1.05, 1.05);
}

.offer-block-three h4 {
  position: relative;
  text-transform: capitalize;
  margin-bottom: var(--margin-bottom-10);
}

.offer-block-three h4 a {
  color: var(--white-color);
}

.offer-block-three h4 a:hover {
  color: var(--main-color);
}

.offer-block-three .desc {
  position: relative;
  font-size: var(--font-14);
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-15);
}

.offer-block-three .price {
  position: relative;
  font-family: var(--font-family-Forum);
  font-size: var(--font-20);
  color: var(--main-color);
}

/*** 

====================================================================
  Special Dish Section
====================================================================

***/

.chef-selection {
  position: relative;
  background-color: var(--color-four);
}

.chef-selection .outer-container {
  position: relative;
  background: var(--color-five);
  border-radius: 20px;
  overflow: hidden;
}

.chef-selection .row {
  margin: 0 0;
}

.chef-selection .image-col {
  position: relative;
  padding: 0 0;
}

.chef-selection .image-col .inner {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
}

.chef-selection .image-col .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.chef-selection .image-col .image-layer:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.chef-selection .image-col .image {
  position: relative;
  display: none;
}

.chef-selection .image-col .image img {
  position: relative;
  display: block;
  width: 100%;
}

.chef-selection .content-col {
  position: relative;
  padding: 0 0;
}

.chef-selection .content-col .inner {
  position: relative;
  display: block;
  max-width: 600px;
  padding-top: var(--padding-top-140);
  padding-bottom: var(--padding-bottom-140);
  padding-left: var(--padding-left-130);
  padding-right: var(--padding-right-20);
}

.chef-selection .content-col .badge-icon {
  position: absolute;
  left: -60px;
  top: 0;
}

.chef-selection .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.chef-selection .title-box h3 {
  font-size: var(--font-40);
}

.chef-selection .price {
  position: relative;
  line-height: 30px;
}

.chef-selection .price .old {
  position: relative;
  font-size: var(--font-18);
  color: var(--color-three);
  padding-right: var(--padding-right-20);
}

.chef-selection .price .new {
  position: relative;
  font-size: var(--font-24);
  color: var(--main-color);
}

.chef-selection .content-col .link-box {
  padding-top: var(--padding-top-40);
}

/*** 

====================================================================
  Menu Section
====================================================================

***/

.menu-two {
  position: relative;
  background-color: var(--color-four);
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-45);
}

.menu-two .left-bg {
  position: absolute;
  left: 0;
  top: 120px;
}

.menu-two .right-bg {
  position: absolute;
  right: 0;
  top: 0px;
}

.menu-two .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.menu-two .menu-col .inner {
  position: relative;
  display: block;
  padding-right: var(--padding-right-80);
  min-height: 100%;
}

.menu-two .menu-col .inner:after {
  content: '';
  position: absolute;
  right: -15px;
  top: 0;
  bottom: 50px;
  border-right: 1px solid var(--white-color-opacity-four);
}

.menu-two .menu-col:nth-child(2) .inner {
  padding-right: 0;
  padding-left: var(--padding-left-80);
  border-right: none;
}

.menu-two .menu-col:nth-child(2) .inner:after {
  display: none;
}

.menu-two .dish-block {
  position: relative;
  margin-bottom: var(--margin-bottom-55);
}

.menu-two .dish-block .inner-box {
  position: relative;
  padding-left: var(--padding-left-120);
  min-height: 100px;
  padding-top: var(--padding-top-10);
}

.menu-two .dish-block .dish-image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100px;
  height: 100px;
  border-radius: 22px;
  overflow: hidden;
  background-color: var(--main-color);
}

.dish-block .inner-box:hover img {
  opacity: 0.70;
  transform: scale(1.05, 1.05);
}

.menu-two .dish-block .dish-image img {
  position: relative;
  display: block;
  width: 100px;
  height: 100px;
  border-radius: 10px;
  -moz-transition: all 500ms ease;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

.menu-two .dish-block .title {
  position: relative;
  line-height: 24px;
  margin-bottom: var(--margin-bottom-10);
  font-family: var(--font-family-Forum);
}

.menu-two .dish-block .title:before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -3px;
  width: 100%;
  height: 6px;
  border-top: 1px solid var(--white-color-opacity-four);
  border-bottom: 1px solid var(--white-color-opacity-four);
}

.menu-two .dish-block .title .ttl {
  position: relative;
  float: left;
  padding-right: var(--padding-right-15);
  background-color: var(--color-four);
  text-transform: capitalize;
}

.menu-two .dish-block .title .ttl a {
  color: var(--white-color);
}

.menu-two .dish-block .title .ttl .s-info {
  position: relative;
  display: inline-block;
  line-height: 20px;
  padding: 0 5px;
  font-size: var(--font-14);
  color: var(--color-four);
  background: var(--main-color);
  margin-left: 10px;
}

.menu-two .dish-block .title .price {
  position: relative;
  float: right;
  font-size: var(--font-22);
  color: var(--main-color);
  padding-left: var(--padding-left-15);
  background-color: var(--color-four);
}

.menu-two .dish-block .desc {
  position: relative;
  font-size: var(--font-14);
  color: var(--color-one);
}

.menu-two .dish-block .desc a {
  color: var(--color-one);
}

/*** 

====================================================================
  Featured Section
====================================================================

***/

.featured-section {
  position: relative;
  background-color: var(--color-four);
  padding-bottom: var(--padding-bottom-60);
}

.featured-section .row {
  margin: 0 -10px;
}

.featured-section .text-col {
  position: relative;
  padding: 0 10px;
  text-align: center;
  margin-bottom: 40px;
}

.featured-section.alternate .text-col {
  order: 12;
}

.featured-section .text-col .inner {
  position: relative;
  min-height: 100%;
  width: calc(100% - 15px);
  display: table;
  vertical-align: middle;
  left: 15px;
  padding-left: var(--padding-left-25);
  padding-right: var(--padding-right-25);
  background: url(../images/background/pattern-5.png) left top repeat;
  background-color: var(--color-five);
  padding-top: var(--padding-top-30);
  padding-bottom: var(--padding-bottom-50);
}

.featured-section.alternate .text-col .inner {
  left: 0;
  right: 15px;
}

.featured-section .text-col .inner:before {
  content: '';
  position: absolute;
  left: -15px;
  top: 0;
  width: 15px;
  height: 100%;
  background: url(../images/background/pattern-9.svg) center top repeat;
}

.featured-section.alternate .text-col .inner:before {
  left: auto;
  right: -15px;
}

.featured-section .text-col .content {
  position: relative;
  display: table-cell;
  width: 100%;
  vertical-align: middle;
}

.featured-section .text-col h2 {
  font-size: var(--font-50);
  padding-bottom: var(--padding-bottom-5);
}

.featured-section .text-col .text {
  position: relative;
  color: var(--color-one);
  font-size: var(--font-14);
}

.featured-section .text-col .content-inner {
  max-width: 350px;
  margin: 0 auto;
}

.featured-section .text-col .separator {
  position: relative;
  margin-top: var(--margin-top-20);
  margin-bottom: var(--margin-bottom-20);
}

.featured-section .text-col .separator span {
  position: relative;
  display: block;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  margin: 0 auto;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.featured-section .text-col .booking-info {
  position: relative;
  text-align: center;
  margin-bottom: var(--margin-bottom-25);
}

.featured-section .text-col .booking-info .bk-title {
  position: relative;
  font-weight: 700;
  text-transform: capitalize;
  margin-bottom: 5px;
}

.featured-section .text-col .booking-info .bk-no {
  position: relative;
  font-size: var(--font-30);
  color: var(--main-color);
  line-height: 1em;
}

.featured-section .text-col .booking-info .bk-no a {
  color: var(--main-color);
}

.featured-section .text-col .booking-info .bk-no a:hover {
  text-decoration: underline;
}

.featured-section .image-col {
  position: relative;
  padding: 0 10px;
  margin-bottom: 20px;
}

.featured-section.alternate .image-col {
  order: 0;
}

.featured-section .image-col .inner {
  position: relative;
  display: block;
}

.featured-section .image-col .img-col {
  position: relative;
  padding: 0 10px;
  margin-bottom: 20px;
}

.featured-section .image-col img {
  display: block;
  width: 100%;
}

/*** 

====================================================================
  online reservation Section
====================================================================

***/

.online-reservation {
  position: relative;
  background: var(--black-color);
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-100);
  text-align: center;
}

/* for inner page  */
.online-reservation.inner-page {
  position: relative;
  background-color: var(--color-four);
}

.online-reservation.inner-page .left-bg {
  position: absolute;
  left: 0;
  top: 0;
}

.online-reservation.inner-page .right-bg {
  position: absolute;
  right: 0;
  bottom: 100px;
}

/* */


.online-reservation .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  opacity: 1;
}

.online-reservation .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.online-reservation .title-box .text {
  max-width: none;
  padding-top: 0;
}

.online-reservation .title-box .text.desc {
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-15);
  padding: 0 200px;
}

.online-reservation .title-box .text a {
  color: var(--main-color);
}

.online-reservation .reservation-form {
  position: relative;
}

.online-reservation .reservation-form form {
  position: relative;
  padding-right: var(--padding-right-250);
}

.online-reservation .reservation-form form .row {
  margin: 0 -10px;
}

.online-reservation .reservation-form form .row .form-group {
  padding: 0 10px;
  margin-bottom: 20px;
}

.online-reservation .reservation-form form button {
  position: absolute;
  right: 0;
  top: 0;
  width: 230px;
}

.online-reservation .powered-by {
  position: relative;
  text-align: center;
  padding-top: var(--padding-top-5);
}


/*** 

====================================================================
  online reservation open table
====================================================================

***/

.map-location-section {
  position: relative;

}

.map-location-section .outer-box {
  position: relative;
  top: 100px;
  margin-bottom: 100px;
  /*background: var(--color-five);*/
  z-index: 1;
}

.map-location-section .outer-box>.row {
  margin: 0 0;
}

.map-location-section .reserv-col {
  position: relative;
  padding: 0 15px 0 0;
}

.map-location-section .reserv-col .inner {
  position: relative;
  padding-right: var(--padding-right-60);
  min-height: 100%;
  /*background-color:var(--color-five);*/
}

.map-location-section .info-col {
  position: relative;
  padding: 0 0;
  text-align: center;
  background: url(../images/background/pattern-2.png) left top repeat;
  background-color: var(--color-five);
}

.map-location-section .info-col .img-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
}

.map-location-section .info-col .inner {
  position: relative;
  padding-top: var(--padding-top-75);
  padding-bottom: var(--padding-bottom-55);
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
  margin-left: var(--margin-left-15);
  margin-right: var(--margin-right-15);
  min-height: 100%;
  border: 1px solid var(--main-color);
}

.map-location-section .info-col .inner:before {
  content: '';
  position: absolute;
  left: -14px;
  top: 12px;
  right: -14px;
  bottom: 12px;
  border: 1px solid var(--main-color);
}

.map-location-section .info-col .title {
  margin-bottom: var(--margin-bottom-40);
}

.map-location-section .info-col .title h2 {
  line-height: 1.0em;
}

.map-location-section .info-col .data {
  max-width: 280px;
  margin: 0 auto;
}


.map-location-section .info-col .instruction {
  position: relative;
  line-height: 1.6em;
  color: var(--color-one);
  z-index: 1;
}

.map-location-section .info-col .booking-info {
  position: relative;
  text-align: center;
  margin-bottom: var(--margin-bottom-20);
}

.map-location-section .info-col .booking-info .bk-title {
  position: relative;
  font-weight: 700;
  text-transform: capitalize;
  margin-bottom: 5px;
}

.map-location-section .info-col .booking-info .bk-no {
  position: relative;
  font-size: var(--font-30);
  color: var(--main-color);
  line-height: 1em;
}

.map-location-section .info-col .booking-info .bk-no a {
  color: var(--main-color);
}

.map-location-section .info-col .booking-info .bk-no a:before {
  position: absolute;
  content: '';
  left: 5px;
  right: 5px;
  bottom: 0px;
  height: 5px;
  opacity: 0;
  transform: scale(0.2, 1);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  border-top: 1px solid var(--main-color);
  border-bottom: 1px solid var(--main-color);
}

.map-location-section .info-col .booking-info .bk-no a:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}

.map-location-section .info-col .separator {
  position: relative;
  margin-bottom: var(--margin-bottom-20);
}

.map-location-section .info-col .separator span {
  position: relative;
  display: block;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  margin: 0 auto;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.map-location-section .info-col .info {
  position: relative;
}

.map-location-section .info-col .info li {
  position: relative;
  line-height: 1.5em;
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-25);
}

.map-location-section .info-col .info li strong {
  display: inline-block;
  color: var(--text-color);
  margin-bottom: var(--margin-bottom-5);
}

.map-location-section .info-col .info li:last-child {
  margin-bottom: 0;
}



/*** 

====================================================================
  online reservation contact form
====================================================================

***/

.reservation-contactform {
  position: relative;
  background: var(--black-color);
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-100);
}

.reservation-contactform.inner-page {
  position: relative;
  background-color: var(--color-four);
}

.reservation-contactform.inner-page .left-bg {
  position: absolute;
  left: 0;
  top: 0;
}

.reservation-contactform.inner-page .right-bg {
  position: absolute;
  right: 0;
  bottom: 100px;
}


.reservation-contactform .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  opacity: 0.70;
}

.reservation-contactform .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.reservation-contactform .title-box .text {
  max-width: none;
  padding-top: 0;
}

.reservation-contactform .title-box .text.desc {
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-15);
  padding: 0 200px;
}

.reservation-contactform .title-box .text a {
  color: var(--main-color);
}

.reservation-contactform .reservation-form {
  position: relative;
}

.reservation-contactform .reservation-form form {
  position: relative;
}

.reservation-contactform .reservation-form form .row {
  margin: 0 -10px;
}

.reservation-contactform .reservation-form form .row .form-group {
  padding: 0 10px;
  margin-bottom: 20px;
}

.reservation-contactform .reservation-form form button {
  /*position: absolute;
  right: 0;
  top: 0;*/
  width: 230px;
  margin: 0 auto;
  display: block;
}

.reservation-contactform .powered-by {
  position: relative;
  text-align: center;
  padding-top: var(--padding-top-5);
}


/*** 

====================================================================
  location section
====================================================================

***/

.location-center {
  position: relative;
  padding-top: var(--padding-top-100);
}

.location-center .left-bg {
  position: absolute;
  left: 0;
  bottom: 80px;
}

.location-center .right-bg {
  position: absolute;
  right: 0;
  top: -100px;
}

.location-center .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.why-block {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.location-center .row {
  margin: 0 -20px;
}

.location-center .row .why-block {
  padding: 0 20px;
  margin-bottom: 40px;
}

.location-block .inner-box {
  position: relative;
  display: block;
  padding-top: var(--padding-top-30);
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
  padding-bottom: var(--padding-top-40);
  text-align: center;
  min-height: 100%;
  /*background: var(--color-seven);*/
}

.location-center .why-block:nth-child(even) .inner-box {
  background: var(--color-eight);
}

.location-block .inner-box .icon-box {
  position: relative;
  display: block;
  line-height: 90px;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  margin-bottom: var(--margin-bottom-20);
}

.location-block .inner-box:hover .icon-box {
  -webkit-transform: scale(-1) rotate(180deg);
  -moz-transform: scale(-1) rotate(180deg);
  -ms-transform: scale(-1) rotate(180deg);
  -o-transform: scale(-1) rotate(180deg);
  transform: scale(-1) rotate(180deg);
}

.location-block .inner-box .icon-box img {
  position: relative;
  max-height: 127px;
}

.location-block h4 {
  position: relative;
  text-transform: capitalize;
  margin-bottom: var(--margin-bottom-20);
}

.location-block h4 a {
  color: var(--white-color);
}

.location-block h4 a:hover {
  color: var(--main-color);
}

.location-block .text {
  position: relative;
  font-size: var(--font-14);
  color: var(--color-one);
}


.location-block .more-link {
  position: relative;
  margin-top: 30px;
}

.location-block .more-link a {
  display: inline-block;
  vertical-align: top;
  font-size: var(--font-12);
  color: var(--main-color);
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1.5em;
  padding-bottom: 4px;
}

.location-block .more-link a:before {
  position: absolute;
  content: '';
  left: 5px;
  right: 5px;
  bottom: -4px;
  height: 4px;
  opacity: 0;
  transform: scale(0.2, 1);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  border-bottom: 1px solid var(--main-color);
  border-top: 1px solid var(--main-color);
}

.location-block .more-link a:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}

.location-block .more-link a:hover {
  color: var(--white-color);
  border-color: var(--white-color);
}




/*** 

====================================================================
  Location with image Section
====================================================================

***/

.location-with-image {
  position: relative;
  padding-top: var(--padding-top-100);
}

.location-with-image .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.location-with-image .row {
  margin: 0 -25px;
}

.loc-block {
  position: relative;
  margin-bottom: var(--margin-bottom-30);
}

.location-with-image .row .location-block {
  padding: 0 25px;
  margin-bottom: 40px;
}

.loc-block .inner-box {
  position: relative;
  display: block;
}

.loc-block .image-box {
  position: relative;
  display: block;
}

.loc-block .image-box:before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 250px;
  background: rgba(0, 0, 0, 0.70);
  background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.90), rgba(0, 0, 0, 0.70), rgba(0, 0, 0, 0.0));
  background: -ms-linear-gradient(bottom, rgba(0, 0, 0, 0.90), rgba(0, 0, 0, 0.70), rgba(0, 0, 0, 0.0));
  z-index: 1;
}

.loc-block .image {
  position: relative;
  display: block;
  z-index: 0;
  overflow: hidden;
}

.loc-block .image img {
  position: relative;
  display: block;
  width: 100%;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

.loc-block .image:before {
  position: absolute;
  top: 0;
  left: -85%;
  z-index: 2;
  display: block;
  content: '';
  width: 50%;
  height: 100%;
  background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .8) 100%);
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, .8)));
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .8) 100%);
  -webkit-transform: skewX(-25deg);
  -ms-transform: skewX(-25deg);
  transform: skewX(-25deg);
  z-index: 1;
}

.loc-block .inner-box:hover .image:before {
  -webkit-animation: shine 1s;
  animation: shine 1s;
}

.loc-block .inner-box:hover img {
  transform: scale(1.05, 1.05);
}

.loc-block .date {
  position: absolute;
  left: 25px;
  top: 30px;
  z-index: 1;
}

.loc-block .date span {
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  line-height: 14px;
  letter-spacing: 0.10em;
  padding: 3px 3px;
  background-color: var(--black-color);
}

.loc-block .over-content {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding-left: var(--padding-left-30);
  padding-right: var(--padding-right-25);
  padding-bottom: var(--padding-bottom-25);
  z-index: 3;
}

.loc-block .cat {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.40em;
  margin-bottom: var(--margin-bottom-5);
}

.loc-block h4 {
  position: relative;
  margin-bottom: 0;
}

.loc-block h4 a {
  color: var(--text-color);
}

.loc-block .text {
  color: var(--color-one);
  margin-bottom: var(--margin-bottom-15);
  padding: 5px 0 0 0;
}

.loc-block .more-link {
  position: relative;
  margin-top: 20px;
}

.loc-block .more-link a {
  display: inline-block;
  vertical-align: top;
  font-size: var(--font-12);
  color: var(--main-color);
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1.5em;
  padding-bottom: 4px;
}

.loc-block .more-link a:before {
  position: absolute;
  content: '';
  left: 5px;
  right: 5px;
  bottom: -4px;
  height: 4px;
  opacity: 0;
  transform: scale(0.2, 1);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  border-bottom: 1px solid var(--main-color);
  border-top: 1px solid var(--main-color);
}

.loc-block .more-link a:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}

.loc-block .more-link a:hover {
  color: var(--white-color);
  border-color: var(--white-color);
}


/*** 

====================================================================
  Contact Page
====================================================================

***/

.contact-map {
  position: relative;
}

.contact-page {
  position: relative;
  background: var(--color-four);
}

.contact-page .loc-block {
  margin-bottom: 0;
}

.contact-page .location-center {
  position: relative;
  padding: 0;
  padding: 30px
}

.contact-page .cinfo-box {
  position: relative;
}

.contact-page .cinfo-box:before {
  position: relative;
  content: '';
  position: absolute;
  left: 0;
  width: 100%;
  top: -40px;
  bottom: 0;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

.contact-page .left-bg {
  position: absolute;
  left: 0;
  top: 0;
}

.contact-page .right-bg {
  position: absolute;
  right: 0;
  bottom: 100px;
}

.contactinfo-block .inner-box {
  position: relative;
  display: block;
  padding-top: var(--padding-top-30);
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
  padding-bottom: var(--padding-top-40);
  text-align: center;
  min-height: 100%;
  /*background: var(--color-seven);*/
}


.inner-box.cp-seprator:before {
  content: '';
  position: absolute;
  right: 100%;
  top: 50%;
  margin-top: -4px;
  height: 8px;
  width: 8px;
  border: 1px solid var(--main-color);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.inner-box.cp-seprator:after {
  content: '';
  position: absolute;
  left: 100%;
  top: 50%;
  margin-top: -4px;
  height: 8px;
  width: 8px;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.contactinfo-block h4 {
  position: relative;
  text-transform: capitalize;
  margin-bottom: var(--margin-bottom-20);
}

.contactinfo-block .text {
  position: relative;
  font-size: var(--font-16);
  line-height: 38px;
  color: #fff;
}

.contactinfo-block .text a {}

.contactinfo-block .more-link {
  position: relative;
  margin-top: 10px;
}

.contactinfo-block .more-link a {
  display: inline-block;
  vertical-align: top;
  font-size: var(--font-16);
  color: var(--main-color);
  font-weight: 500;
  line-height: 1.5em;
  padding-bottom: 4px;
}

.contactinfo-block .more-link a:before {
  position: absolute;
  content: '';
  left: 5px;
  right: 5px;
  bottom: -4px;
  height: 4px;
  opacity: 0;
  transform: scale(0.2, 1);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  border-bottom: 1px solid var(--main-color);
  border-top: 1px solid var(--main-color);
}

.contactinfo-block .more-link a:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}

.contactinfo-block .more-link a:hover {
  color: var(--white-color);
  border-color: var(--white-color);
}


.c-page-form-box {
  position: relative;
  padding: 60px;
  margin-top: var(--margin-top-40);
  margin-bottom: var(--margin-bottom-100);
}

.c-page-form-box .form-group {
  width: 100%;
  margin-bottom: 20px;
}

.form-group {
  width: 100%;
  text-align: center;
}

.c-page-form-box .title-box.centered {
  margin-bottom: 30px;
}




/*** 

====================================================================
  Chef Page
====================================================================

***/

.chef-section {
  position: relative;
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-100);
  background: var(--color-five);
}


.chef-section .right-bg {
  position: absolute;
  right: 0;
  bottom: 0;
}


.chef-section .outer-container {
  position: relative;
}

.chef-section .row {
  margin: 0 0;
}

.chef-section .image-col {
  position: relative;
  padding: 0 0;
}

.chef-section.alternate .image-col {
  order: 12;
}

.chef-section .image-col .inner {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
}


.chef-section .image-col .image {
  position: relative;
  padding-bottom: var(--padding-bottom-20);
}

.chef-section .image-col .image img {
  position: relative;
  display: block;
}

.chef-section .image-col .image:before {
  content: '';
  position: absolute;
  left: -20px;
  /*margin-left: -70px;*/
  width: 140px;
  top: 250px;
  bottom: 0;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  background: url(../images/background/pattern-8.svg) center repeat;
}


.chef-section .content-col {
  position: relative;
  padding: 0 0;
  text-align: left;
}

.chef-section.alternate .content-col {
  order: 0;
}

.chef-section .content-col .inner {
  position: relative;
  display: block;
  padding-top: var(--padding-top-150);
  padding-left: var(--padding-left-20);
  padding-right: var(--padding-right-20);
}

.chef-section .content-col .content-box {
  position: relative;
  display: block;
  width: 100%;
}

.chef-section.alternate .content-col .content-box {
  float: right;
}

.chef-section .content-col .title-box {
  margin-bottom: var(--margin-bottom-40);
}

.chef-section .content-col .title-box .text {
  padding-right: var(--padding-right-100);
}

.chef-section .content-col .signature {
  position: relative;
}

.chef-section .content-col .author {
  position: relative;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--main-color);
  font-size: var(--font-12);
  letter-spacing: 0.20em;
  margin-top: var(--margin-top-5);
}

.chef-section .content-col .link-box {
  padding-top: var(--padding-top-30);
}

.chef-section.alternate .content-col .link-box {
  padding-top: var(--padding-top-0);
}



.intro-section.quote {
  position: relative;
  padding-top: var(--padding-top-200);
  padding-bottom: var(--padding-bottom-200);
  background: var(--black-color);
}

.intro-section.quote .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  opacity: 0.80;
}


/*** 

====================================================================
  section
====================================================================

***/


.hamburger {
  display: flex;
  align-self: center;
  flex-direction: column;
  justify-content: space-between;
  width: 30px;
  height: 24px;
  cursor: pointer;
  padding-top: 5px;
  padding-bottom: 5px;
}

.hamburger span {
  /* align-self: flex-end; */
  height: 2px;
  width: 83.33333333%;
  background: #ffffff;
  transition: all 400ms ease-in-out;
}

.hamburger .meat {
  width: 100%;
  transition: all 200ms ease-in-out;
}

.hamburger .bottom-bun {
  width: 58.33333333%;
  transition: all 100ms ease-in-out;
}

.hamburger:hover span {
  width: 100%;
}

html:not(.body-menu-opened) .hamburger .top-bun {
  -webkit-animation: burger-hover 1s infinite ease-in-out alternate forwards 200ms;
  animation: burger-hover 1s infinite ease-in-out alternate forwards 200ms;
}

html:not(.body-menu-opened) .hamburger .meat {
  -webkit-animation: burger-hover 1s infinite ease-in-out alternate forwards 400ms;
  animation: burger-hover 1s infinite ease-in-out alternate forwards 400ms;
}

html:not(.body-menu-opened) .hamburger .bottom-bun {
  -webkit-animation: burger-hover 1s infinite ease-in-out alternate forwards 600ms;
  animation: burger-hover 1s infinite ease-in-out alternate forwards 600ms;
}

@-webkit-keyframes burger-hover {
  0% {
    width: 100%;
  }

  50% {
    width: 50%;
  }

  100% {
    width: 100%;
  }
}

@keyframes burger-hover {
  0% {
    width: 100%;
  }

  50% {
    width: 50%;
  }

  100% {
    width: 100%;
  }
}

.footer-logo {

  max-width: 195px;
}

.mission-vision-area {

  font-size: 24px;
  padding-bottom: 22px;
}

.mission-vision-area-text {

  line-height: 32px !important;
  font-size: 18px !important;
  text-align: justify;
}

.menu-img img {

  width: 100%;
  margin: 12px 0px;
}

.gallery-img img {

  width: 100%;
  padding: 18px;
  border-radius: 18px;
}

.gallery-img img:hover {

  padding: 8px;
}

.swiggy-zomato-area {

  text-align: center;
}

.swiggy-zomato-area img {

  width: 155px;
  border-radius: 18px;
  margin: 18px 6px;

}

.swiggy-zomato-area img:hover {

  transform: scale(1.1);
}

.align-center {

  display: flex;
  align-items: center;
}

.swiggy-zomato-area-img img {

  border-radius: 18px;
}

.contact-social ul {

  display: flex;
  justify-content: center;
  align-items: center;
}

.contact-social ul li {

  width: 38px;
  height: 38px;
  line-height: 42px;
  margin: 6px;
  border-radius: 50%;
  font-size: 16px;
  background-color: #fff;
}

.contact-social ul li a {

  color: #000;
}

@media(max-width:769px) {

  .swiggy-zomato-area img {

    width: 155px !important;
  }
}


.menu-one .dish-block {
  margin-bottom: 30px;
}

.menu-one .dish-block .inner-box {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 18px;
  transition: all .3s ease;
}

.menu-one .dish-block .inner-box:hover {
  transform: translateY(-5px);
}

.menu-one .dish-image {
  width: 120px;
  min-width: 120px;
  height: 120px;
  overflow: hidden;
  border-radius: 18px;
  border: 3px solid #c19a5b;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
}

.menu-one .dish-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.4s;
}

.menu-one .dish-block:hover .dish-image img {
  transform: scale(1.08);
}

.menu-one .dish-content {
  flex: 1;
}

.menu-one .dish-content h5 {
  margin-bottom: 8px;
}

.menu-one .dish-content h5 a {
  color: inherit;
}

.menu-one .dish-content .desc {
  margin-top: 0;
  line-height: 1.8;
}

@media(max-width:767px) {

  .menu-one .dish-block .inner-box {
    gap: 15px;
    padding: 15px;
  }

  .menu-one .dish-image {
    width: 90px;
    min-width: 90px;
    height: 90px;
  }

  .menu-one .dish-content h5 {
    font-size: 18px;
  }
}

/* ==========================================================================
   Banner / Swiper Slider Styles
   ========================================================================== */

/* Base Section Setup */
.banner-section {
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: #0b0b0b;
  /* Fallback dark background */
}

.banner-container {
  width: 100%;
  height: 106vh;
  /* Full viewport height */
  min-height: 550px;
  /* Prevents text crowding on small landscape screens */
  position: relative;
}

.banner-slider {
  width: 100%;
  height: 100%;
}

/* Individual Slide Items */
.slide-item {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  /* Vertically centers the container */
  justify-content: center;
}

/* Background Image Layer with Dark Overlay */
.slide-item .image-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

.slide-item .image-layer::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.55);
  /* Elegant dark tint for text contrast */
  z-index: 2;
}

/* Content Layout */
.auto-container {
  position: relative;
  z-index: 3;
  /* Forces content above background overlay */
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.content-box {
  max-width: 750px;
  /* Comfortable reading width */
  color: #ffffff;
  text-align: center;
  /* Center everything beautifully */
  margin: 0 auto;
}

/* Typography & Visual Elements */
.content .subtitle {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 4px;
  color: #c5a880;
  /* Elegant gold/champagne accent color */
  margin-bottom: 12px;
  font-weight: 600;
}

.content .pattern-image {
  margin: 0 auto 20px auto;
  display: flex;
  justify-content: center;
}

.content .pattern-image img {
  max-width: 120px;
  height: auto;
  opacity: 0.8;
}

.content h1 {
  font-size: clamp(2rem, 4vw + 1rem, 3.5rem);
  /* Responsive fluid typography */
  line-height: 1.2;
  font-weight: 400;
  margin-bottom: 20px;
  letter-spacing: 1px;
}

.content h1 span {
  display: inline-block;
}

.content .text {
  font-size: clamp(0.95rem, 1vw + 0.5rem, 1.15rem);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 35px;
  font-weight: 300;
  padding: 0 15px;
}

/* Interactive Buttons */





/* Swiper Navigation Customization */
.swiper-button-prev,
.swiper-button-next {
  color: #ffffff;
  width: 50px;
  height: 50px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  display: none;
  /* Disables default Swiper text arrows */
}

.swiper-button-prev span,
.swiper-button-next span {
  font-size: 18px;
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
  background: #c5a880;
  border-color: #c5a880;
  color: #0b0b0b;
}

/* Responsive Adjustments */
@media (max-width: 768px) {

  .swiper-button-prev,
  .swiper-button-next {
    display: none;
    /* Hide side arrows on small screens to avoid clashing with text */
  }

  .banner-container {
    height: 85vh;
    /* slightly shorter window height to leave room for mobile browser chrome */
  }
}

/* ==========================================================================
   About Section Styles (Fixed Layout version)
   ========================================================================== */

.about-section {
  padding: 90px 0;
  background-color: #0b0b0b;
  /* Dark backdrop */
  color: #ffffff;
}

/* --- Container Alignment --- */
.auto-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

/* --- Header / Title Box --- */
.title-box.centered {
  text-align: center;
  max-width: 850px;
  margin: 0 auto 60px auto;
}

.title-box .subtitle {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 3px;
  color: #c5a880;
  /* Gold accent */
  margin-bottom: 12px;
  font-weight: 600;
  display: block;
}

.title-box .pattern-image {
  margin-bottom: 25px;
}

.title-box .pattern-image img {
  max-width: 120px;
  height: auto;
}

.title-box h3 {
  font-size: clamp(1.4rem, 2vw + 0.8rem, 1.8rem);
  line-height: 1.5;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.95);
  margin: 0;
}

/* --- Fixed Flexbox Row System --- */
.about-section .row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
  margin-bottom: 60px;
}

/* Force override widths to prevent text squishing */
.about-block {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  box-sizing: border-box;
  margin-bottom: 30px;
}

/* Desktop sizing (3 columns) */
@media (min-width: 992px) {
  .about-block.col-lg-4 {
    flex: 0 0 33.3333%;
    max-width: 33.3333%;
  }
}

/* Tablet sizing (2 columns for content/image, full width for info) */
@media (min-width: 768px) and (max-width: 991px) {
  .about-block.col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .about-block.info-block {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

/* --- Inner Block & Typography Styles --- */
.about-block .inner-box {
  position: relative;
  height: 100%;
}

.content-block .text {
  font-size: 15px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.75);
  font-weight: 300;
}

.content-block .mt-3 {
  margin-top: 20px;
}

.content-block .author {
  margin-top: 25px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 3px;
  color: #c5a880;
  font-weight: 600;
}

.content-block .video-box {
  margin-top: 30px;
}

/* Image styling */
.about-block .image {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
}

.about-block .image img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Info Box styling */
.info-block ul.info {
  list-style: none;
  padding: 40px 30px;
  margin: 0;
  border-radius: 4px;
}

.info-block ul.info li {
  margin-bottom: 25px;
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.8);
}

.info-block ul.info li:last-child {
  margin-bottom: 0;
}

.info-block ul.info li strong {
  display: block;
  font-size: 16px;
  color: #c5a880;
  margin-bottom: 60pxpx;
  /* fixed fallback */
  margin-bottom: 8px;
  font-weight: 500;
  letter-spacing: 1px;
}

.info-block ul.info li .address {
  display: block;
  margin-bottom: 8px;
}

.info-block ul.info li a {
  color: #ffffff;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
}

.info-block ul.info li a:hover {
  color: #c5a880;
}

/* Border separator inside info box */
.info-block ul.info li.separator span {
  display: block;
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(197, 168, 128, 0.3), transparent);
}

/* --- Counter Strip System --- */
.fact-counter {
  border-top: 1px solid rgba(197, 168, 128, 0.15);
  padding-top: 50px;
  margin-top: 30px;
}

.fact-counter .row {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
}

.fact-block {
  position: relative;
  width: 100%;
  text-align: center;
  margin-bottom: 30px;
}

/* Counter block layout sizing */
@media (min-width: 992px) {
  .fact-block.col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

@media (min-width: 576px) and (max-width: 991px) {
  .fact-block.col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

.fact-block .fact-count {
  font-size: clamp(2.2rem, 3vw + 1rem, 2.8rem);
  font-weight: 300;
  color: #c5a880;
  line-height: 1.1;
  margin-bottom: 8px;
}

.fact-block .fact-count i {
  font-style: normal;
  margin-left: 2px;
}

.fact-block .fact-title {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.4;
}


/* ==========================================================================
   Fluid Split Section Styles
   ========================================================================= */

.fluid-section {
  background-color: #0b0b0b;
  /* Dark backdrop to match the theme */
  color: #ffffff;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.outer-container {
  width: 100%;
  padding: 0;
  margin: 0;
}

.fluid-section .row {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

/* --- Columns Setup --- */
.image-col,
.content-col {
  position: relative;
  width: 100%;
  box-sizing: border-box;
}

/* Desktop: Perfect 50/50 Split */
@media (min-width: 992px) {

  .image-col,
  .content-col {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

/* --- Image Column Styles --- */
.image-col .inner {
  position: relative;
  height: 100%;
  width: 100%;
  min-height: 450px;
  /* Ensures the image doesn't collapse */
}

/* Layer used for a rich, full-bleed desktop background look */
.image-col .image-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

/* Actual image element wrapper (Visible on mobile/fallback) */
.image-col .image {
  display: none;
}

/* --- Content Column Styles --- */
.content-col .inner {
  padding: 80px 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.content-col .content-box {
  max-width: 540px;
  /* Clean line lengths for high readability */
  width: 100%;
  text-align: center;
  /* Beautiful centered formatting */
}

/* --- Typography & Elements --- */
.content-col .title-box .subtitle {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 4px;
  color: #c5a880;
  /* Theme accent gold */
  margin-bottom: 12px;
  font-weight: 600;
  display: block;
}

.content-col .title-box .pattern-image {
  margin-bottom: 25px;
}

.content-col .title-box .pattern-image img {
  max-width: 120px;
  height: auto;
}

.content-col .title-box h2 {
  font-size: clamp(1.8rem, 2.5vw + 1rem, 2.6rem);
  line-height: 1.3;
  font-weight: 300;
  margin-bottom: 25px;
  letter-spacing: 1px;
}

.content-col .title-box .text {
  font-size: 15px;
  line-height: 1.7;
  font-weight: 300;
  margin-bottom: 0px;
}

/* Label text area */
.content-col .info {
  margin-bottom: 30px;
}

.content-col .info .author {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 3px;
  color: #c5a880;
  font-weight: 600;
}

/* --- Custom Theme Button (Roll Animation) --- */
.content-col .link-box {
  display: flex;
  justify-content: center;
}

/* ==========================================================================
   Responsive Viewports
   ========================================================================== */

/* Tablets and Mobile Landscape */
@media (max-width: 991px) {
  .image-col .inner {
    min-height: 350px;
    /* Lowers picture height context on tablet display */
  }

  .content-col .inner {
    padding: 60px 30px;
    /* Reduces massive padding on tighter screens */
  }
}

/* Small Smart Phones */
@media (max-width: 576px) {

  /* Hide background absolute layer and let standard image block handle aspect ratios safely */
  .image-col .inner {
    min-height: auto;
  }

  .image-col .image-layer {
    display: none;
  }

  .image-col .image {
    display: block;
    width: 100%;
  }

  .image-col .image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .content-col .inner {
    padding: 45px 20px;
  }
}


/* ==========================================================================
   Menu Selection Styles
   ========================================================================== */

.menu-one {
  padding: 90px 0;
  background-color: #0b0b0b;
  /* Consistent dark luxury backdrop */
  color: #ffffff;
}

/* --- Container Alignment --- */
.auto-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

/* --- Header / Title Box --- */
.menu-one .title-box.centered {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 60px auto;
}

.menu-one .title-box .subtitle {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 4px;
  color: #c5a880;
  /* Theme Accent Gold */
  margin-bottom: 12px;
  font-weight: 600;
  display: block;
}

.menu-one .title-box .pattern-image {
  margin-bottom: 25px;
}

.menu-one .title-box .pattern-image img {
  max-width: 120px;
  height: auto;
}

.menu-one .title-box h2 {
  font-size: clamp(1.8rem, 2.5vw + 1rem, 2.6rem);
  line-height: 1.3;
  font-weight: 300;
  letter-spacing: 1px;
  margin: 0;
}

/* --- Flexbox Columns --- */
.menu-one .row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -20px;
  margin-left: -20px;
}

.menu-col {
  position: relative;
  width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  box-sizing: border-box;
}

/* 2 Column desktop split */
@media (min-width: 992px) {
  .menu-col {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

/* --- Dish Block Components --- */
.dish-block {
  margin-bottom: 35px;
  position: relative;
}

.dish-block .inner-box {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding-bottom: 25px;
  border-bottom: 1px dashed rgba(197, 168, 128, 0.2);
  /* Premium menu divider line */
}

/* Round avatar image thumbnail framework */
.dish-block .dish-image {
  flex-shrink: 0;
  width: 100px;
  height: 120px;
  border-radius: 50%;
  overflow: hidden;
  border: 1px solid rgba(197, 168, 128, 0.4);
}

.dish-block .dish-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.dish-block:hover .dish-image img {
  transform: scale(1.1);
}

/* Dish Content & Info */
.dish-block .dish-content {
  flex-grow: 1;
}

.dish-block .dish-content h5 {
  margin: 0 0 8px 0;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.5px;
}

.dish-block .dish-content h5 a {
  color: #ffffff;
  text-decoration: none;
  transition: color 0.3s ease;
}

.dish-block .dish-content h5 a:hover {
  color: #c5a880;
}

.dish-block .dish-content .desc {
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.65);
  font-weight: 300;
}

/* ==========================================================================
   Responsive Modifiers
   ========================================================================== */

@media (max-width: 768px) {
  .menu-one {
    padding: 60px 0;
  }

  .menu-one .title-box.centered {
    margin-bottom: 45px;
  }
}

/* For ultra-small screens: switch image alignment to top-stacking */
@media (max-width: 480px) {
  .dish-block .inner-box {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 15px;
  }

  .dish-block .dish-image {
    width: 100px;
    height: 100px;
  }
}

/* ==========================================================================
   BU.MI PREMIUM CORE STYLES (MATCHED TO THEME AESTHETIC)
   ========================================================================== */

/* --- 1. OUR STRENGTHS SECTION (why-us-two) --- */


/* --- 2. HONOURED & FEATURED SECTION (team-section) --- */
.team-section {
  position: relative;
  padding: 90px 0;
  background-color: #0b0b0b;
  color: #ffffff;
}

.team-section .auto-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
  box-sizing: border-box;
}

.team-section .row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

/* Precision matched structural boundary to screenshot details */
.team-section .team-block .inner-box {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #111111;
  border: 1px solid rgba(0, 0, 0, 0.05);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  padding: 24px;
  text-align: center;
  height: 100%;
  box-sizing: border-box;
  transition: all 0.4s cubic-bezier(0.215, 0.610, 0.355, 1);
}

.team-section .team-block .image {
  position: relative;
  width: 100%;
  height: 100%;
  margin-bottom: 25px;
  overflow: hidden;
  border-radius: 2px;
  background-color: #1a1a1a;
}

.team-section .team-block .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.team-section .team-block h3 {
  font-size: 20px;
  font-weight: 400;
  letter-spacing: 0.5px;
  margin: 0 0 8px 0;
}

.team-section .team-block h3 a {
  color: #ffffff;
  text-decoration: none;
}

.team-section .team-block .designation {
  font-size: 11px;
  text-transform: uppercase;
  color: #d79740;
  letter-spacing: 2px;
  font-weight: 500;
  margin-bottom: 18px;
}

.team-section .team-block .text.desc {
  font-size: 14px;
  line-height: 1.65;
  color: #000;
  font-weight: 300;
  margin: 0;
}


/* --- 3. UNIVERSAL THEMATIC COMPONENTS & HOVERS --- */
.title-box.centered {
  text-align: center;
  margin-bottom: 55px;
}

.title-box .subtitle {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 3px;
  color: #c5a880;
  margin-bottom: 12px;
  font-weight: 600;
  line-height: 1.3em;
  display: block;
}

.title-box .pattern-image {
  margin-bottom: 25px;
}

.title-box .pattern-image img {
  max-width: 120px;
  height: auto;
  display: inline-block;
}

.title-box h2 {
  font-size: clamp(2rem, 2.5vw + 1rem, 2.6rem);
  line-height: 1.3;
  font-weight: 300;
  letter-spacing: 1px;
  margin: 0;
}

/* Micro-lux interactive shadow lift triggers */
.why-block-two .inner-box:hover,
.team-block .inner-box:hover {
  border-color: rgba(197, 168, 128, 0.3);
  transform: translateY(-4px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.5);
}


/* --- 4. VIEWPORT RESPONSIVENESS OVERRIDES --- */
@media (max-width: 991px) {

  .why-us-two,
  .team-section {
    padding: 60px 0;
  }

  .why-us-two .why-block-two .image-box,
  .team-section .team-block .image {
    height: 100%;
  }
}

@media (max-width: 767px) {
  .title-box.centered {
    margin-bottom: 40px;
  }
}



/* Section Base */
.menu-one {
  padding: 90px 0;
  background-color: #0d0d0d;
  /* Sleek luxury black (Change to #ffffff for ultra-clean white) */
}

/* Perfect Flexbox Alignment */
.row.clearfix {
  display: flex;
  flex-wrap: wrap;
  margin-right: -20px;
  margin-left: -20px;
}

.col-lg-6 {
  position: relative;
  width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  box-sizing: border-box;
  margin-bottom: 40px;
  /* Clean spacing when stacked on mobile */
}

/* Symmetric Desktop Split */
@media (min-width: 992px) {
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
    margin-bottom: 0;
    /* Perfectly level on desktop */
  }
}

/* Premium Image Frame */
.menu-img-container {
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: #1a1a1a;
  border: 1px solid rgba(255, 255, 255, 0.05);
  /* Invisible border that catches light */
}

/* The Image Style */
.menu-img-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.9s cubic-bezier(0.25, 1, 0.5, 1);
  /* Ultra-slow cinematic zoom */
}

/* Premium Light Flash Overlay */
.menu-img-container::after {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0) 100%);
  transform: skewX(-25deg);
  transition: none;
  pointer-events: none;
}

/* Micro-Interactions on Hover */
.menu-img-container:hover img {
  transform: scale(1.04);
  /* Just a hint of motion */
}

/* Elegant, subtle light sweep across the image on hover */
.menu-img-container:hover::after {
  left: 125%;
  transition: left 0.7s ease-in-out;
}

/* ==========================================
   Chef Gallery Section Base
   ========================================== */
.chef-section {
  padding: 80px 0;
  background-color: #0b0b0d;
  /* Matching your website dark theme */
}

/* Perfect Flexbox Grid Gaps */
.chef-section .row.clearfix {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.chef-section .col-lg-4.col-sm-6 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  box-sizing: border-box;
  margin-bottom: 30px;
  /* Uniform grid row spacing */
}

/* Precise Responsive Column Widths */
@media (min-width: 576px) {
  .chef-section .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (min-width: 992px) {
  .chef-section .col-lg-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
}

/* ==========================================
   Gallery Card Container (Exact Menu Section Layout)
   ========================================== */
.gallery-img {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  /* Locks items into perfect square dimensions across the row */
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.05);
  /* Clean subtle border */
}

/* The Image Style */
.gallery-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.9s cubic-bezier(0.25, 1, 0.5, 1);
  /* Ultra-slow cinematic zoom */
}

/* Premium Light Flash Overlay */
.gallery-img::after {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0) 100%);
  transform: skewX(-25deg);
  transition: none;
  pointer-events: none;
}

/* Micro-Interactions on Hover */
.gallery-img:hover img {
  transform: scale(1);
  /* Just a hint of motion */
}

/* Elegant, subtle light sweep across the image on hover */
.gallery-img:hover::after {
  left: 125%;
  transition: left 0.7s ease-in-out;
}


/* ==========================================================================
   BU.MI BRAND IDENTITY TYPOGRAPHY SYSTEM
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600&family=Tenor+Sans&display=swap');

/* --- Global Baseline Controls --- */
html,
body {
  font-family: 'Outfit', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ==========================================================================
   1. Structural Headings (Inspired by Logo's Wide Geometric Geometry)
   ========================================================================== */
h1,
h2,
h3,
h4,
h5,
h6,
.title-box h2,
.intro-top-heading {
  font-family: 'Tenor Sans', sans-serif !important;
  font-weight: 400;
  /* Keeps lines fine and sophisticated like the logo stroke */
  color: #ffffff;
  text-transform: uppercase;
  /* Aligns with the logo's uppercase presence */
  letter-spacing: 0.08em;
  /* Gives that high-end, spacious air */
  line-height: 1.3;
  margin-top: 0;
}

h1 {
  font-size: 48px;
  letter-spacing: 0.1em;
}

h2,
.title-box h2 {
  font-size: 26px;
  letter-spacing: 0.08em;
}

h3 {
  font-size: 26px;
  letter-spacing: 0.06em;
}

h4 {
  font-size: 20px;
  color: #fff;
  /* Elegant brand-gold accent color */
  letter-spacing: 0.1em;
}

h5 {
  font-size: 16px;
  letter-spacing: 0.12em;
}

h6 {
  font-size: 13px;
  letter-spacing: 0.15em;
}

/* ==========================================================================
   2. Body Paragraphs & Descriptions (Outfit: Clean, Perfectly Circular Shapes)
   ========================================================================== */
p,
.text,
.desc,
.text.desc {
  font-family: 'Outfit', sans-serif !important;
  font-size: 15px;
  font-weight: 300;
  /* Light weight keeps it looking custom, not generic */
  line-height: 1.8;
  /* Generous breathing space prevents text fatigue on dark theme */
  color: #b0b5c4;
  /* Soft silver-grey for premium contrast */
  letter-spacing: 0.03em;
}

/* Specific fix for heavy text blocks like the experiential intro section */
p strong,
span.highlight {
  font-weight: 500;
  color: #ffffff;
}

/* ==========================================================================
   3. Navigation, Interactive Links, & List Elements
   ========================================================================== */
a {
  font-family: 'Outfit', sans-serif !important;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.06em;
  transition: color 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Header main menu & footer lists specific formatting */
nav ul li a,
.menu-nav li a,
.main-menu ul li a,
.btn,
button {
  font-family: 'Outfit', sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  /* Emphasizes upscale restobar aesthetic */
}
.contact-page a{
  text-transform: none;

}
ul,
ol {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

li {
  font-family: 'Outfit', sans-serif !important;
  font-size: 14px;
  font-weight: 300;
  color: #b0b5c4;
}

.menu-section {
  padding: 120px 0;
  background: #0f0f0f;
}

.section-heading {
  text-align: center;
  margin-bottom: 50px;
}

.section-heading span {
  color: #fbcda2;
  text-transform: uppercase;
  letter-spacing: 3px;
}

.section-heading h2 {
  color: #fff;
  font-size: 52px;
  margin-top: 10px;
}

.menu-tabs {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 50px;
}

.menu-btn {
  background: transparent;
  border: 1px solid #fbcda2;
  color: #fbcda2;
  padding: 14px 35px;
  border-radius: 50px;
  cursor: pointer;
  transition: .4s;
  font-weight: 600;
}

.menu-btn.active,
.menu-btn:hover {
  background: #fbcda2;
  color: #000;
}

.menu-slider {
  display: none;
}

.active-slider {
  display: block;
}

.swiper {
  width: 100%;
  padding: 40px 0;
}

.swiper-slide {
  transition: 0.4s;
  transform: scale(.85);
  opacity: .5;
}

.swiper-slide-active {
  transform: scale(1);
  opacity: 1;
}

.swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 25px;
}

.swiper-button-next,
.swiper-button-prev {
  color: #fbcda2;
}

@media(max-width:991px) {

  .section-heading h2 {
    font-size: 38px;
  }

  .swiper-slide img {
    height: 100%;
  }

  .menu-tabs {
    flex-wrap: wrap;
  }
}

@media(max-width:767px) {

  .swiper-slide img {
    height: 100%;
  }

  .menu-btn {
    width: 100%;
    max-width: 220px;
  }
}

.contactinfo-block h4 {}


/* ===============================
   BU.MI Color Theme Only
================================ */

/* Section Background */
.about-section {
  background: #F8F1E7;
}

/* Subtitle */
.about-section .subtitle span {
  color: #955339;
}

/* Main Heading */
.about-section h3 {
  color: #5B3527;
}

/* Paragraphs */
.about-section .text {
  text-align: center;
  color: #6C4B3C;
}

/* Information Titles */
.about-section .info strong {
  color: #955339;
}

/* Address & Text */
.about-section .info li,
.about-section .address {
  color: #6C4B3C;
}

/* Phone Number */
.about-section .info a {
  color: #955339;
}

/* Separator */
.about-section .separator span {
  background: #955339;
}

/* Counter Boxes */
.about-section .fact-counter .inner {
  background: #955339;
}

/* Counter Numbers */
.about-section .fact-counter .count-box {
  color: #F6C89A;
}

/* Counter Titles */
.about-section .fact-counter .fact-title {
  color: #F8F1E7;
}

/* Pattern Icon */
.about-section .pattern-image img {
  filter: brightness(0) saturate(100%) invert(31%) sepia(23%) saturate(1020%) hue-rotate(338deg) brightness(94%) contrast(91%);
}

/*=====================================
        INFO CARD
======================================*/

.about-section .info-block .inner-box {
  background: transparent;
  border: none;
  box-shadow: none;
}

.about-section .info li {
  color: #6C4B3C;
}

.about-section .info strong {
  color: #955339;
}

.about-section .info a {
  color: #955339;
}

.about-section .separator span {
  background: #955339;
}


/*=====================================
        FACT COUNTER
======================================*/

.about-section .fact-counter .inner {
  background: transparent;
  border: none;
  box-shadow: none;
}

.about-section .fact-counter .count-box {
  color: #955339;
}

.about-section .fact-counter .fact-title {
  color: #5B3527;
}

.about-section .fact-counter .inner:hover {
  background: transparent;
  transform: none;
}

.about-section .fact-counter .inner:hover .count-box {
  color: #955339;
}

.about-section .fact-counter .inner:hover .fact-title {
  color: #5B3527;
}

/*=========================================
    TEAM SECTION - BU.MI COLORS ONLY
==========================================*/

.team-section {
  background: #f5ecde;
}

.team-section .subtitle span {
  color: #955339;
}

.team-section h2 {
  color: #5B3527;
}

.team-section .pattern-image img {
  filter: brightness(0) saturate(100%) invert(31%) sepia(20%) saturate(1040%) hue-rotate(338deg) brightness(95%) contrast(92%);
}

/* Card */

.team-section .team-block .inner-box {
  background: transparent;
}

/* Image */

.team-section .team-block .image {
  border-color: #D8B394;
}

/* Title */

.team-section .team-block h3 a {
  color: #955339;
}

.team-section .team-block h3 a:hover {
  color: #6C4B3C;
}

/* Designation */

.team-section .designation {
  color: #B37A5A;
}

/* Description */

.team-section .desc,
.team-section .text {
  color: #6C4B3C;
}

/*=========================================
    FLUID SECTION - BU.MI COLORS ONLY
==========================================*/

.fluid-section {
  background: #F8F1E7;
}

/* Right Content Area */

.fluid-section .content-col {
  background: #F8F1E7;
}

/* Subtitle */

.fluid-section .subtitle span {
  color: #955339;
}

/* Heading */

.fluid-section h2 {
  color: #5B3527;
}

/* Paragraph */

.fluid-section .text {
  color: #6C4B3C;
}

/* Bottom Tag */

.fluid-section .author {
  color: #955339;
}

/* Separator Icon */

.fluid-section .pattern-image img {
  filter: brightness(0) saturate(100%) invert(31%) sepia(20%) saturate(1040%) hue-rotate(338deg) brightness(95%) contrast(92%);
}

/* Button */

.fluid-section .btn-style-two {
  background: #955339;
  border-color: #955339;
}

.fluid-section .btn-style-two .text-one,
.fluid-section .btn-style-two .text-two {
  color: #F8F1E7;
}

.fluid-section .btn-style-two:hover {
  background: #7C4732;
  border-color: #7C4732;
}

/*=========================================
    MENU SECTION - BU.MI COLORS ONLY
==========================================*/

.menu-one {
  background: #f5ecde;
}

/* Subtitle */

.menu-one .subtitle span {
  color: #955339;
}

/* Heading */

.menu-one h2 {
  color: #5B3527;
}

/* Separator */

.menu-one .pattern-image img {
  filter: brightness(0) saturate(100%) invert(31%) sepia(20%) saturate(1040%) hue-rotate(338deg) brightness(95%) contrast(92%);
}

/* Dish Title */

.menu-one .dish-content h5 a {
  color: #955339;
}

.menu-one .dish-content h5 a:hover {
  color: #6C4B3C;
}

/* Description */

.menu-one .desc,
.menu-one .text {
  color: #6C4B3C;
}

/* Dish Block Border */

.menu-one .dish-block .inner-box {
  border-color: #D8B394;
}

/* Optional Divider */

.menu-one .dish-block {
  border-color: #E8D8C8;
}

/*=========================================
    TESTIMONIAL SECTION - BU.MI COLORS ONLY
==========================================*/

.testimonials-two {
  background: #F8F1E7;
}

/* Optional: Light overlay so text is readable */
.testimonials-two::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(248, 241, 231, 0.65);
  z-index: 1;
}

.testimonials-two .auto-container {
  position: relative;
  z-index: 2;
}

/* Subtitle */

.testimonials-two .subtitle span {
  color: #955339;
}

/* Heading */

.testimonials-two h2 {
  color: #5B3527;
}

/* Separator */

.testimonials-two .pattern-image img {
  filter: brightness(0) saturate(100%) invert(31%) sepia(20%) saturate(1040%) hue-rotate(338deg) brightness(95%) contrast(92%);
}

/* Testimonial Card */

.testimonials-two .testi-block .inner-box {
  background: #FFFDF8;
}

/* Review Text */

.testimonials-two .text {
  color: #6C4B3C;
}

/* Author */

.testimonials-two .auth-title {
  color: #955339;
}

/* Location */

.testimonials-two .location {
  color: #8A6A58;
}

/* Rating Stars */

.testimonials-two .rating span {
  color: #D4A15A;
}

/* Quote Icon */

.testimonials-two .quote-icon img {
  opacity: 1;
}

/* Owl Navigation */

.testimonials-two .owl-nav .owl-prev,
.testimonials-two .owl-nav .owl-next {
  color: #955339;
}

.testimonials-two .owl-nav .owl-prev:hover,
.testimonials-two .owl-nav .owl-next:hover {
  color: #5B3527;
}

/* Owl Dots */

.testimonials-two .owl-dots .owl-dot span {
  background: #D8B394;
}

.testimonials-two .owl-dots .owl-dot.active span {
  background: #955339;
}

/*=========================================
    GALLERY SECTION - BU.MI COLORS ONLY
==========================================*/

.image-gallery {
  background: #F8F1E7;
}

/* Gallery Image Border */

.image-gallery .gallery-block .image {
  border: 2px solid #D8B394;
}

/* Image Hover Overlay */

.image-gallery .gallery-block .image::before {
  background: rgba(149, 83, 57, 0.35);
}

/* Hover Icon */

.image-gallery .gallery-block .image::after {
  color: #F8F1E7;
}

/* Owl Navigation */

.image-gallery .owl-nav .owl-prev,
.image-gallery .owl-nav .owl-next {
  color: #955339;
}

.image-gallery .owl-nav .owl-prev:hover,
.image-gallery .owl-nav .owl-next:hover {
  color: #5B3527;
}

/* Owl Dots */

.image-gallery .owl-dots .owl-dot span {
  background: #D8B394;
}

.image-gallery .owl-dots .owl-dot.active span {
  background: #955339;
}

/*=========================================
        FOOTER - BU.MI
=========================================*/

.main-footer {
  background: #111111;
}

.main-footer .image-layer {
  opacity: 0.15;
}

/* Middle Card */

.main-footer .info-col .content {
  padding: 30px 0px;
}

/* Headings */

.main-footer h4 {
  color: #F6C89A !important;
}

/* Text */

.main-footer .info ul li,
.main-footer p,
.main-footer .copyright {
  color: #E8DCCF;
}

/* Links */

.main-footer a {
  color: #3d251b;
}

.main-footer a:hover {
  color: #9a593c;
}

/* Separator */

.main-footer .separator span {
  background: #F6C89A;
}

/* Footer Bottom */

.main-footer .footer-bottom {}

/* Quick Links */

.main-footer .links li a {
  color: #E8DCCF;
}

.main-footer .links li a:hover {
  color: #F6C89A;
}

/*=========================================
    WHY BU.MI - COLORS ONLY
=========================================*/

.why-us-two {
  background: #F8F1E7;
}

/* Subtitle */

.why-us-two .subtitle span {
  color: #955339;
}

/* Main Heading */

.why-us-two h2 {
  color: #5B3527;
}

/* Separator */

.why-us-two .pattern-image img {
  filter: brightness(0) saturate(100%) invert(31%) sepia(21%) saturate(1046%) hue-rotate(338deg) brightness(95%) contrast(91%);
}

/* Overlay */

.why-us-two .over-box {}

/* Card Title */

.why-us-two .over-box h4 {}

/* Description */

.why-us-two .over-box .text {}

/* Optional Border */

.why-us-two .inner-box {
  border: 1px solid #E8D8C8;
}

/* Hover */

.why-us-two .inner-box:hover .over-box {}

.why-us-two .inner-box:hover h4,
.why-us-two .inner-box:hover .text {
  color: #F8F1E7;
}

/*=========================================
        MENU SECTION - BU.MI COLORS
=========================================*/

.menu-section {
  background: #F8F1E7;
}

/* Heading */

.menu-section .section-heading span {
  color: #955339;
}

.menu-section .section-heading h2 {
  color: #5B3527;
}

/*=========================
    MENU BUTTONS
==========================*/

.menu-tabs .menu-btn {
  background: transparent;
  border: 2px solid #955339;
  color: #955339;
  transition: .35s ease;
}

.menu-tabs .menu-btn:hover,
.menu-tabs .menu-btn.active {
  background: #955339;
  color: #F8F1E7;
}

/*=========================
    MENU IMAGES
==========================*/

.menu-slider .swiper-slide img {
  border: 2px solid #D8B394;
}

/*=========================
    SWIPER ARROWS
==========================*/

.menu-section .swiper-button-prev,
.menu-section .swiper-button-next {
  background: #955339;
  color: #F8F1E7;
  border-radius: 50%;
  transition: .3s;
}

.menu-section .swiper-button-prev:hover,
.menu-section .swiper-button-next:hover {
  background: #5B3527;
}

/* Swiper default arrow color */

.menu-section .swiper-button-prev::after,
.menu-section .swiper-button-next::after {
  color: #F8F1E7;
  font-size: 18px;
}

/*=========================
    PAGINATION
==========================*/

.menu-section .swiper-pagination-bullet {
  background: #D8B394;
  opacity: 1;
}

.menu-section .swiper-pagination-bullet-active {
  background: #955339;
}

/*=========================================
        GALLERY PAGE - BU.MI COLORS
=========================================*/

.chef-section {
  background: #F8F1E7;
  padding: 60px 0;
}

/* Gallery Theme Groups */

.gallery-theme-group {
  margin-bottom: 80px;
  animation: fadeInUp 0.8s ease-out;
}

.gallery-theme-group:last-child {
  margin-bottom: 0;
}

/* Theme Header */

.theme-header {
  text-align: center;
  margin-bottom: 50px;
  position: relative;
}

.theme-title {
  font-size: 32px;
  font-weight: 600;
  color: #5B3527;
  margin-bottom: 15px;
  letter-spacing: 0.5px;
}

.theme-line {
  width: 60px;
  height: 3px;
  background: linear-gradient(90deg, transparent, #D8B394, transparent);
  margin: 0 auto;
  animation: expandWidth 0.8s ease-out;
}

/* Gallery Theme Row - Added spacing */

.gallery-theme-row {
  row-gap: 30px;
}

/* Gallery Images - Enhanced Styling */

.chef-section .gallery-img {
  border: 2px solid #D8B394;
  overflow: hidden;
  position: relative;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
  box-shadow: 0 4px 15px rgba(91, 53, 39, 0.08);
}

/* Image */

.chef-section .gallery-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Gallery Overlay */

.gallery-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(149, 83, 57, 0.85);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  backdrop-filter: blur(2px);
}

.gallery-category {
  color: #F8F1E7;
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  transform: translateY(10px);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Hover Effects */

.chef-section .gallery-img:hover {
  border-color: #955339;
  box-shadow: 0 12px 35px rgba(91, 53, 39, 0.15);
  transform: translateY(-5px);
}

.chef-section .gallery-img:hover img {
  transform: scale(1.08);
}

.chef-section .gallery-img:hover .gallery-overlay {
  opacity: 1;
}

.chef-section .gallery-img:hover .gallery-category {
  transform: translateY(0);
}

/* Overlay (only if your template has one) */

.chef-section .gallery-img::before {
  background: rgba(149, 83, 57, .25);
}

/* Animations */

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes expandWidth {
  from {
    width: 0;
  }

  to {
    width: 60px;
  }
}

/* Responsive adjustments for gallery spacing */

@media (max-width: 768px) {
  .gallery-theme-group {
    margin-bottom: 60px;
  }

  .theme-title {
    font-size: 24px;
  }

  .gallery-theme-row {
    row-gap: 20px;
  }

  .chef-section {
    padding: 40px 0;
  }
}

/*=========================================
        CONTACT PAGE - BU.MI COLORS
=========================================*/

.contact-page {
  background: #F8F1E7;
}

/* Heading */

.contact-page h2,
.contact-page h4 {
  color: #5B3527;
}

/* Text */

.contact-page .text,
.contact-page .desc {
  color: #6C4B3C;
}

/* Links */

.contact-page a {
  color: #955339;
  transition: .3s ease;
}

.contact-page a:hover {
  color: #5B3527;
}

/* Contact Information Boxes */

.contact-page .contactinfo-block .inner-box {
  background: transparent;
  border: 1px solid #D8B394;
}

/* Middle Separator */

.contact-page .cp-seprator {
  border-left: 1px solid #D8B394;
  border-right: 1px solid #D8B394;
}

/* Social Icons */

.contact-page .social-links li a {
  color: #955339;
}

.contact-page .social-links li a:hover {
  border-color: #955339;
}

/* Separator Line */

.contact-page .separator::before,
.contact-page .separator::after {
  background: #955339;
}

/* Online Ordering Images */

.contact-page .swiggy-zomato-area img {
  border: 2px solid #D8B394;
}

.contact-page .swiggy-zomato-area img:hover {
  border-color: #955339;
}

/* Restaurant Image */

.contact-page .swiggy-zomato-area-img img {
  border: 2px solid #D8B394;
}

/* Optional */

.contact-page .title-box h2 {
  color: #5B3527;
}

/*=========================================
        HEADER - BU.MI COLORS
=========================================*/

/* Top Header */

.main-header .header-top {
  background: #955339;
}

.main-header .header-top,
.main-header .header-top a,
.main-header .header-top li {
  color: #F8F1E7;
}

.main-header .header-top .icon {
  color: #F6C89A;
}

/* Main Header */

.main-header .header-upper {
  background: #F8F1E7;
  border-bottom: 1px solid #D8B394;
}

/* Navigation */

.main-header .navigation>li>a {
  color: #5B3527;
}

.main-header .navigation>li.current>a,
.main-header .navigation>li:hover>a {
  color: #955339;
}

/* Underline */

.main-header .navigation>li>a::after {
  background: #955339;
}

/* Logo */

.main-header .logo img {
  filter: none;
}

/* Hamburger */

.main-header .hamburger span {
  background: #955339;
}

/* Button */

.main-header .btn-style-one {
  background: #955339 !important;
}

.main-header .btn-style-one .text-one,
.main-header .btn-style-one .text-two {
  color: #F8F1E7;
}

.main-header .btn-style-one:hover {
  background: #5B3527;
}

/* Sticky Header */

.fixed-header .header-upper {
  background: #F8F1E7;
  box-shadow: 0 5px 20px rgba(0, 0, 0, .08);
}

/* Dropdown */

.main-header .navigation>li>ul {
  background: #FFF9F2;
  border-top: 2px solid #955339;
}

.main-header .navigation>li>ul>li>a {
  color: #5B3527;
}

.main-header .navigation>li>ul>li:hover>a {
  color: #955339;
  background: #F8F1E7;
}

/*=========================================
        HIDDEN SIDEBAR - BU.MI COLORS
=========================================*/

.hidden-bar {
  background: #F8F1E7;
}

.hidden-bar .inner-box {
  background: #F8F1E7;
}

/* Close Icon */

.hidden-bar .cross-icon {
  color: #955339;
}

.hidden-bar .cross-icon:hover {
  color: #5B3527;
}

/* Navigation */

.hidden-bar .navigation li a {
  color: #5B3527;
  border-bottom: 1px solid #E8D8C8;
}

.hidden-bar .navigation li.current a,
.hidden-bar .navigation li a:hover {
  color: #955339;
}

/* Separator */

.hidden-bar .separator span {
  background: #955339;
}

/* Booking Title */

.hidden-bar .bk-title {
  color: #955339;
}

/* Phone Number */

.hidden-bar .bk-no a {
  color: #5B3527;
}

.hidden-bar .bk-no a:hover {
  color: #955339;
}

/* Hamburger Menu Lines (if visible) */

.hidden-bar .menu-box .navigation li a:before {
  background: #955339;
}


.about-section {
  position: relative;
  padding-top: var(--padding-top-100);
  padding-bottom: var(--padding-bottom-50);
}


/* =========================================================
   BU.MI PREMIUM MISSION / VISION
========================================================= */

.mv-premium {
  max-width: 1120px;
  margin: 75px auto 90px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  position: relative;
}


/* CENTER DIVIDER */

.mv-premium:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background: rgba(84, 55, 42, 0.18);
}


/* =========================================================
   PANEL
========================================================= */

.mv-panel {
  padding: 0 55px;
}

.mv-panel:first-child {
  padding-left: 0;
  padding-right: 65px;
}

.mv-panel:last-child {
  padding-left: 65px;
  padding-right: 0;
}


/* =========================================================
   NUMBER + HEADING
========================================================= */

.mv-panel-top {
  display: flex;
  align-items: flex-start;
  gap: 22px;
  margin-bottom: 30px;
}

.mv-number {
  font-size: 12px;
  letter-spacing: 2px;
  color: #9a593c;
  padding-top: 7px;
  min-width: 25px;
}

.mv-heading span {
  display: block;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #9a593c;
  margin-bottom: 4px;
}

.mv-heading h3 {
  margin: 0;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 500;
  color: #3d251b;
  letter-spacing: -0.5px;
}


/* =========================================================
   SMALL DECORATIVE LINE
========================================================= */

.mv-heading h3:after {
  content: "";
  display: block;
  width: 38px;
  height: 1px;
  background: #9a593c;
  margin-top: 15px;
}


/* =========================================================
   TEXT
========================================================= */

.mv-panel-text {
  max-width: 470px;
}

.mv-panel-text p {
  margin: 0 0 24px;
  font-size: 15px;
  line-height: 1.85;
  color: #563e33;
  letter-spacing: 0.1px;
}

.mv-panel-text p:last-child {
  margin-bottom: 32px;
}


/* =========================================================
   IMAGE
========================================================= */

.mv-panel-image {
  width: 100%;
  height: 300px;
  overflow: hidden;
  margin-top: 10px;
}

.mv-panel-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.7s ease;
}

.mv-panel-image:hover img {
  transform: scale(1.035);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

  .mv-premium {
    margin: 60px auto 70px;
  }

  .mv-panel {
    padding: 0 35px;
  }

  .mv-panel:first-child {
    padding-right: 40px;
  }

  .mv-panel:last-child {
    padding-left: 40px;
  }

  .mv-heading h3 {
    font-size: 30px;
  }

  .mv-panel-text p {
    font-size: 14px;
    line-height: 1.8;
  }

  .mv-panel-image {
    height: 260px;
  }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .mv-premium {
    display: block;
    margin: 50px auto 60px;
  }

  .mv-premium:before {
    display: none;
  }

  .mv-panel,
  .mv-panel:first-child,
  .mv-panel:last-child {
    padding: 0;
  }

  .mv-panel:first-child {
    padding-bottom: 55px;
    margin-bottom: 55px;
    border-bottom: 1px solid rgba(84, 55, 42, 0.18);
  }

  .mv-panel-top {
    margin-bottom: 25px;
  }

  .mv-heading h3 {
    font-size: 28px;
  }

  .mv-panel-text p {
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 20px;
  }

  .mv-panel-image {
    height: 270px;
    margin-top: 5px;
  }

}



.team-block .inner-box {
  position: relative;
}

/* Create border glow trace */
.team-block .inner-box::before {
  content: '';
  position: absolute;
  inset: 0;
  border: 1.5px solid #c19d60;
  /* Brand theme color */
  border-radius: inherit;
  opacity: 0;
  animation: borderTrace 3s infinite ease-in-out;
  pointer-events: none;
}

.team-block:nth-child(1) .inner-box::before {
  animation-delay: 0s;
}

.team-block:nth-child(2) .inner-box::before {
  animation-delay: 1s;
}

.team-block:nth-child(3) .inner-box::before {
  animation-delay: 2s;
}

@keyframes borderTrace {

  0%,
  100% {
    opacity: 0;
    transform: scale(0.98);
  }

  15%,
  33% {
    opacity: 1;
    transform: scale(1);
  }

  48% {
    opacity: 0;
    transform: scale(0.98);
  }
}


/* =========================================
   BU.MI — SOFT LUXURY CTA
========================================= */

a.event-cta.btn-style-one {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 220px !important;
  height: 58px !important;
  padding: 0 !important;


  border-radius: 3px !important;



  transform: translateY(0) !important;
  transition: all .35s ease !important;
}


/* subtle inner frame */

a.event-cta.btn-style-one::before {
  content: "" !important;
  position: absolute !important;

  inset: 3px !important;

  border-radius: 2px !important;

  pointer-events: none !important;
}


/* TEXT */

a.event-cta.btn-style-one .btn-wrap {
  position: relative !important;
  z-index: 2 !important;
}

a.event-cta.btn-style-one .text-one,
a.event-cta.btn-style-one .text-two {
  color: #fff8ef !important;

  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
}


/* HOVER */

a.event-cta.btn-style-one:hover {

  transform: translateY(-3px) !important;

  box-shadow:
    0 13px 28px rgba(58, 35, 24, 0.21),
    inset 0 1px 0 rgba(255, 255, 255, 0.20),
    inset 0 -1px 0 rgba(50, 25, 15, 0.10) !important;
}


/* ACTIVE */

a.event-cta.btn-style-one:active {
  transform: translateY(-1px) !important;

  box-shadow:
    0 5px 12px rgba(58, 35, 24, 0.16),
    inset 0 2px 3px rgba(40, 20, 10, 0.12) !important;
}


/* MOBILE */

@media (max-width: 767px) {
  a.event-cta.btn-style-one {
    width: 205px !important;
    height: 55px !important;
  }
}


/* Equal Height Testimonials */
.testimonial-slider .owl-stage {
  display: flex;
}

.testimonial-slider .owl-item {
  display: flex;
  height: auto;
}

.testimonial-slider .testi-block {
  display: flex;
  width: 100%;
}

.testimonial-slider .inner-box {
  width: 100%;
  height: 100%;
  min-height: 520px;
  display: flex;
  flex-direction: column;
}

/* Keep testimonial content balanced */
.testimonial-slider .text {
  flex: 1;
}

/* Keep author section aligned at bottom */
.testimonial-slider .auth-info {
  margin-top: auto;
}

/* Mobile */
@media (max-width: 767px) {
  .testimonial-slider .inner-box {
    min-height: 500px;
  }
}


.main-footer .info-col .inner {
  border: 1px solid #efd7c0;
  padding: 45px 40px;
}

.main-footer .info-col .inner {
  border: 1px solid rgba(239, 215, 192, 0.75);
  padding: 45px 40px;
  box-sizing: border-box;
}

@media (max-width: 767px) {
  .main-footer .info-col .inner {
    padding: 35px 25px;
  }
}





/* ==========================================
   BU.MI CONTACT INFORMATION
========================================== */

.contact-page {
  width: 100%;
  overflow: hidden;
}

.location-center {
  width: 100%;
}

.cinfo-box {
  position: relative;
  width: 100%;
}

/* Main row */
.cinfo-box .row {
  display: flex;
  align-items: stretch;
  margin-left: -10px;
  margin-right: -10px;
}

/* Columns */
.contactinfo-block {
  padding: 10px;
  display: flex;
}

/* Individual cards */
.contactinfo-block .inner-box {
  position: relative;
  width: 100%;
  min-height: 250px;

  padding: 38px 28px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  text-align: center;

  background: rgba(255, 255, 255, 0.96);

  border: 1px solid rgba(0, 0, 0, 0.08);

  transition: all 0.35s ease;
}

/* Subtle hover */
.contactinfo-block .inner-box:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
}

/* Decorative top line */
.contactinfo-block .inner-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;

  width: 45px;
  height: 2px;

  background: #c6a15b;

  transform: translateX(-50%);
}

/* ==========================================
   HEADINGS
========================================== */

.contactinfo-block h4 {
  position: relative;

  margin: 0 0 22px;

  font-size: 18px;
  line-height: 1.3;

  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
}

/* Small decorative dot */
.contactinfo-block h4::after {
  content: "";
  display: block;

  width: 5px;
  height: 5px;

  margin: 10px auto 0;

  border-radius: 50%;
  background: #c6a15b;
}

/* ==========================================
   TEXT
========================================== */

.contactinfo-block .text {
  margin-bottom: 10px;

  font-size: 14px;
  line-height: 1.8;

  color: #555;
}

.contactinfo-block .text:last-child {
  margin-bottom: 0;
}

/* Contact links */
.contactinfo-block .text a {
  color: #555;
  text-decoration: none;

  transition: color 0.3s ease;
}

.contactinfo-block .text a:hover {
  color: #c6a15b;
}

/* ==========================================
   SOCIAL MEDIA
========================================== */




/* ==========================================
   DESKTOP
========================================== */

@media (min-width: 992px) {

  .contactinfo-block {
    width: 33.333%;
  }

}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 991px) {

  .cinfo-box .row {
    margin-left: -7px;
    margin-right: -7px;
  }

  .contactinfo-block {
    padding: 7px;
  }

  .contactinfo-block .inner-box {
    min-height: 245px;
    padding: 30px 18px;
  }

  .contactinfo-block h4 {
    font-size: 16px;
    margin-bottom: 18px;
  }

  .contactinfo-block .text {
    font-size: 13px;
    line-height: 1.7;
  }

  .contact-social .social-links {
    gap: 9px;
  }

  .contact-social .social-links li a {
    width: 40px;
    height: 40px;
  }
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

  .cinfo-box .row {
    display: block;
    margin: 0;
  }

  .contactinfo-block {
    width: 100%;
    padding: 0;
    display: block;
  }

  .contactinfo-block .inner-box {
    min-height: 0;

    padding: 32px 20px;

    border: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);

    box-shadow: none;
    transform: none;
  }

  .contactinfo-block:last-child .inner-box {
    border-bottom: 0;
  }

  .contactinfo-block .inner-box:hover {
    transform: none;
    box-shadow: none;
  }

  /* Top decorative line */
  .contactinfo-block .inner-box::before {
    width: 38px;
  }

  .contactinfo-block h4 {
    font-size: 17px;
    margin-bottom: 18px;
  }

  .contactinfo-block .text {
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;

    font-size: 13px;
    line-height: 1.75;
  }

  .contact-social {
    margin-top: 2px;
  }

}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 480px) {

  .contactinfo-block .inner-box {
    padding: 28px 15px;
  }

  .contactinfo-block h4 {
    font-size: 15px;
    letter-spacing: 0.8px;
  }

  .contactinfo-block .text {
    font-size: 12.5px;
    line-height: 1.7;
  }

  .contact-social .social-links {
    gap: 8px;
  }

  .contact-social .social-links li a {
    width: 38px;
    height: 38px;
    font-size: 13px;
  }

}

@media (max-width: 767px) {
  .contactinfo-block .text a {
    font-size: 10px;
  }
}

@media (max-width: 767px) {
  .contactinfo-block .text a {
    font-size: 10px;
    line-height: 1.6;
  }
}

/* ========================================= VIDEO BACKGROUND ========================================= */
.banner-section {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 650px;
  overflow: hidden;
}

.banner-container {
  position: relative;
  width: 100%;
  height: 100%;
}

/* Video */
.banner-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.banner-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

/* Overlay */
.banner-video-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.42);
}

/* Slider */
.banner-slider {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
}

.banner-slider .swiper-wrapper,
.banner-slider .swiper-slide {
  height: 100%;
}

/* Content */
.banner-slider .auto-container {
  height: 100%;
}

.banner-slider .content-box {
  height: 100%;
  display: flex;
  align-items: center;
}

.banner-slider .inner {
  max-width: 720px;
}

/* Text */
.banner-slider .subtitle span,
.banner-slider h1,
.banner-slider .text {
  color: #fff;
}

/* ========================================= MOBILE ========================================= */
@media (max-width: 767px) {
  .banner-section {
    height: 85vh;
    min-height: 600px;
  }

  .banner-video video {
    object-position: center center;
  }

  .banner-video-overlay {
    background: rgba(0, 0, 0, 0.52);
  }

  .banner-slider .inner {
    max-width: 100%;
    padding: 0 15px;
  }
}


/* =========================================
   BU.MI - THREE IMAGE GALLERY
========================================= */

.about-gallery-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
  margin-top: 55px;
  width: 100%;
}

.about-gallery-item {
  overflow: hidden;
  position: relative;
}

.about-gallery-item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.about-gallery-item:hover img {
  transform: scale(1.05);
}


/* =========================================
   TABLET - 768px to 1024px
========================================= */

@media (min-width: 768px) and (max-width: 1024px) {

  .about-gallery-row {
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: 45px;
  }

  .about-gallery-item {
    height: 100%;
  }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

  .about-gallery-row {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 35px;
    padding: 0 15px;
  }

  .about-gallery-item {}

}

/* =========================================
   BU.MI IMAGE GALLERY
========================================= */

.about-gallery-heading {
  width: 100%;
  text-align: center;
  margin: 35px 0 25px;
  padding: 0;
}

.about-gallery-heading p {
  margin: 0;
  font-size: 26px;
  line-height: 1.4;
  letter-spacing: 0.3px;
  color: #5B3527;
}


/* IMAGE ROW */

.about-gallery-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
  width: 100%;
  margin: 0;
  padding: 0;
}

.about-gallery-item {
  width: 100%;
  height: 285px;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.about-gallery-item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transition: transform 0.5s ease;
}

.about-gallery-item:hover img {
  transform: scale(1.03);
}


/* =========================================
   TABLET 768px - 1024px
========================================= */

@media (min-width: 768px) and (max-width: 1024px) {

  .about-gallery-heading {
    margin: 30px 0 22px;
  }

  .about-gallery-heading p {
    font-size: 22px;
  }

  .about-gallery-row {
    gap: 18px;
  }

  .about-gallery-item {
    height: 230px;
  }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

  .about-gallery-heading {
    margin: 30px 0 20px;
    padding: 0 15px;
  }

  .about-gallery-heading p {
    font-size: 20px;
    line-height: 1.45;
  }

  .about-gallery-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 0 15px;
  }

  .about-gallery-item {
    height: 250px;
  }
}

.about-gallery-heading p {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 27px;
  font-weight: 400;
  letter-spacing: 0.5px;
  color: #7d6758;
}

@media (max-width: 767px) {
  .about-gallery-heading p {
    font-size: 21px;
    line-height: 1.5;
  }
}


/* =========================================
   VIDEO + WRITTEN REVIEW
========================================= */

.testimonials-video {
  padding: 90px 0 100px;
  background: #f5f0e8;
}

.video-review-wrapper {
  display: grid;
  grid-template-columns: 52% 48%;
  align-items: stretch;
  max-width: 1200px;
  margin: 0 auto;
}


/* =========================================
   LEFT - VIDEO
========================================= */

.review-video-side {
  position: relative;
}

.review-video-slider {
  height: 100%;
}

.review-video-slide {
  width: 100%;
  height: 500px;
  overflow: hidden;
  background: #111;
}

.review-video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}


/* =========================================
   VIDEO PREVIOUS / NEXT
========================================= */

.review-video-slider .owl-nav {
  position: absolute;
  left: 25px;
  right: 25px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  justify-content: space-between;
  margin: 0;
  pointer-events: none;
}

.review-video-slider .owl-nav button {
  pointer-events: auto;
  width: 48px;
  height: 48px;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: #222 !important;
}

.review-video-slider .owl-nav button span {
  font-size: 28px;
  line-height: 42px;
}

.review-video-slider .owl-nav button:hover {
  background: #222 !important;
  color: #fff !important;
}


/* =========================================
   VIDEO DOTS
========================================= */

.review-video-slider .owl-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 18px;
  margin: 0;
}

.review-video-slider .owl-dot span {
  width: 7px !important;
  height: 7px !important;
}


/* =========================================
   RIGHT - WRITTEN REVIEW
========================================= */

.written-review-side {
  display: flex;
  align-items: center;
  background: #fbf7f0;
  padding: 55px 60px;
  color: #000;
}

.written-review-slider {
  width: 100%;
}

.written-review {
  text-align: left;
}


/* Stars */

.review-stars {
  display: flex;
  gap: 5px;
  margin-bottom: 25px;
}

.review-stars span {
  font-size: 13px;
}


/* Review text */

.review-text {
  margin-bottom: 35px;
  font-size: 18px;
  line-height: 1.85;
}


/* Author */

.review-author {
  display: flex;
  align-items: center;
  gap: 14px;
}

.review-author-image {
  width: 55px;
  height: 55px;
  flex: 0 0 55px;
  overflow: hidden;
  border-radius: 50%;
}

.review-author-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.review-author h4 {
  margin: 0 0 3px;
  font-size: 16px;
  color: #000;
}

.review-author span {
  font-size: 13px;
  opacity: 0.6;
}


/* No arrows on review side */

.written-review-slider .owl-nav {
  display: none;
}

.written-review-slider .owl-dots {
  display: none;
}


/* =========================================
   TABLET
========================================= */

@media (min-width: 768px) and (max-width: 1024px) {

  .testimonials-video {
    padding: 70px 0 80px;
  }

  .video-review-wrapper {
    grid-template-columns: 50% 50%;
  }

  .review-video-slide {
    height: 420px;
  }

  .written-review-side {
    padding: 40px;
  }

  .review-text {
    font-size: 16px;
    line-height: 1.7;
  }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

  .testimonials-video {
    padding: 60px 0 70px;
  }

  .video-review-wrapper {
    display: flex;
    flex-direction: column;
  }

  .review-video-slide {
    height: 330px;
  }

  .review-video-slider .owl-nav {
    left: 15px;
    right: 15px;
  }

  .review-video-slider .owl-nav button {
    width: 42px;
    height: 42px;
  }

  .written-review-side {
    padding: 35px 25px 40px;
  }

  .review-text {
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 25px;
  }

}

/* =========================================
   VIDEO PLAY BUTTON
========================================= */

.video-play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  width: 64px;
  height: 64px;

  border: 1px solid rgba(255, 255, 255, 0.85);
  border-radius: 50%;

  background: rgba(0, 0, 0, 0.45);
  color: #fff;

  display: none;
  /* HIDDEN INITIALLY */

  align-items: center;
  justify-content: center;

  cursor: pointer;
  z-index: 5;

  transition: all 0.3s ease;
}

.video-play-button span {
  font-size: 19px;
  margin-left: 3px;
}

.video-play-button:hover {
  background: #fff;
  color: #111;
}


/* Show button only when video is paused */

.review-video-slide.video-paused .video-play-button {
  display: flex;
}

/* =========================================================
   BU.MI - INDEPENDENT VIDEO + REVIEW SECTION
========================================================= */

.testimonials-video {
  position: relative;
  width: 100%;
  padding: 90px 0 110px;
  background: #f5f0e8;
  overflow: hidden;
}


/* =========================================================
   SECTION TITLE
========================================================= */

.testimonials-video .title-box {
  margin-bottom: 50px;
}

.testimonials-video .title-box h2 {
  margin-top: 10px;
}


/* =========================================================
   MAIN TWO COLUMN LAYOUT
========================================================= */

.independent-review-wrapper {
  width: 100%;
  max-width: 1200px;

  margin: 0 auto;

  display: grid;

  grid-template-columns: 1fr 1fr;

  align-items: stretch;

  gap: 30px;
}


/* =========================================================
   LEFT VIDEO AREA
========================================================= */

.independent-video-section {
  position: relative;
  width: 100%;
  min-width: 0;
}

.independent-video-slider {
  width: 100%;
}

.independent-video-slide {
  width: 100%;
}

.independent-video-box {
  position: relative;

  width: 100%;
  height: 800px;

  overflow: hidden;

  background: #111;
}

.independent-video {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  cursor: pointer;
}


/* =========================================================
   VIDEO PLAY BUTTON
========================================================= */

.independent-video-play {
  position: absolute;

  top: 50%;
  left: 50%;

  transform: translate(-50%, -50%);

  width: 68px;
  height: 68px;

  padding: 0;

  border: 1px solid rgba(255, 255, 255, 0.85);

  border-radius: 50%;

  background: rgba(0, 0, 0, 0.45);

  color: #fff;

  display: flex;

  align-items: center;
  justify-content: center;

  cursor: pointer;

  z-index: 10;

  transition: all .3s ease;
}

.independent-video-play span {
  font-size: 18px;

  margin-left: 3px;
}

.independent-video-play:hover {
  background: #fff;

  color: #111;
}


/* =========================================================
   HIDE PLAY BUTTON WHILE PLAYING
========================================================= */

.independent-video-box.is-playing .independent-video-play {
  display: none;
}


/* =========================================================
   VIDEO NAVIGATION
========================================================= */

.independent-video-slider .owl-nav {
  position: absolute;

  top: 50%;
  left: 18px;
  right: 18px;

  transform: translateY(-50%);

  display: flex;

  justify-content: space-between;

  margin: 0;

  pointer-events: none;

  z-index: 20;
}

.independent-video-slider .owl-nav button {
  width: 48px;
  height: 48px;

  margin: 0 !important;
  padding: 0 !important;

  border: none !important;

  border-radius: 50% !important;

  background: rgba(255, 255, 255, 0.92) !important;

  color: #222 !important;

  display: flex !important;

  align-items: center;
  justify-content: center;

  pointer-events: auto;

  transition: all .3s ease;
}

.independent-video-slider .owl-nav button span {
  font-size: 28px;

  line-height: 1;
}

.independent-video-slider .owl-nav button:hover {
  background: #222 !important;

  color: #fff !important;
}


/* =========================================================
   VIDEO DOTS
========================================================= */

.independent-video-slider .owl-dots {
  position: absolute;

  left: 0;
  right: 0;

  bottom: 12px;

  margin: 0;
}

.independent-video-slider .owl-dot span {
  width: 7px !important;
  height: 7px !important;
}


/* =========================================================
   RIGHT REVIEW AREA
========================================================= */

.independent-written-section {
  position: relative;

  width: 100%;

  min-width: 0;

  background: #fbf7f0;

  min-height: 500px;

  display: flex;

  align-items: center;
}

.independent-written-slider {
  width: 100%;
}

.independent-written-slide {
  width: 100%;
}


/* =========================================================
   REVIEW CONTENT
========================================================= */

.independent-review-content {
  position: relative;

  padding: 55px 60px 70px;
}


/* =========================================================
   STARS
========================================================= */

.independent-stars {
  display: flex;

  align-items: center;

  gap: 5px;

  margin-bottom: 22px;
}

.independent-stars span {
  font-size: 13px;
}


/* =========================================================
   QUOTE ICON
========================================================= */

.independent-quote-icon {
  position: absolute;

  top: 35px;

  opacity: .12;
}

.independent-quote-icon img {
  width: 65px;

  height: auto;
}


/* =========================================================
   REVIEW TEXT
========================================================= */

.independent-review-text {
  margin: 0 0 35px;

  font-size: 18px;

  line-height: 1.85;

  max-width: 500px;
}


/* =========================================================
   AUTHOR
========================================================= */

.independent-review-author {
  display: flex;

  align-items: center;

  gap: 14px;
}

.independent-author-image {
  width: 55px;
  height: 55px;

  flex: 0 0 55px;

  overflow: hidden;

  border-radius: 50%;
}

.independent-author-image img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
}

.independent-author-details h4 {
  margin: 0 0 4px;

  font-size: 16px;
  color: #000;
}

.independent-author-details span {
  font-size: 13px;
  color: #000;
  opacity: .6;
}


/* =========================================================
   REVIEW NAVIGATION
========================================================= */

.independent-written-slider .owl-nav {
  position: absolute;

  left: 60px;

  bottom: 18px;

  display: flex;

  gap: 8px;

  margin: 0;
}

.independent-written-slider .owl-nav button {
  width: 42px;
  height: 42px;

  margin: 0 !important;
  padding: 0 !important;

  border: 1px solid rgba(0, 0, 0, .25) !important;

  border-radius: 50% !important;

  background: transparent !important;

  color: #222 !important;

  display: flex !important;

  align-items: center;
  justify-content: center;

  transition: all .3s ease;
}

.independent-written-slider .owl-nav button span {
  font-size: 23px;
}

.independent-written-slider .owl-nav button:hover {
  background: #222 !important;

  color: #fff !important;
}


/* Hide review dots */

.independent-written-slider .owl-dots {
  display: none;
}


/* =========================================================
   TABLET
   768px - 1024px
========================================================= */

@media (min-width: 768px) and (max-width: 1024px) {

  .testimonials-video {
    padding: 70px 20px 90px;
  }

  .independent-review-wrapper {
    grid-template-columns: 1fr 1fr;

    gap: 20px;
  }

  .independent-video-box {
    height: 700px;
  }

  .independent-written-section {
    min-height: 430px;
  }

  .independent-review-content {
    padding: 40px 35px 65px;
  }

  .independent-review-text {
    font-size: 16px;

    line-height: 1.7;
  }

  .independent-written-slider .owl-nav {
    left: 35px;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .testimonials-video {
    padding: 60px 15px 80px;
  }


  .testimonials-video .title-box {
    margin-bottom: 35px;
  }


  /* Stack them */

  .independent-review-wrapper {
    display: flex;

    flex-direction: column;

    gap: 25px;

    width: 100%;
  }


  /* VIDEO */

  .independent-video-box {
    height: 600px;
  }


  .independent-video-slider .owl-nav {
    left: 12px;
    right: 12px;
  }

  .independent-video-slider .owl-nav button {
    width: 42px;
    height: 42px;
  }


  /* REVIEW */

  .independent-written-section {
    min-height: 380px;
  }

  .independent-review-content {
    padding: 40px 25px 80px;
  }

  .independent-review-text {
    font-size: 16px;

    line-height: 1.7;

    margin-bottom: 25px;
  }


  .independent-quote-icon {
    top: 25px;

    right: 25px;
  }

  .independent-quote-icon img {
    width: 50px;
  }


  .independent-written-slider .owl-nav {
    left: 25px;

    bottom: 20px;
  }

}

.independent-video-play {
  display: flex;
}

.independent-video-box.is-playing .independent-video-play {
  display: none;
}


/* =========================================
   WRITTEN REVIEW SECTION
========================================= */

.independent-written-section {
  width: 100%;
  height: 100%;
  min-height: 800px;
  background: #f8f4ec;
  position: relative;
  overflow: hidden;
}

.independent-written-slide {
  width: 100%;
  height: 100%;
  min-height: 800px;
  position: relative;
  padding: 0;
}

/* Main content wrapper */
.independent-review-content {
  width: 100%;
  height: 100%;
  min-height: 800px;

  display: flex;
  flex-direction: column;

  /* IMPORTANT - keeps content near the top */
  justify-content: flex-start;

  padding: 235px 90px 60px 38px;

  position: relative;
  box-sizing: border-box;
}

/* Stars */
.independent-stars {
  display: flex;
  gap: 8px;
  margin-bottom: 25px;
}

.independent-stars span {
  font-size: 14px;
  color: #3d251b;
}

/* Review text */
.independent-review-content p {
  margin: 0;
  max-width: 570px;

  font-family: 'Open Sans', sans-serif;
  font-size: 18px;
  line-height: 1.8;
  font-weight: 400;

  color: #000;
}


/* =========================================
   REVIEW AUTHOR
========================================= */

.independent-review-author {
  display: flex;
  align-items: center;
  gap: 20px;

  margin-top: 38px;
}

.independent-review-author img {
  width: 58px;
  height: 58px;

  border-radius: 50%;
  object-fit: cover;
}

.independent-review-author-info {
  display: flex;
  flex-direction: column;
}

.independent-review-author-info strong {
  font-family: 'Open Sans', sans-serif;
  font-size: 17px;
  line-height: 1.3;

  color: #ffffff;
  font-weight: 700;
}

.independent-review-author-info span {
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;

  color: rgba(255, 255, 255, 0.7);

  margin-top: 4px;
}

/* =========================================
   WRITTEN REVIEW ARROWS
========================================= */

.independent-written-controls {
  position: absolute;

  left: 38px;
  bottom: 55px;

  display: flex;
  gap: 10px;
}

.independent-written-controls button {
  width: 43px;
  height: 43px;

  border-radius: 50%;
  border: 1px solid #aaa;

  background: transparent;

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 22px;
  line-height: 1;

  color: #555;

  cursor: pointer;

  transition: all 0.3s ease;
}

.independent-written-controls button:hover {
  background: #222;
  border-color: #222;
  color: #fff;
}


/* =========================================
   DESKTOP 1440+
========================================= */

@media (min-width: 1400px) {

  .independent-review-content {
    padding-left: 38px;
    padding-right: 90px;
    padding-top: 235px;
  }

  .independent-review-content p {
    max-width: 590px;
    font-size: 22px;
    line-height: 1.8;
  }
}


/* =========================================
   1200 - 1399
========================================= */

@media (min-width: 1200px) and (max-width: 1399px) {

  .independent-review-content {
    padding: 210px 65px 50px 35px;
  }

  .independent-review-content p {
    max-width: 520px;
    font-size: 17px;
    line-height: 1.75;
  }

  .independent-review-content::after {
    top: 155px;
    right: 35px;
    font-size: 110px;
  }
}


/* =========================================
   TABLET 992 - 1199
========================================= */

@media (min-width: 992px) and (max-width: 1199px) {

  .independent-written-section,
  .independent-written-slide,
  .independent-review-content {
    min-height: 650px;
  }

  .independent-review-content {
    padding: 160px 45px 45px 30px;
  }

  .independent-review-content p {
    max-width: 470px;
    font-size: 16px;
    line-height: 1.7;
  }

  .independent-review-content::after {
    top: 110px;
    right: 25px;
    font-size: 90px;
  }

  .independent-review-author {
    margin-top: 28px;
  }

  .independent-written-controls {
    left: 30px;
    bottom: 35px;
  }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 991px) {

  .independent-written-section,
  .independent-written-slide,
  .independent-review-content {
    min-height: auto;
    height: auto;
  }

  .independent-review-content {
    padding: 70px 25px 100px;
  }

  .independent-review-content::after {
    top: 25px;
    right: 20px;
    font-size: 75px;
  }

  .independent-stars {
    margin-bottom: 20px;
  }

  .independent-review-content p {
    max-width: 100%;
    font-size: 16px;
    line-height: 1.7;
  }

  .independent-review-author {
    margin-top: 28px;
  }

  .independent-written-controls {
    left: 25px;
    bottom: 30px;
  }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 575px) {

  .independent-review-content {
    padding: 55px 22px 95px;
  }

  .independent-review-content::after {
    top: 18px;
    right: 15px;
    font-size: 65px;
  }

  .independent-review-content p {
    font-size: 15px;
    line-height: 1.65;
  }

  .independent-review-author img {
    width: 52px;
    height: 52px;
  }

  .independent-review-author-info strong {
    font-size: 15px;
  }

  .independent-written-controls {
    left: 22px;
    bottom: 25px;
  }
}


/* =========================================
   PREMIUM GALLERY SECTION
========================================= */

.premium-gallery-section {
    position: relative;
    padding: 110px 0;
    background: #f8f6f1;
    overflow: hidden;
}


/* =========================================
   HEADING
========================================= */

.premium-gallery-heading {
    max-width: 720px;
    margin: 0 auto 60px;
    text-align: center;
}

.gallery-eyebrow {
    display: inline-block;
    margin-bottom: 14px;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;

    color: #a47745;
}

.premium-gallery-heading h2 {
    margin: 0 0 18px;

    font-family: "Playfair Display", Georgia, serif;
    font-size: 48px;
    line-height: 1.15;
    font-weight: 600;

    color: #5B3527;
}

.premium-gallery-heading p {
    max-width: 600px;
    margin: 0 auto;

    font-size: 16px;
    line-height: 1.8;

    color: #6c6a65;
}


/* =========================================
   GALLERY GRID
========================================= */

.premium-gallery-grid {
    display: grid;

    grid-template-columns:
        repeat(12, minmax(0, 1fr));

    grid-auto-rows: 100px;

    gap: 18px;

    width: 100%;
}


/* =========================================
   GALLERY ITEM
========================================= */

.premium-gallery-item {
    position: relative;

    min-width: 0;
    min-height: 0;

    overflow: hidden;

    border-radius: 4px;

    background: #ddd;

    isolation: isolate;
}


/* =========================================
   IMAGE / VIDEO
========================================= */

.premium-gallery-item img,
.premium-gallery-item video {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.8s cubic-bezier(.2,.7,.2,1),
        filter 0.5s ease;
}


/* =========================================
   GRID SIZES
========================================= */

/* Featured */
.gallery-large {
    grid-column: span 5;
    grid-row: span 5;
}

/* Normal */
.gallery-medium {
    grid-column: span 4;
    grid-row: span 4;
}

/* Small */
.gallery-small {
    grid-column: span 3;
    grid-row: span 3;
}

/* Tall */
.gallery-tall {
    grid-column: span 4;
    grid-row: span 6;
}

/* Wide */
.gallery-wide {
    grid-column: span 5;
    grid-row: span 3;
}


/* =========================================
   POSITIONING
   Creates editorial / masonry feel
========================================= */

.premium-gallery-item:nth-child(1) {
    grid-column: 1 / span 5;
    grid-row: 1 / span 5;
}

.premium-gallery-item:nth-child(2) {
    grid-column: 6 / span 3;
    grid-row: 1 / span 3;
}

.premium-gallery-item:nth-child(3) {
    grid-column: 9 / span 4;
    grid-row: 1 / span 6;
}

.premium-gallery-item:nth-child(4) {
    grid-column: 6 / span 3;
    grid-row: 4 / span 3;
}

.premium-gallery-item:nth-child(5) {
    grid-column: 1 / span 3;
    grid-row: 6 / span 3;
}

.premium-gallery-item:nth-child(6) {
    grid-column: 4 / span 5;
    grid-row: 7 / span 3;
}

.premium-gallery-item:nth-child(7) {
    grid-column: 9 / span 4;
    grid-row: 7 / span 4;
}

.premium-gallery-item:nth-child(8) {
    grid-column: 1 / span 3;
    grid-row: 9 / span 3;
}

.premium-gallery-item:nth-child(9) {
    grid-column: 4 / span 4;
    grid-row: 10 / span 6;
}

.premium-gallery-item:nth-child(10) {
    grid-column: 8 / span 5;
    grid-row: 11 / span 3;
}

.premium-gallery-item:nth-child(11) {
    grid-column: 1 / span 3;
    grid-row: 12 / span 4;
}

.premium-gallery-item:nth-child(12) {
    grid-column: 8 / span 5;
    grid-row: 14 / span 3;
}

.premium-gallery-item:nth-child(13) {
    grid-column: 1 / span 3;
    grid-row: 16 / span 3;
}

.premium-gallery-item:nth-child(14) {
    grid-column: 4 / span 4;
    grid-row: 16 / span 3;
}

.premium-gallery-item:nth-child(15) {
    grid-column: 8 / span 5;
    grid-row: 17 / span 4;
}


/* =========================================
   OVERLAY
========================================= */

.gallery-item-overlay {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 3;

    padding: 70px 24px 24px;

    background:
        linear-gradient(
            to top,
            rgba(0, 0, 0, 0.78),
            rgba(0, 0, 0, 0.25),
            transparent
        );

    transform: translateY(8px);

    opacity: 0.9;

    transition:
        opacity 0.4s ease,
        transform 0.4s ease;
}

.gallery-item-overlay span {
    display: block;

    margin-bottom: 0px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2px;
    text-transform: uppercase;

    color: #f2d39d;
}

.gallery-item-overlay h3 {
    margin: 0;

    font-family: "Playfair Display", Georgia, serif;

    font-size: 21px;
    line-height: 1.25;
    font-weight: 500;

    color: #fff;
}


/* =========================================
   HOVER
========================================= */

.premium-gallery-item:hover img,
.premium-gallery-item:hover video {
    transform: scale(1.07);
}

.premium-gallery-item:hover .gallery-item-overlay {
    opacity: 1;
    transform: translateY(0);
}


/* =========================================
   DARK HOVER EFFECT
========================================= */

.premium-gallery-item::after {
    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    background: rgba(0, 0, 0, 0);

    pointer-events: none;

    transition: background 0.4s ease;
}

.premium-gallery-item:hover::after {
    background: rgba(0, 0, 0, 0.08);
}


/* =========================================
   VIDEO CONTROL
========================================= */

.gallery-video-control {
    position: absolute;

    top: 18px;
    right: 18px;

    z-index: 5;

    width: 42px;
    height: 42px;

    padding: 0;

    border: 1px solid rgba(255,255,255,0.6);
    border-radius: 50%;

    background: rgba(0,0,0,0.35);

    backdrop-filter: blur(8px);

    color: #fff;

    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.gallery-video-control i {
    font-size: 12px;
}

.gallery-video-control:hover {
    background: rgba(0,0,0,0.7);
    transform: scale(1.08);
}


/* =========================================
   CONTAINER
========================================= */

.premium-gallery-section .auto-container {
    width: 100%;
}


/* =========================================
   LARGE DESKTOP
========================================= */

@media (min-width: 1400px) {

    .premium-gallery-section {
        padding: 130px 0;
    }

    .premium-gallery-heading {
        margin-bottom: 70px;
    }

    .premium-gallery-grid {
        gap: 22px;
        grid-auto-rows: 105px;
    }

}


/* =========================================
   1024px - 1199px
========================================= */

@media (min-width: 992px) and (max-width: 1199px) {

    .premium-gallery-section {
        padding: 90px 0;
    }

    .premium-gallery-grid {
        gap: 14px;
        grid-auto-rows: 85px;
    }

    .gallery-item-overlay {
        padding: 60px 18px 18px;
    }

    .gallery-item-overlay h3 {
        font-size: 18px;
    }

}


/* =========================================
   TABLET
   768px - 991px
========================================= */

@media (min-width: 768px) and (max-width: 991px) {

    .premium-gallery-section {
        padding: 80px 0;
    }

    .premium-gallery-heading {
        margin-bottom: 45px;
        padding: 0 20px;
    }

    .premium-gallery-heading h2 {
        font-size: 40px;
    }

    .premium-gallery-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
        grid-auto-rows: 90px;
        gap: 14px;
    }


    /* Reset desktop positions */

    .premium-gallery-item:nth-child(1) {
        grid-column: 1 / span 4;
        grid-row: 1 / span 4;
    }

    .premium-gallery-item:nth-child(2) {
        grid-column: 5 / span 2;
        grid-row: 1 / span 3;
    }

    .premium-gallery-item:nth-child(3) {
        grid-column: 5 / span 2;
        grid-row: 4 / span 5;
    }

    .premium-gallery-item:nth-child(4) {
        grid-column: 1 / span 3;
        grid-row: 5 / span 3;
    }

    .premium-gallery-item:nth-child(5) {
        grid-column: 4 / span 1;
        grid-row: 5 / span 3;
    }

    .premium-gallery-item:nth-child(6) {
        grid-column: 1 / span 3;
        grid-row: 8 / span 3;
    }

    .premium-gallery-item:nth-child(7) {
        grid-column: 4 / span 3;
        grid-row: 8 / span 4;
    }

    .premium-gallery-item:nth-child(8) {
        grid-column: 1 / span 3;
        grid-row: 11 / span 3;
    }

    .premium-gallery-item:nth-child(9) {
        grid-column: 4 / span 3;
        grid-row: 12 / span 5;
    }

    .premium-gallery-item:nth-child(10) {
        grid-column: 1 / span 3;
        grid-row: 14 / span 3;
    }

    .premium-gallery-item:nth-child(11) {
        grid-column: 1 / span 3;
        grid-row: 17 / span 4;
    }

    .premium-gallery-item:nth-child(12) {
        grid-column: 4 / span 3;
        grid-row: 17 / span 3;
    }

    .premium-gallery-item:nth-child(13) {
        grid-column: 4 / span 3;
        grid-row: 20 / span 3;
    }

    .premium-gallery-item:nth-child(14) {
        grid-column: 1 / span 3;
        grid-row: 21 / span 3;
    }

    .premium-gallery-item:nth-child(15) {
        grid-column: 4 / span 3;
        grid-row: 23 / span 4;
    }

}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 767px) {

    .premium-gallery-section {
        padding: 65px 15px;
    }

    .premium-gallery-heading {
        margin-bottom: 35px;
        padding: 0 5px;
    }

    .gallery-eyebrow {
        font-size: 10px;
        letter-spacing: 2px;
    }

    .premium-gallery-heading h2 {
        font-size: 34px;
        line-height: 1.2;
    }

    .premium-gallery-heading p {
        font-size: 14px;
        line-height: 1.7;
    }


    /* Simple 2-column mobile mosaic */

    .premium-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: 105px;
        gap: 10px;
    }


    /* ITEM 1 */
    .premium-gallery-item:nth-child(1) {
        grid-column: 1 / span 2;
        grid-row: 1 / span 4;
    }


    /* ITEM 2 */
    .premium-gallery-item:nth-child(2) {
        grid-column: 1 / span 1;
        grid-row: 5 / span 3;
    }


    /* ITEM 3 */
    .premium-gallery-item:nth-child(3) {
        grid-column: 2 / span 1;
        grid-row: 5 / span 5;
    }


    /* ITEM 4 */
    .premium-gallery-item:nth-child(4) {
        grid-column: 1 / span 1;
        grid-row: 8 / span 3;
    }


    /* ITEM 5 */
    .premium-gallery-item:nth-child(5) {
        grid-column: 1 / span 2;
        grid-row: 11 / span 3;
    }


    /* ITEM 6 */
    .premium-gallery-item:nth-child(6) {
        grid-column: 1 / span 2;
        grid-row: 14 / span 3;
    }


    /* ITEM 7 */
    .premium-gallery-item:nth-child(7) {
        grid-column: 1 / span 1;
        grid-row: 17 / span 4;
    }


    /* ITEM 8 */
    .premium-gallery-item:nth-child(8) {
        grid-column: 2 / span 1;
        grid-row: 17 / span 3;
    }


    /* ITEM 9 */
    .premium-gallery-item:nth-child(9) {
        grid-column: 2 / span 1;
        grid-row: 20 / span 5;
    }


    /* ITEM 10 */
    .premium-gallery-item:nth-child(10) {
        grid-column: 1 / span 1;
        grid-row: 21 / span 3;
    }


    /* ITEM 11 */
    .premium-gallery-item:nth-child(11) {
        grid-column: 1 / span 2;
        grid-row: 25 / span 4;
    }


    /* ITEM 12 */
    .premium-gallery-item:nth-child(12) {
        grid-column: 1 / span 1;
        grid-row: 29 / span 3;
    }


    /* ITEM 13 */
    .premium-gallery-item:nth-child(13) {
        grid-column: 2 / span 1;
        grid-row: 29 / span 3;
    }


    /* ITEM 14 */
    .premium-gallery-item:nth-child(14) {
        grid-column: 1 / span 2;
        grid-row: 32 / span 3;
    }


    /* ITEM 15 */
    .premium-gallery-item:nth-child(15) {
        grid-column: 1 / span 2;
        grid-row: 35 / span 4;
    }


    /* Mobile text */

    .gallery-item-overlay {
        padding: 55px 14px 14px;
    }

    .gallery-item-overlay span {
        font-size: 8px;
        letter-spacing: 1.5px;
    }

    .gallery-item-overlay h3 {
        font-size: 16px;
    }


    /* Mobile video button */

    .gallery-video-control {
        width: 36px;
        height: 36px;

        top: 12px;
        right: 12px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .premium-gallery-section {
        padding: 55px 12px;
    }

    .premium-gallery-heading h2 {
        font-size: 30px;
    }

    .premium-gallery-grid {
        gap: 8px;
        grid-auto-rows: 90px;
    }

    .gallery-item-overlay h3 {
        font-size: 14px;
    }

    .gallery-item-overlay {
        padding: 50px 11px 11px;
    }

}

/* =========================================
   MOBILE GALLERY
   CLEAN 2-COLUMN MASONRY STYLE
========================================= */

@media (max-width: 767px) {

    .premium-gallery-section {
        padding: 60px 12px;
    }

    .premium-gallery-section .auto-container {
        width: 100%;
        padding: 0;
    }

    /* -------------------------
       HEADING
    ------------------------- */

    .premium-gallery-heading {
        max-width: 100%;
        margin: 0 auto 35px;
        padding: 0 8px;
    }

    .gallery-eyebrow {
        margin-bottom: 10px;
        font-size: 9px;
        letter-spacing: 2px;
    }

    .premium-gallery-heading h2 {
        margin-bottom: 14px;
        font-size: 32px;
        line-height: 1.18;
    }

    .premium-gallery-heading p {
        max-width: 100%;
        font-size: 14px;
        line-height: 1.7;
    }


    /* =========================================
       MOBILE GRID
       Remove all desktop row positioning
    ========================================= */

    .premium-gallery-grid {
        display: grid;

        grid-template-columns: repeat(2, minmax(0, 1fr));

        grid-auto-rows: auto;

        gap: 10px;

        width: 100%;
        align-items: stretch;
    }


    /* =========================================
       RESET ALL DESKTOP POSITIONING
    ========================================= */

    .premium-gallery-item,
    .premium-gallery-item:nth-child(1),
    .premium-gallery-item:nth-child(2),
    .premium-gallery-item:nth-child(3),
    .premium-gallery-item:nth-child(4),
    .premium-gallery-item:nth-child(5),
    .premium-gallery-item:nth-child(6),
    .premium-gallery-item:nth-child(7),
    .premium-gallery-item:nth-child(8),
    .premium-gallery-item:nth-child(9),
    .premium-gallery-item:nth-child(10),
    .premium-gallery-item:nth-child(11),
    .premium-gallery-item:nth-child(12),
    .premium-gallery-item:nth-child(13),
    .premium-gallery-item:nth-child(14),
    .premium-gallery-item:nth-child(15) {

        grid-column: auto;
        grid-row: auto;

        min-height: 0;
    }


    /* =========================================
       INDIVIDUAL MOBILE SIZES
    ========================================= */

    /* 1 - Featured */
    .premium-gallery-item:nth-child(1) {
        grid-column: span 2;
        height: 260px;
    }


    /* 2 */
    .premium-gallery-item:nth-child(2) {
        height: 190px;
    }


    /* 3 - Tall Video */
    .premium-gallery-item:nth-child(3) {
        height: 390px;
    }


    /* 4 */
    .premium-gallery-item:nth-child(4) {
        height: 190px;
    }


    /* 5 - Wide */
    .premium-gallery-item:nth-child(5) {
        grid-column: span 2;
        height: 220px;
    }


    /* 6 - Wide Video */
    .premium-gallery-item:nth-child(6) {
        grid-column: span 2;
        height: 220px;
    }


    /* 7 */
    .premium-gallery-item:nth-child(7) {
        height: 200px;
    }


    /* 8 */
    .premium-gallery-item:nth-child(8) {
        height: 200px;
    }


    /* 9 - Tall Video */
    .premium-gallery-item:nth-child(9) {
        height: 390px;
    }


    /* 10 */
    .premium-gallery-item:nth-child(10) {
        height: 190px;
    }


    /* 11 - Wide */
    .premium-gallery-item:nth-child(11) {
        grid-column: span 2;
        height: 230px;
    }


    /* 12 */
    .premium-gallery-item:nth-child(12) {
        height: 190px;
    }


    /* 13 */
    .premium-gallery-item:nth-child(13) {
        height: 190px;
    }


    /* 14 - Wide */
    .premium-gallery-item:nth-child(14) {
        grid-column: span 2;
        height: 220px;
    }


    /* 15 - Wide */
    .premium-gallery-item:nth-child(15) {
        grid-column: span 2;
        height: 240px;
    }


    /* =========================================
       IMAGE / VIDEO
    ========================================= */

    .premium-gallery-item img,
    .premium-gallery-item video {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }


    /* =========================================
       OVERLAY
    ========================================= */

    .gallery-item-overlay {
        padding: 55px 14px 14px;

        transform: translateY(0);

        opacity: 1;

        background:
            linear-gradient(
                to top,
                rgba(0, 0, 0, 0.78),
                rgba(0, 0, 0, 0.28),
                transparent
            );
    }

    .gallery-item-overlay span {
        margin-bottom: 0px;

        font-size: 8px;
        letter-spacing: 1.5px;
    }

    .gallery-item-overlay h3 {
        font-size: 15px;
        line-height: 1.25;
    }


    /* =========================================
       VIDEO BUTTON
    ========================================= */

    .gallery-video-control {
        top: 10px;
        right: 10px;

        width: 36px;
        height: 36px;
    }

    .gallery-video-control i {
        font-size: 10px;
    }


    /* =========================================
       HOVER DISABLED ON TOUCH
    ========================================= */

    .premium-gallery-item:hover img,
    .premium-gallery-item:hover video {
        transform: none;
    }

    .premium-gallery-item:hover .gallery-item-overlay {
        transform: none;
        opacity: 1;
    }

}


/* =========================================
   SMALL MOBILE
   320px - 480px
========================================= */

@media (max-width: 480px) {

    .premium-gallery-section {
        padding: 50px 10px;
    }

    .premium-gallery-heading {
        margin-bottom: 30px;
        padding: 0 5px;
    }

    .gallery-eyebrow {
        font-size: 8px;
        letter-spacing: 1.7px;
    }

    .premium-gallery-heading h2 {
        font-size: 29px;
        line-height: 1.2;
    }

    .premium-gallery-heading p {
        font-size: 13px;
        line-height: 1.65;
    }


    /* Smaller gap */
    .premium-gallery-grid {
        gap: 8px;
    }


    /* Featured */
    .premium-gallery-item:nth-child(1) {
        height: 230px;
    }


    /* Regular cards */
    .premium-gallery-item:nth-child(2),
    .premium-gallery-item:nth-child(4),
    .premium-gallery-item:nth-child(7),
    .premium-gallery-item:nth-child(8),
    .premium-gallery-item:nth-child(10),
    .premium-gallery-item:nth-child(12),
    .premium-gallery-item:nth-child(13) {
        height: 175px;
    }


    /* Tall videos */
    .premium-gallery-item:nth-child(3),
    .premium-gallery-item:nth-child(9) {
        height: 360px;
    }


    /* Wide cards */
    .premium-gallery-item:nth-child(5),
    .premium-gallery-item:nth-child(6) {
        height: 205px;
    }

    .premium-gallery-item:nth-child(11) {
        height: 215px;
    }

    .premium-gallery-item:nth-child(14) {
        height: 205px;
    }

    .premium-gallery-item:nth-child(15) {
        height: 220px;
    }


    /* Overlay */
    .gallery-item-overlay {
        padding: 45px 11px 11px;
    }

    .gallery-item-overlay span {
        font-size: 7px;
        letter-spacing: 1.3px;
    }

    .gallery-item-overlay h3 {
        font-size: 13px;
        line-height: 1.25;
    }


    /* Video button */
    .gallery-video-control {
        width: 34px;
        height: 34px;

        top: 9px;
        right: 9px;
    }

}

/* =========================================================
   MOBILE — COMPACT EDITORIAL MOSAIC
========================================================= */

@media (max-width: 767px) {

    .premium-gallery-section {
        padding: 60px 12px;
    }

    .premium-gallery-section .auto-container {
        width: 100%;
        padding: 0;
    }

    .premium-gallery-heading {
        width: 100%;
        margin: 0 auto 32px;
        padding: 0 5px;
    }

    .gallery-eyebrow {
        margin-bottom: 9px;
        font-size: 9px;
        letter-spacing: 1.8px;
    }

    .premium-gallery-heading h2 {
        margin-bottom: 13px;
        font-size: 31px;
        line-height: 1.2;
    }

    .premium-gallery-heading p {
        font-size: 14px;
        line-height: 1.7;
    }


    /* =====================================================
       MOBILE GRID
    ===================================================== */

    .premium-gallery-grid {
        display: grid;

        grid-template-columns: repeat(2, minmax(0, 1fr));

        gap: 9px;

        width: 100%;

        align-items: stretch;
    }


    /* =====================================================
       RESET DESKTOP POSITIONS
    ===================================================== */

    .premium-gallery-item {
        grid-column: auto !important;
        grid-row: auto !important;

        min-width: 0;
        min-height: 0;
    }


    /* =====================================================
       1 — FEATURED
    ===================================================== */

    .premium-gallery-item:nth-child(1) {
        grid-column: 1 / -1 !important;
        height: 245px;
    }


    /* =====================================================
       2 — IMAGE
       LEFT COLUMN
    ===================================================== */

    .premium-gallery-item:nth-child(2) {
        grid-column: 1 !important;
        height: 175px;
    }


    /* =====================================================
       3 — TALL VIDEO
       RIGHT COLUMN
       Occupies same visual zone as 2 + 4
    ===================================================== */

    .premium-gallery-item:nth-child(3) {
        grid-column: 2 !important;

        grid-row: span 2 !important;

        height: 359px;
    }


    /* =====================================================
       4 — IMAGE
       DIRECTLY BELOW IMAGE 2
    ===================================================== */

    .premium-gallery-item:nth-child(4) {
        grid-column: 1 !important;
        height: 175px;
    }


    /* =====================================================
       5 — FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(5) {
        grid-column: 1 / -1 !important;
        height: 205px;
    }


    /* =====================================================
       6 — FULL WIDTH VIDEO
    ===================================================== */

    .premium-gallery-item:nth-child(6) {
        grid-column: 1 / -1 !important;
        height: 205px;
    }


    /* =====================================================
       7 — LEFT
    ===================================================== */

    .premium-gallery-item:nth-child(7) {
        grid-column: 1 !important;
        height: 180px;
    }


    /* =====================================================
       8 — RIGHT
    ===================================================== */

    .premium-gallery-item:nth-child(8) {
        grid-column: 2 !important;
        height: 180px;
    }


    /* =====================================================
       9 — TALL VIDEO
       RIGHT SIDE
    ===================================================== */

    .premium-gallery-item:nth-child(9) {
        grid-column: 2 !important;

        grid-row: span 2 !important;

        height: 368px;
    }


    /* =====================================================
       10 — IMAGE
       BELOW IMAGE 7
    ===================================================== */

    .premium-gallery-item:nth-child(10) {
        grid-column: 1 !important;
        height: 180px;
    }


    /* =====================================================
       11 — FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(11) {
        grid-column: 1 / -1 !important;
        height: 205px;
    }


    /* =====================================================
       12 + 13
       TWO COLUMN
    ===================================================== */

    .premium-gallery-item:nth-child(12) {
        grid-column: 1 !important;
        height: 175px;
    }

    .premium-gallery-item:nth-child(13) {
        grid-column: 2 !important;
        height: 175px;
    }


    /* =====================================================
       14 — FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(14) {
        grid-column: 1 / -1 !important;
        height: 200px;
    }


    /* =====================================================
       15 — FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(15) {
        grid-column: 1 / -1 !important;
        height: 210px;
    }


    /* =====================================================
       MEDIA
    ===================================================== */

    .premium-gallery-item img,
    .premium-gallery-item video {
        display: block;

        width: 100%;
        height: 100%;

        object-fit: cover;
    }


    /* =====================================================
       OVERLAY
    ===================================================== */

    .gallery-item-overlay {
        padding: 48px 13px 13px;

        opacity: 1;
        transform: none;

        background:
            linear-gradient(
                to top,
                rgba(0, 0, 0, 0.82),
                rgba(0, 0, 0, 0.30),
                transparent
            );
    }

    .gallery-item-overlay span {
        margin-bottom: 0px;

        font-size: 7px;
        letter-spacing: 1.4px;
    }

    .gallery-item-overlay h3 {
        font-size: 14px;
        line-height: 1.25;
    }


    /* =====================================================
       VIDEO CONTROL
    ===================================================== */

    .gallery-video-control {
        top: 10px;
        right: 10px;

        width: 35px;
        height: 35px;
    }

    .gallery-video-control i {
        font-size: 10px;
    }


    /* =====================================================
       REMOVE HOVER TRANSFORM ON MOBILE
    ===================================================== */

    .premium-gallery-item:hover img,
    .premium-gallery-item:hover video {
        transform: none;
    }

    .premium-gallery-item:hover .gallery-item-overlay {
        opacity: 1;
        transform: none;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .premium-gallery-section {
        padding: 50px 10px;
    }

    .premium-gallery-heading {
        margin-bottom: 28px;
    }

    .gallery-eyebrow {
        font-size: 8px;
        letter-spacing: 1.5px;
    }

    .premium-gallery-heading h2 {
        font-size: 28px;
    }

    .premium-gallery-heading p {
        font-size: 13px;
        line-height: 1.65;
    }

    .premium-gallery-grid {
        gap: 8px;
    }


    /* Featured */
    .premium-gallery-item:nth-child(1) {
        height: 220px;
    }


    /* Image 2 + Image 4 */
    .premium-gallery-item:nth-child(2),
    .premium-gallery-item:nth-child(4) {
        height: 160px;
    }


    /* Video 3 = 2 stacked images */
    .premium-gallery-item:nth-child(3) {
        height: 328px;
    }


    /* Full width */
    .premium-gallery-item:nth-child(5),
    .premium-gallery-item:nth-child(6) {
        height: 190px;
    }


    /* Image 7 + 8 + 10 */
    .premium-gallery-item:nth-child(7),
    .premium-gallery-item:nth-child(8),
    .premium-gallery-item:nth-child(10) {
        height: 165px;
    }


    /* Video 9 = 2 stacked images */
    .premium-gallery-item:nth-child(9) {
        height: 338px;
    }


    /* 11 */
    .premium-gallery-item:nth-child(11) {
        height: 195px;
    }


    /* 12 + 13 */
    .premium-gallery-item:nth-child(12),
    .premium-gallery-item:nth-child(13) {
        height: 160px;
    }


    /* 14 */
    .premium-gallery-item:nth-child(14) {
        height: 190px;
    }


    /* 15 */
    .premium-gallery-item:nth-child(15) {
        height: 200px;
    }


    .gallery-item-overlay {
        padding: 40px 10px 10px;
    }

    .gallery-item-overlay span {
        font-size: 6.5px;
        letter-spacing: 1.2px;
    }

    .gallery-item-overlay h3 {
        font-size: 12px;
    }

    .gallery-video-control {
        width: 33px;
        height: 33px;

        top: 8px;
        right: 8px;
    }
}


/* =========================================================
   VERY SMALL PHONES
========================================================= */

@media (max-width: 375px) {

    .premium-gallery-section {
        padding: 45px 8px;
    }

    .premium-gallery-heading h2 {
        font-size: 26px;
    }

    .premium-gallery-heading p {
        font-size: 12.5px;
    }

    .premium-gallery-grid {
        gap: 7px;
    }


    .premium-gallery-item:nth-child(1) {
        height: 205px;
    }


    .premium-gallery-item:nth-child(2),
    .premium-gallery-item:nth-child(4) {
        height: 145px;
    }


    .premium-gallery-item:nth-child(3) {
        height: 297px;
    }


    .premium-gallery-item:nth-child(5),
    .premium-gallery-item:nth-child(6) {
        height: 175px;
    }


    .premium-gallery-item:nth-child(7),
    .premium-gallery-item:nth-child(8),
    .premium-gallery-item:nth-child(10) {
        height: 150px;
    }


    .premium-gallery-item:nth-child(9) {
        height: 307px;
    }


    .premium-gallery-item:nth-child(11) {
        height: 180px;
    }


    .premium-gallery-item:nth-child(12),
    .premium-gallery-item:nth-child(13) {
        height: 145px;
    }


    .premium-gallery-item:nth-child(14) {
        height: 175px;
    }


    .premium-gallery-item:nth-child(15) {
        height: 185px;
    }


    .gallery-item-overlay {
        padding: 35px 9px 9px;
    }

    .gallery-item-overlay h3 {
        font-size: 11.5px;
    }
}
/* =========================================================
   PREMIUM GALLERY
   RESPONSIVE + COMPACT + NO UNNECESSARY GAPS
========================================================= */

.premium-gallery-section {
    position: relative;
    padding: 110px 0;
    background: #f8f6f1;
    overflow: hidden;
}

.premium-gallery-section .auto-container {
    width: 100%;
}


/* =========================================================
   HEADING
========================================================= */

.premium-gallery-heading {
    max-width: 720px;
    margin: 0 auto 60px;
    padding: 0 15px;
    text-align: center;
}

.gallery-eyebrow {
    display: inline-block;
    margin-bottom: 14px;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;

    color: #a47745;
}

.premium-gallery-heading h2 {
    margin: 0 0 18px;

    font-family: "Playfair Display", Georgia, serif;
    font-size: 40px;
    line-height: 1.15;
    font-weight: 600;

    color: #5B3527;
}

.premium-gallery-heading p {
    max-width: 600px;
    margin: 0 auto;

    font-size: 16px;
    line-height: 1.8;

    color: #6c6a65;
}


/* =========================================================
   MAIN GALLERY
========================================================= */

.premium-gallery-grid {
    display: grid;

    grid-template-columns: repeat(12, minmax(0, 1fr));

    grid-auto-rows: 85px;

    gap: 16px;

    width: 100%;

    /* VERY IMPORTANT */
    grid-auto-flow: dense;

    align-items: stretch;
}


/* =========================================================
   GALLERY ITEM
========================================================= */

.premium-gallery-item {
    position: relative;

    min-width: 0;
    min-height: 0;

    overflow: hidden;

    border-radius: 5px;

    background: #ddd;

    isolation: isolate;
}


/* =========================================================
   IMAGE / VIDEO
========================================================= */

.premium-gallery-item img,
.premium-gallery-item video {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.8s cubic-bezier(.2, .7, .2, 1),
        filter 0.5s ease;
}


/* =========================================================
   DESKTOP SIZES
   1200px+
========================================================= */

/* ITEM 1 */
.premium-gallery-item:nth-child(1) {
    grid-column: span 5;
    grid-row: span 5;
}

/* ITEM 2 */
.premium-gallery-item:nth-child(2) {
    grid-column: span 3;
    grid-row: span 3;
}

/* ITEM 3 VIDEO */
.premium-gallery-item:nth-child(3) {
    grid-column: span 4;
    grid-row: span 6;
}

/* ITEM 4 */
.premium-gallery-item:nth-child(4) {
    grid-column: span 3;
    grid-row: span 2;
}

/* ITEM 5 */
.premium-gallery-item:nth-child(5) {
    grid-column: span 3;
    grid-row: span 3;
}

/* ITEM 6 VIDEO */
.premium-gallery-item:nth-child(6) {
    grid-column: span 5;
    grid-row: span 3;
}

/* ITEM 7 */
.premium-gallery-item:nth-child(7) {
    grid-column: span 4;
    grid-row: span 4;
}

/* ITEM 8 */
.premium-gallery-item:nth-child(8) {
    grid-column: span 3;
    grid-row: span 3;
}

/* ITEM 9 VIDEO */
.premium-gallery-item:nth-child(9) {
    grid-column: span 5;
    grid-row: span 6;
}

/* ITEM 10 */
.premium-gallery-item:nth-child(10) {
    grid-column: span 4;
    grid-row: span 4;
}

/* ITEM 11 */
.premium-gallery-item:nth-child(11) {
    grid-column: span 5;
    grid-row: span 6;
}

/* ITEM 12 */
.premium-gallery-item:nth-child(12) {
    grid-column: span 3;
    grid-row: span 3;
}

/* ITEM 13 */
.premium-gallery-item:nth-child(13) {
    grid-column: span 7;
    grid-row: span 3;
}

/* ITEM 14 */
.premium-gallery-item:nth-child(14) {
    grid-column: span 3;
    grid-row: span 3;
}

/* ITEM 15 */
.premium-gallery-item:nth-child(15) {
    grid-column: span 4;
    grid-row: span 3;
}


/* =========================================================
   OVERLAY
========================================================= */

.gallery-item-overlay {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 3;

    padding: 70px 24px 24px;

    background:
        linear-gradient(
            to top,
            rgba(0, 0, 0, 0.80),
            rgba(0, 0, 0, 0.25),
            transparent
        );

    opacity: 0.9;

    transform: translateY(8px);

    transition:
        opacity 0.4s ease,
        transform 0.4s ease;
}

.gallery-item-overlay span {
    display: block;

    margin-bottom: 0px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2px;
    text-transform: uppercase;

    color: #f2d39d;
}

.gallery-item-overlay h3 {
    margin: 0;

    font-family: "Playfair Display", Georgia, serif;

    font-size: 21px;
    line-height: 1.25;
    font-weight: 500;

    color: #fff;
    text-transform: none !important;
}


/* =========================================================
   HOVER
========================================================= */

.premium-gallery-item::after {
    content: "";

    position: absolute;
    inset: 0;

    z-index: 1;

    background: rgba(0, 0, 0, 0);

    pointer-events: none;

    transition: background 0.4s ease;
}

.premium-gallery-item:hover::after {
    background: rgba(0, 0, 0, 0.08);
}

.premium-gallery-item:hover img,
.premium-gallery-item:hover video {
    transform: scale(1.06);
}

.premium-gallery-item:hover .gallery-item-overlay {
    opacity: 1;
    transform: translateY(0);
}


/* =========================================================
   VIDEO CONTROL
========================================================= */

.gallery-video-control {
    position: absolute;

    top: 18px;
    right: 18px;

    z-index: 5;

    width: 42px;
    height: 42px;

    padding: 0;

    border: 1px solid rgba(255,255,255,0.6);
    border-radius: 50%;

    background: rgba(0,0,0,0.35);

    backdrop-filter: blur(8px);

    color: #fff;

    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.gallery-video-control i {
    font-size: 12px;
}

.gallery-video-control:hover {
    background: rgba(0,0,0,0.7);
    transform: scale(1.08);
}


/* =========================================================
   1200 - 1399
========================================================= */

@media (min-width: 1200px) and (max-width: 1399px) {

    .premium-gallery-section {
        padding: 100px 0;
    }

    .premium-gallery-grid {
        grid-auto-rows: 78px;
        gap: 14px;
    }

    .gallery-item-overlay {
        padding: 60px 20px 20px;
    }

    .gallery-item-overlay h3 {
        font-size: 19px;
    }
}


/* =========================================================
   TABLET / SMALL DESKTOP
   992 - 1199
========================================================= */

@media (min-width: 992px) and (max-width: 1199px) {

    .premium-gallery-section {
        padding: 85px 0;
    }

    .premium-gallery-heading {
        margin-bottom: 45px;
    }

    .premium-gallery-heading h2 {
        font-size: 42px;
    }

    .premium-gallery-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));

        grid-auto-rows: 80px;

        gap: 13px;

        grid-auto-flow: dense;
    }


    /* FEATURED */
    .premium-gallery-item:nth-child(1) {
        grid-column: span 4;
        grid-row: span 4;
    }

    /* 2 */
    .premium-gallery-item:nth-child(2) {
        grid-column: span 2;
        grid-row: span 2;
    }

    /* 3 VIDEO */
    .premium-gallery-item:nth-child(3) {
        grid-column: span 2;
        grid-row: span 4;
    }

    /* 4 */
    .premium-gallery-item:nth-child(4) {
        grid-column: span 2;
        grid-row: span 2;
    }

    /* 5 */
    .premium-gallery-item:nth-child(5) {
        grid-column: span 2;
        grid-row: span 2;
    }

    /* 6 VIDEO */
    .premium-gallery-item:nth-child(6) {
        grid-column: span 3;
        grid-row: span 3;
    }

    /* 7 */
    .premium-gallery-item:nth-child(7) {
        grid-column: span 3;
        grid-row: span 3;
    }

    /* 8 */
    .premium-gallery-item:nth-child(8) {
        grid-column: span 2;
        grid-row: span 2;
    }

    /* 9 VIDEO */
    .premium-gallery-item:nth-child(9) {
        grid-column: span 2;
        grid-row: span 5;
    }

    /* 10 */
    .premium-gallery-item:nth-child(10) {
        grid-column: span 2;
        grid-row: span 2;
    }

    /* 11 */
    .premium-gallery-item:nth-child(11) {
        grid-column: span 3;
        grid-row: span 3;
    }

    /* 12 */
    .premium-gallery-item:nth-child(12) {
        grid-column: span 2;
        grid-row: span 3;
    }

    /* 13 */
    .premium-gallery-item:nth-child(13) {
        grid-column: span 3;
        grid-row: span 6;
    }

    /* 14 */
    .premium-gallery-item:nth-child(14) {
        grid-column: span 2;
        grid-row: span 3;
    }

    /* 15 */
    .premium-gallery-item:nth-child(15) {
        grid-column: span 3;
        grid-row: span 3;
    }

    .gallery-item-overlay {
        padding: 55px 16px 16px;
    }

    .gallery-item-overlay h3 {
        font-size: 17px;
    }
}


/* =========================================================
   TABLET
   768 - 991
========================================================= */

@media (min-width: 768px) and (max-width: 991px) {

    .premium-gallery-section {
        padding: 75px 0;
    }

    .premium-gallery-heading {
        margin-bottom: 40px;
    }

    .premium-gallery-heading h2 {
        font-size: 38px;
    }

    .premium-gallery-heading p {
        font-size: 15px;
    }

    .premium-gallery-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));

        grid-auto-rows: 90px;

        gap: 12px;

        grid-auto-flow: dense;
    }


    /* 1 */
    .premium-gallery-item:nth-child(1) {
        grid-column: span 3;
        grid-row: span 3;
    }

    /* 2 */
    .premium-gallery-item:nth-child(2) {
        grid-column: span 1;
        grid-row: span 2;
    }

    /* 3 VIDEO */
    .premium-gallery-item:nth-child(3) {
        grid-column: span 1;
        grid-row: span 3;
    }

    /* 4 */
    .premium-gallery-item:nth-child(4) {
        grid-column: span 1;
        grid-row: span 2;
    }

    /* 5 */
    .premium-gallery-item:nth-child(5) {
        grid-column: span 1;
        grid-row: span 2;
    }

    /* 6 VIDEO */
    .premium-gallery-item:nth-child(6) {
        grid-column: span 2;
        grid-row: span 2;
    }

    /* 7 */
    .premium-gallery-item:nth-child(7) {
        grid-column: span 2;
        grid-row: span 3;
    }

    /* 8 */
    .premium-gallery-item:nth-child(8) {
        grid-column: span 1;
        grid-row: span 2;
    }

    /* 9 VIDEO */
    .premium-gallery-item:nth-child(9) {
        grid-column: span 1;
        grid-row: span 4;
    }

    /* 10 */
    .premium-gallery-item:nth-child(10) {
        grid-column: span 1;
        grid-row: span 2;
    }

    /* 11 */
    .premium-gallery-item:nth-child(11) {
        grid-column: span 2;
        grid-row: span 2;
    }

    /* 12 */
    .premium-gallery-item:nth-child(12) {
        grid-column: span 1;
        grid-row: span 3;
    }

    /* 13 */
    .premium-gallery-item:nth-child(13) {
        grid-column: span 2;
        grid-row: span 2;
    }

    /* 14 */
    .premium-gallery-item:nth-child(14) {
        grid-column: span 1;
        grid-row: span 3;
    }

    /* 15 */
    .premium-gallery-item:nth-child(15) {
        grid-column: span 3;
        grid-row: span 2;
    }

    .gallery-item-overlay {
        padding: 45px 13px 13px;
    }

    .gallery-item-overlay span {
        font-size: 8px;
        letter-spacing: 1.5px;
    }

    .gallery-item-overlay h3 {
        font-size: 15px;
    }

    .gallery-video-control {
        width: 38px;
        height: 38px;

        top: 12px;
        right: 12px;
    }
}


/* =========================================================
   MOBILE
   0 - 767
========================================================= */

@media (max-width: 767px) {

    .premium-gallery-section {
        padding: 55px 10px;
    }

    .premium-gallery-section .auto-container {
        width: 100%;
        padding: 0;
    }


    /* =====================================================
       HEADING
    ===================================================== */

    .premium-gallery-heading {
        width: 100%;
        margin: 0 auto 30px;
        padding: 0 6px;
    }

    .gallery-eyebrow {
        margin-bottom: 9px;

        font-size: 9px;
        letter-spacing: 1.8px;
    }

    .premium-gallery-heading h2 {
        margin-bottom: 13px;

        font-size: 30px;
        line-height: 1.2;
    }

    .premium-gallery-heading p {
        font-size: 13.5px;
        line-height: 1.7;
    }


    /* =====================================================
       MOBILE GRID
    ===================================================== */

    .premium-gallery-grid {
        display: grid;

        grid-template-columns: repeat(2, minmax(0, 1fr));

        grid-auto-rows: auto;

        gap: 8px;

        width: 100%;

        align-items: stretch;

        grid-auto-flow: dense;
    }


    /* =====================================================
       RESET ALL DESKTOP GRID SETTINGS
    ===================================================== */

    .premium-gallery-item {
        grid-column: auto !important;
        grid-row: auto !important;

        min-width: 0;
        min-height: 0;
    }


    /* =====================================================
       IMAGE 1
       FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(1) {
        grid-column: 1 / -1 !important;
        height: 220px;
    }


    /* =====================================================
       IMAGE 2
       LEFT
    ===================================================== */

    .premium-gallery-item:nth-child(2) {
        grid-column: 1 !important;
        height: 155px;
    }


    /* =====================================================
       VIDEO 3
       RIGHT
       SAME HEIGHT AS IMAGE 2 + IMAGE 4
    ===================================================== */

    .premium-gallery-item:nth-child(3) {
        grid-column: 2 !important;

        grid-row: span 2 !important;

        height: 318px;
    }


    /* =====================================================
       IMAGE 4
       DIRECTLY UNDER IMAGE 2
    ===================================================== */

    .premium-gallery-item:nth-child(4) {
        grid-column: 1 !important;
        height: 155px;
    }


    /* =====================================================
       IMAGE 5
       FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(5) {
        grid-column: 1 / -1 !important;
        height: 190px;
    }


    /* =====================================================
       VIDEO 6
       FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(6) {
        grid-column: 1 / -1 !important;
        height: 190px;
    }


    /* =====================================================
       IMAGE 7
       LEFT
    ===================================================== */

    .premium-gallery-item:nth-child(7) {
        grid-column: 1 !important;
        height: 155px;
    }


    /* =====================================================
       IMAGE 8
       BELOW IMAGE 7
       FILLS THE GAP
    ===================================================== */

    .premium-gallery-item:nth-child(8) {
        grid-column: 1 !important;
        height: 155px;
    }


    /* =====================================================
       VIDEO 9
       RIGHT
       SAME HEIGHT AS IMAGE 7 + IMAGE 8
    ===================================================== */

    .premium-gallery-item:nth-child(9) {
        grid-column: 2 !important;

        grid-row: span 2 !important;

        height: 318px;
    }


    /* =====================================================
       IMAGE 10
       BELOW IMAGE 8
    ===================================================== */

    .premium-gallery-item:nth-child(10) {
        grid-column: 1 !important;
        height: 155px;
    }


    /* =====================================================
       IMAGE 11
       FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(11) {
        grid-column: 1 / -1 !important;
        height: 195px;
    }


    /* =====================================================
       IMAGE 12 + 13
       TWO COLUMNS
    ===================================================== */

    .premium-gallery-item:nth-child(12) {
        grid-column: 1 !important;
        height: 155px;
    }

    .premium-gallery-item:nth-child(13) {
        grid-column: 2 !important;
        height: 155px;
    }


    /* =====================================================
       IMAGE 14
       FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(14) {
        grid-column: 2 / -1 !important;
        height: 190px;
    }


    /* =====================================================
       IMAGE 15
       FULL WIDTH
    ===================================================== */

    .premium-gallery-item:nth-child(15) {
        grid-column: 1 / -1 !important;
        height: 200px;
    }


    /* =====================================================
       IMAGE / VIDEO
    ===================================================== */

    .premium-gallery-item img,
    .premium-gallery-item video {
        width: 100%;
        height: 100%;

        object-fit: cover;
    }


    /* =====================================================
       MOBILE OVERLAY
    ===================================================== */

    .gallery-item-overlay {
        padding: 45px 12px 12px;

        opacity: 1;

        transform: none;

        background:
            linear-gradient(
                to top,
                rgba(0, 0, 0, 0.82),
                rgba(0, 0, 0, 0.30),
                transparent
            );
    }

    .gallery-item-overlay span {
        margin-bottom: 0px;

        font-size: 7px;
        letter-spacing: 1.3px;
    }

    .gallery-item-overlay h3 {
        font-size: 13px;
        line-height: 1.25;
    }


    /* =====================================================
       VIDEO BUTTON
    ===================================================== */

    .gallery-video-control {
        width: 35px;
        height: 35px;

        top: 10px;
        right: 10px;
    }

    .gallery-video-control i {
        font-size: 10px;
    }


    /* =====================================================
       REMOVE HOVER ZOOM ON TOUCH DEVICES
    ===================================================== */

    .premium-gallery-item:hover img,
    .premium-gallery-item:hover video {
        transform: none;
    }

    .premium-gallery-item:hover .gallery-item-overlay {
        opacity: 1;
        transform: none;
    }
}


/* =========================================================
   SMALL MOBILE
   481 - 600
========================================================= */

@media (min-width: 481px) and (max-width: 600px) {

    .premium-gallery-section {
        padding: 60px 12px;
    }

    .premium-gallery-grid {
        gap: 9px;
    }

    .premium-gallery-item:nth-child(1) {
        height: 240px;
    }

    .premium-gallery-item:nth-child(2),
    .premium-gallery-item:nth-child(4) {
        height: 170px;
    }

    .premium-gallery-item:nth-child(3) {
        height: 348px;
    }

    .premium-gallery-item:nth-child(5),
    .premium-gallery-item:nth-child(6) {
        height: 210px;
    }

    .premium-gallery-item:nth-child(7),
    .premium-gallery-item:nth-child(8),
    .premium-gallery-item:nth-child(10) {
        height: 170px;
    }

    .premium-gallery-item:nth-child(9) {
        height: 348px;
    }

    .premium-gallery-item:nth-child(11) {
        height: 215px;
    }

    .premium-gallery-item:nth-child(12),
    .premium-gallery-item:nth-child(13) {
        height: 170px;
    }

    .premium-gallery-item:nth-child(14) {
        height: 205px;
    }

    .premium-gallery-item:nth-child(15) {
        height: 215px;
    }
}


/* =========================================================
   SMALL PHONES
   375 - 480
========================================================= */

@media (max-width: 480px) {

    .premium-gallery-section {
        padding: 48px 9px;
    }

    .premium-gallery-heading {
        margin-bottom: 27px;
    }

    .gallery-eyebrow {
        font-size: 8px;
        letter-spacing: 1.5px;
    }

    .premium-gallery-heading h2 {
        font-size: 28px;
    }

    .premium-gallery-heading p {
        font-size: 13px;
    }

    .premium-gallery-grid {
        gap: 8px;
    }


    /* 1 */
    .premium-gallery-item:nth-child(1) {
        height: 210px;
    }


    /* 2 + 4 */
    .premium-gallery-item:nth-child(2),
    .premium-gallery-item:nth-child(4) {
        height: 150px;
    }


    /* 3 */
    .premium-gallery-item:nth-child(3) {
        height: 308px;
    }


    /* 5 + 6 */
    .premium-gallery-item:nth-child(5),
    .premium-gallery-item:nth-child(6) {
        height: 185px;
    }


    /* 7 + 8 + 10 */
    .premium-gallery-item:nth-child(7),
    .premium-gallery-item:nth-child(8),
    .premium-gallery-item:nth-child(10) {
        height: 150px;
    }


    /* 9 */
    .premium-gallery-item:nth-child(9) {
        height: 308px;
    }


    /* 11 */
    .premium-gallery-item:nth-child(11) {
        height: 185px;
    }


    /* 12 + 13 */
    .premium-gallery-item:nth-child(12),
    .premium-gallery-item:nth-child(13) {
        height: 150px;
    }


    /* 14 */
    .premium-gallery-item:nth-child(14) {
        height: 140px;
    }


    /* 15 */
    .premium-gallery-item:nth-child(15) {
        height: 190px;
    }


    .gallery-item-overlay {
        padding: 38px 10px 10px;
    }

    .gallery-item-overlay span {
        font-size: 6.5px;
    }

    .gallery-item-overlay h3 {
        font-size: 12px;
    }
}


/* =========================================================
   VERY SMALL PHONES
   320 - 374
========================================================= */

@media (max-width: 374px) {

    .premium-gallery-section {
        padding: 42px 8px;
    }

    .premium-gallery-grid {
        gap: 7px;
    }

    .premium-gallery-heading h2 {
        font-size: 25px;
    }

    .premium-gallery-heading p {
        font-size: 12px;
    }


    .premium-gallery-item:nth-child(1) {
        height: 195px;
    }


    .premium-gallery-item:nth-child(2),
    .premium-gallery-item:nth-child(4) {
        height: 140px;
    }


    .premium-gallery-item:nth-child(3) {
        height: 287px;
    }


    .premium-gallery-item:nth-child(5),
    .premium-gallery-item:nth-child(6) {
        height: 170px;
    }


    .premium-gallery-item:nth-child(7),
    .premium-gallery-item:nth-child(8),
    .premium-gallery-item:nth-child(10) {
        height: 140px;
    }


    .premium-gallery-item:nth-child(9) {
        height: 287px;
    }


    .premium-gallery-item:nth-child(11) {
        height: 175px;
    }


    .premium-gallery-item:nth-child(12),
    .premium-gallery-item:nth-child(13) {
        height: 140px;
    }


    .premium-gallery-item:nth-child(14) {
        height: 140px;
    }


    .premium-gallery-item:nth-child(15) {
        height: 175px;
    }


    .gallery-item-overlay {
        padding: 32px 9px 9px;
    }

    .gallery-item-overlay h3 {
        font-size: 11px;
    }
}

/* =========================================
   BU.MI CONTACT EVENT SECTION
   COLORS:
   Terracotta: #955339
   Cream:      #F8F1E7
========================================= */

.contact-event-section {
    width: 100%;
    padding: 80px 30px 100px;
    background: #F8F1E7;
}

.contact-event-inner {
    width: 100%;
    max-width: 1350px;
    min-height: 540px;
    margin: 0 auto;

    display: flex;
    align-items: stretch;

    background: #955339;
    overflow: hidden;
}


/* IMAGE */

.contact-event-image {
    width: 55%;
    min-height: 540px;
    overflow: hidden;
}

.contact-event-image img {
    width: 100%;
    height: 100%;
    min-height: 540px;

    display: block;
    object-fit: cover;
    object-position: center;

    transition: transform .7s ease;
}

.contact-event-inner:hover .contact-event-image img {
    transform: scale(1.04);
}


/* CONTENT */

.contact-event-content {
    width: 45%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 70px 75px;

    background: #955339;
    color: #F8F1E7;
}

.contact-event-eyebrow {
    display: block;
    margin-bottom: 20px;

    font-size: 12px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;

    color: #F8F1E7;
    opacity: .8;
}

.contact-event-content h2 {
    margin: 0 0 25px;

    font-size: clamp(42px, 4vw, 64px);
    line-height: 1.05;
    font-weight: 500;

    color: #F8F1E7;
}

.contact-event-content p {
    max-width: 470px;
    margin: 0 0 35px;

    font-size: 15px;
    line-height: 1.8;

    color: rgba(248, 241, 231, .82);
}


/* BUTTON */

.contact-event-btn {
    width: fit-content;

    display: inline-flex;
    align-items: center;
    gap: 15px;

    padding: 14px 22px;

    border: 1px solid #F8F1E7;

    background: #F8F1E7;
    color: #955339;

    text-decoration: none;

    font-size: 13px;
    font-weight: 600;
    letter-spacing: .5px;

    transition: all .3s ease;
}

.contact-event-btn i {
    font-size: 12px;
    transition: transform .3s ease;
}

.contact-event-btn:hover {
    background: transparent;
    color: #F8F1E7;
}

.contact-event-btn:hover i {
    transform: translateX(5px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .contact-event-section {
        padding: 60px 20px 80px;
    }

    .contact-event-inner {
        min-height: 480px;
    }

    .contact-event-image {
        width: 50%;
        min-height: 480px;
    }

    .contact-event-image img {
        min-height: 480px;
    }

    .contact-event-content {
        width: 50%;
        padding: 50px 40px;
    }

    .contact-event-content h2 {
        font-size: 44px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .contact-event-section {
        padding: 45px 15px 65px;
    }

    .contact-event-inner {
        display: flex;
        flex-direction: column;
        min-height: auto;
    }

    .contact-event-image {
        width: 100%;
        height: 330px;
        min-height: 330px;
    }

    .contact-event-image img {
        width: 100%;
        height: 330px;
        min-height: 330px;
    }

    .contact-event-content {
        width: 100%;
        padding: 45px 25px 50px;
    }

    .contact-event-eyebrow {
        margin-bottom: 15px;
        font-size: 10px;
        letter-spacing: 2px;
    }

    .contact-event-content h2 {
        margin-bottom: 20px;
        font-size: 38px;
        line-height: 1.08;
    }

    .contact-event-content p {
        margin-bottom: 28px;
        font-size: 14px;
        line-height: 1.75;
    }

    .contact-event-btn {
        padding: 13px 19px;
        font-size: 12px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .contact-event-section {
        padding-left: 12px;
        padding-right: 12px;
    }

    .contact-event-image,
    .contact-event-image img {
        height: 280px;
        min-height: 280px;
    }

    .contact-event-content {
        padding: 38px 22px 42px;
    }

    .contact-event-content h2 {
        font-size: 34px;
    }

}

/* =========================================
   OUTER REVIEW SLIDER
========================================= */

.independent-written-slider .owl-stage {
    display: flex;
    align-items: stretch;
}

.independent-written-slider .owl-item {
    display: flex;
}

.independent-written-slide {
    width: 100%;
    height: 100%;
}


/* =========================================
   VIDEO REVIEW SLIDE
========================================= */

.independent-video-review-slide {
    display: flex;
    align-items: center;
    justify-content: center;
}

.independent-video-review-slide .independent-video-section {
    width: 100%;
}


/* =========================================
   INNER VIDEO SLIDER
========================================= */

.independent-video-slider {
    width: 100%;
}

.independent-video-slider .owl-stage {
    display: flex;
}

.independent-video-slider .owl-item {
    display: block;
}

.independent-video-slide {
    width: 100%;
}


/* =========================================
   VIDEO BOX
========================================= */

.independent-video-box {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.independent-video {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}


/* =========================================
   WRITTEN REVIEW
========================================= */

.independent-review-content {
    width: 100%;
    height: 100%;
}

/* =========================================
   BU.MI FOOTER INFO CARD
========================================= */

.footer-col.info-col {
    padding: 0;
}

.footer-col.info-col .inner {
    background: #f5f0e8;
    border: 3px solid #d6a85f;
    padding: 55px 40px;
    width: 100%;
    min-height: 100%;
    box-sizing: border-box;
}

.footer-col.info-col .content {
    text-align: center;
}


/* =========================================
   LOGO
========================================= */

.footer-col.info-col .logo {
    text-align: center;
    margin-bottom: 65px;
}

.footer-col.info-col .footer-logo {
    display: inline-block;
    max-width: 230px;
    width: 100%;
    height: auto;
}


/* =========================================
   CONTACT INFORMATION
========================================= */

.footer-col.info-col .info {
    text-align: center;
}

.footer-col.info-col .info ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-col.info-col .info ul li {
    margin-bottom: 12px;
    color: #111;
    font-size: 21px;
    line-height: 1.45;
    font-weight: 400;
}

.footer-col.info-col .info ul li:last-child {
    margin-bottom: 0;
}


/* =========================================
   LINKS
========================================= */

.footer-col.info-col .info ul li a {
    color: #111;
    text-decoration: none;
    transition: all 0.3s ease;
}

.footer-col.info-col .info ul li a:hover {
    color: #a86443;
}


/* =========================================
   GOLDEN SEPARATOR
========================================= */

.footer-col.info-col .separator {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    margin-top: 55px;
}

.footer-col.info-col .separator span {
    width: 11px;
    height: 11px;
    display: block;
    transform: rotate(-25deg);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .footer-col.info-col .inner {
        padding: 45px 30px;
    }

    .footer-col.info-col .logo {
        margin-bottom: 50px;
    }

    .footer-col.info-col .footer-logo {
        max-width: 210px;
    }

    .footer-col.info-col .info ul li {
        font-size: 19px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .footer-col.info-col {
        padding: 0 15px;
    }

    .footer-col.info-col .inner {
        padding: 40px 20px;
        border-width: 1px;
    }

    .footer-col.info-col .logo {
        margin-bottom: 45px;
    }

    .footer-col.info-col .footer-logo {
        max-width: 190px;
    }

    .footer-col.info-col .info ul li {
        font-size: 16px;
        line-height: 1.5;
        margin-bottom: 10px;
        word-break: normal;
    }

    .footer-col.info-col .separator {
        margin-top: 40px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .footer-col.info-col {
        padding: 0 10px;
    }

    .footer-col.info-col .inner {
        padding: 35px 15px;
    }

    .footer-col.info-col .logo {
        margin-bottom: 40px;
    }

    .footer-col.info-col .footer-logo {
        max-width: 175px;
    }

    .footer-col.info-col .info ul li {
        font-size: 15px;
    }

    .footer-col.info-col .separator {
        margin-top: 35px;
    }

}


/* =========================================
   TEAM IMAGE CAROUSEL
========================================= */

.team-image-carousel {
    position: relative;
    overflow: hidden;
}


/* Slides */

.team-image-carousel .team-image-slide {
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;

    opacity: 0;
    visibility: hidden;

    transition: opacity 0.4s ease;

    z-index: 1;
}

.team-image-carousel .team-image-slide.active {
    position: relative;

    opacity: 1;
    visibility: visible;

    z-index: 2;
}


/* Keep ORIGINAL image sizing */

.team-image-carousel .team-image-slide img {
    display: block;
    width: 100%;
    height: auto;
}


/* =========================================
   ARROWS
========================================= */

.team-carousel-prev,
.team-carousel-next {
    position: absolute;

    top: 50%;
    transform: translateY(-50%);

    width: 36px;
    height: 36px;

    padding: 0;

    border: 0;
    border-radius: 50%;

    background: rgba(0, 0, 0, 0.65);

    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 18px;

    cursor: pointer;

    z-index: 10;

    opacity: 0;

    transition: all 0.3s ease;
}


/* Previous */

.team-carousel-prev {
    left: 12px;
}


/* Next */

.team-carousel-next {
    right: 12px;
}


/* Show arrows */

.team-image-carousel:hover .team-carousel-prev,
.team-image-carousel:hover .team-carousel-next {
    opacity: 1;
}


/* Hover */

.team-carousel-prev:hover,
.team-carousel-next:hover {
    background: #a45a3d;
    color: #fff;
}


/* =========================================
   DOTS
========================================= */

.team-carousel-dots {
    position: absolute;

    left: 50%;
    bottom: 12px;

    transform: translateX(-50%);

    display: flex;
    align-items: center;

    gap: 7px;

    z-index: 10;
}

.team-carousel-dot {
    display: block;

    width: 8px;
    height: 8px;

    padding: 0;

    border: 0;
    border-radius: 50%;

    background: rgba(255, 255, 255, 0.8);

    cursor: pointer;

    transition: all 0.3s ease;
}

.team-carousel-dot.active {
    width: 20px;

    border-radius: 10px;

    background: #a45a3d;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .team-carousel-prev,
    .team-carousel-next {
        width: 32px;
        height: 32px;

        opacity: 1;

        font-size: 15px;
    }

    .team-carousel-prev {
        left: 8px;
    }

    .team-carousel-next {
        right: 8px;
    }

}

/* =========================================================
   BU.MI MIDDLE FOOTER CARD — WIDER + LARGER TYPOGRAPHY
========================================================= */

.bmi-footer-col {
    position: relative;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center;
}


/* ================= MAIN CARD ================= */

.bmi-footer-inner {
    position: relative;

    width: 100%;
    max-width: 440px;              /* increased from 365px */

    min-height: 450px;

    margin: 0 auto !important;
    padding: 38px 38px 32px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;

    background: #F5F0E8;

    border: 1px solid #D6A85F;

    text-align: center;

    overflow: hidden;

    box-sizing: border-box;
}


/* ================= INNER FRAME ================= */

.bmi-footer-inner::before {
    content: "";

    position: absolute;

    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 10px;

    border: 1px solid rgba(155, 84, 57, 0.28);

    pointer-events: none;
}


/* ================= LOGO ================= */

.bmi-logo-wrap {
    position: relative;
    z-index: 3;

    width: 100%;

    display: flex;
    justify-content: center;
    align-items: center;

    margin: 8px auto 16px;
}

.bmi-logo-wrap img {
    display: block;

    width: 165px;                 /* slightly larger */

    height: auto;

    margin: 0 auto;

    object-fit: contain;
}


/* ================= LOCATION ================= */

.bmi-location {
    position: relative;
    z-index: 3;

    width: 100%;

    margin: 0 auto;

    text-align: center;


    font-size: 12px;              /* increased */

    font-weight: 500;

    letter-spacing: 2.8px;

    line-height: 1.5;

    text-transform: uppercase;

    color: #171717;
}

.bmi-location span {
    color: #D6A85F;

    margin: 0 7px;
}


/* ================= DIVIDER ================= */

.bmi-divider {
    position: relative;
    z-index: 3;

    width: 150px;

    height: 18px;

    margin: 18px auto 22px;

    display: flex;

    justify-content: center;
    align-items: center;
}

.bmi-divider span {
    width: 50px;

    height: 1px;

    background: #D6A85F;
}

.bmi-divider i {
    margin: 0 9px;

    font-size: 8px;

    line-height: 1;

    font-style: normal;

    color: #9B5439;
}


/* ================= CONTACT GRID ================= */

.bmi-contact-grid {
    position: relative;
    z-index: 3;

    width: 100%;

    max-width: 350px;             /* wider grid */

    margin: 0 auto;

    display: grid;

    grid-template-columns: 1fr 1fr;

    text-align: center;
}


/* ================= CONTACT ITEM ================= */

.bmi-contact-item {
    position: relative;

    min-height: 100px;            /* increased */

    padding: 14px 18px;

    display: flex;

    flex-direction: column;

    justify-content: center;
    align-items: center;

    text-align: center;

    box-sizing: border-box;

    transition: background .3s ease;
}


/* Vertical divider */

.bmi-contact-item:nth-child(odd) {
    border-right: 1px solid rgba(155, 84, 57, 0.18);
}


/* Horizontal divider */

.bmi-contact-item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(155, 84, 57, 0.18);
}


/* ================= DECORATIVE NUMBERS ================= */

.bmi-number {
    position: absolute;

    top: 5px;
    left: 50%;

    transform: translateX(-50%);


    font-size: 48px;

    font-weight: 400;

    line-height: 1;

    color: rgba(155, 84, 57, 0.07);

    pointer-events: none;
}


/* ================= CONTACT CONTENT ================= */

.bmi-contact-content {
    position: relative;
    z-index: 3;

    width: 100%;

    padding-top: 17px;

    text-align: center;
}


/* ================= LABEL ================= */

.bmi-label {
    margin-bottom: 8px;


    font-size: 10px;              /* increased */

    font-weight: 600;

    letter-spacing: 1.8px;

    line-height: 1.5;

    text-align: center;

    color: #9B5439;
}


/* ================= EMAIL / CONTENT ================= */

.bmi-contact-content a,
.bmi-contact-content > span {
    display: block;

    width: 100%;

    text-align: center;


    font-size: 11px;              /* increased */

    font-weight: 400;

    line-height: 1.55;

    color: #171717;

    text-decoration: none;

    word-break: break-word;

    transition: all .3s ease;
}

.bmi-contact-content a:hover {
    color: #9B5439;
}


/* ================= OPEN DAILY ================= */

.bmi-open-symbol {
    position: absolute;

    top: 5px;
    left: 50%;

    transform: translateX(-50%);

    font-size: 40px;

    line-height: 1;

    color: rgba(214, 168, 95, 0.30);
}

.bmi-open-item .bmi-contact-content {
    padding-top: 22px;
}


/* ================= PHONE AREA ================= */

.bmi-phone-area {
    position: relative;
    z-index: 4;

    width: 100%;

    margin: 22px auto 0;

    padding-top: 16px;

    text-align: center;
}


/* Phone separator */

.bmi-phone-line {
    width: 65px;

    height: 1px;

    margin: 0 auto 12px;

    background: #D6A85F;
}


/* ================= PHONE ================= */

.bmi-phone {
    display: inline-block;

    margin: 0 auto;


    font-size: 20px;              /* increased */

    font-weight: 500;

    letter-spacing: 1.2px;

    color: #9B5439;

    text-decoration: none;

    text-align: center;

    transition: all .3s ease;
}

.bmi-phone:hover {
    color: #171717;

    letter-spacing: 1.8px;
}


/* ================= PHONE CAPTION ================= */

.bmi-phone-caption {
    margin-top: 7px;


    font-size: 9px;               /* increased */

    font-weight: 600;

    letter-spacing: 2.4px;

    color: #171717;

    text-align: center;
}


/* ================= BACKGROUND BU.MI ================= */

.bmi-bg-text {
    position: absolute;

    z-index: 0;

    left: 50%;
    top: 52%;

    transform: translate(-50%, -50%);


    font-size: 165px;

    font-weight: 700;

    letter-spacing: -9px;

    line-height: 1;

    white-space: nowrap;

    color: rgba(155, 84, 57, 0.035);

    pointer-events: none;

    user-select: none;
}


/* ================= HOVER ================= */

.bmi-contact-item:hover {
    background: rgba(155, 84, 57, 0.035);
}


/* =========================================================
   DESKTOP
========================================================= */

@media (min-width: 992px) {

    .bmi-footer-col {
        display: flex !important;

        justify-content: center !important;
        align-items: center !important;
    }

    .bmi-footer-inner {
        width: 100%;
        max-width: 440px;

        margin-left: auto !important;
        margin-right: auto !important;

        transform: none !important;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .bmi-footer-col {
        display: flex !important;

        justify-content: center !important;
        align-items: center !important;
    }

    .bmi-footer-inner {
        width: 100%;
        max-width: 440px;

        margin: 30px auto !important;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575px) {

    .bmi-footer-inner {
        width: calc(100% - 20px);

        max-width: 390px;

        min-height: auto;

        margin: 20px auto !important;

        padding: 30px 18px 28px;
    }

    .bmi-logo-wrap img {
        width: 145px;
    }

    .bmi-location {
        font-size: 10px;

        letter-spacing: 2.2px;
    }

    .bmi-contact-grid {
        max-width: 340px;
    }

    .bmi-contact-item {
        min-height: 90px;

        padding: 12px 10px;
    }

    .bmi-contact-content a,
    .bmi-contact-content > span {
        font-size: 10px;
    }

    .bmi-label {
        font-size: 9px;
    }

    .bmi-phone {
        font-size: 17px;
    }

    .bmi-bg-text {
        font-size: 110px;
    }
}

/* =========================================================
   BU.MI — LARGE TYPOGRAPHY OVERRIDE
========================================================= */

/* Location */
.bmi-location {
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 3px !important;
    line-height: 1.6 !important;
}


/* Contact labels */
.bmi-label {
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    line-height: 1.5 !important;
    margin-bottom: 9px !important;
}


/* Contact details / emails */
.bmi-contact-content a,
.bmi-contact-content > span {
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
}


/* Contact boxes */
.bmi-contact-item {
    min-height: 110px !important;
    padding: 16px 15px !important;
}


/* Phone number */
.bmi-phone {
    font-size: 23px !important;
    font-weight: 600 !important;
    letter-spacing: 1.5px !important;
    line-height: 1.5 !important;
}


/* Open Daily */
.bmi-phone-caption {
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 3px !important;
}


/* Decorative numbers */
.bmi-number {
    font-size: 52px !important;
}


/* Logo */
.bmi-logo-wrap img {
    width: 175px !important;
}


/* =========================================================
   CARD — GIVE MORE SPACE FOR LARGE TEXT
========================================================= */

.bmi-footer-inner {
    max-width: 455px !important;
    min-height: 475px !important;

    padding: 40px 35px 35px !important;
}


/* Contact grid */
.bmi-contact-grid {
    max-width: 370px !important;
}


/* Divider */
.bmi-divider {
    width: 170px !important;
    margin: 20px auto 24px !important;
}


/* Phone spacing */
.bmi-phone-area {
    margin-top: 24px !important;
    padding-top: 18px !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .bmi-footer-inner {
        max-width: 455px !important;
    }

    .bmi-location {
        font-size: 13px !important;
    }

    .bmi-label {
        font-size: 11px !important;
    }

    .bmi-contact-content a,
    .bmi-contact-content > span {
        font-size: 12px !important;
    }

    .bmi-phone {
        font-size: 21px !important;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575px) {

    .bmi-footer-inner {
        width: calc(100% - 16px) !important;
        max-width: 420px !important;

        padding: 32px 15px 30px !important;
    }

    .bmi-logo-wrap img {
        width: 155px !important;
    }

    .bmi-location {
        font-size: 11px !important;
        letter-spacing: 2.3px !important;
    }

    .bmi-contact-grid {
        max-width: 350px !important;
    }

    .bmi-contact-item {
        min-height: 100px !important;
        padding: 14px 8px !important;
    }

    .bmi-label {
        font-size: 10px !important;
        letter-spacing: 1.5px !important;
    }

    .bmi-contact-content a,
    .bmi-contact-content > span {
        font-size: 11px !important;
    }

    .bmi-phone {
        font-size: 19px !important;
    }

    .bmi-phone-caption {
        font-size: 10px !important;
    }
}

/* =========================================================
   BU.MI FOOTER CARD — WIDER + BIGGER NORMAL TEXT
========================================================= */

.bmi-footer-inner {
    width: 100% !important;
    max-width: 520px !important;
    min-height: 500px !important;

    padding: 45px 45px 38px !important;
}


/* ================= LOGO ================= */

.bmi-logo-wrap {
    margin: 10px auto 20px !important;
}

.bmi-logo-wrap img {
    width: 190px !important;
}


/* ================= LOCATION ================= */

.bmi-location {
    font-size: 16px !important;
    font-weight: 500 !important;

    letter-spacing: 1px !important;
    line-height: 1.6 !important;

    text-transform: none !important;

    color: #171717 !important;
}


/* ================= DIVIDER ================= */

.bmi-divider {
    width: 190px !important;
    margin: 22px auto 28px !important;
}


/* ================= CONTACT GRID ================= */

.bmi-contact-grid {
    width: 100% !important;
    max-width: 420px !important;
}


/* ================= CONTACT BOX ================= */

.bmi-contact-item {
    min-height: 120px !important;

    padding: 18px 20px !important;
}


/* ================= CONTACT LABEL ================= */

.bmi-label {
    font-size: 14px !important;

    font-weight: 600 !important;

    letter-spacing: 0 !important;

    line-height: 1.5 !important;

    text-transform: none !important;

    margin-bottom: 10px !important;
}


/* ================= EMAIL / DETAILS ================= */

.bmi-contact-content a,
.bmi-contact-content > span {
    font-size: 14px !important;

    font-weight: 500 !important;

    letter-spacing: 0 !important;

    line-height: 1.6 !important;

    text-transform: none !important;

    color: #171717 !important;
}


/* ================= PHONE ================= */

.bmi-phone-area {
    margin-top: 28px !important;
    padding-top: 20px !important;
}

.bmi-phone {
    font-size: 27px !important;

    font-weight: 600 !important;

    letter-spacing: 1px !important;

    line-height: 1.5 !important;

    text-transform: none !important;
}


/* ================= OPEN DAILY ================= */

.bmi-phone-caption {
    font-size: 13px !important;

    font-weight: 500 !important;

    letter-spacing: 1px !important;

    text-transform: none !important;
}


/* ================= MOBILE ================= */

@media (max-width: 575px) {

    .bmi-footer-inner {
        width: calc(100% - 10px) !important;
        max-width: 460px !important;

        padding: 35px 20px 30px !important;
    }

    .bmi-logo-wrap img {
        width: 165px !important;
    }

    .bmi-location {
        font-size: 14px !important;
    }

    .bmi-contact-grid {
        max-width: 400px !important;
    }

    .bmi-contact-item {
        min-height: 105px !important;
        padding: 15px 8px !important;
    }

    .bmi-label {
        font-size: 12px !important;
    }

    .bmi-contact-content a,
    .bmi-contact-content > span {
        font-size: 12px !important;
    }

    .bmi-phone {
        font-size: 22px !important;
    }

    .bmi-phone-caption {
        font-size: 11px !important;
    }
}

/* ==========================================
   BU.MI GATHERING SECTION
   Image 55% + Content 50%
========================================== */

.gathering-section {
    position: relative;
    overflow: hidden;
}

.gathering-section .outer-container {
    width: 100%;
    max-width: 100%;
    padding: 0;
}

.gathering-section .row {
    display: flex;
    align-items: stretch;
    margin: 0;
}

/* IMAGE - 55% */
.gathering-section .image-col {
    flex: 0 0 55%;
    max-width: 55%;
    width: 55%;
    padding: 0;
    position: relative;
    z-index: 1;
}

.gathering-section .image-col .inner {
    height: 100%;
    min-height: 650px;
    position: relative;
}

.gathering-section .image-col .image-layer {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
}

.gathering-section .image-col .image {
    display: none;
}

.gathering-section .image-col img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* CONTENT - 50% */
.gathering-section .content-col {
    flex: 0 0 50%;
    max-width: 50%;
    width: 50%;
    padding: 0;
    margin-left: -5%;
    position: relative;
    z-index: 2;
}

.gathering-section .content-col .inner {
    height: 100%;
    display: flex;
    align-items: center;
}

.gathering-section .content-box {
    width: 100%;
    padding: 80px 8%;
}

.gathering-section .title-box {
    max-width: 720px;
    margin: 0 auto;
}

.gathering-section .subtitle {
    margin-bottom: 15px;
}

.gathering-section .subtitle span {
    font-size: 16px;
    letter-spacing: 1px;
}

.gathering-section h2 {
    margin: 15px auto 25px;
    max-width: 650px;
    line-height: 1.15;
}

.gathering-section .text {
    max-width: 650px;
    margin: 0 auto;
    line-height: 1.8;
}

.gathering-section .link-box {
    text-align: center;
    margin-top: 35px;
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 991px) {

    .gathering-section .row {
        display: block;
    }

    .gathering-section .image-col {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }

    .gathering-section .image-col .inner {
        min-height: 500px;
    }

    .gathering-section .content-col {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
        margin-left: 0;
    }

    .gathering-section .content-box {
        padding: 70px 8%;
    }
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .gathering-section .image-col .inner {
        min-height: 380px;
    }

    .gathering-section .content-box {
        padding: 55px 25px;
    }

    .gathering-section h2 {
        font-size: 32px;
    }

    .gathering-section .text {
        font-size: 15px;
        line-height: 1.7;
    }

    .gathering-section .link-box {
        margin-top: 30px;
    }
}


/* =========================================
   BU.MI - PRIVACY POLICY
   EARTHY / PREMIUM THEME
========================================= */

.privacy-policy-section {
    margin-top: 100px;
    padding: 80px 0 110px;
    background: #f5f0e8;
    color: #2f2924;
}


/* =========================================
   HEADING
========================================= */

.privacy-policy-heading {
    max-width: 900px;
    margin: 0 auto 65px;
    text-align: center;
}

.privacy-eyebrow {
    display: inline-block;
    margin-bottom: 15px;
    color: #7C4732;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.privacy-policy-heading h1 {
    margin: 0 0 20px;
    color: #29231f;
    font-size: 54px;
    line-height: 1.15;
    font-weight: 500;
}

.privacy-policy-heading p {
    max-width: 760px;
    margin: 0 auto;
    color: #000;
    font-size: 17px;
    line-height: 1.9;
}


/* =========================================
   CONTENT
========================================= */

.privacy-policy-content {
    max-width: 1000px;
    margin: 0 auto;
}

.privacy-policy-block {
    margin-bottom: 38px;
    padding-bottom: 38px;
    border-bottom: 1px solid rgba(78, 62, 49, 0.16);
}

.privacy-policy-block h2 {
    margin: 0 0 16px;
    color: #342b25;
    font-size: 25px;
    line-height: 1.35;
    font-weight: 500;
}

.privacy-policy-block p {
    margin: 0 0 16px;
    color: #000;
    font-size: 16px;
    line-height: 1.85;
}

.privacy-policy-block p:last-child {
    margin-bottom: 0;
}


/* =========================================
   LIST
========================================= */

.privacy-policy-block ul {
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}

.privacy-policy-block ul li {
    position: relative;
    margin-bottom: 11px;
    padding-left: 25px;
    color: #000;
    font-size: 16px;
    line-height: 1.7;
}

.privacy-policy-block ul li::before {
    content: "";
    position: absolute;
    top: 11px;
    left: 3px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #7C4732;
}


/* =========================================
   CONTACT BOX
========================================= */

.privacy-contact-box {
    max-width: 100%;
    margin-top: 55px;
    padding: 50px 55px;
    text-align: center;
    background: #302923;
    border: 1px solid rgba(154, 118, 80, 0.35);
}

.privacy-contact-box .privacy-eyebrow {
    color: #c5a47b;
}

.privacy-contact-box h2 {
    margin: 0 0 15px;
    color: #f5f0e8;
    font-size: 32px;
    font-weight: 500;
}

.privacy-contact-box > p {
    max-width: 700px;
    margin: 0 auto 28px;
    color: rgba(245, 240, 232, 0.75);
    font-size: 16px;
    line-height: 1.8;
}

.privacy-contact-details p {
    margin: 8px 0;
    color: #f5f0e8;
    font-size: 16px;
}

.privacy-contact-details strong {
    color: #c5a47b;
    font-weight: 500;
}

.privacy-contact-details a {
    color: #f5f0e8;
    text-decoration: none;
    transition: all 0.3s ease;
}

.privacy-contact-details a:hover {
    color: #c5a47b;
}


/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 991px) {

    .privacy-policy-section {
        margin-top: 70px;
        padding: 65px 0 85px;
    }

    .privacy-policy-heading {
        margin-bottom: 50px;
    }

    .privacy-policy-heading h1 {
        font-size: 45px;
    }

    .privacy-policy-content {
        padding: 0 20px;
    }

    .privacy-contact-box {
        padding: 40px 35px;
    }
}


@media (max-width: 767px) {

    .privacy-policy-section {
        margin-top: 50px !important;
        padding: 50px 0 65px;
    }

    .privacy-policy-heading {
        margin-bottom: 40px;
        padding: 0 10px;
    }

    .privacy-policy-heading h1 {
        font-size: 36px;
    }

    .privacy-policy-heading p {
        font-size: 15px;
        line-height: 1.75;
    }

    .privacy-policy-block {
        margin-bottom: 28px;
        padding-bottom: 28px;
    }

    .privacy-policy-block h2 {
        font-size: 21px;
    }

    .privacy-policy-block p,
    .privacy-policy-block ul li {
        font-size: 15px;
        line-height: 1.75;
    }

    .privacy-contact-box {
        margin-top: 40px;
        padding: 35px 22px;
    }

    .privacy-contact-box h2 {
        font-size: 27px;
    }
}


@media (max-width: 480px) {

    .privacy-policy-heading h1 {
        font-size: 31px;
    }

    .privacy-eyebrow {
        font-size: 10px;
        letter-spacing: 2px;
    }

    .privacy-policy-block h2 {
        font-size: 20px;
    }

    .privacy-contact-box {
        padding: 30px 18px;
    }
}

/* =========================================
   BU.MI TERMS & CONDITIONS
========================================= */

.terms-section .privacy-policy-block h3 {
    margin: 28px 0 10px;
    color: #7C4732;
    font-size: 19px;
    line-height: 1.4;
    font-weight: 500;
}

.terms-section .privacy-policy-block h3:first-of-type {
    margin-top: 25px;
}

.terms-section .privacy-policy-block ul {
    margin-top: 12px;
}

.terms-section .privacy-policy-block ul li {
    color: #000;
}

.terms-section .privacy-policy-block ul li::before {
    background: #7C4732;
}


/* Better spacing for long sections */

.terms-section .privacy-policy-block {
    padding-bottom: 42px;
    margin-bottom: 42px;
}


/* Contact links */

.terms-section .privacy-contact-details a:hover {
    color: #c5a47b;
}


/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 767px) {

    .terms-section .privacy-policy-block h3 {
        margin-top: 23px;
        font-size: 18px;
    }

    .terms-section .privacy-policy-block {
        padding-bottom: 28px;
        margin-bottom: 28px;
    }
}