:root { --white: white; --lightgray: whitesmoke; --black: black; --transparent: transparent; --fa-rotate-angle: 45deg; }
* { margin: 0; padding: 0; scroll-padding-top: var(--header); font-family: "Plus Jakarta Sans", sans-serif; background-color: var(--transparent); font-size: inherit; color: inherit; font-weight: inherit; text-decoration: none; scroll-behavior: smooth; outline: none; border: none; box-sizing: border-box; -webkit-font-smoothing: antialiased; font-variant-ligatures: none; }
html { font-size: 16px; color: var(--black); font-weight: 400; user-select: none; -webkit-user-select: none; -webkit-tap-highlight-color: transparent; -webkit-text-size-adjust: 100%; }

/* CLASS STYLES */

.c-white, .h-c-white:hover { color: var(--white); }
.bc-white, .h-bc-white:hover { background-color: var(--white); }
.c-lightgray, .h-c-lightgray:hover { color: var(--lightgray); }
.bc-lightgray, .h-bc-lightgray:hover { background-color: var(--lightgray); }
.c-black, .h-c-black:hover { color: var(--black); }
.bc-black, .h-bc-black:hover { background-color: var(--black); }
.bc-transparent, .h-bc-transparent:hover { background-color: var(--transparent); }
.fw-500 { font-weight: 500; }
.fw-600 { font-weight: 600; }
.fw-700 { font-weight: 700; }
.gap-8 { gap: 8px; }
.gap-16 { gap: 16px; }
.gap-32 { gap: 32px; }
.gap-64 { gap: 64px; }
.transition { transition: 250ms; }
.none { display: none; }
.block { display: block; }
.grid { display: grid; }
.flex { display: flex; flex-wrap: wrap; }
.column { flex-direction: column; }
.items-start { align-items: flex-start; }
.items-center { align-items: center; }
.content-center { justify-content: center; }
.space-between { justify-content: space-between; }
.text-center { text-align: center; }
.pointer:hover { cursor: pointer; }
.underline:hover { text-decoration: underline; }
.select-auto { user-select: auto; -webkit-user-select: auto; }

/* GENERAL STYLES */

/* header */
header { z-index: 2; position: sticky; position: -webkit-sticky; top: 0; left: 0; right: 0; }
nav, section { width: 100%; max-width: 1200px; }
nav { padding: 16px 32px; }
nav > a:first-child { font-size: 24px; }
nav, section, .margin-side-auto { margin-left: auto; margin-right: auto; }

/* main */
main { height: auto; min-height: calc( var(--screen) - var(--header) - var(--footer) ); }

@media (max-width: 573px) {

main { padding: 16px; }
section { padding: 16px; }
h1, h4 { font-size: 28px; }
h2 { font-size: 22px; }
h3 { font-size: 18px; }
.information-box { grid-template-columns: repeat(1, 1fr); }

}

@media (min-width: 574px) { 

main { padding: 32px; }
section { padding: 32px; }
h1, h4 { font-size: 40px; }
h2 { font-size: 24px; }
h3 { font-size: 20px; }
.information-box { grid-template-columns: repeat(2, 1fr); }

}

/* footer */
footer { padding: 16px; }