
body {
	background: #ccc;
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #fff;
    line-height: 24px;
}

strong { font-weight: 700; }

a, a:hover, a:focus {
	color: #336699;
	text-decoration: none;
    -o-transition: all .3s; -moz-transition: all .3s; -webkit-transition: all .3s; -ms-transition: all .3s; transition: all .3s;
}

h1, h2 {
	margin-top: 10px;
	font-size: 36px;
    font-weight: 700;
    color: #fff;
    line-height: 44px;
}

h5 {
	font-size: 11px;
    font-weight: 100;
    color: #333;
    line-height: 18px;
	padding:5px 15px;
}

hr {
	width:40%;
	margin:35px auto;
}
.mb75 {
	margin-bottom:75px;}

.pb150 {
	padding-bottom:150px;}


.img { max-width: 100%; }

::-moz-selection { background: #336699; color: #fff; text-shadow: none; }
::selection { background: #336699; color: #fff; text-shadow: none; }

.white {
	color:#fff;}

sup {
    position: relative;
font-size: 65%;
line-height: 0;
vertical-align: top;
	top:10px
}
.btn {
    border-radius:8px !important
}
/***** Top menu *****/

.navbar {
	padding-top: 15px;
	padding-bottom: 15px;
	font-size: 140%;
	font-weight: 100;
	background: #336699;
	text-align: center;
	border: 0;
	-o-transition: all .3s; -moz-transition: all .3s; -webkit-transition: all .3s; -ms-transition: all .3s; transition: all .3s;
}

ul.navbar-nav {
	font-size: 14px;
	color: #fff;
}

.navbar-inverse ul.navbar-nav li { padding-top: 8px; padding-bottom: 8px; }

.navbar-inverse ul.navbar-nav li .li-text { margin-right: 10px; opacity: 0.8; }

.navbar-inverse ul.navbar-nav li a { display: inline; padding: 0; color: #fff; }
.navbar-inverse ul.navbar-nav li a:hover { color: #fff; opacity: 1; border-bottom: 1px dotted #fff; }
.navbar-inverse ul.navbar-nav li a:focus { color: #fff; outline: 0; opacity: 1; border-bottom: 1px dotted #fff; }

.navbar-inverse ul.navbar-nav li .li-social a {
	margin: 0 7px;
	font-size: 28px;
	vertical-align: middle;
}
.navbar-inverse ul.navbar-nav li .li-social a:hover, 
.navbar-inverse ul.navbar-nav li .li-social a:focus { border: 0; color: #336699; }

.navbar-brand {
text-align: center;
	 font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-size: 190%;
	
/*	background: url(../img/rt.png) left center no-repeat; */

}
.navbar>.container .navbar-brand { margin-left: 0; }


/***** Description *****/

.description-container {
	padding-top: 40px;
	padding-bottom: 40px;
	text-align: center;
}

.description-title { padding-bottom: 10px; }
.description-text { opacity: 0.1; }

.description-text a { color: #fff; border: 0; }
.description-text a:hover,
.description-text a:focus { color: #fff; border-bottom: 1px dotted #fff; }

.description-text .divider-1 { margin-top: 50px; }


/***** Multi Step Form *****/

.msf-container { padding-bottom: 80px; text-align: center; }

.msf-title h3 { padding-bottom: 10px; font-weight: 700; font-size:270%; }
.msf-title h4 { padding-bottom: 10px; font-weight: 100; font-size:170%; }
.msf-title p { opacity: 0.8; }

.msf-form h4 {
	font-size:270%;
	margin-top: 20px;
	margin-bottom: 30px;
	font-weight: 100;
	line-height: 26px;
}
.msf-form h4 .step { font-size:50%; color: #aaa; }

.msf-form form fieldset { display: none; overflow: hidden; }

.msf-form form input[type="text"] { font-size:140%; width: 450px; margin-left: 5px; margin-right: -25px; font-weight:400; padding:25px 10px;}
.msf-form form input[type="tel"] { font-size:140%; width: 450px; margin-left: 5px; margin-right: -25px; font-weight:400; padding:25px 10px;}
.msf-form form input[type="email"] { font-size:140%; width: 450px; margin-left: 5px; margin-right: -25px; font-weight:400; padding:25px 10px;}
.msf-form form input[type="url"] { font-size:140%; width: 450px; margin-left: 5px; margin-right: -25px; font-weight:400; padding:25px 10px;}
.msf-form form input[type="number"] { font-size:140%; width: 450px; margin-left: 5px; margin-right: -25px; font-weight:400; padding:25px 10px;}
.msf-form form textarea.form-control { width: 700px; height: 160px; }

.msf-form form select.form-control { width: 400px; margin-left: 5px; margin-right: 5px; }

.msf-form form .form-group { margin-bottom: 15px; margin-right:15px}

.msf-form form button.btn { min-width: 100px; margin:15px 5px; }
.msf-form form button.btn:hover {
  background-color:#aaa;
}

.msf-form form p { opacity: 0.8; }

.msf-form form .radio-buttons-1,
.msf-form form .radio-buttons-2,
.msf-form form .checkboxes-1,
.msf-form form .checkboxes-2 { display: inline-block; margin: 0 15px 20px 27px; }

.msf-form form .selects-1,
.msf-form form .selects-2 { display: inline-block; margin: 0 0 20px 0; }

/* --- tooltips - https://codepen.io/tutsplus/pen/WROvdG -*/

/*radio -check box */
input[type="checkbox"],
input[type="radio"] {
  position: absolute;
  opacity: 0;
  z-index: -1;
	
}
label {
  position: relative;
  display: inline-block;
	font-size:160%;
	font-weight:600;
	color:#666;
	background-color:#bbb;
  margin-right: 0;
	padding: 0 20px 45px 40px;
  line-height: 20px;
  cursor: pointer;
	
}
label::before {
  content: " ";
  position: absolute;
  top: 8px;
  left: 0;
  display: block;
  width: 30px;
  height: 30px;
  border: 2px solid transparent;
  border-radius: 2px;
  z-index: -1;
	margin-right:10px;
}
input[type="radio"] + label::before {
  border-radius: 2px ;

}
input[type="radio"] + label::before {
  border-radius: 2px ;

}

/* Checked */
input[type="checkbox"]:checked + label,
input[type="radio"]:checked + label {
	color: #333;
	padding: 15px 30px ;
	background-color:#fff;
	margin-right:12px;
	border-radius: 8px
}
input[type="checkbox"]:checked + label,
input[type="radio"]:checked + label:hover {
	color: #333;
}

input[type="checkbox"]:checked + label::before,
input[type="radio"]:checked + label::before {
  top: 0;
  width: 100%;
  height: 100%;
  background: inherit;
		  border: 2px solid #ccc;
	color:#333;
}

/* Transition */
label,
label::before {
  -webkit-transition: .25s all ease;
  -o-transition: .25s all ease;
  transition: .25s all ease;
	padding:15px 30px;
	margin-right:12px;
	border-radius: 8px
}

label:hover {
	background-color:#f1f1f1;
}

.js {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.inputfile + label {
    max-width: 100%;
    font-size: 1.5rem;
    /* 20px */
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    padding: 1.625rem 2.25rem;
    /* 10px 20px */
}

.no-js .inputfile + label {
    display: none;
}

.inputfile:focus + label,
.inputfile.has-focus + label {
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
}

.inputfile + label * {
    /* pointer-events: none; */
    /* in case of FastClick lib use */
}

.inputfile + label svg {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
    margin-top: -0.25em;
    /* 4px */
    margin-right: 0.25em;
    /* 4px */
}


/* style 1 */

.inputfile-1 + label {
    color: #666;
    background-color: #f1f1f1;
	margin: 10px 15px;
}

.inputfile-1:focus + label,
.inputfile-1.has-focus + label,
.inputfile-1 + label:hover {
    background-color: #fff;
}


/* style 2 */

.inputfile-2 + label {
    color: #d3394c;
    border: 2px solid currentColor;
}

.inputfile-2:focus + label,
.inputfile-2.has-focus + label,
.inputfile-2 + label:hover {
    color: #722040;
}


/* style 3 */

.inputfile-3 + label {
    color: #d3394c;
}

.inputfile-3:focus + label,
.inputfile-3.has-focus + label,
.inputfile-3 + label:hover {
    color: #722040;
}


/* style 4 */

.inputfile-4 + label {
    color: #d3394c;
}

.inputfile-4:focus + label,
.inputfile-4.has-focus + label,
.inputfile-4 + label:hover {
    color: #722040;
}

.inputfile-4 + label figure {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background-color: #d3394c;
    display: block;
    padding: 20px;
    margin: 0 auto 10px;
}

.inputfile-4:focus + label figure,
.inputfile-4.has-focus + label figure,
.inputfile-4 + label:hover figure {
    background-color: #722040;
}

.inputfile-4 + label svg {
    width: 100%;
    height: 100%;
    fill: #f1e5e6;
}


/* style 5 */

.inputfile-5 + label {
    color: #d3394c;
}

.inputfile-5:focus + label,
.inputfile-5.has-focus + label,
.inputfile-5 + label:hover {
    color: #722040;
}

.inputfile-5 + label figure {
    width: 100px;
    height: 135px;
    background-color: #d3394c;
    display: block;
    position: relative;
    padding: 30px;
    margin: 0 auto 10px;
}

.inputfile-5:focus + label figure,
.inputfile-5.has-focus + label figure,
.inputfile-5 + label:hover figure {
    background-color: #722040;
}

.inputfile-5 + label figure::before,
.inputfile-5 + label figure::after {
    width: 0;
    height: 0;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
}

.inputfile-5 + label figure::before {
    border-top: 20px solid #dfc8ca;
    border-left: 20px solid transparent;
}

.inputfile-5 + label figure::after {
    border-bottom: 20px solid #722040;
    border-right: 20px solid transparent;
}

.inputfile-5:focus + label figure::after,
.inputfile-5.has-focus + label figure::after,
.inputfile-5 + label:hover figure::after {
    border-bottom-color: #d3394c;
}

.inputfile-5 + label svg {
    width: 100%;
    height: 100%;
    fill: #f1e5e6;
}


/* style 6 */

.inputfile-6 + label {
    color: #d3394c;
}

.inputfile-6 + label {
    border: 1px solid #d3394c;
    background-color: #f1e5e6;
    padding: 0;
}

.inputfile-6:focus + label,
.inputfile-6.has-focus + label,
.inputfile-6 + label:hover {
    border-color: #722040;
}

.inputfile-6 + label span,
.inputfile-6 + label strong {
    padding: 0.625rem 1.25rem;
    /* 10px 20px */
}

.inputfile-6 + label span {
    width: 200px;
    min-height: 2em;
    display: inline-block;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    vertical-align: top;
}

.inputfile-6 + label strong {
    height: 100%;
    color: #f1e5e6;
    background-color: #d3394c;
    display: inline-block;
}

.inputfile-6:focus + label strong,
.inputfile-6.has-focus + label strong,
.inputfile-6 + label:hover strong {
    background-color: #722040;
}

@media screen and (max-width: 50em) {
	.inputfile-6 + label strong {
		display: block;
	}
}

/* --- tooltips - https://codepen.io/tutsplus/pen/WROvdG -*/

/* START TOOLTIP STYLES */
[tooltip] {
  position: relative; /* opinion 1 */
}

/* Applies to all tooltips */
[tooltip]::before,
[tooltip]::after {
  text-transform: none; /* opinion 2 */
  font-size: .9em; /* opinion 3 */
	font-weight: 100;
  line-height: 130%;
  user-select: none;
  pointer-events: none;
  position: absolute;
  display: none;
  opacity: 0;
}
[tooltip]::before {
  content: '';
  border: 5px solid transparent; /* opinion 4 */
  z-index: 1001; /* absurdity 1 */
}
[tooltip]::after {
  content: attr(tooltip); /* magic! */
  
  /* most of the rest of this is opinion */
  font-family: "Open Sans";
  text-align: left;
	letter-spacing: .01rem;
  
  /* 
    Let the content set the size of the tooltips 
    but this will also keep them from being obnoxious */
    
  min-width: 20em;
  max-width: 55em;
	min-height: 3em;
	max-height: 30em;

/*	white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
*/  padding: 1.5ch 2.5ch;
  border-radius: .3ch;
	border:#ccc solid .5px;
  box-shadow: 0 .1em .1em -.1em rgba(0, 0, 0, 0.55);
  background: #fff;
  color: #333;
z-index: 1000; /* absurdity 2 */
}

/* Make the tooltips respond to hover */
[tooltip]:hover::before,
[tooltip]:hover::after {
  display: block;
}

/* don't show empty tooltips */
[tooltip='']::before,
[tooltip='']::after {
  display: none !important;
}

/* FLOW: UP */
[tooltip]:not([flow])::before,
[tooltip][flow^="up"]::before {
  bottom: 100%;
  border-bottom-width: 0;
  border-top-color: #333;
}
[tooltip]:not([flow])::after,
[tooltip][flow^="up"]::after {
  bottom: calc(100% + 5px);
}
[tooltip]:not([flow])::before,
[tooltip]:not([flow])::after,
[tooltip][flow^="up"]::before,
[tooltip][flow^="up"]::after {
  left: 50%;
  transform: translate(-50%, -.5em);
}

/* FLOW: DOWN */
[tooltip][flow^="down"]::before {
  top: 100%;
  border-top-width: 0;
  border-bottom-color: #fff;
	margin-left:-25px;
}
[tooltip][flow^="down"]::after {
  top: calc(100% + 5px);
}
[tooltip][flow^="down"]::before,
[tooltip][flow^="down"]::after {
  left: 50%;
  transform: translate(-50%, .5em);
}

/* FLOW: LEFT */
[tooltip][flow^="left"]::before {
  top: 50%;
  border-right-width: 0;
  border-left-color: #333;
  left: calc(0em - 5px);
  transform: translate(-.5em, -50%);
}
[tooltip][flow^="left"]::after {
  top: 50%;
  right: calc(100% + 5px);
  transform: translate(-.5em, -50%);
}

/* FLOW: RIGHT */
[tooltip][flow^="right"]::before {
  top: 50%;
  border-left-width: 0;
  border-right-color: #f9f9f9;
  right: calc(0em - 4px);
  transform: translate(.5em, -50%);
}
[tooltip][flow^="right"]::after {
  top: 50%;
  left: calc(100% + 15px);
  transform: translate(.5em, -50%);
}

/* KEYFRAMES */
@keyframes tooltips-vert {
  to {
    opacity: .9;
    transform: translate(-50%, 0);
  }
}

@keyframes tooltips-horz {
  to {
    opacity: .9;
    transform: translate(0, -50%);
  }
}

/* FX All The Things */ 
[tooltip]:not([flow]):hover::before,
[tooltip]:not([flow]):hover::after,
[tooltip][flow^="up"]:hover::before,
[tooltip][flow^="up"]:hover::after,
[tooltip][flow^="down"]:hover::before,
[tooltip][flow^="down"]:hover::after {
  animation: tooltips-vert 300ms ease-out forwards;
}

[tooltip][flow^="left"]:hover::before,
[tooltip][flow^="left"]:hover::after,
[tooltip][flow^="right"]:hover::before,
[tooltip][flow^="right"]:hover::after {
  animation: tooltips-horz 300ms ease-out forwards;
}
