@import url('https://fonts.googleapis.com/css2?family=Mrs+Saint+Delafield&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');
@import url('satoshi.css');


:root {
    --main-primary-text: #3d4246;
    --main-white-text: #fff;
    --main-highlight-color: #df9f21;
    --main-highlight-color-15: rgba(223, 159, 33, 0.15);
    --main-category-core-highlight-color: #df9f21;
    --main-category-core-highlight-color-15: rgba(223, 159, 33, 0.15);
    --main-category-select-highlight-color: #df9f21;
    --main-category-select-highlight-color-15: rgba(223, 159, 33, 0.15);
    --main-category-signature-highlight-color: #df9f21;
    --main-category-signature-highlight-color-15: rgba(223, 159, 33, 0.15);

    --font-family-primary: 'Satoshi-Variable';
    --font-family-primary-italic: 'Satoshi-VariableItalic';
    --font-family-primary2: "Playfair Display", serif;
    --font-family-secondary: "Mrs Saint Delafield", cursive;
  }


/* Override highlight color based on category class */
.cat-core {
    --main-highlight-color: var(--main-category-core-highlight-color);
    --main-highlight-color-15: var(--main-category-core-highlight-color-15);
  }
  .cat-select {
    --main-highlight-color: var(--main-category-select-highlight-color);
    --main-highlight-color-15: var(--main-category-select-highlight-color-15);
  }
  .cat-signature {
    --main-highlight-color: var(--main-category-signature-highlight-color);
    --main-highlight-color-15: var(--main-category-signature-highlight-color-15);
  }
  .cat-fallback {
    --main-highlight-color: var(--main-highlight-color);
    --main-highlight-color-15: var(--main-category-highlight-color-15);
  }


  b, strong {
    font-family:  var(--font-family-primary) !important;
  }



.subtitle {
    display: flex;
    align-items: center;
    color: rgba(213, 152, 48, 0.85);
    font-size: 12px;
    letter-spacing: 1.5px;
}

.subtitle img {
    height: 41px;
width: auto;
margin-right: -25px;
opacity: 1;
}

h2 {
    color: var(--main-highlight-color);
}


#floating-banner {
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 96px;
    height: 420px;
    z-index: 1000;
}

#floating-banner img {
    width: 100%;
    height: 100%;
}


#floating-season {
    position: fixed;
    top: 4%;
    right: 0;
    transform: translateY(-50%);
    width: 100px;
    height: auto;
    z-index: 1200;
}

canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 1100;
    pointer-events: none;
  }

#floating-season img {
    width: 100%;
    height: 100%;
}

#close-banner {
    position: relative;
    top: 10%;
    left: 77%;
    border: none;
    color: var(--main-primary-text);
    font-size: 36px;
    cursor: pointer;
    z-index: 1001;
}

/* Kleineres Bildschirm Layout */
@media (max-width: 600px) {
    #floating-banner {
        position: fixed;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 60%;
        height: 96px;
        top: 81%;
        z-index: 1000;
    }

    #floating-banner img {
        width: 100%;
        height: 100%;
    }

    #floating-season {
        position: fixed;
        top: 5%;
        right: 0;
        transform: translateY(-50%);
        width: 90px;
        height: auto;
        z-index: 1005;
    }

    #floating-season img {
        width: 100%;
        height: 100%;
    }

    #close-banner {
        position: relative;
        top: 45%;
        left: 92%;
        font-size: 36px;
        z-index: 1001;
    }
    
}

@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/* -------------------------------------------------------

 01. Basics style
 02. Helper style
 03. Selection style 
 04. Preloader style
 05. Owl-Theme custom style
 06. Section style
 07. Header style
 08. Slider-fade style (Homepage Slider)
 09. Slider style (Inner Page Slider)
 10. Kenburns Slider style
 11. Page Banner Header style
 12. Video Background style
 13. Team style
 14. Rooms 2 style
 15. Rooms 3 style
 16. Rooms Page style
 17. Services style
 18. Restaurant Menu style
 19. Facilties style
 20. Clients style
 21. Gallery style
 22. Promo Video and Testimonials style
 23. Booking style
 24. Pricing style
 25. Careers style
 26. Accordion Box (for Faqs) style
 27. News 1 style
 28. News 2 style
 29. Post style
 30. Contact style
 31. Buttons style
 32. Coming Soon
 33. 404 Page style
 34. Footer style
 35. toTop Button style
 36. Overlay Effect Bg image style
 37. Responsive (Media Query)
 
------------------------------------------------------- */

.btn.highlight {
    background-color: var(--main-highlight-color);
    color: #fff;
    border: none;
    font-size: 13px;
    padding: 10px 15px 10px 15px;
    transition: background-color 0.3s ease;
}

.btn.outline {
    border: 1px var(--main-highlight-color) solid;
    color: var(--main-highlight-color);
    font-size: 13px;
    padding: 10px 15px 10px 15px;
    transition: background-color 0.3s ease;
}

.btn.facility {
    background-color: rgba(170, 207, 35, 1);
    color: #fff;
    border: none;
    font-size: 13px;
    padding: 10px 15px 10px 15px;
    transition: background-color 0.3s ease;
}

.btn.finance {
    background-color: rgba(35, 113, 207, 1);
    color: #fff;
    border: none;
    font-size: 13px;
    padding: 10px 15px 10px 15px;
    transition: background-color 0.3s ease;
}

    /* Hero look & feel like the screenshot */
.hero-title {
  font-family: var(--font-family-primary2);; /* deine Headline-Optik */
  font-weight: 700;
  font-size: 30px;
  line-height: 1.1;
}
.hero-overline {
  color: var(--main-highlight-color);            /* warmes Orange */
  font-weight: 700;
  letter-spacing: .3px;
  z-index: 100;
}


.btn.highlight:hover {
    background-color: var(--main-highlight-color); /* dunklere Variante beim Hover */
}

.btn.facility:hover {
    background-color: rgba(149, 181, 31, 1); /* dunklere Variante beim Hover */
}

.btn.finance:hover {
    background-color:rgba(36, 95, 166, 1); /* dunklere Variante beim Hover */
}


#top-right-logo {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    display: none;
}

/* Nur auf kleinen Screens (bis 768px) anzeigen */
@media screen and (max-width: 768px) {
    #top-right-logo {
        display: block;
    }
    #top-right-logo.visible {
        opacity: 1;
        pointer-events: auto;
    }
}

/* ======= Basic style ======= */
html,
body {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
}
* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    outline: none;
    word-wrap: break-word;
}
body {
    font-family: var(--font-family-primary);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.75em;
    color: rgba(0, 0, 0, 0.5);
    overflow-x: hidden !important;
    background: #fff;
}
p {
    font-family: var(--font-family-primary);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.75em;
    color: rgba(0, 0, 0, 0.76);
}
h1 {
    font-family: var(--font-family-primary);
    font-weight: 700;
    line-height: 1.25em;
    margin: 0 0 20px 0;
    color: var(--main-primary-text);
}
h2,
h3,
h5,
h6 {
    font-family: var(--font-family-primary2);;
    font-weight: 800;
    line-height: 1.25em;
    margin: 0 0 0 0;
    color: var(--main-primary-text);
}
h4 {
    font-family: var(--font-family-primary);;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.25em;
    margin: 0 0 20px 0;
    color: var(--main-primary-text);
}
img {
    width: 100%;
    height: auto;
}
img {
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    color: #f4f4f4;
}
span,
a,
a:hover {
    display: inline-block;
    text-decoration: none;
    color: inherit;
}
a,
a:hover {
    display: inline-block;
    text-decoration: none;
    color: var(--main-highlight-color)
}
b {
    font-weight: 700;
}

