/*
    Theme Name: Teema-1
    Author: KotisivuX
    Version: 1
*/
:root {
  --body-bg: #f2f0ee;
  --main-bg: #b4beb0;
  --header-bg: #f2f0ee;
  --header-border: #dadada;
  --footer-bg: #0e0d08;
  --footer-color: #f2f0ee;
  --menu-color: #1a100b;
  --mobile-menu-active: #efac00;
  --title-color: #1a100b;
  --reservation: #f7c406;
  --reservation-color: #000;
  --contact-bg: #fff;
  --contact-color: #000;
  --contact-bg: #fff;
  --job-title: #f7c406;
  --open-mobile-bg: #f6f3f3;
  --light-text-color: #1a100b;
  --site-label: #efac00;
  --icons-border: #0e0d08;
  --icons-bg: invert(60%) sepia(83%) saturate(512%) hue-rotate(3deg) brightness(97%) contrast(102%);
  --ad-color: #efac00;
  --element-background: #fff;
  --border-color: #000;
  --swiper-pagination-color: #efac00;
  --swiper-pagination-bullet-inactive-color: #9a9a9a;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
}
/* max-width and padding */
.main-section, .inner_header, .inner-footer, .information-workers, #map-container {
  padding: 0 100px;
  max-width: 2200px;
}
#top-section {
  padding: 100px 100px 80px;
  max-width: 2200px;
}
#front-features, #testimonials {
  max-width: 100%;
}
.breadcrumb {
  padding: 74px 100px 64px;
  max-width: 2200px;
}

/* max-width end */

html {
    margin:0 !important;
  scroll-behavior: smooth !important;
    color: #1a1c21;
    box-sizing: border-box;
  scroll-behavior: smooth;
}
*, *:before, *:after {
  box-sizing: inherit;
}
* {
    -webkit-tap-highlight-color: transparent;
    outline: none;
}
a:focus,a:visited,a:active {
  outline: none;
  box-shadow: none;
}
body {
    text-align: left;
    margin: 0;
    background-color: var(--body-bg);
    min-height: 100vh;
    position: relative;
    font-family: 'Recursive', sans-serif;
    word-wrap: break-word;
}
.body-active {
  overflow: hidden;
}
.website-disabled-notice {
  width: 100%;
  min-height: 100vh;
  background-color: #f2f2f7;
  z-index: 99999;
  position: relative;
  height: 100%;
}
.website-disabled-wrapper {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 32px;
  align-items: center;
  padding: 120px 32px 32px;
}
.website-disabled-wrapper img {
  max-width: 300px;
 margin: 0 auto;
 width: 100%;
}
.website-disabled-wrapper h1 {
  font-size: 50px;
  text-align: center;
  color: #4e4e4e;
  font-weight: 700;
}
.website-disabled-wrapper p {
  font-size: 18px;
  line-height: 1.5;
  color: #767676;
  text-align: center;
  max-width: 660px;
}
.link-to-main-page {
  position: absolute;
  bottom: 42px;
  right: 42px;
}
.link-to-main-page img {
  max-width: 92px;
}

/* latin */
@font-face {
  font-family: 'Recursive';
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url(css/fonts/Recursive.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
a {
    color: #1a1c21;
    text-decoration: none;
}
img {
    display: block;
    margin: 0;
    image-rendering: -webkit-optimize-contrast;
    text-indent:-9999px;
    color: transparent;
}
textarea:focus, input:focus{
    outline: none;
}
h3, h4, h5, h6 {
  color: var(--title-color);
  margin: 0;
  font-size: 32px;
  font-weight: 500;
  line-height: 1.5;
}
h5 {
  font-size: 16px;
}
p {
  color: var(--light-text-color);
  font-size: 22px;
  line-height: 1.6;
}
p, h1 {
  margin:0;
  padding:0
}
main {
  margin: 0 auto;
  padding: 80px 0 0;
}
#cookieSettings {
  background-color: transparent;
  border: unset;
  cursor: pointer;
  position: absolute;
  bottom: 10px;
  right: 50px;
  z-index: 9;
}
#cookieSettings img {
  width: 32px;
  height: 32px;
}
#cookieModal {
  position: fixed;
  bottom: 32px;
  right: 32px;
  background-color: #fbf0e2;
  width: 358px;
  padding: 16px 24px;
  z-index: 9;
  border-radius: 12px;
}
#cookieModal img {
  margin: 0 auto;
}
#cookieModal p {
  margin: 16px 0;
}
#cookieModal span {
  font-size: 10px;
  display: inline-block;
  cursor: pointer;
  color: #848484;
  margin-bottom: 14px;
  padding-bottom: 1px;
  border-bottom: 1px solid #848484;
}
.link {
  cursor: pointer;
  color: #004bac;
  padding-bottom: 1px;
  border-bottom: 1px solid #004bac;
}
.cookie-hide {
  height: 0;
  visibility: hidden;
  transition: opacity 1s ease-out;
  opacity: 0;
  overflow: hidden;
}
.cookie-hide.active {
  visibility: visible;
  opacity: 1;
  height: auto;
  margin-bottom: 20px;
}
#cookie-hide p {
  color: #707070;
  font-size: 12px;
  margin: 0;
}
.cookie-wrapper:first-child {
  margin-bottom: 28px;
}
.cookie-name {
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 6px;
}
#accept {
  border: unset;
  background-color: #a9dbb5;
  padding: 12px;
  cursor: pointer;
  font-size: 16px;
}
#decline {
  border: unset;
  background-color: #fff;
  padding: 12px;
  cursor: pointer;
  font-size: 16px;
}
.top-bar {
  top: 0;
  position: relative;
  display: flex;
  align-items: center;
  gap: 24px;
  justify-content: center;
  font-size: 12px;
  background-color: var(--footer-bg);
  color: #fff;
}
.top-bar a {
  color: #fff;
}
.top-bar div {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 6px 0;
}
.top-bar img {
  filter: var(--icons-bg);
}
#header {
  height: 80px;
  width: 100%;
  z-index: 101;
  background-color: var(--header-bg);
  position: absolute;
  border-bottom: 1px solid var(--header-border);
}
.inner_header {
  margin: 0 auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: right;
  gap: 50px;
}
.header-logo {
  margin-right: auto;
}
.header-logo a img {
  max-width: 220px;
  height: auto;
  max-height: 78px;
  width: auto;
  transition: 0.5s;
}
.fixed-logo a img {
  max-width: 150px;
  height: auto;
  max-height: 52px;
  width: auto;
  transition: 0.5s;
}
.logo-name {
  font-size: 24px;
  max-width: 360px;
  display: inline-block;
  font-weight: 400;
  color: var(--title-color);
  letter-spacing: -1px;
}
#header.header-sticky {
  background-color: var(--body-bg);
  top: 0px;
  position: fixed !important;
  height: 68px;
}

.inner_header-active {
  height: 68px;
}

