.thl-consent-dialog {
  box-sizing: border-box;
  width: min(780px, calc(100% - 32px));
  max-width: 780px;
  max-height: 85dvh;
  margin: auto;
  padding: 0 28px 28px;
  overflow-y: auto;
  overscroll-behavior: contain;
  border: 1px solid #e3e5e9;
  border-radius: 16px;
  background: #fff;
  color: #231f20;
  font: 400 14px/1.8 "Be Vietnam Pro", Arial, sans-serif;
}
.thl-consent-dialog::backdrop { background: #20212799; }
.thl-consent-dialog .thl-consent-toolbar {
  position: sticky;
  top: 0;
  display: flex;
  justify-content: flex-end;
  padding: 16px 0 10px;
  background: #fff;
}
.thl-consent-dialog .thl-consent-close {
  padding: 8px 14px;
  border: 1px solid #b10e23;
  border-radius: 6px;
  background: #fff;
  color: #b10e23;
  font: inherit;
  cursor: pointer;
}
.thl-consent-dialog h2 { margin: 0 0 20px; font-size: 24px; line-height: 1.4; }
.thl-consent-dialog h3 { margin: 24px 0 12px; font-size: 17px; line-height: 1.6; }
.thl-consent-dialog p { margin: 0 0 14px; }
.thl-consent-dialog ul { margin: 0 0 18px; padding-left: 22px; }
.thl-consent-dialog li { margin: 8px 0; }
.thl-consent-dialog button:focus-visible, .thl-consent-link:focus-visible { outline: 2px solid #b10e23; outline-offset: 4px; }
.thl-consent-link {
  display: inline;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: #b10e23;
  font: inherit;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.application-consent + .application-consent { margin-top: 14px; }
@media (max-width: 540px) {
  .thl-consent-dialog { padding: 0 20px 20px; }
  .thl-consent-dialog h2 { font-size: 21px; }
}
