.night-sale-popup{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  z-index:1300;
}

.night-sale-popup[aria-hidden="true"]{
  display:none;
}

.night-sale-popup__backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,6,23,0.74);
  backdrop-filter:blur(4px);
}

.night-sale-popup__dialog{
  position:relative;
  z-index:1;
  width:min(960px,100%);
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,0.95fr);
  background:#ffffff;
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 24px 80px rgba(2,6,23,0.3);
}

.night-sale-popup__close{
  position:absolute;
  top:12px;
  right:12px;
  width:40px;
  height:40px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,0.9);
  color:#0f172a;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  z-index:2;
}

.night-sale-popup__media{
  min-height:100%;
  background:#0f2742;
}

.night-sale-popup__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.night-sale-popup__content{
  padding:40px 34px 34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:14px;
}

.night-sale-popup__eyebrow{
  margin:0;
  font-size:12px;
  font-weight:700;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:#ff6b35;
}

.night-sale-popup__title{
  margin:0;
  font-size:31px;
  line-height:1.15;
  color:#0b4a8a;
}

.night-sale-popup__text{
  margin:0;
  color:#475569;
  line-height:1.6;
}

.night-sale-popup__form{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.night-sale-popup__label{
  font-size:14px;
  font-weight:600;
  color:#203047;
}

.night-sale-popup__input{
  width:100%;
  padding:14px 16px;
  border:1px solid #dbe6f0;
  border-radius:12px;
  font:inherit;
  color:#0f172a;
}

.night-sale-popup__input:focus{
  outline:2px solid rgba(30,115,190,0.24);
  outline-offset:1px;
  border-color:#1e73be;
}

.night-sale-popup__submit{
  width:100%;
  min-height:52px;
  justify-content:center;
}

.night-sale-popup__result{
  min-height:22px;
  font-size:14px;
  color:#334155;
}

body.night-sale-open{
  overflow:hidden;
}

@media (max-width:840px){
  .night-sale-popup__dialog{
    grid-template-columns:1fr;
    max-width:560px;
  }

  .night-sale-popup__media{
    max-height:300px;
  }
}

@media (max-width:560px){
  .night-sale-popup{
    padding:14px;
  }

  .night-sale-popup__dialog{
    border-radius:18px;
  }

  .night-sale-popup__content{
    padding:24px 18px 20px;
  }

  .night-sale-popup__title{
    font-size:26px;
  }

  .night-sale-popup__media{
    max-height:240px;
  }
}
