body:before {
  content: "xs";
  display: none;
  /* Prevent from displaying. */ }

@media (min-width: 576px) {
  body:before {
    content: "sm"; } }

@media (min-width: 768px) {
  body:before {
    content: "md"; } }

@media (min-width: 992px) {
  body:before {
    content: "lg"; } }

@media (min-width: 1200px) {
  body:before {
    content: "xl"; } }

body {
  font-family: "Overpass", sans-serif;
  font-size: 14px;
  font-weight: 300;
  -webkit-font-smoothing: antialiased; }
  body .font-playfair {
    font-family: "Playfair Display", sans-serif;
    font-weight: 400; }
  body .font-weight-900,
  body .btn {
    font-weight: 900;
    letter-spacing: .14em; }
  @media (min-width: 768px) {
    body {
      font-size: 16px; } }
  @media (min-width: 1200px) {
    body {
      font-size: 18px; } }

ul,
ol,
p,
h1,
h2,
h3,
h4,
form,
.form-group {
  margin: 0; }

/* #region body, page wrap, site notice */
html {
  height: 100%; }

body {
  background: #28322D; }
  body.noscroll {
    height: 100%;
    overflow: hidden;
    width: 100%; }
  body .h-100-percent {
    height: 100%; }
  body:not(.home) #page-wrap {
    margin-top: 100px; }
  body section.cms-element.header-hero {
    height: calc(100vh - 100px); }
  body.has-site-notice section.cms-element.header-hero {
    height: calc(100vh - 170px); }
  body.has-site-notice #page-wrap {
    margin-top: 170px; }
  body #page-wrap {
    overflow: hidden; }
  @media (min-width: 768px) {
    body:not(.home) #page-wrap {
      margin-top: 120px; }
    body.has-site-notice #page-wrap {
      margin-top: 154px; }
    body section.cms-element.header-hero {
      height: calc(100vh - 120px); }
    body.has-site-notice section.cms-element.header-hero {
      height: calc(100vh - 154px); } }
  @media (min-width: 992px) {
    body:not(.home) #page-wrap {
      margin-top: 130px; }
    body.has-site-notice #page-wrap {
      margin-top: 165px; }
    body section.cms-element.header-hero {
      height: calc(100vh - 130px); }
    body.has-site-notice section.cms-element.header-hero {
      height: calc(100vh - 165px); } }
  @media (min-width: 1200px) {
    body:not(.home) #page-wrap {
      margin-top: 150px; }
    body.has-site-notice #page-wrap {
      margin-top: 187px; }
    body section.cms-element.header-hero {
      height: calc(100vh - 150px); }
    body.has-site-notice section.cms-element.header-hero {
      height: calc(100vh - 187px); } }

