.sman-left {
	float: left;
}
.sman-img {
	max-width: 100%;
}
.sman-img img {
	max-width: 100%;
    height: auto !important;
}
.seminarman-course-table .sman-img {
	max-width: 50px;
}
.text-right {text-align: right}
.text-left {text-align: left}

.course_details, .prospect_details {
	padding-top: 15px;
    border: 1px dashed #c0c0c0;
    margin-bottom: 15px;
}

.seminarman .underline {
    border-bottom: 2px solid #ddd;
    padding-bottom: 0.5em;
}

.spacer .seminarman-course-booking-subtitle label {
	font-size: 1.25rem;
}

.seminarman-tab-content {clear: both}

/* Seminarman Cart */

table.seminarman_cart_invoice {
font-size: small;
}

table.seminarman_cart_invoice td.seminarman_payment_header {
	background: #80808040;
}

table.seminarman_cart_invoice thead td {
border-bottom: 2px solid #ddd;
}

table.seminarman_cart_invoice td.seminarman_cart_course {
width: auto;
text-align: left;
}

table.seminarman_cart_invoice td.seminarman_cart_quantity {
width: auto;
text-align: left;
}

table.seminarman_cart_invoice td.seminarman_cart_price_single {
width: auto;
text-align: right;
white-space: nowrap;
}

table.seminarman_cart_invoice td.seminarman_cart_price_rabatt,
table.seminarman_cart_invoice td.seminarman_cart_price_vat,
table.seminarman_cart_invoice td.seminarman_cart_price_vat_total {
width: auto;
text-align: right;	
}

table.seminarman_cart_invoice td.seminarman_cart_price_total,
table.seminarman_cart_invoice td.seminarman_cart_netto_total,
table.seminarman_cart_invoice td.seminarman_cart_discount_total,
table.seminarman_cart_invoice td.seminarman_cart_withoutVat_total,
table.seminarman_cart_invoice td.seminarman_cart_booking_total,
table.seminarman_cart_invoice td.seminarman_cart_payment_fee,
table.seminarman_cart_invoice td.seminarman_cart_payment_total {
width: auto;
text-align: right;
white-space: nowrap;
}

table.seminarman_cart_invoice td.seminarman_cart_netto_total_title,
table.seminarman_cart_invoice td.seminarman_cart_discount_total_title,
table.seminarman_cart_invoice td.seminarman_cart_withoutVat_total_title,
table.seminarman_cart_invoice td.seminarman_cart_booking_total_title,
table.seminarman_cart_invoice td.seminarman_cart_payment_fee_title,
table.seminarman_cart_invoice td.seminarman_cart_payment_total_title,
table.seminarman_cart_invoice td.seminarman_cart_price_selected,
table.seminarman_cart_invoice td.seminarman_cart_price_net {
width: auto;
text-align: right;
}

table.seminarman_cart_invoice td {
padding: 2px 5px;
}

table.seminarman_cart_invoice td.seminarman_cart_total {
padding: 0;
border-top: 2px solid #ddd;
}

table.seminarman_cart_invoice td.seminarman_cart_booking_total,
table.seminarman_cart_invoice td.seminarman_cart_booking_total_title,
table.seminarman_cart_invoice td.seminarman_cart_payment_total,
table.seminarman_cart_invoice td.seminarman_cart_payment_total_title,
table.seminarman_cart_invoice td.seminarman_cart_netto_total,
table.seminarman_cart_invoice td.seminarman_cart_price_vat_total {
font-weight: bold;
}

div#seminarman table.seminarman_cart_invoice th
{
	border-bottom: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
}


div#seminarman table.seminarman_cart_invoice td
{
	border-bottom: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
}

.sman-consent-fields .form-check-inline, .sman-extra-fees-fields .form-check-inline 
{
	display: block;
}

.centered {
    text-align: center;
}

.right {
    text-align: right;
}

.vtop {
    vertical-align: top;
}

.italic {
    font-style: italic;
}

div.seminarman p.sman-buttons {
	float: right;
}

.semaforo {
	display: inline-block;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    margin: auto;
}

.semaforo.buchbar {
    background: lightgreen;
}

.semaforo.garantiert {
    background: darkgreen;
}

.semaforo.ausgebucht {
    background: red;
}

.semaforo.cerrado {
    background: lightgrey;
}

table.seminarman-course-table td.sman-td-seats {
	white-space: nowrap;
}

table.seminarman-course-table .footer_notes {
    text-align: right;
}

table.seminarman-course-table .footer_notes span.semaforo {
	margin-left: 10px;
	margin-right: 5px;
}

.seminarman-course-form form .control-label label {
	margin-bottom: 0.5rem;
}

