:root {
    --public-ink: #0f172a;
    --public-muted: #475569;
    --public-primary: #4f46e5;
    --public-border: #e2e8f0;
}

html { scroll-behavior: smooth; }
body {
    font-family: 'Inter', sans-serif;
    color: var(--public-ink);
    -webkit-font-smoothing: antialiased;
    letter-spacing: 0;
}

.tracking-tight,
.tracking-tighter,
[class*="tracking-["] { letter-spacing: 0 !important; }

[class*="text-[10px]"],
[class*="text-[11px]"] {
    font-size: 0.75rem !important;
    line-height: 1rem !important;
    letter-spacing: 0 !important;
}

.rounded-2xl,
[class*="rounded-[2"] { border-radius: 0.75rem !important; }

#public-site-header a,
#public-site-footer a,
#public-site-footer button { letter-spacing: 0; }

#public-site-header {
    min-height: 69px;
    background-color: rgba(255, 255, 255, 0.96) !important;
    background-image: none !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.035);
}

.bg-grid,
.page-grid,
.public-page-dot-grid {
    background-color: #fff !important;
    background-image: radial-gradient(circle, rgba(100, 116, 139, 0.2) 1px, transparent 1.1px) !important;
    background-size: 24px 24px !important;
    background-position: 0 0 !important;
}

@media (max-width: 420px) {
    #public-site-header .public-brand { font-size: 0.98rem; }
    #public-site-header .public-primary-cta { padding-inline: 0.8rem; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
