@prosophia/lab-techy 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,147 @@
1
+ .footer {
2
+ border-top: 1px solid var(--slate-200);
3
+ background-color: var(--white);
4
+ padding: 3rem 0;
5
+ }
6
+
7
+ .container {
8
+ max-width: var(--container-max);
9
+ margin: 0 auto;
10
+ padding: 0 1rem;
11
+ }
12
+
13
+ @media (min-width: 640px) {
14
+ .container {
15
+ padding: 0 1.5rem;
16
+ }
17
+ }
18
+
19
+ @media (min-width: 1024px) {
20
+ .container {
21
+ padding: 0 2rem;
22
+ }
23
+ }
24
+
25
+ .grid {
26
+ display: grid;
27
+ gap: 2rem;
28
+ }
29
+
30
+ @media (min-width: 768px) {
31
+ .grid {
32
+ grid-template-columns: 2fr 1fr 1fr;
33
+ gap: 3rem;
34
+ }
35
+ }
36
+
37
+ .brandSection {
38
+ grid-column: span 1;
39
+ }
40
+
41
+ @media (min-width: 768px) {
42
+ .brandSection {
43
+ grid-column: span 1;
44
+ }
45
+ }
46
+
47
+ .logo {
48
+ display: flex;
49
+ align-items: center;
50
+ gap: 0.75rem;
51
+ }
52
+
53
+ .logoIcon {
54
+ display: flex;
55
+ width: 2rem;
56
+ height: 2rem;
57
+ align-items: center;
58
+ justify-content: center;
59
+ border-radius: var(--radius-sm);
60
+ background-color: var(--primary);
61
+ color: var(--white);
62
+ }
63
+
64
+ .logoIcon span {
65
+ font-size: 20px;
66
+ }
67
+
68
+ .logoText {
69
+ font-size: 1.25rem;
70
+ font-weight: 700;
71
+ color: var(--slate-900);
72
+ }
73
+
74
+ .description {
75
+ margin-top: 1rem;
76
+ max-width: 24rem;
77
+ font-size: 0.875rem;
78
+ color: var(--slate-600);
79
+ line-height: 1.6;
80
+ }
81
+
82
+ .socialLinks {
83
+ display: flex;
84
+ gap: 1rem;
85
+ margin-top: 1.5rem;
86
+ }
87
+
88
+ .socialLink {
89
+ color: var(--slate-400);
90
+ transition: color var(--timing-quick) var(--ease-out-expo);
91
+ }
92
+
93
+ .socialLink:hover {
94
+ color: var(--primary);
95
+ }
96
+
97
+ .socialIcon {
98
+ width: 1.25rem;
99
+ height: 1.25rem;
100
+ }
101
+
102
+ .linksSection {
103
+ display: flex;
104
+ flex-direction: column;
105
+ }
106
+
107
+ .linksSectionTitle {
108
+ font-size: 0.875rem;
109
+ font-weight: 600;
110
+ text-transform: uppercase;
111
+ color: var(--slate-900);
112
+ margin-bottom: 1rem;
113
+ }
114
+
115
+ .linksList {
116
+ list-style: none;
117
+ display: flex;
118
+ flex-direction: column;
119
+ gap: 0.75rem;
120
+ }
121
+
122
+ .link {
123
+ font-size: 0.875rem;
124
+ color: var(--slate-600);
125
+ transition: color var(--timing-quick) var(--ease-out-expo);
126
+ }
127
+
128
+ .link:hover {
129
+ color: var(--primary);
130
+ }
131
+
132
+ .bottom {
133
+ margin-top: 3rem;
134
+ padding-top: 2rem;
135
+ border-top: 1px solid var(--slate-200);
136
+ }
137
+
138
+ .copyright {
139
+ text-align: center;
140
+ font-size: 0.875rem;
141
+ color: var(--slate-500);
142
+ }
143
+
144
+ /* Dark mode styles */
145
+ [data-theme="dark"] .logoIcon {
146
+ color: var(--slate-900);
147
+ }
@@ -0,0 +1,147 @@
1
+ .header {
2
+ position: sticky;
3
+ top: 0;
4
+ z-index: 50;
5
+ width: 100%;
6
+ border-bottom: 1px solid var(--slate-200);
7
+ background-color: rgba(246, 246, 248, 0.8);
8
+ backdrop-filter: blur(12px);
9
+ }
10
+
11
+ .container {
12
+ max-width: var(--container-max);
13
+ margin: 0 auto;
14
+ display: flex;
15
+ height: 4rem;
16
+ align-items: center;
17
+ justify-content: space-between;
18
+ padding: 0 1rem;
19
+ }
20
+
21
+ @media (min-width: 640px) {
22
+ .container {
23
+ padding: 0 1.5rem;
24
+ }
25
+ }
26
+
27
+ @media (min-width: 1024px) {
28
+ .container {
29
+ padding: 0 2rem;
30
+ }
31
+ }
32
+
33
+ .logo {
34
+ display: flex;
35
+ align-items: center;
36
+ gap: 1rem;
37
+ text-decoration: none;
38
+ }
39
+
40
+ .logoIcon {
41
+ display: flex;
42
+ width: 2rem;
43
+ height: 2rem;
44
+ align-items: center;
45
+ justify-content: center;
46
+ border-radius: var(--radius-sm);
47
+ background-color: var(--primary);
48
+ color: var(--white);
49
+ }
50
+
51
+ .logoIcon span {
52
+ font-size: 20px;
53
+ }
54
+
55
+ .logoText {
56
+ font-size: 1.125rem;
57
+ font-weight: 700;
58
+ letter-spacing: -0.025em;
59
+ color: var(--slate-900);
60
+ }
61
+
62
+ .nav {
63
+ display: none;
64
+ flex: 1;
65
+ align-items: center;
66
+ justify-content: flex-end;
67
+ gap: 2rem;
68
+ }
69
+
70
+ @media (min-width: 768px) {
71
+ .nav {
72
+ display: flex;
73
+ }
74
+ }
75
+
76
+ .navLinks {
77
+ display: flex;
78
+ align-items: center;
79
+ gap: 1.5rem;
80
+ }
81
+
82
+ .navLink {
83
+ font-size: 0.875rem;
84
+ font-weight: 500;
85
+ color: var(--slate-600);
86
+ transition: color var(--timing-quick) var(--ease-out-expo);
87
+ }
88
+
89
+ .navLink:hover {
90
+ color: var(--primary);
91
+ }
92
+
93
+ .navLinkActive {
94
+ color: var(--primary);
95
+ font-weight: 600;
96
+ }
97
+
98
+ .ctaButton {
99
+ display: inline-flex;
100
+ height: 2.25rem;
101
+ align-items: center;
102
+ justify-content: center;
103
+ border-radius: var(--radius-lg);
104
+ background-color: var(--primary);
105
+ padding: 0 1rem;
106
+ font-size: 0.875rem;
107
+ font-weight: 700;
108
+ color: var(--white);
109
+ box-shadow: var(--shadow-sm);
110
+ transition: background-color var(--timing-quick) var(--ease-out-expo);
111
+ }
112
+
113
+ .ctaButton:hover {
114
+ background-color: var(--primary-dark);
115
+ }
116
+
117
+ .mobileActions {
118
+ display: flex;
119
+ align-items: center;
120
+ gap: 0.5rem;
121
+ }
122
+
123
+ @media (min-width: 768px) {
124
+ .mobileActions {
125
+ display: none;
126
+ }
127
+ }
128
+
129
+ .mobileMenuBtn {
130
+ display: block;
131
+ padding: 0.5rem;
132
+ color: var(--slate-600);
133
+ }
134
+
135
+ /* Dark mode styles */
136
+ [data-theme="dark"] .header {
137
+ background-color: rgba(15, 23, 42, 0.9);
138
+ border-bottom-color: var(--slate-200);
139
+ }
140
+
141
+ [data-theme="dark"] .logoIcon {
142
+ color: var(--slate-900);
143
+ }
144
+
145
+ [data-theme="dark"] .ctaButton {
146
+ color: var(--slate-900);
147
+ }
@@ -0,0 +1,34 @@
1
+ .toggle {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ width: 2.5rem;
6
+ height: 2.5rem;
7
+ border-radius: var(--radius-full);
8
+ background-color: var(--slate-100);
9
+ color: var(--slate-600);
10
+ border: 1px solid var(--slate-200);
11
+ cursor: pointer;
12
+ transition: all var(--timing-quick) var(--ease-out-expo);
13
+ }
14
+
15
+ .toggle:hover {
16
+ background-color: var(--slate-200);
17
+ color: var(--primary);
18
+ }
19
+
20
+ .toggle span {
21
+ font-size: 1.25rem;
22
+ }
23
+
24
+ /* Dark mode styles */
25
+ [data-theme="dark"] .toggle {
26
+ background-color: var(--slate-800);
27
+ border-color: var(--slate-700);
28
+ color: var(--slate-300);
29
+ }
30
+
31
+ [data-theme="dark"] .toggle:hover {
32
+ background-color: var(--slate-700);
33
+ color: var(--primary);
34
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prosophia/lab-techy",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Techy lab website template with Sanity CMS for Prosophia",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",