body{
	background: #F9F9F9 0% 0% no-repeat padding-box;
	display: flex;                /*  IE need this for its 'min-height' bug  */
	flex-direction: column;
}

.form-group {
	margin-bottom: 0.625rem;
}

.ng-jumbotron {
	background: transparent linear-gradient(180deg, #0000FF 0%, #642F6C 100%) 0% 0% no-repeat padding-box;
	opacity: 1;
	width: 100%;
	height: 320px;
	position: absolute;
	top: 0px;
	left: 0;
}

.ng-body {
	background: transparent linear-gradient(180deg, #0000FF 0%, #642F6C 100%) 0% 0% no-repeat padding-box;
}

.ng-flex-page {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-flex;
	flex-direction: column;
	min-height: 100vh;
}

.ng-flex-page-section {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 15px 0px 0px 0px;
}

.ng-flex-page-section .ng-box-layout,
.ng-success-card,
.ng-error-container {
	box-shadow: 0px 6px 10px 0px rgba(0, 0, 0, 0.30);
    -webkit-box-shadow: 0px 6px 10px 0px rgba(0, 0, 0, 0.30);
    -moz-box-shadow: 0px 6px 10px 0px rgba(0, 0, 0, 0.30);
	border: 1px solid #707070;
	border-radius: 5px;
	background: #FFFFFF;
}

.ng-login-form  {
	margin: 10px;
}

.ng-login-form .tab-content {
    padding: 10px;
}

.ng-login-form .nav-tabs {
    margin-bottom: 0;
}


.ng-login-form .nav-tabs .nav-link:focus, .ng-login-form  .nav-tabs .nav-link:hover ,
.ng-login-form .nav-tabs .nav-link.acive:focus, .ng-login-form  .nav-tabs .nav-link.nav-link.acive:hover,
.ng-login-form .nav-tabs .nav-link, .ng-login-form  .nav-tabs {
	border: none;
}

.ng-login-form .nav-tabs .nav-link:focus, .ng-login-form  .nav-tabs .nav-link:hover {
	background: #CDCDCD;
}

.ng-login-form .nav-tabs .nav-item {
	border-bottom: 2px solid #0000FF;
	font-weight: bold;
}

.ng-login-form .nav-tabs .nav-link.active {
	background: #0000FF;
	color: #FFFFFF;
}


.ng-login-form  .form-group {
	margin-bottom: 5px;
}

.ng-flex-footer {
	align-self: flex-end;
}

#carouselIndicators img{
	height: 450px;
	width: 100%;
}


#page-container {
	min-height:100vh;
	position:relative;
}

.ng-container {
	max-width: 1280px;
}

.ng-vr-line {
	width: 1px;
	background-color: black;
	height: 100%;
	display: inline-block;
	height: 44px;
	border: 1px solid #707070;
	opacity: 0.2;
}


.ng-navbar {
	max-height: 80px;
	border-bottom: 2px solid #001871;
	box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.33);
    -webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.33);
    -moz-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.33);
}

.ng-img-navbar {
	width: 25%;
	padding: 10px;
}
.ng-img-navbar img{
	max-height: 50px;
}

.ng-page-title {
	text-align: left;
	font: Bold 28px/65px Calibri;
	/*font: Bold 28px/65px euclid circular b;*/
	letter-spacing: 0;
	color: #FFFFFF;
	opacity: 1;
}

.ng-page-lang {
	width: 100%;
}

.ng-page-lang label{
	font: Light 14px/17px Calibri;
	/*font: Light 14px/17px euclid circular b;*/
	color: #FFFFFF;
	opacity: 1;
}

.ng-paragraph {
	font-size: 1.125rem;
}

.ng-page-lang .form-control{
	min-width: 130px;
}

.ng-nav-tabs {
	border-radius: 5px;
	border: none;
}
.ng-nav-tabs  .ng-vr-line {
	height: 54px;
}
.ng-nav-tabs  .nav-item .ng-nav-link {
	display: block;
	width: 100%;
	text-align: center!important;
	font: Bold 16px/17px Calibri;
	/*font: Bold 16px/17px euclid circular b;*/
	letter-spacing: 0;
	color: #001871;
	height: 54px;
	line-height: 54px;
	text-align: center;
	border-bottom: 4px solid #AAAAAA;
	text-decoration: none;
}

.ng-nav-tabs .nav-item:first-child  .ng-nav-link{
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;

}

