@font-face {
    font-family: 'Atkinson Hyperlegible';
    src: url('/assets/Atkinson-Hyperlegible-Bold-102.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
  font-family: 'Atkinson Hyperlegible';
  src: url('/assets/Atkinson-Hyperlegible-BoldItalic-102.ttf') format('truetype');
  font-weight: bold;
  font-style: italic;
}

@font-face {
  font-family: 'Atkinson Hyperlegible';
  src: url('/assets/Atkinson-Hyperlegible-Italic-102.ttf') format('truetype');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Atkinson Hyperlegible';
  src: url('/assets/Atkinson-Hyperlegible-Regular-102.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
    font-family: 'Berkeley';
    src: url('/assets/BerkeleyMono-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

html, body {
    font-family: 'Atkinson Hyperlegible', sans-serif;
    max-width: 900px;
    margin: 0 auto;
    padding: 20px;
    color: #000000;
    background: #ffffff;
}

.gradient-text {
    background: -webkit-linear-gradient(#b5a2ff, #ffc8c8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.gradient-bg {
    background: linear-gradient(45deg, #b5a2ff, #ffc8c8);
}

.gradient-2 {
    background: linear-gradient(45deg, rgb(255, 60, 60), rgb(25, 190, 108));    
}

.align-center {
    text-align: center;
}

a {
    color: #000000;
    text-decoration: underline;
}

a:hover {
    color: #424242
}

h1 {
    font-size: 4em;
    margin-top:15px;
    margin-bottom: 15px;
}
div {
    margin-top: 0px;
    margin-bottom: 0px;
}
form {
    display: flex;
    flex-direction: column;
}
h2 {
    margin-top: 5px;
    margin-bottom: 5px;
}
p {
    margin-top: 0px;
    line-height: 1.25;
}
li {
    margin-top: 0px;
    line-height: 1.25;
    margin-bottom: 5px;
}
label {
    margin-top: 10px;
}
.code {
    font-family: 'Berkeley', monospace;
    background: #c0c0c0;
    padding: 5px;
    border-radius: 10px;
    margin-top: 12px;
    margin-bottom: 10px;
    margin-left: 10px;
}
.code:hover {
    background: #999;
}
input, textarea {
    margin-top: 5px;
    margin-bottom: 10px;
    padding: 10px;
    border-radius: 10px;
    border-color: #111;
    border-width: 2px;;
    font-family: 'Berkeley', monospace;
}
.submit-button {
    background-color: #2aa6ff;
    color: white;
    padding: 10px;
    cursor: pointer;
    border-radius: 10px;
    font-weight: bold;
    font-family: 'Berkeley', monospace;
}
.submit-button:hover {
    background-color: #007fd9;
}

.info-tooltip {
    vertical-align: super;
    position:relative;
    font-weight: 100;
    font-family: 'Berkeley', monospace;
    font-size: medium;
}

.info-tooltip:before {
    content: attr(data-text); /* here's the magic */
    position:absolute;

    /* basic styles */
    padding:20px;
    border-radius:10px;
    background:#606060d0;
    color: #fff;
    text-align:center;
    display:none; /* hide by default */
}

.info-tooltip:hover:before {
    display:block;
}

.section {
    width: 900px;
    margin-top: 20px;
    margin-bottom: 20px;
    margin-left: 0px;
    margin-right: 0px;
}

.section img {
    max-width: 900px;
    border: 1px solid black;
}

.button {
    width: 100%;
    padding:20px;
    border: 1px solid #000000;
    border-radius:10px;
    color: #fff;
    background-color: #5a44ff;
    font-weight: bold;
    font-family: 'Berkeley', monospace;
    text-transform: uppercase;
}

.button:hover {
    text-decoration: underline;
    background-color: #6f5cff;
}

@media (max-width: 900px) {
    button {
        font-size:large;
    }
    .signal-button {
        width: 100%;
    }
    .section {
        width: 100%;
    }
    .section img {
        max-width: 100%;
        left:auto;
    }
}

input {
    border: 0;
}

button {
    border: 0;
    margin-bottom: 10px;
}

@media screen and (max-width: 900px) {

    h1 {
        font-size: 2em;
    }
}