@import "/fonts/awesome/css/font-awesome.min.css";
@import url(https://pro.fontawesome.com/releases/v5.5.0/css/all.css);

/* BASE-PF */

body, html {
  	width: 100%;
  	margin: 0px;
  	padding: 0px;
  	font-family: 'Open Sans', sans-serif;
  	color: #000000;
  	box-sizing: border-box;
	font-size: 14px;
	text-decoration: none;
	line-height: 1.4;
	}

.stage {
  	margin-left: auto;
  	margin-right: auto;
  	overflow: hidden;
  	width: 100%;
  	}

.content {
  	max-width: 100%;
  	margin-right: auto;
  	margin-bottom: auto;
  	margin-left: auto;
  	overflow: hidden;
  	padding: 20px;
  	width: 100%;
  	float: left;
  	box-sizing: border-box;
	}
	
a {
	color: #000;
	}	
		
a.title {
  	vertical-align: top;
	}
	
h2, h3 {
    font-family: 'Open Sans', sans-serif;
	letter-spacing: 0;
	margin-bottom: 20px;
	line-height: 1.2;
	text-decoration: none;
	color: #000;
  	margin: 0;
  	padding-bottom: 10px;
  	padding-top: 20px;
	}
	
h3 {
	padding-top: 0px;
	}		

.title {
  	float:left;
	}
	
.title img {
  	margin-top: 2px;
	}	

a.title {
  	font-size: 24px;
  	text-decoration: none;
  	color: black;
  	line-height: 1.2;
  	font-weight: 700;
  	text-transform: uppercase;
	margin-right: 20px;
	}
	
a.slimbutton {
	font-family: 'Open Sans', sans-serif;
    line-height: 1.2;
    font-weight: 500;
    display: inline-block;
    vertical-align: middle;
    text-decoration: none;
    margin: 10px 5px 0px 0px;
    padding: 12px 18px 12px 18px;
    min-width: 50px;
    text-align: center;
    -webkit-appearance: none;
    box-sizing: border-box;
    background: #fff;
    font-size: 14px;
    border-radius: 4px;
    color: #222;
    border: 0px solid #ccccd1;
    background-color: #f7f7f7;
    background-color: #eef1f2;
    background-color: #eaeaea;
    width: auto;
	}
	}	
	
img#pfimg {
	margin-top: 7px;
	}
	
#pfimg {
	margin-top: 7px;
    }	
	
.content .indeximg img {
	width:100%; 
	height: auto;
	}

.indeximg {
  	text-align: center;
	margin-top: -20px;
	}    

.indexbg {
 	text-align:center;
 	width: 100%;
 	height: 100%;
 	position: absolute;
	top: 0px;
 	left: 0px;
 	right: 0px;
 	bottom: 0px;
 	z-index: -50;
 	background-size: cover;
 	background-repeat: no-repeat;
 	background-color: black;
 	background-position: center center;
 	opacity: 1;
	margin-top: 70px;
	} 	

.headers {
	width: 100%; 
	height: auto;
	box-sizing: border-box;
	padding: 20px;
	display: inline-block;
	}
	
.pfstd.pfmodern .headers {
	padding: 20px 2% 20px 2%;
	}	

.topmenu {
	font-weight: 300;
	font-family: "Open Sans",sans-serif;
	font-style: normal;
	font-size: 14px;
	text-transform: uppercase;
	padding-right: 0px;
	float: right;
	position: relative;
	}

.topmenuwrapper {
	float:right;
	}

.topmenu > ul {
	list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    float: right;
    height: 50px;
	}

.topmenu a {
	color: #222222;
	text-decoration: none;
	font-size: 12px;
	}

ul.topmenu {
  	float: none;
  	text-align:right;
  	list-style: none;
  	margin: 0px 0px 0px 0px;
  	padding: 0px;
  	border: none;
  	background-color: none;
  	background: none;
  	width: 100%;
  	overflow: hidden;
  	height: 30px;
	}

