/* Page - contact */
.lp-contact {
  --lp-contact-icon-address: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1940' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E");
  --lp-contact-icon-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1940' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 3h3.5l1.8 4.5-2.3 1.4a11 11 0 0 0 5.1 5.1l1.4-2.3L19 13.5V17a2 2 0 0 1-2 2A14 14 0 0 1 3 5a2 2 0 0 1 2-2z'/%3E%3C/svg%3E");
  --lp-contact-icon-email: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1940' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3.5 6.5L12 13l8.5-6.5'/%3E%3C/svg%3E");
  --lp-contact-icon-hours: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1940' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3.5 2'/%3E%3C/svg%3E");
  display: flex;
  flex-direction: column;
  gap: 48px;
  color: var(--lp-text);
}

.lp-contact p {
  margin: 0;
  font-size: var(--lp-fs);
  line-height: 1.6;
}

.lp-contact h2 {
  margin: 0 0 16px;
  font-weight: 700;
}

.lp-contact a {
  color: var(--lp-blue);
}

.lp-contact a:hover {
  color: var(--lp-blue-d);
}

.lp-contact .lp-contact__lead {
  font-size: var(--lp-fs-lg);
  line-height: 1.55;
  color: var(--lp-muted);
}

.lp-contact__lead strong {
  color: var(--lp-text);
}

.lp-contact .lp-contact__note {
  font-size: var(--lp-fs-sm);
  color: var(--lp-muted);
}

.lp-contact__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: 32px 48px;
  align-items: start;
}

.lp-contact__info {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.lp-contact__info h2 {
  margin-bottom: 4px;
}

.lp-contact__item {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  column-gap: 16px;
  row-gap: 6px;
  align-items: start;
}

.lp-contact__item::before {
  content: '';
  grid-row: 1 / span 2;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--lp-blue-bg) center / 24px no-repeat;
}

.lp-contact__item--address::before {
  background-image: var(--lp-contact-icon-address);
}

.lp-contact__item--phone::before {
  background-image: var(--lp-contact-icon-phone);
}

.lp-contact__item--email::before {
  background-image: var(--lp-contact-icon-email);
}

.lp-contact__item--hours::before {
  background-image: var(--lp-contact-icon-hours);
}

.lp-contact__item > p {
  grid-column: 2;
}

.lp-contact__item strong {
  display: inline-block;
  margin-bottom: 2px;
  font-size: var(--lp-fs-sm);
  font-weight: 600;
  color: var(--lp-muted);
}

.lp-contact .lp-contact__item a {
  font-size: var(--lp-fs-lg);
  font-weight: 700;
  text-decoration: none;
}

.lp-contact__form {
  padding: 28px;
  border-radius: 16px;
  background: var(--lp-grey);
}

.lp-contact__form > p {
  margin-bottom: 20px;
  color: var(--lp-muted);
}

.lp-contact__form h2 {
  margin-bottom: 6px;
}

:is(.lp-contact, .lp-vykup) .contact-form fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

:is(.lp-contact, .lp-vykup) .contact-form .form-group {
  margin: 0 0 16px;
}

:is(.lp-contact, .lp-vykup) .contact-form label {
  display: block;
  margin: 0 0 6px;
  font-size: var(--lp-fs-sm);
  font-weight: 600;
  color: var(--lp-text);
}

:is(.lp-contact, .lp-vykup) .contact-form .form-control {
  width: 100%;
  height: 48px;
  padding: 0 16px;
  border: 1px solid var(--lp-line);
  border-radius: 8px;
  background: #fff;
  font-size: var(--lp-fs);
  color: var(--lp-text);
  box-shadow: none;
}

:is(.lp-contact, .lp-vykup) .contact-form textarea.form-control {
  height: auto;
  min-height: 150px;
  padding: 12px 16px;
  line-height: 1.5;
  resize: vertical;
}

