:root {
  --main-color: #383838;
  --green-color: #324c3e;
}
@font-face {
  font-family: "Montserrat";
  src: url("fonts/Montserrat-Light.woff2") format("woff2"),
    url("fonts/Montserrat-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Montserrat";
  src: url("fonts/Montserrat-Regular.woff2") format("woff2"),
    url("fonts/Montserrat-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Montserrat";
  src: url("fonts/Montserrat-Bold.woff2") format("woff2"),
    url("fonts/Montserrat-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

html {
  background: #f3f5f6;
}
body {
  color: var(--main-color);
  margin: 0;
  padding: 0;
  font-size: 16px;
  line-height: 1.5;
  font-family: "Montserrat", sans-serif;
  font-weight: normal;
}

h1,
h2,
h3,
h4,
h5 strong {
  font-family: "Montserrat", sans-serif;
  font-weight: bold;
}

.light {
  font-weight: 300;
}

.content-l {
  width: 95vw;
  margin: 0 auto;
}
.header-navigation {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  box-sizing: border-box;
  align-items: center;
  justify-content: space-between;
}
.header-cosial a {
  background-color: #324c3e;
  padding: 12px;
  border-radius: 14px;
  -webkit-border-radius: 14px;
  -moz-border-radius: 14px;
  -ms-border-radius: 14px;
  -o-border-radius: 14px;
  display: block;
}
.header-cosial img {
  width: 35px;
}
.header-navigation {
  padding: 15px 35px;
  margin: 15px 0;
  border-radius: 22px;
  background: white;
  -webkit-box-shadow: 4px 4px 4px 0px rgba(34, 60, 80, 0.1);
  -moz-box-shadow: 4px 4px 4px 0px rgba(34, 60, 80, 0.1);
  box-shadow: 4px 4px 4px 0px rgba(34, 60, 80, 0.1);
}

.header-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}
.header-contact__phone a {
  font-weight: bold;
  padding-left: 35px;
  color: var(--green-color);
  font-size: 25px;
  transition: all 0.3s;
  background: url('data:image/svg+xml,<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_4464_1751)"><path d="M3.25893 10.7259C4.84303 12.6123 6.74995 14.0976 8.92642 15.1486C9.75508 15.5398 10.8633 16.0039 12.098 16.0835C12.1745 16.0868 12.2477 16.0901 12.3243 16.0901C13.1529 16.0901 13.8185 15.805 14.361 15.2182C14.3643 15.2149 14.3709 15.2083 14.3743 15.2016C14.5673 14.9696 14.7869 14.7607 15.0166 14.5386C15.173 14.3894 15.3327 14.2335 15.4858 14.0744C16.1947 13.3384 16.1947 12.4035 15.4791 11.6906L13.4791 9.6981C13.1396 9.34668 12.7336 9.16102 12.3076 9.16102C11.8816 9.16102 11.4723 9.34668 11.1229 9.69479L9.93146 10.8817C9.82164 10.8187 9.70849 10.7623 9.602 10.7093C9.46888 10.643 9.34575 10.58 9.23592 10.5104C8.15101 9.82409 7.16594 8.92894 6.22413 7.7785C5.74824 7.17842 5.42875 6.67448 5.20578 6.1606C5.51861 5.87879 5.81147 5.58373 6.09434 5.29529C6.19418 5.19251 6.29735 5.08973 6.40051 4.98696C6.75993 4.6289 6.95295 4.21448 6.95295 3.79342C6.95295 3.37237 6.76326 2.95795 6.40051 2.59989L5.40879 1.61191C5.29231 1.49587 5.18249 1.38315 5.06933 1.26711C4.84969 1.04166 4.62006 0.809585 4.39376 0.600717C4.05098 0.265864 3.6483 0.0901489 3.22233 0.0901489C2.79968 0.0901489 2.39367 0.265864 2.03758 0.604032L0.792925 1.84398C0.340324 2.29487 0.0840721 2.84191 0.0308249 3.47515C-0.0324061 4.26752 0.114024 5.10963 0.493409 6.12745C1.0758 7.70225 1.95438 9.16433 3.25893 10.7259ZM0.842844 3.54477C0.882779 3.10382 1.0525 2.73582 1.37199 2.41754L2.60998 1.18422C2.803 0.998562 3.01599 0.902416 3.22233 0.902416C3.42533 0.902416 3.63166 0.998562 3.82136 1.19085C4.04433 1.39641 4.25399 1.61191 4.48029 1.84067C4.59344 1.9567 4.70992 2.07274 4.8264 2.1921L5.81812 3.18008C6.02446 3.38563 6.13095 3.5945 6.13095 3.80005C6.13095 4.00561 6.02446 4.21448 5.81812 4.42003C5.71496 4.52281 5.61179 4.6289 5.50862 4.73167C5.19912 5.04332 4.90959 5.33839 4.59011 5.62019L4.57347 5.63677C4.29725 5.91195 4.34052 6.17386 4.40707 6.37278C4.4104 6.38273 4.41373 6.38936 4.41706 6.39931C4.67331 7.01265 5.0294 7.59616 5.58517 8.29239C6.58355 9.51908 7.63518 10.4706 8.79331 11.2033C8.93641 11.2961 9.08949 11.3691 9.23259 11.442C9.36571 11.5083 9.48885 11.5713 9.59867 11.6409C9.61198 11.6475 9.62196 11.6542 9.63528 11.6608C9.7451 11.7172 9.85159 11.7437 9.95809 11.7437C10.2243 11.7437 10.3974 11.5746 10.454 11.5182L11.6986 10.2783C11.8916 10.086 12.1013 9.98323 12.3076 9.98323C12.5605 9.98323 12.7669 10.1391 12.8967 10.2783L14.9034 12.2742C15.3028 12.672 15.2994 13.103 14.8934 13.524C14.7537 13.6732 14.6072 13.8158 14.4508 13.965C14.2179 14.1904 13.9749 14.4225 13.7553 14.6844C13.3726 15.0955 12.9166 15.2878 12.3276 15.2878C12.271 15.2878 12.2111 15.2845 12.1545 15.2812C11.063 15.2116 10.0479 14.7872 9.28584 14.4258C7.21586 13.4279 5.3988 12.0122 3.89124 10.2153C2.64992 8.7267 1.8146 7.34087 1.26216 5.85559C0.919387 4.94386 0.789597 4.21116 0.842844 3.54477Z" fill="black"/></g><defs><clipPath id="clip0_4464_1751"><rect width="16" height="16" fill="white" transform="translate(0.0168457 0.0901489)"/></clipPath></defs></svg>')
    no-repeat left center / 20px;
}
.header-contact__phone a:hover {
  color: var(--main-color);
  text-decoration: none;
}
.header-contact__phone {
  text-align: right;
  span {
    display: block;
    font-size: 14px;
    font-weight: 300;
  }
}
.header-menu ul li {
  padding: 10px 15px;
}
.header-menu ul li a {
  display: block;
  color: var(--main-color);
  font-size: 18px;
  transition: all 0.3s;
  position: relative;
}
.typewriter {
  white-space: nowrap;
  border-right: 4px solid white;
  width: fit-content;
  display: inline-block;
  padding-left: 10px;
}

#changing-word {
  display: inline-block;
}

.header-menu ul li a:hover {
  color: var(--green-color);
  text-decoration: none;
}
.header-menu ul li a::before {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -2px;
  background: var(--green-color);
  height: 2px;
  -webkit-transition-property: right;
  transition-property: right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.header-menu ul li a:hover::before {
  right: 0;
}

.header-contact {
  display: flex;
  align-items: center;
  gap: 25px;

}
.footer .header-contact, 
.footer .header-menu ul {
    flex-direction: column;
}
iframe {
  border-radius: 22px;
  -webkit-border-radius: 22px;
  -moz-border-radius: 22px;
  -ms-border-radius: 22px;
  -o-border-radius: 22px;
}

.footer iframe {
  min-width: 600px;
  height: 300px;
}
.sub-text {
  padding: 25px;
  background: white;
  border-radius: 22px;
  margin-top: 25px;
  p {
    margin: 0 10px;
  }
}

.header-contact__btn button {
  padding: 20px 35px;
  text-transform: uppercase;
  border: 1px solid var(--green-color);
  color: var(--main-color);
  box-shadow: none;
  outline: none;
  font-size: 16px;
  border-radius: 22px;
  background: transparent;
  cursor: pointer;
  transition: all 0.3s;
  font-weight: bold;
}

.uk-offcanvas-overlay::before {
  background: rgba(0, 0, 0, 0.7);
}
.header-contact__btn button:hover {
  background: var(--green-color);
  color: white;
}
.uk-offcanvas-bar {
  color: var(--main-color);
  background: white;
  padding-top: 6%;
  width: 450px;
}

.uk-offcanvas-flip .uk-offcanvas-bar {
  left: auto;
  right: -450px;
}
.quiz {
  margin-bottom: 70px;
}
.whatsapp-button {
  position: fixed;
  bottom: 30px;
  right: 20px;
  width: 60px;
  height: 60px;
  background-color: #2cb742;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  transition: transform 0.3s ease;
}
.whatsapp-button img {
  width: 50%;
  height: 50%;
}
.whatsapp-button:hover {
  transform: scale(1.1);
}
.swing {
  animation: swing 2s infinite;
  -webkit-animation: swing 2s infinite;
}
@keyframes swing {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(15deg);
    -webkit-transform: rotate(15deg);
    -moz-transform: rotate(15deg);
    -ms-transform: rotate(15deg);
    -o-transform: rotate(15deg);
  }
  50% {
    transform: rotate(0eg);
  }
  75% {
    transform: rotate(-15deg);
    -webkit-transform: rotate(-15deg);
    -moz-transform: rotate(-15deg);
    -ms-transform: rotate(-15deg);
    -o-transform: rotate(-15deg);
  }
  100% {
    transform: rotate(0deg);
  }
}

.politick {
  font-size: 14px;
  opacity: 0.6;
}
.header-contact__adres {
  padding-left: 25px;
  background: url('data:image/svg+xml,<svg width="14" height="18" viewBox="0 0 14 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.32533 0.0422974C3.72896 0.0422974 0.803223 2.88586 0.803223 6.38121C0.803223 7.53191 1.3342 8.76949 1.35645 8.8217C1.52794 9.21732 1.86633 9.83182 2.11033 10.192L6.5822 16.7774C6.7652 17.0474 7.03606 17.2021 7.32533 17.2021C7.61461 17.2021 7.88547 17.0474 8.06847 16.7778L12.5407 10.192C12.7851 9.83182 13.1231 9.21732 13.2946 8.8217C13.3168 8.76987 13.8474 7.53229 13.8474 6.38121C13.8474 2.88586 10.9217 0.0422974 7.32533 0.0422974ZM12.5871 8.53234C12.4341 8.88695 12.1191 9.45857 11.9 9.78148L7.42777 16.3672C7.33953 16.4974 7.31152 16.4974 7.22328 16.3672L2.75103 9.78148C2.53197 9.45857 2.21699 8.88658 2.06391 8.53197C2.05739 8.51668 1.57053 7.37754 1.57053 6.38121C1.57053 3.29714 4.15213 0.788052 7.32533 0.788052C10.4985 0.788052 13.0801 3.29714 13.0801 6.38121C13.0801 7.37903 12.5921 8.52116 12.5871 8.53234Z" fill="black"/><path d="M7.46621 2.64227C5.56214 2.64227 4.01333 4.14795 4.01333 5.99817C4.01333 7.84839 5.56214 9.35407 7.46621 9.35407C9.37028 9.35407 10.9191 7.84839 10.9191 5.99817C10.9191 4.14795 9.37028 2.64227 7.46621 2.64227ZM7.46621 8.60831C5.98569 8.60831 4.78063 7.43748 4.78063 5.99817C4.78063 4.55886 5.98569 3.38803 7.46621 3.38803C8.94673 3.38803 10.1518 4.55886 10.1518 5.99817C10.1518 7.43748 8.94673 8.60831 7.46621 8.60831Z" fill="black"/></svg>')
    no-repeat left 5px / 15px;
}
.header-contact__time {
  padding-left: 25px;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="512" height="512" viewBox="0 0 682.667 682.667"><defs><clipPath id="a" clipPathUnits="userSpaceOnUse"><path d="M0 512h512V0H0Z" data-original="%23000000"/></clipPath></defs><g clip-path="url(%23a)" transform="matrix(1.33333 0 0 -1.33333 0 682.667)"><path fill="none" stroke="%23000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-width="30" d="M0 0c0-132.548-108.452-241-241-241S-482-132.548-482 0s108.452 241 241 241S0 132.548 0 0" data-original="%23000000" style="stroke-width:30;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(497 256)"/><path d="M0 0c5.858 5.858 15.355 5.858 21.213 0s5.858-15.355 0-21.213-15.355-5.858-21.213 0S-5.858-5.858 0 0" data-original="%23000000" style="fill-opacity:1;fill-rule:nonzero;stroke:none" transform="translate(118.114 139.327)"/><path d="M0 0c5.857 5.858 15.355 5.858 21.213 0s5.858-15.355 0-21.213-15.356-5.858-21.213 0S-5.858-5.858 0 0" data-original="%23000000" style="fill-opacity:1;fill-rule:nonzero;stroke:none" transform="translate(372.673 393.886)"/><path d="M0 0c5.858-5.858 5.858-15.355 0-21.213s-15.355-5.858-21.213 0-5.858 15.355 0 21.213S-5.857 5.858 0 0" data-original="%23000000" style="fill-opacity:1;fill-rule:nonzero;stroke:none" transform="translate(139.327 393.886)"/><path d="M0 0c5.858-5.858 5.858-15.355 0-21.213s-15.355-5.858-21.213 0-5.858 15.355 0 21.213S-5.858 5.858 0 0" data-original="%23000000" style="fill-opacity:1;fill-rule:nonzero;stroke:none" transform="translate(393.886 139.327)"/><path fill="none" stroke="%23000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-width="30" d="M0 0v-30" data-original="%23000000" style="stroke-width:30;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(256 436)"/><path fill="none" stroke="%23000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-width="30" d="M0 0v-30" data-original="%23000000" style="stroke-width:30;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(256 106)"/><path fill="none" stroke="%23000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-width="30" d="M0 0h30" data-original="%23000000" style="stroke-width:30;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(76 256)"/><path fill="none" stroke="%23000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-width="30" d="M0 0h30" data-original="%23000000" style="stroke-width:30;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(406 256)"/><path fill="none" stroke="%23000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-width="30" d="M0 0v-90l90-90" data-original="%23000000" style="stroke-width:30;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(256 346)"/></g></svg>')
    no-repeat left 5px / 15px;
}
.canvas-title {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 15px;
}

.canvas-logo {
  margin-bottom: 50px;
}

.btn-bg {
  background: var(--green-color);
  color: white;

  text-transform: uppercase;
  border-radius: 22px;
  padding: 20px 35px;
  color: white;
  border: 1px solid var(--green-color);
  font-size: 16px;
  cursor: pointer;
  transition: all 0.3s;
}

.quest-home {
  padding-top: 70px;
}
.btn-bg:hover {
  background: transparent;
  text-decoration: none;
  color: var(--main-color);
}

.btn-line {
  color: var(--main-color);

  text-transform: uppercase;
  border-radius: 22px;
  padding: 20px 35px;

  border: 1px solid var(--green-color);
  font-size: 16px;
  cursor: pointer;
  transition: all 0.3s;
  background: transparent;
}
.brand {
  margin-bottom: 70px;
}
.green-section {
  background: var(--green-color);
  color: white;
  text-align: center;
  padding: 70px 0;
}
.green-section-title {
  font-size: 40px;
  color: white;
  span {
    display: inline-block;
    padding: 15px 25px;
    border-radius: 35px;
    font-weight: bold;
    color: var(--main-color);
    background: white;
  }
}
.green-section-phone {
  margin-top: 35px;
  a {
    font-size: 70px;
    font-weight: bold;
    color: white;
    padding-left: 175px;
    background: url('data:image/svg+xml,<svg width="178" height="69" viewBox="0 0 178 69" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M159.146 40.7609L159.121 40.9734C152.89 37.8681 152.239 37.4544 151.434 38.6614C150.876 39.4972 149.25 41.3927 148.759 41.9537C148.264 42.5062 147.771 42.5487 146.929 42.1662C146.079 41.7412 143.351 40.8487 140.121 37.9587C137.605 35.7062 135.916 32.9437 135.417 32.0937C134.587 30.6601 136.324 30.4561 137.905 27.4641C138.188 26.8691 138.044 26.4016 137.834 25.9794C137.622 25.5544 135.93 21.3894 135.222 19.7291C134.542 18.0744 133.842 18.2841 133.318 18.2841C131.686 18.1424 130.493 18.1651 129.442 19.2587C124.869 24.2851 126.022 29.4701 129.935 34.9837C137.624 45.0477 141.721 46.9007 149.213 49.4734C151.236 50.1166 153.08 50.0259 154.539 49.8162C156.166 49.5584 159.546 47.7734 160.251 45.7759C160.974 43.7784 160.974 42.1209 160.761 41.7384C160.552 41.3559 159.996 41.1434 159.146 40.7609Z" fill="white"/><path d="M167.683 9.9958C145.898 -11.0644 109.844 4.21013 109.829 33.9205C109.829 39.8591 111.385 45.6505 114.349 50.7646L109.543 68.2236L127.492 63.543C149.89 75.6413 177.532 59.5763 177.543 33.9375C177.543 24.9388 174.03 16.47 167.641 10.1063L167.683 9.9958ZM171.882 33.844C171.865 55.4708 148.125 68.9773 129.348 57.9386L128.328 57.3323L117.703 60.0948L120.551 49.7673L119.874 48.7048C108.189 30.104 121.613 5.79397 143.747 5.79397C147.443 5.78467 151.105 6.50861 154.52 7.92386C157.934 9.33912 161.034 11.4176 163.64 14.039C166.26 16.6274 168.338 19.7119 169.754 23.1123C171.169 26.5127 171.892 30.1609 171.882 33.844Z" fill="white"/><path d="M27.0448 43.5738L25.9275 59.8196C27.526 59.8196 28.2183 59.1098 29.0485 58.2573L36.5426 50.853L52.0712 62.6097C54.9191 64.2506 56.9256 63.3865 57.6939 59.9011L67.8868 10.5235L67.8896 10.5206C68.793 6.16821 66.3672 4.46624 63.5924 5.53397L3.6787 29.2481C-0.410291 30.889 -0.348379 33.2456 2.9836 34.3133L18.3011 39.2389L53.8807 16.2229C55.5551 15.0767 57.0776 15.7109 55.8253 16.8572L27.0448 43.5738Z" fill="white"/></svg>')
      no-repeat left center / 140px;
  }
}
.section-title p {
  margin-top: 35px;
}
.callback-wrap {
  margin-top: 70px;
}
.btn-line:hover {
  color: white;
  background: var(--green-color);
  text-decoration: none;
}

.callback-btn {
  display: flex;
  gap: 25px;
}
.full-btn a {
  display: block;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
}

.content-contact {
  background: white;
  padding: 35px;
  border-radius: 22px;
}
.content-contact-item__title {
  width: 50%;
  min-width: 50%;
}
.content-contact-item {
  display: flex;
  padding: 25px 0;
  align-items: start;
  border-bottom: 1px solid #f5f5f5;
}
.content-contact-item__descr {
  font-size: 18px;
}
.form-kurs-title {
  font-weight: bold;
  text-align: center;
  font-size: 25px;
}
.content-contact-item__title {
  font-size: 30px;
  font-weight: bold;
}
.callback {
  display: flex;
  gap: 86px;
  align-items: center;
  justify-content: space-between;
}
.callback-content-img img {
  border-radius: 130px;
  min-width: 600px;
}
.callback-content__title {
  font-size: 50px;
  text-transform: uppercase;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 25px;
}
.callback-btn {
  margin-top: 25px;
}
input[type="text"],
input[type="tel"] {
  width: 100%;
  padding: 20px 25px;
  border-radius: 22px;
  background: #f3f5f6;
  box-sizing: border-box;
  border: none;
  color: var(--main-color);
  font-size: 16px;
  margin-bottom: 25px;
}
input[type="text"]:focus,
input[type="tel"]:focus {
  outline: none;
  box-shadow: none;
}
input[type="submit"] {
  padding: 20px 25px;
  border-radius: 22px;
  width: 100%;
  box-sizing: border-box;
  background: transparent;
  color: var(--main-color);
  font-weight: bold;
  border: none;
  outline: none;
  text-transform: uppercase;
  font-size: 16px;
  border-radius: 22px;
  cursor: pointer;
  transition: all 0.3s;
  border: 1px solid var(--green-color);
}
.footer-bottom {
  text-align: center;
  color: white;
  padding: 35px;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}
.header-content {
  display: flex;
  gap: 35px;
  justify-content: space-between;
}

.header-content-left {
  background: var(--green-color);
  color: white;
  border-radius: 22px;
  padding: 70px 70px 35px;
  width: 55vw;
}
.header-content__botom {
  margin-top: 80px;
}
.header-content__botom-item {
  display: flex;
  flex-direction: column;
  align-items: start;
  text-align: left;
  justify-content: start;
}
.footer .header-navigation {
  background: none;
  margin: 0;
  padding: 0 25px 45px;
}

.uk-offcanvas-bar .uk-close {
  background: #000;
  padding: 15px;
  border-radius: 12px;
  top: 20px;
  right: 20px;
  color: white;
}

.header-content-left__title h1 {
  color: white;
  font-size: 50px;
  margin: 0;
  text-transform: uppercase;
}

input[type="submit"]:hover {
  color: white;
  border: 1px solid var(--green-color);
  background: var(--green-color);
}

.header-content-left__descr {
  font-style: italic;
  font-size: 25px;
  font-weight: bold;
}

  .paket-form-btn .btn-line {
    margin-top: 25px;
    display: block !important;
    text-align: center;
    box-sizing: border-box;
    width: 100%;
  }
.header-content-left-btn button {
  padding: 25px 150px 25px 100px;
  background: white;
  border-radius: 22px;
  color: var(--main-color);
  border: none;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 22px;
  cursor: pointer;
  position: relative;
}

.header-content-left-btn button::after {
    content: "";
    width: 60px;
    background:url('data:image/svg+xml,<svg width="512" height="248" viewBox="0 0 512 248" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M506.134 109.843L506.116 109.824L401.612 5.82394C393.783 -1.96706 381.12 -1.93807 373.327 5.89193C365.534 13.7219 365.565 26.3839 373.394 34.1759L443.558 104H20C8.954 104 0 112.954 0 124C0 135.046 8.954 144 20 144H443.557L373.395 213.824C365.566 221.616 365.536 234.279 373.328 242.108C381.121 249.939 393.785 249.966 401.613 242.176L506.117 138.176L506.135 138.157C513.968 130.339 513.943 117.635 506.134 109.843Z" fill="white"/></svg>') #324c3e no-repeat center / 30px;
    position: absolute;
    border-radius: 50%;
    right: 15px;
    top: 6px;
    height: 60px;
     animation: leftRight 2s infinite ease-in-out;
}
@keyframes leftRight {
  0%   { transform: translateX(0); }
  50%  { transform: translateX(10px); -webkit-transform: translateX(10px); -moz-transform: translateX(10px); -ms-transform: translateX(10px); -o-transform: translateX(10px); }
  100% { transform: translateX(0); }
}
  .header-content-left__text{
    margin: 15px 0 35px;
    display: block;
    font-size: 22px;

}

  .header-content-left__price {
    font-size: 40px;
    margin: 25px 0;
    text-transform: uppercase;
  }

  .header-content-left {
    position: relative;
  }

  .header-content-left::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    background: url("/img/maks.svg") no-repeat center / cover;
  }

  .header-content-wrap {
    position: relative;
    z-index: 2;
  }

  .header-content__botom {
    position: relative;
    bottom: 35px;
    gap: 75px;
    display: flex;
  }

  .header-content-right {
    width: 32vw;
    border-radius: var(--border-radius);
    overflow: hidden;
    border-radius: 22px;
    position: relative;
    background: none;
  }

  .header-content-right video {
    width: auto;
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    border: none;
    object-fit: cover;
    border-radius: 22px;
    -webkit-border-radius: 22px;
    -moz-border-radius: 22px;
    -ms-border-radius: 22px;
    -o-border-radius: 22px;
    overflow: hidden;
}

  .header-content__botom-item {
    display: flex;
    gap: 5px;
    border-right: 2px solid white;
    padding-right: 35px;
  }
  .header-content__botom-item__number {
    font-weight: bold;
    line-height: 1;
    font-size: 60px;
    margin-bottom: 10px;
  }
  .header-content__botom-item__text {
    font-size: 22px;
  }
  .line-green {
    padding: 25px 0;
  }

  .marquee {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    background-color: var(--green-color);
    padding: 20px 0;
    margin: 35px 0 0;
  }

  .marquee-content {
    display: inline-block;
    padding-left: 100%;
    text-transform: uppercase;
    color: white;
    font-weight: 300;
    font-size: 20px;
    animation: marquee 55s linear infinite;
    -webkit-animation: marquee 55s linear infinite;
}

  @keyframes marquee {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-100%);
    }
  }

  .callback {
    padding: 70px;
    width: 100%;
    box-sizing: border-box;
    border-radius: 22px;
    background: white;
    -webkit-border-radius: 22px;
    -moz-border-radius: 22px;
    -ms-border-radius: 22px;
    -o-border-radius: 22px;
}

  .section-title h2 {
    font-weight: bold;
    font-size: 40px;
    position: relative;
    color: var(--main-color);
  }

  .section-title h2::after {
    content: "";
    width: 80px;
    height: 4px;
    position: absolute;
    bottom: -10px;
    left: 0;
    background: var(--green-color);
    border-radius: 12px;
  }
  .wrapper-packages {
    margin-bottom: 35px;
    margin-top: 70px;
  }

  .pakets-page .wrapper-packages {
    margin-top: 0;
  }
  .wrapper-packages {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .wrapper-packages .package-tpl {
    width: calc((100% / 3) - 65px);
    align-self: stretch;
    height: max-content;
  }

  .package-tpl {
    background: white;
    border-radius: 22px;
    padding: 25px;
  }

  .package-tpl-content__title {
    font-size: 32px;
    text-transform: uppercase;
    font-weight: bold;
    margin: 25px 0;
  }
  .package-tpl-content__price-amount span {
    display: block;
    font-size: 14px;
    opacity: 0.6;
  }
  .package-tpl-content__price-amount-item {
    font-size: 35px;
    font-weight: bold;
  }
  .package-tpl-content__price-amount-item sup {
    font-weight: 300;
  }
  .package-tpl-content__price {
    display: flex;
    justify-content: space-between;
    margin-top: 35px;
    align-items: center;
  }

  .package-tpl-content__price-btn a {
    display: inline-block;
  }
  .brand-slider-item {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .brand-slider {
    position: relative;
    margin-top: 35px;
  }
  .footer {
    background: #212322;
    padding: 35px 0 35px;
  }
  .brand-slider-item {
    border-radius: 22px;
    background: white;
    padding: 15px 25px;
  }
  .slick-dots {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    justify-content: center;
    margin-top: 35px;
    gap: 10px;
  }

  .slick-dots li button {
    font-size: 0 !important;
    width: 25px;
    height: 2px;
    background: #000;
    border-radius: 12px;
    display: block;
    cursor: pointer;
    opacity: 0.25;
    outline: none;
    border: none;
  }
  .slick-dots li.slick-active {
    background: var(--green-color);
    opacity: 1;
  }

  .comanda-item__content-title {
    font-weight: bold;
  }
  strong {
    font-weight: bold;
  }
.parametr {
  display: flex;
  justify-content: space-between;
}
  .slick-track {
    display: flex;
    gap: 25px;
  }
  .slick-list {
    overflow: hidden;
  }

  .step-content {
    width: 40%;
  }

  .step-content {
    margin-top: 70px;
    position: relative;
  }

  .step-content-item {
    display: flex;
    gap: 60px;
    margin-bottom: 70px;
  }

  .step-wrap {
    position: relative;
    overflow: hidden;
  }
  .webp .step-wrap::before {
    content: "";
    width: 55%;
    height: 90%;
    position: absolute;
    right: 0;
    top: 5%;
    border-radius: 25px 0 0 25px;
    background: url("/img/bg-main.webp") no-repeat center / cover;
  }

  .no-webp .step-wrap::before {
    content: "";
    width: 55%;
    height: 80%;
    position: absolute;
    right: 0;
    top: 9%;
    border-radius: 25px 0 0 25px;
    background: url("/img/bg-main.jpg") no-repeat center / cover;
  }

  .step-content-item__number {
    display: flex;
    width: 90px;
    min-width: 90px;
    height: 90px;
    border-radius: 22px;
    font-weight: bold;
    line-height: 1;
    font-size: 50px;
    align-items: center;
    background: var(--green-color);
    color: white;
    justify-content: center;
  }

  .step-content-item__text-title {
    font-weight: bold;
    font-size: 25px;
    margin-bottom: 15px;
  }

  .step-content {
    position: relative;
    z-index: 1;
  }
  .step-content::after {
    content: "";
    width: 2px;
    height: 90%;
    left: 45px;
    background: var(--green-color);
    position: absolute;
    top: 0;
    z-index: -1;
  }

  .wrapper-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .item-step-preim {
    width: calc((100% / 3) - 125px);
    align-self: stretch;
  }
  .item-step-preim__image svg {
    fill: var(--green-color);
    color: var(--green-color);
    width: 70px;
    min-width: 70px;
  }
  .comanda-text ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .comanda-text ul li {
    margin-bottom: 15px;
    padding-left: 35px;
    background: url('data:image/svg+xml,<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_4470_2354)"><path d="M26.3931 5.38206C25.5577 4.54556 24.2012 4.54609 23.3647 5.38206L9.73475 19.0126L3.67682 12.9547C2.84032 12.1182 1.48438 12.1182 0.647881 12.9547C-0.188616 13.7912 -0.188616 15.1471 0.647881 15.9836L8.21997 23.5557C8.63795 23.9737 9.18604 24.1832 9.73417 24.1832C10.2823 24.1832 10.8309 23.9742 11.2489 23.5557L26.3931 8.41095C27.2296 7.57503 27.2296 6.2185 26.3931 5.38206Z" fill="%23324C3E"/></g><defs><clipPath id="clip0_4470_2354"><rect width="27" height="27" fill="white" transform="translate(0.0205078 0.969238)"/></clipPath></defs></svg>')
      no-repeat left 5px / 20px;
  }
  .item-step-preim {
    display: flex;
    gap: 35px;
  }
  .item-step-preim {
    background: white;
    padding: 45px 55px;
    border-radius: 22px;
    margin-bottom: 25px;
  }

  .item-step-preim-content__title {
    font-size: 25px;
    margin-bottom: 15px;
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: bold;
  }
  .comanda-text {
    margin-bottom: 25px;
  }
  .comnda-info {
    margin-top: 35px;
  }

  .comanda-item__image {
    background-size: cover;
    border-radius: 22px 22px 0 0;
    width: 100%;
    height: 320px;
  }

  .comanda-item__content {
    border-radius: 0 0 22px 22px;
    padding: 25px 15px;
    background: white;
  }
.tour-wrap {
  padding-bottom: 70px;
}

.footer .header-menu ul li a {
  padding: 10px 20px;
  border: 1px solid white;
  border-radius: 22px;
  -webkit-border-radius: 22px;
  -moz-border-radius: 22px;
  -ms-border-radius: 22px;
  text-align: center;
  -o-border-radius: 22px;
}
.footer .header-menu ul li a:hover {
  background: white;
  color: #000;
}
.footer .header-menu ul li a::after,
.footer .header-menu ul li a::before {
  display: none;
}
  .comanda-item__content-title {
    font-size: 22px;
    margin: 5px 0 15px;
    line-height: 1.3;
  }
  .label-comanda {
    font-size: 14px;
    padding: 5px 15px 5px 30px;
    background: var(--green-color);
    border-radius: 12px;
    color: white;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
    margin-bottom: 5px;
    display: inline-block;
    position: relative;
}
.comanda-item__btn {
  margin-top: 25px;
}

.content-page {
     padding: 35px;
    border-radius: 22px;
    background: white;
    -webkit-box-shadow: 4px 4px 4px 0px rgba(34, 60, 80, 0.1);
    -moz-box-shadow: 4px 4px 4px 0px rgba(34, 60, 80, 0.1);
    box-shadow: 4px 4px 4px 0px rgba(34, 60, 80, 0.1);
}

.content-page a {
  color: var(--green-color);
  text-decoration: underline;
}

 /* Блок с частичным показом */
  .seo-text .content-page.collapsible {
    max-height: 520px;           /* подстройте под макет */
    overflow: hidden;
    position: relative;
    transition: max-height 0.6s ease; /* плавное раскрытие */
  }

  /* Мягкий градиент внизу */
  .seo-text .content-page.collapsible::after {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 80px;
    pointer-events: none;
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
    transition: opacity 0.4s ease;
  }

  /* Раскрытое состояние */
  .seo-text .content-page.collapsible.expanded {
    max-height: 5000px; /* достаточно большое значение, чтобы вместить весь текст */
  }
  .seo-text .content-page.collapsible.expanded::after {
    opacity: 0;
  }

  /* Кнопка */
  .seo-text .readmore-wrap {
    margin-top: 12px;
    text-align: left;
  }
.btn-all {
  display: block;
  color: #1e1e1e;
  width: 100%;
  transition: all .4s;
  border: none;
  font-size: 16px;
  border: 1px solid var(--green-color);
  text-align: center;
  padding: 20px;
  border-radius: 22px;
  -webkit-border-radius: 22px;
  -moz-border-radius: 22px;
  -ms-border-radius: 22px;
  cursor: pointer;
  -o-border-radius: 22px;
  -webkit-transition: all .4s;
  -moz-transition: all .4s;
  -ms-transition: all .4s;
  -o-transition: all .4s;
  background: transparent;
}
.seo-text {
  margin-bottom: 35px;
}
.btn-all:hover {
  background: var(--green-color);
  color: white;
}
  /* Без JS — весь текст */
  noscript .content-page.collapsible {
    max-height: none !important;
  }
  
.content-page h3 {
  margin: 15px 0;
}
.comanda-item__btn a {
  display: block;
  width: 100%;
  text-align: center;
  box-sizing: border-box;
}
  .label-comanda::after {
    content: '';
    width: 15px;
    height: 15px;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="512" height="512" x="0" y="0" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512" xml:space="preserve"><g><path d="M462.69 49.31a168.39 168.39 0 0 0-274.06 184.87A1971.75 1971.75 0 0 0 9 413c-6.5 7.33-9.63 17.5-8.89 27.87q1.69 23.81 2.53 46.72a22.35 22.35 0 0 0 21.78 21.78c15.24.52 30.84 1.4 46.71 2.52 10.37.74 20.54-2.4 27.91-8.91q5.26-4.65 10.49-9.33a14.8 14.8 0 0 0 4.82-9.13q1.75-12.9 3.27-26.06c1.55-13.4 13.7-22.15 27.83-19.57 25.93 4.78 46.33-15.1 41.65-41v-.2c-2.52-14.12 6.33-26.2 19.91-27.54q13.14-1.31 26.13-2.76a14.85 14.85 0 0 0 9.35-4.68q17.94-19.41 35.36-39.32A168.39 168.39 0 0 0 462.69 49.31zM419 158.86A46.56 46.56 0 1 1 419 93a46.56 46.56 0 0 1 0 65.86z" data-name="Layer 16" fill="white" opacity="1" data-original="white"></path></g></svg>') no-repeat center / 14px;
    position: absolute;
left: 7px;
  top: 7px;
  }
  .tour {
    margin-top: 35px;
    iframe {
      width: 100%;
      border-radius: 22px;
      height: 700px;
    }
  }
  .quest-item {
    margin-top: 35px;
  }
  .comanda-item__content-descr {
    font-weight: 300;
  }
  .uk-accordion > :nth-child(n + 2) {
    margin-top: 0;
  }
  .comanda-item__content-workvector {
    margin-top: 80px;
    padding-top: 15px;
    font-weight: 300;
    position: relative;
  }
  .uk-accordion-title {
    font-weight: bold;
    font-size: 18px;
    padding: 15px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.14);
  }
  .uk-accordion-items {
    margin-bottom: 15px;
  }
  .comanda-items {
    margin-top: 35px;
  }
  .callback-cf {
    margin-top: 35px;
  }
  .callback-cf form {
    display: flex;
    gap: 15px;
  }

  .callback-cf form p,
  .callback-cf form input {
    margin: 0;
  }

  .callback-iamges img {
    border-radius: 120px;
  }

  .callback-iamges {
    display: flex;
    justify-content: end;
  }

  .comanda-item__content-workvector::after {
    content: "";
    width: 35px;
    height: 1px;
    background: var(--green-color);
    position: absolute;
    top: 0;
    left: 0;
  }

  .header-navigation-logo img {
    width: 150px;
  }

  .callback-ttitle {
    font-size: 35px;
    margin-bottom: 15px;
    font-weight: bold;
  }

  .footer {
    border-radius: 25px 25px 0 0;
    padding: 35px;
  }

  .callback-wraps {
    background: white;
    border-radius: 22px;
    padding: 45px;
  }

  .footer .header-menu ul li a {
    color: white;
  }

  .footer .header-contact__phone a {
    color: white;
    background: url('data:image/svg+xml,<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_4470_2434)"><path d="M3.79897 11.4404C5.38307 13.3269 7.28999 14.8121 9.46646 15.8631C10.2951 16.2543 11.4033 16.7185 12.638 16.7981C12.7145 16.8014 12.7878 16.8047 12.8643 16.8047C13.693 16.8047 14.3585 16.5196 14.901 15.9327C14.9043 15.9294 14.911 15.9228 14.9143 15.9162C15.1073 15.6841 15.327 15.4752 15.5566 15.2531C15.713 15.1039 15.8728 14.9481 16.0258 14.7889C16.7347 14.0529 16.7347 13.118 16.0192 12.4052L14.0191 10.4126C13.6796 10.0612 13.2736 9.87555 12.8477 9.87555C12.4217 9.87555 12.0123 10.0612 11.6629 10.4093L10.4715 11.5962C10.3617 11.5332 10.2485 11.4769 10.142 11.4238C10.0089 11.3575 9.88578 11.2945 9.77596 11.2249C8.69105 10.5386 7.70598 9.64348 6.76417 8.49304C6.28828 7.89296 5.96879 7.38902 5.74582 6.87514C6.05865 6.59333 6.35151 6.29826 6.63438 6.00983C6.73422 5.90705 6.83739 5.80427 6.94055 5.7015C7.29997 5.34344 7.49299 4.92901 7.49299 4.50796C7.49299 4.08691 7.3033 3.67249 6.94055 3.31443L5.94882 2.32644C5.83235 2.21041 5.72252 2.09768 5.60937 1.98165C5.38973 1.7562 5.1601 1.52412 4.9338 1.31526C4.59102 0.980402 4.18834 0.804688 3.76236 0.804688C3.33972 0.804688 2.93371 0.980402 2.57762 1.31857L1.33296 2.55852C0.880363 3.00941 0.624111 3.55645 0.570864 4.18969C0.507633 4.98206 0.654063 5.82417 1.03345 6.84199C1.61584 8.41679 2.49442 9.87887 3.79897 11.4404ZM1.38288 4.25931C1.42282 3.81836 1.59254 3.45036 1.91203 3.13208L3.15002 1.89876C3.34304 1.7131 3.55603 1.61695 3.76236 1.61695C3.96537 1.61695 4.1717 1.7131 4.36139 1.90539C4.58437 2.11095 4.79403 2.32644 5.02033 2.55521C5.13348 2.67124 5.24996 2.78728 5.36643 2.90664L6.35816 3.89462C6.56449 4.10017 6.67099 4.30904 6.67099 4.51459C6.67099 4.72015 6.56449 4.92901 6.35816 5.13457C6.255 5.23734 6.15183 5.34344 6.04866 5.44621C5.73916 5.75786 5.44963 6.05293 5.13015 6.33473L5.11351 6.35131C4.83729 6.62649 4.88055 6.8884 4.94711 7.08732C4.95044 7.09727 4.95377 7.1039 4.9571 7.11385C5.21335 7.72719 5.56944 8.3107 6.12521 9.00692C7.12359 10.2336 8.17522 11.1851 9.33335 11.9178C9.47645 12.0107 9.62953 12.0836 9.77263 12.1565C9.90575 12.2228 10.0289 12.2858 10.1387 12.3555C10.152 12.3621 10.162 12.3687 10.1753 12.3753C10.2851 12.4317 10.3916 12.4582 10.4981 12.4582C10.7644 12.4582 10.9374 12.2891 10.994 12.2328L12.2386 10.9928C12.4317 10.8005 12.6413 10.6978 12.8477 10.6978C13.1006 10.6978 13.3069 10.8536 13.4367 10.9928L15.4435 12.9887C15.8428 13.3865 15.8395 13.8175 15.4335 14.2386C15.2937 14.3878 15.1473 14.5303 14.9909 14.6795C14.7579 14.905 14.515 15.1371 14.2953 15.399C13.9126 15.8101 13.4567 16.0024 12.8676 16.0024C12.811 16.0024 12.7511 15.9991 12.6946 15.9957C11.603 15.9261 10.588 15.5017 9.82588 15.1404C7.7559 14.1424 5.93884 12.7268 4.43128 10.9298C3.18996 9.44124 2.35464 8.05541 1.8022 6.57012C1.45943 5.6584 1.32964 4.9257 1.38288 4.25931Z" fill="white"/></g><defs><clipPath id="clip0_4470_2434"><rect width="16" height="16" fill="white" transform="translate(0.556885 0.804688)"/></clipPath></defs></svg>')
      no-repeat left center / 20px;
  }
  .footer .header-contact__phone span {
    color: white;
    opacity: 0.65;
  }
  .footer .header-contact__btn button {
    border: 1px solid white;
    color: white;
  }

  .footer .header-contact__adres {
    color: white;
    background: url('data:image/svg+xml,<svg width="14" height="18" viewBox="0 0 14 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.54433 0.37793C2.94796 0.37793 0.0222168 3.22149 0.0222168 6.71685C0.0222168 7.86755 0.553193 9.10513 0.575445 9.15733C0.746938 9.55295 1.08532 10.1675 1.32932 10.5277L5.80119 17.113C5.98419 17.383 6.25505 17.5378 6.54433 17.5378C6.8336 17.5378 7.10446 17.383 7.28746 17.1134L11.7597 10.5277C12.0041 10.1675 12.3421 9.55295 12.5136 9.15733C12.5358 9.1055 13.0664 7.86792 13.0664 6.71685C13.0664 3.22149 10.1407 0.37793 6.54433 0.37793ZM11.8061 8.86798C11.6531 9.22258 11.3381 9.7942 11.119 10.1171L6.64676 16.7029C6.55852 16.833 6.53051 16.833 6.44227 16.7029L1.97003 10.1171C1.75096 9.7942 1.43598 9.22221 1.2829 8.8676C1.27638 8.85231 0.789524 7.71317 0.789524 6.71685C0.789524 3.63278 3.37113 1.12368 6.54433 1.12368C9.71752 1.12368 12.2991 3.63278 12.2991 6.71685C12.2991 7.71467 11.8111 8.85679 11.8061 8.86798Z" fill="white"/><path d="M6.6853 2.97754C4.78123 2.97754 3.23242 4.48322 3.23242 6.33344C3.23242 8.18365 4.78123 9.68933 6.6853 9.68933C8.58938 9.68933 10.1382 8.18365 10.1382 6.33344C10.1382 4.48322 8.58938 2.97754 6.6853 2.97754ZM6.6853 8.94358C5.20478 8.94358 3.99973 7.77274 3.99973 6.33344C3.99973 4.89413 5.20478 3.72329 6.6853 3.72329C8.16582 3.72329 9.37088 4.89413 9.37088 6.33344C9.37088 7.77274 8.16582 8.94358 6.6853 8.94358Z" fill="white"/></svg>')
      no-repeat left 5px / 15px;
  }

  .footer .header-contact__btn button:hover {
    border: 1px solid transparent;
  }

  .package-tpl-content__image {
    height: 350px;
    width: 100%;
    background-size: cover;
    border-radius: 22px;
    margin-bottom: 15px;
  }

  .header-page {
    margin: 70px 0;
  }

  .form-paket-title {
    font-size: 25px;
    font-weight: bold;
    margin-bottom: 15px;
  }
  .form-politick {
    font-size: 14px;
    opacity: 0.65;
  }
  .header-page h1 {
    font-weight: bold;
    font-size: 40px;
    position: relative;
    color: var(--main-color);
  }
  .slider-wrap {
    background: white;
    padding: 25px;
    position: relative;
    border-radius: 22px;
  }
  .slider-nav .slick-slide {
    opacity: 0.45;
    transition: all 0.3s;
    border: 1px solid #e0e0e0;
    margin: 15px 5px;
    max-height: 110px;
  }
  .product-slider .slider-item div {
    width: 100%;
    height: 600px;
    display: block;
    border-radius: 36px;
    background-position: top;
  }
  .slider-nav .slick-slide.slick-current {
    opacity: 1;
  }
  .slider-nav .slick-slide {
    opacity: 0.45;
    transition: all 0.3s;
    border: 1px solid #e0e0e0;
    margin: 15px 5px;
    max-height: 110px;
  }
  .slider-nav img {
    border-radius: 22px;
  }
  .header-page h1::after {
    content: "";
    width: 80px;
    height: 4px;
    position: absolute;
    bottom: -10px;
    left: 0;
    background: var(--green-color);
    border-radius: 12px;
  }

  .form-kurs {
    padding: 25px;
    background: white;
    border-radius: 22px;
  }
.advantages-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;

}

