

/*Smart Countdown FX (scd) */
.scd-all-wrapper {
	font-size: 20px !important;
	color: white;
	text-align: center;
	text-shadow: 2px 2px 4px #000000;
}

.scd-unit-horz {
	margin: 0 0.25em !important;
}

.scd-title {
	font-size: 1.2em !important;
	margin-top: 2em !important;
}

/* BASE COLORS */
:root {
  --vp-main-blue: #0000FF;
  --vp-light-blue: #E4E7F2;   /* backgrounds e.g. forms */
}

/*
color variables above not implemented below. Usage is e.g.:
h1 {
	color: var(--vp-main-blue);
}
*/

/* LAYER SLIDER */
.ls-container {
	padding: 30px 0px;
}

/* COUNTERS */
.q_counter_holder {
	padding-top: 8px !important;
}

.counter_row {
	margin-top: 20px;
}

/* HOVER */
p a:hover, .main_menu .second a:hover {
	background-color: #0000FF;
	color: white;
}

.q_social_icon_holder a:hover {
	background-color: transparent;
}

.portfolio_title a:hover {
	color: #0000FF;
}

.video_preview a:hover {
	background-color: transparent;
}

.portfolio_navigation.navigation_title .categories {
	display: none !important;
}

/* SELECTION - STANDARD CSS */
::selection { 
	color: #0000FF;
	background: #E4E7F2;
}

::-moz-selection {  	/* SELECTION - CODE FOR FIREFOX */
	color: #0000FF;
	background: #E4E7F2;
}

img {
	image-rendering: auto !important;
}

.h1, h1 {
	margin-bottom: 26px !important;
}

.h2, h2 {
	margin-bottom: 12px !important;
}

.h3, h3 {					/* only used in ticketing table header*/
	font-size: 20px;
}

.title .title_holder {
	padding-top: 18px !important;
}

@media only screen and (max-width: 1000px) {
	.title.has_background, .title.has_fixed_background, .title.title_size_large {
		height: 80px !important;
		background: 0 0 !important;
		padding: 0 !important;
	}
}

@media only screen and (max-width: 1200px) {
	.title.title_size_large h1, .home_page h1 {
		font-size: 30px !important;
	}
}

@media only screen and (max-width: 1000px) {
	.title.title_size_large h1, .home_page h1 {
		font-size: 30px !important;
		margin-top: -10px;
	}
}

@media only screen and (max-width: 768px) {
	.title.title_size_large h1, .home_page h1 {
		margin-left: -50px;
		margin-right: -50px;
		font-size: 26px !important;
	}
}

@media only screen and (max-width: 768px) {
	.title.title_size_large.position_left h1 {
		margin-left: 0px;
		margin-right: 0px;
	}
}

@media only screen and (max-width: 480px) {
	.title.title_size_large h1, .home_page h1 {
		font-size: 20px !important;
		line-height: 30px !important;
	}
}

.title h1 {
	color: #ffffff;
}

.title.title_size_large h1, .home_page h1 {
	font-size: 30px;
	line-height: 30px;
}

@media only screen and (min-width: 1000px) and (max-width: 1200px) {
nav.main_menu>ul>li>a { 
	padding: 0 8px;
	font-size: 12px;
	letter-spacing: 0px;
}
}

.lcp_catlist li {
	list-style-type: none;
}

.separator.small {
	background-color: #ffffff;
}

.box_holder_shadow {
	position: relative;
	display: block;
	margin: 0 0 30px 0;
	background-color: #fff;
	box-shadow: 0 1px 1px 1px #ccc;
	-moz-box-shadow: 0 1px 1px 1px #ccc;
	-webkit-box-shadow: 0 1px 1px 1px #ccc;
	-o-box-shadow: 0 1px 1px 1px #ccc;
	padding: 20px 20px;             /* VN: source Passage */
}

.button_center {
	text-align: center !important;
	vertical-align: middle;
	margin: 15px 0px;
}

.make_invisible,
.post_info,
#comments {
	display: none !important;
}

.last_row_padding {
	padding-bottom: 30px;
}

.row_padding_top {
	padding-top: 30px !important;
}

p {
	margin-bottom: 12px;
}