.inner_header-active .open-first {
  border-radius: 0;
  box-shadow: unset;
}
.menu-navigation-container {
  width: 100%;
}
#menu-navigation {
  display: flex;
  gap: 56px;
}
.menu-item {
  list-style-type: none;
  display: inline-block;
  font-size: 18px;
}
.menu-item a {
  line-height: 20px;
  color: var(--menu-color);
  font-size: 20px;
  font-weight: 400;
}
.menu-item .active, .menu-item a:hover {
  color: var(--mobile-menu-active);
}
.active-sticky {
  position: absolute;
  top: 36px;
  width: 100%;
  height: 50px;
  z-index: -1;
}
.main-section {
  margin: 166px auto 0;
 scroll-margin: 54px;
}
#top-section {
  margin: 0 auto;
}
.hero-left {
  width: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
.top-left {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.banner-image img {
  margin-left: auto;
  height: auto;
  width: auto;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
  max-height: 1000px;
  max-width: 100%;
}
.banner-image {
  display: flex;
  justify-content: right;
  align-items: center;
  width: 50%;
}
.header-buttons, .top-section-buttons {
  display: flex;
  align-items: center;
  gap: 18px;
  justify-content: left;
}
.open-reservation, .take-contact {
  cursor: pointer;
  padding: 11px 18px;
  font-size: 18px;
  line-height: 30px;
  z-index: 8;
  font-weight: 500;
  width: max-content;
  color: #FFF;
  border-radius: 12px;
  white-space: nowrap;
  text-align: center;
}
.take-contact {
  background-color: var(--contact-bg);
  color: var(--contact-color);
  border: var(--contact-bg);
}
.take-contact:hover {
  text-decoration: underline;
}
.page-template-theme-contact-prod .take-contact, .page-template-theme-contact .take-contact {
  opacity: 0.5;
}
.open-reservation {
  background-color: var(--reservation);
  position: relative;
  overflow: hidden;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--reservation-color);
  gap: 4px;
}
.open-reservation:hover {
  text-decoration: underline;
}
.open-reservation::before {
  content: "";
  background-image: url(images/calendar-check.svg);
  background-repeat: no-repeat;
  background-position: 0px 0px;
  background-size: 30px;
  display: block;
  height: 30px;
  width: 30px;
  filter: invert(6%) sepia(71%) saturate(292%) hue-rotate(335deg) brightness(107%) contrast(101%);
}
.hide-show-contact {
    display: none;
}
.hide-show-reservation {
    display: none;
}
.scroll-top {
  position: absolute;
  left: 0px;
  line-height: 40px;
  padding: 0 20px;
  cursor: pointer;
  top: -60px;
  transition: 0s;
  height: 68px;
}
.main-title, .second-main-title {
  color: var(--title-color);
  margin: 26px auto 0;
  text-wrap: balance;
  font-size: 74px;
  font-weight: 500;
  letter-spacing: -2px;
  line-height: 1.2;
  text-align: left;
}
.second-main-title {
  text-align: center;
  margin: 4px auto 16px;
}
.info-content.social {
  display: flex;
  justify-content: center;
}
.social-links.hide-social-two {
  display: flex;
  justify-content: center;
  gap: 18px;
  flex-wrap: wrap;
}
.info.hide-info {
  display: flex;
  justify-content: center;
  gap: 0 42px;
  margin: 158px auto 0;
  font-size: 14px;
  max-width: 1300px;
}
.info-content h3 {
  font-weight: 700;
  color: var(--title-color);
  margin-bottom: 4px;
}
.info-content a, .info-content.address p {
  color: var(--light-text-color);
}
.info-content {
  position: relative;
  line-height: 18px;
  text-align: center;
  color: var(--light-text-color);
  display: flex;
  align-items: center;
  gap: 12px;
  flex-grow: 1;
  max-width: 346px;
  flex-direction: column;
  line-height: 1.5;
}
.info-content p, .info-content a {
  font-size: 18px;
}
.info-header {
  color: var(--title-color);
  font-weight: 700;
  font-size: 18px !important;
  display: flex;
  align-items: center;
  gap:4px;
}
.info-header img {
  filter: var(--icons-bg);
}
.front-services-title-wrapper {
  display: flex;
  gap: 94px;
  align-items: center;
  margin: 0 auto;
}
.front-services-title {
  width: 50%;
}
#front-features {
  margin-top: 0;
}
.features-wrapper {
  display: flex;
  gap: 124px;
  align-items: center;
}
.features-items h2 {
  font-size: 42px;
  line-height: 1.2;
  width: 600px;
  flex-shrink: 0;
  font-weight: 500;
  color: var(--title-color);
}
.features-content-div p {
  margin: 24px 0;
}
#front-features {
  margin-top: 0;
  background-color: var(--element-background);
}
.front-features-container {
  margin: 0 auto;
  max-width: 2000px;
}
.features-items {
  width: 100%;
  border-bottom: 1px solid var(--border-color);
  padding: 64px 0;
}
.features-items:last-child {
  border-bottom: unset;
}
#front-services h2, #front-services .site-label {
  text-align: left;
}
.about .about-front p {
  text-align: left;
  text-wrap: unset;
}
.front-services-title-wrapper .about {
  margin-bottom: 0;
  width: 50%;
}
.about-content.about-front {
  color: var(--light-text-color);
  font-size: 22px;
  line-height: 1.6;
  text-align: left;
}
#front-services-swiper {
  margin-top: 24px;
}
.front-services-title .second-title {
  margin: 0 0 54px;
}
.about-front p:last-child {
  margin-bottom: 0;
}
.icons-section {
  display: flex;
  flex-wrap: wrap;
  gap: 26px;
  margin: 24px auto 0;
  position: relative;
}
.service-icon {
  display: flex;
  justify-content: right;
  width: 100%;
  border-bottom: 1px solid var(--border-color);
  padding: 0 0px 26px 0;
}
.service-icon:not(:has(.icon-wrapper)) .h3-wrapper, .service-icon:not(:has(.icon-wrapper)) .service-description-icon {
  width: calc(50%);
}
.service-icon:first-child {
  border-top: 1px solid var(--border-color);
  padding-top: 26px;
}
.h3-wrapper {
  width: calc(50% - 100px);
  flex-shrink: 0;
  text-align: left;
  padding: 0 88px;
  border-right: 1px solid var(--border-color);
  align-content: center;
}
.h3-wrapper h2 {
  color: var(--title-color);
  margin: 0;
  font-size: 32px;
  font-weight: 500;
  line-height: 1.5;
}
.icon-wrapper {
  width: 200px;
  border-right: 1px solid var(--border-color);
  display: flex;
  align-items: center;
}
.service-description-icon {
  width: calc(50% - 100px);
}
.service-icon img {
  max-width: 64px;
  height: auto;
  margin: 0 auto;
}
.service-description-icon p {
  margin: 17px 0;
  padding: 0 90px;
}
.about {
  margin: 32px auto 16px;
  width: 100%;
}
.about-content p {
  font-size: 24px;
  line-height: 1.5;
  margin-bottom: 24px;
  text-align: left;
}
.description {
  margin: 42px auto 0;
  max-width: 1200px;
  color: var(--light-text-color);
  text-align: center;
  text-wrap: balance;
  font-size: 24px;
  line-height: 1.5;
}
.description p {
  font-size: 24px;
  line-height: 1.5;
  text-wrap: balance;
  text-align: center;
  max-width: 1200px;
  margin-bottom: 24px;
}
.social-links.hide-social-two .button {
  width: 38px;
  height: 38px;
  background-color: var(--footer-bg);
  padding: 8px;
  border-radius: 4px;
  border: 1px solid var(--icons-border);
  transition:  0.23s;
}
.social-icon {
  width: 20px;
  height: 20px;
  display: inline-block;
  background-size: 20px;
  background-repeat: no-repeat;
  filter: var(--icons-bg);
}
.news-container {
  display: flex;
  flex-wrap: wrap;
  gap: 44px;
  margin: 40px auto 64px;
  flex-direction: column-reverse;
  align-items: center;
  max-width: 1000px;
}
.news {
  position: relative;
  height: auto;
  box-sizing: border-box;
  width: 100%;
  border-radius: 4px;
  padding: 50px;
  background-color: var(--element-background);
  box-shadow: 0 20px 60px 0 rgba(196, 196, 196, 0.05);
}
.news:last-child {
  margin-bottom: 0;
}
.news-label span {
  font-size: 15px;
  text-align: center;
  padding: 6px 10px;
  font-size: 14px;
  line-height: 1.1em;
  background-color: var(--reservation);
  border-radius: 10px;
}
.news img {
  max-width: 100%;
  border-radius: 10px;
  margin: 24px 0;
}
.news-title {
  margin: 20px 0 0;
  color: var(--title-color);
  font-size: 42px;
  font-weight: 500;
  line-height: 1.3;
}
.publisher-info {
  display: flex;
  flex-direction: column;
  margin-left: auto;
  order: 2;
}
.publisher-info span {
  font-size: 14px;
  color: var(--light-text-color);
}
.publisher-info p {
  font-size: 18px;
  font-weight: 700;
  color: var(--site-label);
}
.news-text {
  margin-top: 28px;
}
.news-text p {
  margin-bottom: 32px;
}
.button:hover {
  transform: translateY(-2px);
}
.worker-social-media {
  border-radius: 4px;
  border: 1px solid var(--icons-border);
  transition: 0.3s;
  height: 34px;
  width: 34px;
  background-color: var(--footer-bg);
}
.worker-social-media-name {
  width: 22px;
  height: 22px;
  display: inline-block;
  background-size: 22px;
  margin: 5px;
  background-repeat: no-repeat;
  filter: var(--icons-bg);
}
.footer-social-links .button {
  background-color: var(--footer-bg);
  border-radius: 4px;
  width: 40px;
  height: 40px;
  border: 1px solid var(--icons-border);
  transition: 0.23s;
}
.footer-social-links .social-icon {
  width: 24px;
  height: 24px;
  background-size: 24px;
  margin: 7px;
  border-radius: 4px;
  filter: var(--icons-bg);
}
.Facebook {
  background-image: url(images/facebook-filled.svg);
}
.Instagram {
  background-image: url(images/instagram-filled.svg);
}
.Tiktok {
  background-image: url(images/tiktok-filled.svg);
}
.Twitter {
  background-image: url(images/twitter-filled.svg);
}
.Linkedin {
  background-image: url(images/linkedin-filled.svg);
}
.Whatsapp {
  background-image: url(images/whatsapp-filled.svg);
}
.Youtube {
  background-image: url(images/youtube-filled.svg);
}
.Pinterest {
  background-image: url(images/pinterest-filled.svg);
}
.Snapchat {
  background-image: url(images/snapchat-filled.svg);
}
.second-title {
  text-align: center;
  color: var(--title-color);
  word-wrap: break-word;
  font-size: 60px;
  font-weight: 500;
  line-height: 78px;
  letter-spacing: -1px;
  margin: 0 0 78px;
}
.second-title.button-title {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 22px;
}
.site-label {
  text-align: center;
  color: var(--site-label);
  margin: 13px auto;
  font-size: 20px;
  line-height: 1.2em;
  width: 100%;
  display: inline-block;
}
.breadcrumb {
  margin: 0 auto;
}
.page-template-theme-pricing #prices, .page-template-theme-gallery #gallery, .page-template-theme-news #news-section, .page-template-theme-services .icons-section, .page-template-theme-services #services-section {
  margin-top: 0;
}
.next-button img, .prev-button.active img {
  filter: invert(41%) sepia(5%) saturate(550%) hue-rotate(71deg) brightness(92%) contrast(86%);
  cursor: pointer;
}
.prev-button img {
  filter: invert(94%) sepia(9%) saturate(180%) hue-rotate(209deg) brightness(96%) contrast(103%);
}
.services-container {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}
.service-div {
  width: 100%;
  overflow: hidden;
  padding: 42px 0;
  scroll-margin-top: 100px;
  border-bottom: 1px solid var(--border-color);
  display: flex;
}
.service-div:first-child {
  border-top: 1px solid var(--border-color);
}
.service-image-bulletpoints {
  display: flex;
  gap: 64px;
  width: 50%;
  padding: 32px 58px 32px;
}
.service-image {
  border-right: 1px solid var(--border-color);
  padding: 32px 58px 32px 32px;
}
.service-image img {
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
  height: auto;
  max-width: 362px;
  width: 400px;
}
.bulletpoints-wrapper {
  margin-top: 14px;
}
.bulletpoints-items {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 20px;
}
.bulletpoints-items img {
  filter: invert(93%) sepia(19%) saturate(7477%) hue-rotate(357deg) brightness(98%) contrast(98%);
  margin-top: 10px;
}
.bulletpoints-items h3, .bulletpoints-items h4 {
  font-size: 22px !important;
  font-weight: 500;
}
.page-template-theme-services .features-items {
  width: calc(50% - 20px);
  color: var(--title-color);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
}
.name-wrapper {
  border-right: 1px solid var(--border-color);
  width: 86%;
  padding: 32px 58px 32px;
}
.service-div:not(:has(.service-image-bulletpoints)) .name-wrapper {
  border-right: unset;
  width: 100%;
}
.service-div h2, .service-div > h3 {
  color: var(--title-color);
  margin: 0;
  font-size: 32px;
  font-weight: 500;
  line-height: 1.5;
}
.service-div p {
  margin: 24px 0;
}
.gallery-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-top: 42px;
  gap: 40px;
}
.gallery-image.gallery {
  width: calc(20% - 32px);
}
.worker {
  width: calc(25% - 24px);
  display: flex;
  padding: 12px 12px 22px 12px;
  background-color: var(--element-background);
  flex-direction: column;
  text-align: left;
  overflow: hidden;
  position: relative;
  transition: 0.2s;
  flex-wrap: wrap;
}
.home .worker {
  cursor: pointer;
}
.worker.open {
  cursor: unset;
}
.worker:hover {
  box-shadow: 8px 0 20px #00000012;
}
.worker:hover .plus-icon {
  width: 20px;
  height: 20px;
}
.worker-name-job-title {
  margin-left: 8px;
}
.worker-modal .worker-name-job-title {
  margin-left: 0;
}
.gallery-image img {
  margin: 0 auto;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
  width: 100%;
  height: auto;
}
.gallery-image img:hover {
  opacity: 0.8;
}
.worker-wrapper {
  display: flex;
  justify-content: center;
  gap: 32px;
  flex-wrap: wrap;
}
.worker-phone-email {
  margin: 22px 0 0px;
}
.page-template-theme-information .worker-phone-email {
  margin: 22px 0 0 8px;
}
.worker-name {
  font-size: 30px;
  color: var(--title-color);
  text-align: left;
  margin: 12px 0 6px;
  font-weight: 500;
}
.job-title {
  color: var(--job-title);
  font-size: 16px;
  line-height: 13px;
  font-weight: 400;
}
.worker-modal {
  display: none; 
}
.worker-modal-content {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--element-background);
  position: fixed;
  max-width: 710px;
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 79%;
  padding: 36px;
  width: 100%;
  max-width: 827px;
}
.worker.open .worker-modal {
  display: block;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 9999;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(7px);
  background-color: #302a274d;
}
.worker-modal-content .worker-img {
  width: 200px;
}
.worker-des p {
  margin: 24px 0;
  font-weight: 300;
}
.worker-phone, .worker-email {
  display: flex;
  font-size: 16px;
  color: var(--light-text-color);
  margin-bottom: 8px;
  justify-content: left;
}
.worker-email:hover, .worker-phone:hover {
  text-decoration: underline;
}
.worker-img {
  position: relative;
}
.worker-img img {
  height: auto;
  max-width: 100%;
}
.plus-icon {
  background-color: var(--job-title);
  position: absolute;
  bottom: 20px;
  border-radius: 0 !important;
  right: 16px;
  transition: 0.2s;
  border-radius: 16px !important;
}
.worker .social-links {
  display: flex;
  justify-content: center;
  gap: 18px;
  margin: 28px 0 12px;
}
.front-pricing {
  width: 100%;
}
.services {
    display:flex;
    margin: 0 auto;
    flex-wrap:wrap;
   gap: 32px;
}
.service {
  flex: 1;
  box-sizing: border-box;
  background-color: var(--element-background);
  padding: 54px;
  width: 100%;
  min-width: 100%;
}
.service-title {
  margin: 0px 0 12px 0;
  font-size: 32px;
  font-weight: 700;
  color: var(--title-color);
}

