/* Overpass Font - Self-hosted (Variable Font: 100-900) */
@font-face {
  font-family: 'Overpass';
  font-style: normal;
  font-weight: 300 700;
  font-display: optional;
  src: url(/fonts/overpass.woff2) format('woff2');
}

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

/* Remove default padding */
ul[class],
ol[class] {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
}

html,
body {
  width: 100%;
  height: 100%;
}

/* Set core body defaults */
body {
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul[class],
ol[class] {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Vertical Rhythm */

html {
  font-size: 16px;
  line-height: 24px;
}
body {
  font-family: "Overpass", sans-serif;
  font-optical-sizing: auto;
  font-size: 1em;
  line-height: 1.5em;
  margin: auto;
}
h1 {
  font-size: 2.625em;
  line-height: 1.14285714em;
  margin-top: 0.57142857em;
  margin-bottom: 0.57142857em;
}
h2 {
  font-size: 1.625em;
  line-height: 1.84615385em;
  margin-top: 0.92307692em;
  margin-bottom: 0em;
}
p {
  margin-top: 0em;
  margin-bottom: 1.5em;
}

@media screen and (max-width: 35rem) {
  h2 {
    line-height: 1.3;
    margin-bottom: 0.92307692em;
  }

  br {
    display: none;
  }
}

/* Basic Styling */

.page-wrapper {
  width: 86%;
  max-width: 36rem;
  min-height: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #000000;
}

.logo {
  width: 140px;
  height: 41px;
  max-width: 100%;
}

.logo--mark {
  fill: #2962ff;
}

.logo--type {
  fill: #000000;
}

p {
  color: #383737;
}

a {
  color: #2962ff;
  text-decoration: none;
}

a:hover,
a:focus,
a:active {
  text-decoration: underline;
}

.visually-hidden {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.cryptedmail:after {
  content: attr(data-name) '@' attr(data-domain) '.' attr(data-tld);
}