:is(.lp-contact, .lp-vykup) .contact-form .form-control:focus {
  border-color: var(--lp-blue);
  outline: 2px solid var(--lp-blue-l);
  outline-offset: 0;
}

:is(.lp-contact, .lp-vykup) .contact-form .consents .label {
  margin: 0;
  font-size: var(--lp-fs-sm);
  font-weight: 400;
  line-height: 1.5;
  color: var(--lp-muted);
}

:is(.lp-contact, .lp-vykup) .contact-form .submit-wrapper {
  margin: 0;
}

:is(.lp-contact, .lp-vykup) .contact-form .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 0 32px;
  border: 0;
  border-radius: var(--lp-btn-radius);
  background: var(--lp-blue);
  color: #fff;
  font-size: var(--lp-fs);
  font-weight: 700;
  line-height: 1;
  transition: none;
}

:is(.lp-contact, .lp-vykup) .contact-form .btn:hover {
  background: var(--lp-blue-d);
  color: #fff;
}

/* Captcha */
:is(.lp-contact, .lp-vykup) .contact-form fieldset.box {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 8px 16px;
  align-items: end;
  margin: 0 0 16px;
  padding: 0;
}

:is(.lp-contact, .lp-vykup) .contact-form fieldset.box h2 {
  grid-column: 1 / -1;
  margin: 0;
  font-size: var(--lp-fs-sm);
  font-weight: 600;
  line-height: 1.4;
  color: var(--lp-text);
}

:is(.lp-contact, .lp-vykup) .contact-form .captcha-image {
  width: auto;
  margin: 0;
}

:is(.lp-contact, .lp-vykup) .contact-form .captcha-image img {
  display: block;
  width: 150px;
  height: 48px;
  border-radius: 8px;
  object-fit: contain;
  background: #fff;
}

:is(.lp-contact, .lp-vykup) .contact-form .captcha-image + .form-group {
  width: auto;
  max-width: none;
  margin: 0;
}

:is(.lp-contact, .lp-vykup) .contact-form .consents {
  margin: 0 0 16px !important;
}

/* Contact - help */
.lp-contact__help ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}

.lp-contact__help li {
  margin: 0;
  padding: 20px 22px;
  border: 1px solid var(--lp-line);
  border-radius: 12px;
  background: #fff;
  font-size: var(--lp-fs);
  line-height: 1.6;
}

.lp-contact__help ul li::before {
  display: none;
}

.lp-contact__help li > strong:first-child {
  font-size: var(--lp-fs);
}

.lp-contact__cards {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 12px;
}

.lp-contact__card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 22px 24px;
  border-radius: 12px;
  background: var(--lp-grey);
}

.lp-contact__card h2 {
  margin: 0;
}

.lp-contact__map {
  border-radius: 16px;
  background: var(--lp-grey);
  overflow: hidden;
}

.lp-contact__map iframe {
  display: block;
  width: 100%;
  height: 420px;
  border: 0;
}

@media (max-width: 991px) {
  .lp-contact__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 767px) {
  .lp-contact {
    gap: 36px;
  }

  .lp-contact .lp-contact__lead {
    font-size: var(--lp-fs);
  }

  .lp-contact__form {
    padding: 20px;
  }

  .lp-contact__help ul {
    grid-template-columns: minmax(0, 1fr);
  }

  :is(.lp-contact, .lp-vykup) .contact-form .btn {
    width: 100%;
  }

  .lp-contact__map iframe {
    height: 300px;
  }
}

/* Page - Vykup */
.lp-vykup {
  --lp-vykup-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1940' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  display: flex;
  flex-direction: column;
  gap: 56px;
  color: var(--lp-text);
}

.lp-vykup p {
  margin: 0 0 14px;
  font-size: var(--lp-fs);
  line-height: 1.65;
}

.lp-vykup p:last-child {
  margin-bottom: 0;
}

.lp-vykup h2 {
  margin: 0 0 16px;
  font-weight: 700;
}