.topmenu ul {
	margin: 0px;
	}

.topmenu li {
  	margin: 7px 0px 0px 10px;
  	padding: 0;
  	float: left;
  	text-align: center;
  	border: none;
  	border-right: 0px solid #797979;
  	list-style: none;
	}

.menu li:last-child {
	margin: 0px 0px 0px 10px;
	}

.topmenu li-menu.current::before {
	content: "\f105"; 
	font-family: "Font Awesome 5 Brands"; 
	padding-right:8px;
	}

.headers a.menutoggler { display:none; }

span.membersubtitle.twitter::before,
span.membersubtitle.instagram::before, 
span.membersubtitle.homepage::before, 
span.membersubtitle.portfolio::before,
span.membersubtitle.blogg::before,
span.membersubtitle.facebook::before {
	font-family: "Font Awesome 5 Brands";
	padding-right: 2px; 
	font-size: 20px; 
	position: relative; 
	top: -4px; 
	margin-left: 10px;
	}

span.membersubtitle.twitter::before {
	content: "\f099";
	}

span.membersubtitle.homepage::before {
	content: "\f0c1";
	font-family: "Font Awesome 5 Pro";
	font-weight: 600;
	}

span.membersubtitle.portfolio::before {
	content: "\f03e";
	}

span.membersubtitle.blogg::before {
	content: "\f108";
	}

span.membersubtitle.facebook::before {
	content: "\f09a";
	}

span.membersubtitle.instagram::before {
    content: "\f16d";
    }

li.menu-portfolio.menu-current {
	position: relative;
	}

.topmenu .portfolio-tags {
	position: absolute;
	padding: 20px;
	background-color: #f2f2f2;
	margin-top: 10px;
	}

.topmenu ul.portfolio-tags li {
	float: none;
    text-align: left;
	}

.topmenu .portfolio-tags {
	position: relative;
	background: #f2f2f2;
	border: 4px solid #f2f2f2;
}
.topmenu .portfolio-tags:after, .topmenu .portfolio-tags:before {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	}

.topmenu .portfolio-tags:after {
	border-color: rgba(242, 242, 242, 0);
	border-bottom-color: #f2f2f2;
	border-width: 8px;
	margin-left: -8px;
	}

.topmenu .portfolio-tags:before {
	border-color: rgba(242, 242, 242, 0);
	border-bottom-color: #f2f2f2;
	border-width: 14px;
	margin-left: -14px;
	}	

.fsbox {
	text-align:center;
	}

.fsbox a {
	font-size: 11px;
	color: #bbb;
	text-decoration: none;
	}
	
.fsbox a:hover {
	text-decoration: underline;
	}		

#servicefrom {
	text-align:center;
	}

/* PORTFOLIO */

.portfolioheader {
	}

.portfolioheader h1,
.pf-thumbnailbox h1,
.pf-thumbnailbox h1 a {
	font-size: 16px;
	color: #666;
	text-decoration: none;
	}

.portfoliodescription,
.pf-thumbnailbox .description {
	font-size: 14px;
	color: #888;
	margin-bottom: 20px;
	}

.thumbnailwrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: stretch;
    align-items: flex-start;
    }
    
.thumbnailwrapper > *,
.thumbnailbox > * {
	}    
	
.thumbnailwrapper > *:last-child,
.thumbnailbox > *:last-child {	
	margin-right: 0px;
	}

.pf-thumbnailbox {
  	padding: 0px 0px 0px 0px;
    margin-bottom: 20px;
    width: calc((100% / 3) - (40px / 3));
    box-sizing: border-box;
	}
	
.pf-thumbnailbox:nth-child(3n+2) {
	margin-left: 20px;
	margin-right: 20px;
	}
	
.pf-thumbnailbox img {
	width: 100%;
	height: auto;
	}	