.btn-outline:hover {
    color: var(--main-highlight-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--main-highlight-color);
    
    }






  /* Container fürs Popover */
  .price-note{ position:relative; display:inline-flex; align-items:center; gap:.4rem; }
  .price-info{ background:transparent; border:0; cursor:pointer; padding:0; color:#999; font-size:16px; line-height:1; }
  .price-info:hover{ color:#666; }
  
  
  /* Popover aus */
  .price-popover{ display:none !important; }
  
  /* === Bottom-Sheet === */
  .sheet{
    position: fixed;
    left: 0; right: 0; top: 0; bottom: 0;  /* Viewport füllen */
    margin: 0; padding: 0; border: 0;
    background: rgba(0, 0, 0, 0.33);
    /* verhindert horizontales „Wackeln“ durch 100vw + Scrollbar */
    width: auto; height: auto;
  }
  .sheet::backdrop{
    background: rgba(0,0,0,.35);
    backdrop-filter: saturate(120%) blur(1px);
    animation: sheet-fade .2s ease;
  }
  
  .sheet[open]{
    display: grid;
    grid-template-columns: 1fr;
    align-items: end;          /* unten andocken */
    justify-items: stretch;    /* volle Breite */
  }
  
  .sheet-panel{
    box-sizing: border-box;
    width: 100%;
    max-height: min(85vh, 720px);
    background:#fff;
    border-radius: 16px 16px 0 0;
    box-shadow: 0 -8px 40px rgba(0,0,0,.18);
    overflow: auto;
    transform: translateY(100%);                 /* Start unten */
    transition: transform .32s cubic-bezier(.2,.8,.2,1);
    will-change: transform;
    padding-bottom: max(12px, env(safe-area-inset-bottom));
    margin: 0;                                   /* sicherheitshalber */
  }
  
  .sheet[open] .sheet-panel{ transform: translateY(0); }
  
  dialog:modal {
  position: fixed;
  overflow-x: auto;
  overflow-y: auto;
  inset-block-start: 0px;
  inset-block-end: 0px;
  max-width: 100% !important;
  max-height: 100% !important;
  visibility: visible;
  }
  
  .sheet-header{
    position: sticky; top: 0;
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 16px; background:#fff;
    border-radius:16px 16px 0 0;
  }
  .sheet-close{
    width:36px; height:36px; border-radius:50%;
    border:0; background:rgba(0,0,0,.06); font-size:20px; cursor:pointer;
  }
  /* Sheet: Breite begrenzen und zentrieren */
  .sheet-body { padding: 0px 10px 10px 10px; }
  .sheet-body .sheet-prices,
  .sheet-body .sheet-hint {
    margin: 0 auto;
  font-size: 11px;
  margin-top: 16px;
  }
  .sheet-panel{ overflow-y: auto; overflow-x: hidden; }

  .sheet-body, .sheet-prices { box-sizing: border-box; max-width: 100%; }
.sheet-prices li.row { grid-template-columns: 1fr auto; min-width: 0; }
.sheet-prices li.row .label, 
.sheet-prices li.row .value { min-width: 0; }
  #priceSheetTitle {
    font-size: 1.5rem;
line-height: 1.75rem;
  }
  /* Preisliste als 2-Spalten-Grid */
  .sheet-prices { 
    list-style: none; 
    margin: 0; 
    padding: 0; 
    border: 1px solid #eceff3; 
    border-radius: 12px; 
    background: #fff;
  }
  .sheet-prices li.row {
    display: grid;
    grid-template-columns: 1fr auto;  /* links Text, rechts Preis */
    align-items: start;
    gap: 12px;
    padding: 12px 14px;
    font-size: .75rem;
    font-weight: 400;
    line-height: normal;
  }
  .sheet-prices li.row .label { color: #111; }
  .sheet-prices li.row .value { 
    text-align: right; 
    min-width: 8ch;              /* Platz für Preise */
    font-weight: 600;
    font-variant-numeric: tabular-nums; /* schöner ausgerichtet */
  }
  .sheet-prices li.sep { 
    height: 1px; 
    background:#eef0f3; 
    margin: 0; 
  }
  
  /* Totals etwas hervorheben */
  .sheet-prices li.row.total,
  .sheet-prices li.row.total-stay { 
    background:#f8fafc; 
  }
  
  
  @keyframes sheet-fade{ from{opacity:0} to{opacity:1} }
  
/* Center-Variante statt Bottom-Sheet */
.sheet--center[open]{
    display:grid;
    place-items:center;  /* mittig */
  }
  .sheet--center .sheet-panel{
    max-width: 560px;
    border-radius: 12px;                 /* alle Ecken */
    transform: scale(.98);               /* sanftes Reinzoomen */
    transition: transform .22s ease;
    box-shadow: 0 20px 60px rgba(0,0,0,.28);
  }
  .sheet--center[open] .sheet-panel{ transform: scale(0.8); }
  
  /* Kontextzeile (Datum/Gäste/Name) */
  .sheet-context{
    font-size: 12px;
    color:#666;
    margin: 0 0 10px;
  }
  
  /* Preisliste: etwas kompakter & „Kasten“-Look wie im Screenshot */
  .sheet-body .sheet-prices{
    margin: 0 auto;
    border: 1px solid #e7ebf0;
    border-radius: 10px;
    background:#fff;
  }
  .sheet-prices li.row{
    padding: 10px 12px;
    font-size: 14px;
  }
  .sheet-prices li.sep{ background:#eef1f4; }
  
  /* Totals kräftiger */
  .sheet-prices li.row.total,
  .sheet-prices li.row.total-stay{
    background:#f8fafc;
    font-weight: 700;
  }
  
  /* "Inklusive" rechts fett anzeigen */
  .sheet-prices li.row.inc .value{
    font-weight: 600;
  }
  
  /* Option: Häkchen links */
  .sheet-prices li.row.inc .label{ position:relative;}
.sheet-prices li.row.inc .label::before{
  content: "\f560";
  font: var(--fa-font-solid);
  position: relative;
  left: 0;
  top: 0;
  line-height: 1;
  margin-right: 8px;
  color: var(--main-highlight-color);
}
  
  /* Abschnittsüberschrift "Inklusive" */
  .sheet-prices li.row.section{
    background:#fcfcfd;
    font-weight:700;
  }
  
.pricing-box {
    border: .0625rem solid #e9e9e9;
border-radius: .625rem;
margin-bottom: .9375rem;
padding: .625rem;
position: relative;
}
  
  /* Rabatt/negative Werte (z.B. -50,00 €) optisch hervorheben */
  .sheet-prices li.row.negative .value{ color:#0a0; }       /* grün */
  .sheet-prices li.row.negative .label{ color:#333; }
  
  /* Unterer Block wie im Screenshot (immer inklusive …) */
  .sheet-included{
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #e7ebf0;
    font-size: 13px;
    color:#222;
  }
  .sheet-included .title{
    display:flex; align-items:center; gap:8px;
    font-weight:700;
    margin-bottom:6px;
  }
  .sheet-included .title::before{
    content:"✓";
    display:inline-block; font-weight:800;
  }
  .sheet-included ul{
    margin:6px 0 0; padding-left:18px;
  }
  .sheet-included li{ margin:4px 0; }
    




/* text field */
input[type="password"]:focus,
input[type="email"]:focus,
input[type="text"]:focus,
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus,
input[type="time"]:focus,
textarea:focus,
select:focus {
    -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
    outline: none;
    background: #fff;
    border-color: var(--main-highlight-color);
    box-shadow: 0 0 0 3px var(--main-highlight-color-15);
    /* die alte Linie am Bottom endgültig ausschalten */
    border-bottom-width: 1px;
}
input[type="password"],
input[type="time"],
input[type="email"],
input[type="text"],
input[type="file"],
input[type="dropdown"],
input[type="date"],
input[type="number"],
input[type="datetime-local"],
textarea,
select {
    -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
    border-width: 1px;
    border-style: solid;
    border-color: #e7eaee;
    border-bottom-color: #e7eaee;
    background-color: #f8fafc;          /* helles Grau wie im Screenshot */
    border-radius: 10px;
    padding: 12px 14px 12px;             /* mehr Innenabstand */
    height: auto;
    box-shadow: 0 1px 0 rgba(0,0,0,.02);
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
input:focus,
textarea:focus {
    border-bottom-width: 1px;
    border-color: var(--main-highlight-color);
}
input[type="submit"],
input[type="reset"],
input[type="button"],
button {
    text-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    line-height: 1.75em;
    -webkit-transition: background-color .15s ease-out;
    transition: background-color .15s ease-out;
    background: transparent;
    border: 0px solid transparent;
}
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
button:hover {
    border: 0px solid transparent;
}
table,
th,
tr,
td {
    border: 1px solid #2b2b2b;
}
th,
tr,
td {
    padding: 10px;
}
input[type="radio"],
input[type="checkbox"] {
    display: inline;
}
input[type="submit"] {
    font-weight: 400;
    font-family: var(--font-family-primary);;
    text-transform: uppercase;
    background: var(--main-highlight-color);
    color: #fff;
    padding: 8px 24px;
    margin: 0;
    position: relative;
    font-size: 15px;
    letter-spacing: 3px;
}


/* ===== Scrollbar ===== */
::-webkit-scrollbar {
    width: 0px;
}
::-webkit-scrollbar-track {
    background: #fff;
}
::-webkit-scrollbar-thumb {
    background: var(--main-highlight-color);
}
::-webkit-scrollbar-thumb:hover {
    background: var(--main-highlight-color);
}

/* placeholder */
::-webkit-input-placeholder {
    color: #999;
    font-size: 15px;
    font-weight: 400;
}
:-moz-placeholder {
    color: #999;
}
::-moz-placeholder {
    color: #999;
    opacity: 1;
}
:-ms-input-placeholder {
    color: #999;
}



.action-button {
    display: inline-block;
padding: 5px 10px;
font-size: 14px;
color: white;
background-color: rgba(213, 152, 48, 0.85);
border-radius: 5px !important;
text-decoration: none;
border: none;
font-family: Barlow !important;
cursor: pointer;
}

.action-button:hover {
    background-color: #73542f;
color: #fff;
}


/* blockquote */
blockquote {
    padding: 45px;
    display: block;
    position: relative;
    background-color: #fbfbfb;
    overflow: hidden;
    margin: 35px 0;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.75em;
    color: rgba(0, 0, 0, 0.5);
}
blockquote p {
    font-family: inherit;
    margin-bottom: 0 !important;
    color: inherit;
    max-width: 650px;
    width:100%;
    position:relative;
    z-index:3;
}
blockquote:before {
    content: '\e645';
    font-family: 'Themify';
    position: absolute;
    right: 40px;
    bottom: 40px;
    font-size: 110px;
    opacity: 0.07;
    line-height: 1;
    color: rgba(0, 0, 0, 0.5);
}
blockquote p {
    margin-bottom: 0;
}
blockquote p a {
    color:inherit;
}
blockquote cite {
    display:inline-block;
    font-size: 15px;
    position:relative;
    padding-left: 60px;
    border-color:inherit;
    line-height:1;
    margin-top: 22px;
    font-style:normal;
    color: var(--main-highlight-color);
    font-weight: 400;
}
blockquote cite:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 5px;
    width: 45px;
    height: 1px;
    border-top: 1px solid; 
    border-color:inherit;
    color: var(--main-highlight-color);
}


/* ======= Helper style ======= */
.mt-0 {
  margin-top: 0 !important;
}
.mt-15 {
  margin-top: 15px !important;
}
.mt-20 {
  margin-top: 20px !important;
}
.mt-30 {
  margin-top: 30px !important;
}
.mt-60 {
  margin-top: 60px !important;
}
.mt-90 {
  margin-top: 90px !important;
}
.mb-0 {
  margin-bottom: 0 !important;
}
.mb-30 {
  margin-bottom: 30px !important;
}
.mb-60 {
  margin-bottom: 60px !important;
}
.mb-90 {
  margin-bottom: 90px !important;
}
.pb-0 {
  padding-bottom: 0 !important;
}
.no-padding {
  padding: 0 !important;
}

/* important */
.o-hidden {
    overflow: hidden;
}
.position-re {
    position: relative;
}
.full-width {
    width: 100%;
}
.bg-img {
    background-size: cover;
    background-repeat: no-repeat;
}

.bg-position-bottom {
    background-position: bottom;
}
.bg-position-top {
    background-position: top;
}

.bg-position-center {
    background-position: center;
}

.bg-fixed {
    background-attachment: fixed;
}
.pattern {
    background-repeat: repeat;
    background-size: auto;
}
.bold {
    font-weight: 600;
}
.count {
    font-family: var(--font-family-primary);;
}
.valign {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.v-middle {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}
.v-bottom {
    position: absolute;
    width: 100%;
    bottom: 5%;
    left: 0;
    -webkit-transform: translate(0%, -5%);
    transform: translate(0%, -5%);
}
.js .animate-box {
    opacity: 0;
}

:root { scroll-behavior: auto; }




/* background & color */
.bg-blck {
    background: #ffffff;
}
.bg-darkgray {
    background: #2b2b2b;
}
.bg-cream {
    background: #faf8f5;
}
.color-1 {
color: #fff;
}
.color-2 {
color: #adadad;
}
.color-3 {
color: #999;
}
.color-4 {
color: #222;
}
.color-5 {
color: var(--main-highlight-color);
}

/* star - white  */
.star {
  position: relative;
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 0.9em;
  margin-right: 0.9em;
  margin-bottom: 1.2em;
  border-right: 0.3em solid transparent;
  border-bottom: 0.7em solid #fff;
  border-left: 0.3em solid transparent;
  /* Controlls the size of the stars. */
  font-size: 8px;
}
.star:before, .star:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: 0.6em;
  left: -1em;
  border-right: 1em solid transparent;
  border-bottom: 0.7em solid #fff;
  border-left: 1em solid transparent;
  transform: rotate(-35deg);
}
.star:after {
  transform: rotate(35deg);
}

/* Star rating  */
.star-rating {
  position: relative;
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 0.9em;
  margin-right: 0.9em;
  margin-bottom: 2em;
  border-right: 0.3em solid transparent;
  border-bottom: 0.7em solid #e4a853;
  border-left: 0.3em solid transparent;
  /* Controlls the size of the stars. */
  font-size: 8px;
}
.star-rating:before, .star-rating:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: 0.6em;
  left: -1em;
  border-right: 1em solid transparent;
  border-bottom: 0.7em solid #e4a853;
  border-left: 1em solid transparent;
  transform: rotate(-35deg);
}
.star-rating:after {
  transform: rotate(35deg);
}



/* ===== Newsletter Popup ===== */
.nl-backdrop{
    position:fixed; inset:0; display:grid; place-items:end center;
    background:rgba(15,23,42,.45); z-index:9999; padding:24px; 
    backdrop-filter:saturate(120%) blur(2px);
  }
  @media (min-width:640px){ .nl-backdrop{ place-items:center; } }
  
  .nl-modal{
    width:min(620px, 92vw);
    background:#fff; border-radius:16px; box-shadow:0 18px 60px rgba(0,0,0,.25);
    overflow:hidden; transform:translateY(12px) scale(.98); opacity:0;
    transition:transform .28s ease, opacity .28s ease;
    font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif;
    color:#1f2937;
  }
  .nl-backdrop.is-open .nl-modal{ transform:translateY(0) scale(1); opacity:1; }
  
  .nl-close{
    position:absolute; top:10px; right:10px; width:36px; height:36px;
    border:0; border-radius:999px; background:#ffffffd9; cursor:pointer;
    font-size:26px; line-height:1; color:#111;
    box-shadow:0 2px 8px rgba(0,0,0,.15);
  }
  .nl-close:hover{ background:#fff; }
  
  .nl-hero{ position:relative; aspect-ratio: 16/7; background:#f3f4f6; }
  .nl-hero img{ width:100%; height:100%; object-fit:cover; display:block; }
  .nl-hero-badge{
    position: absolute;
    top: 12px;
    right: 12px;
    width: 48px;
    color: var(--main-primary-text);
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.6);
    font-size: 24px;
    box-shadow: 0 6px 16px rgba(0,0,0,.12);
  }
  
  .nl-body{ padding:22px 22px 26px; }
  .nl-body h3{ margin:.25rem 0 .5rem; font-size:1.15rem; }
  .nl-text{ margin:0 0 .5rem; color:#374151; }
  .nl-hint{ margin:.25rem 0 1rem; font-weight:600; }
  
  .nl-form{ display:grid; gap:.6rem; }
  .nl-label{ font-size:.9rem; color:#374151; }
  .nl-input{
    width:100%; padding:.85rem 1rem; border-radius:10px;
    border:1px solid #e5e7eb; outline:none;
  }
  .nl-input:focus{ border-color:#0ea5a5; box-shadow:0 0 0 3px var(--main-highlight-color); }
  
  .nl-btn{
    appearance:none; border:0; cursor:pointer;
    text-align: center;
    padding:.9rem 1.2rem; border-radius:999px; font-weight:700;
    background: var(--main-highlight-color); color:#fff; box-shadow:0 8px 18px var(--main-highlight-color-15);
  }
  .nl-btn:hover{
 color:#fff !important;
  }



 
  /* Grid: 2 Spalten → mobil 1 Spalte */
  .svc-grid{
    list-style:none;
    margin:.75rem 0 0;
    padding:0;
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:.6rem .75rem;
  }
  
  /* Item: kompakte Karte mit Border wie zuvor */
  .svc{
    display:grid;
    grid-template-columns:28px 1fr;
    align-items:start;
    gap:.5rem;
    border:1px solid #e9ecef;
    background:#fff;
    border-radius:.7rem;
    padding:.6rem .7rem;                /* kompakt */
    transition:border-color .15s, box-shadow .15s;
  }
  .svc:hover{
    border-color: var(--main-highlight-color);
    box-shadow:0 .3rem .8rem rgba(0,0,0,.04);
  }
  
  /* Icon: kleiner Kreis, farblich wie bisher */
  .svc i{
    display:inline-grid; place-items:center;
    width:28px; height:28px; border-radius:50%;
    background: var(--main-highlight-color-15);   /* = var(--main-highlight-color) weich */
    color: var(--main-highlight-color);
    font-size:12px;
  }
  
  /* Textblock: Name oben, Beschreibung klein darunter */
  .svc .txt strong{
    display:block;
    font-weight:600;
    font-size:14px;
    line-height:1.25;
    color:#1f2328;
  }
  .svc .txt small{
    display:block;
    margin-top:2px;
    font-size:12px;
    line-height:1.3;
    color:#6c757d;
  }
  
  /* Mobile: eine Spalte */
  @media (max-width: 768px){
    .svc-grid{ grid-template-columns:1fr; }
  }
  
  .service-list, .services-list{
    list-style: none;
    margin: .5rem 0 0;
    padding: 0;
    display: grid;
    gap: .5rem;
  }
  .service-list li, .services-list li{
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .5rem .75rem;
    align-items: center;
    padding: .5rem .6rem;
    border: 1px solid #eceff3;
    border-radius: .6rem;
    background: #fff;
  }
  .service-list i, .services-list i{
    display: inline-grid;
    place-items: center;
    width: 28px; height: 28px; border-radius: 50%;
    background: color-mix(in srgb, var(--main-highlight-color) 14%, transparent);
    color: var(--main-highlight-color);
    font-size: 12px;
  }
  .service-list .name, .services-list .name{ font-weight: 600; color:#212529; }
  .service-list .desc, .services-list .desc{ grid-column: 2 / -1; color:#6c757d; font-size: 12px;
  width: 45%;
  text-align: right; }
  
  
  .services-card .service-list{
    list-style:none; margin:.5rem 0 0; padding:0;
    display:flex; flex-direction:column; gap:.35rem;
  }
  .services-card .service-list > li{
    display:flex; align-items:center; gap:.6rem;
    background:#fff; border:1px solid #eee; border-radius:.6rem;
    padding:.5rem .6rem;
  }
  .services-card .service-list i{
    display:inline-grid; place-items:center;
    width:28px; height:28px; border-radius:50%;
    background: color-mix(in srgb, var(--main-highlight-color) 14%, transparent);
    color: var(--main-highlight-color);
    font-size:12px;
    flex: 0 0 28px;
  }
  .services-card .service-list .name{
    flex:1; color:#1f2328; font-weight:600; line-height:1.2;
  }
  .services-card .service-list .price{
    color:#111; font-weight:700; white-space:nowrap;
  }
  .services-card .service-list .service-desc{
    margin: -0.25rem 0 .25rem 3rem;
    font-size:.85rem; color:#6b7280; list-style:none; border:0; padding:0;
  }
  
  
  
    .pill{
      display:block; width:fit-content;             /* macht padding/rounded sauber */
    background: var(--main-highlight-color-15);
    border-radius: 5px;
    color: var(--main-highlight-color);
    padding: 2px .625rem;                   /* horizontaler Innenabstand */
    font-size: 12px;
    line-height: 1.4;
    margin-top: 10px;
    white-space: nowrap;                 /* verhindert Umbruch im Label */
    /* width:auto;  <- ist Standard, kann man weglassen */
  }
  .pillgrey{
    display:block; width:fit-content;             /* macht padding/rounded sauber */
    background: var(--main-highlight-color-15);
    border-radius: 5px;
    color: var(--main-highlight-color);
    padding: 2px .625rem;                     /* horizontaler Innenabstand */
    font-size: 12px;
    margin-top: 10px;
    line-height: 1.4;
    white-space: nowrap;                 /* verhindert Umbruch im Label */
    /* width:auto;  <- ist Standard, kann man weglassen */
  }
    /* stapelt die Karten untereinander */
  .info-stack{
    display: flex;
    flex-direction: column;
    gap: 16px;            /* Abstand zwischen den Karten */
  }
  
  /* Info-Card: Icon links, Text rechts, Liste direkt darunter */
  .apt-extra2 .info-card{
    display:grid;
    grid-template-columns:32px 1fr;
    column-gap:12px;
    row-gap:6px;
    align-items:center;     /* Icon/Titel in ihrer Zeile zentrieren */
    align-content:start;    /* <<< freie Höhe NICHT zwischen die Zeilen streuen */
  }
  .apt-extra2 .info-card > ul{ margin-top:8px; }
  .apt-extra2 .info-card > h3{ margin:5px !important; line-height:1.15;font-size: 18px;font-weight:800; }
  /* runder Badge */
  .apt-extra2 .info-card .info-icon{
    grid-column: 1;
    grid-row: 1;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--main-highlight-color);
    font-size: 45px;
    margin: 0;
  }
  
  /* Titel rechts vom Icon */
  .apt-extra2 .info-card > h3{
    grid-column: 2;
    grid-row: 1;
    margin: 0 !important;            /* überschreibt dein späteres margin */
    line-height: 1.15;
  }
  .apt-extra2 .info-card > h3 small{
    display: block;
    color: #6b7280;
    font-weight:200;
    font-size: 18px;
  }
  
  /* Liste unter dem Header über die volle Breite */
  .apt-extra2 .info-card > ul{
    grid-column: 1 / -1;
    margin: 8px 0 0 0 !important;    /* kleiner Abstand zum Titel */
    padding-left: 1.25rem;           /* Bullet-Einzug */
    color: #555;
    list-style: disc;
  }
  
  /* Desktop: auf Hover anzeigen */
  @media (hover:hover){
    .price-note:hover .price-popover{ opacity:1; visibility:visible; pointer-events:auto; }
  }
  
  /* Mobile/Touch: über Klasse .open anzeigen */
  .price-note.open .price-popover{ opacity:1; visibility:visible; pointer-events:auto; }
  
  /* Preis-Popover */
  .price-note{ position:relative; }
  .price-popover{ z-index: 60; }    
  /* Mini-Tooltip */
  .info-icons .tooltip{
    position:absolute; bottom: calc(100% + 8px); left:50%;
    transform: translateX(-50%);
    background:#fff; color:#333; font-size:12px;
    padding:6px 8px; border:1px solid #eee; border-radius:6px;
    white-space:nowrap; box-shadow:0 8px 20px rgba(0,0,0,.08);
    opacity:0; pointer-events:none; transition:opacity .15s ease;
  }
  .info-icons .info-icon:hover .tooltip,
  .info-icons .info-icon.active .tooltip{ opacity:1; }
  
  /* (dein vorhandenes CSS – unverändert, nur hier belassen) */
  /* Titel und Icons zusammen in eine Zeile */
  .title-with-icons { display:flex; align-items:center; gap:1rem; }
  .title-with-icons .apt-title { margin:0; color: var(--main-highlight-color);}
  .title-with-icons .icons-line { display:flex; gap:1px; }
  
  /* Apartment Detail Page */
  .apartment-detail{
    margin: 0 auto;
    padding: 2rem;
    background: #f9f9f9;
  }
  .apt-header { display:flex; justify-content:space-between; align-items:center; }
  .apt-header h1 { font-size:1.5rem; font-weight:600; color:#333; }
  .close-btn { 
    display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  width: 40px;
  background: rgba(0,0,0,0.05);
  border-radius: 50%;
  color: #4e4e4e;
  font-size: 20px;
  }
  .close-btn:hover {
    display: inline-flex;
    color: var(--main-highlight-color) !important;
  }
  
  /* Galerie – feste Plätze */
  .apt-gallery3{ display:grid; grid-template-columns:2fr 1fr; gap:.5rem; margin-bottom:2rem; }
  .apt-gallery3 figure{ margin:0; overflow:hidden; position:relative; }
  .apt-gallery3 img{ width:100%; height:100%; object-fit:cover; display:block; }
  .apt-gallery3 .left,
  .apt-gallery3 .right{ height: clamp(320px, 45vw, 520px); 
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;}
  .apt-gallery3 .right{ display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; gap:.5rem; }
  .apt-gallery3 .r1{ grid-area:1 / 1 / 2 / 2; }
  .apt-gallery3 .r2{ grid-area:1 / 2 / 2 / 3; border-top-right-radius: 10px;}
  .apt-gallery3 .r3{ grid-area:2 / 1 / 3 / 2; } /* hier ist das Mehr-Overlay */
  .apt-gallery3 .r4{ grid-area:2 / 2 / 3 / 3; border-bottom-right-radius: 10px; } /* Grundriss */
  
  .apt-gallery3 .r3.has-more::after{
    content:""; position:absolute; inset:0;
  }
  
  /* komplettes Overlay über dem Floorplan (r4 hat Klasse .is-floor) */
  .apt-gallery3 figure.is-floor::before{
    content:"";
    position:absolute; inset:0;
    background: rgba(0, 0, 0, 0.40);   /* Deckung anpassen: .25 … .55 */
    pointer-events:none;           /* Klicks gehen weiter an die Kachel */
    z-index:1;                     /* unter dem Badge, über dem Bild */
  }
  
  .apt-gallery3 .badge-floor{
    position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  z-index: 2;
  color: #fff;
  border: 0;
  font-weight: 700;
  cursor: pointer;
  font-size: 15px;
  text-align: center;
  }
  .apt-gallery3 .more-btn{
    position: absolute;
  right: .5rem;
  bottom: .5rem;
  background: var(--main-highlight-color);
  color: #fff;
  font-weight: 400;
  padding: .25rem .5rem;
  border-radius: 10px;
  font-size: .85rem;
  }
  
  /* Lightbox: geschlossen unsichtbar, nur mit [open] layouten */
  .viewer{ display:none; }
  .viewer[open]{
    min-width: 100%;
  min-height: 100%; margin:0; padding:0; border:0; border-radius:0; background:#fff;
    display:grid; place-items:center; overflow:hidden;
  }
  .viewer::backdrop{ background:rgba(0,0,0,.5); }
  .viewer img#viewerImg{ max-width:min(92vw, 1200px); max-height:min(86vh, 900px); width:auto; height:auto; }
  .viewer .nav{ position:absolute; top:50%; transform:translateY(-50%); width:42px; height:42px; border-radius:50%; border:0; cursor:pointer; background:#fff; box-shadow:0 4px 14px rgba(0,0,0,.18); }
  .viewer .nav.prev{ left:22px; } .viewer .nav.next{ right:22px; }
  .viewer .nav::before{ content:""; display:block; width:8px; height:8px; border-top:2px solid #111; border-right:2px solid #111; position:absolute; top:50%; left:50%; transform-origin:center; }
  .viewer .nav.prev::before{ transform:translate(-35%,-50%) rotate(-135deg); }
  .viewer .nav.next::before{ transform:translate(-65%,-50%) rotate(45deg); }
  .viewer .viewer-close{ position:absolute; right:16px; top:12px; width:44px; height:44px; border:0; background:transparent; color:#111; font-size:36px; line-height:1; cursor:pointer; }
  .viewer .viewer-count{ position:absolute; bottom:22px; left:50%; transform:translateX(-50%); background:rgba(255,255,255,.9); padding:.25rem .6rem; border-radius:999px; }
  body.modal-open{ overflow:hidden; }
  
  
  
  
  
  /* Opening Hours & Address */
  .apt-extra2 { display:flex; gap:2rem; margin-top:2rem; margin-bottom:2rem; }
  .info-card, .hours-card, .address-card { background:#f9f9f9; border-radius:10px; padding:1.5rem; } 
  .hours-card h3 { font-size:1.25rem; font-weight:600; margin-bottom:1rem; }
  .event { display:flex; margin-bottom:1.5rem; }
  .event i { color:#0B5E3B; margin-right:1rem; font-size:1.5rem; flex-shrink:0; }
  .event div strong { font-weight:600; display:block; margin-bottom:.25rem; }
  
  
  /* === Öffnungszeiten: Laufpfad von Icon-Mitte zu Icon-Mitte === */
  .hours-card .timeline{
    /* Icon-Größe und Abstände zentral steuern */
    --icon: 36px;
    --gap-x: 14px;   /* Abstand Icon ↔ Text */
    --line-w: 2px;
    --dash: 6px;     /* Strich-/Lückenlänge */
  
    position: relative;
  }
  
  
  /* --- Mobile-Optimierung für Galerie --- */
  @media (max-width: 640px){
  
  /* Rand & Typo etwas kompakter */
  .apartment-detail{ padding: 1rem; }
  
  /* Aus 2-Spalten-Grid wird 1 Spalte */
  .apt-gallery3{
    grid-template-columns: 1fr;
    gap: .5rem;
    margin-bottom: 1rem;
  }
  
  /* Keine fixe Höhe mehr – stattdessen Aspect Ratio */
  .apt-gallery3 .left{
    height: auto;
    aspect-ratio: 16 / 10;             /* Hero-Bild bleibt schön breit */
    border-radius: 10px;                /* durchgängige Rundung */
    overflow: hidden;
  }
  
  /* Thumbnail-Leiste: horizontal scrollen statt 2×2 */
  .apt-gallery3 .right{
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 42%;
    gap: .5rem;
    overflow-x: auto;
    padding-bottom: .25rem;             /* Platz damit Scrollbar nix überdeckt */
    height: auto;
    border-radius: 0;                    /* Rundungen an einzelnen Thumbs */
  }
  
  .apt-gallery3 .right figure{
    min-width: 42vw;                    /* “Karten”-Breite beim Scrollen */
    aspect-ratio: 4 / 3;                /* gleichmäßige Kachelhöhe */
    border-radius: 10px;
    overflow: hidden;
  }
  
  /* vordefinierte Grid-Positionen der Kacheln sind mobil egal */
  .apt-gallery3 .r1,.apt-gallery3 .r2,
  .apt-gallery3 .r3,.apt-gallery3 .r4{ grid-area: auto; }
  
  /* Overlays/Badges mittig halten, aber kleiner */
  .apt-gallery3 .badge-floor{
    font-size: 13px;
    padding: .15rem .4rem;
  }
  .apt-gallery3 .more-btn{
    right: .4rem; bottom: .4rem;
    font-size: .8rem;
    padding: .2rem .45rem;
    border-radius: 8px;
  }
  
  /* Sonstiges Layout unter der Galerie */
  .apt-info-action{ flex-direction: column; gap: 1rem; }
  .apt-action{ align-items: stretch; }
  }
  
  /* Bilder füllen die Fläche sauber aus */
  .apt-gallery3 img{
  width: 100%; height: 100%;
  object-fit: cover;                     /* nie gequetscht/gezerrt */
  }
  
  /* (Optional) Scrollbar der Thumbs dezenter */
  @media (max-width: 640px){
  .apt-gallery3 .right::-webkit-scrollbar{ height: 6px; }
  .apt-gallery3 .right::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.15); border-radius: 999px;
  }
  }
  
  
  
  /* Jede Zeile zeichnet ihren eigenen Linienabschnitt */
  .hours-card .event{
    position: relative;
    padding: 14px 0 14px calc(var(--icon) + var(--gap-x)); /* Platz links fürs Icon */
    margin: 0; /* sicherheitshalber */
  }
  
  /* Icon fix und quadratisch, damit die Mitte stabil ist */
  .hours-card .event i{
    position: absolute;
    left: 0;
    top: 14px;                  /* = oberes Padding aus .event */
    width: var(--icon);
    height: var(--icon);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    color: var(--main-highlight-color);
    background: color(srgb 0.9762 0.9763 0.9764);
  }
  
  /* Der eigentliche Pfad – sitzt genau auf Icon-Mitte */
  .hours-card .event::before{
    content: "";
    position: absolute;
    left: calc(var(--icon) / 2);
    transform: translateX(-50%);
    top: 0;
    bottom: 0;
    width: var(--line-w);
    background: repeating-linear-gradient(
      to bottom,
      var(--main-highlight-color) 0 calc(var(--dash)),
      transparent calc(var(--dash)) calc(var(--dash) * 2)
    );
  }
  
  /* Beim ersten Element startet der Pfad erst ab Icon-Mitte */
  .hours-card .event:first-child::before{ top: calc(14px + var(--icon) / 2); }
  /* Beim letzten Element endet der Pfad an der Icon-Mitte */
  .hours-card .event:last-child::before{ bottom: calc(14px + var(--icon) / 0.4); }
  
  /* Typo/Content */
  .hours-card .event > div strong{ font-weight: 600; display:block; margin-bottom:.25rem; }
  .hours-card .event > div small{ font-size:.85rem; color:#555; line-height:1.4; }
  
  /* Responsiv: kleinere Icons → Pfad bleibt automatisch mittig */
  @media (max-width: 480px){
    .hours-card .timeline{ --icon: 30px; --gap-x: 12px; }
    .hours-card .event{ padding-left: calc(var(--icon) + var(--gap-x)); }
    .hours-card .event:first-child::before{ top: calc(14px + var(--icon) / 2); }
    .hours-card .event:last-child::before{ bottom: calc(14px + var(--icon) / 2); }
  }
  
  /* Info + Action */
  .apt-info-action { display:flex; gap:2rem; }
  .apt-info { flex:2; display:flex; flex-direction:column; }
  .apt-action { flex:1; display:flex; flex-direction:column; gap:1rem; align-items:flex-end; }
  .category { font-size:.85rem; color:#888; margin-bottom:.25rem; }
  .apt-title { font-size:2rem; margin:0 0 .5rem; }
  .icons-line i { margin-right:.75rem; font-size:1rem; color:#555; }
  .features-line { display:flex; gap:25px; flex-wrap:wrap; margin:.5rem 0; }
  .features-line span { font-size:15px; color:#555; display:flex; align-items:center; }
  .features-line i { margin-right:15px; }
  .description { font-size:13px; color:#555; line-height:1.5; margin-top: 10px;}
  
  /* Action */
  .dates { font-size:.8rem; color:#888; }
  .pricing{
    text-align: right;
  }
  
  /* durchgestrichener alter Preis (kleiner, grau, oben) */
  .old-price{
    color: #9aa0a6;
    text-decoration: line-through;
    margin-bottom: .15rem;
    font-size: .95rem;
  }
  
  /* reduzierter Preis prominent */
  .sale-price{
    color: var(--main-highlight-color);              /* Rot für Sale, gern anpassen */
    font-size: 1.8rem;           /* ähnlich/ größer als .new-price */
    font-weight: 700;
    line-height: 1.1;
  }
  .new-price { 
    margin-top: 15px;
  color: var(--main-highlight-color);
  font-size: 33px;
  font-weight: 700;
   }
  .per-unit { display:block; font-size:.75rem; color:#888; }
  
  /* VIP Variant */
  .apt-info.vip .apt-title { color:var(--main-highlight-color); }
  .apt-info .icons-line i{
    display:inline-flex; align-items:center; justify-content:center;
    height:30px; width:30px; background:rgba(0,0,0,0.05); border-radius:50%;
    color:#4e4e4e; font-size:12px;
  }
  .apt-info.vip .icons-line i{ background:transparent; width:auto; height:auto; padding:0; }
  
  /* Services & Ausstattung */
  .apt-extra { display:flex; gap:2rem; margin-top:2rem; margin-bottom:2rem; }
  .card {
    flex: 1 1 0%;
  background: rgb(255, 255, 255);
  border-radius: 12px;
  padding: 1.5rem;
  border-color: rgb(244, 244, 244);
  height: 100%;
  }
  .services-card h3, .amenities-card h3 { margin-top:0; font-size:25px; font-weight:600; color:#333; }
  .service-group{ margin-top:1rem; }
  .amenities-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(180px,1fr)); gap:1.5rem; margin-top:1rem; }
  .amenities-card h4 { display:flex; align-items:center; font-size:1rem; font-weight:600; color:#333; margin-bottom:.5rem; }
  .amenities-card h4 i { margin-right:.5rem; font-size:1.1rem; }
  .disclaimer { margin-top:1.5rem; font-size:.75rem; color:#888; }
  
  @media (max-width:768px){
    .apt-info-action { flex-direction:column; }
    .apt-action { align-items:stretch; }
    .apt-extra2, .apt-extra { flex-direction:column; }
  }
  
  /* Popover */
  .price-popover{
    position:absolute; right:0; bottom: calc(100% + 10px);
    width:min(220px, 80vw);
    background:#fff; border:1px solid #eee; border-radius:10px;
    box-shadow:0 16px 40px rgba(0,0,0,.14);
    padding:12px 14px;
    font-size:13px;
    opacity:0; visibility:hidden; pointer-events:none; z-index:40;
    transition:opacity .15s ease, visibility .15s ease;
  }
  .price-popover li {
  list-style: none;
  font-size: 10px;
  line-height: 15px;
  }
  /* Desktop: auf Hover anzeigen */
  @media (hover:hover){
    .price-note:hover .price-popover{ opacity:1; visibility:visible; pointer-events:auto; }
  }
  
  /* Mobile/Touch: über Klasse .open anzeigen */
  .price-note.open .price-popover{ opacity:1; visibility:visible; pointer-events:auto; }
  
  /* Mini-Tooltip */
  .info-icons .tooltip{
    position:absolute; bottom: calc(100% + 8px); left:50%;
    transform: translateX(-50%);
    background:#fff; color:#333; font-size:12px;
    padding:6px 8px; border:1px solid #eee; border-radius:6px;
    white-space:nowrap; box-shadow:0 8px 20px rgba(0,0,0,.08);
    opacity:0; pointer-events:none; transition:opacity .15s ease;
  }
  .info-icons .info-icon:hover .tooltip,
  .info-icons .info-icon.active .tooltip{ opacity:1; }
  
  /* Bullets unter den Standard-Icons */
  .quick-bullets{
    margin:.25rem 0 0; padding-left:1rem; color:#555; font-size:.9rem;
  }
  .quick-bullets li{ list-style: disc; margin:.15rem 0; }
  
  /* Preis-Info Icon neben Preis */
  .pricing{ position:relative; align-items:center; gap:.4rem; justify-content:flex-end; }
  .price-info{
    background:transparent; border:0; cursor:pointer; padding:0;
    color:#999; font-size:16px; line-height:1;
  }
  .price-info:hover{ color:#666; }
  
  /* Modal */
  .modal{ position:fixed; inset:0; display:none; z-index:1000; }
  .modal.show{ display:block; }
  .modal-backdrop{
    position:absolute; inset:0; background:rgba(0,0,0,.35);
  }
  .modal-dialog{
    position:relative; max-width:560px; margin:10vh auto; background:#fff;
    border-radius:12px; padding:18px 20px; box-shadow:0 20px 60px rgba(0,0,0,.25);
  }
  .modal-dialog h4{ margin:0 0 .5rem; }
  .modal .btn.close{ margin-top:.5rem; }
  
  
  
  /* Tooltip zuverlässig sichtbar machen */
  .info-icons .info-icon { position: relative; overflow: visible; }
  .info-icons .tooltip{
    position:absolute; bottom: calc(100% + 8px); left:50%;
    transform: translateX(-50%);
    background:#fff; color:#333; font-size:12px;
    padding:6px 8px; border:1px solid #eee; border-radius:6px;
    white-space:nowrap; box-shadow:0 8px 20px rgba(0,0,0,.12);
    opacity:0; visibility:hidden; pointer-events:none;
    transition: opacity .15s ease, visibility .15s ease;
    z-index: 30; /* <- wichtig */
  }
  .info-icons .info-icon:hover .tooltip,
  .info-icons .info-icon:focus .tooltip,
  .info-icons .info-icon.active .tooltip{
    opacity:1; visibility:visible;
  }
  




  /* Close-Button in der Hero-Grafik */
.nl-hero-close{
    position: absolute;
    top: 12px;
    right: 12px;
    width: 35px;
    height: 35px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: #ffffffd9;
    border: 1px solid rgba(0,0,0,.08);
    cursor: pointer;
    color: var(--main-primary-text);
    font-size: 17px;
    box-shadow: 0 6px 16px rgba(0,0,0,.15);
  }
  .nl-hero-close:hover{ background:#fff; }
  .nl-hero-close:focus{ outline:2px solid #0ea5a5; outline-offset:2px; }
  

  /* Nutzer, die reduzierte Bewegung bevorzugen */
  @media (prefers-reduced-motion: reduce){
    .nl-modal{ transition:none; }
  }
  



/* ======= Selection style ======= */
::-webkit-selection {
    color: #fff;
    background: var(--main-highlight-color);
}
::-moz-selection {
    color: #fff;
    background: var(--main-highlight-color);
}
::selection {
    color: #fff;
    background: var(--main-highlight-color);
}


/* CSS: Preloader Style */
.preloader-bg
{
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 999999;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: color(srgb 1 1 1);
}

#preloader-status {
    display: table;
    width: 100%;
    height: 100%;
    vertical-align: middle;
}
.preloader-position {
    text-align: center;
}
.loader-gif {
    max-width: 100px !important;
    height: auto;
    margin: auto;
}



/* ======= Owl-Theme custom style ======= */
.owl-theme .owl-nav.disabled + .owl-dots {
    margin-top: 0px;
    line-height: 1.5;
    display: block;
    outline: none;
}
.owl-theme .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
    margin: 0 3px;
    border-radius: 50%;
    background: transparent;
    border: 1px solid #ADADAD;
}
.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: var(--main-highlight-color);
    border: 1px solid var(--main-highlight-color);
}




/* === owl carousel nav style  === */
.clients .owl-theme .owl-nav,
.team .owl-theme .owl-nav,
.news .owl-theme .owl-nav,
.pricing .owl-theme .owl-nav,
.testimonials .owl-theme .owl-nav,
.rooms-page .owl-theme .owl-nav,
.rooms3 .owl-theme .owl-nav,
.rooms2 .owl-theme .owl-nav,
.rooms1 .owl-theme .owl-nav {
    position: absolute!important;
    top: 35%!important;
    bottom: auto!important;
    width: 100%
}
.clients .owl-theme .owl-nav,
.team .owl-theme .owl-nav,
.news .owl-theme .owl-nav,
.pricing .owl-theme .owl-nav,
.testimonials .owl-theme .owl-nav,
.rooms-page .owl-theme .owl-nav,
.rooms3 .owl-theme .owl-nav,
.rooms2 .owl-theme .owl-nav,
.rooms1 .owl-theme .owl-nav{
    position: relative;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.clients .owl-theme .owl-prev,
.team .owl-theme .owl-prev,
.news .owl-theme .owl-prev,
.pricing .owl-theme .owl-prev,
.testimonials .owl-theme .owl-prev,
.rooms-page .owl-theme .owl-prev,
.rooms3 .owl-theme .owl-prev,
.rooms2 .owl-theme .owl-prev,
.rooms1 .owl-theme .owl-prev {
    left: 10px!important
}
.clients .owl-theme .owl-next,
.team .owl-theme .owl-next,
.news .owl-theme .owl-next,
.pricing .owl-theme .owl-next,
.testimonials .owl-theme .owl-next,
.rooms-page .owl-theme .owl-next,
.rooms3 .owl-theme .owl-next,
.rooms2 .owl-theme .owl-next,
.rooms1 .owl-theme .owl-next {
    right: 10px!important
}
.clients .owl-theme .owl-prev,
.clients .owl-theme .owl-next,
.team .owl-theme .owl-prev,
.team .owl-theme .owl-next,
.news .owl-theme .owl-prev,
.news .owl-theme .owl-next,
.pricing .owl-theme .owl-prev,
.pricing .owl-theme .owl-next,
.testimonials .owl-theme .owl-prev,
.testimonials .owl-theme .owl-next,
.rooms-page .owl-theme .owl-prev,
.rooms-page .owl-theme .owl-next,
.rooms3 .owl-theme .owl-prev,
.rooms3 .owl-theme .owl-next,
.rooms2 .owl-theme .owl-prev,
.rooms2 .owl-theme .owl-next,
.rooms1 .owl-theme .owl-prev,
.rooms1 .owl-theme .owl-next {
    color: #fff;
    position: absolute!important;
    top: 50%;
    padding: 0;
    height: 50px;
    width: 50px;
    border-radius: 0%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background: #272727;
    border: 1px solid #272727;
    line-height: 0;
    text-align: center;
    font-size: 16px
}
.clients .owl-theme .owl-prev>span,
.clients .owl-theme .owl-next>span,
.team .owl-theme .owl-prev>span,
.team .owl-theme .owl-next>span,
.news .owl-theme .owl-prev>span,
.news .owl-theme .owl-next>span,
.pricing .owl-theme .owl-prev>span,
.pricing .owl-theme .owl-next>span,
.testimonials .owl-theme .owl-prev>span,
.testimonials .owl-theme .owl-next>span,
.rooms-page .owl-theme .owl-prev>span,
.rooms-page .owl-theme .owl-next>span,
.rooms3 .owl-theme .owl-prev>span,
.rooms3 .owl-theme .owl-next>span,
.rooms2 .owl-theme .owl-prev>span,
.rooms2 .owl-theme .owl-next>span,
.rooms1 .owl-theme .owl-prev>span,
.rooms1 .owl-theme .owl-next>span {
    position: absolute;
    line-height: 0;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}
.clients .owl-theme .owl-nav [class*=owl-],
.team .owl-theme .owl-nav [class*=owl-],
.news .owl-theme .owl-nav [class*=owl-],
.pricing .owl-theme .owl-nav [class*=owl-],
.testimonials .owl-theme .owl-nav [class*=owl-],
.rooms-page .owl-theme .owl-nav [class*=owl-],
.rooms3 .owl-theme .owl-nav [class*=owl-],
.rooms2 .owl-theme .owl-nav [class*=owl-],
.rooms1 .owl-theme .owl-nav [class*=owl-] {
    width: 40px;
    height: 40px;
    line-height: 34px;
    background: transparent;
    color: #fff;
    font-size: 11px;
    margin-right: 15px;
    margin-left: 15px;
    cursor: pointer;
    border: 1px solid rgba(255,255,255, 0.7);
    border-radius: 100%;
    transition: all 0.2s ease-in-out;
    transform: scale(1.0);
}
.clients .owl-theme .owl-nav [class*=owl-]:hover,
.team .owl-theme .owl-nav [class*=owl-]:hover,
.news .owl-theme .owl-nav [class*=owl-]:hover,
.pricing .owl-theme .owl-nav [class*=owl-]:hover,
.testimonials .owl-theme .owl-nav [class*=owl-]:hover,
.rooms-page .owl-theme .owl-nav [class*=owl-]:hover,
.rooms3 .owl-theme .owl-nav [class*=owl-]:hover,
.rooms2 .owl-theme .owl-nav [class*=owl-]:hover,
.rooms1 .owl-theme .owl-nav [class*=owl-]:hover {
    transform: scale(0.9);
    background: transparent;
    border: 1px solid #b19777;
    color: #FFF;
}
@media screen and (max-width: 968px) {
    .clients .owl-theme .owl-nav,
    .team .owl-theme .owl-nav,
    .news .owl-theme .owl-nav,
    .pricing .owl-theme .owl-nav,
    .testimonials .owl-theme .owl-nav,
    .rooms-page .owl-theme .owl-nav,
    .rooms3 .owl-theme .owl-nav,
    .rooms2 .owl-theme .owl-nav,
    .rooms1 .owl-theme .owl-nav {
        display: none;
    }

}



/* ======= Sidebar style ======= */
#cappa-page {
    width: 100%;
    overflow: hidden;
    position: relative;
}
#cappa-aside {
    padding: 60px 45px 60px 45px;
    width: 20.9%;
    position: fixed;
    bottom: 0;
    top: 0;
    left: 0;
    overflow-x: hidden;
    z-index: 1001 !important;
    background: url('/img/sidebar-bg.png') no-repeat center center;
    background-size: cover;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s; 
}


/* Allgemeines CSS für das Bild */
.sidebar-image {
    position: fixed; /* Fixiert das Bild unabhängig vom Seiteninhalt */
    top: 0;
    left: 20%; /* Das Bild soll über die Sidebar hinaus ragen */
    width: 50px; /* Die Breite des Bildes */
    height: 100%; /* Höhe des Bildes = Höhe der Sidebar */
    z-index: 1099; /* Sicherstellen, dass das Bild über anderen Elementen liegt */
    background-image: url('/img/header/sidebar.png'); /* Bild-URL eingefügt */
    background-size: cover; /* Bild deckt den gesamten Bereich ab */
    background-position: center;
    background-repeat: no-repeat;
}

/* Responsive Anpassungen */
@media (max-width: 1500) {
    .sidebar-image {
        left: 25%; /* Reduziere den Abstand auf kleineren Bildschirmen */
        width: 40px; /* Eventuell kleinere Breite für mobile Geräte */
    }
}
@media (max-width: 1200) {
    .sidebar-image {
        left: 23%; /* Reduziere den Abstand auf kleineren Bildschirmen */
        width: 40px; /* Eventuell kleinere Breite für mobile Geräte */
    }
}
@media (max-width: 1100) {
    .sidebar-image {
        left: 28%; /* Reduziere den Abstand auf kleineren Bildschirmen */
        width: 40px; /* Eventuell kleinere Breite für mobile Geräte */
    }
}

@media (max-width: 768px) {
    .sidebar-image {
        visibility: hidden;
        left: 25%; /* Reduziere den Abstand auf kleineren Bildschirmen */
        width: 40px; /* Eventuell kleinere Breite für mobile Geräte */
    }
    .mobile-logo {
        width: 150px; /* Die Breite des Bildes */
        z-index: 1010; /* Sicherstellen, dass das Bild über anderen Elementen liegt */
        background-image: url('/img/LogoWeiss.png'); /* Bild-URL eingefügt */
        background-repeat: no-repeat;
    }
}

@media (max-width: 480px) {
    .sidebar-image {
        visibility: hidden;
        left: 20%; /* Noch weniger Abstand für sehr kleine Bildschirme */
        width: 30px; /* Weiter verkleinern, wenn nötig */
    }
}





@media screen and (max-width: 1200px) {
    #cappa-aside {
        width: 30%;
    }
}
@media screen and (max-width: 768px) {
    #cappa-aside {
        width: 270px;
        -moz-transform: translateX(-270px);
        -webkit-transform: translateX(-270px);
        -ms-transform: translateX(-270px);
        -o-transform: translateX(-270px);
        transform: translateX(-270px);
        padding: 60px 30px 0 30px;
    }
}
/* logo */
#cappa-aside .cappa-logo {
    text-align: left;
    margin-bottom: 60px;
    display: block;
}
#cappa-aside .cappa-logo h2 {
    font-family: var(--font-family-primary);
    font-size: 30px;
    font-weight: 500;
    display: block;
    width: 100%;
    position: relative;
    color: var(--main-highlight-color);
    letter-spacing: 3px;
    margin-bottom: 0;
    text-transform: uppercase;
}
#cappa-aside .cappa-logo span {
    display: block;
    font-family: var(--font-family-primary);
    font-size: 12px;
    color: #fff;
    font-weight: 400;
    letter-spacing: 6px;
    display: block;
    margin-top: 5px;
    line-height: 1.5em;
    text-transform: uppercase;
    margin-right: 5px;
}


/* Star rating  */
#cappa-aside .cappa-logo .star {
  position: relative;
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 0.9em;
  margin-right: 0.9em;
  margin-bottom: 2em;
  border-right: 0.3em solid transparent;
  border-bottom: 0.7em solid var(--main-highlight-color);
  border-left: 0.3em solid transparent;
  /* Controlls the size of the stars. */
  font-size: 5px;
}
#cappa-aside .cappa-logo .star:before, 
#cappa-aside .cappa-logo .star:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: 0.6em;
  left: -1em;
  border-right: 1em solid transparent;
  border-bottom: 0.7em solid var(--main-highlight-color);
  border-left: 1em solid transparent;
  transform: rotate(-35deg);
}
#cappa-aside .cappa-logo .star:after {
  transform: rotate(35deg);
}



#cappa-aside .cappa-logo .logo-img {
    width: 220px;
    z-index: 10000;
}
@media screen and (max-width: 768px) {
    #cappa-aside .cappa-logo {
        margin-bottom: 60px;
    }
}
#cappa-aside .cappa-logo a {
    display: inline-block;
    text-align: center;
    color: #b19777;
}
#cappa-aside .cappa-logo a span {
    display: block;
    margin-top: 0px;
}
/* Menu */
#cappa-aside .cappa-main-menu,
#cappa-aside .cappa-main-menu ul,
#cappa-aside .cappa-main-menu ul li,
#cappa-aside .cappa-main-menu ul li a {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    display: block;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

#cappa-aside .cappa-main-menu i {
    padding-left: 0px;
    font-size: 15px;
    color: rgb(111, 111, 111);
}

#cappa-aside .cappa-main-menu .active i {
    color: var(--main-highlight-color);
}

@media screen and (max-width: 768px) {
    #cappa-aside .cappa-main-menu {
        margin-bottom: 30px;
    }
}
#cappa-aside .cappa-main-menu ul ul {
    display: none;
}

#cappa-aside .cappa-main-menu ul ul li:last-of-type {
    padding-bottom: 11px;
}

#cappa-aside .cappa-main-menu > ul > li > a {
    font-family: var(--font-family-primar-bold);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25em;
    color: rgba(57, 57, 57, 1);
    margin: 11px 0 0 0;
    padding: 0 0 5px 0;
    list-style: none;
}
#cappa-aside .cappa-main-menu > ul > li > a:hover,
#cappa-aside .cappa-main-menu > ul > li.active > a,
#cappa-aside .cappa-main-menu > ul > li.open > a {
    color: var(--main-highlight-color);
}
#cappa-aside .cappa-main-menu > ul > li.open > a {
    font-family: var(--font-family-primary);
    font-size: 15px;
    line-height: 1.25em;
    color: var(--main-highlight-color);
    margin: 11px 0 0 0;
    padding: 0 0 11px 0;
    list-style: none;
    border-bottom: none;
}
#cappa-aside .cappa-main-menu > ul > li:last-child > a,
#cappa-aside .cappa-main-menu > ul > li.last > a {}
#cappa-aside .cappa-main-menu > ul > li > a:hover > span::after,
#cappa-aside .cappa-main-menu > ul > li.active > a > span::after,
#cappa-aside .cappa-main-menu > ul > li.open > a > span::after {
    border-color: rgba(255,255,255,0.05);
}

