*,
*:after,
*:before {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  margin: 0;
}
main {
  flex: 1 0 auto;
}
header,
footer {
  flex-shrink: 0;
}

select:user-valid,
input:user-valid {
  outline-color: green !important;
  border-color: green !important;
}

select:user-invalid,
input:user-invalid {
  outline-color: red !important;
  border-color: red !important;
  background-color: rgb(255, 0, 0, 0.1) !important;
}

.form-floating > label.notes {
  font-size: 0.85em;
}

#res:hover {
  background-color: #fde16d !important;
  color: black !important;
  cursor: pointer;
}

#res a:hover {
  color: black !important;
}

#res a {
  text-decoration: none;
}

#country::placeholder {
  color: black;
  opacity: 1;
}

#search::-ms-input-placeholder,
#country::-ms-input-placeholder {
  /* Edge 12 -18 */
  color: black;
}

#results-country {
  position: absolute;
  /* width: clamp(150px, 15rem, 350px); */
  width: 100%;
  height: 100px;
  background-color: hsla(210 15.8% 89% / 0.9);
  padding: 3px !important;
  overflow: auto;
  z-index: 10;
}

.gri {
  background-color: #e9ecef !important;
}

/*dezactiveaza afisarea numelui limbii selectate */
a.notranslate span:first-of-type {
  display: none !important;
}

.btn-primary:hover {
  background-color: #00439b !important;
  transition: all 500ms;
  scale: 110%;
}

.btn-secondary:hover {
  scale: 110%;
  transition: all 500ms;
  background-color: #4f5153 !important;
}

/*      formatare nr telefon       */
.iti {
  width: 100% !important;
  top: -30px;
  left: -10px;
}
.iti__country-container {
  margin-left: 0.5rem !important;
}
#phone {
  margin-left: 9px !important;
}
#phone_label {
  position: relative;
  z-index: 2;
  left: 5px;
  font-size: 0.8rem;
}
/* ---------------------------------------- */

/*CSP*/
#rezmenu {
  position: fixed;
  top: 0px;
  left: 0px;
  right: 0;
  height: 100vh;
  background-image:
    linear-gradient(rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.5)),
    url("../images/rentacar.jpeg");
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  overflow: hidden;
}
#rezmenu > div:first-child {
  max-width: 550px;
  width: 100%;
  margin-top: -10rem;
}

/* nav + footer */
nav {
  background-color: hsla(210 15.8% 89% / 0.9);
}
nav > div > * {
  opacity: 1;
}
footer {
  bottom: 0;
  width: -moz-available;
  width: -webkit-fill-available;
  background-color: hsla(210 15.8% 89% / 1);
}
.footer-child {
  max-width: 49%;
}

/*rez noua */

#section {
  max-width: 800px;
}

#search-container-country {
  position: relative;
  display: none;
}
#optiuni_suplimentare > * {
  flex-basis: 32%;
}
#plati {
  background-color: #f4f4f4;
}
#plati > div > span {
  font-size: 1.3em;
  height: auto;
  vertical-align: middle;
}
.text-lg-center > img {
  max-width: 100%;
  width: 20rem;
}
textarea {
  height: 100px !important;
}
#payment_type {
  max-width: 300px;
}

/*country select2*/
.select2-container--default .select2-selection--single {
  height: calc(3.5rem + 2px);
  padding: 0.625rem 0.75rem;
  font-size: 1rem;
  border: 1px solid #ced4da;
  border-radius: 0.375rem;
}
.select2-container--default .select2-selection--single:focus {
  background-color: whitesmoke;
  border: 1px solid #aaa;
}
.select2-selection__placeholder {
  position: absolute;
  top: 30%;
}
.select2-dropdown {
  background-color: whitesmoke;
}
.select2-container {
  width: 100% !important;
  margin-top: -3px;
}
.select2-selection__rendered {
  top: 7px;
  left: -8px;
  position: relative;
}

#country_label {
  top: -7px;
}
#tara + div {
  height: 60px;
}
/*end country select2*/

.form-floating:hover > *:not(.gri):not(.input-group-text):not(.form-label),
.telefon:hover,
.form-check:hover,
.form-check-label:hover,
.form-check-input:hover {
  transform: translateY(-2px);
  transition: transform 0.35s ease-in-out;
}
.gri {
  pointer-events: none;
  cursor: default;
}
.telefon:hover,
.form-select:hover,
.form-check:hover,
.form-check-label:hover,
.form-check-input:hover {
  cursor: pointer !important;
}
.input-group-text {
  align-items: end;
  padding-bottom: 8px;
}