.row .sman-grid-col {
	margin-bottom: 0.5rem;
}

.sman-card {
	display: flex;
 	flex-flow: column nowrap;
	border: 1px solid #dfe3e7;
    border-radius: 0.25rem;
    padding: 15px;
    height: 100%;   
}

.sman-card span.sman-card-row, .sman-card .sman-img {
	display: block;
	margin-bottom: 0.25rem;
}

.sman-card span.sman-card-row:last-child {
	margin-top: auto;
	margin-bottom: 0;
}

.sman-card-row.sman-card-book-row {
	text-align: center;
}

.sman-subcats-wrapper {
	clear: both;
	margin-bottom: 1rem;
}

.sman-badge {
	background-color: #777;
	color: #fff;
}

.sman-subcats-wrapper .sman-subcat-item {
	padding-right: 15px;
}

.sman-subcats-wrapper .sman-subcat-item:after {
	content: '';
}

.sman_tbl_cell_price_lbl {font-weight: bold;}

#form-sman-application .controls fieldset {margin-bottom: 0}

#form-sman-application .subform-repeatable-group {
	border: 1px dashed #ccc;
	padding: 15px;
	position: relative;
	margin-bottom: 1em;
}

#form-sman-application .subform-repeatable-group fieldset.attendee-fields-wrapper {
	border: 0;
	padding: 0;
	margin-bottom: 3em;
}

#form-sman-application .subform-repeatable-group fieldset legend {
	font-size: 1rem;
	font-weight: normal;
}
#form-sman-application .subform-repeatable-group div.btn-toolbar {
	position: absolute;
	bottom: 0;
	left: 15px;
}
#form-sman-application .subform-repeatable-group div.btn-toolbar button.group-move {
	display: none;
}

#form-sman-application div.subform-repeatable-wrapper {
	list-style-type: none;
  	counter-reset: css-counter 0;
}

#form-sman-application div.subform-repeatable-wrapper div.subform-repeatable-group fieldset.attendee-fields-wrapper legend.smanhandle {
	counter-increment: css-counter 1;
}

#form-sman-application div.subform-repeatable-wrapper div.subform-repeatable-group fieldset legend:before {
  content: counter(css-counter) ". "; 
}

.sman-tutor-form-data {margin-top: 1.5rem;}

.sman-pagination {
	display: flex;
    padding-left: 0;
    list-style: none;
    margin: 1rem;
    justify-content: space-between;
    overflow-x: auto;
}

.sman-pagination .sman-pagination-limitbox {
	margin: 1rem;
}

a.link-disabled {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  color: black;
  background-color: #efefef;
}

#form-sman-application .subform-repeatable .table-responsive {
	overflow: visible;
}

.sman-fe-lists-wrapper {
	margin-top: 15px;
	margin-bottom: 15px;
}

.sman-progress-container {
    position: relative;
    width: 100%;
    max-width: 600px;
    margin: 50px auto;
}

/* sman-progress Bar Background */
.sman-progress {
    position: relative;
    height: 10px;
    background-color: #ddd;
    border-radius: 10px;
    width: 100%;
}

/* sman-progress Fill */
.sman-progress-bar {
    position: absolute;
    height: 100%;
    background-color: #0d6efd;
    border-radius: 10px;
}

/* sman-step Containers */
.sman-step-container {
    position: absolute;
    top: -20px;
    transform: translateX(-50%);
    text-align: center;
}

/* sman-step Circles */
.sman-step {
    width: 35px;
    height: 35px;
    background-color: #fff;
    border: 3px solid #0d6efd;
    border-radius: 50%;
    text-align: center;
    line-height: 30px;
    font-weight: bold;
    margin: auto;
}

/* sman-completed sman-steps */
.sman-completed {
    background-color: #0d6efd;
    color: white;
}

/* sman-step Labels */
.sman-step-label {
    margin-top: 8px;
    font-size: 14px;
    white-space: nowrap;
}

@media (min-width: 769px) {
  .seminarman .img-float-left-md {
    float: left;
    max-width: 50%;
    margin-right: 15px;
  }
  .seminarman .img-float-right-md {
    float: right;
    max-width: 600px;
    margin-left: 15px;
  }
}

