/*
Theme Name: Hotel George
Author: Platek
Author URI: https://platek.pro
Text Domain: platek
*/
/*
variables
*/
:root {
  /*
  general colors
  */
  --primary-color: #fbfffb;
  --secondary-color: #0e0715;
  --third-color: #9693d9;
  --accent-color: #00ff00;
  /*
  text colors
  */
  --paragraph-color: #0e0715;
  --headers-color: #07030a;
  --subtitle-color: #696969;
  /*
  bg 
  */
  --bg-color: #f5f5f5;
  --bg-accent: #ebebeb;
  /*
  menu
  */
  --menu-color: #fff;
  --menu-hover-color: #fff;
  /*
  gradients
  */
  --primary-gradient: linear-gradient(
    180deg,
    #4d0056 0%,
    #5e0369 33%,
    #6b0477 67%,
    #7b0689 100%
  );
  /*
  shadows
  */
  --box-shadow: 0 4px 4px 0 rgba(146, 146, 146, 0.192);
  /*
  text
  */
  --primary-font: "primary-font";
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-md: 1.125rem;
  --text-lg: 1.25rem;
  --text-xl: 1.5rem;
  --text-2xl: 1.875rem;
  --text-3xl: 2.25rem;
  --text-4xl: 3rem;
  --text-5xl: 3.75rem;
  --text-6xl: 4.5rem;
  --text-7xl: 6rem;
  --text-8xl: 8rem;
  /*
  spacing
  */
  --spacing-2xs: 0.25rem;
  --spacing-xs: 0.5rem;
  --spacing-sm: 0.75rem;
  --spacing-base: 1rem;
  --spacing-md: 2rem;
  --spacing-lg: 3rem;
  --spacing-xl: 4rem;
  --spacing-2xl: 5rem;
  --spacing-3xl: 6rem;
  --spacing-4xl: 7rem;
  --spacing-5xl: 8rem;
  --spacing-6xl: 9rem;
  /* 
  radius 
  */
  --radius-sm: var(--spacing-sm);
  --radius-base: var(--spacing-base);
  --radius-md: var(--spacing-md);
  --radius-xl: var(--spacing-6xl);
  /* others */
  --error-color: rgb(197, 11, 11);
  --correct-color: rgb(5, 104, 5);
  --btnbg: #c10028;
  --btnbghover: #9c001f;
  --btngraybg: #4d545a;
  --btngraybghover: #3b4145;
  --btncolor: #fff;
  --btncolorhover: #fff;
  --inputbg: #e9f3e6;
  --section__title-color: #02004d;
  --section__desc-color: #4e524d;
  --mobile-width: 640px;
  --tablet-width: 768px;
  --desktop-width: 1024px;
}

/*
typography
*/
@font-face {
  font-family: "primary-font";
  src: local("Montserrat"), url("./assets/fonts/Montserrat-VariableFont_wght.woff2") format("woff2");
  font-display: swap;
  font-weight: 300 400 500 600; /* Allows any weight between 100 and 900 */
  font-style: normal; /* Supports both normal and italic styles */
}
* {
  font-family: "primary-font";
}

html {
  font-size: 18px;
}

label,
input,
textarea,
address,
q,
p,
a,
li,
span,
table,
td {
  font-family: var(--primary-font);
  line-height: 1.5;
  font-weight: 400;
  color: var(--secondary-color);
  font-size: var(--text-base);
}

p {
  margin-bottom: var(--text-base);
}

a {
  color: var(--secondary-color);
  text-decoration: none;
}
a:hover {
  color: var(--third-color);
}

h1,
h2,
h3,
h4,
h5 {
  font-family: var(--primary-font);
  line-height: 1.15;
  font-weight: 500;
  color: var(--secondary-color);
  margin-bottom: var(--spacing-base);
  text-transform: lowercase;
}

h1 {
  font-size: var(--text-2xl);
  margin-bottom: var(--spacing-sm);
}
@media screen and (min-width: 768px) {
  h1 {
    font-size: var(--text-3xl);
  }
}
@media screen and (min-width: 1280px) {
  h1 {
    font-size: var(--text-4xl);
    letter-spacing: -2px;
  }
}

h2 {
  font-size: var(--text-lg);
}
@media screen and (min-width: 1280px) {
  h2 {
    font-size: var(--text-lg);
  }
}