#cappa-aside .cappa-main-menu ul ul li a {
    padding: 8px 0 8px 0px;
    list-style: none;
    color: rgba(0, 0, 0, 0.8);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.25em;
}

#cappa-aside .cappa-main-menu ul ul li:hover > a,
#cappa-aside .cappa-main-menu ul ul li.open > a,
#cappa-aside .cappa-main-menu ul ul li.active > a {
    color: var(--main-highlight-color);
}
#cappa-aside .cappa-main-menu ul ul ul li a {
    margin-left: 0px;
}
#cappa-aside .cappa-main-menu > ul > li > ul > li:last-child > a,
#cappa-aside .cappa-main-menu > ul > li > ul > li.last > a {
    padding-bottom: 8px;
}


#cappa-aside .cappa-main-menu ul li a em, 
#cappa-aside .cappa-main-menu ul ul li a em {
    font-size: 10px;
    background-color: var(--main-highlight-color);
    padding: 1px 6px;
    color: #fff;
    border-radius: 0px;
    position: absolute;
    margin-left: 10px;
    top: 7px;
    font-style: normal;
}


/* footer */
#cappa-aside .cappa-footer {
    position: relative;
    bottom: 0;
    left: 0;
}
#cappa-aside .cappa-footer .footer-contact-text {
    font-size: 15px;
    margin: 0;
    color: #fff;
    padding-bottom: 20px;
}
#cappa-aside .cappa-footer .footer-contact-phone {
    font-size: 24px;
    color: var(--main-highlight-color);
    font-family: var(--font-family-primary);
    letter-spacing: 1px;
    font-weight: 400;
    display: block;
    -webkit-transition: all 500ms ease;
    transition: all 500ms ease;
}
#cappa-aside .cappa-footer .footer-contact-mail {
    font-size: 15px;
    line-height: 3em;
    color: rgba(0, 0, 0, 0.5);
    position: relative;
    display: inline-block;
    -webkit-transition: all 500ms ease;
    transition: all 500ms ease;
}
#cappa-aside .cappa-footer .footer-about-social-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 15px;
}
@media screen and (max-width: 768px) {
    #cappa-aside .cappa-footer {
    }
}




