/* SensEm Typography */

/* Font faces */
@font-face {
  font-family: 'Trade Gothic Light';
  src: url('../fonts/Trade Gothic Light.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Trade Gothic Bold';
  src: url('../fonts/Trade Gothic Bold.woff2') format('woff2');
  font-display: swap;
}

/* Typography variables */
:root {
  --font-primary: 'Trade Gothic Light', sans-serif;
  --font-bold: 'Trade Gothic Bold', sans-serif;
  --color-text: #4f4f44;
}

/* Base typography */
body {
  font-family: var(--font-primary);
  color: var(--color-text);
  font-weight: 300;
  font-size: 18px;
  line-height: 1.4;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

@media (max-width: 768px) {
  body {
    font-size: 16px;
  }
}


/* Headings */
h1,
h2,
h3,
h4 {
  font-family: var(--font-primary);
  font-weight: 590;
  margin-top: 1.0em;
  margin-bottom: 0.2em;
}

h1 {
  font-size: 1.6em;
}

h2 {
  font-size: 1.4em;
}

h3 {
  font-size: 1.2em;
}

h4 {
  font-size: 1.0em;
  margin-bottom: 0.1em;
}

/* Bold text styles */
h4,
strong {
  font-family: var(--font-bold);
  font-weight: normal;
  opacity: 0.8;
}


/* Text elements */
p {
  margin: 0.75em 0;
}

/* Remove top margin on elements directly after headings */
h1+*,
h2+*,
h3+*,
h4+* {
  margin-top: 0;
}

hr {
  border: none;
  border-top: 1px solid #ddd;
  margin: 2em 0;
}

/* Link styles */
a {
  color: var(--color-text);
  text-decoration: none;
}

a:hover {
  opacity: 0.7;
}

.main-content a {
  text-decoration: underline;
}

/* Lists */
.main-content ul,
.main-content ol {
  padding-left: 1.5em;
}

.main-content ul {
  list-style: none;
}

.main-content li {
  margin-bottom: 0.3em;
}

.main-content ul>li {
  position: relative;
}

.main-content ul>li::before {
  content: "–";
  position: absolute;
  left: -1.2em;
  color: #999;
}

/* Navigation links */
.nav-list a {
  font-size: 1.1em;
}