@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,700;1,400;1,700&display=swap');

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

:root {
	--light: white;
	--highlight: #92BDD9; /* half baked */
	--main: #006c95; /* bahama blue */
	--accent: #DF4E6E; /* mandy */
	--dark: #23182B; /* bleached cedar */
}

/* Typography
--------------------------------------------- */
body,
input,
select,
optgroup,
textarea {
	color: var(--dark);
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p,
li,
.text-18 {
	font-size: 18px;
	font-size: 1.125rem;
}

li {
	margin-bottom: .4em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Colors
--------------------------------------------------------------*/

.bg-light {
	background: var(--light) !important;
}

.text-light {
	color: var(--light) !important;
}

.border-light {
	border-color: var(--light) !important;
}

.bg-highlight {
	background: var(--highlight);
}

.text-highlight {
	color: var(--highlight);
}

.border-highlight {
	border-color: var(--highlight) !important;
}

.bg-main {
	background: var(--main);
}

.text-main {
	color: var(--main);
}

.border-main {
	border-color: var(--main) !important;
}

.bg-accent {
	background: var(--accent);
}

.text-accent {
	color: var(--accent);
}

.border-accent {
	border-color: var(--accent) !important;
}

.bg-dark {
	background: var(--dark) !important;
}

.text-dark {
	color: var(--dark) !important;
}

.border-dark {
	border-color: var(--dark) !important;
}

/*--------------------------------------------------------------
# Extras
--------------------------------------------------------------*/

.border-top-main {
	border-top: 8px solid var(--main);
}

.border-top-accent {
	border-top: 8px solid var(--accent);
}

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

a {
	color: var(--accent);
	text-decoration: none;
}

button,
a.btn {
	font-size: 18px !important;
	font-size: 1.125rem !important;
}

.site-info a {
	color: var(--light);
	text-decoration: none;
}

a:hover,
a:focus,
a:active {
	color: var(--highlight);
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

a.btn:hover,
a.btn:focus,
a.btn:active,
.btn:hover,
.btn:focus,
.btn:active {
	background: var(--highlight) !important;
	color: var(--main) !important;
}

a.btn:hover .fas,
a.btn:focus .fas,
a.btn:active .fas {
	color: var(--main) !important;
}

.partners a:hover img,
.partners a:focus img,
.partners a:active img {
	box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
	border-radius: 14px;
}

.dropdown-item:hover,
.dropdown-item:focus,
.dropdown-item:active {
	background: var(--highlight) !important;
	color: var(--main) !important;
}

.newsletter .btn:hover,
.newsletter .btn:focus,
.newsletter .btn:active {
	background: var(--light) !important;
}


/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/

/* hero icon */

@media only screen and (max-width: 1479px) {

	.bg-main .fa-solid {
		font-size: 8em;
	}

}

@media only screen and (max-width: 767px) {

	.bg-main .fa-solid {
		font-size: 6em;
	}

}

@media only screen and (max-width: 595px) {

	.bg-main .fa-solid {
		font-size: 6em;
	}

}

/* heading decoration */

.heading-line-light::before {
	content: "";
	width: 10rem;
	height: 0.1rem;
	display: block;
	margin: 0 auto;
	background-color: var(--light);
}
  
.heading-line-light::after {
	content: "";
	width: 2rem;
	padding-top: 0.5rem;
	height: 0.2rem;
	display: block;
	margin: 0 auto;
	margin-bottom: 1rem;
	background-color: var(--light);
}

.heading-line-accent::before {
	content: "";
	width: 10rem;
	height: 0.1rem;
	display: block;
	margin: 0 auto;
	background-color: var(--accent);
}
  
.heading-line-accent::after {
	content: "";
	width: 2rem;
	padding-top: 0.5rem;
	height: 0.2rem;
	display: block;
	margin: 0 auto;
	margin-bottom: 1rem;
	background-color: var(--accent);
}

/* partners */

img.logo {
	max-width: 100%;
}


/* footer */

.site-info ul {
	list-style-type: none;
}

.site-info li {
	margin-bottom: 0.5rem;
	text-decoration: none;
}

.site-info li a {
	color: var(--light);
	text-decoration: none;
}

.site-info li a:hover {
	color: var(--accent);
}

.site-info img {
	max-height: 100px;
	max-width: 100%;
}

/* back to top */

.back-to-top {
	position: fixed;
	width: 3rem;
	height: 3rem;
	right: 1.875rem;
	bottom: 1.875rem;
	z-index: 9999;
}
.back-to-top i {
	font-size: 1rem;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
