/* === 16-modal: Figma 183:2350 / 180:852 === */
.fmf2 .fmf2-modal{
  align-items:center;
  padding:48px 16px;
  background:rgba(35,34,40,.6);
  -webkit-backdrop-filter:blur(2px);
  backdrop-filter:blur(2px);
}
.fmf2 .fmf2-modal__dialog{
  width:100%;
  max-width:1080px;
  max-height:calc(100dvh - 32px);
  overflow:auto;
  padding:24px;
  border-radius:0;
}
.fmf2 .fmf2-modal.is-call .fmf2-modal__dialog{max-width:696px}
.fmf2 .fmf2-modal__close{
  z-index:5;
  top:16px;
  right:16px;
  display:flex;
  width:32px;
  height:32px;
  align-items:center;
  justify-content:center;
  color:#707070;
}
.fmf2 .fmf2-modal__close .ic-svg{width:24px;height:24px}
.fmf2 .fmf2-modal__pane{display:none}
.fmf2 .fmf2-modal__pane.is-active{display:block}
.fmf2 .fmf2-modal__title{
  max-width:calc(100% - 48px);
  margin:0 0 40px;
  font-size:32px;
  font-weight:400;
  line-height:1.2;
  letter-spacing:0;
}
.fmf2 .fmf2-modal__pane--call .fmf2-modal__title{margin-bottom:4px}
.fmf2 .fmf2-modal__subtitle{
  max-width:648px;
  margin:0 0 40px;
  color:#707070;
  font-size:14px;
  line-height:1.4;
}
.fmf2 .modal-project__layout{
  display:grid;
  grid-template-columns:360px minmax(0,648px);
  gap:24px;
  align-items:stretch;
}
.fmf2 .modal-contact-card{
  position:relative;
  isolation:isolate;
  display:flex;
  min-height:383px;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
  padding:24px;
  background:#111 url('/new/assets/img/modal-contact-bg.webp') center/cover no-repeat;
  color:#fff;
}
.fmf2 .modal-contact-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(101deg,rgba(0,0,0,.4),rgba(0,0,0,.1));
}
.fmf2 .modal-contact-card>p{
  max-width:312px;
  font-size:14px;
  font-weight:500;
  line-height:1.4;
}
.fmf2 .modal-contact-card__contacts{display:flex;flex-direction:column;gap:24px}
.fmf2 .modal-contact-card__contacts p{display:flex;flex-direction:column;gap:4px}
.fmf2 .modal-contact-card__contacts span{font-size:16px;font-weight:500;line-height:1.6}
.fmf2 .modal-contact-card__contacts a{color:#fff;font-size:32px;font-weight:500;line-height:1.2;letter-spacing:-.02em}

.fmf2 .modal-form-wrap{min-width:0}
.fmf2 .modal-lead-form{display:flex;flex-direction:column;gap:24px}
.fmf2 .modal-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.fmf2 .modal-lead-form .field{min-width:0;margin:0}
.fmf2 .modal-lead-form .field__label{
  margin-bottom:10px;
  color:rgba(26,26,26,.6);
  font-size:14px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.1em;
}
.fmf2 .modal-lead-form .field input,
.fmf2 .modal-lead-form .field textarea,
.fmf2 .modal-lead-form .field select{
  height:32px;
  min-height:32px;
  padding:0 0 10px;
  border-bottom:1px solid #ebebeb;
  color:#1a1a1a;
  font-size:16px;
  font-weight:500;
  line-height:1.4;
}
.fmf2 .modal-lead-form .field input::placeholder,
.fmf2 .modal-lead-form .field textarea::placeholder{color:#707070;opacity:1}
.fmf2 .modal-lead-form .field input:focus,
.fmf2 .modal-lead-form .field textarea:focus,
.fmf2 .modal-lead-form .field select:focus{border-bottom-color:#6657c2}
.fmf2 .modal-lead-form .field select{
  width:100%;
  appearance:none;
  padding-inline-start:8px;
  padding-right:24px;
  background:transparent;
}
.fmf2 .modal-select{position:relative;display:block}
.fmf2 .modal-select::after{
  content:"";
  position:absolute;
  right:0;
  top:7px;
  width:14px;
  height:7px;
  background:url('/new/assets/icons/figma-chevron-small.svg') center/contain no-repeat;
  pointer-events:none;
}
.fmf2 .modal-comment-control{position:relative}
.fmf2 .modal-lead-form .modal-comment-control textarea{display:block;width:100%;padding-right:64px;resize:vertical}
.fmf2 .modal-attachment{
  position:absolute;
  right:24px;
  bottom:0;
  display:flex;
  width:32px;
  height:32px;
  align-items:center;
  justify-content:center;
  color:#707070;
  cursor:pointer;
}
.fmf2 .modal-attachment:hover{color:#6657c2}
.fmf2 .modal-attachment:focus-within{outline:2px solid #6657c2;outline-offset:2px}
.fmf2 .modal-attachment__icon{width:24px;height:24px}
.fmf2 .modal-attachment__icon path{stroke:currentColor}
.fmf2 .modal-attachment__name{
  display:block;
  max-width:100%;
  overflow:hidden;
  margin-top:6px;
  color:#707070;
  font-size:12px;
  line-height:1.4;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.fmf2 .modal-attachment__name:empty{display:none}
.fmf2 .modal-lead-form .field-error{font-size:12px;margin-top:6px}
.fmf2 .modal-lead-form .consent{margin:0;color:#1a1a1a;font-size:16px;line-height:1.4}
.fmf2 .modal-lead-form .consent label{gap:16px}
.fmf2 .modal-lead-form .consent input{width:24px;height:24px;margin:0;accent-color:#6657c2}
.fmf2 .modal-lead-form .consent a{color:#1a1a1a;text-decoration-color:#1a1a1a}
.fmf2 .modal-lead-form>.btn{align-self:flex-start;min-width:228px}
.fmf2 .modal-form-success{padding-block:40px}
.fmf2 .modal-form-success h3{font-size:32px;font-weight:400;line-height:1.2;margin-bottom:16px}
.fmf2 .modal-form-success p{font-size:16px;line-height:1.4;color:#707070}

@media (max-width:900px){
  .fmf2 .modal-project__layout{grid-template-columns:280px minmax(0,1fr)}
  .fmf2 .modal-contact-card__contacts a{font-size:24px}
}

@media (max-width:700px){
  .fmf2 .fmf2-modal{align-items:flex-start;padding:12px}
  .fmf2 .fmf2-modal__dialog{max-height:calc(100dvh - 24px);padding:48px 20px 24px}
  .fmf2 .fmf2-modal__close{top:10px;right:10px}
  .fmf2 .fmf2-modal__title{max-width:none;margin-bottom:24px;font-size:26px}
  .fmf2 .fmf2-modal__pane--call .fmf2-modal__title{margin-bottom:8px}
  .fmf2 .fmf2-modal__subtitle{margin-bottom:24px}
  .fmf2 .modal-project__layout{grid-template-columns:1fr}
  .fmf2 .modal-contact-card{min-height:300px;padding:20px}
  .fmf2 .modal-contact-card__contacts a{font-size:24px}
  .fmf2 .modal-form__grid{grid-template-columns:1fr}
  .fmf2 .modal-lead-form .field__label{font-size:12px}
  .fmf2 .modal-lead-form .consent{font-size:14px;line-height:1.3}
  .fmf2 .modal-lead-form>.btn{width:100%}
}