.lp-vykup h3 {
  margin: 0 0 8px;
  font-weight: 700;
}

.lp-vykup a {
  color: var(--lp-blue);
}

.lp-vykup a:hover {
  color: var(--lp-blue-d);
}

.lp-vykup ul {
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
}

.lp-vykup ul li {
  margin: 0;
}

.lp-vykup ul li::before {
  display: none;
}

.lp-vykup .lp-vykup__intro {
  margin-bottom: 24px;
  color: var(--lp-muted);
}

.lp-vykup .lp-vykup__tag {
  color: var(--lp-blue);
  font-size: var(--lp-fs-lg);
}

/* Vykup - hero */
.lp-vykup__hero {
  padding: 40px 44px;
  border-radius: 16px;
  background: var(--lp-blue-bg);
}

.lp-vykup .lp-vykup__lead {
  font-size: var(--lp-fs-lg);
}

.lp-vykup .lp-vykup__btn {
  display: inline-flex;
  align-items: center;
  height: 48px;
  margin-top: 24px;
  padding: 0 28px;
  border-radius: var(--lp-btn-radius);
  background: var(--lp-blue);
  color: #fff;
  font-size: var(--lp-fs);
  font-weight: 700;
  text-decoration: none;
}

.lp-vykup .lp-vykup__btn:hover {
  background: var(--lp-blue-d);
  color: #fff;
}

/* Vykup - boxes */
.lp-vykup__box {
  padding: 32px 36px;
  border-radius: 16px;
  background: var(--lp-grey);
}

.lp-vykup__duo {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

/* Vykup - banefits */
.lp-vykup__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
}

.lp-vykup__card {
  padding: 24px;
  border: 1px solid var(--lp-line);
  border-radius: 12px;
  background: #fff;
}

.lp-vykup__card::before {
  content: '';
  display: block;
  width: 44px;
  height: 44px;
  margin-bottom: 16px;
  border-radius: 50%;
  background: var(--lp-blue-bg) var(--lp-vykup-check) center / 22px no-repeat;
}

.lp-vykup__card p,
.lp-vykup__step p {
  font-size: var(--lp-fs);
  color: var(--lp-muted);
}

/* Vykup - PPWR */
.lp-vykup__ppwr {
  padding: 36px 40px;
  border: 1px solid var(--lp-line);
  border-radius: 16px;
}

.lp-vykup__ppwr h3 {
  margin-top: 28px;
}

.lp-vykup .lp-vykup__checks li {
  position: relative;
  padding: 4px 0 4px 32px;
}

.lp-vykup .lp-vykup__checks li::after {
  content: '';
  position: absolute;
  top: 7px;
  left: 0;
  width: 22px;
  height: 22px;
  background: var(--lp-vykup-check) center / 18px no-repeat;
}

.lp-vykup .lp-vykup__highlight {
  padding: 18px 22px;
  border-left: 4px solid var(--lp-blue);
  border-radius: 0 8px 8px 0;
  background: var(--lp-blue-bg);
}

.lp-vykup__ppwr a {
  font-weight: 700;
}

/* Vykup - types */
.lp-vykup .lp-vykup__types {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 24px;
}

.lp-vykup .lp-vykup__types li {
  position: relative;
  padding: 16px 20px 16px 56px;
  border-radius: 12px;
  background: var(--lp-grey);
  font-size: var(--lp-fs);
  line-height: 1.55;
}

.lp-vykup .lp-vykup__types li::after {
  content: '';
  position: absolute;
  top: 14px;
  left: 16px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #fff var(--lp-vykup-check) center / 16px no-repeat;
}

/* Vykup - steps */
.lp-vykup__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.lp-vykup__step {
  padding: 24px;
  border: 1px solid var(--lp-line);
  border-radius: 12px;
  background: #fff;
}

