.hide-scroll::-webkit-scrollbar{display:none}
.hide-scroll{-ms-overflow-style:none;scrollbar-width:none}
.img-transition{transition:all .3s ease}

[data-main-media] img,
[data-main-media] video{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:.75rem;
  transition:all .3s ease;
}

.thumb-btn.active{
  border-color:#3b82f6;
}

[data-tabs] .tab-panel{display:none}
[data-tabs] .tab-panel.active{display:block}
[data-tabs] [data-tab].active{
  color:#3b82f6;
  border-color:#3b82f6;
  font-weight:700;
}

.modal-backdrop,
.lightbox{
  position:fixed;
  inset:0;
  z-index:100;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(15,23,42,.56);
  backdrop-filter:blur(8px);
}
.modal-backdrop.is-open,
.lightbox.is-open{display:flex}
.lead-modal{
  position:relative;
  width:min(100%,520px);
  max-height:calc(100vh - 32px);
  overflow:auto;
  background:#fff;
  border-radius:24px;
  box-shadow:0 30px 90px rgba(15,23,42,.30);
  padding:28px;
}
.modal-close,
.lightbox>button{
  position:absolute;
  right:18px;
  top:18px;
  z-index:2;
  width:38px;
  height:38px;
  border:0;
  border-radius:999px;
  background:#f1f5f9;
  color:#334155;
  display:grid;
  place-items:center;
}
.lead-modal h2{
  margin:0 48px 8px 0;
  font-size:24px;
  font-weight:800;
  letter-spacing:-.035em;
  color:#111827;
}
.lead-modal p{margin:0 0 22px;color:#64748b}
.lead-form{display:grid;gap:13px}
.lead-form label{display:grid;gap:7px}
.lead-form span{font-size:13px;font-weight:700;color:#334155}
.lead-form input,
.lead-form textarea{
  border:1px solid #e5edf8;
  border-radius:13px;
  padding:12px 14px;
  outline:none;
  background:#fbfdff;
  color:#0f172a;
}
.lead-form input:focus,
.lead-form textarea:focus{
  border-color:#93c5fd;
  box-shadow:0 0 0 4px rgba(37,99,235,.09);
  background:#fff;
}
.lead-form button{
  min-height:52px;
  border-radius:12px;
  background:#3b82f6;
  color:#fff;
  font-weight:700;
}
.alert{border-radius:14px;padding:12px 14px;margin-bottom:12px}
.alert.success{background:#ecfdf5;color:#047857;border:1px solid #bbf7d0}
.alert.danger{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}
.lightbox [data-lightbox-content]{
  width:min(100%,980px);
  height:min(86vh,820px);
  border-radius:24px;
  background:#fff;
  overflow:hidden;
  display:grid;
  place-items:center;
}
.lightbox img,
.lightbox video{
  width:100%;
  height:100%;
  object-fit:contain;
  background:#f8fafc;
}

@media(max-width:767px){
  body{padding-bottom:92px}
}