h3 {
  font-size: var(--text-md);
  margin-bottom: var(--spacing-sm);
}
@media screen and (min-width: 1280px) {
  h3 {
    font-size: var(--text-md);
  }
}

/*
classes
*/
body {
  background: var(--bg-color);
}

.o-hidden {
  overflow: hidden;
}

.container {
  max-width: 100%;
}

.wrapper {
  margin: 0 auto;
  padding: var(--spacing-lg) var(--spacing-sm);
  position: relative;
}
@media screen and (min-width: 1024px) {
  .wrapper {
    max-width: 960px;
    padding: var(--spacing-2xl) 0;
  }
}
@media screen and (min-width: 1280px) {
  .wrapper {
    max-width: 1128px;
  }
}
@media screen and (min-width: 1024px) {
  .wrapper.narrow {
    max-width: 796.8px;
  }
}

.row--flex {
  display: flex;
}
@media (min-width: 768px) {
  .row--flex {
    flex-direction: row;
  }
}
.row--grid {
  display: grid;
}
@media screen and (min-width: 1024px) {
  .row--gallery-and-content {
    display: flex;
    gap: var(--spacing-md);
  }
  .row--gallery-and-content .column-content {
    width: 40%;
  }
  .row--gallery-and-content .splide {
    width: 60%;
  }
}

.intro + section > .wrapper {
  padding: var(--spacing-md) var(--spacing-sm);
}
@media screen and (min-width: 1024px) {
  .intro + section > .wrapper {
    padding: var(--spacing-md) 0 var(--spacing-2xl);
  }
}

.info-box {
  background: var(--white);
  padding: var(--sm);
}
@media (min-width: 768px) {
  .info-box {
    padding: var(--md);
  }
}

.section--bg-accent {
  background-color: var(--bg-color);
}
.section--no-margin-bottom {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .section--content__wrapper {
    max-width: 768px;
  }
}
.section__header {
  max-width: 80%;
  text-align: center;
  margin: 0 auto var(--spacing-md);
}
@media screen and (min-width: 1024px) {
  .section__header {
    max-width: 100%;
    text-align: left;
    margin-bottom: var(--spacing-base);
    display: flex;
    gap: var(--spacing-base);
  }
}
.section__header i {
  font-size: var(--text-xl);
  color: var(--third-color);
  margin-bottom: var(--spacing-base);
}
.section__title {
  color: var(--secondary-color);
  margin-bottom: var(--spacing-xs);
}
.section__title--decoration {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-sm);
}
.section__subtitle {
  color: var(--subtitle-color);
  text-transform: lowercase;
}
@media screen and (min-width: 1024px) {
  .section__subtitle {
    margin-bottom: 0;
  }
}
.section + .section:nth-child(odd) {
  background: var(--primary-color);
}

@media screen and (min-width: 1024px) {
  .header--mobile {
    display: none;
  }
}
.header--desktop {
  display: none;
}
@media screen and (min-width: 1024px) {
  .header--desktop {
    display: flex;
  }
}

.lang-item {
  list-style: none;
}

.zoom-effect {
  overflow: hidden;
}
.zoom-effect img {
  transition: all 0.4s ease-in-out;
}
.zoom-effect:hover img {
  transform: scale(1.1);
}

@media (max-width: 768px) {
  .hidden--mobile {
    display: none;
  }
}
@media (max-width: 1024px) {
  .hidden--tablet {
    display: none;
  }
}
@media (min-width: 1024px) {
  .hidden--desktop {
    display: none;
  }
}

.page-template-reservation .intro__content {
  padding-bottom: var(--spacing-md);
}
@media screen and (min-width: 1024px) {
  .page-template-reservation .intro__content {
    padding-bottom: var(--spacing-lg);
  }
}

/*
buttons
*/
.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-xs);
  background-color: var(--third-color);
  color: var(--primary-color);
  padding: var(--spacing-sm) var(--spacing-base);
  font-size: var(--text-base);
  font-weight: 400;
  width: fit-content;
  margin: 0 auto var(--spacing-base);
  transition: 0.2s;
  text-transform: lowercase;
}
.btn:hover {
  background-color: var(--secondary-color);
  color: var(--primary-color);
}
.btn--72 {
  height: var(--spacing-xl);
}
.btn--60 {
  height: 60px;
}
.btn--second {
  background-color: transparent;
  color: var(--third-color);
  border: 3px solid var(--third-color);
}
.btn--second:hover {
  background-color: var(--third-color);
  color: var(--primary-color);
}

