Changes for page Public Web Site

Last modified by Agnease on 2026/07/03 16:14

From version 28.28
edited by Agnease
on 2026/07/03 13:25
Change comment: There is no comment for this version
To version 20.12
edited by Agnease
on 2026/06/23 07:47
Change comment: There is no comment for this version

Summary

Details

Page properties
Default language
... ... @@ -1,0 +1,1 @@
1 +en
Hidden
... ... @@ -1,1 +1,1 @@
1 -true
1 +false
Content
... ... @@ -2,45 +2,7 @@
2 2  #macro (displayPublicContent)
3 3   #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
4 4   {{html clean="false"}}
5 - <section class="hero hero-saas" id="top">
6 - <div class="container">
7 - <div class="hero-layout">
8 - <div class="hero-copy">
9 - <h1>Professional XWiki consulting <span>and engineering</span></h1>
10 10  
11 - <p class="lead">
12 - Agnease helps organizations upgrade, maintain, secure and extend production XWiki platforms with practical engineering support, custom development, integrations and long-term care.
13 - </p>
14 -
15 - <ul class="benefits">
16 - <li>XWiki LTS upgrades</li>
17 - <li>Maintenance and support</li>
18 - <li>Custom XWiki development</li>
19 - <li>Migrations and integrations</li>
20 - </ul>
21 -
22 - <div class="hero-actions" id="hero-cta">
23 - <a class="btn btn-primary" href="https://calendly.com/alex-agnease/30min?back=1&month=2026-06">
24 - Book a free discussion
25 - </a>
26 - <a class="btn btn-secondary" href="$xwiki.getURL('services.WebHome')">View XWiki services</a>
27 - </div>
28 - </div>
29 -
30 - <div class="hero-image-wrapper">
31 - <img
32 - class="hero-image"
33 - src="$xwiki.getDocument('PublicWebSite.WebHome').getAttachmentURL('agnease-xwiki-hero.png')"
34 - alt="Illustration of a professional XWiki platform dashboard with upgrade, security and maintenance elements"
35 - width="1200"
36 - height="900"
37 - loading="eager"
38 - />
39 - </div>
40 - </div>
41 - </div>
42 - </section>
43 -#*
44 44   <section class="hero hero-centered" aria-labelledby="hero-title">
45 45   <div class="container hero-inner">
46 46   <h1 id="hero-title">Professional XWiki consulting and engineering</h1>
... ... @@ -64,7 +64,7 @@
64 64   </div>
65 65   </div>
66 66   </section>
67 -*#
29 +
68 68   <section class="trust-strip" aria-label="Agnease experience">
69 69   <div class="container">
70 70   <ul>
... ... @@ -149,9 +149,9 @@
149 149   </div>
150 150   </section>
151 151  
152 - <section class="contrast-band" aria-labelledby="industry-trust-title">
114 + <section class="industry-trust-section" aria-labelledby="industry-trust-title">
153 153   <div class="container">
154 - <div class="contrast-panel">
116 + <div class="industry-trust-panel">
155 155   <h2 id="industry-trust-title">Trusted XWiki expertise for business-critical platforms</h2>
156 156  
157 157   <p class="section-intro">
... ... @@ -159,7 +159,7 @@
159 159   government institutions, transportation, software development, compliance programs and regulated environments.
160 160   </p>
161 161  
162 - <div class="contrast-tags" aria-label="Industries and environments supported">
124 + <div class="industry-tags" aria-label="Industries and environments supported">
163 163   <span>Healthcare</span>
164 164   <span>Financial services</span>
165 165   <span>Scientific research</span>
... ... @@ -170,7 +170,7 @@
170 170   <span>Regulated environments</span>
171 171   </div>
172 172  
173 - <p class="contrast-support">
135 + <p class="industry-support">
174 174   Organizations rely on these platforms to manage documentation, workflows, compliance processes,
175 175   research knowledge and critical business information. From upgrades and authentication integrations
176 176   to workflow systems and long-term maintenance, Agnease helps keep XWiki secure, stable and ready for the future.
agnease-xwiki-hero.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Admin
Size
... ... @@ -1,1 +1,0 @@
1 -981.8 KB
Content
XWiki.StyleSheetExtension[0]
code
... ... @@ -1,5 +1,5 @@
1 1  /* ========== Agnease Public Website ========== */
2 -/*
2 +
3 3  @brand: #00937D;
4 4  @brand-strong: #007B6A;
5 5  @brand-soft: #E7FFF8;
... ... @@ -11,19 +11,6 @@
11 11  @shadow-sm: 0 6px 20px rgba(0, 0, 0, .06);
12 12  @shadow: 0 12px 36px rgba(0, 0, 0, .08);
13 13  @maxw: 1140px;
14 -*/
15 -@brand: #00937D;
16 -@brand-strong: #007B6A;
17 -@brand-soft: #E7FFF8;
18 -@brand-bg: #F7F9FC;
19 -@text: #07182D;
20 -@text-soft: #10243D;
21 -@muted: #64748B;
22 -@line: #E6EBF2;
23 -@radius: 18px;
24 -@shadow-sm: 0 18px 45px rgba(15, 23, 42, .06);
25 -@shadow: 0 30px 80px rgba(15, 23, 42, .12);
26 -@maxw: 1140px;
27 27  
28 28  @section-padding: 30px 0;
29 29  @section-padding-mobile: 28px 0;
... ... @@ -150,7 +150,7 @@
150 150  
151 151  /* ========== Buttons ========== */
152 152  
153 -/*.btn-primary {
140 +.btn-primary {
154 154   background: @brand;
155 155   border-color: @brand;
156 156   color: #fff;
... ... @@ -162,12 +162,18 @@
162 162   color: #fff;
163 163   }
164 164  }
165 -*/
152 +
166 166  .btn-secondary {
167 - color: @text;
154 + color: @brand;
168 168   background: #fff;
169 - border: 1px solid fade(@text, 35%);
156 + border: 1px solid fade(@brand, 35%);
170 170  
158 + &:hover,
159 + &:focus {
160 + color: @brand-strong;
161 + border-color: @brand;
162 + background: @brand-bg;
163 + }
171 171  }
172 172  
173 173  /* ========== Hero ========== */
... ... @@ -179,6 +179,9 @@
179 179  
180 180   &.hero-centered {
181 181   text-align: center;
175 + background:
176 + radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%),
177 + radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%);
182 182   display: flex;
183 183   align-items: center;
184 184   justify-content: center;
... ... @@ -247,112 +247,34 @@
247 247   margin-top: 22px;
248 248  }
249 249  
250 -/* ========== Contrast Band ========== */
246 +/* ========== Trust Strip ========== */
251 251  
252 -.contrast-band {
253 - position: relative;
254 - overflow: hidden;
255 - padding: 54px 0;
256 - border-top: 0;
257 - background:
258 - radial-gradient(circle at 18% 18%, fade(@brand, 22%) 0%, transparent 28%),
259 - radial-gradient(circle at 86% 12%, fade(@brand, 16%) 0%, transparent 30%),
260 - linear-gradient(135deg, @text 0%, @text-soft 100%);
261 - color: #fff;
248 +.trust-strip {
249 + padding: 18px 0;
250 + border-top: 1px solid @line;
251 + background: #fff;
262 262  
263 - /*
264 - * Full-bleed background without changing layout width.
265 - * This extends the dark surface beyond a fixed-width parent
266 - * without using 100vw or negative margins.
267 - */
268 - box-shadow: 0 0 0 100vmax @text;
269 - clip-path: inset(0 -100vmax);
270 -}
253 + ul {
254 + max-width: 960px;
255 + margin: 0 auto;
256 + padding: 0;
257 + list-style: none;
258 + display: flex;
259 + justify-content: center;
260 + gap: 22px;
261 + flex-wrap: wrap;
262 + color: @muted;
263 + font-size: 13px;
264 + }
271 271  
272 -.contrast-band::before {
273 - content: "";
274 - position: absolute;
275 - inset: 0;
276 - background:
277 - linear-gradient(90deg, fade(#fff, 4%) 1px, transparent 1px),
278 - linear-gradient(180deg, fade(#fff, 4%) 1px, transparent 1px);
279 - background-size: 52px 52px;
280 - opacity: .38;
281 - pointer-events: none;
282 -}
283 -
284 -.contrast-band .container {
285 - position: relative;
286 - z-index: 1;
287 -}
288 -
289 -.contrast-panel {
290 - max-width: 1040px;
291 - margin: 0 auto;
292 - text-align: center;
293 -}
294 -
295 -.contrast-band h2 {
296 - max-width: 860px;
297 - margin: 0 auto 12px;
298 - color: #fff;
299 -}
300 -
301 -.contrast-band .section-intro {
302 - max-width: 840px;
303 - margin: 0 auto 26px;
304 - color: #D9E3EE;
305 -}
306 -
307 -.contrast-tags {
308 - max-width: 940px;
309 - margin: 0 auto;
310 - display: flex;
311 - flex-wrap: wrap;
312 - justify-content: center;
313 - gap: 10px;
314 -}
315 -
316 -.contrast-tags span {
317 - display: inline-flex;
318 - align-items: center;
319 - padding: 8px 13px;
320 - border: 1px solid fade(#fff, 18%);
321 - border-radius: 999px;
322 - background: fade(#fff, 8%);
323 - color: #F8FAFC;
324 - font-size: 13px;
325 - font-weight: 700;
326 - line-height: 1.2;
327 -}
328 -
329 -.contrast-tags span::before {
330 - content: "";
331 - width: 7px;
332 - height: 7px;
333 - margin-right: 8px;
334 - border-radius: 50%;
335 - background: @brand;
336 - box-shadow: 0 0 0 4px fade(@brand, 18%);
337 -}
338 -
339 -.contrast-support {
340 - max-width: 860px;
341 - margin: 30px auto 0;
342 - color: #D9E3EE;
343 - text-align: center;
344 - font-size: 15px;
345 - line-height: 1.7;
346 -}
347 -
348 -@media (max-width: 640px) {
349 - .contrast-band {
350 - padding: 40px 0;
266 + li {
267 + display: flex;
268 + align-items: center;
269 + gap: 7px;
351 351   }
352 352  
353 - .contrast-tags span {
354 - font-size: 12px;
355 - padding: 8px 11px;
272 + i {
273 + color: @brand;
356 356   }
357 357  }
358 358  
... ... @@ -403,6 +403,7 @@
403 403  .pathway-card,
404 404  .service-card,
405 405  .resource-card {
324 + background: #fff;
406 406   border: 1px solid @line;
407 407   border-radius: @radius;
408 408   box-shadow: @shadow-sm;
... ... @@ -512,6 +512,80 @@
512 512   }
513 513  }
514 514  
434 +.industry-trust-section {
435 + background:
436 + radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 70%);
437 +
438 + .industry-trust-panel {
439 + max-width: 1040px;
440 + margin: 0 auto;
441 + padding: 30px 28px;
442 + border: 1px solid fade(@brand, 16%);
443 + border-radius: @radius;
444 + background:
445 + radial-gradient(34rem 12rem at 50% 0%, fade(@brand-soft, 75%) 0%, #fff 72%);
446 + box-shadow: @shadow-sm;
447 + text-align: center;
448 + }
449 +
450 + h2 {
451 + margin-bottom: 12px;
452 + }
453 +
454 + .section-intro {
455 + margin-bottom: 20px;
456 + max-width: 820px;
457 + }
458 +
459 + .industry-tags {
460 + max-width: 880px;
461 + margin: 0 auto;
462 + display: flex;
463 + flex-wrap: wrap;
464 + justify-content: center;
465 + gap: 10px;
466 + }
467 +
468 + .industry-tags span {
469 + display: inline-flex;
470 + align-items: center;
471 + padding: 7px 12px;
472 + border: 1px solid fade(@brand, 20%);
473 + border-radius: 999px;
474 + background: #fff;
475 + color: @text;
476 + font-size: 13px;
477 + font-weight: 600;
478 + line-height: 1.2;
479 + box-shadow: 0 3px 10px rgba(0, 0, 0, .04);
480 + }
481 +
482 + .industry-support {
483 + max-width: 820px;
484 + margin: 22px auto 0;
485 + color: @muted;
486 + font-size: 16px;
487 + line-height: 1.6;
488 + }
489 +}
490 +
491 +@media (max-width: 640px) {
492 + .industry-trust-section {
493 + .industry-trust-panel {
494 + padding: 24px 18px;
495 + }
496 +
497 + .industry-tags {
498 + gap: 8px;
499 + }
500 +
501 + .industry-tags span {
502 + font-size: 12px;
503 + padding: 6px 10px;
504 + }
505 + }
506 +}
507 +
515 515  /* ========== Services ========== */
516 516  
517 517  .services {
... ... @@ -524,6 +524,7 @@
524 524   align-items: flex-start;
525 525   gap: 16px;
526 526   padding: 22px;
520 + background: #fff;
527 527   border: 1px solid @line;
528 528   border-radius: @radius;
529 529   box-shadow: @shadow-sm;
... ... @@ -611,6 +611,7 @@
611 611   position: relative;
612 612   padding: 16px 16px 16px 58px;
613 613   margin-bottom: 12px;
608 + background: #fff;
614 614   border: 1px solid @line;
615 615   border-radius: @radius;
616 616   box-shadow: @shadow-sm;
... ... @@ -742,8 +742,8 @@
742 742  
743 743  /* ========== CTA ========== */
744 744  
745 -#mainContentArea .cta-section {
746 - padding: 44px 0 56px;
740 +.cta-section {
741 + padding: @section-padding;
747 747  
748 748   .contact-inline {
749 749   margin: 0;
... ... @@ -755,70 +755,27 @@
755 755   }
756 756  }
757 757  
758 -#mainContentArea .cta-panel {
759 - position: relative;
760 - overflow: hidden;
761 - max-width: 1040px;
753 +.cta-panel {
754 + max-width: 860px;
762 762   margin: 0 auto;
763 - padding: 48px 40px;
764 - border: 0;
765 - border-radius: 26px;
756 + padding: 32px;
757 + border-radius: @radius;
758 + border: 1px solid fade(@brand, 20%);
766 766   background:
767 - radial-gradient(circle at 88% 10%, fade(@brand, 24%) 0%, transparent 30%),
768 - linear-gradient(135deg, @text 0%, @text-soft 100%);
769 - color: #fff;
770 - box-shadow: @shadow;
760 + radial-gradient(34rem 12rem at 50% 0%, @brand-soft 0%, #fff 70%);
761 + box-shadow: @shadow-sm;
771 771   text-align: center;
772 -}
773 773  
774 -#mainContentArea .cta-panel::before {
775 - content: "";
776 - position: absolute;
777 - inset: 0;
778 - background:
779 - linear-gradient(90deg, fade(#fff, 4%) 1px, transparent 1px),
780 - linear-gradient(180deg, fade(#fff, 4%) 1px, transparent 1px);
781 - background-size: 48px 48px;
782 - opacity: .4;
783 - pointer-events: none;
784 -}
764 + h2 {
765 + margin-top: 0;
766 + }
785 785  
786 -#mainContentArea .cta-panel h2,
787 -#mainContentArea .cta-panel p,
788 -#mainContentArea .cta-panel .btn {
789 - position: relative;
790 - z-index: 1;
768 + p {
769 + color: @muted;
770 + line-height: 1.55;
771 + }
791 791  }
792 792  
793 -#mainContentArea .cta-panel h2 {
794 - max-width: 760px;
795 - margin: 0 auto 16px;
796 - color: #fff;
797 -}
798 -
799 -#mainContentArea .cta-panel p {
800 - max-width: 760px;
801 - margin: 0 auto 28px;
802 - color: #DBE4EF;
803 - font-size: 16px;
804 - line-height: 1.6;
805 -}
806 -
807 -#mainContentArea .cta-panel .btn-primary {
808 - border-color: #fff;
809 - background: #fff;
810 - color: @text;
811 - box-shadow: 0 18px 42px rgba(0, 0, 0, .18);
812 -}
813 -
814 -#mainContentArea .cta-panel .btn-primary:hover,
815 -#mainContentArea .cta-panel .btn-primary:focus {
816 - border-color: #fff;
817 - background: #fff;
818 - color: @brand-strong;
819 - text-decoration: none;
820 -}
821 -
822 822  .resource-inline-cta {
823 823   display: flex;
824 824   align-items: center;
... ... @@ -950,14 +950,9 @@
950 950   gap: 14px;
951 951   }
952 952  
953 - #mainContentArea .cta-panel {
954 - padding: 30px 22px;
955 - border-radius: 20px;
905 + .cta-panel {
906 + padding: 24px 20px;
956 956   }
957 -
958 - #mainContentArea .cta-panel .btn-primary {
959 - width: 100%;
960 - }
961 961  }
962 962  
963 963  /* ========== Resource / Article Pages ========== */
... ... @@ -969,6 +969,9 @@
969 969  .resource-header {
970 970   padding: @section-padding;
971 971   border-top: none;
919 + background:
920 + radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%),
921 + radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%);
972 972  
973 973   h1 {
974 974   margin: 0 auto 14px;
... ... @@ -1116,6 +1116,7 @@
1116 1116   border: 1px solid @line;
1117 1117   border-radius: @radius;
1118 1118   padding: 18px;
1069 + background: #fff;
1119 1119   box-shadow: @shadow-sm;
1120 1120  
1121 1121   h4 {
... ... @@ -1205,39 +1205,30 @@
1205 1205  }
1206 1206  
1207 1207  .product-card-grid {
1208 - max-width: 980px;
1209 - margin: 26px auto 0;
1159 + max-width: 840px;
1160 + margin: 22px auto 0;
1210 1210   display: grid;
1211 1211   grid-template-columns: 1fr;
1212 - grid-gap: 22px;
1163 + grid-gap: 18px;
1213 1213  }
1214 1214  
1215 1215  .product-card {
1216 - position: relative;
1167 + background: #fff;
1217 1217   border: 1px solid @line;
1218 1218   border-radius: @radius;
1219 1219   box-shadow: @shadow-sm;
1220 - padding: 32px;
1171 + padding: 28px;
1221 1221   display: grid;
1222 - grid-template-columns: 70px 1fr;
1223 - grid-gap: 24px;
1173 + grid-template-columns: 68px 1fr;
1174 + grid-gap: 22px;
1224 1224   align-items: start;
1225 - overflow: hidden;
1226 1226  
1227 - &:before {
1228 - content: "";
1229 - position: absolute;
1230 - inset: 0 auto 0 0;
1231 - width: 5px;
1232 - background: linear-gradient(180deg, @brand 0%, @brand-strong 100%);
1233 - }
1234 -
1235 1235   .product-card-icon {
1236 1236   width: 58px;
1237 1237   height: 58px;
1238 1238   border-radius: 50%;
1239 1239   background: fade(@brand, 10%);
1240 - border: 1px solid fade(@brand, 22%);
1182 + border: 1px solid fade(@brand, 20%);
1241 1241   color: @brand;
1242 1242   display: flex;
1243 1243   align-items: center;
... ... @@ -1246,15 +1246,11 @@
1246 1246   flex-shrink: 0;
1247 1247   }
1248 1248  
1249 - .product-card-body {
1250 - min-width: 0;
1251 - }
1252 -
1253 1253   h3 {
1254 1254   margin: 0 0 10px;
1255 1255   color: @text;
1256 - font-size: 25px;
1257 - line-height: 1.22;
1194 + font-size: 23px;
1195 + line-height: 1.25;
1258 1258   font-weight: 800;
1259 1259   }
1260 1260  
... ... @@ -1263,36 +1263,25 @@
1263 1263   line-height: 1.6;
1264 1264   }
1265 1265  
1266 - .product-card-description {
1267 - max-width: 760px;
1268 - margin: 0 0 14px;
1269 - font-size: 16px;
1204 + .card-link {
1205 + margin: 0;
1206 +
1207 + a {
1208 + font-weight: 700;
1209 + }
1270 1270   }
1271 1271  }
1272 1272  
1273 1273  .product-card-kicker {
1274 - display: inline-flex;
1275 - align-items: center;
1276 - gap: 7px;
1277 - width: fit-content;
1278 1278   margin-bottom: 10px;
1279 1279   padding: 5px 10px;
1280 - border: 1px solid fade(@brand, 24%);
1281 - border-radius: 999px;
1282 - background: fade(@brand, 8%);
1283 - color: @brand-strong;
1284 1284   font-size: 12px;
1285 - font-weight: 800;
1286 1286   text-transform: uppercase;
1287 1287   letter-spacing: .04em;
1288 -
1289 - i {
1290 - color: @brand;
1291 - }
1292 1292  }
1293 1293  
1294 1294  .product-highlights {
1295 - margin: 14px 0 22px;
1222 + margin: 14px 0 20px;
1296 1296   padding-left: 18px;
1297 1297   color: @muted;
1298 1298  
... ... @@ -1302,58 +1302,12 @@
1302 1302   }
1303 1303  }
1304 1304  
1305 -.product-card-actions {
1306 - display: flex;
1307 - align-items: center;
1308 - gap: 16px;
1309 - flex-wrap: wrap;
1310 -
1311 - .btn {
1312 - font-weight: 700;
1313 - }
1314 -}
1315 -
1316 -.product-card-contact {
1317 - color: @brand;
1318 - font-weight: 700;
1319 - text-decoration: underline;
1320 -
1321 - &:hover,
1322 - &:focus {
1323 - color: @brand-strong;
1324 - }
1325 -}
1326 -
1327 -@media (max-width: 640px) {
1328 - .product-card {
1329 - grid-template-columns: 1fr;
1330 - padding: 26px 22px;
1331 - text-align: left;
1332 -
1333 - &:before {
1334 - width: 4px;
1335 - }
1336 -
1337 - .product-card-icon {
1338 - margin-bottom: 2px;
1339 - }
1340 -
1341 - h3 {
1342 - font-size: 22px;
1343 - }
1344 - }
1345 -
1346 - .product-card-actions {
1347 - gap: 12px;
1348 - }
1349 -}
1350 -
1351 1351  /* ========== Individual Product Pages ========== */
1352 1352  
1353 1353  .product-layout {
1354 1354   display: grid;
1355 - grid-template-columns: minmax(0, 1.12fr) minmax(280px, .88fr);
1356 - grid-gap: 32px;
1236 + grid-template-columns: 1.1fr .9fr;
1237 + grid-gap: 36px;
1357 1357   max-width: 1040px;
1358 1358   margin: 0 auto;
1359 1359   align-items: start;
... ... @@ -1363,6 +1363,7 @@
1363 1363  .product-info-card,
1364 1364  .product-feature,
1365 1365  .product-gallery-panel {
1247 + background: #fff;
1366 1366   border: 1px solid @line;
1367 1367   border-radius: @radius;
1368 1368   box-shadow: @shadow-sm;
... ... @@ -1369,18 +1369,16 @@
1369 1369  }
1370 1370  
1371 1371  .product-summary-card {
1372 - padding: 28px;
1254 + padding: 26px;
1373 1373  
1374 1374   h2 {
1375 1375   text-align: left;
1376 1376   margin-top: 0;
1377 - margin-bottom: 14px;
1378 - line-height: 1.25;
1379 1379   }
1380 1380  
1381 1381   p {
1382 1382   color: @muted;
1383 - line-height: 1.62;
1263 + line-height: 1.6;
1384 1384   }
1385 1385  
1386 1386   p:last-child {
... ... @@ -1389,19 +1389,13 @@
1389 1389  }
1390 1390  
1391 1391  .product-info-card {
1392 - padding: 24px;
1272 + padding: 22px;
1393 1393  
1394 1394   h3 {
1395 1395   margin-top: 0;
1396 1396   margin-bottom: 12px;
1397 - line-height: 1.3;
1398 1398   }
1399 1399  
1400 - p {
1401 - color: @muted;
1402 - line-height: 1.55;
1403 - }
1404 -
1405 1405   ul {
1406 1406   margin: 0;
1407 1407   padding-left: 20px;
... ... @@ -1410,31 +1410,22 @@
1410 1410  
1411 1411   li {
1412 1412   margin: 8px 0;
1413 - line-height: 1.3;
1287 + line-height: 1.45;
1414 1414   }
1415 1415  }
1416 1416  
1417 -.product-card-note {
1418 - margin: 0 0 14px;
1419 - color: @muted;
1420 - line-height: 1.55;
1421 -}
1422 -
1423 1423  .product-feature-grid {
1424 1424   display: grid;
1425 1425   grid-template-columns: repeat(3, minmax(0, 1fr));
1426 - grid-gap: 20px;
1294 + grid-gap: 18px;
1427 1427   max-width: 1040px;
1428 - margin: 24px auto 0;
1296 + margin: 22px auto 0;
1429 1429  }
1430 1430  
1431 1431  .product-feature {
1432 - padding: 24px;
1433 - min-width: 0;
1434 - min-height: 100%;
1300 + padding: 22px;
1435 1435  
1436 - .card-heading,
1437 - .feature-heading {
1302 + .card-heading {
1438 1438   display: flex;
1439 1439   align-items: center;
1440 1440   gap: 14px;
... ... @@ -1464,13 +1464,13 @@
1464 1464   p {
1465 1465   margin: 0;
1466 1466   color: @muted;
1467 - line-height: 1.52;
1332 + line-height: 1.5;
1468 1468   }
1469 1469  }
1470 1470  
1471 1471  .product-gallery-caption {
1472 - max-width: 820px;
1473 - margin: 12px auto 0;
1337 + max-width: 860px;
1338 + margin: 28px auto 12px;
1474 1474   color: @muted;
1475 1475   font-size: 14px;
1476 1476   line-height: 1.5;
... ... @@ -1477,43 +1477,37 @@
1477 1477   text-align: center;
1478 1478  }
1479 1479  
1480 -/* Keep the default XWiki gallery style.
1481 - Only add spacing before it and center it. */
1482 1482  .gallery.xGallery {
1483 - margin: 25px auto;
1484 - width: 920px;
1485 - height: 518px;
1346 + width: 100%;
1347 + max-width: 860px;
1348 + margin: 0 auto 46px !important;
1349 + border: 1px solid @line;
1350 + border-radius: @radius;
1351 + background: #fff;
1352 + box-shadow: @shadow-sm;
1353 + overflow: hidden;
1354 + clear: both;
1486 1486  }
1487 1487  
1488 -.product-section-muted {
1489 - background:
1490 - radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 65%);
1357 +.gallery.xGallery.loading {
1358 + min-height: 260px;
1491 1491  }
1492 1492  
1493 -/* Compact process list when used inside a product card. */
1494 -.product-summary-card .process-list {
1495 - margin-top: 16px;
1361 +.gallery.xGallery img {
1362 + border-radius: 12px;
1363 +}
1496 1496  
1497 - li {
1498 - padding: 13px 14px 13px 50px;
1499 - margin-bottom: 10px;
1500 - box-shadow: none;
1501 - }
1365 +.gallery.xGallery .galleria-container,
1366 +.gallery.xGallery .galleria-stage {
1367 + border-radius: @radius;
1368 + overflow: hidden;
1369 +}
1502 1502  
1503 - li:before {
1504 - left: 14px;
1505 - top: 14px;
1506 - width: 24px;
1507 - height: 24px;
1508 - font-size: 12px;
1509 - }
1510 -
1511 - strong {
1512 - margin-bottom: 2px;
1513 - }
1371 +.product-section-muted {
1372 + background:
1373 + radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 65%);
1514 1514  }
1515 1515  
1516 -/* Kept for older product pages that still use a screenshot placeholder/panel. */
1517 1517  .product-gallery-panel {
1518 1518   max-width: 1040px;
1519 1519   margin: 20px auto 0;
... ... @@ -1575,36 +1575,26 @@
1575 1575   padding: 20px;
1576 1576   }
1577 1577  
1578 - .product-feature {
1579 - .card-heading,
1580 - .feature-heading {
1581 - gap: 12px;
1582 - }
1583 -
1584 - .feature-icon {
1585 - width: 42px;
1586 - height: 42px;
1587 - font-size: 16px;
1588 - }
1437 + .product-gallery-caption {
1438 + margin-top: 22px;
1439 + padding: 0 14px;
1589 1589   }
1590 1590  
1591 1591   .gallery.xGallery {
1592 - margin-top: 22px !important;
1443 + max-width: calc(100% - 28px);
1444 + margin-bottom: 34px !important;
1445 + border-radius: 12px;
1593 1593   }
1594 1594  
1595 - .product-gallery-caption {
1596 - margin-top: 10px;
1597 - padding: 0 14px;
1448 + .gallery.xGallery.loading {
1449 + min-height: 180px;
1598 1598   }
1599 -
1600 - .product-summary-card .process-list li {
1601 - padding-left: 46px;
1602 - }
1603 1603  }
1604 1604  
1605 1605  /* ========== Resources Index ========== */
1606 1606  
1607 1607  .resources-index-page {
1456 + background: #fff;
1608 1608  
1609 1609   .services-grid {
1610 1610   grid-template-columns: repeat(2, minmax(0, 1fr));
... ... @@ -1631,302 +1631,1455 @@
1631 1631  
1632 1632   summary {
1633 1633   cursor: pointer;
1634 - font-weight: 700;
1635 - color: @text;
1636 - }
1483 + font-weight: 700;/* ========== Agnease Public Website ========== */
1637 1637  
1638 - p {
1639 - margin: 10px 0 4px;
1640 - color: @muted;
1641 - }
1485 +@brand: #00937D;
1486 +@brand-strong: #007B6A;
1487 +@brand-soft: #E7FFF8;
1488 +@brand-bg: #F4FCFA;
1489 +@text: #2D3A34;
1490 +@muted: #5B6B64;
1491 +@line: #E4ECE9;
1492 +@radius: 16px;
1493 +@shadow-sm: 0 6px 20px rgba(0, 0, 0, .06);
1494 +@shadow: 0 12px 36px rgba(0, 0, 0, .08);
1495 +@maxw: 1140px;
1496 +
1497 +@section-padding: 30px 0;
1498 +@section-padding-mobile: 28px 0;
1499 +
1500 +/* ========== Base ========== */
1501 +
1502 +#mainContentArea {
1503 + padding: 0;
1642 1642  }
1643 1643  
1644 -/* ========== Global Theme Background ========== */
1506 +.container {
1507 + max-width: @maxw;
1508 + margin-left: auto;
1509 + margin-right: auto;
1510 + padding-left: 18px;
1511 + padding-right: 18px;
1512 +}
1645 1645  
1646 -html,
1647 -body {
1648 - min-height: 100%;
1514 +html {
1515 + scroll-behavior: smooth;
1649 1649  }
1650 1650  
1651 -body {
1518 +section {
1519 + padding: @section-padding;
1520 + border-top: 1px solid @line;
1521 +
1522 + &:first-of-type {
1523 + border-top: none;
1524 + }
1525 +}
1526 +
1527 +section[id] {
1528 + scroll-margin-top: 92px;
1529 +}
1530 +
1531 +h1,
1532 +h2,
1533 +h3,
1534 +h4 {
1652 1652   color: @text;
1653 - background:
1654 - radial-gradient(circle at 12% 8%, rgba(0, 147, 125, 0.08) 0, transparent 26%),
1655 - radial-gradient(circle at 90% 28%, rgba(7, 24, 45, 0.05) 0, transparent 30%),
1656 - linear-gradient(180deg, #fff 0, @brand-bg 42%, #fff 100%) !important;
1657 - background-attachment: fixed;
1658 1658  }
1659 1659  
1660 -#mainContentArea {
1661 - padding: 0;
1662 - overflow-x: hidden;
1538 +h2 {
1539 + text-align: center;
1540 + margin-top: 0;
1663 1663  }
1664 1664  
1665 -/* ========== Main Page Hero / SaaS Layout ========== */
1543 +.lead {
1544 + color: @muted;
1545 + text-align: center;
1546 + margin-bottom: 0;
1547 +}
1666 1666  
1667 -#mainContentArea .hero.hero-saas {
1668 - min-height: auto;
1669 - padding: 60px 0 34px;
1549 +.section-intro {
1550 + max-width: 760px;
1551 + margin: 0 auto 22px;
1552 + text-align: center;
1553 + color: @muted;
1554 + font-size: 16px;
1555 + line-height: 1.55;
1556 +}
1557 +
1558 +a {
1559 + color: @brand;
1560 +
1561 + &:hover,
1562 + &:focus {
1563 + color: @brand-strong;
1564 + }
1565 +}
1566 +
1567 +/* ========== Header / Navigation ========== */
1568 +
1569 +.site-header {
1570 + position: sticky;
1571 + top: 0;
1572 + z-index: 1000;
1573 + background: fade(#fff, 96%);
1574 + border-bottom: 1px solid fade(@line, 85%);
1575 + backdrop-filter: blur(8px);
1576 +}
1577 +
1578 +.header-inner {
1579 + min-height: 72px;
1670 1670   display: flex;
1671 1671   align-items: center;
1672 - overflow: hidden;
1673 - background: transparent;
1582 + justify-content: space-between;
1583 + gap: 24px;
1674 1674  }
1675 1675  
1676 -#mainContentArea .hero-layout {
1677 - max-width: 1120px;
1678 - margin: 0 auto;
1679 - display: grid;
1680 - grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
1681 - gap: 56px;
1586 +.site-nav {
1587 + display: flex;
1682 1682   align-items: center;
1589 + gap: 22px;
1590 + font-size: 15px;
1591 +
1592 + a {
1593 + color: @text;
1594 + text-decoration: none;
1595 + font-weight: 600;
1596 +
1597 + &:hover,
1598 + &:focus {
1599 + color: @brand;
1600 + text-decoration: none;
1601 + }
1602 + }
1603 +
1604 + .nav-cta {
1605 + color: #fff;
1606 + background: @brand;
1607 + border: 1px solid @brand;
1608 + border-radius: 6px;
1609 + padding: 8px 14px;
1610 +
1611 + &:hover,
1612 + &:focus {
1613 + color: #fff;
1614 + background: @brand-strong;
1615 + border-color: @brand-strong;
1616 + }
1617 + }
1683 1683  }
1684 1684  
1685 -#mainContentArea .hero-copy {
1686 - min-width: 0;
1687 - text-align: left;
1620 +/* ========== Buttons ========== */
1621 +
1622 +.btn-primary {
1623 + background: @brand;
1624 + border-color: @brand;
1625 + color: #fff;
1626 +
1627 + &:hover,
1628 + &:focus {
1629 + background: @brand-strong;
1630 + border-color: @brand-strong;
1631 + color: #fff;
1632 + }
1688 1688  }
1689 1689  
1690 -#mainContentArea .hero.hero-saas h1 {
1691 - max-width: 640px;
1692 - margin: 0 0 26px;
1693 - font-size: 60px;
1694 - font-weight: 800;
1695 - line-height: 1;
1696 - letter-spacing: -3px;
1635 +.btn-secondary {
1636 + color: @brand;
1637 + background: #fff;
1638 + border: 1px solid fade(@brand, 35%);
1639 +
1640 + &:hover,
1641 + &:focus {
1642 + color: @brand-strong;
1643 + border-color: @brand;
1644 + background: @brand-bg;
1645 + }
1697 1697  }
1698 1698  
1699 -#mainContentArea .hero.hero-saas h1 span {
1648 +/* ========== Hero ========== */
1649 +
1650 +.hero {
1651 + overflow: hidden;
1652 + background-repeat: no-repeat;
1653 + background-attachment: scroll;
1654 +
1655 + &.hero-centered {
1656 + text-align: center;
1657 + background:
1658 + radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%),
1659 + radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%);
1660 + display: flex;
1661 + align-items: center;
1662 + justify-content: center;
1663 + min-height: 330px;
1664 + }
1665 +
1666 + .hero-inner {
1667 + max-width: 860px;
1668 + margin: 0 auto;
1669 + display: flex;
1670 + flex-direction: column;
1671 + align-items: center;
1672 + }
1673 +
1674 + h1 {
1675 + max-width: 790px;
1676 + margin-left: auto;
1677 + margin-right: auto;
1678 + line-height: 1.18;
1679 + }
1680 +
1681 + .lead {
1682 + max-width: 820px;
1683 + font-size: 19px;
1684 + line-height: 1.55;
1685 + margin-top: 12px;
1686 + }
1687 +
1688 + .benefits {
1689 + display: flex;
1690 + flex-wrap: wrap;
1691 + justify-content: center;
1692 + list-style: none;
1693 + padding: 0;
1694 + margin: 14px 0 0;
1695 + color: @muted;
1696 + font-size: 14px;
1697 +
1698 + li + li::before {
1699 + content: "•";
1700 + margin: 0 6px;
1701 + }
1702 + }
1703 +}
1704 +
1705 +.hero-kicker {
1706 + display: inline-flex;
1707 + align-items: center;
1708 + gap: 8px;
1700 1700   color: @brand;
1710 + background: fade(@brand, 8%);
1711 + border: 1px solid fade(@brand, 18%);
1712 + border-radius: 999px;
1713 + padding: 6px 12px;
1714 + margin-bottom: 14px;
1715 + font-size: 13px;
1716 + font-weight: 700;
1701 1701  }
1702 1702  
1703 -#mainContentArea .hero.hero-saas .lead {
1704 - max-width: 590px;
1705 - margin: 0 0 28px;
1706 - color: #334155;
1707 - text-align: left;
1708 - font-size: 18px;
1709 - line-height: 1.6;
1719 +.hero-actions,
1720 +#hero-cta {
1721 + display: flex;
1722 + gap: 12px;
1723 + flex-wrap: wrap;
1724 + justify-content: center;
1725 + margin-top: 22px;
1710 1710  }
1711 1711  
1712 -#mainContentArea .hero.hero-saas .benefits {
1713 - max-width: 620px;
1714 - margin: 0 0 30px;
1715 - padding: 0;
1728 +/* ========== Trust Strip ========== */
1729 +
1730 +.trust-strip {
1731 + padding: 18px 0;
1732 + border-top: 1px solid @line;
1733 + background: #fff;
1734 +
1735 + ul {
1736 + max-width: 960px;
1737 + margin: 0 auto;
1738 + padding: 0;
1739 + list-style: none;
1740 + display: flex;
1741 + justify-content: center;
1742 + gap: 22px;
1743 + flex-wrap: wrap;
1744 + color: @muted;
1745 + font-size: 13px;
1746 + }
1747 +
1748 + li {
1749 + display: flex;
1750 + align-items: center;
1751 + gap: 7px;
1752 + }
1753 +
1754 + i {
1755 + color: @brand;
1756 + }
1757 +}
1758 +
1759 +/* ========== Reusable Grids ========== */
1760 +
1761 +.card-grid,
1762 +.pathways,
1763 +.services-grid,
1764 +.resource-grid,
1765 +.widgets {
1716 1716   display: grid;
1767 + grid-gap: 18px;
1768 + margin-left: auto;
1769 + margin-right: auto;
1770 +}
1771 +
1772 +.card-grid,
1773 +.pathways,
1774 +.services-grid {
1775 + grid-template-columns: repeat(3, minmax(0, 1fr));
1776 + max-width: 1040px;
1777 + margin-top: 22px;
1778 +}
1779 +
1780 +.resource-grid {
1717 1717   grid-template-columns: repeat(2, minmax(0, 1fr));
1718 - gap: 10px 24px;
1719 - list-style: none;
1720 - color: #475569;
1721 - font-size: 15px;
1722 - text-align: left;
1782 + max-width: 1040px;
1783 + margin-top: 22px;
1723 1723  }
1724 1724  
1725 -#mainContentArea .hero.hero-saas .benefits li {
1786 +.widgets {
1787 + grid-template-columns: repeat(4, minmax(0, 1fr));
1788 + max-width: 1040px;
1789 + margin-top: 20px;
1790 +}
1791 +
1792 +.card-grid > *,
1793 +.pathways > *,
1794 +.services-grid > *,
1795 +.resource-grid > *,
1796 +.widgets > * {
1797 + min-width: 0;
1798 +}
1799 +
1800 +/* ========== Shared Card Style ========== */
1801 +
1802 +.widget,
1803 +.pathway-card,
1804 +.service-card,
1805 +.resource-card {
1806 + background: #fff;
1807 + border: 1px solid @line;
1808 + border-radius: @radius;
1809 + box-shadow: @shadow-sm;
1810 +}
1811 +
1812 +/* ========== Small Widgets ========== */
1813 +
1814 +.widget {
1815 + padding: 18px;
1816 + display: flex;
1817 + flex-direction: column;
1818 + height: 100%;
1819 +
1820 + .icon {
1821 + display: flex;
1822 + align-items: center;
1823 + gap: 10px;
1824 + padding-bottom: 8px;
1825 + margin-bottom: 10px;
1826 + border-bottom: 1px solid fade(@line, 70%);
1827 +
1828 + i {
1829 + color: @brand;
1830 + }
1831 +
1832 + h4 {
1833 + margin: 0;
1834 + line-height: 1.25;
1835 + color: @text;
1836 + }
1837 + }
1838 +
1839 + p {
1840 + margin: 0;
1841 + color: @muted;
1842 + line-height: 1.45;
1843 + }
1844 +}
1845 +
1846 +/* ========== Homepage Pathway Cards ========== */
1847 +
1848 +.pathway-card {
1849 + padding: 24px;
1850 + display: flex;
1851 + flex-direction: column;
1852 + min-height: 100%;
1853 +
1854 + .card-heading {
1855 + display: flex;
1856 + align-items: center;
1857 + gap: 14px;
1858 + margin-bottom: 14px;
1859 + }
1860 +
1861 + .pathway-icon {
1862 + width: 52px;
1863 + height: 52px;
1864 + border-radius: 50%;
1865 + display: flex;
1866 + align-items: center;
1867 + justify-content: center;
1868 + color: @brand;
1869 + background: fade(@brand, 10%);
1870 + font-size: 19px;
1871 + flex-shrink: 0;
1872 + }
1873 +
1874 + h3 {
1875 + margin: 0;
1876 + color: @text;
1877 + font-size: 22px;
1878 + line-height: 1.25;
1879 + }
1880 +
1881 + p {
1882 + color: @muted;
1883 + line-height: 1.55;
1884 + margin: 0 0 16px;
1885 + }
1886 +
1887 + ul {
1888 + margin: 0 0 22px;
1889 + padding-left: 18px;
1890 + color: @muted;
1891 + font-size: 14px;
1892 + line-height: 1.55;
1893 + }
1894 +
1895 + li {
1896 + margin: 6px 0;
1897 + }
1898 +
1899 + .card-link {
1900 + margin-top: auto;
1901 + padding-top: 4px;
1902 +
1903 + a {
1904 + color: @brand;
1905 + font-weight: 700;
1906 + text-decoration: underline;
1907 +
1908 + &:hover,
1909 + &:focus {
1910 + color: @brand-strong;
1911 + }
1912 + }
1913 + }
1914 +}
1915 +
1916 +.industry-trust-section {
1917 + background:
1918 + radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 70%);
1919 +
1920 + .industry-trust-panel {
1921 + max-width: 1040px;
1922 + margin: 0 auto;
1923 + padding: 30px 28px;
1924 + border: 1px solid fade(@brand, 16%);
1925 + border-radius: @radius;
1926 + background:
1927 + radial-gradient(34rem 12rem at 50% 0%, fade(@brand-soft, 75%) 0%, #fff 72%);
1928 + box-shadow: @shadow-sm;
1929 + text-align: center;
1930 + }
1931 +
1932 + h2 {
1933 + margin-bottom: 12px;
1934 + }
1935 +
1936 + .section-intro {
1937 + margin-bottom: 20px;
1938 + max-width: 820px;
1939 + }
1940 +
1941 + .industry-tags {
1942 + max-width: 880px;
1943 + margin: 0 auto;
1944 + display: flex;
1945 + flex-wrap: wrap;
1946 + justify-content: center;
1947 + gap: 10px;
1948 + }
1949 +
1950 + .industry-tags span {
1951 + display: inline-flex;
1952 + align-items: center;
1953 + padding: 7px 12px;
1954 + border: 1px solid fade(@brand, 20%);
1955 + border-radius: 999px;
1956 + background: #fff;
1957 + color: @text;
1958 + font-size: 13px;
1959 + font-weight: 600;
1960 + line-height: 1.2;
1961 + box-shadow: 0 3px 10px rgba(0, 0, 0, .04);
1962 + }
1963 +
1964 + .industry-support {
1965 + max-width: 820px;
1966 + margin: 22px auto 0;
1967 + color: @muted;
1968 + font-size: 16px;
1969 + line-height: 1.6;
1970 + }
1971 +}
1972 +
1973 +@media (max-width: 640px) {
1974 + .industry-trust-section {
1975 + .industry-trust-panel {
1976 + padding: 24px 18px;
1977 + }
1978 +
1979 + .industry-tags {
1980 + gap: 8px;
1981 + }
1982 +
1983 + .industry-tags span {
1984 + font-size: 12px;
1985 + padding: 6px 10px;
1986 + }
1987 + }
1988 +}
1989 +
1990 +/* ========== Services ========== */
1991 +
1992 +.services {
1993 + .services-grid {
1994 + max-width: 1040px;
1995 + }
1996 +
1997 + .service {
1998 + display: flex;
1999 + align-items: flex-start;
2000 + gap: 16px;
2001 + padding: 22px;
2002 + background: #fff;
2003 + border: 1px solid @line;
2004 + border-radius: @radius;
2005 + box-shadow: @shadow-sm;
2006 +
2007 + .service-icon {
2008 + width: 46px;
2009 + height: 46px;
2010 + border-radius: 50%;
2011 + display: flex;
2012 + align-items: center;
2013 + justify-content: center;
2014 + font-size: 18px;
2015 + color: @brand;
2016 + background: fade(@brand, 10%);
2017 + flex-shrink: 0;
2018 + margin-top: 2px;
2019 + }
2020 +
2021 + .service-body {
2022 + h4 {
2023 + margin: 0 0 6px;
2024 + font-size: 18px;
2025 + line-height: 1.25;
2026 + font-weight: 800;
2027 + color: @text;
2028 + }
2029 +
2030 + p {
2031 + margin: 0 0 8px;
2032 + color: @muted;
2033 + line-height: 1.5;
2034 + }
2035 +
2036 + ul {
2037 + margin: 9px 0 0;
2038 + padding-left: 18px;
2039 + color: @muted;
2040 + font-size: 13px;
2041 + line-height: 1.5;
2042 + }
2043 +
2044 + li {
2045 + margin: 4px 0;
2046 + }
2047 + }
2048 + }
2049 +}
2050 +
2051 +/* ========== Split / Process Section ========== */
2052 +
2053 +.split-section {
2054 + background:
2055 + radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 65%);
2056 +}
2057 +
2058 +.split-grid {
1726 1726   display: grid;
1727 - grid-template-columns: 18px minmax(0, 1fr);
1728 - column-gap: 8px;
1729 - align-items: start;
1730 - margin: 0;
1731 - line-height: 1.45;
2060 + grid-template-columns: 1.1fr .9fr;
2061 + grid-gap: 36px;
2062 + max-width: 1040px;
2063 + margin: 0 auto;
2064 + align-items: center;
1732 1732  }
1733 1733  
1734 -#mainContentArea .hero.hero-saas .benefits li::before {
1735 - content: "✓";
1736 - display: block;
1737 - width: 18px;
1738 - color: @brand;
1739 - font-weight: 900;
1740 - line-height: 1.45;
1741 - text-align: left;
2067 +.split-copy {
2068 + h2 {
2069 + text-align: left;
2070 + margin-top: 0;
2071 + }
2072 +
2073 + p {
2074 + color: @muted;
2075 + line-height: 1.6;
2076 + }
2077 +}
2078 +
2079 +.process-list {
2080 + counter-reset: process;
1742 1742   margin: 0;
2082 + padding: 0;
2083 + list-style: none;
2084 +
2085 + li {
2086 + counter-increment: process;
2087 + position: relative;
2088 + padding: 16px 16px 16px 58px;
2089 + margin-bottom: 12px;
2090 + background: #fff;
2091 + border: 1px solid @line;
2092 + border-radius: @radius;
2093 + box-shadow: @shadow-sm;
2094 + color: @muted;
2095 + line-height: 1.5;
2096 +
2097 + &:before {
2098 + content: counter(process);
2099 + position: absolute;
2100 + left: 16px;
2101 + top: 16px;
2102 + width: 28px;
2103 + height: 28px;
2104 + border-radius: 50%;
2105 + background: fade(@brand, 10%);
2106 + color: @brand;
2107 + display: flex;
2108 + align-items: center;
2109 + justify-content: center;
2110 + font-weight: 800;
2111 + }
2112 +
2113 + strong {
2114 + display: block;
2115 + color: @text;
2116 + margin-bottom: 3px;
2117 + }
2118 + }
1743 1743  }
1744 1744  
1745 -#mainContentArea .hero.hero-saas .hero-actions,
1746 -#mainContentArea .hero.hero-saas #hero-cta {
1747 - display: flex;
1748 - flex-wrap: wrap;
1749 - justify-content: flex-start;
1750 - gap: 12px;
1751 - margin-top: 0;
2121 +/* ========== Resources ========== */
2122 +
2123 +.resource-strip {
2124 + background: @brand-bg;
1752 1752  }
1753 1753  
1754 -#mainContentArea .hero-image-wrapper {
1755 - min-width: 0;
2127 +.resource-card {
2128 + padding: 20px;
2129 +
2130 + h4 {
2131 + margin: 0 0 8px;
2132 + color: @text;
2133 + font-size: 18px;
2134 + line-height: 1.25;
2135 + }
2136 +
2137 + p {
2138 + color: @muted;
2139 + margin: 0 0 12px;
2140 + line-height: 1.5;
2141 + }
2142 +
2143 + a {
2144 + color: @brand;
2145 + font-weight: 700;
2146 + }
2147 +}
2148 +
2149 +/* ========== Homepage Resource Strip ========== */
2150 +
2151 +.homepage-resource-strip {
2152 + background:
2153 + radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 70%);
2154 +
2155 + .resource-grid {
2156 + max-width: 1040px;
2157 + margin: 22px auto 0;
2158 + display: grid;
2159 + grid-template-columns: repeat(2, minmax(0, 1fr));
2160 + grid-gap: 22px;
2161 + align-items: stretch;
2162 + }
2163 +
2164 + .resource-card {
2165 + display: flex;
2166 + flex-direction: column;
2167 + min-width: 0;
2168 + min-height: 100%;
2169 + padding: 26px;
2170 + }
2171 +
2172 + .resource-card h4 {
2173 + margin: 0 0 10px;
2174 + color: @text;
2175 + font-size: 21px;
2176 + line-height: 1.25;
2177 + font-weight: 700;
2178 + }
2179 +
2180 + .resource-card p {
2181 + margin: 0 0 18px;
2182 + color: @muted;
2183 + font-size: 15px;
2184 + line-height: 1.6;
2185 + }
2186 +
2187 + .resource-card a {
2188 + margin-top: auto;
2189 + color: @brand;
2190 + font-weight: 700;
2191 + text-decoration: underline;
2192 +
2193 + &:hover,
2194 + &:focus {
2195 + color: @brand-strong;
2196 + }
2197 + }
2198 +}
2199 +
2200 +@media (max-width: 980px) {
2201 + .homepage-resource-strip {
2202 + .resource-grid {
2203 + grid-template-columns: 1fr;
2204 + }
2205 + }
2206 +}
2207 +
2208 +@media (max-width: 640px) {
2209 + .homepage-resource-strip {
2210 + .resource-card {
2211 + padding: 22px;
2212 + }
2213 +
2214 + .resource-card h4 {
2215 + font-size: 19px;
2216 + }
2217 + }
2218 +}
2219 +
2220 +/* ========== CTA ========== */
2221 +
2222 +.cta-section {
2223 + padding: @section-padding;
2224 +
2225 + .contact-inline {
2226 + margin: 0;
2227 + color: @muted;
2228 +
2229 + a {
2230 + color: @brand;
2231 + }
2232 + }
2233 +}
2234 +
2235 +.cta-panel {
2236 + max-width: 860px;
2237 + margin: 0 auto;
2238 + padding: 32px;
2239 + border-radius: @radius;
2240 + border: 1px solid fade(@brand, 20%);
2241 + background:
2242 + radial-gradient(34rem 12rem at 50% 0%, @brand-soft 0%, #fff 70%);
2243 + box-shadow: @shadow-sm;
2244 + text-align: center;
2245 +
2246 + h2 {
2247 + margin-top: 0;
2248 + }
2249 +
2250 + p {
2251 + color: @muted;
2252 + line-height: 1.55;
2253 + }
2254 +}
2255 +
2256 +.resource-inline-cta {
1756 1756   display: flex;
1757 - justify-content: center;
1758 1758   align-items: center;
2259 + justify-content: space-between;
2260 + gap: 22px;
2261 + margin: 30px 0;
2262 + padding: 20px 22px;
2263 + border: 1px solid fade(@brand, 22%);
2264 + border-radius: @radius;
2265 + background: @brand-bg;
2266 + box-shadow: @shadow-sm;
2267 +
2268 + p {
2269 + margin: 0;
2270 + color: @muted;
2271 + line-height: 1.55;
2272 + }
2273 +
2274 + strong {
2275 + color: @text;
2276 + }
2277 +
2278 + .btn {
2279 + flex-shrink: 0;
2280 + }
1759 1759  }
1760 1760  
1761 -#mainContentArea .hero-image {
1762 - display: block;
1763 - width: 100%;
1764 - max-width: 620px;
1765 - height: auto;
1766 - border: 0;
2283 +@media (max-width: 767px) {
2284 + .resource-inline-cta {
2285 + display: block;
2286 + text-align: center;
2287 +
2288 + p {
2289 + margin-bottom: 14px;
2290 + }
2291 +
2292 + .btn {
2293 + display: inline-block;
2294 + margin-left: auto;
2295 + margin-right: auto;
2296 + }
2297 + }
1767 1767  }
1768 1768  
1769 -/* ========== Main Page Hero Responsive ========== */
2300 +/* ========== Responsive ========== */
1770 1770  
1771 -@media (max-width: 1100px) {
1772 - #mainContentArea .hero-layout {
1773 - max-width: 760px;
2302 +@media (max-width: 980px) {
2303 + .widgets,
2304 + .pathways,
2305 + .services-grid,
2306 + .resource-grid {
2307 + grid-template-columns: repeat(2, minmax(0, 1fr));
2308 + }
2309 +
2310 + .split-grid {
1774 1774   grid-template-columns: 1fr;
1775 - gap: 34px;
1776 1776   }
1777 1777  
1778 - #mainContentArea .hero-copy {
1779 - order: 1;
2314 + .split-copy h2 {
1780 1780   text-align: center;
1781 1781   }
2317 +}
1782 1782  
1783 - #mainContentArea .hero-image-wrapper {
1784 - order: 2;
2319 +@media (max-width: 760px) {
2320 + section[id] {
2321 + scroll-margin-top: 132px;
1785 1785   }
1786 1786  
1787 - #mainContentArea .hero.hero-saas h1 {
1788 - margin-left: auto;
1789 - margin-right: auto;
2324 + .header-inner {
2325 + min-height: auto;
2326 + padding-top: 14px;
2327 + padding-bottom: 14px;
2328 + flex-direction: column;
2329 + align-items: center;
2330 + gap: 12px;
2331 + }
2332 +
2333 + .site-nav {
2334 + width: 100%;
2335 + justify-content: center;
2336 + flex-wrap: wrap;
2337 + gap: 10px 16px;
2338 + font-size: 14px;
2339 +
2340 + .nav-cta {
2341 + padding: 7px 12px;
2342 + }
2343 + }
2344 +
2345 + .hero.hero-centered {
2346 + min-height: 280px;
2347 + }
2348 +
2349 + .hero {
2350 + .lead {
2351 + font-size: 17px;
2352 + }
2353 +
2354 + .benefits {
2355 + gap: 4px 10px;
2356 +
2357 + li + li::before {
2358 + content: none;
2359 + }
2360 + }
2361 + }
2362 +}
2363 +
2364 +@media (max-width: 640px) {
2365 + section {
2366 + padding: @section-padding-mobile;
2367 + }
2368 +
2369 + .widgets,
2370 + .pathways,
2371 + .services-grid,
2372 + .resource-grid {
2373 + grid-template-columns: 1fr;
2374 + }
2375 +
2376 + .pathway-card,
2377 + .services .service,
2378 + .resource-card,
2379 + .widget {
2380 + padding: 20px;
2381 + }
2382 +
2383 + .services .service {
2384 + gap: 14px;
2385 + }
2386 +
2387 + .cta-panel {
2388 + padding: 24px 20px;
2389 + }
2390 +}
2391 +
2392 +/* ========== Resource / Article Pages ========== */
2393 +
2394 +.resource-page {
2395 + padding-top: 0;
2396 +}
2397 +
2398 +.resource-header {
2399 + padding: @section-padding;
2400 + border-top: none;
2401 + background:
2402 + radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%),
2403 + radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%);
2404 +
2405 + h1 {
2406 + margin: 0 auto 14px;
1790 1790   text-align: center;
2408 + line-height: 1.18;
1791 1791   }
1792 1792  
1793 - #mainContentArea .hero.hero-saas .lead {
1794 - margin-left: auto;
1795 - margin-right: auto;
2411 + .resource-summary {
2412 + max-width: 780px;
2413 + margin: 0 auto;
2414 + color: @muted;
1796 1796   text-align: center;
2416 + font-size: 18px;
2417 + line-height: 1.55;
1797 1797   }
2419 +}
1798 1798  
1799 - #mainContentArea .hero.hero-saas .benefits {
1800 - margin-left: auto;
1801 - margin-right: auto;
2421 +.resource-layout {
2422 + display: block;
2423 + max-width: 1080px;
2424 + margin: 0 auto;
2425 + padding-top: 28px;
2426 +}
2427 +
2428 +.resource-layout::after {
2429 + content: "";
2430 + display: block;
2431 + clear: both;
2432 +}
2433 +
2434 +.resource-content {
2435 + color: @text;
2436 + font-size: 16px;
2437 + line-height: 1.68;
2438 +
2439 + h2 {
2440 + text-align: left;
2441 + margin: 34px 0 12px;
2442 + line-height: 1.28;
1802 1802   }
1803 1803  
1804 - #mainContentArea .hero.hero-saas .hero-actions,
1805 - #mainContentArea .hero.hero-saas #hero-cta {
1806 - justify-content: center;
2445 + h3 {
2446 + margin: 24px 0 8px;
2447 + line-height: 1.3;
1807 1807   }
1808 1808  
1809 - #mainContentArea .hero-image {
1810 - max-width: 620px;
2450 + p {
2451 + margin: 0 0 16px;
1811 1811   }
2453 +
2454 + ul,
2455 + ol {
2456 + margin: 0 0 18px;
2457 + padding-left: 22px;
2458 + }
2459 +
2460 + li {
2461 + margin: 6px 0;
2462 + }
2463 +
2464 + strong {
2465 + color: @text;
2466 + }
1812 1812  }
1813 1813  
1814 -@media (max-width: 640px) {
1815 - #mainContentArea .hero.hero-saas {
1816 - padding: 42px 0 28px;
2469 +.resource-note {
2470 + border-left: 4px solid @brand;
2471 + background: @brand-bg;
2472 + padding: 16px 18px;
2473 + margin: 22px 0;
2474 + border-radius: 0 @radius @radius 0;
2475 +
2476 + p:last-child {
2477 + margin-bottom: 0;
1817 1817   }
2479 +}
1818 1818  
1819 - #mainContentArea .hero-layout {
1820 - gap: 28px;
2481 +.resource-note.related-resources {
2482 + p {
2483 + margin-bottom: 10px;
1821 1821   }
1822 1822  
1823 - #mainContentArea .hero.hero-saas h1 {
1824 - font-size: 42px;
1825 - letter-spacing: -1.5px;
2486 + ul {
2487 + margin: 0;
2488 + padding-left: 20px;
1826 1826   }
1827 1827  
1828 - #mainContentArea .hero.hero-saas .lead {
1829 - font-size: 17px;
2491 + li {
2492 + margin: 6px 0;
2493 + color: @muted;
1830 1830   }
2495 +}
1831 1831  
1832 - #mainContentArea .hero.hero-saas .benefits {
1833 - grid-template-columns: 1fr;
2497 +.resource-faq-item {
2498 + display: flow-root;
2499 + border-bottom: 1px solid @line;
2500 + padding: 12px 0;
2501 +
2502 + summary {
2503 + cursor: pointer;
2504 + font-weight: 700;
2505 + color: @text;
2506 + line-height: 1.4;
1834 1834   }
1835 1835  
1836 - #mainContentArea .hero-image {
1837 - max-width: 100%;
2509 + summary:hover,
2510 + summary:focus {
2511 + color: @brand-strong;
1838 1838   }
2513 +
2514 + p {
2515 + margin: 10px 0 4px;
2516 + color: @muted;
2517 + }
1839 1839  }
1840 1840  
1841 -/* ========== Accessibility / Contrast Improvements ========== */
2520 +.resource-checklist {
2521 + margin: 18px 0 24px;
2522 + padding: 0;
2523 + list-style: none;
1842 1842  
1843 -/* Make the global background softer and less distracting. */
1844 -body {
1845 - background:
1846 - radial-gradient(circle at 12% 8%, rgba(0, 147, 125, 0.035) 0, transparent 26%),
1847 - radial-gradient(circle at 90% 28%, rgba(7, 24, 45, 0.025) 0, transparent 30%),
1848 - linear-gradient(180deg, #fff 0, @brand-bg 42%, #fff 100%) !important;
1849 - background-attachment: scroll;
2525 + li {
2526 + position: relative;
2527 + padding: 10px 0 10px 34px;
2528 + border-bottom: 1px solid @line;
2529 +
2530 + &:before {
2531 + content: "\f00c";
2532 + font-family: FontAwesome;
2533 + position: absolute;
2534 + left: 0;
2535 + top: 11px;
2536 + color: @brand;
2537 + }
2538 + }
1850 1850  }
1851 1851  
1852 -/* Keep the article area readable while preserving the page background around it. */
1853 -#mainContentArea .resource-layout {
1854 - padding: 28px;
1855 - border: 1px solid fade(@line, 85%);
2541 +.resource-sidebar {
2542 + float: right;
2543 + width: 280px;
2544 + margin-left: 42px;
2545 + margin-bottom: 28px;
2546 + position: sticky;
2547 + top: 96px;
2548 + border: 1px solid @line;
1856 1856   border-radius: @radius;
1857 - background: rgba(255, 255, 255, .88);
2550 + padding: 18px;
2551 + background: #fff;
1858 1858   box-shadow: @shadow-sm;
2553 +
2554 + h4 {
2555 + margin: 0 0 10px;
2556 + }
2557 +
2558 + ul {
2559 + margin: 0;
2560 + padding-left: 18px;
2561 + color: @muted;
2562 + }
2563 +
2564 + li {
2565 + margin: 8px 0;
2566 + }
2567 +
2568 + a {
2569 + color: @brand;
2570 + font-weight: 600;
2571 + }
1859 1859  }
1860 1860  
1861 -/* Ensure all reusable cards have a real surface, not transparent over the gradient. */
1862 -#mainContentArea .widget,
1863 -#mainContentArea .pathway-card,
1864 -#mainContentArea .service-card,
1865 -#mainContentArea .resource-card,
1866 -#mainContentArea .services .service,
1867 -#mainContentArea .product-card,
1868 -#mainContentArea .product-feature,
1869 -#mainContentArea .product-summary-card,
1870 -#mainContentArea .product-info-card {
1871 - background: #fff;
2574 +.resource-cta {
2575 + display: flex;
2576 + flex-direction: column;
2577 + align-items: center;
2578 + text-align: center;
2579 +
2580 + max-width: 820px;
2581 + margin: 42px auto 0;
2582 + padding: 28px 30px;
2583 + border: 1px solid fade(@brand, 20%);
2584 + border-radius: @radius;
2585 + background: @brand-bg;
2586 +
2587 + h3 {
2588 + margin-top: 0;
2589 + margin-bottom: 10px;
2590 + }
2591 +
2592 + p {
2593 + max-width: 680px;
2594 + margin-left: auto;
2595 + margin-right: auto;
2596 + color: @muted;
2597 + }
2598 +
2599 + .btn {
2600 + margin-top: 8px;
2601 + }
1872 1872  }
1873 1873  
1874 -/* Make notes more readable and visually stronger. */
1875 -#mainContentArea .resource-note {
1876 - border: 1px solid fade(@brand, 18%);
1877 - border-left: 4px solid @brand;
1878 - background: #fff;
1879 - box-shadow: 0 10px 28px rgba(15, 23, 42, .045);
2604 +.resource-note,
2605 +.resource-checklist,
2606 +.resource-cta {
2607 + display: flow-root;
1880 1880  }
1881 1881  
1882 -/* Keep the sidebar clearly separated from the background. */
1883 -#mainContentArea .resource-sidebar {
1884 - background: #fff;
2610 +@media (max-width: 767px) {
2611 + .resource-cta {
2612 + padding: 24px 20px;
2613 + }
1885 1885  }
1886 1886  
1887 -/* Make CTA panels stand out more clearly. */
1888 -#mainContentArea .resource-cta,
1889 -#mainContentArea .resource-inline-cta {
2616 +@media (max-width: 900px) {
2617 + .resource-layout {
2618 + padding-top: 22px;
2619 + }
2620 +
2621 + .resource-sidebar {
2622 + float: none;
2623 + width: 100%;
2624 + margin-left: 0;
2625 + margin-bottom: 24px;
2626 + position: static;
2627 + }
2628 +}
2629 +
2630 +/* ========== Products / Extensions Pages ========== */
2631 +
2632 +.product-index-section {
2633 + padding: @section-padding;
2634 +
2635 + h2 {
2636 + margin-bottom: 10px;
2637 + }
2638 +}
2639 +
2640 +.product-card-grid {
2641 + max-width: 840px;
2642 + margin: 22px auto 0;
2643 + display: grid;
2644 + grid-template-columns: 1fr;
2645 + grid-gap: 18px;
2646 +}
2647 +
2648 +.product-card {
1890 1890   background: #fff;
2650 + border: 1px solid @line;
2651 + border-radius: @radius;
2652 + box-shadow: @shadow-sm;
2653 + padding: 28px;
2654 + display: grid;
2655 + grid-template-columns: 68px 1fr;
2656 + grid-gap: 22px;
2657 + align-items: start;
2658 +
2659 + .product-card-icon {
2660 + width: 58px;
2661 + height: 58px;
2662 + border-radius: 50%;
2663 + background: fade(@brand, 10%);
2664 + border: 1px solid fade(@brand, 20%);
2665 + color: @brand;
2666 + display: flex;
2667 + align-items: center;
2668 + justify-content: center;
2669 + font-size: 22px;
2670 + flex-shrink: 0;
2671 + }
2672 +
2673 + h3 {
2674 + margin: 0 0 10px;
2675 + color: @text;
2676 + font-size: 23px;
2677 + line-height: 1.25;
2678 + font-weight: 800;
2679 + }
2680 +
2681 + p {
2682 + color: @muted;
2683 + line-height: 1.6;
2684 + }
2685 +
2686 + .card-link {
2687 + margin: 0;
2688 +
2689 + a {
2690 + font-weight: 700;
2691 + }
2692 + }
1891 1891  }
1892 1892  
1893 -/* Improve table readability on long resource pages. */
1894 -#mainContentArea .resource-content table {
2695 +.product-card-kicker {
2696 + margin-bottom: 10px;
2697 + padding: 5px 10px;
2698 + font-size: 12px;
2699 + text-transform: uppercase;
2700 + letter-spacing: .04em;
2701 +}
2702 +
2703 +.product-highlights {
2704 + margin: 14px 0 20px;
2705 + padding-left: 18px;
2706 + color: @muted;
2707 +
2708 + li {
2709 + margin: 6px 0;
2710 + line-height: 1.45;
2711 + }
2712 +}
2713 +
2714 +/* ========== Individual Product Pages ========== */
2715 +
2716 +.product-layout {
2717 + display: grid;
2718 + grid-template-columns: 1.1fr .9fr;
2719 + grid-gap: 36px;
2720 + max-width: 1040px;
2721 + margin: 0 auto;
2722 + align-items: start;
2723 +}
2724 +
2725 +.product-summary-card,
2726 +.product-info-card,
2727 +.product-gallery-panel {
1895 1895   background: #fff;
2729 + border: 1px solid @line;
2730 + border-radius: @radius;
2731 + box-shadow: @shadow-sm;
1896 1896  }
1897 1897  
1898 -#mainContentArea .resource-content table th {
1899 - color: @text;
1900 - background: #F8FAFC;
2734 +.product-summary-card {
2735 + padding: 26px;
2736 +
2737 + h2 {
2738 + text-align: left;
2739 + margin-top: 0;
2740 + }
2741 +
2742 + p {
2743 + color: @muted;
2744 + line-height: 1.6;
2745 + }
2746 +
2747 + p:last-child {
2748 + margin-bottom: 0;
2749 + }
1901 1901  }
1902 1902  
1903 -#mainContentArea .resource-content table td {
1904 - color: @text-soft;
2752 +.product-info-card {
2753 + padding: 22px;
2754 +
2755 + h3 {
2756 + margin-top: 0;
2757 + margin-bottom: 12px;
2758 + }
2759 +
2760 + ul {
2761 + margin: 0;
2762 + padding-left: 20px;
2763 + color: @muted;
2764 + }
2765 +
2766 + li {
2767 + margin: 8px 0;
2768 + line-height: 1.45;
2769 + }
1905 1905  }
1906 1906  
1907 -/* Slightly improve paragraph/list contrast in long articles. */
1908 -#mainContentArea .resource-content p,
1909 -#mainContentArea .resource-content li {
1910 - color: @text-soft;
2772 +.product-feature-grid {
2773 + display: grid;
2774 + grid-template-columns: repeat(3, minmax(0, 1fr));
2775 + grid-gap: 18px;
2776 + max-width: 1040px;
2777 + margin: 22px auto 0;
1911 1911  }
1912 1912  
1913 -#mainContentArea .resource-content .resource-note p,
1914 -#mainContentArea .resource-content .resource-checklist li,
1915 -#mainContentArea .resource-content .process-list li {
2780 +.product-feature {
2781 + background: #fff;
2782 + border: 1px solid @line;
2783 + border-radius: @radius;
2784 + box-shadow: @shadow-sm;
2785 + padding: 22px;
2786 +
2787 + .feature-heading {
2788 + display: flex;
2789 + align-items: center;
2790 + gap: 14px;
2791 + margin-bottom: 14px;
2792 + }
2793 +
2794 + .feature-icon {
2795 + width: 46px;
2796 + height: 46px;
2797 + border-radius: 50%;
2798 + background: fade(@brand, 10%);
2799 + color: @brand;
2800 + display: flex;
2801 + align-items: center;
2802 + justify-content: center;
2803 + font-size: 18px;
2804 + flex-shrink: 0;
2805 + }
2806 +
2807 + h3 {
2808 + margin: 0;
2809 + color: @text;
2810 + font-size: 18px;
2811 + line-height: 1.25;
2812 + }
2813 +
2814 + p {
2815 + margin: 0;
2816 + color: @muted;
2817 + line-height: 1.5;
2818 + }
2819 +}
2820 +
2821 +.product-gallery-panel {
2822 + max-width: 1040px;
2823 + margin: 20px auto 0;
2824 + padding: 26px;
2825 +
2826 + h2 {
2827 + margin-top: 0;
2828 + text-align: center;
2829 + }
2830 +
2831 + .gallery-note {
2832 + max-width: 700px;
2833 + margin: 0 auto 18px;
2834 + color: @muted;
2835 + text-align: center;
2836 + line-height: 1.55;
2837 + }
2838 +}
2839 +
2840 +.product-gallery-placeholder {
2841 + min-height: 260px;
2842 + padding: 28px;
2843 + border: 1px dashed fade(@brand, 40%);
2844 + border-radius: @radius;
2845 + background: fade(@brand, 5%);
1916 1916   color: @muted;
2847 + text-align: center;
2848 + display: flex;
2849 + align-items: center;
2850 + justify-content: center;
1917 1917  }
1918 1918  
1919 -@media (max-width: 900px) {
1920 - #mainContentArea .resource-layout {
1921 - padding: 22px;
2853 +.product-section-muted {
2854 + background:
2855 + radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 65%);
2856 +}
2857 +
2858 +@media (max-width: 980px) {
2859 + .product-layout,
2860 + .product-feature-grid {
2861 + grid-template-columns: 1fr;
1922 1922   }
2863 +
2864 + .product-summary-card h2 {
2865 + text-align: center;
2866 + }
1923 1923  }
1924 1924  
1925 1925  @media (max-width: 640px) {
1926 - #mainContentArea .resource-layout {
1927 - padding: 18px;
1928 - border-radius: 14px;
2870 + .product-card {
2871 + grid-template-columns: 1fr;
2872 + padding: 22px;
2873 + text-align: left;
2874 +
2875 + .product-card-icon {
2876 + margin-bottom: 2px;
2877 + }
1929 1929   }
2879 +
2880 + .product-summary-card,
2881 + .product-info-card,
2882 + .product-feature,
2883 + .product-gallery-panel {
2884 + padding: 20px;
2885 + }
1930 1930  }
1931 1931  
2888 +/* ========== Resources Index ========== */
1932 1932  
2890 +.resources-index-page {
2891 + background: #fff;
2892 +
2893 + .services-grid {
2894 + grid-template-columns: repeat(2, minmax(0, 1fr));
2895 + }
2896 +}
2897 +
2898 +@media (max-width: 980px) {
2899 + .resources-index-page {
2900 + .services-grid {
2901 + grid-template-columns: 1fr;
2902 + }
2903 + }
2904 +}
2905 +
2906 +@media (max-width: 767px) {
2907 + .resources-index-page {
2908 + padding: @section-padding-mobile;
2909 + }
2910 +}
2911 +
2912 +.resource-faq-item {
2913 + border-bottom: 1px solid @line;
2914 + padding: 12px 0;
2915 +
2916 + summary {
2917 + cursor: pointer;
2918 + font-weight: 700;
2919 + color: @text;
2920 + }
2921 +
2922 + p {
2923 + margin: 10px 0 4px;
2924 + color: @muted;
2925 + }
2926 +}
2927 + color: @text;
2928 + }
2929 +
2930 + p {
2931 + margin: 10px 0 4px;
2932 + color: @muted;
2933 + }
2934 +}