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

:root {
  --primary: #3c577e; /*#7d3232;*/;
  --secondary: #506bc8;
  --primarydark: #506bc8; /* 012E39*/
  --beige: #FCDEA6;
  --success: #4a816a;
}
/*
	font-family: 'Open Sans', sans-serif;
*/
html{
    font-size:16px;
    font-smooth: auto;
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
}
body {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	color: rgba(0,0,0,0.8);
	margin: 0;
	padding: 0;
	max-width: 720px;
    background:#F4F4F4;
}
img {
	border: none;
	height: auto;
	max-width: 100%;
	margin: 0 0 20px 0;
}
select{
    border:none;
    padding:15px;
    font-size:1rem;
}
strong, b {
    font-family: 'Lato', sans-serif;
	font-weight: 700;	
}
address{
    font-style:normal;
    margin-bottom:10px;
}
input,
button,
a.cm-btn,
.cm-btn a {
	padding: 15px;
	margin-bottom: 20px;
	font-size: 1rem;
	font-weight: 400;
	transition: 0.15s ease-in-out;
}
.cm-btn[disabled]{
    opacity:.5;
}
.btn-success{
    background-color: #4a816a;
    border-color: #4a816a;
}
textarea{
    max-width:100%;
    min-width:100%;
    border: 0;
    padding:10px;
}
input, button{
    border:none;
}
input[type=text]{
	padding:15px;
}
input[type=text].search{
	padding:15px 15px 15px 15;
}
.input-container input{
    padding-left:45px;
}
.search-container, .input-container{
    position:relative;
}
.input-container:before{
    font-family: 'Font Awesome 5 Pro';
    position: absolute;
    left:15px;
    top:15px;
    z-index: 1;
    font-weight: 900;
    color:#989898;
}
.search-container:before{
    font-family: 'Font Awesome 5 Pro';
    content: "\f002";
    font-style: normal;
    color: var(--primary);
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    font-size:16px

}
.select{
    position:relative;
    
}
.select:after {
    padding: 15px;
    content: "\f0d7";
    font-family: 'Font Awesome 5 Pro';
    position: absolute;
    top: 0;
    right: 0;
    pointer-events: none;
}
a {
	text-decoration: none;
}
a:hover {
	color: #000;
    text-decoration: none;
}
h1{
    line-height: 1;
}
p,h1,h2,h3,h4,h5 {
	margin: 0;
	padding: 0;
}
p {
	font-size: 1rem;
	line-height: 1.5;
	padding-bottom: 20px;
	font-weight:400;
}
p.small {
	font-size: 0.8rem;
}
.introtext {
	font-size: 20px;
	font-weight: 400;
}
h1,h2,h3,h4,h5 {
	font-weight: 600;
	padding-bottom: 10px;
	line-height: 1.5;
}
h1 {
	font-size: 2.2rem;
}
h2 {
	font-size: 2rem;
}
h3 {
	font-size: 1.6rem;
}
h4 {
	font-size: 1.4rem;
}
h5{
    font-size:1rem;
}
.bold{
    font-weight:600;
}
.extrabold{
    font-weight:900;
}

.wide {
	width: 100% !important;
}
hr {
    border: 0;
    height: 1px;
    background: rgba(0,0,0,0.2);
}
.caps {
	text-transform: uppercase;	
}

/* ### UL / LIST ### */
ul {
	padding-left:20px;
	list-style: none;
}
ul, ol {
	margin: 0;
	padding-bottom: 10px;
}
ul li { 
	position: relative;
	padding-bottom: 10px;
}
/*
ul li:before {
    content: "■ ";
	color: #1c3f93;
	font-family: Arial, sans-serif;
	position: absolute;
	left: -20px;
}
*/
ul li ul{
    padding-bottom:0px;
}
ul li ul li{
    padding-bottom:0px;
    padding-top:10px;
}
iframe{
    width:100%;
}
ul.inline {
	padding: 0;
	margin: 0 0 20px;	
	list-style: none;
}
ul.inline li {
	display: inline-block;
	padding-left: 0;
	padding-right: 10px;
    text-indent: 0;
	padding-bottom: 0;
}
ul.clean li:before {
	display: none;
}

