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, 1 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -2,7 +2,45 @@ 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> 5 5 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 +#* 6 6 <section class="hero hero-centered" aria-labelledby="hero-title"> 7 7 <div class="container hero-inner"> 8 8 <h1 id="hero-title">Professional XWiki consulting and engineering</h1> ... ... @@ -26,7 +26,7 @@ 26 26 </div> 27 27 </div> 28 28 </section> 29 - 67 +*# 30 30 <section class="trust-strip" aria-label="Agnease experience"> 31 31 <div class="container"> 32 32 <ul> ... ... @@ -111,35 +111,37 @@ 111 111 </div> 112 112 </section> 113 113 114 - <section class="industry-trust-section" aria-labelledby="industry-trust-title"> 115 - <div class="container"> 116 - <div class="industry-trust-panel"> 117 - <h2 id="industry-trust-title">Trusted XWiki expertise for business-critical platforms</h2> 152 + <div class="contrast-band-wrapper"> 153 + <section class="contrast-band" aria-labelledby="industry-trust-title"> 154 + <div class="container"> 155 + <div class="contrast-panel"> 156 + <h2 id="industry-trust-title">Trusted XWiki expertise for business-critical platforms</h2> 118 118 119 - <p class="section-intro"> 120 - Experience supporting XWiki platforms used in healthcare, financial services, scientific research, 121 - government institutions, transportation, software development, compliance programs and regulated environments. 122 - </p> 158 + <p class="section-intro"> 159 + Experience supporting XWiki platforms used in healthcare, financial services, scientific research, 160 + government institutions, transportation, software development, compliance programs and regulated environments. 161 + </p> 123 123 124 - <div class=" industry-tags" aria-label="Industries and environments supported">125 - <span>Healthcare</span> 126 - <span>Financial services</span> 127 - <span>Scientific research</span> 128 - <span>Government institutions</span> 129 - <span>Transportation</span> 130 - <span>Software development</span> 131 - <span>Compliance programs</span> 132 - <span>Regulated environments</span> 133 - </div> 163 + <div class="contrast-tags" aria-label="Industries and environments supported"> 164 + <span>Healthcare</span> 165 + <span>Financial services</span> 166 + <span>Scientific research</span> 167 + <span>Government institutions</span> 168 + <span>Transportation</span> 169 + <span>Software development</span> 170 + <span>Compliance programs</span> 171 + <span>Regulated environments</span> 172 + </div> 134 134 135 - <p class="industry-support"> 136 - Organizations rely on these platforms to manage documentation, workflows, compliance processes, 137 - research knowledge and critical business information. From upgrades and authentication integrations 138 - to workflow systems and long-term maintenance, Agnease helps keep XWiki secure, stable and ready for the future. 139 - </p> 174 + <p class="contrast-support"> 175 + Organizations rely on these platforms to manage documentation, workflows, compliance processes, 176 + research knowledge and critical business information. From upgrades and authentication integrations 177 + to workflow systems and long-term maintenance, Agnease helps keep XWiki secure, stable and ready for the future. 178 + </p> 179 + </div> 140 140 </div> 141 - </ div>142 - </ section>181 + </section> 182 + </div> 143 143 144 144 <section class="split-section" aria-labelledby="why-title"> 145 145 <div class="container">
- agnease-xwiki-hero.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Admin - Size
-
... ... @@ -1,0 +1,1 @@ 1 +981.8 KB - Content
- XWiki.StyleSheetExtension[0]
-
- code
-
... ... @@ -1,19 +1,30 @@ 1 1 /* ========== Agnease Public Website ========== */ 2 - 3 - 4 - 2 +/* 3 +@brand: #00937D; 4 +@brand-strong: #007B6A; 5 +@brand-soft: #E7FFF8; 6 +@brand-bg: #F4FCFA; 7 +@text: #2D3A34; 8 +@muted: #5B6B64; 9 +@line: #E4ECE9; 10 +@radius: 16px; 11 +@shadow-sm: 0 6px 20px rgba(0, 0, 0, .06); 12 +@shadow: 0 12px 36px rgba(0, 0, 0, .08); 13 +@maxw: 1140px; 14 +*/ 15 +@brand: #00937D; 16 +@brand-strong: #007B6A; 17 +@brand-soft: #E7FFF8; 5 5 @brand-bg: #F7F9FC; 6 6 @text: #07182D; 7 7 @text-soft: #10243D; 8 8 @muted: #64748B; 9 - 10 10 @line: #E6EBF2; 11 11 @radius: 18px; 12 - 13 13 @shadow-sm: 0 18px 45px rgba(15, 23, 42, .06); 14 14 @shadow: 0 30px 80px rgba(15, 23, 42, .12); 15 -@maxw: 1 240px;16 - /* */26 +@maxw: 1140px; 27 + 17 17 @section-padding: 30px 0; 18 18 @section-padding-mobile: 28px 0; 19 19 ... ... @@ -139,7 +139,7 @@ 139 139 140 140 /* ========== Buttons ========== */ 141 141 142 -.btn-primary { 153 +/*.btn-primary { 143 143 background: @brand; 144 144 border-color: @brand; 145 145 color: #fff; ... ... @@ -151,18 +151,12 @@ 151 151 color: #fff; 152 152 } 153 153 } 154 - 165 +*/ 155 155 .btn-secondary { 156 - color: @ brand;167 + color: @text; 157 157 background: #fff; 158 - border: 1px solid fade(@ brand, 35%);169 + border: 1px solid fade(@text, 35%); 159 159 160 - &:hover, 161 - &:focus { 162 - color: @brand-strong; 163 - border-color: @brand; 164 - background: @brand-bg; 165 - } 166 166 } 167 167 168 168 /* ========== Hero ========== */ ... ... @@ -174,9 +174,6 @@ 174 174 175 175 &.hero-centered { 176 176 text-align: center; 177 - background: 178 - radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%), 179 - radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%); 180 180 display: flex; 181 181 align-items: center; 182 182 justify-content: center; ... ... @@ -245,37 +245,63 @@ 245 245 margin-top: 22px; 246 246 } 247 247 248 -/* ========== TrustStrip========== */250 +/* ========== Contrast Band ========== */ 249 249 250 -.trust-strip { 251 - padding: 18px 0; 252 - border-top: 1px solid @line; 253 - background: #fff; 252 +/* Full‑bleed wrapper */ 253 +.contrast-band-wrapper { 254 + position: relative; 255 + overflow: visible; 256 +} 254 254 255 - ul { 256 - max-width: 960px; 257 - margin: 0 auto; 258 - padding: 0; 259 - list-style: none; 260 - display: flex; 261 - justify-content: center; 262 - gap: 22px; 263 - flex-wrap: wrap; 264 - color: @muted; 265 - font-size: 13px; 266 - } 258 +/* Full‑bleed gradient background */ 259 +.contrast-band-wrapper::before { 260 + content: ""; 261 + position: absolute; 262 + top: 0; 263 + left: 50%; 264 + width: 100vw; 265 + height: 100%; 266 + transform: translateX(-50%); 267 + z-index: -1; 267 267 268 - li {269 - di splay:flex;270 - a lign-items:center;271 - ga p:7px;272 - }269 + background: 270 + radial-gradient(circle at 18% 18%, fade(@brand, 22%) 0%, transparent 28%), 271 + radial-gradient(circle at 86% 12%, fade(@brand, 16%) 0%, transparent 30%), 272 + linear-gradient(135deg, @text 0%, @text-soft 100%); 273 +} 273 273 274 - i { 275 - color: @brand; 276 - } 275 +/* Inner band (no gradient here anymore) */ 276 +.contrast-band { 277 + position: relative; 278 + z-index: 0; 279 + padding: 54px 0; 280 + border-top: 0; 281 + color: #fff; 282 + background: none; 277 277 } 278 278 285 +/* Grid overlay */ 286 +.contrast-band::after { 287 + content: ""; 288 + position: absolute; 289 + inset: 0; 290 + background: 291 + linear-gradient(90deg, fade(#fff, 4%) 1px, transparent 1px), 292 + linear-gradient(180deg, fade(#fff, 4%) 1px, transparent 1px); 293 + background-size: 52px 52px; 294 + opacity: .38; 295 + pointer-events: none; 296 + z-index: 0; 297 +} 298 + 299 +/* Content stays above everything */ 300 +.contrast-band .container { 301 + position: relative; 302 + z-index: 1; 303 +} 304 + 305 + 306 + 279 279 /* ========== Reusable Grids ========== */ 280 280 281 281 .card-grid, ... ... @@ -323,7 +323,6 @@ 323 323 .pathway-card, 324 324 .service-card, 325 325 .resource-card { 326 - background: #fff; 327 327 border: 1px solid @line; 328 328 border-radius: @radius; 329 329 box-shadow: @shadow-sm; ... ... @@ -433,80 +433,6 @@ 433 433 } 434 434 } 435 435 436 -.industry-trust-section { 437 - background: 438 - radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 70%); 439 - 440 - .industry-trust-panel { 441 - max-width: 1040px; 442 - margin: 0 auto; 443 - padding: 30px 28px; 444 - border: 1px solid fade(@brand, 16%); 445 - border-radius: @radius; 446 - background: 447 - radial-gradient(34rem 12rem at 50% 0%, fade(@brand-soft, 75%) 0%, #fff 72%); 448 - box-shadow: @shadow-sm; 449 - text-align: center; 450 - } 451 - 452 - h2 { 453 - margin-bottom: 12px; 454 - } 455 - 456 - .section-intro { 457 - margin-bottom: 20px; 458 - max-width: 820px; 459 - } 460 - 461 - .industry-tags { 462 - max-width: 880px; 463 - margin: 0 auto; 464 - display: flex; 465 - flex-wrap: wrap; 466 - justify-content: center; 467 - gap: 10px; 468 - } 469 - 470 - .industry-tags span { 471 - display: inline-flex; 472 - align-items: center; 473 - padding: 7px 12px; 474 - border: 1px solid fade(@brand, 20%); 475 - border-radius: 999px; 476 - background: #fff; 477 - color: @text; 478 - font-size: 13px; 479 - font-weight: 600; 480 - line-height: 1.2; 481 - box-shadow: 0 3px 10px rgba(0, 0, 0, .04); 482 - } 483 - 484 - .industry-support { 485 - max-width: 820px; 486 - margin: 22px auto 0; 487 - color: @muted; 488 - font-size: 16px; 489 - line-height: 1.6; 490 - } 491 -} 492 - 493 -@media (max-width: 640px) { 494 - .industry-trust-section { 495 - .industry-trust-panel { 496 - padding: 24px 18px; 497 - } 498 - 499 - .industry-tags { 500 - gap: 8px; 501 - } 502 - 503 - .industry-tags span { 504 - font-size: 12px; 505 - padding: 6px 10px; 506 - } 507 - } 508 -} 509 - 510 510 /* ========== Services ========== */ 511 511 512 512 .services { ... ... @@ -519,7 +519,6 @@ 519 519 align-items: flex-start; 520 520 gap: 16px; 521 521 padding: 22px; 522 - background: #fff; 523 523 border: 1px solid @line; 524 524 border-radius: @radius; 525 525 box-shadow: @shadow-sm; ... ... @@ -607,7 +607,6 @@ 607 607 position: relative; 608 608 padding: 16px 16px 16px 58px; 609 609 margin-bottom: 12px; 610 - background: #fff; 611 611 border: 1px solid @line; 612 612 border-radius: @radius; 613 613 box-shadow: @shadow-sm; ... ... @@ -739,8 +739,8 @@ 739 739 740 740 /* ========== CTA ========== */ 741 741 742 -.cta-section { 743 - padding: @section-padding;693 +#mainContentArea .cta-section { 694 + padding: 44px 0 56px; 744 744 745 745 .contact-inline { 746 746 margin: 0; ... ... @@ -752,27 +752,70 @@ 752 752 } 753 753 } 754 754 755 -.cta-panel { 756 - max-width: 860px; 706 +#mainContentArea .cta-panel { 707 + position: relative; 708 + overflow: hidden; 709 + max-width: 1040px; 757 757 margin: 0 auto; 758 - padding: 32px;759 - border -radius:@radius;760 - border : 1px solid fade(@brand,20%);711 + padding: 48px 40px; 712 + border: 0; 713 + border-radius: 26px; 761 761 background: 762 - radial-gradient(34rem 12rem at 50% 0%, @brand-soft 0%, #fff 70%); 763 - box-shadow: @shadow-sm; 715 + radial-gradient(circle at 88% 10%, fade(@brand, 24%) 0%, transparent 30%), 716 + linear-gradient(135deg, @text 0%, @text-soft 100%); 717 + color: #fff; 718 + box-shadow: @shadow; 764 764 text-align: center; 720 +} 765 765 766 - h2 { 767 - margin-top: 0; 768 - } 722 +#mainContentArea .cta-panel::before { 723 + content: ""; 724 + position: absolute; 725 + inset: 0; 726 + background: 727 + linear-gradient(90deg, fade(#fff, 4%) 1px, transparent 1px), 728 + linear-gradient(180deg, fade(#fff, 4%) 1px, transparent 1px); 729 + background-size: 48px 48px; 730 + opacity: .4; 731 + pointer-events: none; 732 +} 769 769 770 - p { 771 - color: @muted; 772 - line-height: 1.55; 773 - } 734 +#mainContentArea .cta-panel h2, 735 +#mainContentArea .cta-panel p, 736 +#mainContentArea .cta-panel .btn { 737 + position: relative; 738 + z-index: 1; 774 774 } 775 775 741 +#mainContentArea .cta-panel h2 { 742 + max-width: 760px; 743 + margin: 0 auto 16px; 744 + color: #fff; 745 +} 746 + 747 +#mainContentArea .cta-panel p { 748 + max-width: 760px; 749 + margin: 0 auto 28px; 750 + color: #DBE4EF; 751 + font-size: 16px; 752 + line-height: 1.6; 753 +} 754 + 755 +#mainContentArea .cta-panel .btn-primary { 756 + border-color: #fff; 757 + background: #fff; 758 + color: @text; 759 + box-shadow: 0 18px 42px rgba(0, 0, 0, .18); 760 +} 761 + 762 +#mainContentArea .cta-panel .btn-primary:hover, 763 +#mainContentArea .cta-panel .btn-primary:focus { 764 + border-color: #fff; 765 + background: #fff; 766 + color: @brand-strong; 767 + text-decoration: none; 768 +} 769 + 776 776 .resource-inline-cta { 777 777 display: flex; 778 778 align-items: center; ... ... @@ -904,9 +904,14 @@ 904 904 gap: 14px; 905 905 } 906 906 907 - .cta-panel { 908 - padding: 24px 20px; 901 + #mainContentArea .cta-panel { 902 + padding: 30px 22px; 903 + border-radius: 20px; 909 909 } 905 + 906 + #mainContentArea .cta-panel .btn-primary { 907 + width: 100%; 908 + } 910 910 } 911 911 912 912 /* ========== Resource / Article Pages ========== */ ... ... @@ -918,9 +918,6 @@ 918 918 .resource-header { 919 919 padding: @section-padding; 920 920 border-top: none; 921 - background: 922 - radial-gradient(50rem 18rem at 50% -10%, @brand-soft 0%, transparent 60%), 923 - radial-gradient(50rem 18rem at 50% 0%, #E8F6F3 0%, transparent 60%); 924 924 925 925 h1 { 926 926 margin: 0 auto 14px; ... ... @@ -1068,7 +1068,6 @@ 1068 1068 border: 1px solid @line; 1069 1069 border-radius: @radius; 1070 1070 padding: 18px; 1071 - background: #fff; 1072 1072 box-shadow: @shadow-sm; 1073 1073 1074 1074 h4 { ... ... @@ -1167,7 +1167,6 @@ 1167 1167 1168 1168 .product-card { 1169 1169 position: relative; 1170 - background: #fff; 1171 1171 border: 1px solid @line; 1172 1172 border-radius: @radius; 1173 1173 box-shadow: @shadow-sm; ... ... @@ -1317,7 +1317,6 @@ 1317 1317 .product-info-card, 1318 1318 .product-feature, 1319 1319 .product-gallery-panel { 1320 - background: #fff; 1321 1321 border: 1px solid @line; 1322 1322 border-radius: @radius; 1323 1323 box-shadow: @shadow-sm; ... ... @@ -1560,7 +1560,6 @@ 1560 1560 /* ========== Resources Index ========== */ 1561 1561 1562 1562 .resources-index-page { 1563 - background: #fff; 1564 1564 1565 1565 .services-grid { 1566 1566 grid-template-columns: repeat(2, minmax(0, 1fr)); ... ... @@ -1596,3 +1596,279 @@ 1596 1596 color: @muted; 1597 1597 } 1598 1598 } 1591 + 1592 +/* ========== Global Theme Background ========== */ 1593 + 1594 +html, 1595 +body { 1596 + min-height: 100%; 1597 +} 1598 + 1599 +body { 1600 + color: @text; 1601 + background: 1602 + radial-gradient(circle at 12% 8%, rgba(0, 147, 125, 0.08) 0, transparent 26%), 1603 + radial-gradient(circle at 90% 28%, rgba(7, 24, 45, 0.05) 0, transparent 30%), 1604 + linear-gradient(180deg, #fff 0, @brand-bg 42%, #fff 100%) !important; 1605 + background-attachment: fixed; 1606 +} 1607 + 1608 +/* ========== Main Page Hero / SaaS Layout ========== */ 1609 + 1610 +#mainContentArea .hero.hero-saas { 1611 + min-height: auto; 1612 + padding: 60px 0 34px; 1613 + display: flex; 1614 + align-items: center; 1615 + overflow: hidden; 1616 + background: transparent; 1617 +} 1618 + 1619 +#mainContentArea .hero-layout { 1620 + max-width: 1120px; 1621 + margin: 0 auto; 1622 + display: grid; 1623 + grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); 1624 + gap: 56px; 1625 + align-items: center; 1626 +} 1627 + 1628 +#mainContentArea .hero-copy { 1629 + min-width: 0; 1630 + text-align: left; 1631 +} 1632 + 1633 +#mainContentArea .hero.hero-saas h1 { 1634 + max-width: 640px; 1635 + margin: 0 0 26px; 1636 + font-size: 60px; 1637 + font-weight: 800; 1638 + line-height: 1; 1639 + letter-spacing: -3px; 1640 +} 1641 + 1642 +#mainContentArea .hero.hero-saas h1 span { 1643 + color: @brand; 1644 +} 1645 + 1646 +#mainContentArea .hero.hero-saas .lead { 1647 + max-width: 590px; 1648 + margin: 0 0 28px; 1649 + color: #334155; 1650 + text-align: left; 1651 + font-size: 18px; 1652 + line-height: 1.6; 1653 +} 1654 + 1655 +#mainContentArea .hero.hero-saas .benefits { 1656 + max-width: 620px; 1657 + margin: 0 0 30px; 1658 + padding: 0; 1659 + display: grid; 1660 + grid-template-columns: repeat(2, minmax(0, 1fr)); 1661 + gap: 10px 24px; 1662 + list-style: none; 1663 + color: #475569; 1664 + font-size: 15px; 1665 + text-align: left; 1666 +} 1667 + 1668 +#mainContentArea .hero.hero-saas .benefits li { 1669 + display: grid; 1670 + grid-template-columns: 18px minmax(0, 1fr); 1671 + column-gap: 8px; 1672 + align-items: start; 1673 + margin: 0; 1674 + line-height: 1.45; 1675 +} 1676 + 1677 +#mainContentArea .hero.hero-saas .benefits li::before { 1678 + content: "✓"; 1679 + display: block; 1680 + width: 18px; 1681 + color: @brand; 1682 + font-weight: 900; 1683 + line-height: 1.45; 1684 + text-align: left; 1685 + margin: 0; 1686 +} 1687 + 1688 +#mainContentArea .hero.hero-saas .hero-actions, 1689 +#mainContentArea .hero.hero-saas #hero-cta { 1690 + display: flex; 1691 + flex-wrap: wrap; 1692 + justify-content: flex-start; 1693 + gap: 12px; 1694 + margin-top: 0; 1695 +} 1696 + 1697 +#mainContentArea .hero-image-wrapper { 1698 + min-width: 0; 1699 + display: flex; 1700 + justify-content: center; 1701 + align-items: center; 1702 +} 1703 + 1704 +#mainContentArea .hero-image { 1705 + display: block; 1706 + width: 100%; 1707 + max-width: 620px; 1708 + height: auto; 1709 + border: 0; 1710 +} 1711 + 1712 +/* ========== Main Page Hero Responsive ========== */ 1713 + 1714 +@media (max-width: 1100px) { 1715 + #mainContentArea .hero-layout { 1716 + max-width: 760px; 1717 + grid-template-columns: 1fr; 1718 + gap: 34px; 1719 + } 1720 + 1721 + #mainContentArea .hero-copy { 1722 + order: 1; 1723 + text-align: center; 1724 + } 1725 + 1726 + #mainContentArea .hero-image-wrapper { 1727 + order: 2; 1728 + } 1729 + 1730 + #mainContentArea .hero.hero-saas h1 { 1731 + margin-left: auto; 1732 + margin-right: auto; 1733 + text-align: center; 1734 + } 1735 + 1736 + #mainContentArea .hero.hero-saas .lead { 1737 + margin-left: auto; 1738 + margin-right: auto; 1739 + text-align: center; 1740 + } 1741 + 1742 + #mainContentArea .hero.hero-saas .benefits { 1743 + margin-left: auto; 1744 + margin-right: auto; 1745 + } 1746 + 1747 + #mainContentArea .hero.hero-saas .hero-actions, 1748 + #mainContentArea .hero.hero-saas #hero-cta { 1749 + justify-content: center; 1750 + } 1751 + 1752 + #mainContentArea .hero-image { 1753 + max-width: 620px; 1754 + } 1755 +} 1756 + 1757 +@media (max-width: 640px) { 1758 + #mainContentArea .hero.hero-saas { 1759 + padding: 42px 0 28px; 1760 + } 1761 + 1762 + #mainContentArea .hero-layout { 1763 + gap: 28px; 1764 + } 1765 + 1766 + #mainContentArea .hero.hero-saas h1 { 1767 + font-size: 42px; 1768 + letter-spacing: -1.5px; 1769 + } 1770 + 1771 + #mainContentArea .hero.hero-saas .lead { 1772 + font-size: 17px; 1773 + } 1774 + 1775 + #mainContentArea .hero.hero-saas .benefits { 1776 + grid-template-columns: 1fr; 1777 + } 1778 + 1779 + #mainContentArea .hero-image { 1780 + max-width: 100%; 1781 + } 1782 +} 1783 + 1784 +/* ========== Accessibility / Contrast Improvements ========== */ 1785 + 1786 +/* Keep the article area readable while preserving the page background around it. */ 1787 +/*#mainContentArea .resource-layout { 1788 + padding: 28px; 1789 + border: 1px solid fade(@line, 85%); 1790 + border-radius: @radius; 1791 + background: rgba(255, 255, 255, .88); 1792 + box-shadow: @shadow-sm; 1793 +}*/ 1794 + 1795 +/* Ensure all reusable cards have a real surface, not transparent over the gradient. */ 1796 +#mainContentArea .widget, 1797 +#mainContentArea .pathway-card, 1798 +#mainContentArea .service-card, 1799 +#mainContentArea .resource-card, 1800 +#mainContentArea .services .service, 1801 +#mainContentArea .product-card, 1802 +#mainContentArea .product-feature, 1803 +#mainContentArea .product-summary-card, 1804 +#mainContentArea .product-info-card { 1805 + background: #fff; 1806 +} 1807 + 1808 +/* Make notes more readable and visually stronger. */ 1809 +#mainContentArea .resource-note { 1810 + border: 1px solid fade(@brand, 18%); 1811 + border-left: 4px solid @brand; 1812 + background: #fff; 1813 + box-shadow: 0 10px 28px rgba(15, 23, 42, .045); 1814 +} 1815 + 1816 +/* Keep the sidebar clearly separated from the background. */ 1817 +#mainContentArea .resource-sidebar { 1818 + background: #fff; 1819 +} 1820 + 1821 +/* Make CTA panels stand out more clearly. */ 1822 +#mainContentArea .resource-cta, 1823 +#mainContentArea .resource-inline-cta { 1824 + background: #fff; 1825 +} 1826 + 1827 +/* Improve table readability on long resource pages. */ 1828 +#mainContentArea .resource-content table { 1829 + background: #fff; 1830 +} 1831 + 1832 +#mainContentArea .resource-content table th { 1833 + color: @text; 1834 + background: #F8FAFC; 1835 +} 1836 + 1837 +#mainContentArea .resource-content table td { 1838 + color: @text-soft; 1839 +} 1840 + 1841 +/* Slightly improve paragraph/list contrast in long articles. */ 1842 +#mainContentArea .resource-content p, 1843 +#mainContentArea .resource-content li { 1844 + color: @text-soft; 1845 +} 1846 + 1847 +#mainContentArea .resource-content .resource-note p, 1848 +#mainContentArea .resource-content .resource-checklist li, 1849 +#mainContentArea .resource-content .process-list li { 1850 + color: @muted; 1851 +} 1852 + 1853 +@media (max-width: 900px) { 1854 + #mainContentArea .resource-layout { 1855 + padding: 22px; 1856 + } 1857 +} 1858 + 1859 +@media (max-width: 640px) { 1860 + #mainContentArea .resource-layout { 1861 + padding: 18px; 1862 + border-radius: 14px; 1863 + } 1864 +} 1865 + 1866 +