.thumbnailbox {
  	padding: 0px 0px 0px 0px;
    margin-bottom: 20px;
    width: calc(100% / 6 - 20px);
    box-sizing: border-box;
	margin-right: 20px;
	}

.thumbnailbox h3 {
	text-align:center;
	}

.thumbnailbox .description {
	text-align: center;
	}

img.padlock {
	width: 100%;
	max-width: 10px;
	}

/* pf list med albuminfo */

.pflist-thumbsdesc .teaserbox img {
	max-width: 400px;
	height: auto;
}

/* pf list utan albuminfo */

.thumbnailwrapper .thumbnailbox img {
	width: 100%;
	height: auto;
}


/* pagination */

.pagectl {
	margin: 10px 0 10px 0;
	font-family: 'Open Sans', sans-serif;
	
}

.document .pagectl {
	margin: 5px 0 10px 0;
	font-family: 'Open Sans', sans-serif;
	font-size: 12px;
}


span.pagectl {
  background-color: #b7b7b7;
  font-size: 12px;
  line-height: 14px;
  padding-right: 1px;
  color: #000;
  padding: 5px 8px 5px 8px;
  border: 0px solid #000000;
  -moz-border-radius:2px;
  -webkit-border-radius:2px;
  border-radius:2px;
display: inline-block;
}


a.pagectl, 
a.pagectl:visited, 
a.pagectl:link {
  	background-color: #eaeaea;
  	color: #6e6e6e;
  	text-decoration: none;
  	font-size: 12px;
  	line-height: 16px;
  	padding: 5px 8px 5px 8px;
  	border: 0px solid #000000;
  	-moz-border-radius:2px;
  	-webkit-border-radius:2px;
  	border-radius:2px;
  	font-family: 'Open Sans', sans-serif;
	}

a.pagectl:hover { 
	color: #000;
	background-color: #b7b7b7;
	}

a.pagectl:active { 
	color: #000;
	background-color: #b7b7b7;
	}

/* viewpic navigation */

a#navnext.button.last, 
a#navprev.button.first {
	text-decoration: none;
	top: 50% !important;
	}

a#navnext.button.last::after,
a#navprev.button.first::before {
  font-family: "Font Awesome 5 Pro";
  font-size: 20px;
  color: #000;
	}

a#navnext.button.last::after {
  content: "\f054";
  padding-right: 60px;
  }

a#navprev.button.first::before {
  content: "\f053";
  padding-left: 60px;
	}

.photonavigator #pagecount {
    height: 28px;
    min-width: 100px;
    text-align: center;
    float: left;
    color: #4A4848;
    display: none;
}


/* GRID / COLUMNS */

#guestbook-index .content .leftcolumn,
#info .content .leftcolumn {
	float:left;
  	overflow: hidden;
  	width: calc(80% - 20px);
  	box-sizing: border-box;
  	margin-right: 20px;
	}

#guestbook-index .content .rightcolumn,
#info .rightcolumn {
	float:right;
  	width:20%;
  	box-sizing: border-box;
  	margin-top: 10px;
	}
	
.leftcolumn {
  	float:left;
  	overflow: hidden;
  	width: 80%;
  	box-sizing: border-box;
  	}
  
.rightcolumn {
  	float:right;
  	width:20%;
  	box-sizing: border-box;
  	margin-top: 10px;
	}  
	
.content .columnwrapper,
.content .blog {
	width: 100%;
	margin: auto;	
	}		

.content .leftcolumn {
  	width: 100%;
  	}
  
.content .rightcolumn {
  	width: 100%;
	}

#portfolios.pfstd.pfgradient-white .content .leftcolumn {
	width: 80%;
	}	

	
#portfolios.pfstd.pfgradient-white .content .rightcolumn {
	width: 20%;
	}	

/* BLOG */