#content .wpb_alert p:last-child, #content .wpb_text_column :last-child, #content .wpb_text_column p:last-child, .vc_message_box > p:last-child, .wpb_alert p:last-child {
	margin-bottom: 12px;
}

li:last-child {
	margin-bottom: 12px !important;
}

.separator {
	margin-top: 20px;
	margin-bottom: 20px !important;
}

.two_columns_75_25 > .column1 {
	width: 65%;
}

.two_columns_75_25 > .column2 {
	width: 35%;
}

.portfolio_single .portfolio_categories {
	visibility: hidden;
}

#cf7_fileattach {
	background: url(images/custom-file-input.png) no-repeat;
	opacity: 1;
	display:inherit;
}

#cf7_fileattach input {
	opacity: 1;
	display:inherit;
}

.cf7-column_group {
	margin-top: 25px;
}

input.wpcf7-form-control.wpcf7-quiz {
	margin-left: 0px;
}

/* TICKETING TABLES */

sup {						/* superscript applies everywhere*/
	vertical-align: super;
}

.service_table_inner li.service_table_title_holder {
	padding: 0px 20px !important;
	border: 1px solid #072699;
	background-color: #E4E7F2;
}

.service_table_title_inner {
	padding: 10px 0px;
	height: 60px;
}

.service_table_inner li {
	border-bottom-color: #e9e9e9;
}

.sessions td, .tshirtsizes td, .tshirtsizes th {
	border-style: solid;
	border-width: 1px;
}

.sessions {
	margin-left: auto;
	margin-right: auto;
}

/* PORTFOLIO */

.projects_holder_outer .filter_outer {
	margin: 30px 0px;
}

.projects_holder article .portfolio_description .project_category {
	font-size: 14px;
}

.filter_holder ul li span {
	font-size: 15px;
}

.bus_timetable table {
	margin: auto;
}

.bus_timetable tr:nth-child(even) {
	background-color: #ffffff;
}

.bus_timetable h4 {
	margin-top: 40px;
	margin-bottom: 20px;
	text-align: center;
}

.bus_timetable {
	margin-bottom: 40px !important;
}

.byte_thumbnail {
	display: block;
	margin-right: 12pt;
	margin-bottom: 12pt;
}

/* GRAVITY FORMS */

.gform_wrapper select {
	padding: 8px !important;
}

.gform_wrapper input[type="text"] {
	padding: 11px !important;
}

.gform_wrapper input[type="text"],
.gform_wrapper select,
.gform_wrapper textarea {
	font-size: 14px !important;
	color: #070707 !important;
}

/* the required asterix */
.gfield_required {
	color: #FF0303 !important;
	font-weight: 900;
	font-size: 14px;
	font-family: open sans;
}

.gform_wrapper .field_sublabel_above .ginput_complex label {
	margin-bottom: -0.5em !important;
}

body .gform_wrapper input[type="text"],
body .gform_wrapper select,
body .gform_wrapper textarea {
	border-style: solid;
	border-color: #CCCCCC;
	border-width: 1px;
}

#extensions_message {
	display: none;
}

.ginput_preview {
	margin-left: 30% !important;
}

.gform_wrapper .gfield_checkbox li,
.gform_wrapper .gfield_radio li {
	margin-top: 0.9em !important;
}

.address_city {
	width: 42% !important;
}

.gform_body #buscatemphasis p:first-of-type {
    color: white;
    background-color: red;
    padding: 5px 20px;
}

.gform_body #buscatemphasis {
    border:1px solid black;
}

.gform_body #buscatemphasis p:not(first-of-type) {
    padding: 5px 20px;
}

.gform_body #buscatemphasis strong {
    color: black;
}

/* all following for GF v2 */
.address_state {
	width: 34% !important;
	margin-right: 7px !important;
}

.address_zip {
	width: 23% !important;
	margin-right: -10px !important;
}

.name_last {
	padding-right: 0px !important;
}

.gform_wrapper div.charleft.ginput_counter {
	font-size: 12.25px !important;
	color: inherit !important;
	margin-left: 0!important;
	width: 70% !important;
	text-align: right;
}

.gform_wrapper .instruction,
.gform_wrapper .gfield_description {
	font-size: 90% !important;
}

