/*
Theme name: PCMedCentercom
Description: Custom Theme
*/

/******* PCMedCentercom WordPress CSS *******/

/* Common elements styling */
.post .entry h1 { font-size: 20px; line-height: 30px}
.post .entry h2 { font-size: 18px; line-height: 27px}
.post .entry h3 { font-size: 16px; line-height: 24px}
.post .entry h4 { font-size: 14px; line-height: 21px}
.post .entry h5 { font-size: 12px; line-height: 18px}
.post .entry h6 { font-size: 10px; line-height: 15px}

.post .entry ul { margin-left: 25px; }
.post .entry ol { margin-left: 25px; }
.post .entry a img { border: 0 }

p img { padding: 0;	max-width: 100%; }
img.centered { display: block; margin-left: auto; margin-right: auto; }
img.alignright { margin: 2px 0 2px 7px; display: inline; }
img.alignleft { margin: 2px 7px 2px 0; display: inline; }
.alignright { float: right; display: inline; }
.alignleft { float: left; display: inline; }
.aligncenter, div.aligncenter { display: block; margin-left: auto; margin-right: auto; }

/* Calendar widget */
#wp-calendar { empty-cells: show; margin: 10px auto 0; }
#wp-calendar #next a { padding-right: 10px; text-align: right; }
#wp-calendar #prev a { padding-left: 10px; text-align: left; }
#wp-calendar a { display: block; }
#wp-calendar caption { text-align: center; width: 100%; }
#wp-calendar td { padding: 3px 0; text-align: center; }
.wp-caption { border: 1px solid #ddd; text-align: center; padding-top: 4px; margin: 10px; }
.wp-caption img { margin: 0; padding: 0; border: 0 none; }
.wp-caption p.wp-caption-text { font-size: 11px; line-height: 17px; padding: 0 4px 5px; margin: 0;}

/* Big images in rich text editor should not break page layout */
.post .entry { overflow: hidden; }
.accordion .entry { overflow: visible; }

/******* /PCMedCentercom WordPress CSS *******/
* { margin: 0; padding: 0; outline: 0; }

html,
body { height: 100%; }

html { overflow-y: scroll; }

body { font-size: 18px; line-height: 1.67; font-family: 'ProximaNova', sans-serif; color: #4d4d4d; background-color: #fff; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; }

a { color: #ff0000; text-decoration: none; cursor: pointer; }
a:hover { color: #333; }
a img { border: 0; }
img { vertical-align: middle; }

h1,
h2,
h3,
h4,
h5,
h6 { line-height: 1.1; font-weight: normal; }

h1 { font-size: 70px; }
h2 { font-size: 50px; }
h3 { font-size: 40px; }
h4 { font-size: 30px; }
h5 { font-size: 26px; }
h6 { font-size: 16px; }

input, 
textarea, 
select { font-size: 18px; font-family: 'Open Sans', sans-serif;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
textarea { overflow: auto; resize: none; }
textarea,
input[type="tel"],
input[type="text"],
input[type="email"],
input[type="password"],
input[type="submit"] { -webkit-appearance: none; }

/* =====================================================
	#Common
====================================================== */

.clearfix:before,
.clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
.left, .alignleft { float: left; }
.right, .alignright { float: right; }

.overlay { background: #fff url(images/loading.gif) no-repeat center center; background-size: 50px 50px; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 5;
    -webkit-transition: .5s;
            transition: .5s;
}
.page-loaded .overlay { opacity: 0; visibility: hidden; }

.shell { width: 1344px; margin: 0 auto; }

.background { position: relative; overflow: hidden; }
.background-image { position: absolute; }

.button { display: inline-block; background-color: #ff0000; border: 0; border-radius: 25px; min-width: 180px; padding: 13px 30px 15px; color: #fff; font-size: 20px; line-height: 1.2; font-family: 'ProximaNovaBold', sans-serif; text-align: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.button-white { background-color: #fff; color: #ff0000; }
.button:hover { background-color: #333; color: #fff; }

a,
.post a img {
	-webkit-transition: .2s;
	        transition: .2s;
}

/* =====================================================
    #Icons
====================================================== */

.icon { display: inline-block; background: no-repeat 0 0; background-size: cover; vertical-align: middle; position: relative; }
.icon-monitor { background-image: url(images/icon-monitor.png); width: 70px; height: 63px; }
.icon-folders { background-image: url(images/icon-folders.png); width: 78px; height: 63px; }
.icon-laptop { background-image: url(images/icon-laptop.png); width: 84px; height: 64px; }
.icon-question { background-image: url(images/icon-question.png); width: 57px; height: 57px; }
.icon-marker { background-image: url(images/icon-marker.png); width: 45px; height: 60px; }
.icon-www { background-image: url(images/icon-www.png); width: 70px; height: 61px; }
.icon-ribbon { background-image: url(images/icon-ribbon.png); width: 94px; height: 57px; }
.icon-building { background-image: url(images/icon-building.png); width: 56px; height: 71px; }
.icon-image { background-image: url(images/icon-image.png); width: 21px; height: 17px; }
.icon-dev { background-image: url(images/icon-dev.png); width: 33px; height: 17px; }
.icon-phone { background-image: url(images/cellphone-icon.png); width: 53px; height: 65px; }

/* =====================================================
	#Header
====================================================== */

.page-template-templatestemplate-features-php { background-color: #310101; }

.header { background-color: #fff; height: 150px; padding: 34px 0 18px; position: relative; z-index: 2;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

.logo { float: left; width: 275px; margin-top: 19px; }
.logo a { display: block; background: url(images/logo.png) no-repeat 0 0; background-size: cover; height: 47px; white-space: nowrap; text-indent: -4000px; overflow: hidden; }

.nav-btn { display: block; width: 60px; margin: 0 auto; text-align: center; font-size: 20px; color: #333; }
.nav-btn i { display: block; background: url(images/nav-btn.png) no-repeat 0 0; background-size: cover; width: 60px; height: 53px; margin-bottom: 2px; }

.utilities { float: right; margin-top: 20px; }

.address { float: left; border-left: 2px solid #3b3b3b; padding: 5px 22px 0 22px; margin: 0 -22px 0 23px; position: relative; }
.address .tooltip-button { display: block; background: url(images/icon-map.png) no-repeat 0 0; background-size: auto 48px; min-height: 48px; padding: 14px 0 0 71px; line-height: 1; font-size: 22px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.address .tooltip-button small { display: block; font-size: 15px; margin-bottom: 1px; }
.address .tooltip-button span { display: block; }

.contact-info { float: left; line-height: 1; text-align: right; font-size: 22px; }

.are-we-open { position: relative; }

.phone { display: inline-block; font-size: 26px; color: #333; margin-bottom: 9px; }

.tooltip { background-color: #000; border-radius: 5px; color: #fff; width: 342px; text-align: center; font-size: 20px; padding: 30px 20px; position: absolute; top: calc(100% + 33px); left: 50%; opacity: 0; visibility: hidden;
    -webkit-transition: .3s;
            transition: .3s;
    -webkit-transform: translate(-50%, 50px);
            transform: translate(-50%, 50px);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.tooltip:before { content: ''; border-left: 15px solid transparent; border-right: 15px solid transparent; border-bottom: 15px solid #000; position: absolute; bottom: 100%; left: 50%; margin-left: -15px; }
.tooltip.open { opacity: 1; visibility: visible;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
}
.tooltip h3 { font-size: 36px; line-height: 1.27; margin-bottom: 25px; }
.tooltip h3:last-child { margin-bottom: 0; }
.tooltip h4 { line-height: 1.27; margin-bottom: 20px; }
.tooltip h4:last-child { margin-bottom: 0; }
.tooltip h5 { margin-bottom: 15px; }
.tooltip h5:last-child { margin-bottom: 15px; }
.tooltip h5 span { color: #ff0000; }
.tooltip h6 { margin: 5px 0; }
.tooltip p { margin-bottom: 18px; }
.tooltip p:last-child { margin-bottom: 5px; }



.accordion-body .wp-caption { display: inline-block; position: relative;  border: 0;text-align: none;padding-top: 0; margin: 0; }

.accordion-body .wp-caption:hover .wp-caption-text { opacity: 1; visibility: visible;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
}
.accordion-body .wp-caption p.wp-caption-text,
.accordion-body .wp-caption-text { background-color: #db0f12; border-radius: 5px; font-size: 14px; color: #fff; width: 180px; position: absolute; bottom: calc(100% + 10px); bottom: -webkit-calc(100% + 10px); left: 50%; margin-left: -100px; padding: 10px; text-align: center; line-height: 1.2; opacity: 0; visibility: hidden;
    -webkit-transition: .5s;
            transition: .5s;
    -webkit-transform: translate(0, -10px);
            transform: translate(0, -10px);
}
.accordion-body .wp-caption-text:after { content: ''; border-left: 7px solid transparent; border-right: 7px solid transparent; border-top: 7px solid #db0f12; position: absolute; top: 100%; left: 50%; margin-left: -7px; }

/* =====================================================
    #Footer
====================================================== */

.contact-section { text-align: center; font-size: 30px; color: #ff0000; line-height: 1.3; padding: 120px 0; }
.contact-section p { margin-bottom: 28px; }
.contact-section p strong { font-weight: normal; font-family: 'ProximaNovaBold', sans-serif; }
.contact-section h3 { display: block; font-weight: normal; font-size: 40px; color: #000; }

.logos-section { background-color: #333; text-align: center; color: #959595; font-size: 22px; padding: 50px 0 36px; }
.logos-section p { margin-bottom: 46px; }
.logos { font-size: 0; line-height: 0; margin: 0 -25px; }
.logos a { display: inline-block; margin: 0 25px 25px; }
.logos a:hover {
    -webkit-transform: scale(.95);
            transform: scale(.95);
}

.clients-section .logos a:hover { 
    -webkit-transform: none;
            transform: none;
}

.clients-section { margin-top: -60px; }
.clients-slider { overflow: hidden; height: 67px; }
.clients-slider .slide-logo { float: left; line-height: 67px; }
.clients-section .bx-controls { display: none; }

.footer { background-color: #1a1a1a; color: #fff; padding: 73px 0 36px; }
.footer .button { padding-left: 60px; padding-right: 60px; }
.footer-cols { margin-bottom: 37px; }
.footer-col { float: left; margin-right: 2%; }
.footer-col:nth-child(1) { width: 26%; }
.footer-col:nth-child(2) { width: 23%; }
.footer-col:nth-child(3) { width: 47%; margin-right: 0; }

.footer-nav { margin-bottom: 42px; }
.footer-nav li { margin-bottom: 6px; }
.footer-nav ul { list-style: none outside none; }
.footer-nav a { color: #fff; }

.twitter-feed { font-size: 26px; font-family: Georgia, sans-serif; font-style: italic; }
.twitter-feed h6 { font-size: 22px; color: #666; margin-bottom: 10px; font-family: 'ProximaNova', sans-serif; font-style: normal; }

.socials ul { list-style: none outside none; overflow: hidden; }
.socials li { float: left; margin-right: 10px; }
.socials a { display: block; background: url(images/socials.png) no-repeat 0 bottom; width: 50px; height: 50px; }
.socials .link-facebook { background-position: 0 bottom; }
.socials .link-twitter { background-position: -50px bottom; }
.socials .link-skype { background-position: -100px bottom; }
.socials .link-facebook:hover { background-position: 0 0; }
.socials .link-twitter:hover { background-position: -50px 0; }
.socials .link-skype:hover { background-position: -100px 0; }

.copyright { margin-top: 10px; }

div.page p,
div.post p { padding-bottom: 20px; }

div.page ul,
div.post ul,
div.page ol,
div.post ol { list-style-position: inside; margin-bottom: 20px; }

div.page ul ul,
div.post ul ul,
div.page ol ol,
div.post ol ol { margin-left: 20px; margin-bottom: 0; }

div.page blockquote,
div.post blockquote { font-style: italic; padding-left: 30px; }

div.page h1,
div.post h1,
div.page h2,
div.post h2,
div.page h3,
div.post h3,
div.page h4,
div.post h4,
div.page h5,
div.post h5,
div.page h6,
div.post h6 { margin-bottom: 20px; }

/* =====================================================
    #Menu
====================================================== */

.menu { height: calc(100% - 150px); }
.menu-row { display: table; width: 100%; height: 60%; }
.menu-row-two { display: table; height: 40%; }
.menu-row-three-small { height: 40%; }
.menu-row-two .menu-item { width: 50%; }
.menu-row-three .menu-item { width: 33.33%; }
.menu-row-three .menu-item:first-child { width: 33.34%; }

.features-menu .menu-item { display: table-cell; padding: 40px; text-align: center; color: #fff; vertical-align: middle; line-height: 1.6; position: relative;  overflow: hidden; }
.features-menu .menu-item-hover { content: ''; background: url(images/link-bg.jpg) no-repeat center center; background-size: cover; position: absolute; top: 0; left: 0; right: 0; height: 100%; z-index: 0; opacity: 0; }
.features-menu .menu-item strong { display: block; font-size: 40px; line-height: 1.13; font-family: 'ProximaNova', sans-serif; font-weight: normal; margin-bottom: 39px; }
.features-menu .menu-item em { display: block; font-family: 'Georgia', sans-serif; letter-spacing: .8px; max-width: 470px; margin: 0 auto 45px; }
.features-menu .menu-item em:last-child { margin-bottom: 0; }
.features-menu .menu-item small { display: inline-block; background: #fff url(images/arrow-right.png) no-repeat center center; border-radius: 50%; background-size: 13px 19px; width: 50px; height: 50px; opacity: 0; }
.features-menu .menu-item-hover,
.features-menu .menu-item small {
    -webkit-transition: .2s;
            transition: .2s;
}
.features-menu .menu-item:hover { color: #fff; }
.features-menu .menu-item.mhover .menu-item-hover,
.features-menu .menu-item.mhover small,
.features-menu .menu-item:hover .menu-item-hover,
.features-menu .menu-item:hover small { opacity: 1; }
.features-menu .menu-item-inner { display: block; position: relative; z-index: 1; }

.menu-row-three .features-menu .menu-item { width: 33.33%; }
.menu-row-three .features-menu .menu-item:first-child { width: 33.34%; }

.menu-row-two .features-menu .menu-item { width: 50%; }

.features-menu .menu-item-small .features-menu .menu-item strong { margin-bottom: 33px; }
.features-menu .menu-item-small .features-menu .menu-item em { margin-bottom: 0; }
.features-menu .menu-item-small .icon-holder { margin-bottom: 40px; }

.menu-large { background: url(images/bg2.jpg) no-repeat center center; background-size: cover; }
.menu-large .menu-row { height: 100%; }
.menu-large .features-menu .menu-item-hover { background: rgba(0, 0, 0, .8); opacity: 1; }
.menu-large .features-menu .menu-item:hover .menu-item-hover { opacity: 0; }

.icon-holder { display: block; height: 64px; margin-bottom: 45px; }

/* =====================================================
    #Landing
====================================================== */

.page-template-templatestemplate-landing-php { background: url(images/bg.png) no-repeat 0 0; background-size: cover; color: #fff; font-size: 40px; line-height: 1.3; }
.page-template-templatestemplate-landing-php a { color: #fff; }
.page-template-templatestemplate-landing-php a:hover { color: #333; }
.page-template-templatestemplate-landing-php .button { background-color: #fff; color: #ff0000; }
.page-template-templatestemplate-landing-php .button:hover { background-color: #333; color: #fff; }

.landing-container { display: table; width: 100%; height: 100%; }
.landing-inner { display: table-cell; vertical-align: middle; padding: 40px 0; }

.landing-head { background-color: rgba(255, 255, 255, .95); max-width: 394px; margin: 0 auto; padding: 0 0 44px; margin-bottom: 59px; position: relative; }
.landing-head:before { content: ''; background-color: rgba(255, 255, 255, .95); position: absolute; bottom: 100%; left: 0; right: 0; height: 9999px; }
.landing-head .logo { float: none; width: 295px; margin: 0 auto; }
.landing-head .logo a { height: 50px; }

.landing-body { text-align: center; position: relative; padding-top: 51px; }
.landing-body:before { content: ''; border-top: 2px solid #fff; width: 90px; position: absolute; top: 0; left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
}
.landing-body ul { list-style: none outside none; margin-bottom: 20px; }
.landing-body ul + ul { margin-top: -20px; }
.landing-body li { display: inline; }
.landing-body li + li:before { content: '|'; margin: 0 18px 0 12px; }
.landing-body p { margin-bottom: 61px; }

/* =====================================================
    #Page
====================================================== */

.banner { height: 600px; margin-bottom: 60px; }
.banner .shell { display: table; height: 100%; position: relative; z-index: 1; }
.banner-text { display: table-cell; vertical-align: middle; color: #fff; font-size: 35px; line-height: 1.58; padding: 50px 0 0; }
.banner-text-inner { max-width: 900px; }
.banner-text h1 { margin-bottom: 59px; }
.banner-text p { margin-bottom: 38px; }
.banner-text p span { border-bottom: 1px solid #fff; text-decoration: none!important; }
.banner-text small { display: block; font-size: 18px; font-family: 'Open Sans', sans-serif; max-width: 670px; }

.cta { margin-left: -3%; }
.cta-item { float: left; background: #e2e2e2 no-repeat right 0; background-size: auto 100%; width: 97%; margin: 0 0 60px 3%; padding: 27px 37px 22px; font-size: 42px; line-height: 1.08; color: #333; text-shadow: 0 0 7px rgba(255, 255, 255, .5);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.cta-item-small { width: 47%; }
.cta-item:hover { color: #ec1c24; }
.cta-item-text { display: block; margin-bottom: 5px; }
.cta-item strong { font-family: 'ProximaNovaBold', sans-serif; font-weight: normal; }
.cta-item small { font-size: 22px; }

.cta-button { background-color: #ec1c24; font-size: 22px; color: #fff; padding: 5px 10px; }

/* accordion */
.section-body .main { padding: 70px 0; }

.section-head { cursor: pointer; position: relative; }
.section-head:before { content: ''; background: url(images/bg.jpg) no-repeat center center; background-size: cover; position: absolute; top: 0; left: 0; right: 0; bottom: 0; opacity: 0; }
.section-head .shell { position: relative; z-index: 1; }
.section-head .shell:after { content: ''; background: url(images/arrow-right.png) no-repeat 0 0; background-size: 100% 100%; width: 13px; height: 19px; position: absolute; top: 50%; right: 0; margin-top: -6px; }
.section-head h3 { padding: 54px 50px 51px 0; border-bottom: 1px solid #cfcfcf; }

.section:first-child .section-head h3 { border-top: 1px solid #cfcfcf; }
.section.current .section-body { background-color: #f1f1f1; }
.section.current .section-head { color: #fff; }
.section.current .section-head:before { opacity: 1; }
.section.current .section-head h3 { border-color: transparent; }
.section.current .section-head .shell:after { background-image: url(images/arrow-down-white.png); width: 19px; height: 13px; }

.section-head,
.section-head:before {
    -webkit-transition: .3s;
            transition: .3s;
}

/* content */
.main { padding-bottom: 100px; }

.content { width: 65.5%; }

.post h1,
.post h2,
.post h3,
.post h4,
.post h5,
.post h6 { margin-bottom: 12px; }

.post p,
.post ul,
.post ol { margin-bottom: 30px; }

.post ol { padding-left: 20px; } 

.post li { padding-bottom: 10px; } 

.post ul { list-style: none outside none; }
.post ul li { background: url(images/plus.png) no-repeat 0 9px; background-size: 13px 12px; padding-left: 32px; }

.post ul ul,
.post ul ol,
.post ol ol,
.post ol ul { padding-left: 25px; margin-bottom: 0; }

.post blockquote { padding: 10px 30px; margin-bottom: 20px; font-style: italic; font-size: 16px; position: relative; overflow: hidden; }
.post blockquote:before { content: '"'; position: absolute; top: 5px; left: 0; font-size: 40px; line-height: 1; }

.post img { margin-bottom: 20px; max-width: 100%; height: auto; }
.post p img { margin-bottom: 0; }
.post a:hover img { opacity: .7; }

.post .alignleft { margin: 0 20px 10px 0; }
.post .alignright { margin: 0 0 10px 20px; }

.post + .buttons { margin-top: 70px; }

.buttons a { margin-right: 22px; }

/* sidebar */
.sidebar { width: 25%; }
.widgets { list-style: none outside none; }
.widget + .widget { margin-top: 60px; }
.widgettitle { margin-bottom: 9px; }

.widget_testimonials { background-color: #fff; padding: 23px 26px; }
.testimonial { color: #808080; }
.testimonial blockquote { font-family: 'Georgia', sans-serif; font-style: italic; position: relative; padding: 0 0 22px 4px; margin-bottom: 25px; }
.testimonial blockquote:after { content: ''; border-bottom: 1px solid #ff0000; width: 120px; position: absolute; bottom: 0; left: 4px; }
.testimonial p { font-size: 16px; line-height: 1.4; margin-left: 4px; }

/* slider */
.testimonials-slider { list-style: none outside none; overflow: hidden; }
.testimonial { position: relative; }

.bx-viewport { -webkit-transform: translateZ(0); transform: translateZ(0); }

/* Direction Nav */
.bx-controls-direction { list-style: none outside none; text-align: center; margin-top: 30px; }
.bx-controls-direction a { display: inline-block; background: no-repeat center center; background-size: 13px 19px; border: 2px solid #f2f2f2; border-radius: 50%; width: 48px; height: 48px; margin: 0 4px; text-indent: -4000px; white-space: nowrap; overflow: hidden; }
.bx-controls-direction .bx-prev { background-image: url(images/arrow-left.png); background-position: 17px center; }
.bx-controls-direction .bx-next { background-image: url(images/arrow-right.png); background-position: 19px center; }
.bx-controls-direction .disabled { display: none; }

.bx-pager { text-align: center; font-size: 0; line-height: 0; }
.bx-pager-item { display: inline-block; margin: 0 10px; }
.bx-pager-link { display: inline-block; background-color: #c8c8c8; border-radius: 50%; width: 17px; height: 17px; }
.bx-pager-link.active { background-color: #ff0000; }

/* =====================================================
    #Faq
====================================================== */

.faq h6 { font-size: 20px; color: #4d4d4d; line-height: 1.9; }
.faq .accordion-section { border-bottom: 1px solid #c8c8c8; padding: 20px 30px; cursor: pointer; }
.faq .accordion-section:first-child { border-top: 1px solid #c8c8c8; }
.faq .accordion-section.current { background-color: #f2f2f2; }
.faq .accordion-section.current h6 { color: #ff0000; }
.faq .accordion-body { padding-top: 36px; }

.col { width: 47%; }

/* =====================================================
    #Contact
====================================================== */

.map { margin-bottom: 60px; }
.map-canvas { height: 470px; }

.widget_contact { font-size: 20px; }
.widget_contact p { margin-bottom: 2px; }
.widget_contact strong { display: inline-block; font-size: 26px; font-weight: normal; margin-top: 7px; }

.widget_hours { font-size: 20px; }
.widget_hours p { margin-bottom: 6px; }

.widget_housecall p { padding-left: 78px; position: relative; }
.widget_housecall .icon { position: absolute; top: 12px; left: 0; }

.form p { margin-bottom: 60px; }
.form .button { float: left; margin-right: 26px; }

.faq-button { display: inline-block; margin-top: 10px; }

.gform_heading { display: none; }
.gform_fields { list-style: none outside none; margin-left: -2%; }
.gform_fields:before,
.gform_fields:after { content: " "; display: table; }
.gform_fields:after { clear: both; }

.gfield { float: left; width: 48%; margin: 0 0 28px 2%; position: relative; }
.gfield-large { width: 98%; }
.gfield_label { display: none; }
.gfield input[type="tel"],
.gfield input[type="text"],
.gfield input[type="email"],
.gfield input[type="password"],
.gfield textarea { display: block; background-color: #f2f2f2; border: 2px solid #f2f2f2; box-shadow: 0 0 2px rgba(0, 0, 0, .4); border-radius: 5px; height: 54px; width: 100%; padding: 0 19px; color: #959595;
    -webkit-transition: .2s;
            transition: .2s;
}
.gfield textarea { height: 243px; padding: 17px 19px; }

.gfield input[type="tel"]:focus,
.gfield input[type="text"]:focus,
.gfield input[type="email"]:focus,
.gfield input[type="password"]:focus,
.gfield textarea:focus { border-color: #c8c8c8; box-shadow: 0 0 2px rgba(0, 0, 0, 0); }

::-webkit-input-placeholder { color: #959595; }
:-moz-placeholder { color: #959595; }
::-moz-placeholder { color: #959595; }
:-ms-input-placeholder { color: #959595; }

/* =====================================================
    #Website design
====================================================== */

.grid { overflow: hidden; margin-bottom: 60px; }
.grid-item { float: left; width: 25%; overflow: hidden; color: #333; position: relative; }
.grid-item:before { content: ''; background-color: rgba(0, 0, 0, .6); position: absolute; top: 0; left: 0; right: 0; bottom: 0; opacity: 0; visibility: hidden; z-index: 1; }
.grid-item:after { content: ''; border-left: 25px solid transparent; border-right: 25px solid transparent; border-bottom: 20px solid #fff; position: absolute; bottom: 0; left: 50%; margin-left: -25px; opacity: 0; visibility: hidden; z-index: 2;
}
.grid-item:before,
.grid-item:after {
    -webkit-transition: .3s;
            transition: .3s;
}
.grid-item-inner { display: block; position: relative; height: 0; padding-bottom: 83%; }
.grid-item img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.grid-item-text-container { position: absolute; top: 100%; left: 0; width: 100%; height: 120px; }
.grid-item-text { display: table; width: 100%; height: 100%; text-align: center; font-size: 24px; line-height: 1.3; }
.grid-item-text-inner { display: table-cell; vertical-align: middle; }
.grid-item-text strong { display: block; font-weight: normal; text-transform: uppercase; }
.grid-item-text small { display: block; font-size: 16px; }

.grid-item img,
.grid-item-text-container {
    -webkit-transition: .4s;
            transition: .4s;
}
.grid-item:hover img,
.grid-item:hover .grid-item-text-container {
    -webkit-transform: translate(0, -120px);
            transform: translate(0, -120px);
}

.grid-item.current:before,
.grid-item.current:after { opacity: 1; visibility: visible; }

.grid-content { clear: both; padding: 125px 0; }
.grid-text { width: 42.5%; font-size: 16px; line-height: 1.8; font-family: 'Open Sans', sans-serif; }
.grid-text h4 { margin-bottom: 27px; }
.grid-text p { margin-bottom: 25px; }

.tags { margin: 75px 0 50px; font-family: 'ProximaNova', sans-serif; font-size: 0; line-height: 0; }
.tag { display: inline-block; margin-right: 40px; font-size: 16px; line-height: 1.8; }
.tags { color: #959595; }
.tags a:hover { opacity: .5; }
.tag-icon-holder { display: inline-block; margin-right: 15px; position: relative; top: -3px; }

.grid-slider { width: 49%; }
.grid-slider .bx-pager { margin-top: 53px; }
.grid-slide { text-align: center; position: relative; }
.grid-slide img { max-width: 100%; height: auto; }

/* =================================================================================
                            Testimonials Plugin
 ================================================================================ */
.easy-testimonials-submission-form { width: 50%; margin: 0 auto; }
.easy-testimonials-submission-form input[type="text"],
.easy-testimonials-submission-form textarea,
.easy-testimonials-submission-form select {
    margin: 0 auto;
    width: 100%;
    display: block;
    background-color: #f2f2f2;
    border: 2px solid #f2f2f2;
    box-shadow: 0 0 2px rgba(0, 0, 0, .4);
    border-radius: 5px;
    height: 54px;
    padding: 0 19px;
    color: #959595;
    -webkit-transition: .2s;
    transition: .2s; 
}

.easy-testimonials-submission-form select { padding-right: 29px; }

.easy-testimonials-submission-form textarea { height: 243px; padding: 17px 19px; }

.easy-testimonials-submission-form .g-recaptcha > div > div { margin: 0 auto; }

.easy-testimonials-submission-form input[type="submit"] { 
    display: inline-block;
    background-color: #ff0000;
    border: 0;
    border-radius: 25px;
    min-width: 180px;
    padding: 13px 30px 15px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    cursor:pointer;
    font-family: 'ProximaNovaBold', sans-serif;
    text-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; 
}

.easy-testimonials-submission-form label { font-size: 20px; color: #4d4d4d; line-height: 1.9; }

.easy-testimonials-submission-form input[type="submit"]:hover { background-color: #333; color: #fff; }

.easy_t_description { margin-top: 7px; font-size: 16px; font-style: italic;  }

.easy_t_field_wrap_error { border: 0!important; }

.easy_t_field_wrap_error input[type="text"],
.easy_t_field_wrap_error textarea,
.easy-testimonials-submission-form select { border-color: #ff0000!important; }

.easy_t_error { font-size: 18px; font-style: italic; }

.easy_t_field_wrap_error .easy_t_error { margin-bottom: 0!important; }

.easy-t-slideshow-wrap { margin: 50px auto; }

@media (max-height: 1040px) {
    .features-menu .menu-item { padding: 20px; font-size: 18px; }
    .features-menu .menu-item br { display: none; }
    .features-menu .menu-item strong { font-size: 28px; margin-bottom: 20px; }
    .features-menu .menu-item em { margin-bottom: 20px; }
    .icon-holder,
    .features-menu .menu-item-small .icon-holder { margin-bottom: 20px; }
}

@media (max-width: 1550px) {
    .address { margin-right: -20px; }
    .tooltip { width: 225px; font-size: 15px; padding: 20px 10px; }
    .tooltip h3 { font-size: 22px; }
    .tooltip h4 { font-size: 20px; }
    .tooltip h5 { font-size: 18px; }
}

@media (max-width: 1400px) {
    .shell { width: 100%; padding: 0 30px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }

    .section-head .shell:after { right: 30px; }

    .phone { font-size: 20px; }
    .contact-info { font-size: 18px; }

    .address { padding-left: 15px; margin-left: 15px; }
    .address .tooltip-button { padding-top: 7px; }

    .sidebar { width: 30%; }

    .features-menu .menu-item { padding: 20px; font-size: 18px; }
    .features-menu .menu-item br { display: none; }
    .features-menu .menu-item strong { font-size: 28px; margin-bottom: 20px; }
    .features-menu .menu-item em { margin-bottom: 20px; }
    .icon-holder,
    .features-menu .menu-item-small .icon-holder { margin-bottom: 20px; }
}

@media (max-width: 1024px) {
    body { font-size: 15px; }
    h1 { font-size: 36px; }
    h2 { font-size: 32px; }
    h3 { font-size: 28px; }
    h4 { font-size: 24px; }
    h5 { font-size: 20px; }

    .shell { padding: 0 20px; }

    .button { padding: 10px 20px; font-size: 16px; }

    .page-template-templatestemplate-landing-php { font-size: 26px; }

    .header { padding: 20px 60px 20px 0; height: 80px; }

    .logo { margin-top: 0; width: 230px; }
    .logo a { height: 39px; }

    .utilities { margin-top: 0; }

    .nav-btn { position: absolute; top: 20px; right: 10px; width: 45px; height: ; font-size: 0; line-height: 0; }
    .nav-btn i { width: 45px; height: 40px; }

    .address { padding-right: 0; padding-top: 2px; margin-right: 0; }
    .address .tooltip-button { background: transparent; padding: 0; min-height: 1px; }
    .tooltip:before { left: auto; right: 25px; margin-left: 0; }
    .tooltip { left: auto; right: 0;
        -webkit-transform: translate(0, 50px);
                transform: translate(0, 50px);
    }
    .tooltip.open {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }

    .phone { margin-bottom: 0; }

    .menu { height: calc(100% - 80px); }
    .features-menu .menu-item { font-size: 16px; }
    .features-menu .menu-item strong { font-size: 26px; }
    .features-menu .menu-item small { opacity: 1; }

    .banner { height: 350px; margin-bottom: 30px; }
    .banner h1 { margin-bottom: 20px; }
    .banner p { margin-bottom: 15px; }
    .banner-text { font-size: 20px; padding-top: 20px; }
    .banner-text small { font-size: 13px; }
    .banner-text-inner { max-width: 70%; }

    .cta-item { font-size: 24px; padding: 20px; margin-bottom: 30px; }
    .cta-item small { font-size: 14px; }
    .cta-button { font-size: 14px; }

    .section-head h3 { padding: 25px 40px 25px 0; }
    .section-head .shell:after { right: 20px; }

    .logos-section { padding: 30px 0 20px; }
    .logos-section p { margin-bottom: 15px; }
    .logos { margin: 0; }
    .logos a { height: 20px; margin: 0 10px 20px; }
    .clients-slider .slide-logo a { height: 67px; }
    .logos img { max-height: 100%; height: auto; }

    .contact-section { padding: 60px 0; font-size: 18px; }
    .contact-section p { margin-bottom: 10px; }
    .contact-section h3 { font-size: 24px; }

    .footer { padding: 30px 0 20px; }
    .footer .button { padding-left: 20px; padding-right: 20px; }
    .footer-cols { margin-bottom: 10px; }
    .footer-nav { font-size: 14px; line-height: 1.3; margin-bottom: 30px; }
    .footer-nav li { margin-bottom: 10px; }

    .twitter-feed { font-size: 18px; }

    .faq .accordion-section { padding: 10px; }
    .faq .accordion-section h6 { line-height: 1.3; font-size: 16px; }

    .grid { margin-bottom: 30px; }
    .grid-content { padding: 60px 0; }
    .grid-text { width: 50%; font-size: 15px; }
    .grid-slider { width: 45%; }

    .tags { margin: 30px 0; }

    .widget_testimonials { padding: 10px; }

    .map { margin-bottom: 30px; }
    .map-canvas { height: 300px; }

    .main { padding-bottom: 50px; }

    .grid-item:hover img,
    .grid-item:hover .grid-item-text-container {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
}

@media (max-width: 979px) {
    .menu { height: auto; min-height: calc(100% - 80px); }
    .menu-row { display: block; }
    .features-menu .menu-item:first-child { width: 100%; }
    .features-menu .menu-item { padding: 30px 20px 25px; }
    .features-menu .menu-item,
    .menu-row-two .features-menu .menu-item { display: block; width: 100%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    .features-menu .menu-item-inner { height: auto !important; }

    .menu-row-three .features-menu .menu-item,
    .menu-row-three .features-menu .menu-item:first-child { width: 100%; }

    .menu-large { height: calc(100% - 80px); }
    .menu-large .menu-row { height: 100%; }
    .menu-large .features-menu .menu-item { display: table; height: 50%; }
    .menu-large .features-menu .menu-item-inner { display: table-cell; vertical-align: middle; }

    .footer-col:nth-child(2) { width: 26%; }
    .footer-col:nth-child(3) { width: 44%; }

    .easy-testimonials-submission-form { width: 60%; }
    .easy-t-slideshow-wrap { width: 80%!important; }
    .easy_t_single_testimonial { width: 100%!important; }

    .cycle-slide { width: 100%; }
}

@media (max-width: 767px) {
    h1 { font-size: 24px; }
    h2 { font-size: 22px; }
    h3 { font-size: 20px; }
    h4 { font-size: 18px; }
    h5 { font-size: 16px; }
    h6 { font-size: 15px; }

    .shell { padding: 0 15px; }

    .grid-item { width: 50%; }

    .header { padding: 10px 0 10px 0; height: 60px; }

    .nav-btn { top: 10px; }
    .logo { width: 35px; }

    .utilities { float: none; }
    .address { display: none; }
    .contact-info { float: none; text-align: center; padding: 0 50px; position: relative; top: -1px; }
    .phone { margin-bottom: 4px; }

    .tooltip { left: 50%; right: auto;
        -webkit-transform: translate(-50%, 50px);
                transform: translate(-50%, 50px);
    }
    .tooltip.open {
        -webkit-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
    }
    .tooltip:before { left: 50%; right: auto; margin-left: -15px; }

    .menu { height: auto; min-height: calc(100% - 60px); }
    .features-menu .menu-item { font-size: 14px; }
    .features-menu .menu-item strong { font-size: 18px; }

    .menu-large { height: auto; }
    .menu-large .menu-row { height: auto; }
    .menu-large .features-menu .menu-item { display: block; height: auto; }
    .menu-large .features-menu .menu-item-inner { display: block; }

    .banner { height: 250px; margin-bottom: 15px; }
    .banner h1 { margin-bottom: 10px; }
    .banner p { margin-bottom: 7px; }
    .banner-text { font-size: 16px; line-height: 1.3; }
    .banner-text small { font-size: 11px; }
    .banner-text-inner { max-width: none; }

    .cta-no-mobile { display: none; }
    .cta-item { float: none; display: block; width: auto; height: auto !important; margin-bottom: 15px; }

    .section-head h3 { padding: 15px 25px 15px 0; font-size: 18px; }
    .section-head .shell:after { right: 15px; }

    .content { float: none; width: auto; }
    .sidebar { float: none; width: auto; margin-top: 40px; }

    .post { margin-bottom: 20px; }
    
    .post h1,
    .post h2,
    .post h3,
    .post h4,
    .post h5,
    .post h6 { margin-bottom: 10px; }
    
    .post p,
    .post ul,
    .post ol { margin-bottom: 20px; }
    
    .post .alignleft,
    .post .alignright { float: none; margin: 0 0 20px; }

    .section-body .main { padding: 30px 0; }

    .post + .buttons { margin-top: 20px; }
    .buttons a { display: block; margin-top: 20px; }
    .buttons .button { display: inline-block; margin-top: 0; }

    .contact-section { font-size: 16px; padding: 40px 0; }

    .logos-section { display: none; }

    .footer-col { float: none; }
    .footer-col:nth-child(1) { width: auto; }
    .footer-col:nth-child(2) { width: auto; }
    .footer-col:nth-child(3) { width: auto; }
    .footer .button-help { display: none; }

    .copyright { margin-bottom: 20px; }

    .map { margin-bottom: 15px; }
    .map-canvas { height: 200px; }

    .form p { margin-bottom: 20px; }

    .gfield { float: none; width: auto; margin-bottom: 10px; }

    .widget + .widget { margin-top: 30px; }

    .widget_contact,
    .widget_hours { font-size: 16px; }
    .widget_contact .widgettitle,
    .widget_hours .widgettitle { font-size: 20px; }

    .widget_housecall { display: none; }
    .widget_housecall p { padding: 0; }
    .widget_housecall .icon { display: none; }

    .widget_testimonials { padding: 23px 26px; }

    .main { padding-bottom: 30px; }

    .col { float: none; width: auto; }
    .col + .col { margin-top: 30px; }
    .faq .col + .col { margin-top: -1px; }

    .page-template-templatestemplate-landing-php { font-size: 16px; }
    .landing-inner { padding: 20px 0; }

    .landing-head { max-width: 220px; padding-bottom: 20px; margin-bottom: 32px; }

    .landing-body { padding-top: 30px; }
    .landing-body p { margin-bottom: 30px; }
    .landing-body ul { margin-bottom: 15px; }
    .landing-body li { display: block; }
    .landing-body li + li:before { display: none; }

    .landing-head .logo { width: 180px; }
    .landing-head .logo a { height: 30px; }

    .grid-text { float: none; width: auto; }
    .grid-content { padding: 30px 0; }

    .grid-slider { float: none; width: auto; margin-top: 30px; }

    .tag { display: block; }
    .tag + .tag { margin-top: 5px; }
    .tag-icon-holder { display: inline-block; width: 40px; text-align: center; margin-right: 10px; }

    .easy-testimonials-submission-form { width: 90%; }
}

@media (max-width: 479px) {
    .contact-info { font-size: 16px; top: 0px; }

    
}

.main-content { margin-top: 50px; margin-bottom: 50px; }
.navigation .shell { overflow: hidden; }

.error-404 { text-align: center; padding: 200px 0; }
.error-404 h2 { margin-bottom: 50px; }


.validation_error + .gform_body .gfield_contains_required input,
.validation_error + .gform_body .gfield_contains_required textarea { color: #8cc64b; border-color: #8cc64b; }

.validation_error + .gform_body .gfield_contains_required:after {  content: 'validated'; color: #8cc64b; position: absolute; right: 15px; top: 12px; font-style: italic; padding-right: 2px; }

.validation_error { color: #ff0000; }
.gfield_error input,
.gfield_error textarea { border-color: #ff0000!important; color: #ff0000!important; }

.gfield_error:after { content: 'error'!important; color: #ff0000!important; position: absolute; right: 15px; top: 12px; font-style: italic; }

.gfield_error ::-webkit-input-placeholder { color: #ff0000; }
.gfield_error :-moz-placeholder { color: #ff0000; }
.gfield_error ::-moz-placeholder { color: #ff0000; }
.gfield_error :-ms-input-placeholder { color: #ff0000; }

.validation_message { display: none; }

.gfield-captcha img,
.gfield-captcha .gfield_captcha_input_container,
.gfield-captcha label { display: inline-block; }

.gfield-captcha.gfield_error:after { right: 50px; top: 40px; }