.splide + .btn {
  margin-top: var(--spacing-md);
}

/*
sliders
*/
.footer {
  padding-bottom: var(--spacing-md);
  background-color: var(--bg-color);
}
.footer__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: var(--spacing-md);
}
@media screen and (min-width: 1024px) {
  .footer__row {
    flex-wrap: nowrap;
    gap: var(--spacing-base);
  }
}
.footer__company {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: var(--spacing-md);
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .footer__company {
    align-items: flex-start;
    flex: 1.7;
  }
}
.footer__logo {
  margin-bottom: var(--spacing-base);
}
.footer__logo .custom-logo-link .custom-logo {
  max-height: 40px;
}
.footer__name {
  margin-bottom: var(--spacing-2xs);
  font-weight: 500;
}
.footer__address {
  margin-bottom: var(--spacing-xs);
  text-align: center;
}
@media screen and (min-width: 1024px) {
  .footer__address {
    text-align: left;
  }
}
.footer__directions {
  font-weight: 500;
}
.footer__column {
  width: calc(50% - var(--spacing-md));
}
@media screen and (min-width: 768px) {
  .footer__column {
    width: calc(33% - var(--spacing-md));
  }
}
@media screen and (min-width: 1024px) {
  .footer__column {
    flex: 1;
    margin-top: var(--spacing-md);
  }
}
.footer__title {
  font-weight: 600;
  margin-bottom: var(--spacing-2xs);
  text-transform: lowercase;
}
@media screen and (min-width: 1024px) {
  .footer__title {
    margin-bottom: var(--spacing-sm);
  }
}
.footer__menu {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}
.footer .contact-bar {
  border-radius: 0;
}
.footer__pfr-info {
  padding: var(--spacing-lg) 0 0 0;
  text-align: center;
}
.footer__pfr-info p {
  color: var(--subtitle-color);
}

/*
header
*/
/*
header
*/
.custom-logo-link {
  display: flex;
}
.custom-logo-link .custom-logo {
  max-height: 30px;
  width: auto;
}
@media screen and (min-width: 1280px) {
  .custom-logo-link .custom-logo {
    max-height: 60px;
  }
}

.header--mobile {
  position: sticky;
  top: 0;
  z-index: 99;
  margin: 0;
  padding: 0 var(--spacing-base);
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: -80px;
  background-color: var(--primary-color);
}
.header--mobile__right {
  display: flex;
  align-items: center;
  gap: var(--spacing-base);
}
.header--mobile__reservation,
.header--mobile a {
  font-size: var(--text-xs);
}
.header--mobile__lang-switcher .lang-item {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 640px) {
  .header--mobile {
    padding: 0 var(--spacing-md);
  }
}
@media screen and (min-width: 1280px) {
  .header--mobile {
    display: none;
  }
}

.header--desktop {
  position: sticky;
  top: 0;
  z-index: 2;
  background-color: var(--primary-color);
  display: none;
  margin: 0;
  width: 100%;
  padding: var(--spacing-sm) 0;
  margin: 0 auto;
  transition: all 0.2s ease-in-out;
}
.header--desktop__wrapper {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 var(--spacing-base);
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 1280px) {
  .header--desktop__wrapper {
    display: flex;
    max-width: 1128px;
  }
}
@media screen and (min-width: 1280px) {
  .header--desktop {
    display: block;
  }
}
.header--desktop__right {
  display: flex;
  justify-content: flex-end;
  max-width: 1080px;
  margin: 0 0 0 auto;
  gap: var(--spacing-base);
}
.header--desktop__reservation {
  font-size: var(--text-sm);
}
.header--desktop__reservation {
  margin-bottom: 0;
}
.header--desktop.scroll {
  padding: var(--spacing-sm) 0;
  box-shadow: var(--box-shadow);
}
.header--desktop__lang-switcher {
  display: flex;
  align-items: center;
  margin-right: var(--spacing-sm);
}
.header--desktop__lang-switcher a {
  font-size: var(--text-sm);
}