.blogcontent .blogentry,
.commentslist .commentcell {
    font-weight: 300;
    font-style: normal;
    font-size: 18px;
    line-height: 1.4;
    display: block;
    font-family: georgia,serif;
    -webkit-font-smoothing: antialiased;
	}

.commentslist .commentcell {
	color: #555;
	padding-left: 0px;
    clear: left;
	}
	
.blogcontent .blogentry	p img {
	width: 100%;
	}	

table.twocolumn {
  	width: 100%;
	}

td.twocolumn-left {
  	width: 80%;
	}

td.twocolumn-right {
  	width: 20%;	
	}

.blogsidebar {
  	box-sizing: border-box;
  	float: left;
  	}
  	
 .blogsidebar.index {
 	width: 20%;
 	text-align: center;
 	} 	

#blog-index .rightcolumn {
  	line-height: 17px;
  	font-size: 12px;
	font-family: 'Open Sans', sans-serif;
  	color: #999999;
  	text-align: center;
  	width: 100%;
	}

#blog-index .rightcolumn a {
  color: #999999;
}

#blog-index .rightcolumn a:hover {
	text-decoration: underline;
	}

.blog .rightcolumn {
	line-height: 17px;
	font-size: 12px;
	font-family: "Open Sans",sans-serif;
	color: #999999;
	text-align: center;
}

.blog .rightcolumn ul {
	padding: 0px;
	}

.blog .rightcolumn ul li {
	list-style: none;
	text-align: left;
	}

.blog .rightcolumn a {
	color: #999999;
}

.blogheader {
	width: 100%;
	margin-bottom: 40px;
}

.content .leftcolumn p, 
.content .rightcolumn p,
.content .blog p,
	font-family: georgia;
	letter-spacing: 0;
	opacity: 0.9;
	font-style: normal;
	font-size: 19px;
	line-height: 26px;
	font-weight: 400;
	color: #333;
	-webkit-font-smoothing: antialiased;
	}

.cloudContainer {
	}

.cloudContainer a {
	text-transform: capitalize;
    color: black;
    font-family: "Roboto",sans-serif;
    background-color: #222;
    padding: 6px 9px;
    color: #fff;
    line-height: 1.2;
    border-radius: 5px;
    font-size: 13px;
    margin-right: 5px;
    font-weight: 400;
    line-height: 35px;
    }

/* FLOW */

.eventflow {
	width:100%;
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start;	
}

.eventflow.wide,
.item-list-wrapper.wide {
	/* max-width: 640px; */
	width: 100%;
}

.eventflow > .event {
	order: 0;
    flex: 0 1 auto;
    align-self: auto;
    flex-grow: 1;
	overflow: hidden;
    box-sizing: border-box;
    width: calc(100% / 3 - 20px);
    float: left;
    margin-right: 10px;
    margin-bottom: 15px;
    border: 1px solid #e3e3e3;
    padding: 20px;
    border-radius: 3px;
	}
	
.eventflow .event-thumbnail,
.item-list-wrapper .item-thumbnail {
  	min-height: 50px;
  	overflow: hidden;			  
  	float: left;
  	width: 100%;
  	margin-bottom: 10px;
  	box-sizing: border-box;
	}
	
.eventflow .event-thumbnail img,
.item-list-wrapper .item-thumbnail img {
	border-radius: 100px; 
	border: 2px solid #fff;
    box-sizing: border-box;
    max-width: 60px;
	}

.eventflow .event-info,
.item-list-wrapper .item-info {
	float: right;
	width: calc(100%);
	box-sizing: border-box;
	}
	
.eventflow .event-thumbnail,
.item-list-wrapper .item-thumbnail {
  	width: 60px;
    margin-right: 10px;
    height: 60px;
	}	

.item-list-wrapper.blog .item-thumbnail	{
	display: none;
	}
	
.item-list-wrapper {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-content: stretch;
	align-items: stretch;
	}
	
.item-list-wrapper.blog {
	width: 80%;
	float: left;
	}	