.paket-price__title {
  font-size: 25px;
  color: var(--green-color);
  position: relative;
  padding-left: 45px;
  margin: 25px 0;
  background: url('data:image/svg+xml,<svg width="39" height="39" viewBox="0 0 39 39" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M35.5723 9.14062H30.9227C31.6416 8.18513 32.0684 6.99799 32.0684 5.71289C32.0684 2.5628 29.5056 0 26.3555 0C24.458 0 23.0588 0.679834 21.952 2.13944C21.0262 3.36063 20.3492 5.06566 19.5 7.21995C18.6508 5.06558 17.9738 3.36063 17.048 2.13944C15.9413 0.679834 14.542 0 12.6445 0C9.49444 0 6.93164 2.5628 6.93164 5.71289C6.93164 6.99799 7.35843 8.18513 8.07734 9.14062H3.42773C1.53768 9.14062 0 10.6783 0 12.5684V14.8535C0 16.3431 0.955272 17.6131 2.28516 18.0847V35.5723C2.28516 37.4623 3.82284 39 5.71289 39H33.2871C35.1772 39 36.7148 37.4623 36.7148 35.5723V18.0847C38.0447 17.6131 39 16.3431 39 14.8535V12.5684C39 10.6783 37.4623 9.14062 35.5723 9.14062ZM21.5973 8.13059C23.3477 3.68992 24.0131 2.28516 26.3555 2.28516C28.2455 2.28516 29.7832 3.82284 29.7832 5.71289C29.7832 7.60294 28.2455 9.14062 26.3555 9.14062H21.1976C21.3376 8.78909 21.4712 8.45066 21.5973 8.13059ZM12.6445 2.28516C14.9869 2.28516 15.6523 3.68992 17.4027 8.13059C17.5288 8.45066 17.6624 8.78909 17.8024 9.14062H12.6445C10.7545 9.14062 9.2168 7.60294 9.2168 5.71289C9.2168 3.82284 10.7545 2.28516 12.6445 2.28516ZM14.9297 36.7148H5.71289C5.08287 36.7148 4.57031 36.2023 4.57031 35.5723V18.2812H14.9297V36.7148ZM14.9297 15.9961H3.42773C2.79772 15.9961 2.28516 15.4835 2.28516 14.8535V12.5684C2.28516 11.9383 2.79772 11.4258 3.42773 11.4258H14.9297V15.9961ZM21.7852 36.7148H17.2148V11.4258H21.7852V36.7148ZM34.4297 35.5723C34.4297 36.2023 33.9171 36.7148 33.2871 36.7148H24.0703V18.2812H34.4297V35.5723ZM36.7148 14.8535C36.7148 15.4835 36.2023 15.9961 35.5723 15.9961H24.0703V11.4258H35.5723C36.2023 11.4258 36.7148 11.9383 36.7148 12.5684V14.8535Z" fill="%23324C3E"/></svg>') no-repeat left center / 29px;
}

.advantages-list li {
  padding: 5px 10px 5px 30px;
  position: relative;
}

.advantages-list li::after {
  content: '';
  width: 20px;
  top: 15px;
  background: url('/img/cheks.svg') no-repeat center / contain;
  height: 15px;
  position: absolute;
  left: 0;
  top: 7px;
}
.paket-price .advantages-list li {
  padding: 5px 10px;
}
.paket-price .advantages-list li::after {
  display: none;
}
.paket-price  .advantages-list li {
  background: var(--green-color);
  color: white;
}

  .paket-page {
    margin: 70px 0 35px;
  }
  .error-404-text a {
    text-align: center;
    display: flex;
    justify-content: center;
    color: var(--green-color);
    text-decoration: underline;
  }
      .error-404 {
        padding: 300px 0;
      }
    .error-404 h1 {text-align: center;}
  .product-slider {
    position: relative;
  }

  .slick-next {
    position: absolute;
    right: 25px;
    width: 60px;
    height: 60px;
    min-width: 60px;
    font-size: 0;
    background: url('data:image/svg+xml,<svg width="17" height="33" viewBox="0 0 17 33" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.6413 15.7399L2.0821 1.22089C1.60508 0.745469 0.832782 0.746268 0.356565 1.22335C-0.119283 1.70036 -0.118054 2.47309 0.359024 2.94888L14.0516 16.6037L0.358532 30.2584C-0.118484 30.7343 -0.119714 31.5065 0.356073 31.9836C0.469339 32.0975 0.604012 32.1878 0.752333 32.2493C0.900655 32.3109 1.05969 32.3425 1.22028 32.3423C1.3803 32.3425 1.53877 32.3112 1.68665 32.25C1.83452 32.1889 1.96888 32.0992 2.08204 31.9861L16.6413 17.4675C16.8711 17.2389 17 16.9278 17 16.6037C17 16.2796 16.8707 15.9689 16.6413 15.7399Z" fill="white"/></svg>')
      var(--green-color) no-repeat center / 15px;
    border-radius: 50%;
    bottom: -25px;
    transition: all 0.3s;
    z-index: 15;
    border: none;
    cursor: pointer;
  }
  .form-paket-title,
  .form-paket-descr {
    text-align: center;
  }

  .slick-prev {
    position: absolute;
    right: 95px;
    width: 60px;
    height: 60px;
    min-width: 60px;
    font-size: 0;
    background: url('data:image/svg+xml,<svg width="17" height="33" viewBox="0 0 17 33" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.6413 15.7399L2.0821 1.22089C1.60508 0.745469 0.832782 0.746268 0.356565 1.22335C-0.119283 1.70036 -0.118054 2.47309 0.359024 2.94888L14.0516 16.6037L0.358532 30.2584C-0.118484 30.7343 -0.119714 31.5065 0.356073 31.9836C0.469339 32.0975 0.604012 32.1878 0.752333 32.2493C0.900655 32.3109 1.05969 32.3425 1.22028 32.3423C1.3803 32.3425 1.53877 32.3112 1.68665 32.25C1.83452 32.1889 1.96888 32.0992 2.08204 31.9861L16.6413 17.4675C16.8711 17.2389 17 16.9278 17 16.6037C17 16.2796 16.8707 15.9689 16.6413 15.7399Z" fill="white"/></svg>')
      var(--green-color) no-repeat center / 15px;
    border-radius: 50%;
    bottom: -25px;
    transform: scale(-1);
    z-index: 15;
    transition: all 0.3s;
    border: none;
    cursor: pointer;
  }

  .product-descr {
    margin-top: 35px;
  }
  .uk-accordion-content ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .maps iframe {
    border-radius: 50px;
    height: 500px;
  }

  .kurs-content {
    margin-bottom: 70px;
  }
  .uk-accordion-content ul li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 2px;
  }
  .current-menu-item a::before {
    right: 0 !important;
  }
  .uk-accordion-content ul li::after {
    content: "";
    width: 8px;
    height: 8px;
    background: var(--green-color);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 4px;
  }
  .form-kurs .package-tpl-content__price-amount {
    background: var(--green-color);
    border-radius: 22px;
    text-align: center;
    padding: 10px;
    color: white;
    margin-bottom: 15px;
  }

  .sub-title {
    margin-top: 35px;
    font-weight: bold;
    font-size: 25px;
  }
  .mobile-btn {
    text-transform: uppercase;
    font-size: 16px;
    padding: 20px 25px 20px 55px;
    border-radius: 22px;
    cursor: pointer;
    background: transparent;
    border: 1px solid var(--green-color);
    border-radius: 22px;
    font-size: 18px;
    font-weight: bold;
    color: #212322;
    background: url('data:image/svg+xml,<svg width="60" height="45" viewBox="0 0 60 45" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M56.2499 45H3.75002C1.67887 45 0 43.321 0 41.25C0 39.179 1.67887 37.5 3.75002 37.5H56.25C58.321 37.5 60 39.179 60 41.25C59.9999 43.321 58.321 45 56.2499 45ZM56.2499 26.2499H3.75002C1.67887 26.2499 0 24.5711 0 22.5001C0 20.429 1.67887 18.7501 3.75002 18.7501H56.25C58.321 18.7501 60 20.4289 60 22.5001C60 24.5712 58.321 26.2499 56.2499 26.2499ZM56.2499 7.50002H3.75002C1.67887 7.50002 0 5.82116 0 3.75001C0 1.67886 1.67887 0 3.75002 0H56.25C58.321 0 60 1.67886 60 3.75001C60 5.82116 58.321 7.50002 56.2499 7.50002Z" fill="black"/></svg>')
      no-repeat 20px center / 25px;
  }
  .header {
    margin-bottom: 25px;
  }

  .comanda-slider {
    position: relative;
  }

  .quiz {
    margin-top: 35px;
  }

  .top-package-tpl {
    background: var(--green-color);
  }
  .top-package-tpl .package-tpl-content__title {
    color: white;
  }
  .top-package-tpl .advantages-list li {
    color: white;
    border: 1px solid white;
  }

  .top-package-tpl .paket-price .advantages-list li {
    background: white;
    color: var(--green-color);
  }
    .form-kurs .comanda-item__content-descr {
      margin-bottom: 25px;
    }
.form-keys .form-paket-descr {
  font-size: 22px;
}
.contact-page { margin-bottom: 35px; }
a:hover { cursor: pointer !important; }

  .top-package-tpl .paket-price__title {
  color: white;
  background: url('data:image/svg+xml,<svg width="39" height="39" viewBox="0 0 39 39" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M35.5723 9.14062H30.9227C31.6416 8.18513 32.0684 6.99799 32.0684 5.71289C32.0684 2.5628 29.5056 0 26.3555 0C24.458 0 23.0588 0.679834 21.952 2.13944C21.0262 3.36063 20.3492 5.06566 19.5 7.21995C18.6508 5.06558 17.9738 3.36063 17.048 2.13944C15.9413 0.679834 14.542 0 12.6445 0C9.49444 0 6.93164 2.5628 6.93164 5.71289C6.93164 6.99799 7.35843 8.18513 8.07734 9.14062H3.42773C1.53768 9.14062 0 10.6783 0 12.5684V14.8535C0 16.3431 0.955272 17.6131 2.28516 18.0847V35.5723C2.28516 37.4623 3.82284 39 5.71289 39H33.2871C35.1772 39 36.7148 37.4623 36.7148 35.5723V18.0847C38.0447 17.6131 39 16.3431 39 14.8535V12.5684C39 10.6783 37.4623 9.14062 35.5723 9.14062ZM21.5973 8.13059C23.3477 3.68992 24.0131 2.28516 26.3555 2.28516C28.2455 2.28516 29.7832 3.82284 29.7832 5.71289C29.7832 7.60294 28.2455 9.14062 26.3555 9.14062H21.1976C21.3376 8.78909 21.4712 8.45066 21.5973 8.13059ZM12.6445 2.28516C14.9869 2.28516 15.6523 3.68992 17.4027 8.13059C17.5288 8.45066 17.6624 8.78909 17.8024 9.14062H12.6445C10.7545 9.14062 9.2168 7.60294 9.2168 5.71289C9.2168 3.82284 10.7545 2.28516 12.6445 2.28516ZM14.9297 36.7148H5.71289C5.08287 36.7148 4.57031 36.2023 4.57031 35.5723V18.2812H14.9297V36.7148ZM14.9297 15.9961H3.42773C2.79772 15.9961 2.28516 15.4835 2.28516 14.8535V12.5684C2.28516 11.9383 2.79772 11.4258 3.42773 11.4258H14.9297V15.9961ZM21.7852 36.7148H17.2148V11.4258H21.7852V36.7148ZM34.4297 35.5723C34.4297 36.2023 33.9171 36.7148 33.2871 36.7148H24.0703V18.2812H34.4297V35.5723ZM36.7148 14.8535C36.7148 15.4835 36.2023 15.9961 35.5723 15.9961H24.0703V11.4258H35.5723C36.2023 11.4258 36.7148 11.9383 36.7148 12.5684V14.8535Z" fill="white"/></svg>') no-repeat left center / 29px;
}

.top-package-tpl .package-tpl-content__price-amount {
  color: white;
}

.top-package-tpl .btn-bg {
  border: 1px solid white;
}
.top-package-tpl .btn-bg:hover {
  background: white;
  color: var(--green-color);
}
.new-price-paket {
  margin-top: 20px;
}
.new-btn-paket .package-tpl-content__price-btn {
  display: flex;
  gap: 15px;
}

.new-btn-paket .btn-bg-line {
  background: white;
  color: var(--green-color) !important;
  text-transform: uppercase;
  border-radius: 22px;
  padding: 20px 35px;
  color: white;
  border: 1px solid var(--green-color);
  font-size: 16px;
  cursor: pointer;
  transition: all 0.3s;
  -webkit-border-radius: 22px;
  -moz-border-radius: 22px;
  -ms-border-radius: 22px;
  -o-border-radius: 22px;
}
.new-btn-paket .btn-bg-line:hover {
  background: transparent;
  text-decoration: none;
  color: white !important;
    border: 1px solid white;
}
.tour-page {
  margin-bottom: 70px;
}
.new-btn-paket .package-tpl-content__price {
  margin-top: 20px !important;
}