.ng-nav-tabs .nav-item:last-child  .ng-nav-link{
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}

.ng-nav-tabs  .nav-item .ng-nav-link.complete{
	background-color: #C9EBBF;
}


.ng-nav-tabs  .nav-item .ng-nav-link.active{
	background-color: #30AAE3;
	color: #FFFFFF;
}


.ng-nav-tabs  .ng-vr-line.complete {
	border-color: #9EC293;
	opacity: 0.8;
}

.ng-nav-tabs  .nav-item .ng-nav-link.active,
.ng-nav-tabs  .nav-item .ng-nav-link.complete{
	border-color: #2F9711;
}

.ng-tab-content {
	margin: 20px 0px;	
	background: #FFFFFF 0% 0% no-repeat padding-box;
	box-shadow: 0px 5px 9px rgba(45,49,124,0.25);
    -webkit-box-shadow: 0px 5px 9px rgba(45,49,124,0.25);
    -moz-box-shadow: 0px 5px 9px rgba(45,49,124,0.25);
	border-radius: 5px;
	opacity: 1;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-bottom: 40px;
}


.ng-custom-required:after, .form-group.required label:after { 
    content: "*";
    position: absolute;
    margin-left: 4px;
   	color:#d50000;
}

.ng-custom-required {
	display: inline;
}

.form-group .ng-label{
	display: block;
	
}

.form-group .ng-form-control:focus{
	background-color: #FFFFFF;
}

.form-group .ng-form-control {
	background-color: #F8F8F8;
}

.form-group .ng-form-control:focus,
.custom-control-input:focus ~ .custom-control-label::before,
.custom-file-input:focus~.custom-file-label {
	box-shadow: 0px 0px 5px 0px rgba(45,49,124,0.5);
    -webkit-box-shadow: 0px 0px 5px 0px rgba(45,49,124,0.5);
    -moz-box-shadow: 0px 0px 5px 0px rgba(45,49,124,0.5);
}


.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn.focus:active,
.btn:active:focus,
.btn:focus {
  background-image: none  !important;
  -webkit-box-shadow: none !important;
  box-shadow: none  !important;
}



.ng-nav-btn .ng-btn {
	width: 150px;
	height: 40px;
	margin: 0px 5px;
	font-size: 1.0625rem
}

.ng-nav-btn .ng-action-btn {
	background: transparent linear-gradient(66deg, #001871 0%, #642F6C 100%) 0% 0% no-repeat padding-box;
}

.ng-nav-btn .ng-action-btn:hover,
.ng-nav-btn .ng-action-btn:focus {
	background: #2d317c;
}

.ng-tab-container {
	width: 100%;
	padding-bottom: 35px;
}

.ng-footer {
	position: absolute;
	bottom: 0;  
	/* height: 35px;  Footer height */
	width: 100%;
}


.ng-footer label, .ng-footer label.col-form-label {
	font-size: 0.950rem;
	font-weight: bold;
}

.form-control, select option{
	font-weight: bold;
	font-size: 1rem;
}

::-webkit-input-placeholder {
	font-size: 0.950rem;
	font-weight: 500;
}
:-moz-placeholder {
    font-size: 0.950rem;
	font-weight: 500;
}
::-moz-placeholder {
    font-size: 0.950rem;
	font-weight: 500;
}
:-ms-input-placeholder {
    font-size: 0.950rem;
	font-weight: 500;
}

.form-control::placeholder {
	font-size: 0.950rem;
	font-weight: 500;
}

.ng-tab-label {
	margin: 0px 5px;
}


span.twitter-typeahead .tt-menu{
	width: 100%;
	border-radius: 0px;
}

span.twitter-typeahead .tt-suggestion {
	white-space: normal;
}

.ng-hide {
	display: none;
}

.ng-date-clear {
	margin-left: -40px;
	z-index: 100;
	padding-bottom: 0px;
	display: none;
}

.ng-date-clear:hover {
	cursor: pointer;
}

.ng-date-clear-expiry {
	margin-left: -40px;
	z-index: 100;
	padding-bottom: 0px;
	display: none;
}

.ng-date-clear-expiry:hover {
	cursor: pointer;
}
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0; 
}

.ng-file-group .custom-file-label,
.ng-file-group .custom-file-label::after{
	height: auto;
	padding: .25rem .5rem;
    line-height: 1.5;
}

