.azh-popup[hidden] { display: none !important; }
.azh-popup { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 24px; }
.azh-popup__backdrop { position: absolute; inset: 0; background: rgba(1, 67, 115, .78); }
.azh-popup__dialog { position: relative; z-index: 1; width: min(920px, 100%); max-height: calc(100vh - 48px); overflow: auto; background: #fff; box-shadow: 0 24px 70px rgba(0,0,0,.28); display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr); }
.azh-popup__media { min-height: 420px; background: #eef3f7; }
.azh-popup__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.azh-popup__content { padding: 48px 46px 44px; display: flex; flex-direction: column; justify-content: center; }
.azh-popup__content h2 { margin: 0 0 18px; color: #014373; font-size: 32px; line-height: 1.16; font-weight: 600; }
.azh-popup__text { color: #555; font-size: 17px; line-height: 1.65; }
.azh-popup__text p { margin: 0 0 26px; }
.azh-popup__button { display: inline-block; align-self: flex-start; padding: 12px 22px; background: #497ca7; color: #fff !important; text-decoration: none; font-size: 16px; line-height: 1.4; transition: background-color .2s ease; }
.azh-popup__button:hover, .azh-popup__button:focus { background: #014373; color: #fff !important; }
.azh-popup__close { position: absolute; top: 14px; right: 14px; z-index: 2; width: 40px; height: 40px; border: 0; border-radius: 50%; padding: 0; background: #014373; color: #fff; font-size: 29px; line-height: 36px; cursor: pointer; box-shadow: 0 3px 12px rgba(0,0,0,.18); }
.azh-popup__close:hover, .azh-popup__close:focus { background: #d18b43; outline: none; }
body.azh-popup-open { overflow: hidden; }

@media (max-width: 760px) {
  .azh-popup { padding: 16px; align-items: flex-start; overflow-y: auto; }
  .azh-popup__dialog { grid-template-columns: 1fr; max-height: none; margin: 20px auto; }
  .azh-popup__media { min-height: 0; aspect-ratio: 16 / 10; }
  .azh-popup__content { padding: 30px 24px 28px; }
  .azh-popup__content h2 { font-size: 25px; padding-right: 24px; }
  .azh-popup__text { font-size: 16px; line-height: 1.55; }
}

@media (prefers-reduced-motion: no-preference) {
  .azh-popup:not([hidden]) .azh-popup__backdrop { animation: azhPopupFade .22s ease both; }
  .azh-popup:not([hidden]) .azh-popup__dialog { animation: azhPopupIn .28s ease both; }
  @keyframes azhPopupFade { from { opacity: 0; } to { opacity: 1; } }
  @keyframes azhPopupIn { from { opacity: 0; transform: translateY(14px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
}