/* #endregion body, page wrap, site notice */
/* #region colors */
.color-brown1 {
  color: #9F5639; }

.color-green2,
body {
  color: #28322D; }

.color-green3 {
  color: #1F2321; }

.color-green4 {
  color: #86A884; }

.color-red1 {
  color: #AD123A; }

.color-white {
  color: white; }

.bg-color-cream1 {
  background-color: #E2E3DC; }

.bg-color-green1 {
  background-color: #404B45; }

.bg-color-green2 {
  background-color: #28322D; }

.bg-color-green3 {
  background-color: #1F2321; }

.bg-color-green4 {
  background-color: #86A884; }

.bg-color-grey1 {
  background-color: #474747; }

.bg-color-cream1-to-green2 {
  background: linear-gradient(90deg, #E2E3DC 50%, #28322D 50%); }

/* #endregion colors */
/* #region links */
a.link-inline,
.text-editor-content p a:not(.btn) {
  color: #AD123A;
  font-weight: 900;
  text-decoration: underline; }

.btn {
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1.75px; }

.btn-primary,
header#header-site a.book-a-table {
  background: none;
  border-radius: 0;
  font-size: 14px;
  letter-spacing: 1.75px;
  display: inline-block;
  border: 2px solid white;
  border-bottom-width: 5px;
  padding: 14px 18px 13px; }
  .btn-primary.color-red1,
  header#header-site a.book-a-table.color-red1 {
    color: #AD123A;
    border-color: #AD123A; }
  .btn-primary.color-green1,
  header#header-site a.book-a-table.color-green1 {
    color: #404B45;
    border-color: #404B45; }
  .btn-primary:hover,
  header#header-site a.book-a-table:hover {
    color: #AD123A;
    border-color: #AD123A;
    background: transparent; }
  @media (min-width: 1200px) {
    .btn-primary,
    header#header-site a.book-a-table {
      font-size: 16px;
      letter-spacing: 2px; } }

.btn-bookmark {
  background: none;
  border-radius: 0;
  font-size: 12px;
  letter-spacing: 1.5px;
  display: inline-block;
  border: 1px solid #474747;
  padding: 10px;
  position: relative;
  z-index: 1; }
  @media (min-width: 1200px) {
    .btn-bookmark {
      font-size: 14px;
      letter-spacing: 1.75px;
      padding: 20px; } }
  .btn-bookmark:hover {
    color: white;
    border: 1px solid white;
    transition: 0.2s;
    z-index: 2; }

.btn-icon {
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1.75px;
  padding-left: 0;
  padding-right: 0; }
  .btn-icon svg {
    font-size: 20px;
    vertical-align: -5px; }
  .btn-icon.btn-icon-left svg {
    margin-right: 5px; }
  .btn-icon.btn-icon-right svg {
    margin-left: 5px; }
  @media (min-width: 1200px) {
    .btn-icon {
      font-size: 16px; } }

/* #endregion links */
/* #region forms */
.form-group label {
  text-transform: uppercase;
  font-family: "Overpass", sans-serif;
  font-weight: 900;
  font-size: 14px;
  letter-spacing: 1.7px;
  line-height: 16px; }
  .form-group label.error {
    color: #AD123A !important;
    font-size: 80% !important; }

.form-group .form-control {
  border: none;
  outline: none;
  border-radius: 0;
  padding: 10px 15px;
  height: 42px; }

.form-group.checkbox {
  margin-top: 0;
  padding-left: 30px;
  min-height: 25px;
  position: relative; }
  .form-group.checkbox input[type="checkbox"] {
    position: absolute;
    width: 1px;
    height: 1px;
    top: 0;
    left: 0; }
  .form-group.checkbox input[type="checkbox"]:focus + label::before {
    outline: 0 !important;
    outline-offset: 0 !important; }
  .form-group.checkbox label {
    display: inline-block;
    padding-left: 5px;
    font-weight: unset;
    letter-spacing: 0.5px;
    text-transform: none;
    font-size: 12px; }
    .form-group.checkbox label:before, .form-group.checkbox label:after {
      display: none;
      font-family: 'Font Awesome 5 Pro';
      content: "\f04d";
      font-weight: 300;
      font-size: 24px; }
    .form-group.checkbox label:after {
      content: "\f14a"; }
    .form-group.checkbox label svg {
      position: absolute;
      top: 3px;
      left: 0;
      font-size: 24px; }
    .form-group.checkbox label svg.fa-f14a {
      display: none; }
    @media (min-width: 768px) {
      .form-group.checkbox label {
        font-size: 14px; } }
  .form-group.checkbox input[type="checkbox"] {
    z-index: 1;
    opacity: 0;
    width: 1px; }
    .form-group.checkbox input[type="checkbox"]:checked + label svg.fa-f04d {
      display: none; }
    .form-group.checkbox input[type="checkbox"]:checked + label svg.fa-f14a {
      display: inline-block; }
    .form-group.checkbox input[type="checkbox"]:focus + label:before {
      outline: 0 !important;
      outline-offset: 0 !important; }
    .form-group.checkbox input[type="checkbox"]:disabled + label {
      opacity: 0.65; }
    .form-group.checkbox input[type="checkbox"]:disabled + label:before {
      background-color: #eeeeee;
      cursor: not-allowed; }

.form-group.radio .form-sub-group input[type="radio"] {
  position: absolute;
  width: 1px;
  height: 1px;
  top: 0;
  left: 0; }

.form-group.radio .form-sub-group input[type="radio"]:focus + label::before {
  outline: 0 !important;
  outline-offset: 0 !important; }

.form-group.radio .form-sub-group label {
  display: inline-block;
  margin-left: 30px;
  min-height: 25px;
  text-transform: none;
  letter-spacing: 0;
  font-size: 14px;
  font-weight: 300;
  position: relative; }
  .form-group.radio .form-sub-group label:before, .form-group.radio .form-sub-group label:after {
    display: none;
    font-family: 'Font Awesome 5 Pro';
    content: "\f2f8";
    font-weight: 300;
    font-size: 24px; }
  .form-group.radio .form-sub-group label:after {
    content: "\f2f8";
    font-weight: 900; }
  .form-group.radio .form-sub-group label svg {
    position: absolute;
    top: -3px;
    left: -30px;
    font-size: 24px; }
  .form-group.radio .form-sub-group label svg[data-prefix="fas"] {
    display: none; }

.form-group.radio .form-sub-group input[type="radio"] {
  z-index: 1;
  opacity: 0;
  width: 1px; }
  .form-group.radio .form-sub-group input[type="radio"]:checked + label svg[data-prefix="fal"] {
    display: none; }
  .form-group.radio .form-sub-group input[type="radio"]:checked + label svg[data-prefix="fas"] {
    display: inline-block; }
  .form-group.radio .form-sub-group input[type="radio"]:focus + label:before {
    outline: 0 !important;
    outline-offset: 0 !important; }
  .form-group.radio .form-sub-group input[type="radio"]:disabled + label {
    opacity: 0.65; }
  .form-group.radio .form-sub-group input[type="radio"]:disabled + label:before {
    background-color: #eeeeee;
    cursor: not-allowed; }

.form-group .input-group .input-group-text {
  border: none;
  border-radius: 0;
  background-color: white;
  padding: .375rem; }

.form-group .datepicker-wrap input {
  background-color: white; }

.form-group .selectpicker-wrap .bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn) {
  width: 100%;
  position: relative;
  flex: 1 1 0%;
  min-width: 0;
  margin-bottom: 0; }
  .form-group .selectpicker-wrap .bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn) .dropdown-toggle {
    border: none;
    border-radius: 0;
    background-color: white;
    font-weight: 300;
    text-transform: none;
    font-size: 16px;
    letter-spacing: 0; }

.form-group .bootstrap-select .dropdown-toggle {
  padding: 10px 15px;
  height: 42px; }

.form-group .bootstrap-select .dropdown-menu .inner {
  max-height: 200px !important; }

.form-group .bootstrap-datetimepicker-widget td {
  color: #404B45; }
  .form-group .bootstrap-datetimepicker-widget td.today {
    background-color: #E2E3DC;
    color: #404B45; }
  .form-group .bootstrap-datetimepicker-widget td.active {
    background-color: #404B45;
    color: white; }
  .form-group .bootstrap-datetimepicker-widget td.disabled {
    color: #E2E3DC; }

@media (min-width: 768px) {
  .form-group label {
    font-size: 13px; } }

@media (min-width: 1200px) {
  .form-group .form-control,
  .form-group .bootstrap-select .dropdown-toggle {
    height: 50px; }
  .form-group label {
    font-size: 14px;
    letter-spacing: 1.75px; } }

/* #endregion forms */
/* #region text-editor-content */
.text-editor-content h2 {
  font-family: "Overpass", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  color: #9F5639;
  font-size: 12px;
  letter-spacing: 1.7px;
  line-height: 16px; }

.text-editor-content h3 {
  font-weight: 900;
  font-size: inherit; }

.text-editor-content h2 + h3,
.text-editor-content h3 + p,
.text-editor-content p + h3,
.text-editor-content ul + h3,
.text-editor-content ol + h3,
.text-editor-content p + p,
.text-editor-content p + ul,
.text-editor-content ul + p,
.text-editor-content p + ol,
.text-editor-content ol + p {
  margin-top: 25px; }

.text-editor-content p + h2,
.text-editor-content ul + h2,
.text-editor-content ol + h2 {
  margin-top: 40px; }

.text-editor-content b, .text-editor-content strong {
  font-weight: 900; }

@media (min-width: 768px) {
  .text-editor-content h2 {
    font-size: 13px; }
  .text-editor-content h2 + h3,
  .text-editor-content h3 + p,
  .text-editor-content p + h3,
  .text-editor-content ul + h3,
  .text-editor-content ol + h3,
  .text-editor-content p + p,
  .text-editor-content p + ul,
  .text-editor-content ul + p,
  .text-editor-content p + ol,
  .text-editor-content ol + p {
    margin-top: 30px; }
  .text-editor-content p + h2,
  .text-editor-content ul + h2,
  .text-editor-content ol + h2 {
    margin-top: 60px; } }

@media (min-width: 1200px) {
  .text-editor-content h2 {
    font-size: 14px;
    letter-spacing: 1.75px; }
  .text-editor-content h2 + h3,
  .text-editor-content h3 + p,
  .text-editor-content p + h3,
  .text-editor-content ul + h3,
  .text-editor-content ol + h3,
  .text-editor-content p + p,
  .text-editor-content p + ul,
  .text-editor-content ul + p,
  .text-editor-content p + ol,
  .text-editor-content ol + p {
    margin-top: 40px; }
  .text-editor-content p + h2,
  .text-editor-content ul + h2,
  .text-editor-content ol + h2 {
    margin-top: 120px; } }

/* #endregion forms */
/* #region modals */
.modal .modal-body {
  padding: 25px; }

.modal .close-modal {
  position: absolute;
  top: 15px;
  right: 15px;
  color: #404B45; }
  .modal .close-modal:hover {
    color: #AD123A; }

.modal .title {
  font-size: 24px;
  line-height: 30px; }

.modal .text-editor-content {
  margin-top: 25px; }

@media (min-width: 768px) {
  .modal .modal-body {
    padding: 30px; }
  .modal .close-modal {
    top: 20px;
    right: 20px; }
  .modal .title {
    font-size: 28px;
    line-height: 32px; }
  .modal .text-editor-content {
    margin-top: 30px; } }

@media (min-width: 1200px) {
  .modal .modal-body {
    padding: 40px; }
  .modal .close-modal {
    top: 30px;
    right: 30px; }
  .modal .title {
    font-size: 45px;
    line-height: 50px; }
  .modal .text-editor-content {
    margin-top: 40px; } }

/* #endregion modals */
/* #region flashMessage */
#flashMessage {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1031; }

/* #endregion flashMessage */
/* #region popovers */
span[data-toggle=popover]:focus {
  outline: none; }

/* #endregion popovers */
/* #region global styles */
section#site-notice #site-notice-bar {
  padding-top: 10px;
  padding-bottom: 5px; }
  section#site-notice #site-notice-bar p {
    font-size: 14px; }
  section#site-notice #site-notice-bar a:hover {
    color: #AD123A; }

@media (min-width: 768px) {
  section#site-notice #site-notice-bar {
    padding-top: 0;
    padding-bottom: 0; } }

body header#header-site {
  background-color: #28322D; }

header#header-site {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030; }
  header#header-site.open {
    bottom: 0;
    background-color: #28322D; }
  header#header-site > .container > .row.align-items-center,
  header#header-site .nav-collapse header > .row.align-items-center {
    min-height: 100px; }
  header#header-site .mobile-controls {
    position: relative;
    right: -8px; }
    header#header-site .mobile-controls li {
      margin-right: 0;
      margin-left: .5rem; }
  header#header-site .btn.control {
    font-size: 22px;
    color: white;
    width: 36px;
    padding: 7px 0; }
  header#header-site .nav-collapse ul li a {
    color: white; }
    header#header-site .nav-collapse ul li a:not(.book-a-table) {
      border-bottom: 2px solid transparent; }
    header#header-site .nav-collapse ul li a:hover {
      text-decoration: none; }
    header#header-site .nav-collapse ul li a:hover:not(.book-a-table) {
      text-decoration: none;
      opacity: .8;
      border-bottom-color: #AD123A;
      transition: 0.2s; }
    header#header-site .nav-collapse ul li a.selected:not(.book-a-table) {
      border-bottom: 2px solid #AD123A; }
    header#header-site .nav-collapse ul li a:not(.book-a-table):not(.terms-of-use):not(.privacy-policy) {
      font-size: 18px;
      letter-spacing: 2.25px; }
    header#header-site .nav-collapse ul li a.terms-of-use, header#header-site .nav-collapse ul li a.privacy-policy {
      font-size: 12px;
      letter-spacing: 1.5px; }
  @media (max-width: 992px) {
    header#header-site .mobile-controls .times {
      display: none; }
    header#header-site .nav-collapse {
      overflow: hidden;
      position: fixed;
      top: 100px;
      right: 0;
      bottom: 0;
      left: 0;
      background-color: #28322D;
      text-align: left;
      overflow-y: auto;
      visibility: hidden;
      opacity: 0;
      transition: visibility 0s .25s, opacity .25s ease-out; }
      header#header-site .nav-collapse .inner {
        padding-bottom: 30px; }
      header#header-site .nav-collapse ul.nav-menu-main {
        margin-top: 30px; }
        header#header-site .nav-collapse ul.nav-menu-main li + li:not(:last-child) {
          margin-top: 10px; }
        header#header-site .nav-collapse ul.nav-menu-main li a.book-a-table {
          margin-top: 10px;
          margin-bottom: 10px; }
        header#header-site .nav-collapse ul.nav-menu-main li a.terms-of-use, header#header-site .nav-collapse ul.nav-menu-main li a.privacy-policy {
          display: inline-block;
          margin-top: 7px; }
        header#header-site .nav-collapse ul.nav-menu-main li a.terms-of-use {
          margin-top: 10px; }
      header#header-site .nav-collapse ul.nav-menu-social {
        margin-top: 40px; }
        header#header-site .nav-collapse ul.nav-menu-social li + li {
          margin-left: 10px; }
        header#header-site .nav-collapse ul.nav-menu-social li a {
          color: #9F5639; }
    header#header-site.open .mobile-controls .utensils,
    header#header-site.open .mobile-controls .bars {
      display: none; }
    header#header-site.open .mobile-controls .times {
      display: inline-block; }
    header#header-site.open .nav-collapse {
      visibility: visible;
      opacity: 1;
      transition: visibility 0s, opacity .25s ease-out; } }
  @media (min-width: 576px) {
    header#header-site .nav-collapse .inner {
      max-width: 510px;
      margin: 0 auto; } }
  @media (min-width: 768px) {
    header#header-site {
      transition: max-height 0.2s; }
      header#header-site > .container > .row.align-items-center,
      header#header-site .nav-collapse header > .row.align-items-center {
        min-height: 120px; }
      header#header-site.scrolled-down > .container .row {
        min-height: 95px;
        transition: min-height 0.2s; }
      header#header-site img {
        width: 80px; }
      header#header-site .nav-collapse .inner {
        max-width: 690px;
        margin: 0 auto; }
      header#header-site .nav-collapse ul.nav-menu-main {
        margin-top: 45px; }
        header#header-site .nav-collapse ul.nav-menu-main li + li:not(:last-child) {
          margin-top: 14px; }
        header#header-site .nav-collapse ul.nav-menu-main li a:not(.book-a-table):not(.terms-of-use):not(.privacy-policy) {
          font-size: 22px;
          letter-spacing: 2.75px; }
        header#header-site .nav-collapse ul.nav-menu-main li a.terms-of-use, header#header-site .nav-collapse ul.nav-menu-main li a.privacy-policy {
          font-size: 14px;
          letter-spacing: 1.75px; }
        header#header-site .nav-collapse ul.nav-menu-main li a.privacy-policy {
          margin-top: 15px; }
      header#header-site .nav-collapse ul.nav-menu-social {
        margin-top: 70px; } }
  @media (min-width: 992px) {
    header#header-site > .container > .row.align-items-center,
    header#header-site .nav-collapse header > .row.align-items-center {
      min-height: 130px; }
    header#header-site img {
      width: 90px; }
    header#header-site .nav-collapse .inner {
      max-width: none;
      margin: 0 auto; }
    header#header-site .nav-collapse ul.nav-menu-main {
      padding-left: 0;
      list-style: none;
      margin-top: 0; }
      header#header-site .nav-collapse ul.nav-menu-main li {
        display: inline-block; }
        header#header-site .nav-collapse ul.nav-menu-main li + li:not(:last-child) {
          margin-top: 0; }
        header#header-site .nav-collapse ul.nav-menu-main li a:not(.book-a-table):not(.terms-of-use):not(.privacy-policy) {
          font-size: 14px;
          letter-spacing: 1.75px;
          margin-right: 30px; }
        header#header-site .nav-collapse ul.nav-menu-main li a.terms-of-use, header#header-site .nav-collapse ul.nav-menu-main li a.privacy-policy {
          display: none; } }
  @media (min-width: 1200px) {
    header#header-site > .container > .row.align-items-center,
    header#header-site .nav-collapse header > .row.align-items-center {
      min-height: 150px; }
    header#header-site.scrolled-down img, header#header-site.scrolled-up img {
      transition: min-height 0.2s; }
    header#header-site.scrolled-down > .container .row, header#header-site.scrolled-up > .container .row {
      min-height: 110px;
      transition: min-height 0.2s; }
      header#header-site.scrolled-down > .container .row img, header#header-site.scrolled-up > .container .row img {
        width: 70px;
        transition: width 0.2s; }
    header#header-site img {
      width: 110px;
      transition: min-height 0.2s; }
    header#header-site .nav-collapse ul.nav-menu-main li a:not(.book-a-table):not(.terms-of-use):not(.privacy-policy), header#header-site .nav-collapse ul.nav-menu-main li a.book-a-table {
      font-size: 16px;
      letter-spacing: 2px; } }

