:is(.blog-single-post, .single-landing, .single-landing-2024) {
  .lazyblock-contact-form-contact-section {
    width: 100%;
    margin-block: 41px;
    align-items: center;
  }

  .lazyblock-contact-form-contact-section:has(.lazyblock-contact-form-dialog) {
    margin-block: 8px;
  }

  .lazyblock-contact-form-contact-section-inner {
    padding-inline: 12px;
  }

  .lazyblock-contact-form-contact-section-inner:has(
      .lazyblock-contact-form-dialog
    ) {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .lazyblock-contact-form-dialog {
    padding: 0;
    max-width: 1000px;
    width: auto;
    inset: 16px;
    box-sizing: border-box;
    border: none;
    background-color: transparent;
    margin: auto;
  }

  .lazyblock-contact-form-button {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    padding: 12px 21px;
    background-color: var(--color-primary-100, #00ffa4);
    color: #000000;
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    font-family: var(--font-main);
    text-transform: none;
    word-break: keep-all;
    transition: all 0.15s linear;
    width: fit-content;
    text-decoration: none;
  }

  .lazyblock-contact-form-button:hover {
    filter: brightness(70%);
    text-decoration: none;
  }

  .lazyblock-contact-form-button:focus {
    text-decoration: none;
  }

  .lazyblock-contact-form-dialog::backdrop {
    background-color: #00000080;
  }

  .lazyblock-contact-form-contact-wrapper {
    display: flex;
    flex-direction: column;
    gap: 12px;
    justify-content: center;
    align-items: center;
    background-color: #3e3c3f;
    padding: 42px 16px 16px;
    border: 1px solid #ffffff1f;
    border-radius: 24px;
    position: relative;
  }

  .lazyblock-contact-form-close-button {
    position: absolute;
    right: 7px;
    top: 14px;
    width: 40px;
    height: 30px;
    background: transparent;
    transition: all 0.15s linear;
    padding: 0;
  }

  .lazyblock-contact-form-close-button:before,
  .lazyblock-contact-form-close-button:after {
    position: absolute;
    left: 50%;
    top: 0;
    content: " ";
    height: 26px;
    width: 2px;
    background-color: #ffffff;
  }

  .lazyblock-contact-form-close-button:before {
    transform: rotate(45deg);
  }
  .lazyblock-contact-form-close-button:after {
    transform: rotate(-45deg);
  }

  .lazyblock-contact-form-close-button:is(:hover, :focus) {
    filter: brightness(70%);
  }

  .lazyblock-contact-form-contact-title-wrapper {
    display: flex;
    flex-direction: column;
    gap: 12px;
    text-align: center;
    max-width: 520px;
  }

  .lazyblock-contact-form-contact-title {
    font-size: 24px;
    font-weight: 600;
    line-height: 33.6px;
    color: #ffffff;
  }

  .lazyblock-contact-form-contact-description {
    font-size: 14px;
    font-weight: 400;
    line-height: 25px;
    color: #e6e6e6;
    margin: unset;
    text-align: center;
  }

  /* FORM Contact */

  .lazyblock-contact-form-contact-section .mauticform_wrapper {
    max-width: 520px;
    width: 100%;
    margin: 0;
  }

  .lazyblock-contact-form-contact-section .mauticform-page-wrapper label {
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    color: #ffffffdb;
  }

  .lazyblock-contact-form-contact-section
    :is(.mauticform-message, .mauticform-error) {
    text-align: center;
    font-weight: 600;
  }

  .lazyblock-contact-form-contact-section
    :is(.mauticform-input, .mauticform-selectbox) {
    border: 1px solid #ffffff33 !important;
    color: #ffffffa3;
    padding: 8px 16px 8px 20px !important;
    border-radius: 6px !important;
    background-color: #242325 !important;
    font-size: 16px;
    max-height: 40px;
    height: 100%;
    -webkit-appearance: none;
    appearance: none;
  }

  .lazyblock-contact-form-contact-section .mauticform-textarea {
    height: 140px;
    min-height: 60px;
    padding: 8px 16px 8px 20px !important;
    background-color: #242325 !important;
    color: #ffffffa3;
    font-size: 16px;
    border: 1px solid #ffffff33 !important;
    border-radius: 6px !important;
    max-width: 100% !important;
    min-width: 100% !important;
  }

  .lazyblock-contact-form-contact-section
    :is(.mauticform-input, .mauticform-selectbox, .mauticform-textarea):focus {
    outline: 1px solid #ffffff;
    transition: all 0.2s;
  }

  .lazyblock-contact-form-contact-section .mauticform-input:valid:focus {
    outline: 1px solid #ffffff;
  }

  .lazyblock-contact-form-contact-section .mauticform-input:invalid {
    outline: 2px solid red;
  }

  .lazyblock-contact-form-contact-section .mauticform-selectbox option {
    border: 1px solid #ffffff33 !important;
    background-color: #242325 !important;
    color: #ffffffa3;
    border-radius: 6px !important;
  }

  .lazyblock-contact-form-contact-section .mauticform-input::placeholder {
    color: #ffffffa3;
    left: 0 !important;
  }

  .lazyblock-contact-form-contact-section .mauticform-email .mauticform-label,
  .lazyblock-contact-form-contact-section .mauticform-select .mauticform-label {
    position: relative;
  }

  .lazyblock-contact-form-contact-section .mauticform-email .mauticform-input,
  .lazyblock-contact-form-contact-section
    .mauticform-select
    .mauticform-selectbox {
    padding-right: 36px !important;
  }

  .lazyblock-contact-form-contact-section
    .mauticform-select
    .mauticform-label::before {
    position: absolute;
    bottom: -26px;
    right: 19.5px;
    content: " ";
    width: 8px;
    height: 8px;
    border-right: 2.5px solid #6b7280;
    border-top: 2.5px solid #6b7280;
    transform: rotate(135deg);
  }

  .lazyblock-contact-form-contact-section
    .mauticform-email
    .mauticform-label::before {
    content: url("../icons/message-check.svg");
    width: 16px;
    height: 16px;
    position: absolute;
    right: 16px;
    top: 40px;
    transition: opacity 0.2s linear;
    opacity: 0;
  }

  .lazyblock-contact-form-contact-section
    .mauticform-email:has(.mauticform-input:valid)
    .mauticform-label::before {
    opacity: 1;
  }

  .lazyblock-contact-form-contact-section .mauticform-checkboxgrp {
    position: relative;
  }

  .lazyblock-contact-form-contact-section
    .mauticform-checkboxgrp
    .mauticform-label {
    display: none;
  }

  .lazyblock-contact-form-contact-section .mauticform-checkboxgrp-checkbox {
    min-width: 20px;
    min-height: 20px;
    border-radius: 4px;
    background-color: #242325;
    border: 1px solid #ffffff33;
  }

  .lazyblock-contact-form-contact-section
    .mauticform-checkboxgrp-checkbox:checked {
    background-color: var(--color-primary-200, #00d388);
    border: unset;
  }

  .lazyblock-contact-form-contact-section
    .mauticform-checkboxgrp-checkbox:checked:before {
    content: url("../icons/check-solid.svg");
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    margin: auto;
  }

  .lazyblock-contact-form-contact-section
    .mauticform-checkboxgrp-row
    .mauticform-checkboxgrp-label {
    font-weight: 400;
  }

  .lazyblock-contact-form-contact-section
    .mauticform-checkboxgrp-row
    .mauticform-checkboxgrp-label::after {
    color: #e32;
    content: " *";
    display: inline;
    font-size: 16px;
    font-weight: 600;
  }

  :where(.lazyblock-contact-form-contact-section)
    .mauticform-page-wrapper
    > .mauticform-freetext {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 400ms;
    position: relative;
    padding-top: 24px;
    color: #ffffff;
  }

  :where(.lazyblock-contact-form-contact-section)
    .mauticform-page-wrapper
    > .mauticform-freetext
    .mauticform-label {
    position: absolute;
    top: -2px;
    color: #ffffff;
    cursor: pointer;
    font-size: 14px !important;
    font-weight: 500;
    text-decoration: underline;
    line-height: 1.25;
  }

  :where(.lazyblock-contact-form-contact-section)
    .mauticform-page-wrapper
    > .mauticform-freetext
    > .mauticform-freetext {
    overflow: hidden;
  }

  :where(.lazyblock-contact-form-contact-section)
    .mauticform-page-wrapper
    > .mauticform-freetext
    > .mauticform-freetext
    > * {
    font-size: 14px !important;
  }

  :where(.lazyblock-contact-form-contact-section)
    .mauticform-page-wrapper
    .mauticform-freetext
    a {
    color: var(--color-primary-100, #00ffa4);
    text-decoration: underline;
    cursor: pointer;
  }

  :where(.lazyblock-contact-form-contact-section)
    .mauticform-page-wrapper
    .mauticform-freetext
    a:hover {
    text-decoration: none;
  }

  :where(.lazyblock-contact-form-contact-section)
    .mauticform-page-wrapper
    .accordion-open {
    grid-template-rows: 1fr;
  }

  .lazyblock-contact-form-contact-section
    .mauticform-button-wrapper
    .mauticform-button.btn-default {
    background-color: var(--color-primary-100, #00ffa4) !important;
    border-radius: 6px;
    padding: 12px 8px;
    text-align: center;
    color: #000000 !important;
    font-family: var(--font-main);
    width: 100%;
    font-size: 18px;
    font-weight: 700;
    line-height: 25px;
    text-transform: none;
  }

  .lazyblock-contact-form-contact-section
    .mauticform-button-wrapper
    .mauticform-button.btn-default:hover {
    filter: brightness(80%);
  }

  .lazyblock-contact-form-contact-section
    :is(.mauticform-message, .mauticform-error) {
    text-align: center;
    font-weight: 600;
    color: red;
    font-size: 16px;
  }

  .lazyblock-contact-form-contact-section .mauticform-helpmessage {
    text-align: start;
    font-size: 12px;
    font-weight: 400;
    padding-inline: 2px;
    color: #ffffff;
  }

  .mauticform-errormsg {
    text-align: start;
    font-size: 12px;
    font-weight: 600;
  }
}
@media (min-width: 1000px) {
  :is(.blog-single-post, .single-landing, .single-landing-2024) {
    .lazyblock-contact-form-contact-section {
      margin-block: 152px;
    }

    .lazyblock-contact-form-contact-section:has(
        .lazyblock-contact-form-dialog
      ) {
      margin-block: 8px;
    }

    .lazyblock-contact-form-button {
      padding: 16px 24px;
    }

    .lazyblock-contact-form-close-button {
      right: 21px;
      top: 21px;
      width: 50px;
      height: 40px;
    }

    .lazyblock-contact-form-close-button:before,
    .lazyblock-contact-form-close-button:after {
      height: 33px;
    }

    .lazyblock-contact-form-contact-wrapper {
      gap: 32px;
      padding: 52px 24px 64px;
    }

    .lazyblock-contact-form-contact-title-wrapper {
      gap: 24px;
    }

    .lazyblock-contact-form-contact-title {
      font-size: 42px;
      line-height: 59px;
      font-weight: 600;
    }

    .blog-single-post
      .post-inner
      .entry-content
      .lazyblock-contact-form-contact-description {
      font-size: 16px;
    }

    .lazyblock-contact-form-contact-section .mauticform-button-wrapper {
      display: flex;
      justify-content: center;
    }

    .lazyblock-contact-form-contact-section
      .mauticform-button-wrapper
      .mauticform-button.btn-default {
      width: 100%;
    }
  }
}
