form ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	width: 100%;
	font-size: 100%;
}

form li {
	margin: 0;
	padding: 4px 5px 2px 9px;
	position: relative;
	clear: both;
}

form li:after, .buttons:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

form li, .buttons {
	display: inline-block;
}

* html form li, * html .buttons {
	height: 1%;
}

form li, .buttons {
	display: block;
}

* html form li div {
	display: inline-block;
}

form li div, form li span {
	margin: 0 4px 0 0;
	padding: 0 0 8px 0;
	color: #444;
}

form li span {
	float: left;
}

form li div.address {
	padding-bottom: 0;
}

form li div.left {
	display: inline;
	float: left;
	width: 47%;
}

form li div.right {
	display: inline;
	float: right;
	width: 47%;
}

.clear {
	clear: both !important;
}

.info {
	display: inline-block;
	clear: both;
	border-bottom: 1px dotted #ccc;
	margin: 0 0 1em 0;
}

.info[class] {
	display: block;
}

.info h2 {
	font-weight: normal;
	font-size: 2em;
	margin: 0 0 3px 0;
	clear: left;
}

.info p {
	font-size: 95%;
	line-height: 135%;
	margin: 0 0 12px 0;
}

form hr {
	display: none;
}

form li.section {
	border-top: 1px dotted #ccc;
	margin-top: 9px;
	padding-top: 13px;
	padding-bottom: 0px;
	padding-left: 9px;
	width: 97% !important;
}

form ul li.first {
	border-top: none !important;
	margin-top: 0px !important;
	padding-top: 0px !important;
}

form .section h3 {
	font-weight: normal;
	font-size: 110%;
	line-height: 135%;
	margin: 0 0 2px 0;
}

form .section p {
	font-size: 85%;
	margin: 0 0 10px 0;
}

label.desc {
	line-height: 1.2em;
	padding: 0 0 1px 0;
	border: none;
	color: #fff;
	display: block;
	font-size: 1.25em;
	font-weight: bold;
}

form#rsvp-form em {
	color: #aaa;
	font-weight: normal;
}

form li div label, form li span label {
	margin: 0;
	padding-top: 6px;
	clear: both;
	font-size: 9px;
	line-height: 9px;
	color: #aaa;
	display: block;
}

input.text, input.file, textarea.textarea, select.select {
	margin: 0;
	font-size: 100%;
	color: #333;
}

input.text, textarea.textarea, .firefox select.select {
	border-top: 1px solid #7c7c7c;
	border-left: 1px solid #c3c3c3;
	border-right: 1px solid #c3c3c3;
	border-bottom: 1px solid #ddd;
	background: #fff url(images/style/fieldbg.gif) repeat-x top;
}

input.text, input.file {
	padding: 2px 0 2px 0;
}

label.choice {
	font-size: 100%;
	display: block;
	line-height: 1.5em;
	margin: -1.65em 0 0 25px;
	padding: .44em 0 .5em 0;
	color: #ccc;
	width: 100%;
	display: block;
}

label.choice strong {
	font-weight: bold;
	color: #fff;
}

input.checkbox, input.radio {
	display: block;
	line-height: 1.5em;
	margin: 3px 0 0 3px;
	width: 13px;
	height: 13px;
}

textarea.textarea {
	font-family: Helvetica, Arial, sans-serif;
}

select.select {
	font-family: Helvetica, Arial, sans-serif;
	margin: 1px 0;
	padding: 1px 0 0 0;
}

select.select[class] {
	margin: 0;
	padding: 1px 0 1px 0;
}

*:first-child+html select.select[class] {
	margin: 1px 0;
}

.safari select.select {
	margin-bottom: 1px;
	font-size: 120% !important;
}

span.symbol {
	font-size: 115%;
	line-height: 130%;
}

form li .datepicker {
	float: left;
	margin: .1em 5px 0 0;
	padding: 0;
	width: 16px;
	height: 16px;
	cursor: pointer !important;
}

input.btTxt {
	padding: 0 7px;
	width: auto;
	overflow: visible;
}

.buttons {
	clear: both;
	margin-top: 10px;
}

.buttons input {
	font-size: 120%;
	margin-right: 5px;
}

.rtl .info h2, .rtl .info p, .rtl label.desc, .rtl label.choice, .rtl div label, .rtl span label, .rtl input.text, .rtl textarea.textarea, .rtl select.select, .rtl p.instruct, .rtl .section h3, .rtl .section p, .rtl input.btTxt {
	direction: rtl;
}

.third {
	width: 32% !important;
}

.half {
	width: 48% !important;
}

.full {
	width: 100% !important;
}

input.small, select.small {
	width: 25%;
}

input.medium, select.medium {
	width: 50%;
}

input.large, select.large, textarea.textarea {
	width: 100%;
}

textarea.small {
	height: 5.5em;
}

textarea.medium {
	height: 10em;
}

textarea.large {
	height: 20em;
}

form li.error p.error {
	display: block;
}

.leftLabel p.error, .rightLabel p.error {
	margin-left: 30%;
	padding-left: 15px;
}

.noI .leftLabel p.error, .noI .rightLabel p.error {
	margin-left: 35%;
	padding-left: 15px;
}

form .req {
	float: none;
	color: #FF6600 !important;
	font-weight: normal;
	margin: 0;
}

form li.focused {
	background-color: #fff7c0;
}

form .instruct {
	position: absolute;
	top: 0;
	left: 100%;
	z-index: 1000;
	width: 42%;
	margin: 0 0 0 8px;
	padding: 8px 10px 9px 10px;
	border: 1px solid #e6e6e6;
	background: #f5f5f5;
	line-height: 130%;
	font-size: 80%;
	color: #444;
	visibility: hidden;
}