footer#footer-site section.top {
  padding-top: 20px;
  padding-bottom: 15px; }
  footer#footer-site section.top img {
    width: 60px; }
  footer#footer-site section.top ul li + li {
    margin-top: 10px; }
  footer#footer-site section.top ul.nav-main-footer a {
    color: white;
    font-size: 12px;
    letter-spacing: 1.5px;
    line-height: 22px; }
    footer#footer-site section.top ul.nav-main-footer a:hover {
      opacity: .9;
      color: #86A884; }
  footer#footer-site section.top .form-wrap h2 {
    font-size: 12px;
    letter-spacing: 1.5px; }
  footer#footer-site section.top .form-wrap p {
    font-size: 12px;
    line-height: 18px;
    margin-top: 12px; }
  footer#footer-site section.top .form-wrap form {
    margin-top: 12px; }
    footer#footer-site section.top .form-wrap form .col-lg-6 + .col-lg-6,
    footer#footer-site section.top .form-wrap form .col-lg-12 {
      margin-top: 10px; }
    footer#footer-site section.top .form-wrap form .btn {
      color: white; }

footer#footer-site section.bottom {
  padding-top: 40px;
  padding-bottom: 30px; }
  footer#footer-site section.bottom svg {
    color: #9F5639; }
  footer#footer-site section.bottom .col-1 {
    flex: 0 0 45px;
    max-width: 45px;
    padding-right: 0; }
    footer#footer-site section.bottom .col-1 svg {
      font-size: 24px; }
  footer#footer-site section.bottom .col-11 {
    flex: 0 0 calc(100% - 45px);
    max-width: calc(100% - 45px);
    padding-left: 0; }
  footer#footer-site section.bottom p {
    font-size: 12px;
    line-height: 18px; }
    footer#footer-site section.bottom p a {
      color: white; }
  footer#footer-site section.bottom .addthis_toolbox a {
    margin-left: 3px; }
  footer#footer-site section.bottom .addthis_toolbox svg {
    font-size: 20px; }
  footer#footer-site section.bottom p#precept-link {
    margin-top: 30px;
    opacity: .8; }
    footer#footer-site section.bottom p#precept-link a {
      text-decoration: underline; }

@media (max-width: 767px) {
  footer#footer-site section.top ul.nav-main-footer {
    margin-top: 25px; }
  footer#footer-site section.top .form-wrap h2 {
    margin-top: 40px; }
  footer#footer-site section.bottom .col-12 {
    margin-bottom: 15px; } }

@media (min-width: 768px) {
  footer#footer-site section.top {
    padding-top: 45px;
    padding-bottom: 25px; }
    footer#footer-site section.top ul.nav-main-footer {
      margin-top: -7px;
      -webkit-columns: 2;
         -moz-columns: 2;
              columns: 2;
      width: 95%; }
      footer#footer-site section.top ul.nav-main-footer a {
        line-height: 30px; }
  footer#footer-site section.bottom {
    padding-top: 35px;
    padding-bottom: 30px; }
    footer#footer-site section.bottom .col-md-4 {
      padding-left: 30px; } }

@media (min-width: 992px) {
  footer#footer-site section.top {
    padding-top: 45px;
    padding-bottom: 35px; }
    footer#footer-site section.top img {
      width: 70px; }
    footer#footer-site section.top ul.nav-main-footer {
      width: 90%; }
    footer#footer-site section.top .form-wrap form .col-lg-6 + .col-lg-6 {
      margin-top: 0; }
  footer#footer-site section.bottom {
    padding-top: 35px;
    padding-bottom: 30px; }
    footer#footer-site section.bottom .col-md-4 {
      padding-left: 15px; } }

@media (min-width: 1200px) {
  footer#footer-site section.top {
    padding-top: 85px;
    padding-bottom: 70px; }
    footer#footer-site section.top img {
      width: 110px; }
    footer#footer-site section.top ul.nav-main-footer {
      width: 85%; }
      footer#footer-site section.top ul.nav-main-footer a {
        font-size: 14px;
        letter-spacing: 1.75px;
        line-height: 32px; }
    footer#footer-site section.top .form-wrap h2 {
      font-size: 14px;
      letter-spacing: 1.75px; }
    footer#footer-site section.top .form-wrap p {
      font-size: 14px; }
    footer#footer-site section.top .form-wrap form {
      margin-top: 20px; }
      footer#footer-site section.top .form-wrap form .row {
        align-items: center !important; }
        footer#footer-site section.top .form-wrap form .row .col-xl-5 {
          flex: 0 0 calc(50% - 70px);
          max-width: calc(50% - 70px); }
        footer#footer-site section.top .form-wrap form .row .col-xl-2 {
          padding-left: 0;
          margin-top: 0;
          flex: 0 0 140px;
          max-width: 140px; }
  footer#footer-site section.bottom {
    padding-top: 35px;
    padding-bottom: 30px; }
    footer#footer-site section.bottom p {
      font-size: 14px; }
    footer#footer-site section.bottom .addthis_toolbox a {
      margin-left: 5px; }
    footer#footer-site section.bottom .addthis_toolbox svg {
      font-size: 24px; }
    footer#footer-site section.bottom p#precept-link {
      font-size: 14px; } }

/* #endregion global styles */
/* #region cms elements */
section.cms-element.body-text-editor {
  position: relative;
  z-index: 0;
  padding-top: 60px;
  padding-bottom: 60px; }
  section.cms-element.body-text-editor:before {
    content: '';
    display: block;
    width: 50%;
    height: 80px;
    position: absolute;
    top: 0;
    right: 0;
    background: #474747;
    z-index: 1; }
  section.cms-element.body-text-editor:after {
    content: '';
    display: block;
    width: 90%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #E2E3DC;
    z-index: 2; }
  section.cms-element.body-text-editor .container {
    position: relative;
    z-index: 3; }
  @media (min-width: 768px) {
    section.cms-element.body-text-editor {
      padding-top: 60px;
      padding-bottom: 80px; }
      section.cms-element.body-text-editor:after {
        width: 85%; } }
  @media (min-width: 992px) {
    section.cms-element.body-text-editor {
      padding-top: 80px;
      padding-bottom: 100px; }
      section.cms-element.body-text-editor:after {
        width: 80%; } }
  @media (min-width: 1200px) {
    section.cms-element.body-text-editor {
      padding-top: 80px;
      padding-bottom: 140px; }
      section.cms-element.body-text-editor:after {
        width: 80%; } }

section.cms-element.custom-opening-times-home {
  position: relative;
  padding-top: 120px;
  padding-bottom: 60px;
  z-index: 0; }
  section.cms-element.custom-opening-times-home .container {
    position: relative;
    z-index: 2; }
    section.cms-element.custom-opening-times-home .container h2 {
      font-size: 12px;
      letter-spacing: 1.7px;
      line-height: 16px; }
    section.cms-element.custom-opening-times-home .container h2 + p {
      font-size: 24px;
      line-height: 30px;
      margin-top: 25px; }
    section.cms-element.custom-opening-times-home .container .opening-times,
    section.cms-element.custom-opening-times-home .container a.btn {
      margin-top: 40px; }
    section.cms-element.custom-opening-times-home .container .opening-times {
      line-height: 30px; }
      section.cms-element.custom-opening-times-home .container .opening-times .text-uppercase {
        font-size: 12px;
        letter-spacing: 1.7px;
        white-space: nowrap; }
    section.cms-element.custom-opening-times-home .container .img-wrap {
      position: absolute;
      width: 250px;
      top: -290px;
      right: 0; }
  @media (max-width: 767px) {
    section.cms-element.custom-opening-times-home .col-md-2,
    section.cms-element.custom-opening-times-home .col-md-4 {
      margin-bottom: 25px; } }
  @media (min-width: 768px) {
    section.cms-element.custom-opening-times-home {
      padding-top: 80px;
      padding-bottom: 80px; }
      section.cms-element.custom-opening-times-home:after {
        content: '';
        display: block;
        width: 20%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #28322D;
        z-index: 1; }
      section.cms-element.custom-opening-times-home .container h2 {
        font-size: 13px; }
      section.cms-element.custom-opening-times-home .container h2 + p {
        font-size: 28px;
        line-height: 32px;
        margin-top: 30px; }
      section.cms-element.custom-opening-times-home .container .opening-times .text-uppercase {
        font-size: 13px; }
      section.cms-element.custom-opening-times-home .container .img-wrap {
        width: 315px;
        top: -160px;
        right: -40px; } }
  @media (min-width: 992px) {
    section.cms-element.custom-opening-times-home:after {
      width: 25%; }
    section.cms-element.custom-opening-times-home .container .img-wrap {
      width: 415px;
      top: -160px;
      right: -45px; } }
  @media (min-width: 1200px) {
    section.cms-element.custom-opening-times-home {
      padding-top: 120px;
      padding-bottom: 100px; }
      section.cms-element.custom-opening-times-home .container h2 {
        font-size: 14px;
        letter-spacing: 1.75px; }
      section.cms-element.custom-opening-times-home .container h2 + p {
        font-size: 45px;
        line-height: 50px;
        margin-top: 45px; }
      section.cms-element.custom-opening-times-home .container .opening-times .text-uppercase {
        font-size: 14px;
        letter-spacing: 1.75px; }
      section.cms-element.custom-opening-times-home .container a.btn {
        margin-top: 60px; }
      section.cms-element.custom-opening-times-home .container .img-wrap {
        width: 600px;
        top: -200px;
        right: -110px; } }

