/* Shared, accessible consent geometry for the legacy and PACS variants. */
html.hd-consent-scroll-lock,
body.hd-consent-open {
  overflow: hidden !important;
  overscroll-behavior: none;
}

body.hd-consent-open {
  padding-top: 0 !important;
}

body.hd-consent-open #cookieConsent.hd-consent-modal {
  position: relative !important;
  top: 0 !important;
  right: auto !important;
  bottom: auto !important;
  left: 0 !important;
  z-index: 2147483000 !important;
  width: 100% !important;
  max-width: none !important;
  max-height: calc(100dvh - 0.5rem) !important;
  margin: 0 !important;
  padding: clamp(0.75rem, 2.5vw, 1.25rem) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  box-sizing: border-box !important;
  border-radius: 0 0 1rem 1rem !important;
  transform: none !important;
  transition: none !important;
  isolation: isolate;
}

body.hd-consent-open #cookieConsent.hd-consent-modal {
  opacity: 1 !important;
}

body.hd-consent-open #cookieConsent.cookie-consent.hd-consent-modal {
  grid-template-columns: 2.25rem minmax(0, 1fr) !important;
  gap: 0.75rem !important;
  color: #dceaf7;
  background: #041323 !important;
}

#cookieConsent.hd-consent-modal > .flex.items-start {
  display: grid !important;
  grid-template-columns: 2.25rem minmax(0, 1fr) !important;
  gap: 0.75rem !important;
  width: min(100%, 72rem);
  margin: 0 auto;
  align-items: start !important;
}

#cookieConsent.hd-consent-modal .w-10.h-10,
#cookieConsent.hd-consent-modal .cookie-consent__icon {
  width: 2.25rem !important;
  height: 2.25rem !important;
  min-width: 2.25rem !important;
  min-height: 2.25rem !important;
}

#cookieConsent.hd-consent-modal .flex-1,
#cookieConsent.hd-consent-modal .cookie-consent__content {
  min-width: 0;
}

#cookieConsent.hd-consent-modal #cookieConsentTitle {
  display: block;
  margin: 0 0 0.25rem !important;
  color: #ffffff;
  font-size: 1rem !important;
  line-height: 1.3 !important;
}

#cookieConsent.hd-consent-modal #cookieConsentDesc {
  margin: 0 0 0.75rem !important;
  color: #cbd5e1 !important;
  font-size: 0.875rem !important;
  line-height: 1.5 !important;
}

#cookieConsent.hd-consent-modal .flex.gap-3,
#cookieConsent.hd-consent-modal .cookie-consent__actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.5rem !important;
  width: 100%;
}

#cookieConsent.hd-consent-modal button,
#cookieConsent.hd-consent-modal a[href] {
  min-width: 44px !important;
  min-height: 44px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0.625rem 0.875rem !important;
  line-height: 1.25 !important;
  text-align: center;
}

#cookieConsent.hd-consent-modal a[href] {
  grid-column: 1 / -1;
  width: 100%;
  margin-top: 0.25rem !important;
  border-radius: 0.5rem;
}

#cookieConsent.hd-consent-modal #cookieConsentTitle:focus-visible,
#cookieConsent.hd-consent-modal button:focus-visible,
#cookieConsent.hd-consent-modal a[href]:focus-visible {
  outline: 3px solid #38bdf8 !important;
  outline-offset: 3px !important;
}

.hd-consent-surface-suppressed,
body.hd-consent-open .mobile-sticky-cta,
body.hd-consent-open .it-support-mobile-sticky,
body.hd-consent-open .mobile-actions {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

@media (min-width: 768px) {
  body.hd-consent-open #cookieConsent.hd-consent-modal {
    padding: 1rem clamp(1.25rem, 4vw, 3rem) !important;
  }

  #cookieConsent.hd-consent-modal > .flex.items-start,
  body.hd-consent-open #cookieConsent.cookie-consent.hd-consent-modal {
    grid-template-columns: 2.625rem minmax(0, 1fr) !important;
    gap: 1rem !important;
  }

  #cookieConsent.hd-consent-modal .w-10.h-10,
  #cookieConsent.hd-consent-modal .cookie-consent__icon {
    width: 2.625rem !important;
    height: 2.625rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #cookieConsent.hd-consent-modal,
  #cookieConsent.hd-consent-modal * {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

@media print {
  #cookieConsent.hd-consent-modal {
    display: none !important;
  }
}