/* ### TABLE ### */
table {
    border-spacing: 0px;
	width: 100%;
    overflow-x: auto;
}
th, thead td {
    color:#012E39;
	font-size: 1rem;
	font-weight: 600;
}
td {
    padding: 10px;
}
table tr {
    border-top:2px solid rgba(0,0,0,0.1);
}
th, thead tr{
    border-top:0px;
}
/* ### BLOCKQUOTE ### */
blockquote {
	font-size: 1.4rem;
	color: #323232;
	font-weight: 400;
	margin: 0px 0 10px 10px;
	font-style: italic;
}
blockquote p:before {
	font-family: FontAwesome;
	content: "\f10e";
	font-style: normal;
	margin-right: 5px;
	color: #1c3f93;
	font-size:1.8rem;
}
blockquote p{
	font-weight: 400;
}
.primary-color{
    color:#012E39;
}
.secondary-color{
    color:var(--secondary);
}
a.cm-btn,
.cm-btn a,
button, .cm-btn {
	display: inline-block;
	text-align: center;
	width: auto;
	cursor: pointer;
	margin-right:20px;
    border-width:2px;
    border-style:solid;
    border-radius: 2px;
    text-decoration: none;
    font-weight: 500;
    height: 45px;
    line-height: 43px;
    font-size: 1rem;
    padding: 0 20px;
    vertical-align: middle;
}
.text-primary{
    color:#012E39!important;
}
.text-secondary{
    color:var(--secondary)!important;
}
.text-grey{
    color:#E9EEEF;
}
.text-grey-darker{
    color:#B9B9B9;
}
.text-blue{
    color: var(--primary);
}
.text-green{
    color:#68A141;
}
.text-red{
    color:#FF0000;
}
.bg-primary{
    background-color:var(--primary)!important;
}
.bg-secondary{
    background-color:var(--secondary)!important;
}
.bg-grey{
    background-color:#E9EEEF;
}
.bg-white{
    background:#FFF;
}
.bg-blue{
    background-color: #4a816a;
}
.bg-green{
    background-color:#68A141;
}
.bg-red{
    background-color:#FF0000;
}
.bg-light-blue{
  background-color: #E9EEEF;
}
.bg-beige{
    background-color: var(--beige);
}
.bg-blue-overlay:before{
  content:"";
  background:rgba(1,1,1,.45);
  position: absolute;
  top:0;
  right:0;
  left:0;
  bottom:0;
}
.cm-btn-primary{
	background-color:#012E39;
	color:#FFF;
    border-color:#012E39;
}
.cm-btn-primary:hover{
	background-color:transparent;
	color:#1c3f93;
}
.cm-btn-secondary{
	background-color:var(--secondary);
	color:#FFF;
    border-color:var(--secondary);
}
.cm-btn-secondary:hover{
	background-color:transparent;
	color:var(--secondary);
}
.cm-btn-grey{
    background-color:#E9EEEF;
    color:#000;
    border-color:#E9EEEF;
}
.cm-btn-white{
    background-color:#FFF;
    color:#000;
    border-color:#FFF;
}
.cm-btn-white:hover{
    background-color:transparent;
    color:#FFF;
}
.cm-btn-outline{
    background:transparent;
}
.cm-btn-primary.cm-btn-outline{
    color:#010101;
    background-color: #e9eeef;
    border-color: #e9eeef;
}
.cm-btn-primary.cm-btn-outline:hover{
    background-color:#d0d0d0;
    border-color: #d0d0d0;
}
.cm-btn-secondary.cm-btn-outline{
    color: #FFF;
    background:var(--secondary);
}
.cm-btn-secondary.cm-btn-outline:hover{
    background-color: var(--primary);
}
.cm-btn-grey.cm-btn-outline{
    color:#E9EEEF;
}
.cm-btn-grey.cm-btn-outline:hover{
    background-color:#E9EEEF;
    color:#012E39;
}
.cm-btn-white.cm-btn-outline{
    color:#FFF;
}
.cm-btn-white.cm-btn-outline:hover{
    background-color:#FFF;
    color:#012E39;
}

input[type=radio   ]:not(old){
  width     : 2em;
  margin    : 0;
  padding   : 0;
  font-size : 1em;
  opacity   : 0;
}
input[type=radio   ]:not(old) + label{
  margin-left  : 0;
  line-height  : 1.5em;
}
input[type=radio   ]:not(old) + label > span{
  display          : inline-block;
  width            : 20px;
  height           : 20px;
  margin           : 0.25em 0.5em 0.25em 0.25em;
  border-radius    : 100%;
  background       : #FFF;
  vertical-align   : bottom;
}

input[type=radio]:not(old):checked + label > span > span{
  display          : block;
  width            : 12px;
  height           : 12px;
  margin           : 0.27em;
  border-radius    : 100%;
  background       : #1c3f93;
}
input[type=checkbox   ]:not(old){
  width     : 0;
  margin    : 0;
  padding   : 0;
  font-size : 0;
  opacity   : 0;
  float     : left;
}
input[type=checkbox   ]:not(old) + label{
  margin-left  : 0;
  line-height  : 1.5em;
    margin-bottom:0;
    font-size: 1rem;
}
input[type=checkbox   ]:not(old) + label > span{
  display          : inline-block;
  width            : 20px;
  height           : 20px;
  margin           : 0.25em 0.5em 0.25em 0.25em;
  border:2px solid #d3d3d3;
  vertical-align   : bottom;
    border-radius:2px;
}
input[type=checkbox   ]:not(old):checked + label > span{
    border-color:var(--secondary);
    background: var(--secondary);
    border-radius:2px;
}
input[type=checkbox]:not(old):checked + label > span > span:after{
    display     : block;
    color       : #fff ;
    font-weight: 400;
    font-family: 'Font Awesome 5 Pro';
    content:"\f00c";
    margin-top:-4px;
    margin-left:0;
}

.mix-filters input[type=checkbox]:not(old):checked + label > span > span:after{
    font-size: 1rem;
}
button:focus{
    outline: none;
    border-color: var(--secondary);
    box-shadow: inset 0 0 0 1px black, 0 0 3px 1px rgba(0,0,0,0.2);
}



/* NEW STUFF */

.btn-white:hover{
    background: #000;
    color: #FFF;
    border-color: #000;
}
