/*
Theme Name: Atlantis Rail Theme
Theme URI: http://www.digitalhill.com/
Author: Digital Hill Multimedia
Author URI: http://www.digitalhill.com/
Description: Custom theme for Atlantis Rail, based on Digital Hill's template 1 theme
Template: dhwp-base
Version: 1.1.2
License: Proprietary
Text Domain: dhwp-atlantis
Tags: 
see https://make.wordpress.org/themes/handbook/review/required/theme-tags/
see WordPress' CSS coding standards https://make.wordpress.org/core/handbook/coding-standards/css
*/

/* FONTS */
@import url('https://fonts.googleapis.com/css?family=Montserrat:300,300i,400,400i,600,600i,700,700i');

/* LIKELY SITE-SPECIFIC CHANGES */
html, body { font-family: "Montserrat",sans-serif; }

/*.wp-block-table { display: table; }*/

.wp-block-table { display: block; max-width: 930px; width: 100%; overflow: hidden; overflow-x: auto; }
.wp-block-table td { word-break: normal; }
.wp-block-table tbody { display: table; width: 100%; }

figure.wp-block-image { display: inline-block; }

.entry-content > * { max-width: 1360px; }
.entry-content > .alignfull { max-width: 100%; padding-left: 0; padding-right: 0; }

