/* -------------------------------------------------------------------------------- */
/* Application styles for project-specific behaviour */
/* -------------------------------------------------------------------------------- */
/* Common definitions for major layout and generic elements */
/* -------------------------------------------------------------------------------- */

#eureka_header {

}


#eureka_footer {
  margin-top: 30px;
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
  border-top: 1px solid #CCC;
}


#eureka_content {

}


#eureka_page-row {

}


#eureka_page-content{

}

#processingRequestInfo {
	text-align: center;
	margin-bottom: 50px;
}

#processingRequestInfo h2 {
	margin-bottom: 50px;
}

img.loadingSpinner {

}

h1.page-heading {
	margin-bottom: 30px;
}


a.read_more {
	white-space: nowrap;			/* TODO: FIXME: RESEARCH: Should avoid breaking the text '[Weiterlesen ...]' but does not work */
}


.eureka_nav_list > li > a {
	/*CHANGE: font-size: 20px;*/
  font-size: 18px;
}

.cart_indicator_text {
	font-size:22px;
}

.page-error_box {
	padding-top: 25px;
	margin-top: 30px;
}


.page-error_symbol {
	margin-right: 20px;
}


.eureka_call-to-action_bottom {
	position:absolute; 
	bottom: 0px; 
	right:0px;
	font-size: 18px;	
}

@media (max-width: 900px) { 

	.eureka_call-to-action_bottom {
		position:absolute; 
		bottom: 0px; 
		right:0px;
		font-size: 14px;	
	}

}	


.eureka_call-to-action_top {
	position:absolute; 
	top: 0px; 
	right:0px;
	margin-right:15px;
	font-size: 16px;
}

.non-indented-list {
	margin-left: -25px;	
}

/* -------------------------------------------------------------------------------- */
/* Styles for page 'home' */
/* -------------------------------------------------------------------------------- */

#eureka_home_overview {
	margin-top: 40px;
}


#eureka_home_gallery, .eureka_jumbotron {
	padding: 0px;
}

/*
#eureka_home_gallery, .eureka_jumbotron {
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 30px;
	padding-bottom: 30px;
*/
/*	
	background-color: #F8F8F8;
}
*/



.eureka_gallery_image {

}


/*
.eureka_gallery_image {
	width:570px;
	height:380px;
}

*/


ol.carousel-indicators {
	bottom: 30px;
	margin-bottom: 0px;
	width: 10%;
	left: 90%;
}

@media (max-width: 900px) { 

	ol.carousel-indicators {
		bottom: 70px;
		margin-bottom: 0px;
		width: 10%;
		left: 95%;
	}

}


/*
ol.carousel-indicators {
	bottom: 0px;
	margin-bottom: 0px;
	width: 10%;
	left: 90%;
}

*/
.carousel-indicators li {
  background-color: #000 \9;
  background-color: rgba(255, 255, 255, 0);
  border: 1px solid #000000;
}


.carousel-indicators .active {
  background-color: #000000;
}	


.carousel-caption {

/* Overriden from origin bootstrap-styles: */
/*
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  text-align: center;
*/


/* First version: */

/*
	position: absolute;
  right: 0%;
  bottom: 0px;
  left: 55%;
  z-index: 10;

  padding-top: 0px;
  padding-bottom: 20px;
  color: #ffffff;
  text-align: left;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
*/

  /* Added: */
  /*height:380px;*/

}


.carousel-caption-aside {

/* Second version: */

  position: absolute;
  right: 30px;
  bottom: 30px;
  left: 60%;
  z-index: 10;

  padding-top: 0px;
  padding-bottom: 20px;
  color: #ffffff;
  text-align: left;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);

  /* Added: */
  height:50px;

}


.blog-post-preview_content > p {
	text-align: justify;
	line-height: 24px;
}


.book-preview_content > p {
	text-align: justify;
	line-height: 24px;
}


.book-preview_image {
	float: left !important;
	margin-right: 10px;
}


.book-preview_header {
	margin-bottom: 15px;
}


.blog-post-preview_header {
	margin-bottom: 15px;
}


.book-preview {
	margin-bottom: 10px;
}


.blog-post-preview {
	margin-bottom: 10px;
}

/* -------------------------------------------------------------------------------- */
/* Styles for page 'press' */
/* -------------------------------------------------------------------------------- */

.press_book_grid {

}

.book_thumbnail {
	height: 320px;
	padding-top: 10px;
	cursor: pointer;
}

.book_thumbnail img {
  min-height: 220px;
  max-width: 330px;
  max-height: 220px;
}

.book_thumbnail > .caption {
	text-align: center;
	position: absolute;
  width: 90%;
  height: 60px;
	bottom: 20px;
	margin-bottom: 10px;		
}

.book_thumbnail > .caption > h3 {
	/*font-size: 18px;*/
	line-height: 26px;
}	


