/* Regular */
@font-face {
  font-family: 'Atkinson Hyperlegible Next';
  src: url('../fonts/googlefonts/atkinson-hyperlegible-next/fonts/webfonts/AtkinsonHyperlegibleNext-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
}

/* Bold */
@font-face {
  font-family: 'Atkinson Hyperlegible Next';
  src: url('../fonts/googlefonts/atkinson-hyperlegible-next/fonts/webfonts/AtkinsonHyperlegibleNext-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
}

/* Italic */
@font-face {
  font-family: 'Atkinson Hyperlegible Next';
  src: url('../fonts/googlefonts/atkinson-hyperlegible-next/fonts/webfonts/AtkinsonHyperlegibleNext-Italic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
}

html {
  font-size: 16px;
}

body,
.slnt-text,
.slnt-text > * a {
  font-family: 'Atkinson Hyperlegible Next', sans-serif;
  font-size: 1rem;
  line-height: 1.4;
}

h1 {
  font-family: 'Atkinson Hyperlegible Next', sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  padding-bottom: 0.5em;
  margin-block: 0;
}

h2 {
  font-family: 'Atkinson Hyperlegible Next', sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
  margin-block: 0;
}

h3 {
  font-family: 'Atkinson Hyperlegible Next', sans-serif;
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1;
  padding-bottom: 0.5em;
  margin-block: 0;
}

h4 {
  font-family: 'Atkinson Hyperlegible Next', sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  margin-block: 0;
}

@media (max-width: 799px) {
  h1 {
    font-size: 1.75rem;
    line-height: 1;
    padding-bottom: 0.5em;
  }
  h2 {
    font-size: 1.4rem;
    line-height: 1;
  }
  h3 {
    font-size: 1.15rem;
  }
  h4 {
    font-size: 1rem;
  }
}

/* Content heading colours */
.layout-content h1,
.layout-content h2,
.layout-content h3 {
  color: var(--solent-blue);
}

/* Body content links */
.layout-content a {
  color: var(--text);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: var(--magenta);
  text-underline-offset: 3px;
  text-decoration-thickness: 2px;
  transition: color 0.15s;
}

.layout-content a:hover {
  color: var(--magenta);
}

/* Hero art style title */
.hero-art-style__title {
  font-size: 1.8rem;
  line-height: 1.2;
}

@media (max-width: 799px) {
  .hero-art-style__title {
    font-size: 1.4rem;
  }
}

/* Menu typography */

.main-menu-item-container li.main-menu-item-wrapper > ul {
  font-weight: 800;
}

@media (max-width: 799px) {
  button.main_nav_link,
  a.main_nav_link {
    font-size: 1.6rem;
  }

  .sub-menu-container a.first-link,
  .sub-menu-item-container a {
    font-size: 1.2rem;
  }

  .slnt-togl-expand .menu-text {
    font-size: 1rem;
    line-height: 1em;
  }
}

@media (min-width: 800px) {
  .sub-menu-container .first-link:hover,
  .sub-menu-item-container a:hover {
  }
}

/* Search page typography */
body.search-results-page #block-slnt-content h2 {
  font-size: 1.4rem;
}

.search-results-wrapper .search-results h3 {
  font-size: 1.1rem;
}

.search-results-wrapper .search-results li {
  font-size: 0.95rem;
}

.search-results-wrapper .search-results p {
  font-size: 0.95rem;
  line-height: 1.5;
}

.search-results-wrapper .search-results li > p:last-child {
  font-size: 0.85rem;
}

@media (max-width: 799px) {
  body.search-results-page #block-slnt-content h2 {
    font-size: 1.2rem;
  }
}

/* Menu paragraph heading */
.paragraph-menu__heading {
  font-size: 1.1rem;
  font-weight: 700;
}

/* Small text utility */
small, .text-small {
  font-size: 0.85rem;
}