.ng-file-group .custom-file-label{
	height: calc(1.5em + .5rem + 2px);
}

.ng-file-group .btn-sm{
	height: calc(1.5em + .5rem + 5px);
}

.ng-header {
	font: Bold 20px/40px Calibri;
	/*font: Bold 20px/40px euclid circular b;*/
	color: #001871;
}

.ng-table {
	border: 1px solid #dee2e6;
}

.ng-table tr  td,
.ng-table tr  th {
	padding-left: 10px;
	padding-right: 10px;
	vertical-align: middle;
}

.ng-w-20 {
    width: 20%!important;
}

.ng-w-10 {
    width: 10%!important;
}

.ng-w-30 {
    width: 30%!important;
}

.ng-w-15 {
    width: 35%!important;
}

.ng-w-5 {
    width: 5%!important;
}

.ng-tbody-light {
	background-color: #F8F8F8;
}

.ng-thead-light {
	background-color: #D5D5D5;
}

.ng-delete {
	text-align: center;
	color: #2d317c;
}

.ng-delete:hover {
	color: #d50000;
	cursor: pointer;
}

.ng-swift-btn {
	width: 36px;
}

.ng-icon-box {
	color: #fff;		
	margin: 10px auto;
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: #2d317c;
	padding: 12px;
	text-align: center;
	font-size: 36px;
	position: relative;
}

.ng-success-card {
	margin-top: 60px;
	margin-bottom: 85px;
}

.form-control.is-invalid, .was-validated .form-control:invalid {
	background-image: none;
}

.form-control.ng-calendar:after{
	font-family: "Font Awesome 5 Free"
    content: '\f073';
}

.ng-error-container {
	background: #ffffff;
	margin: 40px auto 90px auto;
	max-width: 720px;
}


.ng-dropzone {
   border: 2px dashed #2d317c;
    border-radius: 5px;
    background: white;
	padding: 10px 10px;
	min-height: 65px;
	height: 120px;
}

.ng-dropzone-res {
   border: 2px dashed #2d317c;
    border-radius: 5px;
    background: white;
	padding: 10px 10px;
	min-height: 65px;
	height: 120px;
}

.dropzone .dz-message{
	font-weight: 400;
	font-size: 1.2rem;
	color: #646C7F;
	margin: 0px;
	line-height: 100px;
}

.dropzone .dz-preview {
	min-height: 0px;
	height: auto;
}

.dropzone .dz-preview .dz-image {
	width: 240px;
	height: 60px;
}

.dropzone .dz-preview .dz-details {
	  padding: 6px 6px;
}

.dropzone .dz-preview .dz-details .dz-size {
	margin-bottom: 0.625rem;
}