section.cms-element.custom-opening-times-map {
  position: relative;
  padding-top: 120px;
  padding-bottom: 60px;
  z-index: 0; }
  section.cms-element.custom-opening-times-map .container {
    position: relative;
    z-index: 2; }
    section.cms-element.custom-opening-times-map .container a.btn {
      margin-top: 40px; }
    section.cms-element.custom-opening-times-map .container .opening-times {
      line-height: 30px; }
      section.cms-element.custom-opening-times-map .container .opening-times .text-uppercase {
        font-size: 12px;
        letter-spacing: 1.7px;
        white-space: nowrap; }
    section.cms-element.custom-opening-times-map .container .map-wrap {
      position: absolute;
      width: 250px;
      top: -290px;
      right: 0; }
  @media (max-width: 767px) {
    section.cms-element.custom-opening-times-map .col-md-2,
    section.cms-element.custom-opening-times-map .col-md-4 {
      margin-bottom: 25px; } }
  @media (min-width: 768px) {
    section.cms-element.custom-opening-times-map {
      padding-top: 80px;
      padding-bottom: 80px; }
      section.cms-element.custom-opening-times-map:after {
        content: '';
        display: block;
        width: 20%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #28322D;
        z-index: 1; }
      section.cms-element.custom-opening-times-map .container .opening-times .text-uppercase {
        font-size: 13px; }
      section.cms-element.custom-opening-times-map .container .map-wrap {
        width: 315px;
        top: -285px;
        right: -40px; } }
  @media (min-width: 992px) {
    section.cms-element.custom-opening-times-map:after {
      width: 25%; }
    section.cms-element.custom-opening-times-map .container .map-wrap {
      width: 415px;
      top: -320px;
      right: -45px; } }
  @media (min-width: 1200px) {
    section.cms-element.custom-opening-times-map {
      padding-top: 120px;
      padding-bottom: 100px; }
      section.cms-element.custom-opening-times-map .container .opening-times .text-uppercase {
        font-size: 14px;
        letter-spacing: 1.75px; }
      section.cms-element.custom-opening-times-map .container a.btn {
        margin-top: 60px; }
      section.cms-element.custom-opening-times-map .container .map-wrap {
        width: 600px;
        top: -450px;
        right: -110px; } }

section.cms-element.error-404 {
  position: relative;
  z-index: 0;
  padding-top: 30px;
  padding-bottom: 140px; }
  section.cms-element.error-404:before {
    content: '';
    display: block;
    width: 80%;
    height: 90px;
    position: absolute;
    bottom: 0;
    right: 0;
    background: #474747;
    z-index: 1; }
  section.cms-element.error-404:after {
    content: '';
    display: block;
    width: 30%;
    height: calc(100% - 30px - 60px);
    position: absolute;
    top: 30px;
    right: 0;
    background: #86A884;
    z-index: 2; }
  section.cms-element.error-404 .container {
    position: relative;
    z-index: 3; }
    section.cms-element.error-404 .container p.label {
      font-size: 12px;
      letter-spacing: 1.7px;
      line-height: 16px; }
    section.cms-element.error-404 .container h1 {
      font-size: 24px;
      line-height: 30px;
      margin-top: 25px; }
    section.cms-element.error-404 .container h1 + p {
      margin-top: 15px; }
    section.cms-element.error-404 .container a.btn {
      margin-top: 25px; }
    section.cms-element.error-404 .container a.btn-primary {
      margin-top: 20px; }
  @media (min-width: 768px) {
    section.cms-element.error-404 {
      padding-top: 40px;
      padding-bottom: 280px; }
      section.cms-element.error-404:before {
        width: 80%;
        height: 200px; }
      section.cms-element.error-404:after {
        width: 40%;
        height: calc(100% - 40px - 120px);
        top: 40px; }
      section.cms-element.error-404 .container p.label {
        font-size: 13px; }
      section.cms-element.error-404 .container h1 {
        font-size: 28px;
        line-height: 32px;
        margin-top: 30px; }
      section.cms-element.error-404 .container a.btn {
        margin-top: 40px; }
        section.cms-element.error-404 .container a.btn + .btn {
          margin-left: 30px; } }
  @media (min-width: 992px) {
    section.cms-element.error-404 {
      padding-top: 40px;
      padding-bottom: 300px; }
      section.cms-element.error-404:before {
        width: 80%;
        height: 200px; }
      section.cms-element.error-404:after {
        width: 50%;
        height: calc(100% - 40px - 120px);
        top: 40px; } }
  @media (min-width: 1200px) {
    section.cms-element.error-404 {
      padding-top: 60px;
      padding-bottom: 360px; }
      section.cms-element.error-404:before {
        width: 65%;
        height: 280px; }
      section.cms-element.error-404:after {
        width: 50%;
        height: calc(100% - 60px - 180px);
        top: 60px; }
      section.cms-element.error-404 .container p.label {
        font-size: 14px;
        letter-spacing: 1.75px; }
      section.cms-element.error-404 .container h1 {
        font-size: 45px;
        line-height: 50px;
        margin-top: 45px; } }

section.cms-element.form-contact {
  padding-top: 60px;
  padding-bottom: 60px; }
  section.cms-element.form-contact .container h2 {
    font-size: 24px;
    line-height: 30px;
    margin-top: 25px; }
  section.cms-element.form-contact .container form,
  section.cms-element.form-contact .container h2 + p {
    margin-top: 30px; }
  section.cms-element.form-contact .container .row + .row,
  section.cms-element.form-contact .container .form-group + .form-group {
    margin-top: 15px; }
  section.cms-element.form-contact .container .mailto-text {
    margin-top: 20px; }
    section.cms-element.form-contact .container .mailto-text a {
      color: inherit;
      text-decoration: underline;
      font-weight: 700; }
  @media (max-width: 767px) {
    section.cms-element.form-contact .col-md-6 + .col-md-6,
    section.cms-element.form-contact .btn-primary {
      margin-top: 15px; } }
  @media (min-width: 768px) {
    section.cms-element.form-contact {
      padding-top: 80px;
      padding-bottom: 80px; }
      section.cms-element.form-contact .container h2 {
        font-size: 28px;
        line-height: 32px;
        margin-top: 30px; }
      section.cms-element.form-contact .container h2 + p {
        max-width: 70%; }
      section.cms-element.form-contact .container textarea {
        min-height: 115px; }
      section.cms-element.form-contact .container .form-group.checkbox {
        margin-top: 13px; } }
  @media (min-width: 992px) {
    section.cms-element.form-contact {
      padding-top: 100px;
      padding-bottom: 100px; } }
  @media (min-width: 1200px) {
    section.cms-element.form-contact {
      padding-top: 160px;
      padding-bottom: 160px; }
      section.cms-element.form-contact .container h2 {
        font-size: 45px;
        line-height: 50px;
        margin-top: 45px; }
      section.cms-element.form-contact .container .row + .row {
        margin-top: 30px; }
      section.cms-element.form-contact .container form,
      section.cms-element.form-contact .container h2 + p {
        margin-top: 50px; }
        section.cms-element.form-contact .container form .form-group + .form-group,
        section.cms-element.form-contact .container h2 + p .form-group + .form-group {
          margin-top: 30px; }
        section.cms-element.form-contact .container form .form-group label,
        section.cms-element.form-contact .container h2 + p .form-group label {
          margin-bottom: 20px; }
        section.cms-element.form-contact .container form .form-group textarea,
        section.cms-element.form-contact .container h2 + p .form-group textarea {
          min-height: 187px; }
      section.cms-element.form-contact .container .mailto-text {
        margin-top: 40px; } }

