/*=============================================================================

CSS RESET

=============================================================================*/

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, dialog, div, dl, dt, em, embed, fieldset, figcaption, figure, font, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, hr, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, meter, nav, object, ol, output, p, pre, progress, q, rp, rt, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video, xmp { border: 0; margin: 0; padding: 0; font-size: 100%; zoom: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section { display: block; }

html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, blockquote { list-style:none; }

h1, h2, h3, h4, h5, h6 { line-height:normal; font-weight:normal; }

a { text-decoration: none; outline:none; cursor:pointer; }

b, strong { font-weight: bold; }

img { color: transparent; font-size: 0; vertical-align: middle; border:none; -ms-interpolation-mode: bicubic; max-width:100%; height:auto; }

ul, li { display: list-item; list-style:none; }

table { border-collapse: collapse; border-spacing: 0; }

th, td, caption { font-weight: normal; vertical-align: top; text-align: right; }

svg { overflow: hidden; }

input[type="checkbox"] { margin:0 4px; width: 13px; height: 13px; padding: 0; vertical-align: middle; position: relative; top: -1px; *overflow: hidden;}

input, textarea, select { outline:none; margin:0; font-family:inherit;}

textarea{ overflow:auto; resize:none;}


/*=============================================================================

TYPOGRAPHY

=============================================================================*/

*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

html{-webkit-text-size-adjust: none;}

body { font:16px/1.5 Arial, Helvetica, sans-serif; background: #fff; color:#484848; text-align:right; direction:rtl; }

a, img, input, select, textarea, .transition, .button{-webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; -o-transition: all 0.2s ease-out; transition: all 0.2s ease-out;}

a:active, .button:active{-webkit-transition: all 0.05s ease-out; -moz-transition: all 0.05s ease-out; -o-transition: all 0.05s ease-out; transition: all 0.05s ease-out;}

.no_transition{-webkit-transition: none; -moz-transition: none; -o-transition: none; transition: none;}

a { color:#70c4ce; }

a:hover { text-decoration:underline; }


/* Tyopgraphy Elements*/

h1, h2, h3, h4, h5, h6{ margin-bottom:15px; font-weight:normal;}

h1{}

h2{ font-size:1.875em; color:#044251;}

h2.smaller{ font-size:1.500em;}

.underline{ padding-bottom:6px; display:inline-block; border-bottom:3px solid #70c4ce; padding-left:15px;}

h3{ color:#484848; font-size:1.750em;}

h4{ color:#044251; font-size:1.500em;}

h5{}

h6{}

p{ margin-bottom:15px;}

.align_left { text-align: left; }

.align_center { text-align: center; }

.align_right { text-align: right; }

/* lists */

.list{ }

.list li{ margin-bottom:15px; position:relative;}


/* colors */

.white { color: #fff; }

.black{ color:#000;}

.red{ color:#ff0101;}

/* backgrounds */

.white_bg{ background:#FFF}

.black_bg{ background:#000;}

.grey_bg{ background:#f5f3f3;}

/* buttons */

.button { background:#70c4ce; color:#044251; height: 50px; line-height: 48px; padding: 0 45px; border: none; font-size: 1.250em; cursor: pointer; display: inline-block; text-align:center; position: relative; -webkit-appearance:none; border-radius:0;}

.button:hover{ background:#044251; color:#70c4ce; text-decoration:none;}

.button.bigger { height: 50px; line-height: 48px; font-size:1.125em; }

.button.large { height: 74px; line-height: 72px; font-size: 1.889em; padding: 0 20px; font-weight:400;}

.button.wider{ padding:0 40px;}

.button.full_width{ width:100%; padding:0;}

button.button, input[type="button"] { line-height: normal; }


/* forms */

form{ margin:0 auto;}

form label{ display:block; padding: 10px 18px; color: #359ADB;}

form .form_row{ display:block; }

input[type="text"], input[type="email"], input[type="password"], select, textarea{ background: #fff; border:1px solid #e2e0e0; color:#575757; padding: 15px 18px; height:40px; max-width:100%; width:100%; font-size: 16px; margin-bottom: 20px;}

textarea{ height:200px; width:100%; margin-bottom: 0;}

input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, select:focus, textarea:focus{ border-color:#70C4CE; color:#044251;}

select[multiple]{ height: 150px;}

.wpcf7-form .required{ color:#e21836;}

::-webkit-input-placeholder {color:#848484;}

:-moz-placeholder {color:#848484;}


/* icons */




/*=============================================================================

LAYOUT

=============================================================================*/

.wrap{ position:relative; margin:0 auto; max-width:1212px; padding:0 20px;}

.mobile{ display:none;}

.block { padding: 60px 0 100px; }


/* spacing */

.gap10{ height:10px;}

.gap20{ height:20px;}

.gap30{ height:30px;}

.gap40{ height:40px;}

.gap50{ height:50px;}

.gap60{ height:60px;}

.gap70{ height:70px;}

.gap80{ height:80px;}


/* grids */

[class*='grid_'] {float: right; padding-left: 14px; padding-right: 14px; position: relative;}

.grid.small_spacing{margin-left: -2px; margin-right: -2px;}

.grid.small_spacing [class*='grid_'] {padding-left: 2px; padding-right: 2px; margin-bottom:4px;}

.right[class*='grid_'] { float: right; }

.grid { position: relative; margin-left: -14px; margin-right: -14px; }

.grid_1-2 { width: 50%; }

.grid_1-2:first-child { }

.grid_1-3 { width: 33.33%; }

.grid_1-4 { width: 25%; }

.grid_1-5 { width: 20%; }

.grid_1-6 { width: 16.66%; }

form [class*='grid_']{ margin-top:0 !important;}

/*floats*/

.right { float:right; }

.left { float:left; }

.clear { clear: both; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0; }

.clearfix:before, .clearfix:after, .grid:before, .grid:after { content: '\0020'; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0; }

.clearfix:after, .grid:after { clear: both; }

.clearfix, .grid { zoom: 1; }



/*=============================================================================

MAIN STYLES

=============================================================================*/

/* site_header */

.site_header{ background:url(../images/site_header.jpg) no-repeat center top #044251; color:#fff; padding:11px 0 0;}

.header_top{margin-bottom: 26px;}

.site_logo img{ width:83px;}

.site_header .tagline{ vertical-align:bottom; display:inline-block; position:relative; top:5px;} 

.contact_phone{ color:#ece6e6; background:url(../images/phone_icon.png) no-repeat 0 0; height:26px; line-height:26px; font-size:1.250em;  padding-left:40px; margin-left:18px; margin-top:42px; text-align:left; direction:ltr;}

.header_bottom { background:#70C4CE; }

.site_nav{ background:#70c4ce; }

.social{ }

.social { height:56px; font-size:0;}

.social a{display: inline-block; width:50px; height:56px; position:relative; overflow:hidden; border-right:1px solid #044251;}

.social a:after { content:""; background: url(../images/social_icons.png); position:absolute; left:50%; top:50%; }

.social a:hover{ }

.social .facebook:after { width: 10px; height: 19px; margin-left:-5px; margin-top:-9px;}

.social .facebook:hover:after { background-position: 0 -51px; }

.social .twitter:after { background-position: -47px -2px; width: 18px; height: 15px; margin-left:-9px; margin-top:-7px; }

.social .twitter:hover:after { background-position: -47px -53px; }

.social .rss:after { background-position: -97px 0; width: 19px; height: 19px; margin-left:-9px; margin-top:-9px;}

.social .rss:hover:after { background-position: -97px -51px; }

.social .linkedin:after { background-position: -148px 0; width: 16px; height: 18px; margin-left:-8px; margin-top:-9px;}

.social .linkedin:hover:after { background-position: -148px -51px; }

.site_nav .menu_btn{ height:36px; line-height:34px; color:#fff; font-size:12px; padding:0 20px; background:url(../images/menu_btn_icon.svg) no-repeat 12px center; display:none;}

.site_nav .menu{}

.site_nav .menu li{ float:right; border-right:1px solid #044251;}

.site_nav .menu li:first-child{ border:none;}

.site_nav .menu li a{ color:#044251; font-size:0.938em; height:56px; line-height:56px; display:block; padding:0 12px; text-decoration:none;}

.site_nav .menu li a:hover, .site_nav .menu li.active a{ color:#fff;}

/* main banner */

.main_banner{ background:url(../images/banner_image.jpg) no-repeat center top; }

.banner_container{ height:576px; position:relative;}

.banner_container:before, .banner_container:after{ content:""; position:absolute; top:0; width:100%; height:100%;}

.banner_container:before{ background:url(../images/banner_shadow_left.png) repeat-y 0 0;}

.banner_container:after{ background:url(../images/banner_shadow_right.png) repeat-y 100% 0;}

.banner_description{ background:#044251; color:#a7a6a6; font-size:1.125em; position:relative; z-index:100; width:456px; padding:16px 16px 1px; position:absolute; bottom:48px; right:-15px;}

.banner_description:after{ position:absolute; bottom:-15px; right:0; content:""; width: 0; height: 0; border-style: solid; border-width: 15px 15px 0 0; border-color: #00252e transparent transparent transparent; }

/* sidebar */

.sidebar{ width:260px; float:right; margin-left:30px;}

.sidebar.wider{ width:370px; margin-left:100px;}

/* content */

.primary_content{ overflow:hidden; padding-top:64px;}

.primary_content.no_top_padding{ padding-top:0;}

.content_image{ margin-bottom:24px;}

.content_icon{ margin-bottom:15px;}

.related_sites .primary_content .grid:first-child .related_site{ margin-bottom:50px;}

.google_map{ position:relative; height:290px; margin:0 0 45px;}

.google_map iframe{ position:absolute; left:0; top:0; width:100%; height:100%;}

.small_description{ font-size:0.875em;}

.contact_info{ font-size:0.938em; padding-top:10px;}

.contact_info li{ border-bottom:1px solid #e2e1e1; padding:10px 0;}

.contact_icon{ display:inline-block; background:url(../images/contact_icons.png) no-repeat; width:24px; height:22px; vertical-align: middle; margin-left:15px;}

.contact_icon.address{ background-position:0 0;}

.contact_icon.email{background-position: 0 -41px;}

.contact_icon.mobile{background-position: 0 -79px;}

.contact_icon.landline{background-position:0 -123px;}

.contact_icon.fax{background-position:0 -165px;}

.contact_icon.hours{background-position:0 -208px;}

/* site footer */

.site_footer{ background:#202020; color:#929292; padding:30px 0; }

.site_footer a{ color:#929292; font-size:0.875em;}

.site_footer a:hover{ color:#fff;}


/*=============================================================================

MEDIA QUERIES

=============================================================================*/

@media only screen and (max-width: 1500px) {
	
	/* grids */
	
	.grid_1-6{ width:33.33%;}
	
	/* general styles */
	
}

@media only screen and (max-width: 1024px) {
	
	/* grids */

	.grid_1-4{ width:50%; margin-bottom:25px;}
	
	.grid_1-4:nth-child(2n+1){ clear:left;}
	
	/* general styles */
	
	.banner_container{ height:400px;}

	.sidebar.wider{ margin-left:30px;}

}

@media only screen and (max-width: 950px) {

	.banner_container{ height:auto; padding:20px 0;}
	
	.banner_container:before, .banner_container:after, .banner_description:after{ display:none;}

	.banner_description{ position:relative; right:auto; bottom:auto; width:auto; background:rgba(4,66,81,0.8);}
	
	.site_nav, .site_header .social{ height:36px; }
	
	.social a{ height:36px; width:38px;}		

	.site_nav .menu li a{ font-size:12px; background:#70c4ce; height:36px; line-height:36px; white-space:nowrap;}
}


@media only screen and (max-width: 800px) {
	
	.block { padding: 60px 0;}
	
	.sidebar{ float:none; width:auto !important; margin-left:0 !important; }
	
	.sidebar_button{ text-align:left;}
	
	.contact_info{ margin-bottom:30px;}
	
	body{ font-size:14px; } 
	
	.button{ height:40px; line-height:40px;}
	
	/*.contact_section .contact_info_mobile{ display:block; border-top:1px solid #70c4ce; padding-top:15px;}*/
	
	.primary_content{ padding-top:40px;}

}

@media only screen and (max-width: 700px) {
	
	/* grids */
	
	.grid_1-6{ width:50%}
	
	/* general styles */

}

@media only screen and (max-width: 599px) {

	/* grids */

	.grid_1-3{ width:100%; margin-bottom:25px;}

	/* general styles */
	
	.site_nav .menu{ position:relative; z-index:500; right:0;}
	
	.site_nav .menu_btn{ display:block;}
	
	.site_nav .menu li{ float:none; border:none;}
		
	.site_nav .menu{ position:relative; opacity:0; pointer-events: none;
	-ms-transform: translateY(20px);
  -webkit-transform: translateY(20px); 
  transform: translateY(20px);}

	.site_nav.open .menu{ opacity:1; pointer-events: auto;
	-ms-transform: translateY(0);
  -webkit-transform: translateY(0); 
  transform: translateY(0);}
	
	
	.block { padding: 40px 0;}	

	body{ font-size:12px; } 

	.button{ height:32px; line-height:32px; padding:0 30px;}
	
	.site_header .contact_phone{ display:none;}

	.main_banner .contact_phone{ display:block; margin-bottom:15px;}
	
	.site_nav .social{ display:none;}
	
	.header_top .right{ float:left;}
	
	.site_logo img{ width:25px;}
	
	.site_header{ padding-top:0;}
	
	.site_header .header_top { float:left; padding-top:4px;}
	
	.site_header .tagline{ line-height:0.9; top:0; font-size:12px;}
	
	.site_header .tagline .divider{ display:none;}
	
	.site_header .tagline strong{ display:block;}
	
	.site_header .site_nav{ float:right; margin-top:0; position:relative; left:20px;}
	
	.site_header .social{ display:none;}
	
	.site_header .header_top{ margin-bottom:0;}
	
	.site_header .header_bottom{ background:none;}
	
	input[type="text"], input[type="email"], input[type="password"], select{ margin-bottom:6px; height:20px;}

}

@media only screen and (max-width: 450px) {

	/* grids */

	[class*='grid_']{ width:100%; margin-top:25px;}
	
	[class*='grid_']:first-child{ margin-top:0;}

	.mobile-2-cols [class*='grid_']{ width:50%;}

	/* general styles */
	
}