/* Display */
.display-block
{
    display: block;
}
.display-inline-block
{
    display: inline-block;
}
.display-flex
{
    display: flex;
}
.display-none
{
    display: none;
}

/* Position */
.position-relative
{
    position: relative;
}

/* Headers */
.header-level1
{
    font-size: 36px;
    font-weight: 900;
	text-align: center;
}

.header-level2
{
    font-size: 32px;
	text-align: center;
}

.header-level3
{
    font-size: 26px;
	text-align: center;
}
.header-level4
{
    font-size: 20px;
	text-align: center;
}

.header-decoration:before
{
	content: ".:";
	font-size: 50px;
	color: #ff7e00;
	margin-right: 10px;
}
.header-decoration:after
{
	content: ":.";
	font-size: 50px;
	color: #ff7e00;
	margin-left: 10px;
}

/* Links */
.link
{
    color: #0018B2;
    text-decoration: none;
    font-weight: 700;
    cursor: pointer;
}
.link:visited
{
    color: #0018B2;
}
.link:hover
{
    color: #ff7e00;
}
.link_white
{
    color: #ffffff;
}

/* Widths */
.width-100
{
    width: 100%;
}
.width-50
{
    width: 50%;
}

/* Margins */
.no-margin
{
    margin: 0;
}
.margin-centre
{
    margin-left: auto;
    margin-right: auto;
}
.margin-one
{
    margin: 1rem;
}
.margin-top-zero
{
    margin-top: 0;
}
.margin-top-half
{
    margin-top: 0.5rem;
}
.margin-top-one
{
    margin-top: 1rem;
}
.margin-top-two
{
    margin-top: 2rem;
}
.margin-top-three
{
    margin-top: 3rem;
}
.margin-bottom-zero
{
    margin-bottom: 0;
}
.margin-bottom-one-px
{
    margin-bottom: 1px;
}
.margin-bottom-one
{
    margin-bottom: 1rem;
}
.margin-bottom-two
{
    margin-bottom: 2rem;
}
.margin-bottom-three
{
    margin-bottom: 3rem;
}
.margin-left-half
{
    margin-left: 0.5rem;
}
.margin-left-quarter
{
    margin-left: 0.25rem;
}
.margin-right-half
{
    margin-right: 0.5rem;
}

/* Paddings */
.padding-zero
{
    padding: 0;
}
.padding-half
{
    padding: 0.5rem;
}
.padding-one
{
    padding: 1rem;
}
.padding-left-right-half
{
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
.padding-left-right-one
{
    padding-left: 1rem;
    padding-right: 1rem;
}
.padding-left-right-three
{
    padding-left: 3rem;
    padding-right: 3rem;
}

/* Text colour */
.rc-orange-text
{
	color: #ff7e00;
}
.white-text
{
    color: #ffffff;
}
.red-text
{
	color: #f10000;
}
.grey-text
{
    color: #707070;
}

/* Background color */
.background-red
{
	background-color: #e60000;
}
.background-grey
{
	background-color: #6e6e6e;
}
.background-blue
{
	background-color: #185abc;
}
.background-orange
{
	background-color: #ff7e00;
}
.background-green
{
	background-color: #209101;
}
.background-yellow
{
	background-color: #ffd000;
    color: #222222;
}
.background-blue-grey
{
	background-color: #4982b3;
}
.background-light-blue-grey
{
	background-color: #c9dae8;
    color: #437bab;
}

/* Wrappers */
.centre-content
{
    display: table; /* Backwards compatible way of using width: fit-content; */
    margin-left: auto;
    margin-right: auto;
}
.vertical-centre-flex
{
    align-self: center;
}
.vertical-top
{
    vertical-align: top;
}
.vertical-middle
{
    vertical-align: middle;
}
.no-wrap
{
    white-space: nowrap;
}

/* Layout */
.flex-centre-children
{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.flex-centre-children > *
{
    /*flex-shrink: 0;*/
    margin-left: auto;
    margin-right: auto;
}

.flex-space-between
{
    justify-content: space-between;
}
.flex-justify-content-center
{
    justify-content: center;
}
.flex-end
{
    justify-content: end;
}
.flex-align-items-center
{
    align-items: center;
}
.flex-direction-column
{
    flex-direction: column;
}

.grid-50
{
    display: grid;
    grid-template-columns: 1fr 1fr;
}

/* Gap */
.column-gap-quarter
{
    column-gap: 0.25rem;
}
.column-gap-one
{
    column-gap: 1rem;
}
.gap-quarter
{
    gap: 0.25rem;
}
.gap-half
{
    gap: 0.5rem;
}
.gap-one
{
    gap: 1rem;
}
.gap-three
{
    gap: 3rem;
}

/* Overflow */
.scroll-x
{
    overflow-x: auto;
}

/* Text justification */
.text-left
{
    text-align: left;
}
.text-centre
{
    text-align: center;
}
.text-right
{
    text-align: right;
}
.break-word
{
    word-wrap: break-word;
}
.line-break
{
    line-break: anywhere;
}

/* Text style */
.bold
{
    font-weight: 700;
}
.extra-bold
{
    font-weight: 800;
}
.italic
{
    font-style: italic;
}
.uppercase
{
    text-transform: uppercase;
}
.line-through
{
    text-decoration: line-through;
}
.underline
{
    text-decoration: underline;
}

/* Text size */
.extra-large-text
{
    font-size: 3.4rem;
}
.large-text
{
    font-size: 2.6rem;
}
.small-text
{
    font-size: 0.75rem;
}
.medium-text
{
    font-size: 0.9rem;
}

/* Paragraphs */
.rc-paragraph
{
    font-size: 16px;
    font-family: 'Montserrat', sans serif;
    line-height: 2rem;
}

/* Cursor */
.pointer-cursor
{
    cursor: pointer;
}
.default-cursor
{
    cursor: default;
}