/*
components
*/
.intro {
  margin-top: 57px;
  text-align: center;
}
@media screen and (min-width: 1280px) {
  .intro {
    margin-top: 0;
  }
}
.intro__wrapper {
  padding: 0;
}
.intro__image,
.intro .wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 1024px) {
  .intro__image,
  .intro .wp-post-image {
    max-height: 50svh;
  }
}
@media screen and (min-width: 1024px) {
  .intro__row {
    margin: var(--spacing-md) 0;
    display: flex;
    gap: var(--spacing-base);
  }
}
.intro__content {
  position: relative;
  padding: var(--spacing-base) 0 var(--spacing-base);
  margin: 0 auto;
  background-color: var(--bg-accent);
}
@media screen and (min-width: 1024px) {
  .intro__content {
    margin-top: 0;
    flex: 1;
    padding: var(--spacing-base);
  }
}
.intro__content .reviews {
  margin-top: var(--spacing-md);
}
@media screen and (min-width: 1024px) {
  .intro__content .reviews {
    margin-top: var(--spacing-xl);
  }
}
.intro__page-content {
  text-align: left;
  margin: 0 auto;
  padding: var(--spacing-base);
}
@media screen and (min-width: 1024px) {
  .intro__page-content {
    flex: 1;
  }
}
.intro__page-content__wrapper {
  padding: 0;
}
.intro__stars {
  gap: var(--spacing-sm);
  display: flex;
  justify-content: center;
  border-radius: var(--radius-xl);
  background-color: var(--bg-accent);
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 1024px) {
  .intro__stars {
    position: static;
    margin: var(--spacing-base) auto 0;
    transform: none;
  }
}
.intro__title {
  margin-bottom: var(--spacing-2xs);
}
.intro__subtitle {
  color: var(--subtitle-color);
  font-size: var(--text-lg);
  margin: 0 auto 0;
  max-width: 90%;
  text-transform: lowercase;
}
@media screen and (min-width: 1024px) {
  .intro__subtitle {
    max-width: 70%;
  }
}
.intro__btns {
  margin: var(--spacing-base) auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-base);
}
@media screen and (min-width: 640px) {
  .intro__btns {
    flex-direction: row;
  }
}
@media screen and (min-width: 1024px) {
  .intro__btns {
    margin-bottom: var(--spacing-xl);
    flex-direction: column;
    justify-content: center;
    gap: var(--spacing-base);
  }
}
.intro__btn {
  margin: 0;
}
@media screen and (min-width: 1024px) {
  .intro__btn {
    margin: 0;
  }
}
@media screen and (min-width: 1024px) {
  .intro .contact-bar__row {
    flex-direction: column;
  }
}

.reviews {
  margin: 0 auto var(--spacing-base);
  color: var(--secondary-color);
}
.reviews__row {
  justify-content: center;
  gap: var(--spacing-lg);
}
.reviews__column {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.reviews__title {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-2xs);
  margin-bottom: var(--spacing-xs);
}
.reviews__logo {
  height: var(--text-xl);
  width: auto;
}
.reviews__brand {
  font-weight: 600;
  font-size: var(--text-sm);
  margin-bottom: 0;
  color: var(--secondary-color);
}
.reviews__rating {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-xs);
}
.reviews__scoring {
  font-weight: 500;
  margin-bottom: 0;
  font-size: var(--text-sm);
}
.reviews__scoring--booking {
  color: var(--primary-color);
  padding: var(--spacing-2xs);
  background: #0c3b7c;
  font-size: var(--text-sm);
}
.reviews__booking-rating {
  line-height: 1.1;
  font-weight: 500;
  margin-bottom: 0;
  font-size: var(--text-sm);
}
.reviews__count {
  color: var(--subtitle-color);
  font-size: var(--text-xs);
  line-height: 1.1;
}

.contact-bar {
  background-color: var(--bg-accent);
}
.contact-bar__row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
  flex-direction: column;
}
@media screen and (min-width: 480px) {
  .contact-bar__row {
    flex-direction: row;
  }
}
@media screen and (min-width: 768px) {
  .contact-bar__row {
    gap: var(--spacing-xs) var(--spacing-base);
  }
}
.contact-bar__column {
  display: flex;
  justify-content: center;
}
.contact-bar__link {
  padding: var(--spacing-xs) var(--spacing-xs);
  display: flex;
  align-items: center;
  gap: var(--spacing-2xs);
  margin: 0 auto;
  font-weight: 500;
  font-size: var(--text-xs);
}
@media screen and (min-width: 768px) {
  .contact-bar__link {
    font-size: var(--text-base);
  }
}

.splide__slide p {
  margin-top: var(--spacing-sm);
  text-align: center;
  font-weight: 500;
  text-transform: lowercase;
}

