   
        .age-gate-modal {
            position: fixed;
            inset: 0;
            background: rgba(18, 18, 18, 0.45);
            display: none;
            align-items: center;
            justify-content: center;
            padding: 20px;
            z-index: 99999;
        }

        .age-gate-card {
            width: 100%;
            max-width: 520px;
            background: #ffffff;
            border-radius: 16px;
            padding: 24px;
            box-shadow: 0 24px 48px rgba(0, 0, 0, 0.16), 0 12px 24px rgba(0, 0, 0, 0.12), 0 8px 16px rgba(0, 0, 0, 0.08);
            text-align: center;
            color: #222;
        }

        .age-gate-card h2 {
            margin-top: 0;
            margin-bottom: 10px;
            color: #1f1f1f;
        }

        .age-gate-badge {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 80px;
            height: 80px;
            background: linear-gradient(135deg, #ff4444 0%, #ff8800 100%);
            border-radius: 50%;
            margin-bottom: 16px;
            box-shadow: 0 8px 24px rgba(255, 68, 68, 0.35);
            animation: pulse-badge 2s ease-in-out infinite;
        }

        .age-gate-badge span {
            font-size: 36px;
            font-weight: 900;
            color: #ffffff;
            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
        }

        @keyframes pulse-badge {
            0%, 100% {
                transform: scale(1);
            }
            50% {
                transform: scale(1.08);
            }
        }

        .age-gate-card p {
            margin: 8px 0;
        }

        .age-gate-card .age-gate-main-text {
            text-align: center;
        }

        .age-gate-card .age-gate-note {
            font-size: 12px;
            line-height: 1.4;
        }

        .age-gate-actions {
            display: flex;
            gap: 10px;
            justify-content: center;
            flex-wrap: wrap;
            margin-top: 18px;
        }

        .age-gate-btn {
            border: 0;
            border-radius: 8px;
            padding: 10px 16px;
            font-size: 14px;
            font-weight: 600;
            cursor: pointer;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }

        .age-gate-btn-primary {
            background: #f25b25;
            color: #fff;
        }

        .age-gate-btn-primary:hover {
            background: #d64b1d;
        }

        .age-gate-btn-secondary {
            background: #2c3e50;
            color: #fff;
        }

        .age-gate-btn-secondary:hover {
            background: #1a252f;
        }

        body.age-gate-open {
            overflow: hidden;
        }

        body.age-gate-open > *:not(.age-gate-modal) {
            filter: blur(6px);
            pointer-events: none;
            user-select: none;
        }

        body.age-gate-open .age-gate-modal {
            display: flex;
        }

        @media (max-width: 640px) {
            .age-gate-card {
                padding: 20px;
            }
        }
    