.lp-vykup__num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-bottom: 16px;
  border-radius: 50%;
  background: var(--lp-blue);
  color: #fff;
  font-size: var(--lp-fs-lg);
  font-weight: 700;
}

/* Vykup - cta */
.lp-vykup__final {
  padding: 40px 44px;
  border-radius: 16px;
  background: var(--lp-navy);
  color: #fff;
  scroll-margin-top: 100px;
}

.lp-vykup__final h2,
.lp-vykup__final p {
  color: #fff;
}

.lp-vykup__form:not(:empty) {
  margin-top: 28px;
  padding: 28px;
  border-radius: 12px;
  background: #fff;
  color: var(--lp-text);
}

.lp-vykup__final .lp-vykup__form p {
  margin-bottom: 20px;
  color: var(--lp-muted);
}

.lp-vykup__final .lp-vykup__form .consents p {
  margin: 0;
}

.lp-vykup .contact-form > fieldset {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 24px;
}

.lp-vykup .contact-form > fieldset > .smart-label-wrapper + .smart-label-wrapper + .smart-label-wrapper {
  grid-column: 1 / -1;
}

.lp-vykup .contact-form > fieldset > fieldset.box {
  grid-column: 1;
  grid-row: span 2;
  align-self: start;
}

.lp-vykup .contact-form > fieldset > .consents,
.lp-vykup .contact-form > fieldset > .submit-wrapper {
  grid-column: 2;
}

.lp-vykup .contact-form > fieldset > .consents {
  align-self: end;
}

.lp-vykup .contact-form .btn {
  width: 100%;
}

