/* ---- Colour Variables ---- */

:root {
  --ucl-pale-pink: #F3E8FF;
  --ucl-pale-grey: #FAFAFA;
  --ucl-light-grey: #F2F2F2;
  --ucl-light-purple: #9A3BFF;
  --ucl-mid-purple: #6C29B2;
  --ucl-deep-purple: #361A54;
  --ucl-beige: #ECEAE4;
  --nhs-blue: #004089;
}

/* ---- Basic ---- */

@font-face {
    font-family: "UCL Sans";
    src: url("https://cdn.ucl.ac.uk/fonts/dm-sans/DMSans[opsz,wght].woff2") format("woff2");
    font-weight: 100 1000;
    font-style: normal;
    font-display:swap
}

body {
    background-color: WhiteSmoke;
    color: black;
    margin: 0;
/*    font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; */
    font-family: "UCL Sans", Arial, sans-serif;
    font-size: 13pt;
    line-height: 1.5;
}

h1, h2, h3,
h4, h5, h6,
b, em, strong {
   font-weight: bolder;
   margin: 0;
}

p {
   margin: 0 0 1.12em 0;
}

h1 {
   font-size: 3em;
   text-align: left;
   margin-bottom: 0.25em;
}

h2 {
   font-size: 1.5em;
   margin-bottom: .75em;
   text-align: left;
}

h3 {
   font-size: 1.17em;
   margin-bottom: .83em;
   text-align: left;
}

h4 {
   font-size: 1em;
   margin-bottom: 1.12em;
}

h5 {
   font-size: .83em;
   margin-bottom: 1.5em;
}

h6 {
   font-size: .75em;
   margin-bottom: 1.67em;
}

em {
   font-weight: bolder;
   font-style: normal;
   color: inherit;
}

img {
   padding: 1em;
}

figure {
  margin: 0 0 2ex 0;
  padding: 0;
}

figcaption {
  font-size: smaller;
  font-style: italic;
  margin: 0ex 2em 1ex 2em;
}

ul {
   list-style: outside;
   margin: 1.12em 0;
   padding: 0;
}

ol {
   margin: 1.12em 0;
   padding: 0;
}

li {
   margin: 0.5ex 2em;
}

ul ul {
   list-style: outside circle;
   margin: 0 0 0 1.12em;
}

table {
   border-collapse: collapse;
}

th {
   text-align: center;
   vertical-align: middle;
   font-weight: bolder;
   border-collapse: collapse;
}

td {
   margin: 0;
   text-align: left;
   vertical-align: middle;
   font-weight: normal;
   border-collapse: collapse;
}

blockquote {
  border: 1px solid black;
  padding: 1ex 1em;
  margin: 1ex 1em;
}

address {
   margin: 2ex 1em;
   font-style: normal;
}

address.right {
   text-align: right;
}

details {
   margin-bottom: 0.5ex;
}
summary {
   font-weight: bold;
}

/* ---- Links ---- */

a, a:link {
/*    color: #0d68cf; */
   color: var(--ucl-mid-purple);
   font-weight: normal;
   text-decoration: underline;
   text-underline-offset: 30%;
   text-decoration-thickness: 5%;
}

a:visited {
/*    color: #6345a5; */
   color: var(--ucl-mid-purple);
}

a:hover {
/*    color: #004089; */
   color: var(--ucl-light-purple);
   text-decoration-thickness: 10%;
}

a:active {
   color: var(--nhs-blue);
}

/* ---- Fonts ---- */

.italic {
   font-style: italic;
}

.smaller {
   font-size: 0.85em;
}

.larger {
   font-size: 1.1em;
}

.boldtext {
   font-weight: bold;
}

.normtext {
   font-weight: normal;
}

.basefont {
   font: inherit;
}

pre.wrapwords {
   white-space: pre-wrap;
}

/* ---- Colours ---- */

.white {
   color: white;
}

.whitebg {
   background-color: white;
}

.red {
   color: red;
}

.lightgray {
  color: lightgray;
}
