Changes for page Public Web Site

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

From version 10.3
edited by Agnease
on 2026/05/19 03:55
Change comment: There is no comment for this version
To version 7.1
edited by Agnease
on 2026/05/12 14:12
Change comment: Rollback to version 6.51

Summary

Details

Page properties
Content
... ... @@ -159,7 +159,7 @@
159 159   <p>
160 160   A business-focused explanation of why regular LTS upgrades reduce security, compatibility and maintenance risk.
161 161   </p>
162 - <a href="$xwiki.getURL('resources.why-upgrade-xwiki')">Read the resource</a>
162 + <a href="/resources/why-upgrade-xwiki">Read the resource</a>
163 163   </article>
164 164  
165 165   <article class="resource-card">
... ... @@ -167,7 +167,7 @@
167 167   <p>
168 168   How Agnease approaches safe XWiki upgrades for real production environments with customizations and integrations.
169 169   </p>
170 - <a href="$xwiki.getURL('services.xwiki-upgrades')">View the service</a>
170 + <a href="/services/xwiki-upgrades">View the service</a>
171 171   </article>
172 172   </div>
173 173   </div>
XWiki.StyleSheetExtension[0]
code
... ... @@ -599,32 +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 - margin-bottom: 24px;
621 - }
622 -
623 - .resource-content {
624 - order: 1;
625 - }
626 -}
627 -
628 628  /* ========== CTA ========== */
629 629  
630 630  .cta-section {
... ... @@ -752,563 +752,3 @@
752 752   padding: 24px 20px;
753 753   }
754 754  }
755 -/* ========== Resource / Article Pages ========== */
756 -
757 -.resource-page {
758 - padding-top: 34px;
759 -}
760 -
761 -.resource-header {
762 - padding: 40px 0 30px;
763 - border-top: none;
764 - background:
765 - radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%),
766 - radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%);
767 -
768 - h1 {
769 - margin: 0 auto 14px;
770 - text-align: center;
771 - line-height: 1.18;
772 - }
773 -
774 - .resource-summary {
775 - max-width: 780px;
776 - margin: 0 auto;
777 - color: @muted;
778 - text-align: center;
779 - font-size: 18px;
780 - line-height: 1.55;
781 - }
782 -}
783 -
784 -.resource-layout {
785 - display: grid;
786 - grid-template-columns: minmax(0, 760px) 280px;
787 - gap: 42px;
788 - max-width: 1080px;
789 - margin: 0 auto;
790 - align-items: start;
791 -}
792 -
793 -.resource-content {
794 - color: @text;
795 - font-size: 16px;
796 - line-height: 1.68;
797 -
798 - h2 {
799 - text-align: left;
800 - margin: 34px 0 12px;
801 - line-height: 1.28;
802 - }
803 -
804 - h3 {
805 - margin: 24px 0 8px;
806 - line-height: 1.3;
807 - }
808 -
809 - p {
810 - margin: 0 0 16px;
811 - }
812 -
813 - ul,
814 - ol {
815 - margin: 0 0 18px;
816 - padding-left: 22px;
817 - }
818 -
819 - li {
820 - margin: 6px 0;
821 - }
822 -
823 - strong {
824 - color: @text;
825 - }
826 -}
827 -
828 -.resource-note {
829 - border-left: 4px solid @brand;
830 - background: @brand-bg;
831 - padding: 16px 18px;
832 - margin: 22px 0;
833 - border-radius: 0 @radius @radius 0;
834 -
835 - p:last-child {
836 - margin-bottom: 0;
837 - }
838 -}
839 -
840 -.resource-checklist {
841 - margin: 18px 0 24px;
842 - padding: 0;
843 - list-style: none;
844 -
845 - li {
846 - position: relative;
847 - padding: 10px 0 10px 34px;
848 - border-bottom: 1px solid @line;
849 -
850 - &:before {
851 - content: "\f00c";
852 - font-family: FontAwesome;
853 - position: absolute;
854 - left: 0;
855 - top: 11px;
856 - color: @brand;
857 - }
858 - }
859 -}
860 -
861 -.resource-sidebar {
862 - position: sticky;
863 - top: 96px;
864 - border: 1px solid @line;
865 - border-radius: @radius;
866 - padding: 18px;
867 - background: #fff;
868 - box-shadow: @shadow-sm;
869 -
870 - h4 {
871 - margin: 0 0 10px;
872 - }
873 -
874 - ul {
875 - margin: 0;
876 - padding-left: 18px;
877 - color: @muted;
878 - }
879 -
880 - li {
881 - margin: 8px 0;
882 - }
883 -
884 - a {
885 - color: @brand;
886 - font-weight: 600;
887 - }
888 -}
889 -
890 -.resource-cta {
891 - margin-top: 36px;
892 - padding: 22px;
893 - border: 1px solid fade(@brand, 20%);
894 - border-radius: @radius;
895 - background: @brand-bg;
896 -
897 - h3 {
898 - margin-top: 0;
899 - }
900 -
901 - p {
902 - color: @muted;
903 - }
904 -}
905 -
906 -@media (max-width: 900px) {
907 - .resource-layout {
908 - grid-template-columns: 1fr;
909 - }
910 -
911 - .resource-sidebar {
912 - position: static;
913 - }
914 -}
915 -/* ========== Products / Extensions Pages ========== */
916 -
917 -.product-index-section {
918 - padding: 52px 0 56px;
919 -
920 - h2 {
921 - margin-bottom: 10px;
922 - }
923 -}
924 -
925 -.product-card-grid {
926 - max-width: 840px;
927 - margin: 28px auto 0;
928 - display: grid;
929 - grid-template-columns: 1fr;
930 - grid-gap: 18px;
931 -}
932 -
933 -.product-card {
934 - background: #fff;
935 - border: 1px solid @line;
936 - border-radius: @radius;
937 - box-shadow: @shadow-sm;
938 - padding: 28px;
939 - display: grid;
940 - grid-template-columns: 68px 1fr;
941 - grid-gap: 22px;
942 - align-items: start;
943 - transition: transform .18s ease, box-shadow .18s ease;
944 -
945 - &:hover {
946 - transform: translateY(-2px);
947 - box-shadow: @shadow;
948 - }
949 -
950 - .product-card-icon {
951 - width: 58px;
952 - height: 58px;
953 - border-radius: 50%;
954 - background: fade(@brand, 10%);
955 - border: 1px solid fade(@brand, 20%);
956 - color: @brand;
957 - display: flex;
958 - align-items: center;
959 - justify-content: center;
960 - font-size: 22px;
961 - flex-shrink: 0;
962 - }
963 -
964 - h3 {
965 - margin: 0 0 10px;
966 - color: @text;
967 - font-size: 23px;
968 - line-height: 1.25;
969 - font-weight: 800;
970 - }
971 -
972 - p {
973 - color: @muted;
974 - line-height: 1.6;
975 - }
976 -
977 - .card-link {
978 - margin: 0;
979 -
980 - a {
981 - font-weight: 700;
982 - }
983 - }
984 -}
985 -
986 -.product-card-kicker {
987 - margin-bottom: 10px;
988 - padding: 5px 10px;
989 - font-size: 12px;
990 - text-transform: uppercase;
991 - letter-spacing: .04em;
992 -}
993 -
994 -.product-highlights {
995 - margin: 14px 0 20px;
996 - padding-left: 18px;
997 - color: @muted;
998 -
999 - li {
1000 - margin: 6px 0;
1001 - line-height: 1.45;
1002 - }
1003 -}
1004 -
1005 -/* ========== Individual Product Pages ========== */
1006 -
1007 -.product-layout {
1008 - display: grid;
1009 - grid-template-columns: 1.1fr .9fr;
1010 - grid-gap: 36px;
1011 - max-width: 1040px;
1012 - margin: 0 auto;
1013 - align-items: start;
1014 -}
1015 -
1016 -.product-summary-card,
1017 -.product-info-card,
1018 -.product-gallery-panel {
1019 - background: #fff;
1020 - border: 1px solid @line;
1021 - border-radius: @radius;
1022 - box-shadow: @shadow-sm;
1023 -}
1024 -
1025 -.product-summary-card {
1026 - padding: 26px;
1027 -
1028 - h2 {
1029 - text-align: left;
1030 - margin-top: 0;
1031 - }
1032 -
1033 - p {
1034 - color: @muted;
1035 - line-height: 1.6;
1036 - }
1037 -
1038 - p:last-child {
1039 - margin-bottom: 0;
1040 - }
1041 -}
1042 -
1043 -.product-info-card {
1044 - padding: 22px;
1045 -
1046 - h3 {
1047 - margin-top: 0;
1048 - margin-bottom: 12px;
1049 - }
1050 -
1051 - ul {
1052 - margin: 0;
1053 - padding-left: 20px;
1054 - color: @muted;
1055 - }
1056 -
1057 - li {
1058 - margin: 8px 0;
1059 - line-height: 1.45;
1060 - }
1061 -}
1062 -
1063 -.product-feature-grid {
1064 - display: grid;
1065 - grid-template-columns: repeat(3, minmax(0, 1fr));
1066 - grid-gap: 18px;
1067 - max-width: 1040px;
1068 - margin: 26px auto 0;
1069 -}
1070 -
1071 -.product-feature {
1072 - background: #fff;
1073 - border: 1px solid @line;
1074 - border-radius: @radius;
1075 - box-shadow: @shadow-sm;
1076 - padding: 22px;
1077 - transition: transform .18s ease, box-shadow .18s ease;
1078 -
1079 - &:hover {
1080 - transform: translateY(-2px);
1081 - box-shadow: @shadow;
1082 - }
1083 -
1084 - .feature-icon {
1085 - width: 46px;
1086 - height: 46px;
1087 - border-radius: 50%;
1088 - background: fade(@brand, 10%);
1089 - color: @brand;
1090 - display: flex;
1091 - align-items: center;
1092 - justify-content: center;
1093 - margin-bottom: 14px;
1094 - font-size: 18px;
1095 - }
1096 -
1097 - h3 {
1098 - margin: 0 0 8px;
1099 - color: @text;
1100 - font-size: 18px;
1101 - line-height: 1.25;
1102 - }
1103 -
1104 - p {
1105 - margin: 0;
1106 - color: @muted;
1107 - line-height: 1.5;
1108 - }
1109 -}
1110 -
1111 -.product-gallery-panel {
1112 - max-width: 1040px;
1113 - margin: 20px auto 0;
1114 - padding: 26px;
1115 -
1116 - h2 {
1117 - margin-top: 0;
1118 - text-align: center;
1119 - }
1120 -
1121 - .gallery-note {
1122 - max-width: 700px;
1123 - margin: 0 auto 18px;
1124 - color: @muted;
1125 - text-align: center;
1126 - line-height: 1.55;
1127 - }
1128 -}
1129 -
1130 -.product-gallery-placeholder {
1131 - min-height: 260px;
1132 - padding: 28px;
1133 - border: 1px dashed fade(@brand, 40%);
1134 - border-radius: @radius;
1135 - background: fade(@brand, 5%);
1136 - color: @muted;
1137 - text-align: center;
1138 - display: flex;
1139 - align-items: center;
1140 - justify-content: center;
1141 -}
1142 -
1143 -.product-section-muted {
1144 - background:
1145 - radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 65%);
1146 -}
1147 -
1148 -@media (max-width: 980px) {
1149 - .product-layout,
1150 - .product-feature-grid {
1151 - grid-template-columns: 1fr;
1152 - }
1153 -
1154 - .product-summary-card h2 {
1155 - text-align: center;
1156 - }
1157 -}
1158 -
1159 -@media (max-width: 640px) {
1160 - .product-card {
1161 - grid-template-columns: 1fr;
1162 - padding: 22px;
1163 - text-align: left;
1164 -
1165 - .product-card-icon {
1166 - margin-bottom: 2px;
1167 - }
1168 - }
1169 -
1170 - .product-summary-card,
1171 - .product-info-card,
1172 - .product-feature,
1173 - .product-gallery-panel {
1174 - padding: 20px;
1175 - }
1176 -}
1177 -/* ========== Resources Index ========== */
1178 -
1179 -.resources-index-page {
1180 - padding: 56px 0 72px;
1181 - background: @brand-bg;
1182 -}
1183 -
1184 -.resources-intro {
1185 - max-width: 820px;
1186 - margin: 0 auto 32px;
1187 - text-align: center;
1188 -}
1189 -
1190 -.resources-intro p {
1191 - color: @muted;
1192 - font-size: 17px;
1193 - line-height: 1.7;
1194 - margin: 0;
1195 -}
1196 -
1197 -.resources-grid {
1198 - display: grid;
1199 - grid-template-columns: repeat(2, minmax(0, 1fr));
1200 - gap: 24px;
1201 - margin-bottom: 36px;
1202 -}
1203 -
1204 -.resource-card {
1205 - display: flex;
1206 - gap: 18px;
1207 - background: #fff;
1208 - border: 1px solid @line;
1209 - border-radius: @radius;
1210 - box-shadow: @shadow-sm;
1211 - padding: 24px;
1212 -}
1213 -
1214 -.resource-card-icon {
1215 - flex: 0 0 46px;
1216 - width: 46px;
1217 - height: 46px;
1218 - border-radius: 14px;
1219 - background: @brand-soft;
1220 - color: @brand-strong;
1221 - display: flex;
1222 - align-items: center;
1223 - justify-content: center;
1224 - font-size: 20px;
1225 -}
1226 -
1227 -.resource-card-label {
1228 - color: @brand-strong;
1229 - font-size: 13px;
1230 - font-weight: 700;
1231 - text-transform: uppercase;
1232 - letter-spacing: .04em;
1233 - margin-bottom: 8px;
1234 -}
1235 -
1236 -.resource-card h2 {
1237 - font-size: 22px;
1238 - line-height: 1.25;
1239 - margin: 0 0 12px;
1240 -}
1241 -
1242 -.resource-card h2 a {
1243 - color: @text;
1244 - text-decoration: none;
1245 -}
1246 -
1247 -.resource-card h2 a:hover {
1248 - color: @brand-strong;
1249 - text-decoration: none;
1250 -}
1251 -
1252 -.resource-card p {
1253 - color: @muted;
1254 - font-size: 15px;
1255 - line-height: 1.65;
1256 - margin: 0 0 16px;
1257 -}
1258 -
1259 -.resource-card-link {
1260 - color: @brand-strong;
1261 - font-weight: 700;
1262 - text-decoration: none;
1263 -}
1264 -
1265 -.resource-card-link:hover {
1266 - color: @brand;
1267 - text-decoration: none;
1268 -}
1269 -
1270 -.resources-next {
1271 - max-width: 820px;
1272 - margin: 0 auto 32px;
1273 - text-align: center;
1274 -}
1275 -
1276 -.resources-next h2 {
1277 - font-size: 26px;
1278 - margin: 0 0 10px;
1279 -}
1280 -
1281 -.resources-next p {
1282 - color: @muted;
1283 - font-size: 16px;
1284 - line-height: 1.7;
1285 - margin: 0;
1286 -}
1287 -
1288 -@media (max-width: 767px) {
1289 - .resources-index-page {
1290 - padding: 36px 0 52px;
1291 - }
1292 -
1293 - .resources-intro {
1294 - text-align: left;
1295 - margin-bottom: 24px;
1296 - }
1297 -
1298 - .resources-grid {
1299 - grid-template-columns: 1fr;
1300 - gap: 18px;
1301 - }
1302 -
1303 - .resource-card {
1304 - padding: 20px;
1305 - }
1306 -
1307 - .resource-card h2 {
1308 - font-size: 20px;
1309 - }
1310 -
1311 - .resources-next {
1312 - text-align: left;
1313 - }
1314 -}
XWiki.StyleSheetExtension[1]
code
... ... @@ -1,190 +1,217 @@
1 1  /* ========== Agnease Public Top Menu ========== */
2 2  
3 -.agnease-menu-item {
3 +@brand: #00937D;
4 +@brand-strong: #007B6A;
5 +@text: #2D3A34;
6 +@muted: #5B6B64;
7 +@line: #E4ECE9;
8 +@brand-bg: #F4FCFA;
9 +
10 +.agnease-services-menu {
4 4   .dropdown-toggle {
5 5   font-weight: inherit;
6 6   font-size: inherit;
7 7   }
8 8  
9 - .caret {
10 - margin-left: 4px;
11 - border-top-color: @brand;
12 - border-bottom-color: @brand;
13 - }
14 -
15 15   &.open > .dropdown-toggle,
16 16   .dropdown-toggle:hover,
17 17   .dropdown-toggle:focus {
18 - color: @brand-strong;
19 + color: @brand;
19 19   background: transparent;
20 - background-color: transparent;
21 - box-shadow: none;
22 22   }
23 23  
24 - &.open > .dropdown-toggle .caret,
25 - .dropdown-toggle:hover .caret,
26 - .dropdown-toggle:focus .caret {
27 - border-top-color: @brand-strong;
28 - border-bottom-color: @brand-strong;
23 + .caret {
24 + margin-left: 4px;
29 29   }
30 30  }
31 31  
32 -/* Keep Agnease public top-level menu visually clean when hovered/open/focused */
33 -.navbar-nav > li.agnease-menu-item > a,
34 -.navbar-nav > li.agnease-menu-item > a:hover,
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;
51 -}
52 -
53 -/* Dropdown panels */
54 -
55 -.agnease-dropdown {
56 - min-width: 270px;
57 - padding: 8px;
58 - border: 1px solid fade(@brand, 18%);
28 +.agnease-services-dropdown {
29 + min-width: 360px;
30 + padding: 10px;
31 + border: 1px solid @line;
59 59   border-radius: 12px;
60 - background: #fff;
61 - box-shadow: 0 12px 32px fade(@brand-strong, 12%);
33 + box-shadow: 0 12px 36px rgba(0, 0, 0, .10);
62 62  
63 63   > li > a {
64 64   display: flex;
65 - align-items: center;
66 - gap: 10px;
67 - padding: 9px 11px;
68 - border-radius: 9px;
69 - color: @brand;
70 - background: transparent;
71 - white-space: nowrap;
72 - font-size: 14px;
73 - font-weight: 700;
74 - line-height: 1.25;
37 + align-items: flex-start;
38 + gap: 12px;
39 + padding: 10px 12px;
40 + border-radius: 10px;
41 + color: @text;
42 + white-space: normal;
75 75  
76 - i {
77 - width: 18px;
78 - flex: 0 0 18px;
79 - color: @brand;
80 - text-align: center;
81 - font-size: 14px;
82 - }
83 -
84 84   &:hover,
85 - &:focus,
86 - &:active {
45 + &:focus {
87 87   color: @brand-strong;
88 - background: fade(@brand, 8%);
47 + background: @brand-bg;
89 89   text-decoration: none;
90 - outline: none;
91 91  
92 - i {
50 + .menu-icon {
93 93   color: @brand-strong;
52 + background: fade(@brand, 14%);
53 + border-color: fade(@brand, 28%);
94 94   }
95 - }
96 - }
97 97  
98 - > .active > a,
99 - > .active > a:hover,
100 - > .active > a:focus {
101 - color: @brand-strong;
102 - background: fade(@brand, 10%);
103 - text-decoration: none;
56 + strong {
57 + color: @brand-strong;
58 + }
104 104  
105 - i {
106 - color: @brand-strong;
60 + small {
61 + color: @muted;
62 + }
107 107   }
108 108   }
109 109  
110 110   .divider {
111 - margin: 7px 0;
112 - background-color: fade(@brand, 16%);
67 + margin: 8px 0;
68 + background-color: @line;
113 113   }
114 -}
115 115  
116 -.agnease-products-dropdown,
117 -.agnease-resources-dropdown {
118 - min-width: 260px;
119 -}
71 + .menu-icon {
72 + width: 34px;
73 + height: 34px;
74 + border-radius: 50%;
75 + background: fade(@brand, 8%);
76 + border: 1px solid fade(@brand, 18%);
77 + color: @brand;
78 + display: flex;
79 + align-items: center;
80 + justify-content: center;
81 + flex-shrink: 0;
82 + transition: color .15s ease, background .15s ease, border-color .15s ease;
83 + }
120 120  
121 -/* Remove gray Bootstrap dropdown item states */
122 -.dropdown-menu > li > a:hover,
123 -.dropdown-menu > li > a:focus {
124 - background-image: none;
125 -}
85 + .menu-text {
86 + display: flex;
87 + flex-direction: column;
88 + line-height: 1.25;
126 126  
127 -/* ========== Mobile Menu ========== */
90 + strong {
91 + color: @text;
92 + font-size: 14px;
93 + font-weight: 600;
94 + }
128 128  
129 -@media (max-width: 767px) {
130 - .navbar-nav > li.agnease-menu-item > a,
131 - .navbar-nav > li > a {
132 - padding-top: 8px;
133 - padding-bottom: 8px;
96 + small {
97 + color: @muted;
98 + font-size: 12px;
99 + margin-top: 2px;
100 + font-weight: 400;
101 + }
134 134   }
103 +}
135 135  
136 - .agnease-dropdown {
105 +@media (max-width: 767px) {
106 + .agnease-services-dropdown {
137 137   min-width: 0;
138 138   width: 100%;
139 - padding: 4px 8px 8px 18px;
140 - border: 0;
109 + padding: 6px;
141 141   border-radius: 0;
142 142   box-shadow: none;
143 - background: #fff;
144 144  
145 145   > li > a {
146 - padding: 8px 10px;
147 - white-space: normal;
148 - font-size: 14px;
149 - border-radius: 8px;
150 - color: @brand;
114 + padding: 10px;
115 + }
116 + }
117 +}
118 +/* Keep the top-level Services menu visually clean when hovered/open/focused */
119 +.navbar-nav > li.agnease-services-menu > a,
120 +.navbar-nav > li.agnease-services-menu > a:hover,
121 +.navbar-nav > li.agnease-services-menu > a:focus,
122 +.navbar-nav > li.agnease-services-menu.open > a,
123 +.navbar-nav > li.agnease-services-menu.open > a:hover,
124 +.navbar-nav > li.agnease-services-menu.open > a:focus {
125 + background: transparent;
126 + background-color: transparent;
127 + color: @brand-strong;
128 + box-shadow: none;
129 +}
151 151  
152 - i {
153 - width: 16px;
154 - flex-basis: 16px;
155 - }
131 +/* ========== Mobile Services Menu ========== */
156 156  
157 - &:hover,
158 - &:focus,
159 - &:active {
160 - color: @brand-strong;
161 - background: fade(@brand, 8%);
162 - }
163 - }
133 +@media (max-width: 767px) {
134 + .navbar-nav > li.agnease-services-menu {
135 + position: static;
136 + }
164 164  
165 - .divider {
166 - margin: 5px 0;
167 - background-color: fade(@brand, 16%);
168 - }
138 + .navbar-nav > li.agnease-services-menu > a,
139 + .navbar-nav > li.agnease-services-menu > a:hover,
140 + .navbar-nav > li.agnease-services-menu > a:focus,
141 + .navbar-nav > li.agnease-services-menu.open > a,
142 + .navbar-nav > li.agnease-services-menu.open > a:hover,
143 + .navbar-nav > li.agnease-services-menu.open > a:focus {
144 + background: transparent;
145 + background-color: transparent;
146 + box-shadow: none;
169 169   }
170 -}
171 -/* Remove gray background from opened top-level public menu items */
172 172  
173 -.site-nav .dropdown.open > a,
174 -.site-nav .dropdown.open > a:hover,
175 -.site-nav .dropdown.open > a:focus,
176 -.site-nav .agnease-menu-item.open > a,
177 -.site-nav .agnease-menu-item.open > a:hover,
178 -.site-nav .agnease-menu-item.open > a:focus,
179 -.navbar-nav > li.dropdown.open > a,
180 -.navbar-nav > li.dropdown.open > a:hover,
181 -.navbar-nav > li.dropdown.open > a:focus,
182 -.navbar-nav > li.agnease-menu-item.open > a,
183 -.navbar-nav > li.agnease-menu-item.open > a:hover,
184 -.navbar-nav > li.agnease-menu-item.open > a:focus {
185 - color: @brand-strong;
186 - background: transparent !important;
187 - background-color: transparent !important;
188 - background-image: none !important;
189 - box-shadow: none !important;
149 + .navbar-nav > li.agnease-services-menu.open > .agnease-services-dropdown {
150 + display: grid;
151 + }
152 +
153 + .agnease-services-dropdown {
154 + left: 50% !important;
155 + right: auto !important;
156 + transform: translateX(-50%);
157 + width: calc(100vw - 32px);
158 + max-width: 460px;
159 + min-width: 0;
160 + max-height: calc(100vh - 190px);
161 + overflow-y: auto;
162 +
163 + grid-template-columns: repeat(2, minmax(0, 1fr));
164 + grid-gap: 8px;
165 +
166 + padding: 10px;
167 + margin-top: 8px;
168 + border-radius: 14px;
169 + border: 1px solid @line;
170 + box-shadow: 0 14px 36px rgba(0, 0, 0, .14);
171 + background: #fff;
172 + }
173 +
174 + .agnease-services-dropdown > li {
175 + display: block;
176 + }
177 +
178 + .agnease-services-dropdown > li:first-child,
179 + .agnease-services-dropdown > li.divider {
180 + grid-column: 1 / -1;
181 + }
182 +
183 + .agnease-services-dropdown > li.divider {
184 + margin: 4px 0;
185 + }
186 +
187 + .agnease-services-dropdown > li > a {
188 + min-height: 92px;
189 + padding: 12px 10px;
190 + border-radius: 12px;
191 + flex-direction: column;
192 + align-items: center;
193 + justify-content: center;
194 + gap: 8px;
195 + text-align: center;
196 + }
197 +
198 + .agnease-services-dropdown .menu-icon {
199 + width: 34px;
200 + height: 34px;
201 + font-size: 15px;
202 + }
203 +
204 + .agnease-services-dropdown .menu-text {
205 + align-items: center;
206 + line-height: 1.2;
207 + }
208 +
209 + .agnease-services-dropdown .menu-text strong {
210 + font-size: 13px;
211 + font-weight: 600;
212 + }
213 +
214 + .agnease-services-dropdown .menu-text small {
215 + display: none;
216 + }
190 190  }