.btn-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

/*Primary*/
.btn {
	position: relative;
	vertical-align: middle;
	display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 200px;
    padding: 10px 16px;
	background-color: white;
	outline: 2px solid #101F59;
	border-radius: 24px;
	color: #101F59;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	line-height: 27px;
	cursor: pointer;
}

.btn:focus,
.btn:hover {
	background-color: #101F59;
	color: white;
}

.btn.btn--primary-big {
    padding: 10px 16px;
	outline: 1px solid #101F59;
	font-weight: 400;
}

.btn.btn--primary-big:focus,
.btn.btn--primary-big:hover {
	background-color: #101F59;
	color: white;
}

.btn.btn--primary-small {
    font-size: 16px;
    line-height: 24px;
	outline: 1px solid #101F59;
}

.btn.btn--primary-small:focus,
.btn.btn--primary-small:hover {
	background-color: #101F59;
	color: white;
	font-weight: 400;
}

/*Secondary*/
.btn.btn--secondary-medium {
    background-color: #101F59;
	outline: 2px solid #101F59;
	color: white;
	font-weight: 400;
}

.btn.btn--secondary-medium:focus,
.btn.btn--secondary-medium:hover {
	background-color: #F6ED4E;
	outline: 2px solid #101F59;
	color: #101F59;
	font-weight: 700;
}

.btn.btn--secondary-big {
    padding: 10px 16px;
    background-color: #101F59;
	outline: 2px solid #101F59;
	color: white;
	font-weight: 400;
}

.btn.btn--secondary-big:focus,
.btn.btn--secondary-big:hover {
	background-color: #F6ED4E;
	outline: 2px solid #101F59;
	color: #101F59;
	font-weight: 700;
}

.btn.btn--secondary-xl {
	padding: 10px 32px;
    background-color: #101F59;
	outline: 2px solid #101F59;
	color: white;
	font-size: 24px;
	font-weight: 700;
	line-height: 36px;
}

.btn.btn--secondary-xl:focus,
.btn.btn--secondary-xl:hover {
	background-color: #F6ED4E;
	outline: 2px solid #101F59;
	color: #101F59;
	font-weight: 700;
}

.btn.btn--secondary-small {
    background-color: #101F59;
	outline: 2px solid #101F59;
	color: white;
    font-size: 16px;
    line-height: 24px;
}

.btn.btn--secondary-small:focus,
.btn.btn--secondary-small:hover {
	background-color: #F6ED4E;
	outline: 2px solid #101F59;
	color: #101F59;
	font-weight: 400;
}

/*Tertiary*/
.btn.btn--tertiary-medium {
    background-color: white;
	outline: 2px solid white;
	color: #101F59;
	font-weight: 400;
}

.btn.btn--tertiary-medium:focus,
.btn.btn--tertiary-medium:hover {
	background-color: #101F59;
	outline: 2px solid #F6ED4E;
	color: #F6ED4E;
	font-weight: 700;
}

.btn.btn--tertiary-big {
    padding: 10px 16px;
    background-color: white;
	outline: 2px solid white;
	color: #101F59;
}

.btn.btn--tertiary-big:focus,
.btn.btn--tertiary-big:hover {
	background-color: #101F59;
	outline: 2px solid #F6ED4E;
	color: #F6ED4E;
}

.btn.btn--tertiary-small {
    background-color: white;
	outline: 2px solid white;
	color: #101F59;
    font-size: 16px;
    line-height: 24px;
}

.btn.btn--tertiary-small:focus,
.btn.btn--tertiary-small:hover {
	background-color: #101F59;
	outline: 2px solid #F6ED4E;
	color: #F6ED4E;
	font-weight: 400;
}

/*White outline border*/
.btn.btn--outline {
	background-color: transparent;
	outline: 2px solid white;
	color: white;
	font-weight: 400;
}

.btn.btn--outline:focus,
.btn.btn--outline:hover {
	background-color: #F6ED4E;
	outline: 2px solid #F6ED4E;
	color: #101F59;
	font-weight: 700;
}