/* Error banner */
body .gform_wrapper div.validation_error {
	background-color: #d51700;
}

/* Error field background */
.gform_wrapper li.gfield.gfield_error {
	background-color: #f9cccc !important;
	margin-right: 2%;
}

/* resize the footprint fields */
#input_1_29_3_container,
#input_1_29_6_container {
	width: 20%;
}

/* same as template buttons*/
body .gform_wrapper input[type="button"],
body .gform_wrapper input[type="submit"] {
	color: #0000ff !important;
	border-color: #0000ff !important;
	font-size: 13px !important;
}

/* same as template buttons*/
body .gform_wrapper input[type="button"]:hover,
body .gform_wrapper input[type="submit"]:hover {
	background-color: #0000ff !important;
	border-color: #0000ff !important;
	color: #ffffff !important;
}

body .gform_wrapper .button.gform_button_select_files {
	height: 39px;
	line-height: 36px;
}

.gform_wrapper .gform_body h2.gsection_title {
	margin-bottom: -15px !important;
}
.gfield_radio,
.gfield_checkbox {
	color: #070707;
}

.gform_drop_area {
	border-color: #CCCCCC !important;
	margin-left: 0px !important;
}

 /* ------------------------- see note following on footer label  */
/* form background */
.gform_body,
.gform_confirmation_wrapper,
.gform_footer {
	padding: 10px;
	background-color: #E4E7F2;
	border-style: solid;
	border-color: #CCCCCC;
	border-width: 1px;
}
.gform_body {
	border-bottom-width: 0px;
}

/* the following targets the submit button to make it look like it is in the "form" Need the two above to get the borders right, css must be processed in this order*/
.gform_wrapper .gform_footer.left_label {
	width: 100% !important;
	padding: 10px 0 25px 30.3% !important;
	margin: 0 !important;
	border-top: none !important;
}
 /* ------------------------- * /

/* following to match template style so form heading and description can be used */
/* matches h2 template style */
.gform_wrapper .gform_heading h3.gform_title {
	margin-bottom: 12px !important;
	font-size: 24px !important;
	font-weight: 600 !important;
	letter-spacing: 1px !important;
}

/* matches list bullet template style */
.gform_heading .gform_description li {
	list-style-position: inside !important;
	list-style-type: disc !important;
}

/* phone number fields */
#input_1_17,
#input_1_18 {
	min-width: 20%;
}

/* footprint fields */
#input_1_57,
#input_1_58 {
	width: 80px;
}

/* the html field alignment */
.gform_wrapper form ul:not(.top_label) li.gfield_html_formatted {
	width: 70% !important;
	padding-right: 8px !important;
}

/* the html field alignment - margin left wont work above, needs to be targeted */
#field_1_40,
#field_1_59,
#field_1_26,
#field_1_27 {
	margin-left: 28.7% !important;
}

/* field descriptions incuding required field error messages */
.gform_wrapper .field_description_below .gfield_description {
	padding-top: 3px !important;
}

/* the required instruction */
#field_1_40 {
	margin-bottom: -12px !important;
	margin-top: 0px;
	text-align: right;
}

/* section headings */
.gform_wrapper .gsection {
	border-bottom: inherit !important;
	border-top: 2px solid #CCCCCC;
	padding-top: 10px !important;
	margin-right: 2% !important;
}

/* indents the form slightly */
#gform_fields_1 {
	margin: 0 0 0 2% !important;
}

/* stops everything indenting when there is an ERROR so the fields still line up with the non-error ones */
.gform_wrapper li.gfield_error {
	padding-left: 0px !important;
}

/* BOND RETURN */

#input_2_1,
#input_2_2 {
	background-color: inherit !important;
	border: none !important;
}

/* the product description field does not stay aligned, on ERROR is is flush left and full width SUPPORT REQUEST - SEEMS FIXED v2.0.1
.gform_wrapper .left_label .gfield_error textarea.textarea {
	/*margin-left: 29%;*/
	width: 64% !important;
}*/

/* fix address incorrect alignment SUPPORT REQUEST - SEEMS FIXED v2.0.1
#input_1_1,                  /* postal address  */
#input_1_12,               /* T&Cs */
#input_1_21 {              /* power  */
	margin-left: 29% !important;
}*/
