   :root {
            --brand-purple: #7052be; /* Matches the image header/footer */
            --brand-orange: #ff9100; /* Matches the CTA button */
            --text-dark: #1a1a1a;
        }

        body {
            font-family: 'Inter', sans-serif;
            background-color: #ffffff;
            color: var(--text-dark);
            margin: 0;
            padding: 0;
        }

        /* --- Header & Footer --- */
        .brand-bg {
            background-color: var(--brand-purple);
        }

        .header-logo {
            font-size: 1.5rem;
            letter-spacing: -0.5px;
        }

        /* --- Hero Section --- */
        .headline {
            font-family: 'Montserrat', sans-serif;
            font-weight: 900;
            font-size: 3rem;
            line-height: 1.1;
            letter-spacing: -1px;
            text-transform: uppercase;
        }

        .text-purple {
            color: var(--brand-purple);
        }

        .sub-headline {
            font-size: 1.6rem;
            color: #000;
            margin-top: 30px;
        }

        /* --- Buttons --- */
        .btn-orange {
            background-color: var(--brand-orange);
            color: white;
            font-family: 'Montserrat', sans-serif;
            font-weight: 900;
            font-size: 2.2rem;
            border-radius: 4px;
            border: none;
            padding: 20px 60px;
            transition: transform 0.2s ease, background-color 0.2s;
            box-shadow: 0 4px 15px rgba(0,0,0,0.1);
        }

        .btn-orange:hover {
            background-color: #e68200;
            color: white;
            transform: scale(1.03);
        }

        /* --- Modal Styling --- */
        .modal-content {
            border-radius: 0;
            border: none;
        }

        .modal-header-custom {
            background-color: var(--brand-purple);
            padding: 40px 30px;
            text-align: center;
            color: white;
        }

        .modal-header-custom h3 {
            font-family: 'Montserrat', sans-serif;
            font-weight: 800;
            font-size: 1.7rem;
            line-height: 1.3;
            margin-bottom: 0;
        }

        /* The white circle close button */
        .btn-close-custom {
            position: absolute;
            top: -15px;
            right: -15px;
            width: 38px;
            height: 38px;
            background: #fff;
            border-radius: 50%;
            border: none;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 4px 10px rgba(0,0,0,0.3);
            cursor: pointer;
            z-index: 1060;
            font-size: 28px;
            font-weight: bold;
            color: #333;
        }

        /* Form Inputs */
        .custom-input {
            height: 65px;
            border: 1.5px solid #000;
            border-radius: 0;
            font-size: 1.3rem;
            padding-left: 15px;
            margin-bottom: 15px;
        }

        .custom-input:focus {
            box-shadow: none;
            border-color: var(--brand-purple);
        }

        /* --- Footer Layout --- */
        .disclaimer {
            font-size: 0.75rem;
            line-height: 1.6;
            opacity: 0.9;
            max-width: 900px;
            margin: 0 auto;
        }

        /* --- Responsive Tweaks --- */
        @media (max-width: 768px) {
            .headline { font-size: 1.8rem; }
            .sub-headline { font-size: 1.1rem; }
            .btn-orange { font-size: 1.5rem; width: 100%; padding: 15px; }
            .modal-header-custom h3 { font-size: 1.3rem; }
        }