/* Мобильный редизайн современного шаблона. Настольное оформление сохраняется. */
@media screen and (max-width: 1000px) {
  html.lp-responsive body.lp-modern {
    min-width: 0;
    width: auto;
    height: auto;
    min-height: 100%;
    background: var(--lp-canvas);
    color: var(--lp-text);
  }
  body.lp-modern,
  body.lp-modern input,
  body.lp-modern select,
  body.lp-modern textarea,
  body.lp-modern button {
    font-family: system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  }
  body.lp-modern *,
  body.lp-modern *::before,
  body.lp-modern *::after { box-sizing: border-box; }
  body.lp-modern img,
  body.lp-modern iframe,
  body.lp-modern object,
  body.lp-modern video { max-width: 100%; }
  body.lp-modern a {
    color: var(--lp-teal);
    text-decoration-thickness: 1px;
    text-underline-offset: .18em;
  }
  body.lp-modern a:focus-visible,
  body.lp-modern button:focus-visible,
  body.lp-modern input:focus-visible,
  body.lp-modern select:focus-visible,
  body.lp-modern textarea:focus-visible {
    outline: 3px solid #8ac8cb;
    outline-offset: 3px;
  }
  html.lp-responsive body.lp-modern h1,
  html.lp-responsive body.lp-modern h2,
  html.lp-responsive body.lp-modern h3,
  html.lp-responsive body.lp-modern h4,
  body.lp-modern .consult-title,
  body.lp-modern .problems-title,
  body.lp-modern .text-title,
  body.lp-modern .speciality-title {
    color: var(--lp-navy);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 700;
    letter-spacing: -.025em;
    line-height: 1.18;
    text-align: left;
    text-indent: 0;
    overflow-wrap: anywhere;
  }
  html.lp-responsive body.lp-modern h1 { font-size: clamp(1.8rem, 7vw, 2.4rem); }
  html.lp-responsive body.lp-modern h2 { font-size: clamp(1.45rem, 6vw, 2rem); }
  body.lp-modern .wrap,
  body.lp-modern .text-block {
    position: relative;
    width: auto;
    min-width: 0;
    max-width: 58rem;
    margin-inline: auto;
  }

  /* Вместо старой неподвижной шапки используется общий мобильный заголовок. */
  body.lp-modern > .header { display: none; }
  body.lp-modern .consult,
  body.lp-modern .problems,
  body.lp-modern .statistics,
  body.lp-modern .text-block,
  body.lp-modern .speciality,
  body.lp-modern .footer {
    width: auto;
    min-width: 0;
    margin-inline: 0;
  }
  body.lp-modern .consult {
    min-height: 0;
    overflow: visible;
    padding: 1.5rem 1.125rem;
    border-top: 3px solid var(--lp-teal);
    background: var(--lp-white);
  }
  body.lp-modern .consult > .wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.125rem;
  }
  body.lp-modern .consult .cover-img,
  body.lp-modern .consult > .greenishCover {
    display: none !important;
  }
  body.lp-modern .consult .consult-right {
    float: none;
    order: 1;
    width: auto;
    min-width: 0;
    max-width: 48rem;
    margin: 0 !important;
  }
  body.lp-modern .consult .consult-right .consult-title {
    max-width: none;
    margin: 0 0 1rem;
    color: var(--lp-navy);
    font: 700 clamp(2rem, 8.2vw, 2.5rem)/1.13 Georgia, "Times New Roman", serif;
    overflow-wrap: anywhere;
  }
  body.lp-modern .consult .consult-right > br:first-of-type,
  body.lp-modern.lp-no-consult .consult .consult-right > br { display: none; }
  body.lp-modern .consult .consult-right .old-price2,
  body.lp-modern .consult .consult-right .old-price {
    float: none;
    width: auto;
    max-width: 47rem;
    margin: 0;
    color: var(--lp-text);
    font: 400 1rem/1.65 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    word-spacing: normal;
  }
  body.lp-modern .consult .consult-right .old-price::after,
  body.lp-modern .consult .consult-right .old-price span::after,
  body.lp-modern .consult .consult-right .old-price2::after,
  body.lp-modern .consult .consult-right .old-price2 span::after { display: none; }
  body.lp-modern .consult .partnerFormLoader,
  body.lp-modern .consult .consult-form {
    float: none !important;
    order: 2;
    width: auto !important;
    min-width: 0;
    max-width: 47rem;
    height: auto !important;
    min-height: 0;
    margin: 0 !important;
    padding: 1rem !important;
    border: 0;
    border-left: 4px solid var(--lp-teal);
    border-radius: 2px;
    background: #eaf3f6 !important;
    color: var(--lp-text) !important;
    box-shadow: none;
  }
  body.lp-modern .partnerFormLoader.lp-unavailable .lp-loader-original { display: none; }
  body.lp-modern .partnerFormLoader .lp-unavailable-note {
    display: block;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--lp-text);
    font-size: .95rem;
    font-weight: 500;
    line-height: 1.5;
  }
  body.lp-modern .consult-form .input-wrap,
  body.lp-modern .partnerFormTable td { width: 100%; }
  body.lp-modern .consult-form .input-title {
    margin: 0 0 .45rem;
    font-size: .95rem;
    font-weight: 650;
  }
  body.lp-modern .consult-form .input-default,
  body.lp-modern .consult-form #question-area,
  body.lp-modern .default-select,
  body.lp-modern .default-select .ui-selectmenu-button,
  body.lp-modern .partnerFormTable input,
  body.lp-modern .partnerFormTable select,
  body.lp-modern .partnerFormTable textarea {
    width: 100% !important;
    max-width: 100%;
    min-height: 3rem;
    padding: .7rem .85rem;
    border: 1px solid #9eb5c1;
    border-radius: 2px;
    background: var(--lp-white);
    color: var(--lp-text);
    font-size: 1rem;
    line-height: 1.35;
  }
  body.lp-modern .consult-form #question-area,
  body.lp-modern .partnerFormTable textarea {
    min-height: 8rem;
    resize: vertical;
    overflow: auto;
  }
  body.lp-modern .consult-form .number-left,
  body.lp-modern .consult-form .number-right {
    float: none;
    display: inline-block;
    width: calc(50% - .35rem);
    margin: 0 0 .75rem;
    vertical-align: top;
  }
  body.lp-modern .consult-form .number-right { margin-left: .45rem; }
  body.lp-modern .consult-form .question-button,
  body.lp-modern .partnerFormTable input[type="button"],
  body.lp-modern .partnerFormTable input[type="submit"] {
    width: 100%;
    min-height: 3.25rem;
    height: auto;
    margin-top: .6rem;
    padding: .75rem 1rem;
    border: 0;
    border-radius: 2px;
    background: var(--lp-teal);
    color: var(--lp-white);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
  }
  body.lp-modern.lp-no-consult .consult .free-message,
  body.lp-modern.lp-no-consult .consult .question-banner,
  body.lp-modern.lp-no-consult .statistics .get-consult { display: none !important; }
  body.lp-modern .consult .consult-right .free-message {
    float: none;
    width: auto;
    margin: 1.25rem 0 0;
    padding: 1rem;
    border-left: 4px solid var(--lp-teal);
    background: var(--lp-canvas);
  }
  body.lp-modern .consult .consult-right .free-message .free-date,
  body.lp-modern .consult .consult-right .free-message .free-text {
    margin: 0;
    color: var(--lp-text);
    font: 600 1rem/1.6 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    letter-spacing: 0;
    text-transform: none;
  }
  body.lp-modern .consult .consult-right .question-banner {
    clear: both;
    width: auto;
    height: auto;
    min-height: 0;
    margin: 1.25rem 0 0 !important;
    padding: 1rem;
    border: 1px solid #a9c9ca;
    border-left: 4px solid var(--lp-teal);
    border-radius: 3px;
    background: var(--lp-white);
    color: var(--lp-text);
    font-style: normal;
  }
  body.lp-modern .consult .consult-right .question-banner .banner-text {
    float: none;
    width: auto;
    margin: 0;
  }
  body.lp-modern .consult .consult-right .question-banner .banner-text p { margin: 0 0 .8rem; }
  body.lp-modern .consult .consult-right .question-banner .banner-text p:last-child { margin-bottom: 0; }

  body.lp-modern .problems {
    padding: 2rem 0;
    background: var(--lp-canvas);
    text-align: left;
  }
  body.lp-modern .problems .problems-title,
  body.lp-modern .text-block .text-title,
  body.lp-modern .speciality .speciality-title {
    max-width: none;
    margin: 0 0 1.25rem;
    color: var(--lp-navy);
    font: 700 clamp(1.6rem, 6vw, 2rem)/1.17 Georgia, "Times New Roman", serif;
    text-align: left;
  }
  body.lp-modern .problems .problems-list,
  body.lp-modern .speciality .speciality-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: .65rem;
    margin: 0;
    padding: 0;
    text-align: left;
  }
  body.lp-modern .problems .problems-list > li {
    display: block;
    width: auto;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-left: 4px solid var(--lp-teal);
    border-radius: 2px;
    background: var(--lp-white);
    color: var(--lp-navy);
    font: 650 1.05rem/1.35 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    list-style: none;
  }
  body.lp-modern .problems .problems-list > li > span {
    display: block;
    width: auto;
    height: auto;
    padding: 0;
    text-align: left;
  }
  body.lp-modern .problems .problems-list > li a {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: .8rem 1rem;
    color: var(--lp-navy);
    text-decoration: none;
  }
  body.lp-modern .statistics {
    min-height: 0;
    padding: 1.25rem 1.125rem;
    border-block: 1px solid #ccd9e0;
    background: #e6eef2;
    color: var(--lp-text);
    font: 400 1rem/1.65 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    text-align: left;
  }
  body.lp-modern .statistics .wrap { max-width: 52rem; }
  body.lp-modern .statistics p { margin: 0 0 .65rem; }
  body.lp-modern .statistics p:last-child { margin-bottom: 0; }
  body.lp-modern .statistics p span {
    display: inline;
    border: 0;
    color: var(--lp-navy);
    font-family: system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    font-size: 1.05em;
    font-weight: 700;
    line-height: inherit;
  }
  body.lp-modern .statistics .get-consult {
    width: 100%;
    max-width: 28rem;
    height: auto;
    margin: 1.25rem 0 0;
    padding: .9rem 1rem;
    border: 0;
    border-radius: 2px;
    background: var(--lp-teal);
    color: var(--lp-white);
    text-align: center;
  }
  body.lp-modern .text-block {
    max-width: 46rem;
    margin-inline: auto;
    padding: 2rem 0;
    color: var(--lp-text);
    letter-spacing: 0;
    text-align: left;
    text-indent: 0;
    overflow-wrap: anywhere;
  }
  body.lp-modern .text-block p { margin: 0 0 1rem; line-height: 1.65; }
  body.lp-modern .text-block li { margin-block: .5rem; }
  body.lp-modern .text-block img { height: auto; }
  body.lp-modern .speciality {
    padding: 1.75rem 1.125rem;
    background: var(--lp-white);
  }
  body.lp-modern .speciality .speciality-list > li {
    display: block;
    width: auto;
    min-width: 0;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 1px solid #ccd9e0;
    border-radius: 3px;
    background: var(--lp-white);
    color: var(--lp-text);
    font: 400 1rem/1.55 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    list-style: none;
  }
  body.lp-modern .speciality .speciality-list .title-wrap {
    display: flex;
    align-items: center;
    gap: .65rem;
    min-height: 3.75rem;
    padding: .8rem .85rem;
    border-bottom: 1px solid #dbe4e9;
    background: #f5f8fa;
  }
  body.lp-modern .speciality .speciality-list .title-wrap img {
    flex: 0 0 auto;
    width: auto;
    max-width: 2.5rem;
    height: auto;
    max-height: 2.5rem;
    margin: 0;
  }
  body.lp-modern .speciality .speciality-list .title-wrap span { min-width: 0; margin: 0; }
  body.lp-modern .speciality .speciality-list .title-wrap a {
    display: flex;
    align-items: center;
    min-height: 44px;
    color: var(--lp-navy);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
    overflow-wrap: anywhere;
  }
  body.lp-modern .speciality .specialities { margin: 0; padding: .5rem .85rem .75rem; }
  body.lp-modern .speciality .specialities li {
    margin: 0;
    padding: 0;
    background: none;
    font: 400 1rem/1.5 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    list-style: none;
  }
  body.lp-modern .speciality .specialities li a {
    display: block;
    min-height: 44px;
    padding-block: .65rem;
    color: var(--lp-text);
  }
  body.lp-modern .speciality .specialities li + li { border-top: 1px solid #e7edf1; }
  body.lp-modern .footer {
    height: auto;
    min-height: 0;
    padding: 1.5rem 1.125rem;
    background: var(--lp-navy);
    color: var(--lp-white);
    font: 400 .85rem/1.55 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    text-align: left;
  }
  body.lp-modern .footer p,
  body.lp-modern .footer .author { display: block; max-width: 56rem; margin: 0 auto .7rem; }
  body.lp-modern .footer br { display: none; }
  html.lp-responsive body.lp-modern .footer a,
  html.lp-responsive body.lp-modern .lp-mobile-header a {
    color: var(--lp-white);
  }
  body.lp-modern #modal_form {
    inset: 1rem;
    width: auto;
    max-width: 44rem;
    height: auto;
    max-height: calc(100dvh - 2rem);
    margin-inline: auto;
    padding: 3.5rem 1rem 1rem;
    overflow: auto;
  }
  body.lp-modern #modal_form #modal_close {
    top: 1rem;
    left: 1rem;
    width: auto;
    min-width: 2.75rem;
    min-height: 2.75rem;
    color: var(--lp-white);
    font-size: .9rem;
    opacity: 1;
  }
  body.lp-modern #modal_form iframe { width: 100% !important; height: min(70dvh, 42rem) !important; }
  body.lp-modern #overlay { width: 100%; height: 100%; }
}

@media screen and (min-width: 601px) and (max-width: 1000px) {
  body.lp-modern:not(.lp-no-consult) .consult > .wrap {
    grid-template-columns: minmax(0, 1.35fr) minmax(15rem, .65fr);
    align-items: start;
    gap: 1.5rem;
  }
  body.lp-modern:not(.lp-no-consult) .consult .consult-right { grid-column: 1; }
  body.lp-modern:not(.lp-no-consult) .consult .partnerFormLoader,
  body.lp-modern:not(.lp-no-consult) .consult .consult-form { grid-column: 2; grid-row: 1; }
  body.lp-modern .problems .problems-list,
  body.lp-modern .speciality .speciality-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.lp-modern .statistics .wrap { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 2rem; }
  body.lp-modern .statistics .get-consult { margin-top: 0; }
}

@media screen and (max-width: 1000px) and (prefers-reduced-motion: reduce) {
  body.lp-modern *,
  body.lp-modern *::before,
  body.lp-modern *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
