/* Visible scrollbars + mobile layout guardrails */
:root {
  --scrollbar-track: #f4ede3;
  --scrollbar-thumb: #cdb9bb;
  --scrollbar-thumb-hover: #4e1727;
}

html {
  max-width: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scrollbar-width: thin;
  scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);
}

body {
  max-width: 100%;
  min-height: 100%;
}

::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: var(--scrollbar-track);
}

::-webkit-scrollbar-thumb {
  background: var(--scrollbar-thumb);
  border-radius: 999px;
  border: 2px solid var(--scrollbar-track);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--scrollbar-thumb-hover);
}

html.lenis,
html.lenis body {
  height: auto;
}

/* Prevent fixed layers from widening the page */
.loader,
.mobile-menu {
  overflow: hidden;
  max-width: 100%;
}

.page,
[data-view] {
  max-width: 100%;
  min-width: 0;
  overflow-x: clip;
}

.notice {
  max-width: 100%;
  min-width: 0;
}

@media (max-width: 768px) {
  .card {
    min-width: 0;
    flex: 1 1 100%;
  }

  .footer__col a,
  .footer__col p,
  .footer__col-head {
    white-space: normal;
  }

  .breadcrumbs {
    flex-wrap: wrap;
    white-space: normal;
  }

  input,
  select,
  textarea,
  .field__input,
  .field__area {
    font-size: 16px !important;
  }

  .filterbar {
    scrollbar-width: none;
  }

  .filterbar::-webkit-scrollbar {
    display: none;
  }
}