.services-wrapper {
    line-height:32px;
    color: var(--light-text-color);
    position: relative;
    margin-bottom: 8px;
}
.service-name {
    display:table-cell;
    white-space:nowrap;
    padding-right:5px;
  color: var(--title-color);
  font-size: 26px;
  line-height: 1.5;
}
.pricing-list-dots {
    height:1px;
    background-image:radial-gradient(circle closest-side,#000 99%,transparent 100%);
    background-position: 0 29px;
    background-size:5px 1px;
    background-repeat:repeat-x;
    display:table-cell;
    width:100%;
}
.service-price {
  font-size: 26px;
  display: table-cell;
  padding-left: 5px;
  white-space: nowrap;
  color: var(--site-label);
  font-weight: 700;
  line-height: 1.5;
}
.services-wrapper P {
  margin: 6px 0 18px;
  line-height: 1.5;
  font-size: 20px;
  padding-right: 50px;
  font-weight: 300;
}
.services-wrapper:has(.price-description) {
  padding-top: 14px;
}
.prices-reservation {
  margin: 64px auto 0;
}
#news-section {
  margin: 64px auto 0;
}
.about-us-wrapper {
  margin: 0 auto;
  display: flex;
  gap: 42px;
}
.about-us-img-wrapper img {
  width: 500px;
  height: 600px;
  max-height: 696px;
  max-width: 1790px;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}
