.cost_calculator_wrapper {
    background-color: var(--quinary-color);
    color: var(--primary-color);
    padding: 60px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.section_header {
    text-align: center;
    margin-bottom: 40px;
}

/* The Calculator Card */
.cost_calculator_card {
    background-color: #ffffff;
    color: var(--primary-color);
    width: 100%;
    max-width: 800px;
    border-radius: 8px;
    padding: 40px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

/* Sliders */
.slider_group {
    margin-bottom: 30px;
}

.slider_group label {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}

.slider_value_badge {
    background-color: var(--tertiary-color);
    color: #fff;
    padding: 2px 10px;
    border-radius: 20px;
}

input[type='range'] {
    -webkit-appearance: none;
    width: 100%;
    background: transparent;
}

input[type='range']:focus {
    outline: none;
}

/* Webkit (Chrome, Safari, Edge) Range Styling */
input[type='range']::-webkit-slider-runnable-track {
    width: 100%;
    height: 8px;
    cursor: pointer;
    background: #e0e0e0;
    border-radius: 4px;
}

input[type='range']::-webkit-slider-thumb {
    height: 24px;
    width: 24px;
    border-radius: 50%;
    background: var(--tertiary-color);
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

/* Firefox Range Styling */
input[type='range']::-moz-range-track {
    width: 100%;
    height: 8px;
    cursor: pointer;
    background: #e0e0e0;
    border-radius: 4px;
}

input[type='range']::-moz-range-thumb {
    height: 24px;
    width: 24px;
    border-radius: 50%;
    background: var(--tertiary-color);
    cursor: pointer;
    border: none;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

/* Info Box */
.info_box {
    background-color: rgba(188, 208, 37, 0.15); /* light green tint */
    border-left: 4px solid var(--tertiary-color);
    padding: 15px 20px;
    margin-bottom: 30px;
    border-radius: 0 4px 4px 0;
    color: #444;
}

.info_box strong {
    color: var(--primary-color);
}

/* Results Area */
.results_area {
    border-top: 2px solid #eee;
    padding-top: 25px;
    margin-bottom: 30px;
}

.result_row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.result_row.total {
    font-weight: 700;
    color: var(--quaternary-color);
    margin-top: 20px;
    padding-top: 15px;
    border-top: 2px dashed #eee;
}

/* Red CTA Button matching the image */
.cta_button {
    display: block;
    width: 100%;
    background-color: var(--quaternary-color);
    color: white;
    text-align: center;
    padding: 15px;
    border: none;
    border-radius: 30px;
    font-weight: bold;
    text-transform: uppercase;
    cursor: pointer;
    transition: background-color 0.3s ease;
}
