@@ -74,6 +74,17 @@ nav.scrolled { box-shadow: 0 2px 20px rgba(0,0,0,0.08); }
7474 overflow : hidden;
7575}
7676
77+ # particles {
78+ position : absolute;
79+ inset : 0 ;
80+ width : 100% ;
81+ height : 100% ;
82+ z-index : 0 ;
83+ pointer-events : none;
84+ }
85+
86+ .hero-grid { position : relative; z-index : 1 ; }
87+
7788.hero-grid {
7889 display : grid;
7990 grid-template-columns : 1fr 1fr ;
@@ -340,8 +351,8 @@ section { padding: 6rem 5%; }
340351}
341352.service-card : hover {
342353 border-color : var (--black );
343- transform : translateY (-3 px );
344- box-shadow : 0 8 px 30 px rgba (0 , 0 , 0 , 0.08 );
354+ transform : translateY (-10 px );
355+ box-shadow : 0 20 px 40 px rgba (0 , 0 , 0 , 0.12 );
345356}
346357
347358.service-icon {
@@ -381,8 +392,8 @@ section { padding: 6rem 5%; }
381392 transition : var (--transition );
382393}
383394.portfolio-card : hover {
384- transform : translateY (-4 px );
385- box-shadow : 0 12 px 40px rgba (0 , 0 , 0 , 0.1 );
395+ transform : translateY (-10 px );
396+ box-shadow : 0 20 px 40px rgba (0 , 0 , 0 , 0.12 );
386397}
387398
388399.portfolio-cover {
@@ -475,7 +486,7 @@ section { padding: 6rem 5%; }
475486 border-radius : 10px ;
476487 transition : var (--transition );
477488}
478- .review-card : hover { border-color : var (--black ); transform : translateY (-3 px ); box-shadow : 0 8 px 30 px rgba (0 , 0 , 0 , 0.07 ); }
489+ .review-card : hover { border-color : var (--black ); transform : translateY (-10 px ); box-shadow : 0 20 px 40 px rgba (0 , 0 , 0 , 0.12 ); }
479490
480491.review-top { display : flex; align-items : flex-start; gap : 0.875rem ; margin-bottom : 1rem ; }
481492
@@ -528,7 +539,7 @@ section { padding: 6rem 5%; }
528539 text-align : center;
529540 transition : var (--transition );
530541}
531- .team-card : hover { border-color : var (--black ); transform : translateY (-3 px ); }
542+ .team-card : hover { border-color : var (--black ); transform : translateY (-10 px ); box-shadow : 0 20 px 40 px rgba ( 0 , 0 , 0 , 0.12 ); }
532543
533544.team-avatar {
534545 width : 72px ; height : 72px ;
@@ -635,6 +646,91 @@ footer {
635646.footer-links a { color : # 555 ; text-decoration : none; font-size : 0.8rem ; transition : color var (--transition ); }
636647.footer-links a : hover { color : # 999 ; }
637648
649+ /* ── THEME TOGGLE BUTTON ── */
650+ .theme-toggle {
651+ background : none;
652+ border : 1.5px solid var (--gray-200 );
653+ border-radius : 8px ;
654+ width : 38px ; height : 38px ;
655+ display : flex; align-items : center; justify-content : center;
656+ cursor : pointer;
657+ color : var (--black );
658+ transition : var (--transition );
659+ flex-shrink : 0 ;
660+ }
661+ .theme-toggle : hover { border-color : var (--black ); background : var (--gray-100 ); }
662+ .icon-sun { display : none; }
663+ .icon-moon { display : block; }
664+
665+ /* ── DARK THEME ── */
666+ body .dark { background : # 0a0a0a ; color : # ffffff ; }
667+
668+ body .dark .nav-logo img { filter : invert (1 ); }
669+
670+ body .dark nav {
671+ background : rgba (10 , 10 , 10 , 0.95 );
672+ border-bottom-color : # 1a1a1a ;
673+ }
674+ body .dark .nav-links a { color : # 888 ; }
675+ body .dark .nav-links a : hover { color : # fff ; }
676+ body .dark .nav-cta { background : # fff ; color : # 000 !important ; }
677+ body .dark .nav-cta : hover { background : # e8e8e8 ; }
678+ body .dark .hamburger span { background : # fff ; }
679+ body .dark .theme-toggle { border-color : # 333 ; color : # fff ; }
680+ body .dark .theme-toggle : hover { background : # 1a1a1a ; border-color : # 555 ; }
681+ body .dark .icon-sun { display : block; }
682+ body .dark .icon-moon { display : none; }
683+ body .dark .nav-links .open { background : # 0a0a0a ; border-bottom-color : # 1a1a1a ; }
684+
685+ body .dark # hero { background : # 0a0a0a ; }
686+ body .dark .hero-badge { color : # 666 ; }
687+ body .dark .hero-title span { color : # 555 ; }
688+ body .dark .hero-desc { color : # 888 ; }
689+ body .dark .btn-secondary { border-color : # 333 ; color : # fff ; }
690+ body .dark .btn-secondary : hover { border-color : # fff ; }
691+ body .dark .hero-card { background : # 111 ; border-color : # 2a2a2a ; box-shadow : 0 22px 60px rgba (0 , 0 , 0 , 0.4 ); }
692+ body .dark .hero-card-header { border-bottom-color : # 2a2a2a ; }
693+ body .dark .hero-card-header span { color : # 555 ; }
694+ body .dark .hero-card-header strong { background : # fff ; color : # 000 ; }
695+ body .dark .stat-item { background : # 1a1a1a ; border-color : # 2a2a2a ; }
696+ body .dark .stat-num { color : # fff ; }
697+ body .dark .stat-label { color : # 555 ; }
698+ body .dark .hero-card-note { background : # fff ; color : # 000 ; }
699+
700+ body .dark # about { background : # 111 ; }
701+ body .dark .pillar { background : # 1a1a1a ; }
702+ body .dark .section-subtitle { color : # 888 ; }
703+
704+ body .dark # services { background : # 0a0a0a ; }
705+ body .dark .service-card { background : # 111 ; border-color : # 2a2a2a ; }
706+ body .dark .service-card : hover { border-color : # fff ; box-shadow : 0 20px 40px rgba (0 , 0 , 0 , 0.4 ); }
707+ body .dark .service-card p { color : # 888 ; }
708+
709+ body .dark # portfolio { background : # 111 ; }
710+ body .dark .portfolio-card { background : # 1a1a1a ; border-color : # 2a2a2a ; }
711+ body .dark .portfolio-card : hover { box-shadow : 0 20px 40px rgba (0 , 0 , 0 , 0.4 ); }
712+ body .dark .portfolio-category { color : # 666 ; }
713+ body .dark .portfolio-body p { color : # 888 ; }
714+ body .dark .p-stat-label { color : # 666 ; }
715+
716+ body .dark # reviews { background : # 0a0a0a ; }
717+ body .dark .reviews-stats { background : # 111 ; border : 1.5px solid # 2a2a2a ; }
718+ body .dark .rs-divider { background : # 2a2a2a ; }
719+ body .dark .rs-label { color : # 555 ; }
720+ body .dark .review-card { background : # 111 ; border-color : # 2a2a2a ; }
721+ body .dark .review-card : hover { border-color : # fff ; box-shadow : 0 20px 40px rgba (0 , 0 , 0 , 0.4 ); }
722+ body .dark .review-time { color : # 555 ; }
723+ body .dark .review-project { color : # 666 ; }
724+ body .dark .review-text { color : # 888 ; }
725+
726+ body .dark # team { background : # 0a0a0a ; }
727+ body .dark .team-card { background : # 111 ; border-color : # 2a2a2a ; }
728+ body .dark .team-card : hover { border-color : # fff ; box-shadow : 0 20px 40px rgba (0 , 0 , 0 , 0.4 ); }
729+ body .dark .team-card p { color : # 888 ; }
730+
731+ body .dark footer { background : # 050505 ; }
732+ body .dark .footer-logo img { filter : invert (0 ); opacity : 0.5 ; }
733+
638734/* ── SCROLL ANIMATIONS ── */
639735.fade-up {
640736 opacity : 0 ;
0 commit comments