@media (max-width: 1199px) {
  .lp-vykup__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  .lp-vykup__duo,
  .lp-vykup .lp-vykup__types {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 767px) {
  .lp-vykup {
    gap: 40px;
  }

  .lp-vykup__hero,
  .lp-vykup__box,
  .lp-vykup__ppwr,
  .lp-vykup__final {
    padding: 24px 20px;
  }

  .lp-vykup__steps {
    grid-template-columns: minmax(0, 1fr);
  }

  .lp-vykup .lp-vykup__btn {
    width: 100%;
    justify-content: center;
  }

  .lp-vykup__form:not(:empty) {
    padding: 20px;
  }

  .lp-vykup .contact-form > fieldset {
    grid-template-columns: minmax(0, 1fr);
  }

  .lp-vykup .contact-form > fieldset > fieldset.box,
  .lp-vykup .contact-form > fieldset > .consents,
  .lp-vykup .contact-form > fieldset > .submit-wrapper {
    grid-column: 1;
    grid-row: auto;
  }
}

/* Vykup - actions */
.lp-vykup__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.lp-vykup__actions .lp-vykup__btn {
  margin-top: 0;
}

.lp-vykup .lp-vykup__btn--ghost {
  border: 2px solid var(--lp-blue);
  background: transparent;
  color: var(--lp-blue);
}

.lp-vykup .lp-vykup__btn--ghost:hover {
  border-color: var(--lp-blue-d);
  background: var(--lp-blue-d);
}

.lp-vykup__section {
  scroll-margin-top: 100px;
}

.lp-vykup__handover {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.lp-vykup__option {
  padding: 24px;
  border-top: 4px solid var(--lp-accent);
  border-radius: 12px;
  background: var(--lp-grey);
}

.lp-vykup__option p {
  font-size: var(--lp-fs);
  color: var(--lp-muted);
}

.lp-vykup .lp-vykup__send {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 24px;
  margin: 8px 0 20px;
}

.lp-vykup .lp-vykup__send li {
  position: relative;
  padding-left: 30px;
}

.lp-vykup .lp-vykup__send li::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff var(--lp-vykup-check) center / 14px no-repeat;
}

.lp-vykup__final > p a {
  color: var(--lp-accent);
  font-weight: 700;
}

.lp-vykup__final > p a:hover {
  color: var(--lp-accent-l);
}

@media (max-width: 991px) {
  .lp-vykup__handover {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 767px) {
  .lp-vykup .lp-vykup__send {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Page - About us */
.lp-onas {
  --lp-onas-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1940' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  display: flex;
  flex-direction: column;
  gap: 56px;
  color: var(--lp-text);
}

.lp-onas p {
  margin: 0 0 14px;
  font-size: var(--lp-fs);
  line-height: 1.65;
}

.lp-onas p:last-child {
  margin-bottom: 0;
}

.lp-onas h2 {
  margin: 0 0 16px;
  font-weight: 700;
}

.lp-onas a {
  color: var(--lp-blue);
}

.lp-onas a:hover {
  color: var(--lp-blue-d);
}

/* About us - texts and images */
.lp-onas__intro,
.lp-onas__why {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 40px;
}

.lp-onas__photo,
.lp-onas__photos {
  position: relative;
  min-height: 320px;
}

.lp-onas__photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: 16px;
  object-fit: cover;
}

.lp-onas__photos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.lp-onas__photos img {
  width: 100%;
  height: 100%;
  border-radius: 16px;
  object-fit: cover;
}

/* About us - what we do */
.lp-onas__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.lp-onas__card {
  padding: 24px;
  border: 1px solid var(--lp-line);
  border-radius: 12px;
  background: #fff;
}

.lp-onas__card::before {
  content: '';
  display: block;
  width: 44px;
  height: 44px;
  margin-bottom: 16px;
  border-radius: 50%;
  background: var(--lp-blue-bg) var(--lp-onas-check) center / 22px no-repeat;
}

.lp-onas__states {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 16px 0 20px;
}

.lp-onas .lp-onas__states p {
  margin: 0;
  padding: 18px 22px;
  border-radius: 12px;
  background: var(--lp-blue-bg);
}

.lp-onas__states strong {
  color: var(--lp-blue);
}

/* About us - why us */
.lp-onas .lp-onas__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-onas .lp-onas__list li {
  position: relative;
  margin: 0;
  padding: 16px 20px 16px 56px;
  border-radius: 12px;
  background: var(--lp-grey);
  font-size: var(--lp-fs);
  line-height: 1.55;
}

.lp-onas .lp-onas__list li::before {
  display: none;
}

.lp-onas .lp-onas__list li::after {
  content: '';
  position: absolute;
  top: 14px;
  left: 16px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #fff var(--lp-onas-check) center / 16px no-repeat;
}

/* About us - our mission */
.lp-onas__mission {
  padding: 40px 44px;
  border-radius: 16px;
  background: var(--lp-navy);
  color: #fff;
}

.lp-onas__mission h2,
.lp-onas__mission p {
  color: #fff;
}

.lp-onas .lp-onas__claim {
  margin-top: 20px;
  color: var(--lp-accent);
  font-size: var(--lp-fs-lg);
}

.lp-onas .lp-onas__claim strong {
  color: inherit;
}

@media (max-width: 991px) {
  .lp-onas__intro,
  .lp-onas__why {
    grid-template-columns: minmax(0, 1fr);
  }

  .lp-onas__photo {
    min-height: 0;
  }

  .lp-onas__photo img {
    position: static;
    height: auto;
    aspect-ratio: 880 / 518;
  }

  .lp-onas__photos {
    min-height: 0;
  }

  .lp-onas__photos img {
    aspect-ratio: 4 / 5;
  }

  .lp-onas__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 767px) {
  .lp-onas {
    gap: 40px;
  }

  .lp-onas__states {
    grid-template-columns: minmax(0, 1fr);
  }

  .lp-onas__photos {
    gap: 10px;
  }

  .lp-onas__mission {
    padding: 24px 20px;
  }
}

/* Page - RE-USE */
.lp-reuse {
  display: flex;
  flex-direction: column;
  gap: 32px;
  color: var(--lp-text);
}

.lp-reuse p {
  margin: 0 0 14px;
  font-size: var(--lp-fs);
  line-height: 1.65;
}

.lp-reuse p:last-child {
  margin-bottom: 0;
}

.lp-reuse a {
  color: var(--lp-blue);
}

.lp-reuse a:hover {
  color: var(--lp-blue-d);
}

.lp-reuse__box {
  padding: 36px 40px;
  border-radius: 16px;
  background: var(--lp-grey);
}

.lp-reuse__box--water {
  background: var(--lp-blue-bg);
}

.lp-reuse__box--nature {
  border: 1px solid var(--lp-line);
  background: #fff;
}

.lp-reuse .lp-reuse__logo {
  display: block;
  width: 208px;
  height: auto;
  margin: 0 0 20px;
}

/* RE-USE - terms */
.lp-reuse__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 4px 0 20px;
}

.lp-reuse__grid:last-child {
  margin-bottom: 0;
}

.lp-reuse__card {
  padding: 18px 22px;
  border-radius: 12px;
  background: #fff;
  font-size: var(--lp-fs);
  line-height: 1.55;
}

.lp-reuse__box--nature .lp-reuse__card {
  background: var(--lp-grey);
}

.lp-reuse__card strong {
  color: var(--lp-blue);
}

.lp-reuse .lp-reuse__claim {
  color: var(--lp-blue);
  font-size: var(--lp-fs-lg);
}

/* RE-USE - ideas */
.lp-reuse__ideas img {
  display: block;
  width: 100%;
  height: auto;
}

.lp-reuse .lp-reuse__sign {
  padding-top: 24px;
  border-top: 1px solid var(--lp-line);
}

@media (max-width: 991px) {
  .lp-reuse__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 767px) {
  .lp-reuse__box {
    padding: 24px 20px;
  }
}

/* Page - B2B */
.lp-firmy {
  --lp-firmy-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1940' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  display: flex;
  flex-direction: column;
  gap: 56px;
  color: var(--lp-text);
}

.lp-firmy p {
  margin: 0 0 14px;
  font-size: var(--lp-fs);
  line-height: 1.65;
}

.lp-firmy p:last-child {
  margin-bottom: 0;
}

.lp-firmy h2 {
  margin: 0 0 16px;
  font-weight: 700;
}

.lp-firmy h3 {
  margin: 0 0 8px;
  font-weight: 700;
}

.lp-firmy a {
  color: var(--lp-blue);
}

.lp-firmy a:hover {
  color: var(--lp-blue-d);
}

.lp-firmy ul {
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
}

.lp-firmy ul li {
  margin: 0;
}

.lp-firmy ul li::before {
  display: none;
}

.lp-firmy .lp-firmy__intro {
  margin-bottom: 24px;
  color: var(--lp-muted);
}

.lp-firmy section {
  scroll-margin-top: 100px;
}

/* B2B - btns */
.lp-firmy__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.lp-firmy .lp-firmy__btn {
  display: inline-flex;
  align-items: center;
  height: 48px;
  padding: 0 28px;
  border: 2px solid var(--lp-blue);
  border-radius: var(--lp-btn-radius);
  background: var(--lp-blue);
  color: #fff;
  font-size: var(--lp-fs);
  font-weight: 700;
  text-decoration: none;
}

.lp-firmy .lp-firmy__btn:hover {
  border-color: var(--lp-blue-d);
  background: var(--lp-blue-d);
  color: #fff;
}

.lp-firmy .lp-firmy__btn--ghost {
  background: transparent;
  color: var(--lp-blue);
}

/* B2B - hero */
.lp-firmy__hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  overflow: hidden;
  border-radius: 16px;
  background: var(--lp-blue-bg);
}

.lp-firmy__hero-text {
  padding: 40px 44px;
}

.lp-firmy__hero-photo {
  position: relative;
}

.lp-firmy__hero-photo img {
  position: absolute;
  inset: 0;
}

.lp-firmy .lp-firmy__lead {
  font-size: var(--lp-fs-lg);
}

.lp-firmy__hero-photo img,
.lp-firmy__pallet-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lp-firmy__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 20px;
}

