@charset "UTF-8";
/* CSS Document */
body {
            background-color: #ffffff; /* was #f8f9fa */
        }

        .configurator-container {
            /*  min-height: 100vh; */
            padding-top: 1.5rem;
            padding-bottom: 0; /* was 1.5rem */
        }

        .configurator-card {
            background-color: #ffffff;
            /* border-radius: .75rem;
            box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.08); */
            padding: 1.5rem;
        }

        .config-image-wrapper {
            position: relative;
            width: 100%;
            border-radius: .75rem;
            overflow: hidden;
            background-color: #ffffff;
        }

        .config-image-wrapper img.base-layer {
            display: block;
            width: 100%;
            height: auto;
        }

        .config-image-wrapper img.overlay-layer {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: auto;
            pointer-events: none;
        }

        .option-card {
            cursor: pointer;
            border-radius: .5rem;
            border: 2px solid #3f4f22;
            background-color: #f1f3f5;
            padding: .25rem;
            transition: all 0.15s ease-in-out;
            opacity: 0.6;
        }

        .option-card:hover {
            opacity: 0.9;
        }

        .option-card.selected {
            opacity: 1;
            background-color: #ffffff;
            border-color: #3f4f22 !important;
            box-shadow: 0 0 0 .15rem rgba(63,79,34,0.35) !important;
        }

        .option-thumbnail {
            max-width: 100px;
            border-radius: .35rem;
            overflow: hidden;
        }

        .step-title {
            font-weight: 600;
            font-size: 1.05rem;
        }

        .step-subtitle {
            font-size: .9rem;
            color: #6c757d;
        }

        .total-price-label {
            font-weight: 600;
        }

        .total-price-value {
            font-size: 1.2rem;
            font-weight: 700;
        }

        .badge-step {
            font-size: .8rem;
        }

        .steps-nav-bar {
            background-color: #3f4f22;
            border-radius: .5rem;
            padding-top: 1rem;
            padding-bottom: 1rem;
        }

        .steps-nav-wrapper {
            overflow-x: auto;
            white-space: nowrap;
            background: transparent !important;
        }

        .nav-chevron {
            font-size: 1.6rem;
            cursor: pointer;
            user-select: none;
            color: #ffffff;
            display: none;
        }

        .steps-nav-btn {
            margin-right: .25rem;
            margin-bottom: 0;
            background-color: #cba12b !important;
            color: #ffffff !important;
            border: 2px solid #ffffff !important;
            padding-top: .25rem;
            padding-bottom: .25rem;
        }

        .steps-nav-btn:hover {
            background-color: #b08f25 !important;
            color: #ffffff !important;
        }

        .steps-nav-btn.current {
            border-color: #0d6efd;
            background-color: #e7f1ff;
        }

        .steps-nav-btn.completed {
            border-style: solid;
            border-width: 2px;
            border-color: #0d6efd;
        }

        @media (max-width: 767.98px) {
            .configurator-card {
                padding: 1.25rem;
            }
        }
    .badge-step {
    background-color: #3f4f22 !important;
    color: #ffffff !important;
}
#nextStepBtn {
    background-color: #3f4f22 !important;
    border-color: #3f4f22 !important;
}

        .cart-heading {
            font-family: 'Alfa Slab One', serif;
            color: #3f4f22;
            font-size: 2.5rem;
        }

        .step-title,
        .badge-step,
        .option-card .fw-semibold,
        #nextStepBtn {
            font-family: 'Roboto Slab', serif;
        }

        .total-price-label,
        .total-price-value {
            font-family: 'Roboto Slab', serif;
        }

        .step-subtitle,
        .option-card .small.text-muted {
            font-family: 'PT Serif', serif;
        }

        .summary-heading {
            font-family: 'Alfa Slab One', serif;
            color: #3f4f22;
        }

        #summaryTable thead th,
        #summaryTable tfoot th {
            font-family: 'Roboto Slab', serif;
        }

        #summaryTable tbody td {
            font-family: 'PT Serif', serif;
        }

        #summaryTable.table-striped > tbody > tr:nth-of-type(odd) {
            background-color: #e8f1d8;
        }

        .btn, 
        .btn-outline-secondary {
            font-family: 'Roboto Slab', serif !important;
        }

        label {
            font-family: 'PT Serif', serif;
        }

        input[type="text"], input[type="email"] {
            font-family: 'PT Serif', serif;
        }

        #emailSummaryForm button {
            background-color: #3f4f22 !important;
            border-color: #3f4f22 !important;
        }

        .configurator-container a.text-decoration-none {
            color: #3f4f22 !important;
            font-family: 'Roboto Slab', serif;
        }

        @media print {
            .no-print {
                display: none !important;
            }
        }
