:root{color-scheme:dark}
/* Personal name must fit beside the call, WhatsApp and menu controls. */
@media(max-width:600px){
  .i24-header .i24-brand{width:auto;min-width:0;gap:8px;white-space:normal}
  .i24-header .i24-brand>span:last-child{max-width:108px;white-space:normal;font-size:12px;line-height:1.3;letter-spacing:.04em}
  .i24-header .i24-mark{width:32px;height:32px}
}
html{scroll-behavior:smooth;background:#0b100d}
body{min-width:0;margin:0;background:#0b100d}
body.is-modal-open{overflow:hidden}
main{display:block}
.i24-icon-sprite{position:absolute;inline-size:0;block-size:0;overflow:hidden}

.i24-site{width:100%;max-width:100%;overflow:clip}
.i24-shell,.i24-hero-copy,.i24-hero-form-wrap{min-width:0}
.i24-display--spaced{margin-top:18px}

.i24-hero-copy{display:flex;flex-direction:column;align-items:flex-start}
.i24-hero h1{width:100%;margin-bottom:clamp(24px,2.1vw,34px)}
.i24-hero-lead{margin-top:0}
.i24-hero-benefits{margin-top:clamp(30px,3vw,42px)}

/* На первых двухколоночных ширинах сохраняем исходную композицию,
   но не позволяем самой длинной строке приблизиться к форме вплотную. */
@media (min-width:1061px) and (max-width:1120px){
  .i24-hero h1{font-size:clamp(62px,5.9vw,68px)}
}

.i24-services .i24-kicker:before{background:#d9ff43;box-shadow:0 0 12px rgba(217,255,67,.55);opacity:1}

.i24-messenger,.i24-mobile-action{overflow:hidden;border-radius:8px}
.i24-messenger :is(img,svg),.i24-mobile-action :is(img,svg){display:block;width:20px;height:20px;object-fit:contain}
.i24-mobile-action :is(img,svg){width:18px;height:18px}
.i24-messenger-max,.i24-mobile-action-max{padding:0;border:0;background:transparent}
.i24-messenger-max :is(img,svg),.i24-mobile-action-max :is(img,svg){width:100%;height:100%;object-fit:cover}
.i24-messenger-wa,.i24-mobile-action-wa{background:#25d366;border-color:#25d366}

.i24-contact-shell .i24-portrait{
  background-image:url("lawyer-portrait.webp");
  background-position:center;
  background-size:contain;
  background-color:#0b100d;
  width:100%;
  min-height:0;
  aspect-ratio:1122 / 1402;
  align-self:center;
}
.i24-contact-shell .i24-portrait:before,
.i24-contact-shell .i24-portrait:after{display:none}

.i24-form-status{min-height:18px}
.i24-form-status[data-state="error"]{color:#ff9b92}
.i24-form-status[data-state="success"]{color:#d9ff43}
.i24-upload-note{display:grid;gap:5px;margin-top:14px;padding:12px 0;border-top:1px solid rgba(255,255,255,.10);border-bottom:1px solid rgba(255,255,255,.10);color:#a5aea6;font-size:11px;line-height:1.5}
.i24-upload-note strong{color:#d7ddd7;font-size:12px;font-weight:700}
.i24-upload.is-disabled{cursor:not-allowed;opacity:.72}
.i24-upload.is-disabled .i24-upload-btn{color:#a5aea6;border-color:#465048;pointer-events:none}
.i24-field input[aria-invalid="true"],.i24-field textarea[aria-invalid="true"]{border-bottom-color:#ff7b72}
.i24-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
html:not(.i24-forms-js) form[data-i24-form] button[type="submit"]{display:none}
html:not(.i24-forms-js) form[data-i24-form] .i24-form-status:before{content:"Для отправки заявки включите JavaScript или воспользуйтесь телефоном в шапке.";display:block;color:#a5aea6}

.i24-footer-details{display:grid!important;gap:5px!important;justify-items:start;text-align:left}
.i24-footer-details strong{color:#c7cec8;font-size:12px}
.i24-footer a{min-height:24px;display:flex;align-items:center}

/* Исходные кривые остаются дорогой, а HTML-маркер держится колёсами на линии.
   Весь маршрутный контейнер лежит ниже контента: машина проходит под элементами,
   не исчезая из движения. Нативные SVG-машины — fallback без JavaScript. */
.i24-route-motion-js .i24-route-vehicle{display:none}
.i24-hero-route .i24-route-main,.i24-route-bg .i24-route-main{stroke:rgba(217,255,67,.21);stroke-width:1.2;stroke-dasharray:12 16}
.i24-hero-route .i24-route-soft,.i24-route-bg .i24-route-soft{stroke:rgba(217,255,67,.16);stroke-width:.95;stroke-dasharray:5 14}
.i24-route-truck{position:absolute;z-index:1;left:0;top:0;width:28px;height:16px;pointer-events:none;will-change:transform;transform-origin:50% 50%;filter:drop-shadow(0 0 6px rgba(217,255,67,.34))}
.i24-route-bg .i24-route-truck{width:24px;height:14px;filter:drop-shadow(0 0 4px rgba(217,255,67,.26))}
.i24-route-truck[data-route-truck="1"]{filter:drop-shadow(0 0 4px rgba(217,255,67,.22))}
.i24-route-bg .i24-route-truck[data-route-truck="1"]{filter:drop-shadow(0 0 3px rgba(217,255,67,.16))}
.i24-route-truck svg{display:block;width:100%;height:100%;overflow:visible;transform-origin:center}
.i24-route-truck-body,.i24-route-truck-cab{fill:#d9ff43}
.i24-route-truck-top-window{fill:#0e130f}
.i24-route-truck-top-roof{fill:none;stroke:rgba(14,19,15,.72);stroke-width:1}
.i24-route-truck-top-cargo{fill:none;stroke:rgba(14,19,15,.72);stroke-width:1.2;stroke-linecap:round}
.i24-route-truck-top-hitch{fill:#0e130f}
.i24-route-truck-top-seam{fill:none;stroke:#0e130f;stroke-width:1.15;stroke-linecap:round}
.i24-route-truck-top-mirrors{fill:#d9ff43}
.i24-route-truck-top-tires{fill:#0e130f}

/* Отступ между коротким маркером раздела и заголовком увеличен намеренно:
   в исходнике 18 px, на живом макете текст визуально слипался. */
.i24-situations .i24-display{margin-top:26px}

/* Поля сохраняют подчёркивание как единственный индикатор фокуса. */
.i24-site .i24-field :is(input,textarea):focus,
.i24-site .i24-field :is(input,textarea):focus-visible{border-bottom-color:var(--acid);outline:none}

/* В модальной форме кнопка не должна касаться линии телефонного поля. */
.i24-modal form[data-i24-form]>.i24-btn{margin-top:18px}

@media(max-width:1060px){
  .i24-mobile-action{width:40px;height:40px}
  .i24-mobile-action :is(img,svg){width:22px;height:22px}
  .i24-mobile-action-max :is(img,svg){width:100%;height:100%}
}

.i24-site :is(a,button,summary):focus-visible{outline:2px solid #d9ff43;outline-offset:3px}

@media(max-width:780px){
  .i24-hero h1{margin-bottom:24px}
  .i24-hero-lead{margin-top:0}
  .i24-mobile-action{width:40px;height:40px}
  .i24-footer a,.i24-footer span{font-size:12px;line-height:1.65}
  .i24-route-truck,.i24-route-bg .i24-route-truck{width:26px;height:14px;filter:drop-shadow(0 0 1.5px rgba(217,255,67,.16))}
  .i24-route-truck[data-route-truck="1"],.i24-route-bg .i24-route-truck[data-route-truck="1"]{filter:drop-shadow(0 0 1px rgba(217,255,67,.08))}
  .i24-hero-route .i24-route-soft,.i24-route-bg .i24-route-soft{stroke:rgba(217,255,67,.17)}
}

@media(max-width:380px){.i24-brand>span:last-child{display:none}}

@media(max-width:360px){
  .i24-site{--gutter:16px}
  .i24-hero h1{font-size:clamp(32px,10.6vw,38px);letter-spacing:-.045em}
  .i24-header-inner{grid-template-columns:minmax(0,1fr) auto auto;gap:5px}
  .i24-menu{width:42px;height:42px;padding:11px}
  .i24-mobile-action{width:40px;height:40px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .i24-route-truck{will-change:auto}
}

/* 2026-09-10: approved first-screen comparison. Other forms retain their layout. */
.i24-hero-inner{grid-template-columns:minmax(0,1.36fr) minmax(0,1fr);gap:56px;padding-top:60px;padding-bottom:74px}
.i24-hero h1{font-size:clamp(58px,6.5vw,96px);line-height:.98;letter-spacing:-.06em;margin-bottom:44px}
.i24-hero-lead{font-size:20px;line-height:1.5;max-width:760px}
.i24-hero-benefits{margin-top:52px}
.i24-hero-benefit{font-size:13px;padding-right:24px;column-gap:12px}
.i24-hero-benefit+.i24-hero-benefit{padding-left:24px}
.i24-hero .i24-form-card{padding:32px 34px 30px;border:1px solid rgba(255,255,255,.20);border-radius:12px;background:rgba(18,25,20,.38);box-shadow:none;overflow:visible}
.i24-hero .i24-form-card h2{margin-top:17px;font-size:35px;line-height:1.08;letter-spacing:-.04em}
.i24-hero .i24-form-card .i24-form-note{margin-top:18px;font-size:16px;line-height:1.5}
.i24-hero .i24-form-row{gap:20px}
.i24-hero .i24-field{margin-top:24px}
.i24-hero .i24-field span{font-size:11px;margin-bottom:9px}
.i24-hero .i24-field input,.i24-hero .i24-field textarea{border:1px solid rgba(167,181,169,.33);border-radius:9px;background:rgba(255,255,255,.016);padding:12px 14px;font-size:15px}
.i24-hero .i24-field input{height:48px}
.i24-hero .i24-field textarea{min-height:96px;line-height:1.5;resize:none}
.i24-site .i24-hero .i24-field :is(input,textarea):focus{border-color:var(--acid);box-shadow:0 0 0 1px rgba(217,255,67,.1)}
.i24-site .i24-hero .i24-field :is(input,textarea)[aria-invalid="true"]{border-color:#ff7b72;box-shadow:none}
.i24-hero .i24-upload{margin-top:20px;padding:15px 16px;border:1px solid rgba(167,181,169,.33);border-radius:9px}
.i24-hero .i24-upload-top{gap:12px}
.i24-hero .i24-upload-copy{position:relative;padding-left:34px}
.i24-hero .i24-hero-upload-icon{position:absolute;left:0;top:5px;width:23px;height:23px;color:var(--acid)}
.i24-hero .i24-upload-copy b{font-size:12px}
.i24-hero .i24-upload-copy small{font-size:10px;line-height:1.4;margin-top:5px}
.i24-hero .i24-upload-btn{min-height:38px;border-radius:7px;font-size:11px;padding:0 12px}
.i24-hero .i24-upload:focus-within{outline:2px solid var(--acid);outline-offset:3px}
.i24-hero .i24-form-card>.i24-btn{display:flex;width:100%;min-height:54px;border-radius:9px;margin-top:24px;font-size:16px;gap:16px}
.i24-hero .i24-form-card>.i24-btn>span{border-left:0;padding-left:0;min-width:16px}
.i24-hero .i24-consent{margin-top:14px;font-size:10px;line-height:1.5}
.i24-hero .i24-form-status:empty{min-height:0;margin:0}

@media(min-width:1061px) and (max-width:1240px){
  .i24-hero-inner{gap:36px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
  .i24-hero h1{font-size:clamp(58px,6.25vw,78px)}
  .i24-hero .i24-form-card{padding:28px 24px}
  .i24-hero .i24-form-card h2{font-size:31px}
  .i24-hero-benefit{padding-right:16px}
  .i24-hero-benefit+.i24-hero-benefit{padding-left:16px}
  .i24-hero .i24-upload-top{flex-wrap:wrap}
}
@media(max-width:1060px){
  .i24-hero-inner{grid-template-columns:minmax(0,1fr);gap:42px;padding-top:46px;padding-bottom:62px}
  .i24-hero h1{font-size:clamp(58px,8.6vw,88px);margin-bottom:30px}
  .i24-hero-lead{font-size:18px}
  .i24-hero-benefits{margin-top:32px}
  .i24-hero .i24-form-card h2{max-width:none}
}
@media(max-width:780px){
  .i24-hero h1{font-size:clamp(32px,9.2vw,64px);letter-spacing:-.055em;margin-bottom:26px}
  .i24-hero-lead{font-size:16px;line-height:1.6}
  .i24-hero-benefit,.i24-hero-benefit+.i24-hero-benefit{padding:0;border:0;font-size:12px}
  .i24-hero .i24-form-card{padding:26px 22px}
  .i24-hero .i24-form-card h2{font-size:30px}
  .i24-hero .i24-form-card .i24-form-note{font-size:14px;line-height:1.55}
  .i24-hero .i24-form-row{grid-template-columns:minmax(0,1fr);gap:0}
  .i24-hero .i24-field{margin-top:20px;min-width:0}
  .i24-hero .i24-field input,.i24-hero .i24-field textarea{font-size:16px}
  .i24-hero .i24-upload{padding:14px}
  .i24-hero .i24-upload-top{display:flex;flex-wrap:wrap;gap:12px}
  .i24-hero .i24-upload-copy{flex:1 1 210px;min-width:0}
  .i24-hero .i24-upload-btn{min-height:44px;margin:0 0 0 34px;font-size:12px}
  .i24-hero .i24-consent{font-size:11px}
}
@media(max-width:380px){
  .i24-hero .i24-form-card{padding:24px 16px}
  .i24-hero .i24-form-card h2{font-size:27px}
}
/* Preuploads: a check mark means server receipt, not merely file selection. */
.i24-upload-name li{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:5px 0}
.i24-upload-name li:before{display:none}
.i24-upload-file-info{display:grid;gap:2px;min-width:0}
.i24-upload-file-state{color:#aeb7b0;font-size:11px;line-height:1.4}
.i24-upload-name li[data-upload-state="uploaded"] .i24-upload-file-state{color:var(--acid,#d6ff3c)}
.i24-upload-name li[data-upload-state="error"] .i24-upload-file-state{color:#ffb19b}
.i24-upload-remove{min-width:44px;min-height:28px}
.i24-upload-remove:disabled{cursor:default;opacity:.5;text-decoration:none}
.i24-attachment-notice{margin-top:20px;padding:14px 16px;border:1px solid #776b41;color:#f2ddb0;font-size:15px;line-height:1.5;overflow-wrap:anywhere}

.i24-cookie-consent {
  box-sizing: border-box;
  position: fixed;
  z-index: 60;
  left: max(24px, env(safe-area-inset-left));
  bottom: max(24px, env(safe-area-inset-bottom));
  width: min(380px, calc(100vw - 48px));
  max-height: calc(100dvh - 48px);
  overflow: auto;
  overscroll-behavior: contain;
  padding: 8px;
  border: 1px solid rgba(238, 242, 237, .12);
  border-radius: 12px;
  background: #151a16;
  color: #eef2ed;
  box-shadow: 0 16px 42px rgba(0, 0, 0, .38);
  font: 13px/1.45 Arial, Helvetica, sans-serif;
  scrollbar-width: thin;
  scrollbar-color: #59645b transparent;
}

.i24-cookie-consent[hidden] {
  display: none !important;
}

.i24-cookie-consent * {
  box-sizing: border-box;
}

.i24-cookie-consent__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.i24-cookie-consent__text {
  margin: 0;
  color: #d1d7d2;
}

.i24-cookie-consent__text a {
  color: #eef2ed;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: rgba(238, 242, 237, .5);
  text-underline-offset: 3px;
}

.i24-cookie-consent__text a:hover {
  text-decoration-color: currentColor;
}

.i24-cookie-consent button {
  min-width: 88px;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid #d9ff43;
  border-radius: 9px;
  background: #d9ff43;
  color: #0b100d;
  font: 700 13px/1.15 Arial, Helvetica, sans-serif;
  cursor: pointer;
}

.i24-cookie-consent button:hover {
  filter: brightness(1.06);
}

.i24-cookie-consent button:focus-visible,
.i24-cookie-consent a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

@media (max-width: 560px) {
  .i24-cookie-consent {
    right: 12px;
    left: auto;
    bottom: max(12px, env(safe-area-inset-bottom));
    width: calc(100vw - 24px);
    max-height: calc(100dvh - 24px);
    padding: 14px;
    border-radius: 14px;
    font-size: 12.5px;
  }

  .i24-cookie-consent button {
    min-height: 44px;
  }
}

@media (max-width: 420px) {
  .i24-cookie-consent__body {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .i24-cookie-consent button {
    width: 100%;
  }
}
