/* Apply a background color to the body to match your theme */
body {
    background-color: #2a6465;
}

/* Style for the card that holds the form */
.card {
    background-color: #66c8c9; /* Set the background color for the whole card */
    height: 85vh; /* 85% of the viewport height */
    overflow-y: auto; /* Add scroll if content is taller than the card */
    color: #2a6464; /* Main text color */
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2); /* Add a subtle drop shadow */
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
}

/* Style for the card body */
.card-body {
    height: 100%; /* Ensure the card body takes up the full height of the card */
}

.row {
    height: 100%; /* This will stretch the row to take the full height of the card-body */
    margin: 0; /* Override default row margin if necessary */
}

.fs-6 {
    font-size: 0.75em !important;
}

.alert {
    margin-top:10px;
}

/* Style for the registration form column */
.registration-form-column {
    background-color: #ffffff; /* Specific background color for the form column */
    padding-left:20px;
    padding-top:20px;
    /* Additional styling specific to the registration form column */
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Poppins', sans-serif;
    font-weight: 900;
}

datalist {
    width: 100%; /* This might not be respected by all browsers */
}

/* Style for the step indicator column */
.step-indicator-column {
    background-color: #66c8c9; /* Specific background color for the steps column */
    padding-left:20px;
    padding-top:20px;
    /* Additional styling specific to the step indicator column */
}

/* Ensure full height for both columns */
.step-indicator-column, .registration-form-column {
    height: 100%; /* Ensure they take the full height */
}

.step-indicator-link {
  text-decoration: none; /* Removes the underline */
  color: inherit; /* Inherits the text color from parent */
}

/* Style for the left column indicators */

.step-indicator {
    display: flex;
    align-items: center;
    margin-bottom: 20px; /* Increase space between steps */
    opacity: 0.5; /* Default opacity for inactive steps */
    cursor: default; /* Default cursor for inactive steps */
}

.step-number {
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 50%;
    margin-right: 10px;
    border: 2px solid white;
    font-family: 'Poppins', sans-serif;
    font-weight: 400; /* Use 400 weight for regular text, change as needed */
    background-color: #2a6465;
    color: white;
}

.step-title {
    color: white; /* Set step title to white */
    font-size: 1rem; /* default font size */
}

/*.step-indicator.completed .step-number {
    background-color: #66cbc9;
    color: #2a6465;
}*/

.step-indicator.active .step-number {
    background-color: #d6fe5e;
    color: #2a6465;
}

.step-indicator.active .step-title {
    font-size: 1.1rem; /* slightly bigger */
    font-weight: bold; /* bolder */
}

.step-indicator.accessible {
    opacity: 1; /* Full opacity for active and accessible steps */
    cursor: pointer; /* Pointer cursor for accessible steps */
}

/* Style for sub-headers using weight 700 */
.sub-header {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
}

.wizard-step {
    display: none; /* Hide all steps by default */
    flex-direction: column; /* Stack the content and the navigation */
    padding: 20px;
    height: 100%; /* Make sure the wizard step takes full height */
}

.active-step {
    display: flex; /* Use flexbox to display the active step */
}


/* To ensure the "Previous" button is hidden on the first step */
.wizard-step:first-child .btn-previous {
    display: none;
}

.step-header {
    text-align: left;
    font-weight: 900; /* Assuming 'Poppins' font is being used */
}

.sub-header {
    font-weight: 700; /* Assuming 'Poppins' font is being used */
}


.form-control-underline {
    border: none;
    border-bottom: 1px solid #ddd; /* Adjust color as needed */
    border-radius: 0;
    width: 60%;
}

.form-control-underline:focus {
    outline: none;
    box-shadow: none;
    border-color: #2a6465; /* Your desired color for the underline on focus */
}

/* Updated styles for the verification code input */
#verificationCode {
    border: none;
    border-bottom: 1px solid #ddd;
    width: 200px; /* Adjust the width to accommodate 6 characters */
    padding: 5px 10px; /* Add padding horizontally and vertically for spacing */
    font-size: 18px; /* Adjust the font size as needed */
    letter-spacing: 10px; /* Add letter spacing to separate digits */
}

#verificationCode:focus {
    outline: none;
    box-shadow: none;
    border-color: #2a6465;
}
/* Style for the buttons */
.btn {
    padding: 10px 30px;
    color: white;
    background-color: #2a6465;
    border: none;
    border-radius: 5px;
    cursor: pointer; /* Add a pointer cursor to indicate interactivity */

    /* Add transition for a smooth hover effect */
    transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}

/* Style for the buttons on hover */
.btn:hover {
    background-color: #007f80; /* Change to the desired hover color */
    color: white;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2); /* Add a subtle shadow on hover */
}

/* Style for the buttons on focus */
.btn:focus {
    outline: none;
    box-shadow: none;
    border-color: transparent; /* Remove the button border on focus */
}

/* Style for the previous button to keep it hidden initially */
.btn-previous {
    display: none;
}

.icon-button {
  border: none;
  background: none;
  cursor: pointer;
  padding: 5px;
  margin-right: 5px;
  float: left;
}

.icon-button i {
  color: #333; /* Icon Color */
  font-size: 16px; /* Icon Size */
}

.icon-button:hover i {
  color: #007bff; /* Icon Hover Color */
}

.director-name {
  margin-left: 30px; /* Adjust based on icon size */
}

.input-wrapper {
    display: block;
}

.input-wrapper .form-control {
    display: inline-block; /* Adjust as needed */
    vertical-align: middle; /* Align with suffix */
}

.input-wrapper .suffix {
    display: inline-block; /* Display in-line with input */
    vertical-align: middle; /* Align with input */
    margin-left: 5px; /* Space between input and suffix */
}

.valid-email {
    border-color: green;
}

.invalid-email {
    border-color: red;
}

.popover-icon {
    color: darkslategray; /* Bootstrap primary color */
    cursor: pointer;
}

.popover-icon:hover {
    text-decoration: none; /* Optional: Removes underline on hover */
}

.popover-header {
    font-weight: normal; /* Overrides the default bold styling */
    color: darkslategray;
}

.service-option {
    margin-bottom: 20px;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.service-option input[type="checkbox"], .service-option input[type="number"] {
    margin-right: 10px;
}

.service-option label {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.price {
    white-space: nowrap; /* Ensures the price does not break into multiple lines */
    margin-left: auto; /* Pushes the price to the right */
    color: #888;
}

.service-option p {
    margin-top: 5px; /* Adds space between the label and description */
    font-size: 0.9rem;
    color: #666;
}

input[type="number"] {
    width: 80px; /* Adjust width of number input */
}
