html,
body {
  height: 100%;
  font-family: Avenir LT Pro, 'Helvetica Neue', sans-serif!important;letter-spacing: 0.3px;
  font-size: 15px;
}
body {
  margin: 0;
  height: 95%;
}

@font-face {
  font-family: Avenir LT Pro;
  src: url("../fonts/AvenirLTProRoman.otf") format("opentype");
}

h3{
  font-weight: bold;
  font-size: 22px;
}

.back-to-home-btn > a {
  color: #2b4690;
  text-decoration: underline;
  cursor: pointer;
  font-size: 12px;
}

.back-to-home-btn {
  text-align: right;
}

.IN-link{
	color: #003088;
	text-decoration: underline; 
	cursor: pointer;
}

.dark-grey-text{
  color: #7B6469;
}

/*----------------START - Desktop -------------------------*/
.desktop-view{
  height: 100%;
	color: #7B6469;
  min-height: 100%;
  min-width: 100%;
  width: 100%;
}

.desktop-view-flexlayout-css{
    flex-direction: row;
    box-sizing: border-box;
    display: flex;
    place-content: stretch flex-start;
    align-items: stretch;
}

.main-image-container-desktop{
  width: calc(100% - 600px)!important;
}

.router-outlet-container{
  width: 600px;
  height: 100%;
  overflow: auto;
  float: right;
  background-color: white;
}

@media screen and (min-width: 1025px) {
  .mobile-view{
	  display: none;
  }
}

.logo-ingroupe-container{
  width: 100%;
  text-align: center;
}

/*----------------END - Desktop -------------------------*/

/*----------------START - Mobile -------------------------*/

@media screen and (max-width: 1024px) {
  .desktop-view{
	  display: none!important;
  }
}

.mobile-router-outlet-container{
  width: calc(100% - 40px);
  margin: 20px;
  min-height: calc(100vh - 40px);
  background-color: white;
}

.mobile-view{
  min-height:100vh;
}

.logo-ingroupe-container-mobile{
  text-align: center;
}
/*----------------END - Mobile -------------------------*/

/*----------------START - Shared mobile and desktop ------------*/
.main-image-container{
      background: url("../img/HPT-background.webp") fixed;
			background-size: 100%;
			background-repeat: no-repeat;
			background-color: #000;
			min-height: 100vh;
			width: 100%;
}

.main-image-container-flexlayout{
      place-content: flex-start;
			align-items: flex-start;
			flex-direction: row;
			box-sizing: border-box;
			display: flex;
}

.router-outlet-content{
  padding: 25px;
}

.hpt-title{
  padding: 20px 20px 10px 20px; 
}

.hpt-subtitle{
	text-align: center;
    color: #003088;
    font-size: 12px;
    font-style: italic;
}

.hpt-additionnal-info{
	text-align: center;
    color: #003088;
    font-size: 14px;
	font-style: italic;

}
.hpt-additionnal-info>div{
	padding:5px 15px;
}

.hpt-title-flexlayout{
  flex-direction: column;
  box-sizing: border-box;
  display: flex;
  place-content: center;
  align-items: center;
}

.logo-hpt{
  height: 70px; padding: 15px;
}

.logo-ingroupe{
  height: 70px;
  margin: 10px;
}

.hpt-title-text{
  font-size: 24px;
  margin-bottom: 20px;
}

.divider{
  display: block;
	margin: 0;
	border-top-width: 1px;
	border-top-style: solid;
	margin: 5px 35px;
  margin-top: 35px;
  border-color: rgba(0, 0, 0, 0.12);
}

.forgot-password-link-container{
  margin-top: -10px;
  margin-bottom: 15px;
  font-size: 75%;
}

.separator{
	width:100%;
	padding:15px 0;
	align-items: center;
	display: flex;
	text-align: center;
}

.separator::before, .separator::after {
	content:'';
	flex : 1;
	border-bottom: 1px solid rgba(0,0,0,0.12);
}

.separator-word{
  text-transform: uppercase;
	width:35px;
	background-color: white;
}

.mesh-info{
	text-align:center;
	color: #003088;
    font-size: 14px;
	padding: 5px;
}

.mesh-choice-title {
	color: #003088;
	font-size: 18px;
	margin: 10px;
}

/*----------------END - Shared mobile and desktop ------------*/



.main-container {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

.button-container {
  position: relative;
  top: 2%;
  transform: translateY(-2%);
  margin-left: 10px;
}

.question-img {
  max-height: 30px;
  margin-right: 10px;
  margin-top: -20px;
}

label {
  font-family: AvenirNextLTPro-Demi;
  color: #95989a;
  font-size: 1.2em;
}

.mt-5 {
  margin-top: 5px;
}

.mt-10 {
  margin-top: 10px;
}

.mt-15 {
  margin-top: 15px;
}

.mt-25 {
  margin-top: 25px;
}

#kc-logo-wrapper {
  background-image: url("logo-groupe-in.svg");
  background-repeat: no-repeat;
  background-size: 130px 78px;
  height: 78px;
  width: 130px;
  z-index: 10;
  position: absolute;
  margin-left: -30px;
  margin-top: -10px;
}

#kc-header {
  padding-left: 0;
}

#kc-header-wrapper {
  font-size: 22px;
  color: #2b4690;
  font-weight: bold;
}

@media screen and (max-width: 1200px) {
  #kc-header-wrapper {
    font-size: 20px;
  }
}