.lp-firmy__card {
  padding: 24px;
  border: 1px solid var(--lp-line);
  border-top: 4px solid var(--lp-accent);
  border-radius: 12px;
  background: #fff;
}

.lp-firmy__card p,
.lp-firmy__step p {
  font-size: var(--lp-fs);
  color: var(--lp-muted);
}

.lp-firmy .lp-firmy__more {
  font-weight: 700;
}

/* B2B - benefits */
.lp-firmy .lp-firmy__benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
}

.lp-firmy .lp-firmy__benefits li {
  position: relative;
  padding: 24px 24px 24px 76px;
  border-radius: 12px;
  background: var(--lp-grey);
  font-size: var(--lp-fs);
  line-height: 1.55;
  color: var(--lp-muted);
}

.lp-firmy .lp-firmy__benefits li::after {
  content: '';
  position: absolute;
  top: 22px;
  left: 20px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #fff var(--lp-firmy-check) center / 20px no-repeat;
}

.lp-firmy__benefits strong {
  display: block;
  margin-bottom: 4px;
  font-size: var(--lp-fs-lg);
  color: var(--lp-text);
}

/* B2B - prices and discounts */
.lp-firmy__prices {
  padding: 36px 40px;
  border: 1px solid var(--lp-line);
  border-radius: 16px;
}

