Changes for page Public Web Site
Last modified by Agnease on 2026/07/03 16:14
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 1 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- 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
-
... ... @@ -150,7 +150,7 @@ 150 150 151 151 /* ========== Buttons ========== */ 152 152 153 - /*.btn-primary {153 +.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 - */165 + 166 166 .btn-secondary { 167 - color: @ text;167 + color: @brand; 168 168 background: #fff; 169 - border: 1px solid fade(@ text, 35%);169 + border: 1px solid fade(@brand, 35%); 170 170 171 + &:hover, 172 + &:focus { 173 + color: @brand-strong; 174 + border-color: @brand; 175 + background: @brand-bg; 176 + } 171 171 } 172 172 173 173 /* ========== Hero ========== */ ... ... @@ -179,6 +179,9 @@ 179 179 180 180 &.hero-centered { 181 181 text-align: center; 188 + background: 189 + radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%), 190 + 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; ... ... @@ -252,6 +252,7 @@ 252 252 .trust-strip { 253 253 padding: 18px 0; 254 254 border-top: 1px solid @line; 264 + background: #fff; 255 255 256 256 ul { 257 257 max-width: 960px; ... ... @@ -324,6 +324,7 @@ 324 324 .pathway-card, 325 325 .service-card, 326 326 .resource-card { 337 + background: #fff; 327 327 border: 1px solid @line; 328 328 border-radius: @radius; 329 329 box-shadow: @shadow-sm; ... ... @@ -519,6 +519,7 @@ 519 519 align-items: flex-start; 520 520 gap: 16px; 521 521 padding: 22px; 533 + background: #fff; 522 522 border: 1px solid @line; 523 523 border-radius: @radius; 524 524 box-shadow: @shadow-sm; ... ... @@ -606,6 +606,7 @@ 606 606 position: relative; 607 607 padding: 16px 16px 16px 58px; 608 608 margin-bottom: 12px; 621 + background: #fff; 609 609 border: 1px solid @line; 610 610 border-radius: @radius; 611 611 box-shadow: @shadow-sm; ... ... @@ -737,8 +737,8 @@ 737 737 738 738 /* ========== CTA ========== */ 739 739 740 - #mainContentArea.cta-section {741 - padding: 44px 0 56px;753 +.cta-section { 754 + padding: @section-padding; 742 742 743 743 .contact-inline { 744 744 margin: 0; ... ... @@ -750,70 +750,27 @@ 750 750 } 751 751 } 752 752 753 -#mainContentArea .cta-panel { 754 - position: relative; 755 - overflow: hidden; 756 - max-width: 1040px; 766 +.cta-panel { 767 + max-width: 860px; 757 757 margin: 0 auto; 758 - padding: 48px40px;759 - border: 0;760 - border -radius:26px;769 + padding: 32px; 770 + border-radius: @radius; 771 + border: 1px solid fade(@brand, 20%); 761 761 background: 762 - radial-gradient(circle at 88% 10%, fade(@brand, 24%) 0%, transparent 30%), 763 - linear-gradient(135deg, @text 0%, @text-soft 100%); 764 - color: #fff; 765 - box-shadow: @shadow; 773 + radial-gradient(34rem 12rem at 50% 0%, @brand-soft 0%, #fff 70%); 774 + box-shadow: @shadow-sm; 766 766 text-align: center; 767 -} 768 768 769 -#mainContentArea .cta-panel::before { 770 - content: ""; 771 - position: absolute; 772 - inset: 0; 773 - background: 774 - linear-gradient(90deg, fade(#fff, 4%) 1px, transparent 1px), 775 - linear-gradient(180deg, fade(#fff, 4%) 1px, transparent 1px); 776 - background-size: 48px 48px; 777 - opacity: .4; 778 - pointer-events: none; 779 -} 777 + h2 { 778 + margin-top: 0; 779 + } 780 780 781 -#mainContentArea .cta-panel h2, 782 -#mainContentArea .cta-panel p, 783 -#mainContentArea .cta-panel .btn { 784 - position: relative; 785 - z-index: 1; 781 + p { 782 + color: @muted; 783 + line-height: 1.55; 784 + } 786 786 } 787 787 788 -#mainContentArea .cta-panel h2 { 789 - max-width: 760px; 790 - margin: 0 auto 16px; 791 - color: #fff; 792 -} 793 - 794 -#mainContentArea .cta-panel p { 795 - max-width: 760px; 796 - margin: 0 auto 28px; 797 - color: #DBE4EF; 798 - font-size: 16px; 799 - line-height: 1.6; 800 -} 801 - 802 -#mainContentArea .cta-panel .btn-primary { 803 - border-color: #fff; 804 - background: #fff; 805 - color: @text; 806 - box-shadow: 0 18px 42px rgba(0, 0, 0, .18); 807 -} 808 - 809 -#mainContentArea .cta-panel .btn-primary:hover, 810 -#mainContentArea .cta-panel .btn-primary:focus { 811 - border-color: #fff; 812 - background: #fff; 813 - color: @brand-strong; 814 - text-decoration: none; 815 -} 816 - 817 817 .resource-inline-cta { 818 818 display: flex; 819 819 align-items: center; ... ... @@ -945,14 +945,9 @@ 945 945 gap: 14px; 946 946 } 947 947 948 - #mainContentArea .cta-panel { 949 - padding: 30px 22px; 950 - border-radius: 20px; 918 + .cta-panel { 919 + padding: 24px 20px; 951 951 } 952 - 953 - #mainContentArea .cta-panel .btn-primary { 954 - width: 100%; 955 - } 956 956 } 957 957 958 958 /* ========== Resource / Article Pages ========== */ ... ... @@ -964,6 +964,9 @@ 964 964 .resource-header { 965 965 padding: @section-padding; 966 966 border-top: none; 932 + background: 933 + radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%), 934 + radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%); 967 967 968 968 h1 { 969 969 margin: 0 auto 14px; ... ... @@ -1111,6 +1111,7 @@ 1111 1111 border: 1px solid @line; 1112 1112 border-radius: @radius; 1113 1113 padding: 18px; 1082 + background: #fff; 1114 1114 box-shadow: @shadow-sm; 1115 1115 1116 1116 h4 { ... ... @@ -1209,6 +1209,7 @@ 1209 1209 1210 1210 .product-card { 1211 1211 position: relative; 1181 + background: #fff; 1212 1212 border: 1px solid @line; 1213 1213 border-radius: @radius; 1214 1214 box-shadow: @shadow-sm; ... ... @@ -1358,6 +1358,7 @@ 1358 1358 .product-info-card, 1359 1359 .product-feature, 1360 1360 .product-gallery-panel { 1331 + background: #fff; 1361 1361 border: 1px solid @line; 1362 1362 border-radius: @radius; 1363 1363 box-shadow: @shadow-sm; ... ... @@ -1600,6 +1600,7 @@ 1600 1600 /* ========== Resources Index ========== */ 1601 1601 1602 1602 .resources-index-page { 1574 + background: #fff; 1603 1603 1604 1604 .services-grid { 1605 1605 grid-template-columns: repeat(2, minmax(0, 1fr)); ... ... @@ -1684,272 +1684,3 @@ 1684 1684 background: #fff !important; 1685 1685 background-image: none !important; 1686 1686 } */ 1687 - 1688 -/* ========== Main Page Hero / SaaS Layout ========== */ 1689 - 1690 -#mainContentArea .hero.hero-saas { 1691 - min-height: auto; 1692 - padding: 60px 0 34px; 1693 - display: flex; 1694 - align-items: center; 1695 - overflow: hidden; 1696 - background: transparent; 1697 -} 1698 - 1699 -#mainContentArea .hero-layout { 1700 - max-width: 1120px; 1701 - margin: 0 auto; 1702 - display: grid; 1703 - grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); 1704 - gap: 56px; 1705 - align-items: center; 1706 -} 1707 - 1708 -#mainContentArea .hero-copy { 1709 - min-width: 0; 1710 - text-align: left; 1711 -} 1712 - 1713 -#mainContentArea .hero.hero-saas h1 { 1714 - max-width: 640px; 1715 - margin: 0 0 26px; 1716 - font-size: 60px; 1717 - font-weight: 800; 1718 - line-height: 1; 1719 - letter-spacing: -3px; 1720 -} 1721 - 1722 -#mainContentArea .hero.hero-saas h1 span { 1723 - color: @brand; 1724 -} 1725 - 1726 -#mainContentArea .hero.hero-saas .lead { 1727 - max-width: 590px; 1728 - margin: 0 0 28px; 1729 - color: #334155; 1730 - text-align: left; 1731 - font-size: 18px; 1732 - line-height: 1.6; 1733 -} 1734 - 1735 -#mainContentArea .hero.hero-saas .benefits { 1736 - max-width: 620px; 1737 - margin: 0 0 30px; 1738 - padding: 0; 1739 - display: grid; 1740 - grid-template-columns: repeat(2, minmax(0, 1fr)); 1741 - gap: 10px 24px; 1742 - list-style: none; 1743 - color: #475569; 1744 - font-size: 15px; 1745 - text-align: left; 1746 -} 1747 - 1748 -#mainContentArea .hero.hero-saas .benefits li { 1749 - display: grid; 1750 - grid-template-columns: 18px minmax(0, 1fr); 1751 - column-gap: 8px; 1752 - align-items: start; 1753 - margin: 0; 1754 - line-height: 1.45; 1755 -} 1756 - 1757 -#mainContentArea .hero.hero-saas .benefits li::before { 1758 - content: "✓"; 1759 - display: block; 1760 - width: 18px; 1761 - color: @brand; 1762 - font-weight: 900; 1763 - line-height: 1.45; 1764 - text-align: left; 1765 - margin: 0; 1766 -} 1767 - 1768 -#mainContentArea .hero.hero-saas .hero-actions, 1769 -#mainContentArea .hero.hero-saas #hero-cta { 1770 - display: flex; 1771 - flex-wrap: wrap; 1772 - justify-content: flex-start; 1773 - gap: 12px; 1774 - margin-top: 0; 1775 -} 1776 - 1777 -#mainContentArea .hero-image-wrapper { 1778 - min-width: 0; 1779 - display: flex; 1780 - justify-content: center; 1781 - align-items: center; 1782 -} 1783 - 1784 -#mainContentArea .hero-image { 1785 - display: block; 1786 - width: 100%; 1787 - max-width: 620px; 1788 - height: auto; 1789 - border: 0; 1790 -} 1791 - 1792 -/* ========== Main Page Hero Responsive ========== */ 1793 - 1794 -@media (max-width: 1100px) { 1795 - #mainContentArea .hero-layout { 1796 - max-width: 760px; 1797 - grid-template-columns: 1fr; 1798 - gap: 34px; 1799 - } 1800 - 1801 - #mainContentArea .hero-copy { 1802 - order: 1; 1803 - text-align: center; 1804 - } 1805 - 1806 - #mainContentArea .hero-image-wrapper { 1807 - order: 2; 1808 - } 1809 - 1810 - #mainContentArea .hero.hero-saas h1 { 1811 - margin-left: auto; 1812 - margin-right: auto; 1813 - text-align: center; 1814 - } 1815 - 1816 - #mainContentArea .hero.hero-saas .lead { 1817 - margin-left: auto; 1818 - margin-right: auto; 1819 - text-align: center; 1820 - } 1821 - 1822 - #mainContentArea .hero.hero-saas .benefits { 1823 - margin-left: auto; 1824 - margin-right: auto; 1825 - } 1826 - 1827 - #mainContentArea .hero.hero-saas .hero-actions, 1828 - #mainContentArea .hero.hero-saas #hero-cta { 1829 - justify-content: center; 1830 - } 1831 - 1832 - #mainContentArea .hero-image { 1833 - max-width: 620px; 1834 - } 1835 -} 1836 - 1837 -@media (max-width: 640px) { 1838 - #mainContentArea .hero.hero-saas { 1839 - padding: 42px 0 28px; 1840 - } 1841 - 1842 - #mainContentArea .hero-layout { 1843 - gap: 28px; 1844 - } 1845 - 1846 - #mainContentArea .hero.hero-saas h1 { 1847 - font-size: 42px; 1848 - letter-spacing: -1.5px; 1849 - } 1850 - 1851 - #mainContentArea .hero.hero-saas .lead { 1852 - font-size: 17px; 1853 - } 1854 - 1855 - #mainContentArea .hero.hero-saas .benefits { 1856 - grid-template-columns: 1fr; 1857 - } 1858 - 1859 - #mainContentArea .hero-image { 1860 - max-width: 100%; 1861 - } 1862 -} 1863 - 1864 -/* ========== Accessibility / Contrast Improvements ========== */ 1865 - 1866 -/* Make the global background softer and less distracting. */ 1867 -body { 1868 - background: 1869 - radial-gradient(circle at 12% 8%, rgba(0, 147, 125, 0.035) 0, transparent 26%), 1870 - radial-gradient(circle at 90% 28%, rgba(7, 24, 45, 0.025) 0, transparent 30%), 1871 - linear-gradient(180deg, #fff 0, @brand-bg 42%, #fff 100%) !important; 1872 - background-attachment: scroll; 1873 -} 1874 - 1875 -/* Keep the article area readable while preserving the page background around it. */ 1876 -#mainContentArea .resource-layout { 1877 - padding: 28px; 1878 - border: 1px solid fade(@line, 85%); 1879 - border-radius: @radius; 1880 - background: rgba(255, 255, 255, .88); 1881 - box-shadow: @shadow-sm; 1882 -} 1883 - 1884 -/* Ensure all reusable cards have a real surface, not transparent over the gradient. */ 1885 -#mainContentArea .widget, 1886 -#mainContentArea .pathway-card, 1887 -#mainContentArea .service-card, 1888 -#mainContentArea .resource-card, 1889 -#mainContentArea .services .service, 1890 -#mainContentArea .product-card, 1891 -#mainContentArea .product-feature, 1892 -#mainContentArea .product-summary-card, 1893 -#mainContentArea .product-info-card { 1894 - background: #fff; 1895 -} 1896 - 1897 -/* Make notes more readable and visually stronger. */ 1898 -#mainContentArea .resource-note { 1899 - border: 1px solid fade(@brand, 18%); 1900 - border-left: 4px solid @brand; 1901 - background: #fff; 1902 - box-shadow: 0 10px 28px rgba(15, 23, 42, .045); 1903 -} 1904 - 1905 -/* Keep the sidebar clearly separated from the background. */ 1906 -#mainContentArea .resource-sidebar { 1907 - background: #fff; 1908 -} 1909 - 1910 -/* Make CTA panels stand out more clearly. */ 1911 -#mainContentArea .resource-cta, 1912 -#mainContentArea .resource-inline-cta { 1913 - background: #fff; 1914 -} 1915 - 1916 -/* Improve table readability on long resource pages. */ 1917 -#mainContentArea .resource-content table { 1918 - background: #fff; 1919 -} 1920 - 1921 -#mainContentArea .resource-content table th { 1922 - color: @text; 1923 - background: #F8FAFC; 1924 -} 1925 - 1926 -#mainContentArea .resource-content table td { 1927 - color: @text-soft; 1928 -} 1929 - 1930 -/* Slightly improve paragraph/list contrast in long articles. */ 1931 -#mainContentArea .resource-content p, 1932 -#mainContentArea .resource-content li { 1933 - color: @text-soft; 1934 -} 1935 - 1936 -#mainContentArea .resource-content .resource-note p, 1937 -#mainContentArea .resource-content .resource-checklist li, 1938 -#mainContentArea .resource-content .process-list li { 1939 - color: @muted; 1940 -} 1941 - 1942 -@media (max-width: 900px) { 1943 - #mainContentArea .resource-layout { 1944 - padding: 22px; 1945 - } 1946 -} 1947 - 1948 -@media (max-width: 640px) { 1949 - #mainContentArea .resource-layout { 1950 - padding: 18px; 1951 - border-radius: 14px; 1952 - } 1953 -} 1954 - 1955 -