hr.wp-block-separator { border: 0; border-bottom: 1px solid #cccccc; }

.search-in-place { width: 300px !important; }
.search-in-place .item .title > a { font-size: 14px !important; }

/* HEADLINE DEFAULTS */
h1, h2, h3, h4, h5, h6 { font-weight: 600; line-height: 1.2; color: inherit; margin:.5em 0; text-transform:uppercase; }
h1 { font-size: 2.5em; font-weight: 300; }
h2 { font-size: 1.8em; font-weight: 300; }
h3 { font-size: 1.4em; font-weight: 300; }
h4 { font-size: 1.2em; color: #3b9ab7; }
h5 { font-size: 1.1em; }
h6 { font-size: 1em; }

/* custom headline size for product videos page */
.page-id-230 h3 { font-size: 1.3em; font-weight: 600; }

/* MAIN LINK COLOR */
.dhmain a { color: #3b9ab7; }

/* UNDERLINES */
.blue-underline { border-bottom:3px solid #3b9ab7; }
.blue-underline a { text-decoration: none; color: #3b9ab7 !important; }
.blue-underline a:hover { color: #003451 !important; }


/* classes to use */
.no-margin-top { margin-top:0!important; }
.no-margin-bottom { margin-bottom:0!important; }
.all-white-text > * { color:#fff!important; }

footer.footer .dhflex ul { list-style-type: none; padding: 0; }
footer.footer .dhflex ul li { padding: .25em 0; }
footer.footer .textwidget ul img { display: inline-block; width: 16px; height: 16px; vertical-align: middle; margin-right: .5em; }

/* Editor Blocks Adjustments */
.wp-block-editor-blocks-wrapper .wrapper-inner { max-width: 1400px; }
.wp-block-editor-blocks-wrapper .wrapper-inner .wp-block-column { margin-bottom: 0; }
.wp-block-button__link { text-transform:uppercase; font-size:inherit; }
/* End Editor Blocks Adjustments */

/* Preheader */
header.preheader { padding: 0; border-bottom: 0; background-color: #ffffff; border-color: #ffffff; color: #3b9ab7; }
header.preheader > .content-area > section { margin-top: .5em; margin-bottom: .5em; }
header.preheader > .content-area > section.nav_menu-3, header.preheader > .content-area > section.widget_search { margin-top:0; margin-bottom:0; }
header.preheader > .content-area > section.widget_search form { display:inline-block; border-left: 1px solid #eee; border-right: 1px solid #eee; background-color: #f9f9f9; padding: .5em; }


header.preheader #s { border: none; background: transparent; font-style: italic; }
header.preheader #searchsubmit { display: none; }
header.preheader #searchform button { border: none; background: transparent; opacity: .5; cursor: pointer; }
header.preheader #searchform button:hover { opacity: 1; }

/* Header */
.header-container { background: linear-gradient(rgba(0,52,81,.75) 0%, rgba(0,52,81,0) 50%), url('https://atlantisrail.com/wp-content/uploads/2020/05/Cable-Railing-System-with-Mountain-View.jpg') no-repeat center center / cover; }
.header-container > .header-img > h1 { display:inline-block; border-left:4px solid #3b9ab7; padding:.5em .75em; background:rgba(0,0,0,0.7); color:#fff; margin:1em 0; }
.header-container .hero-overlay { display:inline-block; border-left: 4px solid #3b9ab7; padding: .5em 1.75em; background: rgba(0,0,0,.7); color: #fff; margin: 1em 0 2em; }
.header-container .hero-overlay > h1 { margin-bottom: 0; }
.header-container .hero-overlay > p { margin-top: 0; }

/*
.header-container.has-image { height: 30vh; }
.header-container.has-image .header-img { background-image: url('assets/images/rinker-header.jpg'); background-size: cover; background-position: center center; height: 100%; }
/**/

/* Home */
.blue-boxes .wp-block-column { background-color: #003451; color: #fff; }
.blue-boxes .wp-block-column > * { padding: 0 14px; }

.white-boxes.match-height .wp-block-column { background-color: #fff; box-shadow: 1px 1px 6px #ccc; padding-bottom:0; }
.white-boxes .wp-block-column > * { padding: 0 14px; }
.white-boxes .wp-block-column > h2 { color: #3b9ab7; font-size:1.3em; margin-bottom:0; }
.white-boxes .dhflex h4 { font-weight: 300; }
.white-boxes > div > h4 > a { text-decoration: none; }
.white-boxes > div > h4 > a:hover { text-decoration: underline; }

.match-height .wp-block-column { font-size: .9em; position:relative; padding-bottom:5em; }
.match-height .wp-block-column .wp-block-button { position: absolute; bottom: 0; width:100%; box-sizing:border-box; }
.match-height .wp-block-column > figure { padding: 0; text-align: center; }
.match-height .wp-block-column > figure img { display: inline-block; }

.photo-hero-area .wp-block-editor-blocks-wrapper { background-color:rgba(0,52,81,.8)!important; }
.photo-hero-area h2 { color:#fff; font-size:2em; }
.photo-hero-area .wp-block-button { display:inline-block; }


.railing-menu { background-image: url(assets/images/honeycomb.png); background-position:center right; padding:1em 0; background-size: cover; }
.railing-menu li a { text-transform: uppercase; text-decoration: none; color:#fff; padding: .5em 1em; display:inline-block; }
.railing-menu ul:first-of-type li:first-of-type a { padding-left:0; }
.railing-menu li a:not(.button):hover { text-decoration: underline; }
.railing-menu li a.current-menu-item { font-weight:bold; }

.railing-menu li a.button { border-radius: 28px; font-size:.9em; }
.railing-menu li:first-of-type a.button { background: #fff; color:#3b9ab7; }
.railing-menu li:first-of-type a.button:hover { background: #83d4f6; color: #fff; }
.railing-menu li:last-of-type a.button { background: #003451; }
.railing-menu li:last-of-type a.button:hover { background: #83d4f6; color: #fff; }
@media only screen and (max-width:782px) {
	.railing-menu ul { text-align:center!important; }
	.railing-menu li a.button { margin-top:.5em; }
}

.home-callouts .home-callouts-shadow { box-shadow: 1px 1px 4px #999 }
.home-callouts .wp-block-image.alignfull img { height: 255px; object-fit: cover; }
.home-callouts h4 { font-weight: 300; }
.home-callouts h4 a { text-decoration: none; }
.home-callouts h4 a:hover { text-decoration: underline; }


/* Visualizer styles */
#builder-working-form { font-family:inherit; }
.builder-saved-configs { color: #fff; background-image: url(assets/images/honeycomb.png); background-position: center right; padding: 1em 0; background-size: 100%; background-repeat: repeat-y; }
.builder-saved-configs .dhpb-saved-title strong { font-weight: normal; text-transform: uppercase; font-family: Montserrat; }
.builder-saved-configs > .wrapper > p { margin-top: 0; margin-bottom: 0; text-align: center; }
.builder-saved-configs p a { color: #fff; }
div.saved-configs a { color: #eee; text-decoration: none; background-color: rgba(255,255,255,.1); padding: 5px; margin-top:5px; }
div.saved-configs a:hover { color: #fff; background-color: rgba(255,255,255,.2); }
div.saved-configs a span { opacity: 0; top: 10px; right: 10px; }
div.saved-configs a:hover span { opacity: .4; }
div.saved-configs a span:hover { opacity: 1; }

/* Smart Slider Hero adjustments */
.smart-slider-fade { height: 160px; }

/*
.entry-content > .gray-section { margin-bottom:0; }
/**/
.wp-block-media-text.image-17 { grid-template-columns: 17% auto; max-width: 1360px; padding: 0 14px; }
.wp-block-media-text.has-media-on-the-right.image-17 { grid-template-columns: auto 17%; }
.wp-block-media-text.image-17 .wp-block-media-text__content { padding: 0 0 0 2%; }
.wp-block-media-text.has-media-on-the-right.image-17 .wp-block-media-text__content { padding: 0 2% 0 0; }
.wp-block-media-text.image-33 { grid-template-columns: 33% auto; }
.wp-block-media-text.has-media-on-the-right.image-33 { grid-template-columns:auto 33%; }
/*
.wp-block-media-text.image-33 .wp-block-media-text__content { padding: 0 0 0 2%; }

/**/

/* Knowledgebase adjustments */
#kbe_container { max-width:1400px; margin:1em auto; box-sizing:border-box; }
@media (max-width: 1500px) {
	#kbe_container { padding-left: 14px; padding-right: 14px; }
}
#kbe_container .kbe_breadcrum li a,
#kbe_content .kbe_leftcol .kbe_category a,
#kbe_content .kbe_leftcol .kbe_article_list li a,
#kbe_container .kbe_widget li a { color: #3b9ab7; }
#kbe_container .kbe_breadcrum li a:hover,
#kbe_content .kbe_leftcol .kbe_category a:hover,
#kbe_content .kbe_leftcol .kbe_article_list li a:hover,
#kbe_container .kbe_widget li a:hover { text-decoration: underline; }

#kbe_container .kbe_aside_right li { margin-bottom: 8px; }

/* Store Locator adjustments */
#wpsl-search-wrap > form > div.wpsl-input > div > label,
#wpsl-search-wrap > form > div.wpsl-select-wrap > div > label { width: auto; }
#wpsl-search-wrap .wpsl-input,
#wpsl-search-wrap #wpsl-radius,
#wpsl-search-wrap #wpsl-results { margin-right: 20px; }
#wpsl-search-btn { font-family: 'Montserrat', sans-serif; }

/* Foogallery adjustments */
.dhmain .foogallery { max-width:1400px; margin: 0 auto; padding-bottom: 60px; }

/* Photo Contest */
ul.pcmenu.full-width { max-width: 100%; }

/* WP Courseware */
.wpcw_fe_quiz_box_pending { background-color: #f9f9f9; border-color: #d7d7d7; }
.wpcw_fe_quiz_q_hdr, .wpcw_fe_quiz_q_single { border-bottom: 1px solid #d7d7d7; }
.wpcw_fe_quiz_box { font-size: 1em; }
.wpcw_fe_quiz_title, .wpcw_fe_quiz_q_title { font-size: 1.125em; font-weight: 600; }

#text-7 table:first-child tr { border-top: none; }
.wpcw_fe_table td:nth-of-type(1), .wpcw_fe_table td:nth-of-type(2) { vertical-align: top; }
.wpcw_fe_module td:first-of-type, .wpcw_fe_unit td:first-of-type { /*width: 65px;*/ display: none; }
#wpcw_fe_course .wpcw_fe_unit a { font-weight: 400; }

.post-type-archive-wpcw_course .content-area.entry-content { max-width: 1360px; padding-bottom: 40px; }
.post-type-archive-wpcw_course .post-preview { width: 22.9%; display: inline-block; vertical-align: top; margin-top: 0; }
.post-type-archive-wpcw_course .post-preview .preview-image + h3 + .excerpt { padding-left: 0; }
.post-type-archive-wpcw_course .post-preview .preview-image { float: none; width: 100%; height: 200px; max-height: inherit; }
.post-type-archive-wpcw_course .post-preview img { width: 100%; height: 100%; object-fit: fill; }
.post-type-archive-wpcw_course .post-preview h3 { text-align: center; text-transform: capitalize; font-size: 1.1em; font-weight: 400; }
.post-type-archive-wpcw_course .post-preview h3 a { text-decoration: none; }
.post-type-archive-wpcw_course .post-preview:hover h3 a { text-decoration: underline; }
.post-type-archive-wpcw_course .post-preview .excerpt { display: none; }

.wpcw_fe_quiz_submit_data input.fe_btn, a.fe_btn, .single-course_unit .button {
	border: 1px solid #3b9ab7;
	background: #ffffff;
	border-radius: 50px;
	font-family: 'Montserrat';
	font-weight: 400 !important;
	color: #3b9ab7 !important;
	text-transform: uppercase;
	padding: .7em 1.5em !important;
	margin: 16px 0 0;
	cursor: pointer; }
	.wpcw_fe_quiz_submit_data input.fe_btn:hover, a.fe_btn:hover, .single-course_unit .button:hover {
		background: #3b9ab7;
		color: #ffffff !important;
		border: 1px solid #3b9ab7; }
		
/* WP Courseware Answers */
.wpcw_fe_quiz_box ul.wpcw_fe_quiz_q_answers li label {
	font-size: inherit;
	line-height: 1.5;
	margin: 0 0 .5em 2em;
}
.wpcw_fe_quiz_box ul.wpcw_fe_quiz_q_answers li {
  	position: relative;
  	padding-left: .25em !important;
  	margin-bottom: 10px;
}
		
/* WP Courseware checkboxes */
#wpcw_fe_wrap_question_2_multi_3 > ul > li > label:after,
#wpcw_fe_wrap_question_4_multi_34 > ul > li > label:after,
#wpcw_fe_wrap_question_4_multi_38 > ul > li > label:after,
#wpcw_fe_wrap_question_5_multi_52 > ul > li > label:after,
#wpcw_fe_wrap_question_7_multi_61 > ul > li > label:after {
  	content: "";
  	background-color: #fff;
  	width: 20px;
  	height: 20px;
  	display: block;
  	position: absolute;
  	left: 0;
  	top: 0;
  	border: 1px solid #ccc;
  	border-radius: 3px;
  	z-index: 0;
}
#wpcw_fe_wrap_question_2_multi_3 > ul > li > label:before,
#wpcw_fe_wrap_question_4_multi_34 > ul > li > label:before,
#wpcw_fe_wrap_question_4_multi_38 > ul > li > label:before,
#wpcw_fe_wrap_question_5_multi_52 > ul > li > label:before,
#wpcw_fe_wrap_question_7_multi_61 > ul > li > label:before {
  	content: "";
  	display: block;
  	position: absolute;
  	width: 6px;
  	height: 11px;
  	border: solid #3b9ab7;
  	border-width: 0 3px 3px 0;
  	border-radius: 0px !important;
  	background: transparent;
  	left: 7px;
  	top: 2px;
  	-webkit-transform: rotate(45deg);
          	transform: rotate(45deg);
	opacity: 0;
  	z-index: 1;
  	-webkit-transition: all 100ms;
  			transition: all 100ms;
}
.wpcw_fe_quiz_q_multi > ul > li input[type=checkbox] {
  	opacity: 0;
  	outline: none;
  	z-index: 100;
  	width: 32px;
	height: 32px;
	top: 0;
	left: 0;
	position: absolute;
	-webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
		 cursor: pointer;
}
#wpcw_fe_wrap_question_2_multi_3 > ul > li input[type=checkbox]:checked + label:before,
#wpcw_fe_wrap_question_4_multi_34 > ul > li input[type=checkbox]:checked + label:before,
#wpcw_fe_wrap_question_4_multi_38 > ul > li input[type=checkbox]:checked + label:before,
#wpcw_fe_wrap_question_5_multi_52 > ul > li input[type=checkbox]:checked + label:before,
#wpcw_fe_wrap_question_7_multi_61 > ul > li input[type=checkbox]:checked + label:before {
	opacity: 1;
}

/* WP Courseware radio buttons */
.wpcw_fe_quiz_box ul.wpcw_fe_quiz_q_answers li label:after {
  	content: "";
  	background-color: #ffffff;
  	width: 20px;
  	height: 20px;
  	display: block;
  	position: absolute;
  	left: 0;
  	top: 0;
  	border: 1px solid #ccc;
  	border-radius: 50%;
  	z-index: 0;
}
.wpcw_fe_quiz_box ul.wpcw_fe_quiz_q_answers li label:before {
  	content: "";
  	background-color: #3b9ab7;
  	width: 12px;
  	height: 12px;
  	display: block;
  	position: absolute;
  	left: 0;
  	top: 0;
  	border: 1px solid #3b9ab7;
  	border-radius: 50%;
	opacity: 0;
  	z-index: 1;
}
.wpcw_fe_quiz_box ul.wpcw_fe_quiz_q_answers li input[type=radio] {
  	opacity: 0;
  	outline: none;
  	z-index: 100;
  	width: 20px;
	height: 20px;
	top: 0;
	left: 0;
	position: absolute;
	-webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
		 cursor: pointer;
}
.wpcw_fe_quiz_box ul.wpcw_fe_quiz_q_answers li input[type=radio] + label {
	cursor: pointer;
}
.wpcw_fe_quiz_box ul.wpcw_fe_quiz_q_answers li input[type=radio]:checked + label {
	font-weight: 400 !important;
}
.wpcw_fe_quiz_box ul.wpcw_fe_quiz_q_answers li input[type=radio]:checked + label:before {
	opacity: 1;
	left: 4px;
	top: 4px;
}
.wpcw_fe_quiz_box ul.wpcw_fe_quiz_q_answers li {
	margin: 0 !important;
}

/* Google Doc Embed */
body > div.ndfHFb-c4YZDc.ndfHFb-c4YZDc-AHmuwe-Hr88gd-OWB6Me.ndfHFb-c4YZDc-TSZdd.ndfHFb-c4YZDc-vyDMJf-aZ2wEe.ndfHFb-c4YZDc-i5oIFb.ndfHFb-c4YZDc-e1YmVc > div.ndfHFb-c4YZDc-K9a4Re > div.ndfHFb-c4YZDc-K9a4Re-nKQ6qf.ndfHFb-c4YZDc-TvD9Pc-qnnXGd > div.ndfHFb-c4YZDc-cYSp0e.ndfHFb-c4YZDc-oKVyEf > div.ndfHFb-c4YZDc-cYSp0e-s2gQvd.ndfHFb-c4YZDc-s2gQvd > div { width: 1200px; }

/* Inner page styles */
.dhmain table { width: 100%; border-top: 2px solid #eeeeee; border-right: 0; border-bottom: 2px solid #eeeeee; border-left: 0; border-collapse: collapse; }
.dhmain table tr:nth-child(odd) { background: #f9f9f9; border-top: 1px solid #eeeeee; border-bottom: 1px solid #eeeeee; }
.dhmain table td { padding: .75em 1em; }

.wp-block-table.is-style-stripes { width: 100%; font-size: .95em; padding-left: 0; padding-right: 0; }
.wp-block-table.is-style-stripes tr:nth-child(1) { background: #f9f9f9 !important; }
.wp-block-table.is-style-stripes tr:nth-child(odd) { background: #ffffff; }
.wp-block-table.is-style-stripes tr:nth-child(1) td { font-weight: 600; }
.wp-block-table.is-style-stripes td { padding: .75em 1em; border-bottom: 1px solid #eeeeee; vertical-align: top; }
.wp-block-table.is-style-stripes td:not(:first-child) { text-align: center; }

.railing-types .wp-block-image { display: block; margin-bottom: 0; }
.railing-types .wp-block-image.alignfull img { width: auto; height: 400px; object-fit: cover; }

#kbe_content .kbe_leftcol ul li, ol { line-height: 1.5; font-size: 1em; }

.wp-block-quote.is-style-large { max-width: 1360px; margin: 36px 0; padding: 0 1.25em 1.25em; border-top: 1px solid #eee; border-right: 1px solid #eee; border-bottom: 1px solid #eee; border-left: 6px solid #3b9ab7; -webkit-box-shadow: 0px 3px 6px 0px #f2f2f2; -moz-box-shadow: 0px 3px 6px 0px #f2f2f2; box-shadow: 0px 3px 6px 0px #f2f2f2; }
.wp-block-quote.is-style-large cite { font-size: 1em; }

.post-nav-links { text-align: center; }
.post-page-numbers { padding: .25em .5em; border: 1px solid #eee; text-decoration: none; }
.post-page-numbers:hover { border: 1px solid #3b9ab7; }
.post-page-numbers.current { border: 1px solid #3b9ab7; background: #3b9ab7; color: #fff; }

.archive .dhmain { margin-bottom: 2.5em; }

/* hero image styles */
.wp-block-editor-blocks-hero .inner { background-color: rgba(0,0,0,.7); padding: 1em; border-left: 4px solid #3b9ab7; }
.wp-block-editor-blocks-hero .hero__text { font-size: 1em; }

/* Railing product page styles */
.single-railing .wp-block-kadence-rowlayout.alignfull { margin: 0; }
.single-railing .dhmain table tr td:not(:first-child) { width: 15% !important; }

/* Component product page styles */
.single-railing-product > main > div > div > div.dhflex.width-75.phone-100 > div.wp-block-columns.has-2-columns > div:nth-child(2) > h2 { font-weight: 600; }
.single-railing-product .atlantis-page-links .circled-bg-img { border-radius: 0; background-color: #fff; background-position: center center; background-repeat: no-repeat; background-size: contain; }
.single-railing-product .width-25 { padding-top: 3px; }
.single-railing-product .width-25 .dhwidget h3 { padding-bottom: .5em; border-bottom: 1px solid #eeeeee; }

.wp-block-kadence-tabs .kt-tabs-title-list { border-top: 1px solid #eeeeee; }
.wp-block-kadence-tabs .kt-tabs-title-list a { text-decoration: none; }
.wp-block-kadence-tabs .kt-tabs-title-list li.kt-tab-title-inactive a { color: #aaaaaa; }

/* GRAVITY FORMS */

/* Gravity Forms adjustments */
.entry-content > .gform_wrapper { max-width: 1200px; }
.gform_wrapper h3.gform_title { font-size: 1.4em !important; font-weight: 300 !important; }
.gform_delete { opacity: .35; }

/* input field styles */
.gform_wrapper input:not([type=submit]):not([type=checkbox]), .gform_wrapper textarea, .gform_wrapper select, #search-3 input {
	background: transparent;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 10px 5px !important; }
	.gform_wrapper input:not([type=submit]):not([type=checkbox]):hover, .gform_wrapper input:not([type=submit]):not([type=checkbox]):focus, .gform_wrapper input:not([type=submit]):not([type=checkbox]):active,
	.gform_wrapper textarea:hover, .gform_wrapper textarea:focus, .gform_wrapper textarea:active,
	.gform_wrapper select:hover, .gform_wrapper select:focus, .gform_wrapper select:active, #search-3 input:hover, #search-3 input:focus, #search-3 input:active {
		border: 1px solid #3b9ab7; }
		.gform_wrapper select {
			height: 40px; }
.gform_wrapper input[type=submit], #search-3 input[type=submit] {
	border: 1px solid #3b9ab7;
	background: #ffffff;
	border-radius: 50px;
	font-family: 'Montserrat';
	color: #3b9ab7 !important;
	text-transform: uppercase;
	padding: .7em 1.5em !important;
	cursor: pointer; }
	.gform_wrapper input[type=submit]:hover, #search-3 input[type=submit]:hover {
		background: #3b9ab7;
		color: #ffffff !important;
		border: 1px solid #3b9ab7; }

/* checkbox styles */
body .gform_wrapper li.gf_list_inline ul.gfield_checkbox li {
	width: 200px !important;
}
.gform_wrapper ul.gfield_checkbox li label {
	font-size: inherit;
	line-height: 2.2;
	margin: 0 1.25em 0 2.5em;
}
.gform_wrapper ul.gfield_checkbox li {
  	position: relative;
  	padding-left: 45px !important;
  	margin-bottom: 15px;
}
.gform_wrapper ul.gfield_checkbox li label:after {
  	content: "";
  	background-color: #fff;
  	width: 32px;
  	height: 32px;
  	display: block;
  	position: absolute;
  	left: 0;
  	top: 0;
  	border: 1px solid #ccc;
  	border-radius: 3px;
  	z-index: 0;
}
.gform_wrapper ul.gfield_checkbox li label:before {
  	content: "";
  	display: block;
  	position: absolute;
  	width: 10px;
  	height: 20px;
  	border: solid #3b9ab7;
  	border-width: 0 3px 3px 0;
  	left: 11px;
  	top: 4px;
  	-webkit-transform: rotate(45deg);
          	transform: rotate(45deg);
	opacity: 0;
  	z-index: 1;
  	-webkit-transition: all 100ms;
  			transition: all 100ms;
}
.gform_wrapper ul.gfield_checkbox li input[type=checkbox] {
  	opacity: 0;
  	outline: none;
  	z-index: 100;
  	width: 32px;
	height: 32px;
	top: 0;
	left: 0;
	position: absolute;
	-webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
		 cursor: pointer;
}
.gform_wrapper ul.gfield_checkbox li input[type=checkbox] + label {
	cursor: pointer;
}
.gform_wrapper ul.gfield_checkbox li input[type=checkbox]:checked + label {
	font-weight: 300 !important;
}
.gform_wrapper ul.gfield_checkbox li input[type=checkbox]:checked + label:before {
	opacity: 1;
	top: 3px;
}

/* Gravity Forms Radio Buttons */
.gform_wrapper ul.gfield_radio li label {
	font-size: inherit;
	line-height: 2.2;
	margin: 0 0 0 30px;
}
.gform_wrapper ul.gfield_radio li {
  	position: relative;
  	padding-left: 45px !important;
  	margin-bottom: 10px;
}
.gform_wrapper ul.gfield_radio li label:after {
  	content: "";
  	background-color: #ffffff;
  	width: 20px;
  	height: 20px;
  	display: block;
  	position: absolute;
  	left: 0;
  	top: 0;
  	border: 1px solid #3b9ab7;
  	border-radius: 50%;
  	z-index: 0;
}
.gform_wrapper ul.gfield_radio li label:before {
  	content: "";
  	background-color: #3b9ab7;
  	width: 12px;
  	height: 12px;
  	display: block;
  	position: absolute;
  	left: 0;
  	top: 0;
  	border: 1px solid #3b9ab7;
  	border-radius: 50%;
	opacity: 0;
  	z-index: 1;
}
.gform_wrapper ul.gfield_radio li input[type=radio] {
  	opacity: 0;
  	outline: none;
  	z-index: 100;
  	width: 20px;
	height: 20px;
	top: 0;
	left: 0;
	position: absolute;
	-webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
		 cursor: pointer;
}
.gform_wrapper ul.gfield_radio li input[type=radio] + label {
	cursor: pointer;
}
.gform_wrapper ul.gfield_radio li input[type=radio]:checked + label {
	font-weight: 400 !important;
}
.gform_wrapper ul.gfield_radio li input[type=radio]:checked + label:before {
	opacity: 1;
	left: 4px;
	top: 4px;
}
.gform_wrapper li.gf_list_inline ul.gfield_radio li {
	margin: 0 !important;
}

/* request a quote image selection in gravity forms */
.gform_wrapper li.quote-railing-system.gf_list_inline ul.gfield_radio { width: auto; display: flex; flex-wrap: wrap; }
.gform_wrapper li.quote-railing-system.gf_list_inline ul.gfield_radio li { margin-bottom: 10px !important; width: 16.66% !important; }
.gform_wrapper li.quote-railing-system.gf_list_inline ul.gfield_radio li label img { /*width: auto; height: auto;*/ padding: 1px; }
.gform_wrapper li.quote-rail-colors.gf_list_inline ul.gfield_radio li { margin-right: 20px !important; margin-bottom: 20px !important; /*width: 13.5% !important;*/ }
.gform_wrapper li.quote-bottom-rail.gf_list_inline ul.gfield_radio li label { margin: -7px 20px 0 25px !important; }

#field_3_20.hideradio ul.gfield_radio li input[type="radio"], #field_3_20 ul.gfield_radio li label:before, #field_3_20 ul.gfield_radio li label:after, #field_3_20 ul.gfield_radio li input[type=radio]:checked + label:before {
	display:none !important;
}
#field_3_20 ul.gfield_radio li {
	padding-left: 0 !important;
}
#field_3_20 ul.gfield_radio li label {
	margin: 0 !important;
}
#field_3_20.hideradio ul.gfield_radio li input[type=radio] + label {
	border: 4px solid #ffffff !important;
	max-width: 95% !important;
}
#field_3_20.hideradio ul.gfield_radio li input[type=radio]:checked + label {
	border: 4px solid #3b9ab7 !important;
	max-width: 95% !important;
}

.quote-container { margin-top: 0; }

/* Smart Slider component product page styles */
#n2-ss-2 > div.n2-ss-widget.n2-ss-widget-display-desktop.n2-ss-widget-display-tablet.n2-ss-widget-display-mobile.nextend-thumbnail.nextend-thumbnail-default.n2-ow.nextend-thumbnail-horizontal > div > div > div > div.n2-ow { margin: 5px; }

/* archive styles */
.post-preview { min-height: 160px; }
.post-preview .preview-image { text-align: center; }
.post-preview img { width: 208px; height: 160px; object-fit: cover; object-position: center; }
.post-preview h3 a { color: #3b9ab7; }

/* footer */
footer.footer { background-color: #003451; }
footer.footer .dhflex-wrap:first-child .dhflex { margin: 0 0 2.5em 0; }
footer.postfooter { color: #999999; padding: 1em 0; }
footer.postfooter a { color: #3b9ab7; border-bottom-color: #3b9ab7; }
.dhwidget-area a:link, .dhwidget-area a:visited { opacity: 1; }
#custom_html-4 a:hover { opacity: .8; }


/* Normal Menu Styles */
/* 782 based on WP mobile menu flip */
@media (min-width: 783px) {

	.header-container { padding-top: calc(100px + 30vh); }
	.header-container.is-minimal { padding-top:7.4em; }
	body.page-template-frontend .header-container { padding-top: calc(100px + 15vh); }
	
	header.preheader { position: fixed; top: 0; width: 100%; z-index: 2000; border-bottom: 1px solid #eee; }
	
	.dhmain, .page-template-minimal-header .dhmain { margin-top: 32px; }

	/* menu adjustments */
	header.dhlogomenu { background: linear-gradient(0deg, rgba(0,52,81,0) 0%, rgba(0,52,81,1) 100%); /*background: transparent;*/ border-bottom: none; position: absolute; width: 100%; }
	header.dhlogomenu.is-minimal { position:relative; background-image: url(assets/images/honeycomb.png); background-size: cover; margin-top: 32px; }
	.dhlogoheaderwidget, .dhlogomenu .dhmenu > li > a { color: #ffffff; text-transform:uppercase; }
	.dhlogoheaderwidget a:hover, .dhlogomenu .dhmenu > li:hover > a { color: #83d4f6; }
	.logo-container { width: 20%; margin-top: 1em; text-align: left; }
	.dhmenu > li > ul { border-top-color: #3b9ab7; border-top-width: 0px; }
	.dhmenu > li:hover > ul { border-top-width: 4px; }
	.dhmenu ul li:hover > a { color: #3b9ab7; }

	/* mega menu adjustments */
	.dhmenu > li:first-child,
	.dhmenu > li:nth-child(3) { position: static; }
	.dhmenu > li:first-child > ul,
	.dhmenu > li:nth-child(3) > ul { width: 100%; /*width: 100vw;*/ padding-left:1em; box-sizing:border-box; padding-right:1em; display:block; left:0; /*margin-left: -50vw; left: 50%;*/ background-color:#fff; overflow:hidden; max-height:0; transition:all linear .1s; -webkit-box-shadow: 0px 3px 27px -10px #555; -moz-box-shadow: 0px 3px 27px -10px #555; box-shadow: 0px 3px 27px -10px #555;  }
	.dhmenu > li:first-child:hover > ul,
	.dhmenu > li:nth-child(3):hover > ul { padding:1.5em 1em; max-height:450px; }
	.dhmenu > li:first-child > ul > li,
	.dhmenu > li:nth-child(3) > ul > li { display:block; float:left; width:25%; padding:0 2em; box-sizing:border-box; }
	.dhmenu > li:first-child:hover > ul > li > ul,
	.dhmenu > li:nth-child(3):hover > ul > li > ul { display:block; position:static; left:0; z-index:1; opacity:1; border:none; }
	.dhmenu > li:first-child > ul > li > a,
	.dhmenu > li:nth-child(3) > ul > li > a { border: none; padding: 0; font-size: 1em; text-transform: uppercase; font-weight: bold; }

	.dhmenu > li:first-child > ul > li:before { content: " "; display: block; width: 100%; height: 0; padding-top: 0; transition: all linear .1s; }
	.dhmenu > li:first-child:hover > ul > li:before { padding-top:60%; border-bottom:8px solid #fff; background-size:cover; }



	.dhmenu > li:first-child > ul > li:hover > a,
	.dhmenu > li:nth-child(3) > ul > li:hover > a { color: inherit; }
	.dhmenu > li:first-child > ul > li:hover > a:hover,
	.dhmenu > li:nth-child(3) > ul > li:hover > a:hover { color: #3b9ab7; }
	.dhmenu > li:first-child > ul > li > ul > li a,
	.dhmenu > li:nth-child(3) > ul > li > ul > li a { border: none; padding: .25em 0; font-size: .8em; }
	
	
	
	/* top header menu adjustments */
	header.preheader ul.menu ul { position: absolute; text-align: left; display: none; }
	header.preheader ul.menu li:hover ul { display: block; }
	header.preheader ul.menu > li { display: inline-block; position: relative; }
	header.preheader ul.menu > li > a, header.preheader #text-5 a { padding: .75em; }
	header.preheader ul.menu > li:hover > a, header.preheader #text-5 a:hover { background-color: #3b9ab7; color: #fff; padding: .75em; text-decoration: none; }
	header.preheader ul.menu > li:hover > ul { background-color: #fff; }
	
	#menu-item-2694 > a { color: #cc0000; }
	#menu-item-2694 > a:hover { background-color: #cc0000; }
	
	header.preheader ul.menu > li:hover > ul { z-index: 1; }
	header.preheader ul.menu li:hover > ul { opacity: 1; top: 26px; max-width: none; }
	
	header.preheader ul.menu ul a { display: block; overflow: hidden; background-color: #fff; box-sizing: border-box; border: 0px solid #d7d7d7; padding: .5em .75em; cursor: pointer; }
	header.preheader ul.menu li:hover ul li { padding: 0; }
	header.preheader ul.menu li:hover ul { border-top: 2px solid #83d4f6; }
	
	header.preheader ul.menu li:hover ul a { border-width: 1px; border-bottom-width: 0; color: #555; white-space: nowrap; }
	header.preheader ul.menu li:hover ul a:hover { color: #3b9ab7; background-color: #f7f8f9; text-decoration: none; }


}

/* adjust padding at certain sizes so menu doesn't crowd logo - might have to do this at a few different breakpoints */
/* works in conjunction with .logo-container {width} to ensure menu and logo don't overlap */
@media (max-width: 1300px) and (min-width: 783px) { .dhlogomenu .dhmenu > li > a { padding: 1.8em .7em; } }
@media (max-width: 1150px) and (min-width: 783px) { .dhlogomenu .dhmenu > li > a { padding: 1.6em .6em; } }


/* 782 based on WP mobile menu flip */
@media (max-width: 782px) {
	header.preheader { position: fixed; }
	header.preheader .submenu-expander { display: none; }
	header.dhlogomenu { padding-top: 4.125em; }
	.dhmenu li:hover > a { color: #3b9ab7; }
	.logo-container { width:180px; }
	header.preheader > .content-area > section.widget_nav_menu { display:inline-block; }
	header.preheader > .content-area > section.widget_search form { width:40%; margin-bottom: 1px; }
    header.preheader section.widget_search input[type=text] { width:calc(99% - 30px); }
    #menu-item-2694, #menu-item-2693, #menu-item-459, #menu-item-6072 a, #menu-item-6072 ul li#menu-item-2134 { display: none; }
	#nav_menu-3 { width: 95%; }
	#menu-item-6072 ul li#menu-item-2120 a, #menu-item-6072 ul li#menu-item-2121 a, #menu-item-6072 ul li#menu-item-2122 a { display: inline-block; }
	.dhlogomenu .content-area:after, .dhlogoheaderwidget .content-area:after { background-color: #003451; border-bottom: none; }
	
	.gform_wrapper li.quote-railing-system.gf_list_inline ul.gfield_radio li { width: 50% !important; }
	.gform_wrapper select { -webkit-appearance: menulist; }
}

/* 600 based on WP Gutenberg adjust */
@media (max-width: 600px) {    
	.match-height .wp-block-column > figure { padding-top:1em; }
	.wp-block-media-text.image-17 > figure > img { width:auto; }
	
	.kt-tabs-wrap > .kt-tabs-title-list li { width: 100%; }
	.wp-block-kadence-tabs .kt-tabs-wrap .kt-tabs-content-wrap .wp-block-kadence-tab { padding: 20px 20px 40px; }
	
	.blog .post-preview .preview-image, .archive .post-preview .preview-image { float: none; width: 100%; margin-right: 0; }
	.blog .post-preview .preview-image img, .archive .post-preview .preview-image img { width: 100%; }
	
	#search-3 input[type=text] { width: 95%; margin-bottom: .5em; }
	
	.gform_wrapper li.quote-railing-system { display: block; }
}

@media (max-width: 550px) {
	header.preheader section.widget_text { display: none; }
    header.preheader > .content-area > section.widget_search form { width:calc(100% - 14px); margin-bottom: 1px; }
    header.preheader section.widget_search input[type=text] { width:calc(92% - 30px); }
	/*header.preheader section.widget_search input[type=text] { width:50px; }*/
}

@media (max-width: 400px) {
	/*header.preheader section.widget_search input[type=text] { width: 30px; }*/
}