/*No border*/
.btn.btn--no-border {
	justify-content: flex-start;
	background-color: transparent;
	border-radius: 2px;
	outline: 2px solid transparent;
	color: #101F59;
	font-weight: 400;
	text-decoration: underline;
}

.btn.btn--no-border:focus,
.btn.btn--no-border:hover {
	background-color: white;
	outline: 2px solid #101F59;
}

/* Arrow */
.btn--arrow {
	padding: 8px;
	min-width: auto;
	background-color: transparent;
	border-radius: 50% 50%;
	outline: 3px solid #101F59;
}

.btn--arrow svg {
	fill: #0C1E5F;
	width: 22px;
	height: 22px;
}

.btn--arrow:focus,
.btn--arrow:hover {
 	background-color: #0C1E5F;
}

.btn--arrow:focus svg,
.btn--arrow:hover svg {
 	fill: white;
}

/* Icon */
.btn--icon {
	background-color: transparent;
	outline: 2px solid transparent;
	border-radius: 12px;
	font-size: 16px;
	font-weight: 400;
	color: black;
	text-transform: none;
	text-decoration: underline;
}

.btn--icon:focus,
.btn--icon:hover {
	background-color: white;
	outline: 2px solid #101F59;
	color: black;
	text-decoration: underline;
}

.btn--icon svg,
.btn--icon img {
	margin-right: 10px;
}

/*Icon modifier - button icon with no border*/
.btn--icon.btn--no-border {
	justify-content: flex-start;
	background-color: transparent;
	border-radius: 12px;
	outline: 2px solid transparent;
	color: #101F59;
	font-size: 18px;
	font-weight: 400;
	text-decoration: underline;
	text-align: left;
}

.btn--icon.btn--no-border:focus,
.btn--icon.btn--no-border:hover {
	background-color: white;
	outline: 2px solid #101F59;
}

.btn--icon.btn--no-border svg {
	margin-right: 10px;
	min-width: 20px;
	width: 20px;
	height: 20px;
}

/* Icon modifier - button icon with blue colour*/
.btn--icon.btn--icon-blue {
	border: 1px solid #0C1E5F;
	color: #0C1E5F;
}

.btn--icon.btn--icon-blue svg {
	margin-right: 10px;
	width: 24px;
	height: 28px;
}

/* Icon modifier - button icon with primary*/
.btn.btn--icon-primary svg {
	margin-right: 10px;
}

.btn.btn--icon-primary:focus svg path,
.btn.btn--icon-primary:hover svg path {
	fill: white;
}

/* Icon modifier - button icon with tertiary*/
.btn.btn--icon-tertiary svg {
	margin-right: 10px;
}

.btn.btn--icon-tertiary:focus svg path,
.btn.btn--icon-tertiary:hover svg path {
	fill: #F6ED4E;
}

/*Back to top*/
#backToTop {
	display: none;
	position: fixed;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	row-gap: 8px;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	padding: 10px;
	background-color: transparent;
	border: none;
	outline: none;
	color: black;
	font-size: 12px;
	cursor: pointer;
    z-index: 100;
}

#backToTop span {
	max-width: 32px;
	background-color: white;
}

#backToTop svg {
	width: 30px;
	height: 30px;
	fill: white;
}

#backToTop:focus svg,
#backToTop svg:hover {
	fill: #101F59;
}

#backToTop:focus svg path:nth-of-type(3),
#backToTop svg:hover path:nth-of-type(3) {
	fill: #F6ED4E;
}



@media all and (min-width: 700px) {
	/*Back to top*/
	#backToTop {
		right: 5px;
		font-size: 14px;
	}

	#backToTop span {
		max-width: 40px;
	}

	#backToTop svg {
		width: 40px;
		height: 40px;
	}
}

@media all and (min-width: 1400px) {
	.btn.btn--primary-big {
	    padding: 16px 32px;
	}

	.btn.btn--secondary-big {
	    padding: 16px 32px;
	}

	.btn.btn--tertiary-big {
	    padding: 16px 32px;
	}

	/*Back to top*/
	#backToTop {
		right: 10px;
		font-size: 16px;
	}

	#backToTop span {
		max-width: unset;
	}

	#backToTop svg {
		width: unset;
		height: unset;
	}
}