diff --git a/src/components/HeroSection.astro b/src/components/HeroSection.astro index 02d4a7f..07b3861 100644 --- a/src/components/HeroSection.astro +++ b/src/components/HeroSection.astro @@ -141,4 +141,17 @@ const colorClass: Record = { border: none; display: block; } + + @media (max-width: 640px) { + .hero-top { margin-bottom: var(--s7); } + .hero-headline { margin-bottom: var(--s6); } + .hero-ctas { gap: var(--s3); width: 100%; } + .btn-hero { + width: min(100%, 19rem); + min-height: 46px; + justify-content: center; + padding: var(--s3) var(--s6); + font-size: var(--text-base); + } + } diff --git a/src/components/Navbar.astro b/src/components/Navbar.astro index fbb22c4..c054080 100644 --- a/src/components/Navbar.astro +++ b/src/components/Navbar.astro @@ -107,7 +107,11 @@ const { slackUrl, paystackUrl } = Astro.props; .burger { display: none; flex-direction: column; + align-items: center; + justify-content: center; gap: 5px; + width: 42px; + height: 42px; padding: var(--s2); margin-left: auto; } @@ -117,7 +121,13 @@ const { slackUrl, paystackUrl } = Astro.props; height: 2px; background: var(--black); border-radius: 2px; + transition: + opacity 120ms cubic-bezier(0.4, 0, 0.2, 1), + transform 150ms cubic-bezier(0.4, 0, 0.2, 1); } + .burger[aria-expanded='true'] span:nth-child(1) { transform: translateY(7px) rotate(45deg); } + .burger[aria-expanded='true'] span:nth-child(2) { opacity: 0; } + .burger[aria-expanded='true'] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); } .mobile-menu { display: none; @@ -128,37 +138,91 @@ const { slackUrl, paystackUrl } = Astro.props; .mobile-menu nav { display: flex; flex-direction: column; - gap: var(--s4); - margin-bottom: var(--s5); + gap: var(--s1); + margin-bottom: var(--s4); border-bottom: 1px solid var(--border-light); - padding-bottom: var(--s5); + padding-bottom: var(--s4); } .mobile-menu nav a { + display: flex; + align-items: center; + justify-content: space-between; + min-height: 44px; + padding-block: var(--s2); font-size: var(--text-base); - font-weight: 500; - color: var(--text-mid); + font-weight: 600; + color: var(--text); + } + .mobile-menu nav a::after { + content: '→'; + color: var(--pink); + font-size: var(--text-lg); + font-weight: 700; } .mobile-actions { display: flex; flex-direction: column; gap: var(--s3); - align-items: flex-start; - padding-top: var(--s4); + align-items: stretch; + } + .mobile-actions .btn { + justify-content: center; + width: 100%; } - .mobile-menu.is-open { display: block; } @media (max-width: 960px) { .navbar-links, .navbar-actions { display: none; } .burger { display: flex; } + .mobile-menu { + position: absolute; + top: 100%; + right: 0; + left: 0; + z-index: 1; + display: block; + visibility: hidden; + opacity: 0; + pointer-events: none; + transform: translateY(-8px); + transition: + opacity 200ms cubic-bezier(0.16, 1, 0.3, 1), + transform 200ms cubic-bezier(0.16, 1, 0.3, 1), + visibility 0s linear 200ms; + } + .mobile-menu.is-open { + visibility: visible; + opacity: 1; + pointer-events: auto; + transform: translateY(0); + box-shadow: 0 14px 24px rgb(17 17 17 / 16%); + transition-delay: 0s; + } + } + + @media (prefers-reduced-motion: reduce) { + .mobile-menu, .burger span { transition: none; } } diff --git a/src/pages/events/[slug].astro b/src/pages/events/[slug].astro index 4a353e6..bae04f8 100644 --- a/src/pages/events/[slug].astro +++ b/src/pages/events/[slug].astro @@ -84,10 +84,9 @@ const externalAction = action?.href.startsWith('http') ?? false;
← All events -
+

About

-

About this event

{event.summary}

← All events -
+

About

-

About this event