@media screen and (max-width: 768px) {
  #kc-header-wrapper {
    font-size: 18px;
  }
}

#kc-container {
  margin-top: 20px;
  padding: 0 12px;
}

#kc-container-wrapper {
  background-color: white;
  padding: 2em 3em;
  border-radius: 5px;
  box-shadow: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14),
    0 1px 3px 0 rgba(0, 0, 0, 0.12);
}

input::placeholder,
select::placeholder,
textarea::placeholder {
  color: #7B6469!important;
}

.login-input {
  border: none;
  border-bottom: 0.5px solid #7B6469;
  border-radius: 0;
  height: 3em;
  box-shadow: none;
  color: #2b4690;
  width: 100%;
}

.login-input::placeholder {
  color: rgba(0, 0, 0, 0.54);
}

.login-input:focus {
  outline: none;
}

.kc-forgotten-password > a {
  color: #baa06d;
  font-size: 12px;
  text-decoration: underline;
  cursor: pointer;
}
.kc-link-registration > a {
  color: #2b4690;
  font-size: 12px;
  text-decoration: underline;
  cursor: pointer;
}
.kc-link-registration > a {
  color: #2b4690;
  font-size: 12px;
  text-decoration: underline;
  cursor: pointer;
}

.kc-link-registration {
  text-align: center;
  margin-top: 60px;
}

.kc-link-registration > a {
  cursor: pointer;
  text-decoration: underline;
  font-weight: 600;
}

.notDisplay {
  display: none;
}

.form-group {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0px 1000px white inset !important;
}

#kc-form-buttons input {
  background-color: #baa06d;
  border: 1px solid #baa06d;
  color: #f8f9fd;
  border-radius: 0.2em;
  transition: background-color 0.2s, box-shadow 0.2s;
}

#kc-form-buttons input:hover {
  background-color: #baa06d;
  border: 1px solid #baa06d;
  color: #f8f9fd;
}

#kc-form-buttons input:focus {
  outline: none;
}

.alert-error {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}

#kc-locale ul {
  display: none;
  position: absolute;
  background-color: #fff;
  list-style: none;
  right: 20px;
  top: 30px;
  width: 200px;
  padding: 2px;
}

#kc-locale:hover ul {
  display: none;
}

#kc-locale ul li a {
  display: none;
  padding: 1px 11px;
  color: #000 !important;
  border: 1px solid #fff;
  text-decoration: none;
  line-height: 20px;
}

#kc-locale ul li a:hover {
  display: none;
  color: #4d5258;
}

#kc-locale-dropdown a {
  display: none;
  color: #fff;
}

#kc-locale-dropdown a:hover {
  display: none;
  text-decoration: none;
}

a#kc-current-locale-link {
  display: block;
  padding: 5px;
}

a#kc-current-locale-link:hover {
  background-color: rgba(0, 0, 0, 0.2);
}

a#kc-current-locale-link::after {
  content: "\2c5";
  margin-left: 4px;
}


#kc-info-wrapper {
  font-size: 13px;
}

#kc-terms-text {
  margin-bottom: 20px;
}

#kc-registration {
  margin-bottom: 15px;
}

/* TOTP */

ol#kc-totp-settings {
  margin: 0;
  padding: 0;
}

ol#kc-totp-settings li {
  margin-top: 1em;
}

ol#kc-totp-settings li:first-of-type {
  margin-top: 0;
}

#kc-totp-secret-qr-code {
  max-width: 150px;
  max-height: 150px;
}

#kc-totp-secret-key {
  background-color: #fff;
  color: #333333;
  font-size: 16px;
  padding: 10px;
}

/* OAuth */

#kc-oauth h3 {
  margin-top: 0;
}

#kc-oauth ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#kc-oauth ul li {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 12px;
  padding: 10px 30px;
}

#kc-oauth ul li:first-of-type {
  border-top: 0;
}

#kc-oauth .kc-role {
  display: inline-block;
  width: 50%;
}

/* Code */
#kc-code textarea {
  width: 100%;
  height: 8em;
}

/* Header */
#kc-head-wrapper {
  background-image: url("header.png");
  background-repeat: no-repeat;
  background-size: 130px 78px;
}

.row {
  margin: 0;
}

.btn-primary {
  text-transform: uppercase;
  margin: 0;
  color: #2b4690;
  background-color: #f8f9fd;
  border: 1px solid #2b4690;
  font-size: 14px;
  transition: background-color 0.2s, box-shadow 0.2s;
  
}

.btn-secondary {
  text-transform: uppercase;
  background-color: #2b4690;
  border: 1px solid #2b4690;
  color: #f8f9fd;
  border-radius: 0.2em;
  transition: background-color 0.2s, box-shadow 0.2s;
}

.btn-secondary:hover {
  background-color: #baa06d;
  border: 1px solid #baa06d;
  color: #f8f9fd;
}

.btn-primary:hover {
  background-color: #f8f9fd;
  color: #baa06d;
  border: 1px solid #baa06d;
}

.btn-primary:focus {
  background-color: #f8f9fd;
  color: #baa06d;
  border: 1px solid #baa06d;
}

.btn-primary:active {
  background-color: #f8f9fd;
  color: #baa06d;
  border: 1px solid #baa06d;
}

.btn-primary:active:focus {
  background-color: #f8f9fd;
  color: #baa06d;
  border: 1px solid #baa06d;
}
