/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

reinhardsen.no
website by Atelier Espen Schjelderup � 2006, revised 2012, 2013, 2014, 2021

layout.css

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
body massage
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
$easing: cubic-bezier(.25,1.7,.35,.8);
$duration: 0.5s;

/**********************************
layout containers
**********************************/
html, body{
	margin: 0;
	padding: 0;
	min-width: 100%;
	width: 100%;
	max-width: 100%;
	min-height: 100%;
	height: 100%;
	max-height: 100%;
	overflow: hidden;
}

body * {
	margin: 0;
	padding: 0;
}

body {
	background-color: #fff;
	margin: 0;
	padding: 0;
	font-size: 10px;
	font-family: Courier New, Verdana, Arial, tahoma, verdana, sans-serif;
	letter-spacing: -0.05rem;
	color: #000;
}

img {
	display: block;
	border: 0;
	outline: none;
}

a { 
	outline: none; 
}

table {
	border-collapse: collapse;
	margin: 10px 0 10px;
}

table td {
	border: 1px solid #ccc;
	padding: 5px;
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
typo: color
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
a { color: #a7a7a7; }

a:hover, .on { color: #000; }


/*p { color: #323232;}*/

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
typo: font-size
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/*#title, h1 { font-size: 1.7em; }

#subtitle { font-size: 1.7em;  }

#menu li { font-size: 1.7rem; }

.project_title { font-size: 1.7rem; }

h2, p, .entry_content li, table { font-size: 1.3rem; }*/

#title { font-size: 1.4rem; }
#subtitle, #menu li, .project_title {	font-size: 1.1rem; }
 .generic_content_inner, .entry_content { font-size: 1.1rem; }

figcaption { font-size: 1em; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
typo: additional attributes
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#title { 
	font-weight: normal;
	line-height: 13px; /* measured */
}

#subtitle {
	line-height: 13px; /* measured */
}
#subtitle em {
	margin-right: 4px;
	font-style: normal;
}

#menu ul li {
	line-height: 14px; /* measured */
}

#menu .on {
/*	padding-bottom: 5px;
	border-bottom: 1px solid;*/
}

h1, h2 { font-weight: normal; }

a, li a { text-decoration: none; }

h1 { margin-bottom: 30px; }

p {
	line-height: 1.7em;
	margin-bottom: 1.6em;
}

.align_l { text-align: left; }
.align_c { text-align: center; }
.align_r { text-align: right; }

figcaption {
	margin: 10px 0 20px;
}

.entry_content ul {
	list-style: disc;
}

.entry_content ol {
	list-style-type: decimal;
	margin: 0;
	margin-left: 7px;
	padding: 0;
	counter-reset: li-counter;
}

.entry_content ol > li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 7px;
}
	
.entry_content ol > li:before {
	position: absolute;
	top: 0;
	left: -7px;
	width: 7px;
	content: counter(li-counter)".";
	counter-increment: li-counter;
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
header, navigation menu
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#header {
	position: absolute;
	width: 100%;
	z-index: 100;
}

#title {
	margin: 21px 0 0 18px;
}

#subtitle {
	margin: 9px 0 0 19px;
}

#menu {
	margin: 21px 0 0 19px;
	height: 14px;
}

#menu ul {
	list-style-type: none;
	width: 100%;
}

#menu ul li {
	float: left;
	height: 14px;
	margin-right: 25px;
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
main container
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#context {
	position: absolute;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: 0;
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
project axis: main containers
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#main_axis {
	width: 100%;
	height: 100%;
}

.touchcarousel {
	position: relative;
	overflow: hidden;
}

.touchcarousel .touchcarousel-container {
	position: relative;
	width: 100%;
	height: 100%;
	list-style: none;
}

.touchcarousel .touchcarousel-wrapper {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
project axis: carousel items (item styling, spacing between items)
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#main_axis ul {
	margin-left: 20px;
}

#main_axis ul li.touchcarousel-item {
	position: relative;
	float: left;
	width: 550px;
	height: 100%;
	margin-right: 30px;
	padding-top: 210px;
}

.touchcarousel .touchcarousel-item.last {
	margin-right: 60px !important;  /* double the value of #main_axis ul margin-left */
}

.project_title {
	display: block;
	position: absolute;
	top: 180px;
	left: -1px;
	height: 15px;
}

.project_entry {
	width: 100%;
	height: 100%;
}

.entry_index:not(.off) {
	cursor: pointer;
}

.entry_content {
	display: none;
	height: 100%;
}

