        @import url('https://fonts.googleapis.com/css2?family=Merriweather:wght@300;400;700&family=Open+Sans:wght@300;400;600;700&display=swap');

        body {
            font-family: 'Open Sans', sans-serif;
        }

        h1, h2, h3, h4, h5, h6 {
            font-family: 'Merriweather', serif;
        }

        .nav-link {
            position: relative;
            transition: color 0.3s ease;
        }

        .nav-link::after {
            content: '';
            position: absolute;
            width: 0;
            height: 2px;
            bottom: -4px;
            left: 0;
            background-color: #8B5A2B;
            transition: width 0.3s ease;
        }

        .nav-link:hover::after {
            width: 100%;
        }

        .btn-primary {
            background-color: #2D4F1E;
            transition: all 0.3s ease;
        }

        .btn-primary:hover {
            background-color: #1f3614;
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(45, 79, 30, 0.3);
        }

        .form-section {
            background: white;
            border-radius: 12px;
            padding: 2rem;
            margin-bottom: 2rem;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
            transition: box-shadow 0.3s ease;
        }

        .form-section:hover {
            box-shadow: 0 8px 12px rgba(0, 0, 0, 0.15);
        }

        .form-input {
            transition: all 0.3s ease;
        }

        .form-input:focus {
            transform: translateY(-2px);
            box-shadow: 0 4px 8px rgba(45, 79, 30, 0.1);
        }

        .checkbox-custom {
            appearance: none;
            width: 1.25rem;
            height: 1.25rem;
            border: 2px solid #d1d5db;
            border-radius: 0.25rem;
            background-color: white;
            cursor: pointer;
            position: relative;
            transition: all 0.2s ease;
        }

        .checkbox-custom:checked {
            background-color: #2D4F1E;
            border-color: #2D4F1E;
        }

        .checkbox-custom:checked::after {
            content: '';
            position: absolute;
            left: 5px;
            top: 2px;
            width: 5px;
            height: 10px;
            border: solid white;
            border-width: 0 2px 2px 0;
            transform: rotate(45deg);
        }

        .radio-custom {
            appearance: none;
            width: 1.25rem;
            height: 1.25rem;
            border: 2px solid #d1d5db;
            border-radius: 50%;
            background-color: white;
            cursor: pointer;
            position: relative;
            transition: all 0.2s ease;
        }

        .radio-custom:checked {
            border-color: #2D4F1E;
        }

        .radio-custom:checked::after {
            content: '';
            position: absolute;
            left: 3px;
            top: 3px;
            width: 10px;
            height: 10px;
            border-radius: 50%;
            background-color: #2D4F1E;
        }

        .step-indicator {
            display: flex;
            align-items: center;
            margin-bottom: 3rem;
        }

        .step {
            flex: 1;
            text-align: center;
            position: relative;
        }

        .step-number {
            width: 3rem;
            height: 3rem;
            border-radius: 50%;
            background-color: #e5e7eb;
            color: #6b7280;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 0.5rem;
            font-weight: bold;
            font-size: 1.25rem;
            transition: all 0.3s ease;
        }

        .step.active .step-number {
            background-color: #2D4F1E;
            color: white;
            box-shadow: 0 4px 12px rgba(45, 79, 30, 0.3);
        }

        .step.completed .step-number {
            background-color: #8B5A2B;
            color: white;
        }

        .step-line {
            position: absolute;
            top: 1.5rem;
            left: 50%;
            width: 100%;
            height: 2px;
            background-color: #e5e7eb;
            z-index: -1;
        }

        .step:last-child .step-line {
            display: none;
        }

        .step.completed .step-line {
            background-color: #8B5A2B;
        }

        .price-card {
            border: 2px solid #e5e7eb;
            border-radius: 12px;
            padding: 1.5rem;
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .price-card:hover {
            border-color: #8B5A2B;
            transform: translateY(-4px);
            box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
        }

        .price-card.selected {
            border-color: #2D4F1E;
            background-color: #f0f4ed;
            box-shadow: 0 4px 12px rgba(45, 79, 30, 0.2);
        }
    