.form-kurs__title {
  margin-bottom: 15px;
}
.form-paket-descr {
  font-weight: bold;
}
  @media (max-width: 1800.98px) {
    .header-contact__adres {
      display: none;
    }
  }
  @media (max-width: 1500.98px) {
    .header-contact__phone a {
      padding-left: 28px;
      font-size: 20px;
    }

    .item-step-preim {
      padding: 25px;
    }

    .item-step-preim {
      width: calc((100% / 3) - 65px);
      align-self: stretch;
    }
    .item-step-preim-content__title {
      font-size: 22px;
              white-space: normal;
        word-break: break-word;
    }
    .header-contact__btn button {
      padding: 20px 25px;
    }
    .header-menu ul li {
      padding: 10px 10px;
    }
    .header-navigation-logo img {
      width: 130px;
    }
    .header-content-left {
      position: relative;
      padding: 70px 70px 160px 70px;
    }
    .header-content {
      gap: 25px;
    }
    .header-content-left__title h1 {
      font-size: 45px;
    }
    .callback-content__title {
      font-size: 40px;
    }
    .callback-content__descr br {
      display: none;
    }
    .callback-content-img img {
      border-radius: 130px;
      min-width: 450px;
    }
    .package-tpl-content__price-amount-item {
      font-size: 30px;
    }
  }

  @media (max-width: 1399.98px) {
    .callback-wraps input[type="text"],
    .callback-wraps input[type="tel"] {
      width: 230px;
    }
  .wrapper-packages .package-tpl {
    width: calc((100% / 3) - 40px);
  }
  .package-tpl {
    padding: 15px;
  }
    .header-content-left {
    padding: 70px 70px 35px 70px;
  }
    .header-cosial img {
      width: 25px;
    }
    .package-tpl-content__price-amount-item {
      font-size: 25px;
    }
    .package-tpl-content__image {
      height: 280px;
    }
    .header-content-left__text {
      font-size: 18px;
      margin: 15px 0 35px;
    }
    .header-menu ul li {
      padding: 10px;
    }
    .callback {
      padding: 45px;
    }
 
    .header-navigation {
      padding: 15px;
    }
    .header-contact__adres {
      display: none;
    }
    .header-contact {
      gap: 17px;
    }
    .header-navigation-logo img {
      width: 110px;
    }
    .header-contact__phone a {
      font-size: 18px;
    }
    .header-menu ul li a {
      font-size: 18px;
    }
  }

  @media (max-width: 1300.98px) {
    .callback {
      gap: 35px;
    }
    .callback-btn .btn-bg {
      text-align: center;
    }
    .callback-content__title {
      font-size: 35px;
    }
    .wrapper-packages .package-tpl {
      width: calc((100% / 3) - 35px);
      align-self: stretch;
      margin-bottom: 25px;
    }
    .package-tpl-content__title {
      font-size: 25px;
      text-transform: uppercase;
      font-weight: bold;
      margin: 25px 0;
    }
  }

  @media (max-width: 1199.98px) {
    .callback-cf form {
      display: flex;
      gap: 15px;
      flex-direction: column;
    }

        .header-content-right video {
        height: auto;
    }
        .header-content {
        display: flex;
        flex-direction: column;
    }
    .footer .header-menu {
      display: none;
    }
    .item-step-preim {
      width: calc((100% / 2) - 65px);
      align-self: stretch;
    }
    .step-content-item__number {
      width: 70px;
      min-width: 70px;
      height: 70px;
      font-size: 40px;
    }
    .package-tpl {
      padding: 15px;
    }
    .step-content-item {
      display: flex;
      gap: 35px;
      margin-bottom: 50px;
    }

    .step-content::after {
      height: 85%;
      left: 35px;
    }
    .canvas-content-btn button {
      display: block;
      width: 100%;
      text-align: center;
      box-sizing: border-box;
    }
    .canvas-content-phone {
      margin: 25px 0;
    }
    .header-content-left__title {
      margin-bottom: 15px;
    }

    .politick br {
      display: none;
    }
    .header-content-left__price {
      font-size: 35px;
    }
    .header-content-left__price {
      font-size: 30px;
    }

    .header-content__botom-item__img {
      width: 55px;
      max-width: 55px;
    }
    .header-content__botom {
      gap: 40px;
    }
    .canvas-content-adres {
      padding-left: 25px;
      background: url('data:image/svg+xml,<svg width="14" height="18" viewBox="0 0 14 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.32533 0.0422974C3.72896 0.0422974 0.803223 2.88586 0.803223 6.38121C0.803223 7.53191 1.3342 8.76949 1.35645 8.8217C1.52794 9.21732 1.86633 9.83182 2.11033 10.192L6.5822 16.7774C6.7652 17.0474 7.03606 17.2021 7.32533 17.2021C7.61461 17.2021 7.88547 17.0474 8.06847 16.7778L12.5407 10.192C12.7851 9.83182 13.1231 9.21732 13.2946 8.8217C13.3168 8.76987 13.8474 7.53229 13.8474 6.38121C13.8474 2.88586 10.9217 0.0422974 7.32533 0.0422974ZM12.5871 8.53234C12.4341 8.88695 12.1191 9.45857 11.9 9.78148L7.42777 16.3672C7.33953 16.4974 7.31152 16.4974 7.22328 16.3672L2.75103 9.78148C2.53197 9.45857 2.21699 8.88658 2.06391 8.53197C2.05739 8.51668 1.57053 7.37754 1.57053 6.38121C1.57053 3.29714 4.15213 0.788052 7.32533 0.788052C10.4985 0.788052 13.0801 3.29714 13.0801 6.38121C13.0801 7.37903 12.5921 8.52116 12.5871 8.53234Z" fill="black"/><path d="M7.46621 2.64227C5.56214 2.64227 4.01333 4.14795 4.01333 5.99817C4.01333 7.84839 5.56214 9.35407 7.46621 9.35407C9.37028 9.35407 10.9191 7.84839 10.9191 5.99817C10.9191 4.14795 9.37028 2.64227 7.46621 2.64227ZM7.46621 8.60831C5.98569 8.60831 4.78063 7.43748 4.78063 5.99817C4.78063 4.55886 5.98569 3.38803 7.46621 3.38803C8.94673 3.38803 10.1518 4.55886 10.1518 5.99817C10.1518 7.43748 8.94673 8.60831 7.46621 8.60831Z" fill="black"/></svg>')
        no-repeat left 5px / 15px;
    }
    .canvas-content-adres {
      margin-top: 25px;
    }
    .canvas-content-mail a {
      text-decoration: underline;
      color: var(--green-color);
      display: block;
      margin-top: 5px;
      font-size: 18px;
    }
    .canvas-content-phone span {
      display: block;
      width: 100%;
    }
    .header-content-left {
        position: relative;
        padding: 50px 50px 50px 50px;
    }
    .canvas-content-phone a {
      font-weight: bold;
      padding-left: 35px;
      color: var(--green-color);
      font-size: 25px;
      transition: all 0.3s;
      background: url('data:image/svg+xml,<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_4464_1751)"><path d="M3.25893 10.7259C4.84303 12.6123 6.74995 14.0976 8.92642 15.1486C9.75508 15.5398 10.8633 16.0039 12.098 16.0835C12.1745 16.0868 12.2477 16.0901 12.3243 16.0901C13.1529 16.0901 13.8185 15.805 14.361 15.2182C14.3643 15.2149 14.3709 15.2083 14.3743 15.2016C14.5673 14.9696 14.7869 14.7607 15.0166 14.5386C15.173 14.3894 15.3327 14.2335 15.4858 14.0744C16.1947 13.3384 16.1947 12.4035 15.4791 11.6906L13.4791 9.6981C13.1396 9.34668 12.7336 9.16102 12.3076 9.16102C11.8816 9.16102 11.4723 9.34668 11.1229 9.69479L9.93146 10.8817C9.82164 10.8187 9.70849 10.7623 9.602 10.7093C9.46888 10.643 9.34575 10.58 9.23592 10.5104C8.15101 9.82409 7.16594 8.92894 6.22413 7.7785C5.74824 7.17842 5.42875 6.67448 5.20578 6.1606C5.51861 5.87879 5.81147 5.58373 6.09434 5.29529C6.19418 5.19251 6.29735 5.08973 6.40051 4.98696C6.75993 4.6289 6.95295 4.21448 6.95295 3.79342C6.95295 3.37237 6.76326 2.95795 6.40051 2.59989L5.40879 1.61191C5.29231 1.49587 5.18249 1.38315 5.06933 1.26711C4.84969 1.04166 4.62006 0.809585 4.39376 0.600717C4.05098 0.265864 3.6483 0.0901489 3.22233 0.0901489C2.79968 0.0901489 2.39367 0.265864 2.03758 0.604032L0.792925 1.84398C0.340324 2.29487 0.0840721 2.84191 0.0308249 3.47515C-0.0324061 4.26752 0.114024 5.10963 0.493409 6.12745C1.0758 7.70225 1.95438 9.16433 3.25893 10.7259ZM0.842844 3.54477C0.882779 3.10382 1.0525 2.73582 1.37199 2.41754L2.60998 1.18422C2.803 0.998562 3.01599 0.902416 3.22233 0.902416C3.42533 0.902416 3.63166 0.998562 3.82136 1.19085C4.04433 1.39641 4.25399 1.61191 4.48029 1.84067C4.59344 1.9567 4.70992 2.07274 4.8264 2.1921L5.81812 3.18008C6.02446 3.38563 6.13095 3.5945 6.13095 3.80005C6.13095 4.00561 6.02446 4.21448 5.81812 4.42003C5.71496 4.52281 5.61179 4.6289 5.50862 4.73167C5.19912 5.04332 4.90959 5.33839 4.59011 5.62019L4.57347 5.63677C4.29725 5.91195 4.34052 6.17386 4.40707 6.37278C4.4104 6.38273 4.41373 6.38936 4.41706 6.39931C4.67331 7.01265 5.0294 7.59616 5.58517 8.29239C6.58355 9.51908 7.63518 10.4706 8.79331 11.2033C8.93641 11.2961 9.08949 11.3691 9.23259 11.442C9.36571 11.5083 9.48885 11.5713 9.59867 11.6409C9.61198 11.6475 9.62196 11.6542 9.63528 11.6608C9.7451 11.7172 9.85159 11.7437 9.95809 11.7437C10.2243 11.7437 10.3974 11.5746 10.454 11.5182L11.6986 10.2783C11.8916 10.086 12.1013 9.98323 12.3076 9.98323C12.5605 9.98323 12.7669 10.1391 12.8967 10.2783L14.9034 12.2742C15.3028 12.672 15.2994 13.103 14.8934 13.524C14.7537 13.6732 14.6072 13.8158 14.4508 13.965C14.2179 14.1904 13.9749 14.4225 13.7553 14.6844C13.3726 15.0955 12.9166 15.2878 12.3276 15.2878C12.271 15.2878 12.2111 15.2845 12.1545 15.2812C11.063 15.2116 10.0479 14.7872 9.28584 14.4258C7.21586 13.4279 5.3988 12.0122 3.89124 10.2153C2.64992 8.7267 1.8146 7.34087 1.26216 5.85559C0.919387 4.94386 0.789597 4.21116 0.842844 3.54477Z" fill="black"/></g><defs><clipPath id="clip0_4464_1751"><rect width="16" height="16" fill="white" transform="translate(0.0168457 0.0901489)"/></clipPath></defs></svg>')
        no-repeat left center / 20px;
    }
    .header-contact {
      gap: 35px;
    }

    .callback-wraps input[type="text"],
    .callback-wraps input[type="tel"] {
      width: 100%;
    }
    .section-title h2 {
      font-size: 35px;
    }
    .canvas-content {
      padding-top: 10%;
    }
    .canvas-content-menu ul {
      list-style: none;
      margin: 0;
      padding: 0;
    }
    .canvas-content-menu ul li a {
      font-weight: bold;
      font-size: 25px;
      color: #000;
      display: block;
      padding: 5px 0;
    }
    .canvas-content-menu ul li a:hover {
      color: var(--green-color);
    }
    .wrapper-packages {
      margin-bottom: 35px;
      margin-top: 35px;
    }
    .wrapper-packages .package-tpl {
      width: calc((100% / 2) - 40px);
      align-self: stretch;
      margin-bottom: 20px;
    }
        .header-content-left {
      width: 100%;
      box-sizing: border-box;
    }
        .header-content-right {
        width: 100%;
        height: 355px;
    }
  }

  @media (max-width: 991.98px) {
    .callback-iamges {
      justify-content: center;
    }
    .right-item {
      border: none;
    }
    .paket-price .advantages-list li {
      text-align: center;
    }
    .package-tpl-content__title {
      font-size: 22px;
    }
    .top-package-tpl .advantages-list li
  {
  color: white;

  display: block;
  width: 100%;

}

   .advantages-list li {
     display: block;
  width: 100%;

   }
   .wrapper-packages .package-tpl {
    width: 45%;
  }
  .new-btn-paket .btn-bg-line {
    display: flex;
    align-items: center;
  }
  
    .header-content-left-btn button {
    padding: 25px 110px 25px 50px;
    background: white;
    border-radius: 22px;
    color: var(--main-color);
    border: none;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 18px;
    cursor: pointer;
    position: relative;
}
    .header-content__botom-item__number {
      font-size: 40px;
    }
    .header-content__botom-item__text {
    font-size: 18px;
    br {
      display: none;
    }
}
        .header-content-left__title h1 {
        font-size: 35px;
    }
    .content-contact {
      margin-top: 35px;
    }
    .content-contact-item__title {
      font-size: 25px;
      font-weight: bold;
    }
  .package-tpl-content__price-amount-item {
    font-size: 25px;
  }
    .form-kurs-title {
      margin-bottom: 15px;
    }
    .content-contact-item .header-contact__adres {
      display: block;
    }
    .package-tpl-content__image {
      height: 250px;
    }
    .item-step-preim__image svg {
      width: 50px;
      min-width: 50px;
    }
    .step-content {
      width: 100%;
    }
    .item-step-preim-content__title {
      font-size: 18px;
    }
    .webp .step-wrap::before,
    .no-webp .step-wrap::before {
      display: none;
    }

    .step-content-item__text-title {
      font-size: 22px;
      margin-bottom: 15px;
    }

    .package-tpl-content__price-btn {
      width: 100%;
      box-sizing: border-box;
    }
    .package-tpl-content__price-btn a {
      display: block;
      width: 100%;
      padding: 25px 15px;
      box-sizing: border-box;
      text-align: center;
    }
    .package-tpl-content__price {
      display: flex;
      justify-content: space-between;
      margin-top: 20px;
      align-items: start;
      flex-direction: column;
    }
    .package-tpl-content__price-amount-item {
      font-size: 35px;
      margin-bottom: 15px;
    }
    .callback-content {
      width: 50%;
    }
    .callback-content-img {
      width: 45%;
      order: 2;
      img {
        width: 100%;
        min-width: auto;
      }
    }

    .callback {
      gap: 15px;
      flex-wrap: wrap-reverse;
    }
    .callback-content__title {
      font-size: 30px;
    }

    .header-content-right {
      width: 100%;
    }
    .callback-btn {
      display: flex;
      flex-direction: column;
      gap: 15px;
      text-align: center;
    }
    .header-content-right {
      width: 100%;
      height: 335px;
    }
    .header-content {
      display: flex;
      flex-direction: column;
    }
    .header-content-right video {
      height: auto;
    }
    .whatsapp-button {
      right: 15px;
      left: auto;
      bottom: 15px;
    }
    .header-contact__adres {
      display: none;
    }
    .callback-cf form {
      gap: 25px;
    }
    .callback-ttitle {
      font-size: 30px;
    }
    .section-title h2 {
      font-size: 30px;
    }
    .quest-item {
      margin-top: 25px;
    }
    .tour iframe {
      height: 450px;
    }
    .callback-content {
      width: 100%;
    }
    .callback-content-img {
      width: 60%;
      order: 2;
      margin-bottom: 20px;
    }
    .callback-wrap {
      margin-top: 40px;
    }
    .green-section {
      padding: 35px 0;
    }
    .green-section-title {
      font-size: 25px;
      color: white;
    }

    .green-section-phone {
      a {
        font-size: 45px;
        padding-left: 135px;
        background: url('data:image/svg+xml,<svg width="178" height="69" viewBox="0 0 178 69" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M159.146 40.7609L159.121 40.9734C152.89 37.8681 152.239 37.4544 151.434 38.6614C150.876 39.4972 149.25 41.3927 148.759 41.9537C148.264 42.5062 147.771 42.5487 146.929 42.1662C146.079 41.7412 143.351 40.8487 140.121 37.9587C137.605 35.7062 135.916 32.9437 135.417 32.0937C134.587 30.6601 136.324 30.4561 137.905 27.4641C138.188 26.8691 138.044 26.4016 137.834 25.9794C137.622 25.5544 135.93 21.3894 135.222 19.7291C134.542 18.0744 133.842 18.2841 133.318 18.2841C131.686 18.1424 130.493 18.1651 129.442 19.2587C124.869 24.2851 126.022 29.4701 129.935 34.9837C137.624 45.0477 141.721 46.9007 149.213 49.4734C151.236 50.1166 153.08 50.0259 154.539 49.8162C156.166 49.5584 159.546 47.7734 160.251 45.7759C160.974 43.7784 160.974 42.1209 160.761 41.7384C160.552 41.3559 159.996 41.1434 159.146 40.7609Z" fill="white"/><path d="M167.683 9.9958C145.898 -11.0644 109.844 4.21013 109.829 33.9205C109.829 39.8591 111.385 45.6505 114.349 50.7646L109.543 68.2236L127.492 63.543C149.89 75.6413 177.532 59.5763 177.543 33.9375C177.543 24.9388 174.03 16.47 167.641 10.1063L167.683 9.9958ZM171.882 33.844C171.865 55.4708 148.125 68.9773 129.348 57.9386L128.328 57.3323L117.703 60.0948L120.551 49.7673L119.874 48.7048C108.189 30.104 121.613 5.79397 143.747 5.79397C147.443 5.78467 151.105 6.50861 154.52 7.92386C157.934 9.33912 161.034 11.4176 163.64 14.039C166.26 16.6274 168.338 19.7119 169.754 23.1123C171.169 26.5127 171.892 30.1609 171.882 33.844Z" fill="white"/><path d="M27.0448 43.5738L25.9275 59.8196C27.526 59.8196 28.2183 59.1098 29.0485 58.2573L36.5426 50.853L52.0712 62.6097C54.9191 64.2506 56.9256 63.3865 57.6939 59.9011L67.8868 10.5235L67.8896 10.5206C68.793 6.16821 66.3672 4.46624 63.5924 5.53397L3.6787 29.2481C-0.410291 30.889 -0.348379 33.2456 2.9836 34.3133L18.3011 39.2389L53.8807 16.2229C55.5551 15.0767 57.0776 15.7109 55.8253 16.8572L27.0448 43.5738Z" fill="white"/></svg>')
          no-repeat left center / 110px;
      }
    }
    .header-page {
      margin: 35px 0 0;
    }
    .header-page h1 {
      font-size: 30px;
    }
    .product-slider .slider-item div {
      height: 400px;
    }
    .singles-products {
      margin-top: 35px;
    }
    .slider-nav .slick-track {
      display: flex;
      gap: inherit;
    }
    .slider-wrap .slick-track {
      display: flex;
      gap: inherit;
    }
  }

  @media (max-width: 767.98px) {
    .header-content-left {
      position: relative;
      padding: 20px;
    }
    .footer iframe  {
      width: 100%;
      min-width: 100%;
    }
    .error-404 {
  padding: 100px 0;
}
.comanda-item__image {
  height: 280px;
}
.typewriter {
  padding-left: 0;
}
.tour-wrap {
  padding-bottom: 35px;
}
        .comanda-item__content-title {
  font-size: 18px;
  margin: 10px 0 15px;
}
.footer .header-contact {
  flex-direction: column;
}
    .package-tpl-content__price-btn a {
      padding: 20px 15px;
    }
    .header-cosial {
      display: none;
    }
    .quest-home {
      padding-top: 35px;
    }
    .package-tpl-content__price-amount-item {
      font-size: 28px;
    }
    .tour-page  {
      margin-bottom: 35px;
    }
    .pakets-page .wrapper-packages {
      margin-top: 35px;
    }
    .slider-wrap {
      padding: 15px;
    }
    .slider-wrap .slick-next {
      right: 0;
    }
    .slider-wrap .slick-prev {
      right: 65px;
    }

    .sub-title {
      font-size: 18px;
    }
    .slider-nav .slick-slide {
      border-radius: 12px;
    }
    .product-slider .slider-item div {
      height: 240px;
      border-radius: 22px;
    }
    .content-contact-item {
      flex-direction: column;
    }
    .content-contact-item__title {
      width: 100%;
      min-width: 100%;
      font-size: 18px;
      margin-bottom: 15px;
    }
    .footer .header-navigation {
      padding: 0 25px 45px;
      display: flex;
      gap: 25px;
      justify-content: center;
    }
    .item-step-preim {
      width: 100%;
      align-self: stretch;
    }
    .step-content-item {
      margin-bottom: 35px;
    }

    .green-section-title br {
      display: none;
    }
    .green-section-title {
      font-size: 20px;
      color: white;
    }
    .green-section-phone {
      a {
        font-size: 25px;
        padding-left: 90px;
        background: url('data:image/svg+xml,<svg width="178" height="69" viewBox="0 0 178 69" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M159.146 40.7609L159.121 40.9734C152.89 37.8681 152.239 37.4544 151.434 38.6614C150.876 39.4972 149.25 41.3927 148.759 41.9537C148.264 42.5062 147.771 42.5487 146.929 42.1662C146.079 41.7412 143.351 40.8487 140.121 37.9587C137.605 35.7062 135.916 32.9437 135.417 32.0937C134.587 30.6601 136.324 30.4561 137.905 27.4641C138.188 26.8691 138.044 26.4016 137.834 25.9794C137.622 25.5544 135.93 21.3894 135.222 19.7291C134.542 18.0744 133.842 18.2841 133.318 18.2841C131.686 18.1424 130.493 18.1651 129.442 19.2587C124.869 24.2851 126.022 29.4701 129.935 34.9837C137.624 45.0477 141.721 46.9007 149.213 49.4734C151.236 50.1166 153.08 50.0259 154.539 49.8162C156.166 49.5584 159.546 47.7734 160.251 45.7759C160.974 43.7784 160.974 42.1209 160.761 41.7384C160.552 41.3559 159.996 41.1434 159.146 40.7609Z" fill="white"/><path d="M167.683 9.9958C145.898 -11.0644 109.844 4.21013 109.829 33.9205C109.829 39.8591 111.385 45.6505 114.349 50.7646L109.543 68.2236L127.492 63.543C149.89 75.6413 177.532 59.5763 177.543 33.9375C177.543 24.9388 174.03 16.47 167.641 10.1063L167.683 9.9958ZM171.882 33.844C171.865 55.4708 148.125 68.9773 129.348 57.9386L128.328 57.3323L117.703 60.0948L120.551 49.7673L119.874 48.7048C108.189 30.104 121.613 5.79397 143.747 5.79397C147.443 5.78467 151.105 6.50861 154.52 7.92386C157.934 9.33912 161.034 11.4176 163.64 14.039C166.26 16.6274 168.338 19.7119 169.754 23.1123C171.169 26.5127 171.892 30.1609 171.882 33.844Z" fill="white"/><path d="M27.0448 43.5738L25.9275 59.8196C27.526 59.8196 28.2183 59.1098 29.0485 58.2573L36.5426 50.853L52.0712 62.6097C54.9191 64.2506 56.9256 63.3865 57.6939 59.9011L67.8868 10.5235L67.8896 10.5206C68.793 6.16821 66.3672 4.46624 63.5924 5.53397L3.6787 29.2481C-0.410291 30.889 -0.348379 33.2456 2.9836 34.3133L18.3011 39.2389L53.8807 16.2229C55.5551 15.0767 57.0776 15.7109 55.8253 16.8572L27.0448 43.5738Z" fill="white"/></svg>')
          no-repeat left center / 68px;
      }
    }

    .callback-wraps {
      padding: 25px;
    }

    .comanda-item__content-workvector {
      margin-top: 55px;
    }
    .item-step-preim-content__descr br {
      display: none;
    }
    .wrapper-packages {
      margin-bottom: 5px;
      margin-top: 35px;
    }
    .brand {
      margin-bottom: 35px;
    }
    .callback-content-img img {
      border-radius: 60px;
    }
    .package-tpl-content__image {
      height: 220px;
    }
    .wrapper-packages .package-tpl {
      width: 100%;
    }
    .callback-btn {
      a,
      button {
        display: block;
        width: 100%;
        box-sizing: border-box;
        text-align: center;
        padding: 20px 15px;
      }
    }

    .callback-content-img {
      width: 100%;
      order: 2;
      margin-bottom: 20px;
    }
    .callback-content__title {
      font-size: 22px;
      margin-bottom: 15px;
    }
    .callback {
      padding: 25px;
    }
    .callback-cf form {
      gap: 15px;
    }

    .header-content-left__title h1 {
      font-size: 35px;
    }
    .header-content__botom {
      bottom: 0;
    }
    .header-content-wrap {
      margin-bottom: 35px;
    }
    .header-content__botom-item__img {
      width: 45px;
      max-width: 45px;
    }
    .header-content__botom-item {
      margin-bottom: 15px;
    }
    .marquee-content {
      font-size: 16px;
    }
    .header-content-right {
      width: 100%;
      height: 380px;
    }
  
    .header-content-left-btn button {
      width: 100%;
      padding: 25px 0;
      box-sizing: border-box;
      text-align: center;
    }
    .header-content__botom {
      display: block;

      position: relative;
    }
    .header-content-left__text {
      font-size: 16px;
      margin: 15px 0 35px;
    }
    .header-content-left__descr {
      font-style: italic;
      font-size: 16px;
    }
    .canvas-logo {
      margin-bottom: 35px;
    }
    .callback-ttitle {
      line-height: 1.2;
      font-size: 25px;
    }

    .callback-iamges img {
      height: 220px;
      border-radius: 60px;
    }
    .header-navigation {
      padding: 15px 20px;
    }
    .uk-accordion-title {
      font-size: 16px;
      padding: 10px 30px 10px 10px;
    }
    .section-title h2 {
      font-size: 25px;
    }
    .section-title h2::after {
      bottom: -15px;
    }
    .tour iframe {
      height: 300px;
    }
  }
  .mobile-phone {
    display: none;
  }
  @media (max-width: 635.98px) {
    .header .header-contact__phone {
      display: none;
    }
        .header-content__botom-item__text {
        font-size: 12px;
    }

  .header-content-left__price {
    margin: 15px 0;
  }
    .header-content__botom-item {
      width: 50%;
      padding-right: 0;
    }
    .header-content__botom {
    margin-top: 30px;
}
    .header-content__botom {
      display: flex;
      justify-content: space-between;
    }
    .header-content-left__title h1 {
      font-size: 22px;
    }
    .header-content-left__text br {
      display: none;
    }
    .header-content-left-btn button::after {
    content: "";
    width: 40px;
    background: url(data:image/svg+xml,<svg width="512" height="248" viewBox="0 0 512 248" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M506.134 109.843L506.116 109.824L401.612 5.82394C393.783 -1.96706 381.12 -1.93807 373.327 5.89193C365.534 13.7219 365.565 26.3839 373.394 34.1759L443.558 104H20C8.954 104 0 112.954 0 124C0 135.046 8.954 144 20 144H443.557L373.395 213.824C365.566 221.616 365.536 234.279 373.328 242.108C381.121 249.939 393.785 249.966 401.613 242.176L506.117 138.176L506.135 138.157C513.968 130.339 513.943 117.635 506.134 109.843Z" fill="white"/></svg>) #324c3e no-repeat center / 20px;
    position: absolute;
    border-radius: 50%;
    right: 15px;
    top: 14px;
    height: 40px;
    animation: leftRight 2s infinite ease-in-out;
}
    .item-step-preim {
        width: 100%;
        align-self: stretch;
        display: flex
;
        flex-direction: column;
        gap: 15px;
    }
    .header-navigation-logo img {
      width: 140px;
    }
    .mobile-phone span {
      display: block;
    }
    .mobile-phone {
      display: block;
      width: 100%;
      text-align: center;
      margin-top: 12px;
    }
    .mobile-phone a {
      font-weight: bold;
      padding-left: 35px;
      color: var(--green-color);
      font-size: 22px;
      transition: all 0.3s;
      background: url('data:image/svg+xml,<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_4464_1751)"><path d="M3.25893 10.7259C4.84303 12.6123 6.74995 14.0976 8.92642 15.1486C9.75508 15.5398 10.8633 16.0039 12.098 16.0835C12.1745 16.0868 12.2477 16.0901 12.3243 16.0901C13.1529 16.0901 13.8185 15.805 14.361 15.2182C14.3643 15.2149 14.3709 15.2083 14.3743 15.2016C14.5673 14.9696 14.7869 14.7607 15.0166 14.5386C15.173 14.3894 15.3327 14.2335 15.4858 14.0744C16.1947 13.3384 16.1947 12.4035 15.4791 11.6906L13.4791 9.6981C13.1396 9.34668 12.7336 9.16102 12.3076 9.16102C11.8816 9.16102 11.4723 9.34668 11.1229 9.69479L9.93146 10.8817C9.82164 10.8187 9.70849 10.7623 9.602 10.7093C9.46888 10.643 9.34575 10.58 9.23592 10.5104C8.15101 9.82409 7.16594 8.92894 6.22413 7.7785C5.74824 7.17842 5.42875 6.67448 5.20578 6.1606C5.51861 5.87879 5.81147 5.58373 6.09434 5.29529C6.19418 5.19251 6.29735 5.08973 6.40051 4.98696C6.75993 4.6289 6.95295 4.21448 6.95295 3.79342C6.95295 3.37237 6.76326 2.95795 6.40051 2.59989L5.40879 1.61191C5.29231 1.49587 5.18249 1.38315 5.06933 1.26711C4.84969 1.04166 4.62006 0.809585 4.39376 0.600717C4.05098 0.265864 3.6483 0.0901489 3.22233 0.0901489C2.79968 0.0901489 2.39367 0.265864 2.03758 0.604032L0.792925 1.84398C0.340324 2.29487 0.0840721 2.84191 0.0308249 3.47515C-0.0324061 4.26752 0.114024 5.10963 0.493409 6.12745C1.0758 7.70225 1.95438 9.16433 3.25893 10.7259ZM0.842844 3.54477C0.882779 3.10382 1.0525 2.73582 1.37199 2.41754L2.60998 1.18422C2.803 0.998562 3.01599 0.902416 3.22233 0.902416C3.42533 0.902416 3.63166 0.998562 3.82136 1.19085C4.04433 1.39641 4.25399 1.61191 4.48029 1.84067C4.59344 1.9567 4.70992 2.07274 4.8264 2.1921L5.81812 3.18008C6.02446 3.38563 6.13095 3.5945 6.13095 3.80005C6.13095 4.00561 6.02446 4.21448 5.81812 4.42003C5.71496 4.52281 5.61179 4.6289 5.50862 4.73167C5.19912 5.04332 4.90959 5.33839 4.59011 5.62019L4.57347 5.63677C4.29725 5.91195 4.34052 6.17386 4.40707 6.37278C4.4104 6.38273 4.41373 6.38936 4.41706 6.39931C4.67331 7.01265 5.0294 7.59616 5.58517 8.29239C6.58355 9.51908 7.63518 10.4706 8.79331 11.2033C8.93641 11.2961 9.08949 11.3691 9.23259 11.442C9.36571 11.5083 9.48885 11.5713 9.59867 11.6409C9.61198 11.6475 9.62196 11.6542 9.63528 11.6608C9.7451 11.7172 9.85159 11.7437 9.95809 11.7437C10.2243 11.7437 10.3974 11.5746 10.454 11.5182L11.6986 10.2783C11.8916 10.086 12.1013 9.98323 12.3076 9.98323C12.5605 9.98323 12.7669 10.1391 12.8967 10.2783L14.9034 12.2742C15.3028 12.672 15.2994 13.103 14.8934 13.524C14.7537 13.6732 14.6072 13.8158 14.4508 13.965C14.2179 14.1904 13.9749 14.4225 13.7553 14.6844C13.3726 15.0955 12.9166 15.2878 12.3276 15.2878C12.271 15.2878 12.2111 15.2845 12.1545 15.2812C11.063 15.2116 10.0479 14.7872 9.28584 14.4258C7.21586 13.4279 5.3988 12.0122 3.89124 10.2153C2.64992 8.7267 1.8146 7.34087 1.26216 5.85559C0.919387 4.94386 0.789597 4.21116 0.842844 3.54477Z" fill="black"/></g><defs><clipPath id="clip0_4464_1751"><rect width="16" height="16" fill="white" transform="translate(0.0168457 0.0901489)"/></clipPath></defs></svg>')
        no-repeat left center / 20px;
    }
  }

  @media (max-width: 575.98px) {
    .uk-offcanvas-bar {
      width: 100%;
    }
    .uk-offcanvas-flip .uk-offcanvas-bar {
      left: auto;
      right: -100%;
    }
    .callback-iamges img {
      height: 150px;
    }
    .new-btn-paket .package-tpl-content__price-btn {
      display: flex;
      gap: 15px;
      flex-direction: column;
      text-align: center;
      justify-content: center;
  }
  .new-btn-paket .btn-bg-line {
    display: flex;
    justify-content: center;
  }
  }

  @media (max-width: 380.98px) {
    .callback-iamges img {
      height: 150px;
    }
    .mobile-btn {
      text-transform: uppercase;
      font-size: 16px;
      padding: 20px 15px 20px 43px;
      border-radius: 12px;
      cursor: pointer;
      color: #212322;
      background: transparent;
      border: 1px solid var(--green-color);
      border-radius: 22px;
      font-size: 18px;
      font-weight: bold;
    background: url('data:image/svg+xml,<svg width="60" height="45" viewBox="0 0 60 45" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M56.2499 45H3.75002C1.67887 45 0 43.321 0 41.25C0 39.179 1.67887 37.5 3.75002 37.5H56.25C58.321 37.5 60 39.179 60 41.25C59.9999 43.321 58.321 45 56.2499 45ZM56.2499 26.2499H3.75002C1.67887 26.2499 0 24.5711 0 22.5001C0 20.429 1.67887 18.7501 3.75002 18.7501H56.25C58.321 18.7501 60 20.4289 60 22.5001C60 24.5712 58.321 26.2499 56.2499 26.2499ZM56.2499 7.50002H3.75002C1.67887 7.50002 0 5.82116 0 3.75001C0 1.67886 1.67887 0 3.75002 0H56.25C58.321 0 60 1.67886 60 3.75001C60 5.82116 58.321 7.50002 56.2499 7.50002Z" fill="black"/></svg>')
      no-repeat 20px center / 20px;
      -webkit-border-radius: 12px;
      -moz-border-radius: 12px;
      -ms-border-radius: 12px;
      -o-border-radius: 12px;
}
  }
  @media (max-width: 345.98px) {
    .callback-wraps {
      padding: 25px;
    }
    .header-navigation-logo img {
      width: 120px;
    }
    .header-content-left-btn button {
        width: 100%;
        padding: 25px 11px;
        box-sizing: border-box;
        text-align: left;
    }
        .header-content-left__title h1 {
        font-size: 18px;
    }
        .header-content-left__price {
        font-size: 25px;
    }
    .header-content-right {
      width: 100%;
      height: 160px;
    }

    .mobile-btn {
      font-size: 16px;
    }
    .callback-content__title {
      font-size: 20px;
      margin-bottom: 15px;
    }
    .mobile-phone span {
      display: block;
      font-size: 14px;
    }
    .green-section-title {
      font-size: 18px;
      color: white;
    }
    .mobile-phone a {
      font-size: 22px;
    }
    .header-content__botom-item {
      gap: 0;
    }
    .header-content__botom-item {
      padding-right: 15px;
    }
    .header-content__botom {
        gap: 3px;
    }
    .header-content__botom-item__number {
      font-size: 35px;
    }
        .header-content-left-btn button {
        padding: 20px 20px;
        font-size: 16px;
    }
    .right-item {
      padding-left: 15px;
    }
    .green-section-phone {
      a {
        font-size: 22px;
        padding-left: 90px;
        background: url('data:image/svg+xml,<svg width="178" height="69" viewBox="0 0 178 69" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M159.146 40.7609L159.121 40.9734C152.89 37.8681 152.239 37.4544 151.434 38.6614C150.876 39.4972 149.25 41.3927 148.759 41.9537C148.264 42.5062 147.771 42.5487 146.929 42.1662C146.079 41.7412 143.351 40.8487 140.121 37.9587C137.605 35.7062 135.916 32.9437 135.417 32.0937C134.587 30.6601 136.324 30.4561 137.905 27.4641C138.188 26.8691 138.044 26.4016 137.834 25.9794C137.622 25.5544 135.93 21.3894 135.222 19.7291C134.542 18.0744 133.842 18.2841 133.318 18.2841C131.686 18.1424 130.493 18.1651 129.442 19.2587C124.869 24.2851 126.022 29.4701 129.935 34.9837C137.624 45.0477 141.721 46.9007 149.213 49.4734C151.236 50.1166 153.08 50.0259 154.539 49.8162C156.166 49.5584 159.546 47.7734 160.251 45.7759C160.974 43.7784 160.974 42.1209 160.761 41.7384C160.552 41.3559 159.996 41.1434 159.146 40.7609Z" fill="white"/><path d="M167.683 9.9958C145.898 -11.0644 109.844 4.21013 109.829 33.9205C109.829 39.8591 111.385 45.6505 114.349 50.7646L109.543 68.2236L127.492 63.543C149.89 75.6413 177.532 59.5763 177.543 33.9375C177.543 24.9388 174.03 16.47 167.641 10.1063L167.683 9.9958ZM171.882 33.844C171.865 55.4708 148.125 68.9773 129.348 57.9386L128.328 57.3323L117.703 60.0948L120.551 49.7673L119.874 48.7048C108.189 30.104 121.613 5.79397 143.747 5.79397C147.443 5.78467 151.105 6.50861 154.52 7.92386C157.934 9.33912 161.034 11.4176 163.64 14.039C166.26 16.6274 168.338 19.7119 169.754 23.1123C171.169 26.5127 171.892 30.1609 171.882 33.844Z" fill="white"/><path d="M27.0448 43.5738L25.9275 59.8196C27.526 59.8196 28.2183 59.1098 29.0485 58.2573L36.5426 50.853L52.0712 62.6097C54.9191 64.2506 56.9256 63.3865 57.6939 59.9011L67.8868 10.5235L67.8896 10.5206C68.793 6.16821 66.3672 4.46624 63.5924 5.53397L3.6787 29.2481C-0.410291 30.889 -0.348379 33.2456 2.9836 34.3133L18.3011 39.2389L53.8807 16.2229C55.5551 15.0767 57.0776 15.7109 55.8253 16.8572L27.0448 43.5738Z" fill="white"/></svg>')
          no-repeat left center / 70px;
      }
    }
  }
}