.about-text-wrapper {
  display: flex;
  flex-direction: column;
  gap: 4px;
  justify-content: center;
  background-color: var(--element-background);
  padding: 64px;
  box-shadow: 0 20px 60px 0 rgba(196, 196, 196, 0.05);
}
.about-text-wrapper h2, .about-text-wrapper .site-label {
  text-align: left;
}
.about-text-wrapper h2 {
  margin-bottom: 46px;
}
.second-title.about-title {
  text-align: left;
  margin: 0;
}
.about-text-content p {
  margin-bottom: 42px;
  font-weight: 300;
}
.numbers-container {
  display: flex;
  justify-content: space-evenly;
  padding:54px 0;
  flex-wrap: wrap;
  gap:  46px 0;
  }
.numbers-item {
  text-align: center;
  padding:0 38px;
  flex: 1;
}
.numbers-item span {
  font-size: 48px;
  font-weight: 600;
  color: var(--mobile-menu-active);
}
.numbers-container .numbers-item {
  border: none;
}
.numbers-container .numbers-item:nth-child(2):not(:last-child) {
  border-left: 1px solid #000;
  border-right: 1px solid #000;
}
.numbers-container .numbers-item:nth-child(3):not(:last-child) {
  border-right: 1px solid #000;
}
.numbers-item p {
  font-size: 20px;
}
#testimonials {
  overflow: hidden;
}
.swiper-wrapper {
  margin-bottom: 88px;
}
.testimonial-item {
  display: flex;
  flex-direction: column;
  gap: 44px;
}
.swiper-button-prev, .swiper-button-next {
  display: none !important;
}
.swiper-pagination-testimonials {
  text-align: center;
}
.swiper-slide {
  height: auto !important;
}
#testimonials-swiper .swiper-slide {
  padding: 46px;
  background-color: var(--element-background);
  box-sizing: border-box;
}
.testimonial-meta-content {
  display: flex;
  align-items: center;
  gap: 24px;
  justify-content: center;
}
.testimonial-meta-content h3 {
  font-size: 26px;
}
.testimonial-content p:first-child {
  margin-top: 12px;
}
.testimonial-meta-content img {
  border-radius: 12px;
  height: 80px;
  width: 80px;
}
.testimonial-item p {
  margin-bottom: 32px;
  margin-top: 8px;
  font-weight: 300;
}
.testimonials-buttons {
  display: flex;
  justify-content: end;
  gap: 32px;
  margin-top: -36px;
  z-index: 4999;
  position: relative;
}
.swiper-button-disabled {
  opacity: 0.1;
}
.testimonials-buttons img {
  filter: var(--icons-bg);
  cursor: pointer;
}
.faq-left h2 {
  margin-bottom: 34px;
}
.faq-container {
  margin: 68px auto 0;
}
.faq-wrapper {
  position: relative;
  text-align: center;
  margin-bottom: 14px;
  padding: 14px 52px 14px 32px;
  background-color: var(--element-background);
}
.toggle {
  text-align: left;
  display: block;
  cursor: pointer;
  padding: 28px 52px 28px 0;
  width: 100%;
  color: var(--title-color);
  font-size: 24px;
  font-weight: 500;
}
.content {
    display: grid;
    grid-template-rows: 0fr;
    transition: 500ms;
    overflow: hidden;
  text-align: left;
}
.content .inside {
    min-height: 0;
}
.inside p {
  padding: 0 58px 0 0;
  margin-top: 0px;
  margin-bottom: 22px;
  font-weight: 300;
}
.inside p:last-child {
  margin-bottom: 34px;
}
.content.expanded {
    grid-template-rows: 1fr;
}
.accordion-trigger {
  position: absolute;
  height: 34px;
  width: 34px;
  right: 32px;
  top: 40px;
  transition: 0.5s;
}
.accordion-trigger path {
  color: var(--icons-border);
}
.accordion-trigger.active {
  transform: translate(0, 0) rotate(45deg);
}
.footer-second {
  display: flex;
  justify-content: space-between;
}
.open-days {
  display: flex;
  max-width: 432px;
  margin: 0 0 8px;
  gap: 48px;
  align-items: center;
}
.days {
  font-size: 16px;
  color: var(--footer-color);
  font-weight: 700;
}
.hours {
  margin-left: auto;
  order: 2;
  font-size: 16px;
  color: var(--footer-color);
}
.privacy-link {
  color: var(--footer-color);
  text-decoration: underline;
}
.address-div {
  text-align: center;
}
.address-div p {
  font-size: 18px;
  margin: 0;
  color: var(--footer-color);
}
.address-div h3 {
  font-weight: 700;
  font-size: 24px;
  margin: 12px 0;
}

