Changes for page Public Web Site

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

From version 13.3
edited by Agnease
on 2026/05/23 18:54
Change comment: There is no comment for this version
To version 18.8
edited by Agnease
on 2026/05/28 10:45
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,9 +1,11 @@
1 +{{include reference="PublicWebSite.MacrosAndVariables" /}}
2 +
1 1  {{velocity}}
2 2  #macro (displayPublicContent)
3 3   #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
4 4   {{html clean="false"}}
5 5  
6 - <section class="hero hero-centered" aria-labelledby="hero-title">
8 + <section class="hero hero-centered main-page-hero" aria-labelledby="hero-title">
7 7   <div class="container hero-inner">
8 8   <h1 id="hero-title">Professional XWiki consulting and engineering</h1>
9 9  
... ... @@ -20,7 +20,8 @@
20 20   </ul>
21 21  
22 22   <div class="hero-actions">
23 - <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Request a consultation</a>
25 + <a class="btn btn-primary" href="$freeXWikiReviewCallURL">$freeXWikiReviewCallLabel</a>
26 + ##<a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Request a consultation</a>
24 24   <a class="btn btn-secondary" href="$xwiki.getURL('services.WebHome')">View XWiki services</a>
25 25   </div>
26 26   </div>
main-page-hero.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Admin
Size
... ... @@ -1,0 +1,1 @@
1 +1.0 MB
Content
XWiki.StyleSheetExtension[0]
code
... ... @@ -167,8 +167,7 @@
167 167  
168 168  .hero {
169 169   overflow: hidden;
170 - background-repeat: no-repeat;
171 - background-attachment: scroll;
170 + position: relative;
172 172  
173 173   &.hero-centered {
174 174   text-align: center;
... ... @@ -181,6 +181,54 @@
181 181   min-height: 330px;
182 182   }
183 183  
183 + &.main-page-hero {
184 + background:
185 + linear-gradient(
186 + rgba(244, 252, 250, 0.40),
187 + rgba(255, 255, 255, 0.50)
188 + ),
189 + url('/bin/download/PublicWebSite/WebHome/main-page-hero.png') center center / cover no-repeat;
190 +
191 + &::before,
192 + &::after {
193 + content: "";
194 + position: absolute;
195 + pointer-events: none;
196 + z-index: 1;
197 + }
198 +
199 + /* Fade left and right image edges into the page background */
200 + &::before {
201 + inset: 0;
202 + background:
203 + linear-gradient(
204 + 90deg,
205 + #fff 0%,
206 + rgba(255, 255, 255, 0) 13%,
207 + rgba(255, 255, 255, 0) 87%,
208 + #fff 100%
209 + );
210 + }
211 +
212 + /* Fade bottom edge into white before the next section */
213 + &::after {
214 + left: 0;
215 + right: 0;
216 + bottom: 0;
217 + height: 90px;
218 + background: linear-gradient(
219 + 180deg,
220 + rgba(255, 255, 255, 0) 0%,
221 + #fff 100%
222 + );
223 + }
224 +
225 + .hero-inner {
226 + position: relative;
227 + z-index: 2;
228 + }
229 + }
230 +
184 184   .hero-inner {
185 185   max-width: 860px;
186 186   margin: 0 auto;
... ... @@ -590,31 +590,6 @@
590 590   }
591 591  }
592 592  
593 -.resource-content {
594 - order: 1;
595 -}
596 -
597 -.resource-sidebar {
598 - order: 2;
599 -}
600 -
601 -@media (max-width: 767px) {
602 - .resource-layout {
603 - display: flex;
604 - flex-direction: column;
605 - }
606 -
607 - .resource-sidebar {
608 - order: 0;
609 - position: static;
610 - width: 100%;
611 - }
612 -
613 - .resource-content {
614 - order: 1;
615 - }
616 -}
617 -
618 618  /* ========== Homepage Resource Strip ========== */
619 619  
620 620  .homepage-resource-strip {
... ... @@ -722,6 +722,50 @@
722 722   }
723 723  }
724 724  
747 +.resource-inline-cta {
748 + display: flex;
749 + align-items: center;
750 + justify-content: space-between;
751 + gap: 22px;
752 + margin: 30px 0;
753 + padding: 20px 22px;
754 + border: 1px solid fade(@brand, 22%);
755 + border-radius: @radius;
756 + background: @brand-bg;
757 + box-shadow: @shadow-sm;
758 +
759 + p {
760 + margin: 0;
761 + color: @muted;
762 + line-height: 1.55;
763 + }
764 +
765 + strong {
766 + color: @text;
767 + }
768 +
769 + .btn {
770 + flex-shrink: 0;
771 + }
772 +}
773 +
774 +@media (max-width: 767px) {
775 + .resource-inline-cta {
776 + display: block;
777 + text-align: center;
778 +
779 + p {
780 + margin-bottom: 14px;
781 + }
782 +
783 + .btn {
784 + display: inline-block;
785 + margin-left: auto;
786 + margin-right: auto;
787 + }
788 + }
789 +}
790 +
725 725  /* ========== Responsive ========== */
726 726  
727 727  @media (max-width: 980px) {
... ... @@ -771,6 +771,15 @@
771 771   min-height: 280px;
772 772   }
773 773  
840 + .hero.main-page-hero {
841 + background:
842 + linear-gradient(
843 + rgba(244, 252, 250, 0.92),
844 + rgba(255, 255, 255, 0.97)
845 + ),
846 + url('/bin/download/PublicWebSite/WebHome/main-page-hero.png') center center / cover no-repeat;
847 + }
848 +
774 774   .hero {
775 775   .lead {
776 776   font-size: 17px;
... ... @@ -844,15 +844,18 @@
844 844  }
845 845  
846 846  .resource-layout {
847 - display: grid;
848 - grid-template-columns: minmax(0, 760px) 280px;
849 - gap: 42px;
922 + display: block;
850 850   max-width: 1080px;
851 851   margin: 0 auto;
852 852   padding-top: 28px;
853 - align-items: start;
854 854  }
855 855  
928 +.resource-layout::after {
929 + content: "";
930 + display: block;
931 + clear: both;
932 +}
933 +
856 856  .resource-content {
857 857   color: @text;
858 858   font-size: 16px;
... ... @@ -922,6 +922,10 @@
922 922  }
923 923  
924 924  .resource-sidebar {
1003 + float: right;
1004 + width: 280px;
1005 + margin-left: 42px;
1006 + margin-bottom: 28px;
925 925   position: sticky;
926 926   top: 96px;
927 927   border: 1px solid @line;
... ... @@ -951,8 +951,14 @@
951 951  }
952 952  
953 953  .resource-cta {
954 - margin-top: 36px;
955 - padding: 22px;
1036 + display: flex;
1037 + flex-direction: column;
1038 + align-items: center;
1039 + text-align: center;
1040 +
1041 + max-width: 820px;
1042 + margin: 42px auto 0;
1043 + padding: 28px 30px;
956 956   border: 1px solid fade(@brand, 20%);
957 957   border-radius: @radius;
958 958   background: @brand-bg;
... ... @@ -959,20 +959,43 @@
959 959  
960 960   h3 {
961 961   margin-top: 0;
1050 + margin-bottom: 10px;
962 962   }
963 963  
964 964   p {
1054 + max-width: 680px;
1055 + margin-left: auto;
1056 + margin-right: auto;
965 965   color: @muted;
966 966   }
1059 +
1060 + .btn {
1061 + margin-top: 8px;
1062 + }
967 967  }
968 968  
1065 +.resource-note,
1066 +.resource-checklist,
1067 +.resource-cta {
1068 + display: flow-root;
1069 +}
1070 +
1071 +@media (max-width: 767px) {
1072 + .resource-cta {
1073 + padding: 24px 20px;
1074 + }
1075 +}
1076 +
969 969  @media (max-width: 900px) {
970 970   .resource-layout {
971 - grid-template-columns: 1fr;
972 972   padding-top: 22px;
973 973   }
974 974  
975 975   .resource-sidebar {
1083 + float: none;
1084 + width: 100%;
1085 + margin-left: 0;
1086 + margin-bottom: 24px;
976 976   position: static;
977 977   }
978 978  }
... ... @@ -1258,3 +1258,19 @@
1258 1258   padding: @section-padding-mobile;
1259 1259   }
1260 1260  }
1372 +
1373 +.resource-faq-item {
1374 + border-bottom: 1px solid @line;
1375 + padding: 12px 0;
1376 +
1377 + summary {
1378 + cursor: pointer;
1379 + font-weight: 700;
1380 + color: @text;
1381 + }
1382 +
1383 + p {
1384 + margin: 10px 0 4px;
1385 + color: @muted;
1386 + }
1387 +}
XWiki.XWikiRights[0]
allow
... ... @@ -1,1 +1,0 @@
1 -Allow
groups
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiAllGroup
levels
... ... @@ -1,1 +1,0 @@
1 -view
users
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest