﻿/* Move down content because we have a fixed navbar that is 50px tall */
body {
    padding-bottom: 20px;
    padding-left: 50px;
    padding-right: 50px;
}

/* Wrapping element */
/* Set some basic padding to keep content from hitting the edges */
.body-content {
    padding-left: 15px;
    padding-right: 15px;
}

/* Set widths on the form inputs since otherwise they're 100% wide */
.navbar-fixed-top {
    background-color: #ffffff !important; /* Ensure solid white background */
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1); /* Optional shadow for better visibility */
    height: 130px; /* Adjust height to fit the content properly */
    z-index: 1030; /* Ensure it's above all content */
}

.navbar .container {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-top:10px;
}

.navbar img {
    height: 80px; /* Adjust to match the second image */
}

.navbar div span {
    color: #0175ca; /* Use the exact blue color */
    display: block;
    line-height: 1;
}

.jumbtron-override p {
    font-weight:normal;
    margin: 0;
}
.jumbtron-override {
    background-color: #efefef;
    padding-bottom: 30px;
}

.control-label{
    font-weight: bold;
}

td.control-label {
    background-color: ivory;
    width:15%;
}
input[type="text"],
input[type="date"],
input[type="email"],
textarea{
    background-color: aliceblue !important;
    width:100% !important;
}

input[type="checkbox"] {
    margin-top: 3px !important;
}

input[type="checkbox"].extra-large {
    width: 20px;
    height: 20px;
}

.bg-control {
    background-color: aliceblue !important;
}

.no-wrap {
    white-space: nowrap;
}


.form-button {
    background: linear-gradient(to right, #0175ca 85%, #222 15%);
    color: white;
    font-weight: bold;
    border: none;
    padding: 14px 105px;
    cursor: pointer;
    width: 300px;
    text-align: center;
    position: relative;
    display: flex;
}

    .form-button::after {
        content: ">";
        right: 10px;
        padding-left:120px;
        color:white;
    }

    .form-button:hover {
        opacity: 0.9;
    }

    .form-button:hover,
    .form-button:focus,
    .form-button:active,
    .form-button:visited {
        text-decoration: none !important; /* Ensures no underline appears */
        outline: none !important; /* Removes focus outline */
        box-shadow: none !important; /* Removes browser-specific focus effects */
        color: white !important; /* Ensures text color remains unchanged */
    }


.custom-button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #0175ca;
    color: white;
    text-decoration: none;
    font-weight: bold;
    width: 300px;
    border: none;
	margin: 3px;
}
    .custom-button .button-content {
        flex: 1; /* Takes up all available space */
        text-align: center; /* Ensures text is centered */
    }

    .custom-button .arrow {
        background-color: #000;
        padding: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 40px;
    }

        .custom-button .arrow::after {
            content: ">"; /* Right arrow symbol */
            font-size: 16px;
            color: white;
            font-weight: bold;
        }

    .custom-button .backarrow {
        background-color: #000;
        padding: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 40px;
    }

        .custom-button .backarrow::after {
            content: "<"; /* Left arrow symbol */
            font-size: 16px;
            color: white;
            font-weight: bold;
        }

    .custom-button:hover {
        background-color: #0056b3;
    }

    .custom-button .arrow:hover {
        background-color: #333;
    }

    .custom-button:hover,
    .custom-button:focus,
    .custom-button:active,
    .custom-button:visited {
        text-decoration: none !important; /* Ensures no underline appears */
        outline: none !important; /* Removes focus outline */
        box-shadow: none !important; /* Removes browser-specific focus effects */
        color: white !important; /* Ensures text color remains unchanged */
    }


.footer {
    display: flex;
    background-color: #fff;
    color: #000;
    padding: 15px;
    margin-top: 100px;
    text-align: center;
    padding-bottom: 100px;
    align-items: center;
    justify-content: center;
}

.section-header {
    background-color: #0175ca;
    color: white;
    padding: 5px;
    text-align: center;
    font-size: 20px;
}

.form-inline label{
    padding-right: 15px;
}

.radio-group {
    display: flex;
    flex-wrap: wrap;
    gap: 5px; /* Adds space between radio buttons */
}

    .radio-group input[type="radio"] {
        margin-right: 5px;
    }

.custom-label {
    font-weight: bold;
}


.header-wrap {
    width: 100%;
    height: 85px;
}

.header-logo-wrap {
    float: left;
    padding: 10px 10px 0px 0px;
    max-width: 100px;
}

.header-middle-container {
    float: left;
    padding: 30px 0;
    max-width: 520px;
    gap:8px;
}

.header-middle {
    border-left: #999 1px solid;
    padding: 0 10px;
    color: #0175ca;
    font-weight: 500;
    font-size: 30px;
}

.checkbox-container {
    display: flex;
    align-items: start; /* Aligns checkbox and text */
}

    .checkbox-container input {
        margin-top: 3px !important; /* Adjusts checkbox position */
        flex-shrink: 0; /* Prevents checkbox from resizing */
    }
        .checkbox-container input[type="checkbox"] {
            margin-right: 5px;
        }

.requiredlabel {
    color: red;
    font-size: large;
    vertical-align: -webkit-baseline-middle;
    padding-left:5px;
}

.custom-spacing{
    margin-bottom: 10px;
}


.circle-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 60%;
    border: 2px solid #fff;
    color: #fff;
    font-size: 15px;
    text-align: center;
}

/* Main container */
.step-container {
    display: flex;
    flex-wrap: wrap; /* Allow wrapping */
    justify-content: center; /* Center align items */
    margin: 20px auto;
}

.step {
    flex-grow: 1;
    position: relative;
    text-align: center;
}

    /* Arrow shape using pseudo-elements */
    .step div {
        background-color: #ccc;
        color: #fff;
        padding: 10px 20px;
        position: relative;
        display: inline-block;
        width: 100%;
        box-sizing: border-box;
    }

        .step div::after {
            content: "";
            position: absolute;
            top: 0;
            right: -15px;
            width: 0;
            height: 0;
            border-top: 20px solid transparent;
            border-bottom: 20px solid transparent;
            border-left: 15px solid #ccc;
            z-index: 1;
        }

    /* Hide arrow for the last step */
    .step:last-child div::after {
        display: none;
    }

    /* Active step styling */
    .step.active div {
        background-color: #007bff;
    }

        .step.active div::after {
            border-left-color: #007bff;
        }

/* Content box styles */
.content {
    display: none;
    padding: 20px;
    border: 1px solid #ddd;
    margin-top: 20px;
    width: 90%;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
}

    .content.active {
        display: block;
    }



@media only screen and (max-width:767px) {
    /*style for mobile*/
    .radio-group {
        flex-direction: column; /* Stacks radio buttons in rows */
    }
        .radio-group input[type="radio"] {
            margin-right: 5px;
        }

    .group-label label {
        display: inline;
        max-width: none;
        margin-bottom: 0;
        vertical-align: baseline;
        line-height: 1.4;
    }

        .group-label input[type="radio"] {
            margin-right: 8px;
            margin-top: 3px;
            vertical-align: top;
        }

    body {
        padding-left: 15px;
        padding-right: 15px;
    }
}



/* Responsive: Portrait tablets and up */
@media only screen and (min-width: 768px) {
    body {
        padding-left: 25px;
        padding-right: 25px;
    }
}