.footer-social-links {
  display: flex;
  justify-content: center;
  gap: 14px;
}
.prices-reservation {
  justify-content: center;
}
.information-workers {
  margin: 64px auto;
}
.information-map-title {
  text-align: center;
  margin: 0 0 32px 0;
}
#map-container {
  margin: 64px auto 0;
}
#map {
  height: 554px;
}
#map iframe {
  width: 100%;
  height: 100%;
  border: 4px solid #fff;
}
#footer {
  background-color: var(--footer-bg);
  margin: 166px auto 0;
  position: relative;
  z-index: 100;
  max-width: 100%;
  color: var(--footer-color);
}
.inner-footer {
  padding: 32px 100px 0;
  margin: 0 auto;
  font-size: 14px;
}
.footer-first {
  display: flex;
  align-items: center;
  margin-bottom: 42px;
}
.footer-phone {
  display: flex;
  gap: 11px;
  align-items: center;
  margin-bottom: 7px;
}
.footer-phone img {
  width: 16px;
  height: auto;
  filter: invert(93%) sepia(19%) saturate(7477%) hue-rotate(357deg) brightness(98%) contrast(98%);
}
.footer-last {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 32px;
  border-top: 1px solid #2a2a2a;
  padding: 32px 0;
}
.footer-menu {
  display: flex;
  gap: 18px;
  padding: 0;
}
.footer-item a:hover {
   border-bottom: 1px solid var(--mobile-menu-active);
}
.footer-menu .active {
  border-bottom: 1px solid var(--mobile-menu-active);
}
.footer-item {
  list-style-type: none;
}
.footer-item a {
  font-size: 16px;
  color: var(--footer-color);
  font-weight: 700;
}
.copy-container {
  display: flex;
  gap: 6px;
  align-items: center;
}
.ad {
  display: flex;
  gap: 6px;
  justify-content: center;
  align-items: center;
}
.copyright {
  display: flex;
  align-items: center;
}
.ad a {
  color: var(--ad-color);
  font-weight: 700;
}
.ad a:hover {
  text-decoration: underline;
}
.open-second {
  margin: 32px auto;
}
.mobile-wrapper {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: rgb(21 21 21 / 47%);
  top: 0;
  left: -100%;
  z-index: 104;
}

.mobile-active {
  left: 0;
  transform: translateX(0%);
  background: rgba(38, 38, 38, 0.1);
  backdrop-filter: blur(3px);
}

.mobile-nav {
  display: inline-block;
  margin: 0 auto;
  max-width: 316px;
  width: 85%;
  z-index: 99;
  position: fixed;
  top: 0;
  overflow-y: scroll;
  max-height: 100%;
  background-color: #f2f0ee;
  left: -316px;
  transform: translateX(0%);
  transition-duration: 0.15s;
  overscroll-behavior: contain;
  box-sizing: border-box;
  height: calc(100vh - calc(100vh - 100%));
}

.mobile-container-active {
  left: 0;
  transform: translateX(0%);
  transition-duration: 0.15s;
  transition-timing-function: cubic-bezier(.6,.04,.98,.34);
}
.navigation-logo {
  padding-top: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.navigation-logo .logo-name {
  text-align: center;
  padding: 0 20px;
}
.header-menu .menu-navigation-container {
  display: flex;
  justify-content: center;
  height: 80px;
  align-items: center;
}
.inner_header-active .menu-navigation-container {
  height: 50px;
}
#menu-navigation-1 {
  padding: 0;
  width: 100%;
  margin-top: 0;
  padding-bottom: 60px;
  margin-top: 0px;
}

.navigation-logo img {
  height: auto;
  width: auto;
  margin: 0 auto;
}

#menu-navigation-1 .menu-item {
  margin: 0;
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  width: 80%;
  margin-left: 10%;
  border-radius: 12px;
}
#menu-navigation-1 .front {
  margin-top: 22px;
}
#menu-navigation-1 .menu-item::before {
  background-repeat: no-repeat;
  background-size: 20px 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  content: "";
  display: inline-block;
  position: absolute;
  left: 30px;
  filter: var(--icons-bg);
}
#menu-navigation-1 .top-section::before {
  background-image: url(images/home.svg);
}
#menu-navigation-1 .news-section:before {
  background-image: url(images/news.svg);
}
#menu-navigation-1 .services-section:before {
  background-image: url(images/service.svg);
}
#menu-navigation-1 .employees:before {
  background-image: url(images/teamwork.svg);
}
#menu-navigation-1 .prices:before {
  background-image: url(images/price.svg);
}
#menu-navigation-1 .gallery:before {
  background-image: url(images/gallery-2.svg);
}
#menu-navigation-1 .visiting-hours:before {
  background-image: url(images/time.svg);
}
#menu-navigation-1 .contact:before {
  background-image: url(images/address.svg);
}
#menu-navigation-1 .about-us:before {
  background-image: url(images/about.svg);
}
#menu-navigation-1 .faq-section:before {
  background-image: url(images/faq.svg);
}
#menu-navigation-1 .map-section:before {
  background-image: url(images/address.svg);
}