@media only screen and (max-width: 767px) {
	table.seminarman-course-table,
	table.seminarman-course-table thead,
	table.seminarman-course-table tbody,
	table.seminarman-course-table tfoot,
	table.seminarman-course-table tr,
	table.seminarman-course-table th,
	table.seminarman-course-table td {
		display: block;
	} 
	
	table.seminarman-course-table thead {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	
	table.seminarman-course-table tr {
		border: 1px solid #ccc;
	}
	
	table.seminarman-course-table tbody td {
		/* Behave like a "row" */
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
		padding-left: 50% !important;
		white-space: normal;
		text-align:left;
		
		min-height: 1em;
		overflow: hidden;
	}
	
	table.seminarman-course-table td.res_full {
		padding-left: 0;	
	}
	
	table.seminarman-course-table td:before {
		/* Now like a table header */
		position: absolute;
		/* Top/left values mimic padding */
		top: 6px;
		left: 6px;
		width: 45%;
		padding-right: 10px;
		white-space: nowrap;
		text-align:left;
		font-weight: bold;
	}
	
	/*
	Label the data
	*/
	table.seminarman-course-table td:before {
		content: attr(data-title); 
	}
	
	table.seminarman-course-table td.responsive_nv {
		display: none;
	}
	
	/* prospect */
	
	table.seminarman-prospect-table,
	table.seminarman-prospect-table thead,
	table.seminarman-prospect-table tbody,
	table.seminarman-prospect-table tfoot,
	table.seminarman-prospect-table tr,
	table.seminarman-prospect-table th,
	table.seminarman-prospect-table td {
		display: block;
	} 
	
	table.seminarman-prospect-table thead {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	
	table.seminarman-prospect-table tr {
		border: 1px solid #ccc;
	}
	
	table.seminarman-prospect-table td {
		/* Behave like a "row" */
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
		padding-left: 50% !important;
		white-space: normal;
		text-align:left;
		
		min-height: 1em;
		overflow: hidden;
	}
	
	table.seminarman-prospect-table td.res_full {
		padding-left: 0;	
	}
	
	table.seminarman-prospect-table td:before {
		/* Now like a table header */
		position: absolute;
		/* Top/left values mimic padding */
		top: 6px;
		left: 6px;
		width: 45%;
		padding-right: 10px;
		white-space: nowrap;
		text-align:left;
		font-weight: bold;
	}
	
	/*
	Label the data
	*/
	table.seminarman-prospect-table td:before {
		content: attr(data-title); 
	}
	
	table.seminarman-prospect-table td.responsive_nv {
		display: none;
	}
	
	/* Shopping Cart */
	
	div.seminarman table.seminarman_cart_invoice,
	div.seminarman table.seminarman_cart_invoice thead,
	div.seminarman table.seminarman_cart_invoice tbody,
	div.seminarman table.seminarman_cart_invoice th,
	div.seminarman table.seminarman_cart_invoice td,
	div.seminarman table.seminarman_cart_invoice tr {
	display: block;
	}
	
	div.seminarman table.seminarman_cart_invoice thead tr,
	div.seminarman table.seminarman_cart_invoice tr.sman_extra_fee_table_headline,
	div.seminarman table.seminarman_cart_invoice tr.sman_extra_fee_table_header,
	div.seminarman table.seminarman_cart_invoice tbody td.seminarman_cart_netto_total_title,
	div.seminarman table.seminarman_cart_invoice tbody td.seminarman_cart_discount_total_title,
	div.seminarman table.seminarman_cart_invoice tbody td.seminarman_cart_withoutVat_total_title,
	div.seminarman table.seminarman_cart_invoice tbody td.seminarman_cart_booking_total_title,
	div.seminarman table.seminarman_cart_invoice tbody td.seminarman_cart_payment_total_title,
	div.seminarman table.seminarman_cart_invoice tbody td.seminarman_cart_payment_fee_title {
	position: absolute;
	display: none;
	top: -9999px;
	left: -9999px;
	}
	
	div.seminarman table.seminarman_cart_invoice tr.seminarman_cart_item {
	border-top: 1px solid #ccc;	
	}
	
	div.seminarman table.seminarman_cart tbody td {
	width: 50%;
	}
	
	div.seminarman table.seminarman_cart_invoice tbody td {
	border: none;
	position: relative;
	padding-left: 50% !important;
	width: auto;
	white-space: normal;
	text-align: left;
	overflow: hidden;
	}
	
	div.seminarman table.seminarman_cart_invoice tbody td.seminarman_cart_total {
	padding-left: 0;
	border-top: 2px solid #ddd;
	}
	
	div.seminarman table.seminarman_cart_invoice tbody td:before {
	position: absolute;
	top: 3px;
	left: 6px;
	width: 45%;
	padding-right: 10px;
	white-space: nowrap;
	text-align:left;
	}
	
	div.seminarman table.seminarman_cart_invoice tbody td:before {
	content: attr(data-title);
	}
	div.seminarman table.seminarman_cart_invoice tbody td.responsive_h3::before {
		font-size: large;
	}
	
	div.seminarman table.seminarman_cart_invoice tbody td:after {
	content: attr(data-currency);
	}
	
	.sman-step-label {
	display: none;
	}
}
