* {
	box-sizing: border-box;
}

html {
	background-color: #fff;
	height: 100%;
	margin: 0;
	min-height: 100%;
	overflow: hidden;
	padding: 0;
	font: normal 16px/21px Verdana, Helvetica, sans-serif;
	
	background-repeat: no-repeat;
	background-position: center;
	background-attachment: fixed;
	-webkit-background-size: cover;
	background-size: cover !important;
}

@media only screen and (max-device-width: 767px) and (orientation: portrait) {
	html {background-image: url(Victoria-Harbour-vertical-375.jpg);}
}
	
@media only screen and (min-device-width: 768px) and (orientation: portrait) {
	html {background-image: url(Victoria-Harbour-vertical-768.jpg);}
}
	
@media only screen and (max-device-width: 1023px) and (orientation: landscape) {
	html {background-image: url(Victoria-Harbour-667.jpg);}
}
	
@media only screen and (min-device-width: 1024px) and (max-device-width: 1365px) and (orientation: landscape) {
	html {background-image: url(Victoria-Harbour-1024.jpg);}
}
	
@media only screen and (min-device-width: 1366px) and (max-device-width: 1919px) and (orientation: landscape) {
	html {background-image: url(Victoria-Harbour-1366.jpg);}
}
	
@media only screen and (min-device-width: 1920px) and (orientation: landscape) {
	html {background-image: url(Victoria-Harbour-1920.jpg);}
}

body {
	height: 100%;
	margin: 0;
	min-height: 100%;
	overflow: auto;
	padding: 10px 0 0 0;
	text-align: center;
}

img {
	border: none;
	max-width: 100%;
}

#wrapper {
	width: 93.75%;
	max-width: 1200px;
	height: auto;
	min-height: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	position: relative;
}

#title {
	width: 100%;
	margin: 10px auto;
	padding: 0;
	text-align: center;
	position: relative;
	background: none;
}

#title img {
	width: 100%;
	max-width: 300px;
}

.flex-container {
	align-items: flex-start;
	display: flex;
	font-size: 1.0rem;
	height: 100%;
	flex-flow: row wrap;
	justify-content: center;
}

.flex-container > div.lft, .flex-container > div.rgt, .flex-container > div.full {	
	border: 0;
	height: auto;
	margin: 0;
	padding: 0;
	position: relative;
	text-align: center;
	width: 100%;
}

.box80, .box100, .box100Ctr {
	background-color: rgba(0,0,0,0.6);
	border: 0;
	border-radius: 5px;
	color: #fff;
	margin: 10px 0 0 0;
	padding: 10px;
	position: relative;
	width: 100%;
}

.box80, .box100 {
	text-align: left;
}

.box100Ctr {
	text-align: center;
}

@media (min-width: 640px) {

#title {
	text-align: left;
}

}

@media (min-width: 800px) {
	
.flex-container > div.lft {	
	text-align: left;
	width: 400px;
}

.flex-container > div.rgt {	
	width: calc(100% - 400px);
}
	
.box80 {
	width: 80%;
}

}

p, div, .reg, li {
	font-size: 1.0rem;
}

h1 {
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 2px;
	margin: 0;
	padding: 0;
	color: #fff;
	text-align: left;
}

h2 {
	font-size: 1.4rem;
	font-weight: 600;
	letter-spacing: 2px;
	margin: 0;
	padding: 0;
	color: #fff;
	text-align: center;
}

a, a:visited, a:hover {
	color: #09f;
	font-weight: 600;
	text-decoration: underline;
}

input[type="text"] {
	display: block;
	border: 1px solid #999;
	font-size: 1.0rem;
	height: 25px;
	margin: 5px 0 0 0;
}

input[type="checkbox"] {
	display: inline-block;
	transform: scale(1.5,1.5);
	-webkit-transform: scale(1.5,1.5);
	-moz-transform: scale(1.5,1.5);
	-o-transform: scale(1.5,1.5);
}

input[type="submit"] {
	font-size: 1.0rem;
	font-weight: 600;
}

textarea {
	font: 1.0rem "Times New Roman", Times, serif;
}

.lg {
	font-size: 1.1rem;
}

.lgStr {
	font-size: 1.1rem;
	font-weight: 600;
}

.sm {
	font-size: 0.9rem;
}

.str {
	font-weight: 600;
}

.clr {
	clear: both;
}

.ctr {
	text-align: center;
}

.noMar {
	margin: 0;
	padding: 0;
	vertical-align: 0;
}
.clrNoMar {
	clear: both;
	margin: 0;
	padding: 0;
	vertical-align: 0;
}

.smBtmMar {
	margin-bottom: 3px;
	padding: 0;
}

.BtmMar10 {
	margin-bottom: 3px;
	padding: 0;
}

.noBtmMar {
	margin-bottom: 0;
	padding: 0;
}

hr {
	width: 100%;
	height: 1px;
	margin: 10px 0px;
	border: 0;
	color: #9999b4;
	background-color: #9999b4;
}

input.nbB {
	border: 0;
	display: inline-block;
	font-size: 1.1rem;
	font-weight: 600;
	color: #09f;
	margin: 0;
	width: 90px;
	background: none;
}

.blB {
	font-weight: 600;
	color: #09f;
}

.indt50 {
	margin: 0 0 0 50px;
}