.mobile-nav .menu-item a {
  min-width: 100%;
  display: inline-block;
  line-height: 18px;
  padding-left: 72px;
  box-sizing: border-box;
  z-index: 4444;
  position: relative;
  font-size: 18px;
  color: var(--light-text-color);
  text-transform: unset;
  font-family: "Work Sans", sans-serif, geneva;
  margin: 16px 0;
}
.mobile-nav .menu-item .active, .mobile-nav .menu-item:hover {
  color: var(--mobile-menu-active);
}
.navigation-container {
  z-index: 102;
  position: relative;
}
.close-reservation-element {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgb(21 21 21 / 47%);
  top: 0;
  left: -100%;
  z-index: 100;
  position: fixed;
}
.close-reservation-animation {
  animation: 0.4s fadeoutanimation;
}
@keyframes fadeoutanimation {
  0% {
    left: 0;
    transform: translateX(0%);
    opacity: 1;
  }
  100% {
    left: 0;
    transform: translateX(0%);
    opacity: 0;
  }
}

.close-reservation-element.menu-container-active {
  animation: 0.4s fadeinanimation;
  left: 0;
  transform: translateX(0%);
  background: rgba(38, 38, 38, 0.1);
  backdrop-filter: blur(3px);
}

@keyframes fadeinanimation {
  0% {
    left: 0;
    transform: translateX(0%);
    opacity: 0;
  }
  100% {
    left: 0;
    transform: translateX(0%);
    opacity: 1;
  }
}

.navigation-wrapper {
  display: inline-block;
  margin: 0 auto;
  max-width: 50%;
  z-index: 106;
  position: fixed;
  top: 0;
  max-height: 100%;
  background-color: var(--element-background);
  padding: 0;
  left: -50%;
  transform: translateX(0%);
  transition-duration: 0.4s;
 overscroll-behavior: contain;
  box-sizing: border-box;
  min-height: 100vh;
  width: 85%;
}

.navigation-wrapper.menu-active {
  left: 0;
  transform: translateX(0%);
  transition-duration: 0.4s;
  transition-timing-function: cubic-bezier(.6,.04,.98,.34);
}

.open-mobile {
  width: 46px;
  height: 46px;
  opacity: 1;
  cursor: pointer;
  position: absolute;
  top: 46px;
  right: 26px;
  z-index: 101;
  display: none;
  -webkit-tap-highlight-color: transparent;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.open-mobile.sticky {
  top: 12px;
  transition: 0s;
  position: fixed;
}
.line {
  height: 2px;
  display: block;
  width: 24px;
  transition: .25s ease-in-out;
  border-radius: 44px;
  background-color: #383636;
}
.line.second-line {
  margin-top: 5px;
  transition: 0s ease-in-out;
}
.line.third-line {
  margin-top: 5px;
}
.open-mobile.active .first-line {
  transform: rotate(45deg);
  position: absolute;
}
.open-mobile.active .third-line {
  transform: rotate(-45deg);
  position: absolute;
  margin-top: 0;
}
.open-mobile.active .second-line {
  visibility: hidden;
}
.site-iframe {
  display: none;
}
.site-iframe.show-iframe {
  display: block;
}
.container-qa.lost-page {
  width: 100%;
  min-height: 100vh;
  padding-top: 140px;
}
.container-qa.lost-page h1 {
  text-align: center;
  font-size: 42px;
}
.container-qa.lost-page p {
  text-align: center;
  font-size: 16px;
  margin: 22px 0;
}
#information-section {
  margin-top: 0;
  width: 100%;
}
.top-wrapper {
  display: flex;
  gap: 64px;
  margin: 0 auto;
}
#information-section .top-wrapper {
  flex-direction: column;
}
.contact-item.company-name-item {
  font-size: 32px;
  color: var(--title-color);
  font-weight: 600;
  margin-bottom: 18px;
}
.address-wrapper {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 4px;
}
.contact-item p, .contact-item a {
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  text-transform: uppercase;
}
.address-wrapper img, .social-media-section img {
  width: 14px;
  height: 14px;
  filter: var(--icons-bg);
}
.contact-social-wrapper {
  display: flex;
  gap: 22px;
  margin-top: 32px;
}
.contact-social-wrapper a {
  width: 28px;
  height: 28px;
}
.contact-social-wrapper .social-icon {
  width: 28px;
  height: 28px;
  background-size: 28px;
  margin: 0;
}
.address-wrapper.opening-hours-wrapper {
  margin-top: 32px;
}
.main-section.contact-section {
  margin: 84px auto;
}
.contact-container {
  margin-top: 32px;
  display: flex;
}
.contact-container h2 {
  font-size: 28px;
  line-height: 1.1;
  font-weight: 600;
  position: relative;
  letter-spacing: -0.5px;
}
.contact-form {
  width: 100%;
  padding: 42px;
  background-color: #dbd6d0;
  color: var(--title-color);
}
.contact-name {
  display: flex;
  gap: 32px;
  margin-bottom: 16px;
}
.name-first {
  width: calc(50%);
}
.contact-label {
  font-size: 16px;
  margin-bottom: 3px;
  font-weight: 500;
  letter-spacing: -0.5px;
}
.contact-name-input {
  color: var(--light-text-color);
  padding: 16px;
  border-radius: 5px;
  border: 1px solid #fff;
  width: 100%;
  font-size: 20px;
}
.contact-email {
  margin-bottom: 32px;
}
.contact-textarea {
  width: 100%;
  height: 240px;
  border: 1px solid #fff;
  border-radius: 5px;
  padding: 10px;
  color: var(--light-text-color);
  font-size: 20px;
}
.send-button {
  display: inline-block;
  color: #fff;
  background-color: #000;
  padding: 10px 14px;
  border-radius: 6px;
  margin-top: 32px;
  cursor: pointer;
  transition-duration: 0.1s;
  font-size: 18px;
}
.send-button:active {
  background-color: #5f5f5f; 
}
.forminator-response-message.forminator-show.forminator-success {
  background-color: transparent !important;
}
.success-title {
  font-size: 30px;
  margin-top: 20px;
  margin-bottom: 28px;
  font-weight: 600;
}
.success-text {
  color: var(--light-text-color) !important;
  font-size: 18px !important;
}
.forminator-button.forminator-button-submit {
  font-weight: 700 !important;
  font-size: 16px !important;
}
.success-text {
  font-size: 19px !important;
  line-height: 1.5 !important;
}
.privacy-policy {
   padding: 162px 32px 0;
}
.privacy-container {
  padding: 64px;
  max-width: calc(2200px - 200px);
  margin: 0 auto;
  background-color: var(--element-background);
}
.privacy-container h1 {
  font-size: 62px;
  line-height: 1.1;
  font-weight: 600;
  position: relative;
  letter-spacing: -0.5px;
  color: var(--title-color);
}
.privacy-container h2 {
  font-size: 24px;
  font-weight: 600;
  margin-top: 48px;
  color: var(--title-color);
}
.privacy-container p {
  line-height: 28px;
  font-size: 18px;
  color: var(--light-text-color);
}
.privacy-container p strong {
  color: var(--light-text-color);
 margin-right: 2px;
}
.privacy-container ul li {
  color: var(--light-text-color);
  line-height: 28px;
  font-size: 18px;
}
.floating-reservation {
  display: none;
  align-items: center;
  gap: 22px;
  z-index: 99;
  position: sticky;
  bottom: 24px;
  justify-content: center;
}
#wpadminbar {
  display: none;
}
@media only screen and (min-width: 2200px) {
.menu-item a {
  font-size: 24px;
}
.header-logo a img {
  max-width: 216px;
}
.main-title, .second-main-title {
  font-size: 80px;
}
.info.hide-info {
  margin: 258px auto 0;
}
.service-name {
  font-size: 26px;
}
.about {
  max-width: 1210px;
}
.about-content p {
  font-size: 27px;
  line-height: 46px;
}
.pricing-list-dots {
  background-size: 6px 2px;
}
.service-price {
  font-size: 30px;
}
}

