.sk-calc {
    max-width: 860px;
    min-width: 0;
    width: 100%;
}
.sk-calc__lead {
    margin: 0 0 24px;
    color: var(--grey, #787878);
    line-height: 130%;
}
.sk-calc .cost-form,
.sk-calc .sk-calc-form,
.sk-calc .sk-lead-form,
.sk-calc .sk-lead-ok {
    max-width: none;
    padding: 28px;
    background-color: var(--bg, #eaf8ef);
    border-radius: 12px;
    overflow: visible;
}
.sk-calc-form .cost-form__row {
    overflow: visible;
}
.sk-calc .sk-calc-form .cost-form__field,
.sk-calc .sk-lead-form .cost-form__field {
    width: 100%;
    margin-bottom: 12px;
    border-radius: 10px;
    background-color: #fff;
    border: 1px solid #dce8e0;
}
.sk-calc .sk-calc-form textarea.cost-form__field,
.sk-calc .sk-lead-form textarea.cost-form__field {
    height: 120px;
    resize: vertical;
}
.sk-calc .sk-calc-form .cost-form__field:focus,
.sk-calc .sk-lead-form .cost-form__field:focus {
    border-color: var(--accent, #29bb6d);
    outline: none;
    box-shadow: 0 0 0 3px rgba(41, 187, 109, 0.18);
}
.sk-calc .cost-form h2,
.sk-calc .sk-calc-form h2,
.sk-calc .sk-lead-form h2,
.sk-calc .sk-lead-ok h2 {
    margin: 0 0 18px;
    font-size: 24px;
    line-height: 130%;
    text-transform: none;
    letter-spacing: 0;
}
.sk-calc .cost-form select.cost-form__field,
.sk-calc .sk-calc-form select.cost-form__field {
    appearance: auto;
    -webkit-appearance: menulist;
    height: 55px;
}
.sk-calc .sk-calc-form .cost-form__submit,
.sk-calc .sk-lead-form .cost-form__submit {
    width: 100%;
    margin-bottom: 0;
    border: 0;
    border-radius: 10px;
    text-transform: none;
    letter-spacing: 0;
    cursor: pointer;
}
.sk-combo {
    position: relative;
    z-index: 2;
    width: 100%;
    margin-bottom: 12px;
}
.sk-combo.is-open {
    z-index: 40;
}
.sk-combo .cost-form__field {
    margin-bottom: 0;
}
.sk-combo__list {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 50;
    max-height: 260px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    margin: 4px 0 0;
    padding: 6px 0;
    list-style: none;
    background: #fff;
    border: 1px solid #dce8e0;
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}
.sk-combo__list.open {
    display: block;
}
.sk-combo__list.is-fixed {
    right: auto;
    margin: 0;
}
.sk-combo__list li {
    padding: 12px 18px;
    min-height: 44px;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(41, 187, 109, 0.18);
}
.sk-combo__list li:hover,
.sk-combo__list li.active {
    background: var(--bg, #d9f3e5);
}
.sk-combo.error .cost-form__field,
.sk-calc .cost-form__field.error {
    border-color: var(--btn, #da3b3b);
}
.sk-calc .cost-form__checks.error span {
    color: var(--btn, #da3b3b);
}
.sk-calc__note {
    margin: 14px 0 0;
    color: var(--grey, #787878);
    font-size: 14px;
    line-height: 130%;
}
.sk-result {
    display: none;
    margin-top: 20px;
}
.sk-result.is-open {
    display: block;
}
.sk-result__market {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 16px;
}
.sk-result__box {
    background: #fff;
    border: 1px solid #dce8e0;
    border-radius: 10px;
    padding: 16px 10px;
    text-align: center;
}
.sk-result__box span {
    display: block;
    margin-bottom: 8px;
    color: var(--grey, #787878);
    font-size: 14px;
}
.sk-result__box strong {
    font-size: 20px;
}
.sk-result__buyout {
    background: #fff;
    border-radius: 10px;
    padding: 20px 16px;
    text-align: center;
    margin-bottom: 18px;
}
.sk-result__buyout span {
    display: block;
    margin-bottom: 8px;
    font-weight: 700;
}
.sk-result__buyout strong {
    font-size: 32px;
    color: var(--accent, #29bb6d);
    line-height: 120%;
}
.sk-result__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}
.sk-result__actions .btn {
    width: auto;
    min-width: 220px;
    margin: 0;
    border-radius: 10px;
    text-transform: none;
    letter-spacing: 0;
}
.sk-lead {
    display: none;
    margin-top: 20px;
}
.sk-lead.is-open {
    display: block;
}
.sk-lead.is-sent .sk-lead-form {
    display: none;
}
.sk-lead-ok {
    display: none;
}
.sk-lead.is-sent .sk-lead-ok {
    display: block;
}
.sk-lead-ok p {
    margin: 0;
    color: var(--grey, #787878);
    line-height: 140%;
}
.sk-lead__summary {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px 16px;
    margin: 0 0 16px;
    padding: 14px 16px;
    background: #fff;
    border-radius: 10px;
    line-height: 140%;
}
.sk-lead__summary strong {
    color: var(--accent, #29bb6d);
    font-size: 20px;
}
.sk-lead-form .cost-form__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
.sk-lead__files {
    margin: 4px 0 16px;
}
.sk-lead__files > span {
    display: block;
    margin-bottom: 8px;
    font-weight: 700;
}
.sk-lead__slots {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}
.sk-lead__add {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 72px;
    padding: 8px 6px;
    overflow: hidden;
    background: #fff;
    border: 1px dashed #c5d9cc;
    border-radius: 10px;
    cursor: pointer;
    color: var(--grey, #787878);
    text-align: center;
    font-size: 13px;
    line-height: 130%;
}
.sk-lead__add:hover,
.sk-lead__add.is-on {
    border-style: solid;
    border-color: var(--accent, #29bb6d);
    color: var(--dark, #231f20);
}
.sk-lead__add em {
    font-style: normal;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    pointer-events: none;
    padding: 0 4px;
}
.sk-lead__add input {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: pointer;
    font-size: 0;
}
.sk-lead__agree {
    margin: 0 0 16px;
}
.sk-lead__agree.error label {
    color: var(--btn, #da3b3b);
}
.sk-feed,
.sk-faq {
    margin-top: 20px;
}
.sk-feed__filters {
    display: grid;
    grid-template-columns: 1fr 1fr 120px;
    gap: 12px;
    margin: 0 0 16px;
}
.sk-feed__scroller {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    max-width: 100%;
    margin: 0 -4px;
    padding-bottom: 2px;
}
.sk-feed table {
    width: 100%;
    min-width: 520px;
    border-collapse: collapse;
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
}
.sk-feed th,
.sk-feed td {
    border-bottom: 1px solid #dce8e0;
    padding: 10px 12px;
    text-align: left;
    white-space: nowrap;
}
.sk-feed th {
    font-size: 14px;
    color: var(--grey, #787878);
    font-weight: 700;
}
.sk-faq details {
    border-bottom: 1px solid #dce8e0;
    padding: 12px 0;
}
.sk-faq details summary {
    cursor: pointer;
    font-weight: 700;
}
.sk-faq details p {
    margin: 10px 0 0;
    color: var(--grey, #787878);
}
@media (max-width: 760px) {
    .sk-result__market,
    .sk-feed__filters {
        grid-template-columns: 1fr;
    }
    .sk-feed th,
    .sk-feed td {
        padding: 8px 10px;
        font-size: 13px;
    }
    .sk-result__buyout strong {
        font-size: 24px;
    }
    .sk-result__actions .btn {
        width: 100%;
        min-width: 0;
    }
    .sk-lead-form .cost-form__row {
        grid-template-columns: 1fr;
    }
    .sk-lead__slots {
        grid-template-columns: 1fr 1fr;
    }
}

.sp {
    --sp-mint: #e9f8ee;
    --sp-green: var(--accent, #29bb6d);
    --sp-green-dark: #1ea55d;
    --sp-ink: var(--dark, #231f20);
    --sp-muted: #5a635c;
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 10050;
    width: 320px;
    padding-top: 64px;
    overflow: visible;
    font-family: Arial, Helvetica, sans-serif;
    transform: translateX(calc(100% + 40px));
    opacity: 0;
    transition: transform .55s cubic-bezier(.22, .9, .3, 1), opacity .35s ease, bottom .2s ease;
}
.sp.is-open {
    transform: translateX(0);
    opacity: 1;
}
.sp__card {
    position: relative;
    overflow: visible;
    background: var(--sp-mint);
    border-radius: 18px;
    padding: 92px 20px 20px;
    box-shadow: 0 18px 44px -12px rgba(20, 40, 25, .28), 0 2px 6px rgba(20, 40, 25, .06);
}
.sp__cars {
    position: absolute;
    top: -64px;
    left: 50%;
    transform: translateX(-50%);
    width: 268px;
    height: auto;
    display: block;
    pointer-events: none;
    filter: drop-shadow(0 10px 14px rgba(20, 40, 25, .18));
}
.sp__headline {
    margin: 0 0 8px;
    background: #fff;
    border-radius: 12px;
    padding: 14px 12px;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.015em;
    text-align: center;
    color: var(--sp-ink);
}
.sp__headline b {
    color: var(--sp-green-dark);
    font-weight: 800;
}
.sp__sub {
    margin: 0 0 16px;
    font-size: 14px;
    line-height: 1.4;
    color: var(--sp-muted);
    text-align: center;
}
.sp__cta {
    display: block;
    width: 100%;
    box-sizing: border-box;
    border: 0;
    border-radius: 12px;
    padding: 14px 16px;
    background: var(--sp-green);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: background .18s ease, transform .18s ease;
}
.sp__cta:hover {
    background: var(--sp-green-dark);
    color: #fff;
}
.sp__cta:active {
    transform: translateY(1px);
}
.sp__cta:focus-visible {
    outline: 3px solid #0b6b3a;
    outline-offset: 2px;
}
.sp__close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .9);
    color: var(--sp-muted);
    font-size: 17px;
    line-height: 1;
    cursor: pointer;
    display: grid;
    place-items: center;
    transition: background .18s ease, color .18s ease;
    z-index: 2;
}
.sp__close:hover {
    background: #fff;
    color: var(--sp-ink);
}
.sp__close:focus-visible {
    outline: 3px solid #0b6b3a;
    outline-offset: 2px;
}
.sp__tab {
    position: fixed;
    right: 0;
    bottom: 96px;
    z-index: 10050;
    border: 0;
    border-radius: 12px 0 0 12px;
    padding: 12px 14px;
    background: var(--accent, #29bb6d);
    color: #fff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 8px 22px -6px rgba(20, 40, 25, .35);
    transform: translateX(100%);
    transition: transform .4s cubic-bezier(.22, .9, .3, 1), background .18s ease;
    writing-mode: vertical-rl;
    letter-spacing: .02em;
}
.sp__tab.is-open {
    transform: translateX(0);
}
.sp__tab:hover {
    background: #1ea55d;
}
.sp__tab:focus-visible {
    outline: 3px solid #0b6b3a;
    outline-offset: 2px;
}
@media (max-width: 600px) {
    .sp {
        right: 12px;
        left: 12px;
        bottom: 12px;
        width: auto;
        padding-top: 0;
        transform: translateY(calc(100% + 24px));
    }
    .sp.is-open {
        transform: translateY(0);
    }
    .sp__card {
        padding: 20px 16px 16px;
        display: flex;
        gap: 14px;
        align-items: center;
        box-shadow: 0 -12px 36px rgba(20, 40, 25, .22), 0 10px 28px rgba(20, 40, 25, .2), 0 0 0 1px rgba(20, 40, 25, .06);
    }
    .sp__cars {
        position: static;
        transform: none;
        width: 96px;
        flex: 0 0 96px;
        filter: none;
    }
    .sp__body {
        flex: 1 1 auto;
        min-width: 0;
    }
    .sp__headline {
        font-size: 15px;
        padding: 8px 10px;
        text-align: left;
        margin-bottom: 4px;
    }
    .sp__sub {
        font-size: 12px;
        text-align: left;
        margin-bottom: 10px;
    }
    .sp__cta {
        padding: 11px 12px;
        font-size: 14px;
    }
    .sp__tab {
        bottom: auto;
        top: 50%;
    }
    body.has-sp-open {
        padding-bottom: 170px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .sp,
    .sp__tab,
    .sp__cta {
        transition: none;
    }
}

/* ── попап-форма заявки ── */
.lead{
  --l-mint:#e9f8ee;
  --l-green:#29bc6e;
  --l-green-dark:#1ea55d;
  --l-ink:#141414;
  --l-muted:#6b746e;
  --l-line:#dfe6e1;
  --l-error:#c8342b;

  box-sizing:border-box;
  width:min(440px, calc(100% - 32px));
  max-width:100%;
  max-height:calc(100dvh - 32px);
  margin:auto;
  padding:0;
  border:0;
  border-radius:20px;
  background:#fff;
  color:var(--l-ink);
  font-family:-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  box-shadow:0 30px 70px -20px rgba(12,40,22,.45);
  overflow-x:hidden;
  overflow-y:visible;
}
.lead *,
.lead *::before,
.lead *::after{ box-sizing:border-box; }
.lead::backdrop{
  background:rgba(10,28,18,.55);
  backdrop-filter:blur(3px);
}

.lead[open]{ animation:leadIn .28s cubic-bezier(.22,.9,.3,1); }
.lead[open]::backdrop{ animation:leadFade .28s ease; }
@keyframes leadIn{ from{ opacity:0; transform:translateY(14px) scale(.97); } }
@keyframes leadFade{ from{ opacity:0; } }
.lead.is-closing{ animation:leadOut .2s ease forwards; }
@keyframes leadOut{ to{ opacity:0; transform:translateY(10px) scale(.98); } }

.lead__inner{
  position:relative;
  padding:28px 26px 22px;
  max-width:100%;
  max-height:calc(100dvh - 32px);
  overflow-x:hidden;
  overflow-y:auto;
  border-radius:inherit;
}
.lead input.lead__hp{
  position:absolute;
  width:1px; height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
  white-space:nowrap;
  border:0; padding:0;
  pointer-events:none;
}

.lead__close{
  position:absolute; top:12px; right:12px;
  width:34px; height:34px; border:0; border-radius:50%;
  background:#f2f5f3; color:var(--l-muted);
  font-size:20px; line-height:1; cursor:pointer;
  display:grid; place-items:center;
  transition:background .16s, color .16s;
}
.lead__close:hover{ background:#e6ebe8; color:var(--l-ink); }
.lead__close:focus-visible{ outline:3px solid var(--l-green-dark); outline-offset:2px; }

.lead__eyebrow{
  display:inline-block; margin:0 0 10px;
  background:var(--l-mint); color:#0b6b3a;
  font-size:12px; font-weight:700; letter-spacing:.03em; text-transform:uppercase;
  padding:5px 10px; border-radius:999px;
}
.lead__title{ margin:0 0 6px; font-size:23px; font-weight:800; line-height:1.2; letter-spacing:-.015em; }
.lead__lede{ margin:0 0 20px; font-size:14px; line-height:1.5; color:var(--l-muted); }

.lead__form{ min-width:0; max-width:100%; }
.lead__row{ display:grid; grid-template-columns:1.55fr 1fr; gap:10px; align-items:stretch; min-width:0; }
.lead__row .lead__field{ display:flex; flex-direction:column; min-width:0; }
.lead__row .lead__label{ flex:1 0 auto; }
.lead__field{ margin-bottom:12px; min-width:0; max-width:100%; }
.lead__label{ display:block; margin-bottom:5px; font-size:13px; font-weight:600; color:#3c443e; }
.lead__label span{ color:var(--l-muted); font-weight:400; }
.lead__req{ color:var(--l-green-dark); }
.lead input.lead__input,
.lead input[type="text"],
.lead input[type="tel"]{
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  padding:13px 14px;
  border:1.5px solid var(--l-line); border-radius:11px;
  background:#fff; color:var(--l-ink);
  font:inherit; font-size:16px;
  transition:border-color .16s, box-shadow .16s;
}
.lead__input::placeholder{ color:#a8b1ab; }
.lead__input:hover{ border-color:#c6d1ca; }
.lead__input:focus{
  outline:0;
  border-color:var(--l-green);
  box-shadow:0 0 0 3px rgba(41,188,110,.18);
}
.lead__input[aria-invalid="true"]{ border-color:var(--l-error); }
.lead__input[aria-invalid="true"]:focus{ box-shadow:0 0 0 3px rgba(200,52,43,.15); }

.lead__error{
  display:none; margin:5px 0 0;
  font-size:12.5px; color:var(--l-error);
}
.lead__error.is-shown{ display:block; }

.lead__hint{
  margin:2px 0 0;
  font-size:12px;
  line-height:1.4;
  color:var(--l-muted);
}

.lead__consent{
  display:flex; gap:10px; align-items:flex-start;
  margin:12px 0 16px;
  font-size:12.5px; line-height:1.45; color:var(--l-muted);
  min-width:0;
}
.lead__consent span{ min-width:0; overflow-wrap:anywhere; }
.lead__consent input{
  flex:0 0 auto; width:17px; height:17px; margin:1px 0 0;
  accent-color:var(--l-green); cursor:pointer;
}
.lead__consent a{ color:#0b6b3a; }
.lead__consent.is-invalid{ color:var(--l-error); }

.lead__submit{
  width:100%; border:0; border-radius:12px;
  padding:16px; background:var(--l-green); color:#fff;
  font:inherit; font-size:16px; font-weight:700; cursor:pointer;
  transition:background .16s, transform .12s;
}
.lead__submit:hover:not(:disabled){ background:var(--l-green-dark); }
.lead__submit:active:not(:disabled){ transform:translateY(1px); }
.lead__submit:disabled{ opacity:.6; cursor:default; }
.lead__submit:focus-visible{ outline:3px solid #0b6b3a; outline-offset:2px; }

.lead__note{ margin:12px 0 0; font-size:12px; line-height:1.5; color:var(--l-muted); text-align:center; }
.lead__note b{ color:var(--l-ink); font-weight:700; }

.lead__formerror{
  display:none; margin:12px 0 0; padding:11px 13px;
  background:#fdecea; border-radius:10px;
  font-size:13px; line-height:1.45; color:var(--l-error);
}
.lead__formerror.is-shown{ display:block; }

.lead__done{ display:none; text-align:center; padding:14px 4px 6px; }
.lead__done.is-shown{ display:block; }
.lead__done-mark{
  width:62px; height:62px; margin:0 auto 16px;
  border-radius:50%; background:var(--l-mint);
  display:grid; place-items:center;
}
.lead__done-mark svg{ width:30px; height:30px; stroke:var(--l-green-dark); }
.lead__done h3{ margin:0 0 8px; font-size:21px; font-weight:800; letter-spacing:-.01em; }
.lead__done p{ margin:0 0 20px; font-size:14px; line-height:1.55; color:var(--l-muted); }

.lead.is-sent .lead__form,
.lead.is-sent .lead__eyebrow,
.lead.is-sent .lead__title,
.lead.is-sent .lead__lede{ display:none; }

@media (max-width:560px){
  .lead{
    position:fixed;
    top:auto;
    right:0;
    bottom:0;
    left:0;
    width:auto;
    max-width:none;
    max-height:92dvh;
    margin:0;
    border-radius:20px 20px 0 0;
    overflow-x:hidden;
    padding-left:env(safe-area-inset-left);
    padding-right:env(safe-area-inset-right);
  }
  .lead__inner{
    padding:26px 16px calc(18px + env(safe-area-inset-bottom));
    max-height:92dvh;
  }
  .lead[open]{ animation:leadUp .3s cubic-bezier(.22,.9,.3,1); }
  @keyframes leadUp{ from{ transform:translateY(100%); } }
  .lead.is-closing{ animation:leadDown .22s ease forwards; }
  @keyframes leadDown{ to{ transform:translateY(100%); } }
  .lead__row{ grid-template-columns:1fr; gap:0; }
  .lead__title{ font-size:20px; }
  .lead__inner::before{
    content:""; display:block;
    width:40px; height:4px; margin:-12px auto 16px;
    background:#dfe6e1; border-radius:99px;
  }
}

@media (prefers-reduced-motion:reduce){
  .lead[open], .lead[open]::backdrop, .lead.is-closing{ animation:none; }
  .lead__submit, .lead__input, .lead__close{ transition:none; }
}
