Changes for page products

Last modified by Alex Cotiugă on 2026/05/12 20:27

From version 1.8
edited by Alex Cotiugă
on 2026/05/12 19:59
Change comment: There is no comment for this version
To version 1.9
edited by Alex Cotiugă
on 2026/05/12 19:59
Change comment: There is no comment for this version

Summary

Details

XWiki.StyleSheetExtension[0]
code
... ... @@ -1,28 +1,31 @@
1 1  /* ========== Agnease Products / Extensions ========== */
2 +/* Self-contained variables because LESS variables are not shared between SSX pages. */
2 2  
3 -.public-nav {
4 - display: flex;
5 - align-items: center;
6 - gap: 24px;
4 +@brand: #00937D;
5 +@brand-strong: #007B6A;
6 +@text: #2D3A34;
7 +@muted: #5B6B64;
8 +@line: #E4ECE9;
9 +@brand-bg: #F4FCFA;
10 +@brand-soft: #E7FFF8;
11 +@radius: 14px;
12 +@shadow-sm: 0 10px 28px rgba(0, 0, 0, .06);
7 7  
8 - a {
9 - color: @brand;
10 - font-weight: 700;
11 - text-decoration: none;
14 +.agnease-product-page {
15 + color: @text;
12 12  
13 - &:hover,
14 - &:focus {
15 - color: @brand-strong;
16 - text-decoration: underline;
17 - }
17 + .container {
18 + max-width: 1040px;
18 18   }
19 -}
20 20  
21 -.page-header-compact {
22 - background:
23 - radial-gradient(42rem 16rem at 50% -10%, #E7FFF8 0%, transparent 65%),
24 - radial-gradient(42rem 16rem at 50% 0%, #E8F6F3 0%, transparent 60%);
25 - text-align: center;
21 + .product-index-hero {
22 + padding: 56px 0 48px;
23 + text-align: center;
24 + background:
25 + radial-gradient(42rem 16rem at 50% -10%, @brand-soft 0%, transparent 65%),
26 + radial-gradient(42rem 16rem at 50% 0%, #E8F6F3 0%, transparent 60%);
27 + border-bottom: 1px solid @line;
28 + }
26 26  
27 27   .page-eyebrow {
28 28   color: @brand;
... ... @@ -30,250 +30,193 @@
30 30   font-weight: 800;
31 31   text-transform: uppercase;
32 32   letter-spacing: .06em;
33 - margin-bottom: 8px;
36 + margin: 0 0 10px;
34 34   }
35 35  
36 36   h1 {
37 - margin-top: 0;
40 + margin: 0;
38 38   color: @text;
42 + font-size: 36px;
43 + line-height: 1.2;
44 + font-weight: 700;
39 39   }
40 40  
41 41   .page-lead {
42 42   max-width: 760px;
43 - margin: 0 auto;
49 + margin: 14px auto 0;
44 44   color: @muted;
45 45   font-size: 18px;
46 46   line-height: 1.55;
47 47   }
48 -}
49 49  
50 -.product-hero {
51 - background:
52 - radial-gradient(48rem 18rem at 50% -10%, #E7FFF8 0%, transparent 65%),
53 - radial-gradient(48rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%);
54 -}
55 + .product-index-section {
56 + padding: 52px 0 56px;
55 55  
56 -.product-kicker {
57 - display: inline-flex;
58 - align-items: center;
59 - gap: 8px;
60 - color: @brand;
61 - background: fade(@brand, 8%);
62 - border: 1px solid fade(@brand, 18%);
63 - border-radius: 999px;
64 - padding: 6px 12px;
65 - margin-bottom: 14px;
66 - font-size: 13px;
67 - font-weight: 800;
68 -}
69 -
70 -.product-layout {
71 - max-width: 1040px;
72 - margin: 0 auto;
73 - display: grid;
74 - grid-template-columns: 1.1fr .9fr;
75 - grid-gap: 28px;
76 - align-items: start;
77 -}
78 -
79 -.product-summary-card,
80 -.product-info-card,
81 -.product-gallery-panel {
82 - background: #fff;
83 - border: 1px solid @line;
84 - border-radius: @radius;
85 - box-shadow: @shadow-sm;
86 -}
87 -
88 -.product-summary-card {
89 - padding: 24px;
90 -
91 - h2 {
92 - text-align: left;
93 - margin-top: 0;
58 + h2 {
59 + text-align: center;
60 + margin: 0 0 10px;
61 + color: @text;
62 + font-size: 28px;
63 + line-height: 1.25;
64 + font-weight: 600;
65 + }
94 94   }
95 95  
96 - p {
68 + .section-intro {
69 + max-width: 760px;
70 + margin: 0 auto 26px;
71 + text-align: center;
97 97   color: @muted;
98 - line-height: 1.6;
73 + font-size: 16px;
74 + line-height: 1.55;
99 99   }
100 -}
101 101  
102 -.product-info-card {
103 - padding: 20px;
104 -
105 - h3 {
106 - margin-top: 0;
107 - color: @text;
77 + .product-card-grid {
78 + max-width: 840px;
79 + margin: 0 auto;
80 + display: grid;
81 + grid-template-columns: 1fr;
82 + grid-gap: 18px;
108 108   }
109 109  
110 - ul {
111 - margin: 0;
112 - padding-left: 20px;
113 - color: @muted;
85 + .product-card {
86 + background: #fff;
87 + border: 1px solid @line;
88 + border-radius: @radius;
89 + box-shadow: @shadow-sm;
90 + padding: 28px;
91 + display: grid;
92 + grid-template-columns: 68px 1fr;
93 + grid-gap: 22px;
94 + align-items: start;
114 114   }
115 115  
116 - li {
117 - margin: 8px 0;
118 - line-height: 1.45;
119 - }
120 -}
121 -
122 -.product-feature-grid {
123 - max-width: 1040px;
124 - margin: 22px auto 0;
125 - display: grid;
126 - grid-template-columns: repeat(3, minmax(0, 1fr));
127 - grid-gap: 16px;
128 -}
129 -
130 -.product-feature {
131 - background: #fff;
132 - border: 1px solid @line;
133 - border-radius: @radius;
134 - box-shadow: @shadow-sm;
135 - padding: 18px;
136 -
137 - .feature-icon {
138 - width: 42px;
139 - height: 42px;
97 + .product-card-icon {
98 + width: 58px;
99 + height: 58px;
140 140   border-radius: 50%;
141 141   background: fade(@brand, 10%);
102 + border: 1px solid fade(@brand, 20%);
142 142   color: @brand;
143 143   display: flex;
144 144   align-items: center;
145 145   justify-content: center;
146 - margin-bottom: 12px;
147 - font-size: 17px;
107 + font-size: 22px;
148 148   }
149 149  
150 - h3 {
110 + .product-label {
111 + display: inline-flex;
151 151   margin: 0 0 8px;
113 + padding: 5px 10px;
114 + border-radius: 999px;
115 + color: @brand;
116 + background: fade(@brand, 8%);
117 + border: 1px solid fade(@brand, 18%);
118 + font-size: 12px;
119 + font-weight: 800;
120 + text-transform: uppercase;
121 + letter-spacing: .04em;
122 + }
123 +
124 + .product-card h3 {
125 + margin: 0 0 10px;
152 152   color: @text;
153 - font-size: 18px;
127 + font-size: 23px;
128 + line-height: 1.25;
129 + font-weight: 600;
154 154   }
155 155  
156 - p {
157 - margin: 0;
132 + .product-card p {
158 158   color: @muted;
159 - line-height: 1.5;
134 + line-height: 1.6;
160 160   }
161 -}
162 162  
163 -.product-gallery-panel {
164 - max-width: 1040px;
165 - margin: 20px auto 0;
166 - padding: 22px;
137 + .product-highlights {
138 + margin: 14px 0 20px;
139 + padding-left: 18px;
140 + color: @muted;
167 167  
168 - h2 {
169 - margin-top: 0;
142 + li {
143 + margin: 6px 0;
144 + line-height: 1.45;
145 + }
170 170   }
171 171  
172 - .gallery-note {
173 - max-width: 700px;
174 - margin: 0 auto 18px;
175 - color: @muted;
176 - text-align: center;
177 - line-height: 1.55;
148 + .card-link {
149 + margin: 0;
178 178   }
179 -}
180 180  
181 -.product-gallery-placeholder {
182 - border: 1px dashed fade(@brand, 40%);
183 - background: fade(@brand, 5%);
184 - border-radius: @radius;
185 - min-height: 260px;
186 - padding: 28px;
187 - text-align: center;
188 - color: @muted;
189 - display: flex;
190 - align-items: center;
191 - justify-content: center;
192 -}
193 -
194 -.product-card-grid {
195 - max-width: 1040px;
196 - margin: 22px auto 0;
197 - display: grid;
198 - grid-template-columns: repeat(2, minmax(0, 1fr));
199 - grid-gap: 18px;
200 -}
201 -
202 -.product-card {
203 - background: #fff;
204 - border: 1px solid @line;
205 - border-radius: @radius;
206 - box-shadow: @shadow-sm;
207 - padding: 22px;
208 - display: flex;
209 - flex-direction: column;
210 -
211 - .product-card-icon {
212 - width: 46px;
213 - height: 46px;
214 - border-radius: 50%;
215 - background: fade(@brand, 10%);
152 + .btn-secondary {
216 216   color: @brand;
217 - display: flex;
218 - align-items: center;
219 - justify-content: center;
220 - margin-bottom: 14px;
221 - font-size: 18px;
222 - }
154 + background: #fff;
155 + border: 1px solid fade(@brand, 35%);
223 223  
224 - h3 {
225 - margin: 0 0 8px;
226 - color: @text;
157 + &:hover,
158 + &:focus {
159 + color: @brand-strong;
160 + border-color: @brand;
161 + background: @brand-bg;
162 + text-decoration: none;
163 + }
227 227   }
228 228  
229 - p {
230 - color: @muted;
231 - line-height: 1.55;
166 + .product-cta-section {
167 + padding: 0 0 56px;
232 232   }
233 233  
234 - .card-link {
235 - margin-top: auto;
170 + .product-cta-panel {
171 + max-width: 860px;
172 + margin: 0 auto;
173 + padding: 32px;
174 + border-radius: @radius;
175 + border: 1px solid fade(@brand, 20%);
176 + background:
177 + radial-gradient(34rem 12rem at 50% 0%, @brand-soft 0%, #fff 70%);
178 + box-shadow: @shadow-sm;
179 + text-align: center;
236 236  
237 - a {
238 - color: @brand;
239 - font-weight: 800;
181 + h2 {
182 + margin: 0 0 12px;
183 + color: @text;
184 + font-size: 26px;
185 + line-height: 1.25;
240 240   }
187 +
188 + p {
189 + max-width: 680px;
190 + margin: 0 auto 18px;
191 + color: @muted;
192 + line-height: 1.55;
193 + }
241 241   }
242 242  }
243 243  
244 -.cta-panel {
245 - max-width: 860px;
246 - margin: 0 auto;
247 - padding: 30px;
248 - border-radius: @radius;
249 - border: 1px solid fade(@brand, 20%);
250 - background:
251 - radial-gradient(34rem 12rem at 50% 0%, #E7FFF8 0%, #fff 70%);
252 - box-shadow: @shadow-sm;
253 - text-align: center;
197 +@media (max-width: 767px) {
198 + .agnease-product-page {
199 + .product-index-hero {
200 + padding: 38px 0 34px;
201 + }
254 254  
255 - h2 {
256 - margin-top: 0;
257 - }
203 + h1 {
204 + font-size: 30px;
205 + }
258 258  
259 - p {
260 - color: @muted;
261 - line-height: 1.55;
262 - }
263 -}
207 + .page-lead {
208 + font-size: 16px;
209 + }
264 264  
265 -@media (max-width: 900px) {
266 - .product-layout,
267 - .product-feature-grid,
268 - .product-card-grid {
269 - grid-template-columns: 1fr;
270 - }
211 + .product-card {
212 + grid-template-columns: 1fr;
213 + padding: 22px;
214 + text-align: left;
215 + }
271 271  
272 - .product-summary-card h2 {
273 - text-align: center;
274 - }
217 + .product-card-icon {
218 + margin-bottom: 2px;
219 + }
275 275  
276 - .public-nav {
277 - gap: 14px;
221 + .product-cta-panel {
222 + padding: 24px;
223 + }
278 278   }
279 279  }