/* important offcanvason for menu */
body.offcanvason {
    overflow-x: hidden;
}
body.offcanvason #cappa-aside {
    -moz-transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    width: 270px;
    z-index: 999;
    position: fixed;
}
body.offcanvason #cappa-main,
body.offcanvason .cappa-nav-toggle {
    top: 0;
    -moz-transform: translateX(270px);
    -webkit-transform: translateX(270px);
    -ms-transform: translateX(270px);
    -o-transform: translateX(270px);
    transform: translateX(270px);
}



/* ======= Content style ======= */
#cappa-main {
    width: calc(100% - 20.9%); /* Breite des Hauptinhalts ohne Sidebar */
    float: right; /* Hauptinhalt rechtsbündig */
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    min-height: 100vh;
    position: relative;
    background-color: #f9f8f6;
    z-index: 1098 !important; /* Hintergrund-Z-Index des Hauptinhalts */
}
@media screen and (max-width: 1200px) {
    #cappa-main {
        width: 70%;
    }
}
@media screen and (max-width: 768px) {
    #cappa-main {
        width: 100%;
        
    }
    #topmargin {
        margin-top: 5vh !important;
         
    }
    .container {
        padding-right: 30px;
        padding-left: 30px;
    }
}


/* ======= Navigation style ======= */
#cappa-main-menu {
    margin-bottom: 90px;
}
.cappa-nav-toggle {
    cursor: pointer;
    text-decoration: none;
}
.cappa-nav-toggle.active i::before,
.cappa-nav-toggle.active i::after {
    background: #fff;
}
.cappa-nav-toggle.dark.active i::before,
.cappa-nav-toggle.dark.active i::after {
    background: #171717;
}
.cappa-nav-toggle:hover,
.cappa-nav-toggle:focus,
.cappa-nav-toggle:active {
    outline: none;
    border-bottom: none !important;
}
.cappa-nav-toggle i {
    position: relative;
    display: -moz-inline-stack;
    display: inline-block;
    zoom: 1;
    width: 20px;
    height: 1px;
    color: #fff;
    font: bold 14px/.4 Helvetica;
    text-transform: uppercase;
    text-indent: -55px;
    background: #fff;
    -webkit-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out;
    top: -5px;
}
.cappa-nav-toggle i::before,
.cappa-nav-toggle i::after {
    content: '';
    width: 20px;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 0;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}
.cappa-nav-toggle.dark i {
    position: relative;
    color: #171717;
    background: #171717;
    -webkit-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out;
}
.cappa-nav-toggle.dark i::before,
.cappa-nav-toggle.dark i::after {
    background: #171717;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}
.cappa-nav-toggle i::before {
    top: -7px;
}
.cappa-nav-toggle i::after {
    bottom: -7px;
}
.cappa-nav-toggle:hover i::before {
    top: -10px;
}
.cappa-nav-toggle:hover i::after {
    bottom: -10px;
}
.cappa-nav-toggle.active i {
    background: transparent;
}
.cappa-nav-toggle.active i::before {
    top: 0;
    -webkit-transform: rotateZ(45deg);
    -moz-transform: rotateZ(45deg);
    -ms-transform: rotateZ(45deg);
    -o-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
}
.cappa-nav-toggle.active i::after {
    bottom: 0;
    -webkit-transform: rotateZ(-45deg);
    -moz-transform: rotateZ(-45deg);
    -ms-transform: rotateZ(-45deg);
    -o-transform: rotateZ(-45deg);
    transform: rotateZ(-45deg);
}
.cappa-nav-toggle {
    position: fixed;
    left: 0px;
    top: 0px;
    z-index: 9999;
    cursor: pointer;
    opacity: 1;
    visibility: hidden;
    padding: 10px 13px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    background: var(--main-highlight-color);
    margin: 15px 15px;
    border-radius: 23%;
}
@media screen and (max-width: 768px) {
    #cappa-main-menu {
        margin-bottom: 60px;
    }
    .cappa-nav-toggle {
        opacity: 1;
        visibility: visible;
    }
}

.news .owl-theme .owl-nav [class*=owl-] {
    opacity: 0;
}
.news .owl-theme:hover .owl-nav [class*=owl-] {
    opacity: 1;
}


/* ======= Section style ======= */
.section-padding {
    padding: 30px 0;
}
.section-padding2 {
    padding: 0 0 120px 0;
}
.section-padding h6 {
    color: var(--main-highlight-color);
    font-size: 20px;
    margin-bottom: 20px;
}
.section-subtitle {
    font-size: 10x;
    font-family: var(--font-family-primary);
    font-weight: 400;
    color: var(--main-highlight-color);
    text-transform: uppercase;
    position: relative;
    letter-spacing: 6px;
    margin-bottom: 5px;
}
.section-subtitle span {
 color: var(--main-highlight-color);
}
.section-title {
    font-size: 38px;
    font-family: var(--font-family-primary);
    font-weight: 400;
    color: #1e1e1e;
    position: relative;
    margin-bottom: 20px;
    line-height: 1.25em;
}
.section-title span {
    color: #fff;
}



/* ======= Header style ======= */
.header {
    min-height: 100vh;
    overflow: hidden;
    position: relative;
}
.header .caption .o-hidden {
    display: inline-block;
}
.header .caption h2 {
    font-weight: 400;
    font-size: 30px;
}

.header .caption span i.star-rating {
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
}

.header .caption h4 {
    font-family: var(--font-family-primary);;
    font-size: 15px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 6px;
    color: #fff;
    margin-bottom: 20px;
    margin-top: 20px;
    -webkit-animation-delay: .4s;
    animation-delay: .4s;
}

.header .caption h3 {
    position: relative;
    margin-bottom: 20px;
    font-family: var(--font-family-primary);;
    font-size: 48px;
    text-transform: uppercase;
    line-height: 1.35em;
    -webkit-animation-delay: .6s;
    animation-delay: .6s;
    color: #fff;
    font-weight: 400;
    letter-spacing: 7px;
}
.header .caption h1 {
    position: relative;
    margin-bottom: 20px;
    font-family: var(--font-family-primary);;
    font-size: 55px;
    text-transform: uppercase;
    line-height: 1.35em;
    -webkit-animation-delay: .6s;
    animation-delay: .6s;
    color: #fff;
    font-weight: 400;
    letter-spacing: 15px;
}
.header .caption p {
    font-size: 18px;
    line-height: 1.75em;
    margin-bottom: 0;
    color: #fff;
    -webkit-animation-delay: .6s;
    animation-delay: .6s;
    margin-right: 15px;
}
.header .caption p span {
    letter-spacing: 5px;
    text-transform: uppercase;
    margin: 0 5px;
    padding-right: 14px;
    position: relative;
}
.header .caption p span:last-child {
    padding: 0;
}
.header .caption p span:last-child:after {
    display: none;
}
.header .caption p span:after {
    content: '';
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #222;
    position: absolute;
    top: 10px;
    right: 0;
    opacity: .5;
}
.header .caption .butn-light {
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
}

.header .caption .butn-dark {
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
}
.header .social a {
    color: #eee;
    font-size: 20px;
    margin: 10px 15px;
}
hr {
    margin-top: 5px;
    margin-bottom: 20px;
    border: 0;
    border-top: 1px solid rgba(255,255,255,0.3);
}


/* ======= Slider-fade style (Homepage Slider) ======= */
.slider-fade .owl-item {
    height: 100vh;
    position: relative;
}
.slider-fade .item {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center;
}
.slider-fade .item .caption {
    z-index: 9;
}
/* slider-fade owl-nav next and prev */
.slider-fade .owl-nav {
    position: absolute;
    bottom: 7%;
    right: 12%;
}
.slider-fade .owl-prev {
    float: left;
}
.slider-fade .owl-next {
    float: right;
}
.slider-fade .owl-theme .owl-nav [class*=owl-] {
    width: 40px;
    height: 40px;
    line-height: 34px;
    background: transparent;
    border-radius: 100%;
    color: #fff;
    font-size: 10px;
    margin-right: 3px;
    cursor: pointer;
    border: 1px solid rgba(0, 0, 0, 0.5);
    transition: all 0.2s ease-in-out;
    transform: scale(1.0);
}
.owl-theme .owl-nav [class*=owl-]:hover {
    transform: scale(0.9);
    background: transparent;
    border: 1px solid var(--main-highlight-color);
    color: #fff;
}
@media screen and (max-width: 768px) {
    .slider-fade .owl-nav {
        display: none;
    }
}

/* owl-dots for slider */
.slider-fade .owl-dots {
    position: absolute;
    text-align: center;
    top: 50%;
    right: 5%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 5px;
    text-align: right !important
}
.slider-fade .owl-dots:after {
    position: absolute;
    top: -70px;
    left: 50%;
    right: 0;
    -webkit-transform: translateX(50%);
    -ms-transform: translateX(50%);
    transform: translateX(50%);
    width: 1px;
    height: 60px;
    content: '';
    background: rgba(255, 255, 255, .3)
}
.slider-fade .owl-dots:before {
    position: absolute;
    bottom: -70px;
    left: 50%;
    right: 0;
    -webkit-transform: translateX(50%);
    -ms-transform: translateX(50%);
    transform: translateX(50%);
    width: 1px;
    height: 60px;
    content: '';
    background: rgba(255, 255, 255, .3)
}
.slider-fade .owl-dots .owl-dot {
    text-align: center
}
.slider-fade .owl-dots {
    counter-reset: dots
}
.slider-fade .owl-dots .owl-dot {
    position: relative;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
    display: block;
    color: #fff;
    font-family: var(--font-family-primary);
}
.slider-fade .owl-dots .owl-dot span {
    background: transparent;
    display: none
}
.slider-fade .owl-dots .owl-dot.active {
    color: var(--main-highlight-color)
}
.slider-fade .owl-dot:before {
    counter-increment: dots;
    content: counter(dots)
}




/* reservation field for slider */
.header div.reservation {
    position: absolute;
    top: 30px;
    z-index: 9;
    right: 6%;
}

.header div.reservation .call {
    color: #fff;
    text-transform: uppercase;
    font-family: var(--font-family-primary);
    font-weight: 400;
    letter-spacing: 3px;
    font-size: 12px;
    line-height: 1.75em;
    margin-top: 5px;
    float: left;
} 

.header div.reservation .call span {
    font-family: var(--font-family-primary);
    font-size: 20px;
    color: var(--main-highlight-color);
    letter-spacing: 0px;
} 

.header div.reservation .icon {
    -webkit-animation: pulse 2s infinite;
    animation: pulse 2s infinite;
    border-radius: 100%;
    margin-right: 10px;
    float: left;
}
.header div.reservation .icon i {
    color: #FFF;
    font-size: 30px;
    margin-top: 10px;
}
@media screen and (max-width: 768px) {
    .header div.reservation {
        display: none;
    }
}


