* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-size: calc(10px + 0.4rem);
}

@media (max-width: 768px) {
  * {
    font-size: calc(11px + 0.4rem);
  }
}
.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem rgba(21, 21, 32, 0.1254901961);
}

html {
  position: relative;
  min-height: 100dvh;
  font-size: calc(7px + 0.4rem);
}

body {
  background-color: #F7F4F0;
  font-size: 1.2rem;
}

footer {
  margin-bottom: 60px;
}
footer .container {
  font-size: 1.1rem;
}
footer .container a {
  font-size: 1.1rem;
}

.container:has(main) {
  min-height: 87dvh;
}

.container-space-between {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 0 3rem;
}

.abs-background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}

.h-25rem {
  height: 25rem;
}

.bg-img {
  object-fit: cover;
  object-position: center top;
  width: 100%;
  height: 100%;
}

.bg-hue-rotate {
  filter: hue-rotate(330deg);
}

.bg-blue {
  background-color: #6096BA;
}

.bg-yellow {
  background-color: #FFDD32;
}

.display-flex {
  display: flex;
}

.relative {
  position: relative;
}

.abs {
  position: absolute;
}

.hidden {
  display: none;
}

.full {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}

.small-shadow {
  box-shadow: rgba(21, 21, 32, 0.1254901961) 0 0.2rem 1.6rem;
}

.big-shadow {
  box-shadow: rgba(21, 21, 32, 0.1254901961) 0 0.5rem 2.2rem;
}

.huge-shadow {
  box-shadow: rgba(21, 21, 32, 0.3137254902) 0 0.5rem 2.2rem;
}

.border-radius {
  border-radius: 0.7rem;
}

.navbar-right {
  display: flex;
  justify-content: flex-end;
  gap: 2rem;
}

.navbar-brand {
  font-size: 1.8rem;
}

.nav-link {
  font-size: 1.3rem;
}