@media screen and (min-width: 1024px) {
  .mobile-slider.splide.is-initialized:not(.is-active) .splide__list {
    display: grid;
    gap: var(--spacing-md) var(--spacing-base);
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 1fr;
  }
  .mobile-slider.splide.is-initialized:not(.is-active) .splide__slide {
    overflow: clip;
    display: block;
    height: 100%;
  }
  .mobile-slider.splide.is-initialized:not(.is-active) .splide__slide img {
    transition: all 0.3s ease-in-out;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .mobile-slider.splide.is-initialized:not(.is-active) .splide__slide:hover p {
    color: var(--third-color);
  }
  .mobile-slider.splide.is-initialized:not(.is-active) .splide__slide:hover img {
    transform: scale(1.1);
  }
  .mobile-slider.splide.is-initialized:not(.is-active).restaurant-menu-slider .splide__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .mobile-slider--cols-2.splide.is-initialized:not(.is-active) .splide__list {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 1fr;
  }
  .mobile-slider--cols-2.splide.is-initialized:not(.is-active) .splide__list a {
    height: 100%;
  }
  .slider-rooms.splide.is-initialized:not(.is-active) .splide__list {
    display: grid;
    gap: var(--spacing-md) var(--spacing-base);
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 1fr;
  }
  .slider-rooms.splide.is-initialized:not(.is-active) .splide__slide {
    border-radius: 0;
    overflow: clip;
    display: flex;
    flex-direction: column;
  }
  .slider-rooms.splide.is-initialized:not(.is-active) .splide__slide a {
    overflow: clip;
  }
  .slider-rooms--others.splide.is-initialized:not(.is-active) .splide__list {
    display: grid;
    gap: var(--spacing-md) var(--spacing-base);
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 1fr;
  }
}
.splide {
  margin-bottom: var(--spacing-md);
}
@media screen and (min-width: 1024px) {
  .splide {
    margin-bottom: 0;
  }
}
.splide__slide img {
  width: 100%;
  height: auto;
}

.events-teaser__row {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .events-teaser__row {
    gap: var(--spacing-md);
    flex-direction: row;
    align-items: center;
  }
}
.events-teaser__header {
  margin: 0 auto;
  max-width: 80%;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .events-teaser__header {
    text-align: left;
  }
}
@media screen and (min-width: 640px) {
  .events-teaser__slider {
    margin: 0 auto;
    max-width: 50%;
  }
}
@media screen and (min-width: 768px) {
  .events-teaser__btn {
    margin: 0;
  }
}

.offers-widget__list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-base);
}
@media screen and (min-width: 1024px) {
  .offers-widget__list {
    flex-direction: row;
  }
}
.offers-widget__item {
  display: flex;
  gap: var(--spacing-base);
}
@media screen and (min-width: 1024px) {
  .offers-widget__item {
    width: 50%;
  }
}
.offers-widget__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.offers-widget__image-box {
  width: 40%;
  overflow: hidden;
}
.offers-widget__content {
  width: 60%;
}
.offers-widget__news-title {
  font-weight: 500;
}
.offers-widget__news-summary p {
  color: var(--subtitle-color);
}

.information-about-hotel__item {
  margin-bottom: var(--spacing-md);
}
.information-about-hotel__title {
  margin-bottom: var(--spacing-sm);
}
@media screen and (min-width: 768px) {
  .informations-section__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 var(--spacing-md);
  }
}
@media screen and (min-width: 1024px) {
  .informations-section__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
}
.informations-section__item {
  margin-bottom: var(--spacing-md);
}
.informations-section__title {
  margin-bottom: var(--spacing-xs);
}
.see-you__wrapper {
  padding: 0;
}
.see-you__row {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .see-you__row {
    flex-direction: row;
  }
}
.see-you__content {
  text-align: center;
  padding: var(--spacing-xl) 0;
}
@media screen and (min-width: 768px) {
  .see-you__content {
    width: 40%;
    padding: var(--spacing-xl) var(--spacing-md);
  }
}
@keyframes wave-animation {
  0% {
    transform: rotate(0deg);
  }
  15% {
    transform: rotate(14deg);
  } /* The following five values can be played with to make the waving more or less extreme */
  30% {
    transform: rotate(-8deg);
  }
  40% {
    transform: rotate(14deg);
  }
  50% {
    transform: rotate(-4deg);
  }
  60% {
    transform: rotate(10deg);
  }
  70% {
    transform: rotate(0deg);
  } /* Reset for the last half to pause */
  100% {
    transform: rotate(0deg);
  }
}
.see-you__hand {
  animation-name: wave-animation;
  animation-duration: 2.5s;
  animation-iteration-count: infinite;
  transform-origin: 70% 70%;
  font-size: var(--text-4xl);
  color: var(--third-color);
  margin-bottom: var(--spacing-md);
}
.see-you__hand:hover {
  transform: translateX(180px) rotate(45deg);
}
.see-you__title {
  text-align: center;
  font-size: var(--text-2xl);
  color: var(--secondary-color);
  font-weight: 700;
  line-height: 1.1;
  max-width: 400px;
  margin-bottom: var(--spacing-md);
}
.see-you__image {
  background: url("./assets/img/bg/ogrod-hotel-george-nadarzyn.jpg") no-repeat center center/cover;
  height: 70svh;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .see-you__image {
    width: 60%;
  }
}

