/* Dhakadigitalsurvey — shared design tokens & utilities Tailwind handles layout; this file holds non-Tailwind custom rules (logo mark, line clamp fallback, footer pulse, mobile menu). */ :root { --primary: #30bd9b; --primary-dim: #1ea583; --text: #2a2b3f; --text-muted: #888888; --surface: #ffffff; --surface-alt: #f8f8f8; --surface-lowest: #ffffff; --surface-container: #f3f7fd; --outline-variant: #eaeaea; --on-surface-variant: #495057; } html { scroll-behavior: smooth; } /* Logo fallback (graceful if SVG missing) */ .brand-mark { width: 32px; height: 32px; border-radius: 9999px; background: linear-gradient(135deg, var(--primary), var(--primary-dim)); color: #fff; font-weight: 800; font-size: 13px; display: inline-flex; align-items: center; justify-content: center; letter-spacing: -0.5px; border: 1px solid rgba(48,189,155,0.25); } /* Active nav link */ .nav-link[aria-current="page"] { color: var(--primary); font-weight: 700; } .nav-link:hover { color: var(--primary); } /* Line clamp fallbacks (browsers without line-clamp class) */ .line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .line-clamp-3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; } /* Hide scrollbar in webkit */ ::-webkit-scrollbar { display: none; } /* Floating stat card gentle bob */ @keyframes float-bob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } } .float-bob { animation: float-bob 4s ease-in-out infinite; } /* Mobile menu open/close */ .mobile-menu { display: none; } .mobile-menu.open { display: flex; } /* Section spacing helpers */ .section-pad { padding-top: 6rem; padding-bottom: 6rem; } .section-pad-sm { padding-top: 3rem; padding-bottom: 3rem; } @media (max-width: 768px) { .section-pad { padding-top: 3.5rem; padding-bottom: 3.5rem; } }