/* Homepage: private and commercial renovation directions. */
.directions { margin-top: 24px; padding-top: 24px; padding-bottom: 48px; }
.directions-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 36px; }
.directions-eyebrow { margin: 0 0 10px; color: var(--green-color); font-size: 12px; font-weight: bold; letter-spacing: .14em; text-transform: uppercase; }
.directions-heading h1 { margin: 0; color: var(--main-color); font-size: clamp(26px, 3vw, 46px); line-height: 1.15; letter-spacing: -.04em; }
.directions-intro { margin: 0; flex-shrink: 0; font-size: 14px; line-height: 1.7; }
.directions-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.direction-card { display: flex; flex-direction: column; min-width: 0; padding: clamp(24px, 3vw, 48px); border: 1px solid transparent; border-radius: 22px; overflow: hidden; }
.direction-card--business { background: var(--green-color); color: white; }
.direction-card--home { background: white; color: var(--green-color); border-color: rgba(50, 76, 62, .15); }
.direction-card-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 30px; }
.direction-label { padding: 7px 12px; border: 1px solid currentColor; border-radius: 30px; font-size: 11px; letter-spacing: .05em; }
.direction-number { font-size: 13px; opacity: .65; white-space: nowrap; }
.direction-card h2 { margin: 0 0 20px; color: inherit; font-size: clamp(28px, 3.1vw, 48px); line-height: 1.12; letter-spacing: -.045em; }
.direction-title-line { white-space: nowrap; }
.direction-description { margin: 0; font-size: 15px; line-height: 1.7; }
.direction-card--home .direction-description { color: var(--main-color); }
.direction-visual { display: flex; align-items: flex-end; gap: 12px; flex: 1; min-height: 150px; margin: 18px 0 26px; }
.direction-note { flex: 0 0 auto; padding-bottom: 18px; font-size: 12px; line-height: 1.7; }
.direction-note strong { font-size: 14px; }
.direction-visual svg { display: block; width: 65%; max-width: 360px; margin-left: auto; opacity: .75; }
.direction-action { box-sizing: border-box; display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; min-height: 60px; margin-top: auto; padding: 12px 18px; border: 1px solid transparent; border-radius: 12px; background: white; color: var(--green-color); font: bold 14px/1.45 "Montserrat", sans-serif; text-align: left; text-decoration: none; cursor: pointer; transition: background .2s, color .2s; }
.direction-card--home .direction-action { background: var(--green-color); color: white; }
.direction-action:hover { background: #f3f5f6; color: var(--green-color); text-decoration: none; border-color: var(--green-color); }
.direction-card--home .direction-action:hover { background: var(--main-color); color: white; }
.direction-action:focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }
.direction-arrow { font-size: 26px; font-weight: normal; line-height: 1; }
#private-services { scroll-margin-top: 140px; }
@media (max-width: 1100px) {
  .direction-visual { flex-direction: column-reverse; align-items: flex-start; gap: 0; }
  .direction-visual svg { width: 100%; max-width: 280px; }
  .direction-note { padding-bottom: 0; }
}
@media (max-width: 767px) {
  .directions { margin-top: 16px; padding-top: 16px; padding-bottom: 32px; }
  .directions-heading { display: block; margin-bottom: 22px; }
  .directions-intro { margin-top: 14px; }
  .directions-intro br { display: none; }
  .directions-grid { grid-template-columns: 1fr; gap: 16px; }
  .direction-card-top { margin-bottom: 24px; }
  .direction-card h2 { font-size: clamp(28px, 7vw, 40px); }
  .direction-description { font-size: 14px; }
  .direction-description br { display: none; }
  .direction-visual { flex-direction: row; align-items: flex-end; min-height: 115px; margin: 8px 0 20px; }
  .direction-visual svg { width: 55%; }
  .direction-note { padding-bottom: 8px; font-size: 11px; }
  .direction-note strong { font-size: 12px; }
  .direction-action { font-size: 12px; padding: 12px 14px; }
  .direction-label { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .direction-action { transition: none; }
}

/* Private customers: compact navigation, catalogue and landing pages. */
.private-header { position: relative; z-index: 100; display: flex; align-items: center; gap: 28px; padding: 20px 28px; margin: 15px 0; background: #fff; border-radius: 22px; }
.private-brand { flex: 0 0 auto; }
.private-brand img { display: block; width: 136px; height: 86px; object-fit: contain; }
.private-header-caption { font-size: 12px; line-height: 1.6; }
.private-header-contact { margin-left: auto; flex-shrink: 0; }
.private-header-contact a { display: block; color: var(--main-color); font-size: clamp(22px, 2vw, 28px); font-weight: bold; }
.private-header-contact span { display: block; margin-top: 6px; font-size: 12px; }
.private-nav { display: flex; align-items: center; gap: 24px; }
.private-nav > a, .services-menu summary { color: var(--main-color); font-size: 13px; font-weight: bold; cursor: pointer; }
.services-menu summary { display: flex; align-items: center; gap: 24px; padding: 10px 16px; border-radius: 10px; background: #f3f5f6; list-style: none; }
.services-menu summary::-webkit-details-marker { display: none; }
.services-menu[open] summary { background: var(--green-color); color: white; }
.services-menu summary:focus-visible, .private-site a:focus-visible, .private-header a:focus-visible, .private-site summary:focus-visible, .private-button:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.services-dropdown { position: absolute; top: calc(100% + 8px); left: 0; right: 0; padding: 28px; border: 1px solid rgba(50,76,62,.15); border-radius: 22px; background: white; box-shadow: 0 20px 50px rgba(50,76,62,.12); max-height: 72vh; overflow-y: auto; }
.services-dropdown-heading { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.services-dropdown-heading a, .private-section-heading > a { color: var(--green-color); font-size: 13px; }
.services-catalog { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 30px; }
.services-group { min-width: 0; }
.services-group h3 { color: var(--green-color); font-size: 17px; margin: 0 0 14px; }
.services-group ul { padding: 0; margin: 0; list-style: none; }
.services-group li + li { margin-top: 9px; }
.services-group a { display: block; color: var(--main-color); font-size: 13px; line-height: 1.55; padding-left: 14px; position: relative; }
.services-group a::before { content: ''; position: absolute; top: .65em; left: 0; width: 4px; height: 4px; border-radius: 50%; background: var(--green-color); }
.services-group a:hover { color: var(--green-color); text-decoration: underline; }
.private-site { padding-bottom: 35px; }
.private-site h1 { color: var(--main-color); font-size: clamp(30px,3.6vw,56px); line-height: 1.13; letter-spacing: -.045em; }
.private-site h2 { color: var(--main-color); font-size: clamp(25px,2.5vw,36px); line-height: 1.2; letter-spacing: -.035em; }
.private-hero { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); gap: 35px; padding: clamp(28px,4vw,64px); margin-top: 24px; border-radius: 22px; background: var(--green-color); color: white; }
.private-hero h1 { color: white; margin: 18px 0 24px; }
.private-hero-copy > p, .service-intro { font-size: 16px; line-height: 1.8; max-width: 680px; }
.private-hero .private-eyebrow, .private-eyebrow { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.private-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 32px; }
.private-button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 14px 22px; border: 1px solid transparent; border-radius: 12px; background: white; color: var(--green-color); font: bold 13px/1.5 "Montserrat",sans-serif; cursor: pointer; }
.private-button:hover { background: #f3f5f6; color: var(--green-color); }
.private-text-link { color: white; font-size: 13px; text-decoration: underline; text-underline-offset: 5px; }
.private-text-link:hover { color: white; }
.private-hero-aside { padding: 30px; display: flex; flex-direction: column; justify-content: center; border: 1px solid rgba(255,255,255,.25); border-radius: 130px 130px 18px 18px; text-align: center; background: linear-gradient(145deg,rgba(255,255,255,.08),transparent); }
.private-hero-aside > span { font-size: clamp(24px,3vw,44px); font-weight: 300; line-height: 1.4; }
.private-hero-aside p, .private-hero-aside a { font-size: 11px; color: white; }
.private-section { margin-top: 60px; margin-bottom: 60px; scroll-margin-top: 30px; }
.private-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 30px; }
.private-section-heading h2 { margin-bottom: 0; }
.private-section > .services-catalog { margin-top: 30px; padding: 32px; background: white; border-radius: 22px; }
.private-grid-three { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.private-grid-three article { padding: 28px; border-radius: 18px; background: white; }
.private-grid-three article > span { font-size: 13px; color: var(--green-color); }
.private-grid-three h3 { margin: 22px 0 12px; font-size: 19px; line-height: 1.4; }
.private-grid-three p { font-size: 14px; line-height: 1.8; }
.private-lead { max-width: 760px; font-size: 16px; line-height: 1.8; }
.private-breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; margin: 28px 0; font-size: 11px; }
.private-breadcrumbs a { color: var(--green-color); }
.private-cta { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 36px; margin: 50px 0; background: var(--green-color); color: white; border-radius: 22px; }
.private-cta h2 { margin-top: 0; color: white; }
.private-cta p { margin-bottom: 0; font-size: 14px; }
.private-cta .private-button { flex-shrink: 0; }
.service-estimate { padding: 28px; border-radius: 16px; background: white; color: var(--main-color); }
.service-estimate h2 { font-size: 28px; }
.service-estimate p { font-size: 13px; line-height: 1.8; }
.service-estimate a { display: inline-block; margin-top: 16px; font-size: 20px; font-weight: bold; color: var(--green-color); }
.private-muted { font-size: 12px; margin-top: 20px; }
.private-faq details { padding: 20px 0; border-bottom: 1px solid rgba(50,76,62,.2); }
.private-faq summary { cursor: pointer; font-weight: bold; font-size: 15px; }
.private-faq details p { max-width: 800px; font-size: 14px; line-height: 1.8; }
.service-related { display: flex; flex-wrap: wrap; gap: 12px; }
.service-related a { background: white; border-radius: 10px; padding: 14px 18px; color: var(--green-color); font-size: 13px; }
@media (max-width: 1100px) {
  .private-header { flex-wrap: wrap; gap: 18px; }
  .private-nav { order: 3; width: 100%; }
  .private-header-caption { display: none; }
  .private-hero { gap: 24px; grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); }
  .private-hero h1 { font-size: 36px; }
}
@media (max-width: 767px) {
  .private-header { padding: 16px; gap: 16px; }
  .private-brand img { width: 102px; height: 64px; }
  .private-header-contact a { font-size: clamp(16px, 4.4vw, 20px); }
  .private-header-contact span { font-size: 9px; }
  .private-nav { gap: 16px; justify-content: space-between; flex-wrap: wrap; }
  .private-nav > a, .services-menu summary { font-size: 11px; }
  .services-menu summary { padding: 9px 11px; gap: 12px; }
  .services-dropdown { padding: 22px; max-height: 65vh; }
  .services-dropdown-heading { font-size: 14px; flex-wrap: wrap; }
  .services-catalog { grid-template-columns: 1fr; gap: 28px; }
  .services-group a { padding-top: 4px; padding-bottom: 4px; }
  .services-group a::before { top: 1em; }
  .private-hero { grid-template-columns: 1fr; margin-top: 18px; padding: 26px; }
  .private-hero h1 { font-size: 32px; }
  .private-hero-copy > p, .service-intro { font-size: 14px; }
  .private-hero-aside { border-radius: 18px; padding: 24px; }
  .private-hero-aside > span { font-size: 26px; }
  .private-grid-three { grid-template-columns: 1fr; }
  .private-section { margin-top: 36px; margin-bottom: 36px; }
  .private-section-heading, .private-cta { align-items: flex-start; flex-direction: column; }
  .private-section > .services-catalog { padding: 24px; }
  .private-cta { padding: 26px; }
  .service-estimate { padding: 22px; }
  .service-estimate a { font-size: 17px; }
}

/* Company footer: contacts, navigation and supplied company details. */
.site-footer-shell { padding-bottom: 32px; }
.site-footer { margin: 30px 0 0; padding: clamp(32px,4.5vw,72px); border: 1px solid rgba(255,255,255,.06); border-radius: 24px; background: #222426; color: #f5f4f1; box-shadow: 0 12px 32px rgba(25,27,29,.08); }
.site-footer a { color: inherit; text-decoration: none; }
.site-footer a:hover, .site-footer-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.site-footer a:focus-visible, .site-footer button:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
.site-footer-invitation { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 40px; padding-bottom: 52px; border-bottom: 1px solid rgba(255,255,255,.14); }
.site-footer-eyebrow { display: block; margin: 0 0 14px; font-size: 10px; font-weight: bold; line-height: 1.6; letter-spacing: .13em; text-transform: uppercase; color: rgba(255,255,255,.75); }
.site-footer h2 { margin: 0 0 18px; color: white; font-size: clamp(28px,3vw,44px); line-height: 1.15; letter-spacing: -.04em; }
.site-footer-invitation p:not(.site-footer-eyebrow) { margin: 0; font-size: 13px; line-height: 1.8; color: rgba(255,255,255,.8); }
.site-footer-call { align-self: center; justify-self: end; }
.site-footer-phone { display: block; font-size: clamp(23px,2.6vw,40px); font-weight: bold; letter-spacing: -.035em; line-height: 1.3; }
.site-footer-call > span { display: block; margin-top: 8px; color: rgba(255,255,255,.8); font-size: 12px; }
.site-footer-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; margin-top: 26px; }
.site-footer-messenger { font-size: 12px; }
.site-footer-navigation { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr); gap: 36px; padding: 48px 0; }
.site-footer-logo { display: block; width: 120px; height: 76px; object-fit: contain; filter: brightness(0) invert(1); }
.site-footer-about p { font-size: 12px; line-height: 1.8; margin: 20px 0 14px; color: rgba(255,255,255,.8); }
.site-footer-about > a { font-size: 12px; overflow-wrap: anywhere; }
.site-footer h3 { margin: 0 0 22px; color: white; font-size: 18px; line-height: 1.5; }
.site-footer-navigation ul { margin: 0; padding: 0; list-style: none; }
.site-footer-navigation li + li { margin-top: 12px; }
.site-footer-navigation li a, .site-footer-link { font-size: 16px; line-height: 1.65; color: rgba(255,255,255,.82); }
.site-footer-link { padding: 0; border: 0; background: none; color: white; font-family: inherit; font-weight: normal; text-align: left; cursor: pointer; }
.site-footer address { margin: 0; font-size: 14px; line-height: 1.9; font-style: normal; }
.site-footer-company { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 28px 32px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: rgba(255,255,255,.025); }
.site-footer-company .site-footer-eyebrow { margin-bottom: 7px; }
.site-footer-company strong { font-size: 18px; }
.site-footer-company dl { display: flex; flex-wrap: wrap; gap: 36px; margin: 0; }
.site-footer-company dt { margin: 0 0 5px; font-size: 10px; font-weight: normal; color: rgba(255,255,255,.7); }
.site-footer-company dd { margin: 0; font-size: 14px; font-variant-numeric: tabular-nums; }
.site-footer-bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px 24px; margin-top: 30px; font-size: 12px; line-height: 1.8; }
.site-footer-disclaimer { max-width: 800px; margin: 18px 0 0; font-size: 11px; line-height: 1.8; color: rgba(255,255,255,.65); }
@media (max-width: 1100px) {
  .site-footer-navigation { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; }
  .site-footer-company { align-items: flex-start; flex-direction: column; }
  .site-footer-call { justify-self: start; }
}
@media (max-width: 767px) {
  .site-footer-shell { padding-bottom: 24px; }
  .site-footer { padding: 32px 24px; border-radius: 22px; }
  .site-footer-invitation { grid-template-columns: 1fr; gap: 26px; padding-bottom: 30px; }
  .site-footer-navigation { grid-template-columns: 1fr; padding: 36px 0; gap: 32px; }
  .site-footer h3 { margin-bottom: 12px; }
  .site-footer-navigation li + li { margin-top: 6px; }
  .site-footer-navigation li a, .site-footer-link { display: inline-block; padding: 4px 0; font-size: 16px; }
  .site-footer-company { padding: 22px; gap: 22px; }
  .site-footer-company dl { gap: 20px 28px; }
  .site-footer-company dd { font-size: 13px; }
  .site-footer-bottom { flex-direction: column; gap: 12px; }
}