section.cms-element.header-basic-plus-links {
  position: relative;
  z-index: 0;
  padding-top: 30px;
  padding-bottom: 60px; }
  section.cms-element.header-basic-plus-links:after {
    content: '';
    display: block;
    width: 45%;
    height: calc(100% - 30px);
    position: absolute;
    top: 30px;
    right: 0;
    background: #86A884;
    z-index: 1; }
  section.cms-element.header-basic-plus-links .container {
    position: relative;
    z-index: 2; }
    section.cms-element.header-basic-plus-links .container p.text-uppercase {
      font-size: 12px;
      letter-spacing: 1.7px;
      line-height: 16px; }
    section.cms-element.header-basic-plus-links .container h1 {
      font-size: 24px;
      line-height: 30px;
      margin-top: 25px; }
    section.cms-element.header-basic-plus-links .container ul {
      margin-top: 30px; }
      section.cms-element.header-basic-plus-links .container ul li {
        margin-top: -1px; }
  @media (min-width: 768px) {
    section.cms-element.header-basic-plus-links {
      padding-top: 40px;
      padding-bottom: 90px; }
      section.cms-element.header-basic-plus-links:after {
        width: 65%;
        top: 40px;
        height: calc(100% - 40px); }
      section.cms-element.header-basic-plus-links .container p.text-uppercase {
        font-size: 13px; }
      section.cms-element.header-basic-plus-links .container h1 {
        font-size: 28px;
        line-height: 32px;
        margin-top: 30px; }
      section.cms-element.header-basic-plus-links .container ul {
        margin-top: 40px; }
        section.cms-element.header-basic-plus-links .container ul li {
          display: inline-block;
          margin-top: 0;
          margin-left: -5px; } }
  @media (min-width: 992px) {
    section.cms-element.header-basic-plus-links {
      padding-bottom: 100px; }
      section.cms-element.header-basic-plus-links:after {
        width: 45%; } }
  @media (min-width: 1200px) {
    section.cms-element.header-basic-plus-links {
      padding-top: 60px;
      padding-bottom: 180px; }
      section.cms-element.header-basic-plus-links:after {
        width: 50%;
        top: 60px;
        height: calc(100% - 60px); }
      section.cms-element.header-basic-plus-links .container p.text-uppercase {
        font-size: 14px;
        letter-spacing: 1.75px; }
      section.cms-element.header-basic-plus-links .container h1 {
        font-size: 45px;
        line-height: 50px;
        margin-top: 45px; }
      section.cms-element.header-basic-plus-links .container ul {
        margin-top: 50px; }
        section.cms-element.header-basic-plus-links .container ul li {
          display: inline-block;
          margin-top: 0;
          margin-left: -5px; } }

