/*
This is main CSS file for the theme.
*/
/**
 * Table of Contents:
 *
 * 1.0 - Normalize 
 * 2.0 - General Elements
 * 3.0 - Typography
 * 4.0 - Header & Menu
 * 5.0 - Blog & Posts
 * 6.0 - Single Post & Pages
 * 7.0 - Widgets
 * 8.0 - Forms
 * 9.0 - Media
 * 10.0 - Blocks & Shortcodes
 * 11.0 - Rooms
 * 12.0 - Elementor Elements
 */
:root {
  --spacing: 50px;
  --heading-font: Marcellus, serif;
  --body-font: Jost, sans-serif;
  --secondary-font: Jost, sans-serif;
  --btn-font: Marcellus, serif;
  --sidebar: 360px;
  --site-width: 1300px;
  --sidebar-gap: 80px;
  --primary-color: #b99d75;
  --primary-color-semi: rgba(185, 157, 117, 0.3);
  --secondary-color: #53624e;
  --content-color: #333632;
  --theme-primary-color: var(--primary-color);
  --theme-secondary-color: var(--secondary-color);
  --btn-bg: var(--primary-color);
  --btn-color: #fff;
  --btn-bg-hover: #ab916c;
  --btn-color-hover: #fff;
  --btn-height: 52px;
  --btn-font-size: 16px;
  --btn-font-weight: 400;
  --btn-letter-spacing: 0;
  --btn-text-transform: none;
  --hf-weight: 400;
  --hf-letter-spacing: 0;
  --hf-text-transform: none;
  --hf-style: normal;
  --subheading-font: Jost, sans-serif;
  --shf-font-size: 12px;
  --shf-weight: 500;
  --shf-letter-spacing: 0.1em;
  --shf-text-transform: uppercase;
  --shf-style: normal;
  --shf-color: var(--secondary-color);
  --sf-letter-spacing: 0.05em;
  --sf-text-transform: uppercase;
  --sf-style: normal;
  --blog-title-weight: 400;
  --bt-letter-spacing: 0;
  --bt-text-transform: none;
  --bt-style: normal;
  --post-text-size: 18px;
  --post-line-height: 1.66;
  --widget-title-font: Jost, sans-serif;
  --widget-title-size: 14px;
  --widget-title-weight: 500;
  --widget-title-spacing: 0.05em;
  --widget-title-trans: uppercase;
  --widget-title-style: normal;
  --nav-font: Jost, sans-serif;
  --nav-font-size: 13px;
  --nav-font-weight: 500;
  --nav-font-letter-spacing: 0.05em;
  --nav-font-transform: uppercase;
  --fbnav-font-size: 14px;
  --fbnav-font-weight: 400;
  --fbnav-font-letter-spacing: 0.05em;
  --fbnav-font-transform: uppercase;
  --grid-unit: 25;
  --grid-val: calc(100/var(--grid-unit));
  --side-padding: calc(var(--grid-val)*2vw);
  --form-bd-width: 1px;
  --popup-width: 90%;
  --light-bg-color: #fff;
  --light-text-color: #1a1b1a;
  --light-content-color: #333632;
  --light-link-color: var(--primary-color);
  --light-link-color-hover: var(--primary-color);
  --dark-bg-color: #0e0d0a;
  --dark-text-color: #fff;
  --dark-content-color: #eee;
  --dark-link-color: var(--primary-color);
  --dark-link-color-hover: var(--primary-color); }
  :root .light-color {
    --bg-color: var(--light-bg-color);
    --text-color: var(--light-text-color);
    --content-color: var(--light-content-color);
    --page-title-bg: #f9f9f9;
    --page-title-color: #000;
    --link-color: var(--light-link-color);
    --link-color-hover: var(--light-link-color-hover);
    --text-lighter: #666;
    --form-bd: rgba(0, 0, 0, 0.12);
    --form-bd-focus: var(--primary-color);
    --border-color: rgba(0, 0, 0, 0.1);
    --light-grey: #f9f9f9; }
  :root .dark-color {
    --bg-color: var(--dark-bg-color);
    --text-color: var(--dark-text-color);
    --content-color: var(--dark-content-color);
    --page-title-bg: #151515;
    --page-title-color: #fff;
    --link-color: var(--dark-link-color);
    --link-color-hover: var(--dark-link-color-hover);
    --text-lighter: #aaa;
    --form-bd: rgba(255, 255, 255, 0.35);
    --form-bd-focus: var(--primary-color);
    --border-color: rgba(255, 255, 255, 0.15);
    --light-grey: #151515; }
  :root .e-con {
    --container-default-padding-top: 0;
    --container-default-padding-right: 0;
    --container-default-padding-bottom: 0;
    --container-default-padding-left: 0; }

@media (min-width: 1025px) {
  :root {
    --grid-unit: 32;
    --spacing: 80px; } }
@-webkit-keyframes stickyHeaderShow {
  0% {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%); }
  100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
@keyframes stickyHeaderShow {
  0% {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%); }
  100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
@-webkit-keyframes fade {
  0% {
    opacity: 0.2; }
  50% {
    opacity: 1; }
  100% {
    opacity: 0.2; } }
@keyframes fade {
  0% {
    opacity: 0.2; }
  50% {
    opacity: 1; }
  100% {
    opacity: 0.2; } }
@-webkit-keyframes slideFade {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
@keyframes slideFade {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
@-webkit-keyframes showTab {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
@keyframes showTab {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg); } }
@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg); } }
/* ==========================================================================
   1.0 Normalize
   
   - normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css
   ========================================================================== */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

a {
  background-color: transparent; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted; }

b,
strong {
  font-weight: bolder; }

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: 0.35em 0.75em 0.625em; }

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

/* ==========================================================================
   2.0 General Elements
   ========================================================================== */
* {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -ms-word-wrap: break-word;
  word-wrap: break-word; }
  *:focus {
    outline: 0; }

html {
  width: 100%;
  min-height: 100%; }
  html.touch div {
    background-attachment: scroll !important; }

body {
  width: 100%;
  height: auto;
  min-height: 100%;
  margin: 0 auto;
  background-color: var(--bg-color);
  color: #000; }
  body#tinymce {
    padding: 20px !important;
    background: #fff; }

html,
body,
blockquote,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
dd,
dl,
dt,
pre,
fieldset,
figure,
hr,
iframe,
legend {
  margin: 0;
  padding: 0;
  border: none; }

#page {
  position: relative;
  z-index: 2;
  overflow-x: hidden;
  width: 100%;
  height: auto; }

ul,
ol {
  margin: 0 0 30px 30px; }

li > ul,
li > ol {
  margin-bottom: 0; }

dl {
  margin: 0 0 30px; }

dt {
  font-weight: 700; }

dd {
  margin: 0 0 30px 30px; }

figure {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  margin: 0; }
  figure img {
    display: block; }

img {
  height: auto;
  max-width: 100%;
  border: 0; }

hr {
  display: block;
  height: 1px;
  padding: 0;
  margin: 50px auto;
  border: 0;
  border-top: 1px solid #ccc; }
  .dark-color hr {
    background-color: rgba(255, 255, 255, 0.1); }
  hr.lo-divider {
    background: none !important; }

.hide {
  display: none !important; }

/**
 * Clearing
 */
.container:after,
#page ul:after,
.main:after,
.home-widget .section-content:after,
.posts-wrapper:after,
.entry-content:after,
.single #primary > .post:after,
.post-navigation .nav-links:after,
.image-gallery:after,
.widget_mc4wp_form_widget .fields-container:after,
.widget-area-row:after,
.entry-content .gallery:after,
.comments-area .navigation .nav-links:after,
.widget.widget_archive ul li:after,
.widget.widget_categories ul li:after,
.lo-row:after,
.gallery[class*="gallery-columns-"]:after,
.fields-container:after,
.authors-list:after,
.row:after {
  position: relative;
  display: block;
  content: "";
  clear: both; }

/**
 * Accessibility
 */
.says,
.screen-reader-text {
  position: absolute !important;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  border: 0;
  word-wrap: normal !important; }

.site .skip-link {
  top: -9999em;
  left: -9999em;
  display: block;
  padding: 15px 23px 14px;
  background-color: #f1f1f1;
  box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.2);
  color: #21759b;
  font-family: Montserrat, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 700;
  outline: none;
  text-decoration: none;
  text-transform: none; }
  .logged-in .site .skip-link {
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.2);
    font-family: "Open Sans", sans-serif; }
  .site .skip-link:focus {
    z-index: 100000;
    top: 7px;
    left: 6px;
    clip: auto;
    width: auto;
    height: auto; }

/* Alignments
   ========================================================================== */
.alignleft {
  float: left;
  display: inline; }

.alignleft[class*="wp-block-"] {
  margin-right: 30px; }

.alignright {
  float: right;
  display: inline; }

.alignright[class*="wp-block-"] {
  margin-left: 30px; }

.aligncenter {
  display: block;
  margin-right: auto !important;
  margin-left: auto !important; }

figure.alignleft,
img.alignleft {
  margin: 0 30px 30px 0; }

figure.alignright,
img.alignright {
  margin: 0 0 30px 30px; }

.text-left {
  text-align: left; }

.text-center {
  text-align: center; }

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

/* Button
   ========================================================================== */
.button {
  position: relative;
  z-index: 9;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 48px;
  height: var(--btn-height);
  background: var(--btn-bg);
  border: none;
  border-radius: var(--btn-radius);
  color: var(--btn-color);
  font-family: var(--btn-font);
  font-size: var(--btn-font-size);
  font-weight: var(--btn-font-weight);
  letter-spacing: var(--btn-letter-spacing);
  text-transform: var(--btn-text-transform);
  line-height: 1;
  text-align: center;
  transition: 0.4s;
  cursor: pointer; }
  .no-touch .button:not(.cs-btn-underline):hover {
    background: var(--btn-bg-hover);
    color: var(--btn-color-hover);
    border-color: var(--btn-bg-hover); }
  .button.cs-btn-outline {
    --btn-color: var(--text-color);
    background: none;
    border: 1px solid var(--btn-bg); }
  .button.cs-btn-underline {
    padding: 7px 0;
    height: auto;
    background: none;
    color: var(--text-color);
    border-radius: 0; }
    .button.cs-btn-underline:before {
      position: absolute;
      bottom: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 1px;
      background: var(--btn-bg);
      content: "";
      transition: transform 0.2s ease;
      transform-origin: 0 0; }
    .no-touch .button.cs-btn-underline:hover:before {
      -webkit-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0); }
  .button.cs-btn-plain {
    background: none;
    color: inherit; }
  .button.cs-btn-small {
    --btn-height: 44px;
    padding: 0 24px;
    font-size: 14px;
    font-size: 0.875rem; }
    .button.cs-btn-small.cs-btn-underline {
      padding: 5px 0;
      font-size: 12px;
      font-size: 0.75rem;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      font-weight: 500; }
  .button.cs-btn-large {
    --btn-height: 62px;
    padding: 0 60px;
    font-size: 20px;
    font-size: 1.25rem; }
  .button.cs-btn-extra-large {
    --btn-height: 72px;
    padding: 0 60px;
    font-size: 24px;
    font-size: 1.5rem; }
  .button.cs-btn-color-primary {
    --btn-bg: var(--primary-color); }
  .button.cs-btn-color-secondary {
    --btn-bg: var(--secondary-color); }
  .button.cs-btn-color-black {
    --btn-bg: #000;
    --btn-color: #fff; }
    .button.cs-btn-color-black.cs-btn-outline {
      --btn-color: #000;
      --btn-bg-hover: #000;
      --btn-color-hover: #fff; }
  .button.cs-btn-color-white {
    --btn-bg: #fff;
    --btn-color: #000; }
    .button.cs-btn-color-white.cs-btn-outline {
      --btn-color: #fff;
      --btn-bg-hover: #fff;
      --btn-color-hover: #000; }
  .button .cs-btn-icon {
    position: relative;
    display: inline-block;
    margin-left: 20px;
    align-self: center; }
    .button .cs-btn-icon.icon-line {
      width: 40px;
      height: 1px;
      border-top: 1px solid; }
    .button .cs-btn-icon.icon-arrow:after, .button .cs-btn-icon.icon-plus:after {
      font-family: 'ElegantIcons';
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      font-size: inherit;
      position: absolute;
      right: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); }
    .button .cs-btn-icon.icon-arrow:after {
      content: "\35"; }
    .button .cs-btn-icon.icon-arrow.arrow-2:after {
      content: "\24";
      font-size: larger;
      right: -5px; }
    .button .cs-btn-icon.icon-arrow.arrow-3:after {
      content: "\39"; }
    .button .cs-btn-icon.icon-plus:after {
      content: "\4c"; }
  .button.cs-btn-underline .cs-btn-icon {
    position: absolute;
    right: -15px; }
    .button.cs-btn-underline .cs-btn-icon.icon-line {
      right: -40px;
      width: 30px; }
  .button.cs-btn-circle {
    --btn-size: 150px;
    width: var(--btn-size);
    height: var(--btn-size);
    padding: 0;
    border-radius: 999px;
    line-height: 1.3; }
    .button.cs-btn-circle .cs-btn-text {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      width: 100%;
      padding: 0 20px; }
    .button.cs-btn-circle.with-inner-border:before {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      width: calc(100% - 12px);
      height: calc(100% - 12px);
      display: block;
      content: "";
      border-radius: 999px;
      border: 1px solid;
      pointer-events: none;
      opacity: 0.8; }

.cs-btn-square {
  --btn-radius: 0px; }

.cs-btn-rounded {
  --btn-radius: 5px; }

.cs-btn-pill {
  --btn-radius: 999px; }

/* Tagcloud
   ========================================================================== */
.tagcloud a {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 0;
  color: inherit; }
  .tagcloud a:not(:last-child):after {
    margin: 0 4px;
    content: "/"; }
  .no-touch .tagcloud a:hover, .tagcloud a:focus {
    color: var(--text-color); }

/* Close Button
   ========================================================================== */
.close-button {
  z-index: 9;
  display: block;
  width: 40px;
  height: 40px;
  font-size: 0;
  cursor: pointer;
  transition: 0.4s; }
  .close-button:before, .close-button:after {
    position: absolute;
    top: 19px;
    left: 8px;
    display: block;
    width: 25px;
    height: 2px;
    background: currentColor;
    content: "";
    transition: transform 0.25s; }
  .close-button:before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); }
  .close-button:after {
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg); }

/* Slick Slider Dots & Arrow Buttons
   ========================================================================== */
.slick-dots button,
.slick-arrow {
  background: none;
  border: 0;
  box-shadow: none;
  color: inherit;
  font-size: 0;
  pointer-events: auto;
  cursor: pointer; }

.slick-arrow {
  --arrow-size: 60px;
  position: absolute;
  top: 50%;
  z-index: 99;
  padding: 0;
  width: var(--arrow-size);
  height: var(--arrow-size);
  background: #fff;
  border-radius: 99px;
  box-shadow: 0 2px 40px -10px rgba(83, 54, 36, 0.1);
  text-align: center;
  color: #111;
  line-height: var(--arrow-size);
  cursor: pointer;
  font-feature-settings: normal;
  transition: 0.2s; }
  .cs-gallery:not(.slider-dots-overlap) .slick-dotted .slick-arrow, .cs-rooms-carousel:not(.slider-arrow-top):not(.slider-dots-overlap) .slick-dotted + .slider-arrows .slick-arrow {
    margin-top: -30px; }
  .no-touch .slick-arrow:hover {
    box-shadow: 0 2px 40px -10px rgba(83, 54, 36, 0.3); }
  .slick-arrow:after {
    font-family: 'ElegantIcons';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: inherit; }
  .slick-arrow.slick-prev {
    left: 30px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%); }
    .slick-arrow.slick-prev:after {
      content: "\34"; }
  .slick-arrow.slick-next {
    right: 30px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%); }
    .slick-arrow.slick-next:after {
      content: "\35"; }

.slick-dots {
  margin: 50px auto 0;
  text-align: center;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  list-style: none;
  height: 12px; }
  .slider-dots-left .slick-dots {
    text-align: left;
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
    .slider-dots-left .slick-dots li:first-child {
      margin-left: -6px; }
  .slider-dots-right .slick-dots {
    text-align: right;
    -webkit-justify-content: flex-end;
    justify-content: flex-end; }
    .slider-dots-right .slick-dots li:last-child {
      margin-right: -6px; }
  .slick-dots li {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    line-height: 0; }
    .slick-dots li:only-child {
      display: none; }
    .slick-dots li button {
      padding: 6px; }
      .slick-dots li button:before {
        display: block;
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: currentColor;
        content: "";
        transition: 0.2s;
        transform-origin: 50% 50%; }
    .slick-dots li.slick-active button:before {
      opacity: 1; }
    .slick-dots li:not(.slick-active) button:before {
      opacity: 0.35; }
    .no-touch .slick-dots li:not(.slick-active) button:hover:before {
      opacity: 0.7; }

/* Site Content - General Page Structures
   ========================================================================== */
.container {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: calc(var(--site-width) + var(--side-padding)*2);
  padding: 0 var(--side-padding);
  margin-right: auto;
  margin-left: auto; }

.custom-site-width .container {
  --site-width: var(--custom-site-width); }

.cs-template-wide .container {
  max-width: 1600px; }

.site-content {
  position: relative;
  z-index: 9; }
  .site-content > .container {
    margin-top: 50px; }

.primary {
  padding-bottom: 80px; }
  .primary > *:last-child {
    margin-bottom: 0; }

.sidebar {
  padding-bottom: 80px; }

.light-color,
.dark-color {
  color: var(--text-color); }

.row > * {
  margin-bottom: 30px; }

.cs-notice {
  padding: 30px;
  background: lightskyblue;
  color: #111; }
  .cs-notice:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font: normal normal normal 14px/1 "Font Awesome 5 Free";
    font-size: inherit;
    text-rendering: auto;
    line-height: inherit;
    font-weight: 900;
    content: "\f05a";
    margin-right: 10px; }

@media screen and (min-width: 480px) {
  .author-social ul.social-nav li a {
    text-align: left; } }
@media screen and (min-width: 768px) {
  .row {
    margin: 0 -15px; }
    .row > * {
      padding: 0 15px;
      float: left; }
    .row .col-1-2 {
      width: 50%; }
    .row .col-1-3 {
      width: 33.333333%; } }
@media screen and (min-width: 1200px) {
  .site-content[class*="with-sidebar-"] .primary {
    float: left;
    width: calc(100% - var(--sidebar) - var(--sidebar-gap)); }
  .site-content[class*="with-sidebar-"] .sidebar {
    float: left;
    width: var(--sidebar); }
  .site-content[class*="with-sidebar-"] .sidebar-container {
    width: var(--sidebar); }
  .site-content[class*="with-sidebar-"].with-sidebar-left .primary {
    float: right; }
  .site-content[class*="with-sidebar-"].with-sidebar-right .sidebar {
    float: right; } }
@media screen and (max-width: 1024px) {
  .text-left-tablet {
    text-align: left; }

  .text-center-tablet {
    text-align: center; }

  .text-right-tablet {
    text-align: right; } }
@media screen and (max-width: 767px) {
  .text-left-mobile {
    text-align: left; }

  .text-center-mobile {
    text-align: center; }

  .text-right-mobile {
    text-align: right; }

  .slick-arrow {
    --arrow-size: 36px; }
    .slick-arrow.slick-prev {
      left: 15px; }
    .slick-arrow.slick-next {
      right: 15px; } }
@media screen and (max-width: 599px) {
  .button:not(.cs-btn-underline) {
    padding: 0 24px; }
    .button:not(.cs-btn-underline).cs-btn-small {
      padding: 0 20px; }
    .button:not(.cs-btn-underline).cs-btn-large {
      padding: 0 30px; }
    .button:not(.cs-btn-underline).cs-btn-extra-large {
      padding: 0 30px; } }
/* ==========================================================================
   3.0 Typography
   ========================================================================== */
h1,
h2,
h3,
h4,
h5,
h6,
.site-branding .site-title,
.entry-title,
.post-title,
blockquote,
.widget.widget_rss ul li a.rsswidget,
.widget.widget_recent_entries a,
.widget_recent_comments ul li > a {
  font-family: var(--heading-font); }

nav li {
  font-family: var(--nav-font); }

body {
  font-family: var(--body-font);
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6; }

a {
  color: inherit;
  text-decoration: none;
  transition: all 0.4s; }

.entry-content a:not([class*="button"]),
.comment-content a:not([class*="button"]),
.site-footer a:not([class*="button"]) {
  color: var(--link-color); }
  .no-touch .entry-content a:not([class*="button"]):hover,
  .no-touch .comment-content a:not([class*="button"]):hover,
  .no-touch .site-footer a:not([class*="button"]):hover {
    color: var(--link-color-hover); }

.entry-content .posts.layout-overlay a,
.entry-content .cs-menu a {
  color: inherit; }
.no-touch .entry-content .cs-menu .primary-menu a:hover, .no-touch
.entry-content .cs-menu .mobile-menu a:hover {
  color: inherit; }
.no-touch .entry-content a.page-numbers:hover {
  color: inherit; }

.entry-content {
  color: var(--content-color);
  font-size: var(--post-text-size);
  line-height: var(--post-line-height); }
  .entry-content h1,
  .entry-content h2,
  .entry-content h3,
  .entry-content h4,
  .entry-content h5,
  .entry-content h6,
  .entry-content form {
    color: var(--text-color); }
  .entry-content > ul li:not(:last-child),
  .entry-content > ol li:not(:last-child) {
    margin-bottom: 8px; }
  .entry-content > ul ul,
  .entry-content > ul ol,
  .entry-content > ol ul,
  .entry-content > ol ol {
    margin-top: 8px; }

.elementor-widget-text-editor ul li:not(:last-child),
.elementor-widget-text-editor ol li:not(:last-child) {
  margin-bottom: 8px; }
.elementor-widget-text-editor ul ul,
.elementor-widget-text-editor ul ol,
.elementor-widget-text-editor ol ul,
.elementor-widget-text-editor ol ol {
  margin-top: 8px; }

.elementor-section {
  color: var(--content-color);
  font-size: var(--post-text-size);
  line-height: var(--post-line-height); }
  .elementor-section h1,
  .elementor-section h2,
  .elementor-section h3,
  .elementor-section h4,
  .elementor-section h5,
  .elementor-section h6,
  .elementor-section form {
    color: var(--text-color); }

h1, h2, h3, h4, h5, h6 {
  font-weight: var(--hf-weight);
  letter-spacing: var(--hf-letter-spacing);
  text-transform: var(--hf-text-transform);
  font-style: var(--hf-style);
  line-height: 1.35; }
  .entry-content h1,
  .entry-content h2,
  .entry-content h3,
  .entry-content h4,
  .entry-content h5,
  .entry-content h6 {
    margin-bottom: 30px; }
  .entry-content * + h1, .entry-content * + h2, .entry-content * + h3, .entry-content * + h4, .entry-content * + h5, .entry-content * + h6 {
    margin-top: 50px; }
  .entry-content .elementor-element h1, .entry-content .elementor-element h2, .entry-content .elementor-element h3, .entry-content .elementor-element h4, .entry-content .elementor-element h5, .entry-content .elementor-element h6 {
    margin-top: 0; }
  .comment-content * + h1, .comment-content * + h2, .comment-content * + h3, .comment-content * + h4, .comment-content * + h5, .comment-content * + h6 {
    margin-top: 30px; }
  .comment-content h1, .widget-area .widget h1, .comment-content h2, .widget-area .widget h2, .comment-content h3, .widget-area .widget h3, .comment-content h4, .widget-area .widget h4, .comment-content h5, .widget-area .widget h5, .comment-content h6, .widget-area .widget h6 {
    margin-bottom: 15px; }

.entry-content h1,
.elementor h1 {
  font-size: 36px;
  font-size: 2.25rem; }
.entry-content h2,
.elementor h2 {
  font-size: 32px;
  font-size: 2rem; }
.entry-content h3,
.elementor h3 {
  font-size: 28px;
  font-size: 1.75rem; }
.entry-content h4,
.elementor h4 {
  font-size: 24px;
  font-size: 1.5rem; }
.entry-content h5,
.elementor h5 {
  font-size: 21px;
  font-size: 1.3125rem; }
.entry-content h6,
.elementor h6 {
  font-size: 18px;
  font-size: 1.125rem; }

.comment-content h1,
.widget-area .widget h1 {
  font-size: 28px;
  font-size: 1.75rem; }
.comment-content h2,
.widget-area .widget h2 {
  font-size: 24px;
  font-size: 1.5rem; }
.comment-content h3,
.widget-area .widget h3 {
  font-size: 21px;
  font-size: 1.3125rem; }
.comment-content h4,
.widget-area .widget h4 {
  font-size: 18px;
  font-size: 1.125rem; }
.comment-content h5,
.widget-area .widget h5 {
  font-size: 16px;
  font-size: 1rem; }
.comment-content h6,
.widget-area .widget h6 {
  font-size: 14px;
  font-size: 0.875rem; }

.entry-title a {
  color: inherit; }

.entry-header h1.entry-title {
  margin-bottom: 15px;
  font-size: 36px;
  font-size: 2.25rem; }
  .entry-header h1.entry-title:last-child {
    margin-bottom: 0; }

.posts .post-title,
.page-title-section.post-header-section .entry-title {
  font-weight: var(--blog-title-weight);
  letter-spacing: var(--bt-letter-spacing);
  text-transform: var(--bt-text-transform);
  font-style: var(--bt-style); }

.widget h5.widget-title,
.widget.widget_block .wp-block-group__inner-container > h2 {
  font-family: var(--widget-title-font);
  font-size: var(--widget-title-size);
  font-weight: var(--widget-title-weight);
  letter-spacing: var(--widget-title-spacing);
  text-transform: var(--widget-title-trans);
  font-style: var(--widget-title-style); }

.related-posts .related-posts-title,
.comments-area h2.comments-title,
.comment-respond h3.comment-reply-title {
  margin-bottom: 30px;
  font-size: 24px;
  font-size: 1.5rem;
  font-family: var(--body-font);
  font-weight: 500;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  text-transform: uppercase; }

.breadcrumbs,
.meta,
.cat-links,
.pagination,
.comment-metadata,
.nav-links .post-info .text,
.comments-area .navigation .nav-links a {
  font-family: var(--secondary-font);
  letter-spacing: var(--sf-letter-spacing);
  text-transform: var(--sf-text-transform);
  font-style: var(--sf-style);
  font-size: 12px;
  font-size: 0.75rem; }

.cs-subtitle {
  position: relative;
  display: inline-block;
  margin-bottom: 0;
  font-family: var(--subheading-font);
  letter-spacing: var(--shf-letter-spacing);
  text-transform: var(--shf-text-transform);
  font-style: var(--shf-style);
  font-size: var(--shf-font-size);
  font-weight: var(--shf-weight);
  color: var(--shf-color); }
  .cs-subtitle.style-underline {
    border-bottom: 2px solid var(--primary-color); }
  .cs-subtitle.style-bordered {
    max-width: calc(100% - 100px); }
    .cs-subtitle.style-bordered:before, .cs-subtitle.style-bordered:after {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      display: block;
      width: 70px;
      height: 1px;
      background: currentColor;
      content: ""; }
    .cs-subtitle.style-bordered:before {
      left: -95px; }
    .cs-subtitle.style-bordered:after {
      right: -95px; }

.tagcloud a {
  text-transform: none;
  letter-spacing: 0; }

.meta,
.cat-links {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.6; }

.breadcrumbs {
  opacity: 0.6; }

p {
  margin: 0 auto 30px;
  font-size: inherit; }

blockquote {
  position: relative;
  margin: 0; }
  blockquote p:last-of-type {
    margin-bottom: 0; }
  .entry-content blockquote {
    padding: 0 50px;
    margin: 50px auto; }
    .entry-content blockquote:before {
      position: absolute;
      top: 15px;
      left: 0;
      z-index: 1;
      display: block;
      width: 30px;
      height: 30px;
      color: var(--primary-color);
      font-size: 70px;
      font-size: 4.375rem;
      line-height: 30px;
      content: "\201C"; }
    .entry-content blockquote:first-child {
      margin-top: 0; }
    .entry-content blockquote p {
      color: var(--text-color); }
    .entry-content blockquote cite {
      color: inherit;
      font-style: normal;
      font-family: var(--body-font); }
  blockquote p {
    position: relative;
    z-index: 9;
    font-size: 21px;
    font-size: 1.3125rem;
    font-weight: 600;
    font-style: normal;
    line-height: 1.5; }
    .elementor-widget blockquote p {
      font-size: inherit; }
  blockquote cite,
  blockquote small {
    display: block;
    margin-top: 20px;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 400;
    font-style: normal;
    line-height: 1.5; }

table {
  width: 100%;
  max-width: 100%;
  margin: 0 0 30px;
  border-collapse: separate;
  border-spacing: 0;
  border-width: 1px;
  border-style: solid;
  border-color: var(--border-color);
  background: none;
  color: inherit;
  font-size: 16px;
  font-size: 1rem; }
  table th,
  table td {
    padding: 16px;
    vertical-align: top;
    line-height: 1.5; }
  table th {
    font-weight: 600;
    text-align: left; }
  table thead tr th,
  table thead tr td {
    border-bottom: 1px solid var(--border-color); }
  table tbody tr:not(:last-child) th,
  table tbody tr:not(:last-child) td {
    border-bottom: 1px solid var(--border-color); }
  table tfoot tr td {
    border-top: 1px solid var(--border-color); }
  table caption {
    margin: 15px auto;
    font-size: 12px;
    font-size: 0.75rem; }

pre,
code,
kbd {
  background-color: #f7f7f7;
  color: #1a1b1a; }

pre {
  display: block;
  padding: 30px;
  margin: 30px 0;
  border: 1px solid #eee;
  tab-size: 4;
  overflow: auto;
  font-size: 16px; }

code,
kbd {
  padding: 5px;
  font-size: 14px; }

fieldset {
  padding: 0;
  margin: 0;
  border: none; }

dfn,
cite,
em,
i {
  font-style: italic; }

address {
  margin: 0 0 30px;
  font-style: italic; }

code,
kbd,
tt,
var,
samp,
pre {
  font-family: Menlo,Consolas,monaco,monospace; }

abbr,
acronym {
  border-bottom: 1px dotted;
  cursor: help; }

mark {
  padding: 0;
  background: none;
  color: var(--primary-color);
  text-decoration: none; }

ins {
  font-style: italic; }

big {
  font-size: 125%; }

.smaller {
  font-size: 60%; }

@media screen and (min-width: 768px) {
  .entry-content blockquote p {
    font-size: 28px;
    font-size: 1.75rem; } }
@media screen and (max-width: 599px) {
  .entry-content blockquote {
    padding-right: 0; } }
@media screen and (max-width: 480px) {
  table th,
  table td {
    padding-right: 8px;
    padding-left: 8px; } }
/* ==========================================================================
   4.0 Site Header & Menu
   ========================================================================== */
nav ul {
  margin: 0;
  list-style: none; }

/* Site Branding
   ========================================================================== */
.site-branding {
  padding: 0;
  font-size: 0; }
  .site-branding p {
    margin-bottom: 0; }
  .site-branding .site-title {
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.2; }
    .site-branding .site-title:last-child {
      margin-bottom: 20px; }
  .site-branding .site-description {
    display: block;
    margin-top: 5px;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1; }
  .site-branding.hide-title-tagline .site-title,
  .site-branding.hide-title-tagline .site-description {
    position: absolute !important;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    border: 0;
    word-wrap: normal !important; }
  .site-branding a {
    display: inline-block;
    color: inherit; }
  .site-branding img {
    display: block; }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .site-branding img {
    width: 100% !important; } }
.menu-toggle {
  position: relative;
  z-index: 999;
  padding: 0;
  width: fit-content;
  min-width: var(--line-width);
  height: var(--height);
  background: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  color: inherit;
  font-size: 0 !important;
  line-height: var(--height);
  transition: 0.4s;
  cursor: pointer;
  --line-width: 35px;
  --line-height: 1px;
  --height: 50px; }
  .menu-toggle .menu-toggle-icon:before, .menu-toggle .menu-toggle-icon:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    display: block;
    width: var(--line-width);
    border: 1px solid currentColor;
    border-width: var(--line-height);
    background: none;
    content: ""; }
  .menu-toggle .menu-toggle-icon:before {
    height: 14px;
    border-right: none;
    border-left: none;
    transition: height 0.3s; }
  .menu-toggle .menu-toggle-icon:after {
    height: 1px;
    border-top: none;
    border-right: none;
    border-left: none; }
  .menu-toggle .menu-toggle-text {
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.03em;
    padding-left: calc(var(--line-width) + 15px);
    text-transform: uppercase;
    line-height: var(--height); }
  .no-touch .menu-toggle:hover, .menu-toggle:focus {
    color: var(--primary-color);
    outline: 0; }
  .elementor-widget-container .menu-toggle {
    display: flex; }
  .menu-toggle.text-icon-reverse .menu-toggle-icon:before, .menu-toggle.text-icon-reverse .menu-toggle-icon:after {
    right: 0;
    left: auto; }
  .menu-toggle.text-icon-reverse .menu-toggle-text {
    padding-right: calc(var(--line-width) + 15px);
    padding-left: 0; }
  .menu-toggle.close-button .menu-toggle-icon {
    display: none; }
  .menu-toggle.close-button:before, .menu-toggle.close-button:after {
    top: 24px;
    left: 5px; }

/* Site Header
   ========================================================================== */
.site-header {
  position: relative;
  z-index: 999;
  width: 100%;
  height: auto; }
  .site-header > * {
    width: 100%; }
  .site-header .container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: space-between; }
  .site-header .site-header-main {
    position: relative;
    z-index: 3;
    background: #fff;
    color: #000;
    border-bottom: 1px solid #eee; }
    .site-header .site-header-main.with-bg {
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat; }
  .site-header .header-section {
    position: relative;
    z-index: 2;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center; }
    .site-header .header-section.branding {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-justify-content: center;
      justify-content: center;
      overflow: hidden;
      max-width: calc(100% - 80px); }
    .site-header .header-section.header-left {
      margin-left: 0;
      margin-right: auto; }
    .site-header .header-section.header-right {
      margin-right: 0;
      margin-left: auto; }
  .site-header.site-header-layout-default .header-section.menu, .touch .site-header.site-header-layout-default .header-section.menu {
    display: none;
    /* Hide menu on small screens */ }
  .site-header.site-header-layout-default.overlap-header:not(.is-sticky):not(.sticky) > * {
    background: transparent; }
  .site-header.site-header-layout-default .site-header-main {
    padding: 20px 0; }
  .touch .site-header.site-header-layout-default .menu-toggle {
    display: block; }
  .site-header.site-header-layout-default .header-section.menu {
    margin: 0 0 0 auto; }
  .site-header.site-header-layout-default .header-section.header-right {
    margin-left: 0; }
    .site-header.site-header-layout-default .header-section.header-right > *:first-child {
      margin-left: 20px; }
  .site-header.overlap-header {
    position: absolute;
    top: 0;
    right: 0;
    left: 0; }
  .site-header.sticky .site-header-main, .site-header.is-sticky .site-header-main {
    position: fixed !important;
    top: 0;
    left: 0;
    z-index: 999; }
    @media screen and (min-width: 601px) and (max-width: 782px) {
      .logged-in.admin-bar .site-header.sticky .site-header-main, .logged-in.admin-bar .site-header.is-sticky .site-header-main {
        top: 46px; } }
    @media screen and (min-width: 783px) {
      .logged-in.admin-bar .site-header.sticky .site-header-main, .logged-in.admin-bar .site-header.is-sticky .site-header-main {
        top: 32px; } }
  .site-header.sticky .site-header-main {
    -webkit-animation: stickyHeaderShow 0.4s ease-out;
    animation: stickyHeaderShow 0.4s ease-out; }
  .site-header.is-sticky .site-header-main {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%); }
  .site-header.is-sticky.show-header .site-header-main {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    transition: transform 0.4s ease-out; }
  .site-header.is-sticky.hide-header .site-header-main {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    transition: transform 0.4s ease-out; }
  .site-header.is-sticky.hide-header ul.sub-menu {
    opacity: 0;
    pointer-events: none;
    visibility: hidden; }
  .site-header.custom-sticky-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%; }
    .site-header.custom-sticky-header.is-sticky {
      -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
      transform: translateY(-100%); }
    .site-header.custom-sticky-header.is-sticky.show-header {
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0);
      transition: transform 0.4s ease-out; }
    .site-header.custom-sticky-header.is-sticky.hide-header {
      -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
      transform: translateY(-100%);
      transition: transform 0.4s ease-out; }
      .site-header.custom-sticky-header.is-sticky.hide-header ul.sub-menu {
        opacity: 0;
        pointer-events: none;
        visibility: hidden; }
    @media screen and (min-width: 601px) and (max-width: 782px) {
      .logged-in.admin-bar .site-header.custom-sticky-header.is-sticky {
        top: 46px; } }
    @media screen and (min-width: 783px) {
      .logged-in.admin-bar .site-header.custom-sticky-header.is-sticky {
        top: 32px; } }
    @media screen and (min-width: 601px) and (max-width: 782px) {
      .logged-in.admin-bar .site-header.custom-sticky-header.sticky {
        top: 46px; } }
    @media screen and (min-width: 783px) {
      .logged-in.admin-bar .site-header.custom-sticky-header.sticky {
        top: 32px; } }

