/* «Код кожи» v5.27 — one contact block on home, service pages and /kontakty/.
   The class is placed on the actual section.contacts (not on its outer mount),
   so styles continue to apply after the service page replaces it with live
   homepage content. No global theme contact styles are modified. */
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) {
  --kk-contact-green: #173D33;
  --kk-contact-gold: #C7A160;
  color: #2E2F2C;
  background: #fff;
  padding-top: clamp(30px, 4vw, 66px);
  padding-bottom: clamp(50px, 5vw, 82px);
  font-family: "Onest", Arial, sans-serif;
}
/* Use the same .wrapper geometry on all pages, including copied live HTML. */
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) > .wrapper {
  width: 81.7708333333vw;
  max-width: calc(100% - 24px);
  margin-inline: auto;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) *,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) *::before,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) *::after { box-sizing: border-box; }
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container.md-container-with-form {
  display: grid !important;
  grid-template-columns: minmax(270px, .88fr) minmax(280px, 1.14fr) minmax(360px, 1.65fr) !important;
  gap: clamp(24px, 2.6vw, 46px);
  align-items: start;
  justify-content: stretch;
  width: 100%;
  margin: 0;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  min-width: 0;
  height: auto;
  margin: 0;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-title {
  width: 100%;
  margin: 0 0 22px;
  font: 400 clamp(26px, 2.1vw, 36px)/1.2 "Onest", Arial, sans-serif;
  color: #2E2F2C;
  text-align: left;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 17px;
  width: 100%;
  margin: 0 0 24px;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div:first-child,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div:nth-child(2) {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  min-width: 0;
  margin: 0;
  gap: 12px;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div p {
  min-width: 0;
  margin: 0;
  font: 400 14px/1.5 "Onest", Arial, sans-serif;
  color: #2E2F2C;
  text-align: left;
  overflow-wrap: anywhere;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div svg,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div > img {
  display: block;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin: 0;
  object-fit: contain;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div svg path {
  fill: var(--kk-contact-green);
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container .contacts__info-phones p,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container .contacts__info-phones p a {
  font: 700 18px/1.4 "Onest", Arial, sans-serif;
  color: #2E2F2C;
  text-decoration: none;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  margin: 0 0 25px;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social p {
  width: 100%;
  margin: 0 0 12px;
  font: 400 14px/1.5 "Onest", Arial, sans-serif;
  text-align: left;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social > div {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social > div a {
  position: relative;
  display: block;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  margin: 0;
  border-radius: 8px;
  overflow: hidden;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social > div a img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-links:has(a:empty) { display: none; }
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking {
  position: relative;
  z-index: 3;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 266px;
  min-width: 0;
  max-width: 100%;
  min-height: 56px;
  margin: 0;
  padding: 4px 4px 4px 18px;
  border: 0;
  border-radius: 999px;
  background: var(--kk-contact-green) !important;
  color: #fff !important;
  font: 600 14px/1.3 "Onest", Arial, sans-serif;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .2s ease;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking:hover {
  background: var(--kk-contact-gold) !important;
  color: #fff !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking:focus-visible {
  outline: 3px solid var(--kk-contact-gold);
  outline-offset: 3px;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking .kkd-pill-cta__text {
  display: block;
  min-width: 0;
  color: #fff !important;
  white-space: nowrap;
  overflow-wrap: normal;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking .kkd-pill-cta__icon {
  display: grid;
  flex: 0 0 48px;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #69867D;
  color: #fff;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking .kkd-pill-cta__icon svg {
  display: block;
  width: 20px;
  height: 20px;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container.md-container-with-form .contacts__images {
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images-item { margin: 0; }
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images-item > p:empty { display: none; }
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images-item > div,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container.md-container-with-form .contacts__images-item > div {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images-item > div a,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images-item > div a:first-child,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container.md-container-with-form .contacts__images-item > div a:first-child {
  display: block;
  width: 100%;
  height: clamp(380px, 30vw, 500px);
  aspect-ratio: auto;
  margin: 0;
  border-radius: 20px;
  overflow: hidden;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images-item > div a:not(:first-child) { display: none; }
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images-item > div a img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__address {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  height: auto;
  margin: 0;
  padding: 0;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__address > p:has(> b:empty):has(> a:empty) { display: none; }
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__address .map-container {
  display: block;
  flex: none;
  width: 100%;
  height: clamp(380px, 30vw, 500px);
  min-height: 0;
  margin: 0;
  overflow: hidden;
  border-radius: 20px;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__address .map-container iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: inherit;
}
/* 2-column state: at this width the old 3-column grid squeezed the booking
   button, especially when the visitor zoomed to 150–200%. */
@media (max-width: 1360px) and (min-width: 769px) {
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container,
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container.md-container-with-form {
    grid-template-columns: minmax(270px, .85fr) minmax(0, 1.65fr) !important;
    gap: clamp(20px, 3vw, 42px);
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images,
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container.md-container-with-form .contacts__images {
    display: none !important;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__address .map-container {
    height: clamp(390px, 44vw, 560px);
  }
}
/* On phones: all THREE pages use the approved, centered layout seen on the
   service screenshot: contacts, full-width booking button, PHOTO, then map. */
@media (max-width: 768px) {
  body.kk-contacts-page main.kk-contactspage { padding-top: 32px; }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) > .wrapper { width: 86.25vw; max-width: calc(100% - 24px); }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) {
    padding-top: 28px;
    padding-bottom: 50px;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container,
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container.md-container-with-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info {
    align-items: center;
    width: 100%;
    margin: 0;
    text-align: center;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-title {
    width: 100%;
    margin: 0 0 23px;
    font: 700 clamp(28px, 7.4vw, 36px)/1.22 "Onest", Arial, sans-serif;
    text-align: center;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container {
    align-items: center;
    gap: 17px;
    width: 100%;
    margin: 0 0 24px;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div,
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div:first-child,
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div:nth-child(2) {
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 100%;
    margin: 0;
    gap: 11px;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div p {
    flex: 0 1 auto;
    width: auto;
    max-width: calc(100% - 32px);
    font: 400 clamp(13px, 3.6vw, 16px)/1.5 "Onest", Arial, sans-serif;
    text-align: left;
    overflow-wrap: break-word;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div svg,
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div > img {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container .contacts__info-phones p,
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container .contacts__info-phones p a {
    font: 700 clamp(17px, 4.5vw, 21px)/1.35 "Onest", Arial, sans-serif;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social {
    align-items: center;
    margin: 0 0 24px;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social p {
    margin: 0 0 16px;
    font-size: 16px;
    text-align: center;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social > div {
    justify-content: center;
    gap: 8px;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social > div a {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border-radius: 9px;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking {
    align-self: center;
    width: min(266px, 100%);
    min-width: 0;
    max-width: 100%;
    min-height: 58px;
    margin: 0;
    padding: 4px 4px 4px 20px;
    gap: 12px;
    font-size: clamp(14px, 3.8vw, 16px);
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking .kkd-pill-cta__icon {
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images,
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container.md-container-with-form .contacts__images {
    display: block !important;
    width: 100%;
    margin: 40px 0 0;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__images-item > div a:first-child,
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__container.md-container-with-form .contacts__images-item > div a:first-child {
    aspect-ratio: 1 / 1.1;
    height: auto;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__address {
    width: 100%;
    margin: 30px 0 0;
    padding: 0;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__address .map-container {
    width: 100%;
    height: clamp(290px, 78vw, 420px);
    border-radius: 20px;
  }
}
@media (max-width: 360px) {
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking { font-size: 14px; padding-left: 16px; }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .kkd-home-booking .kkd-pill-cta__icon {
    flex-basis: 46px; width: 46px; height: 46px;
  }
}

/* === v5.24: typographic and CTA parity on home, /kontakty/ and /services/ ===
   Deliberately scoped to the shared contact section. The site has older
   viewport-based button and link styles, and the service template adds its
   own .kk-direction rules; none should change this contact CTA. */
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-title {
  font-family: "Onest", Arial, sans-serif !important;
  font-weight: 400 !important;
  font-size: clamp(28px, 2.1vw, 36px) !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div p,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social > p {
  font-family: "Onest", Arial, sans-serif !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div p a {
  color: inherit !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  text-decoration: none !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div p a:hover,
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div p a:focus-visible {
  text-decoration: underline !important;
  text-decoration-color: #C7A160 !important;
  text-underline-offset: 3px;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container .contacts__info-phones p {
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
}
/* Both a server-rendered fallback button and a JS-inserted homepage button
   must have identical compact geometry. These rules defeat the service
   template's older full-width button and generic theme styles. */
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking {
  box-sizing: border-box !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  align-self: flex-start !important;
  flex: 0 0 auto !important;
  gap: 10px !important;
  width: 266px !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 56px !important;
  height: 56px !important;
  margin: 0 !important;
  padding: 5px 5px 5px 24px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #173D33 !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: "Onest", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-align: left !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking:hover {
  background: #C7A160 !important;
  color: #fff !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking:focus-visible {
  outline: 3px solid #C7A160 !important;
  outline-offset: 3px !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking .kkd-pill-cta__text {
  display: block !important;
  flex: 0 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font: inherit !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  overflow: visible !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking .kkd-pill-cta__icon {
  box-sizing: border-box !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 46px !important;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 50% !important;
  background: #69867D !important;
  color: #fff !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking:hover .kkd-pill-cta__icon {
  background: #E2C58C !important;
}
:is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking .kkd-pill-cta__icon svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  fill: none !important;
  stroke: #fff !important;
}
@media (max-width: 768px) {
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-title {
    font-weight: 700 !important;
    font-size: clamp(30px, 7.4vw, 36px) !important;
    line-height: 1.2 !important;
    text-align: center !important;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container > div p {
    font-size: clamp(14px, 3.6vw, 16px) !important;
    line-height: 1.5 !important;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-container .contacts__info-phones p {
    font-size: clamp(18px, 4.5vw, 21px) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info-social > p {
    font-size: 16px !important;
    line-height: 1.5 !important;
    text-align: center !important;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking {
    align-self: center !important;
    width: min(266px, 100%) !important;
    min-height: 56px !important;
    padding: 5px 5px 5px 24px !important;
    font-size: 16px !important;
  }
}
@media (max-width: 350px) {
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking {
    gap: 6px !important;
    padding-left: 14px !important;
    font-size: 14px !important;
  }
  :is(section.contacts.kk-contact-unified, .kk-direction section.contacts, body.home section.contacts, body.front-page section.contacts) .contacts__info .kkd-home-booking .kkd-pill-cta__icon {
    flex-basis: 46px !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
  }
}