@media only screen and (max-width: 1900px) {
.main-section, .inner_header, .information-workers, #map-container {
  padding: 0 32px;
}
#top-section {
  padding: 156px 32px 80px;
}
.inner-footer {
  padding: 32px 32px 0;
}
#menu-navigation {
  gap: 22px;
}
.menu-item a {
  font-size: 15px;
}
.navigation-wrapper {
  max-width: 85%;
  left: -85%;
}
.privacy-container {
  margin: 0 32px;
}
.privacy-policy {
  padding: 156px 0 0;
}
}

@media only screen and (max-width: 1500px) {
.service-image-bulletpoints {
  padding: 32px;
}
.numbers-item {
  border: none !important;
} 
}
@media only screen and (max-width: 1300px) {
.header-logo a img {
  max-width: 160px;
  max-height: 56px;
}
.top-bar {
  display: none;
}
#header {
  height: 60px;
  position: sticky;
  top: 0;
}
.header-menu .menu-navigation-container {
  height: 60px;
}
#menu-navigation, .header-menu {
  display: none;
}
.inner_header {
  height: 60px;
  gap: 0px;
}
.mobile-wrapper {
  display: block;
}
.open-mobile {
  display: flex;
  top: 8px;
  position: fixed;
  right: 22px;
}
.active-sticky {
  bottom: -90px;
  top: unset;
  height: 0;
}
#header.header-sticky {
  position: unset;
}
.open-mobile.sticky {
  top: 8px;
}
.header-buttons {
  margin-right: 42px;
}
.open-reservation, .take-contact {
  padding: 7px 17px;
}
.open-reservation::before {
  background-size: 22px;
  height: 22px;
  width: 22px;
}
.features-items h3 {
  width: 30%;
}
.about-us-wrapper {
  gap: 34px;
}
.about-text-wrapper {
  width: 60%;
  padding: 42px;
}
.about-us-img-wrapper {
  width: 40%;
}
.about-us-img-wrapper img {
  width: auto;
  height: auto;
  max-height: 100%;
  max-width: 100%;
}
.front-features-container {
  gap: 32px;
}
.icon-wrapper {
  width: 100px;
}
.service-icon img {
  max-width: 46px;
}
.h3-wrapper, .service-description-icon {
  width: calc(50% - 50px);
}
.service-description-icon p, .h3-wrapper {
  padding: 0 36px;
}
.worker, .page-template-theme-information .worker {
  width: calc(50% - 16px);
}
.service-div {
  flex-wrap: wrap;
}
.service {
  padding: 32px;
}
.service-image {
  padding: 32px;
  border-right: unset;
}
.service-image img {
  max-width: 280px;
}
.name-wrapper {
  padding: 32px;
  width: calc(100% - 346px);
  border-right: unset;
}
.service-image-bulletpoints {
  width: 100%;
}
.bulletpoints-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 32px;
  width: 100%;
}
.bulletpoints-items {
  width: calc(50% - 16px);
  margin-bottom: 0;
}
.inner-footer {
  padding: 32px 32px 0;
}
.breadcrumb {
  padding: 74px 64px 64px;
}
.second-main-title {
  text-align: left;
}
.description {
  text-align: left;
}
.page-template-theme-information .second-main-title {
  text-align: center;
}
.description p {
  text-align: left;
}
}

@media only screen and (max-width: 1200px) {
#menu-navigation {
  gap: 24px;
}
.info.hide-info {
  gap: 52px 20px;
  flex-wrap: wrap;
}
.front-services-title-wrapper {
  flex-direction: column;
  gap: 0px;
  margin-bottom: 64px;
}
.front-services-title, .front-services-title-wrapper .about {
  width: 100%;
}
.front-services-title .second-title {
  margin: 0;
}
.gallery-wrapper {
  gap: 22px;
}
.gallery-image.gallery {
  width: calc(25% - 17px);
}
#map {
  height: 520px;
}
}

@media only screen and (max-width: 1080px) {
main {
  padding: 86px 0 0;
}
#top-section {
  padding: 84px 64px 80px;
}
.top-wrapper {
  flex-direction: column;
}
.hero-left, .banner-image {
  width: 100%;
}
.banner-image img {
  width: 100%;
}
.info.hide-info {
  margin: 92px auto 0;
}
.main-section {
  margin: 96px auto 0;
}
.mobile-wrapper {
  display: block;
}
.menu-item a {
  font-size: 12px;
}
.info-content {
  width: calc(33.33% - 28px);
}
.service-div h3, h3 {
  font-size: 30px;
}
.service-title, .worker-name {
  font-size: 24px;
}
.features-wrapper {
  gap: 24px;
  flex-direction: column;
}
.features-items h2 {
  width: 100%;
}
.features-items h3 {
  width: 100%;
}
.footer-last {
  justify-content: center;
  flex-direction: column;
  gap: 28px;
}
.worker-wrapper:has(> *:nth-child(2)) .worker .worker-img img {
  border-radius: 0;
  margin: 0 auto;
}
}

@media only screen and (max-width: 900px) {
.features-items {
  min-width: 100%;
}
.about-us-wrapper {
  flex-direction: column-reverse;
}
.about-us-img-wrapper, .about-text-wrapper {
  width: 100%;
}
.about-us-wrapper {
  gap: 0;
}
.about-us-img-wrapper img {
  margin: 0 auto;
}
.worker-wrapper {
  gap: 26px;
}
.worker {
  width: calc(50% - 13px);
}
.worker-modal-content {
  max-width: 80%;
  padding: 20px;
}
.gallery-image.gallery {
  width: calc(33.33% - 15px);
}
.copy-container {
  flex-direction: column;
}
.navigation-wrapper {
  left: -85%;
}
.testimonials-buttons {
  gap: 12px;
}
}

