:root {
            --primary: #bf023f;
            --primary-dark: #a00235;
            --primary-light: #d1034a;
        }

        * { box-sizing: border-box; margin: 0; padding: 0; }

        /* ═══════════════════════════════
           PAGE WRAPPER
        ═══════════════════════════════ */
        .page-wrapper {
           
            padding: 40px 20px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 30px;
        }

        /* ═══════════════════════════════
           PILL SWITCHER — spans full layout width
        ═══════════════════════════════ */
        .pill-switcher {
            display: flex;
            align-items: center;
            gap: 8px;
            background: #ffffff;
            border-radius: 50px;
            padding: 8px 12px;
            box-shadow: 0 2px 14px rgba(0,0,0,0.10);
            width: 100%;
            max-width: 1320px; 
        }

        .pill-btn {
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 8px 22px 8px 8px;
            border: none;
            border-radius: 50px;
            background: transparent;
            cursor: pointer;
            font-size: 14px;
            font-weight: 600;
            color: #555;
            transition: all 0.25s ease;
            white-space: nowrap;
            flex: 1;
            justify-content: center;
        }

        .pill-icon {
            width: 44px;        /* ← increased from 36px */
            height: 44px;       /* ← increased from 36px */
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            transition: all 0.25s ease;
            border-radius: 50%;
        }

        .pill-icon img {
            width: 45px;       
            height: 45px;      
            object-fit: contain;
        }

        /* ACTIVE: pill → red, icon background removed (transparent) */
        .pill-btn.active {
            background: var(--primary);
            color: #ffffff;
        }

        .pill-btn.active .pill-icon {
            background: transparent;   /* ← removed white background */
        }

        /* Inactive hover */
        .pill-btn:hover:not(.active) {
            background: #f5f5f5;
            color: var(--primary);
        }

        /* ═══════════════════════════════
           MAIN LAYOUT: image + card side by side
        ═══════════════════════════════ */
        .layout-row {
            display: flex;
            flex-direction: row;
            align-items: center;
            gap: 0;
            width: 100%;
            max-width: 1320px;
        }

        /* IMAGE AREA */
        .image-area {
            flex: 1;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            padding: 0 30px 0 10px;
            text-align: center;
        }

        .image-text {
            margin-bottom: 18px;
        }

        .image-text h2 {
            font-size: 36px;
            font-weight: 700;
            color: #1a1a2e;
            margin: 0 0 6px;
            line-height: 1.2;
            font-weight: 600;
        }

        .image-text p {
            font-size: 22px;
            font-weight: 600;
            color: var(--primary);
            margin: 0;
        }

        .image-area .tab-img {
            width: 100%;
            max-width: 440px;
            height: auto;
            display: none;
            border-radius: 12px;
        }

        .image-area .tab-img.active-img {
            display: block;
        }

        /* FORM CARD */
        .form-card {
            flex: 1;
            background: #ffffff;
            border-radius: 18px;
            box-shadow:
               0 3px 4px 1px rgba(0,0,0,0.6),
                0 10px 25px -3px rgba(0,0,0,0.1);
            padding: 30px 28px;
            overflow-y: auto;
        }

        /* Centered heading inside card */
        .form-heading {
            text-align: center;
            margin-bottom: 20px;
            padding-bottom: 16px;
            border-bottom: 1px solid #f0f0f0;
        }

        .form-heading h3 {
            font-size: 20px;
            font-weight: 600;
            color: #1a1a2e;
            margin: 0 0 3px;
        }

        .form-heading p {
            font-size: 12px;
            color: var(--primary);
            font-weight: 500;
            margin: 0;
        }

        /* Form Sections */
        .form-section { display: none; animation: slideIn 0.35s ease; }
        .form-section.active { display: block; }

        @keyframes slideIn {
            from { opacity: 0; transform: translateY(10px); }
            to   { opacity: 1; transform: translateY(0); }
        }

        /* Form Controls */
        .form-label {
            font-weight: 500;
            margin-bottom: 4px;
            display: block;
            color: #374151;
            font-size: 18px;
        }

        .form-label .required { color: var(--primary); margin-left: 1px; }

        .form-control {
            width: 100%;
            padding: 9px 12px;
            border: 1.5px solid #e0e3e9;
            border-radius: 8px;
            font-size: 13px;
            /* font-family: inherit; */
            transition: all 0.2s ease;
            background: #fff;
            color: #333;
        }

        .form-control::placeholder { color: #b0b7c3; }
        .form-control:hover { border-color: #c9cdd6; }
        .form-control:focus {
            outline: none;
            border-color: var(--primary);
            box-shadow: 0 0 0 3px rgba(191,2,63,0.08);
        }

        .form-control.is-invalid { border-color: #dc3545; }
        .form-control.is-invalid:focus { box-shadow: 0 0 0 3px rgba(220,53,69,0.12); }

        .invalid-feedback {
            display: none;
            color: #dc3545;
            font-size: 11px;
            margin-top: 3px;
        }

        .form-control.is-invalid ~ .invalid-feedback { display: block; }

        textarea.form-control { resize: vertical; min-height: 100px !important; }

        .custom-dropdown {
            appearance: none;
            -webkit-appearance: none;
            background-image: url("data:image/svg+xml;utf8,<svg fill='%236b7280' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
            background-repeat: no-repeat;
            background-position: right 10px center;
            background-size: 18px;
            padding-right: 36px;
            cursor: pointer;
        }

        .mb-form { margin-bottom: 10px; }

        /* Form heading — hidden on desktop, shown on mobile */
        .form-heading.mobile-heading {
            display: none;
        }

        /* Submit */
        .btn-submit-wrapper {
            margin-top: 18px;
            padding-top: 20px;
            border-top: 1px solid #f0f0f0;
            display: flex;
            justify-content: center;
        }

        .btn-submit {
            width: auto;
            min-width: 190px;
            height: 45px;
            background: #FFFFFF;
            color: var(--primary);
            border: 1.12px solid rgba(157, 157, 157, 1);
            border-radius: 97.18px;
            padding: 0 28px;
            font-weight: 600;
            font-size: 20px;
            /* font-family: inherit; */
            cursor: pointer;
            transition: all 0.25s ease;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            box-shadow: 0 4px 10px rgba(0,0,0,0.12);
        }

        .btn-submit:hover {
            background: var(--primary);
            color: #ffffff;
            border-color: var(--primary);
            box-shadow: none;
        }

        .btn-submit:active {
            background: var(--primary-dark);
            color: #ffffff;
            border-color: var(--primary-dark);
            box-shadow: none;
            transform: translateY(1px);
        }

        .btn-submit svg { width: 15px; height: 15px; transition: transform 0.25s ease; }
        .btn-submit:hover svg { transform: translateX(3px); }

        /* Trust badges */
        .trust-badges {
            display: flex;
            justify-content: center;
            gap: 16px;
            margin-top: 13px;
        }

        .trust-badge {
            display: flex;
            align-items: center;
            gap: 5px;
            color: #000;
            font-size: 12px;
        }

        .trust-badge svg { width: 14px; height: 14px; color: #22c55e; flex-shrink: 0; }

        /* Grid row */
        .form-row {
            display: flex;
            gap: 10px;
            margin-bottom: 10px;
        }

        .form-row .form-col { flex: 1; min-width: 0; }

        
        .criteria-error {
            display: none;
            color: #dc3545;
            font-size: 11px;
            margin-top: 3px;
        }
        span.pill-label {
            font-size: 1.5rem;
        }
        /* ═══════════════════════════════
           RESPONSIVE
        ═══════════════════════════════ */
        @media (max-width: 900px) {
            .image-text h2 { font-size: 22px; }
        }

        @media (max-width: 768px) {
            .page-wrapper { padding: 16px 12px; gap: 14px; }

            /* Pill: full width, icon on top, label below */
            .pill-switcher {
                padding: 6px 8px;
                gap: 4px;
                width: 100%;
                justify-content: space-between;
            }

            .pill-btn {
                flex-direction: column;
                align-items: center;
                gap: 0px;
                padding: 0px 2px;
                font-size: 10px;
                flex: 1;
                justify-content: center;
                 border: 1px solid #e0e0e0;      /* light grey border */
                border-radius: 30px;            /* pill-like rounded edges */
                background-color: #fff;         /* clean white background */
                box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08);  /* soft shadow */
                transition: all 0.2s ease-in-out;
            }
           span.pill-label {
                font-size: 0.75rem;
                    }
            /* On mobile: active pill has NO background, only text color changes */
            .pill-btn.active {
                background: transparent;
                color: var(--primary);
                box-shadow: none;
            }

            /* Icon: never gets white circle on mobile */
            .pill-btn.active .pill-icon {
                background: transparent;
            }

            /* Underline or subtle indicator for active on mobile */
            .pill-btn.active .pill-label {
                border-bottom: 2px solid var(--primary);
                padding-bottom: 1px;
            }

            .pill-icon { width: 34px; height: 34px; }  /* slightly larger on mobile too */
            .pill-icon img { 
              width: 32px;
              height: 32px; }

            /* Show form heading inside card on mobile (image area is hidden) */
            .form-heading.mobile-heading {
                display: block;
            }
            .form-label{
                font-size: 14px;
            }
            textarea.form-control { min-height: 60px !important; }
            /* LAYOUT: single column */
            .layout-row { flex-direction: column; }

            /* Image area hidden on mobile */
            .image-area { display: none; }

            .form-card { padding: 20px 16px; width: 100%; }

            .form-row { flex-direction: column; gap: 8px; }
            .btn-submit{
                min-width: 150px;
                font-size: 16px;
            }
        }
        