.item-list-wrapper.blog .item {
	width: calc(100% / 3 - 20px);
	margin-right: 10px;
	}

.item-list-wrapper .item {
	margin: 0px 0px 10px 0px;
	padding: 15px;
	box-sizing: border-box;
	border-radius: 3px;
	order: 0;
	flex: 0 1 auto;
	align-self: auto;
	flex-grow: 0;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	text-decoration: none;
	font-weight: 500;
	line-height: 1.4;
	}
	
.item-list-wrapper.blog .item h2 {
	padding: 0px;
	margin-bottom: 20px;
	}
	
.item-list-wrapper .item-teaser img {
	width: 100%;
	height: auto;
	margin-bottom: 5px;
	}

.blog-wide .blogentry, .bloglist-wide .blogentry, 
.blog-wide p, .bloglist-wide p, .blog-wide td, 
.bloglist-wide td, .eventflow .event .event-shortinfo, 
#index .item-list-wrapper .item .item-summary, 
.item-list-wrapper .item .item-shortinfo,
.eventflow .event-info,
.item-list-wrapper .item-info {
	color: #222222;
	font-family: Georgia,"Times New Roman",Times,serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.5;
	color: #333;
	-webkit-font-smoothing: antialiased;
	text-align: left;
	}
				
.blogsidebar ul {
	margin-left: 0px;
	padding-left: 0px;
	}

.blogsidebar ul li {
	list-style: none;
	line-height: 1.5;
	}
	
.blogsidebar ul li a {
	text-decoration: none;
	}

.blogsidebar ul li a:hover {
	text-decoration: underline;
	}
	
.content .blogcontent {
	width: calc(80% - 20px);
	margin-right: 20px;
	float: left;
	}

.content .rightcolumn.blog {
	width: 20%;
	text-align: center;
	}	
	
/* KOMMENTARER */

.std.section-blogs .commentslist {
    margin-top: 20px;
}

comment.evenline, comment.oddline {
    margin-bottom: 10px;
    background-color: #F2F2F2;
    border-bottom: 1px solid #EDEDED;
}

.document .commentslist , .commentslist  {
    font-family: "Open Sans",sans-serif;
    font-size: 13px;
    line-height: 18px;
    padding-top: 50px;
    border-top: 1px solid #bbb;
    margin-top: 50px;
	}

.commentslist .comment {
    clear: both;
    overflow: auto;
    padding: 10px;
}

.comment .comment-col1 {
    float: left;
    width: 60px;
}

.comment .comment-col2 {
    overflow: hidden;
}

.commentslist .authorcell {
    float: left;
    clear: left;
    margin-bottom: 3px;
}

.commentslist .functioncell {
    float: right;
    padding: 0px 0px 10px 10px;
    text-align: right;
    font-size: 10px;
    line-height: 12px;
}

.commentslist .portraitcell {
    float: left;
}

.commentslist .portraitcell .memberpicture-thumbnail {
    width: 50px;
    height: 50px;
    margin-right: 10px;
    float:left;
    }

.memberpicture-thumbnail img {
    border-radius: 100px;
}

.commentslist .portraitcell .memberpicture-thumbnail img {
    max-width: 50px;
    max-height: 50px;    
}

/* INFO */

#authorportrait, .portraitbox {
    margin-bottom: 10px;
    width: 100%;
    }

#authorportrait img,
.portraitbox img {
   	width: 100%;
    height: auto;
    border-radius: 300px;
    max-width: 100px;
    border: 2px solid #ececec;
    }

.columnwrapper {
  	height: 100%; 
  	margin-bottom:0; 
	}

.columnwrapper {
  height: 100%; 
  margin-bottom:0; 
}

.leftcolumn p {
   	margin: 0;
   	padding: 0; 
   	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
    line-height: 1.3;
    color: #666;
	}

