/* ============ LEAD WIZARD (modal, 3 scenarios × 3 steps) ============ */
.ld { position: fixed; inset: 0; z-index: 120; display: flex; align-items: center; justify-content: center; padding: 19.5px; background: rgba(10,20,35,.55); backdrop-filter: blur(9.8px); -webkit-backdrop-filter: blur(9.8px); font-family: inherit; }
.ld[hidden] { display: none; }
.ld-card { position: relative; width: min(100%, 820px); max-height: calc(100svh - 39px); overflow: auto; padding: 26px 29.2px 29.2px; border-radius: 22.8px; background: #fff; color: #0f1b2d; box-shadow: 0 26px 65px -13px rgba(10,20,35,.45); }
.ld-x { position: absolute; top: 19.5px; right: 19.5px; width: 35.8px; height: 35.8px; border-radius: 50%; border: 0.8px solid rgba(15,27,45,.1); background: #f5f8fc; font-size: 19.5px; line-height: 1; color: #0f1b2d; cursor: pointer; }
.ld-x:hover { background: rgba(140,196,242,.3); }
.ld-tabs { display: flex; gap: 3.2px; margin-right: 45.5px; padding: 4.1px; border-radius: 13px; background: #f1f5fa; }
.ld-tab { flex: 1; height: 39px; border-radius: 9.8px; border: 0; background: transparent; font: inherit; font-size: 12.2px; font-weight: 500; color: #5d6b7e; cursor: pointer; transition: background 200ms, color 200ms; }
.ld-tab.on { background: #fff; color: #2f78bd; box-shadow: 0 3.2px 9.8px -3.2px rgba(15,27,45,.15); }
.ld-eye { margin-top: 22.8px; font-size: 10.6px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #3f8fd6; }
.ld-title { margin-top: 6.5px; font-size: 26px; line-height: 32.5px; font-weight: 600; letter-spacing: -0.03em; }
.ld-sub { margin-top: 6.5px; max-width: 598px; font-size: 13px; line-height: 19.5px; color: #5d6b7e; }
.ld-sep { margin: 19.5px 0 16.2px; border: 0; border-top: 0.8px solid rgba(15,27,45,.08); }
.ld-prog { display: flex; align-items: center; justify-content: space-between; }
.ld-step { font-size: 10.6px; font-weight: 600; letter-spacing: 0.08em; color: #8a96a7; }
.ld-bars { display: flex; gap: 4.9px; } .ld-bars i { width: 32.5px; height: 3.2px; border-radius: 13px; background: #e3eaf3; } .ld-bars i.on { background: #3f8fd6; }
.ld-q { margin-top: 19.5px; font-size: 13px; font-weight: 600; }
.ld-hint { margin-top: 3.2px; font-size: 10.6px; color: #8a96a7; }
.ld-chips { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9.8px; margin-top: 9.8px; }
.ld-chips.c3 { grid-template-columns: repeat(3, 1fr); }
.ld-chip { position: relative; display: flex; align-items: center; min-height: 52px; padding: 9.8px 35.8px 9.8px 13px; border-radius: 11.4px; border: 0.8px solid rgba(15,27,45,.12); background: #fff; font: inherit; font-size: 12.2px; font-weight: 500; text-align: left; color: #0f1b2d; cursor: pointer; transition: border-color 150ms, background 150ms, color 150ms; }
.ld-chip:hover { border-color: rgba(63,143,214,.55); }
.ld-chip.on { border-color: #3f8fd6; background: rgba(140,196,242,.16); color: #2f78bd; box-shadow: inset 0 0 0 0.8px #3f8fd6; }
.ld-chip.on::after { content: "✓"; position: absolute; right: 11.4px; top: 50%; transform: translateY(-50%); width: 19.5px; height: 19.5px; display: grid; place-items: center; border-radius: 50%; background: #3f8fd6; color: #fff; font-size: 10.6px; }
.ld-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 13px 16.2px; }
.ld-field { display: flex; flex-direction: column; margin-top: 19.5px; }
.ld-field label { font-size: 13px; font-weight: 600; }
.ld-field small { margin-top: 3.2px; font-size: 10.6px; color: #8a96a7; }
.ld-in { margin-top: 9.8px; height: 45.5px; padding: 0 14.6px; border-radius: 11.4px; border: 0.8px solid rgba(15,27,45,.14); background: #fff; font: inherit; font-size: 13px; color: #0f1b2d; outline: none; }
textarea.ld-in { height: 78px; padding: 11.4px 14.6px; resize: vertical; }
.ld-in:focus { border-color: #3f8fd6; box-shadow: 0 0 0 2.4px rgba(140,196,242,.4); }
.ld-file { margin-top: 9.8px; padding: 13px; border-radius: 11.4px; border: 0.8px dashed rgba(15,27,45,.2); background: #f8fafd; font-size: 12.2px; }
.ld-box { margin-top: 19.5px; padding: 3.2px 19.5px 19.5px; border-radius: 16.2px; background: #f5f8fc; border: 0.8px solid rgba(15,27,45,.06); }
.ld-consent { display: flex; gap: 11.4px; margin-top: 16.2px; padding: 13px 16.2px; border-radius: 13px; border: 0.8px solid rgba(15,27,45,.1); cursor: pointer; }
.ld-consent input { width: 16.2px; height: 16.2px; flex: none; margin-top: 1.6px; accent-color: #3f8fd6; cursor: pointer; }
.ld-consent b { display: block; font-size: 12.2px; font-weight: 600; }
.ld-consent span { display: block; margin-top: 3.2px; font-size: 10.6px; line-height: 16.2px; color: #8a96a7; }
.ld-consent a { color: #2f78bd; text-decoration: underline; text-underline-offset: 1.6px; }
.ld-consent.err { border-color: #e5484d; background: rgba(229,72,77,.05); }
.ld-nav { display: grid; grid-template-columns: 1fr 1.4fr; gap: 13px; margin-top: 19.5px; }
.ld-nav.only { grid-template-columns: 1fr 1.4fr; } .ld-nav.only .ld-back { visibility: hidden; }
.ld-back, .ld-next { height: 52px; border-radius: 13px; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.ld-back { border: 0.8px solid rgba(15,27,45,.14); background: #fff; color: #0f1b2d; }
.ld-next { border: 0; background: linear-gradient(135deg, #3f8fd6, #2f6fb8); color: #fff; transition: opacity 200ms; }
.ld-next:disabled { background: #dfe8f2; color: #8a9ab0; cursor: not-allowed; }
.ld-call { display: inline-flex; align-items: center; height: 35.8px; margin-top: 9.8px; padding: 0 14.6px; border-radius: 11.4px; border: 0.8px solid rgba(63,143,214,.4); color: #2f78bd; font-weight: 600; font-size: 12.2px; }
.ld-done { padding: 32.5px 0 13px; text-align: center; }
.ld-done i { display: grid; place-items: center; width: 58.5px; height: 58.5px; margin: 0 auto; border-radius: 50%; background: rgba(140,196,242,.3); color: #2f78bd; font-size: 26px; font-style: normal; }
.ld-done h3 { margin-top: 16.2px; font-size: 22.8px; font-weight: 600; letter-spacing: -0.02em; }
.ld-done p { margin: 6.5px auto 0; max-width: 416px; color: #5d6b7e; }
@media (width <= 900px) { .ld-chips { grid-template-columns: 1fr 1fr; } .ld-chips.c3 { grid-template-columns: 1fr 1fr; } }
@media (width <= 580px) {
  .ld { padding: 0; align-items: stretch; }
  .ld-card { max-height: 100svh; border-radius: 0; padding: 16.2px 13px 19.5px; }
  .ld-x { top: 13px; right: 13px; width: 32.5px; height: 32.5px; }
  .ld-tabs { margin-right: 39px; } .ld-tab { height: 35.8px; font-size: 10.6px; }
  .ld-title { font-size: 19.5px; line-height: 24.4px; }
  .ld-chips, .ld-chips.c3, .ld-grid2 { grid-template-columns: 1fr; }
  .ld-chip { min-height: 42.2px; }
  .ld-nav { grid-template-columns: 1fr 1.5fr; }
}
/* footer form consent */
.ft-consent { display: flex; align-items: flex-start; gap: 0.5rem; margin-top: 0.625rem; font-size: 0.8125rem; line-height: 1.125rem; color: rgba(10,11,9,.75); cursor: pointer; }
.ft-consent input { width: 1rem; height: 1rem; flex: none; margin-top: 0.0625rem; accent-color: #2f78bd; }
.ft-consent a { color: inherit; text-decoration: underline; text-underline-offset: 0.125rem; }
/* room for the consent line inside the blue request card */
.ft-cta { height: 20.75rem !important; }
@media (width <= 1200px) { .ft-cta { height: 18.75rem !important; } }
@media (width <= 900px) { .ft-cta { height: 19.25rem !important; } }
@media (width <= 580px) { .ft-cta { height: 23rem !important; } }

/* ===== v2: brand look + motion ===== */
.ld { background: radial-gradient(1200px 600px at 20% 0%, rgba(140,196,242,.35), transparent 60%), rgba(10,20,35,.55); }
.ld-card { padding: 0 0 26px; overflow-x: hidden; border: 1px solid rgba(255,255,255,.6); box-shadow: 0 40px 90px -30px rgba(10,30,60,.55), 0 0 0 1px rgba(15,27,45,.04); }
.ld-head { position: relative; padding: 22px 28px 20px; background: linear-gradient(135deg, #eaf4fd 0%, #f7fbff 55%, #ffffff 100%); border-bottom: 1px solid rgba(15,27,45,.06); overflow: hidden; }
.ld-head::before { content: ""; position: absolute; right: -60px; top: -80px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(140,196,242,.55), transparent 65%); filter: blur(6px); animation: ldGlow 6s ease-in-out infinite alternate; pointer-events: none; }
.ld-head > * { position: relative; }
.ld-x { top: 18px; right: 18px; width: 38px; height: 38px; font-size: 20px; background: rgba(255,255,255,.8); transition: transform 200ms, background 200ms; }
.ld-x:hover { transform: rotate(90deg); }
.ld-tabs { margin-right: 48px; padding: 4px; border-radius: 14px; background: rgba(255,255,255,.7); box-shadow: inset 0 0 0 1px rgba(15,27,45,.06); }
.ld-tab { height: 38px; border-radius: 10px; font-size: 13.5px; }
.ld-tab.on { background: linear-gradient(135deg, #3f8fd6, #2f6fb8); color: #fff; box-shadow: 0 6px 16px -6px rgba(47,111,184,.7); }
.ld-eye { margin-top: 18px; font-size: 11px; }
.ld-title { margin-top: 4px; font-size: 26px; line-height: 32px; }
.ld-sub { margin-top: 6px; font-size: 14px; line-height: 21px; }
.ld-call { height: 34px; margin-top: 12px; font-size: 13px; background: #fff; }
.ld-sep { display: none; }
.ld-prog { margin: 18px 28px 0; }
.ld-bars i { width: 46px; height: 4px; position: relative; overflow: hidden; }
.ld-bars i.on::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #8cc4f2, #3f8fd6); animation: ldFill 500ms ease both; }
.ld-bars i.on { background: #e3eaf3; }
.ld-body, .ld-nav { margin-left: 28px; margin-right: 28px; }
.ld-q { margin-top: 18px; font-size: 14px; }
.ld-hint, .ld-field small { font-size: 12px; }
.ld-chips { gap: 10px; margin-top: 10px; }
.ld-chip { min-height: 48px; padding: 10px 36px 10px 14px; border-radius: 12px; font-size: 13.5px; transition: transform 160ms, border-color 160ms, background 160ms, box-shadow 160ms; }
.ld-chip:hover { transform: translateY(-2px); box-shadow: 0 8px 18px -10px rgba(47,111,184,.45); }
.ld-chip.on { background: linear-gradient(135deg, rgba(140,196,242,.22), rgba(140,196,242,.08)); }
.ld-chip.on::after { right: 12px; width: 20px; height: 20px; font-size: 11px; animation: ldPop 260ms cubic-bezier(.3,1.6,.5,1) both; }
.ld-field { margin-top: 16px; } .ld-field label { font-size: 14px; }
.ld-in { margin-top: 8px; height: 46px; padding: 0 14px; border-radius: 12px; font-size: 14.5px; transition: border-color 160ms, box-shadow 160ms; }
textarea.ld-in { height: 76px; padding: 12px 14px; }
select.ld-in { appearance: none; -webkit-appearance: none; padding-right: 40px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5' fill='none' stroke='%233f8fd6' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 14px center; cursor: pointer; }
.ld-grid2 { gap: 0 16px; }
.ld-file { margin-top: 8px; padding: 14px; border-radius: 12px; font-size: 13px; color: #5d6b7e; cursor: pointer; transition: border-color 160ms, background 160ms; }
.ld-file:hover { border-color: #3f8fd6; background: rgba(140,196,242,.1); }
.ld-file::file-selector-button { margin-right: 12px; padding: 8px 14px; border: 0; border-radius: 9px; background: linear-gradient(135deg, #3f8fd6, #2f6fb8); color: #fff; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.ld-box { margin-top: 16px; padding: 2px 18px 18px; border-radius: 16px; }
.ld-consent { margin-top: 14px; padding: 12px 14px; border-radius: 12px; }
.ld-consent b { font-size: 13.5px; } .ld-consent span { font-size: 12px; line-height: 17px; }
.ld-consent.err { animation: ldShake 400ms; }
.ld-nav { gap: 12px; margin-top: 20px; }
.ld-back, .ld-next { height: 50px; border-radius: 14px; font-size: 14.5px; }
.ld-next { position: relative; overflow: hidden; box-shadow: 0 12px 24px -12px rgba(47,111,184,.8); transition: transform 160ms, box-shadow 160ms, opacity 200ms; }
.ld-next:not(:disabled):hover { transform: translateY(-1px); box-shadow: 0 16px 30px -12px rgba(47,111,184,.9); }
.ld-next:not(:disabled)::after { content: ""; position: absolute; top: 0; bottom: 0; width: 40%; left: -50%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent); animation: ldShine 2.6s ease-in-out infinite; }
.ld-next:disabled { box-shadow: none; }
.ld-done { padding: 40px 28px 10px; }
.ld-done i { width: 72px; height: 72px; background: linear-gradient(135deg, #8cc4f2, #3f8fd6); color: #fff; font-size: 32px; box-shadow: 0 0 0 0 rgba(63,143,214,.5); animation: ldPop 500ms cubic-bezier(.3,1.6,.5,1) both, ldRing 1.6s ease-out 400ms infinite; }
.ld-done h3 { font-size: 24px; animation: ldUp 500ms 150ms both; } .ld-done p { font-size: 14.5px; animation: ldUp 500ms 250ms both; }
/* motion */
.ld.ld-opening { animation: ldFade 260ms ease both; }
.ld.ld-opening .ld-card { animation: ldIn 420ms cubic-bezier(.2,.9,.25,1.1) both; }
.ld-body > *, .ld-body .ld-chip { animation: ldUp 380ms cubic-bezier(.2,.8,.2,1) both; }
.ld-body .ld-chip:nth-child(2) { animation-delay: 30ms; } .ld-body .ld-chip:nth-child(3) { animation-delay: 60ms; } .ld-body .ld-chip:nth-child(4) { animation-delay: 90ms; } .ld-body .ld-chip:nth-child(n+5) { animation-delay: 120ms; }
.ld-body > :nth-child(2) { animation-delay: 60ms; } .ld-body > :nth-child(3) { animation-delay: 120ms; } .ld-body > :nth-child(n+4) { animation-delay: 160ms; }
.ld-head .ld-eye, .ld-head .ld-title, .ld-head .ld-sub { animation: ldUp 400ms cubic-bezier(.2,.8,.2,1) both; } .ld-head .ld-title { animation-delay: 40ms; } .ld-head .ld-sub { animation-delay: 80ms; }
@keyframes ldFade { from { opacity: 0; } }
@keyframes ldIn { from { opacity: 0; transform: translateY(24px) scale(.96); } }
@keyframes ldUp { from { opacity: 0; transform: translateY(10px); } }
@keyframes ldPop { from { transform: translateY(-50%) scale(0); } }
.ld-done i { --s: 1; } @keyframes ldRing { to { box-shadow: 0 0 0 18px rgba(63,143,214,0); } }
@keyframes ldFill { from { transform: translateX(-100%); } }
@keyframes ldShine { 0%, 60% { left: -50%; } 100% { left: 130%; } }
@keyframes ldShake { 25% { transform: translateX(-6px); } 50% { transform: translateX(6px); } 75% { transform: translateX(-3px); } }
@keyframes ldGlow { to { transform: translate(-30px, 20px) scale(1.15); } }
.ld-done i { animation-name: ldPopC, ldRing; } @keyframes ldPopC { from { transform: scale(0); } }
@media (prefers-reduced-motion: reduce) { .ld *, .ld { animation: none !important; transition: none !important; } }
@media (width <= 580px) {
  .ld-card { padding-bottom: 20px; } .ld-head { padding: 16px 16px 16px; } .ld-x { top: 14px; right: 14px; }
  .ld-tabs { margin-right: 44px; } .ld-tab { height: 36px; font-size: 12px; }
  .ld-title { font-size: 21px; line-height: 27px; } .ld-prog, .ld-body, .ld-nav { margin-left: 16px; margin-right: 16px; }
}
.ld-head > .ld-x { position: absolute; left: auto; z-index: 3; }

/* ===== v3: visual choice cards ===== */
.ld-chip { gap: 12px; text-align: left; }
.ld-chip.on::after { content: none; }
.ld-ct { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.ld-ct b { font-weight: 600; }
.ld-ct em { font-style: normal; font-size: 12px; line-height: 1.35; font-weight: 400; color: #6a7789; }
.ld-tick { position: absolute; right: 12px; top: 12px; width: 20px; height: 20px; border-radius: 50%; border: 1.5px solid rgba(15,27,45,.16); background: #fff; transition: all 200ms; }
.ld-chip.on .ld-tick { border-color: #3f8fd6; background: #3f8fd6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3.5 7.3 6 9.6l4.5-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat; animation: ldPop 260ms cubic-bezier(.3,1.6,.5,1) both; }
.ld-ib { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: linear-gradient(135deg, #eaf4fd, #f6faff); color: #2f78bd; transition: transform 260ms cubic-bezier(.3,1.5,.5,1), background 200ms, color 200ms; }
.ld-ico { width: 21px; height: 21px; }
.ld-chip:hover .ld-ib { transform: scale(1.08) rotate(-4deg); }
.ld-chip.on .ld-ib { background: linear-gradient(135deg, #4a9be0, #2f6fb8); color: #fff; box-shadow: 0 8px 16px -8px rgba(47,111,184,.7); }
/* big cards (step 1 «что требуется») */
.ld-chips.big .ld-chip { flex-direction: column; align-items: flex-start; justify-content: flex-start; min-height: 132px; padding: 16px 16px 14px; gap: 14px; }
.ld-chips.big .ld-ib { width: 46px; height: 46px; border-radius: 14px; }
.ld-chips.big .ld-ico { width: 25px; height: 25px; }
.ld-chips.big .ld-ct b { font-size: 14.5px; }
.ld-chips.big .ld-chip::before { content: ""; position: absolute; inset: 0; border-radius: inherit; background: radial-gradient(160px 90px at 85% 0%, rgba(140,196,242,.35), transparent 70%); opacity: 0; transition: opacity 250ms; pointer-events: none; }
.ld-chips.big .ld-chip:hover::before, .ld-chips.big .ld-chip.on::before { opacity: 1; }
/* segmented (rooms) */
.ld-chips.seg { grid-template-columns: repeat(4, 1fr); gap: 0; padding: 4px; margin-top: 8px; border-radius: 13px; background: #eef3f9; }
.ld-chips.seg .ld-chip { min-height: 38px; padding: 0 6px; justify-content: center; text-align: center; border: 0; background: transparent; box-shadow: none; transform: none; font-size: 13.5px; }
.ld-chips.seg .ld-chip.on { background: #fff; color: #2f78bd; box-shadow: 0 4px 12px -6px rgba(15,40,80,.35); }
.ld-chips.seg .ld-tick { display: none; }
/* area: number + slider */
.ld-rangew { position: relative; }
.ld-rangew .ld-in { width: 100%; padding-right: 44px; }
.ld-unit { position: absolute; right: 14px; bottom: 14px; font-size: 13px; color: #8a96a6; pointer-events: none; }
.ld-range { width: 100%; margin-top: 12px; height: 4px; -webkit-appearance: none; appearance: none; border-radius: 4px; background: linear-gradient(90deg, #3f8fd6, #8cc4f2); outline: none; cursor: pointer; }
.ld-range::-webkit-slider-thumb { -webkit-appearance: none; width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 2px solid #3f8fd6; box-shadow: 0 3px 10px rgba(47,111,184,.4); transition: transform 150ms; }
.ld-range::-webkit-slider-thumb:hover { transform: scale(1.15); }
.ld-range::-moz-range-thumb { width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 2px solid #3f8fd6; }
/* dropzone */
.ld-drop { position: relative; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-top: 8px; padding: 16px 18px; border-radius: 14px; border: 1.5px dashed rgba(63,143,214,.4); background: linear-gradient(135deg, rgba(140,196,242,.12), rgba(255,255,255,.6)); font-size: 13px; color: #5d6b7e; cursor: pointer; transition: border-color 200ms, background 200ms, transform 200ms; }
.ld-drop .ld-ico { width: 26px; height: 26px; color: #3f8fd6; flex: none; transition: transform 300ms; }
.ld-drop b { color: #0f1b2d; font-weight: 600; }
.ld-drop:hover, .ld-drop.over { border-color: #3f8fd6; background: rgba(140,196,242,.22); }
.ld-drop:hover .ld-ico, .ld-drop.over .ld-ico { transform: translateY(-3px); }
.ld-drop.over { transform: scale(1.01); }
.ld-drop input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.ld-files { flex-basis: 100%; font-style: normal; font-size: 12.5px; color: #2f78bd; font-weight: 500; }
.ld-files:empty { display: none; }
/* summary of earlier answers */
.ld-sum { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-bottom: 14px; padding: 10px 12px; border-radius: 12px; background: #f3f7fc; }
.ld-sum span { margin-right: 4px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #8a96a6; font-weight: 600; }
.ld-sum i { font-style: normal; font-size: 12.5px; padding: 4px 10px; border-radius: 99px; background: #fff; color: #2f78bd; box-shadow: 0 1px 0 rgba(15,27,45,.06); }
/* messenger colours */
.ld-chips.via .ld-ib { width: 32px; height: 32px; border-radius: 50%; }
.ld-chips.via .ld-ico { width: 17px; height: 17px; }
.ld-chips.via .i-wa { background: #e6f8ec; color: #25d366; } .ld-chips.via .on .i-wa { background: #25d366; color: #fff; }
.ld-chips.via .i-tg { background: #e6f4fb; color: #2aa3e0; } .ld-chips.via .on .i-tg { background: #2aa3e0; color: #fff; }
.ld-chips.via .i-max { background: #efeafd; color: #7b5cf0; } .ld-chips.via .on .i-max { background: #7b5cf0; color: #fff; }
@media (width <= 900px) { .ld-chips.big { grid-template-columns: 1fr 1fr; } }
@media (width <= 580px) {
  .ld-chips.big, .ld-chips.via { grid-template-columns: 1fr 1fr; }
  .ld-chips.big .ld-chip { min-height: 118px; padding: 13px; }
  .ld-chips.big .ld-ct em { font-size: 11.5px; }
  .ld-chips.seg { grid-template-columns: repeat(4, 1fr); }
  .ld-chips.seg .ld-chip { min-height: 36px; font-size: 12.5px; }
}
/* steps 2–3: compact so the card fits one screen */
.ld-compact .ld-head { padding-top: 16px; padding-bottom: 14px; }
.ld-compact .ld-title { font-size: 22px; line-height: 1.2; }
.ld-compact .ld-eye { margin-bottom: 4px; }
.ld-compact .ld-call { display: none; }
.ld-compact .ld-body { gap: 12px; }
.ld-compact .ld-sum { margin-bottom: 4px; padding: 7px 10px; }
.ld-compact .ld-q, .ld-compact .ld-field > label { margin-top: 0; }
.ld-compact .ld-chips:not(.big) .ld-chip { min-height: 46px; padding-top: 7px; padding-bottom: 7px; }
.ld-compact .ld-ib { width: 32px; height: 32px; border-radius: 10px; }
.ld-compact .ld-drop { padding: 11px 16px; }
.ld-compact .ld-range { margin-top: 10px; }
.ld-card { max-height: calc(100vh - 32px); overflow-y: auto; }
/* brighter MAX */
.ld-chips.via .i-max { background: linear-gradient(135deg, #e4dcff, #f1e6ff); color: #6b3cff; }
.ld-chips.via .i-max .ld-ico g { stroke-width: 2.2; }
.ld-chips.via .on .i-max { background: linear-gradient(135deg, #7b5cff, #b04dff); color: #fff; }
/* service: urgency colours */
.ld-chip.u-hot .ld-ib { background: #fdecec; color: #e0453a; } .ld-chip.u-hot.on { border-color: #e0453a; box-shadow: inset 0 0 0 0.8px #e0453a; background: #fff6f5; color: #c8372d; } .ld-chip.u-hot.on .ld-ib { background: linear-gradient(135deg, #f26a5f, #d8382d); color: #fff; } .ld-chip.u-hot.on .ld-tick { background-color: #e0453a; border-color: #e0453a; }
.ld-chip.u-mid .ld-ib { background: #fff3e2; color: #e58a12; } .ld-chip.u-mid.on { border-color: #e58a12; box-shadow: inset 0 0 0 0.8px #e58a12; background: #fffaf2; color: #b86b06; } .ld-chip.u-mid.on .ld-ib { background: linear-gradient(135deg, #f6aa3c, #e08510); color: #fff; } .ld-chip.u-mid.on .ld-tick { background-color: #e58a12; border-color: #e58a12; }
.ld-compact textarea.ld-in { height: 54px; }
.ld-compact .ld-grid2 .ld-drop { min-height: 54px; padding: 8px 14px; gap: 10px; font-size: 12.5px; }
.ld-compact .ld-q + .ld-hint { margin-top: 2px; }
/* object tab */
.ld-chips.tiles { grid-template-columns: repeat(5, 1fr); }
.ld-chips.tiles .ld-chip { flex-direction: column; align-items: flex-start; justify-content: flex-start; min-height: 108px; padding: 14px 12px 12px; gap: 12px; }
.ld-chips.tiles .ld-ib { width: 42px; height: 42px; border-radius: 13px; }
.ld-chips.tiles .ld-ico { width: 23px; height: 23px; }
.ld-chips.tiles .ld-ct b { font-size: 13px; line-height: 1.3; }
.ld-chips.via.c5 { grid-template-columns: repeat(5, 1fr); }
.ld-chips.via .i-mail { background: #eef2f7; color: #4b5b70; } .ld-chips.via .on .i-mail { background: #4b5b70; color: #fff; }
.ld-iw { position: relative; } .ld-iw .ld-ico { position: absolute; left: 14px; top: 50%; margin-top: 4px; transform: translateY(-50%); width: 18px; height: 18px; color: #8a96a6; pointer-events: none; }
.ld-iw .ld-in { width: 100%; padding-left: 42px; }
.ld-box > .ld-field + .ld-grid2, .ld-box > .ld-grid2 + .ld-field { margin-top: 10px; }
@media (width <= 900px) { .ld-chips.tiles { grid-template-columns: repeat(3, 1fr); } .ld-chips.via.c5 { grid-template-columns: repeat(3, 1fr); } }
@media (width <= 580px) { .ld-chips.tiles, .ld-chips.via.c5 { grid-template-columns: 1fr 1fr; } .ld-chips.tiles .ld-chip { min-height: 96px; } }
.ld-box > .ld-grid2 + .ld-grid2 { margin-top: 10px; }
.ld-chips.via.c5 .ld-chip { padding-right: 28px; padding-left: 10px; gap: 8px; }
.ld-chips.via.c5 .ld-tick { right: 8px; top: 50%; margin-top: -9px; width: 18px; height: 18px; }