.admin-nav-link {
  width: 1.4rem;
  aspect-ratio: 1;
  cursor: pointer;
}
.admin-nav-link .icon {
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 100%;
  fill: #112D4E;
  transition: all 200ms ease-in 50ms;
}
.admin-nav-link:hover .icon {
  fill: #3F72AF;
}
.admin-nav-link .stroke-icon {
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 100%;
}
.admin-nav-link .stroke-icon path {
  stroke: #112D4E;
  stroke-width: 3.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.admin-nav-link:hover .stroke-icon path {
  stroke: #3F72AF;
}

.h-separator {
  width: 90%;
  height: 2px;
  border-radius: 1px;
  background-color: rgba(17, 45, 78, 0.4);
}

.v-separator {
  height: 90%;
  width: 2px;
  border-radius: 1px;
  background-color: rgba(17, 45, 78, 0.4);
}

button,
.button {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0.5rem;
  padding: 1rem 2rem;
  appearance: none;
  outline: none;
  text-decoration: none;
  font-size: 1.3rem;
  font-weight: 550;
  cursor: pointer;
  transition: all 200ms ease-in-out 50ms;
  height: fit-content;
  width: max-content;
}
button.blue,
.button.blue {
  background-color: #3F72AF;
  color: #F9F7F7;
  border: none;
}
button:hover:not(.disabled, button[disabled],
.button[disabled]),
.button:hover:not(.disabled, button[disabled],
.button[disabled]) {
  background-color: #6096BA;
  color: #112D4E;
}
button.green,
.button.green {
  background-color: #63C132;
  color: #112D4E;
  border: none;
}
button.green:hover:not(.disabled, button.green[disabled],
.button.green[disabled]),
.button.green:hover:not(.disabled, button.green[disabled],
.button.green[disabled]) {
  background-color: #3fA34D;
  color: #112D4E;
}
button.yellow,
.button.yellow {
  background-color: #FFDD32;
  color: #112D4E;
  border: none;
}
button.yellow:hover:not(.disabled, button.yellow[disabled],
.button.yellow[disabled]),
.button.yellow:hover:not(.disabled, button.yellow[disabled],
.button.yellow[disabled]) {
  background-color: #FBA834;
  color: #112D4E;
}
button.white,
.button.white {
  border: 2px solid #3F72AF;
  background-color: #F9F7F7;
  color: #3F72AF;
}
button.white:hover:not(.disabled, button.white[disabled],
.button.white[disabled]),
.button.white:hover:not(.disabled, button.white[disabled],
.button.white[disabled]) {
  background-color: #3F72AF;
  color: #F9F7F7;
}
button.red,
.button.red {
  background-color: #EF233C;
  color: #F9F7F7;
  border: none;
}
button.red:hover:not(.disabled, button.red[disabled],
.button.red[disabled]),
.button.red:hover:not(.disabled, button.red[disabled],
.button.red[disabled]) {
  background-color: #C71F37;
  color: #F9F7F7;
}
button.disabled, button[disabled],
.button.disabled,
.button[disabled] {
  background-color: #DBE2EF;
  color: #112D4E;
  border: 2px solid #3F72AF;
  cursor: not-allowed;
}
button.big-btn,
.button.big-btn {
  border-radius: 0.7rem;
  padding: 1.7rem 3.4rem;
  font-size: 2rem;
}

.alert {
  display: flex;
  justify-content: center;
  gap: 0.5ch;
  align-self: center;
  padding: 1.5rem 3rem;
  border: #FBA834 2px solid;
  border-radius: 0.5rem;
  background-color: #F7EFE6;
  color: #112D4E;
  font-size: 1.35rem;
}
.alert span {
  font-size: 1.35rem;
  color: #112D4E;
}

input:not([type=checkbox]):not([type=radio]),
.search-input {
  flex: 1;
  appearance: none;
  border: #6096BA 2px solid;
  background-color: #F9F7F7;
  outline: none;
  color: #112D4E;
  font-weight: 600;
  font-size: 1.2rem;
  min-height: 3.5rem;
  height: 100%;
  border-radius: 0.5rem;
  padding: 0 2rem;
}
input:not([type=checkbox]):not([type=radio]):focus,
.search-input:focus {
  outline: none;
  appearance: none;
  border: #FBA834 2px solid;
  background-color: #F9F7F7;
}

.policy-ctn {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 3rem 0;
  padding: 4rem;
  background-color: #F9F7F7;
  border-radius: 0.7rem;
  font-size: 1.3rem;
}
.policy-ctn .date {
  text-align: right;
  font-style: italic;
  font-size: 1.3rem;
  padding-bottom: 3rem;
}
.policy-ctn h2 {
  font-size: 1.75rem;
  font-weight: bold;
}
.policy-ctn h3 {
  font-size: 1.6rem;
  font-weight: bold;
}
.policy-ctn h4 {
  font-size: 1.45rem;
  font-weight: bold;
}
.policy-ctn p, .policy-ctn a, .policy-ctn li {
  font-size: 1.3rem;
}

.search-form {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 3rem 0;
}
.search-form .search-bar {
  width: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
}

@media screen and (max-width: 768px) {
  .search-bar {
    flex-direction: column;
  }
}
.user-list-ctn,
.search-results-ctn {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 5rem;
}
.user-list-ctn .user-results-header,
.user-list-ctn .search-results-header,
.search-results-ctn .user-results-header,
.search-results-ctn .search-results-header {
  width: 70vw;
  display: flex;
  justify-content: space-between;
  padding: 1rem 0;
}
.user-list-ctn .user-results-header .results-count,
.user-list-ctn .search-results-header .results-count,
.search-results-ctn .user-results-header .results-count,
.search-results-ctn .search-results-header .results-count {
  font-size: 1.5rem;
  color: rgba(17, 45, 78, 0.4);
}

.user-list,
.search-results-list {
  width: 70vw;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 1rem;
}

.contact-card {
  width: clamp(350px, 8vw + 15rem, 45rem);
}

.user-card,
.contact-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1.5rem;
  border-radius: 0.7rem;
  gap: 2rem;
  background-color: #F9F7F7;
}
.user-card .top-card,
.contact-card .top-card {
  display: flex;
  flex-direction: column;
  gap: 1.7rem;
}
.user-card .top-card .contact-name,
.contact-card .top-card .contact-name {
  min-height: 9rem;
  text-align: center;
  font-size: 2rem;
  font-weight: 600;
}
.user-card .bottom-card,
.contact-card .bottom-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.7rem;
}
.user-card .bottom-card .contact-actions,
.contact-card .bottom-card .contact-actions {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.7rem 0;
}

.user-admin-actions,
.contact-admin-actions {
  width: 100%;
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 0 0 0.7rem 0;
}
.user-admin-actions .admin-action-ctn,
.contact-admin-actions .admin-action-ctn {
  width: 1.5rem;
  aspect-ratio: 1;
}
.user-admin-actions .admin-action-ctn .icon,
.contact-admin-actions .admin-action-ctn .icon {
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 100%;
}
.user-admin-actions .admin-action-ctn .icon.red,
.contact-admin-actions .admin-action-ctn .icon.red {
  fill: #EF233C;
}
.user-admin-actions .admin-action-ctn .icon.green,
.contact-admin-actions .admin-action-ctn .icon.green {
  fill: #63C132;
}

