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,44 +2,94 @@ 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 - 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> 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 + <p class="lead"> 11 + Agnease helps organizations upgrade, maintain, secure and extend production XWiki platforms with practical engineering support, custom development, integrations and long-term care. 12 + </p> 13 + <ul class="benefits"> 14 + <li>XWiki LTS upgrades</li> 15 + <li>Maintenance and support</li> 16 + <li>Custom XWiki development</li> 17 + <li>Migrations and integrations</li> 18 + </ul> 19 + <div class="hero-actions" id="hero-cta"> 20 + <a class="btn btn-primary" href="https://calendly.com/alex-agnease/30min?back=1&month=2026-06"> 21 + Book a free discussion 22 + </a> 23 + <a class="btn btn-secondary" href="$xwiki.getURL('services.WebHome')">View XWiki services</a> 24 + </div> 25 + </div> 26 + <div class="hero-visual" aria-hidden="true"> 27 + <div class="hero-browser"> 28 + <div class="hero-browser-top"> 29 + <div class="hero-dot"></div> 30 + <div class="hero-dot"></div> 31 + <div class="hero-dot"></div> 32 + <div class="hero-search"></div> 27 27 </div> 34 + <div class="hero-browser-body"> 35 + <div class="hero-sidebar"> 36 + <div class="hero-nav-item"><span class="hero-nav-icon"></span>Home</div> 37 + <div class="hero-nav-item"><span class="hero-nav-icon"></span>Documentation</div> 38 + <div class="hero-nav-item"><span class="hero-nav-icon"></span>Processes</div> 39 + <div class="hero-nav-item"><span class="hero-nav-icon"></span>Policies</div> 40 + <div class="hero-nav-item"><span class="hero-nav-icon"></span>Teams</div> 41 + </div> 42 + <div class="hero-content-panel"> 43 + <div class="hero-panel-title">Production XWiki Platform</div> 44 + <div class="hero-skeleton"></div> 45 + <div class="hero-skeleton"></div> 46 + <div class="hero-skeleton short"></div> 47 + <div class="hero-dashboard-grid"> 48 + <div class="hero-mini-card"> 49 + <h4>Recent work</h4> 50 + <div class="hero-status-row"><span class="hero-status-dot"></span>LTS upgrade plan</div> 51 + <div class="hero-status-row"><span class="hero-status-dot"></span>Extension review</div> 52 + <div class="hero-status-row"><span class="hero-status-dot"></span>Production validation</div> 53 + </div> 54 + <div class="hero-mini-card"> 55 + <h4>Platform care</h4> 56 + <div class="hero-status-row"><span class="hero-status-dot"></span>Permissions</div> 57 + <div class="hero-status-row"><span class="hero-status-dot"></span>Authentication</div> 58 + <div class="hero-status-row"><span class="hero-status-dot"></span>Maintainability</div> 59 + </div> 60 + </div> 61 + </div> 62 + </div> 28 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 - /> 64 + <div class="hero-floating hero-upgrade-card"> 65 + <div class="hero-card-title">Upgrade with confidence</div> 66 + <div class="hero-version-flow"> 67 + <div class="hero-version">XWiki<br/>LTS</div> 68 + <div class="hero-arrow">→</div> 69 + <div class="hero-version">Staging</div> 70 + <div class="hero-arrow">→</div> 71 + <div class="hero-version active">Production</div> 72 + </div> 39 39 </div> 74 + <div class="hero-floating hero-security-card"> 75 + <div class="hero-card-title">Security-aware maintenance</div> 76 + <ul> 77 + <li>Permissions review</li> 78 + <li>Authentication support</li> 79 + <li>Audit and traceability</li> 80 + </ul> 81 + </div> 82 + <div class="hero-flow"> 83 + <div class="hero-env">Review</div> 84 + <div class="hero-arrow">→</div> 85 + <div class="hero-env">Plan</div> 86 + <div class="hero-arrow">→</div> 87 + <div class="hero-env">Validate</div> 88 + </div> 40 40 </div> 41 41 </div> 42 - </section> 91 + </div> 92 + </section> 43 43 #* 44 44 <section class="hero hero-centered" aria-labelledby="hero-title"> 45 45 <div class="container hero-inner"> ... ... @@ -149,9 +149,9 @@ 149 149 </div> 150 150 </section> 151 151 152 - <section class=" contrast-band" aria-labelledby="industry-trust-title">202 + <section class="industry-trust-section" aria-labelledby="industry-trust-title"> 153 153 <div class="container"> 154 - <div class=" contrast-panel">204 + <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">212 + <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">223 + <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
-
... ... @@ -166,8 +166,14 @@ 166 166 .btn-secondary { 167 167 color: @text; 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 ========== */ ... ... @@ -247,129 +247,36 @@ 247 247 margin-top: 22px; 248 248 } 249 249 250 -/* ========== ContrastBand========== */256 +/* ========== Trust Strip ========== */ 251 251 252 -.contrast-band { 253 - position: relative; 254 - z-index: 0; 255 - overflow: visible; /* allow pseudo-element to escape */ 256 - padding: 54px 0; 257 - border-top: 0; 258 - color: #fff; 258 +.trust-strip { 259 + padding: 18px 0; 260 + border-top: 1px solid @line; 259 259 260 - /* Remove gradient from here */ 261 - background: none; 262 -} 262 + ul { 263 + max-width: 960px; 264 + margin: 0 auto; 265 + padding: 0; 266 + list-style: none; 267 + display: flex; 268 + justify-content: center; 269 + gap: 22px; 270 + flex-wrap: wrap; 271 + color: @muted; 272 + font-size: 13px; 273 + } 263 263 264 -/* Full‑bleed gradient background */ 265 -.contrast-band::before { 266 - border: 2px solid red; 267 - content: ""; 268 - position: absolute; 269 - top: 0; 270 - left: 50%; 271 - width: 100vw; /* full viewport width */ 272 - height: 100%; 273 - transform: translateX(-50%); 274 - z-index: -1; 275 - 276 - background: 277 - radial-gradient(circle at 18% 18%, fade(@brand, 22%) 0%, transparent 28%), 278 - radial-gradient(circle at 86% 12%, fade(@brand, 16%) 0%, transparent 30%), 279 - linear-gradient(135deg, @text 0%, @text-soft 100%); 280 -} 281 - 282 -/* Grid overlay stays exactly as you had it */ 283 -.contrast-band::after { 284 - content: ""; 285 - position: absolute; 286 - inset: 0; 287 - background: 288 - linear-gradient(90deg, fade(#fff, 4%) 1px, transparent 1px), 289 - linear-gradient(180deg, fade(#fff, 4%) 1px, transparent 1px); 290 - background-size: 52px 52px; 291 - opacity: .38; 292 - pointer-events: none; 293 - z-index: 0; 294 -} 295 - 296 -.contrast-band .container { 297 - position: relative; 298 - z-index: 1; 299 -} 300 - 301 -/* Everything below stays unchanged */ 302 -.contrast-panel { 303 - max-width: 1040px; 304 - margin: 0 auto; 305 - text-align: center; 306 -} 307 - 308 -.contrast-band h2 { 309 - max-width: 860px; 310 - margin: 0 auto 12px; 311 - color: #fff; 312 -} 313 - 314 -.contrast-band .section-intro { 315 - max-width: 840px; 316 - margin: 0 auto 26px; 317 - color: #D9E3EE; 318 -} 319 - 320 -.contrast-tags { 321 - max-width: 940px; 322 - margin: 0 auto; 323 - display: flex; 324 - flex-wrap: wrap; 325 - justify-content: center; 326 - gap: 10px; 327 -} 328 - 329 -.contrast-tags span { 330 - display: inline-flex; 331 - align-items: center; 332 - padding: 8px 13px; 333 - border: 1px solid fade(#fff, 18%); 334 - border-radius: 999px; 335 - background: fade(#fff, 8%); 336 - color: #F8FAFC; 337 - font-size: 13px; 338 - font-weight: 700; 339 - line-height: 1.2; 340 -} 341 - 342 -.contrast-tags span::before { 343 - content: ""; 344 - width: 7px; 345 - height: 7px; 346 - margin-right: 8px; 347 - border-radius: 50%; 348 - background: @brand; 349 - box-shadow: 0 0 0 4px fade(@brand, 18%); 350 -} 351 - 352 -.contrast-support { 353 - max-width: 860px; 354 - margin: 30px auto 0; 355 - color: #D9E3EE; 356 - text-align: center; 357 - font-size: 15px; 358 - line-height: 1.7; 359 -} 360 - 361 -@media (max-width: 640px) { 362 - .contrast-band { 363 - padding: 40px 0; 275 + li { 276 + display: flex; 277 + align-items: center; 278 + gap: 7px; 364 364 } 365 365 366 - .contrast-tags span { 367 - font-size: 12px; 368 - padding: 8px 11px; 281 + i { 282 + color: @brand; 369 369 } 370 370 } 371 371 372 - 373 373 /* ========== Reusable Grids ========== */ 374 374 375 375 .card-grid, ... ... @@ -526,6 +526,80 @@ 526 526 } 527 527 } 528 528 442 +.industry-trust-section { 443 + background: 444 + radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 70%); 445 + 446 + .industry-trust-panel { 447 + max-width: 1040px; 448 + margin: 0 auto; 449 + padding: 30px 28px; 450 + border: 1px solid fade(@brand, 16%); 451 + border-radius: @radius; 452 + background: 453 + radial-gradient(34rem 12rem at 50% 0%, fade(@brand-soft, 75%) 0%, #fff 72%); 454 + box-shadow: @shadow-sm; 455 + text-align: center; 456 + } 457 + 458 + h2 { 459 + margin-bottom: 12px; 460 + } 461 + 462 + .section-intro { 463 + margin-bottom: 20px; 464 + max-width: 820px; 465 + } 466 + 467 + .industry-tags { 468 + max-width: 880px; 469 + margin: 0 auto; 470 + display: flex; 471 + flex-wrap: wrap; 472 + justify-content: center; 473 + gap: 10px; 474 + } 475 + 476 + .industry-tags span { 477 + display: inline-flex; 478 + align-items: center; 479 + padding: 7px 12px; 480 + border: 1px solid fade(@brand, 20%); 481 + border-radius: 999px; 482 + background: #fff; 483 + color: @text; 484 + font-size: 13px; 485 + font-weight: 600; 486 + line-height: 1.2; 487 + box-shadow: 0 3px 10px rgba(0, 0, 0, .04); 488 + } 489 + 490 + .industry-support { 491 + max-width: 820px; 492 + margin: 22px auto 0; 493 + color: @muted; 494 + font-size: 16px; 495 + line-height: 1.6; 496 + } 497 +} 498 + 499 +@media (max-width: 640px) { 500 + .industry-trust-section { 501 + .industry-trust-panel { 502 + padding: 24px 18px; 503 + } 504 + 505 + .industry-tags { 506 + gap: 8px; 507 + } 508 + 509 + .industry-tags span { 510 + font-size: 12px; 511 + padding: 6px 10px; 512 + } 513 + } 514 +} 515 + 529 529 /* ========== Services ========== */ 530 530 531 531 .services { ... ... @@ -756,8 +756,8 @@ 756 756 757 757 /* ========== CTA ========== */ 758 758 759 - #mainContentArea.cta-section {760 - padding: 44px 0 56px;746 +.cta-section { 747 + padding: @section-padding; 761 761 762 762 .contact-inline { 763 763 margin: 0; ... ... @@ -769,70 +769,25 @@ 769 769 } 770 770 } 771 771 772 -#mainContentArea .cta-panel { 773 - position: relative; 774 - overflow: hidden; 775 - max-width: 1040px; 759 +.cta-panel { 760 + max-width: 860px; 776 776 margin: 0 auto; 777 - padding: 48px 40px; 778 - border: 0; 779 - border-radius: 26px; 780 - background: 781 - radial-gradient(circle at 88% 10%, fade(@brand, 24%) 0%, transparent 30%), 782 - linear-gradient(135deg, @text 0%, @text-soft 100%); 783 - color: #fff; 784 - box-shadow: @shadow; 762 + padding: 32px; 763 + border-radius: @radius; 764 + border: 1px solid fade(@brand, 20%); 765 + box-shadow: @shadow-sm; 785 785 text-align: center; 786 -} 787 787 788 -#mainContentArea .cta-panel::before { 789 - content: ""; 790 - position: absolute; 791 - inset: 0; 792 - background: 793 - linear-gradient(90deg, fade(#fff, 4%) 1px, transparent 1px), 794 - linear-gradient(180deg, fade(#fff, 4%) 1px, transparent 1px); 795 - background-size: 48px 48px; 796 - opacity: .4; 797 - pointer-events: none; 798 -} 768 + h2 { 769 + margin-top: 0; 770 + } 799 799 800 -#mainContentArea .cta-panel h2, 801 -#mainContentArea .cta-panel p, 802 -#mainContentArea .cta-panel .btn { 803 - position: relative; 804 - z-index: 1; 772 + p { 773 + color: @muted; 774 + line-height: 1.55; 775 + } 805 805 } 806 806 807 -#mainContentArea .cta-panel h2 { 808 - max-width: 760px; 809 - margin: 0 auto 16px; 810 - color: #fff; 811 -} 812 - 813 -#mainContentArea .cta-panel p { 814 - max-width: 760px; 815 - margin: 0 auto 28px; 816 - color: #DBE4EF; 817 - font-size: 16px; 818 - line-height: 1.6; 819 -} 820 - 821 -#mainContentArea .cta-panel .btn-primary { 822 - border-color: #fff; 823 - background: #fff; 824 - color: @text; 825 - box-shadow: 0 18px 42px rgba(0, 0, 0, .18); 826 -} 827 - 828 -#mainContentArea .cta-panel .btn-primary:hover, 829 -#mainContentArea .cta-panel .btn-primary:focus { 830 - border-color: #fff; 831 - background: #fff; 832 - color: @brand-strong; 833 - text-decoration: none; 834 -} 835 - 836 836 .resource-inline-cta { 837 837 display: flex; 838 838 align-items: center; ... ... @@ -964,14 +964,9 @@ 964 964 gap: 14px; 965 965 } 966 966 967 - #mainContentArea .cta-panel { 968 - padding: 30px 22px; 969 - border-radius: 20px; 909 + .cta-panel { 910 + padding: 24px 20px; 970 970 } 971 - 972 - #mainContentArea .cta-panel .btn-primary { 973 - width: 100%; 974 - } 975 975 } 976 976 977 977 /* ========== Resource / Article Pages ========== */ ... ... @@ -1671,13 +1671,41 @@ 1671 1671 background-attachment: fixed; 1672 1672 } 1673 1673 1674 -#mainContentArea { 1675 - padding: 0; 1676 - overflow-x: hidden; 1611 +/* Let the body background show through the XWiki wrappers. 1612 +#mainContentArea, 1613 +.resource-page, 1614 +.resources-index-page { 1615 + background: transparent !important; 1616 + background-image: none !important; 1677 1677 } 1618 +*/ 1619 +/* Remove local decorative backgrounds that compete with the global gradient. 1620 +.hero, 1621 +.hero.hero-centered, 1622 +.trust-strip, 1623 +.industry-trust-section, 1624 +.split-section, 1625 +.resource-strip, 1626 +.homepage-resource-strip, 1627 +.resource-header, 1628 +.product-section-muted, 1629 +.resources-index-page { 1630 + background: transparent !important; 1631 + background-image: none !important; 1632 +} 1633 + */ 1634 +/* Keep large panels readable, but remove their inner gradients. 1635 +.industry-trust-section .industry-trust-panel, 1636 +.cta-panel, 1637 +.resource-inline-cta, 1638 +.resource-note, 1639 +.resource-cta { 1640 + background: #fff !important; 1641 + background-image: none !important; 1642 +} */ 1678 1678 1679 -/* ========== Main Page Hero / SaaS Layout ========== */ 1680 1680 1645 +/* ========== Hero ========== */ 1681 1681 #mainContentArea .hero.hero-saas { 1682 1682 min-height: auto; 1683 1683 padding: 60px 0 34px; ... ... @@ -1686,21 +1686,18 @@ 1686 1686 overflow: hidden; 1687 1687 background: transparent; 1688 1688 } 1689 - 1690 1690 #mainContentArea .hero-layout { 1691 1691 max-width: 1120px; 1692 1692 margin: 0 auto; 1693 1693 display: grid; 1694 - grid-template-columns: minmax(0, . 9fr) minmax(0, 1.1fr);1658 + grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr); 1695 1695 gap: 56px; 1696 1696 align-items: center; 1697 1697 } 1698 - 1699 -#mainContentArea .hero-copy { 1700 - min-width: 0; 1662 +#mainContentArea .hero-copy, 1663 +#mainContentArea .hero.hero-saas .lead { 1701 1701 text-align: left; 1702 1702 } 1703 - 1704 1704 #mainContentArea .hero.hero-saas h1 { 1705 1705 max-width: 640px; 1706 1706 margin: 0 0 26px; ... ... @@ -1709,20 +1709,16 @@ 1709 1709 line-height: 1; 1710 1710 letter-spacing: -3px; 1711 1711 } 1712 - 1713 1713 #mainContentArea .hero.hero-saas h1 span { 1714 1714 color: @brand; 1715 1715 } 1716 - 1717 1717 #mainContentArea .hero.hero-saas .lead { 1718 1718 max-width: 590px; 1719 1719 margin: 0 0 28px; 1720 1720 color: #334155; 1721 - text-align: left; 1722 1722 font-size: 18px; 1723 1723 line-height: 1.6; 1724 1724 } 1725 - 1726 1726 #mainContentArea .hero.hero-saas .benefits { 1727 1727 max-width: 620px; 1728 1728 margin: 0 0 30px; ... ... @@ -1735,7 +1735,6 @@ 1735 1735 font-size: 15px; 1736 1736 text-align: left; 1737 1737 } 1738 - 1739 1739 #mainContentArea .hero.hero-saas .benefits li { 1740 1740 display: grid; 1741 1741 grid-template-columns: 18px minmax(0, 1fr); ... ... @@ -1744,7 +1744,6 @@ 1744 1744 margin: 0; 1745 1745 line-height: 1.45; 1746 1746 } 1747 - 1748 1748 #mainContentArea .hero.hero-saas .benefits li::before { 1749 1749 content: "✓"; 1750 1750 display: block; ... ... @@ -1755,183 +1755,212 @@ 1755 1755 text-align: left; 1756 1756 margin: 0; 1757 1757 } 1758 - 1759 -#mainContentArea .hero.hero-saas .hero-actions, 1760 -#mainContentArea .hero.hero-saas #hero-cta { 1714 +#mainContentArea .hero-actions, 1715 +#mainContentArea #hero-cta { 1761 1761 display: flex; 1762 1762 flex-wrap: wrap; 1763 1763 justify-content: flex-start; 1764 1764 gap: 12px; 1765 - margin-top: 0; 1766 1766 } 1767 - 1768 -#mainContentArea .hero-image-wrapper { 1769 - min-width: 0; 1721 +#mainContentArea .hero-visual { 1722 + position: relative; 1723 + min-height: 540px; 1724 +} 1725 +#mainContentArea .hero-browser, 1726 +#mainContentArea .hero-floating { 1727 + border: 1px solid @line; 1728 + background: fade(#fff, 94%); 1729 + box-shadow: @shadow; 1730 + backdrop-filter: blur(14px); 1731 +} 1732 +#mainContentArea .hero-browser { 1733 + position: absolute; 1734 + top: 8px; 1735 + right: 0; 1736 + width: 100%; 1737 + max-width: 720px; 1738 + overflow: hidden; 1739 + border-radius: 18px; 1740 + background: fade(#fff, 88%); 1741 +} 1742 +#mainContentArea .hero-browser-top { 1743 + height: 58px; 1770 1770 display: flex; 1771 - justify-content: center; 1772 1772 align-items: center; 1746 + gap: 10px; 1747 + padding: 0 24px; 1748 + border-bottom: 1px solid @line; 1749 + background: fade(#fff, 74%); 1773 1773 } 1774 - 1775 -#mainContentArea .hero-image { 1776 - display: block; 1777 - width: 100%; 1778 - max-width: 620px; 1779 - height: auto; 1780 - border: 0; 1751 +#mainContentArea .hero-dot, 1752 +#mainContentArea .hero-status-dot { 1753 + border-radius: 50%; 1781 1781 } 1782 - 1783 -/* ========== Main Page Hero Responsive ========== */ 1784 - 1785 -@media (max-width: 1100px) { 1786 - #mainContentArea .hero-layout { 1787 - max-width: 760px; 1788 - grid-template-columns: 1fr; 1789 - gap: 34px; 1790 - } 1791 - 1792 - #mainContentArea .hero-copy { 1793 - order: 1; 1794 - text-align: center; 1795 - } 1796 - 1797 - #mainContentArea .hero-image-wrapper { 1798 - order: 2; 1799 - } 1800 - 1801 - #mainContentArea .hero.hero-saas h1 { 1802 - margin-left: auto; 1803 - margin-right: auto; 1804 - text-align: center; 1805 - } 1806 - 1807 - #mainContentArea .hero.hero-saas .lead { 1808 - margin-left: auto; 1809 - margin-right: auto; 1810 - text-align: center; 1811 - } 1812 - 1813 - #mainContentArea .hero.hero-saas .benefits { 1814 - margin-left: auto; 1815 - margin-right: auto; 1816 - } 1817 - 1818 - #mainContentArea .hero.hero-saas .hero-actions, 1819 - #mainContentArea .hero.hero-saas #hero-cta { 1820 - justify-content: center; 1821 - } 1822 - 1823 - #mainContentArea .hero-image { 1824 - max-width: 620px; 1825 - } 1755 +#mainContentArea .hero-dot { 1756 + width: 10px; 1757 + height: 10px; 1758 + background: #CBD5E1; 1826 1826 } 1827 - 1828 -@media (max-width: 640px) { 1829 - #mainContentArea .hero.hero-saas { 1830 - padding: 42px 0 28px; 1831 - } 1832 - 1833 - #mainContentArea .hero-layout { 1834 - gap: 28px; 1835 - } 1836 - 1837 - #mainContentArea .hero.hero-saas h1 { 1838 - font-size: 42px; 1839 - letter-spacing: -1.5px; 1840 - } 1841 - 1842 - #mainContentArea .hero.hero-saas .lead { 1843 - font-size: 17px; 1844 - } 1845 - 1846 - #mainContentArea .hero.hero-saas .benefits { 1847 - grid-template-columns: 1fr; 1848 - } 1849 - 1850 - #mainContentArea .hero-image { 1851 - max-width: 100%; 1852 - } 1760 +#mainContentArea .hero-status-dot { 1761 + width: 8px; 1762 + height: 8px; 1763 + background: @brand; 1853 1853 } 1854 - 1855 -/* ========== Accessibility / Contrast Improvements ========== */ 1856 - 1857 -/* Keep the article area readable while preserving the page background around it. */ 1858 -/*#mainContentArea .resource-layout { 1859 - padding: 28px; 1860 - border: 1px solid fade(@line, 85%); 1861 - border-radius: @radius; 1862 - background: rgba(255, 255, 255, .88); 1863 - box-shadow: @shadow-sm; 1864 -}*/ 1865 - 1866 -/* Ensure all reusable cards have a real surface, not transparent over the gradient. */ 1867 -#mainContentArea .widget, 1868 -#mainContentArea .pathway-card, 1869 -#mainContentArea .service-card, 1870 -#mainContentArea .resource-card, 1871 -#mainContentArea .services .service, 1872 -#mainContentArea .product-card, 1873 -#mainContentArea .product-feature, 1874 -#mainContentArea .product-summary-card, 1875 -#mainContentArea .product-info-card { 1876 - background: #fff; 1765 +#mainContentArea .hero-search { 1766 + margin-left: auto; 1767 + width: 170px; 1768 + height: 26px; 1769 + border: 1px solid #E2E8F0; 1770 + border-radius: 20px; 1771 + background: #F1F5F9; 1877 1877 } 1878 - 1879 -/* Make notes more readable and visually stronger. */ 1880 -#mainContentArea .resource-note { 1881 - border: 1px solid fade(@brand, 18%); 1882 - border-left: 4px solid @brand; 1883 - background: #fff; 1884 - box-shadow: 0 10px 28px rgba(15, 23, 42, .045); 1773 +#mainContentArea .hero-browser-body { 1774 + display: grid; 1775 + grid-template-columns: 150px minmax(0, 1fr); 1885 1885 } 1886 - 1887 - /*Keepthe sidebar clearly separatedfrom the background.*/1888 - #mainContentArea.resource-sidebar{1889 - background: # fff;1777 +#mainContentArea .hero-sidebar { 1778 + padding: 24px 18px; 1779 + border-right: 1px solid @line; 1780 + background: #F8FAFC; 1890 1890 } 1891 - 1892 -/* Make CTA panels stand out more clearly. */ 1893 -#mainContentArea .resource-cta, 1894 -#mainContentArea .resource-inline-cta { 1895 - background: #fff; 1782 +#mainContentArea .hero-nav-item, 1783 +#mainContentArea .hero-status-row, 1784 +#mainContentArea .hero-version-flow, 1785 +#mainContentArea .hero-flow { 1786 + display: flex; 1787 + align-items: center; 1896 1896 } 1897 - 1898 -/* Improve table readability on long resource pages. */ 1899 -#mainContentArea .resource-content table { 1900 - background: #fff; 1789 +#mainContentArea .hero-nav-item { 1790 + gap: 9px; 1791 + padding: 10px 8px; 1792 + color: #334155; 1793 + font-size: 13px; 1901 1901 } 1902 - 1903 -#mainContentArea .resource-content table th { 1795 +#mainContentArea .hero-nav-icon { 1796 + width: 20px; 1797 + height: 20px; 1798 + border: 1px solid #CBD5E1; 1799 + border-radius: 5px; 1800 +} 1801 +#mainContentArea .hero-content-panel { 1802 + padding: 26px; 1803 +} 1804 +#mainContentArea .hero-panel-title, 1805 +#mainContentArea .hero-card-title { 1904 1904 color: @text; 1905 - background:#F8FAFC;1807 + font-weight: 800; 1906 1906 } 1907 - 1908 - #mainContentArea .resource-contenttable td {1909 - color: @text-soft;1809 +#mainContentArea .hero-panel-title { 1810 + margin-bottom: 18px; 1811 + font-size: 20px; 1910 1910 } 1911 - 1912 - /*Slightlyimproveparagraph/listcontrast in long articles. */1913 - #mainContentArea .resource-content p,1914 - #mainContentArea.resource-content li{1915 - c olor:@text-soft;1813 +#mainContentArea .hero-skeleton { 1814 + height: 8px; 1815 + margin-bottom: 10px; 1816 + border-radius: 10px; 1817 + background: #E2E8F0; 1916 1916 } 1917 - 1918 -#mainContentArea .resource-content .resource-note p, 1919 -#mainContentArea .resource-content .resource-checklist li, 1920 -#mainContentArea .resource-content .process-list li { 1921 - color: @muted; 1819 +#mainContentArea .hero-skeleton.short { 1820 + width: 64%; 1922 1922 } 1923 - 1924 - @media(max-width:900px) {1925 - #mainContentArea .resource-layout{1926 - padding:22px;1927 - }1822 +#mainContentArea .hero-dashboard-grid { 1823 + margin-top: 28px; 1824 + display: grid; 1825 + grid-template-columns: repeat(2, minmax(0, 1fr)); 1826 + gap: 18px; 1928 1928 } 1929 - 1930 -@media (max-width: 640px) { 1931 - #mainContentArea .resource-layout { 1932 - padding: 18px; 1933 - border-radius: 14px; 1934 - } 1828 +#mainContentArea .hero-mini-card { 1829 + padding: 18px; 1830 + border: 1px solid @line; 1831 + border-radius: 14px; 1832 + background: #fff; 1935 1935 } 1834 +#mainContentArea .hero-mini-card h4 { 1835 + margin: 0 0 14px; 1836 + font-size: 15px; 1837 +} 1838 +#mainContentArea .hero-status-row { 1839 + gap: 10px; 1840 + margin: 11px 0; 1841 + color: #475569; 1842 + font-size: 13px; 1843 +} 1844 +#mainContentArea .hero-floating { 1845 + position: absolute; 1846 + border-radius: 16px; 1847 +} 1848 +#mainContentArea .hero-upgrade-card { 1849 + left: 0; 1850 + bottom: 72px; 1851 + width: 320px; 1852 + padding: 20px; 1853 +} 1854 +#mainContentArea .hero-security-card { 1855 + right: 20px; 1856 + top: 260px; 1857 + width: 260px; 1858 + padding: 22px; 1859 +} 1860 +#mainContentArea .hero-security-card ul { 1861 + margin: 0; 1862 + padding: 0; 1863 + list-style: none; 1864 +} 1865 +#mainContentArea .hero-security-card li { 1866 + margin: 12px 0; 1867 + font-size: 14px; 1868 +} 1869 +#mainContentArea .hero-security-card li::before { 1870 + content: "✓"; 1871 + margin-right: 8px; 1872 + color: @brand; 1873 + font-weight: 900; 1874 +} 1875 +#mainContentArea .hero-card-title { 1876 + margin-bottom: 16px; 1877 +} 1878 +#mainContentArea .hero-version-flow { 1879 + gap: 8px; 1880 +} 1881 +#mainContentArea .hero-version { 1882 + width: 62px; 1883 + height: 54px; 1884 + padding: 0 8px; 1885 + display: grid; 1886 + place-items: center; 1887 + box-sizing: border-box; 1888 + border-radius: 8px; 1889 + background: #F1F5F9; 1890 + color: #334155; 1891 + text-align: center; 1892 + font-size: 13px; 1893 + line-height: 1.25; 1894 +} 1895 +#mainContentArea .hero-version.active { 1896 + width: 84px; 1897 + background: @text; 1898 + color: #fff; 1899 +} 1900 +#mainContentArea .hero-arrow { 1901 + color: #64748B; 1902 +} 1903 +#mainContentArea .hero-flow { 1904 + position: absolute; 1905 + right: 48px; 1906 + bottom: 18px; 1907 + gap: 12px; 1908 +} 1909 +#mainContentArea .hero-env { 1910 + min-width: 130px; 1911 + padding: 16px 20px; 1912 + border: 1px solid @line; 1913 + border-radius: 12px; 1914 + background: #fff; 1915 + color: #475569; 1916 + text-align: center; 1917 + text-transform: uppercase; 1918 + font-size: 12px; 1919 + letter-spacing: 1.3px; 1920 + box-shadow: 0 16px 40px rgba(15, 23, 42, .08); 1921 +} 1936 1936 1937 -