/*
Theme Name: psr
Theme URI: http://underscores.me/
Author: MR
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: psr
Tags:

This theme, like WordPress, is licensed under the GPL.

psr is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}


/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #fff; /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 0em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

figure {
	margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color: #404040;
	font-family: 'Lato', sans-serif;
	font-size: 16px;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

h1 {
    font-weight: 900;
    font-size: 36px;
}

h2 {
    font-size: 32px;
    font-weight: 100;
    margin-bottom: 16px;
}

.entry-content h2:first-child {
    margin-top: 0;
}

    h2 span {
        display: block;
        font-size: 14px;
        font-weight: 400;
        margin-top: 8px;
    }

    .section--front h2 {
        margin-bottom: 32px;
    }

h3 {
    font-size: 20px;
    font-weight: 900;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

a {
	color: #06b49b;
    color: #2c9ddf;
}

a:visited {
}

a:hover,
a:focus,
a:active {
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

.btn-primary {
    background: #06b49b;
    color: #ffffff;
}
 
    .btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary {
        background: #06b49b;
    }

    .btn-primary:active, .btn-primary.active {
        background: #06b49b;
        box-shadow: none;
    }

.btn-primary {
    background: #06b49b;
    color: #ffffff;
    transition: all .3s;
    border: 0;
    text-transform: uppercase;
    height: auto;
}
 
    .btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary {
        background: #039b85;
        color: #ffffff;
    }


/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
	clear: both;
	display: block;
	width: 100%;
    color: #ffffff;
    background: #015d50;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation li {
	float: left;
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
    color: #ffffff;
    padding: 8px 16px;
    font-weight: 100;
    transition: all .3s;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 1.5em;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul ul li {

}

.main-navigation li:hover > a,
.main-navigation li.focus > a {
    background: rgba(0,0,0,.1);
}

.main-navigation ul ul :hover > a,
.main-navigation ul ul .focus > a {
}

.main-navigation ul ul a:hover,
.main-navigation ul ul a.focus {
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current-menu-ancestor > a {
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: block;
	}
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}


/*--------------------------------------------------------------
## Layout
--------------------------------------------------------------*/
.top {
    padding: 16px 0;
}

.top__social {
    display: inline-block;
    vertical-align: middle;
}

.top__social img {
    margin-left: 4px;
}

.top__phone {
    display: inline-block;
    color: #888888;
    font-size: 11px;
    text-transform: uppercase;
    line-height: 1.2;
    background: url(img/i_phone.png) no-repeat 0 0;
    padding: 4px 0;
    padding-left: 54px;
    text-align: left;
    margin: 0px 0 0 32px;
    vertical-align: middle;
}

.top__cloud {
    display: inline-block;
    margin: 0 0 0 32px;
    vertical-align: middle;
}

.top__phone a {
    display: block;
    font-size: 24px;
    color: #333333;
    font-weight: 700;
    text-decoration: none;
}

.hero {
    cursor: pointer;
    display: block;
    position: relative;
    text-align: center;
    min-height: 450px;
    background: url(img/bg_hero.jpg) no-repeat center center;
    background-size: cover;
    color: #ffffff;
}

.hero:hover {
    color: #ffffff;
    text-decoration: none;
}

.hero__roof {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: url(img/bg_roof.png) no-repeat center bottom;
    z-index: 100;
}

.hero__content {
    position: relative;
    z-index: 800;
    padding-top: 96px;    
}

.hero__title {
    margin: 0;
    font-size: 46px;
    font-weight: 900;
}

.hero__subtitle {
    font-size: 18px;
    margin-bottom: 16px;
}


.section--front {
    padding: 64px 0;
}

/* service */
.section--services {
    text-align: center;
    padding-top: 0;
}

    .service__title {
        font-size: 18px;
        font-weight: 900;
        margin-bottom: 8px;
    }

    .service__description {
        font-size: 14px;
        margin-bottom: 8px;
    }

.service__icon {
    transition: all .3s;
    opacity: .3;
    transform: scale(.8,.8);
}

.service-front:hover .service__icon {
    transform: rotateY(180deg) scale(1,1);
    opacity: 1;
}

.services-list {
    display: flex;
    justify-content: space-between;
}

.service__front {
    width: 19%;
}

/* split */

.section--split {
    padding: 0;
    display: flex;
}

.section--split h2 {
    margin: 0 0 16px;
}