.lp-firmy__table-wrap {
  margin-bottom: 24px;
  overflow-x: auto;
}

.lp-firmy__table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--lp-fs);
}

.lp-firmy__table th,
.lp-firmy__table td {
  padding: 14px 18px;
  border-bottom: 1px solid var(--lp-line);
  text-align: left;
  vertical-align: top;
}

.lp-firmy__table thead th {
  background: var(--lp-navy);
  color: #fff;
  font-weight: 700;
}

.lp-firmy__table thead th:first-child {
  border-radius: 8px 0 0 0;
}

.lp-firmy__table thead th:last-child {
  border-radius: 0 8px 0 0;
}

.lp-firmy__table tbody tr:nth-child(even) {
  background: var(--lp-grey);
}

.lp-firmy__table td:first-child {
  white-space: nowrap;
  font-weight: 700;
}

.lp-firmy__table td:last-child {
  color: var(--lp-muted);
}

.lp-firmy .lp-firmy__checks li {
  position: relative;
  padding: 4px 0 4px 32px;
}

.lp-firmy .lp-firmy__checks li::after {
  content: '';
  position: absolute;
  top: 7px;
  left: 0;
  width: 22px;
  height: 22px;
  background: var(--lp-firmy-check) center / 18px no-repeat;
}

/* B2B - steps */
.lp-firmy__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.lp-firmy__step {
  padding: 24px;
  border: 1px solid var(--lp-line);
  border-radius: 12px;
  background: #fff;
}

.lp-firmy__num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-bottom: 16px;
  border-radius: 50%;
  background: var(--lp-blue);
  color: #fff;
  font-size: var(--lp-fs-lg);
  font-weight: 700;
}

/* B2B - pallet and transport */
.lp-firmy__pallet {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  gap: 40px;
  align-items: center;
}

.lp-firmy__pallet-photo {
  overflow: hidden;
  border-radius: 16px;
  aspect-ratio: 4 / 3;
}

/* B2B - vykup */
.lp-firmy__box {
  padding: 32px 36px;
  border-radius: 16px;
  background: var(--lp-grey);
}

.lp-firmy__box .lp-firmy__btn {
  margin-top: 20px;
}

/* B2B - cta and form */
.lp-firmy__final {
  padding: 40px 44px;
  border-radius: 16px;
  background: var(--lp-navy);
  color: #fff;
}