/* ======= Slider style (Inner Page Slider) ======= */
.slider .owl-item {
    height: 100vh;
    position: relative;
}
.slider .item {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center;
}
.slider .item .caption{
    z-index: 9;
}
.slider .owl-theme .owl-dots {
    position: absolute;
    width: 100%;
    bottom: 3%;
    right: 12%;
    text-align: right;
}
.slider .owl-theme .owl-dots .owl-dot span {
    width: 13px;
    height: 13px;
    margin: 0 3px;
    border-radius: 50%;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.5);
}
.slider .owl-theme .owl-dots .owl-dot.active span,
.slider .owl-theme .owl-dots .owl-dot:hover span {
    background: var(--main-highlight-color);
    border: 1px solid var(--main-highlight-color);
}
/* bounce */
.header .arrow {
    position: absolute;
    bottom: 40px;
    width: 100%;
    text-align: center;
    z-index: 8;
}
.header .arrow.bounce {
    -webkit-animation: bounce 2s infinite;
    animation: bounce 2s infinite;
}
.header .arrow i {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    color: #fff;
    font-size: 15px;
    border: 1px solid rgba(255,255,255,0.3);
    border-radius: 100%;
}

.header .arrow i:hover {
    border: 1px solid var(--main-highlight-color);
}
.header .arrow i:hover:after {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0;
    -webkit-transition: all .5s;
    transition: all .5s;

}


/* ===== Kenburns Slider style ===== */
.kenburns-section {
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  min-height: 100vh;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.kenburns-section::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -5;
  background: var(--main-primary-text);
}
.kenburns-inner {
  position: relative;
  z-index: 15;
}

.kenburns-inner .caption {
    position: relative;
}

.kenburns-inner .caption h4 {
    font-family: var(--font-family-primary);
    font-size: 15px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 6px;
    color: #fff;
    margin-bottom: 20px;
    margin-top: 20px;
    -webkit-animation-delay: .4s;
    animation-delay: .4s;
}

.kenburns-inner .caption h3 {
    position: relative;
    margin-bottom: 20px;
    font-family: var(--font-family-primary);
    font-size: 48px;
    text-transform: uppercase;
    line-height: 1.35em;
    -webkit-animation-delay: .6s;
    animation-delay: .6s;
    color: #fff;
    font-weight: 400;
    letter-spacing: 5px;
}
.kenburns-inner .caption h1 {
    position: relative;
    margin-bottom: 20px;
    font-family: var(--font-family-primary);
    font-size: 55px;
    text-transform: uppercase;
    line-height: 1.35em;
    -webkit-animation-delay: .6s;
    animation-delay: .6s;
    color: #fff;
    font-weight: 400;
    letter-spacing: 15px;
}
#kenburnsSliderContainer .vegas-overlay {}
@media screen and (max-width: 767px) {
.kenburns-inner .caption h4 {
    font-size: 12px;
} 
    
.kenburns-inner .caption h3 {
    font-size: 30px;
    margin-bottom: 15px;
    letter-spacing: 5px;
    line-height: 1.35em;
}
    
.kenburns-inner .caption h1 {
    font-size: 30px;
    margin-bottom: 15px;
    letter-spacing: 5px;
    line-height: 1.35em;
}
    .kenburns-inner .caption {
    text-align: center;
    }
}
/* reservation field for Kenburns slider */
.kenburns-section div.reservation {
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    text-orientation: sideways;
    text-orientation: sideways;
    margin: 0;
    position: absolute;
    top: 0;
    left: 40px;
    height: 60%;
    z-index: 9;
}
.kenburns-section div.reservation .call {
    color: #fff;
    text-transform: uppercase;
    font-family: var(--font-family-primary);
    font-weight: 400;
    letter-spacing: 5px;
    font-size: 12px;
    line-height: 1.75em;
    margin-top: 15px;
} 
.kenburns-section div.reservation .call span {
       font-family: var(--font-family-primary);
    font-size: 24px;
    color: var(--main-highlight-color);
    letter-spacing: 1px;
} 
.kenburns-section div.reservation .icon {
    position: absolute;
    left: -1px;
    top: -50px;
    width: 50px;
    height: 50px;
    border: 1px solid rgba(0, 0, 0, 0.5);
    -webkit-animation: pulse 2s infinite;
    animation: pulse 2s infinite;
    border-radius: 100%;
}
.kenburns-section div.reservation a .icon i {
    color: #FFF;
    font-size: 24px;
    transform: rotate(90deg);
}
.kenburns-section div.reservation a .icon:hover {
    border: 1px solid var(--main-highlight-color);
}


/* bounce */
.kenburns-section .arrow {
    position: absolute;
    bottom: 40px;
    width: 100%;
    text-align: center;
    z-index: 80;
}
.kenburns-section .arrow.bounce {
    -webkit-animation: bounce 2s infinite;
    animation: bounce 2s infinite;
}
.kenburns-section .arrow i {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    color: #fff;
    font-size: 15px;
    border: 1px solid rgba(255,255,255,0.3);
    border-radius: 100%;
}

.kenburns-section .arrow i:hover {
    border: 1px solid var(--main-highlight-color);
}
.kenburns-section .arrow i:hover:after {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0;
    -webkit-transition: all .5s;
    transition: all .5s;

}

@media screen and (max-width: 768px) {
    .kenburns-section div.reservation {
        display: none;
    }
}


.banner-header {
    min-height: 215px;
    background-size: cover; /* Sorgt dafür, dass das Bild vollständig sichtbar ist */
    background-position: center; /* Zentriert das Bild */
    background-repeat: no-repeat; /* Verhindert Wiederholungen */
    display: flex;
    align-items: center;
    padding-left: 20px;
    color: #fff;
}


.banner-header .text-wrapper {
    text-align: left; /* Left-align the text */
    max-width: 100%; /* Ensure it doesn't overflow */
}

.banner-header h1 {
    font-size: 35px; /* Large size for H1 */
    font-family: var(--font-family-primary);
    font-weight: 700;
    margin: 0 0 10px; /* Space below H1 */
    line-height: 1.2em;
    letter-spacing: 2px;
    color: var(--main-primary-text);
}

.banner-header p {
    font-size: 15px;
    font-family: Barlow;
    margin: 0;
    line-height: 1.5em;
    color: 000;
}

.banner-header p a {
    color: var(--main-highlight-color); /* Link color */
    text-decoration: none;
}

@media screen and (max-width: 967px) {
    .banner-header {
        padding-left: 30px; /* Adjust padding for smaller screens */
    }

    .banner-header h1 {
        font-size: 25px !important; /* Smaller H1 size */
    }

    .banner-header p {
        font-size: 12px; /* Smaller paragraph size */
    }
}



@media screen and (max-width: 767px) {
    .banner-header {
        height: 180px;
        background-size: cover;
        background-position: center;
    }

    .banner-header h1 {
        top: 45%;
    }
    .banner-header h5 {
        font-size: 12px;
    }
    
    .banner-header.full-height h1 {
        font-size: 30px;
        margin-bottom: 15px;
        letter-spacing: 10px;
        line-height: 1.35em;
    }

     .banner-header.full-height h3 {
        font-size: 30px;
        margin-bottom: 15px;
        letter-spacing: 10px;
        line-height: 1.35em;
    }
    
    .banner-header.full-height h4 {
        font-size: 12px;
    }
    
    .section-title {
        font-size: 25px;
        font-family: var(--font-family-primary);
        font-weight: 400;
        color: #1e1e1e;
        position: relative;
        margin-bottom: 20px;
        line-height: 1.25em;
    }
    .section-subtitle {
        font-size: 10px;
        font-family: var(--font-family-primary);
        font-weight: 400;
        color: var(--main-highlight-color);
        text-transform: uppercase;
        position: relative;
        letter-spacing: 6px;
        margin-bottom: 5px;
        }
        .section-padding {
            padding: 10px 0;
            }
}


/* =======  Video Background  ======= */
.video-fullscreen-wrap {
    height: 100vh;
    overflow: hidden;
  }
  
  .video-fullscreen-wrap .caption {
    position: relative;
  }
  
  .video-fullscreen-wrap .caption.textleft {
    text-align: left;
  }
  
  .video-fullscreen-video {
    height: 100%;
  }
  
  .video-fullscreen-wrap video {
    width: auto;
    height: 100vh;
    min-width: 100%;
    min-height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    object-position: center center; /* Verschiebt das Video nach oben */
    background-color: black;
  }
  
  @media (max-width: 968px) { /* Desktop-Ansicht */
    .video-fullscreen-wrap video {
    -o-object-fit: cover;
     object-fit: cover;
      object-position: 30% 50%; /* Verschiebt das Video nach oben */
    }
  }
  
  .video-fullscreen-wrap .video-fullscreen-inner {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end; /* Anpassung an "right" könnte problematisch sein */
  }
.video-lauch-wrapper {
  border: none;
  background: none;
  width: 100%;
  padding: 0;
}
.video-fullscreen-wrap .overlay {
/*  background-image: linear-gradient(to bottom right, #3d4246000, #3d4246000);*/
  opacity: 1;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  box-sizing: border-box;
  text-align: center; 
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 4;
}
.video-fullscreen-wrap .butn-dark a {
    color: #fff;
}
.position-relative {
  position: relative !important;
}


/* ======= Team style ======= */
.team .item {
    margin-bottom: 30px;
}
.team .item:hover .info .social {
    top: 0;
}
.team .info {
    text-align: center;
    padding: 30px 20px;
    position: relative;
    overflow: hidden;
    background: rgba(43, 43, 43, 0);
}
.team .info h6 {
    font-size: 20px;
    margin-bottom: 5px;
    color: #fff;
}
.team .info p {
    margin-bottom: 0px;
    color: rgba(0, 0, 0, 0.5);
}
.team .info .social {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 100%;
    background: #2b2b2b;
    -webkit-transition: all .4s;
    transition: all .4s;
}
.team .info .social a {
    font-size: 15px;
    color: var(--main-highlight-color);
    margin: 0 5px;
}
.team .info .social a:hover {
    color: #fff;
}
.team .info .social p {
    margin-bottom: 0px;
    color: rgba(0, 0, 0, 0.5);
}


/* ======= Rooms1 style ======= */
.rooms1 .item {
    position: relative;
    overflow: hidden;
    margin-bottom: 30px;
}
.rooms1 .item:hover img {
    -webkit-filter: none;
    filter: none;
    -webkit-transform: scale(1.09, 1.09);
    transform: scale(1.09, 1.09);
    -webkit-filter: brightness(70%);
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    -ms-transition: all 1s ease;
    transition: all 1s ease;
}
.rooms1 .item:hover .con {
    bottom: 0;
}
.rooms1 .item img {
    -webkit-transition: all .5s;
    transition: all .5s;
}
.rooms1 .item .category {
  position: absolute;
    top: 20px;
    right: 20px;
    z-index: 3;
    writing-mode: vertical-rl;
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    text-orientation: mixed;
    text-transform: uppercase;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 3px;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.5);
    font-family: var(--font-family-primary);
    padding: 10px 3px;
    line-height: 1.5em;
}
.rooms1 .item .category a {
    color: #fff;
}
.rooms1 .item .category:hover {
    color: #fff;
}
.rooms1 .item .con {
    padding: 20px;
    position: absolute;
    bottom: -60px;
    left: 0;
    width: 100%;
    -webkit-transition: all .3s;
    transition: all .3s;
    text-align: left;
    z-index: 20;
    height: auto;
    box-sizing: border-box;
    background: -moz-linear-gradient(top, transparent 0, rgba(0, 0, 0, .1) 2%, rgba(0, 0, 0, .75) 90%);
    background: -webkit-linear-gradient(top, transparent 0, rgba(0, 0, 0, .01) 2%, rgba(0, 0, 0, .75) 90%);
    background: linear-gradient(to bottom, transparent 0, rgba(0, 0, 0, .01) 2%, rgba(0, 0, 0, .75) 90%);
}
.rooms1 .item .con h6,
.rooms1 .item .con h6 a {
    position: relative;
    color: #fff;
    font-size: 15px;
    font-family: var(--font-family-primary);
    display: inline;
    letter-spacing: 3px;
    text-transform: uppercase;
}
.rooms1 .item .con h6 i {
    font-size: 6px;
    margin-right: 2px;
}
.rooms1 .item .con h5,
.rooms1 .item .con h5 a {
    position: relative;
    color: #fff;
    font-size: 27px;
    font-weight: 400;
    margin-top: 5px;
    margin-bottom: 5px;
}
.rooms1 .item .con p {
    color: #fff;
    font-size: 20px;
}
.rooms1 .item .con i {
    color: #fff;
    font-size: 18px;
}
.rooms1 .item .con i:hover {
    color: #fff;
}
.rooms1 .item .con .butn-light {
    margin-left: 0;
    border-radius: 30px;
    border-color: #999;
    padding: 11px 30px;
}
.rooms1 .item .con .butn-light:hover {
    border-color: var(--main-highlight-color);
}
/* line animation */
.rooms1 .item .line {
    text-align: center;
    height: 1px;
    width: 60px;
    background-color: rgba(255, 255, 255, 0.2);
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease-in-out;
    margin: auto 0 30px;
}
.rooms1 .item:hover .line {
    width: 100%;
    transition-property: all;
    transition-duration: 0.8s;
    transition-timing-function: ease-in-out;
}
/* facilities */
.rooms1 .facilities ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.rooms1 .facilities ul li {
  color: #fff;
  font-size: 10px;
  text-transform: uppercase;
    letter-spacing: 3px;
  line-height: 1.2em;
  padding-bottom: 20px;
    float: left;
}
.rooms1 .facilities ul li i {
  margin-right: 10px;
}
/* permalink */
.rooms1 .item .con .permalink {
    font-family: var(--font-family-primary);
    font-size: 15px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #fff;
    height: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    display: inline;
}
.rooms1 .item .con .permalink a {
    color: #fff;
    text-align: right;
}
.rooms1 .item .con .permalink i {
   font-size: 10px;
    text-align: right;
}
.rooms1 .item .con .permalink a:hover,
.rooms1 .item .con .permalink i:hover {
color: var(--main-highlight-color);
}


/* ======= Rooms 2 style  ======= */
.rooms2 {
    position: relative;
}
.rooms2:last-child {
    margin-bottom: 20px;
}
.rooms2 figure {
    margin: 0;
    position: relative;
    width: 66.666667%;
    margin-left: auto;
}
.rooms2.left figure {
    margin-left: 0;
    margin-right: auto;
}
.rooms2 figure img:hover {
    transform: scale(0.98);
}
.rooms2 .caption {
    background: #222;
    position: absolute;
    left: 0;
    top: 50%;
    width: 50%;
    padding: 4% 4% 4% 0;
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

.rooms2.left .caption {
    left: auto;
    right: 0;
    background: #222;
    padding: 4% 0 4% 4%;
}


.rooms2 .caption.padding-left {
    padding-left: 4%;
}

.rooms2.left .caption.padding-left {
    padding-right: 4%;
}


.rooms2 .caption h4,
.rooms2 .caption h4 a {
    font-size: 35px;
    color: #fff;
    margin-bottom: 5px;
}
.rooms2 .caption h3,
.rooms2 .caption h3 a {
    font-size: 24px;
    color: var(--main-highlight-color);
    margin-bottom: 0px;
}
.rooms2 .caption h3 span {
    font-size: 15px;
    color: #999;
    font-family: var(--font-family-primary);
}
.rooms2 .caption h6 {
    display: inline-block;
    color: #999;
    font-family: var(--font-family-primary);
    font-weight: 400;
    font-size: 10px;
    margin-bottom: 10px;
    letter-spacing: 5px;
    text-transform: uppercase;
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start;
}
.rooms2 .caption .info-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.rooms2 .caption .info-wrapper .more {
    color: #999;
    text-decoration: none;
    font-size: 14px;
}
.rooms2 .caption .info-wrapper .more i {
    color: #999;
    font-size: 10px;
}
.rooms2 .caption .info-wrapper .date {
    color: #222;
    font-family: var(--font-family-primary);
    font-size: 15px;
    background: transparent;
    border: 1px solid var(--main-highlight-color);
    text-transform: uppercase;
    letter-spacing: 3px;
    padding: 3px 12px;
}
.rooms2 .caption .info-wrapper .date:hover {
    background: transparent;
    border: 1px solid #222;
    color: #222;
}
@media (max-width: 991.98px) {
    .rooms2 figure {
        width: auto;
        margin: 0;
    }
    .rooms2 .caption {
        position: relative;
        left: 0;
        top: 0;
        width: auto;
        padding: 30px 20px;
        -ms-transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        
    }
    
    .rooms2 .caption,
    .rooms2.left .caption {
        background: #1e1e1e;
    }
}
/* hr style */
hr {
    margin-top: 5px;
    margin-bottom: 20px;
    border: 0;
}
hr.border-1 {
    border-top: 1px solid #73542f;
}
hr.border-2 {
    border-top: 1px solid #73542f;
}
/* button link */
.link-btn {
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    font-family: var(--font-family-primary);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 3px;
}
.link-btn i {
    margin-left: 3px;
    font-size: 15px;
    color: var(--main-highlight-color);
}
.link-btn:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    background-color: var(--main-highlight-color);
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}
.link-btn:hover::before {
    width: 100%
}
/* reservation button */
.reservations {
    display: flex;
    align-items: center;
}
.reservations .icon {
    position: relative;
    top: 3px;
}
.reservations .icon span {
    font-size: 35px;
    color: var(--main-highlight-color);
}
.reservations .icon.color-1 span {
    font-size: 35px;
    color: #fff;
}
.reservations .text {
    margin-left: 10px;
}
.reservations .text p {
    font-size: 11px;
    margin: 0;
    
}
.reservations .text a {
    color: var(--main-highlight-color);
}
.reservations .text a.color-1 {
    color: #fff;
}