.entry_content_inner_wrap {
	padding-top: 10px;
	padding-bottom: 200px; /* regulates space at end of columns */
}

.entry_content_inner_wrap img {
	margin-bottom: 10px;
	margin-top: 40px;
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
project axis: navigation arrows
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/

.touchcarousel .arrow-holder {
	display: block;
	position: absolute;
	top: 50%;
	height: 49px;
	width: 49px;
	cursor: pointer;
	z-index: 100;
}

.arrow-holder.left { left: 0; }

.arrow-holder.right { right: 0; }

.arrow-holder.disabled {
	cursor: default;
	-moz-opacity: 0.3;
	-webkit-opacity: 0.3;
	opacity: 0.3;
}

.arrow-holder.disabled .arrow-icon {
	cursor: default;
}

.touchcarousel .arrow-icon{
	position: absolute;
	background: url('graphics/nav_prev_next.png') no-repeat;
	width: 49px;
	height: 49px;
	cursor: pointer;
}

.arrow-icon.left {
	left: 6px;
	background-position: -49px 0;
/* 	background-position: 0 0; */
}

.arrow-holder.disabled:hover .arrow-icon.left {
	background-position: -49px 0;
/* 	background-position: 0 0; */
}

.arrow-holder:hover .arrow-icon.left {
	background-position: 0 0;
/* 	background-position: -46px 0; */
}

.arrow-icon.right {
	right: 6px;
	background-position: -98px 0;
/* 	background-position: -147px 0; */
}

.arrow-holder.disabled:hover .arrow-icon.right {
	background-position: -98px 0;
/* 	background-position: -147px 0; */
}

.arrow-holder:hover .arrow-icon.right {
	background-position: -147px 0;
/* 	background-position: -98px 0; */
}

.nav_arrow {
	display: none;
	position: absolute;
	width: 25px;
	height: 16px;
	z-index: 100;
	cursor: pointer;
}

.nav_arrow.up {
	background: url('graphics/arrows_up.gif') no-repeat 0 0;
}

.nav_arrow.down {
	background: url('graphics/arrows_down.gif') no-repeat 0 0;
}

.nav_arrow:hover {
	background-position: 0 -16px;
}

.project_entry .nav_arrow {
	top: 185px;
}

.project_entry .nav_arrow.up {
	right: 22px
}

.project_entry .nav_arrow.down {
	right: -3px;
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
project axis: scrollbar (currently hidden)
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
.touchcarousel .scrollbar-holder {
	position: absolute;
	left: 25px;
	right: 25px;
	bottom: 0px;
	height: 1px;
	overflow: hidden;
	z-index: 30;
}
.touchcarousel .scrollbar {
	position: absolute;
	left: 0;
	height: 1px;
	bottom: 0px;
}

.touchcarousel .scrollbar {
	background-color: rgb(222, 222, 222);
	background-color: rgba(222, 222, 222, 1);
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
project axis: cursors
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* IE and Opera use "move", FF uses -moz-grab */
.touchcarousel .grab-cursor {
	cursor: url('graphics/grab.png') 8 8, move;
}

.touchcarousel .grabbing-cursor {
	cursor: url('graphics/grabbing.png') 8 8, move;
}

/* Cursor that used when mouse drag is disabled */
.touchcarousel .auto-cursor {
	cursor: auto;
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
sub-pages containers
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
.generic_content {
	position: absolute;
	width: 75%;
	height: 100%;
	clip: rect(170px, auto, auto, auto); /* if updated, update values in c2-4.js */
	z-index: 1;
}

.generic_content_inner {
	padding: 170px 0 0 20px;
}

.generic_content img {
/*	float: right;
	margin-left: 20px;*/ 
}

.nav_arrow.generic {
	display: block;
	position: absolute;
	right: 6px;
	background: url('graphics/nav_up_down.png') no-repeat;
	height: 49px;
	width: 49px;
	cursor: pointer;
	z-index: 100;
}

.nav_arrow.generic.up {
	top: 130px;
	background-position: 0 -49px;
}

.nav_arrow.generic.up:hover {
	background-position: 0 0px;
}

.nav_arrow.generic.down {
	bottom: 6px;
	background-position: 0 -98px;
}

.nav_arrow.generic.down:hover {
	background-position: 0 -147px;
}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
credits
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#credits a {
	display: none;
	position: absolute;
	bottom: 0px;
	right: 0px;
	background: url('graphics/credits.png') no-repeat 0 0;
	width: 35px;
	height: 35px;
	overflow: hidden;
	opacity: 0.05;
}