/*
Theme Name: Redgruppen
Theme URI: http://redgruppen.no
Description: Redgruppen
Author: Plastikk
Author URI: http://plastikk.no
Version: May2013;
*/




/* reset */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:top;background:transparent}

/* clearfix */
.clearfix:after {content: ""; display: table; clear: both;}

/* apply a natural box layout model to all elements : http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
*, *:before, *:after {-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}

/* firefox: remove dotted lines on active links */
:focus {outline:none;}
::-moz-focus-inner {border:0;}


/************************ 
	DAMIR LAGT INN
************************/

.gform_description {
    font-style: italic;
    color: #4e4b47;
    border-bottom: 3px solid #e21f23;
    margin-bottom: 0!important;
    padding-bottom: 0.5rem;
    font-size: 115%;
}	

.gfield_label { display:none!important; }
.gfield { margin-top: 0!important; }

.gform_wrapper .textarea { padding: 5px 4px; }

.gform_wrapper input[type="text"]::-webkit-input-placeholder, .gform_wrapper .textarea::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #999;
  font-size: 85%;
}
.gform_wrapper input[type="text"]::-moz-placeholder, .gform_wrapper .textarea::-moz-placeholder { /* Firefox 19+ */
  color: #999;
  font-size: 85%;
}
.gform_wrapper input[type="text"]:-ms-input-placeholder, .gform_wrapper .textarea:-ms-input-placeholder { /* IE 10+ */
  color: #999;
  font-size: 85%;
}
.gform_wrapper input[type="text"]:-moz-placeholder, .gform_wrapper .textarea:-moz-placeholder { /* Firefox 18- */
  color: #999;
  font-size: 85%;
}

.gform_wrapper .gform_footer { 
    margin-top: 0!important;
}

.gform_wrapper .gform_footer input[type=submit] {
    float: right;
    background: #e21f23;
    padding: 10px 22px;
    color: #fff;
    font-weight: 600;
    line-height: 1;
    box-shadow: none;
    cursor: pointer;
    border: 3px solid #e21f23;
}

.gform_wrapper .gform_footer input[type=submit]:hover, .gform_wrapper .gform_footer input[type=submit]:focus{
    background: none;
    color: #e21f23;
}


/************************ 
	GENERAL STYLES
************************/

/* responsive images */
img {max-width: 100%; height: auto;}
img.scale {max-width: auto; width: 100%;}


body, html {
    height: 100%;
    width: 100%;
}

body {
	min-width: 320px;
	
	font-family: 'Open Sans', times, serif;
    color: #4e4b47;
    /* background: rgb(239, 239, 239); */
}

a {color: inherit; text-decoration: none;}

p {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 18px;
}



h1 {
    font-size: 38px;
    font-family: 'Roboto', arial, sans-serif;
    font-weight: 700;
    margin-bottom: 22px;
    text-transform: uppercase;
}

h2 {
    font-size: 24px;
    font-family: 'Roboto', arial, sans-serif;
    margin: 30px 0 20px;
    text-transform: uppercase;
}


h3 {
    font-size: 20px;
    font-family: 'Roboto', arial, sans-serif;
    margin: 30px 0 20px;
    text-transform: uppercase;
}

h4 {
    margin: 30px 0 20px;
}

/* NAV */

/*
nav {
    height: 80px;
    width: 100%;
    background: white;
    color: black;
    line-height: 80px;
    position: relative;
    font-size: 13px;
    text-transform: uppercase;
    font-family: 'Roboto', arial, sans-serif;
    font-weight: 400;
    letter-spacing: 0.5px;
    text-align: center;
}
*/

nav {
    height: 130px;
    width: 100%;
    color: black;
    line-height: 95px;
    position: relative;
    font-size: 14px;
    text-transform: uppercase;
    font-family: 'Roboto', arial, sans-serif;
    font-weight: 400;
    letter-spacing: 0.5px;
    text-align: center;
    border-bottom: 1px solid lightgray;
    padding-top: 30px;
    background-color: white;
}


.logo {
    position: absolute;
    top: 27px;
    left: 40px;
    height: 70px;
    width: 180px;
}

nav .logo-right {
    position: absolute;
    top: 18px;
    right: 30px;
    width: 6rem;
    height: auto;
}

/* TODO: MEDIA QUERY <= 1040 */

nav ul li {
    display: inline-block;
    margin-right: 1rem;
}

nav ul li+li:before {
  /* content: '\00a0 / \00a0'; */
  content: ' ';
  opacity: 0.5;
}


