@charset "UTF-8";

html {
  box-sizing: border-box;
}
*, *::before, *::after {
  box-sizing: inherit;
}
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  line-height: 1.15;
}
body {
  margin: 0;
}
footer,
header {
  display: block;
}
h1 {
  margin: 0.67em 0;
  font-size: 2em;
}
a {
  background-color: transparent;
}
b,
strong {
  font-weight: 400;
}
img {
  border-style: none;
}
svg:not(:root) {
  overflow: hidden;
}
*:focus:not(:focus-visible) {
  outline: none;
}
*:focus-visible {
  outline-color: currentColor;
  outline-style: solid;
  outline-width: 2px;
  outline-offset: 2px;
}
body,
h1,
h2,
p {
  margin: 0;
  padding: 0;
}
a {
  outline: none;
  text-decoration: none;
}
a[href^=tel] {
  color: inherit;
  text-decoration: none;
}
h1,
h2,
p {
  margin-bottom: 1.5rem;
}
h1,
h2 {
  font-weight: normal;
  font-size: 1.25rem;
  font-family: "Arial", sans-serif;
  margin-bottom: 0;
}
img {
  max-width: 100%;
  font-style: italic;
  vertical-align: middle;
}
img[width],
img[height] {
  height: auto;
}
svg {
  shape-rendering: geometricprecision;
}
a {
  color: #3f3f3f;
  text-decoration: none;
}
a:focus-visible, a:hover {
  color: #595959;
  text-decoration: none;
}
a.link-has-text-decoration-underline {
  text-decoration: underline;
  text-underline-offset: 3px;
}
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  height: 100%;
  background-color: #ffffff;
  color: #2e2c29;
  font-size: 1em;
  line-height: 1.5;
  font-family: "Arial", sans-serif;
  text-rendering: optimizeLegibility;
}
html::after {
  z-index: -1;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0);
  content: "";
  transition: background 0.2s ease-out;
}
body {
  min-height: 100%;
  background: #ffffff;
}
p {
  font-size: calc(13px + 2 * ((100vw - 320px) / 1046));
  color: #2e2c29;
  line-height: 1.5;
}
@media screen and (min-width: 1366px){
  p{
    font-size: 15px;
  }
}
@media screen and (max-width: 320px){
  p{
    font-size: 13px;
  }
}
.errorpage {
  padding: 0;
  background: #ffffff;
  text-align: center;
}
.errorpage__header {
  padding: 1.5rem;
  background: white;
}
.errorpage__content {
  padding: 3rem 0.75rem;
}
.errorpage__content h1 {
  font-family: "Arial", sans-serif;
  font-size: calc(27px + 15 * ((100vw - 320px) / 1046));
}
@media screen and (min-width: 1366px){
  .errorpage__content h1{
    font-size: 42px;
  }
}
@media screen and (max-width: 320px){
  .errorpage__content h1{
    font-size: 27px;
  }
}
.errorpage__content h2 {
  font-family: "Arial", sans-serif;
  font-size: calc(18px + 4 * ((100vw - 320px) / 1046));
}
@media screen and (min-width: 1366px){
  .errorpage__content h2{
    font-size: 22px;
  }
}
@media screen and (max-width: 320px){
  .errorpage__content h2{
    font-size: 18px;
  }
}
.errorpage__content__section {
  margin: 0 0 4.5rem 0;
}
.errorpage__content__section:last-child {
  margin-bottom: 0;
}
.errorpage__content h2 {
  margin-bottom: 0.75rem;
}