/* ======= Rooms 3 ======= */
.rooms3 {
    color: #999;
}
.rooms3 .square-flip {
    -webkit-perspective: 1000;
    -moz-perspective: 1000;
    -ms-perspective: 1000;
    perspective: 1000;
    -webkit-transform: perspective(1000px);
    -moz-transform: perspective(1000px);
    -ms-transform: perspective(1000px);
    transform: perspective(1000px);
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
    position: relative;
    background-size: cover;
    background-position: center center;
}
.rooms3 .square-flip {
    min-height: 450px;
    margin-bottom: 30px;
}
.rooms3 .square,
.rooms3 .square2 {
    width: 100%;
    height: 100%;
}
.rooms3 .square {
    background-size: cover;
    background-position: center center;
    -webkit-transition: -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    -o-transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25), -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    overflow: hidden;
    position: absolute;
    top: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.rooms3 .square .category {
  position: absolute;
    top: 20px;
    left: 20px;
    z-index: 3;
    writing-mode: vertical-rl;
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    text-orientation: mixed;
    text-transform: uppercase;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 3px;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.5);
    font-family: var(--font-family-primary);
    padding: 10px 3px;
    line-height: 1.5em;
}
.rooms3 .square .category a {
    color: #fff;
}
.rooms3 .square .category:hover {
    color: #fff;
}
.rooms3 .square h4 {
    color: #fff;
    font-size: 27px;
    text-align: left;
    margin-bottom: 0;
    display: inline-flex;
}
.rooms3 .square h6, .rooms3 .square h6 a {
    position: relative;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    font-family: var(--font-family-primary);
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.rooms3 .square-flip .square {
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    z-index: 1;
}
.rooms3 .square-flip:hover .square {
    -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}
.rooms3 .square2 {
    background: #2b2b2b;
    background-size: cover;
    background-position: center center;
    -webkit-transition: -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    -o-transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25), -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    overflow: hidden;
    position: absolute;
    top: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.rooms3 .square2.bg-white {
    background: #2b2b2b;
}


.rooms3 .square2:before {
    top: 25px;
    left: 15px;
    right: 15px;
    bottom: 25px;
}
.rooms3 .square2 h4 {
    font-size: 30px;
    color: #fff;
}
.rooms3 .square2 h6 {
    position: relative;
    color: var(--main-highlight-color);
    font-size: 15px;
    font-weight: 400;
    font-family: var(--font-family-primary);
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.rooms3 .square2 p {
    font-size: 15px;
    color: rgba(0, 0, 0, 0.5);
}
.rooms3 .square2 .icon img {
    width: 60px;
    color: rgba(0, 0, 0, 0.5);
    margin-bottom: 20px;
}
.rooms3 .btn-line a {
    border-bottom: 1px solid rgba(0, 0, 0, 0.5);
    color: rgba(0, 0, 0, 0.5);
}
.rooms3 .btn-line a:hover {
    border-bottom: 1px solid var(--main-highlight-color);
    color: rgba(0, 0, 0, 0.5);
}
.rooms3 .square-flip .square2 {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    z-index: 1;
}
.rooms3 .square-flip:hover .square2 {
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}
.rooms3 .square-container {
    padding: 40px;
    text-align: right;
    height: 450px;
    position: relative;
    -webkit-transition: -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    -o-transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25), -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    -webkit-transform: translateX(0px) scale(1);
    -ms-transform: translateX(0px) scale(1);
    transform: translateX(0px) scale(1);
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    z-index: 2;
}
.rooms3 .square-container .box-title {
    /*	width: 100%;*/
}
.rooms3 .square-flip:hover .square-container {
    -webkit-transform: translateX(-650px) scale(0.88);
    -ms-transform: translateX(-650px) scale(0.88);
    transform: translateX(-650px) scale(0.88);
}
.rooms3 .square-container2 {
    padding: 30px;
    text-align: left;
    position: relative;
    top: 50%;
    -webkit-transition: -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    -o-transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    transition: transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25), -webkit-transform 0.9s cubic-bezier(0.68, -0.55, 0.265, 1.25);
    -webkit-transform: translateY(-50%) translateX(650px) translateZ(60px) scale(0.88);
    transform: translateY(-50%) translateX(650px) translateZ(60px) scale(0.88);
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    z-index: 2;
}
.rooms3 .square-flip:hover .square-container2 {
    -webkit-transform: translateY(-50%) translateX(0px) translateZ(0px) scale(1);
    transform: translateY(-50%) translateX(0px) translateZ(0px) scale(1);
}
.rooms3 .flip-overlay {
    display: block;
    background: var(--main-primary-text);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: .2;
}
@media screen and (max-width: 991px) {
    .rooms3 .square-flip {
        margin-bottom: 30px;
    }
    .rooms3 {
        padding-bottom: 70px;
    }
}


/* ======= Rooms Page style ======= */
.rooms-page h6 {
    position: relative;
    font-family: var(--font-family-primary);
    font-size: 24px;
    color: #fff;
}
/* page list */
.page-list {
    position: relative;
    display: block;
}
.page-list li {
    position: relative;
    display: flex;
    align-items: center;
}
.page-list li+li {
    margin-top: 10px;
}
.page-list-icon {
    display: flex;
    align-items: center;
}
.page-list-icon span {
    font-size: 18px;
    color: var(--main-highlight-color);
}
.page-list-text {
    margin-left: 15px;
}
.page-list-text p {
    font-size: 15px;
    margin: 0;
}
/* owl-nav next and prev */
.rooms-page .owl-nav {
    position: absolute;
    bottom: 3%;
    left: 12%;
}
.rooms-page .owl-prev {
    float: left;
}
.rooms-page .owl-next {
    float: right;
}
.rooms-page .owl-theme .owl-nav [class*=owl-] {
    width: 40px;
    height: 40px;
    line-height: 34px;
    background: transparent;
    border-radius: 100%;
    color: rgba(255, 255, 255, 0.75);
    font-size: 11px;
    margin-right: 3px;
    cursor: pointer;
    border: 1px solid rgba(0, 0, 0, 0.3);
    transition: all 0.2s ease-in-out;
    transform: scale(1.0);
}
.rooms-page .owl-theme .owl-nav [class*=owl-]:hover {
    transform: scale(0.9);
    background: transparent;
    border: 1px solid #b19777;
    color: #b19777;
}
@media screen and (max-width: 768px) {
    .rooms-page .owl-nav {
        display: none;
    }
}


/* ======= Facilties style ======= */
.facilties .single-facility {
    background: transparent;
    padding: 30px 20px;
    -webkit-transition: .5s;
    transition: .5s;
    position: relative;
    z-index: 1;
    margin-bottom: 30px;
    line-height: 1;
    border: 1px solid rgba(43, 43, 43, 0.15)
}
.facilties .single-facility h5 {
    font-size: 21px;
    color: #202020;
    margin-bottom: 10px;
}
.facilties .single-facility:hover h5 {
  color: #131313;
  -webkit-transition: .5s;
  transition: .5s;
}
/*
.facilties .facility-shape:hover span {
  -webkit-transform: rotate(360deg);
          transform: rotate(360deg);
}
*/
.facilties .single-facility span {
  font-size: 45px;
  color: var(--main-highlight-color);
  line-height: 1;
  margin-bottom: 20px;
  display: inline-block;
  -webkit-transition: .5s;
  transition: .5s;
}
.facilties .single-facility p {
    margin: 0;
    color: var(--main-highlight-color);
}
.facilties .single-facility .facility-shape {
    position: absolute;
    opacity: 0.02;
    z-index: -1;
    bottom: 15px;
    left: 120px;
}
.facilties .single-facility .facility-shape span {
  font-size: 140px;
  color: #222;
}
/* hr */
hr {
    margin-top: 5px;
    margin-bottom: 20px;
    border: 0;
    border-top: 1px solid rgba(255,255,255,0.25);
}
/* room facilities */
.room-facilities .wrap {
    background: #222;
    padding: 30px;
}
.room-facilities ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.room-facilities ul li {
  color: #999;
  font-size: 15px;
  padding-bottom: 10px;
}
.room-facilities ul li i {
    margin-right: 10px;
    color: var(--main-highlight-color);
    font-size: 20px;
}


/* ======= Services style ======= */
.services .img {
  position: relative;
    overflow: hidden;
}
.services .img:hover img {
    -webkit-filter: none;
    filter: none;
    -webkit-transform: scale(1.09, 1.09);
    transform: scale(1.09, 1.09);
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    -ms-transition: all 1s ease;
    transition: all 1s ease;
}
.services .img img {
    -webkit-transition: all .5s;
    transition: all .5s;
}
.services .content {
  width: 100%;
  padding: 30px;
}
.services .content .date {
  display: table-cell;
  position: relative;
  width: 80px;
  z-index: 2;
}
.services .content .date h3 {
    font-size: 65px;
    font-weight: 500;
    color: var(--main-highlight-color);
    margin-bottom: 0px;
}
.services .content .date h6 {
    color: #999;
    letter-spacing: 2px;
    font-size: 10px;
    font-family: var(--font-family-primary);
    text-transform: uppercase;
    font-weight: 400;
}
.services .content .cont {
  display: table-cell;
  vertical-align: middle;
}
.services .content .cont h4 {
    margin: 0 0 10px 0;
    font-size: 32px;
    color: #fff;
    font-weight: 400;
    line-height: 1.5em;
}
.services .content .cont .more {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--main-highlight-color);
  padding-left: 40px;
  position: relative;
}
.services .content .cont .more:after {
  content: '';
  width: 30px;
  height: 1px;
  background: var(--main-highlight-color);
  position: absolute;
  top: 50%;
  left: 0px;
}
.services .content .cont .more:hover {
   color: #222; 
}
.services .content .info h6 {
    font-size: 15px;
    letter-spacing: 3px;
    color: var(--main-highlight-color);
    font-family: var(--font-family-primary);
    text-transform: uppercase;
    margin-bottom: 5px;
}
.services .content .info .tags {
  color: var(--main-highlight-color);
}
@media screen and (max-width: 991px) {
    .services .content .cont h4 {
        line-height: 1.25em;
    }
    .order2 {
    -webkit-box-ordinal-group: 3 !important;
        -ms-flex-order: 2 !important;
            order: 2 !important;
  }
    .order1 {
    -webkit-box-ordinal-group: 2 !important;
        -ms-flex-order: 1 !important;
            order: 1 !important;
  }  
}
@media screen and (max-width: 480px) {
    .services .content .date {
    width: 60px;
  }
    .services .content .info .tags {
    margin: 5px 0 0;
  }
    .services .content .date h3 {
    font-size: 40px;
  }
}


/* =======  Restaurant Menu style ======= */
.restaurant-menu .owl-carousel .owl-stage-outer {
    padding: 20px 0 60px 0;
}
.restaurant-menu .owl-theme .owl-nav [class*=owl-] {
    position: absolute;
    top: 40%;
    background: transparent;
    color: #fff;
    width: 40px;
    height: 40px;
    line-height: 30px;
    border-radius: 50%;
    border: 1px solid var(--main-highlight-color);
    opacity: 0;
    -webkit-transition: all .5s;
    transition: all .5s;
}
.restaurant-menu .owl-theme .owl-nav [class*=owl-]:hover {
    background: transparent;
    color: var(--main-highlight-color);
}
.restaurant-menu .bg-img .owl-theme .owl-nav [class*=owl-] {
    color: #fff;
}
.restaurant-menu .owl-carousel .owl-nav .owl-next {
    right: 0;
}
.restaurant-menu .owl-carousel .owl-nav .owl-prev {
    left: 0;
}
.restaurant-menu .owl-carousel .owl-nav .owl-next span,
.restaurant-menu .owl-carousel .owl-nav .owl-prev span {
    font-size: 12px;
}
.restaurant-menu .owl-theme:hover .owl-nav [class*=owl-] {
    opacity: 1;
}
.restaurant-menu .tabs-icon .item {
    padding: 15px 5px;
    cursor: pointer;
}
.restaurant-menu .tabs-icon .item h6 {
    font-size: 20px;
    color: #fff;
    margin-bottom: 0;
}
.restaurant-menu .tabs-icon .owl-item.actived .item,
.restaurant-menu .tabs-icon .item.active {
    color: #fff;
    position: relative;
    background: transparent;
    padding: 15px;
    border: 1px solid var(--main-highlight-color);
}
.restaurant-menu .tabs-icon .owl-item.actived .item .icon,
.restaurant-menu .tabs-icon .item.active .icon {
    color: var(--main-highlight-color);
}
.restaurant-menu .restaurant-menu-content .cont {
    display: none;
}
.restaurant-menu .restaurant-menu-content .cont .restaurant-menu-info {
    text-align: right;
}
.restaurant-menu .restaurant-menu-content .cont h5 {
    font-size: 20px;
    color: var(--main-highlight-color);
    margin-bottom: 10px;
    text-align: left;
    border-bottom: 1px dashed var(--main-highlight-color);
    line-height: 2em;
}
.restaurant-menu .restaurant-menu-content .cont p {
    font-size: 15px;
    color: #adadad;
}
.restaurant-menu .restaurant-menu-content .cont h5 .price {
    color: #adadad;
    float: right;
}
.restaurant-menu .restaurant-menu-content .active {
    display: block;
}
.restaurant-menu .owl-theme .owl-nav [class*=owl-] {
    top: 18%;
}
.restaurant-menu .owl-carousel .owl-nav .owl-next {
    right: -50px;
}
.restaurant-menu .owl-carousel .owl-nav .owl-prev {
    left: -50px;
}
.restaurant-menu .owl-carousel .owl-nav .owl-prev {
    left: -60px;
}
.restaurant-menu .owl-carousel .owl-nav .owl-next {
    right: -60px;
}
.restaurant-menu .restaurant-menu-content .cont .restaurant-menu-info {
    text-align: center;
    margin-bottom: 20px;
}


/* ======= Clients style ======= */
.clients {
    background-color: #fff;
}
.clients .owl-carousel {
    margin: 20px 0;
}
.clients .clients-logo {
    opacity: 1;
    line-height: 0;
}
.clients .clients-logo:hover {
    opacity: 1;
}
.clients img {
    -webkit-filter: none;
    filter: none;
}
.clients img:hover {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: all .5s;
    transition: all .5s;
}


/* ======= Gallery style ======= */
.gallery-item {
    position: relative;
    padding-top: 20px;
}
.gallery-box {
    overflow: hidden;
    position: relative;
}
.gallery-box .gallery-img {
    position: relative;
    overflow: hidden;
}
.gallery-box .gallery-img:after {
    content: " ";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 0px;
    transition: all 0.27s cubic-bezier(0.3, 0.1, 0.58, 1);
}
.gallery-box .gallery-img > img {
    transition: all 0.3s cubic-bezier(0.3, 0.1, 0.58, 1);
    border-radius: 0;
}
.gallery-box .gallery-detail {
    opacity: 0;
    color: #FFF;
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    overflow: hidden;
    transition: all 0.27s cubic-bezier(0.3, 0.1, 0.58, 1);
}
.gallery-box .gallery-detail h4 {
    font-size: 18px;
}
.gallery-box .gallery-detail p {
    color: Rgba(0, 0, 0, 0.4);
    font-size: 14px;
}
.gallery-box .gallery-detail i {
    color: #222;
    padding: 8px;
}
.gallery-box .gallery-detail i:hover {
    color: #222;
}
.gallery-box:hover .gallery-detail {
    top: 50%;
    transform: translate(0, -50%);
    opacity: 1;
}
.gallery-box:hover .gallery-img:after {
    background: rgba(0,0,0, 0.2);
}
.gallery-box:hover .gallery-img > img {
    transform: scale(1.05);
}
/* magnific popup custom */
.mfp-figure button {
    border: 0px solid transparent;
}
button.mfp-close,
button.mfp-arrow {
    border: 0px solid transparent;
    background: transparent;
}


/* ======= Promo Video and Testimonials style ======= */
/* play button */
.vid-area h5 {
    font-size: 27px;
    font-weight: 400;
    color: #fff;
    margin-bottom: 30px;
}
.play-button {
    position: relative;
    margin: auto;
    -webkit-transform: scale(1.3);
    -ms-transform: scale(1.3);
    transform: scale(1.3);
    z-index: 4;
}
.play-button svg {
    position: absolute;
    width: 100%;
    height: 100%;
}
.circle-fill circle {
    opacity: 1;
    fill: rgba(174, 140, 100, 0.7);
}
.polygon {
    position: absolute;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 90px;
    font-size: 35px;
    z-index: 2;
}
.play-button svg.circle-fill {
    z-index: 1;
    stroke-dasharray: 322;
    stroke-dashoffset: 322;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}
.play-button:hover svg.circle-fill {
    stroke-dashoffset: 38.5;
}
.play-button svg.circle-track {
    z-index: 0;
}
.play-button.color {
    color: var(--main-highlight-color);
}
.play-button.color .circle-fill circle {
    fill: var(--main-highlight-color);
}


/* video section */
.video-wrapper {
    min-height: 500px;
}
.video-wrapper .vid {
    position: relative;
    z-index: 8;
}
.video-wrapper .vid .vid-butn:hover .icon {
    color: #fff;
}
.video-wrapper .vid .vid-butn:hover .icon:before {
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}
.video-wrapper .vid .vid-butn .icon {
    color: var(--main-highlight-color);
    width: 100px;
    height: 100px;
    border-radius: 50%;
    line-height: 100px;
    text-align: center;
    font-size: 40px;
    position: relative;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
}
.video-wrapper .vid .vid-butn .icon:after {
    content: '';
    position: absolute;
    top: 5px;
    bottom: 5px;
    right: 5px;
    left: 5px;
    border: 1px solid #fff;
    border-radius: 50%;
    z-index: -1;
}
.video-wrapper .vid .vid-butn .icon:before {
    content: '';
    position: absolute;
    top: 5px;
    bottom: 5px;
    right: 5px;
    left: 5px;
    background: transparent;
    border-radius: 50%;
    z-index: -1;
    -webkit-transition: all 0.5s cubic-bezier(1, 0, 0, 1);
    -o-transition: all 0.5s cubic-bezier(1, 0, 0, 1);
    transition: all 0.5s cubic-bezier(1, 0, 0, 1);
}


/* video gallery */
.video-gallery-button {
    position: relative;
    margin: auto;
    -webkit-transform: scale(1.3);
    -ms-transform: scale(1.3);
    transform: scale(1.3);
    z-index: 4;
    margin-left: 15px;
    float: right;
}
.video-gallery-polygon {
    z-index: 2;
    padding-left: 5px;
    display: inline-block;
    position: absolute;
    bottom: 15px;
    right: 15px;
    background: transparent;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, 0.5);
    color: #fff;
    padding: 7px 6px 7px 8px;
    line-height: 0;
}
.video-gallery-polygon:hover {
    background: #fff;
    border: 1px solid #fff;
    color: var(--main-highlight-color);
}
/* testimonials style */
.testimonials-box {
    position: relative;
    background: transparent;
    padding: 30px;
    margin-bottom: 90px;
}
.testimonials-box .head-box h6 {
    font-family: var(--font-family-primary);
    color: #fff;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 6px;
    margin-bottom: 10px;
}
.testimonials-box .head-box h4 {
    font-size: 32px;
    font-weight: 400;
    color: #fff;
    margin-bottom: 10px;
}
.testimonials-box .head-box h4 span {
    color: #222;
}
.line {
    width: 60px;
    border-top: 1px solid rgba(255,255,255,0.2) !important;
    margin-bottom: 10px;
}
.testimonials h5 {
    color: #fff;
    font-size: 24px;
    margin-bottom: 30px;
    line-height: 1.5em;
}
@media screen and (max-width: 991px) {
    .testimonials-box {
        margin-bottom: 90px;
        padding: 35px 20px;
    }
}
.testimonials .item {
    margin-bottom: 30px;
    position: relative;
}
.testimonials .item .quote {
    position: absolute;
    right: 20px;
    top: 90px;
    width: 70px;
    margin: 0 auto 30px;
    opacity: .1;
}
.testimonials .item p {
    color: #fff;
}
.testimonials .item .info {
    text-align: left;
    margin: 30px 0 15px 0;
}
.testimonials .item .info .author-img {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    float: left;
    overflow: hidden;
}
.testimonials .item .info .cont {
    margin-left: 85px;
}
.testimonials .item .info h6 {
    font-size: 15px;
    margin-bottom: 0px;
    padding-top: 0px;
    font-weight: 400;
    font-family: var(--font-family-primary);
    color: #fff;
    line-height: 1em;
    text-transform: uppercase;
    letter-spacing: 3px;
}
.testimonials .item .info span {
    font-size: 12px;
    color: #fff;
    line-height: 1em;
}
.testimonials .item .info .rate {
    float: right;
}
.testimonials .item .info i {
    color: #222;
    font-size: 6px;
}

@media screen and (max-width: 767px) {
    .testimonials-box {
        padding: 0px;
    }
}