.site-footer .private-button { background: #f5f4f1; color: #292b2d; }
.site-footer .private-button:hover { background: #e5e3de; color: #292b2d; }

/* Shared vector icons: consistent strokes, no font-dependent arrow glyphs. */
.site-icon { display: inline-block; width: 20px; height: 20px; flex: 0 0 auto; vertical-align: middle; }
.direction-arrow { display: inline-flex; align-items: center; }
.direction-arrow .site-icon { width: 26px; height: 26px; }
.private-button { gap: 10px; }
.services-menu summary > span { display: inline-flex; }
.services-menu summary .site-icon { width: 16px; height: 16px; }
.services-menu[open] summary .site-icon { transform: rotate(180deg); }
.private-text-link .site-icon, .site-footer-messenger .site-icon,
.site-footer-bottom .site-icon, .services-dropdown-heading .site-icon,
.private-section-heading .site-icon, .site-footer-navigation .site-icon,
.service-related .site-icon { width: 16px; height: 16px; }

/* Keep the first-screen spacing even when container padding is reset by UIkit. */
#primary > .directions { padding-top: 32px; margin-top: 0; }
.private-original-home { padding-top: 24px; }
.private-original-home #packages,
.private-original-home #projects,
.private-original-home #private-contact { scroll-margin-top: 30px; }
@media (max-width: 767px) {
  #primary > .directions { padding-top: 24px; }
  .private-original-home { padding-top: 16px; }
}

/* A stable base drawing with a soft, one-shot architectural tracing overlay. */
.direction-line-trace { opacity: 0; pointer-events: none; }
@keyframes direction-line-trace {
  0% { stroke-dashoffset: 1; opacity: 0; }
  12% { opacity: .95; }
  78% { stroke-dashoffset: 0; opacity: .95; }
  100% { stroke-dashoffset: 0; opacity: 0; }
}
@media (prefers-reduced-motion: no-preference) {
  .direction-card { transition: transform .55s cubic-bezier(.22,1,.36,1), box-shadow .55s ease; }
  .direction-visual > svg { transition: opacity .65s ease, transform .7s cubic-bezier(.22,1,.36,1); transform-origin: center bottom; }
  .direction-arrow { transition: transform .5s cubic-bezier(.22,1,.36,1); }
  .direction-card:focus-within { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(35,50,42,.1); }
  .direction-card:focus-within .direction-visual > svg { opacity: 1; transform: translateY(-2px); }
  .direction-card:focus-within .direction-arrow { transform: translate(3px,-3px); }
  .direction-card:focus-within .direction-line-trace { stroke-dasharray: 1; animation: direction-line-trace 2.4s cubic-bezier(.4,0,.2,1) both; }
  .direction-card:focus-within .direction-line--details { animation-delay: .3s; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .direction-card:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(35,50,42,.1); }
  .direction-card:hover .direction-visual > svg { opacity: 1; transform: translateY(-2px); }
  .direction-card:hover .direction-arrow { transform: translate(3px,-3px); }
  .direction-card:hover .direction-line-trace { stroke-dasharray: 1; animation: direction-line-trace 2.4s cubic-bezier(.4,0,.2,1) both; }
  .direction-card:hover .direction-line--details { animation-delay: .3s; }
}

/* Readable legal documents. */
.legal-page { max-width: 1000px; padding-bottom: 40px; }
.legal-document { padding: clamp(24px,4vw,56px); background: white; border-radius: 22px; }
.legal-document h1 { font-size: clamp(27px,3vw,42px); line-height: 1.2; overflow-wrap: anywhere; }
.legal-content { font-size: 16px; line-height: 1.85; overflow-wrap: anywhere; }
.legal-content h2 { margin-top: 36px; font-size: 22px; line-height: 1.4; }
.legal-content a, .legal-links a { color: var(--green-color); text-decoration: underline; }
.legal-links { display: flex; flex-wrap: wrap; gap: 18px 28px; margin-top: 26px; font-size: 14px; }
.legal-content li + li { margin-top: 12px; }

/* Native CF7 acceptance: keyboard-accessible checkbox with a vector checkmark. */
.wpcf7 .sk-une-consent-wrap { display: block; width: 100%; flex-basis: 100%; margin: 20px 0; text-align: left; }
.wpcf7 .sk-une-consent-wrap .wpcf7-list-item { display: block; margin: 0; }
.wpcf7 .sk-une-consent-wrap label { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; font-weight: normal; }
.wpcf7 input.sk-une-consent[type="checkbox"] { appearance: none; -webkit-appearance: none; display: inline-block; flex: 0 0 22px; box-sizing: border-box; width: 22px; min-width: 22px; height: 22px; min-height: 22px; margin: 2px 0 0; padding: 0; border: 1px solid #809489; border-radius: 6px; background-color: #fff; background-position: center; background-repeat: no-repeat; background-size: 16px; box-shadow: none; cursor: pointer; }
.wpcf7 input.sk-une-consent[type="checkbox"]:checked { border-color: var(--green-color); background-color: var(--green-color); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E"); }
.wpcf7 input.sk-une-consent[type="checkbox"]:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.wpcf7 .sk-une-consent-wrap .wpcf7-list-item-label { flex: 1; min-width: 0; font: normal 13px/1.7 "Montserrat", sans-serif; color: inherit; }
.wpcf7 .sk-une-consent-wrap a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.wpcf7 .sk-une-consent-wrap a:hover { text-decoration-thickness: 2px; }
.wpcf7 .sk-une-consent-wrap .wpcf7-not-valid-tip { margin-top: 8px; font-size: 12px; }
.wpcf7 .wpcf7-submit:disabled { opacity: .5; cursor: not-allowed; }
@media (forced-colors: active) {
  .wpcf7 input.sk-une-consent[type="checkbox"] { appearance: auto; background-image: none; }
}

/* Shared navigation: the entry page keeps only the brand and phone. */
.site-header { z-index: 980; }
.site-header .header-navigation { position: relative; flex-wrap: nowrap; gap: 28px; }
.site-header-brand { display: block; flex: 0 0 auto; }
.site-header-brand img { display: block; width: 151px; height: auto; }
.site-header .header-contact { flex-shrink: 0; gap: 24px; margin-left: auto; }
.site-header .header-contact__phone { display: block; white-space: nowrap; }
.site-header .header-contact__phone a { font-size: 25px; }
.site-header .header-contact__phone span { display: block; font-size: 13px; font-weight: 300; }
.site-header .header-contact__btn button { padding: 18px 26px; font-size: 14px; white-space: nowrap; }
.site-navigation--desktop { display: flex; align-items: center; justify-content: center; gap: 22px; flex: 1; }
.site-navigation > a, .site-navigation summary { color: var(--main-color); font-size: 16px; font-weight: 400; line-height: 1.5; white-space: nowrap; }
.site-navigation summary { padding: 12px 0; gap: 7px; background: transparent; border-radius: 0; }
.site-navigation .services-menu[open] > summary { background: transparent; color: var(--green-color); }
.site-navigation a:hover { color: var(--green-color); text-decoration: underline; text-underline-offset: 5px; }
.site-navigation :is(a, button, summary):focus-visible, .site-header :is(a, button):focus-visible { outline: 2px solid var(--green-color); outline-offset: 4px; }
.site-navigation .services-dropdown { top: calc(100% + 8px); text-align: left; }
.site-directions-dropdown { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.site-directions-dropdown > :is(a, button) { display: block; padding: 22px; border: 1px solid #dce3de; border-radius: 14px; background: #f5f7f5; color: var(--green-color); font: 600 17px/1.5 "Montserrat", sans-serif; text-align: left; cursor: pointer; white-space: normal; }
.site-directions-dropdown > :is(a, button):hover { background: #eaf0eb; text-decoration: none; }
.site-directions-dropdown span { display: block; margin-top: 6px; font-size: 13px; font-weight: 400; }
.site-menu-toggle { display: none; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 10px 14px; border: 1px solid var(--green-color); border-radius: 12px; background: transparent; color: var(--green-color); font: 600 13px/1.4 "Montserrat", sans-serif; cursor: pointer; }
#offcanvas-menu .uk-offcanvas-bar { width: min(440px, 100vw); padding: 28px 24px; background: white; color: var(--main-color); }
#offcanvas-menu .uk-offcanvas-close { color: var(--green-color); }
#offcanvas-menu .canvas-content { padding-top: 10px; }
#offcanvas-menu .canvas-logo { margin-bottom: 24px; }
#offcanvas-menu .canvas-logo img { width: 112px; height: auto; }
.site-navigation--mobile { display: flex; flex-direction: column; }
.site-navigation--mobile > a, .site-navigation--mobile > details { border-bottom: 1px solid #e2e7e3; }
.site-navigation--mobile > a, .site-navigation--mobile summary { display: flex; justify-content: space-between; padding: 16px 0; font-size: 17px; white-space: normal; }
.site-navigation--mobile .services-dropdown { position: static; max-height: none; padding: 0 0 20px; border: 0; border-radius: 0; box-shadow: none; overflow: visible; }
.site-navigation--mobile .site-directions-dropdown, .site-navigation--mobile .services-catalog { grid-template-columns: 1fr; gap: 18px; }
.site-navigation--mobile .services-dropdown-heading { display: block; margin: 0 0 18px; }
.site-navigation--mobile .services-dropdown-heading strong { display: none; }
#offcanvas-menu .site-navigation .services-group h3 { margin: 0 0 8px; font-size: 14px; color: var(--green-color); }
#offcanvas-menu .site-navigation .services-group ul { margin: 0; padding: 0; list-style: none; }
#offcanvas-menu .site-navigation .services-group a { padding: 8px 0 8px 14px; font-size: 14px; font-weight: 400; line-height: 1.5; color: var(--main-color); }
#offcanvas-menu .canvas-content-phone { margin: 28px 0 20px; }
#offcanvas-menu .canvas-content-phone a { color: var(--green-color); }
#offcanvas-menu .canvas-content-phone span { display: block; margin-top: 8px; font-size: 12px; }
#offcanvas-menu .canvas-content-btn button { width: 100%; color: var(--green-color); border-color: var(--green-color); }
#offcanvas-menu .canvas-content-adres { margin-top: 24px; font-size: 13px; }
#offcanvas-menu .canvas-content-mail a { color: var(--green-color); font-size: 13px; }
#packages, #calculator, #projects, #private-contact { scroll-margin-top: 150px; }
@media (max-width: 1599px) {
  .site-header .header-navigation { gap: 20px; padding: 18px 24px; }
  .site-header-brand img { width: 125px; }
  .site-header .header-contact { gap: 16px; }
  .site-header .header-contact__phone a { font-size: 21px; }
  .site-header .header-contact__btn { display: none; }
  .site-navigation--desktop { gap: 18px; }
  .site-navigation--desktop > a, .site-navigation--desktop summary { font-size: 14px; }
}
@media (max-width: 1199px) {
  .site-navigation--desktop { display: none; }
  .site-menu-toggle { display: inline-flex; }
}
@media (max-width: 639px) {
  .site-header .header-navigation { gap: 12px; padding: 14px 16px; }
  .site-header-brand img { width: 86px; }
  .site-header .header-contact { gap: 12px; }
  .site-header .header-contact__phone a { padding: 0; background: none; font-size: clamp(13px, 3.4vw, 19px); }
  .site-header .header-contact__phone span, .site-header .header-cosial { display: none; }
  .site-menu-toggle { width: 42px; min-height: 42px; padding: 9px; }
  .site-menu-toggle span { display: none; }
}
@media (max-width: 359px) {
  .site-header .header-navigation { padding: 12px; gap: 8px; }
  .site-header-brand img { width: 68px; }
  .site-header .header-contact { gap: 8px; }
}

#offcanvas-menu.uk-offcanvas-flip .uk-offcanvas-bar { box-sizing: border-box; right: calc(-1 * min(440px, 100vw)); }
#offcanvas-menu.uk-offcanvas-flip.uk-open .uk-offcanvas-bar { right: 0; }
#offcanvas-menu .site-navigation .services-group a::before { top: 18px; }

/* Native disclosure works without scripts and never loads social SDKs. */
.contact-widget { position: fixed; right: max(24px, env(safe-area-inset-right)); bottom: max(24px, env(safe-area-inset-bottom)); z-index: 990; color: var(--green-color); }
.contact-widget > summary { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 60px; padding: 0 24px; border: 1px solid rgba(255,255,255,.2); border-radius: 30px; background: var(--green-color); color: white; box-shadow: 0 8px 30px rgba(26,48,35,.24); font-size: 14px; font-weight: 600; list-style: none; cursor: pointer; transition: transform .2s, background .2s; }
.contact-widget > summary::-webkit-details-marker { display: none; }
.contact-widget > summary:hover { background: #243d2e; transform: translateY(-2px); }
.contact-widget__close, .contact-widget[open] .contact-widget__bubble { display: none; }
.contact-widget[open] .contact-widget__close { display: block; }
.contact-widget__panel { position: absolute; right: 0; bottom: calc(100% + 14px); box-sizing: border-box; width: min(330px, calc(100vw - 32px)); max-height: calc(100dvh - 120px); overflow-y: auto; padding: 24px; border: 1px solid #dfe6e1; border-radius: 22px; background: #fff; box-shadow: 0 16px 55px rgba(26,48,35,.18); }
.contact-widget[open] .contact-widget__panel { animation: contact-reveal .22s ease-out; }
.contact-widget .contact-widget__title { margin: 0 0 6px; font-size: 20px; line-height: 1.3; font-weight: 700; }
.contact-widget .contact-widget__subtitle { margin: 0 0 18px; font-size: 12px; color: #657269; }
.contact-widget nav { display: grid; gap: 8px; }
.contact-widget nav a { display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 13px; background: #f3f6f3; color: var(--green-color); font-size: 14px; font-weight: 600; line-height: 1.4; text-decoration: none; transition: background .2s; }
.contact-widget nav a:hover { background: #e6eee7; }
.contact-widget__icon { display: grid; place-items: center; flex: 0 0 34px; }
.contact-widget__icon svg { width: 25px; height: 25px; }
.contact-widget nav small { display: block; margin-top: 3px; font-size: 11px; font-weight: 400; color: #657269; }
.contact-widget__arrow { margin-left: auto; font-size: 20px; }
.contact-widget .contact-widget__note { margin: 16px 0 0; font-size: 10px; line-height: 1.55; color: #657269; }
.contact-widget :is(summary, a):focus-visible { outline: 3px solid #9aac8e; outline-offset: 4px; }
@keyframes contact-reveal { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (max-width: 639px) {
  .contact-widget { right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); }
  .contact-widget > summary { width: 56px; min-height: 56px; padding: 0; }
  .contact-widget > summary > span { display: none; }
  .contact-widget__panel { padding: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .contact-widget > summary, .contact-widget nav a { transition: none; }
  .contact-widget[open] .contact-widget__panel { animation: none; }
}

/* Editorial service catalogue, shared by the mega menu, catalogue and footer. */
.services-dropdown--premium { padding: 32px; background: #fafbf8; border-color: #dfe5dc; }
.services-dropdown--premium .services-dropdown-heading { align-items: center; padding-bottom: 24px; border-bottom: 1px solid #dfe5dc; }
.services-menu-eyebrow { display: block; margin-bottom: 7px; color: #7a795f; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
.services-dropdown--premium .services-dropdown-heading strong { display: block; color: var(--green-color); font-size: clamp(18px, 1.7vw, 25px); font-weight: 500; }
.services-dropdown--premium .services-dropdown-heading > a { flex-shrink: 0; padding: 12px 18px; border: 1px solid #b8c3b7; border-radius: 30px; }
.services-catalog--premium { align-items: start; gap: 20px; }
.services-catalog--premium .service-category { min-width: 0; padding: 22px; border: 1px solid #e1e6dd; border-radius: 16px; background: #fff; }
.services-catalog--premium .service-category-heading { display: flex; align-items: center; gap: 14px; padding: 0; background: transparent; color: var(--green-color); list-style: none; white-space: normal; cursor: pointer; }
.service-category-heading::-webkit-details-marker { display: none; }
.service-category-icon { display: grid; place-items: center; width: 48px; height: 54px; flex: 0 0 48px; border-radius: 14px 14px 4px 14px; background: #edf1e9; color: var(--green-color); }
.service-category-label { min-width: 0; }
.service-category-index { display: block; margin-bottom: 5px; color: #7a795f; font-size: 9px; letter-spacing: .14em; }
.service-category-title { display: block; font-size: 17px; font-weight: 600; line-height: 1.35; }
.service-category-toggle { margin-left: auto; font-size: 22px; font-weight: 300; }
.service-category[open] > summary .service-category-toggle { transform: rotate(180deg); }
.services-catalog--premium .service-category ul { margin: 20px 0 0; padding: 0; list-style: none; }
.services-catalog--premium .service-category li + li { margin-top: 0; }
.services-catalog--premium .service-category li a { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 7px 0; color: #485449; font-size: 13px; line-height: 1.5; font-weight: 400; text-decoration: none; transition: color .2s; }
.services-catalog--premium .service-category li a::before { display: none; }
.services-catalog--premium .service-category li a > span { color: #a8ae9b; flex-shrink: 0; transition: transform .2s; }
.services-catalog--premium .service-category li a:hover { color: #172f21; text-decoration: underline; text-underline-offset: 4px; }
.services-catalog--premium .service-category li a:hover > span { transform: translate(2px, -2px); }
.service-category summary:focus-visible, .service-category a:focus-visible { outline: 2px solid #9ba785; outline-offset: 4px; border-radius: 3px; }
.site-footer-catalog-teaser p { max-width: 280px; color: #b9c0b9; font-size: 14px; line-height: 1.8; }
.site-footer-catalog-teaser > a { font-size: 13px; }
.site-footer-services { padding: 36px 0 48px; border-top: 1px solid rgba(255,255,255,.12); }
.site-footer-services-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.site-footer-services-heading h2 { margin: 0; color: #f4f2e9; font-size: clamp(24px, 3vw, 36px); letter-spacing: -.025em; }
.site-footer-services-heading > a { flex-shrink: 0; font-size: 13px; }
.site-footer .services-catalog--premium .service-category { background: rgba(255,255,255,.025); border-color: rgba(255,255,255,.1); }
.site-footer .service-category-heading { color: #f4f2e9; }
.site-footer .service-category-icon { color: #d5dbc4; background: #343c34; }
.site-footer .service-category-index { color: #a6ad94; }
.site-footer .services-catalog--premium .service-category li a { color: #c6cbc4; }
.site-footer .services-catalog--premium .service-category li a:hover { color: white; }
.site-footer .service-category-toggle { color: #a6ad94; }
@media (min-width: 768px) and (max-width: 1199px) {
  .services-catalog--premium { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
#offcanvas-menu .services-dropdown--premium { background: white; }
#offcanvas-menu .services-dropdown--premium .services-dropdown-heading > div { display: none; }
#offcanvas-menu .services-dropdown--premium .services-dropdown-heading > a { display: inline-block; }
#offcanvas-menu .services-catalog--premium { grid-template-columns: 1fr; gap: 10px; }
#offcanvas-menu .services-catalog--premium .service-category { padding: 16px; }
#offcanvas-menu .services-catalog--premium .service-category-heading { padding: 0; gap: 12px; }
#offcanvas-menu .services-catalog--premium .service-category li a { padding: 9px 0; font-size: 13px; }
#offcanvas-menu .service-category-title { font-size: 15px; }
#offcanvas-menu .service-category-icon { width: 38px; height: 44px; flex-basis: 38px; }
@media (max-width: 767px) {
  .services-catalog--premium { grid-template-columns: 1fr; gap: 12px; }
  .services-catalog--premium .service-category { padding: 18px; }
  .private-section > .services-catalog--premium { padding: 0; background: transparent; }
  .site-footer-services-heading { align-items: start; flex-direction: column; gap: 16px; }
  .site-footer-services { padding: 28px 0; }
}
@media (prefers-reduced-motion: reduce) {
  .services-catalog--premium .service-category li a, .services-catalog--premium .service-category li a > span { transition: none; }
}
.site-navigation .services-catalog--premium .service-category > summary { background: transparent; color: var(--green-color); }
.services-catalog--premium .service-category-heading > .service-category-label { display: block; }
.services-catalog--premium .service-category-heading > .service-category-icon { display: grid; }

/* Contacts: quiet typography, architectural lines and readable company details. */
.contacts-premium { padding-bottom: 64px; }
.contacts-hero { display: grid; grid-template-columns: 1.45fr 1fr; overflow: hidden; border-radius: 26px; background: #324c3e; color: #fff; }
.contacts-hero-copy { padding: clamp(28px,5vw,80px); }
.contacts-kicker { margin: 0 0 24px; font-size: 10px; letter-spacing: .18em; text-transform: uppercase; }
.contacts-hero h1 { margin: 0 0 28px; color: #fff; font-size: clamp(36px,4.7vw,76px); line-height: 1.06; letter-spacing: -.045em; font-weight: 500; }
.contacts-hero h1 em { color: #d9dfbd; font-style: normal; }
.contacts-lead { color: #d9e1d9; font-size: 16px; line-height: 1.8; }
.contacts-main-phone { display: inline-block; margin-top: 28px; color: #fff; font-size: clamp(22px,2.8vw,42px); font-weight: 700; letter-spacing: -.035em; }
.contacts-main-phone:hover { color: #d9dfbd; text-decoration: none; }
.contacts-hours { display: flex; align-items: center; gap: 9px; margin: 10px 0 0; color: #d9e1d9; font-size: 12px; }
.contacts-hours > span { width: 5px; height: 5px; border-radius: 50%; background: #d9dfbd; }
.contacts-visit { position: relative; display: flex; flex-direction: column; align-items: start; padding: clamp(28px,4vw,64px); background: #e9eddf; color: #324c3e; }
.contacts-section-number { display: block; font-size: 10px; line-height: 1.6; letter-spacing: .12em; color: #737b65; }
.contacts-building { width: min(240px,75%); height: 160px; margin: 16px 0 12px auto; opacity: .6; }
.contacts-visit h2 { margin: 0 0 20px; color: #324c3e; font-size: clamp(28px,3vw,44px); line-height: 1.15; font-weight: 500; letter-spacing: -.035em; }
.contacts-visit address { margin: 0; font-size: 18px; font-style: normal; line-height: 1.6; }
.contacts-visit > p { max-width: 320px; margin: 18px 0 24px; font-size: 12px; line-height: 1.7; }
.contacts-route { display: flex; justify-content: space-between; gap: 24px; width: 100%; margin-top: auto; padding-top: 20px; border-top: 1px solid #b9c2ae; color: #324c3e; font-size: 14px; }
.contacts-channels { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin-top: 22px; }
.contacts-channels > a { display: flex; flex-direction: column; padding: clamp(22px,3vw,42px); border: 1px solid #dfe4dc; border-radius: 20px; background: #fff; color: #324c3e; transition: background .2s, border-color .2s; }
.contacts-channels > a:hover { background: #f0f3eb; border-color: #a5b29a; text-decoration: none; }
.contacts-channels h2 { margin: 24px 0 10px; color: #324c3e; font-size: clamp(20px,2vw,28px); line-height: 1.25; font-weight: 500; letter-spacing: -.025em; }
.contacts-channels p { margin: 0 0 32px; font-size: 13px; color: #6b7469; }
.contacts-channel-value { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-top: auto; font-size: 14px; overflow-wrap: anywhere; }
.contacts-channel-value > span { font-size: 22px; }
.contacts-small { max-width: 850px; margin: 14px 0 0; font-size: 10px; line-height: 1.7; color: #6b7469; }
.contacts-request { display: flex; align-items: center; justify-content: space-between; gap: 32px; margin: 56px 0; padding: 40px 0; border-top: 1px solid #d8dfd4; border-bottom: 1px solid #d8dfd4; }
.contacts-request .contacts-kicker { margin-bottom: 16px; }
.contacts-request h2, .contacts-details-heading h2 { margin: 0; color: #324c3e; font-size: clamp(30px,3.5vw,48px); line-height: 1.15; font-weight: 500; letter-spacing: -.035em; }
.contacts-request p:last-child { margin: 18px 0 0; font-size: 14px; line-height: 1.8; }
.contacts-request .private-button { flex-shrink: 0; }
.contacts-details-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 28px; }
.contacts-details-heading .contacts-kicker { margin-bottom: 14px; }
.contacts-details-heading > p { margin: 0; font-size: 12px; line-height: 1.8; color: #6b7469; }
.contacts-details-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 22px; align-items: start; }
.contacts-details-card { min-width: 0; padding: clamp(22px,3vw,44px); border: 1px solid #dfe4dc; border-radius: 20px; background: #fff; }
.contacts-details-card--bank { background: #f0f2e9; }
.contacts-details-card h3 { margin: 18px 0 28px; color: #324c3e; font-size: 24px; font-weight: 500; }
.contacts-details-card dl { margin: 0; }
.contacts-details-card dl > div { padding: 15px 0; border-top: 1px solid #e0e5da; }
.contacts-details-card dt { margin-bottom: 6px; color: #6b7469; font-size: 11px; font-weight: 400; }
.contacts-details-card dd { margin: 0; color: #324c3e; font-size: 14px; line-height: 1.7; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; user-select: text; }
.contacts-premium :is(a,button):focus-visible { outline: 3px solid #9cab84; outline-offset: 5px; }
.footer-contacts-link { display: inline-block; margin: 0 0 16px; font-size: 13px; }
@media(max-width: 959px) {
  .contacts-hero { grid-template-columns: 1.2fr 1fr; }
  .contacts-channels { gap: 12px; }
  .contacts-channels > a { padding: 22px; }
  .contacts-channel-value { font-size: 12px; }
}
@media(max-width: 767px) {
  .contacts-hero, .contacts-channels, .contacts-details-grid { grid-template-columns: 1fr; }
  .contacts-hero-copy, .contacts-visit { padding: 28px; }
  .contacts-building { width: 140px; height: 90px; margin-top: 0; }
  .contacts-channels h2 { margin-top: 16px; }
  .contacts-channels p { margin-bottom: 20px; }
  .contacts-channel-value { font-size: 14px; }
  .contacts-request, .contacts-details-heading { align-items: start; flex-direction: column; }
  .contacts-request { margin: 36px 0; padding: 30px 0; }
  .contacts-request .private-button { width: 100%; box-sizing: border-box; }
  .contacts-premium { padding-bottom: 36px; }
}
@media(prefers-reduced-motion: reduce) { .contacts-channels > a { transition: none; } }

/* Dedicated packages and portfolio pages. */
.collection-page { padding-bottom: 50px; }
.collection-hero { padding: clamp(28px,5vw,72px); border-radius: 24px; background: #324c3e; color: #e0e7dc; }
.collection-hero h1 { margin: 0 0 24px; color: white; font-size: clamp(34px,4.5vw,66px); font-weight: 500; letter-spacing: -.04em; line-height: 1.1; }
.collection-hero h1 em { color: #d9dfbd; font-style: normal; }
.collection-hero > p:not(.contacts-kicker) { max-width: 680px; font-size: 16px; line-height: 1.8; }
.collection-hero > a { display: inline-flex; gap: 30px; margin-top: 18px; padding-bottom: 8px; border-bottom: 1px solid #9eae91; color: white; font-size: 14px; }
.collection-options { margin-top: 36px; scroll-margin-top: 150px; }
.collection-options .wrapper-packages { margin-top: 0; }
.collection-explainer { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; padding: 48px 0; }
.collection-explainer h2 { margin: 0; color: #324c3e; font-size: clamp(28px,3vw,42px); font-weight: 500; line-height: 1.2; }
.collection-explainer p { font-size: 14px; line-height: 1.8; }
.project-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-top: 32px; scroll-margin-top: 150px; }
.project-card { min-width: 0; overflow: hidden; border: 1px solid #dfe5db; border-radius: 20px; background: white; }
.project-card-link { display: flex; flex-direction: column; height: 100%; color: #324c3e; }
.project-card-link:hover { text-decoration: none; color: #324c3e; }
.project-card-image { aspect-ratio: 4/3; overflow: hidden; background: #e5eadd; }
.project-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.project-card-link:hover img { transform: scale(1.035); }
.project-card-placeholder { display: grid; place-items: center; height: 100%; letter-spacing: .14em; font-size: 12px; }
.project-card-copy { display: flex; flex-direction: column; flex: 1; padding: 26px; }
.project-card h2 { margin: 14px 0 22px; color: #324c3e; font-size: 23px; line-height: 1.3; }
.project-card dl { margin: 0 0 24px; font-size: 13px; }
.project-card dl > div { display: flex; justify-content: space-between; gap: 20px; padding: 9px 0; border-bottom: 1px solid #edf0e8; }
.project-card dt { font-weight: 400; color: #717b6c; }
.project-card dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.project-card-more { display: flex; justify-content: space-between; gap: 16px; margin-top: auto; font-size: 13px; }
.project-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 30px 0; }
.project-pagination .page-numbers { padding: 10px 16px; border: 1px solid #dfe5db; border-radius: 8px; color: #324c3e; }
.project-pagination .current { background: #324c3e; color: white; }
.collection-empty { grid-column: 1/-1; padding: 36px; border-radius: 18px; background: white; }
.collection-home-links { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 40px; margin-bottom: 40px; }
.collection-home-links > a { padding: clamp(24px,4vw,48px); border: 1px solid #dce3d7; border-radius: 22px; background: #fff; color: #324c3e; }
.collection-home-links > a:hover { background: #eaf0e5; text-decoration: none; }
.collection-home-links h2 { color: #324c3e; font-size: 32px; }
.collection-home-links p { max-width: 480px; font-size: 15px; line-height: 1.7; }
.collection-page a:focus-visible, .collection-home-links a:focus-visible { outline: 3px solid #9bab84; outline-offset: 4px; }
@media(max-width: 1199px) { .project-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 767px) {
  .project-grid, .collection-explainer, .collection-home-links { grid-template-columns: 1fr; }
  .collection-explainer { gap: 20px; padding: 32px 0; }
  .project-card-copy { padding: 22px; }
  .collection-page { padding-bottom: 28px; }
}
@media(prefers-reduced-motion: reduce) { .project-card-image img { transition: none; } }

/* Vector arrows keep the same shape and size on desktop and phones. */
.ui-arrow { display: inline-block; width: 20px; height: 20px; min-width: 20px; flex: 0 0 20px; vertical-align: -.25em; overflow: visible; }
.services-catalog--premium .service-category li a > span { display: inline-flex; align-self: center; align-items: center; justify-content: center; width: 24px; height: 24px; color: #77876c; }
.services-catalog--premium .service-category li a .ui-arrow { width: 18px; height: 18px; min-width: 18px; flex-basis: 18px; }
.site-footer .services-catalog--premium .service-category li a > span { color: #bbc8a5; }
.services-catalog--premium .service-category-toggle { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; flex: 0 0 28px; border: 1px solid #dce3d5; border-radius: 50%; transition: transform .2s ease; }
.site-footer .service-category-toggle { border-color: rgba(187,200,165,.25); }
.contact-widget__arrow { display: inline-flex; align-items: center; }
@media (prefers-reduced-motion: reduce) { .services-catalog--premium .service-category-toggle { transition: none; } }

/* Compact service menu; the full catalogue and footer keep their own layout. */
.site-navigation--desktop .services-dropdown--premium { top: calc(100% - 1px); padding: 22px 26px; max-height: min(680px, calc(100dvh - 160px)); border-radius: 18px; }
.site-navigation--desktop .services-dropdown-heading { padding-bottom: 14px; margin-bottom: 16px; }
.site-navigation--desktop .services-menu-eyebrow { display: none; }
.site-navigation--desktop .services-dropdown-heading strong { font-size: 20px; }
.site-navigation--desktop .services-dropdown-heading > a { padding: 7px 13px; font-size: 12px; }
.site-navigation--desktop .services-catalog--premium { display: block; columns: 3; column-gap: 26px; }
.site-navigation--desktop .services-catalog--premium .service-category { break-inside: avoid; margin: 0 0 18px; padding: 0 0 14px; border: 0; border-bottom: 1px solid #e0e6dc; border-radius: 0; background: transparent; }
.site-navigation--desktop .service-category-heading { gap: 10px; }
.site-navigation--desktop .service-category-icon { width: 34px; height: 36px; flex-basis: 34px; border-radius: 9px; }
.site-navigation--desktop .service-category-icon svg { width: 22px; height: 22px; }
.site-navigation--desktop .service-category-index { display: none; }
.site-navigation--desktop .service-category-title { font-size: 14px; }
.site-navigation--desktop .service-category-toggle { width: 22px; height: 22px; flex-basis: 22px; border: 0; }
.site-navigation--desktop .service-category ul { margin-top: 9px; }
.site-navigation--desktop .services-catalog--premium .service-category li a { padding: 4px 0; font-size: 12px; line-height: 1.45; gap: 8px; }
.site-navigation--desktop .services-catalog--premium .service-category li a > span { width: 18px; height: 20px; }
#offcanvas-menu .services-dropdown--premium .services-dropdown-heading { padding-bottom: 12px; margin-bottom: 12px; }
#offcanvas-menu .services-catalog--premium .service-category { padding: 12px; }
#offcanvas-menu .service-category-index { display: none; }
#offcanvas-menu .services-catalog--premium .service-category li a { padding: 8px 0; }

/* Shared team component: identical cards everywhere the section is included. */
.team-section .comnda-info { margin-bottom: 32px; }
.team-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.team-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e1e6dd; border-radius: 22px; background: #fff; }
.team-card-photo { aspect-ratio: 1 / 1.05; overflow: hidden; background: #e7ebdf; }
.team-card-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.team-card-placeholder { display: grid; place-items: center; height: 100%; color: #71816d; font-size: 24px; letter-spacing: .12em; }
.team-card-copy { display: flex; flex: 1; flex-direction: column; gap: 16px; padding: 26px 24px 28px; border-top: 1px solid #e1e6dd; }
.team-card-copy h3 { min-height: 3.9em; margin: 0; color: #324c3e; font-size: clamp(18px, 1.5vw, 24px); font-weight: 600; line-height: 1.3; letter-spacing: -.025em; overflow-wrap: anywhere; }
.team-card-copy p { margin: 0; color: #697365; font-size: 14px; line-height: 1.65; }
@media (min-width: 1100px) {
  .team-grid { grid-auto-rows: 1fr; }
}
@media (max-width: 1099px) {
  .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
}
@media (max-width: 599px) {
  .team-grid { grid-template-columns: 1fr; gap: 20px; }
  .team-card-photo { aspect-ratio: 1 / 1; }
  .team-card-copy { padding: 22px; gap: 12px; }
  .team-card-copy h3 { min-height: 0; font-size: 22px; }
  .team-section .comanda-text br { display: none; }
}

/* One package component for the home page and package catalogue. */
.package-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin: 28px 0; }
.package-card { display: flex; flex-direction: column; gap: 24px; min-width: 0; padding: 22px; border: 1px solid #e0e5dc; border-radius: 24px; background: #fff; }
.package-card-photo { aspect-ratio: 10 / 7; overflow: hidden; border-radius: 16px; background: #e8ecdf; }
.package-card-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.package-card-heading > span { color: #78856e; font-size: 10px; letter-spacing: .14em; }
.package-card-heading h3 { margin: 9px 0 0; color: #324c3e; font-size: clamp(26px, 2.4vw, 38px); font-weight: 600; line-height: 1.15; letter-spacing: -.035em; }
.package-card-features { display: grid; align-content: start; gap: 12px; margin: 0; padding: 0; list-style: none; }
.package-card-features li { display: flex; align-items: start; gap: 10px; color: #55604f; font-size: 14px; line-height: 1.6; }
.package-card-features svg { flex: 0 0 18px; margin-top: 2px; color: #496c52; }
.package-card-gifts { padding-top: 20px; border-top: 1px solid #e5e9df; }
.package-card-gifts h4 { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; color: #324c3e; font-size: 17px; font-weight: 500; }
.package-card-gifts ul { display: flex; flex-wrap: wrap; align-content: start; gap: 8px; margin: 0; padding: 0; list-style: none; }
.package-card-gifts li { padding: 6px 10px; border: 1px solid #e0e6d8; border-radius: 8px; background: #f0f3eb; color: #485e43; font-size: 12px; line-height: 1.5; }
.package-card-price { margin-top: auto; padding-top: 18px; border-top: 1px solid #e5e9df; color: #324c3e; font-size: clamp(25px, 2.3vw, 36px); font-weight: 700; line-height: 1.2; letter-spacing: -.035em; overflow-wrap: anywhere; }
.package-card-price p { margin: 0; }
.package-card-price sup { font-size: .55em; }
.package-card-actions { display: flex; gap: 10px; align-items: stretch; }
.package-card-button, .package-card-tour { display: flex; align-items: center; justify-content: center; gap: 16px; min-height: 52px; box-sizing: border-box; padding: 12px 18px; border: 1px solid #324c3e; border-radius: 12px; font-size: 13px; line-height: 1.4; text-decoration: none; }
.package-card-button { flex: 1; justify-content: space-between; background: #324c3e; color: #fff; }
.package-card-tour { flex: 0 0 auto; color: #324c3e; }
.package-card-button:hover { background: #233b2c; color: #fff; text-decoration: none; }
.package-card-tour:hover { background: #eef2e8; color: #324c3e; text-decoration: none; }
.package-card-actions a:focus-visible { outline: 3px solid #99ab87; outline-offset: 4px; }
@supports (grid-template-rows: subgrid) {
  .package-card { display: grid; grid-template-rows: subgrid; grid-row: span 6; row-gap: 24px; }
  .package-card-price { margin-top: 0; }
}
@media (max-width: 1099px) and (min-width: 768px) {
  .package-cards { gap: 14px; }
  .package-card { padding: 16px; }
  .package-card-actions { flex-wrap: wrap; }
  .package-card-tour { flex: 1; }
  .package-card-button { flex-basis: 100%; }
}
@media (max-width: 767px) {
  .package-cards { grid-template-columns: 1fr; gap: 22px; }
  .package-card { display: flex; grid-row: auto; padding: 20px; gap: 22px; }
  .package-card-heading h3 { font-size: 32px; }
  .package-card-price { font-size: 30px; }
}

/* Match the home page typography and condense the company information. */
.contacts-premium { font-weight: 400; }
.contacts-premium :is(h1, h2, h3) { font-weight: 700; }
.contacts-hero h1 { font-size: clamp(34px, 4.1vw, 64px); line-height: 1.12; }
.contacts-hero-copy { position: relative; isolation: isolate; overflow: hidden; }
.contacts-city-background { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.contacts-city-background img { width: 100%; height: 100%; object-fit: cover; }
.contacts-city-background::after { content: ''; position: absolute; inset: 0; background: linear-gradient(100deg, rgba(29,51,39,.94), rgba(29,51,39,.78)); }
.contacts-details-heading { margin-bottom: 20px; }
.contacts-details-heading h2 { font-size: clamp(26px, 3vw, 38px); }
.contacts-details-card { padding: 24px 28px; }
.contacts-details-card h3 { margin: 12px 0 18px; font-size: 21px; }
.contacts-details-card dl > div { display: grid; grid-template-columns: minmax(120px, .8fr) minmax(0, 1.4fr); gap: 16px; padding: 10px 0; align-items: baseline; }
.contacts-details-card dt { margin: 0; font-size: 12px; line-height: 1.5; }
.contacts-details-card dd { font-size: 13px; line-height: 1.55; }
@media (max-width: 959px) {
  .contacts-details-grid { grid-template-columns: 1fr; }
}
@media (max-width: 479px) {
  .contacts-details-card { padding: 20px; }
  .contacts-details-card dl > div { grid-template-columns: minmax(95px, .8fr) minmax(0, 1.2fr); gap: 12px; }
  .contacts-details-card dd { font-size: 12px; }
  .contacts-details-card dt { font-size: 11px; }
}

/* Consultation card shares the existing manager portrait from team settings. */
.consultation-card { margin: 48px 0; padding: 12px; overflow: hidden; border: 1px solid #dfe5d8; border-radius: 26px; background: #edf1e6; }
.consultation-card--portrait { display: grid; grid-template-columns: 1.35fr 1fr; gap: 12px; }
.consultation-card-copy { align-self: center; padding: clamp(24px,4vw,60px); }
.consultation-card h2 { margin: 0 0 24px; color: #324c3e; font-size: clamp(28px,3.2vw,48px); line-height: 1.13; letter-spacing: -.035em; font-weight: 700; }
.consultation-card-description { max-width: 500px; margin: 0 0 30px; color: #59664f; font-size: 15px; line-height: 1.8; }
.consultation-card-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 24px; border: 1px solid #324c3e; border-radius: 12px; background: #324c3e; color: #fff; font: 700 13px/1.5 "Montserrat",sans-serif; cursor: pointer; }
.consultation-card-button:hover { background: #233e2d; }
.consultation-card-button:focus-visible { outline: 3px solid #879d70; outline-offset: 4px; }
.consultation-card-hours { display: block; margin-top: 14px; color: #65715b; font-size: 11px; }
.consultation-card-portrait { position: relative; min-width: 0; min-height: 480px; overflow: hidden; border-radius: 18px; background: #dce4d3; }
.consultation-card-portrait > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.consultation-card-portrait::after { content: ''; position: absolute; inset: 40% 0 0; background: linear-gradient(transparent,rgba(22,40,29,.88)); pointer-events: none; }
.consultation-card-caption { position: absolute; bottom: 28px; left: 28px; right: 28px; z-index: 1; color: #fff; }
.consultation-card-caption span { display: block; margin-bottom: 10px; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; color: #dce5ce; }
.consultation-card-caption strong { display: block; max-width: 330px; font-size: 22px; line-height: 1.3; }
.consultation-card-caption small { display: block; margin-top: 8px; font-size: 13px; }
@media(max-width: 767px) {
  .consultation-card { margin: 32px 0; }
  .consultation-card--portrait { grid-template-columns: 1fr; }
  .consultation-card-copy { padding: 24px 16px; }
  .consultation-card-portrait { min-height: 0; aspect-ratio: 1 / 1.1; }
  .consultation-card-button { width: 100%; padding: 16px; gap: 12px; }
  .consultation-card h2 br { display: none; }
}

/* Keep breathing room on both sides of the shared calculator section. */
.calculator-section { margin-block: clamp(32px, 4vw, 64px); }
.team-section + .calculator-section { margin-top: 0; }
.calculator-section + .brand { margin-top: 0; }
.calculator-section + .brand .section-title h2 { margin-top: 0; }

/* A shared question form and useful FAQ, presented as one site section. */
.faq-section { margin-block: 48px; }
.faq-shell { padding: clamp(24px,4vw,60px); border: 1px solid #e0e6da; border-radius: 26px; background: white; }
.faq-heading { max-width: 760px; margin-bottom: 36px; }
.faq-heading h2, .question-section h2 { margin: 0 0 20px; color: #324c3e; font-size: clamp(28px,3.2vw,46px); line-height: 1.15; letter-spacing: -.035em; font-weight: 700; }
.faq-heading > p:last-child { margin: 0; color: #65715e; font-size: 15px; line-height: 1.8; }
.faq-layout { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(300px,1fr); gap: 40px; align-items: start; }
.faq-item { border-bottom: 1px solid #e0e6da; }
.faq-item:first-child { border-top: 1px solid #e0e6da; }
.faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 0; color: #324c3e; font-size: 15px; font-weight: 700; line-height: 1.5; list-style: none; cursor: pointer; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary svg { flex: 0 0 20px; }
.faq-item[open] summary svg { transform: rotate(180deg); }
.faq-answer { padding: 0 28px 20px 0; color: #596552; font-size: 14px; line-height: 1.85; }
.faq-answer p { margin: 0 0 12px; }
.faq-answer p:last-child { margin-bottom: 0; }
.faq-question { padding: 28px; border: 1px solid #dbe3d1; border-radius: 20px; background: #edf2e6; }
.faq-question h3 { margin: 18px 0 12px; color: #324c3e; font-size: 28px; }
.faq-question > p { color: #596552; font-size: 14px; line-height: 1.7; }
.question-form .wpcf7-form { display: flex; flex-direction: column; gap: 14px; }
.question-form .wpcf7-form > *, .question-form .wpcf7-form p, .question-form .wpcf7-form label, .question-form .wpcf7-form-control-wrap { box-sizing: border-box; width: 100%; margin: 0; }
.question-form .wpcf7-form-control-wrap { display: block; }
.question-form :is(input[type="text"],input[type="tel"],input[type="email"],textarea) { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; margin: 0; padding: 14px 16px; border: 1px solid #cdd8c4; border-radius: 10px; background: white; color: #324c3e; font: 400 14px/1.6 "Montserrat",sans-serif; }
.question-form textarea { min-height: 130px; max-height: 360px; resize: vertical; }
.question-form-label { display: block; color: #324c3e; font-size: 13px; font-weight: 700; }
.question-form-label .wpcf7-form-control-wrap { margin-top: 8px; }
.question-form .sk-une-consent-wrap { display: block; font-size: 11px; line-height: 1.6; }
.question-form .wpcf7-list-item { margin: 0; }
.question-form .wpcf7-acceptance label { display: flex; gap: 10px; align-items: flex-start; font-size: 11px; line-height: 1.6; }
.question-form input[type="checkbox"] { flex-shrink: 0; margin-top: 3px; }
.question-form input[type="submit"] { width: 100%; min-height: 52px; margin: 0; border: 1px solid #324c3e; border-radius: 10px; background: #324c3e; color: white; font: 700 13px/1.5 "Montserrat",sans-serif; cursor: pointer; }
.question-form input[type="submit"]:disabled { opacity: .5; cursor: not-allowed; }
.question-form .wpcf7-response-output { margin: 12px 0 0; padding: 12px; font-size: 13px; }
.faq-phone { display: inline-block; margin-top: 24px; color: #324c3e; font-size: 21px; font-weight: 700; }
.faq-hours { display: block; margin-top: 6px; color: #65715e; font-size: 11px; }
.question-section { margin-block: 40px; }
.question-section-shell { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; padding: clamp(24px,4vw,56px); border-radius: 24px; background: #edf2e6; }
.question-section-shell > div > p { max-width: 460px; font-size: 14px; line-height: 1.8; }
.faq-section :is(summary,input,textarea,a):focus-visible, .question-section :is(input,textarea,a):focus-visible { outline: 2px solid #829b70; outline-offset: 4px; }
@media(max-width: 959px) { .faq-layout { grid-template-columns: 1fr; gap: 28px; } }
@media(max-width: 767px) {
  .faq-section { margin-block: 32px; }
  .faq-question { padding: 22px; }
  .faq-heading { margin-bottom: 24px; }
  .faq-item summary { font-size: 14px; padding: 17px 0; }
  .question-section-shell { grid-template-columns: 1fr; gap: 28px; }
}

/* Editorial repair guide: sticky introduction and fully readable content. */
.repair-guide { margin-block: 56px; }
.repair-guide-layout { display: grid; grid-template-columns: minmax(260px,.85fr) minmax(0,1.6fr); gap: clamp(32px,5vw,80px); align-items: start; padding: clamp(24px,4vw,60px); border: 1px solid #dfe5da; border-radius: 26px; background: #fff; }
.repair-guide-intro { position: sticky; top: 160px; }
.repair-guide-intro h2 { margin: 0 0 22px; color: #222426; font-size: clamp(28px,2.8vw,42px); font-weight: 700; line-height: 1.15; letter-spacing: -.035em; }
.repair-guide-intro h2 > span { color: #324c3e; }
.repair-guide-intro > p:not(.contacts-kicker) { color: #67735f; font-size: 14px; line-height: 1.8; }
.repair-guide-intro nav { display: grid; gap: 0; margin: 26px 0; }
.repair-guide-intro nav a { display: flex; gap: 14px; padding: 11px 0; border-bottom: 1px solid #e4e9de; color: #87947a; font-size: 11px; text-decoration: none; }
.repair-guide-intro nav a > span { color: #324c3e; font-size: 13px; }
.repair-guide-contact { display: inline-flex; align-items: center; gap: 18px; color: #324c3e; font-size: 13px; font-weight: 700; }
.repair-guide-content > section { scroll-margin-top: 160px; }
.repair-guide-content > section + section { margin-top: 32px; padding-top: 32px; border-top: 1px solid #e0e6da; }
.repair-guide-number { display: block; margin-bottom: 14px; color: #78876a; font-size: 10px; letter-spacing: .13em; }
.repair-guide-content h3 { margin: 0 0 20px; color: #324c3e; font-size: clamp(22px,2vw,29px); line-height: 1.3; font-weight: 700; letter-spacing: -.025em; }
.repair-guide-content p, .repair-guide-content li { color: #56604f; font-size: 15px; line-height: 1.9; }
.repair-guide-content p { margin: 0 0 18px; }
.repair-guide-content p:last-child { margin-bottom: 0; }
.repair-guide-content ul { margin: 0 0 20px; padding-left: 20px; }
.repair-guide-content li + li { margin-top: 12px; }
.repair-guide-content li::marker { color: #8c9d79; }
.repair-guide-content a { color: #324c3e; text-decoration: underline; text-decoration-color: #b4c2a3; text-underline-offset: 4px; }
.repair-guide-content a:hover { text-decoration-color: #324c3e; }
.repair-guide-note { margin: 24px 0; padding: 22px 24px; border-left: 3px solid #9daf88; border-radius: 0 14px 14px 0; background: #f0f4e9; }
.repair-guide-note > strong { display: block; margin-bottom: 10px; color: #324c3e; font-size: 16px; line-height: 1.5; }
.repair-guide-note p { font-size: 14px; }
.repair-guide a:focus-visible { outline: 2px solid #839c6f; outline-offset: 4px; }
@media(max-width: 959px), (max-height: 760px) {
  .repair-guide-intro { position: static; }
}
@media(max-width: 959px) {
  .repair-guide-layout { grid-template-columns: 1fr; gap: 30px; }
  .repair-guide-intro nav { margin-block: 20px; }
}
@media(max-width: 639px) {
  .repair-guide { margin-block: 32px; }
  .repair-guide-layout { padding: 24px 20px; }
  .repair-guide-content p, .repair-guide-content li { font-size: 14px; line-height: 1.8; }
  .repair-guide-note { padding: 18px; }
}

/* Footer-specific columns share catalogue data without the large menu cards. */
.footer-service-columns { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 48px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.12); }
.footer-service-column { min-width: 0; }
.footer-service-group + .footer-service-group { margin-top: 30px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.09); }
.footer-service-group summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; color: #f4f2e9; font-size: 16px; font-weight: 700; line-height: 1.5; list-style: none; cursor: pointer; }
.footer-service-group summary::-webkit-details-marker { display: none; }
.footer-service-group summary svg { flex: 0 0 18px; color: #aab99b; }
.footer-service-group[open] summary svg { transform: rotate(180deg); }
.footer-service-group ul { margin: 14px 0 0; padding: 0; list-style: none; }
.footer-service-group li { margin: 0; }
.site-footer .footer-service-group li a { display: block; padding: 7px 0; color: #bcc3b9; font-size: 13px; line-height: 1.6; text-decoration: none; }
.site-footer .footer-service-group li a:hover { color: #fff; text-decoration: underline; text-underline-offset: 4px; }
.footer-service-group :is(summary,a):focus-visible { outline: 2px solid #aab99b; outline-offset: 4px; }
@media (max-width: 1099px) { .footer-service-columns { gap: 28px; } }
@media (max-width: 767px) {
  .footer-service-columns { grid-template-columns: 1fr; gap: 0; padding-top: 0; }
  .footer-service-group, .footer-service-group + .footer-service-group { margin: 0; padding: 18px 0; border: 0; border-bottom: 1px solid rgba(255,255,255,.12); }
  .site-footer .footer-service-group li a { padding: 10px 0; }
}

/* Gentle motion and a travelling highlight on the shared contact button. */
.contact-widget > summary { position: relative; isolation: isolate; overflow: hidden; background: linear-gradient(135deg,#42634f 0%,#324c3e 58%,#294333 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.16),0 8px 28px rgba(26,48,35,.23); }
.contact-widget > summary::before { content: ''; position: absolute; inset: 0; z-index: -1; border-radius: inherit; background: linear-gradient(180deg,rgba(255,255,255,.1),transparent 55%); pointer-events: none; }
.contact-widget > summary::after { content: ''; position: absolute; top: -50%; left: -70%; width: 45%; height: 200%; background: linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent); transform: skewX(-22deg); pointer-events: none; opacity: 0; }
@media (prefers-reduced-motion: no-preference) {
  .contact-widget { animation: contact-button-arrive .55s cubic-bezier(.22,1,.36,1) both; }
  .contact-widget > summary { transition: transform .25s ease,box-shadow .25s ease; }
  .contact-widget:not([open]) > summary::after { animation: contact-button-shine 7s 1.4s infinite; }
  .contact-widget:not([open]) .contact-widget__bubble { animation: contact-icon-nudge 7s 1.4s infinite; transform-origin: center; }
  .contact-widget[open] .contact-widget__close { animation: contact-close-arrive .2s ease-out; }
  .contact-widget > summary:active { transform: scale(.96); }
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .contact-widget > summary:hover { transform: translateY(-3px); box-shadow: inset 0 1px 0 rgba(255,255,255,.2),0 12px 32px rgba(26,48,35,.3); }
}
@keyframes contact-button-arrive { from { opacity: 0; transform: translateY(16px) scale(.95); } to { opacity: 1; transform: none; } }
@keyframes contact-button-shine { 0%,68% { opacity: 0; transform: translateX(0) skewX(-22deg); } 72% { opacity: 1; } 89%,100% { opacity: 0; transform: translateX(430%) skewX(-22deg); } }
@keyframes contact-icon-nudge { 0%,70%,88%,100% { transform: rotate(0); } 75% { transform: rotate(-9deg); } 81% { transform: rotate(6deg); } }
@keyframes contact-close-arrive { from { opacity: 0; transform: rotate(-45deg); } to { opacity: 1; transform: rotate(0); } }
@media (prefers-reduced-motion: reduce) {
  .contact-widget, .contact-widget > summary, .contact-widget > summary::after, .contact-widget > summary > svg { animation: none; transition: none; }
  .contact-widget > summary:hover, .contact-widget > summary:active { transform: none; }
}

/* Native repair assistant: no third-party quiz or image library. */
.repair-assistant { padding-bottom: 50px; }
.assistant-heading { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin: 30px 0; }
.assistant-heading :is(h1, h2) { margin: 0; color: #222426; font-size: clamp(34px,4vw,60px); line-height: 1.1; letter-spacing: -.045em; font-weight: 700; }
.assistant-heading :is(h1, h2) span { color: #324c3e; }
.assistant-heading > p { color: #69765e; font-size: 14px; line-height: 1.8; }
.assistant-layout { display: grid; grid-template-columns: minmax(260px,.8fr) minmax(0,1.5fr); gap: 24px; align-items: start; }
.assistant-consultant { position: sticky; top: 150px; border-radius: 24px; overflow: hidden; background: #324c3e; color: white; }
.assistant-portrait { position: relative; aspect-ratio: 5/4; background: #dce4d4; }
.assistant-portrait > img { width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.assistant-portrait::after { content: ''; position: absolute; inset: 35% 0 0; background: linear-gradient(transparent,rgba(25,45,32,.9)); }
.assistant-consultant-name { position: absolute; bottom: 24px; left: 26px; right: 26px; z-index: 1; }
.assistant-consultant-name > span { display: block; margin-bottom: 10px; color: #dce5ce; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.assistant-consultant-name strong { display: block; max-width: 320px; font-size: 22px; line-height: 1.25; }
.assistant-consultant-name small { display: block; margin-top: 8px; font-size: 12px; }
.assistant-tip { padding: 26px; }
.assistant-tip .contacts-kicker { color: #d7dfc2; margin-bottom: 12px; }
.assistant-tip p { margin: 0; min-height: 5em; font-size: 14px; line-height: 1.75; }
.assistant-phone { display: block; margin: 0 26px; padding: 20px 0 24px; border-top: 1px solid #627560; color: white; font-size: 20px; font-weight: 700; }
.assistant-phone:hover { color: #dce5ce; }
.assistant-phone span { display: block; margin-top: 6px; color: #c4d0bd; font-size: 11px; font-weight: 400; }
.assistant-portrait-fallback { display: grid; place-content: center; height: 100%; color: #324c3e; font-size: 38px; font-weight: 700; }
.assistant-portrait-fallback span { font-size: 12px; font-weight: 400; }
.assistant-workspace { min-width: 0; min-height: 650px; padding: clamp(24px,3vw,48px); border: 1px solid #dfe5d9; border-radius: 24px; background: white; }
.repair-assistant [hidden] { display: none !important; }
.assistant-progress-heading { display: flex; justify-content: space-between; gap: 12px; color: #78846d; font-size: 11px; }
.assistant-progress-heading > span:first-child { color: #324c3e; font-weight: 700; }
#assistant-progress { display: block; appearance: none; width: 100%; height: 4px; margin: 16px 0 38px; border: 0; border-radius: 4px; background: #edf1e8; accent-color: #7e946b; }
#assistant-progress::-webkit-progress-bar { background: #edf1e8; border-radius: 4px; }
#assistant-progress::-webkit-progress-value { background: #7e946b; border-radius: 4px; }
#assistant-progress::-moz-progress-bar { background: #7e946b; border-radius: 4px; }
.assistant-step { min-width: 0; margin: 0; padding: 0; border: 0; }
.assistant-step legend { width: 100%; margin-bottom: 28px; padding: 0; color: #324c3e; font-size: clamp(25px,2.5vw,36px); line-height: 1.2; letter-spacing: -.03em; font-weight: 700; }
.assistant-choices { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.assistant-choice { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 104px; padding: 18px; border: 1px solid #dce3d4; border-radius: 14px; background: #fafbf8; color: #42543b; cursor: pointer; font-size: 14px; line-height: 1.6; }
.assistant-choice input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.assistant-choice svg { flex: 0 0 22px; color: #a7b298; }
.assistant-choice svg path { visibility: hidden; }
.assistant-choice:has(input:checked) { background: #eaf0e0; border-color: #758c60; box-shadow: inset 0 0 0 1px #758c60; }
.assistant-choice input:checked ~ svg { color: #324c3e; }
.assistant-choice input:checked ~ svg path { visibility: visible; }
.assistant-choice:has(input:focus-visible) { outline: 3px solid #a0b58a; outline-offset: 3px; }
.assistant-choice:hover { border-color: #8c9f7a; }
.assistant-input-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 26px; }
.assistant-input-grid label, .assistant-notes { display: block; color: #324c3e; font-size: 13px; font-weight: 700; }
.assistant-input-grid input, .assistant-notes textarea { display: block; box-sizing: border-box; width: 100%; min-width: 0; margin-top: 8px; padding: 13px 15px; border: 1px solid #cfd9c5; border-radius: 10px; color: #324c3e; background: white; font: 400 16px/1.5 "Montserrat",sans-serif; }
.assistant-input-grid small { display: block; margin-top: 7px; color: #737e69; font-size: 10px; font-weight: 400; }
.assistant-notes { margin-top: 20px; }
.assistant-notes textarea { resize: vertical; min-height: 100px; }
.assistant-consent { display: flex; gap: 10px; align-items: start; margin-top: 20px; color: #6a7560; font-size: 11px; line-height: 1.7; }
.assistant-consent input { flex: 0 0 24px; width: 24px; height: 24px; margin: 0; accent-color: #324c3e; cursor: pointer; }
.assistant-consent a { color: #324c3e; text-decoration: underline; }
.assistant-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.assistant-controls { display: flex; justify-content: space-between; gap: 16px; margin-top: 32px; }
.assistant-controls button { display: inline-flex; align-items: center; justify-content: center; gap: 28px; min-height: 52px; padding: 14px 24px; border: 1px solid #324c3e; border-radius: 12px; background: #324c3e; color: white; font: 700 13px/1.5 "Montserrat",sans-serif; cursor: pointer; }
#assistant-back { background: transparent; color: #324c3e; border-color: #d2dbc9; }
#assistant-next, #assistant-send { margin-left: auto; }
.assistant-controls button:disabled { opacity: .6; cursor: wait; }
.assistant-footnote { margin: 16px 0 0; color: #7b8572; font-size: 10px; line-height: 1.6; }
.assistant-estimate { padding: 22px; border-radius: 14px; background: #edf2e5; }
.assistant-estimate > span { color: #68765b; font-size: 11px; }
.assistant-estimate strong { display: block; margin-top: 8px; color: #324c3e; font-size: clamp(23px,2.6vw,36px); line-height: 1.25; }
.assistant-estimate p { margin: 12px 0 0; font-size: 12px; line-height: 1.7; color: #627057; }
.assistant-review { margin-top: 22px; }
.assistant-review summary { color: #324c3e; font-size: 13px; cursor: pointer; }
.assistant-review dl { margin: 12px 0 0; }
.assistant-review dl > div { display: grid; grid-template-columns: 80px 1fr auto; gap: 12px; padding: 10px 0; border-bottom: 1px solid #e1e7d9; font-size: 12px; }
.assistant-review dt { color: #76826b; font-weight: 400; }
.assistant-review dd { margin: 0; color: #324c3e; overflow-wrap: anywhere; }
.assistant-review button { align-self: start; padding: 0; border: 0; background: transparent; color: #324c3e; font: inherit; text-decoration: underline; cursor: pointer; }
.assistant-error { padding: 14px; border-radius: 10px; background: #fff0e9; color: #853d28; font-size: 13px; line-height: 1.6; }
.assistant-success { padding-block: 50px; }
.assistant-success h2 { font-size: 36px; color: #324c3e; }
.assistant-success p { font-size: 16px; line-height: 1.8; }
.assistant-success > a { display: block; margin-top: 24px; color: #324c3e; }
.assistant-disclaimer { max-width: 950px; color: #7a846f; font-size: 11px; line-height: 1.7; margin: 20px 0 0; }
.repair-assistant :is(button,a,input,textarea,summary):focus-visible { outline: 3px solid #99b07f; outline-offset: 4px; }
@media (prefers-reduced-motion: no-preference) { .assistant-step:not([hidden]) { animation: assistant-step-in .25s ease-out; } }
@keyframes assistant-step-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@media (max-width: 1099px) {
  .assistant-layout { grid-template-columns: minmax(240px,.7fr) minmax(0,1fr); }
  .assistant-choices { grid-template-columns: 1fr; }
  .assistant-choice { min-height: 70px; }
}
@media (max-width: 767px) {
  .assistant-heading { display: block; }
  .assistant-heading > p { margin-top: 18px; }
  .assistant-layout { grid-template-columns: 1fr; gap: 16px; }
  .assistant-consultant { position: static; display: grid; grid-template-columns: 110px 1fr; border-radius: 18px; }
  .assistant-portrait { height: 160px; aspect-ratio: auto; }
  .assistant-consultant-name, .assistant-phone { display: none; }
  .assistant-portrait::after { display: none; }
  .assistant-portrait-fallback { font-size: 16px; }
  .assistant-portrait-fallback span { display: none; }
  .assistant-tip { padding: 16px; align-self: center; }
  .assistant-tip .contacts-kicker { font-size: 8px; }
  .assistant-tip p { min-height: 0; font-size: 12px; line-height: 1.6; }
  .assistant-workspace { padding: 22px; min-height: 0; }
  .assistant-input-grid { grid-template-columns: 1fr; }
  .assistant-progress-heading > span:last-child { display: none; }
  .assistant-review dl > div { grid-template-columns: 1fr auto; }
  .assistant-review dt { grid-column: 1/-1; }
  .assistant-controls button { padding: 12px 16px; gap: 12px; }
}
@media (max-height: 800px) { .assistant-consultant { position: static; } }

/* Area slider and exact input share the same calculator value. */
.assistant-area-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.assistant-area-value { display: flex; align-items: center; gap: 8px; color: #324c3e; font-size: 13px; }
.assistant-input-grid .assistant-area-value input { width: 94px; margin: 0; padding: 9px 10px; text-align: center; font-weight: 700; }
.assistant-input-grid #assistant-area-range { --area-fill: 20.34%; appearance: none; display: block; width: 100%; height: 32px; margin: 12px 0 0; padding: 0; border: 0; border-radius: 0; background: transparent; cursor: pointer; }
#assistant-area-range::-webkit-slider-runnable-track { height: 6px; border-radius: 6px; background: linear-gradient(to right,#6d8758 var(--area-fill),#e3e9da var(--area-fill)); }
#assistant-area-range::-webkit-slider-thumb { appearance: none; width: 24px; height: 24px; margin-top: -9px; border: 3px solid white; border-radius: 50%; background: #324c3e; box-shadow: 0 1px 7px rgba(35,59,44,.25); }
#assistant-area-range::-moz-range-track { height: 6px; border-radius: 6px; background: #e3e9da; }
#assistant-area-range::-moz-range-progress { height: 6px; border-radius: 6px; background: #6d8758; }
#assistant-area-range::-moz-range-thumb { box-sizing: border-box; width: 24px; height: 24px; border: 3px solid white; border-radius: 50%; background: #324c3e; box-shadow: 0 1px 7px rgba(35,59,44,.25); }
.assistant-area-scale { display: flex; justify-content: space-between; color: #78856e; font-size: 10px; }

/* Compact question card in the primary brand colour. */
.faq-question { padding: 24px; background: var(--green-color); border-color: var(--green-color); color: #fff; }
.faq-question > .contacts-kicker { display: block; color: #c7d6c5; font-size: 9px; line-height: 1.6; }
.faq-question h3 { margin: 12px 0 10px; color: #fff; font-size: 26px; }
.faq-question > p { margin: 0 0 18px; color: #dbe4d9; font-size: 13px; line-height: 1.65; }
.faq-question .wpcf7-form { gap: 10px; }
.faq-question .question-form :is(input[type="text"],input[type="tel"],input[type="email"],textarea) { padding: 11px 14px; border-color: #e0e7dc; font-size: 14px; }
.faq-question .question-form textarea { height: 104px; min-height: 104px; max-height: 240px; }
.faq-question .question-form-label { color: #fff; font-size: 12px; }
.faq-question .question-form-label .wpcf7-form-control-wrap { margin-top: 6px; }
.faq-question .sk-une-consent-wrap, .faq-question .wpcf7-list-item-label { color: #dbe4d9; }
.faq-question .question-form a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.faq-question .question-form input[type="checkbox"] { width: 22px; height: 22px; margin: 2px 0 0; accent-color: #d7e5c6; }
.faq-question .question-form input[type="submit"] { min-height: 46px; padding: 12px 16px; border-color: #eef3e8; background: #eef3e8; color: #324c3e; }
.faq-question .question-form input[type="submit"]:hover:not(:disabled) { background: #dce8cf; border-color: #dce8cf; }
.faq-question .wpcf7-spinner { display: none; }
.faq-question .submitting .wpcf7-spinner { display: inline-block; }
.faq-question .wpcf7-not-valid-tip { color: #ffd4c5; font-size: 12px; }
.faq-question .wpcf7-response-output { color: #fff; }
.faq-question .faq-phone { margin-top: 18px; color: #fff; font-size: 20px; }
.faq-question .faq-hours { margin-top: 4px; color: #c7d6c5; }
@media (max-width: 639px) { .faq-question { padding: 20px; } }

/* Smooth FAQ disclosure; native details remain usable without JavaScript. */
.faq-item { box-sizing: border-box; }
.faq-item[data-expanded="false"] summary svg { transform: rotate(0); }
.faq-item[data-expanded="true"] summary svg { transform: rotate(180deg); }
@media (prefers-reduced-motion: no-preference) {
  .faq-item summary svg { transition: transform .28s cubic-bezier(.22,1,.36,1); }
}

/* Case sidebar: dark brand card with readable form controls. */
.form-kurs.form-keys { background: var(--green-color); color: #fff; }
.form-kurs.form-keys :is(.form-paket-descr,.comanda-item__content-descr,.parametr-name,.parametr-amount) { color: #fff; }
.form-kurs.form-keys .uk-leader-fill::after { color: #b8cab5; }
.form-kurs.form-keys :is(input[type="text"],input[type="tel"],input[type="email"],textarea) { background: #f7f9f4; color: #324c3e; border: 1px solid #dce5d5; }
.form-kurs.form-keys :is(input,textarea)::placeholder { color: #6a7663; opacity: 1; }
.form-kurs.form-keys :is(.form-politick,.sk-une-consent-wrap,.wpcf7-list-item-label) { color: #dbe5d7; }
.form-kurs.form-keys :is(.form-politick,.sk-une-consent-wrap) a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.form-kurs.form-keys input[type="checkbox"] { accent-color: #d7e5c6; }
.form-kurs.form-keys input[type="submit"] { background: #eef3e8; border-color: #eef3e8; color: #324c3e; }
.form-kurs.form-keys input[type="submit"]:hover:not(:disabled) { background: #dbe7ce; border-color: #dbe7ce; }
.form-kurs.form-keys input[type="submit"]:disabled { opacity: .55; cursor: not-allowed; }
.form-kurs.form-keys .wpcf7-not-valid-tip { color: #ffd4c5; }
.form-kurs.form-keys .wpcf7-response-output { color: #fff; }
.form-kurs.form-keys :is(input,textarea,a):focus-visible { outline: 3px solid #bad0a3; outline-offset: 3px; }

/* Package detail pages: shared editorial layout and native sticky estimate. */
.package-detail-heading { margin-bottom: 36px; }
.package-detail-heading h1 { font-size: clamp(30px, 3.2vw, 50px); letter-spacing: -.035em; line-height: 1.16; }
.package-detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .46fr); gap: clamp(24px, 3vw, 48px); align-items: stretch; }
.package-detail-main, .package-detail-aside { min-width: 0; }
.package-detail .slider-wrap { padding: 12px; border: 1px solid #dfe5dc; border-radius: 26px; box-shadow: 0 12px 36px rgba(32,50,40,.035); }
.package-detail .product-slider .slider-item div { height: auto; aspect-ratio: 4 / 3; border-radius: 18px; background-position: center; }
.package-detail .slider-nav { padding: 6px 0 0; }
.package-detail .slider-nav .slick-slide { height: 86px; max-height: none; margin: 6px; object-fit: cover; border-radius: 12px; box-sizing: border-box; }
.package-detail .slider-nav .slick-current { border: 2px solid #324c3e; }
.package-detail .product-slider :is(.slick-prev,.slick-next) { bottom: 18px; width: 46px; height: 46px; min-width: 46px; background-size: 11px; box-shadow: 0 3px 15px #0002; }
.package-detail .product-slider .slick-next { right: 18px; }
.package-detail .product-slider .slick-prev { right: 72px; }
.package-detail .sub-text { margin: 24px 0 36px; padding: clamp(24px, 3vw, 36px); border-radius: 22px; background: #eaf0e3; color: #415344; font-size: 15px; line-height: 1.85; }
.package-detail-eyebrow { display: block; margin-bottom: 14px; font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #324c3e; }
.package-detail .sub-title { margin: 0 0 22px; font-size: clamp(23px, 2.2vw, 32px); line-height: 1.3; letter-spacing: -.025em; }
.package-detail .product-descr > ul { margin: 0; counter-reset: package-section; }
.package-detail .product-descr > ul > li { counter-increment: package-section; margin: 12px 0 0; padding: 0 26px; border: 1px solid #dfe5dc; border-radius: 18px; background: #fff; }
.package-detail .product-descr .uk-accordion-title { display: flex; align-items: center; gap: 16px; padding: 24px 0; border: 0; font-size: 17px; font-weight: 700; line-height: 1.4; color: #324c3e; }
.package-detail .product-descr .uk-accordion-title::after { content: counter(package-section, decimal-leading-zero); order: -1; color: #849473; font-size: 12px; font-weight: 400; }
.package-detail .product-descr .uk-accordion-title::before { order: 1; margin-left: auto; flex-shrink: 0; }
.package-detail .product-descr .uk-accordion-content { margin: 0; padding: 0 0 26px; color: #535b53; font-size: 15px; line-height: 1.8; }
.package-detail .product-descr .uk-accordion-content ul { padding-left: 20px; }
.package-detail .product-descr .uk-accordion-content li { padding: 7px 0 7px 4px; border-bottom: 1px solid #edf0e9; }
.package-detail .product-descr .uk-accordion-content li::marker { color: #839674; }
.package-detail .package-detail-summary { position: sticky; top: 150px; max-height: calc(100dvh - 174px); overflow-y: auto; scrollbar-width: thin; box-sizing: border-box; padding: clamp(24px, 2.4vw, 36px); border-radius: 24px; background: #324c3e; color: white; box-shadow: 0 16px 40px rgba(32,50,40,.1); }
.package-detail-summary .package-tpl-content__price-amount { padding: 0 0 24px; margin: 0 0 24px; border-bottom: 1px solid #ffffff30; border-radius: 0; background: none; text-align: left; }
.package-detail-summary .package-tpl-content__price-amount > span { color: #d4decb; font-size: 11px; letter-spacing: .12em; }
.package-detail-summary .package-tpl-content__price-amount-item { margin-top: 10px; color: white; font-size: clamp(30px, 2.5vw, 42px); line-height: 1.2; font-weight: 700; }
.package-detail-summary .paket-items .advantages-list { display: grid; gap: 14px; }
.package-detail-summary .paket-items .advantage-item { color: #f1f4ec; font-size: 14px; }
.package-detail-summary .paket-price { margin: 24px 0; padding: 20px; border-radius: 16px; background: #ffffff0d; }
.package-detail-summary .paket-price__title { margin: 0 0 14px; padding: 0; background: none; color: #dce6cd; font-size: 20px; font-weight: 700; }
.package-detail-summary .paket-price .advantages-list { gap: 8px; }
.package-detail-summary .paket-price .advantage-item { padding: 6px 10px; border: 1px solid #ffffff26; border-radius: 8px; background: none; color: white; font-size: 13px; }
.package-detail-summary .paket-form-btn { margin-top: 24px; }
.package-detail-summary .btn-line { width: 100%; padding: 18px 12px; border: 1px solid #eaf0e3; border-radius: 12px; background: #eaf0e3; color: #324c3e; font-size: 13px; font-weight: 700; text-transform: none; }
.package-detail-summary .btn-line:hover { background: white; }
.package-detail :is(button,a):focus-visible { outline: 3px solid #a9bc92; outline-offset: 4px; }
@media (max-width: 1199px) {
  .package-detail-grid { grid-template-columns: minmax(0, 1fr) 320px; gap: 24px; }
  .package-detail .package-detail-summary { top: 24px; max-height: calc(100dvh - 48px); }
}
@media (max-width: 959px) {
  .package-detail-grid { grid-template-columns: minmax(0, 1fr); }
  .package-detail .package-detail-summary { position: static; max-height: none; overflow: visible; }
  .package-detail .product-descr > ul > li { padding: 0 20px; }
}
@media (max-width: 479px) {
  .package-detail .slider-wrap { padding: 8px; border-radius: 20px; }
  .package-detail .slider-nav .slick-slide { height: 64px; margin: 4px; }
  .package-detail .product-descr .uk-accordion-title { font-size: 15px; gap: 10px; }
}

/* Photo-first portfolio. Details also available with keyboard and touch. */
.cases-heading { display:flex; justify-content:space-between; align-items:end; gap:28px; margin:32px 0; }
.cases-eyebrow { display:block; font-size:10px; letter-spacing:.14em; line-height:1.6; text-transform:uppercase; }
.cases-heading h1 { margin:12px 0 0; font-size:clamp(32px,4vw,58px); line-height:1.12; font-weight:700; letter-spacing:-.04em; color:#222426; }
.cases-heading h1 span { color:#324c3e; }
.cases-switch { display:flex; gap:4px; padding:5px; border:1px solid #dbe2d4; border-radius:16px; background:#fff; }
.cases-switch a { padding:14px 20px; border-radius:11px; color:#324c3e; font-size:13px; text-decoration:none; text-align:center; }
.cases-switch a[aria-current] { background:#324c3e; color:#fff; }
.cases-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.case-tile { min-width:0; border-radius:24px; overflow:hidden; background:#324c3e; color:#fff; }
.case-tile-link { display:flex; flex-direction:column; justify-content:end; position:relative; min-height:540px; height:100%; isolation:isolate; color:inherit; text-decoration:none; box-sizing:border-box; }
.case-tile-link:hover { color:inherit; text-decoration:none; }
.case-tile-photo,.case-tile-art { position:absolute; inset:0; z-index:-2; overflow:hidden; }
.case-tile-photo img { width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.case-tile-link::before { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,transparent 15%,rgba(14,26,20,.25) 40%,rgba(14,26,20,.94)); }
.case-tile-art { background:linear-gradient(135deg,#4c6452,#263d31); color:#c7d7b7; }
.case-tile:nth-child(3n+2) .case-tile-art { background:linear-gradient(135deg,#666f58,#303f34); }
.case-tile-art > span { position:absolute; top:24px; left:28px; font-size:14px; font-weight:700; letter-spacing:.22em; }
.case-tile-art svg { position:absolute; width:85%; right:-12%; top:15px; opacity:.3; stroke-width:1; }
.case-tile-copy { padding:30px; }
.case-tile-copy > .cases-eyebrow { color:#dce5ce; }
.case-tile h2 { color:white; margin:12px 0 0; font-size:clamp(22px,1.8vw,29px); line-height:1.25; font-weight:700; letter-spacing:-.025em; overflow-wrap:anywhere; }
.case-tile dl { margin:20px 0; font-size:12px; line-height:1.5; }
.case-tile dl > div { display:grid; grid-template-columns:85px minmax(0,1fr); gap:12px; padding:8px 0; border-top:1px solid #ffffff26; }
.case-tile dt { color:#d1dbc9; font-weight:400; }
.case-tile dd { margin:0; text-align:right; overflow-wrap:anywhere; }
.case-tile-more { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:22px; font-size:13px; }
.case-tile-reveal { transition:opacity .3s ease; }
@media (hover:hover) and (pointer:fine) {
 .case-tile-reveal { max-height:0; overflow:hidden; opacity:0; transition:max-height .45s ease,opacity .3s ease; }
 .case-tile:hover .case-tile-reveal,.case-tile:focus-within .case-tile-reveal { max-height:700px; opacity:1; }
 .case-tile:hover .case-tile-photo img,.case-tile:focus-within .case-tile-photo img { transform:scale(1.04); }
 .case-tile:hover .case-tile-link::before,.case-tile:focus-within .case-tile-link::before { background:linear-gradient(180deg,#14281be0,#14281bf5); }
}
.cases-page a:focus-visible { outline:3px solid #aabe91; outline-offset:-4px; }
.case-document-grid { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:32px; margin-bottom:64px; }
.case-document-photo img { display:block; width:100%; max-height:640px; object-fit:cover; border-radius:24px; margin-bottom:24px; }
.case-document-facts,.case-document-content { padding:clamp(24px,4vw,48px); border:1px solid #dde4d7; border-radius:24px; background:#fff; margin-bottom:24px; }
.case-document-facts h2 { margin:0 0 24px; font-weight:700; color:#324c3e; }
.case-document-facts dl > div { display:grid; grid-template-columns:150px minmax(0,1fr); gap:24px; padding:18px 0; border-top:1px solid #e3e8df; }
.case-document-facts dt { color:#6d7866; font-weight:400; }
.case-document-facts dd { margin:0; overflow-wrap:anywhere; }
.case-document-contact { position:sticky; top:150px; padding:32px; border-radius:24px; background:#324c3e; color:white; }
.case-document-contact h2 { color:white; font-weight:700; margin:20px 0; }
.case-document-contact > a { display:block; color:white; font-size:21px; font-weight:700; margin:28px 0; }
.case-document-contact .private-button { background:#edf2e6; color:#324c3e; width:100%; justify-content:center; }
@media(max-width:1199px) { .cases-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
 .cases-heading { display:block; }
 .cases-switch { margin-top:24px; }
 .cases-switch a { flex:1; padding:12px 8px; }
 .cases-grid,.case-document-grid { grid-template-columns:minmax(0,1fr); }
 .case-tile-link { min-height:460px; }
 .case-tile-copy { padding:24px; }
 .case-document-contact { position:static; }
 .case-document-facts dl > div { grid-template-columns:1fr; gap:6px; }
}
@media(prefers-reduced-motion:reduce) { .case-tile-reveal,.case-tile-photo img { transition:none; } }
.case-document-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-bottom:24px; }
.case-document-gallery img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:16px; }

/* Smooth service menu disclosure; native details remain the fallback. */
.services-menu .service-category { box-sizing: border-box; }
.services-menu .service-category[data-expanded="false"] > summary .service-category-toggle { transform: rotate(0); }
.services-menu .service-category[data-expanded="true"] > summary .service-category-toggle { transform: rotate(180deg); }
@media (prefers-reduced-motion: reduce) {
  .services-menu .service-category-toggle { transition: none; }
}

.services-dropdown-heading .services-dropdown-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.services-dropdown-heading .services-dropdown-actions > a { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:9px 15px; border:1px solid #b8c3b7; border-radius:30px; font-size:12px; text-decoration:none; }
.services-dropdown-heading .services-dropdown-actions > .services-commercial-button { background:#324c3e; border-color:#324c3e; color:#fff; }
.services-dropdown-heading .services-commercial-button:hover { background:#243c2e; border-color:#243c2e; }
.services-dropdown-actions a:focus-visible { outline:3px solid #9aae83; outline-offset:3px; }
#offcanvas-menu .services-dropdown--premium .services-dropdown-heading > .services-dropdown-actions { display:flex; }
@media(max-width:767px) {
 .services-dropdown-heading .services-dropdown-actions { margin-top:12px; }
 .services-dropdown-actions .services-commercial-button { width:100%; box-sizing:border-box; }
}

/* Shared action-button scale across pages, forms and navigation. */
:root {
  --action-height: 66px;
  --action-padding: 30px;
  --action-radius: 20px;
  --action-font-size: 16px;
}
body :is(.btn-bg, .btn-line, .btn-bg-line, .btn-all, .private-button,
  .package-card-button, .package-card-tour, .consultation-card-button,
  .assistant-controls button, .wpcf7 input[type="submit"],
  .faq-question .question-form input[type="submit"],
  .site-header .header-contact__btn button, .header-content-left-btn button,
  .services-dropdown-heading .services-dropdown-actions > a) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  box-sizing: border-box;
  min-height: var(--action-height);
  height: auto;
  max-width: 100%;
  padding: 18px var(--action-padding);
  border-width: 1px;
  border-style: solid;
  border-radius: var(--action-radius);
  font-family: "Montserrat", sans-serif;
  font-size: var(--action-font-size);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
body :is(.btn-bg, .btn-bg-line, .private-button, .package-card-button, .consultation-card-button) {
  background: #324c3e;
  border-color: #324c3e;
  color: #fff;
}
body :is(.btn-line, .package-card-tour, .site-header .header-contact__btn button) {
  background: transparent;
  border-color: #324c3e;
  color: #324c3e;
}
body :is(.btn-bg, .btn-bg-line, .private-button, .package-card-button, .consultation-card-button):hover {
  background: #243c2e;
  border-color: #243c2e;
  color: white;
}
body :is(.btn-line, .package-card-tour):hover { background: #e9efe3; color: #324c3e; }
/* Light buttons stay legible on the site's dark green panels. */
body :is(.site-footer, .private-cta, .contacts-request, .case-document-contact, .package-detail-summary) :is(.private-button, .btn-line) {
  background: #edf2e6;
  border-color: #edf2e6;
  color: #324c3e;
}
body :is(.site-footer, .private-cta, .contacts-request, .case-document-contact, .package-detail-summary) :is(.private-button, .btn-line):hover { background: #fff; }
body :is(.btn-bg,.btn-line,.private-button,.package-card-button,.package-card-tour,.consultation-card-button,.assistant-controls button,.wpcf7 input[type="submit"]):focus-visible {
  outline: 3px solid #9eb48a;
  outline-offset: 4px;
}
body .wpcf7 input[type="submit"]:disabled, body .assistant-controls button:disabled { cursor: not-allowed; }
.callback-btn, .package-card-actions { flex-wrap: wrap; gap: 16px; }
body .services-dropdown-heading .services-dropdown-actions { gap: 12px; }
@media (max-width: 767px) {
  :root { --action-height: 58px; --action-padding: 22px; --action-radius: 16px; --action-font-size: 15px; }
  .callback-btn > :is(a,button) { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  body :is(.btn-bg,.btn-line,.btn-bg-line,.btn-all,.private-button,.package-card-button,.package-card-tour,.consultation-card-button,.assistant-controls button,.wpcf7 input[type="submit"],.services-dropdown-actions > a) { transition: none; }
}

/* Keep card dimensions stable: reveal using composited opacity/translation. */
@media (hover:hover) and (pointer:fine) {
  .case-tile-link { height: 620px; min-height: 620px; }
  .case-tile-copy { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: end; }
  .case-tile-copy > .case-tile-summary { position: relative; z-index: 1; }
  .case-tile-reveal { max-height: none; overflow: visible; position: absolute; left: 30px; right: 30px; bottom: 30px; opacity: 0; transform: translateY(10px); pointer-events: none; transition: opacity .22s ease, transform .28s cubic-bezier(.2,.8,.2,1); }
  .case-tile:hover .case-tile-copy, .case-tile:focus-within .case-tile-copy { justify-content: start; }
  .case-tile:hover .case-tile-reveal, .case-tile:focus-within .case-tile-reveal { max-height: none; opacity: 1; transform: translateY(0); }
  .case-tile-link::after { content: ''; position: absolute; inset: 0; z-index: -1; background: #14281b; opacity: 0; transition: opacity .25s ease; }
  .case-tile:hover .case-tile-link::before, .case-tile:focus-within .case-tile-link::before { background: linear-gradient(180deg,transparent 15%,rgba(14,26,20,.25) 40%,rgba(14,26,20,.94)); }
  .case-tile:hover .case-tile-link::after, .case-tile:focus-within .case-tile-link::after { opacity: .9; }
  .case-tile-photo img { transition: transform .4s cubic-bezier(.2,.8,.2,1); }
}
@media(prefers-reduced-motion:reduce) {
  .case-tile-reveal, .case-tile-link::after, .case-tile-photo img { transition: none; }
}
@media (hover:hover) and (pointer:fine) {
  .case-tile:hover .case-tile-copy, .case-tile:focus-within .case-tile-copy { justify-content: end; }
  .case-tile-copy > .case-tile-summary { transition: transform .28s cubic-bezier(.2,.8,.2,1); }
  .case-tile:hover .case-tile-copy > .case-tile-summary, .case-tile:focus-within .case-tile-copy > .case-tile-summary { transform: translateY(calc(-1 * var(--case-reveal-height, 330px))); }
}
@media(prefers-reduced-motion:reduce) {
  .case-tile-copy > .case-tile-summary { transition: none; }
}

/* Package lists: align each bullet with the first text line, including ACF paragraphs. */
.package-detail .product-descr .uk-accordion-content ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.package-detail .product-descr .uk-accordion-content ul > li {
  position: relative;
  display: block;
  margin: 0;
  padding: 11px 0 11px 22px;
  line-height: 1.65;
  border-bottom: 1px solid #edf0e9;
}
.package-detail .product-descr .uk-accordion-content ul > li::after {
  content: '';
  position: absolute;
  left: 1px;
  top: calc(11px + .825em - 3px);
  width: 6px;
  height: 6px;
  margin: 0;
  border-radius: 50%;
  background: #6f8960;
}
.package-detail .product-descr .uk-accordion-content li > p { margin: 0; }
.package-detail .product-descr .uk-accordion-content li > p + p { margin-top: 8px; }
.package-detail .product-descr .uk-accordion-content li > ul { margin-top: 8px; }
.package-detail .product-descr .uk-accordion-content ul > li:last-child { border-bottom: 0; }

/* Softer reveal with immediate response; no layout animation or delayed hover. */
.cases-heading h1 { margin-top: 0; }
@media (hover:hover) and (pointer:fine) {
  .case-tile-copy > .case-tile-summary {
    transition: transform .48s cubic-bezier(.22,1,.36,1);
  }
  .case-tile-reveal { transition: opacity .38s ease, transform .48s cubic-bezier(.22,1,.36,1); }
  .case-tile-link::after { transition: opacity .45s ease; }
  .case-tile-photo img { transition: transform .65s cubic-bezier(.22,1,.36,1); }
  .case-tile:hover .case-tile-photo img, .case-tile:focus-within .case-tile-photo img { transform: scale(1.025); }
}
@media (prefers-reduced-motion:reduce) {
  .case-tile-copy > .case-tile-summary,
  .case-tile-reveal, .case-tile-link::after, .case-tile-photo img { transition: none; }
}

@media (prefers-reduced-motion: no-preference) {
  .services-menu .service-category-toggle {
    transition: transform .42s cubic-bezier(.16,1,.3,1);
  }
}

/* Complete service landing pages: shared rhythm and editorial content. */
.service-landing { --service-space: clamp(48px, 6vw, 88px); }
.service-landing .service-hero { margin-bottom: var(--service-space); }
.service-landing .private-hero .private-button { background:#edf2e6; border-color:#edf2e6; color:#324c3e; }
.service-landing .private-section { margin-block: var(--service-space); }
.service-landing :is(.service-process,.service-projects,.service-company,.service-team,.service-faq,#service-calculator) { margin-block:var(--service-space); }
.service-landing :is(.service-process,.service-projects,.service-company,.service-editorial) h2 { font-size:clamp(28px,3vw,44px); line-height:1.2; font-weight:700; letter-spacing:-.03em; color:#222426; }
.service-editorial { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(32px,5vw,80px); padding:clamp(24px,4vw,60px); border:1px solid #dce4d7; border-radius:26px; background:#fff; }
.service-editorial-intro { position:sticky; top:150px; align-self:start; }
.service-editorial-intro h2 { margin:20px 0; }
.service-editorial-intro > p:not(.contacts-kicker) { color:#65745d; line-height:1.7; }
.service-editorial-copy { font-size:16px; line-height:1.85; color:#4f594f; }
.service-editorial-copy h3 { margin:32px 0 16px; font-size:23px; font-weight:700; color:#324c3e; line-height:1.3; }
.service-editorial-copy h3:first-child { margin-top:0; }
.service-editorial-copy a { color:#324c3e; text-decoration:underline; text-underline-offset:4px; }
.service-editorial-note { padding:24px; border-radius:18px; background:#edf2e6; margin:28px 0; }
.service-editorial-note strong { color:#324c3e; }
.service-editorial-note p { margin-bottom:0; }
.service-process-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; counter-reset:service-step; }
.service-process-grid article { padding:28px; border:1px solid #dce4d7; border-radius:22px; background:#fff; counter-increment:service-step; }
.service-process-grid article::before { content:counter(service-step,decimal-leading-zero); display:block; color:#879b73; font-size:13px; margin-bottom:32px; }
.service-process-grid h3 { font-size:20px; line-height:1.35; font-weight:700; color:#324c3e; }
.service-process-grid p { font-size:14px; line-height:1.75; }
.service-section-heading { display:flex; align-items:end; justify-content:space-between; gap:32px; margin-bottom:28px; }
.service-section-heading > div { max-width:740px; }
.service-section-heading > a { flex-shrink:0; }
.service-project-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.service-project-card { display:flex; flex-direction:column; overflow:hidden; border-radius:22px; border:1px solid #dce4d7; background:white; color:#324c3e; text-decoration:none; }
.service-project-image { aspect-ratio:4/3; overflow:hidden; background:linear-gradient(135deg,#718367,#324c3e); display:grid; place-items:center; color:#e6efdd; }
.service-project-image img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.service-project-card:hover { color:#324c3e; text-decoration:none; }
.service-project-card:hover img { transform:scale(1.025); }
.service-project-card > div:last-child { padding:24px; flex:1; display:flex; flex-direction:column; }
.service-project-card h3 { margin:0 0 24px; color:inherit; font-size:22px; line-height:1.35; font-weight:700; }
.service-project-card > div:last-child > span { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:auto; font-size:13px; }
.service-company { display:grid; grid-template-columns:1.15fr 1fr; gap:clamp(32px,5vw,80px); background:#eaf0e3; padding:clamp(24px,4vw,60px); border-radius:26px; }
.service-company h2 span { color:#324c3e; }
.service-company p { line-height:1.8; }
.service-company-principles article { position:relative; padding:22px 0 22px 48px; border-bottom:1px solid #cdd8c4; }
.service-company-principles article:last-child { border:0; }
.service-company-principles article > span { position:absolute; left:0; top:27px; color:#718367; font-size:12px; }
.service-company-principles h3 { margin:0 0 12px; color:#324c3e; font-size:22px; font-weight:700; }
.service-company-principles p { margin:0; font-size:14px; }
.service-team > section { padding:0; margin:0; }
.service-team .uk-container, #service-calculator > .repair-assistant { padding-left:0; padding-right:0; }
.service-landing #service-calculator { scroll-margin-top:140px; }
.service-landing .service-faq { padding:clamp(24px,4vw,48px); }
.service-landing .service-faq .faq-heading h2 { font-size:clamp(28px,3vw,44px); }
@media(max-width:1199px) {
 .service-process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .service-editorial-intro { top:24px; }
}
@media(max-width:767px) {
 .service-editorial,.service-company,.service-project-grid { grid-template-columns:minmax(0,1fr); }
 .service-editorial-intro { position:static; }
 .service-section-heading { display:block; }
 .service-section-heading > a { margin-top:12px; }
 .service-process-grid { grid-template-columns:minmax(0,1fr); }
 .service-process-grid article::before { margin-bottom:16px; }
 .service-editorial-copy { font-size:15px; }
 .service-project-card h3 { font-size:21px; }
}
@media(prefers-reduced-motion:reduce) { .service-project-image img { transition:none; } }
.assistant-service-context { margin:0 0 20px; padding:12px 16px; border-radius:12px; background:#edf2e6; color:#324c3e; font-size:14px; }
.service-jump-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:-24px; }
.service-jump-links a { padding:12px 18px; border:1px solid #dce4d7; border-radius:30px; background:#fff; color:#324c3e; font-size:13px; text-decoration:none; }
.service-jump-links a:hover { background:#eaf0e3; }
.service-landing :is(h2,[id]) { scroll-margin-top:150px; }
@media(max-width:767px) { .service-landing :is(h2,[id]) { scroll-margin-top:32px; } }

/* Flat floating actions: calculator above the contact disclosure. */
.floating-actions { position:fixed; right:max(24px,env(safe-area-inset-right)); bottom:max(24px,env(safe-area-inset-bottom)); z-index:990; display:flex; flex-direction:column; align-items:flex-end; gap:12px; }
.floating-actions .contact-widget { position:relative; right:auto; bottom:auto; z-index:auto; animation:none; }
.floating-actions .contact-widget > summary {
  min-height:60px; border-radius:12px; border:0; background:#324c3e; box-shadow:none;
  transition:background-color .2s ease;
}
.floating-actions .contact-widget > summary::before,
.floating-actions .contact-widget > summary::after { content:none; animation:none; }
.floating-actions .contact-widget > summary:hover,
.floating-actions .contact-widget > summary:active { background:#243c2e; box-shadow:none; transform:none; }
.floating-calculator { display:grid; place-items:center; width:60px; height:60px; box-sizing:border-box; border-radius:12px; background:#324c3e; color:#fff; text-decoration:none; transition:background-color .2s ease; }
.floating-calculator:hover { color:white; background:#243c2e; }
.floating-calculator:focus-visible { outline:3px solid #a9bc92; outline-offset:4px; }
.floating-actions:has(.contact-widget[open]) .floating-calculator { visibility:hidden; }
.floating-actions .contact-widget__panel { z-index:1; }
@media (prefers-reduced-motion:no-preference) {
  .floating-calculator__icon { transform-origin:center; animation:calculator-icon-tilt 6s ease-in-out infinite; }
  .floating-calculator__screen { animation:calculator-screen-glow 6s ease-in-out infinite; }
  .floating-calculator__keys { animation:calculator-keys-tap 6s ease-in-out infinite; }
}
@keyframes calculator-icon-tilt { 0%,72%,100% { transform:rotate(0); } 79% { transform:rotate(-7deg); } 87% { transform:rotate(4deg); } 94% { transform:rotate(0); } }
@keyframes calculator-screen-glow { 0%,72%,100% { fill:transparent; } 82%,90% { fill:rgba(219,233,198,.24); } }
@keyframes calculator-keys-tap { 0%,76%,92%,100% { opacity:1; } 82%,88% { opacity:.45; } }
@media(max-width:639px) {
  .floating-actions { right:max(16px,env(safe-area-inset-right)); bottom:max(16px,env(safe-area-inset-bottom)); gap:10px; }
  .floating-calculator { width:56px; height:56px; }
  .floating-actions .contact-widget > summary { min-height:56px; }
}
@media(prefers-reduced-motion:reduce) {
  .floating-calculator, .floating-actions .contact-widget > summary { transition:none; }
  .floating-calculator svg, .floating-calculator svg * { animation:none; }
}

/* Branded 404 and the public HTML sitemap. */
.notfound-page { padding-top:clamp(28px,5vw,64px); padding-bottom:clamp(48px,6vw,88px); }
.notfound-hero { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; overflow:hidden; border:1px solid #dce4d7; border-radius:28px; background:#fff; }
.notfound-art { align-self:stretch; display:flex; flex-direction:column; justify-content:center; align-items:center; padding:50px 30px; background:#324c3e; color:#d7e4c8; }
.notfound-art > span { font-size:clamp(100px,15vw,220px); line-height:1; font-weight:700; letter-spacing:-.07em; }
.notfound-art svg { width:min(100%,360px); height:auto; margin-top:8px; }
.notfound-art small { margin-top:22px; font-size:12px; letter-spacing:.08em; }
.notfound-copy { padding:clamp(28px,5vw,72px); }
.notfound-copy h1 { margin:20px 0 24px; color:#222426; font-size:clamp(30px,3.4vw,50px); font-weight:700; line-height:1.15; letter-spacing:-.035em; }
.notfound-copy h1 span { color:#324c3e; }
.notfound-copy > p:not(.contacts-kicker) { max-width:550px; font-size:16px; line-height:1.8; color:#64715d; }
.notfound-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:32px; }
.notfound-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:24px; }
.notfound-links > a { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:28px; border-radius:20px; border:1px solid #dce4d7; background:#eaf0e3; color:#324c3e; text-decoration:none; transition:background-color .2s; }
.notfound-links > a:hover { background:#dfe9d5; }
.notfound-links strong { display:block; font-size:22px; }
.notfound-links small { display:block; margin-top:8px; font-size:13px; line-height:1.6; }
.notfound-links svg { flex-shrink:0; }
.sitemap-page { padding-bottom:72px; }
.sitemap-heading { margin:40px 0; }
.sitemap-heading h1 { margin:16px 0; font-size:clamp(34px,4vw,58px); font-weight:700; letter-spacing:-.04em; color:#222426; }
.sitemap-heading h1 span { color:#324c3e; }
.sitemap-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:start; }
.sitemap-card { padding:30px; border:1px solid #dce4d7; border-radius:22px; background:#fff; min-width:0; }
.sitemap-card h2 { margin:0 0 20px; font-size:24px; line-height:1.3; font-weight:700; color:#324c3e; }
.sitemap-card ul { margin:0; padding:0; list-style:none; }
.sitemap-card li + li { border-top:1px solid #e7ece1; }
.sitemap-card a { display:block; padding:12px 0; color:#4d6049; font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.sitemap-card--cases { grid-column:1/-1; }
.sitemap-card--cases ul { columns:3; column-gap:32px; }
.sitemap-card--cases li { break-inside:avoid; }
:is(.notfound-page,.sitemap-page) a:focus-visible { outline:3px solid #94aa7e; outline-offset:4px; }
@media(max-width:959px) {
 .notfound-hero { grid-template-columns:1fr; }
 .notfound-art { padding:28px; }
 .notfound-art svg { width:220px; }
 .notfound-links,.sitemap-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sitemap-card--cases ul { columns:2; }
}
@media(max-width:639px) {
 .notfound-links,.sitemap-grid { grid-template-columns:1fr; }
 .notfound-actions > a { width:100%; }
 .sitemap-card--cases ul { columns:1; }
 .sitemap-card { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { .notfound-links > a { transition:none; } }

/* No-photo cases: readable by default and stable on hover, at every width. */
.case-tile--graphic .case-tile-link { height:100%; min-height:620px; }
.case-tile--graphic .case-tile-copy,
.case-tile--graphic:hover .case-tile-copy,
.case-tile--graphic:focus-within .case-tile-copy {
  position:relative; inset:auto; display:flex; flex-direction:column;
  justify-content:flex-start; flex:1; padding-top:76px; min-width:0;
}
.case-tile--graphic .case-tile-copy > .case-tile-summary,
.case-tile--graphic:hover .case-tile-copy > .case-tile-summary,
.case-tile--graphic:focus-within .case-tile-copy > .case-tile-summary { transform:none; transition:none; }
.case-tile--graphic .case-tile-reveal,
.case-tile--graphic:hover .case-tile-reveal,
.case-tile--graphic:focus-within .case-tile-reveal {
  position:static; max-height:none; overflow:visible; opacity:1; transform:none;
  transition:none; display:flex; flex-direction:column; flex:1; pointer-events:auto;
}
.case-tile--graphic .case-tile-link::after { display:none; }
.case-tile--graphic .case-tile-link::before,
.case-tile--graphic:hover .case-tile-link::before,
.case-tile--graphic:focus-within .case-tile-link::before { background:linear-gradient(180deg,rgba(20,40,27,.12),rgba(20,40,27,.7)); }
.case-tile--graphic .case-tile-art svg { opacity:.12; }
.case-tile--graphic dl { margin:24px 0; }
.case-tile--graphic dl > div { grid-template-columns:minmax(105px,.38fr) minmax(0,1fr); gap:16px; padding:11px 0; align-items:start; }
.case-tile--graphic .case-tile-more { margin-top:auto; padding-top:8px; }
.case-tile dl > .case-tile-amount { display:block; padding-top:20px; margin-top:8px; }
.case-tile .case-tile-amount dt { font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.case-tile .case-tile-amount dd { margin-top:8px; text-align:left; color:#e0ebcd; font-size:clamp(25px,2.3vw,36px); font-weight:700; line-height:1.2; letter-spacing:-.035em; font-variant-numeric:tabular-nums; }
.case-tile-currency { white-space:nowrap; }
@media(max-width:639px) {
  .case-tile--graphic .case-tile-link { min-height:0; }
  .case-tile--graphic dl > div { grid-template-columns:minmax(94px,.4fr) minmax(0,1fr); gap:12px; }
  .case-tile--graphic .case-tile-copy { padding-top:68px; }
}

/* Service catalogue uses the same compact columns as the footer. */
.service-directory { margin-top:32px; padding:clamp(24px,3.5vw,48px); border-radius:24px; background:#222426; color:#f4f2e9; }
.service-directory .footer-service-columns { padding-top:0; border-top:0; }
.service-directory .footer-service-group li a { display:block; padding:7px 0; color:#bcc3b9; font-size:14px; line-height:1.65; text-decoration:none; }
.service-directory .footer-service-group li a:hover { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.service-directory .footer-service-group { box-sizing:border-box; }
.service-directory .footer-service-group summary svg { transition:transform .42s cubic-bezier(.16,1,.3,1); }
.service-directory .footer-service-group[data-expanded="false"] summary svg { transform:rotate(0); }
.service-directory .footer-service-group[data-expanded="true"] summary svg { transform:rotate(180deg); }
@media(max-width:767px) {
 .service-directory { padding:12px 24px; }
 .service-directory .footer-service-group li a { padding:10px 0; }
 .service-directory .footer-service-column:last-child .footer-service-group:last-child { border-bottom:0; }
}
@media(prefers-reduced-motion:reduce) { .service-directory .footer-service-group summary svg { transition:none; } }

/* Light catalogue surface, retaining the footer's column arrangement. */
.service-directory { background:#fff; color:#324c3e; border:1px solid #dfe5db; }
.service-directory .footer-service-group summary { color:#324c3e; }
.service-directory .footer-service-group summary svg { color:#778b6c; }
.service-directory .footer-service-group + .footer-service-group { border-color:#e0e6dc; }
.service-directory .footer-service-group li a { color:#485449; }
.service-directory .footer-service-group li a:hover { color:#243c2e; }
@media(max-width:767px) {
  .service-directory .footer-service-group { border-color:#e0e6dc; }
}

.project-pagination.project-pagination--more { display:block; width:100%; margin:32px 0 0; }
.project-pagination--more .cases-load-more { display:flex; width:100%; min-height:70px; margin:0; border:1px solid #324c3e; border-radius:20px; background:#fff; color:#324c3e; font-size:17px; font-weight:700; }
.project-pagination--more .cases-load-more:hover { background:#eaf0e3; }
.project-pagination--more .cases-load-more[aria-disabled="true"] { opacity:.6; cursor:wait; }
.cases-load-status { margin:12px 0 0; color:#65745d; font-size:13px; text-align:center; }
.cases-load-status:empty { margin:0; }

.service-cases-switcher > .cases-switch { width:fit-content; max-width:100%; margin-bottom:24px; }
.service-cases-switcher [data-case-panel][hidden] { display:none; }
.service-cases-switcher .case-tile h2 { color:white; font-size:clamp(22px,1.8vw,29px); line-height:1.25; }
.service-cases-switcher a:focus-visible { outline:3px solid #aabe91; outline-offset:-4px; }
@media(max-width:767px) { .service-cases-switcher > .cases-switch { width:100%; box-sizing:border-box; } }

/* Shared photographic first screen for all service landings. */
.service-landing .service-hero { position:relative; isolation:isolate; overflow:hidden; background:#263f30; }
.service-hero-background { position:absolute; inset:0; z-index:-3; width:100%; height:100%; object-fit:cover; object-position:center; pointer-events:none; }
.service-landing .service-hero::before { content:''; position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(21,43,30,.94) 0%,rgba(27,49,35,.82) 42%,rgba(30,52,38,.45) 100%); pointer-events:none; }
.service-landing .service-hero::after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,rgba(18,36,25,.25),transparent 60%); pointer-events:none; }
.service-landing .service-hero .service-estimate { background:rgba(255,255,255,.96); border:1px solid rgba(255,255,255,.6); }
.service-landing .service-hero .service-intro { color:#fff; }
@media(max-width:767px) {
 .service-hero-background { object-position:60% center; }
 .service-landing .service-hero::before { background:linear-gradient(180deg,rgba(21,43,30,.88),rgba(21,43,30,.76)); }
}

.reviews-demo { margin-top:64px; margin-bottom:64px; }
.reviews-demo-heading { text-align:center; max-width:780px; margin:0 auto 32px; }
.reviews-demo-heading h2 { margin:0 0 18px; color:#222426; font-size:clamp(32px,4vw,48px); font-weight:700; }
.reviews-demo-notice { padding:16px 20px; border:1px solid #d8e1cf; border-radius:14px; background:#eaf0e3; color:#324c3e; font-size:14px; line-height:1.6; }
.reviews-demo-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.review-demo-card { display:flex; flex-direction:column; padding:28px; border:1px solid #e0e6da; border-radius:24px; background:white; }
.review-demo-card[hidden], .reviews-demo-more[hidden] { display:none; }
.review-demo-label { align-self:start; padding:6px 10px; border-radius:8px; background:#edf2e6; color:#526846; font-size:11px; }
.review-demo-card > p { margin:22px 0 28px; font-size:15px; line-height:1.8; color:#424a41; }
.review-demo-author { display:flex; align-items:center; gap:12px; padding-top:18px; border-top:1px solid #e7ece1; margin-top:auto; }
.review-demo-avatar { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; border-radius:50%; background:#eaf0e3; color:#324c3e; font-size:14px; font-weight:700; }
.review-demo-author strong { display:block; font-size:13px; color:#324c3e; }
.review-demo-author small { display:block; margin-top:5px; font-size:11px; color:#77816e; }
.review-demo-quote { margin-left:auto; color:#8da079; font-size:46px; line-height:1; }
.reviews-demo .reviews-demo-more { width:100%; margin-top:24px; }
@media(max-width:1099px) { .reviews-demo-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:639px) { .reviews-demo-grid { grid-template-columns:1fr; } .review-demo-card { padding:24px; } }

/* More comfortable case-category switch, shared by portfolio and services. */
.cases-switch { padding:6px; gap:6px; border-radius:18px; }
.cases-switch a { display:flex; align-items:center; justify-content:center; box-sizing:border-box; min-height:58px; padding:16px 26px; border-radius:13px; font-size:15px; font-weight:700; line-height:1.4; }
@media(max-width:767px) {
  .cases-switch a { min-height:54px; padding:13px 14px; font-size:14px; }
}

/* Two equal tracks keep the marquee filled from its very first frame. */
.marquee-track { display:flex; width:max-content; animation:marquee-seamless 110s linear infinite; }
.marquee-group { display:flex; align-items:center; justify-content:space-around; flex-shrink:0; min-width:100vw; }
.marquee-text { display:flex; align-items:center; flex-shrink:0; color:#fff; text-transform:uppercase; font-size:20px; font-weight:400; line-height:1.5; }
.marquee-separator { padding:0 40px; color:#fff; font-size:18px; }
@keyframes marquee-seamless { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@media(max-width:767px) { .marquee-text { font-size:16px; } .marquee-separator { padding:0 24px; } }
@media(prefers-reduced-motion:reduce) {
 .marquee-track { animation:none; width:100%; }
 .marquee-group { min-width:0; width:100%; }
 .marquee-group[aria-hidden], .marquee-text[aria-hidden], .marquee-separator { display:none; }
 .marquee-text { padding:0 20px; white-space:normal; text-align:center; }
}

/* Corporate landing: architectural hero, project scope and commercial proof. */
.business-page { --business-gap:clamp(48px,6vw,88px); }
.business-page [id] { scroll-margin-top:140px; }
.business-hero { display:grid; grid-template-columns:1.1fr 1fr; border-radius:28px; overflow:hidden; background:#263f30; color:#fff; }
.business-hero-copy { padding:clamp(28px,4vw,64px); display:flex; flex-direction:column; justify-content:center; }
.business-hero h1 { margin:0 0 28px; color:#fff; font-size:clamp(36px,4.6vw,70px); font-weight:700; line-height:1.04; letter-spacing:-.04em; }
.business-hero h1 span { color:#d3dfbd; }
.business-hero-copy > p { max-width:620px; font-size:16px; line-height:1.8; color:#e1e9db; }
.business-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin:22px 0 30px; }
.business-actions > a { color:white; font-size:14px; }
.business-actions > .private-button { background:#eaf0e1; border-color:#eaf0e1; color:#324c3e; }
.business-hero-tags { display:flex; flex-wrap:wrap; gap:8px; }
.business-hero-tags span { padding:8px 12px; border:1px solid #ffffff30; border-radius:30px; color:#e1e9d5; font-size:11px; }
.business-hero-visual { position:relative; margin:0; min-height:540px; background:#9daa90; }
.business-hero-visual img { width:100%; height:100%; object-fit:cover; }
.business-hero-visual figcaption { position:absolute; left:24px; right:24px; bottom:24px; padding:16px 20px; border-radius:12px; background:#263f30; font-size:12px; color:#fff; }
.business-jump { margin:24px 0 0; }
.business-section { margin:var(--business-gap) 0; }
.business-page h2 { font-size:clamp(28px,3.1vw,46px); font-weight:700; line-height:1.18; letter-spacing:-.03em; color:#222426; }
.business-page h2 span { color:#324c3e; }
.business-section-heading { display:flex; align-items:end; justify-content:space-between; gap:32px; margin-bottom:30px; }
.business-section-heading > p { max-width:440px; line-height:1.8; color:#65735f; }
.business-section-heading .btn-line { flex-shrink:0; }
.business-sectors { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.business-sectors article { padding:30px; background:#fff; border:1px solid #dce4d5; border-radius:22px; }
.business-sectors article > span { display:grid; place-items:center; width:50px; height:50px; margin-bottom:32px; border-radius:14px; background:#eaf0e1; color:#324c3e; font-weight:700; }
.business-sectors h3 { font-size:23px; font-weight:700; line-height:1.25; color:#324c3e; }
.business-sectors p { font-size:14px; line-height:1.8; color:#5c6755; }
.business-scope { display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,5vw,80px); padding:clamp(24px,4vw,60px); border-radius:26px; background:#fff; border:1px solid #dce4d5; }
.business-scope > div:first-child { align-self:start; position:sticky; top:150px; }
.business-scope p { line-height:1.8; color:#5c6755; }
.business-scope .btn-line { margin-top:24px; }
.business-scope-list article { padding:22px 0; border-bottom:1px solid #dfe6d8; }
.business-scope-list article:first-child { padding-top:0; }
.business-scope-list h3 { font-size:23px; font-weight:700; color:#324c3e; }
.business-page .case-tile h2 { color:white; font-size:clamp(22px,1.8vw,29px); line-height:1.25; }
.business-brief { display:grid; grid-template-columns:1fr 1fr; gap:48px; padding:clamp(24px,4vw,60px); background:#eaf0e1; border-radius:26px; }
.business-brief p { line-height:1.8; }
.business-brief ul { padding:0; margin:0; list-style:none; align-self:center; }
.business-brief li { padding:16px 0; border-bottom:1px solid #cedac2; font-size:16px; color:#324c3e; }
.business-faq { padding:clamp(24px,4vw,60px); background:#fff; border:1px solid #dce4d5; border-radius:26px; }
.business-request { display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,5vw,80px); align-items:center; }
.business-request p { line-height:1.8; }
.business-request > div > a { display:inline-block; margin:20px 0; font-size:28px; font-weight:700; color:#324c3e; }
.business-request p a { color:#324c3e; text-decoration:underline; }
.business-request .faq-question h3 { color:#fff; }
@media(max-width:1199px) { .business-sectors { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
 .business-hero,.business-scope,.business-brief,.business-request,.business-sectors { grid-template-columns:minmax(0,1fr); }
 .business-hero-visual { min-height:0; aspect-ratio:4/3; }
 .business-section-heading { display:block; }
 .business-section-heading .btn-line { margin-top:16px; }
 .business-scope > div:first-child { position:static; }
 .business-page [id] { scroll-margin-top:32px; }
}
.business-sectors .business-sector-art { display:block; width:calc(100% + 60px); max-width:none; height:auto; margin:-30px -30px 24px; border-radius:21px 21px 0 0; }
.business-sectors article > span { width:36px; height:36px; margin-bottom:18px; font-size:12px; }

/* Shared home consultation and work stages on every service landing. */
.service-home-blocks { margin-block:var(--service-space); }
.service-home-blocks .green-section { border-radius:24px; padding:clamp(36px,5vw,70px) 0; }
.service-home-blocks .green-section-title { font-size:clamp(24px,3vw,40px); }
.service-home-blocks .green-section-phone a { font-size:clamp(24px,4.2vw,70px); }
.service-home-blocks .step-wrap { margin-top:24px; }
@media(max-width:767px) {
 .service-home-blocks .green-section-phone a { padding-left:0; padding-top:52px; background-position:center top; background-size:100px; display:inline-block; }
 .service-home-blocks .step-wrap > .uk-container { padding-inline:0; }
}

/* Subtle motion, with immediate control feedback and no layout animation. */
.team-card-photo, .package-card-photo { overflow:hidden; }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .team-card-photo img, .package-card-photo img { transition:transform 650ms cubic-bezier(.22,1,.36,1); }
 .team-card:hover .team-card-photo img, .package-card:hover .package-card-photo img { transform:scale(1.025); }
}
:is(.private-button,.direction-action,.cases-switch a,.cases-switch button,.cases-tabs a,.cases-tabs button) {
 transition-property:background-color,color,border-color,box-shadow;
 transition-duration:140ms;
 transition-delay:0s;
}
@media (prefers-reduced-motion:reduce) {
 .team-card-photo img, .package-card-photo img { transition:none; transform:none; }
}

/* Review cards: rating above the text, round avatar and signature below. */
.review-demo-card { border:0; border-radius:28px; padding:26px; }
.review-demo-rating { display:flex; align-items:center; flex-wrap:wrap; gap:8px 14px; }
.review-demo-stars { color:#ffca45; font-size:21px; letter-spacing:1px; line-height:1; }
.review-demo-rating .review-demo-label { padding:0; background:none; color:#737a73; font-size:10px; }
.review-demo-card > p { font-size:16px; line-height:1.55; color:#222426; margin:22px 0; }
.review-demo-author { border-color:#eceeeb; padding-top:16px; }
.review-demo-avatar { width:60px; height:60px; overflow:hidden; background:linear-gradient(135deg,#e7ecdf,#c7d3c5); color:#526e5a; }
.review-demo-author strong { font-size:15px; font-weight:600; color:#222426; }
.review-demo-author small { font-size:12px; color:#777c8b; }
.review-demo-quote { font-size:52px; color:#ffca45; }
@media(max-width:639px) { .review-demo-card { padding:24px; } .review-demo-avatar { width:52px; height:52px; } }

/* Native cross-document navigation: no click interception or artificial wait. */
@media (prefers-reduced-motion:no-preference) {
 @view-transition { navigation:auto; }
 ::view-transition-group(root) { animation-duration:300ms; animation-timing-function:cubic-bezier(.22,1,.36,1); }
 ::view-transition-old(root) { animation:sk-page-out 240ms ease-out both; }
 ::view-transition-new(root) { animation:sk-page-in 300ms ease-out both; }
 ::view-transition { pointer-events:none; }
}
@keyframes sk-page-out { from { opacity:1; } to { opacity:0; } }
@keyframes sk-page-in { from { opacity:0; } to { opacity:1; } }
@media (prefers-reduced-motion:reduce) {
 @view-transition { navigation:none; }
}

/* Corporate landing: photography, concise copy and expandable scope. */
.business-hero-visual img { object-position:60% center; }
.business-scope-list .faq-item { background:transparent; }
.business-scope-list .faq-item summary { font-size:clamp(17px,1.5vw,23px); padding-block:24px; }
.business-company { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(24px,4vw,64px); align-items:center; }
.business-company-brand { padding:clamp(28px,4vw,60px); border-radius:26px; background:#324c3e; color:white; }
.business-company-brand > span { font-size:13px; text-transform:uppercase; letter-spacing:.14em; }
.business-company-brand > strong { display:block; font-size:clamp(48px,6vw,92px); line-height:1.2; margin:36px 0 20px; letter-spacing:-.05em; }
.business-company-brand > p { font-size:20px; color:#eaf0e1; line-height:1.5; }
.business-company-brand .btn-line { color:white; border-color:#a3b09e; margin-top:24px; }
.business-company-copy > p { max-width:650px; line-height:1.7; }
.business-company-points { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:32px; }
.business-company-points article { padding-top:20px; border-top:1px solid #cdd8c9; }
.business-company-points span { color:#7f936f; font-size:13px; }
.business-company-points h3 { font-size:18px; font-weight:700; color:#324c3e; margin:16px 0 10px; }
.business-company-points p { font-size:14px; line-height:1.6; }
@media(max-width:767px) { .business-company { grid-template-columns:1fr; } .business-company-points { grid-template-columns:1fr; gap:8px; } }

/* Compact project brief in service hero, linked to the full calculator. */
.service-quick-brief h2 { margin:20px 0 24px; }
.service-quick-brief form { display:grid; gap:12px; }
.service-quick-brief label { font-size:13px; font-weight:600; color:#324c3e; }
.service-quick-brief select { width:100%; min-width:0; min-height:48px; padding:10px 12px; border:1px solid #cdd8c9; border-radius:12px; background:#fff; color:#324c3e; font:inherit; font-size:14px; }
.brief-area-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:8px; }
.brief-area-heading span { color:#324c3e; white-space:nowrap; }
.brief-area-heading input { width:88px; padding:8px; font:inherit; font-weight:700; text-align:right; border:1px solid #cdd8c9; border-radius:10px; background:#fff; color:#324c3e; }
.service-quick-brief input[type=range] { width:100%; margin:0 0 10px; accent-color:#324c3e; cursor:pointer; min-height:28px; }
.service-landing .service-hero .service-quick-brief .private-button { width:100%; margin-top:8px; background:#324c3e; border-color:#324c3e; color:#fff; }
.service-quick-brief small { font-size:11px; line-height:1.6; color:#687261; }
.service-quick-brief :is(input,select):focus-visible { outline:2px solid #64835c; outline-offset:3px; }

/* Directions as full-image tiles with copy above the illustration. */
.business-sectors .business-sector-card { position:relative; isolation:isolate; min-height:420px; padding:28px; overflow:hidden; background:#324c3e; border:0; border-radius:24px; }
.business-sectors .business-sector-card::after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(18,39,28,.96) 0%,rgba(24,46,32,.88) 42%,rgba(24,46,32,.15) 100%); pointer-events:none; }
.business-sectors .business-sector-card .business-sector-art { position:absolute; inset:0; width:100%; height:100%; max-width:none; margin:0; object-fit:cover; object-position:center bottom; border-radius:0; z-index:-2; }
.business-sector-copy { position:relative; }
.business-sector-copy > span { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border:1px solid #ffffff45; border-radius:11px; color:#fff; font-size:12px; margin-bottom:24px; }
.business-sectors .business-sector-copy h3 { color:#fff; font-size:clamp(21px,1.7vw,27px); line-height:1.2; margin:0 0 16px; text-wrap:balance; }
.business-sectors .business-sector-copy p { color:#eef3e8; font-size:14px; line-height:1.65; margin:0; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .business-sectors .business-sector-card .business-sector-art { transition:transform 650ms cubic-bezier(.22,1,.36,1); }
 .business-sector-card:hover .business-sector-art { transform:scale(1.035); }
}
@media(max-width:767px) { .business-sectors .business-sector-card { min-height:380px; padding:26px; } }

.home-photo-slider { position:relative; height:100%; min-height:420px; overflow:hidden; border-radius:inherit; background:#324c3e; }
.home-photo-slide { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity 1200ms ease-in-out; }
.home-photo-slide.is-active { opacity:1; }
.home-photo-pause { position:absolute; right:18px; bottom:18px; z-index:2; border:1px solid #ffffff80; border-radius:10px; background:#243b30cc; color:#fff; padding:12px 18px; cursor:pointer; }
@media(prefers-reduced-motion:reduce) { .home-photo-slide { transition:none; } .home-photo-pause { display:none; } }

/* Bot trap stays out of keyboard navigation and the visual layout. */
.sk-form-trap { position:absolute !important; width:1px !important; height:1px !important; overflow:hidden !important; clip-path:inset(50%); white-space:nowrap; }

.service-quick-brief fieldset { border:0; padding:0; margin:0; min-width:0; display:grid; gap:12px; }
.service-quick-brief [hidden] { display:none !important; }
.service-quick-brief .brief-progress { margin:0; font-size:12px; color:#6a7e62; }
.service-quick-brief select { appearance:none; padding-right:42px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23324c3e' stroke-width='1.6'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E") no-repeat right 14px center; }
.service-quick-brief input:is([name=name],[name=phone]) { box-sizing:border-box; width:100%; min-height:50px; padding:12px 14px; border:1px solid #cdd8c9; border-radius:12px; font:inherit; color:#324c3e; background:#fff; }
.service-quick-brief .brief-consent { display:flex; align-items:flex-start; gap:10px; font-size:11px; font-weight:400; line-height:1.6; margin-top:8px; }
.service-quick-brief .brief-consent input { width:18px; height:18px; flex-shrink:0; margin-top:3px; accent-color:#324c3e; }
.service-quick-brief .brief-consent a { font-size:inherit; font-weight:inherit; display:inline; margin:0; text-decoration:underline; }
.service-quick-brief .private-button { display:flex; justify-content:center; align-items:center; gap:14px; }
.service-quick-brief .private-button svg { flex-shrink:0; }
.service-quick-brief .brief-back { border:0; background:transparent; color:#324c3e; min-height:42px; cursor:pointer; font:inherit; font-size:13px; }
.service-quick-brief .brief-error { color:#9c3030; font-size:13px; margin:0; }
.service-quick-brief .brief-success { padding:24px; border-radius:14px; background:#edf2e6; color:#324c3e; }
.service-quick-brief button:disabled { opacity:.65; cursor:wait; }

/* Center service copy alongside the compact form. */
.service-landing .service-hero .private-hero-copy { align-self:center; text-align:center; }
.service-landing .service-hero .private-hero-copy h1 { margin-inline:auto; text-wrap:balance; }
.service-landing .service-hero .service-intro { max-width:720px; margin-inline:auto; }
.service-landing .service-hero .private-actions { justify-content:center; }
.service-landing .service-hero::before { background:linear-gradient(90deg,rgba(20,40,29,.82),rgba(22,44,31,.68) 55%,rgba(22,44,31,.42)); }
.service-landing .service-hero-background { object-position:center; }
@media(max-width:767px) { .service-landing .service-hero::before { background:rgba(20,40,29,.78); } }

/* Hero CTA reserves a separate column for its arrow. */
body .header-content .header-content-left .header-content-left-btn button {
  width:360px;
  max-width:100%;
  min-height:70px;
  padding:18px 84px 18px 28px;
  justify-content:flex-start;
  text-align:left;
  text-transform:uppercase;
}
body .header-content .header-content-left .header-content-left-btn button::after {
  width:52px;
  height:52px;
  right:9px;
  top:50%;
  transform:translateY(-50%);
  animation:none;
  background-size:28px;
}
@media(max-width:639px) {
 body .header-content .header-content-left .header-content-left-btn button { width:100%; padding-left:20px; padding-right:76px; font-size:14px; }
}

/* Keep accordion expansion local; opening a section no longer closes one above it. */
.package-detail .product-descr { overflow-anchor:none; }
.package-detail .package-detail-summary { overflow-anchor:none; }
.package-detail-summary .paket-price { background:linear-gradient(135deg,#fff1bf,#e8eecf); border:1px solid #f4d580; box-shadow:0 8px 24px #182d2426; }
.package-detail-summary .paket-price__title { display:flex; align-items:center; gap:12px; color:#304b39; font-size:23px; }
.package-detail-summary .paket-price .advantage-item { background:#ffffff9c; color:#304b39; border-color:#8b986c55; }
.package-gift-icon { flex-shrink:0; color:#8e651e; transform-origin:50% 75%; }
@media(prefers-reduced-motion:no-preference) {
 .package-gift-icon { animation:package-gift-wave 6s ease-in-out infinite; }
}
@keyframes package-gift-wave {
 0%,75%,100% { transform:rotate(0); }
 80% { transform:rotate(-10deg); }
 85% { transform:rotate(9deg); }
 90% { transform:rotate(-5deg); }
 95% { transform:rotate(3deg); }
}

.private-original-home .home-cases { margin-block:clamp(40px,5vw,80px); }
.home-cases .service-section-heading h2 { font-size:clamp(30px,3.5vw,48px); font-weight:700; line-height:1.15; color:#222426; }

/* Office photograph behind the visit details on the contacts page. */
.contacts-premium .contacts-visit {
  background:#253e30;
  background-image:linear-gradient(180deg,rgba(17,35,25,.62),rgba(17,35,25,.88)),url('/img/bg-main.jpg');
  background-image:linear-gradient(180deg,rgba(17,35,25,.62),rgba(17,35,25,.88)),image-set(url('/img/bg-main.webp') type('image/webp'),url('/img/bg-main.jpg') type('image/jpeg'));
  background-size:cover;
  background-position:center;
  color:#fff;
  justify-content:flex-end;
  min-height:500px;
  box-sizing:border-box;
}
.contacts-premium .contacts-visit .contacts-section-number { color:#e7eddf; margin-bottom:auto; padding-bottom:70px; }
.contacts-premium .contacts-visit h2,
.contacts-premium .contacts-visit address,
.contacts-premium .contacts-visit > p,
.contacts-premium .contacts-visit .contacts-route { color:#fff; }
.contacts-premium .contacts-visit .contacts-route { border-color:rgba(255,255,255,.35); }
.contacts-premium .contacts-visit .contacts-route:hover { color:#e1eccf; }
@media(max-width:767px) { .contacts-premium .contacts-visit { min-height:450px; } }

/* Keep the project title and price visible before revealing its details. */
.case-tile-price { margin:12px 0 0; color:#e0ebcd; font-size:clamp(25px,2.3vw,36px); font-weight:700; line-height:1.2; letter-spacing:-.035em; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.case-tile-reveal > .cases-eyebrow { display:block; margin-top:20px; color:#dce5ce; }
@media (max-width:767px) {
  .case-tile .case-tile-more {
    justify-content:center;
    width:100%;
    min-height:56px;
    box-sizing:border-box;
    margin-top:24px;
    padding:16px 20px;
    border-radius:12px;
    background:#fff;
    color:#14281b;
    font-size:16px;
    font-weight:600;
    line-height:1.5;
    text-align:center;
  }
  .case-tile .case-tile-more svg { display:none; }
}
/* Use the same measured, reversible motion for photo and graphic cards. */
@media (hover:hover) and (pointer:fine) {
  .case-tile--graphic .case-tile-copy,
  .case-tile--graphic:hover .case-tile-copy,
  .case-tile--graphic:focus-within .case-tile-copy {
    position:absolute; inset:0; justify-content:flex-end;
  }
  .case-tile--graphic .case-tile-copy > .case-tile-summary {
    transform:translateY(0);
    transition:transform .48s cubic-bezier(.22,1,.36,1);
  }
  .case-tile--graphic:hover .case-tile-copy > .case-tile-summary,
  .case-tile--graphic:focus-within .case-tile-copy > .case-tile-summary {
    transform:translateY(calc(-1 * var(--case-reveal-height, 330px)));
    transition:transform .48s cubic-bezier(.22,1,.36,1);
  }
  .case-tile--graphic .case-tile-reveal,
  .case-tile--graphic:hover .case-tile-reveal,
  .case-tile--graphic:focus-within .case-tile-reveal {
    position:absolute; left:30px; right:30px; bottom:30px;
    display:block; max-height:none; overflow:visible; flex:none;
    transition:opacity .38s ease, transform .48s cubic-bezier(.22,1,.36,1);
  }
  .case-tile--graphic .case-tile-reveal { opacity:0; transform:translateY(10px); pointer-events:none; }
  .case-tile--graphic:hover .case-tile-reveal,
  .case-tile--graphic:focus-within .case-tile-reveal { opacity:1; transform:translateY(0); }
  .case-tile--graphic .case-tile-link::after { display:block; }
}
@media (hover:hover) and (pointer:fine) and (max-width:639px) {
  .case-tile .case-tile-reveal { left:24px; right:24px; bottom:24px; }
}
@media (prefers-reduced-motion:reduce) {
  .case-tile .case-tile-copy > .case-tile-summary,
  .case-tile:hover .case-tile-copy > .case-tile-summary,
  .case-tile:focus-within .case-tile-copy > .case-tile-summary,
  .case-tile .case-tile-reveal,
  .case-tile:hover .case-tile-reveal,
  .case-tile:focus-within .case-tile-reveal { transition:none; }
}

/* Admin-selected direction backgrounds, with content above the dark overlay. */
.direction-card--photo { position:relative; isolation:isolate; background:#20392d; color:#fff; }
.direction-card--photo > .direction-background { position:absolute; inset:0; z-index:-2; width:100%; height:100%; max-width:none; object-fit:cover; }
.direction-card--photo::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(135deg,rgba(10,25,17,.78),rgba(10,25,17,.55)); }
.direction-card--photo .direction-description { color:#fff; }
.direction-card--photo .direction-number { opacity:.85; }
.direction-card--photo .direction-visual > svg { visibility:hidden; }
.direction-card--photo .direction-action { background:#fff; color:#20392d; }
.direction-card--photo .direction-action:hover { background:#e8efdf; color:#20392d; border-color:transparent; }
.direction-card--photo .direction-action:focus-visible { outline-color:#fff; }
@media (prefers-reduced-motion:no-preference) {
  .direction-card--photo > .direction-background { transition:transform .65s cubic-bezier(.22,1,.36,1); }
  .direction-card--photo:focus-within > .direction-background { transform:scale(1.025); }
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .direction-card--photo:hover > .direction-background { transform:scale(1.025); }
}