.single-room .informations_section {
  background: none;
}

.contact-info__order {
  display: flex;
  flex-direction: column;
}
.contact-info__row {
  display: flex;
  gap: var(--spacing-md);
  flex-direction: column;
}
@media screen and (min-width: 1024px) {
  .contact-info__row {
    gap: var(--spacing-xl);
    flex-direction: row;
    justify-content: space-between;
    order: 1;
  }
}
@media screen and (min-width: 1280px) {
  .contact-info__row {
    gap: var(--spacing-2xl);
  }
}
.contact-info__column--map {
  margin-bottom: var(--spacing-md);
}
@media screen and (min-width: 1024px) {
  .contact-info__column--map {
    order: 2;
  }
}
.contact-info__data {
  margin: 0 var(--spacing-sm);
  display: flex;
  gap: var(--spacing-md);
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 1024px) {
  .contact-info__data {
    flex: 1;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin-bottom: var(--text-xl);
    gap: var(--spacing-xl);
  }
}
@media screen and (min-width: 1280px) {
  .contact-info__data {
    gap: var(--spacing-3xl);
  }
}
.contact-info__data-section {
  text-align: center;
}
@media screen and (min-width: 1024px) {
  .contact-info__data-section--address {
    order: 2;
  }
}
@media screen and (min-width: 1024px) {
  .contact-info__data-section--phone {
    order: 1;
  }
}
@media screen and (min-width: 1024px) {
  .contact-info__data-section--mail {
    order: 3;
  }
}
.contact-info__contact-method {
  display: flex;
  gap: var(--spacing-md);
  flex-direction: column;
  flex: 1;
}
.contact-info__icon {
  color: var(--third-color);
  font-size: var(--text-xl);
  margin-bottom: var(--spacing-xs);
}
.contact-info__data-section-name {
  font-weight: 500;
  font-size: var(--text-md);
  margin: 0 auto var(--spacing-sm);
  text-transform: lowercase;
}
.contact-info__text {
  margin-bottom: var(--spacing-base);
}
.contact-info__strong {
  font-weight: 600;
  display: block;
}
.contact-info__form {
  order: 1;
}
@media screen and (min-width: 1024px) {
  .contact-info__form {
    order: 3;
    max-width: 50%;
    margin: 0 auto;
  }
}

.mapouter {
  position: relative;
  text-align: right;
  width: 100%;
  height: 600px;
}

.gmap_canvas {
  overflow: hidden;
  background: none !important;
  width: 100%;
  height: 600px;
}

.gmap_iframe {
  height: 600px !important;
}

.contact-form .frm_checkbox label {
  color: var(--subtitle-color);
}
.contact-form .frm_style_styl-formidable.with_frm_style .frm_error,
.contact-form .frm_style_styl-formidable.with_frm_style .frm_limit_error {
  font-family: var(--primary-font);
  color: var(--error-color);
  margin-top: var(--spacing-2xs);
}
.contact-form .frm_style_styl-formidable.with_frm_style .frm_error_style {
  font-family: var(--primary-font);
}

