Changes for page Public Web Site
Last modified by Alex Cotiuga on 2026/07/29 05:00
From version 28.47
edited by Alex Cotiuga
on 2026/07/03 15:11
on 2026/07/03 15:11
Change comment:
There is no comment for this version
To version 31.7
edited by Alex Cotiuga
on 2026/07/29 04:42
on 2026/07/29 04:42
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -149,37 +149,35 @@ 149 149 </div> 150 150 </section> 151 151 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> 152 + <section class="industry-trust-section" aria-labelledby="industry-trust-title"> 153 + <div class="container"> 154 + <div class="industry-trust-panel"> 155 + <h2 id="industry-trust-title">Trusted XWiki expertise for business-critical platforms</h2> 157 157 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>157 + <p class="section-intro"> 158 + Experience supporting XWiki platforms used in healthcare, financial services, scientific research, 159 + government institutions, transportation, software development, compliance programs and regulated environments. 160 + </p> 162 162 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> 173 - 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> 162 + <div class="industry-tags" aria-label="Industries and environments supported"> 163 + <span>Healthcare</span> 164 + <span>Financial services</span> 165 + <span>Scientific research</span> 166 + <span>Government institutions</span> 167 + <span>Transportation</span> 168 + <span>Software development</span> 169 + <span>Compliance programs</span> 170 + <span>Regulated environments</span> 179 179 </div> 172 + 173 + <p class="industry-support"> 174 + Organizations rely on these platforms to manage documentation, workflows, compliance processes, 175 + research knowledge and critical business information. From upgrades and authentication integrations 176 + to workflow systems and long-term maintenance, Agnease helps keep XWiki secure, stable and ready for the future. 177 + </p> 180 180 </div> 181 - </ section>182 - </ div>179 + </div> 180 + </section> 183 183 184 184 <section class="split-section" aria-labelledby="why-title"> 185 185 <div class="container"> ... ... @@ -251,6 +251,7 @@ 251 251 A short description is enough to define practical next steps. 252 252 </p> 253 253 <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> 254 254 </div> 255 255 </div> 256 256 </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; ... ... @@ -247,63 +247,36 @@ 247 247 margin-top: 22px; 248 248 } 249 249 250 -/* ========== ContrastBand========== */250 +/* ========== Trust Strip ========== */ 251 251 252 -/* Full‑bleed wrapper */ 253 -.contrast-band-wrapper { 254 - position: relative; 255 - overflow: visible; 256 -} 252 +.trust-strip { 253 + padding: 18px 0; 254 + border-top: 1px solid @line; 257 257 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; 256 + ul { 257 + max-width: 960px; 258 + margin: 0 auto; 259 + padding: 0; 260 + list-style: none; 261 + display: flex; 262 + justify-content: center; 263 + gap: 22px; 264 + flex-wrap: wrap; 265 + color: @muted; 266 + font-size: 13px; 267 + } 268 268 269 - background:270 - radial-gradient(circleat 18% 18%,fade(@brand, 22%) 0%, transparent 28%),271 - radial-gradient(circle at86% 12%, fade(@brand, 16%) 0%, transparent30%),272 - linear-gradient(135deg,@text 0%, @text-soft 100%);273 -} 269 + li { 270 + display: flex; 271 + align-items: center; 272 + gap: 7px; 273 + } 274 274 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; 275 + i { 276 + color: @brand; 277 + } 283 283 } 284 284 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 - 307 307 /* ========== Reusable Grids ========== */ 308 308 309 309 .card-grid, ... ... @@ -460,6 +460,80 @@ 460 460 } 461 461 } 462 462 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 + 463 463 /* ========== Services ========== */ 464 464 465 465 .services { ... ... @@ -529,23 +529,104 @@ 529 529 530 530 .split-grid { 531 531 display: grid; 532 - grid-template-columns: 1.1fr .9fr;579 + grid-template-columns: .95fr 1.05fr; 533 533 grid-gap: 36px; 534 534 max-width: 1040px; 535 535 margin: 0 auto; 536 - align-items: center;583 + align-items: stretch; 537 537 } 538 538 539 539 .split-copy { 587 + position: relative; 588 + overflow: hidden; 589 + min-height: 100%; 590 + padding: 42px 38px; 591 + border-radius: 26px; 592 + background: 593 + radial-gradient(circle at 86% 12%, fade(@brand, 22%) 0%, transparent 32%), 594 + linear-gradient(135deg, @text 0%, @text-soft 100%); 595 + color: #fff; 596 + box-shadow: @shadow; 597 + 598 + &::before { 599 + content: ""; 600 + position: absolute; 601 + inset: 0; 602 + background: 603 + linear-gradient(90deg, fade(#fff, 4%) 1px, transparent 1px), 604 + linear-gradient(180deg, fade(#fff, 4%) 1px, transparent 1px); 605 + background-size: 48px 48px; 606 + opacity: .36; 607 + pointer-events: none; 608 + } 609 + 610 + h2, 611 + p { 612 + position: relative; 613 + z-index: 1; 614 + } 615 + 540 540 h2 { 541 541 text-align: left; 542 - margin-top: 0; 618 + margin: 0 0 18px; 619 + color: #fff; 620 + font-size: 30px; 621 + line-height: 1.18; 622 + letter-spacing: -.02em; 543 543 } 544 544 545 545 p { 546 - color: @muted; 547 - line-height: 1.6; 626 + margin: 0 0 18px; 627 + color: #DBE4EF; 628 + line-height: 1.65; 629 + 630 + &:last-child { 631 + margin-bottom: 0; 632 + } 548 548 } 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 + } 549 549 } 550 550 551 551 .process-list { ... ... @@ -557,38 +557,75 @@ 557 557 li { 558 558 counter-increment: process; 559 559 position: relative; 560 - padding: 16px 16px 16px 58px; 561 - margin-bottom: 12px; 688 + min-height: 104px; 689 + padding: 24px 26px 24px 82px; 690 + margin-bottom: 18px; 562 562 border: 1px solid @line; 563 563 border-radius: @radius; 693 + background: #fff; 564 564 box-shadow: @shadow-sm; 565 565 color: @muted; 566 566 line-height: 1.5; 567 567 698 + &:last-child { 699 + margin-bottom: 0; 700 + } 701 + 568 568 &:before { 569 569 content: counter(process); 570 570 position: absolute; 571 - left: 16px;572 - top: 16px;573 - width: 28px;574 - height: 28px;705 + left: 26px; 706 + top: 26px; 707 + width: 38px; 708 + height: 38px; 575 575 border-radius: 50%; 576 - background: fade(@brand, 10%);577 - color: @brand;710 + background: @brand; 711 + color: #fff; 578 578 display: flex; 579 579 align-items: center; 580 580 justify-content: center; 581 581 font-weight: 800; 716 + box-shadow: 0 0 0 8px fade(@brand, 10%); 582 582 } 583 583 584 584 strong { 585 585 display: block; 586 586 color: @text; 587 - margin-bottom: 3px; 722 + margin-bottom: 5px; 723 + font-size: 16px; 724 + line-height: 1.3; 588 588 } 589 589 } 590 590 } 591 591 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 + 592 592 /* ========== Resources ========== */ 593 593 594 594 .resource-strip { ... ... @@ -596,6 +596,7 @@ 596 596 } 597 597 598 598 .resource-card { 764 + background-color: #fff; 599 599 padding: 20px; 600 600 601 601 h4 { ... ... @@ -690,8 +690,8 @@ 690 690 691 691 /* ========== CTA ========== */ 692 692 693 - #mainContentArea.cta-section {694 - padding:44px 0 56px;859 +.cta-section { 860 + border: none; 695 695 696 696 .contact-inline { 697 697 margin: 0; ... ... @@ -701,113 +701,72 @@ 701 701 color: @brand; 702 702 } 703 703 } 704 -} 705 705 706 -#mainContentArea .cta-panel { 707 - position: relative; 708 - overflow: hidden; 709 - max-width: 1040px; 710 - margin: 0 auto; 711 - padding: 48px 40px; 712 - border: 0; 713 - border-radius: 26px; 714 - background: 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; 719 - text-align: center; 720 -} 871 + .cta-panel { 872 + position: relative; 873 + overflow: hidden; 874 + max-width: 1040px; 875 + margin: 0 auto; 876 + padding: 48px 40px; 877 + border: 0; 878 + border-radius: 26px; 879 + background: 880 + radial-gradient(circle at 88% 10%, fade(@brand, 24%) 0%, transparent 30%), 881 + linear-gradient(135deg, @text 0%, @text-soft 100%); 882 + color: #fff; 883 + box-shadow: @shadow; 884 + text-align: center; 721 721 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 -} 886 + &::before { 887 + content: ""; 888 + position: absolute; 889 + inset: 0; 890 + background: 891 + linear-gradient(90deg, fade(#fff, 4%) 1px, transparent 1px), 892 + linear-gradient(180deg, fade(#fff, 4%) 1px, transparent 1px); 893 + background-size: 48px 48px; 894 + opacity: .4; 895 + pointer-events: none; 896 + } 733 733 734 -#mainContentArea .cta-panel h2, 735 -#mainContentArea .cta-panel p, 736 -#mainContentArea .cta-panel .btn { 737 - position: relative; 738 - z-index: 1; 739 -} 898 + > h2, 899 + > p, 900 + > form, 901 + > .hero-actions, 902 + > .cta-actions, 903 + > .reviewNotifications { 904 + position: relative; 905 + z-index: 1; 906 + } 740 740 741 - #mainContentArea.cta-panelh2 {742 - max-width: 760px; 743 - margin: 0 auto 16px; 744 - color: #fff; 745 -} 908 + > h2 { 909 + max-width: 760px; 910 + margin: 0 auto 16px; 911 + color: #fff; 912 + } 746 746 747 - #mainContentArea.cta-panelp {748 - max-width: 760px; 749 - margin: 0 auto 28px; 750 - color: #DBE4EF; 751 - font-size: 16px; 752 - line-height: 1.6; 753 -} 914 + > p { 915 + max-width: 760px; 916 + margin: 0 auto 28px; 917 + color: #DBE4EF; 918 + font-size: 16px; 919 + line-height: 1.6; 920 + } 754 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 -} 922 + .btn-primary { 923 + border-color: #fff; 924 + background: #fff; 925 + color: @text; 926 + box-shadow: 0 18px 42px rgba(0, 0, 0, .18); 761 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 - 770 -.resource-inline-cta { 771 - display: flex; 772 - align-items: center; 773 - justify-content: space-between; 774 - gap: 22px; 775 - margin: 30px 0; 776 - padding: 20px 22px; 777 - border: 1px solid fade(@brand, 22%); 778 - border-radius: @radius; 779 - background: @brand-bg; 780 - box-shadow: @shadow-sm; 781 - 782 - p { 783 - margin: 0; 784 - color: @muted; 785 - line-height: 1.55; 786 - } 787 - 788 - strong { 789 - color: @text; 790 - } 791 - 792 - .btn { 793 - flex-shrink: 0; 794 - } 795 -} 796 - 797 -@media (max-width: 767px) { 798 - .resource-inline-cta { 799 - display: block; 800 - text-align: center; 801 - 802 - p { 803 - margin-bottom: 14px; 928 + &:hover, 929 + &:focus { 930 + border-color: #fff; 931 + background: #fff; 932 + color: @brand-strong; 933 + text-decoration: none; 934 + } 804 804 } 805 - 806 - .btn { 807 - display: inline-block; 808 - margin-left: auto; 809 - margin-right: auto; 810 - } 811 811 } 812 812 } 813 813 ... ... @@ -825,11 +825,29 @@ 825 825 grid-template-columns: 1fr; 826 826 } 827 827 828 - .split-copy h2 { 829 - text-align: center; 953 + .split-copy { 954 + padding: 34px 28px; 955 + 956 + h2 { 957 + text-align: center; 958 + } 830 830 } 831 831 } 832 832 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 + 833 833 @media (max-width: 760px) { 834 834 section[id] { 835 835 scroll-margin-top: 132px; ... ... @@ -894,17 +894,35 @@ 894 894 padding: 20px; 895 895 } 896 896 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 + 897 897 .services .service { 898 898 gap: 14px; 899 899 } 900 900 901 - #mainContentArea.cta-panel{902 - pa dding:30px 22px;903 - border-radius:20px;904 - }1060 + .cta-section { 1061 + .cta-panel { 1062 + padding: 30px 22px; 1063 + border-radius: 20px; 905 905 906 - #mainContentArea .cta-panel .btn-primary { 907 - width: 100%; 1065 + .btn-primary { 1066 + width: 100%; 1067 + } 1068 + } 908 908 } 909 909 } 910 910 ... ... @@ -984,7 +984,7 @@ 984 984 985 985 .resource-note { 986 986 border-left: 4px solid @brand; 987 - background: @brand-bg;1148 + background: #fff; 988 988 padding: 16px 18px; 989 989 margin: 22px 0; 990 990 border-radius: 0 @radius @radius 0; ... ... @@ -1116,9 +1116,43 @@ 1116 1116 } 1117 1117 } 1118 1118 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 + 1119 1119 .resource-note, 1120 1120 .resource-checklist, 1121 -.resource-cta { 1315 +.resource-cta, 1316 +.resource-inline-cta { 1122 1122 display: flow-root; 1123 1123 } 1124 1124 ... ... @@ -1128,6 +1128,22 @@ 1128 1128 } 1129 1129 } 1130 1130 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 + 1131 1131 @media (max-width: 900px) { 1132 1132 .resource-layout { 1133 1133 padding-top: 22px; ... ... @@ -1261,17 +1261,6 @@ 1261 1261 } 1262 1262 } 1263 1263 1264 -.product-card-contact { 1265 - color: @brand; 1266 - font-weight: 700; 1267 - text-decoration: underline; 1268 - 1269 - &:hover, 1270 - &:focus { 1271 - color: @brand-strong; 1272 - } 1273 -} 1274 - 1275 1275 @media (max-width: 640px) { 1276 1276 .product-card { 1277 1277 grid-template-columns: 1fr; ... ... @@ -1605,6 +1605,39 @@ 1605 1605 background-attachment: fixed; 1606 1606 } 1607 1607 1808 +/* Let the body background show through the XWiki wrappers. 1809 +#mainContentArea, 1810 +.resource-page, 1811 +.resources-index-page { 1812 + background: transparent !important; 1813 + background-image: none !important; 1814 +} 1815 +*/ 1816 +/* Remove local decorative backgrounds that compete with the global gradient. 1817 +.hero, 1818 +.hero.hero-centered, 1819 +.trust-strip, 1820 +.industry-trust-section, 1821 +.split-section, 1822 +.resource-strip, 1823 +.homepage-resource-strip, 1824 +.resource-header, 1825 +.product-section-muted, 1826 +.resources-index-page { 1827 + background: transparent !important; 1828 + background-image: none !important; 1829 +} 1830 + */ 1831 +/* Keep large panels readable, but remove their inner gradients. 1832 +.industry-trust-section .industry-trust-panel, 1833 +.cta-panel, 1834 +.resource-inline-cta, 1835 +.resource-note, 1836 +.resource-cta { 1837 + background: #fff !important; 1838 + background-image: none !important; 1839 +} */ 1840 + 1608 1608 /* ========== Main Page Hero / SaaS Layout ========== */ 1609 1609 1610 1610 #mainContentArea .hero.hero-saas { ... ... @@ -1781,86 +1781,178 @@ 1781 1781 } 1782 1782 } 1783 1783 1784 -/* ========== Accessibility / ContrastImprovements========== */2017 +/* ========== Temporary marketing campaign banner ========== */ 1785 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 -}*/ 2019 +.public-campaign-banner { 2020 + position: relative; 2021 + margin-top:24px; 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 +} 1794 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; 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; 1806 1806 } 1807 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); 2041 +.public-campaign-copy { 2042 + min-width: 0; 2043 + display: flex; 2044 + align-items: center; 2045 + gap: 18px; 1814 1814 } 1815 1815 1816 -/* Keep the sidebar clearly separated from the background. */ 1817 -#mainContentArea .resource-sidebar { 1818 - background: #fff; 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 + } 1819 1819 } 1820 1820 1821 -/* Make CTA panels stand out more clearly. */ 1822 -#mainContentArea .resource-cta, 1823 -#mainContentArea .resource-inline-cta { 1824 - background: #fff; 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 + } 1825 1825 } 1826 1826 1827 -/* Improve table readability on long resource pages. */ 1828 -#mainContentArea .resource-content table { 1829 - background: #fff; 2089 +.public-campaign-actions { 2090 + flex-shrink: 0; 2091 + display: flex; 2092 + align-items: center; 2093 + gap: 18px; 1830 1830 } 1831 1831 1832 -#mainContentArea .resource-content table th { 2096 +.public-campaign-primary { 2097 + white-space: nowrap; 2098 + border-color: #fff; 2099 + background: #fff; 1833 1833 color: @text; 1834 - background:#F8FAFC;1835 - }2101 + font-weight: 700; 2102 + box-shadow: 0 10px 24px rgba(0, 0, 0, .16); 1836 1836 1837 -#mainContentArea .resource-content table td { 1838 - color: @text-soft; 2104 + &:hover, 2105 + &:focus { 2106 + border-color: #fff; 2107 + background: #fff; 2108 + color: @brand-strong; 2109 + text-decoration: none; 2110 + } 1839 1839 } 1840 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 -} 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; 1846 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 -} 2121 + i { 2122 + margin-left: 5px; 2123 + } 1852 1852 1853 -@media (max-width: 900px) { 1854 - #mainContentArea .resource-layout { 1855 - padding: 22px; 2125 + &:hover, 2126 + &:focus { 2127 + color: #fff; 2128 + text-decoration-thickness: 2px; 1856 1856 } 1857 1857 } 1858 1858 1859 -@media (max-width: 640px) {1860 - #mainContentArea .resource-layout{1861 - padding:18px;1862 - border-radius: 14px;2132 +@media (max-width: 980px) { 2133 + .public-campaign-inner { 2134 + align-items: flex-start; 2135 + gap: 18px; 1863 1863 } 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 + } 1864 1864 } 1865 1865 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 + } 1866 1866 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 +}