/* -----------------------------------------------------------------------
    Responsive
-------------------------------------------------------------------------- */

@media only screen and (max-width: 979px) {
	
	#logo { position: absolute; z-index: 10; }
	
	#main-nav { width: 100%; margin-right: 0; }
	#menu-main-navigation { display: none; }
    #responsive-nav { display: block; width: 100%; position: relative; z-index: 5; font-family: Arial, sans-serif; }
    .slicknav_menu { position: relative; z-index: 10000; }
	.slicknav_btn { position: relative; display: block; overflow: hidden; cursor: pointer; text-decoration: none; padding: 20px 0 15px 30px; margin: 0; font-size: 20px; line-height: 26px; font-weight: 600; float: right; letter-spacing: 1px; }
	.slicknav_menu { background: transparent; *zoom: 1; margin-bottom: 0; }
	.slicknav_menutxt, .slicknav_icon { display: block; float: left; }
	.slicknav_menutxt { color: #555; }
	.slicknav_icon { float: left; margin: 4px 0 0 10px; }
	.slicknav_icon-bar { background-color: #555; display: block; width: 1.1em; height: 0.15em; }
	.slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar { margin-top: 0.19em }
	.slicknav_nav, .slicknav_nav ul { list-style: none; overflow: hidden; clear: both; padding: 0; margin: 0; }
	.slicknav_nav { border-top: 10px solid transparent; margin-bottom: 30px; }
	.slicknav_nav li { display: block; margin: 0; font-size: 17px; line-height: 22px; border: 1px solid #707070; border-bottom: none; }
	.slicknav_nav li:last-child { border-bottom: 1px solid #707070; }
	.slicknav_nav .slicknav_arrow { font-size: 0.8em; margin: 0 0 0 0.4em; }
	.slicknav_nav .slicknav_item { display: block; cursor: pointer; padding: 12px 20px; }
	.slicknav_nav a { display: block; padding: 12px 20px; background: #f8f4e5;; color: #555; }
	.slicknav_nav .slicknav_item a { display: inline-block; float: left; padding: 0; margin: 0; }
	.slicknav_nav li:hover a,
	.slicknav_nav a:hover,
	.slicknav_nav .slicknav_arrow:hover,
	.slicknav_nav .slicknav_item:hover,
	.slicknav_nav li.current-menu-item a { color: #fff; }
	.slicknav_nav .sub-menu { margin-bottom: 0; }
	.slicknav_nav .sub-menu li { margin-left: 0; border-bottom: none; border-top: 1px solid #000; }
	.slicknav_nav .sub-menu li a { font-size: 15px; background-color: #2c2c2c; color: #fff; }
	.slicknav_nav .sub-menu li a:hover, .slicknav_nav .sub-menu li.current-menu-item a { background-color: #fffef3; color: #555; }
	.slicknav_nav .slicknav_txtnode { margin-left: 15px; }
	.slicknav_menu:before,
	.slicknav_menu:after { content: " "; display: table; }
	.slicknav_menu:after { clear: both }
	
}
	
/* Tablet Portrait size to Tablet Landscape (devices and browsers) */
@media only screen and (min-width: 768px) and (max-width: 979px) {
		
	.container { width: 720px; }
	.inset { padding: 25px; }
    .page-section { margin-bottom: 35px; }
	
	h1 { font-size: 26px; line-height: 30px; }
	h2 { font-size: 24px; line-height: 28px; }
	h3 { font-size: 18px; line-height: 22px; }
	
	#main-nav { margin-top: 82px; }
	
	#page-header p { font-size: 22px; line-height: 30px; }
	
    #back-to-top { right: 15px; bottom: 15px; }

}

@media only screen and (max-width: 767px) {

    .col-full,
    .col-half,
    .col-one-third,
    .col-two-third,
    .col-one-fourth,
    .col-three-fourth,
    .col-one-fifth,
    .col-two-fifth,
    .col-three-fifth,
    .col-four-fifth,
    .col-one-sixth,
    .col-five-sixth { width: 100%; }

    .col-full,
    .col-half,
    .col-one-third,
    .col-two-third,
    .col-three-fourth,
    .col-one-fourth,
    .col-one-fifth,
    .col-two-fifth,
    .col-three-fifth,
    .col-four-fifth,
    .col-one-sixth,
    .col-five-sixth { margin-right: 0; float: none; }
    
    .col-full,
    .col-half,
    .col-one-third,
    .col-two-third,
    .col-three-fourth,
    .col-one-fourth,
    .col-one-fifth,
    .col-two-fifth,
    .col-three-fifth,
    .col-four-fifth,
    .col-one-sixth,
    .col-five-sixth { margin-bottom: 20px !important; }
    
    h1 { margin-bottom: 15px; }
    
    #hero-header { width: 100%; }
    
    #feature-image { margin-bottom: 0 !important; }
    
}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {
	
    .container { width: 440px; }
    .inset { padding: 25px; }
    .page-section { margin-bottom: 35px; }
    
    .teaser-list li { margin-bottom: 40px !important; }
    
    h1 { font-size: 24px; line-height: 28px; }
	h2 { font-size: 22px; line-height: 26px; }
	h3 { font-size: 19px; line-height: 23px; }
	
	#logo img { width: 100px; }
	#main-nav { margin-top: 80px; }
	
	#page-header p { font-size: 22px; line-height: 30px; }
	
    #back-to-top { right: 15px; bottom: 15px; }
	
}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) {
	
	.container { width: 280px; }
    .inset { padding: 20px; }
    .page-section { margin-bottom: 25px; }
    
    .teaser-list li { margin-bottom: 35px !important; }
    
    body { font-size: 14px; line-height: 20px; }
    h1 { font-size: 22px; line-height: 26px; }
	h2 { font-size: 20px; line-height: 24px; }
	h3 { font-size: 18px; line-height: 22px; }
	h4 { font-size: 16px; line-height: 20px; }
	h5 { font-size: 14px; line-height: 18px; }
	
	input[type="text"], input[type="email"], input[type="search"], input[type="password"], select, textarea { font-size: 14px; line-height: 20px; padding: 8px 12px; }
	
	ul, ol, dl { margin: 0 0 20px 20px; }
	
	#logo img { width: 80px; }
	#main-nav { margin-top: 55px; }

	#page-header p { font-size: 18px; line-height: 24px; }
	
    #captcha { overflow: hidden; width: 160px; border-right: 1px solid #d3d3d3; -webkit-border-top-right-radius: 4px; -webkit-border-bottom-right-radius: 4px; -moz-border-radius-topright: 4px; -moz-border-radius-bottomright: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; height: 76px; padding-top: 0; }
    
    #footer-nav { padding-top: 18px; }
    
    #back-to-top { right: 10px; bottom: 10px; }

}

.visible-phone { display: none !important; }
.visible-tablet { display: none !important; }
.hidden-desktop { display: none !important; }
.visible-desktop { display: inherit !important; }

@media (min-width: 768px) and (max-width: 979px) {
  .hidden-desktop { display: inherit !important; }
  .visible-desktop { display: none !important ; }
  .visible-tablet { display: inherit !important; }
  .hidden-tablet { display: none !important; }
}

@media (max-width: 767px) {
  .hidden-desktop { display: inherit !important; }
  .visible-desktop { display: none !important; }
  .visible-phone { display: inherit !important; }
  .hidden-phone { display: none !important; }
}