.gallery-section__list {
  display: grid;
  gap: var(--spacing-md);
}
@media screen and (min-width: 640px) {
  .gallery-section__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .gallery-section__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.gallery-section__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.restaurant-menu__hours {
  text-align: center;
  margin: 0 auto var(--spacing-lg);
}
@media screen and (min-width: 1024px) {
  .restaurant-menu__hours {
    margin: 0 auto var(--spacing-xl);
  }
}
.restaurant-menu__hours strong {
  font-weight: 600;
}

@media screen and (min-width: 1024px) {
  .conference-packages__row {
    display: flex;
    justify-content: center;
    gap: var(--spacing-xl);
  }
}

.conference-package {
  margin-bottom: var(--spacing-2xl);
  padding: var(--spacing-md) var(--spacing-base);
}
@media screen and (min-width: 1024px) {
  .conference-package {
    flex: 1 1 0;
    max-width: 768px;
  }
}
@media screen and (min-width: 768px) {
  .conference-package__content {
    border: 2px solid var(--third-color);
    padding: var(--spacing-base);
    background-color: var(--primary-color);
  }
}
.conference-package__price {
  border-top: 1px solid var(--subtitle-color);
  padding-top: var(--spacing-sm);
  font-weight: 600;
  font-size: var(--text-sm);
}
.conference-package__price-suffix {
  color: var(--subtitle-color);
}
.conference-package__price-prefix {
  margin-bottom: var(--spacing-2xs);
  font-size: var(--text-sm);
}
.conference-package__terms {
  color: var(--subtitle-color);
  font-size: var(--text-sm);
  margin: var(--spacing-base) 0 var(--spacing-md);
}

.page-template-conference-packages .events-teaser {
  background-color: var(--bg-accent);
}
.page-template-conference-packages .offers-widget {
  background: none;
}
.page-template-conference-packages .conference-package:nth-child(even) {
  background: var(--bg-accent);
}
.menu-food__list {
  display: grid;
  gap: var(--spacing-md);
}
@media screen and (min-width: 768px) {
  .menu-food__list {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-lg);
  }
}
@media screen and (min-width: 1280px) {
  .menu-food__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.menu-food__list-item {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .menu-food__list-item {
    border: 2px solid var(--third-color);
    padding: var(--spacing-base);
    background-color: var(--primary-color);
  }
}
.menu-food__title {
  font-weight: 500;
  font-size: var(--text-md);
}
.menu-food__price {
  border-top: 1px solid var(--subtitle-color);
  padding-top: var(--spacing-sm);
  font-size: var(--text-sm);
  font-weight: 600;
}

.available-rooms__list {
  display: grid;
  gap: var(--spacing-md);
}
@media screen and (min-width: 768px) {
  .available-rooms__list {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-lg);
  }
}
.available-rooms__gallery {
  margin-bottom: var(--spacing-md);
}

/*
menu
*/
/* Style the navigation menu */
.navigation-mobile .icon {
  display: flex;
  padding: var(--spacing-sm);
  z-index: 4;
  position: relative;
}
.navigation-mobile {
  /* Hide the links inside the navigation menu (except for logo/home) */
}
.navigation-mobile__fullscreen {
  display: none;
}
.navigation-mobile__fullscreen.open {
  background-color: hsla(270, 50%, 40%, 0.966);
  backdrop-filter: blur(5px);
  position: fixed;
  left: 0;
  top: 0;
  width: 100svw;
  height: 100svh;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-sm);
  transition: all 0.2s ease-in-out;
}
.navigation-mobile__fullscreen {
  /* Style navigation menu links */
}
.navigation-mobile__fullscreen a:not(.btn) {
  color: var(--primary-color);
  text-align: left;
  text-decoration: none;
  font-size: var(--text-sm);
  display: block;
  font-weight: 500;
}
.navigation-mobile__fullscreen .sub-menu {
  margin: var(--spacing-2xs) 0 var(--spacing-xs);
}
.navigation-mobile__fullscreen .sub-menu a {
  font-weight: 300;
}
.navigation-mobile__fullscreen {
  /* Style the hamburger menu */
}
.navigation-mobile__fullscreen .btn {
  background-color: var(--secondary-color);
  font-weight: 500;
}
.navigation-mobile__menu {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
  margin-bottom: var(--spacing-base);
}