.lp-firmy__final h2,
.lp-firmy__final p {
  color: #fff;
}

.lp-firmy__final > p a {
  color: var(--lp-accent);
  font-weight: 700;
}

.lp-firmy__final > p a:hover {
  color: var(--lp-accent-l);
}

.lp-firmy__form:not(:empty) {
  margin-top: 28px;
  padding: 28px;
  border-radius: 12px;
  background: #fff;
  color: var(--lp-text);
}

.lp-firmy__final .lp-firmy__form p {
  margin-bottom: 20px;
  color: var(--lp-muted);
}

.lp-firmy__final .lp-firmy__form .consents p {
  margin: 0;
}

.lp-firmy .contact-form > fieldset {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 24px;
}

.lp-firmy .contact-form > fieldset > .smart-label-wrapper + .smart-label-wrapper + .smart-label-wrapper {
  grid-column: 1 / -1;
}

.lp-firmy .contact-form > fieldset > fieldset.box {
  grid-column: 1;
  grid-row: span 2;
  align-self: start;
}

.lp-firmy .contact-form > fieldset > .consents,
.lp-firmy .contact-form > fieldset > .submit-wrapper {
  grid-column: 2;
}

.lp-firmy .contact-form > fieldset > .consents {
  align-self: end;
}

.lp-firmy .contact-form .btn {
  width: 100%;
}

@media (max-width: 1199px) {
  .lp-firmy__grid,
  .lp-firmy__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lp-firmy .lp-firmy__benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  .lp-firmy__hero,
  .lp-firmy__pallet {
    grid-template-columns: minmax(0, 1fr);
  }

  .lp-firmy__hero-photo {
    aspect-ratio: 16 / 9;
  }
}

@media (max-width: 767px) {
  .lp-firmy {
    gap: 40px;
  }

  .lp-firmy__hero-text,
  .lp-firmy__prices,
  .lp-firmy__box,
  .lp-firmy__final {
    padding: 24px 20px;
  }

  .lp-firmy__grid,
  .lp-firmy__steps,
  .lp-firmy .lp-firmy__benefits {
    grid-template-columns: minmax(0, 1fr);
  }

  .lp-firmy .lp-firmy__btn {
    width: 100%;
    justify-content: center;
  }

  .lp-firmy__table th,
  .lp-firmy__table td {
    padding: 12px;
    font-size: var(--lp-fs);
  }

  .lp-firmy__form:not(:empty) {
    padding: 20px;
  }

  .lp-firmy .contact-form > fieldset {
    grid-template-columns: minmax(0, 1fr);
  }

  .lp-firmy .contact-form > fieldset > fieldset.box,
  .lp-firmy .contact-form > fieldset > .consents,
  .lp-firmy .contact-form > fieldset > .submit-wrapper {
    grid-column: 1;
    grid-row: auto;
  }
}

/* Tables in static pages */
.type-page .content-inner table {
  width: 100%;
  margin: 0 0 24px;
  border-collapse: collapse;
  font-size: var(--lp-fs);
}

.type-page .content-inner table th,
.type-page .content-inner table td {
  padding: 14px 18px;
  border: 0;
  border-bottom: 1px solid var(--lp-line);
  text-align: left;
  vertical-align: top;
}

.type-page .content-inner table thead th {
  background: var(--lp-navy);
  color: #fff;
  font-weight: 700;
}

.type-page .content-inner table thead th:first-child {
  border-radius: 8px 0 0 0;
}

.type-page .content-inner table thead th:last-child {
  border-radius: 0 8px 0 0;
}

.type-page .content-inner table tbody tr:nth-child(even) {
  background: var(--lp-grey);
}

@media (max-width: 767px) {
  .type-page .content-inner table {
    display: block;
    overflow-x: auto;
  }

  .type-page .content-inner table th,
  .type-page .content-inner table td {
    padding: 12px;
  }
}
