* {
    font-family: "Archivo", sans-serif;
     margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            background-color: #100B00;
            color: white;
            height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }

        /* ── Steps container ── */
        .form-container {
            width: 100%;
            max-width: 500px;
            padding: 2rem;
            position: relative;
        }

        .step {
            display: none;
            flex-direction: column;
            gap: 2rem;
            animation: fadeIn 0.4s ease;
        }

        .step.active {
            display: flex;
            gap: .5rem;
        }

        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(12px); }
            to   { opacity: 1; transform: translateY(0); }
        }

        /* ── Typography ── */
        .step h2 {
            font-size: 3rem;
            font-weight: 500;
            line-height: 1.25;
        }

        .step h2 .highlight {
            color: #EDF060;
        }

        /* ── Input & textarea shared ── */
        .input-wrapper {
            position: relative;
        }

        .input-wrapper input,
        .input-wrapper textarea {
            width: 100%;
            background: transparent;
            border: none;
            border-bottom: 2px solid #9C9C9C;
            color: white;
            font-size: 1rem;
            padding: 0.6rem 0;
            outline: none;
            font-family: "Google Sans", sans-serif;
            transition: border-color 0.3s ease;
        }

        .input-wrapper input::placeholder,
        .input-wrapper textarea::placeholder {
            color: #9C9C9C;
        }

        .input-wrapper input:focus,
        .input-wrapper textarea:focus {
            border-bottom-color: #EDF060;
        }

        .input-wrapper textarea {
            resize: vertical;
            min-height: 100px;
        }

        /* ── Select / Dropdown ── */
        .input-wrapper select {
            width: 100%;
            background: transparent;
            border: none;
            border-bottom: 2px solid ;
            color: white;
            font-size: 1rem;
            padding: 0.6rem 0;
            outline: none;
            font-family: "Google Sans", sans-serif;
            cursor: pointer;
            appearance: none;
            -webkit-appearance: none;
            transition: border-color 0.3s ease;
        }

        .input-wrapper select:focus {
            border-bottom-color: #EDF060;
        }

        .input-wrapper select option {
            background: #100B00;
            padding: 2rem;
            color: white;
        }

        /* Arrow indicator for select */
        .select-wrapper {
            position: relative;
        }

        .select-wrapper::after {
            content: "▾";
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            color: #9C9C9C;
            font-size: 1.2rem;
            pointer-events: none;
        }

        /* ── Privacy text ── */
        .privacy {
            color: #9C9C9C;
            font-size: .9rem;
            font-family: "Google Sans", sans-serif;
            font-weight: 500;
            text-decoration: none;
            opacity: 0.8;
             transition: opacity 0.2s ease;
        }

        .privacy a {
            color: #9C9C9C;
            font-weight: 600;
            text-decoration: underline;
           font-family: "Google Sans", sans-serif;
        }

        /* ── Actions row ── */
        .step-actions {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-top: 2rem;
        }

        .go-back,
        .go-home {
            color: #9C9C9C;
            text-decoration: none;
            font-size: 1rem;
            cursor: pointer;
            background: none;
            border: none;
            font-family: "Google Sans", sans-serif;
            transition: color 0.2s ease;
            font-weight: 500;
        }

        .go-back:hover,
        .go-home:hover {
            color: white;
        }

        .continue-btn,
        .submit-btn {
            background: #EDF060;
            color: #100B00;
            padding: 0.75rem 2rem;
            font-size: 1rem;
            font-weight: 500;
            cursor: pointer;
            border-radius: 50px;
            font-family: "Google Sans", sans-serif;
            transition: background-color 0.2s ease, color 0.2s ease, transform 0.05s ease;
        }

        .continue-btn:hover,
        .submit-btn:hover {
            background-color: #EDF060;
            color: #100B00;
        }

        .continue-btn:active,
        .submit-btn:active {
            transform: scale(0.97);
        }

        .continue-btn:disabled {
            opacity: 0.3;
            cursor: not-allowed;
        }

        .continue-btn:disabled:hover {
            background: transparent;
            color: #EDF060;
        }

        /* ── Confirmation step ── */

        .confirmation-text {
            color: white;
            font-size: 1.25rem;
            font-weight: 500;
            font-family: "Google Sans", sans-serif;
            padding-bottom: 1rem;

        }

        .confirmation-text .highlight {
            color: #EDF060;
        }

        .home-btn {
            display: inline-block;
            color: #EDF060;
            border: #EDF060 2px solid;
            padding: 0.75rem 2rem;
            font-size: 1rem;
            font-weight: 500;
            width: 100%;
            text-align: center;
            cursor: pointer;
            border-radius: 50px;
            text-decoration: none;
            font-family: "Google Sans", sans-serif;
            transition: background-color 0.2s ease, color 0.2s ease;
            align-self: flex-start;
        }

        .home-btn:hover {
            background-color: #EDF060;
            color: #100B00;
        }

        /* ── Step counter ── */
        .step-counter {
            color: #9C9C9C;
            font-size: 0.8rem;
            position: absolute;
            bottom: -2rem;
            left: 0;
        }

        @media screen and (max-width: 768px) {
            .form-container {
                padding: 1.5rem;
            }

            .step h2 {
                font-size: 2rem;
            }
            .home-btn {
                background-color: #EDF060;
                color: #100B00;
        }
        }