Changes for page Public Web Site

Last modified by Agnease on 2026/05/30 16:24

From version 10.28
edited by Agnease
on 2026/05/19 07:18
Change comment: There is no comment for this version
To version 8.3
edited by Agnease
on 2026/05/12 20:25
Change comment: There is no comment for this version

Summary

Details

XWiki.StyleSheetExtension[0]
code
... ... @@ -599,31 +599,6 @@
599 599   }
600 600  }
601 601  
602 -.resource-content {
603 - order: 1;
604 -}
605 -
606 -.resource-sidebar {
607 - order: 2;
608 -}
609 -
610 -@media (max-width: 767px) {
611 - .resource-layout {
612 - display: flex;
613 - flex-direction: column;
614 - }
615 -
616 - .resource-sidebar {
617 - order: 0;
618 - position: static;
619 - width: 100%;
620 - }
621 -
622 - .resource-content {
623 - order: 1;
624 - }
625 -}
626 -
627 627  /* ========== CTA ========== */
628 628  
629 629  .cta-section {
... ... @@ -761,10 +761,24 @@
761 761   padding: 40px 0 30px;
762 762   border-top: none;
763 763   background:
764 - radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%),
765 - radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%);
739 + radial-gradient(42rem 14rem at 50% 0%, @brand-bg 0%, transparent 70%);
766 766  
741 + .resource-kicker {
742 + display: inline-flex;
743 + align-items: center;
744 + gap: 8px;
745 + color: @brand;
746 + background: fade(@brand, 8%);
747 + border: 1px solid fade(@brand, 18%);
748 + border-radius: 999px;
749 + padding: 6px 12px;
750 + margin-bottom: 14px;
751 + font-size: 13px;
752 + font-weight: 700;
753 + }
754 +
767 767   h1 {
756 + max-width: 820px;
768 768   margin: 0 auto 14px;
769 769   text-align: center;
770 770   line-height: 1.18;
... ... @@ -913,6 +913,58 @@
913 913  }
914 914  /* ========== Products / Extensions Pages ========== */
915 915  
905 +.product-index-hero {
906 + padding: 56px 0 48px;
907 + text-align: center;
908 + background:
909 + radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%),
910 + radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%);
911 + border-top: none;
912 + border-bottom: 1px solid @line;
913 +
914 + h1 {
915 + max-width: 790px;
916 + margin: 0 auto;
917 + line-height: 1.18;
918 + }
919 +
920 + .page-lead {
921 + max-width: 760px;
922 + margin: 14px auto 0;
923 + color: @muted;
924 + text-align: center;
925 + font-size: 19px;
926 + line-height: 1.55;
927 + }
928 +}
929 +
930 +.product-page-kicker,
931 +.product-card-kicker {
932 + display: inline-flex;
933 + align-items: center;
934 + gap: 8px;
935 + color: @brand;
936 + background: fade(@brand, 8%);
937 + border: 1px solid fade(@brand, 18%);
938 + border-radius: 999px;
939 + padding: 6px 12px;
940 + margin-bottom: 14px;
941 + font-size: 13px;
942 + font-weight: 700;
943 +
944 + i {
945 + color: @brand;
946 + }
947 +}
948 +
949 +.product-card-kicker {
950 + margin-bottom: 10px;
951 + padding: 5px 10px;
952 + font-size: 12px;
953 + text-transform: uppercase;
954 + letter-spacing: .04em;
955 +}
956 +
916 916  .product-index-section {
917 917   padding: 52px 0 56px;
918 918  
... ... @@ -982,14 +982,6 @@
982 982   }
983 983  }
984 984  
985 -.product-card-kicker {
986 - margin-bottom: 10px;
987 - padding: 5px 10px;
988 - font-size: 12px;
989 - text-transform: uppercase;
990 - letter-spacing: .04em;
991 -}
992 -
993 993  .product-highlights {
994 994   margin: 14px 0 20px;
995 995   padding-left: 18px;
... ... @@ -1001,8 +1001,40 @@
1001 1001   }
1002 1002  }
1003 1003  
1037 +.product-cta-section {
1038 + padding: 0 0 56px;
1039 + border-top: 1px solid @line;
1040 +}
1041 +
1042 +.product-cta-panel {
1043 + max-width: 860px;
1044 + margin: 0 auto;
1045 + padding: 32px;
1046 + border-radius: @radius;
1047 + border: 1px solid fade(@brand, 20%);
1048 + background:
1049 + radial-gradient(34rem 12rem at 50% 0%, @brand-soft 0%, #fff 70%);
1050 + box-shadow: @shadow-sm;
1051 + text-align: center;
1052 +
1053 + h2 {
1054 + margin-top: 0;
1055 + }
1056 +
1057 + p {
1058 + max-width: 680px;
1059 + margin: 0 auto 18px;
1060 + color: @muted;
1061 + line-height: 1.55;
1062 + }
1063 +}
1064 +
1004 1004  /* ========== Individual Product Pages ========== */
1005 1005  
1067 +.product-hero {
1068 + min-height: 330px;
1069 +}
1070 +
1006 1006  .product-layout {
1007 1007   display: grid;
1008 1008   grid-template-columns: 1.1fr .9fr;
... ... @@ -1144,6 +1144,19 @@
1144 1144   radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 65%);
1145 1145  }
1146 1146  
1212 +.product-use-cases {
1213 + ul {
1214 + margin: 0;
1215 + padding-left: 20px;
1216 + color: @muted;
1217 + }
1218 +
1219 + li {
1220 + margin: 8px 0;
1221 + line-height: 1.5;
1222 + }
1223 +}
1224 +
1147 1147  @media (max-width: 980px) {
1148 1148   .product-layout,
1149 1149   .product-feature-grid {
... ... @@ -1156,6 +1156,14 @@
1156 1156  }
1157 1157  
1158 1158  @media (max-width: 640px) {
1237 + .product-index-hero {
1238 + padding: 38px 0 34px;
1239 +
1240 + .page-lead {
1241 + font-size: 17px;
1242 + }
1243 + }
1244 +
1159 1159   .product-card {
1160 1160   grid-template-columns: 1fr;
1161 1161   padding: 22px;
... ... @@ -1172,142 +1172,8 @@
1172 1172   .product-gallery-panel {
1173 1173   padding: 20px;
1174 1174   }
1175 -}
1176 -/* ========== Resources Index ========== */
1177 1177  
1178 -.resources-index-page {
1179 - padding: 56px 0 72px;
1180 - background: @brand-bg;
1181 -}
1182 -
1183 -.resources-intro {
1184 - max-width: 820px;
1185 - margin: 0 auto 32px;
1186 - text-align: center;
1187 -}
1188 -
1189 -.resources-intro p {
1190 - color: @muted;
1191 - font-size: 17px;
1192 - line-height: 1.7;
1193 - margin: 0;
1194 -}
1195 -
1196 -.resources-grid {
1197 - display: grid;
1198 - grid-template-columns: repeat(2, minmax(0, 1fr));
1199 - gap: 24px;
1200 - margin-bottom: 36px;
1201 -}
1202 -
1203 -.resource-card {
1204 - display: flex;
1205 - gap: 18px;
1206 - background: #fff;
1207 - border: 1px solid @line;
1208 - border-radius: @radius;
1209 - box-shadow: @shadow-sm;
1210 - padding: 24px;
1211 -}
1212 -
1213 -.resource-card-icon {
1214 - flex: 0 0 46px;
1215 - width: 46px;
1216 - height: 46px;
1217 - border-radius: 14px;
1218 - background: @brand-soft;
1219 - color: @brand-strong;
1220 - display: flex;
1221 - align-items: center;
1222 - justify-content: center;
1223 - font-size: 20px;
1224 -}
1225 -
1226 -.resource-card-label {
1227 - color: @brand-strong;
1228 - font-size: 13px;
1229 - font-weight: 700;
1230 - text-transform: uppercase;
1231 - letter-spacing: .04em;
1232 - margin-bottom: 8px;
1233 -}
1234 -
1235 -.resource-card h2 {
1236 - font-size: 22px;
1237 - line-height: 1.25;
1238 - margin: 0 0 12px;
1239 -}
1240 -
1241 -.resource-card h2 a {
1242 - color: @text;
1243 - text-decoration: none;
1244 -}
1245 -
1246 -.resource-card h2 a:hover {
1247 - color: @brand-strong;
1248 - text-decoration: none;
1249 -}
1250 -
1251 -.resource-card p {
1252 - color: @muted;
1253 - font-size: 15px;
1254 - line-height: 1.65;
1255 - margin: 0 0 16px;
1256 -}
1257 -
1258 -.resource-card-link {
1259 - color: @brand-strong;
1260 - font-weight: 700;
1261 - text-decoration: none;
1262 -}
1263 -
1264 -.resource-card-link:hover {
1265 - color: @brand;
1266 - text-decoration: none;
1267 -}
1268 -
1269 -.resources-next {
1270 - max-width: 820px;
1271 - margin: 0 auto 32px;
1272 - text-align: center;
1273 -}
1274 -
1275 -.resources-next h2 {
1276 - font-size: 26px;
1277 - margin: 0 0 10px;
1278 -}
1279 -
1280 -.resources-next p {
1281 - color: @muted;
1282 - font-size: 16px;
1283 - line-height: 1.7;
1284 - margin: 0;
1285 -}
1286 -
1287 -@media (max-width: 767px) {
1288 - .resources-index-page {
1289 - padding: 36px 0 52px;
1262 + .product-cta-panel {
1263 + padding: 24px 20px;
1290 1290   }
1291 -
1292 - .resources-intro {
1293 - text-align: left;
1294 - margin-bottom: 24px;
1295 - }
1296 -
1297 - .resources-grid {
1298 - grid-template-columns: 1fr;
1299 - gap: 18px;
1300 - }
1301 -
1302 - .resource-card {
1303 - padding: 20px;
1304 - }
1305 -
1306 - .resource-card h2 {
1307 - font-size: 20px;
1308 - }
1309 -
1310 - .resources-next {
1311 - text-align: left;
1312 - }
1313 1313  }
XWiki.StyleSheetExtension[1]
code
... ... @@ -1,253 +1,156 @@
1 1  /* ========== Agnease Public Top Menu ========== */
2 2  
3 -/* Keep the public menu aligned to the right on desktop */
4 -@media (min-width: 768px) {
5 - .navbar-nav {
6 - float: right;
7 - margin-left: auto;
8 - }
3 +@brand: #00937D;
4 +@brand-strong: #007B6A;
5 +@text: #2D3A34;
6 +@muted: #5B6B64;
7 +@line: #E4ECE9;
8 +@brand-bg: #F4FCFA;
9 9  
10 - .site-nav {
11 - margin-left: auto;
12 - justify-content: flex-end;
13 - }
14 -}
15 -
16 16  /* Top-level menu items */
17 17  
18 -.agnease-menu-item,
19 -.agnease-menu-link {
20 - > a,
21 - > .dropdown-toggle {
22 - color: @brand;
23 - font-size: 17px;
24 - font-weight: 600;
25 - padding-left: 16px;
26 - padding-right: 16px;
27 - background: transparent !important;
28 - background-color: transparent !important;
29 - background-image: none !important;
30 - box-shadow: none !important;
12 +.agnease-services-menu,
13 +.agnease-products-menu {
14 + .dropdown-toggle {
15 + font-weight: inherit;
16 + font-size: inherit;
31 31   }
32 32  
33 - > a:hover,
34 - > a:focus,
35 - > a:active,
36 - &.open > a,
37 - &.open > a:hover,
38 - &.open > a:focus,
39 - &.open > a:active,
40 - &.active > a,
41 - &.active > a:hover,
42 - &.active > a:focus,
43 - &.active > a:active {
44 - color: @brand-strong;
45 - background: transparent !important;
46 - background-color: transparent !important;
47 - background-image: none !important;
48 - box-shadow: none !important;
49 - outline: none;
50 - text-decoration: none;
51 - }
52 -
53 53   .caret {
54 - margin-left: 5px;
55 - border-top-color: @brand;
56 - border-bottom-color: @brand;
20 + margin-left: 4px;
57 57   }
58 58  
59 - > a:hover .caret,
60 - > a:focus .caret,
61 - > a:active .caret,
62 - &.open > a .caret,
63 - &.active > a .caret {
64 - border-top-color: @brand-strong;
65 - border-bottom-color: @brand-strong;
23 + &.open > .dropdown-toggle,
24 + .dropdown-toggle:hover,
25 + .dropdown-toggle:focus {
26 + color: @brand-strong;
27 + background: transparent;
28 + background-color: transparent;
29 + box-shadow: none;
66 66   }
67 67  }
68 68  
69 -/* Strong Bootstrap/XWiki overrides for top-level menu backgrounds */
33 +/* Keep Agnease public top-level menu visually clean when hovered/open/focused */
70 70  
71 -.navbar-nav > li,
72 -.navbar-nav > li:hover,
73 -.navbar-nav > li:focus,
74 -.navbar-nav > li:active,
75 -.navbar-nav > li.open,
76 -.navbar-nav > li.open:hover,
77 -.navbar-nav > li.open:focus,
78 -.navbar-nav > li.open:active,
79 -.navbar-nav > li.active,
80 -.navbar-nav > li.active:hover,
81 -.navbar-nav > li.active:focus,
82 -.navbar-nav > li.active:active {
83 - background: transparent !important;
84 - background-color: transparent !important;
85 - background-image: none !important;
35 +.navbar-nav > li.agnease-services-menu > a,
36 +.navbar-nav > li.agnease-products-menu > a,
37 +.navbar-nav > li.agnease-services-menu > a:hover,
38 +.navbar-nav > li.agnease-products-menu > a:hover,
39 +.navbar-nav > li.agnease-services-menu > a:focus,
40 +.navbar-nav > li.agnease-products-menu > a:focus,
41 +.navbar-nav > li.agnease-services-menu.open > a,
42 +.navbar-nav > li.agnease-products-menu.open > a,
43 +.navbar-nav > li.agnease-services-menu.open > a:hover,
44 +.navbar-nav > li.agnease-products-menu.open > a:hover,
45 +.navbar-nav > li.agnease-services-menu.open > a:focus,
46 +.navbar-nav > li.agnease-products-menu.open > a:focus {
47 + background: transparent;
48 + background-color: transparent;
49 + color: @brand-strong;
50 + box-shadow: none;
86 86  }
87 87  
88 -.navbar-nav > li > a,
89 -.navbar-nav > li > a:hover,
90 -.navbar-nav > li > a:focus,
91 -.navbar-nav > li > a:active,
92 -.navbar-nav > li.open > a,
93 -.navbar-nav > li.open > a:hover,
94 -.navbar-nav > li.open > a:focus,
95 -.navbar-nav > li.open > a:active,
96 -.navbar-nav > li.active > a,
97 -.navbar-nav > li.active > a:hover,
98 -.navbar-nav > li.active > a:focus,
99 -.navbar-nav > li.active > a:active,
100 -.nav .open > a,
101 -.nav .open > a:hover,
102 -.nav .open > a:focus {
103 - background: transparent !important;
104 - background-color: transparent !important;
105 - background-image: none !important;
106 - box-shadow: none !important;
107 -}
53 +/* Dropdown panels */
108 108  
109 -/* Dropdown panel */
110 -
111 -.agnease-dropdown {
112 - min-width: 310px;
113 - padding: 10px 8px;
114 - border: 1px solid fade(@brand, 18%);
55 +.agnease-services-dropdown,
56 +.agnease-products-dropdown {
57 + min-width: 360px;
58 + padding: 10px;
59 + border: 1px solid @line;
115 115   border-radius: 12px;
116 - background: #fff;
117 - box-shadow: 0 12px 32px fade(@brand-strong, 12%);
61 + box-shadow: 0 12px 36px rgba(0, 0, 0, .10);
118 118  
119 119   > li > a {
120 120   display: flex;
121 - align-items: center;
65 + align-items: flex-start;
122 122   gap: 12px;
123 - padding: 11px 14px;
124 - color: @brand;
125 - background: transparent !important;
126 - background-color: transparent !important;
127 - background-image: none !important;
128 - white-space: nowrap;
129 - font-size: 16px;
130 - font-weight: 600;
131 - line-height: 1.3;
132 - box-shadow: none !important;
67 + padding: 10px 12px;
68 + border-radius: 10px;
69 + color: @text;
70 + white-space: normal;
133 133  
134 - i {
135 - width: 20px;
136 - flex: 0 0 20px;
137 - color: @brand;
138 - text-align: center;
139 - font-size: 15px;
140 - }
141 -
142 142   &:hover,
143 - &:focus,
144 - &:active {
73 + &:focus {
145 145   color: @brand-strong;
146 - background: transparent !important;
147 - background-color: transparent !important;
148 - background-image: none !important;
75 + background: @brand-bg;
149 149   text-decoration: none;
150 - outline: none;
151 - box-shadow: none !important;
152 152  
153 - i {
78 + .menu-icon {
154 154   color: @brand-strong;
80 + background: fade(@brand, 14%);
81 + border-color: fade(@brand, 28%);
155 155   }
156 - }
157 - }
158 158  
159 - > .active > a,
160 - > .active > a:hover,
161 - > .active > a:focus,
162 - > .active > a:active {
163 - color: @brand-strong;
164 - background: transparent !important;
165 - background-color: transparent !important;
166 - background-image: none !important;
167 - text-decoration: none;
168 - box-shadow: none !important;
84 + strong {
85 + color: @brand-strong;
86 + }
169 169  
170 - i {
171 - color: @brand-strong;
88 + small {
89 + color: @muted;
90 + }
172 172   }
173 173   }
174 174  
175 175   .divider {
176 176   margin: 8px 0;
177 - background-color: fade(@brand, 16%);
96 + background-color: @line;
178 178   }
98 +
99 + .menu-icon {
100 + width: 34px;
101 + height: 34px;
102 + border-radius: 50%;
103 + background: fade(@brand, 8%);
104 + border: 1px solid fade(@brand, 18%);
105 + color: @brand;
106 + display: flex;
107 + align-items: center;
108 + justify-content: center;
109 + flex-shrink: 0;
110 + transition: color .15s ease, background .15s ease, border-color .15s ease;
111 + }
112 +
113 + .menu-text {
114 + display: flex;
115 + flex-direction: column;
116 + line-height: 1.25;
117 +
118 + strong {
119 + color: @brand;
120 + font-size: 14px;
121 + font-weight: 600;
122 + }
123 +
124 + small {
125 + color: @muted;
126 + font-size: 12px;
127 + margin-top: 2px;
128 + font-weight: 400;
129 + }
130 + }
179 179  }
180 180  
181 -/* Strong Bootstrap/XWiki overrides for submenu gray hover backgrounds */
133 +/* Products dropdown can be slightly narrower for now */
182 182  
183 -.dropdown-menu > li > a,
184 -.dropdown-menu > li > a:hover,
185 -.dropdown-menu > li > a:focus,
186 -.dropdown-menu > li > a:active,
187 -.dropdown-menu > .active > a,
188 -.dropdown-menu > .active > a:hover,
189 -.dropdown-menu > .active > a:focus,
190 -.dropdown-menu > .active > a:active,
191 -.agnease-dropdown > li > a,
192 -.agnease-dropdown > li > a:hover,
193 -.agnease-dropdown > li > a:focus,
194 -.agnease-dropdown > li > a:active {
195 - background: transparent !important;
196 - background-color: transparent !important;
197 - background-image: none !important;
198 - box-shadow: none !important;
135 +.agnease-products-dropdown {
136 + min-width: 340px;
199 199  }
200 200  
201 201  /* Mobile */
202 202  
203 203  @media (max-width: 767px) {
204 - .navbar-nav {
205 - float: none;
206 - margin-left: 0;
207 - }
208 -
209 - .agnease-menu-item,
210 - .agnease-menu-link {
211 - > a,
212 - > .dropdown-toggle {
213 - font-size: 16px;
214 - padding-top: 9px;
215 - padding-bottom: 9px;
216 - }
217 - }
218 -
219 - .agnease-dropdown {
142 + .agnease-services-dropdown,
143 + .agnease-products-dropdown {
220 220   min-width: 0;
221 221   width: 100%;
222 - padding: 4px 8px 8px 18px;
223 - border: 0;
146 + padding: 6px;
224 224   border-radius: 0;
148 + border-left: 0;
149 + border-right: 0;
225 225   box-shadow: none;
226 - background: transparent;
227 227  
228 228   > li > a {
229 - padding: 8px 10px;
230 - white-space: normal;
231 - font-size: 15px;
232 - color: @brand;
233 - background: transparent !important;
234 -
235 - i {
236 - width: 18px;
237 - flex-basis: 18px;
238 - }
239 -
240 - &:hover,
241 - &:focus,
242 - &:active {
243 - color: @brand-strong;
244 - background: transparent !important;
245 - }
153 + padding: 10px;
246 246   }
247 -
248 - .divider {
249 - margin: 5px 0;
250 - background-color: fade(@brand, 16%);
251 - }
252 252   }
253 253  }