.column {
    width: 50%;
    text-align: center;
    color: #ffffff;
    padding: 160px 16px;
    transition: all .3s;
}

.column:hover {
    transform: scale(1.04,1.04);
    border-radius: 10px;
}

.split-left {
    background: url(img/bg_split-left.jpg) no-repeat center center;
    background-size: cover;
}

.split-right {
    background: url(img/bg_split-right.jpg) no-repeat center center;
    background-size: cover;
}


/* roofcloud */

.section--roofcloud {
    text-align: center;
}

/* Front Intro */
.section--frontintro {
	text-align: center;
}

.or {
    color: #999999;
    font-size: 12px; 
    margin-top: 8px;
}



.page .entry-header, .blog .entry-header {
    background: #015d50;
    color: #ffffff;
    padding: 48px 16px 0;
    box-shadow: 0px 0px 6px rgba(0,0,0,.2) inset;
    
background: rgb(1,93,80);
background: -moz-linear-gradient(top,  rgba(1,93,80,1) 0%, rgba(2,115,99,1) 100%);
background: -webkit-linear-gradient(top,  rgba(1,93,80,1) 0%,rgba(2,115,99,1) 100%);
background: linear-gradient(to bottom,  rgba(1,93,80,1) 0%,rgba(2,115,99,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#015d50', endColorstr='#027363',GradientType=0 );

}

.page .entry-header h1, .blog .entry-header h1 {
    margin: 0;
    margin-bottom: -12px;
    font-size: 60px;
    text-shadow: 1px 0px 0px rgba(0,0,0,.3);
}



.newslist__row {
    margin: 48px 0 0px;
}

.news__thumb {
    margin-bottom: 8px;
}

.news__date {
    color: #999999;
    display: none;
}

.news__date2 {
    color: #aaaaaa;
    display: inline-block;
    font-size: 20px;
}

.news__title {
    margin-top: 0;
    font-size: 20px;
    margin-bottom: 8px;
}

.news__excerpt {
    font-size: 14px;    
}


#secondary {
    margin-top: 40px;
}



.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.byline,
.updated:not(.published) {
	display: none;
}

.single .byline,
.group-blog .byline {
	display: inline;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 2em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

.sidebar {
    margin-top: 2em;
}

.widget_subpages ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.widget_subpages ul li {
    margin-bottom: 4px;
}

.widget_subpages ul li a {
    display: block;
    padding: 10px 10px;
    background: rgb(1,93,80);
    color: #ffffff;
    border-radius: 4px;
    transition: all .3s;
}

.widget_subpages ul li a:hover, .widget_subpages ul li.widget_subpages_current_page a {
    text-decoration: none;
    background: rgb(2, 69, 59);
    margin-left: -4px;
    margin-right: -4px;
}

.sidebar-articles {
    padding-top: 24px;
}

.sidebar-articles ul {
    margin-left: -0.5em;
}

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

.prefooter {
    background: #e5e5e5;
    text-align: center;
    padding: 16px;
}

.site-footer {
    background: #013f36;
    color: #ffffff;
    font-size: 14px;
    padding: 64px 0;
}

.info {
    color: #a5b3bb;
    font-size: 12px;
}

.error-404 {
    padding-bottom: 100px;
}

.blog .post {
    margin-bottom: 30px;
    padding-bottom: 40px;
    border-bottom: 1px solid #eeeeee;
}

.blog .post:last-child {
    border-bottom: 0;
}


/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}



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

    .services-list {
        flex-direction: column;
    }
    
    .service__front {
        width: 100%;
        margin-bottom: 32px;
    }
    
    .logo img {
        width: 120px;
    }
    
    .top .text-right {
        text-align: center;
    }
    
    .menu-toggle {
        border: 0;
        background: 0;
        color: #111111;
        font-size: 22px;
        position: absolute;
        top: 24px;
        right: 10px;
        z-index: 1000;
    }
    
    .top__phone, .top__cloud, .top__social {
        margin: 0px 0 10px;
        padding: 0;
    }
    
    .top__phone {
        background: none;
    }
    
    .top__cloud {
        margin-bottom: 0;
    }
    
    .main-navigation.toggled ul {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #015d50;
        z-index: 999;
        padding-top: 50px;
    }
    
    .main-navigation li {
        float: none;
        text-align: center;
    }
    
    .main-navigation li a {
        padding: 10px;
    }

}