nav ul li.current-menu-item > a {
    border-bottom: 1px solid #e21f23;
    /* border-top: 13px solid #e21f23; */
    padding: 9px 0 7px;
}

nav ul li a:hover {
    border-bottom: 1px solid #e21f23;
    padding: 0 0 7px;
}

nav ul li a {
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
}

nav .smallnav {display: none; font-size: 20px; position: absolute; top: 10px; right: 30px; cursor: pointer;}

/*nav .wrap {max-width: 900px; margin: 0 auto;}*/

nav .wrap { margin: 0 auto;}

/* submenu */

nav li.menu-item-has-children {position: relative;}
nav li.menu-item-has-children:hover .sub-menu {display: block;}

nav .sub-menu {
    position: absolute;
    left: -16px;
    top: 80px;
    z-index: 1;
    background: #e21f23;
    width: 240px;
    display: none;
    color: white;
    padding: 20px 0px 20px 15px;
}

nav .sub-menu li {
    display: block;
    line-height: 2.5;
}

nav .sub-menu li+li:before {
  content: none;
}

nav .sub-menu li a:hover {
    border-bottom: 1px solid white;
    padding: 0;
}



/* single + page */

.topimg {max-width: 1200px; display: block; margin: 0 auto;}

#hero {
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    height: auto;
    max-width: 1200px;
    height: 612px;
    margin: 0 auto;
    transition: padding-top .3s;
}

@media only screen and (max-width: 1200px) {
    #hero {
        padding-top: 51%;
        height: auto;
    }
}

@media only screen and (max-width: 600px) {
    #hero {
        padding-top: 55%;
        height: auto;
    }
}

@media only screen and (max-width: 480px) {
    #hero {
        padding-top: 60%;
        height: auto;
    }
}

.content {
    max-width: 900px;
    background: white;
    margin: -40px auto 0;
    position: relative;
    padding: 0 50px 60px;
}

.content.no-head-img {margin-top: 30px;}

.content .intro {
    font-size: 22px;
    line-height: 1.5;
    padding-bottom: 45px;
}

.social {
    width: 42px;
    position: fixed;
    right: 0;
    top: 20%;
    background: #082a36;
    color: white;
    text-align: center;
    font-size: 13px;
    font-style: italic;
}

.social div {padding: 3px 0;}

.author {
    margin: 0 0 30px;
    position: relative;
}

.author .portrait,
.attachment-portrait {
    border-radius: 50%;
    display: inline-block;
    vertical-align: middle;
    margin-right: 18px;
}

.author .info {
    display: inline-block;
    vertical-align: middle;
    font-size: 15px;
    margin-left: 30px;
}

.author .info .name {color: #e21f23; font-size: 19px;}
.author .info .company {font-weight: bold;}
.mail {font-size: 15px; position: absolute; right:0; top:24px; line-height: 29px;}
.footer-mail {line-height: 29px;}

.mail img {
  margin-right: 8px;
  -webkit-transition: all 500ms cubic-bezier(0.3, 0, 0.29, 1);
  transition: all 500ms cubic-bezier(0.3, 0, 0.29, 1);
}

.mail:hover img {
  -webkit-transform: rotate(360deg);
  -ms-transform: rotate(360deg);
  transform: rotate(360deg);
}
.mail:hover {text-decoration: underline;}

.bio { 
    font-size: 15px; 
    color: #4e4b47; 
    margin-top: 80px; 
}

.bio img {width: auto !important;}

.bio > span {
    display: block;
    padding-bottom: 6px;
    border-bottom: 3px solid #e21f23;
    margin-bottom: 10px;
    font-style: italic;
}

.bio .author-bottom {font-size: 16px; font-weight: bold; margin-bottom: 14px; display: inline-block; vertical-align: bottom;}
.bio .author-bottom > span {font-size: 23px; color: #e21f23; display: inline-block; vertical-align: bottom;}
.bio .mail {position: relative;}
.bio .biotext {line-height: 1.5;}

.related {font-size: 13px; line-height: 1.3; text-align: left;}
.related .title {font: 700 16px 'Roboto', arial, sans-serif; text-transform: uppercase; margin: 4px 0;}
.related a.link {color: #e21f23; display: block; margin-top: 8px; margin-bottom: 30px; text-decoration: underline;}
.yarpp-related {padding-top: 6px;}




/* front page + archive */
.home #featured-image {
    height: 40rem;
    position: relative;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 3rem;
}

    .home #featured-image .inner-content {
        max-width: 1040px; /* Check! */
        padding: 0;
        margin: 0 auto;
        position: relative;
    }

        .home #featured-image .payoff-container {
            height: 40rem;
            display: -ms-flexbox;
            display: flex;
            -ms-flex-pack: center;
            justify-content: center;
            -ms-flex-align: center;
            align-items: center;
            -ms-flex-direction: column;
            flex-direction: column;
        }

            .home #featured-image .payoff {
                
                width: 100%;
                display: -ms-flexbox;
                display: flex;
                -ms-flex-align: end;
                align-items: flex-end;
                -ms-flex-pack: center;
                justify-content: center;
                padding: 2rem;
            }

                .home #featured-image .payoff p {
                    margin-top: 1.38889rem;
                    color: #fff;
                    text-align: center;
                    font-weight: 700;
                    font-size: 2.7rem;
                    line-height: 1.4;
                    font-family: 'Roboto', arial, sans-serif;
                    text-transform: uppercase;
                }

            .home #featured-image .payoff-button {
                width: 100%;
                display: -ms-flexbox;
                display: flex;
                -ms-flex-align: center;
                align-items: center;
                -ms-flex-pack: center;
                justify-content: center;

                
            }

            .home #featured-image .payoff-button a {
                width: 70px;
                height: 70px;
                border: 2px solid white;
                transform: rotate(45deg);
                display: flex;
                -ms-flex-align: center;
                align-items: center;
                -ms-flex-pack: center;
                justify-content: center;
            }

            .home #featured-image .payoff-button a span {
                transform: rotate(-45deg);
                text-transform: uppercase;
                font-family: 'Roboto', arial, sans-serif; 
                font-weight: 400;
                font-size: 14px;
                color: #fff;
            }

                