.hamburger.menu-bars {
  display: inline-block;
  cursor: pointer;
}
.hamburger.menu-bars .bar1,
.hamburger.menu-bars .bar2,
.hamburger.menu-bars .bar3 {
  width: 30px;
  height: 2px;
  background-color: var(--secondary-color);
  margin: 6px 0;
  transition: 0.4s;
}
.hamburger.menu-bars.change .bar {
  background-color: var(--primary-color);
}
.hamburger.menu-bars {
  /* Rotate first bar */
}
.hamburger.menu-bars.change .bar1 {
  transform: translate(0, 8px) rotate(-45deg);
}
.hamburger.menu-bars {
  /* Fade out the second bar */
}
.hamburger.menu-bars.change .bar2 {
  opacity: 0;
}
.hamburger.menu-bars {
  /* Rotate last bar */
}
.hamburger.menu-bars.change .bar3 {
  transform: translate(0, -8px) rotate(45deg);
}

/* 
navigation desktop
Create a sticky/fixed navbar */
.desktop-menu {
  display: flex;
  background-color: transparent;
  transition: 0.4s; /* Adds a transition effect when the padding is decreased */
  z-index: 99;
  /* Style the navbar links */
}
.desktop-menu a {
  font-size: var(--text-sm);
}
.desktop-menu .menu-item,
.desktop-menu .lang-item {
  color: var(--secondary-color);
  text-align: center;
  padding: var(--spacing-xs);
  text-decoration: none;
  line-height: 2;
}
.desktop-menu .menu-item:hover,
.desktop-menu .menu-item .current-menu-item,
.desktop-menu .lang-item:hover,
.desktop-menu .lang-item .current-menu-item {
  color: var(--third-color);
}
.desktop-menu .menu-item-has-children {
  position: relative;
}
.desktop-menu .menu-item-has-children .sub-menu {
  display: none;
  width: fit-content;
}
.desktop-menu .menu-item-has-children:hover .sub-menu {
  background: var(--bg-accent);
  display: block;
  padding: var(--spacing-sm);
  position: absolute;
  top: 100%;
  overflow: clip;
  z-index: 2;
  box-shadow: var(--box-shadow);
}
.desktop-menu .menu-item-has-children:hover .sub-menu .menu-item {
  padding: 0;
}
.desktop-menu .menu-item-has-children:hover .sub-menu .menu-item a {
  padding: var(--spacing-xs) var(--spacing-base);
  display: block;
  text-wrap: nowrap;
  text-align: left;
}
.desktop-menu .menu-item-has-children:hover .sub-menu .menu-item a:hover {
  background-color: var(--bg-color);
}

/*
news
*/
.page-template-news .offers-widget .section__header {
  display: none;
}

/*
rooms
*/
@media screen and (min-width: 1024px) {
  .room__item-row {
    display: flex;
    gap: var(--spacing-md);
  }
}
@media screen and (min-width: 1024px) {
  .room__column-gallery {
    width: 60%;
  }
}
@media screen and (min-width: 1024px) {
  .room__column-content {
    width: 40%;
  }
}
/*
restaurant
*/
.page-template-restaurant .restaurant {
  background: none;
}
@media screen and (max-width: 1024px) {
  .page-template-restaurant .intro {
    margin-bottom: 0;
  }
}
.page-template-restaurant .restaurant-gallery {
  background-color: var(--bg-accent);
}
.page-template-restaurant .restaurant-gallery .btn {
  display: none;
}

/*
conferency-house
*/
/*
content
*/
.content ul {
  margin-bottom: var(--spacing-md);
}
.content li {
  list-style: disc inside;
  margin-bottom: var(--spacing-2xs);
}
.content li::marker {
  color: var(--third-color);
}

/*
page
*/
@media screen and (min-width: 768px) {
  .page-template-default__wrapper {
    max-width: 768px;
  }
}

/*
coffee-break
*/
.coffee-breaks__list {
  display: grid;
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-md);
}
@media screen and (min-width: 768px) {
  .coffee-breaks__list {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-lg);
  }
}
@media screen and (min-width: 1280px) {
  .coffee-breaks__list {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-md);
  }
}
@media screen and (min-width: 768px) {
  .coffee-breaks__list-item {
    border: 2px solid var(--third-color);
    padding: var(--spacing-base);
    background-color: var(--primary-color);
  }
}
.coffee-breaks__title {
  font-weight: 500;
  font-size: var(--text-md);
  text-transform: lowercase;
}
.coffee-breaks__price {
  border-top: 1px solid var(--subtitle-color);
  padding-top: var(--spacing-sm);
  font-weight: 500;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-sm);
  font-size: var(--text-sm);
}
.coffee-breaks__price-title {
  margin-bottom: var(--spacing-2xs);
  font-size: var(--text-sm);
}

* {
  box-sizing: border-box;
}