html, body {
  margin: 0;
  padding: 0;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #222;
  background: #f7f8fa;
}

a {
  color: #0b66d6;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

#ds-wrapper,
.ds-wrapper {
  max-width: 1200px;
  margin: 0 auto;
}

.p-0 { padding: 0; }
.pt-10 { padding-top: 2.5rem; }
.px-4 { padding-left: 1rem; padding-right: 1rem; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-8 { padding-top: 2rem; padding-bottom: 2rem; }
.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }

.mr-2 { margin-right: 0.5rem; }
.ml-4 { margin-left: 1rem; }
.mt-6 { margin-top: 1.5rem; }
.mb-4 { margin-bottom: 1rem; }
.mb-8 { margin-bottom: 2rem; }
.mb-15 { margin-bottom: 3.75rem; }
.mx-auto { margin-left: auto; margin-right: auto; }

.w-240 { max-width: 72rem; width: calc(100% - 2rem); }
.w-1\/2 { width: 50%; float: left; box-sizing: border-box; padding-right: 1.5rem; }
.w-full { width: 100%; }

.inline-block { display: inline-block; }
.block { display: block; }
.hidden { display: none !important; }

.text-center { text-align: center; }
.text-black-dark { color: #1f2937; }
.text-gray-600 { color: #4b5563; }
.text-13 { font-size: 13px; }
.text-15 { font-size: 15px; }
.text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
.text-60 { font-size: 60px; line-height: 1; }

.font-light { font-weight: 300; }
.font-normal { font-weight: 400; }
.font-semibold { font-weight: 600; }
.font-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

.leading-tight { line-height: 1.1; }
.leading-normal { line-height: 1.5; }
.leading-1\.3 { line-height: 1.3; }

.antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.border { border-width: 1px; }
.border-0 { border-width: 0; }
.border-t { border-top-width: 1px; }
.border-solid { border-style: solid; }
.border-gray-300 { border-color: #d1d5db; }
.rounded { border-radius: 0.375rem; }
.bg-white { background-color: #fff; }
.cursor-pointer { cursor: pointer; }

.heading-ray-id { color: #6b7280; }
.ds-alert { margin: 0 auto 1rem; max-width: 72rem; padding: 0.75rem 1rem; border-radius: 6px; }
.ds-alert-error { background: #fff5f5; color: #7f1d1d; border: 1px solid #fecaca; }
.ds-cookie-error { font-size: 14px; }
.ds-error-footer { clear: both; }
.ds-footer-item { display: inline-block; }
.ds-footer-separator { margin: 0 0.5rem; color: #9ca3af; }
.ds-button { border-color: #d1d5db; color: #111827; }
.ds-footer-ip-reveal-btn { border: 0; background: transparent; color: #0b66d6; cursor: pointer; }
.footer-line-wrapper { color: #374151; }
.feedback-hidden { display: none; }
.feedback-success { color: #065f46; }

.no-js.oldie { background: #f7f8fa; }

@media (max-width: 1024px) {
  .lg\:pt-6 { padding-top: 1.5rem; }
  .lg\:px-8 { padding-left: 2rem; padding-right: 2rem; }
  .lg\:w-full { max-width: 100%; width: calc(100% - 2rem); }
  .lg\:text-2xl { font-size: 1.5rem; line-height: 2rem; }
  .lg\:text-sm { font-size: 0.875rem; line-height: 1.25rem; }
  .lg\:leading-relaxed { line-height: 1.625; }
}

@media (max-width: 768px) {
  .md\:block { display: block; }
  .md\:mb-2 { margin-bottom: 0.5rem; }
  .md\:text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
  .md\:w-full { width: 100%; float: none; padding-right: 0; }
}

@media (max-width: 640px) {
  .sm\:block { display: block; }
  .sm\:hidden { display: none; }
  .sm\:mb-1 { margin-bottom: 0.25rem; }
  .sm\:px-8 { padding-left: 2rem; padding-right: 2rem; }
  .sm\:py-4 { padding-top: 1rem; padding-bottom: 1rem; }
  .sm\:text-left { text-align: left; }
}