.container {
    font-size: 0; 
    text-align: center;
}

.post {
    display: inline-block;
    position: relative;   
    text-align: left;
}

.post > a {overflow: hidden; display: block;}
.post a img {  
    -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.post a img:hover {transform: scale(1.07); opacity: 0.9;}

.post.header {
    display: none;
}
.post.header img:hover {transform: scale(1.03); opacity: 0.95;}

.col2 {width: 50%; padding: 15px}

.col3 {width: 33.33333%; padding: 15px; position: relative;}

.header {width: 100%; padding-bottom: 10px;}

.post .box {
    background: white;
    padding: 20px;
    width: 100%;
}

.post.header .box {
    position: absolute;
    width: 580px;
    left: 50%;
    margin-left: -290px;
    bottom: 20%;
}

.post.col2 .box {
    width: 460px;
    bottom: 10px;
    left: 50%;
    position: absolute;
    margin-left: -230px;
}

.post .box h2 {
    margin: 0;
    font-size: 22px;
    font-family: 'Roboto', arial, sans-serif;
    font-weight: 700;
    padding-bottom: 10px;
    border-bottom: 1px solid #d7d5d1;
}

.post .box p {
    font-size: 14px; /* 16px */
    margin-top: 7px;
    line-height: 1.7;
}

.post .box .tagbar {
    
    margin-bottom: 0;
    height: 30px;
    line-height: 30px;
    text-align: left;
    font-size: 12px;
    overflow: hidden;
}



.post.col3 .box {
    padding: 20px 0 20px 0;
    
}

.post.col3 {
    margin-bottom: 20px;
}

.post.col3 .box p {
    margin-bottom: 20px;
}

.post.col3 .box .tagbar {
    position: absolute;
    width: 100%;
    bottom: 10px;
    padding-left: 0px;
    padding-right: 30px;
    background-color: transparent;
}

.post.col3 .box .tagbar .background-filler {
    /* background-color: #e21f23; */
    background-color: #333333;
    height: 30px;
    margin-bottom: -30px;
}




.column .left {
    float: left;
    width: 75%;
    padding-right: 50px;
}


.column .right {
    float: right;
    width: 25%;
}

.metaline {
    border-bottom: 1px solid #d7d5d1; 
    font-family: arial, sans-serif;
    font-size: 13px;
    padding-bottom: 8px;
    margin-bottom: 8px;   
}


.archive h1,
.page-template-template-pagelist-selskaper-php h1 {
    font-size: 40px;
    padding: 15px;
    background: white;
}



/* Company pages */

.align-left {text-align: left;}
.pagelistimage {position: relative;}
.pagelistimage a {display: block; overflow: hidden;}

/*.logo-overlay {position: absolute; bottom: -8px; left: 14px;} */

.logo-overlay {
    position: absolute;
    bottom: 0px;
    /* left: 14px; */
    width: 100%;
    background: rgba(255, 255, 255, 0.7);
    padding: 10px 10px 10px 17px;
    height: 70px;
}

.logo-overlay  img {
    height: 50px;
    width: auto;
}

/*.logo-overlay img {padding: 0;}*/

/* create css grid 
.home .post:nth-of-type(1) .box {}
.home .post:nth-of-type(1) .box h2 {font-size: 50px;}
.home .post:nth-of-type(2) {width: 50%; height: 700px;}
.home .post:nth-of-type(3) {width: 50%; height: 350px;}
.home .post:nth-of-type(4) {width: 50%; height: 350px;}
.home .post:nth-of-type(5) {width: 33.3333%; height: 350px;}
.home .post:nth-of-type(6) {width: 33.3333%; height: 350px;}
.home .post:nth-of-type(7) {width: 33.3333%; height: 350px;}

.home .post:nth-of-type(5) .box {width: auto; right: 50px;}
.home .post:nth-of-type(6) .box {width: auto; right: 50px;}
.home .post:nth-of-type(7) .box {width: auto; right: 50px;}


.overlay {
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.35);
}

.post:hover .overlay {background: none;}
*/

/* multiple */

.tagbar {
    height: 40px;
    line-height: 40px;
    /* background: #e21f23; */
    background: #333333;
    text-align: center;
    color: white;
    margin-bottom: 40px;
    font-family: 'Roboto', arial, sans-serif;
    font-weight: 400;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.tagbar.top {
    background: #e21f23;
}

.tagbar .tags {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
    padding: 0 10px;
}

.tagbar a:hover {text-decoration: underline;}

.footer {text-align: center; margin: 30px 0 0; font-size: 12px; text-transform: uppercase; font-family: 'Roboto', arial, sans-serif;}

.retailgroup-imgs {
    height: 35px !important;
}
.footer .logos img {
    display: inline-block;
    margin: 20px;
    vertical-align: middle;
    height: 45px;
}

/*.footer .logos img:hover {opacity: 0.6;}*/
/*.footer .logos {padding: 20px 0;}*/
.footer .logos .horizontal-line {
    height: 1px;
    width: 100%;
    border-bottom: 1px solid lightgray;
    margin: 20px 0px;
    
}

.footer .logos {
    padding: 50px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    max-width: 900px;
    margin: 0 auto;
}


@media only screen and (max-width: 500px) { 
    .footer .logos {
        max-width: 320px;
        justify-content: flex-start;
    }
}


.footer .blue {
    background: #28282e;
    height: 150px;
    position: relative;
    color: white;
    text-transform: uppercase;
    font-size: 12px;
    padding: 30px;
    display: flex;
    align-items: center;
    
    justify-content: space-between;
}
.footer .copyright {
    position: absolute;
    right: 30px;
    top: 24px;
}



.footer .mail {

    font-size: 10px;
}


.footer .mail img {margin-left: 6px;}


.footer ul li {
    display: inline-block;
}

.footer ul li+li:before {
  content: '\00a0 \00a0 / \00a0';
  opacity: 0.5;
}


.footer-logo {
    
    top: 15px;
    left: 30px;
    height: 40px;
}

.footer ul li a:hover {text-decoration: underline;}

.wrap {
    margin: 0 auto;
    max-width: 1060px;
}

.alignright {float: right; margin: 0 0 5px 20px;}
.alignleft {float: left; margin: 0 20px 5px 0;}
.aligncenter {display: block; margin: 20px auto;}
.content ul {margin-left: 16px; margin-bottom: 16px;}
.content ol {margin-left: 25px; margin-bottom: 16px;}
.content li {margin-bottom: 4px; line-height: 1.6;}
blockquote {margin: 30px 0 30px 0px; border-left: 6px solid #e21f23; padding-left: 30px; font-size: 36px; display: block; line-height: 1.2; font-style: italic;}
blockquote p {line-height: 1.2; text-align: left !important;}
p a,
.left li a {text-decoration: underline; color: #e21f23;  }

.navigation p a { padding: 0 5px; font-size: 16px; }

.wp-caption-text {
    display: block;
    font-size: 14px;
    font-family: 'Roboto', arial, sans-serif;
    text-align: center !important;
    margin: 4px 0 10px !important;
}

.wp-caption {max-width: 100% !important;}

iframe {max-width: 100% !important;}

.logomarginbottom {margin-bottom: 10px;}




/************************ 
	MEDIA QUERIES
************************/



@media only screen and (max-width : 1100px) { 
    .post.header .box {position: static; margin-left: 0; width: auto;}
}



@media only screen and (min-width : 1041px) { 
    nav .menu-topmenu-container {display: block !important; margin-top: -10px !important;}
}

@media only screen and (max-width : 1040px) { 
    nav {height: auto; margin-top: 0px; min-height: 130px; }
    nav .menu-topmenu-container {display: none;}
    nav .mail {display: none;}
    nav .smallnav {display: block;}
    nav ul li {display: block; margin: 0; line-height: 45px; font-size: 16px;}
    nav ul li+li:before {content: none;} 
    nav .wrap {padding-top: 90px;}
    nav ul li a {display: block; font-size: 16px;}
    nav ul li a:hover {border:0; padding:0; background: #e21f23; color: white;}
    nav .sub-menu {position: static; width: auto;}
    nav .sub-menu li a {font-size: 12px;}
    nav ul li.current-menu-item a {
        border: 0;
        padding: 0;
        background: #e21f23;
        color: white;
    }
    nav .logo-right {
        left: 48%;
        /* margin-left: -2rem; */
        width: 4.5rem;
        top: 21px;

        /*
        position: absolute;
        top: 18px;
        right: 30px;
        width: 6rem;
        height: auto;
        */
        
    }
}

@media only screen and (max-width : 900px) { 
	.col3 {width: 50%;}
    .post.col2 .box {bottom:0; left:0; margin-left:0; position:static; width:auto;}
    .post .box h2 {font-size: 24px;}
    .content {padding-left: 20px; padding-right: 20px;}
    .social {position: static; width: 100%; background: none; margin: 3px 0 0; text-align: right;}
    .social > div {display: none;}
    .tagbar {margin-bottom: 0;}
    .archive h1 {font-size: 30px;}

}

@media only screen and (max-width : 800px) { 
    .crop {overflow: hidden; height: 400px;}
    .test {width: 100%; height: 350px; overflow: hidden;}
    .test img {position: absolute; left: 0; right: 0;}
}

@media only screen and (max-width : 700px) { 
    .column .left {float: none; width: auto; padding-right: 0;}
    .column .right {float: none; width: auto; font-size: 0;}
    .column .right .related-col2 {display: inline-block; width: 50%; padding: 10px; font-size: 13px;}
    .metaline {text-align: center;}
    .bio {background: #f5f5f5; padding:20px 20px 40px; margin: 0 0 40px;}
    .content {padding-bottom: 0;}
    .single .left img {width: 100%;}
    .footer .logo {top: 35px;}
    .footer .copyright {top: 56px;}

}

@media only screen and (max-width : 600px) { 
    .author {text-align: center;}
    .author .mail {position: static; line-height: auto; text-decoration: underline;}
    .author .mail img {display: none;}
    .social {text-align: center; margin-bottom: 20px; padding-top:50px;}
    .single .tagbar {position: absolute; width: 100%; left:0; top:0; z-index: 1;}
    .content .intro {text-align: center;}
    h1 {text-align: center;}
    .social {display: none;}
    .author {padding-top: 60px;}    
    nav .logo {left:20px;}
    nav .smallnav {right:20px;}
}

@media only screen and (max-width : 500px) { 
    .col2,
    .col3 {width: 100%; padding: 0 0 20px;}
    .post .box h2 {font-size: 20px;}
    .post .box p {font-size: 15px;}
    .post .box .tagbar {font-size: 10px; height: 20px; line-height: 20px;}
    .tagbar {font-size: 10px; height: 20px; line-height: 20px;}
    .author {padding-top: 40px;}    
    .content .intro {font-size: 26px;}
    p {font-size: 16px;}
}

@media only screen and (max-width : 440px) { 
    nav .logo { width: 7rem; /*top: 8px*/ }
    nav .logo-right { width: 3rem; top: 23px }
}

@media only screen and (max-width : 400px) { 
    .column .right .related-col2 {float: none; width: 100%; padding: 0;} 
    .content .intro {font-size: 20px;}   
    /*.footer .wrap {margin-top: 0; padding-bottom: 18px;}*/
    .footer .logo {position: static;}
    .footer .copyright {position: static; padding-top: 16px;}

    h1 {font-size: 24px;}


}


@media only screen and (max-width : 800px) { 
    .footer .blue {
        padding: 15px;
        flex-direction: column;
        height: 200px;
        justify-content: space-evenly;
    }

}

/************************ 
    CODE SNIPPETS
************************/

/* animate */
.anim {
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
}

.soft-anim {
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}