/*
 * The reset, and the handful of element defaults the design relies on.
 *
 * Edit this file. It is served as it is — nothing compiles it, and the
 * order it loads in is set in resources/css/order.php.
 */

:root {
  --grid-columns:20;
  --grid-gap:0px;
  --grid-column-width:calc((100vw - var(--scrollbar-width, 0px))/var(--grid-columns) - var(--grid-gap)*((var(--grid-columns) - 1)/var(--grid-columns)));
  --offset-x:calc(var(--grid-column-width)/4);
  --header-height:96px;
}

@media(max-width:1439px) {

  :root {
    --header-height:64px;
  }
}

@media(max-width:1099px) {

  :root {
    --grid-columns:12;
    --header-height:96px;
  }
}

@media(max-width:767px) {

  :root {
    --grid-columns:30;
    --offset-x:var(--grid-column-width);
    --header-height:64px;
  }
}

:root {
  --mobile-vh:1vh;
}

@supports(height:100lvh) {

  :root {
    --mobile-vh:1lvh;
  }
}

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

body {
  -webkit-text-size-adjust:100%;
}

body,
hr {
  margin:0;
}

hr {
  border:0;
  color:inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin-bottom:0;
  margin-top:0;
}

abbr[title] {
  cursor:help;
  -webkit-text-decoration:underline dotted;
  text-decoration:underline dotted;
  -webkit-text-decoration-skip-ink:none;
  text-decoration-skip-ink:none;
}

address {
  font-style:normal;
  line-height:inherit;
  margin-bottom:1rem;
}

ol,
ul {
  padding-left:2rem;
}

dl,
ol,
ul {
  list-style-type:none;
  margin-top:0;
}

dl,
ol,
ol ol,
ol ul,
ul,
ul ol,
ul ul {
  margin-bottom:0;
}

dd {
  margin-bottom:.5rem;
  margin-left:0;
}

blockquote {
  margin:0;
}

b,
strong {
  font-weight:700;
}

small {
  font-size:.85em;
}

sub,
sup {
  font-size:.5em;
  line-height:0;
  position:relative;
  vertical-align:initial;
}

sub {
  bottom:-.25em;
}

sup {
  top:-.5em;
}

a,
a:not([href]):not([class]),
a:not([href]):not([class]):hover {
  color:inherit;
  text-decoration:none;
}

pre {
  display:block;
  margin-bottom:0;
  margin-top:0;
  overflow:auto;
}

pre code {
  color:inherit;
  word-break:normal;
}

code {
  word-wrap:break-word;
}

a>code {
  color:inherit;
}

figure {
  margin:0;
}

img,
svg {
  vertical-align:middle;
}

table {
  border-collapse:collapse;
  caption-side:bottom;
}

caption {
  padding-bottom:0;
  padding-top:0;
  text-align:left;
}

th {
  font-weight:700;
  text-align:inherit;
  text-align:-webkit-match-parent;
}

tbody,
td,
tfoot,
th,
thead,
tr {
  border:0 solid;
  border-color:inherit;
}

label {
  display:inline-block;
}

button {
  border-radius:0;
}

.js-focus-visible button:focus:not(.focus-visible),
button:focus:not(.focus-visible).js-focus-visible {
  outline:0;
}

button:focus:not(:focus-visible) {
  outline:0;
}

button,
input,
optgroup,
select,
textarea {
  font-family:inherit;
  font-size:inherit;
  line-height:inherit;
  margin:0;
}

button,
select {
  text-transform:none;
}

[role=button] {
  cursor:pointer;
}

select {
  word-wrap:normal;
}

select:disabled {
  opacity:1;
}

[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
  display:none!important;
}

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance:button;
}

[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
  cursor:pointer;
}

::-moz-focus-inner {
  border-style:none;
  padding:0;
}

textarea {
  resize:vertical;
}

fieldset {
  border:0;
  margin:0;
  min-width:0;
  padding:0;
}

legend {
  float:left;
  line-height:inherit;
  margin-bottom:0;
  padding:0;
  width:100%;
}

legend+* {
  clear:left;
}

::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-year-field {
  padding:0;
}

::-webkit-inner-spin-button {
  height:auto;
}

[type=search] {
  -webkit-appearance:textfield;
  outline-offset:-2px;
}

::-webkit-search-decoration {
  -webkit-appearance:none;
}

::-webkit-color-swatch-wrapper {
  padding:0;
}

::-webkit-file-upload-button {
  -webkit-appearance:button;
  font:inherit;
}

::file-selector-button {
  -webkit-appearance:button;
  font:inherit;
}

output {
  display:inline-block;
}

iframe {
  border:0;
}

summary {
  cursor:pointer;
  display:list-item;
}

progress {
  vertical-align:initial;
}

[hidden] {
  display:none!important;
}

input[type=text],
textarea {
  border:none;
  box-shadow:none;
  box-sizing:border-box;
  caret-color:#fff;
  color:#fff;
  margin:0;
  outline:none;
  resize:none;
}

textarea:focus {
  outline:none;
}

input:-webkit-autofill,
input:-webkit-autofill:focus,
input:-webkit-autofill:hover,
select:-webkit-autofill,
select:-webkit-autofill:focus,
select:-webkit-autofill:hover,
textarea:-webkit-autofill,
textarea:-webkit-autofill:focus,
textarea:-webkit-autofill:hover {
  -webkit-text-fill-color:#fff;
  -webkit-box-shadow:inset 0 0 0 1000px #0000;
  caret-color:#fff;
  color:#fff;
  -webkit-transition:background-color 5000s ease-in-out 0s;
  transition:background-color 5000s ease-in-out 0s;
}

button {
  background-color:#0000;
  border:0;
  cursor:pointer;
  font-family:inherit;
  font-size:inherit;
  font-weight:inherit;
  letter-spacing:inherit;
  padding:0;
  text-transform:inherit;
}

button,
button:active {
  color:inherit;
}

ol,
ul {
  margin-bottom:0;
}