body.page.about section.cms-element.header-basic-plus-links:after {
  background: #474747; }

body.page.contact section.cms-element.header-basic-plus-links {
  padding-top: 30px;
  padding-bottom: 40px;
  background: #E2E3DC;
  color: #28322D; }
  body.page.contact section.cms-element.header-basic-plus-links:after {
    background: #E2E3DC; }
  @media (min-width: 768px) {
    body.page.contact section.cms-element.header-basic-plus-links {
      padding-top: 60px;
      padding-bottom: 60px; }
      body.page.contact section.cms-element.header-basic-plus-links:after {
        height: 100%;
        width: 13%;
        top: 0;
        background: #28322D; } }
  @media (min-width: 992px) {
    body.page.contact section.cms-element.header-basic-plus-links {
      padding-top: 80px;
      padding-bottom: 100px; }
      body.page.contact section.cms-element.header-basic-plus-links:after {
        width: 25%; } }

section.cms-element.header-hero {
  background-size: cover;
  background-position: center; }
  section.cms-element.header-hero .container {
    position: relative;
    min-height: 450px; }
    section.cms-element.header-hero .container h1 {
      font-size: 38px;
      line-height: 40px; }
    section.cms-element.header-hero .container h1 + a.btn {
      margin-top: 30px; }
    section.cms-element.header-hero .container a.control-scroll-to-next {
      position: absolute;
      bottom: 25px;
      left: 15px;
      font-size: 10px;
      letter-spacing: 1.45px;
      line-height: 14px; }
  @media (max-width: 767px) {
    section.cms-element.header-hero .container a.control-scroll-to-next {
      padding-left: 30px;
      text-align: left;
      max-width: 145px; }
      section.cms-element.header-hero .container a.control-scroll-to-next svg {
        position: absolute;
        top: 8px;
        left: 0; } }
  @media (min-width: 768px) {
    section.cms-element.header-hero .container h1 {
      font-size: 56px;
      line-height: 60px; }
    section.cms-element.header-hero .container h1 + a.btn {
      margin-top: 40px; }
    section.cms-element.header-hero .container a.control-scroll-to-next {
      bottom: 45px;
      font-size: 12px;
      letter-spacing: 1.75px; } }
  @media (min-width: 1200px) {
    section.cms-element.header-hero .container h1 {
      font-size: 90px;
      line-height: 90px; }
    section.cms-element.header-hero .container h1 + a.btn {
      margin-top: 60px; }
    section.cms-element.header-hero .container a.control-scroll-to-next {
      bottom: 75px;
      font-size: 14px;
      line-height: 14px; } }

section.cms-element.heading-text-2buttons {
  position: relative;
  padding-top: 60px;
  padding-bottom: 165px; }
  section.cms-element.heading-text-2buttons h2 {
    font-size: 12px;
    letter-spacing: 1.7px;
    line-height: 16px; }
  section.cms-element.heading-text-2buttons h2 + p {
    font-size: 24px;
    line-height: 30px;
    margin-top: 25px; }
  section.cms-element.heading-text-2buttons a.btn {
    margin-top: 30px; }
  @media (min-width: 768px) {
    section.cms-element.heading-text-2buttons {
      padding-top: 100px;
      padding-bottom: 200px; }
      section.cms-element.heading-text-2buttons:after {
        content: '';
        display: block;
        width: 16.666%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #28322D; }
      section.cms-element.heading-text-2buttons h2 {
        font-size: 13px; }
      section.cms-element.heading-text-2buttons h2 + p {
        font-size: 28px;
        line-height: 32px;
        margin-top: 30px; }
      section.cms-element.heading-text-2buttons a.btn {
        margin-top: 40px; }
      section.cms-element.heading-text-2buttons br + a.btn {
        margin-left: 25px; } }
  @media (min-width: 992px) {
    section.cms-element.heading-text-2buttons {
      padding-top: 180px;
      padding-bottom: 280px; } }
  @media (min-width: 1200px) {
    section.cms-element.heading-text-2buttons {
      padding-top: 180px;
      padding-bottom: 340px; }
      section.cms-element.heading-text-2buttons h2 {
        font-size: 14px;
        letter-spacing: 1.75px; }
      section.cms-element.heading-text-2buttons h2 + p {
        font-size: 45px;
        line-height: 50px;
        margin-top: 45px; }
      section.cms-element.heading-text-2buttons a.btn {
        margin-top: 50px; }
      section.cms-element.heading-text-2buttons br + a.btn {
        margin-left: 30px; } }

body.page.terms-of-use section.cms-element.heading-text-2buttons,
body.page.privacy-policy section.cms-element.heading-text-2buttons {
  position: relative;
  z-index: 0;
  padding-top: 30px;
  padding-bottom: 60px;
  background-color: transparent;
  color: white; }
  body.page.terms-of-use section.cms-element.heading-text-2buttons:after,
  body.page.privacy-policy section.cms-element.heading-text-2buttons:after {
    content: '';
    display: block;
    width: 33%;
    height: calc(100% - 30px);
    position: absolute;
    z-index: 1;
    top: 30px;
    right: 0;
    background: #474747; }
  body.page.terms-of-use section.cms-element.heading-text-2buttons .container,
  body.page.privacy-policy section.cms-element.heading-text-2buttons .container {
    position: relative;
    z-index: 2; }
  @media (min-width: 768px) {
    body.page.terms-of-use section.cms-element.heading-text-2buttons,
    body.page.privacy-policy section.cms-element.heading-text-2buttons {
      padding-top: 40px;
      padding-bottom: 80px; }
      body.page.terms-of-use section.cms-element.heading-text-2buttons:after,
      body.page.privacy-policy section.cms-element.heading-text-2buttons:after {
        width: 67%;
        height: calc(100% - 40px);
        top: 40px; }
      body.page.terms-of-use section.cms-element.heading-text-2buttons .container .col-md-8,
      body.page.privacy-policy section.cms-element.heading-text-2buttons .container .col-md-8 {
        margin-left: 8.333333%; } }
  @media (min-width: 992px) {
    body.page.terms-of-use section.cms-element.heading-text-2buttons,
    body.page.privacy-policy section.cms-element.heading-text-2buttons {
      padding-top: 40px;
      padding-bottom: 100px; }
      body.page.terms-of-use section.cms-element.heading-text-2buttons:after,
      body.page.privacy-policy section.cms-element.heading-text-2buttons:after {
        width: 50%; } }
  @media (min-width: 1200px) {
    body.page.terms-of-use section.cms-element.heading-text-2buttons,
    body.page.privacy-policy section.cms-element.heading-text-2buttons {
      padding-top: 60px;
      padding-bottom: 100px; } }

section.cms-element.heading-text-button-plus-columns {
  padding-top: 120px;
  padding-bottom: 60px; }
  section.cms-element.heading-text-button-plus-columns h2,
  section.cms-element.heading-text-button-plus-columns h3 {
    font-size: 12px;
    letter-spacing: 1.7px;
    line-height: 16px; }
  section.cms-element.heading-text-button-plus-columns h2 + p {
    font-size: 24px;
    line-height: 30px;
    margin-top: 25px; }
  section.cms-element.heading-text-button-plus-columns h3 + p {
    margin-top: 10px; }
  section.cms-element.heading-text-button-plus-columns a.btn {
    margin-top: 30px; }
  section.cms-element.heading-text-button-plus-columns .item + .item {
    margin-top: 25px; }
  section.cms-element.heading-text-button-plus-columns .item .col-1 {
    flex: 0 0 70px;
    max-width: 70px; }
    section.cms-element.heading-text-button-plus-columns .item .col-1 .icon-wrap {
      width: 50px;
      height: 50px;
      text-align: center;
      font-size: 24px; }
      section.cms-element.heading-text-button-plus-columns .item .col-1 .icon-wrap svg {
        margin-top: 13px; }
    section.cms-element.heading-text-button-plus-columns .item .col-1 a:hover .icon-wrap {
      background-color: #AD123A; }
  section.cms-element.heading-text-button-plus-columns .item .col-11 {
    flex: 0 0 calc(100% - 70px);
    max-width: calc(100% - 70px); }
  @media (max-width: 767px) {
    section.cms-element.heading-text-button-plus-columns .col-md-6 {
      margin-top: 40px; } }
  @media (min-width: 768px) {
    section.cms-element.heading-text-button-plus-columns {
      padding-top: 125px;
      padding-bottom: 80px; }
      section.cms-element.heading-text-button-plus-columns h2,
      section.cms-element.heading-text-button-plus-columns h3 {
        font-size: 13px; }
      section.cms-element.heading-text-button-plus-columns h2 + p {
        font-size: 28px;
        line-height: 32px;
        margin-top: 30px; }
      section.cms-element.heading-text-button-plus-columns a.btn {
        margin-top: 40px; }
      section.cms-element.heading-text-button-plus-columns .item + .item {
        margin-top: 30px; } }
  @media (min-width: 992px) {
    section.cms-element.heading-text-button-plus-columns {
      padding-top: 140px;
      padding-bottom: 100px; }
      section.cms-element.heading-text-button-plus-columns .item + .item {
        margin-top: 35px; } }
  @media (min-width: 1200px) {
    section.cms-element.heading-text-button-plus-columns {
      padding-top: 200px;
      padding-bottom: 150px; }
      section.cms-element.heading-text-button-plus-columns h2 {
        font-size: 14px;
        letter-spacing: 1.75px; }
      section.cms-element.heading-text-button-plus-columns h2 + p {
        font-size: 45px;
        line-height: 50px;
        margin-top: 45px; }
      section.cms-element.heading-text-button-plus-columns a.btn {
        margin-top: 50px; }
      section.cms-element.heading-text-button-plus-columns .item + .item {
        margin-top: 50px; } }

section.cms-element.heading-text-editor {
  padding-top: 80px;
  padding-bottom: 80px; }
  section.cms-element.heading-text-editor h1, section.cms-element.heading-text-editor h2 {
    font-size: 12px;
    letter-spacing: 1.7px;
    line-height: 16px; }
  section.cms-element.heading-text-editor .text-editor-content {
    margin-top: 25px; }
    section.cms-element.heading-text-editor .text-editor-content h3,
    section.cms-element.heading-text-editor .text-editor-content blockquote {
      font-family: "Playfair Display", sans-serif;
      font-size: 24px;
      line-height: 30px; }
    section.cms-element.heading-text-editor .text-editor-content h3 + p,
    section.cms-element.heading-text-editor .text-editor-content p + p {
      margin-top: 15px; }
    section.cms-element.heading-text-editor .text-editor-content blockquote cite {
      font-style: normal;
      font-size: 75%; }
    section.cms-element.heading-text-editor .text-editor-content strong {
      font-weight: 700; }
    section.cms-element.heading-text-editor .text-editor-content a {
      color: inherit;
      text-decoration: underline;
      font-weight: 700; }
      section.cms-element.heading-text-editor .text-editor-content a:hover {
        color: #86A884; }
  @media (min-width: 768px) {
    section.cms-element.heading-text-editor {
      padding-top: 100px;
      padding-bottom: 100px; }
      section.cms-element.heading-text-editor h1, section.cms-element.heading-text-editor h2 {
        font-size: 13px; }
      section.cms-element.heading-text-editor .text-editor-content {
        margin-top: 30px; }
        section.cms-element.heading-text-editor .text-editor-content h3,
        section.cms-element.heading-text-editor .text-editor-content blockquote {
          font-size: 28px;
          line-height: 32px; }
        section.cms-element.heading-text-editor .text-editor-content h3 + p,
        section.cms-element.heading-text-editor .text-editor-content p + p {
          margin-top: 20px; } }
  @media (min-width: 992px) {
    section.cms-element.heading-text-editor {
      padding-top: 100px;
      padding-bottom: 100px; } }
  @media (min-width: 1200px) {
    section.cms-element.heading-text-editor {
      padding-top: 160px;
      padding-bottom: 160px; }
      section.cms-element.heading-text-editor h1, section.cms-element.heading-text-editor h2 {
        font-size: 14px;
        letter-spacing: 1.75px; }
      section.cms-element.heading-text-editor .text-editor-content {
        margin-top: 40px; }
        section.cms-element.heading-text-editor .text-editor-content h3,
        section.cms-element.heading-text-editor .text-editor-content blockquote {
          font-size: 45px;
          line-height: 50px; }
        section.cms-element.heading-text-editor .text-editor-content h3 + p,
        section.cms-element.heading-text-editor .text-editor-content p + p {
          margin-top: 30px; } }

body.page.home section.cms-element.heading-text-editor {
  padding-top: 60px;
  padding-bottom: 230px; }
  @media (min-width: 768px) {
    body.page.home section.cms-element.heading-text-editor {
      padding-top: 140px;
      padding-bottom: 140px; } }
  @media (min-width: 992px) {
    body.page.home section.cms-element.heading-text-editor {
      padding-top: 100px;
      padding-bottom: 180px; } }
  @media (min-width: 1200px) {
    body.page.home section.cms-element.heading-text-editor {
      padding-top: 160px;
      padding-bottom: 200px; } }

body.page.contact section.cms-element.heading-text-editor {
  padding-top: 30px;
  padding-bottom: 230px;
  text-align: left !important; }
  @media (min-width: 768px) {
    body.page.contact section.cms-element.heading-text-editor {
      padding-top: 40px;
      padding-bottom: 80px; }
      body.page.contact section.cms-element.heading-text-editor .offset-md-2.col-md-8 {
        margin-left: 0;
        flex: 0 0 83%;
        max-width: 83%; }
        body.page.contact section.cms-element.heading-text-editor .offset-md-2.col-md-8 .text-editor-content p {
          max-width: 330px; } }
  @media (min-width: 992px) {
    body.page.contact section.cms-element.heading-text-editor {
      padding-bottom: 100px; }
      body.page.contact section.cms-element.heading-text-editor .offset-lg-3.col-lg-6 {
        margin-left: 0;
        flex: 0 0 67%;
        max-width: 67%; }
        body.page.contact section.cms-element.heading-text-editor .offset-lg-3.col-lg-6 .text-editor-content p {
          max-width: 400px; } }
  @media (min-width: 1200px) {
    body.page.contact section.cms-element.heading-text-editor {
      padding-top: 60px;
      padding-bottom: 120px; }
      body.page.contact section.cms-element.heading-text-editor .offset-xl-2.col-xl-8 {
        margin-left: 0;
        flex: 0 0 83%;
        max-width: 83%; }
        body.page.contact section.cms-element.heading-text-editor .offset-xl-2.col-xl-8 .text-editor-content h3 + p {
          margin-top: 80px; }
        body.page.contact section.cms-element.heading-text-editor .offset-xl-2.col-xl-8 .text-editor-content p {
          max-width: 400px; } }

@media (max-width: 992px) {
  .page.about section.cms-element.heading-text-editor {
    padding-bottom: 0px; } }

section.cms-element.heading-text-editor-2buttons-image {
  position: relative;
  z-index: 1;
  padding-top: 140px;
  padding-bottom: 60px; }
  section.cms-element.heading-text-editor-2buttons-image:before {
    content: '';
    display: block;
    width: 75%;
    height: calc(100% - 60px);
    position: absolute;
    z-index: 1;
    top: 60px;
    right: 0;
    background: #86A884; }
  section.cms-element.heading-text-editor-2buttons-image.layout-img-left:before {
    background: #474747; }
  section.cms-element.heading-text-editor-2buttons-image:after {
    content: '';
    display: block;
    width: 100%;
    height: calc(100% - 370px);
    position: absolute;
    z-index: 2;
    top: 370px;
    left: 0;
    background: #E2E3DC; }
  section.cms-element.heading-text-editor-2buttons-image .container {
    position: relative;
    z-index: 3; }
    section.cms-element.heading-text-editor-2buttons-image .container h2 {
      font-size: 12px;
      letter-spacing: 1.7px;
      line-height: 16px; }
    section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content {
      margin-top: 25px; }
      section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content h3 {
        font-family: "Playfair Display", sans-serif;
        font-size: 24px;
        line-height: 30px; }
      section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content p strong {
        font-weight: 700; }
      section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content h3 + p,
      section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content p + p {
        margin-top: 20px; }
    section.cms-element.heading-text-editor-2buttons-image .container a.btn-icon {
      margin-top: 30px; }
    section.cms-element.heading-text-editor-2buttons-image .container a.btn-primary {
      margin-top: 15px; }
  @media (max-width: 767px) {
    section.cms-element.heading-text-editor-2buttons-image h2 {
      margin-top: 40px; } }
  @media (min-width: 768px) {
    section.cms-element.heading-text-editor-2buttons-image {
      padding-top: 240px;
      padding-bottom: 80px; }
      section.cms-element.heading-text-editor-2buttons-image:before {
        width: 35%;
        height: 500px;
        top: 80px;
        left: 0;
        right: auto; }
      section.cms-element.heading-text-editor-2buttons-image:after {
        width: 65%;
        height: calc(100% - 160px);
        top: 160px;
        left: auto;
        right: 0; }
      section.cms-element.heading-text-editor-2buttons-image.layout-img-right:before {
        left: auto;
        right: 0; }
      section.cms-element.heading-text-editor-2buttons-image.layout-img-right:after {
        left: 0;
        right: auto; }
      section.cms-element.heading-text-editor-2buttons-image.layout-img-right .col-md-6 {
        order: +1; }
      section.cms-element.heading-text-editor-2buttons-image.layout-img-right .col-md-5 {
        order: -1; }
      section.cms-element.heading-text-editor-2buttons-image .container h2 {
        font-size: 13px; }
      section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content {
        margin-top: 25px; }
        section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content a {
          color: #AD123A;
          font-weight: 700; }
        section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content h3 {
          font-size: 28px;
          line-height: 32px; }
        section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content h3 + p,
        section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content p + p {
          margin-top: 25px; }
      section.cms-element.heading-text-editor-2buttons-image .container a.btn-icon {
        margin-top: 40px; }
      section.cms-element.heading-text-editor-2buttons-image .container a.btn-primary {
        margin-top: 20px; } }
  @media (min-width: 992px) {
    section.cms-element.heading-text-editor-2buttons-image {
      padding-top: 260px;
      padding-bottom: 40px; }
      section.cms-element.heading-text-editor-2buttons-image:before {
        height: 520px;
        top: 100px; }
      section.cms-element.heading-text-editor-2buttons-image:after {
        height: calc(100% - 180px);
        top: 180px; }
      section.cms-element.heading-text-editor-2buttons-image .container a.btn {
        margin-top: 40px; }
      section.cms-element.heading-text-editor-2buttons-image .container a.btn-primary {
        margin-left: 25px; } }
  @media (min-width: 1200px) {
    section.cms-element.heading-text-editor-2buttons-image {
      padding-top: 312px;
      padding-bottom: 60px; }
      section.cms-element.heading-text-editor-2buttons-image:before {
        height: 520px;
        top: 130px; }
      section.cms-element.heading-text-editor-2buttons-image:after {
        height: calc(100% - 160px);
        top: 210px; }
      section.cms-element.heading-text-editor-2buttons-image .container h2 {
        font-size: 14px;
        letter-spacing: 1.75px; }
      section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content {
        margin-top: 25px; }
        section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content h3 {
          font-size: 45px;
          line-height: 50px;
          margin-top: 45px; }
        section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content h3 + p,
        section.cms-element.heading-text-editor-2buttons-image .container .text-editor-content p + p {
          margin-top: 30px; }
      section.cms-element.heading-text-editor-2buttons-image .container a.btn {
        margin-top: 50px; }
      section.cms-element.heading-text-editor-2buttons-image .container a.btn-primary {
        margin-left: 30px; } }

section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image {
  padding-top: 0; }
  section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image:before {
    height: 100%;
    top: 0; }
  section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image:after {
    height: calc(100% - 230px);
    top: 230px; }
  @media (min-width: 768px) {
    section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image {
      padding-top: 80px; }
      section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image:before {
        height: 360px;
        top: 0; }
      section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image:after {
        height: 100%;
        top: 0; } }

body.page.about section.cms-element.heading-text-editor-2buttons-image:before {
  background: #474747; }

body.page.about section.cms-element.heading-text-editor-2buttons-image.layout-img-left:before {
  background: #E2E3DC; }

body.page.about section.cms-element.heading-text-editor-2buttons-image:after {
  background: #86A884; }

body.page.about section.cms-element.heading-text-editor-2buttons-image .color-brown1 {
  color: #28322D; }

body.page.about section.cms-element.heading-text-editor-2buttons-image a.btn.color-red1 {
  color: white; }

body.page.about section.cms-element.heading-text-editor-2buttons-image a.btn-primary.color-red1 {
  border-color: white; }

section.cms-element.images3 {
  position: relative;
  z-index: 0; }
  section.cms-element.images3:after {
    content: '';
    display: block;
    width: 60%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background: #474747;
    z-index: 1; }
  section.cms-element.images3 .col-md-6 {
    margin-top: -100px;
    margin-bottom: -60px;
    z-index: 2; }
    section.cms-element.images3 .col-md-6 .img-wrap + .img-wrap {
      margin-top: 30px; }
  @media (min-width: 768px) {
    section.cms-element.images3:after {
      width: 70%; }
    section.cms-element.images3 .container {
      position: relative; }
      section.cms-element.images3 .container .col-md-6 {
        position: static;
        margin-top: -140px;
        margin-bottom: -50px; }
        section.cms-element.images3 .container .col-md-6 .img-wrap2 {
          width: 270px;
          position: absolute;
          left: 0;
          top: -80px;
          margin-top: 0; }
        section.cms-element.images3 .container .col-md-6 .img-wrap3 {
          width: 215px;
          margin-top: 65px; } }
  @media (min-width: 992px) {
    section.cms-element.images3:after {
      width: 65%; }
    section.cms-element.images3 .container .col-md-6 {
      margin-top: -245px;
      margin-bottom: -60px; }
      section.cms-element.images3 .container .col-md-6 .img-wrap2 {
        width: 370px;
        top: -125px; }
      section.cms-element.images3 .container .col-md-6 .img-wrap3 {
        width: 290px; } }
  @media (min-width: 1200px) {
    section.cms-element.images3:after {
      width: 65%; }
    section.cms-element.images3 .container .col-md-6 {
      margin-top: -235px;
      margin-bottom: -85px; }
      section.cms-element.images3 .container .col-md-6 .img-wrap2 {
        width: 485px;
        top: -80px; }
      section.cms-element.images3 .container .col-md-6 .img-wrap3 {
        width: 380px;
        margin-top: 130px; } }

/* #endregion cms elements */
/* #region restaurants plugin elements */
section.restaurants-element.bookings-add .sub-section.header {
  padding-top: 20px;
  padding-bottom: 30px; }

section.restaurants-element.bookings-add .sub-section.content {
  position: relative;
  padding-top: 30px;
  padding-bottom: 60px; }
  section.restaurants-element.bookings-add .sub-section.content .form-group label,
  section.restaurants-element.bookings-add .sub-section.content .form-group .input-group-text,
  section.restaurants-element.bookings-add .sub-section.content .form-group .dropdown-toggle::after {
    color: #9F5639; }
  section.restaurants-element.bookings-add .sub-section.content .form-group.checkbox input[type="checkbox"]:checked + label:before {
    color: #AD123A; }
  section.restaurants-element.bookings-add .sub-section.content .form-group.checkbox label {
    color: inherit;
    margin-bottom: 0; }
    section.restaurants-element.bookings-add .sub-section.content .form-group.checkbox label + p {
      padding-left: 5px;
      letter-spacing: 0.5px;
      font-size: 12px;
      margin-top: 10px; }
  section.restaurants-element.bookings-add .sub-section.content .form-group.radio > label {
    display: block; }
    section.restaurants-element.bookings-add .sub-section.content .form-group.radio > label span {
      cursor: pointer; }
      section.restaurants-element.bookings-add .sub-section.content .form-group.radio > label span:focus {
        outline: none; }
  section.restaurants-element.bookings-add .sub-section.content .form-group.radio .form-sub-group label {
    color: inherit;
    margin-bottom: 0; }
  section.restaurants-element.bookings-add .sub-section.content .form-group.radio .form-sub-group input[type="radio"]:checked + label:before {
    color: #AD123A; }
  section.restaurants-element.bookings-add .sub-section.content #search-form-wrap .col-xl-4 {
    margin-top: 30px; }
  section.restaurants-element.bookings-add .sub-section.content #search-form-wrap .control {
    cursor: pointer; }
  section.restaurants-element.bookings-add .sub-section.content #search-results-wrap {
    margin-top: 45px; }
    section.restaurants-element.bookings-add .sub-section.content #search-results-wrap ul li {
      margin-bottom: 10px; }
      section.restaurants-element.bookings-add .sub-section.content #search-results-wrap ul li.template {
        display: none; }
      section.restaurants-element.bookings-add .sub-section.content #search-results-wrap ul li a {
        padding: 5px;
        width: 70px;
        border-bottom-width: 2px; }
    section.restaurants-element.bookings-add .sub-section.content #search-results-wrap ul + .btn {
      margin-top: 30px; }
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap p.label,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap .placeholders-wrap p.label {
    text-transform: uppercase;
    font-weight: 900;
    font-size: 14px;
    letter-spacing: 1.7px;
    line-height: 16px;
    color: #9F5639; }
    section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap p.label + p,
    section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap .placeholders-wrap p.label + p {
      margin-top: 10px; }
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap a,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap .placeholders-wrap a {
    margin-top: 30px; }
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap h2,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap h2 {
    margin-top: 40px; }
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap form,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap form {
    margin-top: 30px; }
    section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap form .form-group textarea,
    section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap form .form-group textarea {
      min-height: 100px; }
    section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap form .form-group label + p + textarea,
    section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap form .form-group label + p + textarea {
      margin-top: 15px; }

@media (max-width: 767px) {
  section.restaurants-element.bookings-add .sub-section.content #search-form-wrap .col-md-4 + .col-md-4,
  section.restaurants-element.bookings-add .sub-section.content #search-form-wrap .col-xl-8 {
    margin-top: 15px; }
  section.restaurants-element.bookings-add .sub-section.content #search-form-wrap .form-sub-group {
    margin-top: 10px; }
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .w-100,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap .placeholders-wrap .w-100 {
    margin-bottom: 20px; }
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap form .col-md-6,
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap form .col-12,
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap form .row + .form-group,
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap form .form-group + .row,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap form .col-md-6,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap form .col-12,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap form .row + .form-group,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap form .form-group + .row {
    margin-top: 15px; }
  section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap form .text-md-right,
  section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap form .text-md-right {
    margin-top: 30px; } }

@media (min-width: 768px) {
  section.restaurants-element.bookings-add {
    padding-top: 30px;
    padding-bottom: 40px; }
    section.restaurants-element.bookings-add .sub-section.content {
      padding-top: 40px;
      padding-bottom: 80px; }
      section.restaurants-element.bookings-add .sub-section.content:after {
        content: '';
        display: block;
        width: 20%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #28322D; }
      section.restaurants-element.bookings-add .sub-section.content #search-form-wrap .col-xl-8 {
        margin-top: 30px; }
        section.restaurants-element.bookings-add .sub-section.content #search-form-wrap .col-xl-8 .form-group.radio > label {
          margin-bottom: 20px; }
      section.restaurants-element.bookings-add .sub-section.content #search-form-wrap .form-group.radio .form-sub-group {
        display: inline-block; }
        section.restaurants-element.bookings-add .sub-section.content #search-form-wrap .form-group.radio .form-sub-group + .form-sub-group {
          margin-left: 30px; }
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .col-md-6,
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .col-12,
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .row + .form-group,
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .form-group + .row {
        margin-top: 15px; }
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .col-md-3.date {
        flex: 0 0 22%;
        max-width: 22%;
        padding-right: 10px; }
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .col-md-3.time {
        flex: 0 0 30%;
        max-width: 30%;
        padding-left: 10px;
        padding-right: 10px; }
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .col-md-3.party-size {
        flex: 0 0 24%;
        max-width: 24%;
        padding-left: 10px;
        padding-right: 10px; }
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .col-md-3.table-type {
        flex: 0 0 24%;
        max-width: 24%;
        padding-left: 10px; } }

@media (min-width: 992px) {
  section.restaurants-element.bookings-add .sub-section.content {
    padding-top: 40px;
    padding-bottom: 100px; }
    section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap a,
    section.restaurants-element.bookings-add .sub-section.content #group-booking-form-wrap .placeholders-wrap a {
      margin-top: 0; } }

@media (min-width: 1200px) {
  section.restaurants-element.bookings-add {
    padding-top: 40px;
    padding-bottom: 60px; }
    section.restaurants-element.bookings-add .sub-section.content {
      padding-top: 80px;
      padding-bottom: 160px; }
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .col-xl-2.date, section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .col-xl-2.party-size, section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .col-xl-2.table-type {
        flex: 0 0 16.666667%;
        max-width: 16.666667%; }
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .col-xl-3.time {
        flex: 0 0 25%;
        max-width: 25%; }
      section.restaurants-element.bookings-add .sub-section.content #booking-form-wrap .placeholders-wrap .col-xl-3.submit {
        margin-top: 0; } }

section.restaurants-element.bookings-confirmation .sub-section.header {
  padding-top: 20px;
  padding-bottom: 30px; }

section.restaurants-element.bookings-confirmation .sub-section.content {
  position: relative;
  padding-top: 30px;
  padding-bottom: 60px; }
  section.restaurants-element.bookings-confirmation .sub-section.content .w-100 {
    margin-bottom: 20px; }
  section.restaurants-element.bookings-confirmation .sub-section.content p.label {
    text-transform: uppercase;
    font-weight: 900;
    font-size: 14px;
    letter-spacing: 1.7px;
    line-height: 16px;
    color: #9F5639; }
    section.restaurants-element.bookings-confirmation .sub-section.content p.label + p {
      margin-top: 10px; }
  section.restaurants-element.bookings-confirmation .sub-section.content .buttons {
    margin-top: 30px; }
    section.restaurants-element.bookings-confirmation .sub-section.content .buttons .btn + .btn {
      margin-top: 20px; }

section.restaurants-element.bookings-confirmation .sub-section.menus {
  padding-top: 60px;
  padding-bottom: 60px; }
  section.restaurants-element.bookings-confirmation .sub-section.menus p {
    margin-top: 15px; }
  section.restaurants-element.bookings-confirmation .sub-section.menus a {
    margin-top: 30px; }

@media (max-width: 767px) {
  section.restaurants-element.bookings-confirmation .col-md-6 + .col-md-6 {
    margin-top: 20px; } }

@media (min-width: 768px) {
  section.restaurants-element.bookings-confirmation {
    padding-top: 30px;
    padding-bottom: 40px; }
    section.restaurants-element.bookings-confirmation .sub-section.content {
      padding-top: 40px;
      padding-bottom: 80px; }
      section.restaurants-element.bookings-confirmation .sub-section.content:after {
        content: '';
        display: block;
        width: 20%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #28322D; }
      section.restaurants-element.bookings-confirmation .sub-section.content .col-md-3.date {
        flex: 0 0 22%;
        max-width: 22%;
        padding-right: 10px; }
      section.restaurants-element.bookings-confirmation .sub-section.content .col-md-3.time {
        flex: 0 0 30%;
        max-width: 30%;
        padding-left: 10px;
        padding-right: 10px; }
      section.restaurants-element.bookings-confirmation .sub-section.content .col-md-3.party-size {
        flex: 0 0 24%;
        max-width: 24%;
        padding-left: 10px;
        padding-right: 10px; }
      section.restaurants-element.bookings-confirmation .sub-section.content .col-md-3.table-type {
        flex: 0 0 24%;
        max-width: 24%;
        padding-left: 10px; }
      section.restaurants-element.bookings-confirmation .sub-section.content .w-100 {
        margin-bottom: 40px; }
      section.restaurants-element.bookings-confirmation .sub-section.content .buttons {
        margin-top: 40px; }
        section.restaurants-element.bookings-confirmation .sub-section.content .buttons .btn + .btn {
          margin-top: 0;
          margin-left: 25px; }
    section.restaurants-element.bookings-confirmation .sub-section.menus {
      padding-top: 80px;
      padding-bottom: 80px; }
      section.restaurants-element.bookings-confirmation .sub-section.menus p {
        margin-top: 20px; } }

@media (min-width: 992px) {
  section.restaurants-element.bookings-confirmation .sub-section.content {
    padding-top: 40px;
    padding-bottom: 100px; }
    section.restaurants-element.bookings-confirmation .sub-section.content .buttons {
      margin-top: 50px; }
  section.restaurants-element.bookings-confirmation .sub-section.menus {
    padding-top: 100px;
    padding-bottom: 100px; } }

@media (min-width: 1200px) {
  section.restaurants-element.bookings-confirmation {
    padding-top: 40px;
    padding-bottom: 60px; }
    section.restaurants-element.bookings-confirmation .sub-section.content {
      padding-top: 80px;
      padding-bottom: 160px; }
      section.restaurants-element.bookings-confirmation .sub-section.content .w-100 {
        margin-bottom: 60px; }
      section.restaurants-element.bookings-confirmation .sub-section.content .buttons {
        margin-top: 60px; }
        section.restaurants-element.bookings-confirmation .sub-section.content .buttons .btn + .btn {
          margin-top: 0;
          margin-left: 40px; }
    section.restaurants-element.bookings-confirmation .sub-section.menus {
      padding-top: 120px;
      padding-bottom: 160px; }
      section.restaurants-element.bookings-confirmation .sub-section.menus p {
        margin-top: 30px; } }

section.restaurants-element.bookings-view .addthis_toolbox a {
  margin-left: 3px; }

section.restaurants-element.bookings-view .addthis_toolbox svg {
  font-size: 20px; }

@media (min-width: 1200px) {
  section.restaurants-element.bookings-view .addthis_toolbox a {
    margin-left: 5px; }
  section.restaurants-element.bookings-view .addthis_toolbox svg {
    font-size: 24px; } }

section.restaurants-element.bookings-cancel .addthis_toolbox a {
  margin-left: 3px; }

section.restaurants-element.bookings-cancel .addthis_toolbox svg {
  font-size: 20px; }

@media (min-width: 1200px) {
  section.restaurants-element.bookings-cancel .addthis_toolbox a {
    margin-left: 5px; }
  section.restaurants-element.bookings-cancel .addthis_toolbox svg {
    font-size: 24px; } }

/* #endregion restaurants plugin elements */
/* #region absolute positioned stamps */
body.page.home section.cms-element.heading-text-2buttons .container {
  position: relative; }
  body.page.home section.cms-element.heading-text-2buttons .container:after {
    content: '';
    display: block;
    position: absolute;
    z-index: 4;
    width: 135px;
    height: 134px;
    background: url(../assets/stamp-brown.svg);
    background-size: 135px 134px;
    top: -160px;
    left: 50%; }
    @media (min-width: 768px) {
      body.page.home section.cms-element.heading-text-2buttons .container:after {
        width: 174px;
        height: 171px;
        background-size: 174px 171px;
        top: -190px;
        left: 73%; } }
    @media (min-width: 992px) {
      body.page.home section.cms-element.heading-text-2buttons .container:after {
        width: 210px;
        height: 206px;
        background-size: 210px 206px;
        top: -250px;
        left: 73%; } }
    @media (min-width: 1200px) {
      body.page.home section.cms-element.heading-text-2buttons .container:after {
        width: 314px;
        height: 311px;
        background-size: 314px 311px;
        top: -334px;
        left: 73%; } }

body.page.menus section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container,
body.page.market section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container,
body.page.about section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container {
  position: relative; }
  body.page.menus section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after,
  body.page.market section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after,
  body.page.about section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after {
    content: '';
    display: block;
    position: absolute;
    z-index: 4;
    width: 135px;
    height: 134px;
    background: url(../assets/stamp-white.svg);
    background-size: 135px 134px;
    top: -100px;
    left: 50%; }
    @media (min-width: 768px) {
      body.page.menus section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after,
      body.page.market section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after,
      body.page.about section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after {
        width: 174px;
        height: 171px;
        background-size: 174px 171px;
        top: -140px;
        left: 68%; } }
    @media (min-width: 992px) {
      body.page.menus section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after,
      body.page.market section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after,
      body.page.about section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after {
        width: 210px;
        height: 206px;
        background-size: 210px 206px;
        top: -200px;
        left: 65%; } }
    @media (min-width: 1200px) {
      body.page.menus section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after,
      body.page.market section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after,
      body.page.about section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after {
        width: 314px;
        height: 311px;
        background-size: 314px 311px;
        top: -250px;
        left: 65%; } }

body.page.contact section.cms-element.form-contact .container {
  position: relative; }
  body.page.contact section.cms-element.form-contact .container:after {
    content: '';
    display: block;
    position: absolute;
    z-index: 4;
    width: 135px;
    height: 134px;
    background: url(../assets/stamp-white.svg);
    background-size: 135px 134px;
    top: -130px;
    left: 50%; }
    @media (min-width: 768px) {
      body.page.contact section.cms-element.form-contact .container:after {
        width: 174px;
        height: 171px;
        background-size: 174px 171px;
        top: -150px;
        left: 70%; } }
    @media (min-width: 992px) {
      body.page.contact section.cms-element.form-contact .container:after {
        width: 210px;
        height: 206px;
        background-size: 210px 206px;
        top: -200px;
        left: 65%; } }
    @media (min-width: 1200px) {
      body.page.contact section.cms-element.form-contact .container:after {
        width: 314px;
        height: 311px;
        background-size: 314px 311px;
        top: -315px;
        left: 68%; } }

body.page.about section.cms-element.header-basic-plus-links + section.cms-element.heading-text-editor-2buttons-image .container:after {
  top: -50px; }

body.page.market footer,
body.page.about footer {
  margin-top: 80px; }
  @media (min-width: 768px) {
    body.page.market footer,
    body.page.about footer {
      margin-top: 100px; } }
  @media (min-width: 1200px) {
    body.page.market footer,
    body.page.about footer {
      margin-top: 160px; } }

@media (min-width: 992px) {
  .page.about section.cms-element.heading-text-editor {
    padding-bottom: 0px; } }

/* #endregion absolute positioned stamps */

