#airc-hubspot-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  padding: 24px;
  background: rgb(0 0 0 / 60%);
}

.airc-hubspot-card {
  position: relative;
  width: min(768px, 100%);
  max-height: calc(100vh - 48px);
  overflow: hidden;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 32px rgb(0 0 0 / 30%);
}

.airc-hubspot-scroll {
  box-sizing: border-box;
  max-height: calc(100vh - 48px);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 24px;
}

.airc-hubspot-host,
.airc-hubspot-host .hs-form-frame,
.airc-hubspot-host iframe { width: 100%; }

.airc-hubspot-host iframe { display: block; border: 0; }
.airc-hubspot-loading {
  display: grid;
  min-height: 320px;
  place-items: center;
}
.airc-hubspot-close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  display: grid;
  width: 40px;
  height: 40px;
  padding: 0;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: rgb(255 255 255 / 92%);
  color: #4b5563;
  cursor: pointer;
  font: 30px/1 Arial, sans-serif;
}
.airc-hubspot-close[hidden] { display: none !important; }
.airc-hubspot-close:hover { background: #f1f5f9; color: #111827; }
.airc-hubspot-close:focus-visible { outline: 3px solid #2196f3; outline-offset: 2px; }
.airc-hubspot-host .submitted-message img,
.airc-hubspot-host .hs-form__thank-you img,
.airc-hubspot-host [data-hsfc-id="ThankYouMessage"] img {
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
}
.airc-hubspot-spinner {
  width: 40px;
  height: 40px;
  border: 4px solid #d7e8f8;
  border-top-color: #2196f3;
  border-radius: 50%;
  animation: airc-hubspot-spin 0.8s linear infinite;
}
.airc-hubspot-error {
  padding: 48px 24px;
  color: #1d2733;
  font: 16px/1.5 Arial, sans-serif;
  text-align: center;
}
@keyframes airc-hubspot-spin { to { transform: rotate(360deg); } }
@media (max-width: 600px) {
  #airc-hubspot-modal { padding: 12px; }
  .airc-hubspot-card, .airc-hubspot-scroll { max-height: calc(100vh - 24px); }
  .airc-hubspot-scroll { padding: 16px; }
}
