@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../assets/fonts/Poppins-Regular.ttf') format('truetype');
}

@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../assets/fonts/Poppins-SemiBold.ttf') format('truetype');
}

@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../assets/fonts/Poppins-Bold.ttf') format('truetype');
}

/*
 * Termly documents these data attributes as stable customization hooks.
 * Button colors and equal Accept/Decline prominence are configured in the
 * Termly dashboard, where Termly can preserve its accessibility behavior.
 */
[data-termly-part='consent-banner'] {
  box-sizing: border-box;
  font-family: 'Poppins', system-ui, -apple-system, BlinkMacSystemFont,
    'Segoe UI', sans-serif;
  color: #1c1c1c;
  background: #ffffff;
  border: 1px solid rgb(0 0 128 / 18%);
  border-radius: 20px;
  box-shadow: 0 18px 48px rgb(15 23 42 / 16%);
}

[data-termly-part='consent-banner'][data-termly-variant='banner'][data-termly-size='compact'] {
  margin: 16px auto;
  max-width: min(760px, calc(100vw - 32px));
}

[data-termly-part='banner-message'] {
  line-height: 1.55;
}

[data-termly-part='banner-actions'] {
  gap: 12px;
  padding-top: 12px;
}

@media (max-width: 640px) {
  [data-termly-part='consent-banner'] {
    border-radius: 20px 20px 0 0;
    max-height: min(85vh, 720px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-bottom: env(safe-area-inset-bottom);
  }

  [data-termly-part='consent-banner'][data-termly-variant='banner'][data-termly-size='compact'] {
    margin: 0 auto;
    max-width: 100vw;
  }

  [data-termly-part='banner-actions'] {
    align-items: stretch;
  }
}

@media (prefers-color-scheme: dark) {
  [data-termly-part='consent-banner'] {
    color: #ffffff;
    background: #1c1c1c;
    border-color: rgb(0 191 255 / 28%);
    box-shadow: 0 20px 56px rgb(0 0 0 / 42%);
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-termly-part='consent-banner'] {
    scroll-behavior: auto;
  }
}
