/* Native-token extras only. Do not retokenize colors or type scale. */

@media (min-width: 1100px) {
  html {
    --drslon-header-h: 128px;
  }
  .drslon-header__inner {
    grid-template-columns: auto minmax(0, 1fr) auto auto auto auto !important;
    grid-template-areas:
      "brand search bvi theme cta burger"
      "nav nav nav nav nav nav";
    height: auto !important;
    min-height: var(--drslon-header-h);
    align-items: center;
    row-gap: 0;
    padding-top: 0.35rem;
    padding-bottom: 0.45rem;
  }
  .drslon-header .drslon-brand { grid-area: brand; }
  .drslon-header .drslon-nav {
    grid-area: nav;
    min-width: 0;
    position: relative;
    z-index: 1;
    justify-self: stretch;
  }
  .drslon-header .drslon-nav__list {
    flex-wrap: wrap;
    gap: 0.15rem 0.35rem;
  }
  .accp-sro-search { grid-area: search; }
  a.bvi-open {
    grid-area: bvi;
    position: relative;
    z-index: 3;
  }
  .drslon-header .drslon-theme { grid-area: theme; }
  .drslon-header .drslon-cta { grid-area: cta; }
  .drslon-header .drslon-burger { grid-area: burger; }
}

.accp-sro-search {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}
.accp-sro-search input[type="search"] {
  font: 0.9375rem/1.3 Manrope, sans-serif;
  min-height: 44px;
  min-width: 9rem;
  max-width: 14rem;
  padding: 0 0.75rem;
  border: 1px solid var(--drslon-line);
  border-radius: var(--drslon-radius-sm);
  background: var(--drslon-ink-2);
  color: var(--drslon-paper);
}
.accp-sro-search button {
  font: 600 0.9375rem/1 Manrope, sans-serif;
  min-height: 44px;
  padding: 0 14px;
  border: 1px solid var(--drslon-ghost-line);
  border-radius: var(--drslon-radius-sm);
  background: transparent;
  color: var(--drslon-paper);
  cursor: pointer;
}
.accp-sro-search button:hover {
  border-color: var(--drslon-copper);
  color: var(--drslon-copper);
}
.accp-sro-search input:focus-visible,
.accp-sro-search button:focus-visible,
a.bvi-open:focus-visible {
  outline: var(--drslon-focus);
  outline-offset: var(--drslon-focus-offset);
}

a.bvi-open {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 12px;
  font: 600 0.8125rem/1.2 Manrope, sans-serif;
  color: var(--drslon-on-copper);
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid var(--drslon-copper);
  border-radius: var(--drslon-radius-sm);
  background: var(--drslon-copper);
}
a.bvi-open:hover,
a.bvi-open:focus-visible {
  filter: brightness(1.08);
  color: var(--drslon-on-copper);
}
.bvi-open__icon { flex: none; }
.bvi-open__text { white-space: nowrap; }
.bvi-open__short { display: none; font-weight: 700; letter-spacing: 0.04em; }

@media (max-width: 420px) {
  .bvi-open__text { display: none; }
  .bvi-open__short { display: inline; }
}

body.bvi-active .drslon-consent,
body.bvi-active .drslon-grain {
  display: none !important;
}
body.bvi-active .drslon-header {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

@media (max-width: 1099px) {
  .drslon-header__inner {
    grid-template-columns: auto minmax(0, 1fr) auto auto auto !important;
  }
  .accp-sro-search {
    display: none;
  }
  .drslon-header.is-open .accp-sro-search {
    display: flex;
    position: absolute;
    left: 20px;
    right: 20px;
    top: calc(var(--drslon-header-h) + 8px);
    z-index: 2;
  }
  .accp-sro-search input[type="search"] {
    flex: 1;
    max-width: none;
  }
  a.bvi-open {
    font-size: 0.75rem;
    padding: 0 8px;
  }
}

.accp-sro-filter {
  margin: 1rem 0 1.25rem;
}
.accp-sro-filter label {
  display: block;
  margin-bottom: 0.4rem;
  font: 0.875rem/1.4 Manrope, sans-serif;
  color: var(--drslon-muted);
}
.accp-sro-filter input {
  font: 0.9375rem/1.3 Manrope, sans-serif;
  min-height: 44px;
  min-width: min(20rem, 100%);
  max-width: 100%;
  padding: 0 0.75rem;
  border: 1px solid var(--drslon-line);
  border-radius: var(--drslon-radius-sm);
  background: var(--drslon-ink-2);
  color: var(--drslon-paper);
}

.accp-sro-table-wrap {
  overflow-x: auto;
  margin: 0 0 1.5rem;
}
.accp-sro-table {
  width: 100%;
  border-collapse: collapse;
  font: 0.9375rem/1.45 Manrope, sans-serif;
  color: var(--drslon-paper);
}
.accp-sro-table th,
.accp-sro-table td {
  text-align: left;
  padding: 0.65rem 0.75rem;
  border-bottom: 1px solid var(--drslon-line);
  vertical-align: top;
}
.accp-sro-table th {
  font: 500 0.75rem/1.3 "IBM Plex Mono", monospace;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--drslon-muted);
}

.drslon-map-block { min-width: 0; }
.drslon-map iframe,
.drslon-map__frame iframe,
.drslon-map__js {
  display: block;
  width: 100%;
  height: 480px;
  border: 0;
}
.drslon-map [class*="gotoymaps"],
.drslon-map [class*="gototaxi"],
.drslon-map [class*="map-copyrights-promo"] {
  display: none !important;
}
.drslon-map__lock {
  display: none;
  appearance: none;
  position: absolute;
  inset: 0;
  z-index: 2;
  margin: 0;
  padding: 16px;
  border: 0;
  background: transparent;
  color: var(--drslon-paper);
  cursor: pointer;
  touch-action: pan-y;
  align-items: flex-end;
  justify-content: center;
  font: inherit;
  text-align: center;
}
@media (max-width: 1099px) {
  .drslon-map:not(.is-on) .drslon-map__lock { display: flex; }
}
.drslon-map.is-on .drslon-map__lock { display: none; }
.drslon-map__hint {
  margin: 0;
  max-width: 36ch;
  padding: 8px 12px;
  background: rgb(16 20 24 / 0.78);
  border-radius: var(--drslon-radius);
  font-family: "IBM Plex Mono", ui-monospace, monospace;
  font-size: 0.75rem;
  line-height: 1.35;
  pointer-events: none;
}

