@charset "UTF-8";
*, ::before, ::after {
  box-sizing: border-box;
}

html {
  line-sizing: normal;
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

body {
  margin: 0;
}

[hidden] {
  display: none;
}

:target {
  scroll-margin-block: 5ex;
}

input,
button,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
}

textarea:not([rows]) {
  min-height: 5em;
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

img, svg, video, canvas, audio, iframe, embed, object {
  display: block;
  max-width: 100%;
  vertical-align: middle;
}

img {
  border-style: none;
}

img, svg, video, canvas {
  height: auto;
}

img[src$=svg] {
  height: auto;
  width: 100%;
}

audio {
  width: 100%;
}

audio:not([controls]) {
  display: none;
}

hr {
  border-style: solid;
  border-width: 1px 0 0;
  color: inherit;
  height: 0;
  overflow: visible;
}

p:empty {
  display: none;
}

picture {
  display: contents;
}

source {
  display: none;
}

sub,
sup {
  display: inline;
  font-size: 50%;
  line-height: 1;
  padding: 0;
  position: relative;
}

sub {
  bottom: 0;
  vertical-align: bottom;
  vertical-align: sub;
}

sup {
  top: 0;
  vertical-align: top;
}

:focus:not(:focus-visible) {
  outline: none;
}

html {
  scroll-behavior: smooth;
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

a {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}
a[href="#noop"] {
  pointer-events: none;
}

dialog {
  background-color: #fff;
  border: 0;
  padding: 0;
  width: 90vw;
}
dialog::after {
  color: #fff;
  content: "×";
  cursor: pointer;
  font-size: 2rem;
  line-height: 1;
  padding: 0.5em;
  pointer-events: none;
  position: fixed;
  top: 0;
  right: 0;
}
dialog::backdrop {
  -webkit-backdrop-filter: blur(2.5px);
          backdrop-filter: blur(2.5px);
  background-color: rgba(0, 0, 0, 0.35);
}

body:has(dialog[open]) {
  overflow: hidden;
}

.overflow-hidden {
  overflow: hidden !important;
}

#modal-overlay {
  -webkit-backdrop-filter: blur(2.5px);
          backdrop-filter: blur(2.5px);
  background-color: rgba(0, 0, 0, 0.35);
  height: 100%;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  transition: opacity 0.25s ease-in-out;
  width: 100%;
  z-index: 1234;
}

#modal-overlay.show {
  opacity: 1;
  pointer-events: initial;
}