/* ======= Booking style ======= */
.booking-wrapper {
    position: absolute;
    bottom: 5%;
    z-index: 5;
    width: inherit !important;
}
.booking2-wrapper {
    position: relative;
    margin-bottom: 40px;
}
.booking-inner {
    position: relative;
    border-radius: 0;
}
.form1 {
    display: block;
    padding: 0;
    position: relative;
}
.form1 label {
    display: none;
}
.form1 .col1 {
    float: left;
    width: 20%;
}
.form1 .col2 {
    float: left;
    width: 14%;
}
.form1 .col3 {
    float: left;
    width: 18%;
}
.form1 .c1 {
    border-right: 1px solid #2b2b2b;
    height: 62px;
    margin-bottom: 15px;
}
.form1 .c2 {
    border-right: 1px solid #2b2b2b;
    height: 62px;
    margin-bottom: 15px;
}
.form1 .c3 {
    border-right: 1px solid #2b2b2b;
    height: 62px;
    margin-bottom: 15px;
}
.form1 .c4 {
    border-right: 1px solid #2b2b2b;
    height: 62px;
    margin-bottom: 15px;
}
.form1 .c5 {
    border-right: 1px solid #2b2b2b;
    height: 62px;
    margin-bottom: 15px;
}
.ui-datepicker .ui-datepicker-header {
    background: var(--main-highlight-color);
    border: var(--main-highlight-color);
    color: #fff;
}
.ui-datepicker {
    font-size: 15px;
    color: rgba(0, 0, 0, 0.5);
    background: #222;
    z-index: 100 !important;
    border: 1px solid #2b2b2b;
    border-radius: 0px;
}
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
    border: 1px solid #222;
    background: #2B2B2B;
    color: rgba(0, 0, 0, 0.5);
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
    border: 1px solid var(--main-highlight-color);
    background: var(--main-highlight-color);
    font-weight: normal;
    color: #fff;
}
.ui-datepicker .ui-datepicker-prev:after {
    font-size: 10px;
    content: "\e64a";
    font-family: "themify";
    color: #fff;
}
.ui-datepicker .ui-datepicker-next:before {
    font-size: 10px;
    content: "\e649";
    font-family: "themify";
    color: #fff;
    float: right;
}
.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
    background: transparent;
    border: 1px solid transparent;
}
.btn-form1-submit {
    display: block;
    padding: 0;
    border: none;
    margin: 0;
    width: 100%;
    background: var(--main-highlight-color);
    color: #fff;
    font-family: var(--font-family-primary);
    font-size: 15px;
    text-decoration: none;
    line-height: 62px;
    position: relative;
    cursor: pointer;
    transition: all 0.3s ease-out;
    letter-spacing: 3px;
    text-transform: uppercase;
}
.btn-form1-submit:hover {
    background: #222;
}
.btn-form1-submit:focus {
    outline: none;
}
.btn-form1-submit:after {
    content: '';
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    left: 100%;
    top: 0;
    background: inherit;
}
.input1_inner {
    position: relative;
    position: relative;
}
.input1_inner:after {
    content: '';
    display: block;
    position: absolute;
    right: 20px;
    top: 23px;
    pointer-events: none;
    content: "\e6b6";
    font-family: "themify";
    font-size: 15px;
    color: var(--main-highlight-color);
    line-height: 1;
}
.input1_inner input {
    display: block;
    width: 100%;
    font-size: 15px;
    color: rgba(0, 0, 0, 0.5);
    padding: 19.5px 40px 20px 19.5px;
    background: #222;
    border: none;
    box-shadow: none;
    border-radius: 0;
}
.input1_inner input::placeholder {
    font-size: 15px;
    color: rgba(0, 0, 0, 0.5); !important;
}
.input1_inner input:focus {
    outline: none;
    box-shadow: none;
    background: #222;
    color: rgba(0, 0, 0, 0.5); !important;
}
.select1_wrapper {
    margin-bottom: 0;
}
.select1_inner {
    position: relative;
}
.select1_inner:after {
    content: '';
    display: block;
    position: absolute;
    right: 20px;
    top: 25px;
    pointer-events: none;
    content: "\e64b";
    font-family: "themify";
    font-size: 10px;
    color: var(--main-highlight-color);
    font-weight: normal;
    line-height: 15px;
}
.select2 {
    width: 100%;
    background: #222;
    margin-bottom: 15px;
    border: 0px solid transparent;
}
.select2 *:focus {
    outline: none !important;
}
.select2-container--default .select2-results > .select2-results__options {
    max-height: 500px;
}
.select2-container--default .select2-selection--single {
    background: none;
    border-radius: 0;
    border: none;
    height: auto;
}

.selection {
    display: inline-flex;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    font-size: 15px;
    line-height: 28px;
    padding: 17px 49px 17px 20px;
    color: rgba(0, 0, 0, 0.5);
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    display: none;
}
.select2-dropdown {
    background: none;
    border-radius: 0;
    z-index: 100;
    min-width: 0px;
    border: none;
}
.select2-container--open .select2-dropdown--above {
    border-bottom: 1px solid #2b2b2b;
}
.select2-container--open .select2-dropdown--below {
    border-top: 1px solid #2b2b2b;
}
.select2-results__option {
    padding: 10px 30px;
    background: #222;
    font-size: 15px;
    line-height: 20px;
    color: rgba(0, 0, 0, 0.5);
    border-top: 1px solid #2b2b2b;
    text-align: center;
}
.select2-results__option:first-child {
    border-top: none;
}
.small .select2-results__option {
    padding-left: 0;
}
.select2-container--default .select2-results__option[aria-selected=true] {
    background: var(--main-highlight-color);
    color: #fff;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background: var(--main-highlight-color);
    color: #fff;
}
/* responsive */
@media (max-width: 1259.98px) {
    .booking2-wrapper {
        margin-bottom: 30px;
    }
}
@media (max-width: 991.98px) {
    .booking2-wrapper {
        margin-bottom: 40px;
    }
    .form1 .col1 {
        width: 50%;
        border-bottom: 1px solid #222;
    }
    .form1 .c2 {
        border-right: none;
    }
    .form1 .col2 {
        width: 25%;
    }
    .form1 .col3 {
        width: 25%;
    }
}
@media (max-width: 767.98px) {
    .form1 .col1 {
        width: 100%;
        border-right: 0;
        border-bottom: 1px solid #ececec;
    }
    .form1 .col2 {
        width: 100%;
        border-right: 0;
        border-bottom: 1px solid #ececec;
    }
    .form1 .col3 {
        width: 100%;
        border-right: 0;
    }
    .btn-form1-submit:after {
        background: none;
    }
    .booking-wrapper {
        position: relative;
        bottom: auto;
        padding: 30px 0;
        background: #1e1e1e;
    }
}
/* booking form */
.booking-box {
    position: relative;
    background: #1e1e1e;
    padding: 45px;
    margin-bottom: -75px;
}
.booking-box .head-box h6 {
    font-size: 15px;
    font-family: var(--font-family-primary);
    font-weight: 400;
    color: var(--main-highlight-color);
    text-transform: uppercase;
    position: relative;
    letter-spacing: 6px;
    margin-bottom: 10px;
}
.booking-box .head-box h4 {
    font-family: var(--font-family-primary);
    font-size: 27px;
    font-weight: 400;
    color: #fff;
    border-bottom: 1px solid #222;
    padding-bottom: 15px;
    letter-spacing: 0;
    text-transform: none;
    margin-top: 0;
}
.booking-box .head-box h4 span {
    color: #222;
}

@media screen and (max-width: 991px) {
    .booking-box {
        margin-bottom: 90px;
        padding: 35px 20px;
    }
}


/* ======= Pricing style ======= */
.pricing-card {
    background-color: #2b2b2b;
    margin-bottom: 30px;
}
.pricing-card .desc {
    padding: 40px;
} 
.pricing-card .name {
    line-height: 1;
    margin: 0;
    font-family: var(--font-family-primary);
    font-size: 24px;
    color: #fff;
    margin-bottom: 20px;
}
.pricing-card .subname {
    line-height: 1;
    margin: 0;
    font-size: 12px;
    text-transform: uppercase;
    color: #999;
    margin-bottom: 20px;
    letter-spacing: 3px;
}
.pricing-card .amount {
  margin: 0;
  line-height: 1;
 font-family: var(--font-family-primary);
  font-size: 40px;
  margin-bottom: 20px;
    color: var(--main-highlight-color);
}
.pricing-card .amount span {
    font-family: var(--font-family-primary);
    font-size: 15px;
    color: #999;
}
.pricing-card .list {
    text-align: left;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0px;
}
.pricing-card .list li {
  position: relative;
    font-size: 15px;
    padding-left: 30px;
}
.pricing-card .list li+li {
  margin-top: 5px;
}
.pricing-card .list li i {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    font-size: 15px;
    color: var(--main-highlight-color);
}
.pricing-card .list li i.unavailable {
  color: #999;
}


/* ======= Careers style ======= */
.position {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: -1px;
    padding: 40px 45px 40px 50px;
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
    border-top: 1px solid #2b2b2b;
    border-bottom: 1px solid #2b2b2b;
    background-color: transparent;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
.position-link {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}
.position-title {
    font-family: var(--font-family-primary);
    font-size: 24px;
    font-weight: 400;
    position: relative;
    -webkit-transition: color .3s;
    transition: color .3s;
    -webkit-flex-basis: 30%;
    -ms-flex-preferred-size: 30%;
    flex-basis: 30%;
    color: #fff;
}
.position-title span {
    font-family: var(--font-family-primary);
    color: #999;
    font-size: 15px;
    display: block;
    text-transform: none;
    letter-spacing: 0px;
}
.position-location {
    font-family: var(--font-family-primary);
    font-size: 15px;
    -webkit-transition: color .3s;
    transition: color .3s;
    -webkit-flex-basis: 40%;
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%;
    color: #999;
}
.position-location span {
    font-family: var(--font-family-primary);
    font-size: 15px;
    color: #fff;
    display: block;
    text-transform: none;
    letter-spacing: 0px;
}
.position-time {
    font-weight: 400;
    -webkit-transition: color .3s;
    transition: color .3s;
    color: #fff;
}
.position-time span {
    font-family: var(--font-family-primary);
    color: #999;
    display: block;
    text-transform: none;
    letter-spacing: 0px;
}
.position-icon {
    font-size: 15px;
    line-height: 1;
    color: var(--main-highlight-color);
}
.position-icon i {
    display: inline-block
}
/* hover */
.position:hover {
    background-color: var(--main-highlight-color);
}
.position:hover .position-title,
.position:hover .position-title span,
.position:hover .position-location,
.position:hover .position-location span,
.position:hover .position-time,
.position:hover .position-time span,
.position:hover .position-icon {
    color: #fff;
}
@media only screen and (max-width:991px) {
    .position {
        flex-direction: column;
        -webkit-box-pack: initial;
        -webkit-justify-content: initial;
        -ms-flex-pack: initial;
        justify-content: initial;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .position-title {
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%
    }
    .position-location {
        margin-top: 15px;
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%
    }
    .position-time {
        margin-top: 15px;
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%
    }
    .position-icon {
        display: none
    }
}



/* ======= Accordion Box (for Faqs) style ======= */
.accordion-box {
  position: relative;
    padding: 0;
}
.accordion-box .block {
  position: relative;
  background: #f6f6f6;
  border-radius: 0px;
  overflow: hidden;
  margin-bottom: 15px;
  border-radius: 5px;
}
.accordion-box .block.active-block {
  background-color: #e7e7e7;
}
.accordion-box .block:last-child {
  margin-bottom: 0;
}
.accordion-box .block .acc-btn {
    position: relative;
    font-size: 16px;
    line-height: 27px;
    font-weight: 400;
    cursor: pointer;
    padding: 20px 40px;
    padding-right: 60px;
    color: #181818;
    transition: all 500ms ease;
    font-family: 'Barlow';
}
.accordion-box .block .acc-btn .count {
  color: var(--main-highlight-color);
  padding-right: 3px;
}
.accordion-box .block .acc-btn:before {
  position: absolute;
    right: 35px;
    top: 20px;
    height: 30px;
    font-size: 14px;
    font-weight: normal;
    color: var(--main-highlight-color);
    line-height: 30px;
    content: "\e61a";
    font-family: "Themify";
    transition: all 500ms ease;
}
.accordion-box .block .acc-btn.active {
    background-color: #bfbfbf;
    color: #181818;
}
.accordion-box .block .acc-btn.active:before {
  color: "Themify";
  content: "\e622";
}
.accordion-box .block .acc-content {
  position: relative;
  display: none;
}
.accordion-box .block .content {
  position: relative;
    padding: 20px 40px 30px;
    background-color: #e7e7e7;
    color: var(--main-primary-text);
}

  
.accordion-box .block .acc-content.current {
  display: block;
}
.accordion-box .block .content .text {
  display: block;
  position: relative;
  top: 0px;
  display: block;
}


/* ======= News style ======= */
.news .item {
    position: relative;
    overflow: hidden;
    margin-bottom: 30px;
}
.news .item:hover img {
    -webkit-filter: none;
    filter: none;
    -webkit-transform: scale(1.09, 1.09);
    transform: scale(1.09, 1.09);
    -webkit-filter: brightness(75%);
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    -ms-transition: all 1s ease;
    transition: all 1s ease;
}
.news .item:hover .con {
    bottom: 0;
}
.news .item img {
    -webkit-transition: all .5s;
    transition: all .5s;
    -webkit-filter: brightness(100%);
}
.news .item .date {
    display: inline-block;
    position: absolute;
    top: 20px;
    left: 20px;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.5);
    color: #fff;
    padding: 5px 10px;
    text-align: center;
}
.news .item .date span {
    font-family: var(--font-family-primary);
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #fff;
}
.news .item .date i {
    font-family: var(--font-family-primary);
    display: block;
    font-size: 24px;
    font-style: normal;
    color: #fff;
}
.news .item .con {
    margin: -155px 20px 90px;
    padding: 20px;
    background-color: #2b2b2b !important;
    border: 1px solid #2b2b2b;
    border-radius: 0;
    overflow: hidden;
    -webkit-transition: .2s cubic-bezier(.3, .58, .55, 1);
    transition: .2s cubic-bezier(.3, .58, .55, 1);
    bottom: -90px;
    position: relative;
}
.news .item .con .category {
    font-family: var(--font-family-primary);
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 400;
    margin-bottom: 5px;
    letter-spacing: 3px;
}
.news .item .con .category a {
    margin-right: 5px;
    position: relative;
    color: var(--main-highlight-color);
}
.news .item .con .category a:hover {
    color: var(--main-highlight-color);
}
.news .item .con .category a:last-child {
    margin-right: 0;
}
.news .item .con .category a:last-child:after {
    display: none;
}
.news .item .con h5,
.news .item .con h5 a {
    color: #fff;
    font-size: 24px;
    font-family: var(--font-family-primary);;
    font-weight: 400;
    margin-bottom: 0px;
}
.news .item .con h5:hover,
.news .item .con h5 a:hover {
    color: #fff;
}
.news .item .con p {
    color: #fff;
    font-size: 17px;
}
.news .item .con i {
    color: #fff;
    font-size: 20px;
}


/* ======= News 2 style ======= */
.news2 .item {
    margin-bottom: 30px;
}
.news2 .post-img {
    position: relative;
    overflow: hidden;
}
.news2 .post-img:hover img {
    -webkit-filter: none;
    filter: none;
    -webkit-transform: scale(1.05, 1.05);
    transform: scale(1.05, 1.05);
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    -ms-transition: all 1s ease;
    transition: all 1s ease;
}
.news2 .post-img a {
    display: block;
}
.news2 .post-img img {
    -webkit-transition: all .5s;
    transition: all .5s;
}

.news2 .post-img .date {
    display: inline-block;
    position: absolute;
    bottom: 20px;
    left: 20px;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.5);
    color: #fff;
    padding: 5px 10px;
    text-align: center;
}
.news2 .post-img .date span {
    font-family: var(--font-family-primary);
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #fff;
}
.news2 .post-img .date i {
    font-family: var(--font-family-primary);
    display: block;
    font-size: 24px;
    font-style: normal;
    color: #fff;
}

.news2 .post-cont {
    padding: 30px 0;
}
.news2 .post-cont .tag {
    display: block;
    font-weight: 400;
	font-size: 12px;
    letter-spacing: 3px;
    color: var(--main-highlight-color);
    font-family: var(--font-family-primary);
    text-transform: uppercase;
	margin-bottom: 5px;
}
.news2 .post-cont h5 {
    font-size: 30px;
}
.news2 .post-cont h5 a {
    color: #fff;
}
.news2 .post-cont h5 a:hover {
    color: #fff;
}
.news2 .post-cont .date {
    font-family: var(--font-family-primary);
    margin-top: 0px;
    font-size: 12px;
    text-align: right;
	letter-spacing: 3px;
	text-transform: uppercase;
	margin-bottom: 5px;
}
.news2 .post-cont .date a {
    color: var(--main-highlight-color);
}
.news2 .post-cont i {
    color: rgba(0, 0, 0, 0.5);
	margin: 0 10px;
	font-size: 12px;
}
/* news sidebar */
.news2-sidebar .widget {
    background: #222;
    padding: 30px;
    margin-bottom: 30px;
    overflow: hidden;
}
.news2-sidebar .widget ul {
    margin-bottom: 0;
    padding: 0;
}
.news2-sidebar .widget ul li {
    margin-bottom: 15px;
    color: rgba(0, 0, 0, 0.5);
    font-size: 15px;
    line-height: 1.5em;
}
.news2-sidebar .widget ul li a {
    color: rgba(0, 0, 0, 0.5);
}
.news2-sidebar .widget ul li a.active {
    color: var(--main-highlight-color);
}
.news2-sidebar .widget ul li a:hover {
    color: var(--main-highlight-color);
}
.news2-sidebar .widget ul li:last-child {
    margin-bottom: 0;
}
.news2-sidebar .widget ul li i {
    font-size: 9px;
    margin-right: 10px;
}
.news2-sidebar .widget .recent li {
    display: block;
    overflow: hidden;
}
.news2-sidebar .widget .recent .thum {
    width: 90px;
    overflow: hidden;
    float: left;
}
.news2-sidebar .widget .recent a {
    display: block;
    margin-left: 105px;
}
.news2-sidebar .widget-title {
    margin-bottom: 20px;
}
.news2-sidebar .widget-title h6 {
    padding-bottom: 5px;
    border-bottom: 1px solid #2b2b2b;
    font-size: 24px;
    line-height: 1.75em;
    margin-bottom: 15px;
    color: #fff;
}
.news2-sidebar .search form {
    position: relative;
}
.news2-sidebar .search form input {
    width: 100%;
    padding: 10px;
    border: 0;
    background: #1e1e1e;
	margin-bottom: 0;
}
.news2-sidebar .search form button {
    position: absolute;
    right: 0;
    top: 0;
    background-color: transparent;
    color: var(--main-highlight-color);
    border: 0;
    padding: 10px;
    cursor: pointer;
}
.news2-sidebar .tags li {
    margin: 3px !important;
    padding: 8px 20px;
    background-color: transparent;
    border: 1px solid #333;
    color: rgba(0, 0, 0, 0.5)!important;
    float: left;
}
.news2-sidebar ul.tags li a {
    font-size: 14px;
    color: rgba(0, 0, 0, 0.5);
}
.news2-sidebar ul.tags li:hover,
.news2-sidebar ul.tags li a:hover {
    background-color: var(--main-highlight-color);
    color: #fff;
}
/* pagination */
.news-pagination-wrap {
    padding: 0;
    margin: 0;
    text-align: center;
}
.news-pagination-wrap li {
    display: inline-block;
    margin: 0 5px;
}
.news-pagination-wrap li a {
    background: transparent;
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 37px;
    text-align: center;
    color: rgba(0, 0, 0, 0.5);
    font-weight: 400;
    border: 1px solid rgba(102,102,102,0.2);
    font-family: var(--font-family-primary);
    font-size: 16px;
    border-radius: 100%;
}
.news-pagination-wrap li a i {
    font-size: 11px;
}
.news-pagination-wrap li a:hover {
    opacity: 1;
    text-decoration: none;
    background: transparent;
    border: 1px solid var(--main-highlight-color);
    color: var(--main-highlight-color);
}
.news-pagination-wrap li a.active {
    background-color: transparent;
    border: 1px solid var(--main-highlight-color);
    color: var(--main-highlight-color);
}
@media screen and (max-width: 768px) {
    .news-pagination-wrap {
        padding: 0;
        margin: 0;
        text-align: center;
    }
}


