                    /* H1 Heading Reset */
                    .mainBannerHeading {
                        margin: 0;
                        padding: 0;
                        font-weight: 700;
                    }
                    /* Base visibility: show desktop, hide mobile variant */
                    .mainBannerTitleDesktop { 
                        display: block; 
                        color: #ffffff;
                        font-family: 'Inter', 'DM Sans', system-ui, -apple-system, sans-serif;
                        font-size: clamp(32px, 4vw, 44px);
                        font-weight: 700;
                        line-height: 1.22;
                        letter-spacing: 0.3px;
                        text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6);
                        width: 100%;
                        max-width: none;
                    }
                    .mainBannerTitleMobile { display: none; color: #ffffff; }
                    /* Description text enhancements */
                    .mainBannerDescription p {
                        font-family: 'Inter', 'DM Sans', system-ui, -apple-system, sans-serif;
                        font-size: clamp(17px, 1.9vw, 21px);
                        font-weight: 400;
                        color: #ffffff;
                        opacity: 0.95;
                        line-height: 1.7;
                        text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);
                        letter-spacing: 0.025em;
                    }
                    /* Pleasant semi-bold weight for subtle emphasis */
                    .pleasant-weight { font-family: inherit !important; font-size: inherit !important; font-weight: 700 !important; color: inherit !important; letter-spacing: inherit !important; }
                    
                    /* Laptop 14-15 inch */
                    @media (max-width: 1366px) {
                        .mainBannerTitleDesktop {
                            font-size: clamp(28px, 3.8vw, 38px);
                        }
                        .mainBannerDescription p {
                            font-size: clamp(15px, 1.8vw, 18px);
                        }
                    }
                    
                    /* Tablet landscape */
                    @media (max-width: 1024px) {
                        .mainBannerTitleDesktop {
                            font-size: clamp(26px, 3.5vw, 34px);
                            line-height: 1.3;
                        }
                        .mainBannerDescription p {
                            font-size: clamp(15px, 1.7vw, 17px);
                            line-height: 1.6;
                        }
                    }
                    
                    /* Tablet portrait */
                    @media (max-width: 768px) {
                        .mainBannerTitleDesktop {
                            font-size: clamp(26px, 5.5vw, 32px);
                            line-height: 1.28;
                        }
                        .mainBannerDescription p {
                            font-size: clamp(16px, 3.5vw, 18px);
                            line-height: 1.65;
                        }
                    }
                    
                    /* Mobile adjustments */
                    @media (max-width: 520px) {
                        .heroCtaLink { display: flex; width: 100%; justify-content: center; }
                        .videoButton { margin: 22px auto 0 !important; display: inline-flex; justify-content: center; align-items: center; text-align: center; width: auto; max-width: calc(100% - 32px); height: auto; min-height: 44px; padding: 10px 28px; letter-spacing: 0.5px; }
                        .videoButton span { display: block; font-size: clamp(15px, 4.5vw, 17px) !important; line-height: 1.2; font-weight: 700; letter-spacing: 0.5px; }
                        .videoButton .icon { display: none !important; }
                        .mainBannerTitleDesktop { display: none !important; }
                        .mainBannerHeading { margin: 0 auto 12px !important; width: 100% !important; }
                        /* Mobile banner title: full width, balanced wrapping, no overflow, white color */
                        .mainBannerTitleMobile { display: block !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box; margin: 0 !important; padding: 0 20px !important; font-size: clamp(26px, 7.5vw, 42px) !important; line-height: 1.22; letter-spacing: 0.3px; color: #ffffff !important; text-align: center; text-wrap: balance; white-space: normal !important; overflow-wrap: break-word; word-break: normal; text-shadow: 0 2px 6px rgba(0, 0, 0, 0.4), 0 1px 3px rgba(0, 0, 0, 0.3); }
                        /* Center banner description on mobile */
                        .mainBannerDescription { width: 100% !important; max-width: 100% !important; box-sizing: border-box; margin: 0 auto !important; padding: 0 20px !important; text-align: center; display: flex; justify-content: center; }
                        .mainBannerDescription p { font-size: 20px !important; line-height: 1.55; letter-spacing: 0.02em; text-align: center; margin: 0 auto; }
                        /* Center the entire banner content */
                        .mainBannerContent { width: 100% !important; padding: 0 !important; margin: 0 auto !important; display: flex; flex-direction: column; align-items: center; justify-content: center; }
                        .mainBannerRight { width: 100% !important; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
                    }
                