form .instruct small {
	font-size: 105%;
}

form li.focused .instruct, form li:hover .instruct {
	visibility: visible;
}

li.altInstruct .instruct, li.leftHalf .instruct, li.rightHalf .instruct {
	visibility: visible;
	position: static;
	margin: -2px 0 0 0;
	padding: 0 0 7px 0;
	background: none;
	border: none;
	width: 100%;
	font-size: 9px;
	clear: left;
}

.leftLabel li, .rightLabel li, li.leftLabel, li.rightLabel {
	width: 74% !important;
	padding-top: 9px;
}

.leftLabel .small, .rightLabel .small {
	width: 17%;
}

.leftLabel .medium, .rightLabel .medium {
	width: 35%;
}

.leftLabel .large, .leftLabel textarea.textarea,.rightLabel .large, .rightLabel textarea.textarea,.leftLabel .address, .rightLabel .address {
	width: 64%;
}

.leftLabel .choice, .rightLabel .choice {
	display: block;
	width: 250px;
}

* html .leftLabel .small, * html .rightLabel .small {
	width: 23%;
}

* html .leftLabel .medium, * html .rightLabel .medium {
	width: 55%;
}

* html .leftLabel .large, * html .leftLabel textarea.textarea,* html .rightLabel .large, * html .rightLabel textarea.textarea {
	width: 97%;
}

.leftLabel label.desc, .rightLabel label.desc {
	float: left;
	width: 30%;
	margin: 2px 15px 0 0;
}

.rightLabel label.desc {
	text-align: right;
}

.leftLabel .address, .rightLabel .address {
	float: left;
}

.leftLabel p.instruct, .rightLabel p.instruct {
	width: 27%;
	margin-left: 5px;
}

.leftLabel .altInstruct .instruct, .rightLabel .altInstruct .instruct {
	margin-left: 30% !important;
	padding-left: 15px;
	width: 65%;
}

.leftLabel .buttons, .rightLabel .buttons {
	margin-left: 15px;
}

.leftLabel .buttons input, .rightLabel .buttons input {
	margin-left: 30%;
}

.noI .instruct {
	display: none !important;
}

.noI form li, .noI form li.buttons {
	width: 97% !important;
}

.noI form li.section {
	padding-left: 9px !important;
}

.noI .leftLabel .large, .noI .leftLabel textarea.textarea,.noI .rightLabel .large, .noI .rightLabel textarea.textarea,.noI .leftLabel .address, .noI .rightLabel .address {
	width: 60%;
}

.noI .leftLabel .choice, .noI .rightLabel .choice {
	display: block;
	width: 320px;
}

* html .noI .leftLabel .small, * html .noI .rightLabel .small {
	width: 23%;
}

* html .noI .leftLabel .medium, * html .noI .rightLabel .medium {
	width: 55%;
}

* html .noI .leftLabel .large, * html .noI .leftLabel textarea.textarea,* html .noI .rightLabel .large, * html .noI .rightLabel textarea.textarea {
	width: 97%;
}

.noI .leftLabel label.desc, .noI .rightLabel label.desc {
	width: 35%;
}

.noI .leftLabel .buttons input, .noI .rightLabel .buttons input {
	margin-left: 35%;
}

form li.leftHalf, form li.rightHalf {
	width: 46% !important;
}

li.leftHalf {
	clear: left;
	float: left;
}

li.rightHalf {
	clear: none;
	float: right;
}

li.leftHalf .medium, li.rightHalf .medium,li.leftHalf .small, li.rightHalf .small {
	width: 100%;
}


/*Additional settings*/

li.contrast {
	background: #0D0D0D;
}

li.contrast_top {
	background: #070707 url(images/style/form-li-contrast_top-bg.gif) 0 0 no-repeat;
	padding-top: 12px;
}
li.contrast_bottom {
	background: #0D0D0D url(images/style/form-li-contrast_bottom-bg.gif) no-repeat left bottom;
	padding-bottom: 6px;
	margin-bottom: 24px;
}

input.submit {
	width: 240px;
	height: 36px;
	background: url(images/style/form-input-submit-bg.gif) no-repeat 0 0;
	text-align: center;
	cursor: pointer;
	border: none;
}

input.submit:hover {
	background-position: 0 -36px;
}


label.error {
	color: #FF6600;
}

form li div.left-force {
	display: inline;
	clear: both;
	float: left;
	width: 47%;
}

label.bringer-title {
	font-size: 20px;
	line-height: 20px;
	padding-top: 16px;
}

label.bringer-instructions {
	margin: 18px 0;
	display: block;
	padding: 0;
	background: url(images/style/form-li-contrast_top-bg.gif) 0 0 no-repeat;
	
}
label.bringer-instructions em {
	padding: 0 10px;
	line-height: 27px;
}


label.bringer-instructions span {
	display: block;
	padding: 9px 10px;
	background: #0D0D0D url(images/style/form-li-contrast_bottom-bg.gif) no-repeat left bottom;
}

p.privacy {
	color: #666;
	width: 230px;
	padding: 0 0 0 10px;
}

@media print {

#public, h2 {
	margin: 0;
}

#container {
	border: none !important;
	width: 100%;
}

#top, #bottom, h1, form .buttons, #printPage, .icon {
	display: none !important;
}

form.wufoo {
	margin: 0;
	padding: 0;
	page-break-inside: auto;
}

form.wufoo .instruct {
	display: block;
}

}