Changes for page Public Web Site

Last modified by Alex Cotiuga on 2026/07/29 05:00

From version 29.4
edited by Alex Cotiuga
on 2026/07/03 15:26
Change comment: There is no comment for this version
To version 31.9
edited by Alex Cotiuga
on 2026/07/29 04:43
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -249,6 +249,7 @@
249 249   A short description is enough to define practical next steps.
250 250   </p>
251 251   <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Contact Agnease</a>
252 + <a class="btn btn-secondary" href="$xwiki.getURL('pricing.WebHome')">View service packages</a>
252 252   </div>
253 253   </div>
254 254   </section>
XWiki.StyleSheetExtension[0]
code
... ... @@ -79,7 +79,7 @@
79 79  
80 80  .section-intro {
81 81   max-width: 760px;
82 - margin: 0 auto 22px;
82 + margin: 10px auto 22px;
83 83   text-align: center;
84 84   color: @muted;
85 85   font-size: 16px;
... ... @@ -631,6 +631,49 @@
631 631   margin-bottom: 0;
632 632   }
633 633   }
634 +
635 + h3,
636 + h4 {
637 + position: relative;
638 + z-index: 1;
639 + margin: 0 0 16px;
640 + color: #fff;
641 + font-size: 24px;
642 + line-height: 1.2;
643 + font-weight: 800;
644 + }
645 +
646 + h2 i,
647 + h3 i,
648 + h4 i {
649 + margin-right: 8px;
650 + color: @brand;
651 + }
652 +
653 + ul {
654 + position: relative;
655 + z-index: 1;
656 + margin: 18px 0 0;
657 + padding: 0;
658 + list-style: none;
659 + }
660 +
661 + li {
662 + position: relative;
663 + margin: 10px 0;
664 + padding-left: 28px;
665 + color: #DBE4EF;
666 + line-height: 1.5;
667 +
668 + &::before {
669 + content: "\f00c";
670 + font-family: FontAwesome;
671 + position: absolute;
672 + left: 0;
673 + top: 1px;
674 + color: @brand;
675 + }
676 + }
634 634  }
635 635  
636 636  .process-list {
... ... @@ -683,6 +683,34 @@
683 683   }
684 684  }
685 685  
729 +/* ===== Contact page side panel ===== */
730 +
731 +.contact-side-panel {
732 + padding-top: 10px;
733 +}
734 +
735 +.contact-help-panel {
736 + margin-bottom: 18px;
737 + padding: 30px 28px;
738 +}
739 +
740 +.contact-help-panel h2 {
741 + font-size: 24px;
742 +}
743 +
744 +.contact-process-list li {
745 + min-height: auto;
746 +}
747 +
748 +/* CSS for hidden field to identify requests filled by bots. */
749 +.contact-hp-wrapper {
750 + position: absolute;
751 + left: -9999px;
752 + width: 1px;
753 + height: 1px;
754 + overflow: hidden;
755 +}
756 +
686 686  /* ========== Resources ========== */
687 687  
688 688  .resource-strip {
... ... @@ -690,6 +690,7 @@
690 690  }
691 691  
692 692  .resource-card {
764 + background-color: #fff;
693 693   padding: 20px;
694 694  
695 695   h4 {
... ... @@ -785,7 +785,7 @@
785 785  /* ========== CTA ========== */
786 786  
787 787  .cta-section {
788 - padding: 44px 0 56px;
860 + border: none;
789 789  
790 790   .contact-inline {
791 791   margin: 0;
... ... @@ -823,20 +823,23 @@
823 823   pointer-events: none;
824 824   }
825 825  
826 - h2,
827 - p,
828 - .btn {
898 + > h2,
899 + > p,
900 + > form,
901 + > .hero-actions,
902 + > .cta-actions,
903 + > .reviewNotifications {
829 829   position: relative;
830 830   z-index: 1;
831 831   }
832 832  
833 - h2 {
908 + > h2 {
834 834   max-width: 760px;
835 835   margin: 0 auto 16px;
836 836   color: #fff;
837 837   }
838 838  
839 - p {
914 + > p {
840 840   max-width: 760px;
841 841   margin: 0 auto 28px;
842 842   color: #DBE4EF;
... ... @@ -875,11 +875,29 @@
875 875   grid-template-columns: 1fr;
876 876   }
877 877  
878 - .split-copy h2 {
879 - text-align: center;
953 + .split-copy {
954 + padding: 34px 28px;
955 +
956 + h2 {
957 + text-align: center;
958 + }
880 880   }
881 881  }
882 882  
962 +/* ========== XWiki notifications inside public CTA panels ========== */
963 +
964 +#mainContentArea {
965 + .cta-panel {
966 + .reviewNotifications {
967 + position: relative;
968 + z-index: 1;
969 + max-width: 920px;
970 + margin: 22px auto 0;
971 + text-align: left;
972 + }
973 + }
974 +}
975 +
883 883  @media (max-width: 760px) {
884 884   section[id] {
885 885   scroll-margin-top: 132px;
... ... @@ -944,6 +944,22 @@
944 944   padding: 20px;
945 945   }
946 946  
1040 + .split-copy {
1041 + padding: 30px 22px;
1042 + border-radius: 20px;
1043 + }
1044 +
1045 + .process-list li {
1046 + padding: 22px 20px 22px 68px;
1047 +
1048 + &:before {
1049 + left: 20px;
1050 + top: 22px;
1051 + width: 32px;
1052 + height: 32px;
1053 + }
1054 + }
1055 +
947 947   .services .service {
948 948   gap: 14px;
949 949   }
... ... @@ -1036,7 +1036,7 @@
1036 1036  
1037 1037  .resource-note {
1038 1038   border-left: 4px solid @brand;
1039 - background: @brand-bg;
1148 + background: #fff;
1040 1040   padding: 16px 18px;
1041 1041   margin: 22px 0;
1042 1042   border-radius: 0 @radius @radius 0;
... ... @@ -1168,9 +1168,43 @@
1168 1168   }
1169 1169  }
1170 1170  
1280 +.resource-inline-cta {
1281 + display: flex;
1282 + align-items: center;
1283 + justify-content: space-between;
1284 + gap: 22px;
1285 + margin: 30px 0;
1286 + padding: 20px 22px;
1287 + border: 1px solid @line;
1288 + border-left: 4px solid @brand;
1289 + border-radius: @radius;
1290 + background: #fff;
1291 + box-shadow: @shadow-sm;
1292 +
1293 + p {
1294 + margin: 0;
1295 + color: @muted;
1296 + line-height: 1.55;
1297 + }
1298 +
1299 + strong {
1300 + display: block;
1301 + margin-bottom: 4px;
1302 + color: @text;
1303 + font-size: 17px;
1304 + line-height: 1.3;
1305 + }
1306 +
1307 + .btn {
1308 + flex-shrink: 0;
1309 + white-space: nowrap;
1310 + }
1311 +}
1312 +
1171 1171  .resource-note,
1172 1172  .resource-checklist,
1173 -.resource-cta {
1315 +.resource-cta,
1316 +.resource-inline-cta {
1174 1174   display: flow-root;
1175 1175  }
1176 1176  
... ... @@ -1180,6 +1180,22 @@
1180 1180   }
1181 1181  }
1182 1182  
1326 +@media (max-width: 767px) {
1327 + .resource-inline-cta {
1328 + display: block;
1329 +
1330 + p {
1331 + margin-bottom: 14px;
1332 + }
1333 +
1334 + .btn {
1335 + display: block;
1336 + width: 100%;
1337 + white-space: normal;
1338 + }
1339 + }
1340 +}
1341 +
1183 1183  @media (max-width: 900px) {
1184 1184   .resource-layout {
1185 1185   padding-top: 22px;
... ... @@ -1313,17 +1313,6 @@
1313 1313   }
1314 1314  }
1315 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 1327  @media (max-width: 640px) {
1328 1328   .product-card {
1329 1329   grid-template-columns: 1fr;
... ... @@ -1866,3 +1866,178 @@
1866 1866   }
1867 1867  }
1868 1868  
2017 +/* ========== Temporary marketing campaign banner ========== */
2018 +
2019 +.public-campaign-banner {
2020 + position: relative;
2021 + margin-top: 30px;
2022 + z-index: 20;
2023 + border: 0;
2024 + background:
2025 + radial-gradient(circle at 88% 0%, fade(@brand, 30%) 0%, transparent 32%),
2026 + linear-gradient(110deg, @text 0%, @text-soft 55%, @brand-strong 100%);
2027 + color: #fff;
2028 + box-shadow: 0 10px 26px rgba(7, 24, 45, .12);
2029 +}
2030 +
2031 +.public-campaign-inner {
2032 + min-height: 88px;
2033 + padding-top: 14px;
2034 + padding-bottom: 14px;
2035 + display: flex;
2036 + align-items: center;
2037 + justify-content: space-between;
2038 + gap: 30px;
2039 +}
2040 +
2041 +.public-campaign-copy {
2042 + min-width: 0;
2043 + display: flex;
2044 + align-items: center;
2045 + gap: 18px;
2046 +}
2047 +
2048 +.public-campaign-label {
2049 + flex-shrink: 0;
2050 + display: inline-flex;
2051 + align-items: center;
2052 + gap: 7px;
2053 + padding: 6px 10px;
2054 + border: 1px solid fade(#fff, 28%);
2055 + border-radius: 999px;
2056 + background: fade(#fff, 10%);
2057 + color: #fff;
2058 + font-size: 12px;
2059 + line-height: 1.2;
2060 + font-weight: 800;
2061 + text-transform: uppercase;
2062 + letter-spacing: .04em;
2063 +
2064 + i {
2065 + color: #fff;
2066 + }
2067 +}
2068 +
2069 +.public-campaign-message {
2070 + min-width: 0;
2071 +
2072 + strong {
2073 + display: block;
2074 + margin-bottom: 4px;
2075 + color: #fff;
2076 + font-size: 17px;
2077 + line-height: 1.3;
2078 + }
2079 +
2080 + span {
2081 + display: block;
2082 + max-width: 700px;
2083 + color: #DBE4EF;
2084 + font-size: 14px;
2085 + line-height: 1.45;
2086 + }
2087 +}
2088 +
2089 +.public-campaign-actions {
2090 + flex-shrink: 0;
2091 + display: flex;
2092 + align-items: center;
2093 + gap: 18px;
2094 +}
2095 +
2096 +.public-campaign-primary {
2097 + white-space: nowrap;
2098 + border-color: #fff;
2099 + background: #fff;
2100 + color: @text;
2101 + font-weight: 700;
2102 + box-shadow: 0 10px 24px rgba(0, 0, 0, .16);
2103 +
2104 + &:hover,
2105 + &:focus {
2106 + border-color: #fff;
2107 + background: #fff;
2108 + color: @brand-strong;
2109 + text-decoration: none;
2110 + }
2111 +}
2112 +
2113 +.public-campaign-link {
2114 + white-space: nowrap;
2115 + color: #fff;
2116 + font-size: 14px;
2117 + font-weight: 700;
2118 + text-decoration: underline;
2119 + text-underline-offset: 3px;
2120 +
2121 + i {
2122 + margin-left: 5px;
2123 + }
2124 +
2125 + &:hover,
2126 + &:focus {
2127 + color: #fff;
2128 + text-decoration-thickness: 2px;
2129 + }
2130 +}
2131 +
2132 +@media (max-width: 980px) {
2133 + .public-campaign-inner {
2134 + align-items: flex-start;
2135 + gap: 18px;
2136 + }
2137 +
2138 + .public-campaign-copy {
2139 + align-items: flex-start;
2140 + }
2141 +
2142 + .public-campaign-actions {
2143 + flex-direction: column;
2144 + align-items: flex-end;
2145 + gap: 10px;
2146 + }
2147 +}
2148 +
2149 +@media (max-width: 760px) {
2150 + .public-campaign-inner {
2151 + display: block;
2152 + padding-top: 18px;
2153 + padding-bottom: 18px;
2154 + text-align: center;
2155 + }
2156 +
2157 + .public-campaign-copy {
2158 + display: block;
2159 + }
2160 +
2161 + .public-campaign-label {
2162 + margin-bottom: 12px;
2163 + }
2164 +
2165 + .public-campaign-message {
2166 + strong {
2167 + font-size: 16px;
2168 + }
2169 +
2170 + span {
2171 + margin: 0 auto;
2172 + }
2173 + }
2174 +
2175 + .public-campaign-actions {
2176 + margin-top: 16px;
2177 + display: flex;
2178 + flex-direction: column;
2179 + align-items: stretch;
2180 + gap: 11px;
2181 + }
2182 +
2183 + .public-campaign-primary {
2184 + width: 100%;
2185 + white-space: normal;
2186 + }
2187 +
2188 + .public-campaign-link {
2189 + white-space: normal;
2190 + }
2191 +}