
        body {
            font-family: 'rawline', sans-serif;
            background-color: #fcf9f8;
            color: #1b1b1c;
        }
        .material-symbols-outlined {
            font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
        }
        
        /* Utility Bar Styling */
        .utility-bar {
            background-color: #193DFF; /* gov-blue */
            color: #ffffff;
        }
        
        /* Focus styles for accessibility */
        *:focus-visible {
            outline: 2px solid #0057C8; /* interactive-blue */
            outline-offset: 2px;
        }
        
        /* Sticky CTA styling */
        .sticky-cta-bar {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            z-index: 50;
            background-color: white;
            border-top: 1px solid #EDF0F7;
            box-shadow: 0 -4px 6px -1px rgba(0, 0, 0, 0.1);
            transform: translateY(100%);
            animation: slideUp 0.5s forwards;
            animation-delay: 2s;
        }
        @keyframes slideUp {
            to {
                transform: translateY(0);
            }
        }
        
        /* details marker hiding for webkit */
        details > summary::-webkit-details-marker {
            display: none;
        }
        
        /* Carousel animations */
        .slide-up-enter {
            opacity: 0;
            transform: translateY(20px);
            position: absolute;
            inset: 0;
            width: 100%;
        }
        .slide-up-enter-active {
            opacity: 1;
            transform: translateY(0);
            transition: opacity 500ms ease-out, transform 500ms ease-out;
        }
        .slide-up-exit {
            opacity: 1;
            transform: translateY(0);
            position: absolute;
            inset: 0;
            width: 100%;
        }
        .slide-up-exit-active {
            opacity: 0;
            transform: translateY(-20px);
            transition: opacity 500ms ease-out, transform 500ms ease-out;
        }

        /* Connecting line for stepper */
        .stepper-line {
            position: absolute;
            top: 40px;
            left: 50px;
            right: 50px;
            height: 2px;
            background: #e5e2e1;
            z-index: 0;
        }
        
        .stepper-line-active {
            position: absolute;
            top: 0;
            left: 0;
            height: 100%;
            background: #0057C8;
            width: 0; /* Will animate */
        }
    

@keyframes swipe-hint {
  0%, 100% { transform: translateX(0); opacity: 0.6; }
  50% { transform: translateX(6px); opacity: 1; }
}