.infobox {
  	width: 100%;
  	line-height: 17px;
  	font-size: 14px;
  	font-family: 'Open Sans', sans-serif;
  	color: #666;
  	margin-bottom: 20px;
  	box-sizing: border-box;
  	padding: 20px 20px 10px 20px;
  	text-align: center;
	}

.infobox a {
  	color: #666;
	}

.portraitbox { 
  	padding-bottom: 20px;
  	text-align: center;
	}

/* VIEWPIC */

body#viewpic .content {
	padding: 0px;
	padding-top: 20px;
	}

.viewpicwrapper {
	text-align:center;
	}

.viewpicwrapper .canvas {
	text-align:center;
	margin: auto;
	}
	
.viewpicwrapper .creditbox,
.viewpicwrapper .description {
    text-align: left;
    font-weight: 500;
    font-size: 12px;
    color: #666;
    margin-left: 2%;
    margin-right: 2%;
    line-height: 1.4;
	}

.viewpicwrapper .creditbox h1 {
	font-size: 14px;
	color: #888;
	text-align: right;
	font-weight: normal;
    }	

.viewpicwrapper .creditbox h1 a {
	}

/* 
--------------------------------------- 
Breakpoints
--------------------------------------- 
*/

/* tablets and smaller */

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

/* tablets and smaller */

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

	body { margin: 0; padding: 0; min-width: 0; }
	.stage, .innerstage, .contentstage, .contentstage-inner, .mainstage, .main { float: none; width: auto; max-width: none; }
	.stage { max-width: none; width: 100% !important; margin: 0; }
    .contentstage +  { float: none !important; clear:both; margin: 0px 0px 0px 20px;}
	.stage { margin-left: 0px; margin-top: 0px; padding:0px;}
    .innerstage {background-image: none;}
    .topbar-smallheader-content { margin: 0;}
    .main {padding: 10px;}
}

/* tablet only */

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

/* tablet and phone */

@media only screen and (min-width: 320px) and (max-width: 768px) {
  	.photolarge {width:100%;}
  	.photolarge img {max-width: 100%;}
   	#viewpic .content {width:100%;}
  	.viewpicwrapper {} 
  	.headers {width: 100%;}
  	.pflist-thumbsdesc .descriptionbox {width:45%;}
  	.pflist-thumbsdesc .teaserbox {width:55%;}
  	ul.topmenu {float:left;}
  	.blogcontent, .blogsidebar {width:100%;}
  	a.title {font-size: 24px;}
	}

/* phones */

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

	.leftcolumn, .content .leftcolumn {width: 100%; margin-bottom: 20px; padding: 10px;}
  	.rightcolumn, .content .rightcolumn {width: 100%;float:left; margin-bottom: 20px; padding: 10px;}  
  	.content {width:100% !important; max-width: 100%; margin:0px; padding:0px 10px 0px 10px;box-sizing: border-box;}
  	.blogentry {margin-right: 0px; padding: 40px 10px 40px 10px;}
  	#viewpf .content {width:100% !important; max-width:100% !important;}

  	.thumbnailwrapper,
  	#blog-index .content .blogentry,
  	.item-list-wrapper.blog,
  	.item-list-wrapper.blog .item,
  	.thumbnailbox,
  	.title,
  	#guestbook-index .content .leftcolumn,
	#info .content .leftcolumn,
	#guestbook-index .content .rightcolumn,
	#info .rightcolumn {
  		width: 100%;
  		}
  		
  	.blogheader,
	.blogcontent,
	.content .blogcontent,
	.blogsidebar,
	.content .rightcolumn.blog,
	.blogsidebar.index {
		width: 100%;
		max-width: calc(100%);
		padding: 0px;
		}	
  	
  	.topmenu {
  		float: left;
  		}	
  		
  	.thumbnailwrapper .thumbnailbox {
  		margin-right: 0px;
  		}	
  		
  	.pf-thumbnailbox {
  		width: calc(100% / 2 - 20px);
  		}	

}