@media only screen and (max-width: 768px) {
.header-logo a img {
  max-width: 118px;
  max-height: 46px;
}
.main-section, .inner_header, .inner-footer, .information-workers, #map-container {
  padding: 0 26px;
}
.breadcrumb {
  padding: 74px 26px 64px;
}
.open-mobile {
  right: 22px;
}
#top-section {
  padding: 64px 26px 80px;
}
.top-wrapper {
  flex-direction: column;
}
.banner-image img {
  margin-left: unset;
}
.hero-left, .banner-image {
  width: 100%;
}
.banner-image {
  justify-content: center;
}
.about-content {
  text-align: center;
}
.top-section-buttons {
  justify-content: center;
}
.service-icon:first-child, .service-icon {
  padding: 46px 0;
}
.service-icon {
  flex-wrap: wrap;
  justify-content: left;
}
.icon-wrapper {
  border: unset;
  width: 64px;
}
.service-icon img {
  margin: unset;
}
.h3-wrapper {
  width: calc(100% - 64px);
  padding: 0;
  border: unset;
}
.service-description-icon p, .h3-wrapper {
  padding: 0;
}
.service-description-icon {
  width: 100%;
}
.service-div {
  flex-wrap: unset;
  flex-direction: column;
  gap: 32px;
}
.service-image {
  padding: 0;
}
.service-image img {
  max-width: 100%;
}
.name-wrapper {
  width: 100%;
  padding: 0;
}
.bulletpoints-wrapper {
  margin-top: -24px;
}
.bulletpoints-items {
  width: 100%;
}
.service-image-bulletpoints {
  padding: 0 0 0 6px;
}
#footer {
  padding-top: 32px;
}
.footer-second {
    flex-direction: column;
    gap: 32px;
    align-items: center;
}
.footer-last {
  border-top: unset !important;
  margin-top: 0px;
}
.copy-container {
  gap: 12px;
}
.footer-phone {
  justify-content: center;
}
.footer-menu {
  flex-direction: column;
  text-align: center;
}
.footer-first {
  flex-direction: column;
  gap: 16px;
}
.services-wrapper {
  margin-bottom: 12px;
  }
.pricing-top {
  display: flex;
  justify-content: space-between;
}
.pricing-list-dots {
  display: none;
}
.service-name {
  white-space: unset;
  padding-right: 10px;
}
}

@media only screen and (max-width: 580px) {
main {
  padding: 8px 0 0;
}
.main-section, .inner_header, .inner-footer, .information-workers, #map-container {
padding: 0 20px;
}
#top-section {
  padding: 28px 20px 32px;
}
#header, .header-menu .menu-navigation-container, .inner_header-active, #header.header-sticky {
  height: 54px;
}
.header-buttons {
  margin-right: 38px;
}
.main-title, .second-main-title {
  font-size: 58px;
}
.features-items h2 {
  font-size: 32px;
  margin: 0;
}
p {
  font-size: 18px;
}
.toggle {
  font-size: 18px;
}
.gallery-image.gallery {
  width: calc(50% - 11px);
}
.open-mobile {
  top: 6px;
  width: 42px;
  height: 42px;
  right: 12px;
}
.open-mobile.sticky {
  top: 6px;
}
.header-buttons .open-reservation {
  display: none;
}
.top-section-buttons {
  display: none;
}
.floating-reservation {
  display: flex;
}
.logo-name {
  font-size: 14px;
  max-width: 155px;
}
.navigation-logo .logo-name {
  font-size: 16px;
  max-width: 248px;
}
.service-icon {
  flex-direction: column;
}
.service-icon:first-child {
  padding: 32px 0;
}
.service-icon {
  padding: 18px 0;
}
.icon-wrapper {
  margin-bottom: 24px;
}
#testimonials-swiper .swiper-slide {
  padding: 28px;
}
.footer-logo .logo-name {
  font-size: 18px;
  max-width: 286px;
  text-align: center;
}
.second-title {
  margin: 0 0 32px;
}
.faq-left h2 {
  margin-bottom: 8px;
}
.second-title {
  font-size: 32px;
  line-height: 42px;
}
.about-text-wrapper {
  padding: 26px 26px 0 26px;
}
.features-items {
  gap: 12px;
}
.features-items img {
  margin-top: -2px;
}
.features-wrapper {
  gap: 18px;
}
.service-div h2 {
  font-size: 28px;
}
.service-icon h2 {
  font-size: 28px;
}
.site-label {
  font-size: 18px;
  line-height: 24px;
}
.address-div p {
  font-size: 14px;
}
.top-wrapper {
  gap: 14px;
}
.main-section {
  margin: 32px auto 0;
}
.features-items {
  padding: 32px 0;
}
.front-services-title-wrapper {
  margin-bottom: 32px;
}
.page-template-theme-gallery #gallery {
  margin: 32px auto;
}
#faq-section {
  margin-bottom: 32px;
}
.page-template-theme-services .features-items {
  font-size: 20px;
  line-height: 1.5;
}
.bulletpoints-items {
  gap: 8px;
}
.bulletpoints-items img {
  margin-top: 6px;
}
.bulletpoints-items h4 {
  font-size: 18px !important;
}
.worker, .page-template-theme-information .worker {
  width: 100%;
}
#about-us {
  padding: 38px 20px;
}
.about-us-img-wrapper, .about-text-wrapper {
  width: 100%;
}
.gallery-wrapper {
  margin-top: 0;
}
.gallery-image {
  width: calc(50% - 13px);
}
.info.hide-info {
  margin: 38px auto 0;
  gap: 32px;
}
.info-content {
  width: 100%;
  gap: 0px;
}
.contact-item p, .contact-item a {
  font-size: 12px;
}
.inside p {
  padding: 0;
}
.page-template-theme-pricing .prices-reservation, .home .prices-reservation {
  display: none;
}
.contact-form {
  padding: 24px;
}
.swiper-wrapper {
  margin-bottom: 17px;
}
.services-wrapper P {
  font-size: 14px;
}
.testimonials-buttons {
  display: none;
}
.faq-wrapper {
  padding: 0px 18px 0px 18px;
}
.toggle {
  padding: 28px 34px 28px 0;
}
.accordion-trigger {
  right: 16px;
}
.breadcrumb {
  padding: 48px 20px 32px;
}
.service {
  padding: 18px;
}
.news-container {
  margin: 0 auto 64px;
}
.news {
  padding: 26px;
}
.service-name, .service-price {
  font-size: 20px;
  line-height: 28px;
}
#footer {
  margin: 32px auto 0;
}
.worker-wrapper:has(> :nth-child(2)) .worker .worker-img img {
  border-radius: 0;
  margin: 0 auto;
}
.privacy-policy {
  padding: 72px 0 32px;
}
.privacy-container {
  margin: 0 20px;
  padding: 26px;
}
.privacy-container h1 {
  font-size: 34px;
}
.news-title {
  font-size: 28px;
}
.contact-name-input {
  padding: 6px 10px;
  font-size: 15px;
}
.contact-textarea {
  font-size: 15px;
}
}
@media only screen and (max-width: 420px) {
.main-title, .second-main-title {
  font-size: 40px;
}
.features-items h3 {
  font-size: 32px;
}
.about-content p, .description, .description p {
  font-size: 20px;
}
.take-contact {
  padding: 5px 12px;
  font-size: 13px;
}
}