@@ -113,20 +113,6 @@ body::before {
113113 transition : all var (--transition-base );
114114}
115115
116- .logo ::before {
117- content : '[' ;
118- color : var (--accent-cyan );
119- margin-right : 4px ;
120- opacity : 0.6 ;
121- }
122-
123- .logo ::after {
124- content : ']' ;
125- color : var (--accent-cyan );
126- margin-left : 4px ;
127- opacity : 0.6 ;
128- }
129-
130116.logo : hover {
131117 color : var (--primary-violet );
132118 transform : translateX (2px );
@@ -176,6 +162,57 @@ body::before {
176162 width : 30px ;
177163}
178164
165+ /* Hamburger Toggle Button */
166+ .nav-toggle {
167+ display : none;
168+ background : none;
169+ border : none;
170+ cursor : pointer;
171+ padding : 10px ;
172+ z-index : 1001 ;
173+ }
174+
175+ .hamburger {
176+ display : block;
177+ width : 24px ;
178+ height : 2px ;
179+ background : var (--neutral-800 );
180+ position : relative;
181+ transition : background var (--transition-fast );
182+ }
183+
184+ .hamburger ::before ,
185+ .hamburger ::after {
186+ content : '' ;
187+ position : absolute;
188+ left : 0 ;
189+ width : 24px ;
190+ height : 2px ;
191+ background : var (--neutral-800 );
192+ transition : transform var (--transition-fast );
193+ }
194+
195+ .hamburger ::before {
196+ top : -7px ;
197+ }
198+
199+ .hamburger ::after {
200+ top : 7px ;
201+ }
202+
203+ /* Hamburger animation when open */
204+ .nav-toggle .is-open .hamburger {
205+ background : transparent;
206+ }
207+
208+ .nav-toggle .is-open .hamburger ::before {
209+ transform : rotate (45deg ) translate (5px , 5px );
210+ }
211+
212+ .nav-toggle .is-open .hamburger ::after {
213+ transform : rotate (-45deg ) translate (5px , -5px );
214+ }
215+
179216/* Main Content */
180217.main-content {
181218 min-height : calc (100vh - 300px );
@@ -624,13 +661,41 @@ ol {
624661 }
625662
626663 .header-content {
627- flex-direction : column;
628- gap : 20px ;
664+ flex-wrap : wrap;
665+ justify-content : space-between;
666+ }
667+
668+ .nav-toggle {
669+ display : block;
629670 }
630671
631672 .main-nav {
632- flex-wrap : wrap;
633- justify-content : center;
673+ display : none;
674+ flex-direction : column;
675+ width : 100% ;
676+ background : white;
677+ padding : 20px 0 ;
678+ gap : 0 ;
679+ border-top : 1px solid var (--neutral-200 );
680+ margin-top : 20px ;
681+ }
682+
683+ .main-nav .is-open {
684+ display : flex;
685+ }
686+
687+ .main-nav a {
688+ padding : 12px 0 ;
689+ border-radius : 0 ;
690+ border-bottom : 1px solid var (--neutral-100 );
691+ }
692+
693+ .main-nav a : last-child {
694+ border-bottom : none;
695+ }
696+
697+ .main-nav a ::before {
698+ display : none;
634699 }
635700
636701 .cta-grid {
0 commit comments