/**** LOADER ***/
/* https://projects.lukehaas.me/css-loaders/ */
/* Absolute Center Spinner */
.loading {
  position: fixed;
  z-index: 9999;
  height: 2em;
  width: 2em;
  overflow: show;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/* Transparent Overlay */
.loading:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    background: radial-gradient(rgba(20, 20, 20,.8), rgba(0, 0, 0, .8));

  background: -webkit-radial-gradient(rgba(20, 20, 20,.8), rgba(0, 0, 0,.8));
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required) {
  /* hide "loading..." text */
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.loading:not(:required):after {
  content: '';
  display: block;
  font-size: 10px;
  width: 1em;
  height: 1em;
  margin-top: -0.5em;
  -webkit-animation: spinner 1500ms infinite linear;
  -moz-animation: spinner 1500ms infinite linear;
  -ms-animation: spinner 1500ms infinite linear;
  -o-animation: spinner 1500ms infinite linear;
  animation: spinner 1500ms infinite linear;
  border-radius: 0.5em;
  -webkit-box-shadow: rgba(255,255,255, 0.75) 1.5em 0 0 0, rgba(255,255,255, 0.75) 1.1em 1.1em 0 0, rgba(255,255,255, 0.75) 0 1.5em 0 0, rgba(255,255,255, 0.75) -1.1em 1.1em 0 0, rgba(255,255,255, 0.75) -1.5em 0 0 0, rgba(255,255,255, 0.75) -1.1em -1.1em 0 0, rgba(255,255,255, 0.75) 0 -1.5em 0 0, rgba(255,255,255, 0.75) 1.1em -1.1em 0 0;
box-shadow: rgba(255,255,255, 0.75) 1.5em 0 0 0, rgba(255,255,255, 0.75) 1.1em 1.1em 0 0, rgba(255,255,255, 0.75) 0 1.5em 0 0, rgba(255,255,255, 0.75) -1.1em 1.1em 0 0, rgba(255,255,255, 0.75) -1.5em 0 0 0, rgba(255,255,255, 0.75) -1.1em -1.1em 0 0, rgba(255,255,255, 0.75) 0 -1.5em 0 0, rgba(255,255,255, 0.75) 1.1em -1.1em 0 0;
}



.loading-spider {
  position: fixed;
  z-index: 9999;
  height: 2em;
  width: 2em;
  overflow: show;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/* Transparent Overlay */
.loading-spider:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    background: radial-gradient(rgba(1, 1, 1,1), rgba(1, 1, 1,1));

  background: -webkit-radial-gradient(rgba(1, 1, 1,1), rgba(1, 1, 1,1));
}

/* :not(:required) hides these rules from IE9 and below */
.loading-spider:not(:required) {
  /* hide "loading..." text */
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.loading-spider:not(:required):after {
  content: '';
  display: block;
  font-size: 10px;
  width: 1em;
  height: 1em;
  margin-top: -0.5em;
  -webkit-animation: spinner 1500ms infinite linear;
  -moz-animation: spinner 1500ms infinite linear;
  -ms-animation: spinner 1500ms infinite linear;
  -o-animation: spinner 1500ms infinite linear;
  animation: spinner 1500ms infinite linear;
  border-radius: 0.5em;
  -webkit-box-shadow: rgba(255,255,255, 0.75) 1.5em 0 0 0, rgba(255,255,255, 0.75) 1.1em 1.1em 0 0, rgba(255,255,255, 0.75) 0 1.5em 0 0, rgba(255,255,255, 0.75) -1.1em 1.1em 0 0, rgba(255,255,255, 0.75) -1.5em 0 0 0, rgba(255,255,255, 0.75) -1.1em -1.1em 0 0, rgba(255,255,255, 0.75) 0 -1.5em 0 0, rgba(255,255,255, 0.75) 1.1em -1.1em 0 0;
box-shadow: rgba(255,255,255, 0.75) 1.5em 0 0 0, rgba(255,255,255, 0.75) 1.1em 1.1em 0 0, rgba(255,255,255, 0.75) 0 1.5em 0 0, rgba(255,255,255, 0.75) -1.1em 1.1em 0 0, rgba(255,255,255, 0.75) -1.5em 0 0 0, rgba(255,255,255, 0.75) -1.1em -1.1em 0 0, rgba(255,255,255, 0.75) 0 -1.5em 0 0, rgba(255,255,255, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */

@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-moz-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-o-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.modal-confirm .modal-header {
	border-bottom: none; 
	padding: 0.625rem 1.25rem;
	color: #636363;
}
.modal-confirm .modal-body {
	padding: 0rem 1.25rem;
	font-family: initial !important;
    font-size: initial !important;
}

.modal-confirm .modal-footer {
	background: #eee;
	border-color: #e6eaec;
	padding: 0.625rem 1.25rem;
}

.ng-tab-header {
	display: none;
}


@media (max-width: 575px) { 

	.ng-tab-content {
		margin-bottom: 80px;
	}

}

@media (max-width: 730px) { 
	
	.ng-page-title {
		font: Bold 24px/40px Calibri;
		/*font: Bold 24px/40px euclid circular b;*/
	}
	
	.ng-jumbotron {
		height: 400px;
	}

	.ng-nav-tabs .nav-item .ng-tab-label{
		display: none;
	}
	
	.ng-tab-header {
		display: none;
		display: block;
		padding: 10px 0px;
		color: #FFFFFF;
		width: 100%;
		background: #001871;
		text-align: center;
		font: Bold 18px/20px Calibri;
		/*font: Bold 18px/20px euclid circular b;*/
		margin-bottom: 10px;
	}
	
}

@media (max-width: 400px) { 

	.ng-nav-btn .ng-btn {
		width: auto;
	}
	
	.ng-page-title {
		font: Bold 22px/40px Calibri;
		/*font: Bold 22px/40px euclid circular b;*/
	}


}

@media (min-width: 730px) and  (max-width: 920px) { 

	.ng-nav-tabs .nav-item .ng-tab-label{
		width: 100%;
		display: block;
		margin: 0px;
		margin-top: 5px;
	}
	
	.ng-nav-tabs .ng-vr-line, .ng-nav-tabs .nav-item .ng-nav-link {
		height: 68px;
	}
	
	.ng-nav-tabs .nav-item .ng-nav-link {
		padding: 10px 0px;
		line-height: normal;		
	}

}

.pt-3-half { padding-top: 1.4rem; }
#CONTRACTGROUP_OIL_TABLE thead tr{
	background-color:#232660;
	color:white;
	text-align:center;
}

#SM_TABLE thead tr{
	background-color:#232660;
	color:white;
	text-align:center;
}

#BANKING_DETAILS_TABLE thead tr{
	background-color:#232660;
	color:white;
	text-align:center;
}

.contractgroup-table-wrapper {
		width: 100%;
		margin: 2px auto;
        background: #fff;
        padding: 5px;	
        box-shadow: 0 1px 1px rgba(0,0,0,.05);
}

.sm-table-wrapper {
		width: 100%;
		margin: 3px auto;
        background: #ff0;
        padding: 5px;	
        box-shadow: 0 1px 1px rgba(0,0,0,.05);
}
    
 .btn-add {
    background-color: transparent;
    border: none !important;
    color: #28a745;
}

.btn-add:visited {
    color: #28a745;
}

.btn-add:focus {
    color: #28a745 !important;
}
.btn-add:active {
    color: #28a745 !important;
}

  .btn-add:hover {
    color: #70ef2f !important;
    border: none !important;
}

 .btn-add-sm {
    background-color: transparent;
    border: none !important;
    color: #28a745;
}

.btn-add-sm:visited {
    color: #28a745;
}

.btn-add-sm:focus {
    color: #28a745 !important;
}
.btn-add-sm:active {
    color: #28a745 !important;
}

  .btn-add-sm:hover {
    color: #70ef2f !important;
    border: none !important;
}

.btn-add-owner-holding {
    background-color: transparent;
    border: none !important;
    color: #28a745;
}

.btn-add-owner-holding:visited {
    color: #28a745;
}

.btn-add-owner-holding:focus {
    color: #28a745 !important;
}
.btn-add-owner-holding:active {
    color: #28a745 !important;
}

  .btn-add-owner-holding:hover {
    color: #70ef2f !important;
    border: none !important;
}
 
  #CONTRACTGROUP_OIL_TABLE tbody td {
    padding: 0.2em;
}

