:root {
    --dg-navy: #0F172A;
    --dg-blue: #2563EB;
}

body {
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.bg-grid {
    background-image:
        linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
    background-size: 28px 28px;
}

.bg-dot-pattern {
    background-image: radial-gradient(circle, rgba(37,99,235,.18) 1px, transparent 1px);
    background-size: 18px 18px;
}

.hero-orb {
    background:
        radial-gradient(circle at 25% 25%, rgba(37,99,235,.45), transparent 32%),
        radial-gradient(circle at 75% 70%, rgba(14,165,233,.25), transparent 30%),
        linear-gradient(135deg, rgba(255,255,255,.95), rgba(248,250,252,.85));
}

.noise::after {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .05;
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='256' height='256' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}

.prose-dg p {
    margin-top: 1rem;
    line-height: 1.85;
    color: rgb(71 85 105);
}

.prose-dg h2,
.prose-dg h3 {
    margin-top: 2rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    color: rgb(2 6 23);
}

details > summary {
    list-style: none;
}

details > summary::-webkit-details-marker {
    display: none;
}