/*
.press_order_button {
position:absolute; 
bottom: 0px; 
right:0px;
font-size: 18px;	
}
*/

/* -------------------------------------------------------------------------------- */
/* Styles for page 'book/$ID' */
/* -------------------------------------------------------------------------------- */

.book_wrapper {

}

.book_presentation {

}

.book_aside {
	padding-top: 60px;
	padding-left: 20px;
	border-left: 1px dotted #CCCCCC;
}

.book_additions {
	margin-top: 10px;
	padding-top: 20px;
	border-top: 1px dotted #CCCCCC;
}

h1.book_title {
	font-size: 26px;
	margin-bottom: 30px;
}

.book_image {
	float: left !important;
	margin-right: 20px;
}

p.book_description {
	font-size: 16px;
	text-align: justify;
}

.book_buynow_button {
	font-size:  20px;
	margin-top: 20px;
}

/*
.book_trial-chapter_button {
	font-size:  20px;
	margin-top: 20px;
	margin-left: 5px;
}
*/

.book_trial-chapter_button {
	font-size:  16px;
	margin-top: 20px;
	margin-bottom: 20px;
	margin-left: 0px;
}

/* -------------------------------------------------------------------------------- */
/* Styles for specific book-pages
/* -------------------------------------------------------------------------------- */

.book_image_schriftlos {
	margin-right: 20px;
}

/* -------------------------------------------------------------------------------- */
/* Styles for page 'inquiry' */
/* -------------------------------------------------------------------------------- */

#inquiry_header {

}

.inquiry_social-button_top {
	position:absolute; 
	top: 0px; 
	right:0px;
	font-size: 16px;
	margin-right:15px;
}


#inquery-error-indicator_button {
	margin-left:15px; 
	display:none;
} 

.inquery_validation-error_box {

}

#inquiry-validation-error-text_input {
	border-color: #D2322D; 
	background-color: #FFFFFF; 
	display:none;
}


/* -------------------------------------------------------------------------------- */
/* Styles for page 'cart' */
/* -------------------------------------------------------------------------------- */

#cart_panel {
}

#cart_panel_header {
}

#cart_panel_body {
}

#cart_panel_footer {
}

/* ---------------------------------------- */
/* Cart-Items in panel-header */
/* ---------------------------------------- */

h1.cart-heading {
	font-size:2em;						/* Copied over from global h1-definition, removed margin-top */
}

/* Align buttons in panel-header rightside */
.cart_shipping-cost-header_col, .cart_purchase-now-header_col {
	text-align:right; 				
}

.cart_purchase-now-header_col {
	padding-right: 10px;			/* Fix small optical displeasure: looks more harmonic afterwards */
}

#cart_purchase-now-top_button {
	font-size: 16px;
	line-height: 20px; 				/* Equalize with cart_shipping-cost-top_button */
}

.cart_shipping-cost-top_button {
	font-size: 16px;
	text-align: left;					/* Fix rightside alignment in dropdown-entries */
}

.cart_shipping-cost-top_button > .btn-sm {
	font-size: 14px;
}

/* ---------------------------------------- */
/* Cart-Items in panel-body (row and cols) */
/* ---------------------------------------- */

.cart_purchase-item_wrapper {
	text-align: right;
	margin-bottom: 20px;
}
	
/* vertically align other cols in assumption, that 'cart_purchase-item-col_text' will always have two lines! */
/* http://stackoverflow.com/questions/9249359/text-vertical-align-in-a-div */
div[class*='cart_purchase-item-col'] {
	min-height: 40px;
	line-height: 40px;
	vertical-align: middle;
	/*color:red;*/
}

/* Keep origin value by upgrading specifity such that the wildcard-rule for all columns having the same prefix get's overriden */
.cart_purchase-item_wrapper > .cart_purchase-item-col_text {
	line-height: 20px;
	vertical-align: baseline;
}

.cart_purchase-item-col_text {
	text-align: left;
}

.cart_purchase-item-col_options {
	text-align: left;
}

.cart_purchase-item-col_sum {
}

.cart_purchase-item-col_shipping {
}

.cart_purchase-item-col_price {
}


/* Additional header if purchase is performed */
.cart_purchase-item_wrapper_heading {
	font-weight: bold;
	font-size: 16px;
	border-bottom: 1px solid #CCCCCC;
}

/* CSS-Change-Class if purchase is performed */
.cart_purchase-item_wrapper_heading > div.cart_purchase-item-col_text_on_purchase {
	min-height: 40px;
	line-height: 40px;
	vertical-align: middle;
}

/* ---------------------------------------- */
/* Cart-Items in panel-body (elements) */
/* ---------------------------------------- */

.cart_purchase-item_title {
	font-weight: bold;
}

.cart_purchase-item_title:hover {
	text-decoration: none;
}