.contact-element {
  display: flex;
  gap: 1.5rem;
}
.contact-element .icon {
  width: 1.7rem;
  fill: #FBA834;
}
.contact-element .contact-email-text {
  font-size: 1.2rem;
  font-weight: 600;
}
.contact-element .contact-phone-text {
  font-size: 1.2rem;
  font-weight: 600;
}
.contact-element .contact-country-text {
  font-size: 1.2rem;
  font-weight: 600;
}
.contact-element .contact-address-text {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.contact-element .contact-address-text .street {
  font-size: 1.2rem;
  font-weight: 600;
}
.contact-element .contact-address-text .zipcode-city {
  font-size: 1.2rem;
  font-weight: 600;
}

.contact-status {
  display: flex;
  gap: 1rem;
  padding: 0.4rem 0.8rem;
  border-radius: 0.7rem;
  width: fit-content;
}
.contact-status:has(.open) {
  background-color: rgba(63, 163, 77, 0.4);
}
.contact-status:has(.open) .icon {
  fill: #112D4E;
}
.contact-status:has(.closed) {
  background-color: rgba(199, 31, 55, 0.4);
}
.contact-status:has(.closed) .icon {
  fill: #112D4E;
}
.contact-status .icon {
  width: 1.7rem;
}
.contact-status .contact-status-text {
  font-size: 1.2rem;
}
.contact-status .contact-status-text.open {
  color: #112D4E;
}
.contact-status .contact-status-text.closed {
  color: #112D4E;
}

.delete-page-ctn,
.contact-page-ctn {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 3rem;
}
.delete-page-ctn .contact-info,
.contact-page-ctn .contact-info {
  width: 38%;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  padding: 2rem;
  gap: 1.5rem;
  border-radius: 0.7rem;
  background-color: #F9F7F7;
}
.delete-page-ctn .contact-working-hours,
.contact-page-ctn .contact-working-hours {
  width: 42%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2rem 2rem 2rem 4rem;
  gap: 1.5rem;
  border-radius: 0.7rem;
  background-color: #F9F7F7;
}
.delete-page-ctn .contact-working-hours .head-line,
.contact-page-ctn .contact-working-hours .head-line {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.delete-page-ctn .contact-working-hours .head-line .title-text,
.contact-page-ctn .contact-working-hours .head-line .title-text {
  flex: 1;
  font-size: 1.2rem;
  font-weight: 600;
  color: #112D4E;
}
.delete-page-ctn .contact-working-hours .day-line,
.contact-page-ctn .contact-working-hours .day-line {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.delete-page-ctn .contact-working-hours .day-line .text-line,
.contact-page-ctn .contact-working-hours .day-line .text-line {
  flex: 1;
  font-size: 1.2rem;
  color: #112D4E;
}
.delete-page-ctn .contact-working-hours .day-line .closed-line,
.contact-page-ctn .contact-working-hours .day-line .closed-line {
  flex: 2;
  font-size: 1.2rem;
  color: #C71F37;
}

.contact-form-ctn {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5rem;
  padding: 3rem;
  border-radius: 0.7rem;
  background-color: #F9F7F7;
}
@media screen and (max-width: 1280px) {
  .contact-form-ctn {
    flex-direction: column;
  }
}
.contact-form-ctn .contact-form-working-hours-ctn {
  flex: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
  padding: 1.5rem;
}
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .header-form-container,
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .working-hour {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .header-form-container label,
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .header-form-container .header-label,
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .working-hour label,
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .working-hour .header-label {
  font-weight: bold;
  font-size: 1.4rem;
}
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .header-form-container .header-label,
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .header-form-container label, .contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .header-form-container input,
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .working-hour .header-label,
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .working-hour label,
.contact-form-ctn .contact-form-working-hours-ctn .working-hours-container .working-hour input {
  flex: 1;
}

.user-form,
.contact-form-generic-ctn {
  flex: 4;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  padding: 1.5rem;
}

.user-form {
  background-color: #F9F7F7;
  border-radius: 0.7rem;
  padding: 5rem;
}

.form-line {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
}
.form-line .user-form-label,
.form-line .contact-form-label {
  min-width: 10ch;
  font-weight: bold;
  font-size: 1.4rem;
}

.user-form-buttons,
.contact-form-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4rem;
  padding: 1rem 0 3rem 0;
}

.login-form {
  width: clamp(250px, 40%, 600px);
  margin: 2rem auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}

.dashboard-ctn {
  margin: 2rem auto;
  width: 80%;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .dashboard-ctn {
    width: 100%;
    padding: 4rem;
    flex-direction: column;
    gap: 5rem;
  }
}
.dashboard-ctn .dashboard-actions-ctn {
  width: clamp(250px, 45%, 600px);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
}

.user-info-ctn,
.dashboard-info-ctn {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  padding: 2rem 4rem;
  border-radius: 0.7rem;
  background-color: #F9F7F7;
}
.user-info-ctn .info,
.user-info-ctn .labels,
.dashboard-info-ctn .info,
.dashboard-info-ctn .labels {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.user-info-ctn .info .label-text,
.user-info-ctn .info .info-text,
.user-info-ctn .labels .label-text,
.user-info-ctn .labels .info-text,
.dashboard-info-ctn .info .label-text,
.dashboard-info-ctn .info .info-text,
.dashboard-info-ctn .labels .label-text,
.dashboard-info-ctn .labels .info-text {
  font-size: 1.2rem;
  color: #112D4E;
}
.user-info-ctn .info .label-text,
.user-info-ctn .labels .label-text,
.dashboard-info-ctn .info .label-text,
.dashboard-info-ctn .labels .label-text {
  font-weight: 600;
}

.user-card {
  width: clamp(350px, 15vw + 20rem, 60rem);
}

/*# sourceMappingURL=style.css.map */