/* ======= Post style ======= */
.news-post-section {
    padding-top: 120px;
}
.post-comment-section {
    margin-top: 60px;
}
.post-comment-section h3 {
    font-size: 20px;
    color: #fff;
    font-family: var(--font-family-primary);
    margin-bottom: 15px;
}
.post-comment-section h3 span {
    font-family: var(--font-family-primary);
    font-size: 12px;
    color: rgba(255,255,255,0.8);
    margin-left: 15px;
}
.news-post-caption h1 {
    margin-bottom: 20px;
    font-size: 40px;
    text-transform: uppercase;
}
.news-post-comment-wrap {
    display: flex;
    margin-bottom: 60px;
}
.post-user-comment {
    margin-right: 20px;
    flex: 0 0 auto;
}
.post-user-comment img {
    border-radius: 100%;
    width: 100px;
}
.post-user-content {
    margin-right: 26px;
}
.post-repay {
    font-size: 14px;
    color: var(--main-highlight-color);
    margin: 0;
    font-weight: 400;
}


/* ======= Contact style ======= */
.contact h3 {
    font-size: 24px;
    color: #fff;
}
.map {	
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	}


/* ======= Buttons style ======= */
/* dark */
.butn-dark {
    position: relative;
    line-height: 1.2em;
}
.butn-dark a {
    font-family: var(--font-family-primary);
    background: var(--main-highlight-color);
    color: #fff;
    padding: 13px 22px;
    margin: 0;
    position: relative;
    font-size: 15px;
}
.butn-dark a:after {
    content: '';
    width: 0;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 100%;
    z-index: 1;
    background: #3b3b3b;
    color: #fff !important;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.butn-dark a span {
    position: relative;
    z-index: 2;
}
.butn-dark a:hover:after {
    width: 100%;
    left: 0;
    -webkit-transition: width 0.3s ease;
    transition: width 0.3s ease;
}
.butn-dark a:hover span {
    color: #fff;
}
/* light */
.butn-light {
    position: relative;
    line-height: 1.2em;
}
.butn-light a {
    font-weight: 400;
    font-family: var(--font-family-primary);
    text-transform: uppercase;
    background: transparent;
    color: #fff;
    padding: 12px 20px;
    margin: 0;
    position: relative;
    font-size: 15px;
    letter-spacing: 3px;
    border: 1px solid rgba(0, 0, 0, 0.5);
}
.butn-light a:after {
    content: '';
    width: 0;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 100%;
    z-index: 1;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    background: #fff;
}
.butn-light a span {
    position: relative;
    z-index: 2;
}
.butn-light a:hover:after {
    width: 100%;
    left: 0;
    -webkit-transition: width 0.3s ease;
    transition: width 0.3s ease;
}
.butn-light a:hover span {
    color: #222;
}


/* dark2 */
.butn-dark2 {
    position: relative;
    line-height: 1.2em;
    font-weight: 700;
    font-family: var(--font-family-primary);
    background: var(--main-highlight-color);
    color: #fff;
    padding: 13px 22px;
    margin: 0;
    position: relative;
    font-size: 15px;
}
.butn-dark2:after {
    content: '';
    width: 0;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 100%;
    z-index: 1;
    background: #222;
    color: #fff !important;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.butn-dark2 span {
    position: relative;
    z-index: 2;
}
.butn-dark2:hover:after {
    width: 100%;
    left: 0;
    -webkit-transition: width 0.3s ease;
    transition: width 0.3s ease;
}
.butn-dark2:hover span {
    color: #fff !important;
}
.butn-dark2:hover {
    color: #fff !important;
}
/* light2 */
.butn-light2 {
    position: relative;
    line-height: 1.2em;
    font-weight: 400;
    font-family: var(--font-family-primary);
    text-transform: uppercase;
    background: transparent;
    color: #fff;
    padding: 12px 20px;
    margin: 0;
    position: relative;
    font-size: 15px;
    letter-spacing: 3px;
    border: 1px solid rgba(0, 0, 0, 0.5);
}
.butn-light2:after {
    content: '';
    width: 0;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 100%;
    z-index: 1;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    background: #fff;
}
.butn-light2 span {
    position: relative;
    z-index: 2;
}
.butn-light2:hover:after {
    width: 100%;
    left: 0;
    -webkit-transition: width 0.3s ease;
    transition: width 0.3s ease;
}
.butn-light2:hover span {
    color: #222;
}


/* ====== Coming Soon ======= */
.comming{
	min-height: 100vh;
	height: auto;
	position: relative;
	background-blend-mode: overlay;
	background: rgba(0,0,0,.4);
	background-image: url("../img/brick-lane/A7409802.jpg");
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: #fff;
}
@media (max-width: 767px){
	.comming{
		min-height: 120vh;
	}
}
.comming .item {
    background: transparent;
    border: 1px solid rgba(255,255,255,0.2);
    padding: 30px 15px;
    margin-bottom: 30px;
}
.comming h6 {
    color: #fff;
    font-size: 15px;
    font-family: var(--font-family-primary);
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: 30px;
    letter-spacing: 3px;
}
.comming h3 {
    font-size: 48px;
    color: #fff;
    position: relative;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin-bottom: 0px;
}
.comming h2 {
    font-size: 40px;
    font-weight: 400;
    color: #fff;
    position: relative;
     margin-bottom: 10px;
}
.comming h1 {
    font-size: 200px;
    font-weight: 400;
    margin-bottom: 0px;
    position: relative;
    color: transparent;
    -webkit-text-stroke: 1px rgba(213, 152, 48, 0.85);
    opacity: .8;
    line-height: 160px;
}
.comming p {
	color: #fff;
	font-size: 15px;
}
/* coming form */
.comming form {
  margin-top: 30px;
  position: relative;
}
.comming form input {
    width: 100%;
    padding: 11px 50px 11px 11px;
    background-color: transparent;
    border: 1px solid var(--main-highlight-color);
    border-radius: 0px;
    color: #fff;
    margin-bottom: 15px;
	outline: none;
}
.comming form input::placeholder {
    color: #fff;
}
.comming form button {
    background-color: var(--main-highlight-color);
    padding: 6px 20px;
    border-radius: 0px;
    color: #fff;
    border: 0;
    position: absolute;
    top: 4px;
    right: 4px;
    cursor: pointer;
    font-family: var(--font-family-primary);
    font-size: 15px;
    letter-spacing: 3px;
    text-transform: uppercase;
    font-weight: 400;
    outline: none;
}
.comming form button:hover {
  background-color: #222;
  color: #fff;
	outline: none;
}
/* go home */
.go-back{
	margin-top: 45px;
}
.go-back a {
	color: #fff;
	display: inline-block;
    font-family: var(--font-family-primary);
	font-size: 15px;
    text-transform: uppercase;
	letter-spacing: 3px;
}
.go-back a:hover {
	color: var(--main-highlight-color);
}
.go-back a span{
	transition: all .5s;
}
.go-back a span i {
	color: #fff;
	font-size: 12px;
}
.go-back a:hover span{
	padding-right: 15px;
}


/* ======= 404 Page style ======= */
.error-form {
  position: relative;
  max-width: 520px;
  margin: 50px auto 0;
}
.error-form form {
  position: relative;
}
.error-form .form-group {
  position: relative;
  margin: 0;
}
.error-form .form-group input[type="text"],
.error-form .form-group input[type="search"],
.error-form .form-group input[type="email"] {
  position: relative;
  width: 100%;
  line-height: 30px;
  padding: 20px 60px 20px 30px;
  height: 70px;
  display: block;
 font-family: var(--font-family-primary);
  font-size: 15px;
  background: #f4f4f4;
  color: #999;
  border-radius: 7px;
  border: 1px solid #f4f4f4;
  transition: all 300ms ease;
}
.error-form .form-group input[type="text"]:focus,
.error-form .form-group input[type="email"]:focus,
.error-form .form-group input[type="search"]:focus {
  border-color: #f4f4f4;
}
.error-form .form-group input::-webkit-input-placeholder {
  color: #f4f4f4;
}
.error-form .form-group .theme-btn {
      position: absolute;
    right: 20px;
    top: 10px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 20px;
    background: none;
    color: #999;
}
.error-form .form-group .theme-btn span {
  vertical-align: middle;
    outline: none;
}


/* ======= Footer style ======= */

  
  .footer-top {
    position: relative;
    display: block;
    background-color: #fff;
    padding: 90px 0 60px 0;
    z-index: 1;
  }
  @media screen and (max-width: 767px) {
    .footer-top {
        background-size: auto;
      }
      .footer {
        left: 0%;
      }
      .bottom-mobile {
        margin-bottom: 100px !important;
      }
}


  .footer-top .footer-column {
    margin-bottom: 30px;
  }

.footer-title {
  font-size: 24px;
  color: var(--main-primary-text);
  font-family: var(--font-family-primary2);
  margin-bottom: 20px;
}
.footer-about-text {
  font-size: 12px;
  margin-bottom: 10px !important;
  color: var(--main-primary-text);
  margin: 0;
}
.footer-about-social-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
      align-items: center;
  margin-top: 20px;
}
.footer-about-social-list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
      align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
      justify-content: center;
  text-align: center;
  color: var(--main-primary-text);
  font-size: 15px;
  background-color: transparent;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.footer-about-social-list a + a {
  margin-left: 15px;
}
.footer-about-social-list a:hover {
  background-color: transparent;
  color: var(--main-highlight-color);
}
.footer-explore-list li + li {
  margin-top: 3px;
}
.footer-explore-list li a {
  position: relative;
  display: block;
  font-size: 15px;
  color: var(--main-primary-text);
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.footer-explore-list li a:hover {
  padding-left: 15px;
  color: var(--main-highlight-color));
}
.footer-explore-list li a:before {
  position: absolute;
  top: 55%;
  left: 0;
  bottom: 0;
  width: 6px;
  height: 6px;
  content: "";
  background-color: var(--main-highlight-color);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0;
  border-radius: 50%;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.footer-explore-list li a:hover:before {
  opacity: 1;
}
.footer-contact {
  position: relative;
  display: block;
}
.footer-contact .footer-title {
  margin-bottom: 20px;
}
.footer-contact-text {
  font-size: 15px;
  margin: 0;
  color: var(--main-primary-text);
  padding-bottom: 20px;
}
.footer-contact-info p {
  margin: 0;
}
.footer-contact-phone {
    font-family: var(--font-family-primary);
  font-size: 24px;
  color: var(--main-primary-text);
  font-weight: 400;
  display: block;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.footer-contact-phone:hover {
  color: var(--main-primary-text);
}
.footer-contact-mail {
  font-size: 15px;
  line-height: 3em;
  color: var(--main-primary-text);
  position: relative;
  display: inline-block;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.footer-contact-mail:hover {
  color: var(--main-primary-text);
}
.footer-contact-mail:before {
  position: absolute;
  bottom: 9px;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--main-highlight-color);
  content: "";
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.footer-contact-mail:hover:before {
  background-color: var(--main-highlight-color);
}


/* language */
.footer-language {
    width: 160px;
    display: flex;
    flex-wrap: wrap;
    position: relative;
    margin-top: 30px;
}
.footer-language i {
    position: absolute;
    right: 30px;
    top: 17px;
    font-size: 15px;
    opacity: 0.6;
    color: #adadad;
}
.footer-language select {
    height: 50px;
    background: #282828;
    color: #adadad;
    border: 1px solid #282828;
    border-radius: 0px;
}
.footer-language select option {
    color: var(--main-primary-text);
}

.footer-bottom {
  position: relative;
  display: block;
  background-color: #f6f6f6;
  -webkit-box-shadow: 0px -1px 0px 0px rgba(255, 255, 255, 0.05);
          box-shadow: 0px -1px 0px 0px rgba(255, 255, 255, 0.05);
  padding: 32px 0;
}
.footer-bottom-inner {
  position: relative;
  display: block;
  text-align: center;
}
.footer-bottom-copy-right {
  font-size: 12px;
  color: #656565;
  margin: 0;
}
.footer-bottom-copy-right a {
  color: #000;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.footer-bottom-copy-right a:hover {
  color: var(--main-highlight-color);
}


/* ======= toTop Button style ======= */
.progress-wrap {
    position: fixed;
    bottom: 30px;
    right: 30px;
    height: 45px;
    width: 45px;
    cursor: pointer;
    display: block;
    border-radius: 50px;
    -webkit-box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: all 400ms linear;
    -o-transition: all 400ms linear;
    transition: all 400ms linear;
}
.progress-wrap.active-progress {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}
.progress-wrap::after {
    position: absolute;
    font-family: 'themify';
    content: '\e648';
    text-align: center;
    line-height: 45px;
    font-size: 12px;
    font-weight: 700;
    color: #323232;
    left: 0;
    top: 0;
    height: 45px;
    width: 45px;
    cursor: pointer;
    display: block;
    z-index: 1;
    -webkit-transition: all 400ms linear;
    -o-transition: all 400ms linear;
    transition: all 400ms linear;
}
.progress-wrap svg path {
    fill: none;
}
.progress-wrap svg.progress-circle path {
    stroke: rgba(255, 255, 255, 0.1);
    stroke-width: 2;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 400ms linear;
    -o-transition: all 400ms linear;
    transition: all 400ms linear;
}
.progress-wrap {
    -webkit-box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
}
.progress-wrap::after {
    color: var(--main-highlight-color);
}
.progress-wrap svg.progress-circle path {
    stroke: var(--main-highlight-color);
}


/* =======  Overlay Effect Bg image style  ======= */
[data-overlay-dark],
[data-overlay-darkgray],
[data-overlay-light] {
  position: relative;
}
/* Container für den Text, um blend-mode korrekt anzuwenden */





[data-overlay-dark]:before,
[data-overlay-darkgray]:before,
[data-overlay-light]:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}
[data-overlay-dark]:before {
  background: var(--main-primary-text);
}
[data-overlay-darkgray]:before {
  background: #222;
}
[data-overlay-light]:before {
  background: #fff;
}
[data-overlay-dark] h1,
[data-overlay-dark] h2,
[data-overlay-dark] h3,
[data-overlay-dark] h4,
[data-overlay-dark] h5,
[data-overlay-dark] h6,
[data-overlay-dark] span {
  color: #fff;
}
[data-overlay-darkgray] h1,
[data-overlay-darkgray] h2,
[data-overlay-darkgray] h3,
[data-overlay-darkgray] h4,
[data-overlay-darkgray] h5,
[data-overlay-darkgray] h6,
[data-overlay-darkgray] span {
  color: #fff;
}
[data-overlay-light] h1,
[data-overlay-light] h2,
[data-overlay-light] h3,
[data-overlay-light] h4,
[data-overlay-light] h5,
[data-overlay-light] h6,
[data-overlay-light] span {
  color: #999;
}
[data-overlay-dark] p {
  color: #fff;
}
[data-overlay-darkgray] p {
  color: #999;
}
[data-overlay-light] p {
  color: #999;
}
[data-overlay-dark="0"]:before,
[data-overlay-darkgray="0"]:before,
[data-overlay-light="0"]:before {
  opacity: 0;
}
[data-overlay-dark="1"]:before,
[data-overlay-darkgray="1"]:before,
[data-overlay-light="1"]:before {
  opacity: 0.1;
}
[data-overlay-dark="2"]:before,
[data-overlay-darkgray="2"]:before,
[data-overlay-light="2"]:before {
  opacity: 0.2;
}
[data-overlay-dark="3"]:before,
[data-overlay-darkgray="3"]:before,
[data-overlay-light="3"]:before {
  opacity: 0.3;
}
[data-overlay-dark="4"]:before,
[data-overlay-darkgray="4"]:before,
[data-overlay-light="4"]:before {
  opacity: 0.4;
}
[data-overlay-dark="5"]:before,
[data-overlay-darkgray="5"]:before,
[data-overlay-light="5"]:before {
  opacity: 0.5;
}
[data-overlay-dark="6"]:before,
[data-overlay-darkgray="6"]:before,
[data-overlay-light="6"]:before {
  opacity: 0.6;
}
[data-overlay-dark="7"]:before,
[data-overlay-darkgray="7"]:before,
[data-overlay-light="7"]:before {
  opacity: 0.7;
}
[data-overlay-dark="8"]:before,
[data-overlay-darkgray="8"]:before,
[data-overlay-light="8"]:before {
  opacity: 0.8;
}
[data-overlay-dark="9"]:before,
[data-overlay-darkgray="9"]:before,
[data-overlay-light="9"]:before {
  opacity: 0.9;
}
[data-overlay-dark="10"]:before,
[data-overlay-darkgray="10"]:before,
[data-overlay-light="10"]:before {
  opacity: 1;
}


/* ======= Responsive style ======= */


@media screen and (max-width: 991px) {
    .bg-fixed {
        background-attachment: scroll !important;
    }
    .header {
        background-attachment: scroll !important;
        background-position: 50% 0% !important;
    }
    .header .caption h1 {
        font-size: 40px;
    }
    
    .video-fullscreen-wrap .booking-box,
    .kenburns-inner .booking-box,
    .banner-header .booking-box {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .header .caption h1 {
        font-size: 30px;
        margin-bottom: 15px;
        letter-spacing: 10px;
        line-height: 1.35em;
    }
    
      .header .caption h3 {
    font-size: 30px;
    margin-bottom: 15px;
    letter-spacing: 10px;
    line-height: 1.35em;
    }
    
    
    .header .caption h4 {
        font-size: 12px;
    }
    .header .caption p {
        font-size: 15px;
        margin-right: 10px;
    }
    .header .caption .butn-light {
        margin-right: 10px;
    }
    .portfolio .filtering span {
        margin-bottom: 10px;
    }
    .news .item .con h5,
    .news .item .con h5 a {
        font-size: 20px;
    }
    .post-comment-section h3 span {
        margin-left: 0px;
    }
    
   
    .video-fullscreen-wrap .caption.textleft,
    .video-fullscreen-wrap .caption {
        text-align: center;
    }
}