/*! modern reset */

/* ========================================
   BOX SIZING
======================================== */

*,
*::before,
*::after {
    box-sizing: border-box;
}

/* ========================================
   DOCUMENT
======================================== */

html {
    margin: 0;
    padding: 0;
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;
    margin: 0;
    padding: 0;
}

/* ========================================
   TYPOGRAPHY
======================================== */

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
figure,
dl,
dd {
    margin: 0;
}

ul,
ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

address {
    font-style: normal;
}

small {
    font-size: 0.8em;
}

sub,
sup {
    position: relative;
    font-size: 0.75em;
    line-height: 0;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/* ========================================
   LINKS
======================================== */

a {
    color: inherit;
    text-decoration: none;
}

/* ========================================
   EMBEDDED CONTENT
======================================== */

img,
picture,
svg,
video,
canvas {
    display: block;
    max-width: 100%;
}

img {
    height: auto;
}

/* ========================================
   FORMS
======================================== */

button,
input,
select,
textarea {
    margin: 0;
    color: inherit;
    font: inherit;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    cursor: pointer;
}

button:disabled,
input:disabled {
    cursor: default;
}

button {
    padding: 0;
    border: 0;
    background: none;
}

textarea {
    resize: vertical;
}

/* ========================================
   TABLES
======================================== */

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* ========================================
   INTERACTIVE
======================================== */

summary {
    cursor: pointer;
}

details > summary {
    list-style: none;
}

details > summary::-webkit-details-marker {
    display: none;
}

/* ========================================
   ACCESSIBILITY
======================================== */

:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
}

[hidden] {
    display: none !important;
}