.cart_purchase-item_options_button {
	margin-top: 4px;									 /* Fit manually the vertical-align in the whole item-row according to the other columns */
	/*width: 90%;*/										 /* Giving it a width does not take effect and kills the right-floating ?!? */
}

.cart_purchase-item_options_button > .btn-sm {
	font-size: 14px;
}

.cart_purchase-item-amount_input {
	
	display: inline-block;
	width: 30px;
	
	/* Equalize with adjacent options-button*/
	height: 32px;
	padding-top: 4px;
	padding-bottom: 4px;

	padding-left: 0px;
	padding-right: 0px;

	margin-right: 5px;
	text-align: center;
}

/*
	.selected_product-variety_option {
	width: 85%;
}
*/
/* ---------------------------------------- */
/* Cart-Items in panel-footer */
/* ---------------------------------------- */

.cart_purchase-notes_text {
	padding-top: 3px;
}

/* applied on total-sum, total-shipping and total-price*/
.cart_purchase-price-summary_text {
	text-align: right;
	font-size: 16px;
	font-weight: bold;
}

.cart_purchase-total-sum {
}

.cart_purchase-total-shipping {
}

.cart_purchase-total-price {
}



#cart_panel_business_section {
	padding-top: 20px;
	padding-bottom: 20px;
}


/* -------------------------------------------------------------------------------- */
/* Styles for elements in page cart according to 'purchase' */
/* -------------------------------------------------------------------------------- */

#purchase_wrapper {

	margin-top: 20px;
	margin-bottom: 20px;
}

#purchase_wrapper h2 {

	margin-left: 15px;
	margin-bottom: 20px;
}

#purchase_notes {

	margin-bottom: 25px;
}

#payment_options_wrapper {

	margin-top: 25px;
	margin-bottom: 25px;
}

/*#payment_options_wrapper > div.radio {*/

.payment_options_radio {

	margin-top: 0px;
	margin-bottom: 0px;
}

#cart_purchase_button {
	font-size: 14px;
	line-height: 20px;
}


.order_legal_checkbox {
	margin-top: 30px;
	margin-bottom: 30px;	
}

#order-error-indicator_button {
	margin-left:15px; 
	display:none;
} 

.order_validation-error_box {

}

#order-validation-error-text_input {
	border-color: #D2322D; 
	background-color: #FFFFFF; 
	display:none;
}


/* -------------------------------------------------------------------------------- */
/* Styles for page 'payment' */
/* -------------------------------------------------------------------------------- */

.payment_text {

	font-size: 16px;
}

.payment_info {

	max-width: 500px;
	margin-top:30px; 
	padding: 10px; 
	border: 1px solid #CCCCCC; 

	font-weight:bold;
}


/* -------------------------------------------------------------------------------- */
/* Styles for page 'education' */
/* -------------------------------------------------------------------------------- */

/*
#education div:first-child {
	margin-top: 10px;
}
*/

.education-wrapper {
	margin-bottom: 45px;
}



.education-content {
	/*margin-bottom: 45px;*/
}

.education-content h3 {
	font-size:1.3em;
	font-weight: bold;
}


/* -------------------------------------------------------------------------------- */
/* Styles for page 'translation' */
/* -------------------------------------------------------------------------------- */




/* -------------------------------------------------------------------------------- */
/* Styles for page 'about-us' */
/* -------------------------------------------------------------------------------- */

.aboutus-content .person_image {
	margin-right: 20px;
}

.aboutus-content .person_list {
	margin-left: -25px;
	line-height: 35px;
}


/* -------------------------------------------------------------------------------- */
/* Styles for page 'sitenotice' */
/* -------------------------------------------------------------------------------- */



/* -------------------------------------------------------------------------------- */
/* Styles for page 'blog' */
/* -------------------------------------------------------------------------------- */


	#blog_header {
		margin-bottom: 30px;
	}
	
	.blog-content {
		border-right: 1px solid #CCCCCC;
	}

	.blog-sidebar {
		padding-left: 45px;
	}

	.blog-article {
		padding-right: 20px;
		padding-bottom: 20px;
		margin-bottom: 40px;
	}

	.blog-article-info {
		border: 0px solid red;
		padding-left: 20px;
	}

	.blog-article-content {
		padding-left: 30px;
	}

	.blog-person-thumb {
		width: 100px;
		height: 100px;
	}

	.blog-date-note {
		font-size: 16px;
		font-weight: bold;
		text-align: left;

		padding-left: 10px;
		margin-top: 20px;
	}

	.blog-article-title {
		margin-bottom: 25px;
		font-size: 20px;
		font-weight: bold;
	}

	.blog-article-text {
		font-size: 16px;
		text-align: justify;
	}

	hr.blog-spacer {
		margin-top: 40px;
		border-top-width: 2px 0 0;
	}


/* ---------------------------------------- */
/* */
/* ---------------------------------------- */