.dropdown-dark,
.sub-menu.dark-color {
  --sub-menu-bg: #090909;
  --sub-menu-color: #fff; }

.dropdown-light,
.sub-menu.light-color {
  --sub-menu-bg: #fff;
  --sub-menu-color: #000; }

.primary-menu {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .primary-menu li {
    position: relative; }
  .primary-menu li.menu-item-has-children > a:after {
    font-family: 'ElegantIcons';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-size: 14px;
    font-size: 0.875rem; }
  .primary-menu > li {
    white-space: nowrap; }
    .primary-menu > li > a {
      position: relative;
      display: block;
      padding: 0 15px;
      font-size: var(--nav-font-size);
      font-weight: var(--nav-font-weight);
      letter-spacing: var(--nav-font-letter-spacing);
      text-transform: var(--nav-font-transform);
      line-height: 60px; }
      .primary-menu > li > a:before {
        display: block;
        position: absolute;
        bottom: 15px;
        left: 15px;
        width: calc(100% - 30px);
        height: 1px;
        background: currentColor;
        content: "";
        transition: transform 0.2s ease;
        -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0);
        transform-origin: 0 0; }
      .no-touch .primary-menu > li > a:hover:before {
        -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
    .primary-menu > li.menu-item-has-children > a:before {
      width: calc(100% - 50px); }
    .site-header-layout-default .primary-menu > li:last-child > a {
      margin-right: -15px; }
    .primary-menu > li > .sub-menu {
      bottom: 0;
      left: -15px;
      -webkit-transform: translateY(105%);
      -ms-transform: translateY(105%);
      transform: translateY(105%); }
      .primary-menu > li > .sub-menu .sub-menu {
        top: -20px;
        left: 100%;
        -webkit-transform: translateY(10px);
        -ms-transform: translateY(10px);
        transform: translateY(10px); }
    .primary-menu > li.current-menu-item > a:before, .primary-menu > li.current-menu-ancestor > a:before {
      -webkit-transform: scaleX(1);
      -ms-transform: scaleX(1);
      transform: scaleX(1); }
    .primary-menu > li.menu-item-has-children > a:after {
      margin-left: 5px;
      -webkit-transform: translateY(1px);
      -ms-transform: translateY(1px);
      transform: translateY(1px);
      content: "\33"; }
  .primary-menu .sub-menu {
    position: absolute;
    z-index: -1;
    display: block;
    min-width: 200px;
    padding: 20px 0;
    margin: 0;
    text-align: left;
    transition: 0.3s;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    background: var(--sub-menu-bg);
    color: var(--sub-menu-color); }
    .primary-menu .sub-menu li.menu-item-has-children > a:after {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      right: 20px;
      content: "\35"; }
    .primary-menu .sub-menu .sub-menu {
      padding-top: 20px; }
    .primary-menu .sub-menu:not(.cozystay-dropdown-menu) li {
      white-space: nowrap; }
    .primary-menu .sub-menu:not(.cozystay-dropdown-menu) a {
      position: relative;
      display: block;
      padding: 0 30px;
      font-size: 15px;
      font-size: 0.9375rem;
      letter-spacing: 0;
      text-transform: capitalize;
      line-height: 36px; }
      .primary-menu .sub-menu:not(.cozystay-dropdown-menu) a span {
        position: relative; }
      .no-touch .primary-menu .sub-menu:not(.cozystay-dropdown-menu) a:hover {
        opacity: 1;
        color: var(--primary-color); }
    .primary-menu .sub-menu li.current-menu-item > a {
      color: var(--primary-color); }
  .no-touch .primary-menu li:hover > .sub-menu,
  .primary-menu li.focus > .sub-menu {
    z-index: 99;
    opacity: 1;
    pointer-events: auto;
    visibility: visible; }
  .primary-menu > li:hover > .sub-menu,
  .primary-menu > li.focus > .sub-menu {
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%); }
  .primary-menu .sub-menu li:hover .sub-menu,
  .primary-menu .sub-menu li.focus .sub-menu {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }

.cozystay-dropdown-menu {
  white-space: normal;
  padding: 0;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1); }
  .primary-menu .cozystay-dropdown-menu.sub-menu {
    padding: 0; }
  .cozystay-dropdown-menu > .container {
    display: block;
    padding: 0;
    max-width: none; }
  .cozystay-dropdown-menu a.button span:before {
    display: none; }
  .cozystay-dropdown-menu.fullwidth {
    width: 100vw; }
  .no-touch .cozystay-dropdown-menu .elementor-widget-icon-list a:hover {
    color: var(--primary-color); }

.site-header .main-navigation .dropdown-toggle:before,
.main-navigation.not-mobile-menu .dropdown-toggle:before {
  display: none; }
.no-touch .site-header .main-navigation .dropdown-toggle,
.no-touch .main-navigation.not-mobile-menu .dropdown-toggle {
  display: none; }
.touch .site-header .main-navigation .dropdown-toggle, .touch .main-navigation.not-mobile-menu .dropdown-toggle {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 35px;
  height: 36px;
  background: none;
  border: none;
  color: inherit;
  cursor: pointer;
  transition: 0.4s; }
  .touch .site-header .main-navigation .dropdown-toggle.toggled-on + .sub-menu, .touch .main-navigation.not-mobile-menu .dropdown-toggle.toggled-on + .sub-menu {
    z-index: 99;
    opacity: 1;
    pointer-events: auto;
    visibility: visible; }
.touch .site-header .main-navigation .primary-menu > li:hover > .sub-menu, .touch
.main-navigation.not-mobile-menu .primary-menu > li:hover > .sub-menu {
  -webkit-transform: translateY(105%);
  -ms-transform: translateY(105%);
  transform: translateY(105%); }
.site-header .main-navigation .primary-menu > li > .dropdown-toggle.toggled-on + .sub-menu,
.main-navigation.not-mobile-menu .primary-menu > li > .dropdown-toggle.toggled-on + .sub-menu {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%); }

.site-header-search,
.cs-search-toggle {
  display: block; }
  .site-header-search .toggle-button,
  .cs-search-toggle .toggle-button {
    z-index: 999;
    display: block;
    width: 40px;
    height: 40px;
    background: none;
    border: none;
    border-radius: 0;
    box-shadow: none;
    color: inherit;
    font-size: 0;
    line-height: 40px;
    text-align: center;
    transition: 0.4s;
    cursor: pointer; }
    .site-header-search .toggle-button:after,
    .cs-search-toggle .toggle-button:after {
      position: relative;
      z-index: 3;
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      display: inline-block;
      font: normal normal normal 14px/1 "Font Awesome 5 Free";
      font-size: inherit;
      text-rendering: auto;
      line-height: inherit;
      font-weight: 900;
      font-weight: 900;
      font-size: 15px;
      font-size: 0.9375rem;
      line-height: 40px;
      content: "\f002"; }

/* Social Nav Icons
   ========================================================================== */
ul.social-nav {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  line-height: 1;
  list-style: none; }
  ul.social-nav li {
    display: block; }
    ul.social-nav li:not(:last-child) a {
      margin-right: 25px; }
    ul.social-nav li a {
      display: block;
      padding: 0;
      text-align: center;
      font-size: 0 !important; }
      .no-touch .main ul.social-nav li a:hover {
        color: var(--primary-color); }
      ul.social-nav li a:before {
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        font: normal normal normal 14px/1 "Font Awesome 5 Free";
        font-size: inherit;
        text-rendering: auto;
        line-height: inherit;
        font-weight: 900;
        font-size: 16px;
        font-size: 1rem;
        content: "\f1e0";
        /* Default share icon */ }
        .site-header ul.social-nav li a:before {
          font-size: 14px;
          font-size: 0.875rem; }
      ul.social-nav li a[title="website"]:before, ul.social-nav li a[title="Website"]:before {
        content: "\f0c1"; }
      ul.social-nav li a[href*="mailto"]:before {
        content: "\f0e0"; }
      ul.social-nav li a[href*="bloglovin"]:before {
        content: "\f004"; }
      ul.social-nav li a[href*="twitter"]:before, ul.social-nav li a[href*="facebook"]:before, ul.social-nav li a[href*="google"]:before, ul.social-nav li a[href*="pinterest"]:before, ul.social-nav li a[href*="instagram"]:before, ul.social-nav li a[href*="behance"]:before, ul.social-nav li a[href*="vimeo"]:before, ul.social-nav li a[href*="youtube"]:before, ul.social-nav li a[href*="snapchat"]:before, ul.social-nav li a[href*="medium"]:before, ul.social-nav li a[href*="linkedin"]:before, ul.social-nav li a[href*="flickr"]:before, ul.social-nav li a[href*="etsy"]:before, ul.social-nav li a[href*="dribbble"]:before, ul.social-nav li a[href*="tumblr"]:before, ul.social-nav li a[href*="vine"]:before, ul.social-nav li a[href*="vk"]:before, ul.social-nav li a[href*="del.icio"]:before, ul.social-nav li a[href*="reddit"]:before, ul.social-nav li a[href*="yelp"]:before, ul.social-nav li a[href*="soundcloud"]:before, ul.social-nav li a[href*="500px"]:before, ul.social-nav li a[href*="digg"]:before, ul.social-nav li a[href*="foursquare"]:before, ul.social-nav li a[href*="houzz"]:before, ul.social-nav li a[href*="tripadvisor"]:before, ul.social-nav li a[href*="play.google"]:before, ul.social-nav li a[href*="apple"]:before, ul.social-nav li a[href*="slack"]:before, ul.social-nav li a[href*="amazon"]:before, ul.social-nav li a[href*="codepen"]:before, ul.social-nav li a[href*="deviantart"]:before, ul.social-nav li a[href*="github"]:before, ul.social-nav li a[href*="wordpress"]:before, ul.social-nav li a[href*="tiktok"]:before, ul.social-nav li a[href*="unsplash"]:before, ul.social-nav li a[href*="spotify"]:before, ul.social-nav li a[href*="wa.me"]:before, ul.social-nav li a[href*="airbnb"]:before, ul.social-nav li a[href*="x.com"]:before {
        font-family: "Font Awesome 5 Brands";
        font-weight: 400; }
      ul.social-nav li a[href*="twitter"]:before {
        content: "\f099"; }
      ul.social-nav li a[href*="facebook"]:before {
        content: "\f39e"; }
      ul.social-nav li a[href*="google"]:before {
        content: "\f0d5"; }
      ul.social-nav li a[href*="pinterest"]:before {
        content: "\f0d2"; }
      ul.social-nav li a[href*="instagram"]:before {
        content: "\f16d"; }
      ul.social-nav li a[href*="behance"]:before {
        content: "\f1b4"; }
      ul.social-nav li a[href*="vimeo"]:before {
        content: "\f27d"; }
      ul.social-nav li a[href*="youtube"]:before {
        content: "\f167"; }
      ul.social-nav li a[href*="snapchat"]:before {
        content: "\f2ac"; }
      ul.social-nav li a[href*="medium"]:before {
        content: "\f3c7"; }
      ul.social-nav li a[href*="linkedin"]:before {
        content: "\f0e1"; }
      ul.social-nav li a[href*="flickr"]:before {
        content: "\f16e"; }
      ul.social-nav li a[href*="etsy"]:before {
        content: "\f2d7"; }
      ul.social-nav li a[href*="dribbble"]:before {
        content: "\f17d"; }
      ul.social-nav li a[href*="tumblr"]:before {
        content: "\f173"; }
      ul.social-nav li a[href*="vine"]:before {
        content: "\f1ca"; }
      ul.social-nav li a[href*="/feed/"]:before, ul.social-nav li a[href*="?feed="]:before {
        content: "\f09e"; }
      ul.social-nav li a[href*="vk"]:before {
        content: "\f189"; }
      ul.social-nav li a[href*="del.icio"]:before {
        content: "\f1a5"; }
      ul.social-nav li a[href*="reddit"]:before {
        content: "\f281"; }
      ul.social-nav li a[href*="yelp"]:before {
        content: "\f1e9"; }
      ul.social-nav li a[href*="soundcloud"]:before {
        content: "\f1be"; }
      ul.social-nav li a[href*="500px"]:before {
        content: "\f26e"; }
      ul.social-nav li a[href*="digg"]:before {
        content: "\f1a6"; }
      ul.social-nav li a[href*="foursquare"]:before {
        content: "\f180"; }
      ul.social-nav li a[href*="houzz"]:before {
        content: "\f27c"; }
      ul.social-nav li a[href*="tripadvisor"]:before {
        content: "\f262"; }
      ul.social-nav li a[href*="play.google"]:before {
        content: "\f3ab"; }
      ul.social-nav li a[href*="apple"]:before {
        content: "\f179"; }
      ul.social-nav li a[href*="slack"]:before {
        content: "\f198"; }
      ul.social-nav li a[href*="amazon"]:before {
        content: "\f270"; }
      ul.social-nav li a[href*="codepen"]:before {
        content: "\f1cb"; }
      ul.social-nav li a[href*="deviantart"]:before {
        content: "\f1bd"; }
      ul.social-nav li a[href*="github"]:before {
        content: "\f09b"; }
      ul.social-nav li a[href*="wordpress"]:before {
        content: "\f411"; }
      ul.social-nav li a[href*="tiktok"]:before {
        content: "\e07b"; }
      ul.social-nav li a[href*="unsplash"]:before {
        content: "\e07c"; }
      ul.social-nav li a[href*="spotify"]:before {
        content: "\f1bc"; }
      ul.social-nav li a[href*="wa.me"]:before {
        content: "\f232"; }
      ul.social-nav li a[href*="airbnb"]:before {
        content: "\f834"; }
      ul.social-nav li a[href*="x.com"]:before {
        font-family: "Font Awesome 6 Brands";
        content: "\e61b"; }

/* Side Menu
   ========================================================================== */
.sidemenu {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 100000;
  display: block;
  width: 100%;
  max-width: 375px;
  height: 100%;
  transition: 0.4s;
  opacity: 0;
  pointer-events: none;
  visibility: hidden; }
  .sidemenu:before {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.75);
    content: ""; }
  .no-touch .sidemenu a:hover {
    opacity: 0.6; }
  .no-touch .sidemenu a.button:hover {
    opacity: 1; }
  .sidemenu .container {
    position: relative;
    z-index: 9;
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    width: 100%;
    max-width: 100%;
    height: 100%;
    padding: 0 30px 60px;
    margin: 0;
    background-color: var(--secondary-color);
    color: #fff;
    font-size: 14px;
    font-size: 0.875rem;
    overflow: auto;
    transition: transform 0.4s;
    -ms-overflow-style: none;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    .sidemenu .container::-webkit-scrollbar {
      display: none; }
    .sidemenu .container > * {
      margin-bottom: 50px; }
      .sidemenu .container > *:last-child {
        margin-bottom: 0; }
  .sidemenu.slide-from-left {
    right: auto;
    left: 0; }
    .sidemenu.slide-from-left .container {
      -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
      transform: translateX(-100%); }
  .sidemenu.fade-in .container {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none; }
  .sidemenu.show {
    opacity: 1;
    pointer-events: auto;
    visibility: visible; }
    .sidemenu.show .container {
      -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
      transform: translateX(0); }
  .sidemenu .sidemenu-header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 30px 0; }
  .sidemenu.sidemenu-custom .sidemenu-header {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    padding: 30px;
    width: auto;
    border: none; }
  .sidemenu.sidemenu-custom .container {
    padding: 0; }
  .sidemenu .close-button {
    position: relative;
    order: 2;
    margin-left: auto; }
  .sidemenu.fullwidth {
    max-width: 100vw; }

.cs-menu-mobile .mobile-menu {
  display: block;
  --nav-font: var(--heading-font); }
  .cs-menu-mobile .mobile-menu li {
    position: relative;
    display: block; }
  .cs-menu-mobile .mobile-menu a {
    position: relative;
    text-transform: capitalize; }
    .cs-menu-mobile .mobile-menu a:before, .cs-menu-mobile .mobile-menu a:after {
      display: none !important; }
  .cs-menu-mobile .mobile-menu > li {
    padding: 0; }
    .cs-menu-mobile .mobile-menu > li > a {
      display: block;
      padding: 5px 0;
      font-size: 24px;
      font-size: 1.5rem;
      font-weight: 400;
      letter-spacing: 0;
      line-height: 1.35; }
  .cs-menu-mobile .mobile-menu li.current-menu-item > a,
  .cs-menu-mobile .mobile-menu li.current-menu-ancestor > a {
    color: var(--primary-color); }
  .cs-menu-mobile .mobile-menu ul.sub-menu {
    display: none;
    margin: 0 0 0 30px; }
    .cs-menu-mobile .mobile-menu ul.sub-menu li a {
      padding: 4px 0;
      font-size: 16px;
      font-size: 1rem;
      font-weight: 400;
      line-height: 40px; }
    .cs-menu-mobile .mobile-menu ul.sub-menu .dropdown-toggle {
      top: 0; }

.dropdown-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  background: none;
  border: none;
  color: inherit;
  cursor: pointer;
  transition: 0.4s; }
  .dropdown-toggle:before {
    font-family: 'ElegantIcons';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    display: block;
    font-size: 21px;
    font-size: 1.3125rem;
    content: "\35"; }
  .dropdown-toggle.toggled-on:before {
    content: "\33"; }
  .dropdown-toggle.toggled-on + ul.sub-menu {
    display: block; }

@media screen and (min-width: 1200px) {
  .site-header.site-header-layout-default .menu-toggle {
    display: none; }
  .site-header.site-header-layout-default .header-section.menu {
    display: block;
    max-width: calc(100% - 300px); }

  .cs-menu-mobile .mobile-menu > li > a {
    font-size: 28px;
    font-size: 1.75rem; }
  .cs-menu-mobile .mobile-menu .dropdown-toggle {
    top: 4px; } }
/* ==========================================================================
   5.0 Blog & Posts
   ========================================================================== */
.meta-wrap {
  color: var(--secondary-color); }
  .meta-wrap .meta:last-child .meta-item:last-child {
    margin-right: 0; }
    .meta-wrap .meta:last-child .meta-item:last-child:after {
      display: none; }
  .meta-wrap > *:not(:last-child):after {
    position: relative;
    display: inline-block;
    margin: 0 6px;
    content: "/"; }
  .no-touch .meta-wrap a:hover {
    color: inherit; }

.meta {
  display: inline-flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .meta .meta-item {
    margin-right: 9px; }
    .meta .meta-item:last-child {
      margin-right: 0; }
    .meta .meta-item:after {
      position: relative;
      display: inline-block;
      content: "/";
      margin-left: 6px; }

.cat-links {
  display: inline-flex;
  flex-wrap: wrap; }
  .post-header-section .cat-links {
    justify-content: center; }
  .cat-links a,
  .cat-links span {
    margin-right: 3px; }
    .cat-links a:after,
    .cat-links span:after {
      position: relative;
      display: inline-block;
      content: ".";
      margin-left: 3px; }
    .cat-links a:last-child:after,
    .cat-links span:last-child:after {
      display: none; }

.read-more-btn {
  border: none !important;
  font-size: 14px;
  font-size: 0.875rem; }
  .read-more-btn span {
    position: relative; }
    .read-more-btn span:after {
      font-family: 'ElegantIcons';
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      content: "\35";
      font-size: 16px;
      font-size: 1rem;
      position: absolute;
      top: 50%;
      right: -8px;
      -webkit-transform: translate(70%, -50%);
      -ms-transform: translate(70%, -50%);
      transform: translate(70%, -50%);
      transition: transform 0.3s ease, opacity 0.3s ease; }
  .no-touch .read-more-btn:hover span:after {
    -webkit-transform: translate(100%, -50%);
    -ms-transform: translate(100%, -50%);
    transform: translate(100%, -50%); }

.post-excerpt {
  color: var(--content-color);
  font-size: 16px;
  font-size: 1rem;
  z-index: 9;
  line-height: 1.6; }

/* Posts Archive General Styles
   ========================================================================== */
.posts {
  --post-gap: 35px;
  --img-ratio: 66.6666%;
  --ratio: 0.6666; }
  .posts .posts-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .posts.layout-masonry .masonry-column,
  .posts .post,
  .posts .featured-img,
  .posts .featured-img a,
  .posts .featured-img img,
  .posts .post-content,
  .posts .post-header {
    position: relative;
    width: 100%; }
  .no-touch .posts .post:hover .featured-img a {
    -webkit-transform: scale(1.06);
    -ms-transform: scale(1.06);
    transform: scale(1.06); }
  .posts.img-ratio-4-3 {
    --img-ratio: 75%;
    --ratio: 0.75; }
  .posts.img-ratio-1-1 {
    --img-ratio: 100%;
    --ratio: 1; }
  .posts.img-ratio-2-3 {
    --img-ratio: 150%;
    --ratio: 1.5; }
  .posts.img-ratio-4-5 {
    --img-ratio: 125%;
    --ratio: 1.25; }
  .posts .meta-wrap {
    margin-bottom: 14px;
    line-height: 1; }
  .posts .post-header,
  .posts .post-title,
  .posts .post-excerpt {
    margin-bottom: 15px; }
  .posts .post-title {
    font-size: 21px;
    font-size: 1.3125rem;
    line-height: 1.2; }
    .no-touch .posts .post-title a:hover {
      color: inherit;
      opacity: 0.6; }
  .posts .post-excerpt:last-child,
  .posts .post-excerpt p {
    margin-bottom: 0; }
  .posts .post-header:last-child,
  .posts .post-header > *:last-child {
    margin-bottom: 0; }
  .posts .post {
    margin-top: var(--post-gap);
    overflow: hidden;
    padding-bottom: 15px; }
    .posts .post:first-child {
      margin-top: 0; }
    .posts .post .featured-img {
      margin: 0 0 22px;
      overflow: hidden; }
      .posts .post .featured-img a,
      .posts .post .featured-img img {
        display: block; }
      .posts .post .featured-img a {
        -webkit-transform: scale(1.01);
        -ms-transform: scale(1.01);
        transform: scale(1.01);
        transition: 0.35s ease-in-out; }
    .posts .post.sticky .post-title a {
      position: relative;
      padding-left: 20px; }
      .posts .post.sticky .post-title a:before {
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        font: normal normal normal 14px/1 "Font Awesome 5 Free";
        font-size: inherit;
        text-rendering: auto;
        line-height: inherit;
        font-weight: 900;
        content: "\f02e";
        color: var(--primary-color);
        font-size: 16px;
        font-size: 1rem;
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%); }
  .posts .overlay-label {
    position: absolute;
    z-index: 99;
    pointer-events: none;
    text-align: center; }
    .posts .overlay-label.time-label {
      top: 15px;
      left: 15px;
      padding: 8px 12px;
      font-size: 12px;
      font-size: 0.75rem;
      text-transform: uppercase;
      background: rgba(255, 255, 255, 0.85);
      color: #000; }
    .posts .overlay-label.time-label.featured-style {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-justify-content: center;
      justify-content: center;
      width: 65px;
      height: 72px;
      padding: 0; }
      .posts .overlay-label.time-label.featured-style .meta-item.time {
        font-family: var(--heading-font); }
      .posts .overlay-label.time-label.featured-style .month,
      .posts .overlay-label.time-label.featured-style .day {
        display: block;
        line-height: 1; }
      .posts .overlay-label.time-label.featured-style .month {
        font-size: 12px;
        font-size: 0.75rem;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        margin-bottom: 2px; }
      .posts .overlay-label.time-label.featured-style .day {
        font-size: 32px;
        font-size: 2rem; }
  .posts .format-label {
    --label-size: 100px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 9;
    width: var(--label-size);
    height: var(--label-size);
    padding: 0;
    border-radius: 999px;
    border: 1px solid;
    color: #fff;
    line-height: var(--label-size); }
    .posts .format-label svg {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      margin: 3px 0 0 2px;
      max-width: 21px; }
  .posts.layout-grid .featured-img a, .posts.layout-list .featured-img a {
    display: block;
    height: 0;
    padding-top: var(--img-ratio); }
    .posts.layout-grid .featured-img a img, .posts.layout-list .featured-img a img {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      height: 100%;
      object-fit: cover; }
  .posts.layout-list.with-border {
    --bd-color: #b5bbb3; }
    .posts.layout-list.with-border .featured-img {
      margin-bottom: 0; }
    .posts.layout-list.with-border .post-content {
      padding: 20px 20px 30px;
      border: 1px solid var(--bd-color); }
    .posts.layout-list.with-border .featured-img + .post-content {
      border-top-width: 0; }
  .posts.layout-overlay .post {
    background: #000;
    color: #fff;
    padding-bottom: 0; }
    .posts.layout-overlay .post .featured-img {
      margin-bottom: 0; }
      .posts.layout-overlay .post .featured-img:after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 8;
        pointer-events: none;
        content: "";
        background: var(--secondary-color);
        opacity: 0;
        transition: opacity 0.4s; }
    .posts.layout-overlay .post .format-label.format-video {
      display: none; }
    .posts.layout-overlay .post .post-content {
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 9;
      pointer-events: none;
      padding: 150px 24px 30px; }
      .posts.layout-overlay .post .post-content:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
        pointer-events: none;
        content: "";
        background: linear-gradient(to top, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0));
        transition: opacity 0.4s; }
      .posts.layout-overlay .post .post-content a {
        pointer-events: auto; }
      .posts.layout-overlay .post .post-content > * {
        position: relative; }
    .posts.layout-overlay .post .post-content,
    .posts.layout-overlay .post .post-excerpt,
    .posts.layout-overlay .post .meta-wrap {
      color: inherit; }
  .posts.layout-overlay .post:not(.has-post-thumbnail):before {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-top: var(--img-ratio);
    padding-bottom: 0;
    content: ""; }
  .posts.layout-overlay .featured-img {
    z-index: 1; }
  .posts.layout-overlay .post-header {
    z-index: 9;
    margin-bottom: 10px; }
    .posts.layout-overlay .post-header:last-child {
      margin-bottom: 0; }
    .posts.layout-overlay .post-header > * {
      position: relative;
      z-index: 3; }
  .posts.layout-overlay .post-title {
    color: inherit; }
    .no-touch .posts.layout-overlay .post-title a:hover {
      opacity: 0.9; }
  .posts.layout-overlay .post-title:not(:last-child) {
    margin-bottom: 10px; }
  .posts.layout-overlay .featured-img {
    position: relative;
    overflow: hidden;
    transition: 0.3s ease-in-out; }
  .no-touch .posts.layout-overlay .post:hover .featured-img:after {
    opacity: 0.9; }
  .no-touch .posts.layout-overlay .post:hover .post-content:before {
    opacity: 0; }
  .posts.layout-overlay.btn-slide-up .post .post-content {
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    transition: transform 0.4s; }
  .no-touch .posts.layout-overlay.btn-slide-up .post:hover .post-content {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
  .posts.layout-overlay .button.cs-btn-underline {
    color: inherit; }
  .posts .post.format-gallery .thumbnail-gallery {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    list-style: none;
    padding: 0; }
    .posts .post.format-gallery .thumbnail-gallery li {
      position: relative; }
    .posts .post.format-gallery .thumbnail-gallery .featured-img-caption {
      display: none; }
  .posts .post.format-gallery .slick-list,
  .posts .post.format-gallery .slick-track,
  .posts .post.format-gallery .slick-slide {
    height: 100%; }
  .posts .post.format-gallery .slider-dots {
    position: absolute;
    bottom: 20px;
    left: 0;
    width: 100%;
    color: #fff;
    pointer-events: none; }
    .posts .post.format-gallery .slider-dots li {
      pointer-events: auto; }
  .no-touch .posts .post.format-gallery .slider-arrows {
    opacity: 0;
    transition: opacity 0.4s; }
  .no-touch .posts .post.format-gallery:hover .slider-arrows {
    opacity: 1; }
  .posts .post.format-gallery .slick-arrow {
    --arrow-size: 36px; }
    .posts .post.format-gallery .slick-arrow.slick-prev {
      left: 15px; }
    .posts .post.format-gallery .slick-arrow.slick-next {
      right: 15px; }
  .posts.layout-standard .post.format-gallery .thumbnail-gallery, .posts.layout-masonry .post.format-gallery .thumbnail-gallery {
    position: relative; }

/* Post Navigation
   ========================================================================== */
.pagination {
  --pagi-size: 32px;
  position: relative;
  width: 100%;
  margin: var(--spacing) 0 0;
  text-align: center;
  font-family: var(--heading-font);
  font-size: 18px;
  font-size: 1.125rem;
  line-height: var(--pagi-size);
  clear: both; }
  .pagination .pagination-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    width: 100%; }
  .pagination .page-numbers {
    padding: 0;
    height: var(--pagi-size);
    text-align: center; }
    .pagination .page-numbers.current {
      border-bottom: 1px solid var(--primary-color); }
  .pagination span.page-numbers.prev, .pagination span.page-numbers.next {
    opacity: 0.35; }
  .pagination .prev:after,
  .pagination .next:after {
    font-family: 'ElegantIcons';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    line-height: var(--pagi-size);
    position: relative;
    transition: transform 0.3s ease-out; }
  .pagination .prev:after {
    content: "\34"; }
  .pagination .next:after {
    content: "\35"; }
  .pagination .prev-next {
    font-size: 14px;
    font-size: 0.875rem; }
    .pagination .prev-next .prev,
    .pagination .prev-next .next {
      position: relative;
      padding: 0 18px;
      margin: 0 10px;
      width: auto; }
      .pagination .prev-next .prev:after,
      .pagination .prev-next .next:after {
        position: absolute;
        top: 0; }
    .pagination .prev-next .prev {
      padding-left: 44px; }
    .pagination .prev-next .prev:after {
      left: 18px; }
    .pagination .prev-next .next {
      padding-right: 44px; }
    .pagination .prev-next .next:after {
      right: 18px; }
  .pagination .with-page-numbers .page-numbers {
    padding: 0 6px;
    margin: 0 6px; }
    .pagination .with-page-numbers .page-numbers.prev, .pagination .with-page-numbers .page-numbers.next {
      font-size: 0; }
      .pagination .with-page-numbers .page-numbers.prev:after, .pagination .with-page-numbers .page-numbers.next:after {
        font-size: 20px;
        font-size: 1.25rem; }
  .no-touch .pagination .with-page-numbers a:hover {
    opacity: 0.5; }
  .pagination a.load-more-btn {
    position: relative;
    z-index: 9;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 48px;
    height: var(--btn-height);
    background: var(--btn-bg);
    border: none;
    border-radius: var(--btn-radius);
    color: var(--btn-color);
    font-family: var(--btn-font);
    font-size: var(--btn-font-size);
    font-weight: var(--btn-font-weight);
    letter-spacing: var(--btn-letter-spacing);
    text-transform: var(--btn-text-transform);
    line-height: 1;
    text-align: center;
    transition: 0.4s;
    cursor: pointer;
    color: var(--btn-color) !important;
    overflow-anchor: none; }
    .no-touch .pagination a.load-more-btn:not(.cs-btn-underline):hover {
      background: var(--btn-bg-hover);
      color: var(--btn-color-hover);
      border-color: var(--btn-bg-hover); }
    .pagination a.load-more-btn span {
      position: relative;
      z-index: 3; }
    .pagination a.load-more-btn.disabled {
      pointer-events: none; }
  .pagination .load-more .loading-text {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0; }
  .pagination .load-more.loading {
    pointer-events: none; }
    .pagination .load-more.loading .btn-text {
      opacity: 0; }
    .pagination .load-more.loading .loading-text {
      opacity: 1;
      -webkit-animation: fade 3s linear infinite;
      animation: fade 3s linear infinite; }
  .pagination .load-more.infinite .loading-text {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1; }
  .pagination .no-more-posts-message {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
    opacity: 0.4; }
    .pagination .no-more-posts-message:before, .pagination .no-more-posts-message:after {
      content: " - "; }

@media screen and (min-width: 768px) {
  .posts.layout-masonry .posts-wrapper {
    display: block;
    margin-left: calc(0px - var(--post-gap)); }
  .posts.layout-masonry .masonry-column {
    float: left;
    width: 50%;
    padding-left: var(--post-gap); }
  .posts.layout-grid .posts-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    margin-left: calc(0px - var(--post-gap)); }
  .posts.layout-grid .post {
    margin-right: 0;
    margin-left: var(--post-gap);
    width: calc(50% - var(--post-gap)); }
  .posts.layout-grid .post:nth-child(-n+2) {
    margin-top: 0 !important; } }
@media screen and (min-width: 1024px) {
  .posts .post-title {
    font-size: 24px;
    font-size: 1.5rem; }
  .posts.layout-standard .post-title {
    font-size: 32px;
    font-size: 2rem; }
  .posts.layout-masonry.column-3 .masonry-column {
    width: 33.333333%; }
  .posts.layout-list {
    --col-gap: 35px; }
    .posts.layout-list .post {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      justify-content: space-between;
      align-items: stretch; }
    .posts.layout-list .featured-img {
      margin-right: var(--col-gap);
      margin-bottom: 0;
      width: 50%; }
    .posts.layout-list .post-content {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-justify-content: center;
      justify-content: center;
      padding: 0; }
      .posts.layout-list .post-content > * {
        width: 100%; }
    .posts.layout-list .featured-img + .post-content {
      padding: 0;
      width: calc(50% - var(--col-gap)); }
    .posts.layout-list.layout-zigzag .post:nth-child(2n) {
      flex-direction: row-reverse; }
      .posts.layout-list.layout-zigzag .post:nth-child(2n) .featured-img {
        margin-right: 0;
        margin-left: var(--col-gap); }
    .posts.layout-list.with-border .post-content {
      padding: var(--col-gap); }
    .posts.layout-list.with-border .featured-img {
      margin: 0; }
    .posts.layout-list.with-border .featured-img + .post-content {
      width: 50%;
      padding-top: 0;
      padding-bottom: 0;
      border-top-width: 1px;
      border-left-width: 0; }
    .posts.layout-list.with-border.layout-zigzag .post:nth-child(2n) .featured-img {
      margin: 0; }
      .posts.layout-list.with-border.layout-zigzag .post:nth-child(2n) .featured-img + .post-content {
        border-right-width: 0;
        border-left-width: 1px; }
  .posts.layout-grid.column-3 .post {
    width: calc(33.333333% - var(--post-gap)); }
    .posts.layout-grid.column-3 .post:nth-child(-n+3) {
      margin-top: 0 !important; } }
@media screen and (min-width: 1200px) {
  .posts .post-title {
    font-size: 30px;
    font-size: 1.875rem; }
    .related-posts .posts .post-title {
      font-size: 24px;
      font-size: 1.5rem; }

  .site-content[class*="with-sidebar-"] .primary .posts.layout-masonry.column-3 .post-title, .site-content[class*="with-sidebar-"] .primary .posts.layout-grid.column-3 .post-title {
    font-size: 24px;
    font-size: 1.5rem; }

  .posts.layout-standard .post-title,
  .site-content:not([class*="with-sidebar-"]) .posts.layout-list .post-title {
    font-size: 36px;
    font-size: 2.25rem; }
  .posts.layout-standard .post-excerpt,
  .site-content:not([class*="with-sidebar-"]) .posts.layout-list .post-excerpt {
    font-size: 18px;
    font-size: 1.125rem; }
  .posts.layout-standard .read-more-btn,
  .site-content:not([class*="with-sidebar-"]) .posts.layout-list .read-more-btn {
    font-size: 16px;
    font-size: 1rem; }

  .posts.layout-standard .post.format-gallery .slider-dots, .posts.layout-list .post.format-gallery .slider-dots, .posts.column-2 .post.format-gallery .slider-dots {
    bottom: 35px; }

  .site-content:not([class*="with-sidebar-"]) .posts.layout-list {
    --col-gap: 60px; }
  .site-content:not([class*="with-sidebar-"]) .elementor-column:not(:only-child) .posts.layout-list {
    --col-gap: 35px; } }
@media screen and (min-width: 1366px) {
  .posts {
    --post-gap: 50px; } }
@media screen and (min-width: 1440px) {
  .site-content[class*="with-sidebar-"] .primary .posts.layout-masonry .post, .site-content[class*="with-sidebar-"] .primary .posts.layout-grid .post {
    padding-bottom: 20px; }
  .site-content[class*="with-sidebar-"] .primary .posts.layout-grid.layout-overlay .post {
    padding-bottom: 0; } }
@media screen and (max-width: 1024px) and (min-width: 768px) {
  .posts.layout-overlay:not(.cs-rooms) .post-excerpt {
    display: none; } }
@media screen and (max-width: 1024px) {
  .posts.img-ratio-3-2-tablet {
    --img-ratio: 66.66%;
    --ratio: 0.6666; }
  .posts.img-ratio-4-3-tablet {
    --img-ratio: 75%;
    --ratio: 0.75; }
  .posts.img-ratio-1-1-tablet {
    --img-ratio: 100%;
    --ratio: 1; }
  .posts.img-ratio-2-3-tablet {
    --img-ratio: 150%;
    --ratio: 1.5; }
  .posts.img-ratio-4-5-tablet {
    --img-ratio: 125%;
    --ratio: 1.25; } }
@media screen and (max-width: 767px) {
  .posts.img-ratio-3-2-mobile {
    --img-ratio: 66.66%;
    --ratio: 0.6666; }
  .posts.img-ratio-4-3-mobile {
    --img-ratio: 75%;
    --ratio: 0.75; }
  .posts.img-ratio-1-1-mobile {
    --img-ratio: 100%;
    --ratio: 1; }
  .posts.img-ratio-2-3-mobile {
    --img-ratio: 150%;
    --ratio: 1.5; }
  .posts.img-ratio-4-5-mobile {
    --img-ratio: 125%;
    --ratio: 1.25; } }
@media screen and (max-width: 599px) {
  .posts .overlay-label.time-label.featured-style {
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    transform-origin: 0 0; } }
/* ==========================================================================
   6.0 Single Post & Pages
   ========================================================================== */
/* Page Title Section
   ========================================================================== */
.page-title-section {
  position: relative;
  overflow: hidden;
  padding: 60px 0;
  margin-bottom: var(--spacing);
  background: var(--page-title-bg);
  color: var(--page-title-color);
  text-align: center;
  --page-title-weight: var(--hf-weight); }
  .page-title-section.page-title-default {
    padding: 80px 0; }
  .page-title-section.page-title-large {
    padding: 100px 0; }
  .page-title-section.page-title-fullheight {
    height: 100vh;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center; }
    .page-title-section.page-title-fullheight .container:after {
      display: inline-block;
      margin-top: 30px;
      width: 1px;
      height: 65px;
      background: currentColor;
      opacity: 0.8; }
    .page-title-section.page-title-fullheight .page-title-extra {
      position: absolute;
      bottom: 60px;
      left: 0;
      z-index: 9;
      width: 100%;
      font-size: 14px;
      font-size: 0.875rem;
      text-transform: uppercase;
      letter-spacing: 1px;
      text-align: center; }
    .page-title-section.page-title-fullheight .entry-title:not(:first-child) {
      margin-bottom: 30px; }
  .page-title-section .entry-title {
    font-size: 48px;
    font-size: 3rem;
    line-height: 1;
    font-weight: var(--page-title-weight); }
    .page-title-section .entry-title:not(:first-child) {
      margin-top: 20px; }
    .page-title-section .entry-title:not(:last-child) {
      margin-bottom: 20px; }
  .page-title-section p,
  .page-title-section .description {
    margin: 0 auto;
    max-width: 800px; }
  .page-title-section .container {
    z-index: 9; }
  .page-title-section .page-title-bg + .container .breadcrumbs {
    opacity: 1; }
    .no-touch .page-title-section .page-title-bg + .container .breadcrumbs a:hover {
      opacity: 0.7; }

.page-title-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }

.post-header-section {
  --post-header-meta-color: var(--secondary-color); }
  .post-header-section .page-title-bg:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.45;
    content: ""; }
  .post-header-section .meta-wrap {
    color: var(--post-header-meta-color); }
  .post-header-section .page-title-bg + .container {
    color: #fff;
    --post-header-meta-color: #fff; }
    .no-touch .post-header-section .page-title-bg + .container a:hover {
      opacity: 0.7; }
  .post-header-section .page-title-bg ~ .page-title-extra {
    color: #fff; }

.overlap-header ~ .site-content .page-title-section .container {
  margin-top: 100px; }

/* Single Post
   ========================================================================== */
.single .primary,
.page .primary {
  margin-right: auto;
  margin-left: auto; }
.single .primary > .post .entry-content > *:last-child,
.page .primary > .post .entry-content > *:last-child {
  margin-bottom: 0; }

.single-custom_blocks .primary,
.single-custom_site_headers .primary {
  max-width: 100%; }

.article-footer {
  margin-top: 50px;
  color: var(--text-lighter);
  font-family: var(--heading-font);
  font-size: 15px;
  font-size: 0.9375rem; }
  .article-footer:before {
    position: relative;
    display: block;
    margin-bottom: 50px;
    width: 50px;
    height: 1px;
    background: currentColor;
    content: ""; }
  .article-footer .article-footer-title {
    margin-right: 5px; }
  .article-footer .post-tag-cloud {
    position: relative;
    display: flex; }
    .article-footer .post-tag-cloud .tagcloud {
      display: flex;
      flex-wrap: wrap; }

.article-share {
  display: flex; }
  .article-share:not(:first-child) {
    margin-top: 15px; }
  .article-share .article-share-container {
    display: flex;
    flex-wrap: wrap; }
    .article-share .article-share-container a:not(:last-child):after {
      margin: 0 4px;
      content: "-"; }
    .article-share .article-share-container a i {
      display: none; }
    .no-touch .article-share .article-share-container a:hover, .article-share .article-share-container a:focus {
      color: var(--text-color); }

/* Comments
   ========================================================================== */
.comments-area {
  --cauthor-img: 48px;
  padding-top: var(--spacing); }
  .comments-area ol.comment-list {
    margin: 0 auto;
    list-style: none; }
    .comments-area ol.comment-list + .comment-respond {
      margin-top: 40px; }
    .comments-area ol.comment-list ol.children {
      margin: 30px 0 0 30px; }
    .comments-area ol.comment-list li.comment, .comments-area ol.comment-list li.pingback, .comments-area ol.comment-list li.trackback {
      position: relative;
      padding: 30px 0;
      list-style: none;
      border-top: 1px dotted var(--border-color); }
    .comments-area ol.comment-list li:not(.depth-1):last-of-type {
      padding-bottom: 0; }
    .comments-area ol.comment-list li.pingback, .comments-area ol.comment-list li.trackback {
      font-weight: 700; }
      .comments-area ol.comment-list li.pingback a, .comments-area ol.comment-list li.trackback a {
        font-weight: 400; }
    .comments-area ol.comment-list li:last-child {
      margin-bottom: 0 !important; }
    .comments-area ol.comment-list li.comment .comment-body {
      position: relative; }
    .comments-area ol.comment-list li .comment-meta {
      padding-left: 64px;
      margin-bottom: 10px; }
      .comments-area ol.comment-list li .comment-meta .comment-author.vcard {
        font-family: var(--heading-font);
        font-size: 20px;
        font-size: 1.25rem;
        line-height: 30px; }
        .comments-area ol.comment-list li .comment-meta .comment-author.vcard img {
          position: absolute;
          top: 0;
          left: 0;
          width: var(--cauthor-img);
          height: var(--cauthor-img); }
        .comments-area ol.comment-list li .comment-meta .comment-author.vcard b.fn {
          font-weight: 400; }
          .no-touch .comments-area ol.comment-list li .comment-meta .comment-author.vcard b.fn a:hover {
            color: var(--primary-color); }
        .comments-area ol.comment-list li .comment-meta .comment-author.vcard .author-label {
          display: none; }
      .comments-area ol.comment-list li .comment-meta .comment-metadata {
        display: block;
        font-size: 12px;
        font-size: 0.75rem; }
        .comments-area ol.comment-list li .comment-meta .comment-metadata a {
          color: var(--text-lighter); }
    .comments-area ol.comment-list li a.comment-edit-link {
      margin-left: 4px; }
      .comments-area ol.comment-list li a.comment-edit-link:before {
        content: "-";
        margin-right: 8px; }
      .no-touch .comments-area ol.comment-list li a.comment-edit-link:hover {
        color: var(--primary-color); }
    .comments-area ol.comment-list li .comment-content > *:last-child {
      margin-bottom: 0; }
    .comments-area ol.comment-list li .comment-content img.wprm-comment-rating {
      margin: 10px 0; }
    .comments-area ol.comment-list li .comment-content p {
      color: var(--content-color);
      font-size: inherit; }
    .comments-area ol.comment-list li .comment-content p,
    .comments-area ol.comment-list li .comment-content dd,
    .comments-area ol.comment-list li .comment-content address {
      margin-bottom: 10px; }
    .comments-area ol.comment-list li .comment-content hr {
      margin-top: 30px;
      margin-bottom: 30px; }
    .comments-area ol.comment-list li .comment-content li {
      margin-bottom: 8px; }
      .comments-area ol.comment-list li .comment-content li ul,
      .comments-area ol.comment-list li .comment-content li ol {
        margin-top: 8px; }
    .comments-area ol.comment-list li .comment-content blockquote {
      padding: 30px;
      margin: 30px 0;
      background: rgba(0, 0, 0, 0.025);
      border-left: 4px solid var(--primary-color); }
      .comments-area ol.comment-list li .comment-content blockquote p {
        font-size: 18px;
        font-size: 1.125rem;
        line-height: 1.8; }
        .comments-area ol.comment-list li .comment-content blockquote p:last-child {
          margin-bottom: 0; }
      .comments-area ol.comment-list li .comment-content blockquote:last-child {
        margin-bottom: 0; }
    .comments-area ol.comment-list li .reply {
      margin-top: 14px;
      font-family: var(--heading-font);
      font-size: 15px;
      font-size: 0.9375rem;
      font-weight: 500; }
      .comments-area ol.comment-list li .reply a {
        position: relative;
        display: inline-block;
        line-height: 22px; }
        .comments-area ol.comment-list li .reply a:before {
          position: absolute;
          bottom: -1px;
          left: 0;
          display: block;
          width: 100%;
          height: 1px;
          background: var(--primary-color);
          content: "";
          transition: transform 0.2s ease;
          transform-origin: 0 0; }
        .no-touch .comments-area ol.comment-list li .reply a:hover:before {
          -webkit-transform: scaleX(0);
          -ms-transform: scaleX(0);
          transform: scaleX(0); }
    .comments-area ol.comment-list li.bypostauthor > .comment-body b.fn:after {
      -webkit-transform: translateY(-3px);
      -ms-transform: translateY(-3px);
      transform: translateY(-3px);
      display: inline-block;
      width: 18px;
      height: 18px;
      margin-left: 4px;
      border-radius: 50%;
      color: var(--primary-color);
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      display: inline-block;
      font: normal normal normal 14px/1 "Font Awesome 5 Free";
      font-size: inherit;
      text-rendering: auto;
      line-height: inherit;
      font-weight: 900;
      content: "\f005";
      font-size: 12px;
      font-size: 0.75rem;
      line-height: 17px;
      text-align: center; }
    .comments-area ol.comment-list li .comment-respond {
      margin-top: 50px; }
      .comments-area ol.comment-list li .comment-respond #cancel-comment-reply-link {
        padding: 0 15px;
        background: none;
        font-size: 12px;
        font-size: 0.75rem;
        font-weight: 400;
        line-height: 24px;
        text-transform: uppercase;
        font-family: var(--body-font);
        opacity: 0.6; }
        .no-touch .comments-area ol.comment-list li .comment-respond #cancel-comment-reply-link:hover {
          opacity: 1; }
      .comments-area ol.comment-list li .comment-respond .comment-reply-title-wrap {
        display: block;
        text-align: left; }
        .comments-area ol.comment-list li .comment-respond .comment-reply-title-wrap .title-decor-line {
          display: none; }
        .comments-area ol.comment-list li .comment-respond .comment-reply-title-wrap .comment-reply-title {
          padding: 0;
          white-space: normal; }
  .comments-area .comment-form {
    color: var(--content-color); }
  .comments-area .navigation {
    margin-top: 20px;
    margin-bottom: 50px;
    padding-top: 20px;
    border-top: 1px solid var(--border-color); }
    .comments-area .navigation .nav-links {
      padding: 15px 0;
      display: flex; }
      .comments-area .navigation .nav-links a {
        display: block;
        color: var(--content-color);
        opacity: 0.7;
        font-size: 12px;
        font-size: 0.75rem; }
        .no-touch .comments-area .navigation .nav-links a:hover {
          opacity: 1; }
      .comments-area .navigation .nav-links .nav-previous {
        margin: 0; }
      .comments-area .navigation .nav-links .nav-next {
        margin: 0 0 0 auto; }
      .comments-area .navigation .nav-links .nav-previous a:before,
      .comments-area .navigation .nav-links .nav-next a:after {
        display: inline-block;
        font-family: 'ElegantIcons';
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        font-size: 12px;
        font-size: 0.75rem; }
      .comments-area .navigation .nav-links .nav-previous a:before {
        content: "\34";
        margin-right: 8px; }
      .comments-area .navigation .nav-links .nav-next a:after {
        content: "\35";
        margin-left: 8px; }
  .comments-area .comments-closed {
    padding: 16px 0;
    margin-bottom: 0;
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
    font-weight: 400;
    opacity: 0.5; }
  .comments-area .logged-in-as a {
    color: var(--link-color); }
    .no-touch .comments-area .logged-in-as a:hover {
      color: var(--link-color-hover); }

.author-info-box {
  position: relative;
  padding: 30px;
  margin: 50px 0 0;
  border: 1px solid var(--primary-color);
  color: var(--text-color);
  text-align: center; }
  .author-info-box .author-photo {
    margin: 0 auto 25px;
    width: 150px; }
    .author-info-box .author-photo img {
      display: block; }
  .author-info-box .author-info > *:not(:last-child) {
    margin-bottom: 20px; }
  .author-info-box .author-info .author-name {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1; }
    .no-touch .author-info-box .author-info .author-name a:hover {
      color: var(--primary-color); }
  .author-info-box .author-info p {
    margin-bottom: 15px;
    font-size: 16px;
    font-size: 1rem; }
    .author-info-box .author-info p:last-child {
      margin-bottom: 0; }
  .author-info-box .author-info-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center; }
    .author-info-box .author-info-footer .author-profile-link {
      font-family: var(--heading-font);
      font-size: 13px;
      font-size: 0.8125rem;
      text-transform: uppercase; }
      .author-info-box .author-info-footer .author-profile-link:not(:last-child) {
        margin-right: 45px; }
      .author-info-box .author-info-footer .author-profile-link a {
        position: relative;
        display: block; }
        .author-info-box .author-info-footer .author-profile-link a:before {
          position: absolute;
          bottom: 0;
          left: 0;
          display: block;
          width: 100%;
          height: 1px;
          background: var(--primary-color);
          content: "";
          transition: transform 0.2s ease;
          transform-origin: 0 0; }
        .no-touch .author-info-box .author-info-footer .author-profile-link a:hover:before {
          -webkit-transform: scaleX(0);
          -ms-transform: scaleX(0);
          transform: scaleX(0); }
    .author-info-box .author-info-footer .author-social a {
      opacity: 0.7; }
      .no-touch .author-info-box .author-info-footer .author-social a:hover {
        opacity: 1; }

.page-title-section .author-social {
  margin-top: 20px; }
  .page-title-section .author-social ul.social-nav {
    justify-content: center; }

.single .post-navigation {
  padding: 60px 0 0; }
  .single .post-navigation .nav-links {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: stretch; }
    .single .post-navigation .nav-links a {
      position: relative;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      flex-direction: row;
      height: 100%;
      transition: 0s;
      overflow: hidden; }
      .single .post-navigation .nav-links a .post-title {
        font-weight: 400;
        font-size: 20px;
        font-size: 1.25rem;
        transition: all 0.4s;
        line-height: 1.2; }
      .single .post-navigation .nav-links a > * {
        margin-left: 0; }
      .no-touch .single .post-navigation .nav-links a:hover .post-title {
        opacity: 0.6; }
  .single .post-navigation .nav-previous,
  .single .post-navigation .nav-next {
    padding: 10px 0; }
    .single .post-navigation .nav-previous:not(:only-child),
    .single .post-navigation .nav-next:not(:only-child) {
      width: 50%; }
  .single .post-navigation .nav-previous:not(:only-child) {
    padding-right: 20px;
    border-right: 1px solid var(--primary-color); }
  .single .post-navigation .nav-next {
    margin-left: auto;
    text-align: right; }
    .single .post-navigation .nav-next:not(:only-child) {
      padding-left: 20px; }
    .single .post-navigation .nav-next a {
      justify-content: flex-end; }
  .single .post-navigation .post-info span {
    display: block;
    word-break: break-word; }
    .single .post-navigation .post-info span.text {
      margin-bottom: 8px;
      font-size: 12px;
      font-size: 0.75rem;
      font-weight: 500;
      opacity: 0.5; }

.related-posts {
  margin-top: 60px; }
  .related-posts .related-posts-title {
    margin-bottom: 50px;
    text-align: center; }

.search-results .posts .featured-img {
  margin-bottom: 20px; }
  .search-results .posts .featured-img img {
    display: block; }

/* Default 404 Page
   ========================================================================== */
.error404 .primary {
  padding-bottom: 0; }

.page.page-404 .page-404-content {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  padding: var(--spacing) 0;
  min-height: calc(100vh - 240px);
  text-align: center;
  font-size: var(--post-text-size); }
  .page.page-404 .page-404-content > *:last-child {
    margin-bottom: 0; }
  .page.page-404 .page-404-content .entry-title {
    margin-bottom: 15px;
    line-height: 1.2; }

.search-no-results .no-results.not-found {
  text-align: center;
  font-size: var(--post-text-size); }
  .search-no-results .no-results.not-found .entry-title {
    margin-bottom: 30px;
    font-size: 28px;
    font-size: 1.75rem;
    line-height: 1.2; }
  .search-no-results .no-results.not-found .search-form {
    margin-right: auto;
    margin-left: auto;
    max-width: 420px; }

.page-links {
  display: block;
  clear: both;
  --pagi-size: 32px;
  line-height: var(--pagi-size);
  font-size: 15px;
  font-size: 0.9375rem; }
  .page-links .page-links-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .page-links .page-links-title {
    margin-right: 10px; }
  .page-links .post-page-numbers {
    margin: 0 6px;
    padding: 0 6px;
    width: auto;
    height: var(--pagi-size);
    text-align: center;
    line-height: var(--pagi-size); }
    .page-links .post-page-numbers.current {
      border-bottom: 1px solid var(--primary-color); }

.tribe-events-event-meta.primary {
  margin: 0; }

.single .tribe-events-single .tribe-events-sub-nav .tribe-events-nav-next {
  margin-left: auto; }

.single-tribe_events .page-title-section .page-title-bg:not(.page-title-default-background-image):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.25;
  content: ""; }