#SM_TABLE tbody td {
    padding: 0.2em;
}

#BANKING_DETAILS_TABLE tbody td {
    padding: 0.2em;
}

.FixedHeightContainer {
    /* height: 200px;
    padding: 3px; */

}
.Content {
    /* height: 190px;
    overflow: auto; */
}


.table-input {
    width: 98%;
    padding: 0 !important;
    padding-left: 2px !important;
    margin-left: 2px;
    vertical-align: middle;
    border: none;
    /* text-align: center; */
}
#CONTRACTGROUP_OIL_TABLE tbody td {
    padding: 0 !important;
    margin: 0 !important;
}
#SM_TABLE tbody td {
    padding: 0 !important;
    margin: 0 !important;
}

#BANKING_DETAILS_TABLE tbody td {
    padding: 0 !important;
    margin: 0 !important;
}

.table-alert{
	color:red;
	padding-left:20px;
}

.duplicate td .table-input {
     border: 1px solid red;
}
.vsb-main{
	width:98%;
}
.hideColumn {
    display: none;
}

.dz-max-files-reached {
  pointer-events: none;
  cursor: default;
}

.is-invalid-own{
	border:1px solid red;
	pointer-events: auto;
}

/*
@font-face{
font-family:euclid circular b;
font-style:normal;
font-weight:normal;
src: url("../trafcustfonts/EuclidCircularB/EuclidCircularB-Regular-WebS.eot");
src: url("../trafcustfonts/EuclidCircularB/EuclidCircularB-Regular-WebS.woff") format("woff"),url("../trafcustfonts/EuclidCircularB/EuclidCircularB-Regular-WebS.otf") format("opentype"),url("../trafcustfonts/EuclidCircularB/EuclidCircularB-Regular-WebS.svg#EuclidCircularB-Regular-WebS") format("svg");
}

body{
	font-family: euclid circular b,sans-serif;
}
*/
#CP_REINFO_DIV .invalid-feedback {
    width: auto !important;	
}


.align-center{
	align-content:center;
}