.single-tribe_events .page-title-section .page-title-bg:not(.page-title-default-background-image) + .container {
  color: #fff; }

.tribe-events-content a.button {
  border: none !important;
  transition: all 0.4s; }

@media screen and (min-width: 600px) {
  .comments-area {
    --cauthor-img: 64px;
    --side-space: calc(var(--cauthor-img) + 20px); }
    .comments-area ol.comment-list li.comment .comment-body {
      padding-left: var(--side-space); }
    .comments-area ol.comment-list li .comment-meta {
      padding: 0; }
    .comments-area ol.comment-list li .comment-meta .comment-author.vcard {
      margin-bottom: 5px; } }
@media screen and (min-width: 768px) {
  .page-title-section.page-title-large .entry-title, .page-title-section.page-title-fullheight .entry-title {
    font-size: 60px;
    font-size: 3.75rem; }
  .page-title-section.page-title-large p,
  .page-title-section.page-title-large .description, .page-title-section.page-title-fullheight p,
  .page-title-section.page-title-fullheight .description {
    font-size: 18px;
    font-size: 1.125rem; }

  .comments-area ol.comment-list ol.children {
    margin-left: var(--side-space); }
  .comments-area .comment-respond form.comment-form {
    margin: 0 -10px; }
    .comments-area .comment-respond form.comment-form > * {
      padding: 0 10px; }
    .comments-area .comment-respond form.comment-form .comment-form-author,
    .comments-area .comment-respond form.comment-form .comment-form-email,
    .comments-area .comment-respond form.comment-form .comment-form-url {
      float: left;
      width: 33.333333%; }

  .author-info-box {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    text-align: left; }
    .author-info-box .author-photo {
      align-self: flex-start;
      margin: 0 30px 0 0; }
      .author-info-box .author-photo + .author-info {
        width: calc(100% - 180px); }
    .author-info-box .author-info {
      width: 100%; }
    .author-info-box .author-info-footer {
      justify-content: flex-start; }

  .page.page-404 .page-404-content .entry-title {
    font-size: 48px;
    font-size: 3rem; } }
@media screen and (min-width: 1024px) {
  .comments-area ol.comment-list li .reply {
    position: absolute;
    top: 0;
    right: 0;
    margin-top: 0; }

  .search-no-results .no-results.not-found .entry-title {
    font-size: 48px;
    font-size: 3rem; } }
@media screen and (min-width: 1200px) {
  .page .site-content[class*="with-sidebar-"] .primary,
  .single .site-content[class*="with-sidebar-"] .primary {
    max-width: none; }

  .page-title-section .entry-title {
    font-size: 60px;
    font-size: 3.75rem; }
  .page-title-section.page-title-default {
    padding: 100px 0; }
  .page-title-section.page-title-large {
    padding: 180px 0; }
    .page-title-section.page-title-large .entry-title {
      font-size: 72px;
      font-size: 4.5rem; }
  .page-title-section.page-title-small .entry-title {
    font-size: 42px;
    font-size: 2.625rem; }
  .page-title-section.page-title-fullheight .entry-title {
    font-size: 72px;
    font-size: 4.5rem; }

  .comments-area {
    --cauthor-img: 110px; }

  .page.page-404 .page-404-content .entry-title {
    font-size: 80px;
    font-size: 5rem; } }
@media screen and (max-width: 480px) {
  .author-info-box .author-info-footer {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column; }
    .author-info-box .author-info-footer .author-profile-link:not(:last-child) {
      margin: 0 0 25px; } }
/* ==========================================================================
   7.0 Widgets, Sidebar & Footer
   ========================================================================== */
.widget {
  position: relative;
  margin: 0 auto; }
  .widget select {
    display: block;
    width: 100%; }
  .widget.widget_calendar table#wp-calendar {
    margin-bottom: 0;
    border: none;
    border-spacing: 2px; }
    .widget.widget_calendar table#wp-calendar caption {
      margin-top: 0;
      font-size: 16px;
      font-size: 1rem;
      font-weight: 600; }
    .widget.widget_calendar table#wp-calendar th,
    .widget.widget_calendar table#wp-calendar td {
      padding: 0 5px;
      text-align: center;
      border: none !important; }
    .widget.widget_calendar table#wp-calendar th {
      font-size: 10px;
      font-size: 0.625rem;
      font-weight: 400; }
    .widget.widget_calendar table#wp-calendar td {
      font-size: 13px;
      font-size: 0.8125rem; }
    .widget.widget_calendar table#wp-calendar tbody td {
      position: relative;
      background: #f7f7f7;
      line-height: 40px; }
      .dark-color .widget.widget_calendar table#wp-calendar tbody td {
        background: #363636; }
      .widget.widget_calendar table#wp-calendar tbody td[colspan="2"], .widget.widget_calendar table#wp-calendar tbody td[colspan="3"], .widget.widget_calendar table#wp-calendar tbody td[colspan="4"], .widget.widget_calendar table#wp-calendar tbody td[colspan="5"], .widget.widget_calendar table#wp-calendar tbody td[colspan="6"] {
        background: none; }
      .widget.widget_calendar table#wp-calendar tbody td a {
        font-weight: 800; }
      .widget.widget_calendar table#wp-calendar tbody td a:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: var(--primary-color);
        opacity: 0.1;
        content: ""; }
    .widget.widget_calendar table#wp-calendar tfoot td {
      line-height: 36px;
      font-size: 11px;
      font-size: 0.6875rem;
      text-transform: uppercase; }
      .widget.widget_calendar table#wp-calendar tfoot td a {
        padding: 2px 10px;
        border: 1px solid #e6e6e6;
        border-radius: 4px;
        color: inherit; }
        .dark-color .widget.widget_calendar table#wp-calendar tfoot td a {
          border-color: #393939; }
        .no-touch .widget.widget_calendar table#wp-calendar tfoot td a:hover {
          background: var(--primary-color);
          border-color: var(--primary-color);
          color: #fff; }
  .widget.widget_calendar .wp-calendar-nav {
    font-size: 0; }
    .widget.widget_calendar .wp-calendar-nav .wp-calendar-nav-prev,
    .widget.widget_calendar .wp-calendar-nav .wp-calendar-nav-next {
      display: inline-block;
      width: 45%;
      text-align: center;
      line-height: 36px;
      font-size: 11px;
      font-size: 0.6875rem;
      text-transform: uppercase; }
      .widget.widget_calendar .wp-calendar-nav .wp-calendar-nav-prev a, .widget.widget_calendar .wp-calendar-nav .wp-calendar-nav-next a {
        padding: 2px 10px;
        border: 1px solid #e6e6e6;
        color: inherit; }
        .dark-color .widget.widget_calendar .wp-calendar-nav .wp-calendar-nav-prev a,
        .dark-color .widget.widget_calendar .wp-calendar-nav .wp-calendar-nav-next a {
          border-color: #393939; }
        .no-touch .widget.widget_calendar .wp-calendar-nav .wp-calendar-nav-prev a:hover, .no-touch .widget.widget_calendar .wp-calendar-nav .wp-calendar-nav-next a:hover {
          background: var(--text-color);
          border-color: var(--text-color);
          color: var(--bg-color); }
    .widget.widget_calendar .wp-calendar-nav .pad {
      display: inline-block;
      width: 10%; }
  .widget.widget_categories ul, .widget.widget_archive ul, .widget.widget_nav_menu ul, .widget.widget_meta ul, .widget.widget_pages ul, .widget.widget_rss ul, .widget.widget_recent_entries ul {
    margin: 0;
    list-style: none; }
    .widget.widget_categories ul li, .widget.widget_archive ul li, .widget.widget_nav_menu ul li, .widget.widget_meta ul li, .widget.widget_pages ul li, .widget.widget_rss ul li, .widget.widget_recent_entries ul li {
      position: relative; }
      .widget.widget_categories ul li:not(:last-child), .widget.widget_archive ul li:not(:last-child), .widget.widget_nav_menu ul li:not(:last-child), .widget.widget_meta ul li:not(:last-child), .widget.widget_pages ul li:not(:last-child), .widget.widget_rss ul li:not(:last-child), .widget.widget_recent_entries ul li:not(:last-child) {
        margin-bottom: 8px;
        padding-bottom: 8px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
        .dark-color .widget.widget_categories ul li:not(:last-child), .dark-color .widget.widget_archive ul li:not(:last-child), .dark-color .widget.widget_nav_menu ul li:not(:last-child), .dark-color .widget.widget_meta ul li:not(:last-child), .dark-color .widget.widget_pages ul li:not(:last-child), .dark-color .widget.widget_rss ul li:not(:last-child), .dark-color .widget.widget_recent_entries ul li:not(:last-child) {
          border-bottom-color: rgba(255, 255, 255, 0.1); }
      .widget.widget_categories ul li a, .widget.widget_archive ul li a, .widget.widget_nav_menu ul li a, .widget.widget_meta ul li a, .widget.widget_pages ul li a, .widget.widget_rss ul li a, .widget.widget_recent_entries ul li a {
        font-size: 15px;
        font-size: 0.9375rem;
        line-height: 30px; }
        .no-touch .widget.widget_categories ul li a:hover, .no-touch .widget.widget_archive ul li a:hover, .no-touch .widget.widget_nav_menu ul li a:hover, .no-touch .widget.widget_meta ul li a:hover, .no-touch .widget.widget_pages ul li a:hover, .no-touch .widget.widget_rss ul li a:hover, .no-touch .widget.widget_recent_entries ul li a:hover {
          color: var(--link-color-hover); }
      .widget.widget_categories ul li ul, .widget.widget_archive ul li ul, .widget.widget_nav_menu ul li ul, .widget.widget_meta ul li ul, .widget.widget_pages ul li ul, .widget.widget_rss ul li ul, .widget.widget_recent_entries ul li ul {
        margin-top: 7.5px;
        margin-left: 20px;
        clear: both; }
        .widget.widget_categories ul li ul li, .widget.widget_archive ul li ul li, .widget.widget_nav_menu ul li ul li, .widget.widget_meta ul li ul li, .widget.widget_pages ul li ul li, .widget.widget_rss ul li ul li, .widget.widget_recent_entries ul li ul li {
          border-bottom: none !important;
          padding-bottom: 0 !important; }
  .widget.widget_archive ul li, .widget.widget_categories ul li {
    font-size: 14px;
    font-size: 0.875rem;
    text-align: right;
    line-height: 30px; }
    .widget.widget_archive ul li a, .widget.widget_categories ul li a {
      float: left;
      width: 80%;
      text-align: left; }
  .widget.widget_categories ul ul li:before, .widget.widget_nav_menu ul ul li:before, .widget.widget_pages ul ul li:before {
    position: absolute;
    top: 1px;
    left: -20px;
    width: 20px;
    color: inherit;
    font-family: 'ElegantIcons';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    content: "\35";
    line-height: inherit;
    text-align: left;
    color: var(--primary-color); }
  .widget.widget_categories ul li a:not(:last-child) {
    margin-bottom: 6px; }
  .widget.widget_recent_entries ul li a {
    display: block;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600; }
  .widget.widget_recent_entries .post-date {
    display: block;
    margin-top: 2px;
    font-size: 13px;
    font-size: 0.8125rem;
    opacity: 0.5; }
  .widget.widget_recent_comments ul {
    margin: 0;
    list-style: none; }
    .widget.widget_recent_comments ul li {
      font-size: 14px;
      font-size: 0.875rem; }
      .widget.widget_recent_comments ul li:not(:last-child) {
        margin-bottom: 15px;
        padding-bottom: 15px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
      .widget.widget_recent_comments ul li > a {
        display: block;
        margin-top: 5px;
        font-size: 18px;
        font-size: 1.125rem;
        font-weight: 600; }
        .no-touch .widget.widget_recent_comments ul li > a:hover {
          color: var(--primary-color); }
  .widget.widget_rss .widget-title .rsswidget:first-child .rss-widget-icon {
    display: none; }
  .widget.widget_rss .widget-title .rsswidget:first-child:after {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font: normal normal normal 14px/1 "Font Awesome 5 Free";
    font-size: inherit;
    text-rendering: auto;
    line-height: inherit;
    font-weight: 900;
    content: "\f09e";
    color: #f7943e; }
  .widget.widget_rss ul li:not(:last-child) {
    margin-bottom: 15px;
    padding-bottom: 15px; }
  .widget.widget_rss ul li a.rsswidget {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600; }
  .widget.widget_rss ul li .rss-date {
    display: block;
    margin-top: 5px;
    font-size: 13px;
    font-size: 0.8125rem;
    opacity: 0.5; }
  .widget.widget_rss ul li .rssSummary {
    margin-top: 7.5px;
    font-size: 14px;
    font-size: 0.875rem; }
    .widget.widget_rss ul li .rssSummary + cite {
      display: block;
      margin-top: 7.5px; }
  .widget.widget_rss ul li cite {
    font-size: 13px;
    font-size: 0.8125rem; }

.widget.widget_tag_cloud,
.elementor-widget-wp-widget-tag_cloud {
  font-size: 0; }
  .widget.widget_tag_cloud .tagcloud,
  .elementor-widget-wp-widget-tag_cloud .tagcloud {
    display: flex;
    flex-wrap: wrap;
    margin: -4px -2px; }
    .widget.widget_tag_cloud .tagcloud a,
    .elementor-widget-wp-widget-tag_cloud .tagcloud a {
      margin: 4px 2px;
      line-height: 28px;
      font-size: 14px !important;
      font-size: 0.875rem !important; }
      .widget.widget_tag_cloud .tagcloud a:not(:last-child):after,
      .elementor-widget-wp-widget-tag_cloud .tagcloud a:not(:last-child):after {
        margin: 0 4px 0 8px; }
      .no-touch .widget.widget_tag_cloud .tagcloud a:hover,
      .no-touch .elementor-widget-wp-widget-tag_cloud .tagcloud a:hover {
        color: var(--link-color-hover); }
        .no-touch .widget.widget_tag_cloud .tagcloud a:hover:after,
        .no-touch .elementor-widget-wp-widget-tag_cloud .tagcloud a:hover:after {
          color: var(--text-color); }

.widget.cs-widget_cat .cat,
.elementor-widget-wp-widget-loftocean-widget-category .cat {
  width: 100%;
  margin: 0 0 15px;
  overflow: hidden; }
  .widget.cs-widget_cat .cat a,
  .elementor-widget-wp-widget-loftocean-widget-category .cat a {
    position: relative;
    display: block;
    width: 100%;
    color: #fff !important;
    background: rgba(0, 0, 0, 0.1);
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    transition: 0s; }
    .widget.cs-widget_cat .cat a .cat-bg,
    .elementor-widget-wp-widget-loftocean-widget-category .cat a .cat-bg {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 1;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      overflow: hidden;
      transition: 0.3s ease; }
    .widget.cs-widget_cat .cat a .cat-meta,
    .elementor-widget-wp-widget-loftocean-widget-category .cat a .cat-meta {
      position: relative;
      z-index: 3;
      background: rgba(0, 0, 0, 0.3);
      padding: 40px;
      text-align: center; }
    .widget.cs-widget_cat .cat a .category-name,
    .elementor-widget-wp-widget-loftocean-widget-category .cat a .category-name {
      position: relative;
      z-index: 3;
      line-height: 1.5; }
    .no-touch .widget.cs-widget_cat .cat a:hover .cat-bg,
    .no-touch .elementor-widget-wp-widget-loftocean-widget-category .cat a:hover .cat-bg {
      -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
      transform: scale(1.05); }

.widget.cs-widget_about p:last-child,
.elementor-widget-wp-widget-loftocean-widget-profile p:last-child {
  margin-bottom: 0; }
.widget.cs-widget_about .profile-img,
.elementor-widget-wp-widget-loftocean-widget-profile .profile-img {
  position: relative;
  z-index: 3;
  display: block;
  margin-bottom: 20px;
  width: 100%;
  overflow: hidden; }
.widget.cs-widget_about .subheading,
.elementor-widget-wp-widget-loftocean-widget-profile .subheading {
  display: block;
  margin: 0 0 15px;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1; }
.widget-area .widget.cs-widget_about p, .widget-area
.elementor-widget-wp-widget-loftocean-widget-profile p {
  font-size: 16px;
  font-size: 1rem; }
.widget.cs-widget_about .socialwidget,
.widget.cs-widget_about a.button,
.elementor-widget-wp-widget-loftocean-widget-profile .socialwidget,
.elementor-widget-wp-widget-loftocean-widget-profile a.button {
  margin-top: 20px; }

.widget.cs-widget_instagram ul,
.elementor-widget-wp-widget-loftocean-widget-instagram ul {
  margin: -5px;
  list-style: none; }
  .widget.cs-widget_instagram ul li,
  .elementor-widget-wp-widget-loftocean-widget-instagram ul li {
    float: left;
    width: 33.333333%;
    padding: 5px;
    margin: 0;
    border: none; }
    .widget.cs-widget_instagram ul li a,
    .elementor-widget-wp-widget-loftocean-widget-instagram ul li a {
      position: relative;
      display: block;
      overflow: hidden;
      background: #000; }
      .no-touch .widget.cs-widget_instagram ul li a:hover .feed-bg, .no-touch
      .elementor-widget-wp-widget-loftocean-widget-instagram ul li a:hover .feed-bg {
        -webkit-transform: scale(1.06);
        -ms-transform: scale(1.06);
        transform: scale(1.06);
        opacity: 0.8; }
    .widget.cs-widget_instagram ul li .feed-bg,
    .elementor-widget-wp-widget-loftocean-widget-instagram ul li .feed-bg {
      position: relative;
      z-index: 1;
      width: 100%;
      height: 0;
      padding-top: 100%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      transition: all 0.4s ease-out;
      -webkit-transform: scale(1.02);
      -ms-transform: scale(1.02);
      transform: scale(1.02); }
    .widget.cs-widget_instagram ul li .feed-video,
    .elementor-widget-wp-widget-loftocean-widget-instagram ul li .feed-video {
      margin-bottom: 0; }
.widget.cs-widget_instagram .ins-follow-btn,
.elementor-widget-wp-widget-loftocean-widget-instagram .ins-follow-btn {
  margin: 15px auto 0;
  text-align: center; }
  .widget.cs-widget_instagram .ins-follow-btn a.button,
  .elementor-widget-wp-widget-loftocean-widget-instagram .ins-follow-btn a.button {
    padding: 0 20px;
    line-height: 36px; }
.widget.cs-widget_instagram.column-4 ul li,
.elementor-widget-wp-widget-loftocean-widget-instagram.column-4 ul li {
  width: 25%; }
.widget.cs-widget_instagram.column-5 ul li,
.elementor-widget-wp-widget-loftocean-widget-instagram.column-5 ul li {
  width: 20%; }
.widget.cs-widget_instagram.column-6 ul li,
.elementor-widget-wp-widget-loftocean-widget-instagram.column-6 ul li {
  width: 16.6666%; }
.widget.cs-widget_instagram.column-7 ul li,
.elementor-widget-wp-widget-loftocean-widget-instagram.column-7 ul li {
  width: 14.285%; }
.widget.cs-widget_instagram.column-8 ul li,
.elementor-widget-wp-widget-loftocean-widget-instagram.column-8 ul li {
  width: 12.5%; }

.widget.loftocean-widget_facebook {
  overflow: hidden; }
  .widget.loftocean-widget_facebook > div {
    text-align: center; }

.widget.cs-widget_posts ul,
.elementor-widget-wp-widget-loftocean-widget-posts ul {
  margin: 0;
  list-style: none; }
  .widget.cs-widget_posts ul li,
  .elementor-widget-wp-widget-loftocean-widget-posts ul li {
    position: relative;
    padding: 0; }
    .widget.cs-widget_posts ul li:not(:first-child),
    .elementor-widget-wp-widget-loftocean-widget-posts ul li:not(:first-child) {
      margin-top: 28px; }
.widget.cs-widget_posts .thumbnail,
.widget.cs-widget_posts .post-content,
.elementor-widget-wp-widget-loftocean-widget-posts .thumbnail,
.elementor-widget-wp-widget-loftocean-widget-posts .post-content {
  position: relative;
  z-index: 2;
  pointer-events: none; }
.widget.cs-widget_posts .thumbnail,
.elementor-widget-wp-widget-loftocean-widget-posts .thumbnail {
  position: relative;
  width: 140px;
  height: 140px;
  margin-right: 15px;
  overflow: hidden; }
  .widget.cs-widget_posts .thumbnail img,
  .elementor-widget-wp-widget-loftocean-widget-posts .thumbnail img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 9;
    display: block;
    margin: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
.widget.cs-widget_posts .post-content,
.elementor-widget-wp-widget-loftocean-widget-posts .post-content {
  display: table-cell;
  width: 100%;
  vertical-align: middle; }
.widget.cs-widget_posts .post-link,
.elementor-widget-wp-widget-loftocean-widget-posts .post-link {
  position: relative;
  z-index: 1;
  display: table;
  width: 100%;
  clear: both; }
.widget.cs-widget_posts .post-title,
.elementor-widget-wp-widget-loftocean-widget-posts .post-title {
  margin-bottom: 0;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: var(--blog-title-weight);
  letter-spacing: var(--bt-letter-spacing);
  text-transform: var(--bt-text-transform);
  font-style: var(--bt-style);
  transition: color 0.4s; }
.no-touch .widget.cs-widget_posts .post-link:hover .post-title, .no-touch
.elementor-widget-wp-widget-loftocean-widget-posts .post-link:hover .post-title {
  color: var(--primary-color); }
.widget.cs-widget_posts .meta-wrap,
.elementor-widget-wp-widget-loftocean-widget-posts .meta-wrap {
  margin-top: 5px; }
.widget.cs-widget_posts .meta-item,
.elementor-widget-wp-widget-loftocean-widget-posts .meta-item {
  display: inline-block;
  margin-right: 5px; }
  .widget.cs-widget_posts .meta-item:last-child,
  .elementor-widget-wp-widget-loftocean-widget-posts .meta-item:last-child {
    margin-right: 0; }
    .widget.cs-widget_posts .meta-item:last-child:after,
    .elementor-widget-wp-widget-loftocean-widget-posts .meta-item:last-child:after {
      display: none; }
.widget.cs-widget_posts.with-post-number ul li,
.elementor-widget-wp-widget-loftocean-widget-posts.with-post-number ul li {
  counter-increment: step-counter; }
.widget.cs-widget_posts.with-post-number ul li .post-content,
.elementor-widget-wp-widget-loftocean-widget-posts.with-post-number ul li .post-content {
  padding-left: 0; }
.widget.cs-widget_posts.with-post-number ul li .post-content:before,
.elementor-widget-wp-widget-loftocean-widget-posts.with-post-number ul li .post-content:before {
  display: none; }
.widget.cs-widget_posts.with-post-number .thumbnail:before, .widget.cs-widget_posts.with-post-number .thumbnail:after,
.elementor-widget-wp-widget-loftocean-widget-posts.with-post-number .thumbnail:before,
.elementor-widget-wp-widget-loftocean-widget-posts.with-post-number .thumbnail:after {
  transition: opacity 0.4s; }
.widget.cs-widget_posts.with-post-number .thumbnail:before,
.elementor-widget-wp-widget-loftocean-widget-posts.with-post-number .thumbnail:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 8;
  background: #000;
  content: "";
  opacity: 0.2; }
.widget.cs-widget_posts.with-post-number .thumbnail:after,
.elementor-widget-wp-widget-loftocean-widget-posts.with-post-number .thumbnail:after {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 9;
  display: block;
  width: 28px;
  height: 22px;
  color: #fff;
  text-align: center;
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 22px;
  content: counter(step-counter);
  pointer-events: none; }
.no-touch .widget.cs-widget_posts.with-post-number .post-link:hover .thumbnail:before, .no-touch .widget.cs-widget_posts.with-post-number .post-link:hover .thumbnail:after, .no-touch
.elementor-widget-wp-widget-loftocean-widget-posts.with-post-number .post-link:hover .thumbnail:before, .no-touch
.elementor-widget-wp-widget-loftocean-widget-posts.with-post-number .post-link:hover .thumbnail:after {
  opacity: 0; }

.widget .social-nav {
  margin: 0; }

.sidebar .wp-block-latest-posts.wp-block-latest-posts__list {
  margin: 0; }
  .sidebar .wp-block-latest-posts.wp-block-latest-posts__list li {
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
    .sidebar .wp-block-latest-posts.wp-block-latest-posts__list li a {
      font-family: var(--heading-font);
      font-size: 18px;
      font-size: 1.125rem;
      font-weight: 600;
      line-height: 30px; }

.sidebar .wp-block-latest-comments li {
  font-size: 14px;
  font-size: 0.875rem; }
  .sidebar .wp-block-latest-comments li:not(:last-child) {
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
  .sidebar .wp-block-latest-comments li .wp-block-latest-comments__comment-link {
    display: block;
    margin-top: 5px;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    font-family: var(--heading-font); }
    .no-touch .sidebar .wp-block-latest-comments li .wp-block-latest-comments__comment-link:hover {
      color: var(--primary-color); }

.sidebar .widget_block.widget_search .wp-block-search__inside-wrapper {
  position: relative; }
.sidebar .widget_block.widget_search .wp-block-search__button {
  position: absolute;
  right: 0;
  top: 0;
  width: 60px;
  height: 42px;
  background: none;
  border: none;
  box-shadow: none;
  color: inherit;
  font-size: 0; }
  .sidebar .widget_block.widget_search .wp-block-search__button:before {
    position: relative;
    z-index: 3;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font: normal normal normal 14px/1 "Font Awesome 5 Free";
    font-size: inherit;
    text-rendering: auto;
    line-height: inherit;
    font-weight: 900;
    font-size: 16px;
    font-size: 1rem;
    line-height: 42px;
    content: "\f002"; }
.sidebar .widget_block.widget_search .wp-block-search__label {
  font-family: var(--widget-title-font);
  font-size: var(--widget-title-size);
  font-weight: var(--widget-title-weight);
  letter-spacing: var(--widget-title-spacing);
  text-transform: var(--widget-title-trans);
  font-style: var(--widget-title-style); }

.sidebar .wp-block-archives,
.sidebar .wp-block-categories {
  margin: 0;
  list-style: none; }
  .sidebar .wp-block-archives li,
  .sidebar .wp-block-categories li {
    position: relative; }
    .sidebar .wp-block-archives li:not(:last-child), .sidebar .wp-block-categories li:not(:last-child) {
      margin-bottom: 8px;
      padding-bottom: 8px;
      border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
      .dark-color .sidebar .wp-block-archives li:not(:last-child),
      .dark-color .sidebar .wp-block-categories li:not(:last-child) {
        border-bottom-color: rgba(255, 255, 255, 0.1); }
    .sidebar .wp-block-archives li a,
    .sidebar .wp-block-categories li a {
      font-size: 15px;
      font-size: 0.9375rem;
      line-height: 30px; }
      .no-touch .sidebar .wp-block-archives li a:hover,
      .no-touch .sidebar .wp-block-categories li a:hover {
        color: var(--link-color); }
    .sidebar .wp-block-archives li ul,
    .sidebar .wp-block-categories li ul {
      margin-top: 7.5px;
      margin-left: 20px;
      clear: both; }
      .sidebar .wp-block-archives li ul li,
      .sidebar .wp-block-categories li ul li {
        border-bottom: none !important;
        padding-bottom: 0 !important; }

/* Widgets Area
   ========================================================================== */
.widget-area .widget p,
.widget-area .widget .textwidget ul,
.widget-area .widget .textwidget ol {
  margin-bottom: 15px;
  font-size: 14px;
  font-size: 0.875rem; }
.widget-area .widget.widget_search form.search-form {
  max-width: none; }

/* MailChimp for WordPress form
   ========================================================================== */
.mc4wp-form {
  max-width: 100%; }
  .mc4wp-form .mc4wp-form-fields > * {
    margin-bottom: 15px; }
    .mc4wp-form .mc4wp-form-fields > *:last-child {
      margin-bottom: 0; }
  .mc4wp-form .text-small {
    font-size: 14px;
    font-size: 0.875rem; }
  .mc4wp-form .agree-to-terms {
    position: relative;
    padding-left: 23px; }
    .mc4wp-form .agree-to-terms input[type="checkbox"] {
      position: absolute;
      top: 3px;
      left: 0; }
  .mc4wp-form a {
    text-decoration: underline; }
  .mc4wp-form .fields-container {
    position: relative;
    width: 100%; }
    .mc4wp-form .fields-container input[type="email"] {
      border-color: currentColor; }
    .mc4wp-form .fields-container button[type="submit"] {
      position: absolute;
      z-index: 3;
      top: 0;
      right: 15px;
      width: auto;
      padding: 0;
      background: none;
      border: none;
      color: inherit;
      font-family: var(--btn-font);
      font-size: 16px;
      font-size: 1rem;
      line-height: 52px;
      font-weight: 400;
      letter-spacing: 0;
      text-transform: none; }
      .cs-form-underline .mc4wp-form .fields-container button[type="submit"] {
        right: 0; }
      .mc4wp-form .fields-container button[type="submit"]:after {
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        font: normal normal normal 14px/1 "Font Awesome 5 Free";
        font-size: inherit;
        text-rendering: auto;
        line-height: inherit;
        font-weight: 900;
        content: "\f1d8";
        font-weight: 400;
        margin-left: 12px; }
  .mc4wp-form.cs-form-underline .fields-container button[type="submit"] {
    right: 0; }

/* Sidebar Widgets Area
   ========================================================================== */
.sidebar .widget:not(:first-child),
.elementor-widget-sidebar .widget:not(:first-child) {
  margin-top: 60px; }
.sidebar .widget:last-child,
.elementor-widget-sidebar .widget:last-child {
  margin-bottom: 0; }

/* Site Footer
   ========================================================================== */
.site-footer {
  clear: both; }
  .site-footer .widget-area {
    padding: 0 0 50px; }
    .site-footer .widget-area .widget-area-row {
      width: 100%;
      overflow: hidden; }
    .site-footer .widget-area .widget {
      margin-top: 50px; }
  .site-footer .site-footer-bottom {
    padding: 30px 0;
    background: #111;
    color: #fff;
    font-size: 14px;
    font-size: 0.875rem;
    text-align: center; }
    .site-footer .site-footer-bottom a {
      color: inherit; }
    .site-footer .site-footer-bottom .widget.widget_text {
      padding: 10px 0; }
    .site-footer .site-footer-bottom .widget.widget_nav_menu > div {
      font-size: 0; }
    .site-footer .site-footer-bottom .widget.widget_nav_menu ul {
      display: inline-block;
      margin: 10px auto; }
      .site-footer .site-footer-bottom .widget.widget_nav_menu ul li {
        display: inline-block;
        padding: 0;
        margin: 0;
        border: none; }
        .site-footer .site-footer-bottom .widget.widget_nav_menu ul li a {
          display: block;
          padding: 5px 15px;
          font-family: var(--nav-font);
          font-size: var(--fbnav-font-size);
          font-weight: var(--fbnav-font-weight);
          letter-spacing: var(--fbnav-font-letter-spacing);
          text-transform: var(--fbnav-font-transform); }

/* Footer Instagram Feed
   ========================================================================== */
.site-footer-instagram .widget.cs-widget_instagram {
  position: relative;
  margin: 0;
  text-align: center;
  overflow: hidden; }
  .site-footer-instagram .widget.cs-widget_instagram .widget-title {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 99;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 120px;
    height: 120px;
    padding: 0 10px;
    margin-bottom: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.9);
    color: #000;
    font-family: inherit;
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.3;
    font-weight: 500;
    letter-spacing: 0;
    text-align: center;
    overflow: hidden; }
    .site-footer-instagram .widget.cs-widget_instagram .widget-title:before {
      display: block;
      font-family: "Font Awesome 5 Brands";
      font-weight: 400;
      content: "\f16d";
      font-size: 18px;
      font-size: 1.125rem;
      margin-bottom: 5px; }
  .site-footer-instagram .widget.cs-widget_instagram ul li {
    padding: 0; }
  .site-footer-instagram .widget.cs-widget_instagram.column-4 ul li {
    width: 25%; }
  .site-footer-instagram .widget.cs-widget_instagram.column-5 ul li {
    width: 20%; }
  .site-footer-instagram .widget.cs-widget_instagram.column-6 ul li {
    width: 16.666%; }
  .site-footer-instagram .widget.cs-widget_instagram.column-7 ul li {
    width: 14.28%; }
  .site-footer-instagram .widget.cs-widget_instagram.column-8 ul li {
    width: 12.5%; }

.to-top {
  --to-top-size: 46px;
  position: fixed;
  right: 20px;
  bottom: 30px;
  z-index: 1000;
  display: block;
  width: var(--to-top-size);
  height: var(--to-top-size);
  border-radius: 0;
  border: 1px solid var(--primary-color);
  color: var(--primary-color);
  text-align: center;
  line-height: var(--to-top-size);
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  overflow: hidden;
  transition: opacity 0.4s, transform 0.4s, background 0.4s, color 0.4s;
  box-sizing: content-box; }
  .to-top:before {
    font-family: 'ElegantIcons';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    content: "\32";
    font-size: 24px;
    font-size: 1.5rem;
    line-height: var(--to-top-size); }
  .to-top.show {
    opacity: 1;
    pointer-events: auto;
    visibility: visible; }
  .no-touch .to-top.show:hover {
    background: var(--primary-color);
    color: #fff; }

/* Popup Box
   ========================================================================== */
.cs-popup-box {
  position: fixed;
  z-index: 100002;
  top: 0;
  left: 0;
  display: flex;
  padding: 0;
  max-width: 100%;
  background-color: var(--bg-color);
  overflow: hidden;
  transition: 0.4s;
  visibility: hidden;
  transition: visibility 0s 0.35s, opacity 0.3s 0s;
  opacity: 0; }
  .cs-popup-box.cs-popup-fullsize {
    width: 100%;
    height: 100%; }
  .cs-popup-box:not(.cs-popup-fullsize) {
    width: var(--popup-width);
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
  .cs-popup-box.show {
    visibility: visible;
    opacity: 1;
    transition-delay: 0s; }
  .cs-popup-box .screen-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1; }
  .cs-popup-box .close-button {
    position: absolute;
    top: 0;
    right: 0;
    color: #fff;
    background: rgba(0, 0, 0, 0.2); }
  .cs-popup-box.cs-popup-fullsize .close-button {
    top: 20px;
    right: 20px; }
  .cs-popup-box .container {
    position: relative;
    z-index: 3;
    display: flex;
    /*align-items: center;*/
    padding: 0;
    max-width: 100%; }
    .cs-popup-box .container > * {
      width: 100%; }
    .cs-popup-box .container > .elementor {
      max-height: 100vh;
      padding: 50px;
      overflow: auto;
      -ms-overflow-style: none;
      scrollbar-width: none;
      -webkit-overflow-scrolling: touch; }
      .cs-popup-box .container > .elementor::-webkit-scrollbar {
        display: none; }

/* Cookie Law Popup
   ========================================================================== */
.cs-cookies-popup {
  position: fixed;
  z-index: 1003;
  left: 50%;
  bottom: 40px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  display: block;
  align-items: center;
  width: auto;
  height: auto;
  background: var(--bg-color);
  border-radius: 5px;
  box-shadow: rgba(0, 0, 0, 0.24) 0px 6px 32px 0px;
  color: var(--text-color);
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.2;
  overflow: hidden;
  transition: 0.4s;
  visibility: hidden;
  transition: visibility 0s 0.35s, opacity 0.3s 0s;
  opacity: 0; }
  .cs-cookies-popup.show {
    visibility: visible;
    opacity: 1;
    transition-delay: 0s; }
  .cs-cookies-popup .container {
    padding: 10px 20px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center; }
  .cs-cookies-popup .cookies-msg a {
    font-weight: 600;
    color: var(--link-color); }
  .cs-cookies-popup .cookies-buttons {
    margin-left: 10px; }

/* Search Screen
   ========================================================================== */
.search-screen {
  position: fixed;
  z-index: 999;
  top: 0;
  right: 0;
  display: block;
  width: 100vw;
  height: 100%;
  padding: 0;
  background: inherit;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s; }
  @media screen and (min-width: 783px) {
    .logged-in.admin-bar .search-screen {
      top: 32px;
      height: calc(100% - 32px); } }
  .search-screen.show {
    opacity: 1;
    pointer-events: auto;
    visibility: visible; }
  .search-screen .container {
    width: 100vw;
    height: 100%;
    padding: 0; }
  .search-screen .close-button {
    position: absolute;
    top: 80px;
    right: 30px;
    background: none;
    color: inherit; }
    .search-screen .close-button:before, .search-screen .close-button:after {
      width: 38px;
      height: 2px; }
  .search-screen .search-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: calc(100% - 40px);
    max-width: 660px; }
  .search-screen .search-form:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 3;
    left: 15px;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font: normal normal normal 14px/1 "Font Awesome 5 Free";
    font-size: inherit;
    text-rendering: auto;
    line-height: inherit;
    font-weight: 900;
    font-size: 16px;
    font-size: 1rem;
    line-height: 40px;
    content: "\f002"; }
  .search-screen .search-form {
    max-width: 100%; }
  .search-screen .search-form input[type="search"] {
    padding: 0 0 0 50px;
    height: 50px;
    border: none;
    border-bottom: 2px solid;
    border-radius: 0;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 50px; }
  .search-screen button.search-submit {
    display: none; }

@media screen and (min-width: 1024px) {
  .search-screen .close-button {
    right: 80px; }
  .search-screen .search-form:before {
    left: 25px;
    font-size: 20px;
    font-size: 1.25rem; }
  .search-screen .search-form input[type="search"] {
    padding: 0 0 0 80px;
    height: 70px;
    font-size: 30px;
    font-size: 1.875rem;
    line-height: 70px; } }
@media screen and (min-width: 1200px) {
  .sidebar {
    padding-bottom: 100px; }

  .site-footer .site-footer-bottom:not(.column-single) .container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center; }
    .site-footer .site-footer-bottom:not(.column-single) .container > .widget {
      flex: 1;
      flex-grow: 1; }
      .site-footer .site-footer-bottom:not(.column-single) .container > .widget:first-child:not(:only-child) {
        text-align: left; }
        .site-footer .site-footer-bottom:not(.column-single) .container > .widget:first-child:not(:only-child) ul.menu {
          margin-left: -15px; }
      .site-footer .site-footer-bottom:not(.column-single) .container > .widget:last-child:not(:only-child) {
        text-align: right; }
        .site-footer .site-footer-bottom:not(.column-single) .container > .widget:last-child:not(:only-child) ul.menu {
          margin-right: -15px; } }
@media screen and (max-width: 600px) {
  .site-footer-instagram .widget.cs-widget_instagram.column-4 ul li {
    width: 50%; }
  .site-footer-instagram .widget.cs-widget_instagram.column-5 ul li {
    width: 50%; }
    .site-footer-instagram .widget.cs-widget_instagram.column-5 ul li:last-child {
      display: none; }
  .site-footer-instagram .widget.cs-widget_instagram.column-6 ul li {
    width: 33.3333%; }
  .site-footer-instagram .widget.cs-widget_instagram.column-7 ul li {
    width: 33.3333%; }
    .site-footer-instagram .widget.cs-widget_instagram.column-7 ul li:last-child {
      display: none; }
  .site-footer-instagram .widget.cs-widget_instagram.column-8 ul li {
    width: 25%; }

  .mc4wp-form .fields-container input[type="email"] {
    padding-right: 120px; }

  .cs-cookies-popup {
    width: calc(100% - 20px);
    bottom: 20px; } }
@media screen and (max-width: 480px) {
  .site-footer .site-footer-bottom .widget.widget_nav_menu ul li a {
    padding-right: 8px;
    padding-left: 8px; } }
/* ==========================================================================
   8.0 Forms
   ========================================================================== */
::-webkit-input-placeholder {
  color: currentColor;
  opacity: 0.5; }
  .placeholder-normal ::-webkit-input-placeholder {
    opacity: 1; }

:-moz-placeholder {
  color: currentColor;
  opacity: 0.5; }
  .placeholder-normal :-moz-placeholder {
    opacity: 1; }

:-ms-input-placeholder {
  color: currentColor;
  opacity: 0.5; }
  .placeholder-normal :-ms-input-placeholder {
    opacity: 1; }

form * {
  outline: 0; }
form ul {
  position: relative;
  margin: 0 auto;
  list-style: none; }
  form ul > li > label {
    display: block;
    margin-bottom: 0;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 2; }
form li fieldset {
  padding: 0;
  margin: 0;
  border: none; }
form button {
  cursor: pointer; }

input[type="text"], input[type="email"], input[type="url"], input[type="file"], input[type="password"], input[type="number"], input[type="date"], input[type="search"], input[type="tel"], textarea, select {
  height: 52px;
  padding: 5px var(--form-side-padding);
  background: none;
  border-color: var(--form-bd);
  border-style: solid;
  border-width: var(--form-bd-width);
  border-radius: var(--form-radius);
  color: var(--text-color);
  font-size: 16px;
  font-size: 1rem;
  line-height: 2;
  font-weight: 400;
  transition: 0.3s;
  -webkit-appearance: none; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="url"]:focus,
  input[type="file"]:focus,
  input[type="password"]:focus,
  input[type="number"]:focus,
  input[type="date"]:focus,
  input[type="search"]:focus,
  input[type="tel"]:focus,
  textarea:focus,
  select:focus {
    outline: 0;
    border-color: var(--form-bd-focus); }
  .cs-form-underline input[type="text"],
  .cs-form-underline input[type="email"],
  .cs-form-underline input[type="url"],
  .cs-form-underline input[type="file"],
  .cs-form-underline input[type="password"],
  .cs-form-underline input[type="number"],
  .cs-form-underline input[type="date"],
  .cs-form-underline input[type="search"],
  .cs-form-underline input[type="tel"],
  .cs-form-underline textarea,
  .cs-form-underline select {
    border-top: none;
    border-right: none;
    border-left: none; }
  .cs-form-underline .cs-form-square input[type="text"], .cs-form-underline .cs-form-rounded input[type="text"], .cs-form-underline .cs-form-pill input[type="text"], .cs-form-underline .cs-form-square input[type="email"], .cs-form-underline .cs-form-rounded input[type="email"], .cs-form-underline .cs-form-pill input[type="email"], .cs-form-underline .cs-form-square input[type="url"], .cs-form-underline .cs-form-rounded input[type="url"], .cs-form-underline .cs-form-pill input[type="url"], .cs-form-underline .cs-form-square input[type="file"], .cs-form-underline .cs-form-rounded input[type="file"], .cs-form-underline .cs-form-pill input[type="file"], .cs-form-underline .cs-form-square input[type="password"], .cs-form-underline .cs-form-rounded input[type="password"], .cs-form-underline .cs-form-pill input[type="password"], .cs-form-underline .cs-form-square input[type="number"], .cs-form-underline .cs-form-rounded input[type="number"], .cs-form-underline .cs-form-pill input[type="number"], .cs-form-underline .cs-form-square input[type="date"], .cs-form-underline .cs-form-rounded input[type="date"], .cs-form-underline .cs-form-pill input[type="date"], .cs-form-underline .cs-form-square input[type="search"], .cs-form-underline .cs-form-rounded input[type="search"], .cs-form-underline .cs-form-pill input[type="search"], .cs-form-underline .cs-form-square input[type="tel"], .cs-form-underline .cs-form-rounded input[type="tel"], .cs-form-underline .cs-form-pill input[type="tel"], .cs-form-underline .cs-form-square textarea, .cs-form-underline .cs-form-rounded textarea, .cs-form-underline .cs-form-pill textarea, .cs-form-underline .cs-form-square select, .cs-form-underline .cs-form-rounded select, .cs-form-underline .cs-form-pill select {
    border-color: var(--form-bd);
    border-style: solid;
    border-width: var(--form-bd-width); }
  input[type="text"].error, input[type="email"].error, input[type="url"].error, input[type="file"].error, input[type="password"].error, input[type="number"].error, input[type="date"].error, input[type="search"].error, input[type="tel"].error, textarea.error, select.error {
    --form-bd: #a00; }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="file"],
input[type="password"],
input[type="number"],
input[type="date"],
input[type="search"],
input[type="tel"],
textarea {
  width: 100%; }

.cs-form-underline {
  --form-radius: 0px;
  --form-side-padding: 0px; }

.cs-form-square {
  --form-radius: 0px;
  --form-side-padding: 15px; }

.cs-form-rounded {
  --form-radius: 5px;
  --form-side-padding: 15px; }

.cs-form-pill {
  --form-radius: 50px;
  --form-side-padding: 15px; }

textarea {
  display: block;
  min-height: 120px;
  resize: vertical; }

input[type="submit"] {
  position: relative;
  z-index: 9;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 48px;
  height: var(--btn-height);
  background: var(--btn-bg);
  border: none;
  border-radius: var(--btn-radius);
  color: var(--btn-color);
  font-family: var(--btn-font);
  font-size: var(--btn-font-size);
  font-weight: var(--btn-font-weight);
  letter-spacing: var(--btn-letter-spacing);
  text-transform: var(--btn-text-transform);
  line-height: 1;
  text-align: center;
  transition: 0.4s;
  cursor: pointer; }
  .no-touch input[type="submit"]:not(.cs-btn-underline):hover {
    background: var(--btn-bg-hover);
    color: var(--btn-color-hover);
    border-color: var(--btn-bg-hover); }

select {
  -webkit-appearance: auto; }

form.post-password-form label {
  position: relative;
  z-index: 9;
  display: inline-block;
  width: 280px;
  height: 52px;
  padding-left: 10px;
  color: #1a1b1a;
  font-family: var(--heading-font);
  font-size: 16px;
  font-size: 1rem;
  line-height: 52px;
  text-align: left;
  vertical-align: bottom; }
  form.post-password-form label input[type="password"] {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    padding: 0 0 0 80px; }
form.post-password-form input[type="submit"] {
  width: 130px;
  margin: 8px 0 0 0;
  padding: 0; }

.search-form {
  position: relative;
  max-width: 600px; }
  .search-form input[type="search"] {
    padding-right: 60px;
    height: 50px;
    font-size: 16px;
    font-size: 1rem; }
  .search-form .search-submit {
    position: absolute;
    right: 0;
    top: 0;
    width: 60px;
    height: 50px;
    background: none;
    border: none;
    box-shadow: none;
    color: inherit; }
    .search-form .search-submit:before {
      position: relative;
      z-index: 3;
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      display: inline-block;
      font: normal normal normal 14px/1 "Font Awesome 5 Free";
      font-size: inherit;
      text-rendering: auto;
      line-height: inherit;
      font-weight: 900;
      font-size: 16px;
      font-size: 1rem;
      line-height: 50px;
      content: "\f002"; }

.cs-form-label {
  font-family: var(--heading-font);
  font-size: 16px;
  font-size: 1rem; }

.light-color select option {
  background: #fff;
  color: #000; }
.dark-color select option {
  background: #000;
  color: #fff; }

.bbp-search-form input[type="text"] {
  display: inline-block;
  width: auto; }

#bbpress-forums div.bbp-the-content-wrapper .quicktags-toolbar input[type="button"] {
  letter-spacing: 0; }

.wpcf7-form select {
  width: 100%; }
.wpcf7-form .wpcf7-spinner {
  position: absolute; }
.dark-color .wpcf7-form ::-webkit-calendar-picker-indicator {
  filter: invert(1); }
.wpcf7-form p {
  margin-bottom: 20px; }
.wpcf7-form input[type="submit"] {
  width: 100%; }

.select-wrap {
  position: relative; }
  .select-wrap:after {
    font-family: 'ElegantIcons';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    content: "\33";
    font-size: 16px;
    position: absolute;
    right: 5px;
    top: 0;
    line-height: 42px; }

@media screen and (min-width: 600px) {
  form.post-password-form input[type="submit"] {
    margin: 0 0 0 8px; }

  .form-submit input[type="submit"] {
    padding: 0 45px; } }
@media screen and (min-width: 768px) {
  .select-wrap.col-1-2:after, .select-wrap.col-1-3:after {
    right: 20px; } }
/* ==========================================================================
   9.0 Media
   ========================================================================== */
.site .avatar {
  border-radius: 50%; }

.entry-content .wp-smiley,
.comment-content .wp-smiley,
.textwidget .wp-smiley {
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
  border: none; }

.comment-content a img,
.textwidget a img {
  display: block; }

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object,
video {
  margin-bottom: 30px;
  max-width: 100%;
  border: none;
  vertical-align: middle; }
  p > embed, p >
  iframe, p >
  object, p >
  video {
    margin-bottom: 0; }

.fluid-width-video-wrapper {
  margin-bottom: 30px; }
  .fluid-width-video-wrapper iframe {
    margin-bottom: 0; }

.wp-block-embed-twitter iframe {
  margin-bottom: 0; }

.wp-video-shortcode {
  margin-bottom: 30px; }

#page .wp-playlist {
  margin: 0 0 30px;
  padding-bottom: 0; }
  #page .wp-playlist .wp-playlist-tracks {
    margin-top: 0; }
  #page .wp-playlist a {
    border-bottom: none;
    box-shadow: none !important; }

.wp-playlist-item .wp-playlist-caption {
  padding: 15px 0;
  margin-left: 0;
  color: inherit !important; }

.wp-playlist-item .wp-playlist-item-length {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }

.mejs-container a {
  padding-bottom: 0;
  border-bottom: none;
  box-shadow: none !important; }

/**
 * Captions
 */
.wp-caption {
  margin: 30px 0;
  max-width: 100%;
  clear: both; }
  .wp-caption.aligncenter {
    text-align: center; }

.wp-caption-text,
figcaption {
  display: block;
  padding: 14px 0;
  text-align: center;
  line-height: 1.5;
  font-weight: 400;
  font-size: smaller;
  color: var(--text-lighter); }

.entry-content p > img.alignnone {
  margin-top: 30px;
  margin-bottom: 30px; }
  .entry-content p > img.alignnone:first-child {
    margin-top: 0; }
  .entry-content p > img.alignnone:last-child {
    margin-bottom: 0; }

.blocks-gallery-grid + .blocks-gallery-caption {
  padding-top: 0; }

.blocks-gallery-grid .blocks-gallery-item figcaption {
  opacity: 1;
  font-family: var(--body-font);
  font-size: 14px;
  font-size: 0.875rem;
  font-style: normal; }

img[class*="wp-image-"] {
  display: block;
  margin-left: 0; }
  img[class*="wp-image-"].aligncenter {
    margin-right: auto;
    margin-left: auto; }
  img[class*="wp-image-"].alignright {
    margin-right: 0;
    margin-left: 30px; }

/**
 * Galleries
 */
.gallery {
  margin: 0 -2px 30px; }
  .gallery .gallery-item {
    float: left;
    display: inline-block;
    width: 100%;
    max-width: 33.33%;
    text-align: center;
    vertical-align: top; }
    .gallery .gallery-item .gallery-icon {
      font-size: 0;
      padding: 0 2px 4px; }
      .gallery .gallery-item .gallery-icon a {
        transition: 0s; }
      .gallery .gallery-item .gallery-icon img {
        margin: 0 auto; }
    .gallery .gallery-item .gallery-caption {
      padding: 6px 10px 20px; }
  .gallery.gallery-columns-1 .gallery-item {
    max-width: 100%; }
  .gallery.gallery-columns-2 .gallery-item {
    max-width: 50%; }
  .gallery.gallery-columns-4 .gallery-item {
    max-width: 25%; }
  .gallery.gallery-columns-5 .gallery-item {
    max-width: 20%; }
  .gallery.gallery-columns-6 .gallery-item {
    max-width: 16.66%; }
  .gallery.gallery-columns-7 .gallery-item {
    max-width: 14.28%; }
  .gallery.gallery-columns-8 .gallery-item {
    max-width: 12.5%; }
  .gallery.gallery-columns-9 .gallery-item {
    max-width: 11.11%; }
  .gallery.gallery-columns-1 .gallery-item, .gallery.gallery-columns-2 .gallery-item:nth-child(2n+1), .gallery.gallery-columns-3 .gallery-item:nth-child(3n+1), .gallery.gallery-columns-4 .gallery-item:nth-child(4n+1), .gallery.gallery-columns-5 .gallery-item:nth-child(5n+1), .gallery.gallery-columns-6 .gallery-item:nth-child(6n+1), .gallery.gallery-columns-7 .gallery-item:nth-child(7n+1), .gallery.gallery-columns-8 .gallery-item:nth-child(8n+1), .gallery.gallery-columns-9 .gallery-item:nth-child(9n+1) {
    clear: left; }

.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
  display: none; }

/**
 * Embeded Twitter Tweet
 */
.entry-content .twitter-tweet.twitter-tweet-rendered {
  margin-left: 0; }

@media screen and (max-width: 599px) {
  .gallery:not(.gallery-columns-1):not(.gallery-columns-2) .gallery-item .gallery-caption {
    display: none; } }
/* ==========================================================================
   10.0 - Shortcode & Blocks
   ========================================================================== */
/* Gutenberg Elements
   ========================================================================== */
.entry-content *[class*="wp-block-"] {
  margin-bottom: 30px; }
  .entry-content *[class*="wp-block-"] *[class*="wp-block-"] {
    margin-bottom: 0; }
  .entry-content *[class*="wp-block-"] .wp-block-heading:not(:last-child) {
    margin-bottom: 30px; }

.entry-content .wp-block-group__inner-container > *[class*="wp-block-"],
.entry-content .wp-block-column > *[class*="wp-block-"] {
  margin-bottom: 30px; }

.entry-content .small-margin h1,
.entry-content .small-margin h2,
.entry-content .small-margin h3,
.entry-content .small-margin h4,
.entry-content .small-margin h5,
.entry-content .small-margin h6 {
  margin-bottom: 7.5px; }
  .entry-content .small-margin h1:last-child,
  .entry-content .small-margin h2:last-child,
  .entry-content .small-margin h3:last-child,
  .entry-content .small-margin h4:last-child,
  .entry-content .small-margin h5:last-child,
  .entry-content .small-margin h6:last-child {
    margin-bottom: 0; }
.entry-content .small-margin p {
  margin-bottom: 15px; }
  .entry-content .small-margin p:last-child {
    margin-bottom: 0; }

.entry-content h1.small-margin,
.entry-content h2.small-margin,
.entry-content h3.small-margin,
.entry-content h4.small-margin,
.entry-content h5.small-margin,
.entry-content h6.small-margin {
  margin-bottom: 7.5px; }
.entry-content p.small-margin {
  margin-bottom: 15px; }

.light-color .light-grey[class*="wp-block-"] {
  background-color: #fafafa; }

.dark-color .light-grey[class*="wp-block-"] {
  background-color: #191919; }
  .dark-color .light-grey[class*="wp-block-"] .wp-block-social-link {
    color: #fff !important; }

.alignleft[class*="wp-block-"] {
  margin-right: 30px; }

.alignright[class*="wp-block-"] {
  margin-left: 30px; }

.aligncenter[class*="wp-block-"] {
  clear: both; }

.entry-content .wp-block-spacer {
  margin-top: 0 !important;
  margin-bottom: 0 !important; }
  .entry-content .wp-block-spacer + * {
    margin-top: 0 !important; }

.wp-block-media-text .wp-block-media-text__content {
  width: 100%; }
  .wp-block-media-text .wp-block-media-text__content > * {
    margin-bottom: 15px; }
    .wp-block-media-text .wp-block-media-text__content > *:first-child {
      margin-top: 15px; }

.wp-block-media-text.has-background .wp-block-media-text__content {
  padding-top: 8%;
  padding-bottom: 8%; }

.wp-embed-responsive .wp-block-embed[class*="wp-embed-aspect-"] .wp-block-embed__wrapper:before {
  display: none; }

.no-touch .wp-block-gallery a:hover, .no-touch
.wp-block-button a:hover {
  text-decoration: none; }

.wp-block-image .alignleft {
  margin-right: 30px;
  margin-bottom: 30px; }

.wp-block-image .alignright {
  margin-left: 30px;
  margin-bottom: 30px; }

.wp-block-image.alignnone {
  display: inline-block;
  margin-top: 0 !important;
  width: auto; }

.wp-block-image img {
  margin: 0; }

.wp-block-image img[class*="wp-image-"] {
  display: block; }

.wp-block-image figcaption {
  margin-top: 0;
  margin-bottom: 0;
  padding-bottom: 0; }

/**
 * Gutenberg Heading Font Size
 */
.entry-content .has-small-font-size {
  font-size: .8125em; }
.entry-content .has-normal-font-size,
.entry-content .has-regular-font-size {
  font-size: 1em; }
.entry-content .has-medium-font-size {
  font-size: 1.25em; }
.entry-content .has-large-font-size {
  font-size: 2.25em; }
.entry-content .has-huge-font-size,
.entry-content .has-larger-font-size {
  font-size: 2.625em; }

/**
 * Gutenberg Button
 */
.light-color .wp-block-button .wp-block-button__link:not(.has-background) {
  background: #111; }
.light-color .wp-block-button .wp-block-button__link:not(.has-text-color) {
  color: #fff; }
.dark-color .wp-block-button .wp-block-button__link:not(.has-background) {
  background: #fff; }
.dark-color .wp-block-button .wp-block-button__link:not(.has-text-color) {
  color: #111; }
.wp-block-button.is-style-outline {
  background: none;
  color: inherit; }
  .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background) {
    background: none; }
  .wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color) {
    color: inherit; }
.no-touch .wp-block-button .wp-block-button__link:hover {
  opacity: 0.7; }
.wp-block-button.aligncenter {
  text-align: center; }
.wp-block-button.alignleft, .wp-block-button.alignright {
  margin-top: 8px; }

.wp-block-buttons > *:not(:last-child) {
  margin-bottom: .5em !important; }

.wp-block-button__link {
  padding: 10px 30px;
  border-radius: 5px;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500; }

.wp-block-file * + .wp-block-file__button {
  margin-right: 10px; }
.wp-block-file .wp-block-file__button {
  padding: 10px 30px;
  background: var(--btn-bg);
  border-radius: var(--btn-radius);
  color: var(--btn-color);
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500; }
  .no-touch .wp-block-file .wp-block-file__button:hover {
    box-shadow: none;
    opacity: 0.7; }

/**
 * Gutenberg Cover
 */
.wp-block-cover,
.wp-block-cover-image {
  color: #fff;
  padding: 50px; }
  .wp-block-cover .wp-block-cover-image-text a,
  .wp-block-cover .wp-block-cover-text a,
  .wp-block-cover .wp-block-cover__inner-container a,
  .wp-block-cover-image .wp-block-cover-image-text a,
  .wp-block-cover-image .wp-block-cover-text a,
  .wp-block-cover-image .wp-block-cover__inner-container a {
    color: inherit; }
    .no-touch .wp-block-cover .wp-block-cover-image-text a:hover,
    .no-touch .wp-block-cover .wp-block-cover-text a:hover,
    .no-touch .wp-block-cover .wp-block-cover__inner-container a:hover,
    .no-touch .wp-block-cover-image .wp-block-cover-image-text a:hover,
    .no-touch
    .wp-block-cover-image .wp-block-cover-text a:hover,
    .no-touch
    .wp-block-cover-image .wp-block-cover__inner-container a:hover {
      color: #fff;
      text-decoration-color: #fff; }
  .wp-block-cover .wp-block-cover-image-text,
  .wp-block-cover .wp-block-cover-text,
  .wp-block-cover .wp-block-cover__inner-container,
  .wp-block-cover-image .wp-block-cover-image-text,
  .wp-block-cover-image .wp-block-cover-text,
  .wp-block-cover-image .wp-block-cover__inner-container {
    width: 100%;
    max-width: 800px;
    line-height: 1.25; }
  .wp-block-cover .wp-block-cover__inner-container > *:last-child,
  .wp-block-cover-image .wp-block-cover__inner-container > *:last-child {
    margin-bottom: 0; }
  .wp-block-cover h1,
  .wp-block-cover-image h1 {
    margin-top: 0; }
  .wp-block-cover * + h1,
  .wp-block-cover * + h2,
  .wp-block-cover * + h3,
  .wp-block-cover * + h4,
  .wp-block-cover * + h5,
  .wp-block-cover * + h6,
  .wp-block-cover-image * + h1,
  .wp-block-cover-image * + h2,
  .wp-block-cover-image * + h3,
  .wp-block-cover-image * + h4,
  .wp-block-cover-image * + h5,
  .wp-block-cover-image * + h6 {
    margin-top: 0; }
  .wp-block-cover form,
  .wp-block-cover-image form {
    color: inherit; }

.wp-block-column .wp-block-cover {
  height: auto; }

.wp-block-cover.alignleft,
.wp-block-cover.alignright {
  margin-top: 8px; }

/**
 * Gutenberg Group
 */
.wp-block-group.has-background {
  padding: 50px 20px; }
  .wp-block-group.has-background.alignfull + .wp-block-cover.alignfull, .wp-block-group.has-background.alignfull + .wp-block-group.has-background.alignfull, .wp-block-cover.alignfull + .wp-block-group.has-background.alignfull {
    margin-top: -34px; }
.wp-block-group.alignfull {
  padding: 50px 20px; }
.entry-content .wp-block-group.light-color a {
  color: #000; }
.entry-content .wp-block-group.dark-color a {
  color: #fff; }
.entry-content .wp-block-group.has-text-color a {
  color: inherit; }

.entry-content .wp-block-group__inner-container > *:last-child {
  margin-bottom: 0; }

/**
 * Gutenberg Verse
 */
.wp-block-verse {
  padding: 30px;
  background: #f7f7f7;
  border: 1px solid #eee;
  color: #000; }

/**
 * Gutenberg Quote & Pullquote
 */
.wp-block-quote:not(:first-child) {
  margin-top: 50px; }
.wp-block-quote:not(:last-child) {
  margin-bottom: 50px; }
.wp-block-quote.is-large, .wp-block-quote.is-style-large {
  padding: 0 50px;
  margin-right: auto;
  margin-left: auto; }
  .wp-block-quote.is-large:not(.is-style-plain), .wp-block-quote.is-style-large:not(.is-style-plain) {
    padding: 0 50px; }
    .wp-block-quote.is-large:not(.is-style-plain):not(:last-child), .wp-block-quote.is-style-large:not(.is-style-plain):not(:last-child) {
      margin-bottom: 50px; }
  .wp-block-quote.is-large p, .wp-block-quote.is-style-large p {
    font-size: 24px;
    font-size: 1.5rem;
    font-style: normal;
    line-height: 1.25; }
  .wp-block-quote.is-large cite,
  .wp-block-quote.is-large footer, .wp-block-quote.is-style-large cite,
  .wp-block-quote.is-style-large footer {
    text-align: left;
    font-size: 16px;
    font-size: 1rem; }
  .wp-block-quote.is-large.has-text-align-right cite,
  .wp-block-quote.is-large.has-text-align-right footer, .wp-block-quote.is-style-large.has-text-align-right cite,
  .wp-block-quote.is-style-large.has-text-align-right footer {
    text-align: right; }
  .wp-block-quote.is-large.has-text-align-center cite,
  .wp-block-quote.is-large.has-text-align-center footer, .wp-block-quote.is-style-large.has-text-align-center cite,
  .wp-block-quote.is-style-large.has-text-align-center footer {
    text-align: center; }
  .wp-block-quote.is-large:not(.has-text-align-center):before, .wp-block-quote.is-style-large:not(.has-text-align-center):before {
    top: 5px; }
.wp-block-quote.has-text-align-center {
  padding: 0; }
  .entry-content .wp-block-quote.has-text-align-center:before {
    position: relative;
    top: 0;
    width: 100%; }

.wp-block-pullquote {
  padding: 35px;
  border-top: 4px solid;
  border-bottom: 4px solid; }
  .wp-block-pullquote blockquote {
    margin-bottom: 0;
    padding: 0;
    max-width: 100%;
    color: inherit; }
    .wp-block-pullquote blockquote:before {
      display: none; }
  .wp-block-pullquote.is-style-solid-color blockquote {
    max-width: 100%;
    margin-left: 0; }
    .wp-block-pullquote.is-style-solid-color blockquote p {
      font-size: 28px;
      font-size: 1.75rem; }
  .wp-block-pullquote p {
    font-size: 24px;
    font-size: 1.5rem; }
  .wp-block-pullquote.alignleft, .wp-block-pullquote.alignright {
    margin-top: 8px; }
    .wp-block-pullquote.alignleft p, .wp-block-pullquote.alignright p {
      font-size: 20px;
      font-size: 1.25rem; }
    .wp-block-pullquote.alignleft cite, .wp-block-pullquote.alignright cite {
      font-size: 16px;
      font-size: 1rem; }

/**
 * Gutenberg Separator
 */
.wp-block-separator {
  margin: 50px auto !important;
  clear: both;
  height: 0; }
  .wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
    max-width: 100px; }

/**
 * Gutenberg Video, Audio & Embed
 */
.wp-block-video video {
  margin-bottom: 0; }

.wp-block-embed .fluid-width-video-wrapper {
  margin-bottom: 0; }

.wp-block-video figcaption,
.wp-block-embed figcaption,
.wp-block-audio figcaption {
  margin: 0;
  padding-bottom: 0; }

/**
 * Gutenberg Table
 */
.wp-block-table table {
  margin-bottom: 0; }
.wp-block-table tbody th,
.wp-block-table tbody td {
  vertical-align: middle; }
.wp-block-table.is-style-stripes {
  border: none;
  border-bottom: 1px solid #eee; }
  .wp-block-table.is-style-stripes table {
    border: none; }

/**
 * Gutenberg Widgets
 */
.entry-content .wp-block-latest-posts,
.entry-content .wp-block-categories,
.entry-content .wp-block-archives,
.entry-content .wp-block-latest-comments {
  margin-right: 0;
  margin-left: 0;
  list-style: none; }
  .entry-content .wp-block-latest-posts a,
  .entry-content .wp-block-categories a,
  .entry-content .wp-block-archives a,
  .entry-content .wp-block-latest-comments a {
    padding-bottom: 0;
    border-bottom: none;
    box-shadow: none;
    text-decoration: none;
    font-weight: 600; }
    .entry-content .wp-block-latest-posts a:not(:hover),
    .entry-content .wp-block-categories a:not(:hover),
    .entry-content .wp-block-archives a:not(:hover),
    .entry-content .wp-block-latest-comments a:not(:hover) {
      color: inherit; }
  .entry-content .wp-block-latest-posts li,
  .entry-content .wp-block-categories li,
  .entry-content .wp-block-archives li,
  .entry-content .wp-block-latest-comments li {
    padding-right: 0;
    padding-left: 0; }
    .entry-content .wp-block-latest-posts li:before,
    .entry-content .wp-block-categories li:before,
    .entry-content .wp-block-archives li:before,
    .entry-content .wp-block-latest-comments li:before {
      display: none; }

.wp-block-latest-posts {
  line-height: 1.3; }
  .wp-block-latest-posts li {
    padding-bottom: 30px;
    border-bottom: 1px solid var(--border-color); }
  .wp-block-latest-posts li > a {
    display: block;
    font-size: 18px;
    font-size: 1.125rem; }
  .wp-block-latest-posts .wp-block-latest-posts__post-author,
  .wp-block-latest-posts .wp-block-latest-posts__post-date {
    display: inline-block;
    margin-top: 8px; }
  .wp-block-latest-posts .wp-block-latest-posts__post-author + .wp-block-latest-posts__post-date {
    margin-left: 6px; }
  .entry-content .wp-block-latest-posts li:not(:last-child) {
    margin-bottom: 30px; }
  .entry-content .wp-block-latest-posts.is-grid {
    margin-bottom: 0; }
    .entry-content .wp-block-latest-posts.is-grid li {
      margin-bottom: 30px; }

.wp-block-latest-posts__post-author,
.wp-block-latest-posts__post-date {
  color: inherit;
  opacity: 0.5; }

.wp-block-latest-posts__post-excerpt {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6; }
  .wp-block-latest-posts__post-excerpt a {
    font-size: 14px;
    font-size: 0.875rem; }

.entry-content .wp-block-latest-comments li {
  font-size: inherit; }

.entry-content .wp-block-latest-comments li:not(:last-child) {
  margin-bottom: 15px; }

.entry-content .wp-block-latest-comments__comment {
  line-height: 1.35; }

.entry-content .wp-block-latest-comments__comment-author {
  font-weight: 600; }

.entry-content .wp-block-latest-comments__comment-date {
  margin-top: 5px;
  opacity: 0.5; }

.wp-block-tag-cloud {
  display: flex;
  flex-wrap: wrap;
  margin: -4px -2px; }
  .wp-block-tag-cloud a {
    margin: 4px 2px;
    line-height: 28px;
    font-size: 14px !important;
    font-size: 0.875rem !important; }
    .wp-block-tag-cloud a:not(:last-child):after {
      margin: 0 4px 0 8px;
      content: "/"; }
    .no-touch .wp-block-tag-cloud a:hover {
      color: var(--link-color-hover); }
      .no-touch .wp-block-tag-cloud a:hover:after {
        color: var(--text-color); }
    .entry-content .wp-block-tag-cloud a {
      color: var(--text-color); }

.wp-block-calendar table {
  margin-bottom: 0;
  border: none;
  border-collapse: separate;
  border-spacing: 2px; }
  .wp-block-calendar table a {
    box-shadow: none !important;
    text-decoration: none !important; }
  .wp-block-calendar table caption,
  .wp-block-calendar table tbody {
    color: inherit; }
  .wp-block-calendar table caption {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 600; }
  .wp-block-calendar table th,
  .wp-block-calendar table td {
    padding: 0 5px;
    text-align: center;
    border: none !important; }
  .wp-block-calendar table th {
    background: none;
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: 500;
    text-align: center; }
  .wp-block-calendar table td {
    font-size: 16px;
    font-size: 1rem; }
  .wp-block-calendar table tbody td {
    position: relative;
    background: #f7f7f7;
    line-height: 40px; }
    .dark-color .wp-block-calendar table tbody td {
      background: #363636; }
    .wp-block-calendar table tbody td[colspan="2"], .wp-block-calendar table tbody td[colspan="3"], .wp-block-calendar table tbody td[colspan="4"], .wp-block-calendar table tbody td[colspan="5"], .wp-block-calendar table tbody td[colspan="6"] {
      background: none; }
    .wp-block-calendar table tbody td a {
      font-weight: 800; }
    .wp-block-calendar table tbody td a:before {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: var(--primary-color);
      opacity: 0.1;
      content: ""; }
  .wp-block-calendar table tfoot td {
    line-height: 36px;
    font-size: 11px;
    font-size: 0.6875rem;
    text-transform: uppercase; }
    .wp-block-calendar table tfoot td a {
      padding: 2px 10px;
      border: 1px solid #e6e6e6;
      border-radius: 0;
      color: inherit !important; }
      .dark-color .wp-block-calendar table tfoot td a {
        border-color: #393939; }
      .no-touch .wp-block-calendar table tfoot td a:hover {
        background: var(--primary-color);
        border-color: var(--primary-color);
        color: #fff !important; }

.wp-block-calendar .wp-calendar-nav {
  font-size: 0; }
  .wp-block-calendar .wp-calendar-nav .wp-calendar-nav-prev,
  .wp-block-calendar .wp-calendar-nav .wp-calendar-nav-next {
    line-height: 36px;
    font-size: 11px;
    font-size: 0.6875rem;
    text-transform: uppercase; }
    .wp-block-calendar .wp-calendar-nav .wp-calendar-nav-prev a, .wp-block-calendar .wp-calendar-nav .wp-calendar-nav-next a {
      display: inline-block;
      padding: 2px 10px;
      border: 1px solid #e6e6e6;
      border-radius: 0;
      color: inherit !important;
      box-shadow: none !important;
      text-decoration: none !important;
      line-height: 1.5; }
      .dark-color .wp-block-calendar .wp-calendar-nav .wp-calendar-nav-prev a,
      .dark-color .wp-block-calendar .wp-calendar-nav .wp-calendar-nav-next a {
        border-color: #393939; }
      .no-touch .wp-block-calendar .wp-calendar-nav .wp-calendar-nav-prev a:hover, .no-touch .wp-block-calendar .wp-calendar-nav .wp-calendar-nav-next a:hover {
        background: var(--primary-color);
        border-color: var(--primary-color);
        color: #fff !important; }
  .wp-block-calendar .wp-calendar-nav .pad {
    display: inline-block;
    width: 10%; }

.wp-block-search {
  position: relative;
  margin-bottom: 30px; }
  .wp-block-search .wp-block-search__label {
    font-weight: 700; }
  .wp-block-search input[type="search"] {
    width: auto; }
  .wp-block-search .wp-block-search__button {
    padding: 0 10px;
    background: #000;
    border: none;
    color: #fff;
    font-size: 12px;
    font-size: 0.75rem;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.05em;
    cursor: pointer; }
    .wp-block-search .wp-block-search__button svg path {
      fill: #fff; }
  .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper {
    padding: 4px;
    border: 1px solid #949494; }
    .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input {
      border: none; }

.wp-block-rss {
  margin: 0 0 30px;
  list-style: none; }
  #page .wp-block-rss a:not(:hover) {
    color: inherit; }
  .wp-block-rss .wp-block-rss__item {
    padding-bottom: 20px;
    border-bottom: 1px dashed rgba(0, 0, 0, 0.1); }
    .dark-color .wp-block-rss .wp-block-rss__item {
      border-bottom-color: rgba(255, 255, 255, 0.2); }
    .wp-block-rss .wp-block-rss__item:not(:last-child) {
      margin-bottom: 20px; }
  .wp-block-rss .wp-block-rss__item-title {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.5;
    font-weight: 600; }
  .wp-block-rss .wp-block-rss__item-publish-date,
  .wp-block-rss .wp-block-rss__item-author {
    display: inline-block;
    margin-top: 8px;
    color: inherit;
    opacity: 0.5; }
  .wp-block-rss .wp-block-rss__item-publish-date + .wp-block-rss__item-author:before {
    margin-right: 5px;
    content: "."; }
  .wp-block-rss .wp-block-rss__item-excerpt {
    margin-top: 8px;
    font-size: 16px;
    font-size: 1rem; }

.wp-block-social-links.is-style-logos-only .wp-social-link.wp-social-link.wp-social-link {
  margin: 0; }
.wp-block-social-links:not(.aligncenter):not(.items-justified-center) {
  margin-left: -10px; }

.wp-social-link a,
.wp-social-link a:active,
.wp-social-link a:hover,
.wp-social-link a:visited,
.wp-social-link svg {
  color: currentColor !important; }

/**
 * Gutenberg Gallery
 */
.wp-block-gallery:not(.alignleft):not(.alignright) {
  clear: both; }
.entry-content .wp-block-gallery.alignright {
  margin-left: 30px; }
.entry-content .wp-block-gallery.alignleft {
  margin-right: 30px; }
.entry-content .wp-block-gallery > li,
.entry-content .wp-block-gallery ul > li {
  padding: 0; }
  .entry-content .wp-block-gallery > li:before,
  .entry-content .wp-block-gallery ul > li:before {
    display: none; }
.entry-content > .wp-block-gallery li:not(:last-child) {
  margin-bottom: 16px; }

.blocks-gallery-grid .blocks-gallery-image a + figcaption,
.blocks-gallery-grid .blocks-gallery-item a + figcaption,
.wp-block-gallery .blocks-gallery-image a + figcaption,
.wp-block-gallery .blocks-gallery-item a + figcaption {
  pointer-events: none; }

.entry-content .blocks-gallery-item figcaption a {
  color: inherit; }

/**
 * Gutenberg Alignment Full
 */
.entry-content .alignfull {
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100vw;
  max-width: 100vw;
  margin: 0 0 30px;
  clear: both; }
  .entry-content .alignfull.gallery-slider, .entry-content .alignfull.gallery-justified {
    width: 100vw;
    max-width: 100vw; }
  .entry-content .alignfull.wp-block-cover.has-parallax {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin-left: -50vw; }

.entry-content *[class*="wp-block-"] *.alignfull {
  left: 0;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  width: 100%;
  max-width: 100%; }

/* Query Loop
   ========================================================================== */
.entry-content .wp-block-query .wp-block-post-featured-image {
  margin-bottom: 15px; }
.entry-content .wp-block-query .wp-block-post-title {
  margin-top: 0; }
.entry-content .wp-block-query .wp-block-post-date {
  margin-top: 15px; }
.entry-content .wp-block-query ul {
  margin: 0; }

/* Dropcaps Shortcode
   ========================================================================== */
p.has-drop-cap:not(:focus):first-letter {
  margin: 11px 10px 0 0;
  font-size: 3.6em;
  font-weight: 400; }

.has-drop-cap:not(:focus):after {
  display: none; }

/* Row & Column
   ========================================================================== */
.entry-content .wp-block-column, .entry-content .wp-block-column:last-child > *:last-child {
  margin-bottom: 0; }

@media screen and (min-width: 600px) {
  .wp-block-group.alignfull,
  .wp-block-group.has-background {
    padding-right: 30px;
    padding-left: 30px; }

  .wp-block-columns.alignfull {
    padding-right: 30px;
    padding-left: 30px; }

  .wp-block-column:nth-last-child(2) > *:last-child {
    margin-bottom: 0; }

  .entry-content *.alignwide {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: calc(100vw - 60px);
    max-width: 1400px; }
    .entry-content *.alignwide.wp-block-cover.has-parallax {
      left: 0;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none;
      margin-left: calc(0px - var(--grid-val)*1vw); }

  .entry-content *[class*="wp-block-"] *.alignwide {
    left: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    width: 100%;
    max-width: 100%; }

  .entry-content .wp-block-cover.alignfull *.alignwide,
  .entry-content .wp-block-cover.alignwide *.alignwide {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: calc(100vw - 60px);
    max-width: calc(var(--site-width) - 60px); }

  .entry-content .wp-block-cover.alignwide *.alignwide {
    max-width: 1008px; } }
@media screen and (min-width: 782px) {
  .wp-block-column > *:last-child {
    margin-bottom: 0; } }
@media screen and (min-width: 860px) {
  .entry-content .wp-block-cover.has-parallax.alignwide {
    margin-left: calc(0px - (100vw - 860px)/2); } }
@media screen and (min-width: 1024px) {
  .wp-block-quote.is-large p,
  .wp-block-quote.is-style-large p {
    font-size: 32px;
    font-size: 2rem; } }
@media screen and (min-width: 1200px) {
  .site-content[class*="with-sidebar"] .entry-content *.alignfull,
  .site-content[class*="with-sidebar"] .entry-content *.alignwide {
    left: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    width: auto;
    max-width: none; }
    .site-content[class*="with-sidebar"] .entry-content *.alignfull.wp-block-cover.has-parallax,
    .site-content[class*="with-sidebar"] .entry-content *.alignwide.wp-block-cover.has-parallax {
      margin-left: 0; }

  .wp-block-group.has-background {
    padding: 50px; }
  .wp-block-group.alignfull {
    padding: 50px 0; }
    .wp-block-group.alignfull .wp-block-group__inner-container {
      max-width: var(--site-width);
      padding: 0 30px;
      margin-right: auto;
      margin-left: auto; } }
@media screen and (min-width: 1260px) {
  .entry-content .wp-block-cover.has-parallax.alignwide {
    margin-left: -170px; } }
@media screen and (max-width: 1024px) {
  .entry-content > .wp-block-group.alignfull:not(.has-background):first-child {
    padding-top: 0; } }
@media screen and (max-width: 599px) {
  .wp-block-pullquote.alignleft, .wp-block-pullquote.alignright {
    width: calc(50% - 30px); }

  .wp-block-quote.is-large,
  .wp-block-quote.is-style-large {
    padding-right: 0; }

  .wp-block-cover,
  .wp-block-cover-image {
    padding-right: 20px;
    padding-left: 20px; } }
@media screen and (max-width: 480px) {
  blockquote.tiktok-embed {
    padding: 0; }

  blockquote.tiktok-embed:before {
    display: none; } }
@media screen and (max-width: 400px) {
  .wp-block-pullquote.alignleft, .wp-block-pullquote.alignright {
    width: 100%;
    max-width: 100%;
    margin: 0 0 30px; } }
/* ==========================================================================
   11.0 Rooms
   ========================================================================== */
.cs-room-basic-info {
  margin: var(--item-v-space) 0; }
  .cs-room-basic-info ul {
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    list-style: none; }
    .cs-room-basic-info ul li {
      display: flex;
      align-items: center;
      margin: 5px 0;
      padding-right: 30px;
      line-height: 28px; }
      .cs-room-basic-info ul li:last-child {
        padding-right: 0; }
  .cs-room-basic-info .csrbi-icon {
    margin-right: 10px; }
    .cs-room-basic-info .csrbi-icon i {
      display: flex;
      font-size: var(--icon-size); }
  .cs-room-basic-info .csrbi-text {
    font-size: 14px;
    font-size: 0.875rem;
    white-space: nowrap; }

.cs-rooms {
  --post-max-width: 800px;
  --item-v-space: 10px;
  --icon-size: 25px;
  --label-bg: #fff;
  --label-color: #000;
  --label-border: #fff; }
  .cs-rooms .overlay-label {
    top: 20px;
    left: 20px;
    background: var(--label-bg);
    border: 1px solid var(--label-border);
    color: var(--label-color);
    padding: 8px 12px;
    font-size: 12px;
    font-size: 0.75rem;
    text-transform: uppercase; }
    .elementor-editor-active .cs-rooms .overlay-label {
      pointer-events: auto; }
  .cs-rooms.layout-standard {
    --icon-size: 28px; }
  .cs-rooms.text-center .cs-room-basic-info ul {
    justify-content: center; }
  .cs-rooms .item-header {
    margin-bottom: var(--item-v-space); }
  .cs-rooms .cs-room-content .item-title {
    margin-bottom: 0; }
  .cs-rooms .cs-room-content .item-subtitle {
    margin-top: var(--item-v-space);
    font-size: 15px;
    font-size: 0.9375rem;
    color: var(--secondary-color); }
    .cs-rooms .cs-room-content .item-subtitle:first-child {
      margin: 0 0 var(--item-v-space); }
  .cs-rooms.layout-overlay .cs-room-content .item-title {
    margin-bottom: 0; }
  .cs-rooms.layout-overlay .cs-room-content .item-subtitle {
    color: inherit; }
  .cs-rooms.layout-overlay .item-header {
    margin: 0;
    transition: opacity 0.4s, transform 0.4s; }
  .cs-rooms.layout-overlay .post .cs-room-content {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
  .cs-rooms.layout-overlay .hover-show-content {
    position: absolute !important;
    z-index: 9;
    bottom: 0;
    left: 0;
    padding: 150px 24px 30px;
    opacity: 0;
    transition: opacity 0.4s, transform 0.4s;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px); }
  .no-touch .cs-rooms.layout-overlay.with-hover-effect .post:hover .item-header {
    opacity: 0;
    -webkit-transform: translateY(-50px);
    -ms-transform: translateY(-50px);
    transform: translateY(-50px); }
  .no-touch .cs-rooms.layout-overlay.with-hover-effect .post:hover .hover-show-content {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
  .cs-rooms.layout-overlay.text-v-middle .hover-show-content {
    top: 50%;
    bottom: auto;
    -webkit-transform: translateY(-30%);
    -ms-transform: translateY(-30%);
    transform: translateY(-30%);
    padding-top: 30px; }
  .no-touch .cs-rooms.layout-overlay.text-v-middle.with-hover-effect .post:hover .hover-show-content {
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    transition-delay: 0.1s; }
  .cs-rooms.layout-overlay.slider-dots-overlap .slick-dots {
    position: absolute;
    bottom: 25px;
    left: 0;
    width: 100%;
    color: #fff; }
  .cs-rooms.layout-overlay.text-v-middle .featured-img:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 7;
    content: "";
    background: #000;
    opacity: 0.3;
    pointer-events: none;
    transition: opacity 0.4s; }
  .no-touch .cs-rooms.layout-overlay.text-v-middle .post:hover .featured-img:before {
    opacity: 0; }
  .cs-rooms.layout-overlay.text-v-middle .cs-room-content {
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    padding-top: 30px; }
    .cs-rooms.layout-overlay.text-v-middle .cs-room-content:before {
      background: none; }
  .cs-rooms.layout-overlay .cs-room-basic-info ul li {
    margin: 0; }
  .cs-rooms.cs-rooms-carousel.column-1.carousel-center-mode .post {
    max-width: var(--post-max-width); }
  .elementor-column:only-child .cs-rooms.cs-rooms-carousel:hover .slick-slide {
    will-change: transform; }
  .cs-rooms.cs-rooms-carousel .post {
    margin-top: 0; }
  .cs-rooms.cs-rooms-carousel .posts-wrapper.slick-initialized {
    display: block; }
  .cs-rooms.cs-rooms-carousel.column-1.layout-overlay.carousel-center-mode .cs-room-content {
    opacity: 1;
    transition: opacity 0.4s 0.5s; }
  .cs-rooms.cs-rooms-carousel.column-1.layout-overlay.carousel-center-mode .slick-initialized .post:not(.slick-center) .cs-room-content {
    opacity: 0; }
  .cs-rooms.cs-rooms-carousel.layout-overlay.slider-dots-overlap.column-1:not(.text-v-middle) .post .post-content {
    padding-bottom: 55px; }
  .cs-rooms.cs-rooms-carousel.layout-overlay.slider-dots-overlap.column-1:not(.text-v-middle) .hover-show-content {
    padding-bottom: 60px; }
  .cs-rooms.cs-rooms-carousel.layout-overlay.text-v-middle.slider-arrows-overlap .cs-room-content,
  .cs-rooms.cs-rooms-carousel.layout-overlay.text-v-middle.slider-arrows-overlap .hover-show-content {
    padding-right: 80px;
    padding-left: 80px; }
  .cs-rooms.slider-arrow-top .slider-arrows {
    position: absolute;
    top: -60px;
    right: 0; }
    .cs-rooms.slider-arrow-top .slider-arrows .slick-arrow {
      --arrow-size: 40px;
      position: relative;
      right: auto !important;
      left: auto !important;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none;
      margin: 0;
      border: 1px solid var(--border-color);
      box-sizing: content-box;
      box-shadow: none; }
      .cs-rooms.slider-arrow-top .slider-arrows .slick-arrow.slick-prev {
        margin-right: 5px; }
  .cs-rooms.hide-slider-dots .slider-dots {
    height: 0;
    opacity: 0;
    overflow: hidden; }

.single-room {
  --sidebar: 440px;
  --sidebar-gap: 70px; }

.room-top-section {
  position: relative;
  margin-bottom: 50px; }
  .room-top-section .featured-img {
    position: relative;
    width: 100%;
    height: 360px; }
    .room-top-section .featured-img img {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .room-top-section .cs-gallery-view-all {
    position: absolute;
    right: 20px;
    bottom: 20px;
    z-index: 9; }
    .room-top-section .cs-gallery-view-all .button {
      --btn-bg: rgba(0, 0, 0, 0.6);
      --btn-color: #fff;
      --btn-height: 38px;
      font-family: var(--body-font);
      padding: 0 15px 0 32px;
      text-transform: uppercase;
      font-size: 13px;
      font-size: 0.8125rem;
      font-weight: 500;
      align-items: center; }
      .room-top-section .cs-gallery-view-all .button:before {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        left: 12px;
        font-family: 'ElegantIcons';
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        content: "\e08c";
        font-size: 13px;
        line-height: 1; }

.room-template-default.single-room .site-header.overlap-header ~ .site-content .room-top-section .featured-img:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  content: ""; }
.room-template-default.single-room .site-header.overlap-header ~ .site-content .room-top-section .gallery-carousel .cs-gallery-item:after {
  position: absolute;
  top: 0;
  left: var(--gallery-gap);
  width: calc(100% - var(--gallery-gap)*2);
  height: 100%;
  z-index: 3;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  content: ""; }

.room .post-header {
  margin-bottom: 40px; }
  .room .post-header .entry-title {
    font-size: 30px;
    font-size: 1.875rem; }
  .room .post-header .item-subtitle {
    margin-top: 20px;
    font-size: 15px;
    font-size: 0.9375rem;
    color: var(--secondary-color); }
  .room .post-header .cs-room-basic-info {
    --icon-size: 28px;
    margin: 25px 0 0; }

.room-availability {
  padding-top: 50px; }
  .room-availability .container {
    padding: 0; }
  .room-availability .room-availability-title {
    padding-top: 50px;
    margin-bottom: 30px;
    border-top: 1px solid var(--border-color);
    font-size: 24px;
    font-size: 1.5rem; }
  .room-availability .hidden-calendar {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    pointer-events: none; }
  .room-availability .daterangepicker {
    position: relative;
    left: auto !important;
    top: auto !important;
    right: auto !important; }
  .theme-cozystay .room-availability .daterangepicker {
    --dropdown-bg: transparent;
    --dropdown-color: var(--text-color);
    --dropdown-border: transparent;
    --available-bg: transparent;
    --active-bg: var(--primary-color);
    --active-color: #fff;
    --inrange-bg: #ede6dc;
    --inrange-color: #000;
    --disabled-color: #d8d9db;
    --padding: 0px;
    --td-border: transparent;
    --tooltip-bg: var(--text-color);
    --tooltip-color: var(--bg-color);
    --no-check-inout: rgba(0, 0, 0, 0.7);
    --hover-highlight: var(--primary-color);
    width: 100%; }
    .theme-cozystay .room-availability .daterangepicker .calendar-table th {
      width: 60px;
      max-width: 100%;
      height: 42px;
      vertical-align: text-top;
      padding-top: 5px;
    }
    .theme-cozystay .room-availability .daterangepicker .calendar-table td {
      width: 60px;
      max-width: 100%;
      height: 60px;
      vertical-align: text-top;
      padding-top: 5px;
    }
.theme-cozystay .room-availability .daterangepicker .calendar-table td .day-tooltip.hide {
  display: block!important;
  top: 60px
}
.theme-cozystay .room-availability .daterangepicker td.off {
      background: none; }
    .theme-cozystay .room-availability .daterangepicker td {
      font-size: 13px; }
    .theme-cozystay .room-availability .daterangepicker .drp-calendar {
      width: 50%; }
    .theme-cozystay .room-availability .daterangepicker .drp-calendar.left {
      padding-right: 8px;
      padding-left: 0; }
    .theme-cozystay .room-availability .daterangepicker .drp-calendar.right {
      float: right;
      padding-right: 0; }
    .theme-cozystay .room-availability .daterangepicker.show-calendar .drp-buttons {
      padding: 20px var(--padding); }
    .theme-cozystay .room-availability .daterangepicker .drp-buttons {
      border-top-color: var(--border-color); }
      .theme-cozystay .room-availability .daterangepicker .drp-buttons .btn {
        padding: 8px 14px;
        min-width: 80px;
        background: transparent;
        border: 1px solid var(--text-color);
        border-radius: 2px;
        color: var(--text-color);
        font-family: var(--body-font);
        font-weight: 500;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        cursor: pointer;
        box-sizing: border-box;
        transition: 0.2s; }
        .theme-cozystay .room-availability .daterangepicker .drp-buttons .btn.applyBtn {
          background: var(--text-color);
          color: var(--bg-color); }
        .theme-cozystay .room-availability .daterangepicker .drp-buttons .btn:hover {
          opacity: 0.8; }
  .theme-cozystay.dark-color .room-availability .daterangepicker {
    --disabled-color: #555;
    --no-check-inout: rgba(255, 255, 255, 0.7); }

.similar-rooms {
  margin-bottom: 80px; }
  .similar-rooms .similar-rooms-title {
    padding-top: 70px;
    margin-bottom: 50px;
    border-top: 1px solid var(--border-color);
    font-size: 30px;
    font-size: 1.875rem; }
  .similar-rooms .cs-rooms {
    position: relative; }
    .similar-rooms .cs-rooms.slider-arrow-top .slider-arrows {
      top: -90px; }

.cs-room-booking {
  --csrb-bg: transparent;
  --csrb-border-radius: 8px;
  --csrb-box-shadow: 0 5px 30px rgba(80, 57, 24, 0.15);
  --total-divider: rgba(0, 0, 0, 0.1);
  --inner-bd: var(--primary-color);
  position: relative; }
  .dark-color .cs-room-booking {
    --csrb-bg: rgba(255, 255, 255, 0.02);
    --csrb-box-shadow: none;
    --total-divider: rgba(255, 255, 255, 0.1); }
  .cs-room-booking .cs-reservation-form {
    --form-bd: var(--primary-color);
    --field-space: 12px; }
  .cs-room-booking.with-inner-border:after {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: block;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    content: "";
    border: 1px solid var(--inner-bd);
    pointer-events: none; }
  .cs-room-booking .room-booking-title {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 32px; }
    .cs-room-booking .room-booking-title h4 {
      font-size: 30px;
      font-size: 1.875rem;
      text-transform: uppercase; }
      .cs-room-booking .room-booking-title h4 + span {
        text-align: right; }
    .cs-room-booking .room-booking-title .base-price {
      font-size: 18px;
      font-size: 1.125rem;
      font-weight: 500; }
      .cs-room-booking .room-booking-title .base-price del {
        font-size: 15px;
        font-size: 0.9375rem;
        font-weight: 400;
        opacity: 0.5; }
  .cs-room-booking .cs-room-booking-wrap {
    padding: 50px 45px 55px;
    background: var(--csrb-bg);
    border-radius: var(--csrb-border-radius);
    box-shadow: var(--csrb-box-shadow);
    transition: opacity 0.3s; }
  .cs-room-booking .cs-form-group {
    margin-top: 60px; }
  .cs-room-booking .csf-title {
    font-size: 24px;
    font-size: 1.5rem; }
    .cs-room-booking .csf-title + .cs-extra-service {
      margin-top: 10px; }
  .cs-room-booking .cs-form-field.cs-rooms {
    position: relative; }
  .cs-room-booking .cs-form-notice {
    --line-space: 15px;
    position: absolute;
    top: 50%;
    right: -4px;
    -webkit-transform: translate(100%, -50%);
    -ms-transform: translate(100%, -50%);
    transform: translate(100%, -50%);
    margin-top: calc(var(--field-space)/2);
    padding: 3px 8px;
    width: fit-content;
    z-index: 99;
    background: var(--text-color);
    color: var(--bg-color);
    border-radius: 2px;
    font-size: 10px;
    font-size: 0.625rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: 0.3s;
    opacity: 0;
    pointer-events: none;
    visibility: hidden; }
    .cs-room-booking .cs-form-notice p {
      margin: 0; }
    .cs-room-booking .cs-form-notice.show {
      opacity: 1;
      pointer-events: auto;
      visibility: visible; }
    .cs-room-booking .cs-form-notice:after {
      position: absolute;
      display: block;
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(45deg);
      -ms-transform: translateY(-50%) rotate(45deg);
      transform: translateY(-50%) rotate(45deg);
      left: -2px;
      width: 6px;
      height: 6px;
      background: var(--text-color);
      content: ""; }
  .cs-room-booking .cs-extra-service .field-wrap {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px; }
  .cs-room-booking .cs-extra-service .label-checkbox.obligatory {
    cursor: not-allowed; }
    .cs-room-booking .cs-extra-service .label-checkbox.obligatory * {
      pointer-events: none; }
    .cs-room-booking .cs-extra-service .label-checkbox.obligatory .info-indicator {
      pointer-events: auto; }
  .cs-room-booking .hidden-check {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    opacity: 0;
    width: 17px;
    height: 17px;
    cursor: pointer; }
    .cs-room-booking .hidden-check:checked + .cs-styled-checkbox:after {
      opacity: 1; }
  .cs-room-booking .cs-styled-checkbox {
    position: relative;
    width: 17px;
    min-width: 17px;
    height: 17px;
    border: 1px solid var(--form-bd);
    margin-right: 12px;
    pointer-events: none; }
    .cs-room-booking .cs-styled-checkbox:after {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      display: block;
      width: 8px;
      height: 8px;
      background: var(--form-bd);
      content: "";
      opacity: 0; }
  .cs-room-booking .label-checkbox {
    position: relative;
    display: flex;
    align-items: center; }
    .cs-room-booking .label-checkbox .checkbox-label label {
      cursor: pointer; }
  .cs-room-booking .price-quantity {
    position: relative;
    display: flex;
    align-items: center;
    flex-wrap: nowrap; }
    .cs-room-booking .price-quantity .cs-form-price {
      font-size: 14px;
      font-size: 0.875rem;
      line-height: 35px;
      white-space: nowrap; }
      .cs-room-booking .price-quantity .cs-form-price:not(:last-child) {
        margin-right: 15px; }
      .cs-room-booking .price-quantity .cs-form-price.cs-form-price-long .cs-form-price-brief:after {
        display: inline-block;
        margin-left: 4px;
        content: "..."; }
      .cs-room-booking .price-quantity .cs-form-price.cs-form-price-long .cs-form-price-all {
        position: absolute;
        z-index: 9;
        top: 0;
        right: 0;
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
        padding: 10px;
        width: fit-content;
        border-radius: 4px;
        background: var(--text-color);
        color: var(--bg-color);
        font-size: 12.5px;
        font-size: 0.78125rem;
        line-height: 1.5;
        white-space: nowrap;
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
        transition: opacity 0.3s; }
        .cs-room-booking .price-quantity .cs-form-price.cs-form-price-long .cs-form-price-all:after {
          position: absolute;
          right: 30px;
          bottom: -4px;
          -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          transform: rotate(45deg);
          width: 10px;
          height: 10px;
          background: var(--text-color);
          content: ""; }
      .cs-room-booking .price-quantity .cs-form-price.cs-form-price-long:hover .cs-form-price-all {
        opacity: 1;
        pointer-events: auto;
        visibility: visible; }
    .cs-room-booking .price-quantity .field-input-wrap {
      width: 65px; }
      .cs-room-booking .price-quantity .field-input-wrap input {
        --field-height: 35px;
        text-align: left; }
    .cs-room-booking .price-quantity .csf-dropdown {
      bottom: -8px;
      padding: 10px 5px;
      min-width: 130px !important; }
      .cs-room-booking .price-quantity .csf-dropdown .cs-form-label {
        display: none; }
      .cs-room-booking .price-quantity .csf-dropdown .csf-dropdown-item {
        justify-content: center; }
      .cs-room-booking .price-quantity .csf-dropdown .cs-quantity .input-text {
        font-size: 14px;
        font-size: 0.875rem; }
  .cs-room-booking .info-indicator {
    -webkit-transform: translateY(-1px);
    -ms-transform: translateY(-1px);
    transform: translateY(-1px);
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 1px solid;
    border-radius: 50%;
    font-size: 12px;
    font-size: 0.75rem;
    font-style: italic;
    line-height: 12px;
    text-align: center;
    font-family: serif;
    font-weight: 600;
    opacity: 0.6;
    cursor: pointer; }
  .cs-room-booking .csf-base-price-breakdown,
  .cs-room-booking .cs-service-description {
    --line-space: 15px;
    position: absolute;
    top: -5px;
    left: 0;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    padding: 20px 24px;
    width: 100%;
    z-index: 99;
    background: var(--bg-color);
    color: var(--text-color);
    border-radius: 8px;
    box-shadow: 0 5px 30px rgba(80, 57, 24, 0.3);
    transition: 0.3s;
    opacity: 0;
    pointer-events: none;
    visibility: hidden; }
    .cs-room-booking .csf-base-price-breakdown.show,
    .cs-room-booking .cs-service-description.show {
      opacity: 1;
      pointer-events: auto;
      visibility: visible; }
    .cs-room-booking .csf-base-price-breakdown:after,
    .cs-room-booking .cs-service-description:after {
      position: absolute;
      display: none;
      width: 10px;
      height: 10px;
      background: var(--bg-color);
      content: ""; }
  .cs-room-booking .cs-service-description {
    width: fit-content;
    color: var(--content-color);
    font-size: 15px;
    font-size: 0.9375rem; }
  .cs-room-booking .cs-form-total-price {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 35px;
    padding-top: 40px;
    cursor: pointer; }
    .cs-room-booking .cs-form-total-price:before {
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      top: 0;
      display: block;
      width: calc(100% + 70px);
      height: 1px;
      background: var(--total-divider);
      content: ""; }
    .cs-room-booking .cs-form-total-price .price-details:before {
      font-family: 'ElegantIcons';
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      content: "\33";
      font-size: 18px;
      font-size: 1.125rem; }
    .cs-room-booking .cs-form-total-price.toggled-on .price-details:before {
      content: "\32"; }
    .cs-room-booking .cs-form-total-price .total-price {
      font-size: 24px;
      font-size: 1.5rem; }
  .cs-room-booking .cs-form-price-details {
    position: relative;
    margin-top: 20px;
    font-size: 15px;
    font-size: 0.9375rem; }
    .cs-room-booking .cs-form-price-details ul {
      display: block;
      margin: 0; }
    .cs-room-booking .cs-form-price-details li {
      position: relative;
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 8px;
      padding-top: 8px;
      border-top: 1px dashed var(--total-divider); }
      .cs-room-booking .cs-form-price-details li.cs-form-price-details-total {
        font-size: 18px;
        font-size: 1.125rem;
        font-weight: 500; }
      .cs-room-booking .cs-form-price-details li.with-tax-info {
        align-items: flex-start; }
        .cs-room-booking .cs-form-price-details li.with-tax-info .csf-pd-value {
          text-align: right; }
        .cs-room-booking .cs-form-price-details li.with-tax-info .includes_tax,
        .cs-room-booking .cs-form-price-details li.with-tax-info .excludes_tax {
          display: block;
          font-weight: 400;
          opacity: 0.6;
          font-size: 14px;
          font-size: 0.875rem; }
      .cs-room-booking .cs-form-price-details li.csf-pd-total-base > .csf-pd-label {
        cursor: pointer; }
      .cs-room-booking .cs-form-price-details li .breakdown-title,
      .cs-room-booking .cs-form-price-details li .breakdown-footer {
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 16px;
        font-size: 1rem;
        font-weight: 500; }
      .cs-room-booking .cs-form-price-details li .breakdown-title {
        padding-bottom: var(--line-space);
        margin-bottom: var(--line-space);
        border-bottom: 1px solid var(--border-color); }
      .cs-room-booking .cs-form-price-details li .breakdown-main {
        max-height: 300px;
        overflow: auto;
        -ms-overflow-style: none;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch; }
        .cs-room-booking .cs-form-price-details li .breakdown-main::-webkit-scrollbar {
          display: none; }
        .cs-room-booking .cs-form-price-details li .breakdown-main li {
          margin: 0;
          padding: 0;
          border: none;
          font-size: 14px;
          font-size: 0.875rem; }
          .cs-room-booking .cs-form-price-details li .breakdown-main li:not(:first-child) {
            margin-top: 8px; }
      .cs-room-booking .cs-form-price-details li .breakdown-footer {
        padding-top: var(--line-space);
        margin-top: var(--line-space);
        border-top: 1px solid var(--border-color); }
      .cs-room-booking .cs-form-price-details li del {
        opacity: 0.6; }
    .cs-room-booking .cs-form-price-details .discounted {
      color: red; }
    .cs-room-booking .cs-form-price-details li.csf-pd-total-base.always-show {
      flex-wrap: wrap; }
      .cs-room-booking .cs-form-price-details li.csf-pd-total-base.always-show .csf-base-price-breakdown {
        position: relative;
        top: auto;
        right: auto !important;
        bottom: auto;
        left: auto !important;
        transform: none !important;
        margin: 10px 0;
        background: none;
        border: 1px solid var(--border-color);
        box-shadow: none;
        opacity: 1;
        pointer-events: auto;
        visibility: visible; }
      .cs-room-booking .cs-form-price-details li.csf-pd-total-base.always-show .info-indicator,
      .cs-room-booking .cs-form-price-details li.csf-pd-total-base.always-show .csf-base-price-breakdown:after {
        display: none; }
      .cs-room-booking .cs-form-price-details li.csf-pd-total-base.always-show .breakdown-title,
      .cs-room-booking .cs-form-price-details li.csf-pd-total-base.always-show .breakdown-footer {
        font-size: 14px;
        font-size: 0.875rem; }
  .cs-room-booking .cs-reservation-form.style-block .cs-form-field.cs-submit {
    padding-top: 35px; }
  .cs-room-booking button[type="submit"] {
    font-size: 18px;
    font-size: 1.125rem; }
  .cs-room-booking .cs-form-error-message,
  .cs-room-booking .cs-form-success-message {
    margin-top: 12px; }
    .cs-room-booking .cs-form-error-message p,
    .cs-room-booking .cs-form-success-message p {
      margin-bottom: 0; }
  .cs-room-booking .cs-form-error-message {
    color: red; }
  .cs-room-booking .cs-form-success-message {
    color: green; }
  .cs-room-booking .cs-submit .btn-text {
    position: relative;
    display: block; }
    .cs-room-booking .cs-submit .btn-text:after {
      position: absolute;
      top: 1px;
      right: -30px;
      display: block;
      width: 14px;
      height: 14px;
      border-radius: 50%;
      border: 2px solid currentColor;
      border-top: 2px solid transparent;
      -webkit-animation: spin 1s linear infinite;
      animation: spin 1s linear infinite;
      transition: opacity 0.3s;
      transform-origin: 50% 50%;
      opacity: 0;
      content: ""; }
  .cs-room-booking.loading .cs-room-booking-wrap {
    pointer-events: none;
    opacity: 0.5; }
  .cs-room-booking.loading .cs-submit .btn-text:after {
    opacity: 1; }
  .with-sidebar-right .cs-room-booking .cs-form-wrap > .cs-form-field .csf-dropdown:before {
    right: 32px;
    left: auto; }
  .with-sidebar-right .cs-room-booking .cs-form-wrap > .cs-form-field .csf-dropdown:after {
    right: 33px;
    left: auto; }

.sl-overlay {
  background: #000 !important; }

.sl-wrapper .sl-close,
.sl-wrapper .sl-navigation button,
.sl-wrapper .sl-counter {
  color: #fff !important; }

@media screen and (min-width: 768px) {
  .cs-rooms.layout-grid.column-1 .posts-wrapper {
    margin-left: 0; }
  .cs-rooms.layout-grid.column-1 .post {
    width: 100%;
    max-width: 100%; }
  .cs-rooms.layout-grid.column-1 .post-title {
    font-size: 30px;
    font-size: 1.875rem; }
  .cs-rooms.layout-grid.column-1:not(.carousel-center-mode) {
    --post-gap: 0; }

  .room-top-section .featured-img {
    height: 480px; }

  .cs-rooms.cs-rooms-carousel .slick-arrow.slick-prev {
    left: -30px; }
    .elementor-section-full_width .cs-rooms.cs-rooms-carousel .slick-arrow.slick-prev {
      left: 60px; }
  .cs-rooms.cs-rooms-carousel .slick-arrow.slick-next {
    right: -30px; }
    .elementor-section-full_width .cs-rooms.cs-rooms-carousel .slick-arrow.slick-next {
      right: 60px; }
  .cs-rooms.cs-rooms-carousel.column-1 .posts-wrapper:not(.slick-initialized) {
    justify-content: center;
    margin-left: calc(0px - var(--post-gap)); } }
@media screen and (min-width: 1200px) {
  .cs-rooms.layout-grid.column-1 .post-title {
    font-size: 36px;
    font-size: 2.25rem; }

  .cs-rooms.layout-standard .cs-room-basic-info {
    margin: 20px 0; }

  .cs-rooms.layout-standard, .cs-rooms.layout-list {
    --item-v-space: 20px; }
    .cs-rooms.layout-standard .item-excerpt, .cs-rooms.layout-list .item-excerpt {
      margin-bottom: var(--item-v-space); }
  .elementor-column:only-child .cs-rooms.cs-rooms-carousel.column-1.text-v-middle {
    --item-v-space: 20px; }

  .room-top-section {
    margin-bottom: 80px; }

  .room .post-header {
    margin-bottom: 60px; }
    .room .post-header .entry-title {
      font-size: 36px;
      font-size: 2.25rem; }

  .room-top-section .featured-img {
    height: 520px; }
    .site-header.overlap-header ~ .site-content .room-top-section .featured-img {
      height: 600px; }

  .cs-room-booking .cs-form-price-details li .csf-base-price-breakdown, .cs-room-booking .cs-service-description {
    top: 20px; }
    .cs-room-booking .cs-form-price-details li .csf-base-price-breakdown:after,
    .cs-room-booking .cs-service-description:after {
      display: block;
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(45deg);
      -ms-transform: translateY(-50%) rotate(45deg);
      transform: translateY(-50%) rotate(45deg); }
    .site-content.with-sidebar-right .cs-room-booking .cs-form-price-details li .csf-base-price-breakdown,
    .site-content.with-sidebar-right .cs-room-booking .cs-service-description {
      left: 0;
      -webkit-transform: translate(-105%, -50%);
      -ms-transform: translate(-105%, -50%);
      transform: translate(-105%, -50%); }
      .site-content.with-sidebar-right .cs-room-booking .cs-form-price-details li .csf-base-price-breakdown:after,
      .site-content.with-sidebar-right .cs-room-booking .cs-service-description:after {
        right: -4px; }
    .site-content.with-sidebar-left .cs-room-booking .cs-form-price-details li .csf-base-price-breakdown, .site-content.with-sidebar-left .cs-room-booking .cs-service-description {
      right: 0;
      left: auto;
      -webkit-transform: translate(105%, -50%);
      -ms-transform: translate(105%, -50%);
      transform: translate(105%, -50%); }
      .site-content.with-sidebar-left .cs-room-booking .cs-form-price-details li .csf-base-price-breakdown:after, .site-content.with-sidebar-left .cs-room-booking .cs-service-description:after {
        right: auto;
        left: -4px; }

  .cs-room-booking .cs-service-description {
    top: 50%; }
    .site-content.with-sidebar-right .cs-room-booking .cs-service-description {
      -webkit-transform: translate(calc(-100% - 12px), -50%);
      -ms-transform: translate(calc(-100% - 12px), -50%);
      transform: translate(calc(-100% - 12px), -50%); }
    .site-content.with-sidebar-left .cs-room-booking .cs-service-description {
      -webkit-transform: translate(calc(100% + 12px), -50%);
      -ms-transform: translate(calc(100% + 12px), -50%);
      transform: translate(calc(100% + 12px), -50%); } }
@media screen and (max-width: 1199px) {
  .cs-room-booking .cs-service-description:after {
    display: block;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    bottom: -4px;
    left: 40px; } }
@media screen and (max-width: 1024px) {
  .cs-room-basic-info ul li:not(:last-child) {
    padding-right: 20px; }
  .cs-rooms.text-center .cs-room-basic-info ul li {
    padding: 0 10px; }

  .cs-rooms {
    --icon-size: 20px; }

  .cs-rooms .post-title {
    font-size: 24px;
    font-size: 1.5rem; } }
@media screen and (max-width: 767px) {
  .room-top-section .cs-gallery.gallery-mosaic .cs-gallery-wrap {
    display: block; }
    .room-top-section .cs-gallery.gallery-mosaic .cs-gallery-wrap .cs-gallery-item:not(:first-child) {
      display: none; }

  .cs-rooms.cs-rooms-carousel.layout-overlay.slider-dots-overlap:not(.text-v-middle) .post .post-content {
    padding-bottom: 55px; }
  .cs-rooms.cs-rooms-carousel.layout-overlay.slider-dots-overlap:not(.text-v-middle) .hover-show-content {
    padding-bottom: 60px; }
  .cs-rooms.cs-rooms-carousel.layout-overlay.column-1.carousel-center-mode .slick-initialized .post:not(.slick-center) .cs-room-content {
    opacity: 1; }

  .theme-cozystay .room-availability .daterangepicker .drp-calendar {
    float: none !important;
    width: 100%; }
    .theme-cozystay .room-availability .daterangepicker .drp-calendar.left, .theme-cozystay .room-availability .daterangepicker .drp-calendar.right {
      padding-right: 8px;
      padding-left: 8px; } }
@media screen and (max-width: 599px) {
  .cs-room-booking .cs-room-booking-wrap {
    padding: 30px; }
  .cs-room-booking .room-booking-title {
    font-size: 14px;
    font-size: 0.875rem; }
    .cs-room-booking .room-booking-title h4 {
      font-size: 24px;
      font-size: 1.5rem; }
    .cs-room-booking .room-booking-title .base-price {
      font-size: 16px;
      font-size: 1rem; }
  .cs-room-booking .cs-form-total-price:before {
    width: calc(100% + 60px); }
  .cs-room-booking .cs-form-label {
    font-size: 14px;
    font-size: 0.875rem; }
  .cs-room-booking .csf-title,
  .cs-room-booking .cs-form-total-price .total-price {
    font-size: 20px;
    font-size: 1.25rem; }
  .cs-room-booking .cs-extra-service .field-wrap .cs-styled-checkbox,
  .cs-room-booking .cs-extra-service .field-wrap .cs-form-price:not(:last-child) {
    margin-right: 8px; }
  .cs-room-booking .price-quantity .csf-dropdown {
    right: 0;
    left: auto; }
    .cs-room-booking .price-quantity .csf-dropdown:before {
      right: 25px;
      left: auto; }
    .cs-room-booking .price-quantity .csf-dropdown:after {
      right: 26px;
      left: auto; }
  .cs-room-booking .cs-form-notice {
    width: 50px; }
  .cs-room-booking .cs-form-price-details li .breakdown-title,
  .cs-room-booking .cs-form-price-details li .breakdown-footer {
    font-size: 14px;
    font-size: 0.875rem; } }
@media screen and (max-width: 360px) {
  .cs-room-booking .cs-extra-service .field-wrap {
    flex-wrap: wrap; }
    .cs-room-booking .cs-extra-service .field-wrap .price-quantity {
      width: 100%;
      padding-left: 29px; }
  .cs-room-booking .cs-reservation-form.style-block .form-field-col-1-2 {
    width: 100%; }
  .cs-room-booking .cs-reservation-form.style-block .form-field-col-1-2.cs-adults {
    padding-right: 0; }
  .cs-room-booking .cs-reservation-form.style-block .form-field-col-1-2.cs-children {
    padding-left: 0; } }
/* ==========================================================================
   12.0 CozyStay Elementor Elements Style
   ========================================================================== */
.elementor-section.elementor-section-boxed.cs-section-content-fullwidth > .elementor-container,
.elementor-section.elementor-section-full_width.cs-section-content-fullwidth > .elementor-container {
  max-width: calc(var(--site-width) + var(--side-padding)*2);
  padding: 0 var(--side-padding); }

.elementor-editor-active .elementor-edit-area-active .elementor-widget-container {
  --primary-color: var(--theme-primary-color);
  --secondary-color: var(--theme-secondary-color); }

.cs-template-wide .site-content .elementor-section-full_width,
.custom_blocks-template-default .elementor-section-full_width,
.site-footer-main .elementor-section-full_width,
.cs-section-content-fullwidth {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  left: calc(50% - 50vw); }

.cs-template-wide .site-content .elementor-section .elementor-section-full_width,
.elementor-section .elementor-section-full_width {
  width: 100%;
  left: auto; }

.cs-template-wide .site-content .elementor-section-wrap > .e-con-full,
.cs-template-wide .site-content [data-elementor-id] > .e-con-full,
.cs-template-wide .site-content .elementor > .e-con-full,
.cs-template-wide .elementor-section-wrap > .cs-section-content-fullwidth,
.cs-template-wide .elementor > .cs-section-content-fullwidth {
  position: relative;
  width: 100vw !important;
  max-width: 100vw !important;
  left: calc(50% - 50vw); }

:is(.elementor-section-wrap,[data-elementor-id]) > .e-con.cs-section-content-fullwidth {
  width: 100vw !important;
  max-width: 100vw !important; }

.e-con.cs-section-content-fullwidth > .e-con-inner {
  max-width: calc(var(--content-width) + var(--side-padding)*2);
  padding-right: var(--side-padding);
  padding-left: var(--side-padding); }

.e-con-full.cs-section-content-fullwidth {
  width: 100vw;
  max-width: 100vw !important;
  padding-right: var(--side-padding);
  padding-left: var(--side-padding); }

.cs-template-wide.elementor-page .primary {
  padding-bottom: 0; }

.single-custom_site_headers .container {
  padding: 0;
  max-width: 100vw; }
.single-custom_site_headers .entry-content a:not(.button) {
  color: inherit; }

.elementor-align-center {
  margin-right: auto;
  margin-left: auto; }

.elementor-text-editor > *:last-child,
.elementor-widget-text-editor .elementor-widget-container > *:last-child,
.elementor-text-editor p:last-child {
  margin-bottom: 0; }

.color-primary, .entry-content .color-primary, .elementor-section .color-primary {
  color: var(--primary-color); }

.color-secondary, .entry-content .color-secondary, .elementor-section .color-secondary {
  color: var(--secondary-color); }

.color-black, .entry-content .color-black, .elementor-section .color-black {
  color: #000; }

.color-white, .entry-content .color-white, .elementor-section .color-white {
  color: #fff; }

.cs-elementor-simulator-scheme-switcher {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 99; }

.cs-elementor-simulator-scheme-dark,
.cs-elementor-simulator-scheme-light {
  background: #999;
  color: #000;
  padding: 2px 6px;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 600;
  border-radius: 4px;
  cursor: pointer; }
  .cs-elementor-simulator-scheme-dark.active,
  .cs-elementor-simulator-scheme-light.active {
    background: #fff; }

.cs-elementor-simulator-scheme-dark {
  margin-bottom: 2px; }

.loftocean-library-modal-btn {
  margin-left: 5px;
  background: #000;
  vertical-align: top;
  font-size: 0 !important; }
  .loftocean-library-modal-btn:before {
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../../images/loftocean-white.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }

.elementor-widget-heading .elementor-heading-title {
  margin-bottom: 0; }

.elementor-element a:not([class*="button"]):not(:hover) {
  color: inherit; }

.elementor-editor-active .site-header.overlap-header {
  pointer-events: none; }

.elementor-editor-active .site-header:not(.overlap-header):not(.sticky):not(.is-sticky) {
  z-index: 1; }

body > div.elementor {
  overflow: hidden; }

.elementor-widget-cs_logo {
  font-size: 0; }
  .elementor-widget-cs_logo .cs-notice {
    font-size: 16px;
    font-size: 1rem;
    color: #161616; }
  .elementor-widget-cs_logo a {
    display: inline-block; }
  .elementor-widget-cs_logo img {
    display: block; }

.elementor-widget-cs_button.elementor-align-justify .button {
  width: 100%;
  padding: 0; }
.elementor-widget-cs_button .cs-btn-circle {
  display: flex; }
.elementor-widget-cs_button.elementor-align-left .cs-btn-circle {
  margin-right: auto;
  margin-left: 0; }
.elementor-widget-cs_button.elementor-align-center .cs-btn-circle {
  margin-right: auto;
  margin-left: auto; }
.elementor-widget-cs_button.elementor-align-right .cs-btn-circle {
  margin-right: 0;
  margin-left: auto; }

ul.social-nav.text-left, .text-left ul.social-nav {
  -webkit-justify-content: flex-start;
  justify-content: flex-start; }
ul.social-nav.text-center, .text-center ul.social-nav {
  -webkit-justify-content: center;
  justify-content: center; }
ul.social-nav.text-right, .text-right ul.social-nav {
  -webkit-justify-content: flex-end;
  justify-content: flex-end; }

.cs-menu {
  --item-padding: 15px; }
  .cs-menu > ul > li > a {
    font-family: var(--nav-font); }
  .cs-menu.text-left .menu {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
  .cs-menu.text-center .menu {
    -webkit-justify-content: center;
    justify-content: center; }
  .cs-menu.text-right .menu {
    -webkit-justify-content: flex-end;
    justify-content: flex-end; }
  .cs-menu .primary-menu > li > a {
    padding: 0 var(--item-padding); }
    .cs-menu .primary-menu > li > a:before {
      left: var(--item-padding);
      width: calc(100% - var(--item-padding)*2); }
  .cs-menu .primary-menu > li.menu-item-has-children > a:before {
    width: calc(100% - var(--item-padding)*2 - 20px); }
  .cs-menu .primary-menu > li > .sub-menu {
    left: calc(var(--item-padding) - 30px); }
  .cs-menu.footer-menu .menu {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .cs-menu.footer-menu li a {
    display: block;
    padding: 5px var(--item-padding);
    font-family: var(--nav-font);
    font-size: var(--fbnav-font-size);
    font-weight: var(--fbnav-font-weight);
    letter-spacing: var(--fbnav-font-letter-spacing);
    text-transform: var(--fbnav-font-transform); }
  .cs-menu.cs-menu-inline .menu {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .cs-menu.cs-menu-inline .menu li {
      padding: 5px var(--item-padding); }
    .cs-menu.cs-menu-inline .menu a {
      white-space: nowrap; }
  .cs-menu.cs-menu-inline.text-left .menu li:first-child {
    padding-left: 0; }
  .cs-menu.cs-menu-inline.text-right .menu li:last-child {
    padding-right: 0; }
  .cs-menu.cs-menu-inline .sub-menu {
    position: absolute;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 16px;
    font-size: 1rem;
    line-height: 30px;
    transition: 0.3s;
    opacity: 0;
    pointer-events: none;
    visibility: hidden; }
    .cs-menu.cs-menu-inline .sub-menu:before {
      font-family: 'ElegantIcons';
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      display: inline-block;
      font-size: 14px;
      font-size: 0.875rem;
      content: "\35";
      padding: 5px 0;
      line-height: 30px; }
  .no-touch .cs-menu.cs-menu-inline li:hover > ul.sub-menu {
    z-index: 99;
    opacity: 1;
    pointer-events: auto;
    visibility: visible; }

.elementor-widget-cs_title .cs-subtitle-wrap {
  position: relative;
  overflow: hidden; }
  .elementor-widget-cs_title .cs-subtitle-wrap + .cs-title {
    margin-top: 20px; }
.elementor-widget-cs_title .cs-title-separator {
  display: flex;
  justify-content: center;
  margin-top: 20px; }
  .elementor-widget-cs_title .cs-title-separator span {
    display: block;
    width: 1px;
    height: 45px;
    background: currentColor; }
.elementor-widget-cs_title .cs-title-text {
  margin-top: 20px; }
  .elementor-widget-cs_title .cs-title-text:first-child {
    margin-top: 0; }
  .elementor-widget-cs_title .cs-title-text p {
    margin-bottom: 20px; }
  .elementor-widget-cs_title .cs-title-text > *:last-child {
    margin-bottom: 0; }
  .elementor-widget-cs_title .cs-title-text + .cs-title-btn {
    margin-top: 30px; }
.elementor-widget-cs_title .cs-title-btn {
  margin-top: 20px; }
  .elementor-widget-cs_title .cs-title-btn .button.cs-btn-underline {
    margin-bottom: 2px; }

.cs-title,
.entry-content .cs-title {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1.35; }
  .cs-title small,
  .entry-content .cs-title small {
    font-weight: 300;
    font-size: 100%; }

.cs-subtitle-wrap {
  line-height: 1.2; }

.cs-title-wrap.text-left {
  margin-right: auto; }

.cs-title-wrap.text-center {
  margin-right: auto;
  margin-left: auto; }

.cs-title-wrap.text-right {
  margin-left: auto; }

h1.cs-title {
  font-size: 48px;
  font-size: 3rem; }

h2.cs-title {
  font-size: 38px;
  font-size: 2.375rem; }

h3.cs-title {
  font-size: 32px;
  font-size: 2rem; }

h4.cs-title {
  font-size: 28px;
  font-size: 1.75rem; }

h5.cs-title {
  font-size: 24px;
  font-size: 1.5rem; }

h6.cs-title {
  font-size: 21px;
  font-size: 1.3125rem; }

.cs-slider .slick-dots {
  position: absolute;
  bottom: 50px;
  left: 0;
  width: 100%; }
.cs-slider .cs-slider-wrap > .cs-slider-item {
  opacity: 0; }
.cs-slider .slick-initialized .cs-slider-item .elementor-section:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  content: "";
  transition: 0s; }
.cs-slider .slick-initialized .cs-slider-item.current-item .elementor-section:before {
  -webkit-transform: scale(1.15);
  -ms-transform: scale(1.15);
  transform: scale(1.15);
  transition: transform 10s linear 0s; }
.cs-slider .slick-initialized .cs-slider-item.slick-current .elementor-widget > * > * {
  -webkit-animation: slideFade 0.7s ease-out;
  animation: slideFade 0.7s ease-out; }

.elementor-widget-cs_slider .cs-slider-item {
  overflow: hidden; }

.cs-divider {
  position: relative;
  color: #dfdbdc; }
  .cs-divider .cs-d-line {
    position: relative;
    margin: 0 auto;
    width: 100%;
    height: 6px; }
    .cs-divider .cs-d-line:before, .cs-divider .cs-d-line:after {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      display: block;
      background: currentColor;
      content: ""; }
    .cs-divider .cs-d-line:before {
      width: 100%;
      height: 1px; }
    .cs-divider .cs-d-line:after {
      width: 6px;
      height: 6px;
      border-radius: 50%; }
  .cs-divider .cs-d-icon {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 3;
    width: 33px;
    color: #c8c4c5; }
    .cs-divider .cs-d-icon.icon-start {
      left: 0; }
    .cs-divider .cs-d-icon.icon-end {
      right: 0; }
    .cs-divider .cs-d-icon svg {
      display: block; }
      .cs-divider .cs-d-icon svg > * {
        fill: currentColor; }
  .cs-divider.divider-star .cs-d-icon {
    width: 22px; }
  .cs-divider.divider-star .cs-d-line {
    width: calc(100% - 50px); }
  .cs-divider.divider-grass .cs-d-line {
    width: calc(100% - 20px); }
  .cs-divider.divider-grass .cs-d-icon.icon-start {
    -webkit-transform: translateY(-50%) rotate(-90deg);
    -ms-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg); }
  .cs-divider.divider-grass .cs-d-icon.icon-end {
    -webkit-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg); }

.cs-vertical-divider {
  color: #dfdbdc;
  height: 200px; }
  .cs-vertical-divider > * {
    margin: 0 auto; }
  .cs-vertical-divider .cs-vd-line {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 6px;
    height: 100%; }
    .cs-vertical-divider .cs-vd-line:before, .cs-vertical-divider .cs-vd-line:after {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      display: block;
      background: currentColor;
      content: ""; }
    .cs-vertical-divider .cs-vd-line:before {
      width: 1px;
      height: 100%; }
    .cs-vertical-divider .cs-vd-line:after {
      width: 6px;
      height: 6px;
      border-radius: 50%; }
  .cs-vertical-divider .cs-vd-icon {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 3;
    width: 33px;
    color: #c8c4c5; }
    .cs-vertical-divider .cs-vd-icon.icon-start {
      top: 0; }
    .cs-vertical-divider .cs-vd-icon.icon-end {
      bottom: 0; }
    .cs-vertical-divider .cs-vd-icon svg {
      display: block; }
      .cs-vertical-divider .cs-vd-icon svg > * {
        fill: currentColor; }
  .cs-vertical-divider.divider-star .cs-vd-icon {
    width: 22px; }
  .cs-vertical-divider.divider-star .cs-vd-line {
    height: calc(100% - 50px); }
  .cs-vertical-divider.divider-star .cs-vd-icon.icon-end {
    -webkit-transform: translateX(-50%) rotate(180deg);
    -ms-transform: translateX(-50%) rotate(180deg);
    transform: translateX(-50%) rotate(180deg); }
  .cs-vertical-divider.divider-grass .cs-vd-line {
    height: calc(100% - 20px); }
  .cs-vertical-divider.divider-grass .cs-vd-icon.icon-end {
    -webkit-transform: translateX(-50%) rotate(180deg);
    -ms-transform: translateX(-50%) rotate(180deg);
    transform: translateX(-50%) rotate(180deg); }

.elementor-widget-cs_vertical_divider.full-height,
.elementor-widget-cs_vertical_divider.full-height .elementor-widget-container,
.elementor-widget-cs_vertical_divider.full-height .cs-vertical-divider {
  height: 100%; }

.cs-tabs .elementor-tabs-wrapper {
  text-align: center; }
.cs-tabs .elementor-tab-desktop-title {
  display: inline-flex;
  font-family: var(--secondary-font);
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 500;
  text-transform: uppercase;
  margin-bottom: var(--spacing); }
  .cs-tabs .elementor-tab-desktop-title a {
    position: relative;
    margin: 0 15px;
    color: var(--text-color); }
    .elementor-element .cs-tabs .elementor-tab-desktop-title a {
      color: var(--text-color); }
    .cs-tabs .elementor-tab-desktop-title a:before {
      position: absolute;
      bottom: -2px;
      left: 0;
      display: block;
      width: 100%;
      height: 2px;
      background: var(--primary-color);
      content: "";
      transition: transform 0.2s ease;
      transform-origin: 100% 0;
      -webkit-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0); }
  .cs-tabs .elementor-tab-desktop-title.elementor-active a:before {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1); }
.cs-tabs .elementor-tab-content {
  opacity: 0;
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px); }
.cs-tabs .elementor-tab-content.elementor-active {
  -webkit-animation: showTab 0.7s ease-out 0.2s;
  animation: showTab 0.7s ease-out 0.2s;
  animation-fill-mode: forwards; }

.cs-food-menu {
  --food-img-width: 85px; }
  .cs-food-menu .cs-food-menu {
    position: relative; }
  .cs-food-menu .cs-food-menu-item {
    display: table;
    width: 100%; }
  .cs-food-menu .cs-food-menu-img {
    position: relative;
    width: var(--food-img-width);
    max-width: var(--food-img-width);
    margin-right: 20px;
    overflow: hidden; }
  .cs-food-menu .cs-food-menu-main {
    display: table-cell;
    width: inherit;
    min-width: 100%;
    vertical-align: middle; }
  .cs-food-menu .cs-food-menu-header > * {
    display: table-cell; }
  .cs-food-menu .cs-food-menu-title {
    padding-right: 15px;
    margin-bottom: 0;
    width: 1%;
    white-space: nowrap;
    font-size: 21px;
    font-size: 1.3125rem; }
    .cs-food-menu .cs-food-menu-title a {
      color: inherit;
      white-space: inherit; }
    .cs-food-menu .cs-food-menu-title .title-wrap {
      white-space: inherit; }
    .cs-food-menu .cs-food-menu-title .title-wrap.pen:not([data-elementor-inline-editing-toolbar="advanced"]) {
      white-space: nowrap !important; }
    .cs-food-menu .cs-food-menu-title .menu-label {
      -webkit-transform: translateY(-4px);
      -ms-transform: translateY(-4px);
      transform: translateY(-4px);
      display: inline-block;
      padding: 4px 5px;
      border-radius: 3px;
      background: var(--primary-color);
      color: #fff;
      font-family: var(--secondary-font);
      font-size: 10px;
      font-size: 0.625rem;
      text-transform: uppercase; }
  .cs-food-menu .cs-food-menu-lines {
    position: relative;
    width: 98%; }
  .cs-food-menu .cs-food-menu-group {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 12px;
    font-size: 0.75rem;
    transform: translateY(-150%); }
    .cs-food-menu .cs-food-menu-group span {
      margin-right: 20px;
      border: 2px solid;
      padding: 0 3px; }
      .cs-food-menu .cs-food-menu-group span:last-child {
        margin: 0; }
  .cs-food-menu .cs-food-menu-price {
    padding-left: 15px;
    width: 1%;
    font-size: 20px;
    font-size: 1.25rem;
    white-space: nowrap; }
    .cs-food-menu .cs-food-menu-price del {
      font-size: 18px;
      font-size: 1.125rem;
      opacity: 0.35; }
    .cs-food-menu .cs-food-menu-price.multi-price .cs-price {
      margin-right: 20px; }
      .cs-food-menu .cs-food-menu-price.multi-price .cs-price:last-child {
        margin: 0; }
  .cs-food-menu .cs-food-menu-details {
    margin-top: 5px;
    margin-bottom: 0;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.6;
    opacity: 0.6;
    color: var(--content-color); }
  .cs-food-menu.food-menu-style-1 .cs-food-menu-item {
    padding: 0 0 20px;
    margin-bottom: 15px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
    .dark-color .cs-food-menu.food-menu-style-1 .cs-food-menu-item {
      border-bottom-color: rgba(255, 255, 255, 0.15); }
  .cs-food-menu.food-menu-style-2 .cs-food-menu-item {
    margin: 0 0 30px; }
  .cs-food-menu.food-menu-style-2 .cs-food-menu-lines {
    top: 21px;
    background-position: top;
    background-image: linear-gradient(to right, #000 25%, rgba(255, 255, 255, 0) 0%);
    background-size: 8px 2px;
    background-repeat: repeat-x; }
    .dark-color .cs-food-menu.food-menu-style-2 .cs-food-menu-lines {
      background-image: linear-gradient(to right, #fff 25%, rgba(255, 255, 255, 0) 0%); }
  .cs-food-menu.food-menu-style-3 .cs-food-menu-item {
    margin: 0 0 30px; }
  .cs-food-menu.food-menu-style-3 .cs-food-menu-lines {
    top: 17px;
    border-top: 1px solid;
    color: var(--border-color); }
  .cs-food-menu.food-menu-style-4 .cs-food-menu-item {
    margin: 0 0 30px; }
  .cs-food-menu.food-menu-style-4 .cs-food-menu-lines {
    position: relative;
    top: 14px;
    border-top: 1px solid;
    color: var(--border-color); }
    .cs-food-menu.food-menu-style-4 .cs-food-menu-lines:before {
      position: absolute;
      top: 4px;
      display: block;
      width: 100%;
      height: 1px;
      border-top: 1px solid;
      content: ""; }
  .cs-food-menu.food-menu-style-5 {
    margin: calc(0px - var(--gap)); }
    .cs-food-menu.food-menu-style-5.gap-10 {
      --gap: 10px; }
    .cs-food-menu.food-menu-style-5.gap-20 {
      --gap: 20px; }
    .cs-food-menu.food-menu-style-5.gap-32 {
      --gap: 32px; }
    .cs-food-menu.food-menu-style-5 .cs-food-menu-header {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      width: 100%; }
      .cs-food-menu.food-menu-style-5 .cs-food-menu-header > * {
        display: block;
        white-space: normal;
        width: auto; }
      .cs-food-menu.food-menu-style-5 .cs-food-menu-header .cs-food-menu-lines {
        display: none; }
    .cs-food-menu.food-menu-style-5 .cs-food-menu-item {
      display: block;
      padding: var(--gap); }
    .cs-food-menu.food-menu-style-5 .cs-food-menu-main {
      display: block; }
    .cs-food-menu.food-menu-style-5 .cs-food-menu-title {
      line-height: 1.35; }
    .cs-food-menu.food-menu-style-5 .cs-food-menu-details {
      margin-top: 10px;
      line-height: 1.35; }
    .cs-food-menu.food-menu-style-5 .cs-food-menu-img {
      width: 100%;
      max-width: 100%;
      margin: 0 0 20px; }
      .cs-food-menu.food-menu-style-5 .cs-food-menu-img img {
        display: block; }
  .cs-food-menu.food-menu-style-6 .cs-food-menu-item {
    margin: 0 0 30px; }
  .cs-food-menu.food-menu-style-6 .cs-food-menu-lines {
    opacity: 0; }
  .cs-food-menu .cs-food-menu-item:last-child {
    margin-bottom: 0; }

.cs-food-card {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  margin-right: auto;
  margin-left: auto; }
  .cs-food-card .cs-fc-img,
  .cs-food-card .cs-fc-img + .cs-fc-info {
    width: 50%; }
  .cs-food-card:not(.column-reverse) .cs-fc-img {
    display: flex;
    justify-content: flex-end; }
  .cs-food-card .cs-fc-img + .cs-fc-info {
    padding: 0 60px; }
  .cs-food-card .cs-fc-info-title {
    margin: 0;
    line-height: 1.2;
    font-size: 40px; }
  .cs-food-card .cs-fc-info-title + .cs-fc-info-text {
    margin-top: 20px; }
  .cs-food-card .cs-fc-info-text {
    line-height: 1.25;
    font-size: 21px; }
    .cs-food-card .cs-fc-info-text > *:last-child {
      margin-bottom: 0; }
    .cs-food-card .cs-fc-info-text:not(:last-child) {
      margin-bottom: 30px; }
  .cs-food-card .cs-fc-info-extra {
    display: flex;
    margin-top: 20px; }
    .cs-food-card .cs-fc-info-extra .info-label {
      display: inline-block;
      margin-right: 45px;
      font-size: 14px;
      font-size: 0.875rem;
      text-transform: uppercase;
      border: 2px solid;
      padding: 3px 15px;
      line-height: 24px;
      text-align: center;
      min-width: 130px; }
    .cs-food-card .cs-fc-info-extra .info-content {
      display: inline-block;
      font-size: 36px;
      font-size: 2.25rem;
      font-weight: 600;
      line-height: 1; }
  .cs-food-card.column-reverse {
    flex-direction: row-reverse; }
    .cs-food-card.column-reverse .cs-fc-info {
      display: flex;
      justify-content: flex-end; }

.cs-testimonials .cs-testimonial-content {
  color: var(--text-color);
  font-family: var(--heading-font);
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.5; }
  .cs-testimonials .cs-testimonial-content + .cs-testimonial-rating {
    margin-top: 10px; }
.cs-testimonials .cs-testimonial-meta {
  margin-top: 25px; }
.cs-testimonials .cs-testimonial-rating + .cs-testimonial-meta {
  margin-top: 0; }
.cs-testimonials .elementor-testimonial-image {
  font-size: 0; }
  .cs-testimonials .elementor-testimonial-image img {
    display: inline;
    width: 70px;
    border-radius: 50%; }
.cs-testimonials .cs-testimonial-rating:first-child {
  margin-bottom: 20px; }
.cs-testimonials .cs-testimonial-stars {
  display: block; }
  .cs-testimonials .cs-testimonial-stars:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font: normal normal normal 14px/1 "Font Awesome 5 Free";
    font-size: inherit;
    text-rendering: auto;
    line-height: inherit;
    font-weight: 900;
    content: "\f005\f005\f005\f005\f005";
    color: #ffc107;
    font-size: 11px;
    letter-spacing: 2px; }
.cs-testimonials:not(.elementor-testimonial-image-position-aside) .cs-testimonial-meta .elementor-testimonial-image {
  margin-bottom: 12px; }
.cs-testimonials.elementor-testimonial-image-position-aside .cs-testimonial-meta .elementor-testimonial-meta-inner {
  width: fit-content;
  text-align: left; }
.cs-testimonials.elementor-testimonial-image-position-aside .cs-testimonial-meta .elementor-testimonial-image,
.cs-testimonials.elementor-testimonial-image-position-aside .cs-testimonial-meta .elementor-testimonial-details {
  display: inline-block;
  vertical-align: middle; }
.cs-testimonials.elementor-testimonial-image-position-aside .cs-testimonial-meta .elementor-testimonial-image {
  margin-right: 12px; }
.cs-testimonials.elementor-testimonial-image-position-aside.text-center .elementor-testimonial-meta-inner {
  margin: 0 auto; }
.cs-testimonials .elementor-testimonial-name {
  font-family: var(--heading-font);
  font-size: 16px;
  font-size: 1rem; }
.cs-testimonials .elementor-testimonial-job {
  font-size: 12px;
  font-size: 0.75rem;
  text-transform: uppercase; }
.cs-testimonials.testimonial-style-1 .cs-testimonial {
  margin: 0 auto; }
.cs-testimonials.testimonial-style-1 .cs-testimonial,
.cs-testimonials.testimonial-style-1 .slick-dots {
  max-width: 820px; }
.cs-testimonials.testimonials-grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -30px; }
  .cs-testimonials.testimonials-grid .cs-testimonial {
    padding: 30px; }
  .cs-testimonials.testimonials-grid .cs-testimonial-content {
    font-size: 21px;
    font-size: 1.3125rem; }
.cs-testimonials.testimonials-slider > .cs-ts-wrap > .cs-ts-item {
  display: none; }
  .cs-testimonials.testimonials-slider > .cs-ts-wrap > .cs-ts-item:first-child {
    display: block; }
.cs-testimonials.testimonials-slider .slick-arrow.slick-prev {
  left: -30px; }
.cs-testimonials.testimonials-slider .slick-arrow.slick-next {
  right: -30px; }
.cs-testimonials.testimonials-slider[data-column="1"] .cs-ts-item {
  padding: 0; }
.cs-testimonials.testimonials-slider[data-column="2"] .cs-testimonial-content, .cs-testimonials.testimonials-slider[data-column="3"] .cs-testimonial-content {
  font-size: 18px;
  font-size: 1.125rem; }
.cs-testimonials.testimonials-slider .cs-ts-item {
  padding: 0 30px; }

.cs-gallery img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  transition: transform 0.3s; }
.cs-gallery.gap-0 {
  --gallery-gap: 0px; }
.cs-gallery.gap-2 {
  --gallery-gap: 2px; }
.cs-gallery.gap-5 {
  --gallery-gap: 5px; }
.cs-gallery.gap-10 {
  --gallery-gap: 10px; }
.cs-gallery.gap-16 {
  --gallery-gap: 16px; }
.cs-gallery.gap-20 {
  --gallery-gap: 20px; }
.cs-gallery.gap-32 {
  --gallery-gap: 32px; }
.cs-gallery .cs-gallery-item {
  position: relative; }
.cs-gallery.gallery-grid .cs-gallery-wrap {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: calc(0px - var(--gallery-gap)); }
.cs-gallery.gallery-grid .cs-gallery-item {
  padding: var(--gallery-gap); }
.cs-gallery.gallery-grid.grid-col-2 .cs-gallery-item {
  width: 50%; }
.cs-gallery.gallery-grid.grid-col-3 .cs-gallery-item {
  width: 33.33%; }
.cs-gallery.gallery-grid.grid-col-4 .cs-gallery-item {
  width: 25%; }
.cs-gallery.gallery-grid.grid-col-5 .cs-gallery-item {
  width: 20%; }
.cs-gallery.gallery-grid.grid-col-6 .cs-gallery-item {
  width: 16.6666%; }
.cs-gallery.gallery-grid.align-middle-v .cs-gallery-item {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center; }
.cs-gallery.gallery-grid.align-bottom-v .cs-gallery-item {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-end;
  -ms-flex-align: flex-end;
  align-items: flex-end;
  -webkit-justify-content: flex-end;
  justify-content: flex-end; }
.cs-gallery.gallery-mosaic .cs-gallery-wrap {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px; }
  .cs-gallery.gallery-mosaic .cs-gallery-wrap .cs-gallery-item:first-child {
    grid-column: 1/span 2;
    grid-row: 1/span 2; }
  .cs-gallery.gallery-mosaic .cs-gallery-wrap img {
    object-fit: cover;
    width: 100%;
    height: 100%; }
.cs-gallery.gallery-carousel .slick-list {
  margin: 0 calc(0px - var(--gallery-gap)); }
.cs-gallery.gallery-carousel .slick-slide {
  will-change: transform; }
.cs-gallery.gallery-carousel .cs-gallery-item {
  padding: 0 var(--gallery-gap); }
.cs-gallery.gallery-carousel.align-middle-v .slick-track {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center; }
.cs-gallery.gallery-carousel.align-bottom-v .slick-track {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-end;
  -ms-flex-align: flex-end;
  align-items: flex-end;
  -webkit-justify-content: flex-end;
  justify-content: flex-end; }
.cs-gallery.gallery-carousel.slider-height-full .cs-gallery-item {
  height: 100vh; }
  .cs-gallery.gallery-carousel.slider-height-full .cs-gallery-item img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 9;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover; }
.cs-gallery.gallery-carousel > .cs-gallery-wrap > .cs-gallery-item {
  display: none;
  opacity: 0; }
  .cs-gallery.gallery-carousel > .cs-gallery-wrap > .cs-gallery-item:first-child {
    display: block; }
.cs-gallery.slider-dots-overlap .slick-dots {
  position: absolute;
  bottom: 30px;
  left: 0;
  width: 100%;
  color: #fff; }
.cs-gallery.variable-width .cs-gallery-item {
  height: 600px; }
  .cs-gallery.variable-width .cs-gallery-item img {
    height: 100%;
    width: auto; }
.cs-gallery.style-overflow .slick-list {
  overflow: visible; }
.cs-gallery.style-overflow .slick-arrow.slick-prev {
  left: -30px; }
.cs-gallery.style-overflow .slick-arrow.slick-next {
  right: -30px; }

.cs-instagram {
  --ig-gap: 8px; }
  .cs-instagram .cs-instagram-title {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 99;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 256px;
    height: 256px;
    padding: 0 30px;
    border-radius: 50%;
    background: #fff;
    color: #000;
    font-size: 26px;
    font-size: 1.625rem;
    line-height: 1.3;
    font-weight: 500;
    text-align: center;
    overflow: hidden; }
  .cs-instagram ul {
    margin: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--ig-gap); }
  .cs-instagram li {
    position: relative;
    overflow: hidden; }
  .cs-instagram.column-4 ul {
    grid-template-columns: repeat(4, 1fr); }
  .cs-instagram.column-5 ul {
    grid-template-columns: repeat(5, 1fr); }
  .cs-instagram .feed-bg {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 0;
    padding-top: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: all 0.4s ease-out;
    -webkit-transform: scale(1.02);
    -ms-transform: scale(1.02);
    transform: scale(1.02); }
  .cs-instagram .feed-video {
    margin-bottom: 0; }
  .cs-instagram li a {
    position: relative;
    display: block;
    overflow: hidden;
    background: #000; }
    .cs-instagram li a:after {
      position: absolute;
      top: 20px;
      left: 20px;
      z-index: 99;
      color: #fff;
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      display: inline-block;
      font: normal normal normal 14px/1 "Font Awesome 5 Free";
      font-size: inherit;
      text-rendering: auto;
      line-height: inherit;
      font-weight: 900;
      font-family: "Font Awesome 5 Brands";
      font-weight: 400;
      content: "\f16d";
      font-size: 24px;
      line-height: 1;
      opacity: 0;
      transition: opacity 0.4s ease-out; }
    .no-touch .cs-instagram li a:hover .feed-bg {
      -webkit-transform: scale(1.06);
      -ms-transform: scale(1.06);
      transform: scale(1.06);
      opacity: 0.9; }
    .no-touch .cs-instagram li a:hover:after {
      opacity: 1; }

.cs-fancy-card {
  --content-bg: #000;
  --content-color: #fff;
  --content-bg-hover: var(--content-bg);
  --content-color-hover: var(--content-color); }
  .cs-fancy-card .cs-fc-wrap {
    position: relative;
    overflow: hidden; }
  .cs-fancy-card .cs-fc-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1; }
    .cs-fancy-card .cs-fc-link ~ * {
      pointer-events: none; }
      .elementor-editor-active .cs-fancy-card .cs-fc-link ~ *,
      .cs-fancy-card .cs-fc-link ~ * a {
        pointer-events: auto; }
  .cs-fancy-card .cs-fc-img {
    position: relative;
    overflow: hidden; }
    .cs-fancy-card .cs-fc-img img {
      display: block;
      width: 100%;
      transition: 0.35s ease-in-out; }
  .no-touch .cs-fancy-card.cs-hover-img-zoom:hover .cs-fc-img img {
    -webkit-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07); }
  .cs-fancy-card.cs-hover-img-zoom-out .cs-fc-img img {
    -webkit-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07); }
  .no-touch .cs-fancy-card.cs-hover-img-zoom-out:hover .cs-fc-img img {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }
  .cs-fancy-card .cs-fc-content {
    z-index: 9;
    width: 100%;
    padding: 30px; }
  .cs-fancy-card .cs-fc-title:not([class*="color-"]),
  .cs-fancy-card .cs-subtitle:not([class*="color-"]) {
    color: inherit; }
  .cs-fancy-card .cs-fc-text p {
    margin-bottom: 0; }
  .cs-fancy-card.style-1 .cs-fc-wrap {
    display: flex;
    flex-direction: column;
    background: var(--content-bg);
    color: var(--content-color);
    transition: background 0.3s, color 0.3s; }
  .no-touch .cs-fancy-card.style-1:hover .cs-fc-wrap {
    background: var(--content-bg-hover);
    color: var(--content-color-hover); }
  .cs-fancy-card.style-1.order-reverse:not(.layout-row) .cs-fc-img {
    order: 9; }
  .cs-fancy-card.style-1 .cs-fc-content {
    display: flex;
    flex-direction: column;
    justify-content: center; }
  .cs-fancy-card.style-2 .cs-fc-wrap {
    overflow: visible; }
  .cs-fancy-card.style-2 .cs-fc-content {
    position: absolute;
    bottom: 30px;
    left: -20px;
    padding: 15px 50px;
    background: var(--content-bg);
    color: var(--content-color);
    width: fit-content;
    max-width: calc(100% - 20px);
    transition: background 0.3s, color 0.3s; }
  .cs-fancy-card.style-2.content-position-right .cs-fc-content {
    right: -20px;
    left: auto; }
  .cs-fancy-card.style-2.content-position-center .cs-fc-content {
    right: auto;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 70%;
    max-width: 100%; }
  .no-touch .cs-fancy-card.style-2:hover .cs-fc-content {
    background: var(--content-bg-hover);
    color: var(--content-color-hover); }

.cs-cta {
  --cta-border-color: var(--primary-color); }
  .cs-cta .cs-cta-wrap {
    position: relative;
    overflow: hidden; }
  .cs-cta .cs-cta-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 8; }
  .cs-cta .cs-cta-img {
    position: relative;
    overflow: hidden; }
    .cs-cta .cs-cta-img img {
      display: block;
      width: 100%;
      transition: 0.35s ease-in-out; }
  .cs-cta .cs-cta-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    transition: 0.35s; }
  .cs-cta .cs-cta-label {
    z-index: 9;
    position: absolute;
    background: #fff;
    color: #000;
    padding: 8px 12px;
    font-size: 12px;
    font-size: 0.75rem;
    text-transform: uppercase;
    pointer-events: none; }
    .elementor-editor-active .cs-cta .cs-cta-label {
      pointer-events: auto; }
    .cs-cta .cs-cta-label.label-top-left {
      top: 20px;
      left: 20px; }
    .cs-cta .cs-cta-label.label-top-right {
      top: 20px;
      right: 20px; }
    .cs-cta .cs-cta-label.label-bottom-left {
      bottom: 20px;
      left: 20px; }
    .cs-cta .cs-cta-label.label-bottom-right {
      right: 20px;
      bottom: 20px; }
    .cs-cta .cs-cta-label.label-centered {
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
  .cs-cta .cs-cta-content {
    z-index: 9;
    width: 100%;
    pointer-events: none; }
    .elementor-editor-active .cs-cta .cs-cta-content {
      pointer-events: auto; }
    .cs-cta .cs-cta-content > * {
      margin-bottom: 10px; }
    .cs-cta .cs-cta-content .cs-subtitle-wrap:last-child {
      margin-bottom: 0; }
    .cs-cta .cs-cta-content a {
      pointer-events: auto; }
      .elementor-editor-active .cs-cta .cs-cta-content a {
        pointer-events: none; }
        .elementor-editor-active .cs-cta .cs-cta-content a .cs-btn-text {
          pointer-events: auto; }
  .cs-cta .cs-cta-text {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5; }
    .cs-cta .cs-cta-text p {
      margin-bottom: 10px; }
    .cs-cta .cs-cta-text p:last-child {
      margin-bottom: 0; }
  .cs-cta .hover-slide-up {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: 0.35s ease-in-out; }
  .no-touch .cs-cta:hover .hover-slide-up {
    max-height: 200px;
    opacity: 1; }
  .cs-cta.cta-layout-text-normal .cs-cta-content {
    padding-top: 30px; }
    .cs-cta.cta-layout-text-normal .cs-cta-content > * {
      margin-bottom: 15px; }
  .cs-cta.cta-layout-text-overlap .cs-cta-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 30px; }
  .no-touch .cs-cta.cta-hover-img-zoom:hover .cs-cta-img img {
    -webkit-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07); }
  .cs-cta.cta-hover-img-zoom-out .cs-cta-img img {
    -webkit-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07); }
  .no-touch .cs-cta.cta-hover-img-zoom-out:hover .cs-cta-img img {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }
  .cs-cta.content-top .cs-cta-content {
    justify-content: flex-start; }
  .cs-cta.content-middle .cs-cta-content {
    justify-content: center; }
  .cs-cta.content-bottom .cs-cta-content {
    justify-content: flex-end; }
  .cs-cta.text-hover-to-show .cs-cta-content {
    opacity: 0;
    transition: opacity 0.4s; }
  .no-touch .cs-cta.text-hover-to-show:hover .cs-cta-content {
    opacity: 1; }
  .cs-cta.text-hover-to-hide .cs-cta-content {
    transition: opacity 0.4s; }
  .no-touch .cs-cta.text-hover-to-hide:hover .cs-cta-content {
    opacity: 0; }
  .cs-cta.with-inner-border {
    --border-position: 10px; }
    .cs-cta.with-inner-border .cs-cta-content:before,
    .cs-cta.with-inner-border .cs-cta-content:after {
      position: absolute;
      top: var(--border-position);
      right: var(--border-position);
      bottom: var(--border-position);
      left: var(--border-position);
      color: var(--cta-border-color);
      content: "";
      transition: opacity 0.35s, transform 0.35s; }
    .cs-cta.with-inner-border .cs-cta-content:before {
      border-top: 1px solid;
      border-bottom: 1px solid; }
    .cs-cta.with-inner-border .cs-cta-content:after {
      border-right: 1px solid;
      border-left: 1px solid; }
    .cs-cta.with-inner-border.text-hover-to-show .cs-cta-content:before,
    .cs-cta.with-inner-border.text-hover-to-show .cs-cta-content:after {
      opacity: 0; }
    .cs-cta.with-inner-border.text-hover-to-show .cs-cta-content:before {
      transform: scale(0, 1); }
    .cs-cta.with-inner-border.text-hover-to-show .cs-cta-content:after {
      transform: scale(1, 0); }
    .no-touch .cs-cta.with-inner-border.text-hover-to-show:hover .cs-cta-content:before,
    .no-touch .cs-cta.with-inner-border.text-hover-to-show:hover .cs-cta-content:after {
      opacity: 1;
      transform: scale(1); }
    .no-touch .cs-cta.with-inner-border.text-hover-to-hide:hover .cs-cta-content:before,
    .no-touch .cs-cta.with-inner-border.text-hover-to-hide:hover .cs-cta-content:after {
      opacity: 0; }
    .no-touch .cs-cta.with-inner-border.text-hover-to-hide:hover .cs-cta-content:before {
      transform: scale(0, 1); }
    .no-touch .cs-cta.with-inner-border.text-hover-to-hide:hover .cs-cta-content:after {
      transform: scale(1, 0); }
  .cs-cta.img-offset-border {
    --offset: -10px;
    --offset-revert: calc(0px - var(--offset)); }
    .cs-cta.img-offset-border .cs-cta-wrap {
      overflow: visible; }
    .cs-cta.img-offset-border .cs-cta-img-wrap {
      position: relative; }
    .cs-cta.img-offset-border .cs-offset-border {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      border: 1px solid var(--cta-border-color);
      transform: translate(var(--offset), calc(var(--offset)));
      transition: all 0.3s;
      will-change: transform, width, height; }
    .no-touch .cs-cta.img-offset-border:hover .cs-offset-border {
      -webkit-transform: translate(var(--offset-revert), var(--offset-revert));
      -ms-transform: translate(var(--offset-revert), var(--offset-revert));
      transform: translate(var(--offset-revert), var(--offset-revert));
      width: calc(100% + var(--offset)*2);
      height: calc(100% + var(--offset)*2); }

.cs-block-links {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap; }
  .cs-block-links .cs-bl-item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    min-height: 400px;
    flex-grow: 2;
    transition: width 0.8s cubic-bezier(0.36, 0.33, 0, 1); }
  .no-touch .cs-block-links .cs-bl-item:hover .cs-bl-item-bg {
    opacity: 1; }
  .cs-block-links .cs-bl-item-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0;
    transition: opacity .4s ease-out; }
    .cs-block-links .cs-bl-item-bg .cs-bl-item-bg-container {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat; }
  .cs-block-links .cs-bl-item-inner {
    position: relative;
    z-index: 3;
    padding: 80px 30px;
    text-align: center; }
  .cs-block-links .cs-text,
  .cs-block-links .button {
    margin-top: 20px; }
  .cs-block-links .cs-text p {
    margin-bottom: 20px; }
    .cs-block-links .cs-text p:last-child {
      margin-bottom: 0; }
  .cs-block-links .cs-bl-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9; }
  .no-touch .cs-block-links.hover-text-white .cs-bl-item:hover {
    color: #fff !important; }
    .no-touch .cs-block-links.hover-text-white .cs-bl-item:hover .cs-subtitle,
    .no-touch .cs-block-links.hover-text-white .cs-bl-item:hover .cs-title,
    .no-touch .cs-block-links.hover-text-white .cs-bl-item:hover .cs-text {
      color: inherit !important; }
    .no-touch .cs-block-links.hover-text-white .cs-bl-item:hover .button.cs-btn-outline {
      --btn-bg: #fff; }
  .elementor-editor-active .cs-block-links .cs-bl-link {
    pointer-events: none; }

.cs-countdown .countdown-item {
  position: relative;
  display: inline-flex;
  flex: 0 1;
  flex-direction: column;
  margin: 0 2%;
  padding: 10px 0;
  min-width: 100px;
  text-align: center;
  font-size: 0; }
.cs-countdown .countdown-amount {
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.2; }
.cs-countdown .countdown-period {
  font-size: 18px;
  font-size: 1.125rem; }
.cs-countdown.amount-color-primary .countdown-amount, .cs-countdown.period-color-primary .countdown-period {
  color: var(--primary-color); }
.cs-countdown.amount-color-secondary .countdown-amount, .cs-countdown.period-color-secondary .countdown-period {
  color: var(--secondary-color); }
.cs-countdown.amount-color-black .countdown-amount, .cs-countdown.period-color-black .countdown-period {
  color: #000; }
.cs-countdown.amount-color-white .countdown-amount, .cs-countdown.period-color-white .countdown-period {
  color: #fff; }

.cs-video-btn {
  font-size: 0; }
  .cs-video-btn .video-play-btn {
    position: relative;
    display: inline-block;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 1px solid;
    cursor: pointer; }
    .cs-video-btn .video-play-btn svg {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      margin-top: 1px;
      margin-left: 4px;
      max-width: 32px; }

.elementor-widget-cs_social a, .entry-content .elementor-widget-cs_social a {
  color: inherit; }

.cs-info-box {
  position: relative;
  display: flex;
  --box-gap: 20px;
  --icon-space: 25px; }
  .cs-info-box .cs-info-box-wrap {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: calc(0px - var(--box-gap)/2);
    width: calc(100% + var(--box-gap)); }
  .cs-info-box .cs-info-box-item,
  .cs-info-box .cs-item-container {
    position: relative;
    display: flex;
    align-items: stretch;
    width: 100%; }
  .cs-info-box .cs-info-box-item {
    padding: calc(var(--box-gap)/2); }
  .cs-info-box.valign-middle .cs-item-container {
    align-items: center; }
  .cs-info-box.img-left .cs-info-box-item {
    flex-direction: row; }
  .cs-info-box.img-left .cs-info-box-img {
    margin-right: var(--icon-space); }
  .cs-info-box.img-right .cs-info-box-item .cs-item-container {
    flex-direction: row-reverse; }
  .cs-info-box.img-right .cs-info-box-img {
    margin-right: 0;
    margin-left: var(--icon-space); }
  .cs-info-box.img-top {
    --icon-space: 15px; }
    .cs-info-box.img-top .cs-info-box-item .cs-item-container {
      flex-direction: column; }
    .cs-info-box.img-top .cs-info-box-img {
      margin-bottom: var(--icon-space); }
  .cs-info-box .cs-info-box-img {
    flex: 0 0 auto;
    line-height: 0; }
    .cs-info-box .cs-info-box-img i {
      font-size: 42px; }
    .cs-info-box .cs-info-box-img svg {
      width: 42px;
      max-height: 42px; }
  .cs-info-box .cs-info-box-content {
    position: relative;
    flex: 1 1 auto; }
  .cs-info-box .cs-info-box-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 8; }
  .cs-info-box img {
    display: block; }
  .cs-info-box.text-center img {
    margin: 0 auto; }
  .cs-info-box.text-right img {
    margin-left: auto; }
  .cs-info-box.column-1 .cs-info-box-item {
    width: 100%; }
  .cs-info-box .cs-info-box-title {
    font-size: 21px;
    font-size: 1.3125rem; }
  .cs-info-box .cs-info-box-title + .cs-info-box-text,
  .cs-info-box .cs-info-box-btn {
    margin-top: 10px; }
  .cs-info-box .cs-info-box-text {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.35; }
    .cs-info-box .cs-info-box-text p {
      margin-bottom: 15px; }
      .cs-info-box .cs-info-box-text p:last-child {
        margin-bottom: 0; }

.cs-team {
  position: relative;
  overflow: hidden; }
  .cs-team .cs-team-photo {
    margin-bottom: 15px; }
    .cs-team .cs-team-photo img {
      display: block; }
  .cs-team.text-left .cs-team-photo img {
    margin-right: auto; }
  .cs-team.text-center .cs-team-photo img {
    margin: 0 auto; }
  .cs-team.text-right .cs-team-photo img {
    margin-left: auto; }
  .cs-team .cs-team-position {
    display: block;
    margin-bottom: 7.5px; }
  .cs-team .cs-title.cs-team-name {
    font-size: 30px;
    font-size: 1.875rem;
    margin-bottom: 15px; }
  .cs-team .cs-team-text {
    margin-bottom: 15px;
    font-size: 16px;
    font-size: 1rem; }
    .cs-team .cs-team-text p {
      margin-bottom: 15px; }
      .cs-team .cs-team-text p:last-child {
        margin-bottom: 0; }
  .cs-team .cs-team-social a {
    color: inherit; }
  .cs-team > *:last-child {
    margin-bottom: 0; }
  .cs-team.style-overlay .cs-team-photo {
    margin-bottom: 0; }
  .cs-team.style-overlay .cs-team-info {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 50px 30px 30px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0));
    color: #fff; }
  .cs-team.style-overlay .cs-team-name {
    color: inherit; }

.cs-list {
  --icon-v-offset: 0px;
  --list-space: 2px;
  --icon-space: 20px;
  list-style: none;
  margin: 0; }
  .cs-list li {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    padding: var(--list-space) 0;
    line-height: 1.4; }
  .cs-list .list-icon {
    position: relative;
    top: var(--icon-v-offset);
    display: flex;
    margin-right: var(--icon-space); }
    .cs-list .list-icon svg {
      width: 1em;
      max-height: 1em;
      fill: currentColor; }
  .cs-list .list-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .cs-list.with-border {
    --list-space: 12px;
    border-top: 1px solid var(--border-color); }
    .cs-list.with-border li {
      border-bottom: 1px solid var(--border-color); }
  .cs-list.cs-list-type-none .list-icon {
    display: none;
    margin: 0; }
  .cs-list.cs-list-type-ordered {
    counter-reset: item; }
    .cs-list.cs-list-type-ordered .list-icon:before {
      counter-increment: item; }
  .cs-list.type-decimal .list-icon:before {
    content: counter(item,decimal) "."; }
  .cs-list.type-decimal-leading-zero .list-icon:before {
    content: counter(item,decimal-leading-zero) "."; }
  .cs-list.type-upper-roman .list-icon:before {
    content: counter(item,upper-roman) "."; }
  .cs-list.type-lower-roman .list-icon:before {
    content: counter(item,lower-roman) "."; }
  .elementor-editor-active .cs-list a {
    pointer-events: none; }
  .elementor-align-center .cs-list li {
    justify-content: center; }
  .elementor-align-right .cs-list li {
    justify-content: flex-end;
    text-align: right; }

.cs-open-table .field-wrap > * {
  width: 100%; }
.cs-open-table.wide .cs-otf-wrap {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -16px; }
  .cs-open-table.wide .cs-otf-wrap .cs-otf-field {
    width: 100%;
    padding: 0 16px;
    margin-bottom: 30px; }
    .cs-open-table.wide .cs-otf-wrap .cs-otf-field:last-child {
      margin-bottom: 0; }
.cs-open-table.standard .cs-otf-wrap .cs-otf-field {
  width: 100%;
  margin-bottom: 30px; }
  .cs-open-table.standard .cs-otf-wrap .cs-otf-field:last-child {
    margin-bottom: 0; }
.cs-open-table .field-wrap {
  position: relative; }
.cs-open-table .cs-otf-field {
  position: relative; }
  .cs-open-table .cs-otf-field.otf-restaurant .field-wrap:after, .cs-open-table .cs-otf-field.otf-size .field-wrap:after, .cs-open-table .cs-otf-field.otf-date .field-wrap:after, .cs-open-table .cs-otf-field.otf-time .field-wrap:after {
    font-family: 'ElegantIcons';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    content: "\33";
    font-size: 16px;
    position: absolute;
    right: 5px;
    top: 0;
    line-height: 52px; }
.cs-open-table select {
  -webkit-appearance: none !important; }

.theme-cozystay .ui-widget.ui-widget-content.ui-datepicker {
  --dropdown-bg: #f8f5f1;
  --dropdown-color: #000;
  --dropdown-border: var(--primary-color);
  background: var(--dropdown-bg);
  color: var(--dropdown-color);
  border: 1px solid var(--dropdown-border);
  border-radius: 0;
  padding: 16px; }
  .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-header {
    padding: 0;
    border: none;
    background: none; }
  .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-title {
    line-height: 32px; }
  .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-prev,
  .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-next {
    position: absolute;
    top: 0;
    width: 32px;
    height: 32px; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-prev span,
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-next span {
      position: absolute;
      top: 0;
      left: 0;
      margin: 0;
      width: 32px;
      height: 32px;
      cursor: pointer;
      border-radius: 50%;
      box-sizing: border-box;
      border: 0.0625rem solid #d8d9db;
      background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%205.24%208.07%22%3E%3Cg%3E%3Cpath%20style%3D%22fill%3A%2523333%22%20d%3D%22M5.09%203.68L4.39%203%201.56.15a.5.5%200%200%200-.71%200l-.7.7a.5.5%200%200%200%200%20.71L2.62%204%20.15%206.51a.5.5%200%200%200%200%20.71l.71.71a.5.5%200%200%200%20.71%200L4.39%205.1l.71-.71a.5.5%200%200%200-.01-.71z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E);
      background-position: 50%;
      background-repeat: no-repeat;
      background-size: 0.375rem 0.5rem; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-prev.ui-state-hover,
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-next.ui-state-hover {
      background: none;
      border: none; }
      .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-prev.ui-state-hover span,
      .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-next.ui-state-hover span {
        border: 2px solid var(--primary-color); }
  .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-prev {
    left: 0; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-prev span {
      transform: scaleX(-1); }
  .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker .ui-datepicker-next {
    right: 0; }
  .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table {
    border: none; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table th {
      padding: 8px 0;
      font-weight: 500;
      font-size: 12px; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td {
      padding: 0; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td span,
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td a {
      text-align: center; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td {
      border: none;
      line-height: 2rem;
      border: 0.0625rem solid #d8d9db; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table .ui-state-default,
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table .ui-widget-content .ui-state-default {
      background: #fff;
      color: #000;
      border: none;
      padding: 0; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td.ui-state-disabled {
      color: #d8d9db;
      opacity: 1; }
      .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td.ui-state-disabled .ui-state-default {
        color: inherit; }
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td a.ui-state-active,
    .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td a:hover {
      position: relative; }
      .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td a.ui-state-active:before,
      .theme-cozystay .ui-widget.ui-widget-content.ui-datepicker table td a:hover:before {
        border: 2px solid var(--primary-color);
        box-sizing: border-box;
        content: "";
        height: calc(100% + 2px);
        left: 0;
        margin: -0.0625rem;
        position: absolute;
        width: calc(100% + 2px); }

.theme-cozystay .daterangepicker {
  --dropdown-bg: #f8f5f1;
  --dropdown-color: #000;
  --dropdown-border: var(--primary-color);
  --available-bg: #fff;
  --active-bg: var(--primary-color);
  --active-color: #fff;
  --inrange-bg: #ede6dc;
  --inrange-color: var(--dropdown-color);
  --disabled-color: #d8d9db;
  --padding: 8px;
  --td-border: #d8d9db;
  --tooltip-bg: #000;
  --tooltip-color: #fff;
  --no-check-inout: rgba(0, 0, 0, 0.7);
  --hover-highlight: var(--primary-color);
  background: var(--dropdown-bg);
  color: var(--dropdown-color);
  border: 1px solid var(--dropdown-border);
  border-radius: 0;
  padding: var(--padding);
  margin-top: 12px; }
  .theme-cozystay .daterangepicker:before {
    border-bottom-color: var(--dropdown-border); }
  .theme-cozystay .daterangepicker:after {
    border-bottom-color: var(--dropdown-bg);
    -webkit-transform: translateY(0.4px);
    -ms-transform: translateY(0.4px);
    transform: translateY(0.4px); }
  .theme-cozystay .daterangepicker.opensright:before {
    left: 25px; }
  .theme-cozystay .daterangepicker.opensright:after {
    left: 26px; }
  .theme-cozystay .daterangepicker.opensleft:before {
    right: 32px; }
  .theme-cozystay .daterangepicker.opensleft:after {
    right: 33px; }
  .theme-cozystay .daterangepicker .calendar-table {
    background: none;
    border: none; }
    .theme-cozystay .daterangepicker .calendar-table table {
      border: none; }
    .theme-cozystay .daterangepicker .calendar-table th,
    .theme-cozystay .daterangepicker .calendar-table td {
      position: relative;
      padding: 0;
      max-width: 100%;
      height: 36px;
      border: none;
      border-radius: 0; }
    .theme-cozystay .daterangepicker .calendar-table thead th.month {
      font-size: 16px;
      font-size: 1rem; }
    .theme-cozystay .daterangepicker .calendar-table tbody td {
      border: 0.0625rem solid var(--td-border); }
  .theme-cozystay .daterangepicker td:hover {
    z-index: 99; }
  .theme-cozystay .daterangepicker td.disabled,
  .theme-cozystay .daterangepicker option.disabled {
    color: var(--disabled-color) !important;
    background: none !important; }
    .theme-cozystay .daterangepicker td.disabled:before, .theme-cozystay .daterangepicker td.disabled:not(.maximal-stay-unavailable) .day-tooltip,
    .theme-cozystay .daterangepicker option.disabled:before,
    .theme-cozystay .daterangepicker option.disabled:not(.maximal-stay-unavailable) .day-tooltip {
      display: none !important; }
  .theme-cozystay .daterangepicker td.available {
    background: var(--available-bg); }
  .theme-cozystay .daterangepicker td.available:hover {
    background: var(--available-bg); }
  .theme-cozystay .daterangepicker td.no-checkin:not(.off):not(.active):not(.in-range),
  .theme-cozystay .daterangepicker td.no-checkout:not(.off):not(.active):not(.in-range) {
    color: var(--no-check-inout); }
  .theme-cozystay .daterangepicker td.in-range {
    background: var(--inrange-bg);
    color: var(--inrange-color); }
  .theme-cozystay .daterangepicker td.active {
    background: var(--active-bg);
    color: var(--active-color); }
  .theme-cozystay .daterangepicker td.active:hover {
    background: var(--available-bg);
    color: var(--dropdown-color); }
  .theme-cozystay .daterangepicker td.active,
  .theme-cozystay .daterangepicker td.in-range,
  .theme-cozystay .daterangepicker td.available:hover {
    position: relative; }
    .theme-cozystay .daterangepicker td.active:before,
    .theme-cozystay .daterangepicker td.in-range:before,
    .theme-cozystay .daterangepicker td.available:hover:before {
      position: absolute;
      top: 0;
      left: 0;
      margin: -0.0625rem;
      width: calc(100% + 2px);
      height: calc(100% + 2px);
      border: 2px solid;
      box-sizing: border-box;
      content: ""; }
  .theme-cozystay .daterangepicker td.in-range:before {
    border-color: var(--inrange-bg); }
  .theme-cozystay .daterangepicker td.in-range.off:before {
    border-color: transparent; }
  .theme-cozystay .daterangepicker td.active:before {
    border-color: var(--active-bg); }
  .theme-cozystay .daterangepicker td.available:hover:before {
    border-color: var(--hover-highlight); }
  .theme-cozystay .daterangepicker td.active.off:not(:hover):before {
    border-color: transparent; }
  .theme-cozystay .daterangepicker th.available:hover {
    background: none; }
  .theme-cozystay .daterangepicker th.prev,
  .theme-cozystay .daterangepicker th.next {
    position: relative; }
    .theme-cozystay .daterangepicker th.prev span,
    .theme-cozystay .daterangepicker th.next span {
      border-color: var(--dropdown-color); }
    .theme-cozystay .daterangepicker th.prev:before, .theme-cozystay .daterangepicker th.prev:after,
    .theme-cozystay .daterangepicker th.next:before,
    .theme-cozystay .daterangepicker th.next:after {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      margin: 1px 0 0;
      width: 32px;
      height: 32px;
      border-radius: 50%;
      box-sizing: border-box;
      content: ""; }
    .theme-cozystay .daterangepicker th.prev:before,
    .theme-cozystay .daterangepicker th.next:before {
      border: 0.0625rem solid var(--td-border); }
    .theme-cozystay .daterangepicker th.prev:after,
    .theme-cozystay .daterangepicker th.next:after {
      border: 2px solid var(--hover-highlight);
      opacity: 0; }
    .theme-cozystay .daterangepicker th.prev:hover:before,
    .theme-cozystay .daterangepicker th.next:hover:before {
      opacity: 0; }
    .theme-cozystay .daterangepicker th.prev:hover:after,
    .theme-cozystay .daterangepicker th.next:hover:after {
      opacity: 1; }
    .theme-cozystay .daterangepicker th.prev span,
    .theme-cozystay .daterangepicker th.next span {
      padding: 2px; }
  .theme-cozystay .daterangepicker th.prev:before, .theme-cozystay .daterangepicker th.prev:after {
    margin-left: -1px; }
  .theme-cozystay .daterangepicker .day-tooltip {
    position: absolute;
    top: 60px;
    left: 50%;
    z-index: 999;
    -webkit-transform: translate(-50%, -100%);
    -ms-transform: translate(-50%, -100%);
    transform: translate(-50%, -100%);
    display: block;
    width: fit-content;
    height: auto;
    padding: 2px 6px;
    color: var(--inrange-color);
    font-size: 10px;
    font-size: 0.625rem;
    border-radius: 2px;
    pointer-events: none; }
  .theme-cozystay .daterangepicker .td.active .day-tooltip {
    color: var(--active-color);
  }
.elementor-widget-cs_reservation .elementor-widget-container {
  position: relative; }

.cs-reservation-form {
  --field-height: 48px;
  --field-space: 30px;
  --dropdown-bg: #f8f5f1;
  --dropdown-color: #000;
  --dropdown-border: var(--primary-color);
  --icon-color: var(--primary-color);
  --divider-color: var(--primary-color); }
  .cs-reservation-form .cs-form-field .field-wrap,
  .cs-reservation-form .cs-form-field .field-input-wrap {
    position: relative; }
  .cs-reservation-form .cs-form-field:not(.cs-submit) .field-input-wrap:after {
    font-family: 'ElegantIcons';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    content: "\33";
    font-size: 20px;
    line-height: 1;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 10px;
    opacity: 0.35; }
  .cs-reservation-form .cs-form-label {
    display: block; }
    .cs-reservation-form .cs-form-label .csf-item-description {
      display: block;
      margin-top: -2px;
      font-family: var(--body-font);
      font-size: 13px;
      font-size: 0.8125rem;
      line-height: 1;
      opacity: 0.5; }
  .cs-reservation-form .field-wrap > .cs-form-label {
    color: var(--text-color); }
  .cs-reservation-form input[type="text"],
  .cs-reservation-form input[type="email"],
  .cs-reservation-form input[type="url"],
  .cs-reservation-form input[type="file"],
  .cs-reservation-form input[type="password"],
  .cs-reservation-form input[type="number"],
  .cs-reservation-form input[type="date"],
  .cs-reservation-form input[type="search"],
  .cs-reservation-form input[type="tel"],
  .cs-reservation-form textarea,
  .cs-reservation-form select {
    height: var(--field-height);
    font-size: 14px;
    font-size: 0.875rem; }
  .cs-reservation-form select {
    -webkit-appearance: none !important;
    width: 100%; }
  .cs-reservation-form button[type="submit"] {
    padding: 0 15px;
    width: 100%;
    height: var(--field-height);
    line-height: 1.2;
    text-align: center; }
  .cs-reservation-form.style-block .cs-form-wrap {
    font-size: 0; }
  .cs-reservation-form.style-block .cs-form-field:not(:first-child) {
    padding-top: var(--field-space); }
  .cs-reservation-form.style-block .form-field-col-1-2 {
    display: inline-block;
    width: 50%; }
    .cs-reservation-form.style-block .form-field-col-1-2.cs-adults {
      padding-right: calc(var(--field-space)/2); }
    .cs-reservation-form.style-block .form-field-col-1-2.cs-children {
      padding-left: calc(var(--field-space)/2); }
    .cs-reservation-form.style-block .form-field-col-1-2 .csf-dropdown {
      padding: 15px; }
      .cs-reservation-form.style-block .form-field-col-1-2 .csf-dropdown .csf-dropdown-item {
        flex-wrap: wrap; }
      .cs-reservation-form.style-block .form-field-col-1-2 .csf-dropdown .cs-form-label {
        display: none; }
      .cs-reservation-form.style-block .form-field-col-1-2 .csf-dropdown .csf-dropdown-item {
        justify-content: center; }
  .cs-reservation-form.style-block .csf-dropdown {
    min-width: 100px;
    width: 100%; }
  .cs-reservation-form.style-block:not(.inline-label) .csf-item-description {
    margin-bottom: 5px; }
  .cs-reservation-form.style-block .cs-form-field.cs-has-age-text .csf-item-description {
    position: absolute;
    font-size: 12px;
    font-size: 0.75rem;
    white-space: nowrap;
    opacity: 0;
    transition: opacity 0.3s; }
  .cs-reservation-form.style-block .cs-form-field.cs-has-age-text .cs-form-label {
    transition: top 0.3s; }
  .cs-reservation-form.style-block .cs-form-field.cs-has-age-text.loftocean-highlighted .csf-item-description {
    opacity: 0.5; }
  .cs-reservation-form.style-block .cs-form-field.cs-has-age-text.loftocean-highlighted .cs-form-label {
    top: calc(50% - 6px); }
  .cs-reservation-form.style-banner .cs-form-wrap {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 calc(0px - var(--field-space)/2);
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end; }
    .cs-reservation-form.style-banner .cs-form-wrap .cs-form-field {
      position: relative;
      display: inline-block;
      width: 100%;
      vertical-align: top;
      padding: 0 calc(var(--field-space)/2); }
  .cs-reservation-form.style-banner button[type="submit"] {
    padding: 0 15px;
    text-align: center;
    width: 100%; }
  .cs-reservation-form.style-banner.style-banner-4 {
    --field-space: 15px; }
    .cs-reservation-form.style-banner.style-banner-4 .cs-form-wrap {
      flex-wrap: wrap; }
    .cs-reservation-form.style-banner.style-banner-4 .cs-form-field {
      display: block;
      width: 50%;
      margin-top: var(--field-space); }
      .cs-reservation-form.style-banner.style-banner-4 .cs-form-field:nth-child(-n+2) {
        margin-top: 0; }
      .cs-reservation-form.style-banner.style-banner-4 .cs-form-field.cs-submit:nth-child(5) {
        width: 100%; }
  .cs-reservation-form.style-banner-2 {
    --field-space: 40px; }
    .cs-reservation-form.style-banner-2 .cs-form-wrap {
      margin: 0;
      align-items: center; }
      .cs-reservation-form.style-banner-2 .cs-form-wrap .cs-form-field:not(.cs-submit) {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        align-items: center; }
      .cs-reservation-form.style-banner-2 .cs-form-wrap .field-wrap {
        flex: 1 1 auto; }
      .cs-reservation-form.style-banner-2 .cs-form-wrap .cs-form-field {
        padding-left: 0;
        padding-right: 0; }
        .cs-reservation-form.style-banner-2 .cs-form-wrap .cs-form-field.cs-check-out, .cs-reservation-form.style-banner-2 .cs-form-wrap .cs-form-field.cs-guests {
          padding-left: var(--field-space); }
    .cs-reservation-form.style-banner-2 .cs-form-icon {
      width: 20px;
      height: 25px;
      margin-right: 25px; }
      .cs-reservation-form.style-banner-2 .cs-form-icon svg {
        width: 20px;
        height: auto; }
        .cs-reservation-form.style-banner-2 .cs-form-icon svg path {
          fill: var(--icon-color); }
    .cs-reservation-form.style-banner-2 .cs-form-field.cs-guests .cs-form-icon,
    .cs-reservation-form.style-banner-2 .cs-form-field.cs-guests .cs-form-icon svg {
      width: 25px; }
    .cs-reservation-form.style-banner-2 .cs-form-field:not(.cs-submit) .field-input-wrap:after {
      display: none; }
    .cs-reservation-form.style-banner-2 .cs-form-field:not(.cs-submit):after {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      right: 0;
      display: block;
      width: 1px;
      height: 56px;
      background: var(--divider-color);
      content: ""; }
    .cs-reservation-form.style-banner-2 .cs-form-field.cs-guests:after {
      display: none; }
    .cs-reservation-form.style-banner-2 .field-wrap > .cs-form-label {
      font-size: 18px;
      font-size: 1.125rem;
      line-height: 1.2; }
    .cs-reservation-form.style-banner-2 input[type="text"],
    .cs-reservation-form.style-banner-2 input[type="email"],
    .cs-reservation-form.style-banner-2 input[type="url"],
    .cs-reservation-form.style-banner-2 input[type="file"],
    .cs-reservation-form.style-banner-2 input[type="password"],
    .cs-reservation-form.style-banner-2 input[type="number"],
    .cs-reservation-form.style-banner-2 input[type="date"],
    .cs-reservation-form.style-banner-2 input[type="search"],
    .cs-reservation-form.style-banner-2 input[type="tel"],
    .cs-reservation-form.style-banner-2 textarea,
    .cs-reservation-form.style-banner-2 select {
      padding: 0;
      height: auto;
      border: none;
      line-height: 1.2; }
    .cs-reservation-form.style-banner-2 button[type="submit"] {
      min-height: 56px;
      font-size: 18px;
      font-size: 1.125rem; }
    .cs-reservation-form.style-banner-2 .date-range-picker {
      bottom: 0; }
    .cs-reservation-form.style-banner-2.inline-label {
      --field-space: 60px; }
      .cs-reservation-form.style-banner-2.inline-label .cs-form-icon {
        margin-right: 15px; }
      .cs-reservation-form.style-banner-2.inline-label .cs-form-label {
        left: 0; }
      .cs-reservation-form.style-banner-2.inline-label .cs-form-field:not(.cs-submit):after {
        right: 0; }
      .cs-reservation-form.style-banner-2.inline-label .cs-form-field.cs-check-in,
      .cs-reservation-form.style-banner-2.inline-label .cs-form-field.cs-check-out {
        width: 23%; }
      .cs-reservation-form.style-banner-2.inline-label .cs-form-field.cs-guests {
        width: 30%; }
      .cs-reservation-form.style-banner-2.inline-label .cs-form-field.cs-submit {
        width: 24%; }
  .cs-reservation-form.style-banner-3 {
    --field-height: 60px;
    --field-space: 0px;
    --btn-radius: 0px; }
    .cs-reservation-form.style-banner-3 .cs-form-wrap {
      margin: 0 5px; }
      .cs-reservation-form.style-banner-3 .cs-form-wrap:before {
        position: absolute;
        top: 5px;
        left: -5px;
        display: block;
        width: calc(100% + 10px);
        height: calc(100% - 10px);
        border: 1px solid var(--form-bd);
        content: "";
        pointer-events: none; }
      .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field {
        padding: 0; }
      .cs-reservation-form.style-banner-3 .cs-form-wrap .button {
        background: none;
        color: inherit;
        border: 1px solid var(--form-bd); }
    .cs-reservation-form.style-banner-3 .cs-form-field.cs-check-out input:focus {
      border-color: var(--form-bd); }
  .cs-reservation-form.inline-label .field-wrap > .cs-form-label {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 15px; }
  .cs-reservation-form.inline-label .field-input-wrap > * {
    text-align: right;
    padding-right: 35px; }
  .cs-reservation-form.inline-label.cs-form-underline .field-wrap > .cs-form-label {
    left: 0; }
  .cs-reservation-form.inline-label.cs-form-underline .field-input-wrap > * {
    padding-right: 25px; }
  .cs-reservation-form.inline-label.cs-form-underline .cs-form-field:not(.cs-submit) .field-input-wrap:after {
    right: 0; }
  .cs-reservation-form.hide-label .field-wrap > .cs-form-label {
    display: none; }
  .cs-reservation-form .csf-dropdown {
    position: absolute;
    bottom: -12px;
    left: 0;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    z-index: -1;
    display: block;
    min-width: 320px;
    background: var(--dropdown-bg);
    color: var(--dropdown-color);
    border: 1px solid var(--dropdown-border);
    padding: 30px;
    transition: 0.3s;
    opacity: 0;
    pointer-events: none;
    visibility: hidden; }
    .cs-reservation-form .csf-dropdown.is-open {
      z-index: 999;
      opacity: 1;
      pointer-events: auto;
      visibility: visible; }
    .cs-reservation-form .csf-dropdown .csf-dropdown-item,
    .cs-reservation-form .csf-dropdown .cs-quantity {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      align-items: center;
      justify-content: space-between; }
    .cs-reservation-form .csf-dropdown .csf-dropdown-item:not(:last-child) {
      margin-bottom: 15px; }
    .cs-reservation-form .csf-dropdown .cs-quantity .input-text {
      padding: 0;
      margin: 0;
      width: 40px;
      height: auto;
      background: none;
      border: none;
      text-align: center;
      color: inherit;
      font-size: 16px;
      line-height: 1.2; }
    .cs-reservation-form .csf-dropdown .cs-quantity .minus,
    .cs-reservation-form .csf-dropdown .cs-quantity .plus {
      position: relative;
      background: none;
      border: none;
      box-shadow: none;
      outline: none;
      width: 30px;
      height: 30px;
      padding: 0;
      color: inherit;
      text-align: center;
      line-height: 30px;
      cursor: pointer; }
      .cs-reservation-form .csf-dropdown .cs-quantity .minus:before, .cs-reservation-form .csf-dropdown .cs-quantity .minus:after,
      .cs-reservation-form .csf-dropdown .cs-quantity .plus:before,
      .cs-reservation-form .csf-dropdown .cs-quantity .plus:after {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        display: block;
        content: "";
        background: currentColor; }
      .cs-reservation-form .csf-dropdown .cs-quantity .minus:before,
      .cs-reservation-form .csf-dropdown .cs-quantity .plus:before {
        width: 12px;
        height: 1px; }
      .cs-reservation-form .csf-dropdown .cs-quantity .minus.disabled,
      .cs-reservation-form .csf-dropdown .cs-quantity .plus.disabled {
        cursor: not-allowed; }
        .cs-reservation-form .csf-dropdown .cs-quantity .minus.disabled:before, .cs-reservation-form .csf-dropdown .cs-quantity .minus.disabled:after,
        .cs-reservation-form .csf-dropdown .cs-quantity .plus.disabled:before,
        .cs-reservation-form .csf-dropdown .cs-quantity .plus.disabled:after {
          opacity: 0.3; }
        .cs-reservation-form .csf-dropdown .cs-quantity .minus.disabled:hover span,
        .cs-reservation-form .csf-dropdown .cs-quantity .plus.disabled:hover span {
          opacity: 1;
          visibility: visible; }
      .cs-reservation-form .csf-dropdown .cs-quantity .minus.cs-hint:hover span,
      .cs-reservation-form .csf-dropdown .cs-quantity .plus.cs-hint:hover span {
        opacity: 1;
        visibility: visible; }
      .cs-reservation-form .csf-dropdown .cs-quantity .minus .cs-btn-tooltip,
      .cs-reservation-form .csf-dropdown .cs-quantity .plus .cs-btn-tooltip {
        display: block;
        pointer-events: none;
        visibility: hidden;
        opacity: 0;
        transition: opacity 0.1s; }
        .cs-reservation-form .csf-dropdown .cs-quantity .minus .cs-btn-tooltip:before,
        .cs-reservation-form .csf-dropdown .cs-quantity .plus .cs-btn-tooltip:before {
          position: absolute;
          top: 40px;
          right: 50%;
          -webkit-transform: translateX(50%);
          -ms-transform: translateX(50%);
          transform: translateX(50%);
          z-index: 999;
          display: block;
          padding: 5px 8px;
          background-color: var(--text-color);
          border-radius: 4px;
          color: var(--bg-color);
          content: attr(data-title);
          font-family: sans-serif;
          font-size: 12px;
          line-height: 1.3;
          white-space: nowrap; }
        .cs-reservation-form .csf-dropdown .cs-quantity .minus .cs-btn-tooltip:after,
        .cs-reservation-form .csf-dropdown .cs-quantity .plus .cs-btn-tooltip:after {
          position: absolute;
          top: 36px;
          right: 50%;
          -webkit-transform: translateX(50%);
          -ms-transform: translateX(50%);
          transform: translateX(50%);
          border-right: 4px solid transparent;
          border-left: 4px solid transparent;
          border-bottom: 4px solid var(--text-color);
          content: ""; }
    .cs-reservation-form .csf-dropdown .cs-quantity .plus:after {
      width: 1px;
      height: 12px; }
    .cs-reservation-form .csf-dropdown:before, .cs-reservation-form .csf-dropdown:after {
      position: absolute;
      content: ""; }
    .cs-reservation-form .csf-dropdown:before {
      top: -7px;
      left: 25px;
      border-right: 7px solid transparent;
      border-left: 7px solid transparent;
      border-bottom: 7px solid var(--dropdown-border); }
    .cs-reservation-form .csf-dropdown:after {
      top: -6px;
      left: 26px;
      border-right: 6px solid transparent;
      border-bottom: 6px solid var(--dropdown-bg);
      border-left: 6px solid transparent;
      -webkit-transform: translateY(0.4px);
      -ms-transform: translateY(0.4px);
      transform: translateY(0.4px); }
  .cs-reservation-form .date-range-picker {
    position: absolute;
    pointer-events: none;
    visibility: hidden;
    opacity: 0; }
  .cs-reservation-form .cs-form-field-group {
    position: relative; }
    .cs-reservation-form .cs-form-field-group .cs-form-field-group-inner {
      position: relative;
      display: flex;
      align-items: center;
      height: var(--field-height);
      padding: 0 var(--form-side-padding);
      background: none;
      border-color: var(--form-bd);
      border-style: solid;
      border-width: var(--form-bd-width);
      border-radius: var(--form-radius);
      color: var(--text-color);
      font-size: 14px;
      font-size: 0.875rem;
      line-height: 2;
      font-weight: 400;
      transition: 0.3s;
      -webkit-appearance: none; }
      .cs-reservation-form .cs-form-field-group .cs-form-field-group-inner:after {
        font-family: 'ElegantIcons';
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        content: "\33";
        font-size: 20px;
        line-height: 1;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        right: 10px;
        opacity: 0.35; }
      .cs-reservation-form .cs-form-field-group .cs-form-field-group-inner .cs-form-field,
      .cs-reservation-form .cs-form-field-group .cs-form-field-group-inner span {
        padding: 0; }
      .cs-reservation-form .cs-form-field-group .cs-form-field-group-inner .field-input-wrap:after {
        display: none; }
      .cs-reservation-form .cs-form-field-group .cs-form-field-group-inner input[type="text"] {
        padding: 0;
        width: 70px;
        border: none; }
      .cs-reservation-form .cs-form-field-group .cs-form-field-group-inner .date-separator {
        position: relative;
        margin: 0 5px;
        width: 8px;
        height: 1px;
        background: var(--text-color);
        opacity: 0.5; }
  .cs-reservation-form.inline-label .cs-form-field-group > .cs-form-label {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 15px; }
  .cs-reservation-form.inline-label .cs-form-field-group .cs-form-field-group-inner {
    justify-content: flex-end;
    padding-right: 35px;
    text-align: right; }
  .cs-reservation-form .loftocean-highlighted input,
  .cs-reservation-form .cs-form-field-group.loftocean-highlighted .cs-form-field-group-inner {
    border-color: var(--form-bd-focus); }

.elementor-widget-cs_signup.elementor-align-left form {
  margin-right: auto;
  margin-left: 0; }
.elementor-widget-cs_signup.elementor-align-center form {
  margin-right: auto;
  margin-left: auto; }
.elementor-widget-cs_signup.elementor-align-right form {
  margin-right: 0;
  margin-left: auto; }

.parallax-img-container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden; }
  .parallax-img-container img {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: 50% 50%;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    will-change: transform, opacity; }

.cs-parallax-on-scroll.e-con:before {
  z-index: 1; }
.cs-parallax-on-scroll.e-con .parallax-img-container ~ *,
.cs-parallax-on-scroll.e-con .e-con-inner,
.cs-parallax-on-scroll.e-con > .e-con {
  z-index: 9; }

.fadeInUp.cs-animation-small-offset {
  animation-name: fadeInUpSmall; }

.fadeInUp.cs-animation-medium-offset {
  animation-name: fadeInUpMedium; }

.fadeInUp.cs-animation-large-offset {
  animation-name: fadeInUpLarge; }

@keyframes fadeInUpSmall {
  from {
    opacity: 0;
    transform: translate3d(0, 50px, 0); }
  to {
    opacity: 1;
    transform: none; } }
@keyframes fadeInUpMedium {
  from {
    opacity: 0;
    transform: translate3d(0, 100px, 0); }
  to {
    opacity: 1;
    transform: none; } }
@keyframes fadeInUpLarge {
  from {
    opacity: 0;
    transform: translate3d(0, 150px, 0); }
  to {
    opacity: 1;
    transform: none; } }
.fadeInDown.cs-animation-small-offset {
  animation-name: fadeInDownSmall; }

.fadeInDown.cs-animation-medium-offset {
  animation-name: fadeInDownMedium; }

.fadeInDown.cs-animation-large-offset {
  animation-name: fadeInDownLarge; }

@keyframes fadeInDownSmall {
  from {
    opacity: 0;
    transform: translate3d(0, -50px, 0); }
  to {
    opacity: 1;
    transform: none; } }
@keyframes fadeInDownMedium {
  from {
    opacity: 0;
    transform: translate3d(0, -100px, 0); }
  to {
    opacity: 1;
    transform: none; } }
@keyframes fadeInDownLarge {
  from {
    opacity: 0;
    transform: translate3d(0, -150px, 0); }
  to {
    opacity: 1;
    transform: none; } }
.fadeInLeft.cs-animation-small-offset {
  animation-name: fadeInLeftSmall; }

.fadeInLeft.cs-animation-medium-offset {
  animation-name: fadeInLeftMedium; }

.fadeInLeft.cs-animation-large-offset {
  animation-name: fadeInLeftLarge; }

@keyframes fadeInLeftSmall {
  from {
    opacity: 0;
    transform: translate3d(-50px, 0, 0); }
  to {
    opacity: 1;
    transform: none; } }
@keyframes fadeInLeftMedium {
  from {
    opacity: 0;
    transform: translate3d(-100px, 0, 0); }
  to {
    opacity: 1;
    transform: none; } }
@keyframes fadeInLeftLarge {
  from {
    opacity: 0;
    transform: translate3d(-150px, 0, 0); }
  to {
    opacity: 1;
    transform: none; } }
.fadeInRight.cs-animation-small-offset {
  animation-name: fadeInRightSmall; }

.fadeInRight.cs-animation-medium-offset {
  animation-name: fadeInRightMedium; }

.fadeInRight.cs-animation-large-offset {
  animation-name: fadeInRightLarge; }

@keyframes fadeInRightSmall {
  from {
    opacity: 0;
    transform: translate3d(50px, 0, 0); }
  to {
    opacity: 1;
    transform: none; } }
@keyframes fadeInRightMedium {
  from {
    opacity: 0;
    transform: translate3d(100px, 0, 0); }
  to {
    opacity: 1;
    transform: none; } }
@keyframes fadeInRightLarge {
  from {
    opacity: 0;
    transform: translate3d(150px, 0, 0); }
  to {
    opacity: 1;
    transform: none; } }
.elementor-tab-title .elementor-toggle-icon .fa:before,
.elementor-tab-title .elementor-toggle-icon .fas:before,
.elementor-tab-title .elementor-accordion-icon .fa:before,
.elementor-tab-title .elementor-accordion-icon .fas:before {
  font-size: 12px;
  vertical-align: middle; }

.elementor-widget-icon-box.elementor-position-left.elementor-vertical-align-middle .elementor-icon-box-wrapper,
.elementor-widget-icon-box.elementor-position-right.elementor-vertical-align-middle .elementor-icon-box-wrapper {
  align-items: center; }
.elementor-widget-icon-box.elementor-position-left.elementor-vertical-align-middle .elementor-icon-box-icon,
.elementor-widget-icon-box.elementor-position-right.elementor-vertical-align-middle .elementor-icon-box-icon {
  display: inline-flex; }

@media screen and (min-width: 480px) {
  .cs-gallery.gallery-carousel > .cs-gallery-wrap > .cs-gallery-item {
    width: 50%; }

  .cs-gallery.gallery-carousel[data-column="1"] > .cs-gallery-wrap > .cs-gallery-item {
    width: 100%; } }
@media screen and (min-width: 600px) {
  .cs-open-table.wide .cs-otf-wrap .cs-otf-field {
    width: 50%; }
    .cs-open-table.wide .cs-otf-wrap .cs-otf-field:nth-child(3) {
      margin-bottom: 0; }

  .cs-info-box.column-2 .cs-info-box-item, .cs-info-box.column-3 .cs-info-box-item, .cs-info-box.column-4 .cs-info-box-item, .cs-info-box.column-5 .cs-info-box-item, .cs-info-box.column-6 .cs-info-box-item {
    width: 50%; } }
@media screen and (min-width: 768px) {
  h1.cs-title {
    font-size: 72px;
    font-size: 4.5rem; }

  h2.cs-title {
    font-size: 42px;
    font-size: 2.625rem; }

  h3.cs-title {
    font-size: 36px;
    font-size: 2.25rem; }

  h4.cs-title {
    font-size: 32px;
    font-size: 2rem; }

  h5.cs-title {
    font-size: 28px;
    font-size: 1.75rem; }

  h6.cs-title {
    font-size: 24px;
    font-size: 1.5rem; }

  .cs-food-menu.food-menu-style-5 {
    display: flex;
    flex-wrap: wrap; }
    .cs-food-menu.food-menu-style-5.column-2 .cs-food-menu-item, .cs-food-menu.food-menu-style-5.column-4 .cs-food-menu-item {
      width: 50%; }
    .cs-food-menu.food-menu-style-5.column-3 .cs-food-menu-item {
      width: 33.3333%; }

  .cs-instagram.column-6 ul {
    grid-template-columns: repeat(6, 1fr); }
  .cs-instagram.column-7 ul {
    grid-template-columns: repeat(7, 1fr); }
  .cs-instagram.column-8 ul {
    grid-template-columns: repeat(8, 1fr); }
  .cs-instagram.column-mosaic ul {
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: repeat(2, 1fr); }
    .cs-instagram.column-mosaic ul li:first-child {
      grid-column: 1/span 2;
      grid-row: 1/span 2; }
    .cs-instagram.column-mosaic ul li:nth-child(4) {
      grid-column: 5/span 2;
      grid-row: 1/span 2; }
    .cs-instagram.column-mosaic ul li:nth-child(9) {
      grid-column: 3/span 2;
      grid-row: 3/span 2; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:first-child {
    grid-row: 1 / 2; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(2) {
    grid-column: 3/span 2;
    grid-row: 1/span 2; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(4) {
    grid-column: 5/span 1;
    grid-row: 1/span 1; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(7) {
    grid-column: 5/span 2;
    grid-row: 2 / 3; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:first-child .feed-bg,
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(7) .feed-bg,
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(12) .feed-bg {
    padding-top: 50%; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(8) {
    grid-column: 1/span 2;
    grid-row: 3/span 2; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(9) {
    grid-column: revert;
    grid-row: revert; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(11) {
    grid-column: 5/span 2;
    grid-row: 3/span 2; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(12) {
    grid-column: 3/span 2;
    grid-row: 4 / 5; }
  .cs-instagram.column-mosaic.mosaic-2.small-gap ul li:first-child .feed-bg,
  .cs-instagram.column-mosaic.mosaic-2.small-gap ul li:nth-child(7) .feed-bg,
  .cs-instagram.column-mosaic.mosaic-2.small-gap ul li:nth-child(12) .feed-bg {
    padding-top: calc(50% - 2px); }

  .cs-block-links {
    flex-wrap: nowrap; }
    .cs-block-links .cs-bl-item {
      width: 50%; }
    .no-touch .cs-block-links .cs-bl-item:hover {
      width: 60%; }
    .cs-block-links .cs-bl-item-inner {
      padding: 100px 40px; }
    .cs-block-links.height-full .cs-bl-item {
      height: 100vh; }

  .cs-countdown .countdown-amount {
    font-size: 60px;
    font-size: 3.75rem; }
  .cs-countdown .countdown-period {
    font-size: 20px;
    font-size: 1.25rem; }

  .cs-gallery.gallery-carousel[data-column="3"] > .cs-gallery-wrap > .cs-gallery-item,
  .cs-gallery.gallery-carousel[data-column="4"] > .cs-gallery-wrap > .cs-gallery-item,
  .cs-gallery.gallery-carousel[data-column="5"] > .cs-gallery-wrap > .cs-gallery-item,
  .cs-gallery.gallery-carousel[data-column="6"] > .cs-gallery-wrap > .cs-gallery-item {
    width: 33.3333%; }

  .info-box-carousel:not([data-column="1"]) > .cs-info-box-wrap > .cs-info-box-item {
    width: 50%; }

  .cs-testimonials.testimonials-grid.grid-col-2 .cs-testimonial {
    width: 50%; }
  .cs-testimonials.testimonials-grid.grid-col-2 .cs-testimonial-content {
    font-size: 24px;
    font-size: 1.5rem; }
  .cs-testimonials.testimonials-grid.grid-col-3 .cs-testimonial {
    width: 33.33%; }
  .cs-testimonials.testimonials-slider[data-column="2"] .cs-ts-item {
    width: 50%; }
  .cs-testimonials.testimonials-slider[data-column="2"] .cs-testimonial-content {
    font-size: 24px;
    font-size: 1.5rem; }
  .cs-testimonials.testimonials-slider[data-column="2"] > .cs-ts-wrap > .cs-ts-item:nth-child(-n+2) {
    display: block; }
  .cs-testimonials.testimonials-slider[data-column="3"] .cs-ts-item {
    width: 33.33%; }
  .cs-testimonials.testimonials-slider[data-column="3"] > .cs-ts-wrap > .cs-ts-item:nth-child(-n+3) {
    display: block; }
  .cs-testimonials.testimonials-slider[data-column="2"] .cs-ts-wrap:not(.slick-initialized), .cs-testimonials.testimonials-slider[data-column="3"] .cs-ts-wrap:not(.slick-initialized) {
    display: flex; } }
@media screen and (min-width: 1024px) {
  .cs-open-table.wide .cs-otf-wrap .cs-otf-field {
    width: 25%;
    margin-bottom: 0; }

  .cs-open-table.wide.multi-restaurants .cs-otf-wrap .cs-otf-field {
    width: 20%; }

  .cs-food-menu.food-menu-style-5.column-4 .cs-food-menu-item {
    width: 25%; }

  .cs-countdown .countdown-amount {
    font-size: 80px;
    font-size: 5rem; }
  .cs-countdown .countdown-period {
    font-size: 24px;
    font-size: 1.5rem; }

  .cs-gallery.gallery-carousel[data-column="4"] > .cs-gallery-wrap > .cs-gallery-item,
  .info-box-carousel[data-column="4"] > .cs-info-box-wrap > .cs-info-box-item {
    width: 25%; }

  .cs-gallery.gallery-carousel[data-column="5"] > .cs-gallery-wrap > .cs-gallery-item,
  .info-box-carousel[data-column="5"] > .cs-info-box-wrap > .cs-info-box-item {
    width: 20%; }

  .cs-gallery.gallery-carousel[data-column="6"] > .cs-gallery-wrap > .cs-gallery-item,
  .info-box-carousel[data-column="6"] > .cs-info-box-wrap > .cs-info-box-item {
    width: 16.6666%; }

  .info-box-carousel[data-column="3"] > .cs-info-box-wrap > .cs-info-box-item {
    width: 33.3333%; }

  .cs-info-box.column-3 .cs-info-box-item {
    width: 33.3333%; }
  .cs-info-box.column-4 .cs-info-box-item {
    width: 25%; }
  .cs-info-box.column-5 .cs-info-box-item {
    width: 20%; }
  .cs-info-box.column-6 .cs-info-box-item {
    width: 16.6666%; }

  .cs-fancy-card.style-1.layout-row .cs-fc-wrap {
    flex-direction: row;
    flex-wrap: wrap; }
    .cs-fancy-card.style-1.layout-row .cs-fc-wrap .cs-fc-img,
    .cs-fancy-card.style-1.layout-row .cs-fc-wrap .cs-fc-content {
      width: 50%; }
    .cs-fancy-card.style-1.layout-row .cs-fc-wrap .cs-fc-img {
      display: flex;
      align-items: center; }
      .cs-fancy-card.style-1.layout-row .cs-fc-wrap .cs-fc-img img {
        z-index: 9;
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover; }
  .cs-fancy-card.style-1.layout-row.order-reverse .cs-fc-img {
    order: 9; } }
@media screen and (min-width: 1025px) {
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:not(:last-child) input {
    border-right-width: 0px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field.loftocean-highlighted:after {
    position: absolute;
    top: 0;
    right: -1px;
    z-index: 99;
    width: 1px;
    height: 100%;
    background: var(--form-bd-focus);
    content: "";
    pointer-events: none; } }
@media screen and (min-width: 1200px) {
  h1.cs-title {
    font-size: 80px;
    font-size: 5rem; }

  h2.cs-title {
    font-size: 60px;
    font-size: 3.75rem; }

  h3.cs-title {
    font-size: 48px;
    font-size: 3rem; }

  h4.cs-title {
    font-size: 42px;
    font-size: 2.625rem; }

  h5.cs-title {
    font-size: 36px;
    font-size: 2.25rem; }

  h6.cs-title {
    font-size: 32px;
    font-size: 2rem; }

  .cs-block-links .cs-bl-item-inner {
    padding: 180px 80px; }

  .site-content[class*="with-sidebar-"] .cs-section-content-fullwidth {
    width: 100%;
    left: auto; }

  .elementor-section-full_width .cs-gallery .slick-arrow.slick-prev {
    left: 65px; }
  .elementor-section-full_width .cs-gallery .slick-arrow.slick-next {
    right: 65px; } }
@media screen and (max-width: 1024px) {
  .cs-title-wrap.text-left-tablet,
  .elementor-widget-cs_signup.elementor-tablet-align-left form {
    margin-right: auto;
    margin-left: 0; }

  .cs-title-wrap.text-center-tablet,
  .elementor-widget-cs_signup.elementor-tablet-align-center form {
    margin-right: auto;
    margin-left: auto; }

  .cs-title-wrap.text-right-tablet,
  .elementor-widget-cs_signup.elementor-tablet-align-right form {
    margin-right: 0;
    margin-left: auto; }

  .cs-instagram .cs-instagram-title {
    width: 150px;
    height: 150px;
    font-size: 18px;
    font-size: 1.125rem; }

  ul.social-nav.text-left-tablet, .text-left-tablet ul.social-nav {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
  ul.social-nav.text-center-tablet, .text-center-tablet ul.social-nav {
    -webkit-justify-content: center;
    justify-content: center; }
  ul.social-nav.text-right-tablet, .text-right-tablet ul.social-nav {
    -webkit-justify-content: flex-end;
    justify-content: flex-end; }

  .cs-menu.text-left-tablet .menu {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
  .cs-menu.text-center-tablet .menu {
    -webkit-justify-content: center;
    justify-content: center; }
  .cs-menu.text-right-tablet .menu {
    -webkit-justify-content: flex-end;
    justify-content: flex-end; }

  .cs-reservation-form.style-banner .cs-form-wrap {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .cs-reservation-form.style-banner .cs-form-wrap .cs-form-field {
      display: block;
      width: 50%; }
      .cs-reservation-form.style-banner .cs-form-wrap .cs-form-field {
        margin-top: var(--field-space); }
        .cs-reservation-form.style-banner .cs-form-wrap .cs-form-field:nth-child(-n+2) {
          margin-top: 0; }
    .cs-reservation-form.style-banner .cs-form-wrap .cs-form-field.cs-submit:nth-child(5) {
      width: 100%; }
    .cs-reservation-form.style-banner .cs-form-wrap .csf-dropdown {
      min-width: 100%; }
  .cs-reservation-form.style-banner.style-banner-2 {
    --field-space: 20px; }
    .cs-reservation-form.style-banner.style-banner-2 .cs-form-wrap .cs-form-field {
      width: 100%; }
      .cs-reservation-form.style-banner.style-banner-2 .cs-form-wrap .cs-form-field.cs-check-in, .cs-reservation-form.style-banner.style-banner-2 .cs-form-wrap .cs-form-field.cs-check-out {
        padding-bottom: var(--field-space); }
        .cs-reservation-form.style-banner.style-banner-2 .cs-form-wrap .cs-form-field.cs-check-in:after, .cs-reservation-form.style-banner.style-banner-2 .cs-form-wrap .cs-form-field.cs-check-out:after {
          top: auto;
          right: 0;
          bottom: 0;
          -webkit-transform: none;
          -ms-transform: none;
          transform: none;
          width: 100%;
          height: 1px; }
      .cs-reservation-form.style-banner.style-banner-2 .cs-form-wrap .cs-form-field:nth-child(-n+2) {
        margin-top: var(--field-space); }
      .cs-reservation-form.style-banner.style-banner-2 .cs-form-wrap .cs-form-field.cs-check-out, .cs-reservation-form.style-banner.style-banner-2 .cs-form-wrap .cs-form-field.cs-guests {
        padding-left: 0; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(2n+1) input {
    border-right-width: 0px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(1) input,
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(2) input {
    padding-top: 10px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(1) .field-wrap > .cs-form-label,
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(1) .field-input-wrap:after,
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(2) .field-wrap > .cs-form-label,
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(2) .field-input-wrap:after {
    margin-top: 2px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap input {
    border-bottom-width: 0px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .button {
    padding-bottom: 2px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field.loftocean-highlighted:after {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99;
    width: calc(100% + 1px);
    height: calc(100% + 1px);
    border-width: 0;
    border-style: solid;
    border-color: var(--form-bd-focus);
    content: "";
    pointer-events: none; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(1).loftocean-highlighted:after {
    border-width: 0 1px 1px 0; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(2).loftocean-highlighted:after,
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(4).loftocean-highlighted:after {
    width: 100%;
    border-width: 0 0 1px 0; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(3).loftocean-highlighted:after {
    height: 100%;
    border-width: 0 1px 0 0; }

  .cs-info-box.tablet-column-1 .cs-info-box-item {
    width: 100%; }
  .cs-info-box.tablet-column-2 .cs-info-box-item {
    width: 50%; }
  .cs-info-box.tablet-column-3 .cs-info-box-item {
    width: 33.3333%; }
  .cs-info-box.tablet-column-4 .cs-info-box-item {
    width: 25%; }
  .cs-info-box.tablet-column-5 .cs-info-box-item {
    width: 20%; }
  .cs-info-box.tablet-column-6 .cs-info-box-item {
    width: 16.6666%; }

  .elementor-tablet-align-right .cs-list li {
    justify-content: flex-start;
    text-align: left; }
  .elementor-tablet-align-center .cs-list li {
    justify-content: center; }
  .elementor-tablet-align-right .cs-list li {
    justify-content: flex-end;
    text-align: right; }

  .elementor-widget-cs_button.elementor-tablet-align-justify .button {
    width: 100%;
    padding: 0; } }
@media screen and (max-width: 1023px) {
  .cs-open-table.wide .cs-otf-wrap .cs-otf-field.otf-submit:nth-child(5) {
    width: 100%; } }
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(3):nth-last-child(3) input {
    border-bottom-width: 1px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field.cs-rooms.loftocean-highlighted:after {
    height: calc(100% + 1px);
    border-width: 0 1px 1px 0; } }
@media screen and (max-width: 767px) {
  .cs-title-wrap.text-left-mobile,
  .elementor-widget-cs_signup.elementor-mobile-align-left form {
    margin-right: auto;
    margin-left: 0; }

  .cs-title-wrap.text-center-mobile,
  .elementor-widget-cs_signup.elementor-mobile-align-center form {
    margin-right: auto;
    margin-left: auto; }

  .cs-title-wrap.text-right-mobile,
  .elementor-widget-cs_signup.elementor-mobile-align-right form {
    margin-right: 0;
    margin-left: auto; }

  ul.social-nav.text-left-mobile, .text-left-mobile ul.social-nav {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
  ul.social-nav.text-center-mobile, .text-center-mobile ul.social-nav {
    -webkit-justify-content: center;
    justify-content: center; }
  ul.social-nav.text-right-mobile, .text-right-mobile ul.social-nav {
    -webkit-justify-content: flex-end;
    justify-content: flex-end; }

  .cs-menu.text-left-mobile .menu {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
  .cs-menu.text-center-mobile .menu {
    -webkit-justify-content: center;
    justify-content: center; }
  .cs-menu.text-right-mobile .menu {
    -webkit-justify-content: flex-end;
    justify-content: flex-end; }

  .cs-food-card, .cs-food-card.column-reverse {
    flex-direction: column; }
  .cs-food-card .cs-fc-img {
    width: 100%; }
  .cs-food-card .cs-fc-img + .cs-fc-info {
    width: 100%;
    padding: 30px 0; }
  .cs-food-card .cs-fc-info {
    text-align: center; }
  .cs-food-card .cs-fc-info-extra {
    justify-content: center; }

  .cs-instagram.column-mosaic.mosaic-2 ul li:first-child {
    grid-column: 1/span 2;
    grid-row: 1 / 2; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(7) {
    grid-column: 2/span 2;
    grid-row: 3 / 4; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(12) {
    grid-column: 2/span 2;
    grid-row: 5 / 6; }
  .cs-instagram.column-mosaic.mosaic-2 ul li:first-child .feed-bg,
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(7) .feed-bg,
  .cs-instagram.column-mosaic.mosaic-2 ul li:nth-child(12) .feed-bg {
    padding-top: 50%; }
  .cs-instagram.column-mosaic.mosaic-2.small-gap ul li:first-child .feed-bg,
  .cs-instagram.column-mosaic.mosaic-2.small-gap ul li:nth-child(7) .feed-bg,
  .cs-instagram.column-mosaic.mosaic-2.small-gap ul li:nth-child(12) .feed-bg {
    padding-top: calc(50% - 2px); }

  .cs-reservation-form.style-banner .cs-form-wrap {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .cs-reservation-form.style-banner .cs-form-wrap .cs-form-field {
      display: block;
      width: 100%; }
      .cs-reservation-form.style-banner .cs-form-wrap .cs-form-field:not(:first-child) {
        margin-top: var(--field-space); }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(2n+1) input {
    border-right-width: 1px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field input {
    padding-top: 10px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field .csf-dropdown input {
    padding-top: 0; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field .field-wrap > .cs-form-label,
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field .field-input-wrap:after {
    margin-top: 2px; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(1).loftocean-highlighted:after {
    width: 100%;
    border-right-width: 0; }
  .cs-reservation-form.style-banner-3 .cs-form-wrap .cs-form-field:nth-child(3).loftocean-highlighted:after {
    width: 100%;
    height: calc(100% + 1px);
    border-width: 0 0 1px 0; }

  .cs-info-box.mobile-column-1 .cs-info-box-item {
    width: 100%; }
  .cs-info-box.mobile-column-2 .cs-info-box-item {
    width: 50%; }
  .cs-info-box.mobile-column-3 .cs-info-box-item {
    width: 33.3333%; }
  .cs-info-box.mobile-column-4 .cs-info-box-item {
    width: 25%; }
  .cs-info-box.mobile-column-5 .cs-info-box-item {
    width: 20%; }
  .cs-info-box.mobile-column-6 .cs-info-box-item {
    width: 16.6666%; }

  .elementor-mobile-align-right .cs-list li {
    justify-content: flex-start;
    text-align: left; }
  .elementor-mobile-align-center .cs-list li {
    justify-content: center; }
  .elementor-mobile-align-right .cs-list li {
    justify-content: flex-end;
    text-align: right; }

  .elementor-widget-cs_button.elementor-mobile-align-justify .button {
    width: 100%;
    padding: 0; }

  .theme-cozystay .daterangepicker .drp-calendar {
    min-width: 260px; }
    .theme-cozystay .daterangepicker .drp-calendar.left {
      padding-right: 8px; } }
@media screen and (max-width: 599px) {
  .cs-food-menu {
    --food-img-width: 60px; }
    .cs-food-menu .cs-food-menu-header > * {
      width: auto; }
    .cs-food-menu .cs-food-menu-header {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      width: 100%; }
    .cs-food-menu .cs-food-menu-title {
      margin-bottom: 0;
      white-space: normal; }
    .cs-food-menu .cs-food-menu-lines {
      display: none; }
    .cs-food-menu .cs-food-menu-price {
      font-size: 18px;
      font-size: 1.125rem; }
    .cs-food-menu .cs-food-menu-lines + .cs-food-menu-price {
      margin-left: auto; }
    .cs-food-menu.lines-on-mobile.food-menu-style-2 .cs-food-menu-lines {
      top: 18px;
      display: flex;
      flex: 1 1 10%;
      height: 2px; }
    .cs-food-menu.lines-on-mobile.food-menu-style-3 .cs-food-menu-lines {
      top: 15px;
      display: flex;
      flex: 1 1 10%; }
    .cs-food-menu.lines-on-mobile.food-menu-style-4 .cs-food-menu-lines {
      top: 12px;
      display: flex;
      flex: 1 1 10%; }

  .cs-gallery.gallery-grid .cs-gallery-item {
    width: 100% !important; }

  .cs-gallery.style-overflow .slick-arrow.slick-prev {
    left: 15px; }
  .cs-gallery.style-overflow .slick-arrow.slick-next {
    right: 15px; }

  .cs-instagram.column-5 ul {
    grid-template-columns: repeat(2, 1fr); }
    .cs-instagram.column-5 ul li:nth-child(5):last-child {
      display: none; }

  .cs-tabs .elementor-tabs-wrapper {
    margin-bottom: 35px; }
  .cs-tabs .elementor-tab-desktop-title {
    margin-bottom: 15px; } }
@media screen and (min-width: 1024px) {
  .cs-popup-box .posts.layout-list .featured-img {
     width: 100%;
  }
}
/*# sourceMappingURL=main.css.map */
