1 2 3 4<!DOCTYPE html> 5<html lang="en-US" data-lang="en-US" crm-lang="en-US" dir="ltr" crm-lcid="1033" 6 same-site-mode="None"> 7<head> 8 9 <meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /> 10
10<script type="text/javascript" > 11 12 </script>
12 13 <title> 14 15 Contact us 16 · MSA 17</title> 18 19
19<script src="/_portal/95f58377-5e5c-ed11-9562-0022482a4240/Resources/ResourceManager?lang=en-US"></script>
19 20 21
21<script type="text/javascript"> 22 // Refresh all powerBI Iframes on Login in one Iframe 23 window.addEventListener('message', function (event) { 24 if (event && event.data && event.data == 'refreshPowerBI') { 25 $("iframe.powerbi").each(function () { 26 this.src = this.src; 27 }); 28 } 29 }); 30 31 // Fix for incorrect viewport width setting in IE 10 on Windows Phone 8. 32 if (navigator.userAgent.match(/IEMobile\/10\.0/)) { 33 var msViewportStyle = document.createElement("style"); 34 msViewportStyle.appendChild(document.createTextNode("@-ms-viewport{width:auto!important}")); 35 document.getElementsByTagName("head")[0].appendChild(msViewportStyle); 36 } 37 </script>
37 38 39 40 41 <link href="/bootstrap.min.css" rel="stylesheet" /> 42 43 <link href="https://content.powerapps.com/resource/powerappsportal/dist/font-awesome.bundle-3d8a58a48f.css" onerror="javascript: var target = event.target; var link = document.createElement('link'); link.crossOrigin = target.crossOrigin; link.href = '/dist/font-awesome.bundle-3d8a58a48f.css'; link.rel = 'stylesheet'; target.insertAdjacentElement('afterend',link);" rel="stylesheet" /> 44 45 <link href="https://content.powerapps.com/resource/powerappsportal/dist/preform.bundle-b72a6ea21d.css" onerror="javascript: var target = event.target; var link = document.createElement('link'); link.crossOrigin = target.crossOrigin; link.href = '/dist/preform.bundle-b72a6ea21d.css'; link.rel = 'stylesheet'; target.insertAdjacentElement('afterend',link);" rel="stylesheet" /> 46 47 48 49 <link href="https://content.powerapps.com/resource/powerappsportal/dist/privatemode.bundle-049b12b66e.css" onerror="javascript: var target = event.target; var link = document.createElement('link'); link.crossOrigin = target.crossOrigin; link.href = '/dist/privatemode.bundle-049b12b66e.css'; link.rel = 'stylesheet'; target.insertAdjacentElement('afterend',link);" rel="stylesheet" /> 50 51 52 53 54 55 56 57 <link href="/theme.css" rel="stylesheet" /> 58<link href="/login.css" rel="stylesheet" /> 59<link href="/portalbasictheme.css" rel="stylesheet" /> 60 61 <style type="text/css">* { 62 margin: 0; 63 padding: 0; 64} 65 66body{ 67 -moz-osx-font-smoothing: grayscale; 68 -webkit-font-smoothing: antialiased; 69 text-rendering:optimizeLegibility !important; 70} 71 72@font-face { 73 font-family: "Segoe UI"; 74 src: 75 local("Segoe UI Light"), 76 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.woff2) format("woff2"), 77 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.woff) format("woff"), 78 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.ttf) format("truetype"); 79 font-weight: 100; 80} 81 82@font-face { 83 font-family: "Segoe UI"; 84 src: 85 local("Segoe UI Semilight"), 86 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.woff2) format("woff2"), 87 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.woff) format("woff"), 88 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.ttf) format("truetype"); 89 font-weight: 200; 90} 91 92@font-face { 93 font-family: "Segoe UI"; 94 src: 95 local("Segoe UI"), 96 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.woff2) format("woff2"), 97 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.woff) format("woff"), 98 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.ttf) format("truetype"); 99 font-weight: 400; 100} 101 102@font-face { 103 font-family: "Segoe UI"; 104 src: 105 local("Segoe UI Bold"), 106 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.woff2) format("woff2"), 107 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.woff) format("woff"), 108 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.ttf) format("truetype"); 109 font-weight: 600; 110} 111 112@font-face { 113 font-family: "Segoe UI"; 114 src: 115 local("Segoe UI Semibold"), 116 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff2) format("woff2"), 117 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff) format("woff"), 118 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.ttf) format("truetype"); 119 font-weight: 700; 120} 121 122/* banner section */ 123:root { 124 --bnr-title-font-size: 3.6458vw; 125 --title-font-size: 2.6041vw; 126 --title-desc-font-size: 1.6666vw; 127 --para-font-size: 0.9375vw; 128 --main-font-family: "Segoe UI", sans-serif; 129} 130 131h1, 132h2, 133h3, 134h3visual, 135h4, 136h5, 137h6, 138span, 139div, 140a, 141strong, 142p, 143input, 144select, 145button, 146textarea { 147 font-family: "Segoe UI", sans-serif; 148} 149.required:after { 150 content:" *"; 151 color: red; 152} 153.color{ 154 color: red !important; 155} 156.about-flex { 157 display: flex; 158 padding: 6.25vw 5.2083vw 5.9375vw; 159 background-repeat: no-repeat; 160 background-size: cover; 161} 162 163.contact-flex { 164 /* padding: 6.7708vw 5.2083vw; */ 165 padding: 5.2083vw; 166} 167 168.contact-banner-title { 169 width: 35.3645vw; 170 margin-bottom: 2.2395vw !important; 171 line-height: 4.2187vw; 172} 173 174.contact-banner-left { 175 margin-top: 1.7187vw; 176} 177 178.contact-banner-desc { 179 font-weight: 400 !important; 180 font-size: 1.25vw !important; 181 margin-bottom: 1.1458vw !important; 182 width: 71% !important; 183} 184.contact-banner-desc a { 185 text-decoration: underline; 186 color: var(--nav-lnk-color); 187 font-size: 1.25vw; 188} 189.contact-banner-desc a:hover { 190 text-decoration: underline; 191 color: var(--nav-lnk-color); 192 font-size: 1.25vw; 193} 194 195.about-banner-right iframe, 196.contact-us-right, 197.contact-us-right img { 198 width: 44.2708vw; 199 height: 24.8437vw; 200 object-fit: cover; 201} 202 203.about-banner-title { 204 font-family: var(--main-font-family); 205 font-weight: 100; 206 font-size: var(--bnr-title-font-size); 207 margin: 0 0 0.9375vw 0; 208} 209 210.about-banner-desc { 211 font-family: var(--main-font-family); 212 font-weight: 100; 213 font-size: var(--title-desc-font-size); 214 width: 84%; 215 margin-bottom: 3.0208vw; 216} 217 218.about-contact{ 219 font-family: var(--main-font-family); 220 font-weight: bold; 221 font-size: var(--para-font-size); 222 color: #fff; 223 background-color: var(--act-btn-bkgnd-color); 224 border: 1px solid var(--act-btn-border-color); 225 padding: 0.7812vw 2.3958vw; 226 cursor: pointer; 227} 228 229.savings-button { 230 width: 8.5416vw; 231 padding: 0.7812vw 0; 232} 233@media(max-width:991px) { 234 .about-flex { 235 display: block; 236 padding: 30px 20px 55px 20px; 237 } 238 239 .about-banner-left, 240 .about-banner-right { 241 width: 100%; 242 } 243 244 .about-banner-title { 245 font-size: 32px; 246 line-height: 39px; 247 margin-bottom: 18px; 248 } 249 250 .about-banner-desc { 251 font-size: 14px; 252 line-height: 20px; 253 width: 100%; 254 margin-bottom: 40px; 255 } 256 257 .about-contact { 258 font-size: 16px; 259 padding: 12px 46px; 260 margin-bottom: 13px; 261 } 262 263 .savings-button { 264 width: 158px !important; 265 padding: 12px 0 !important; 266 margin-bottom: 20px !important; 267} 268 269 .about-banner-right iframe { 270 width: 100%; 271 height: 200px; 272 } 273 274 .contact-banner-title { 275 width: 100%; 276 margin-bottom: 18px !important; 277 } 278 279 .contact-banner-desc { 280 width: 100% !important; 281 font-size: 14px !important; 282 } 283 .contact-banner-desc a { 284 text-decoration: underline; 285 color: var(--nav-lnk-color); 286 font-size: 14px !important; 287 } 288 .contact-banner-desc a:hover { 289 text-decoration: underline; 290 color: var(--nav-lnk-color); 291 font-size: 14px !important; 292 } 293 294 .contact-banner-left { 295 margin: 0 0 40px; 296 } 297 298 .contact-us-right, 299 .contact-us-right img { 300 width: 100%; 301 height: 53vw; 302 } 303} 304 305/* banner section end*/ 306/* know-more */ 307.know-more-flex{ 308 display: flex; 309 justify-content: space-between; 310} 311.more-details { 312 background-color: #737373; 313 padding: 3.6458vw 15.5208vw 3.6458vw 5.2083vw; 314 text-align: center; 315} 316 317.more-details-content h3, 318.more-details-content h3visual { 319 font-family: var(--main-font-family); 320 font-weight: 100; 321 font-size: var(--title-font-size); 322 line-height: 3.2812vw; 323 color: #FFF; 324 margin-top: 0;
325} 326 327.more-details-content p { 328 font-family: var(--main-font-family); 329 font-weight: 400; 330 font-size: var(--para-font-size); 331 line-height: 1.3541vw; 332 color: #FFF; 333 width: 31.8229vw; 334 display: inline-block; 335 margin-bottom: 2.3437vw; 336} 337 338.know-more-btn { 339 background-color: var(--act-btn-bkgnd-color); 340 font-family: var(--main-font-family); 341 font-weight: bold; 342 font-size: var(--para-font-size); 343 color: #FFF; 344 padding: 0.6770vw 2.2916vw; 345 border: 1px solid var(--act-btn-border-color); 346} 347 348/* .more-details { 349 padding: 3.6458vw 0; 350 text-align: center; 351} */ 352 353@media(max-width:991px) { 354 .know-more-flex{ 355 display: block; 356 } 357 358 .more-details { 359 padding: 70px 20px; 360 } 361 362 .faq-details { 363 padding: 40px 20px; 364 } 365 366 .more-details-content h3, 367 .more-details-content h3visual { 368 font-size: 24px; 369 } 370 371 .more-details-content p { 372 font-size: 14px; 373 line-height: 20px; 374 width: 100%; 375 margin-bottom: 42px; 376 } 377 378 .know-more-btn { 379 font-size: 16px; 380 } 381 382 .faq-btn { 383 width: 150px; 384 padding: 13px 0; 385 } 386} 387 388/* know-more-end */ 389/* contact form */ 390#contact-form { 391 margin: 11.4583vw 5.2083vw; 392} 393 394.contact-form-flex, 395.form-flex { 396 display: flex; 397} 398 399.form-flex { 400 margin-bottom: 3.125vw; 401} 402 403.form h2 { 404 font-family: var(--main-font-family); 405 font-weight: 100; 406 font-size: 2.6041vw; 407 margin: 2.6041vw 0 2.2916vw 0; 408} 409 410label { 411 font-family: var(--main-font-family); 412 font-weight: 400; 413 font-size: 0.9375vw; 414 color: rgba(115, 116, 116); 415} 416 417#fname, 418#lname, 419#email, 420#query, 421#message-text { 422 font-family: var(--main-font-family); 423 font-weight: bold; 424 font-size: 1vw; 425 padding: 0.5208vw 1.0416vw; 426 border: 1px solid #A6A6A6; 427} 428 429#fname, 430#lname, 431#email { 432 width: 100%; 433 height: 3.3333vw; 434} 435 436#query { 437 width: 100%; 438 /* margin-bottom: 3.3437vw; */ 439 height: 3.3333vw; 440 appearance: none; 441 442 /* background-color: white; */ 443 /* border: thin solid blue; */ 444 /* border-radius: 4px; */ 445 /* display: inline-block; */ 446 /* font: inherit; */ 447 /* line-height: 1.5em; */ 448 /* padding: 0.5em 3.5em 0.5em 1em; */ 449 /* --g:transparent 50%, gray 50% calc(50% + 1px), transparent calc(50% + 2px); */ 450 /* background-image: 451 linear-gradient(45deg, var(--g)), 452 linear-gradient(-45deg, var(--g)); */ 453 /* background-position: 454 right 20px top calc(1em + 2px), 455 right 15px top calc(1em + 2px); */ 456 /* background-size: 5px 5px; 457 background-repeat: no-repeat; */ 458 /* reset */ 459 /* margin: 0; */ 460 /* box-sizing: border-box; 461 -webkit-appearance: none; 462 -moz-appearance: none; */ 463} 464 465.form-name, 466.form-mail { 467 margin-right: 1.0416vw; 468} 469 470.form-name{ 471 position: relative; 472} 473 474/* .img-dpdw{ 475 position: absolute; 476 right: 10px; 477 top: 58px; 478} */ 479 480.form-query::after{ 481 content: url(/dropdownarrowicon); 482 font-size: 1vw; 483 top: 50%; 484 right: 18px; 485 position: absolute; 486 width: 0.7812vw; 487 height: 0.3645vw; 488 pointer-events: none; 489} 490 491.form-query { 492 margin-right: 0; 493} 494 495textarea { 496 width: 100%; 497 height: 7.7083vw; 498 margin-bottom: 3.125vw; 499 resize: none; 500} 501 502.cancel-btn, 503.submit-btn { 504 font-family: var(--main-font-family); 505 font-weight: bold; 506 font-size: 0.9375vw; 507 width: 8.5416vw; 508 padding: 0.7812vw 0; 509 float: right; 510} 511 512.cancel-btn { 513 color: #000; 514 border: 1px solid #000; 515 margin-right: 1.0416vw; 516} 517 518.submit-btn { 519 background-color: var(--act-btn-bkgnd-color); 520 color: #fff; 521 border: 1px solid var(--act-btn-border-color); 522 cursor: pointer; 523 text-align: center; 524} 525 526.form-image, 527.form-image img { 528 width: 43.8541vw; 529 height: 42.9687vw; 530 object-fit: cover; 531} 532 533.form { 534 width: 50%; 535 margin-left: 5.2083vw; 536} 537 538.form-email, 539.form-name { 540 width: 50%; 541} 542 543.cancel-btn-1 { 544 display: none; 545} 546 547.query-options { 548 font-size: 0.3645vw; 549} 550@media(max-width:1240px){ 551 .form-query::after{ 552 top: 56%; 553 } 554} 555@media(max-width:991px) { 556 557 .contact-form-flex, 558 .form-flex { 559 display: block; 560 } 561 562 .form-flex { 563 margin-bottom: unset; 564 } 565 566 #contact-form { 567 margin: 100px 20px; 568 } 569 570 .form-image, 571 .form-image img { 572 width: 100%; 573 height: 92vw; 574 } 575 576 .form { 577 width: 100%; 578 margin: 45px 0 0 0; 579 } 580 581 .form h2 { 582 font-size: 24px; 583 margin-bottom: 20px; 584 } 585 586 label { 587 font-size: 14px; 588 } 589 590 #fname, 591 #lname, 592 #email, 593 #query { 594 font-size: 18px; 595 padding: 10px; 596 } 597 598 #fname, 599 #lname, 600 #email, 601 #query { 602 height: unset; 603 } 604 605 .cancel-btn, 606 .submit-btn { 607 width: 150px; 608 padding: 12px; 609 font-size: 16px; 610 float: left; 611 } 612 613 textarea { 614 height: 100px; 615 margin-bottom: 20px; 616 font-size: 18px !important; 617 padding: 10px !important; 618 } 619 620 .form-email, 621 .form-name { 622 width: 100%; 623 } 624 625 .form-name, 626 .form-email, 627 #query { 628 margin-bottom: 20px; 629 } 630 631 .cancel-btn-1 { 632 display: block; 633 } 634 635 .submit-btn-1 { 636 display: none; 637 } 638 639 .query-options { 640 font-size: 5px; 641 } 642 643 .cancel-btn { 644 margin-right: 20px; 645 } 646 .form-query::after{ 647 top: 50%; 648 right: 22px; 649 } 650} 651 652/* contact form end */ 653 654.columnBlockLayout { 655 margin: 0; 656 padding: 0; 657} 658 659.crmEntityFormView .cell { 660 padding: 0 0 30px; 661} 662 663/* .crmEntityFormView .cell input[type=text], .crmEntityFormView .cell select, .crmEntityFormView .cell textarea{ 664 height: 2.8vw;
665} */ 666input.form-control { 667 height: 2.8vw; 668} 669 670select#crdb5_queryregarding { 671 height: 2.8vw; 672} 673 674.crmEntityFormView .actions { 675 border: none; 676 margin: 0; 677 padding: 0; 678} 679 680.crmEntityFormView, 681.entitylist, 682.modal-content, 683.popover-content, 684.crmEntityFormView, 685.entitylist { 686 border: none; 687} 688 689.crmEntityFormView fieldset { 690 margin: 0; 691} 692 693.arrow-down { 694 width: 2.3437vw; 695 height: 2.3437vw; 696 border: 2px solid #FFF; 697 border-radius: 50%; 698 position: absolute; 699 bottom: 1.5625vw; 700 top: 40.6666vw; 701 left: 48.4375vw; 702 transition: ease-in; 703 /* animation: down 1.5s infinite; 704 -webkit-animation: bounce 1.5s infinite; */ 705} 706 707.arrow-down::before { 708 content: ""; 709 position: absolute; 710 top: 0.5729vw; 711 left: 0.7812vw; 712 width: 0.625vw; 713 height: 0.625vw; 714 border-left: 2px solid #FFF; 715 border-bottom: 2px solid #FFF; 716 transform: rotate(-45deg); 717} 718 719.arrow-up { 720 display: none; 721 width: 2.3437vw; 722 height: 2.3437vw; 723 border: 2px solid #FFF; 724 border-radius: 50%; 725 position: absolute; 726 top: 40.6666vw; 727 left: 48.4375vw; 728 bottom: 1.5625vw; 729 transition: ease-in; 730} 731 732.arrow-up::before { 733 content: ""; 734 position: absolute; 735 top: 0.8854vw; 736 left: 0.8333vw; 737 width: 0.625vw; 738 height: 0.625vw; 739 border-left: 2px solid #FFF; 740 border-bottom: 2px solid #FFF; 741 transform: rotate(135deg); 742} 743 744@keyframes bounce { 745 0% { 746 transform: translate(0); 747 } 748 749 20% { 750 transform: translateY(15px); 751 } 752 753 40% { 754 transform: translate(0); 755 } 756} 757 758@-webkit-keyframes bounce { 759 0% { 760 transform: translate(0); 761 } 762 763 20% { 764 transform: translateY(15px); 765 } 766 767 40% { 768 transform: translate(0); 769 } 770} 771 772.fade-in { 773 opacity: 1; 774 transition: 1s all ease-in; 775} 776 777.fade-out { 778 opacity: 0; 779 transition: 1s all ease-out; 780} 781 782@media(max-width:991px) { 783 784 .arrow-down, 785 .arrow-up { 786 opacity: 0; 787 } 788} 789 790/* register section */ 791.contact-flex-1 { 792 display: flex; 793} 794 795.flex-register { 796 display: flex; 797 justify-content: space-between; 798 list-style-type: none; 799 /* background-color: #F4F5F3; */ 800 /* margin: 29.0833vw 0 0; */ 801 padding: 4.0625vw 5.2083vw; 802} 803 804.register-title a { 805 display: flex; 806 justify-content: space-between; 807 text-decoration: none !important; 808 width: fit-content; 809} 810.register-title a:focus-visible { 811 outline: 2px solid #000; 812 outline-offset: 2px; 813 border-radius: 4px; 814} 815.register-title h3, 816.register-title h3visual { 817 margin: 0 0 0.5208vw; 818 font-weight: 100; 819 font-size: 1.6666vw; 820 color: #000 821} 822 823.register-title img { 824 height: 0.8854vw; 825 margin-top: 0.8vw; 826} 827 828.flex-register li { 829 width: 17.125vw; 830} 831 832.flex-register p { 833 font-weight: 400; 834 font-size: 0.9375vw; 835 line-height: 1.2187vw; 836 margin: 0; 837 color: #000; 838} 839 840.flex-register p a { 841 color: #fff; 842 margin: 0 !important; 843 text-decoration: underline; 844} 845 846.subscription-icon, 847.subscription-icon img { 848 width: 3.125vw; 849 height: 3.125vw; 850 margin: 0 0 1.0416vw; 851} 852 853@media (max-width:991px) { 854 .flex-register { 855 display: block; 856 margin-top: 50px; 857 padding: 25px 28px 37px 30px; 858 } 859 860 .contact-flex-1 { 861 justify-content: space-between; 862 } 863 864 .flex-register li { 865 width: 100%; 866 padding-bottom: 60px; 867 } 868 869 .flex-register li:last-child { 870 padding-bottom: unset; 871 } 872 873 .register-title h3, 874 .register-title h3visual { 875 font-size: 20px; 876 margin-bottom: 10px; 877 } 878 879 .register-title img { 880 height: 11px; 881 margin-left: 20px; 882 } 883 884 .subscription-icon { 885 886 margin: 0 0 20px; 887 } 888 889 .subscription-icon, 890 .subscription-icon img { 891 width: 60px; 892 height: 60px; 893 margin-left: 0; 894 } 895 896 .flex-register p { 897 font-size: 14px; 898 line-height: 21px; 899 } 900} 901 902/* register section ends*/ 903 904.notification{ 905 font-family: var(--main-font-family); 906 font-weight: 100; 907 font-size: 0.9375vw; 908 line-height: 1.3541vw; 909 color: #000000; 910} 911/* .notification-message{ 912 display: none; 913} */ 914#notificationpopupkey1{ 915 display: none; 916 z-index: 2; 917 position: fixed; 918 left: 23%; 919 padding: 3.125vw 4.1666vw; 920 top:35%; 921} 922#notificationpopupkey1{ 923 right: 22%; 924} 925#notificationpopupkey1 p, #notificationpopupkey1 a{ 926 background-color: #FFFFFF; 927 align-items: center; 928 display: flex; 929} 930#notificationpopupkey1 p{ 931 font-family: var(--main-font-family); 932 font-style: normal; 933 font-weight: 100; 934 font-size: var(--title-desc-font-size); 935 line-height: 2.2395vw; 936 color: #000000; 937 border: none; 938 width: 80%; 939} 940 941#notificationpopupkey1 p{ 942 width: unset; 943 height: unset; 944 font-size: 1.24vw; 945 line-height: 1.6395vw; 946} 947#notificationpopupkey1 a{ 948 position: absolute; 949 top: -23%; 950 right: 0; 951 background: rgba(0,0,0,-0.8); 952} 953 954#notificationpopupkey1 a{ 955 top: -16%; 956} 957 958#notificationpopupkey1 a img{ 959 width: 1.6666vw; 960 height: 1.6666vw; 961 cursor: pointer; 962} 963#notificationpopupkey1::after{ 964 position: fixed; 965 content: ""; 966 top: 0; 967 left: 0; 968 bottom: 0; 969 right: 0; 970 background: rgba(0,0,0,0.8); 971 z-index: -2; 972} 973#notificationpopupkey1::before{ 974 position: absolute; 975 content: ""; 976 top: 0; 977 left: 0; 978 bottom: 0; 979 right: 0; 980 background: #FFF; 981 z-index: -1; 982} 983.copy-btn{ 984 border-radius: 100px; 985 margin-right: 0 !important; 986 padding: 0.7812vw 0; 987 width: 9.0104vw; 988 font-size: var(--para-font-size); 989 line-height: 1.25vw; 990} 991 992.ms365-card-access { 993 background-color: var(--act-btn-bkgnd-color) !important; 994 border: 1px solid var(--act-btn-border-color) !important; 995 color: #FFFFFF !important; 996} 997.ok-btn{ 998 float: right; 999 margin-top: 1vw; 1000} 1001 1002@media(max-width:991px){ 1003 #notificationpopupkey1{ 1004 right: 12%; 1005 } 1006 #notificationpopupkey1 p{ 1007 font-size: 20px; 1008 line-height: 24px; 1009 } 1010 #notificationpopupkey1 p{ 1011 align-items: center; 1012 display: flex; 1013 } 1014 #notificationpopupkey1{ 1015 padding: 60px 80px; 1016 left: 11%; 1017 } 1018 #notificationpopupkey1{ 1019 padding: 40px; 1020 top: 28%; 1021 } 1022 #notificationpopupkey1 a img{ 1023 width: 31px; 1024 height: 31px; 1025 } 1026 .copy-btn{ 1027 margin-top: 0 !important; 1028 font-size: 16px; 1029 width: 158px; 1030 padding: 20px 0; 1031 margin-top: 20px; 1032 } 1033 .ok-btn{ 1034 margin-top: 20px; 1035 } 1036} 1037 1038@media(max-width:768px){ 1039 #notificationpopupkey1 p{ 1040 font-size: 16px; 1041 line-height: 20px; 1042 width: 100%; 1043 } 1044 1045} 1046 1047/* submit button spinner */ 1048.btn-submitting { 1049 position: relative; 1050 padding-left: 2.0833vw !important;
1051 cursor: not-allowed; 1052 opacity: 0.8; 1053 background-color: var(--act-btn-bkgnd-color) !important; 1054 border-color: var(--act-btn-border-color) !important; 1055 color: #fff !important; 1056} 1057 1058.btn-submitting::before { 1059 content: ""; 1060 position: absolute; 1061 left: 0.5208vw; 1062 top: 50%; 1063 width: 1.0416vw; 1064 height: 1.0416vw; 1065 margin-top: -0.5208vw; 1066 border: 3px solid rgba(255, 255, 255, 0.4); 1067 border-top-color: #fff; 1068 border-radius: 50%; 1069 animation: btn-spin 0.6s linear infinite; 1070 box-sizing: border-box; 1071} 1072 1073@keyframes btn-spin { 1074 to { 1075 transform: rotate(360deg); 1076 } 1077} 1078 1079@media(max-width:991px) { 1080 .btn-submitting { 1081 padding-left: 36px !important; 1082 } 1083 1084 .btn-submitting::before { 1085 left: 8px; 1086 width: 18px; 1087 height: 18px; 1088 margin-top: -9px; 1089 } 1090}</style> 1091 1092 1093 1094 1095 1096 1097 <link href="https://content.powerapps.com/resource/powerappsportal/dist/pwa-style.bundle-55718a4c0d.css" onerror="javascript: var target = event.target; var link = document.createElement('link'); link.crossOrigin = target.crossOrigin; link.href = '/dist/pwa-style.bundle-55718a4c0d.css'; link.rel = 'stylesheet'; target.insertAdjacentElement('afterend',link);" rel="stylesheet" /> 1098 1099 </head> 1100<body data-sitemap-state="/contact-us/:/" 1101 data-dateformat="M/d/yyyy" 1102 data-timeformat="h:mm tt" 1103 data-datetimeformat="M/d/yyyy h:mm tt" 1104 data-app-path="/" 1105 data-ckeditor-basepath="/js/BaseHtmlContentDesigner/Libs/msdyncrm_/libs/ckeditor/" 1106 data-case-deflection-url="/_services/search/95f58377-5e5c-ed11-9562-0022482a4240"> 1107 1108 1109 1110 <link href="https://content.powerapps.com/resource/powerappsportal/dist/pcf-style.bundle-373a0f4982.css" onerror="javascript: var target = event.target; var link = document.createElement('link'); link.crossOrigin = target.crossOrigin; link.href = '/dist/pcf-style.bundle-373a0f4982.css'; link.rel = 'stylesheet'; target.insertAdjacentElement('afterend',link);" rel="stylesheet" /> 1111 1112 1113 1114 1115 1116 <div id="offlineNotificationBar" class="displayNone"> 1117 <img alt="web" id="web" onerror="javascript: var target = event.target; var img = document.createElement('img'); img.src = '/css/images/web.png'; img.alt = 'web'; img.id = 'web' ; target.insertAdjacentElement('afterend',img); target.remove();" src="https://content.powerapps.com/resource/powerappsportal/img/web.png" /> 1118 <div id="message">You’re offline. This is a read only version of the page.</div> 1119 <div id="close" onclick="this.parentElement.style.display='none';"><img alt="close" onerror="javascript: var target = event.target; var img = document.createElement('img'); img.src = '/css/images/close.png'; img.alt = 'close'; img.id = '' ; target.insertAdjacentElement('afterend',img); target.remove();" src="https://content.powerapps.com/resource/powerappsportal/img/close.png" /></div> 1120 </div> 1121 1122 1123 1124
1124<script type="text/javascript"> 1125 window.DisableCkEditor = window.DisableCkEditor || {}; 1126 1127 DisableCkEditor.Value = 'False'; 1128 </script>
1128 1129 1130
1130<script type="text/javascript"> 1131 var enableOmniChannelWidgetWithSiteCopilot = 'False'; 1132 if (enableOmniChannelWidgetWithSiteCopilot === "True" || enableOmniChannelWidgetWithSiteCopilot === "true") { 1133 const authUrl = window.location.origin + "/_services/auth/portalusertoken"; 1134 const fetchWithRetries = async (url, options, retries) => { 1135 try { 1136 const authResponse = await fetch(url, options); 1137 const token = await authResponse.text(); 1138 sessionStorage['c2Token'] = token; 1139 } catch (err) { 1140 if (retries === 1) throw err; 1141 return await fetchWithRetries(url, options, retries - 1); 1142 } 1143 }; 1144 fetchWithRetries(authUrl, { method: "POST" }, 4); 1145 1146 // Enable/disable Omnichannel session refresh on auth state change 1147 // When enabled, closeChat() is called when user logs in/out to start a fresh session 1148 var enableOmniChannelSessionRefreshSetting = 'True'; 1149 window.enableOmniChannelSessionRefresh = enableOmniChannelSessionRefreshSetting === 'True' || enableOmniChannelSessionRefreshSetting === 'true'; 1150 } 1151 </script>
1151 1152 1153
1153<script type="text/javascript"> 1154 var isPvaBotAuthenticated = sessionStorage['isPvaBotAuthenticated']; 1155 var isPortalUserLoggedIn = 'False'; 1156 1157 if ((isPvaBotAuthenticated != null || isPvaBotAuthenticated != undefined) && isPvaBotAuthenticated != isPortalUserLoggedIn) { 1158 sessionStorage['triggerPvaBotSignOut'] = true; 1159 sessionStorage.removeItem('c2Token'); 1160 sessionStorage.removeItem('directLinetoken'); 1161 sessionStorage.removeItem('conversation_Id'); 1162 1163 sessionStorage.removeItem('bot_c2Token'); 1164 sessionStorage.removeItem('botdirectLinetoken'); 1165 sessionStorage.removeItem('botconversation_Id'); 1166 } 1167 sessionStorage['isPvaBotAuthenticated'] = isPortalUserLoggedIn; 1168 </script>
1168 1169 1170
1170<script type="text/javascript"> 1171 window["CSPSettings"] = window["CSPSettings"] || {}; 1172 window["CSPSettings"].nonce = ''; 1173 window["FabricConfig"] = window["FabricConfig"] || {}; 1174 window["FabricConfig"].mergeStyles = window["FabricConfig"].mergeStyles || {}; 1175 window["FabricConfig"].mergeStyles.cspSettings = window["CSPSettings"]; 1176 window["Microsoft"] = window["Microsoft"] || {}; 1177 window["Microsoft"].Dynamic365 = { 1178 Portal: { 1179 1180 User: { 1181 userName: '', 1182 firstName: '', 1183 lastName: '', 1184 email: '', 1185 contactId: '', 1186 userRoles: [], 1187 }, 1188 1189 type: 'PowerPages_BlankTemplate_V2', 1190 id: '95d081b7-f319-4edd-bb7a-03838ba267cc', 1191 geo: 'NAM', 1192 tenant: '75f98001-9d96-4a88-8991-fca805942730', 1193 correlationId: '644adf37-2d75-4034-ac65-f25615cda7a3', 1194 orgEnvironmentId: '739ed46b-8399-ec45-9708-46c4296ef11d', 1195 orgId: 'fa1629e2-38b0-f011-8706-00224806e80c', 1196 portalProductionOrTrialType: 'Production', 1197 isTelemetryEnabled: 'True', 1198 InstrumentationSettings: { 1199 instrumentationKey: '197418c5cb8c4426b201f9db2e87b914-87887378-2790-49b0-9295-51f43b6204b1-7172', 1200 collectorEndpoint: 'https://us-mobile.events.data.microsoft.com/OneCollector/1.0/' 1201 }, 1202 timerProfileForBatching: 'NEAR_REAL_TIME', 1203 activeLanguages: ["en-US"], 1204 isClientApiEnabled: 'True', 1205 isSpaSite: 'False' 1206 } 1207 }; 1208 1209 window["Microsoft"].PowerPages = window["Microsoft"].PowerPages || {}; 1210 window["Microsoft"].PowerPages.onPagesClientApiReady = (callback) => { 1211 return new Promise((resolve, reject) => { 1212 let isComplete = false; 1213 let timeoutId; 1214 const timeoutInterval = 10000; 1215 1216 function handleReady() { 1217 if (!isComplete && window.$pages) { 1218 isComplete = true; 1219 clearTimeout(timeoutId); 1220 try { 1221 if (typeof callback === "function") { 1222 callback(window.$pages); 1223 } 1224 } catch (e) { 1225 console.error("onPagesClientApiReady callback error:", e); 1226 } 1227 resolve(window.$pages); // should we reject if callback throws an error 1228 } 1229 } 1230 1231 if (window.$pages) { 1232 handleReady(); 1233 return; 1234 } 1235 1236 function sdkListener() { 1237 handleReady(); 1238 window.removeEventListener('pagesSDKInitialized', sdkListener); 1239 } 1240 1241 window.addEventListener('pagesSDKInitialized', sdkListener); 1242 1243 timeoutId = setTimeout(() => { 1244 if (!isComplete) { 1245 window.removeEventListener('pagesSDKInitialized', sdkListener); 1246 if (window.$pages) { 1247 handleReady(); 1248 } else { 1249 isComplete = true; 1250 reject(new Error('window.$pages not available.')); 1251 } 1252 } 1253 }, timeoutInterval); 1254 }); 1255 }; 1256 1257 // Deprecated alias: Microsoft.Dynamic365.Portal.onPagesClientApiReady. 1258 // Remove once telemetry shows no callers remain. 1259 (function () { 1260 var _impl = window["Microsoft"].PowerPages.onPagesClientApiReady; 1261 var _logged = false; 1262 1263 window["Microsoft"].Dynamic365.Portal.onPagesClientApiReady = function (callback) { 1264 if (!_logged) { 1265 _logged = true; 1266 try { 1267 if (window.clientLogWrapper && typeof window.clientLogWrapper.traceWarning === "function") { 1268 window.clientLogWrapper.traceWarning( 1269 "Microsoft.Dynamic365.Portal.onPagesClientApiReady invoked (deprecated)", 1270 "DeprecatedApi", 1271 "ClientApiReady", 1272 "Invoke", 1273 "DeprecationTracker" 1274 ); 1275 } 1276 if (typeof console !== "undefined" && console.warn) { 1277 console.warn( 1278 "[DEPRECATED] Microsoft.Dynamic365.Portal.onPagesClientApiReady is deprecated " + 1279 "and will be removed in a future release. Use Microsoft.PowerPages.onPagesClientApiReady instead." 1280 ); 1281 } 1282 } catch (_) { /* never break the caller */ } 1283 } 1284 1285 return _impl(callback); 1286 }; 1287 })(); 1288 1289 // Mark request not cacheable if Dynamics365PortalAnalytics cookie is being refreshed by the server or if the cookie in request header is invali
1289d 1290 1291 1292 // For client side telemetry intializing Dynamics365PortalAnalytics cookie object 1293 1294 window["Microsoft"].Dynamic365.Portal.dynamics365PortalAnalytics = 'Dbl7O6iHhcAgl5po12LyWYbTBUpeHVEfTg-I67AIV7n7PM8_Z8Rb7sVcWq_Q-hSUwlmtdEIEiyld8KpQOet--Pthijn_IGNKtGYhJrrm21lSnA0QSNpFozBxdV71tOpp55gWpRW4xCaXnuEcaZDjfw2'; // CodeQL [SM00430] False Positive: only alphanumeric chars allowed, for non-alphanumeric char it will return INVALID_CHARACTERS_IN_COOKIE 1295 localStorage.setItem("Dynamics365PortalAnalytics", window["Microsoft"].Dynamic365.Portal.dynamics365PortalAnalytics); 1296 1297 1298 </script>
1298 1299 1300
1300<script type="text/javascript"> 1301 1302 1303 document.addEventListener("contentSnippetLoaded", function () { 1304 document.dispatchEvent(new CustomEvent('updateDevToolRuntime', 1305 { 1306 detail: [ 1307 { 1308 "Timestamp": "2026-10-02T14:30:03.9456107+00:00", 1309 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1310 "Source": "Server", 1311 "Level": "Warning", 1312 "RequestPath": "/contact-us/", 1313 "MessageCode": "RTSS07", 1314 "Message": "HTTP/Content-Security-Policy site setting is missing or misconfigured.", 1315 "Mitigation": "It is recommended to configure the HTTP/Content-Security-Policy site setting with the script-src directive. This directive helps control the sources from which scripts can be executed, thereby mitigating risks associated with Cross-Site Scripting (XSS) and other script-based attacks. <a href=\"https://learn.microsoft.com/en-us/power-pages/security/manage-content-security-policy\">Learn more</a>." 1316 }, 1317 { 1318 "Timestamp": "2026-10-02T14:30:03.9456107+00:00", 1319 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1320 "Source": "Server", 1321 "Level": "Warning", 1322 "RequestPath": "/contact-us/", 1323 "MessageCode": "RTSS05", 1324 "Message": "HTTP/Access-Control-Allow-Credentials site setting is true.", 1325 "Mitigation": "Please evaluate whether the HTTP/Access-Control-Allow-Credentials site setting is necessary for your site's functionality. If not, it is recommended to disable or remove this setting. If credential support is required, ensure that the Access-Control-Allow-Origin header is configured to a specific trusted origin only. <a href=\"https://learn.microsoft.com/en-us/power-pages/configure/cors-support%20\">Learn more</a>" 1326 }, 1327 { 1328 "Timestamp": "2026-10-02T14:30:04.0595508+00:00", 1329 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1330 "Source": "Server", 1331 "Level": "Info", 1332 "RequestPath": "/contact-us/", 1333 "MessageCode": "RTPMDV", 1334 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 369.1743, Duration_ms : 0.0782, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1335 "Mitigation": "" 1336 }, 1337 { 1338 "Timestamp": "2026-10-02T14:30:04.0896998+00:00", 1339 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1340 "Source": "Server", 1341 "Level": "Info", 1342 "RequestPath": "/contact-us/", 1343 "MessageCode": "RTPMDV", 1344 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 397.5772, Duration_ms : 0.1098, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1345 "Mitigation": "" 1346 }, 1347 { 1348 "Timestamp": "2026-10-02T14:30:04.0896998+00:00", 1349 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1350 "Source": "Server", 1351 "Level": "Info", 1352 "RequestPath": "/contact-us/", 1353 "MessageCode": "RTPMDV", 1354 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 398.7524, Duration_ms : 0.0779, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1355 "Mitigation": "" 1356 }, 1357 { 1358 "Timestamp": "2026-10-02T14:30:04.0896998+00:00", 1359 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1360 "Source": "Server", 1361 "Level": "Info", 1362 "RequestPath": "/contact-us/", 1363 "MessageCode": "RTPEWE08", 1364 "Message": "User roles: Web API User, Anonymous Users.", 1365 "Mitigation": "" 1366 }, 1367 { 1368 "Timestamp": "2026-10-02T14:30:04.0896998+00:00", 1369 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1370 "Source": "Server", 1371 "Level": "Info", 1372 "RequestPath": "/contact-us/", 1373 "MessageCode": "RTPMDV", 1374 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 406.5817, Duration_ms : 0.1239, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1375 "Mitigation": "" 1376 }, 1377 { 1378 "Timestamp": "2026-10-02T14:30:04.1018469+00:00", 1379 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1380 "Source": "Server", 1381 "Level": "Info", 1382 "RequestPath": "/contact-us/", 1383 "MessageCode": "RTPMDV", 1384 "Message": "EntityName : urn:pii:entitylogicalname:lGFm19YWtigoG1m+Wq5jFHJ49L75JuqBqP6NYP9eSvo=, RequestName : RetrieveMultiple, Elapsed : 409.2992, Duration_ms : 0.1, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1385 "Mitigation": "" 1386 }, 1387 { 1388 "Timestamp": "2026-10-02T14:30:04.119793+00:00", 1389 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1390 "Source": "Server", 1391 "Level": "Info", 1392 "RequestPath": "/contact-us/", 1393 "MessageCode": "RTPMDV", 1394 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 437.1109, Duration_ms : 0.0703, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1395 "Mitigation": "" 1396 }, 1397 { 1398 "Timestamp": "2026-10-02T14:30:04.273829+00:00", 1399 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1400 "Source": "Server", 1401 "Level": "Info", 1402 "RequestPath": "/contact-us/", 1403 "MessageCode": "RTPMDV", 1404 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 587.5144, Duration_ms : 0.0864, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1405 "Mitigation": "" 1406 }, 1407 { 1408 "Timestamp": "2026-10-02T14:30:04.273829+00:00", 1409 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1410 "Source": "Server", 1411 "Level": "Info", 1412 "RequestPath": "/contact-us/", 1413 "MessageCode": "RTPMDV", 1414 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 588.6989, Duration_ms : 0.0711, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1415 "Mitigation": "" 1416 }, 1417 { 1418 "Timestamp": "2026-10-02T14:30:04.273829+00:00", 1419 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1420 "Source": "Server", 1421 "Level": "Info", 1422 "RequestPath": "/contact-us/", 1423 "MessageCode": "RTPMDV", 1424 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 589.572, Duration_ms : 0.06, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1425 "Mitigation": "" 1426 }, 1427 { 1428 "Timestamp": "2026-10-02T14:30:04.2894587+00:00", 1429 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1430 "Source": "Server", 1431 "Level": "Warning", 1432 "RequestPath": "/contact-us/", 1433 "MessageCode": "RTPEWE06", 1434 "Message": "Permission denied. There are no entity permission records defined in the system associated with web roles for the current user where the entity name is 'msan_membership'.", 1435 "Mitigation": "The user does not have any table permissions configured for the table and the right. Kindly assign the table permissions. <a href=\"https://learn.microsoft.com/en-us
1435/power-pages/security/assign-table-permissions\">Learn more</a>." 1436 }, 1437 { 1438 "Timestamp": "2026-10-02T14:30:04.2894587+00:00", 1439 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1440 "Source": "Server", 1441 "Level": "Info", 1442 "RequestPath": "/contact-us/", 1443 "MessageCode": "RTPMDV", 1444 "Message": "EntityName : urn:pii:entitylogicalname:lGFm19YWtigoG1m+Wq5jFHJ49L75JuqBqP6NYP9eSvo=, RequestName : RetrieveMultiple, Elapsed : 598.0257, Duration_ms : 0.086, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1445 "Mitigation": "" 1446 }, 1447 { 1448 "Timestamp": "2026-10-02T14:30:04.3207145+00:00", 1449 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1450 "Source": "Server", 1451 "Level": "Info", 1452 "RequestPath": "/contact-us/", 1453 "MessageCode": "RTPMDV", 1454 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 628.1936, Duration_ms : 0.071, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1455 "Mitigation": "" 1456 }, 1457 { 1458 "Timestamp": "2026-10-02T14:30:04.3207145+00:00", 1459 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1460 "Source": "Server", 1461 "Level": "Info", 1462 "RequestPath": "/contact-us/", 1463 "MessageCode": "RTPMDV", 1464 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 637.0092, Duration_ms : 0.0908, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1465 "Mitigation": "" 1466 }, 1467 { 1468 "Timestamp": "2026-10-02T14:30:04.3207145+00:00", 1469 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1470 "Source": "Server", 1471 "Level": "Info", 1472 "RequestPath": "/contact-us/", 1473 "MessageCode": "RTPMDV", 1474 "Message": "EntityName : bot, RequestName : RetrieveMultiple, Elapsed : 637.5596, Duration_ms : 0.0612, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1475 "Mitigation": "" 1476 }, 1477 { 1478 "Timestamp": "2026-10-02T14:30:04.3207145+00:00", 1479 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1480 "Source": "Server", 1481 "Level": "Info", 1482 "RequestPath": "/contact-us/", 1483 "MessageCode": "RTPMDV", 1484 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 638.1272, Duration_ms : 0.0512, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1485 "Mitigation": "" 1486 }, 1487 { 1488 "Timestamp": "2026-10-02T14:30:04.3207145+00:00", 1489 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1490 "Source": "Server", 1491 "Level": "Info", 1492 "RequestPath": "/contact-us/", 1493 "MessageCode": "RTPMDV", 1494 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 638.609, Duration_ms : 0.0541, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1495 "Mitigation": "" 1496 }, 1497 { 1498 "Timestamp": "2026-10-02T14:30:04.3207145+00:00", 1499 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1500 "Source": "Server", 1501 "Level": "Info", 1502 "RequestPath": "/contact-us/", 1503 "MessageCode": "RTPMDV", 1504 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 639.3094, Duration_ms : 0.0628, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1505 "Mitigation": "" 1506 }, 1507 { 1508 "Timestamp": "2026-10-02T14:30:04.3675371+00:00", 1509 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1510 "Source": "Server", 1511 "Level": "Info", 1512 "RequestPath": "/contact-us/", 1513 "MessageCode": "RTPMDV", 1514 "Message": "EntityName : bot, RequestName : RetrieveMultiple, Elapsed : 684.6901, Duration_ms : 38.0549, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : False", 1515 "Mitigation": "" 1516 }, 1517 { 1518 "Timestamp": "2026-10-02T14:30:04.3675371+00:00", 1519 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1520 "Source": "Server", 1521 "Level": "Info", 1522 "RequestPath": "/contact-us/", 1523 "MessageCode": "RTPMDV", 1524 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 685.9628, Duration_ms : 0.0779, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1525 "Mitigation": "" 1526 }, 1527 { 1528 "Timestamp": "2026-10-02T14:30:04.3675371+00:00", 1529 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1530 "Source": "Server", 1531 "Level": "Info", 1532 "RequestPath": "/contact-us/", 1533 "MessageCode": "RTPMDV", 1534 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 687.0772, Duration_ms : 0.0705, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1535 "Mitigation": "" 1536 }, 1537 { 1538 "Timestamp": "2026-10-02T14:30:04.3987729+00:00", 1539 "PortalID": "95d081b7-f319-4edd-bb7a-03838ba267cc", 1540 "Source": "Server", 1541 "Level": "Info", 1542 "RequestPath": "/contact-us/", 1543 "MessageCode": "RTPMDV", 1544 "Message": "EntityName : powerpagecomponent, RequestName : RetrieveMultiple, Elapsed : 705.9381, Duration_ms : 0.1814, CorrelationId : 644adf37-2d75-4034-ac65-f25615cda7a3, , Cached : True", 1545 "Mitigation": "" 1546 } 1547] 1548 } 1549 )); 1550 }); 1551 1552 1553 const intercept = () => { 1554 let send = XMLHttpRequest.prototype.send; 1555 XMLHttpRequest.prototype.send = function () { 1556 this.addEventListener('readystatechange', function () { 1557 if (this.readyState === 4 && (this.getAllResponseHeaders().indexOf("x-ms-user-trace-id") >= 0 || this.getAllResponseHeaders().indexOf("x-ms-user-trace") >= 0)) { 1558 try { 1559 var inline = this.getResponseHeader('x-ms-user-trace'); 1560 if (inline) { 1561 try { 1562 // decode base64, parse JSON 1563 var userTrace = JSON.parse(atob(inline)); 1564 document.dispatchEvent(new CustomEvent('updateDevToolRuntime', 1565 { detail: userTrace } 1566 )); 1567 return; 1568 } catch (e) {
1569 console.warn('Failed to decode/parse inline x-ms-user-trace header', e); 1570 } 1571 } 1572 1573 // fallback: id-based cache lookup (existing logic) 1574 var traceId = this.getResponseHeader('x-ms-user-trace-id'); 1575 if (traceId) { 1576 return window.webapi.safeAjax({ 1577 type: 'GET', 1578 url: '/_services/portal/UserTrace/Get?id=' + encodeURIComponent(traceId), 1579 // Accept text because the endpoint may return JSON or plain text 1580 headers: { 'Accept': 'text/plain, application/json' } 1581 }) 1582 .then(function (userTrace) { 1583 if (userTrace) { 1584 document.dispatchEvent(new CustomEvent('updateDevToolRuntime', { detail: userTrace })); 1585 } 1586 return userTrace; 1587 }) 1588 .fail(function (err) { 1589 console.warn('Error fetching user trace by id', err); 1590 return null; 1591 }); 1592 } 1593 } 1594 catch (err) { 1595 console.log("In intercept for ajax call, Exception while parsing UserTrace header" + err); 1596 } 1597 } 1598 }, false); 1599 send.apply(this, arguments); 1600 }; 1601 }; 1602 intercept(); 1603 1604 const interceptFetch = () => { 1605 const originalFetch = window.fetch; 1606 1607 window.fetch = async function () { 1608 try { 1609 const response = await originalFetch.apply(this, arguments); 1610 1611 const traceIdHeader = response.headers.get("x-ms-user-trace-id"); 1612 const inlineTraceHeader = response.headers.get("x-ms-user-trace"); 1613 // Inline trace present 1614 if (inlineTraceHeader) { 1615 try { 1616 const userTrace = JSON.parse(atob(inlineTraceHeader)); 1617 document.dispatchEvent( 1618 new CustomEvent("updateDevToolRuntime", { 1619 detail: userTrace 1620 }) 1621 ); 1622 1623 return response; 1624 } catch (err) { 1625 console.warn("Failed to decode/parse x-ms-user-trace header", err); 1626 } 1627 } 1628 // Trace ID present, fetch full trace from cach 1629 if (traceIdHeader) { 1630 try { 1631 const traceResponse = await originalFetch("/_services/portal/UserTrace/Get?id=" + encodeURIComponent(traceIdHeader), 1632 { 1633 method: "GET", 1634 headers: { 1635 Accept: 1636 "text/plain, application/json" 1637 }, 1638 credentials: "same-origin" 1639 } 1640 ); 1641 1642 if (!traceResponse.ok) { 1643 throw new Error(`HTTP ${traceResponse.status} ${traceResponse.statusText}`); 1644 } 1645 const contentType = traceResponse.headers.get("content-type") || ""; 1646 1647 let userTrace; 1648 1649 if (contentType.includes("application/json") 1650 ) { 1651 userTrace = await traceResponse.json(); 1652 } else { 1653 const text = await traceResponse.text(); 1654 1655 try { 1656 userTrace = JSON.parse(text); 1657 } catch { 1658 userTrace = text; 1659 } 1660 } 1661 1662 if (userTrace) { 1663 document.dispatchEvent(new CustomEvent("updateDevToolRuntime", 1664 { 1665 detail: userTrace 1666 } 1667 ) 1668 ); 1669 } 1670 } catch (err) { 1671 console.warn("Error fetching user trace by id", err); 1672 } 1673 } 1674 1675 return response; 1676 } catch (err) { 1677 console.error( "interceptFetch exception", err ); 1678 1679 throw err; 1680 } 1681 }; 1682 }; 1683 1684 interceptFetch(); 1685 1686 document.addEventListener("pagesRuntimeMessageProcessedInDevtool",function (e) { 1687 if (typeof ClientLogWrapper !== "undefined" && ClientLogWrapper && typeof ClientLogWrapper.getLogger === "function") { 1688 ClientLogWrapper.getLogger().traceInfo("pagesRuntimeMessageProcessedInDevtool","Devtool"); 1689 } else { 1690 console.log( "pagesRuntimeMessageProcessedInDevtool RECEIVED",e.detail); 1691 } 1692 } 1693); 1694 1695 1696 1697 </script>
1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717<style> 1718 body { 1719 -moz-osx-font-smoothing: grayscale; 1720 -webkit-font-smoothing: antialiased; 1721 text-rendering: optimizeLegibility !important; 1722 } 1723 1724 h1, 1725 h2, 1726 h3, 1727 h4, 1728 h5, 1729 h6, 1730 span, 1731 div, 1732 a, 1733 strong, 1734 p, 1735 input, 1736 select, 1737 button, 1738 textarea { 1739 font-family: "Segoe UI", sans-serif; 1740 } 1741 1742 @font-face { 1743 font-family: "Segoe UI"; 1744 src: 1745 local("Segoe UI Light"), 1746 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.woff2) format("woff2"), 1747 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.woff) format("woff"), 1748 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.ttf) format("truetype"); 1749 font-weight: 100; 1750 } 1751 1752 @font-face { 1753 font-family: "Segoe UI"; 1754 src: 1755 local("Segoe UI Semilight"), 1756 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.woff2) format("woff2"), 1757 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.woff) format("woff"), 1758 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.ttf) format("truetype"); 1759 font-weight: 200; 1760 } 1761 1762 @font-face { 1763 font-family: "Segoe UI"; 1764 src: 1765 local("Segoe UI"), 1766 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.woff2) format("woff2"), 1767 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.woff) format("woff"), 1768 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.ttf) format("truetype"); 1769 font-weight: 400; 1770 } 1771 1772 @font-face { 1773 font-family: "Segoe UI"; 1774 src: 1775 local("Segoe UI Bold"), 1776 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.woff2) format("woff2"), 1777 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.woff) format("woff"), 1778 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.ttf) format("truetype"); 1779 font-weight: 600; 1780 } 1781 1782 @font-face { 1783 font-family: "Segoe UI"; 1784 src: 1785 local("Segoe UI Semibold"), 1786 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff2) format("woff2"), 1787 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff) format("woff"), 1788 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.ttf) format("truetype"); 1789 font-weight: 700; 1790 } 1791 1792 :root { 1793 --bnr-title-font-size: 3.6458vw; 1794 --title-font-size: 2.6041vw; 1795 --title-desc-font-size: 1.6666vw; 1796 --para-font-size: 0.9375vw; 1797 --main-font-family: 'Segoe UI', sans-serif; 1798 --act-btn-bkgnd-color: #c3501a; 1799 --act-btn-border-color: #c3501a; 1800 --act-btn-color: #c3501a; 1801 --focus-ring-dark: #1c2d43; 1802 --focus-ring-light: #ffffff; 1803 --nav-lnk-color: #2C72C2; 1804 --search-input-color: #747474; 1805 --card-bkgnd-blue-dark: #1c2d43; 1806 --card-bkgnd-green-dark: #074D29; 1807 --card-bkgnd-blue-light: #2C72C2; 1808 } 1809 1810 .submenu-icon img { 1811 width: 3.125vw; 1812 height: 3.125vw; 1813 } 1814 1815 .alumni-logo, 1816 .alumni-logo img { 1817 width: 13.677vw; 1818 height: 3.6vw; 1819 object-fit: contain; 1820 } 1821 1822 .alumni-logo a:focus, 1823 .alumni-logo a:focus-visible { 1824 outline: 3px solid var(--focus-ring-light); 1825 outline-offset: 2px; 1826 } 1827 1828 1829 @media (max-width: 991px) { 1830 .alumni-logo img { 1831 width: 150px; 1832 height: 34px; 1833 } 1834 } 1835 1836 @media (max-width: 768px) { 1837 .alumni-logo img { 1838 width: 140px; 1839 } 1840 } 1841 1842 .signin { 1843 margin-right: 1.0416vw; 1844 display: flex;
1845 align-items: center; 1846 } 1847 1848 .signin img { 1849 width: 2.5vw; 1850 height: 2.5vw; 1851 object-fit: cover; 1852 border-radius: 50%; 1853 } 1854 1855 @media (max-width: 991px) { 1856 .signin { 1857 margin: 0; 1858 } 1859 1860 .signin img { 1861 width: 28px; 1862 height: 28px; 1863 } 1864 1865 .alumni-logo { 1866 width: 50%; 1867 margin-left: 50px; 1868 height: 32px; 1869 } 1870 } 1871 1872 .menu-flex { 1873 display: flex; 1874 justify-content: space-between; 1875 background-color: #737373; 1876 padding: 0.5895vw 6.25vw 0.5895vw 5.2083vw; 1877 } 1878 1879 .signin span { 1880 font-family: 'Segoe UI', sans-serif; 1881 font-weight: bold; 1882 font-size: 0.9375vw; 1883 color: #fff; 1884 padding-right: 1.0416vw; 1885 } 1886 1887 .signin-1 span { 1888 color: #000; 1889 position: absolute; 1890 top: 70%; 1891 } 1892 1893 .signin .mybenefits { 1894 margin-right: 5.2083vw; 1895 } 1896 1897 /* Focus styles for keyboard accessibility - WCAG 2.2 AA. 1898 Dark ring for elements on light backgrounds, with a little breathing 1899 room (possible now that .header-dpdw no longer clips via overflow). 1900 (.menu-trigger replaces the former .header-dpdw:focus-visible: the 1901 focusable element is now the trigger span, not the li - see the 1902 aria-allowed-role fix.) */ 1903 .menu-trigger:focus, 1904 .menu-trigger:focus-visible, 1905 .header-main-menu-list a:focus, 1906 .header-main-menu-list a:focus-visible, 1907 .main-dropdown-menu a:focus, 1908 .main-dropdown-menu a:focus-visible, 1909 .main-dropdown-menu .menu-link:focus, 1910 .main-dropdown-menu .menu-link:focus-visible, 1911 .about-mobile-dpdw:focus, 1912 .about-mobile-dpdw:focus-visible, 1913 .mobile-dropdown-content a:focus, 1914 .mobile-dropdown-content a:focus-visible, 1915 .mobile .menu__item:focus, 1916 .mobile .menu__item:focus-visible, 1917 .mobile li a:focus, 1918 .mobile li a:focus-visible { 1919 outline: 3px solid var(--focus-ring-dark); 1920 outline-offset: 3px; 1921 } 1922 1923 /* Anchors that wrap block-level card markup must be block-level 1924 themselves; an inline anchor around blocks produces a degenerate 1925 (thin sliver) focus outline. Rendering is unchanged since their 1926 children are blocks already. */ 1927 .main-dropdown-menu a, 1928 .my-profile-about a { 1929 display: block; 1930 } 1931 1932 /* Light ring for elements on the dark grey / orange bars */ 1933 .signin a:focus, 1934 .signin a:focus-visible, 1935 .join-btn:focus, 1936 .join-btn:focus-visible, 1937 .mybenefits-link:focus, 1938 .mybenefits-link:focus-visible, 1939 .my-profile-dpdw:focus, 1940 .my-profile-dpdw:focus-visible, 1941 .my-profile-about a:focus, 1942 .my-profile-about a:focus-visible, 1943 .menu__icon:focus, 1944 .menu__icon:focus-visible, 1945 .add-events a:focus, 1946 .add-events a:focus-visible { 1947 outline: 3px solid var(--focus-ring-light); 1948 outline-offset: -2px; 1949 } 1950 1951 .signin a { 1952 text-decoration: none !important; 1953 } 1954 1955 .submenu-bold { 1956 font-weight: bold !important; 1957 } 1958 1959 .main-dropdown-menu li:hover .submenu-name, 1960 .main-dropdown-menu li .stories-dpdw .inner-dpdw li:hover .submenu-name-stories { 1961 font-weight: bold !important; 1962 } 1963 1964 header { 1965 width: 100%; 1966 height: 9.4vw; 1967 background-color: #fff; 1968 } 1969 1970 @media (max-width: 991px) { 1971 header { 1972 height: 60px; 1973 } 1974 1975 .signin .my-benifits-btn { 1976 display: none; 1977 } 1978 1979 .signin .mybenefits { 1980 margin-right: 10px; 1981 } 1982 1983 .signin span { 1984 font-size: 15px; 1985 line-height: 150%; 1986 padding-right: 0; 1987 } 1988 } 1989 1990 .header-dpdw { 1991 float: left; 1992 /* overflow: hidden removed: it clipped focus outlines on descendants 1993 and served no other purpose (the absolutely-positioned dropdown is 1994 not clipped by it anyway, since the li is not a positioned ancestor). */ 1995 } 1996 1997 .header-dpdw-login { 1998 margin-right: 3.125vw; 1999 } 2000 2001 .header-dpdw span { 2002 padding-left: 0.5208vw; 2003 } 2004 2005 /* The generic span rule above must not indent the .menu-trigger wrapper 2006 (added for the aria-allowed-role fix); only the inner arrow span 2007 should keep the gap. */ 2008 .header-dpdw > .menu-trigger { 2009 padding-left: 0; 2010 } 2011 2012 .header-main-menu-con { 2013 padding: 0 5.208333333333333vw; 2014 height: inherit; 2015 border-bottom: 0.5px solid rgba(28, 45, 67, 0.51); 2016 } 2017 2018 .main-dropdown-menu-list, 2019 .inner-dpdw { 2020 display: flex; 2021 } 2022 2023 .main-dropdown-menu-list .main-dpdw-bdr { 2024 padding: 0 !important; 2025 width: 13%; 2026 border-right: 1px solid rgba(0, 0, 0, 0.2); 2027 } 2028 2029 .main-dropdown-menu-list li:last-child { 2030 border-right: unset; 2031 } 2032 2033 .inner-dpdw li { 2034 padding: 0 !important; 2035 width: 25%; 2036 } 2037 2038 .main-dropdown-menu-list { 2039 border-top: 1px solid rgba(0, 0, 0, 0.2); 2040 } 2041 2042 .events-menu { 2043 width: 50% !important; 2044 } 2045 2046 .main-dropdown-menu { 2047 display: none; 2048 position: absolute; 2049 background: #fff; 2050 z-index: 2; 2051 width: 100%; 2052 left: 0; 2053 top: 8.2437vw; 2054 color: #000; 2055 padding: unset; 2056 background: #ffffff; 2057 box-shadow: 0px 15px 43px rgba(0, 0, 0, 0.12); 2058 -webkit-box-shadow: 0px 15px 43px rgba(0, 0, 0, 0.12); 2059 -moz-box-shadow: 0px 15px 43px rgba(0, 0, 0, 0.12); 2060 } 2061 2062 .stories-dpdw { 2063 top: 10.5vw; 2064 } 2065 2066 .submenu-deatils-con { 2067 padding: 1vw 2.5520833333333335vw 2.55208vw 2.125vw; 2068 } 2069 2070 .menu-link { 2071 padding: 2.5vw 2.5520833333333335vw 2.55208vw 2.125vw; 2072 } 2073 2074 .add-events-con { 2075 padding: 0 0 0 3.3854vw; 2076 } 2077 2078 .main-dropdown-list li a { 2079 text-decoration: none; 2080 } 2081 2082 .main-dropdown-list li:hover a { 2083 text-decoration: none; 2084 } 2085 2086 .main-dropdown-list .inner-dpdw a { 2087 text-decoration: underline !important; 2088 } 2089 2090 .arrow { 2091 border: solid #1c2d43; 2092 border-width: 0 2px 2px 0; 2093 display: inline-block; 2094 padding: 0.2604vw 0.3125vw 0.4687vw 0.1562vw; 2095 } 2096 2097 .my-profile { 2098 padding-top: 0.00604vw;
2099 border: solid #fff; 2100 border-width: 0 2px 2px 0; 2101 } 2102 2103 .my-profile-dpdw { 2104 padding-left: 1vw; 2105 } 2106 2107 @media(max-width:991px) { 2108 .arrow { 2109 padding: 2px 4px 4px 2px; 2110 } 2111 } 2112 2113 .myarrow { 2114 transform: rotate(45deg); 2115 -webkit-transform: rotate(45deg); 2116 } 2117 2118 .header-dpdw:hover .main-dropdown-menu { 2119 display: block; 2120 } 2121 2122 /* Keyboard equivalent of the :hover rule above; .open is toggled by JS. 2123 Scoped to the DIRECT child so second-level .stories-dpdw panels do not 2124 all open (and overlap the first-level panel) at once. */ 2125 .header-dpdw.open > .main-dropdown-menu { 2126 display: block; 2127 } 2128 2129 /* A second-level flyout opens only while its parent item holds focus, 2130 so Tab flows: first-level item -> its own sub-items -> next item. 2131 The .open variant is toggled by JS for the link-less .menu-link 2132 headers (hassubmenu == '2'), which are wired as disclosure triggers. */ 2133 .main-dpdw-bdr:focus-within > .stories-dpdw, 2134 .main-dpdw-bdr.open > .stories-dpdw { 2135 display: block; 2136 } 2137 2138 /* After Escape, .dismissed suppresses the :hover rules until the pointer 2139 leaves the menu (JS removes the class on mouseleave / reopen), so the 2140 panel actually disappears even while the cursor still rests over it. 2141 Covers all three hover-driven menus; the profile rule needs !important 2142 because its show rules use !important. */ 2143 .header-dpdw.dismissed:hover .main-dropdown-menu, 2144 .mobile-dropdown.dismissed:hover .mobile-dropdown-content { 2145 display: none; 2146 } 2147 2148 .profile-details.dismissed:hover .my-profile-about { 2149 display: none !important; 2150 } 2151 2152 .submenu-details { 2153 display: flex; 2154 padding-top: 1.0416vw; 2155 align-items: center; 2156 color: #000; 2157 } 2158 2159 .stories-sub-dpdw a { 2160 color: #000; 2161 } 2162 2163 .submenu-details .submenu-right-arrow { 2164 padding-left: 1.0416vw; 2165 } 2166 2167 .submenu-right-arrow img { 2168 width: 1.25vw; 2169 height: 0.8854vw; 2170 } 2171 2172 .main-dropdown-menu li:hover { 2173 background-color: #f4f5f3; 2174 } 2175 2176 .stories-dpdw li:hover { 2177 background-color: unset; 2178 } 2179 2180 .main-dropdown-menu .add-events:hover { 2181 background-color: var(--act-btn-bkgnd-color); 2182 } 2183 2184 .header-main-menu-list { 2185 display: flex; 2186 } 2187 2188 .header-main-menu-list li, 2189 .header-main-menu-list li a { 2190 padding: 1.5625vw 0; 2191 font-family: 'Segoe UI', sans-serif; 2192 2193 font-style: normal; 2194 2195 font-weight: 300; 2196 2197 font-size: 1.0416vw; 2198 color: #000; 2199 } 2200 2201 .header-main-menu-list li a, 2202 .header-main-menu-list li a:hover { 2203 text-decoration: none; 2204 } 2205 2206 ul { 2207 list-style-type: none; 2208 padding: 0; 2209 margin: 0; 2210 } 2211 2212 .main-dropdown-menu-list li .submenu-name, 2213 .main-dropdown-menu-list li .submenu-name-stories { 2214 font-family: 'Segoe UI', sans-serif; 2215 font-style: normal; 2216 font-weight: normal; 2217 font-size: 1.25vw; 2218 line-height: 1.6666vw; 2219 } 2220 2221 .add-events .submenu-name, 2222 .add-events .submenu-name-stories { 2223 font-weight: 400 !important; 2224 color: #fff; 2225 } 2226 2227 .add-events-desc { 2228 padding: 1.5625vw 0 0 0; 2229 font-size: 1.0416vw; 2230 font-family: 'Segoe UI', sans-serif; 2231 line-height: 1.4062vw; 2232 font-weight: 300; 2233 color: #fff; 2234 } 2235 2236 /*mobile menu*/ 2237 .mobile-menu { 2238 display: none; 2239 } 2240 2241 @media (max-width: 991px) { 2242 .mobile-menu { 2243 display: block; 2244 height: 60px; 2245 } 2246 2247 .humbuger-menu { 2248 width: 50%; 2249 } 2250 2251 .desktop-menu { 2252 display: none; 2253 } 2254 } 2255 2256 .header-main-menu-mobile { 2257 background: #737373; 2258 display: flex; 2259 height: 1.9791vw; 2260 width: 100%; 2261 align-items: center; 2262 justify-content: space-between; 2263 } 2264 2265 @media (max-width: 991px) { 2266 .header-main-menu-mobile { 2267 height: 60px; 2268 padding-right: 20px; 2269 } 2270 } 2271 2272 .mobile.menu { 2273 position: absolute; 2274 top: 0; 2275 left: 0; 2276 width: 100%; 2277 padding: 0 1.0416vw; 2278 min-height: 100vh; 2279 text-align: left; 2280 padding-top: 5.8333vw; 2281 background: #fff; 2282 z-index: 10; 2283 transition: all 0.4s ease-in-out; 2284 transform: translateX(-100%); 2285 } 2286 2287 .menu__icon { 2288 width: 24px; 2289 height: 14px; 2290 top: 4%; 2291 left: 20px; 2292 position: absolute; 2293 display: inline-block; 2294 vertical-align: middle; 2295 z-index: 20; 2296 } 2297 2298 @media(max-width:991px) { 2299 .menu__icon { 2300 width: 24px; 2301 height: 14px; 2302 /* top: 4%; */ 2303 top: 22px; 2304 left: 20px; 2305 } 2306 } 2307 2308 .menu__icon span { 2309 display: block; 2310 background: #fff; 2311 width: 100%; 2312 height: 0.1562vw; 2313 margin-top: -2px; 2314 position: absolute; 2315 left: 0; 2316 /* top: 50%; */ 2317 top: 58%; 2318 } 2319 2320 .menu__icon:before, 2321 .menu__icon:after { 2322 content: ""; 2323 display: block; 2324 background: #fff; 2325 width: 100%; 2326 height: 0.1562vw; 2327 position: absolute; 2328 left: 0; 2329 transform-origin: center center; 2330 transform: rotate(0deg); 2331 transition: all 0.3s ease; 2332 } 2333 2334 .menu__icon:before { 2335 top: 2px; 2336 margin-top: -2px; 2337 } 2338 2339 .menu__icon:after { 2340 bottom: 2px; 2341 margin-bottom: -1px; 2342 } 2343 2344 .menu_shown .menu__icon span { 2345 background: transparent; 2346 } 2347 2348 .menu_shown .menu__icon:before { 2349 top: 50%; 2350 transform: rotate(45deg); 2351 /* transform: rotate(50deg); */ 2352 } 2353 2354 .menu_shown .menu__icon:after { 2355 bottom: 66%; 2356 transform: rotate(-45deg); 2357 /* transform: rotate(-50deg); */ 2358 } 2359 2360 .mobile.menu { 2361 position: absolute; 2362 /* top: 4.1666vw; */ 2363 top: 9.7%; 2364 left: 0; 2365 width: 50%; 2366 min-height: 100vh; 2367 text-align: left; 2368 padding: 30px 0 0 30px; 2369 background: #fff; 2370 z-index: 10; 2371 transition: all 0.4s ease-in-out; 2372 transform: translateX(-100%); 2373 } 2374 2375 .menu_shown .mobile.menu { 2376 transform: translateX(0); 2377 } 2378 2379 .mobile .menu__item { 2380 display: block; 2381 line-height: 2; 2382 padding: 1.3020vw 0; 2383 } 2384 2385 .mobile li, 2386 .mobile li a, 2387 .mobile li p { 2388 font-family: 'Segoe UI', sans-serif; 2389 font-style: normal; 2390 font-weight: 400; 2391 font-size: 20px; 2392 line-height: 27px; 2393 color: #000000; 2394 margin-bottom: 30px; 2395 } 2396 2397 .mobile li a, 2398 .mobile li p, 2399 .mobile li a:hover, 2400 .mobile li p:hover { 2401 text-decoration: none; 2402 } 2403 2404 .mobile li:hover { 2405 font-weight: 600; 2406 } 2407 2408 .mobile-dropdown-content { 2409 display: none; 2410 position: absolute; 2411 background: #F6F7F7; 2412 width: 100%; 2413 left: 100%; 2414 height: 100vh; 2415 /* top: -2%; */ 2416 top: 0%; 2417 padding: 30px 0 0 30px; 2418 } 2419 2420 .mobile-dropdown:hover .mobile-dropdown-content { 2421 display: block; 2422 } 2423 2424 /* Keyboard equivalent of the :hover rule above */ 2425 .mobile-dropdown.open .mobile-dropdown-content { 2426 display: block; 2427 } 2428 2429 .give-sub-menu:hover .resp-stories { 2430 display: block; 2431 } 2432 2433 .give-sub-menu:focus-within .resp-stories { 2434 display: block; 2435 } 2436 2437 .mobile-dropdown-content a, 2438 .mobile-dropdown-content p { 2439 display: block; 2440 text-decoration: none; 2441 font-family: 'Segoe UI', sans-serif; 2442 font-weight: 400; 2443 font-size: 14px; 2444 line-height: 19px; 2445 margin-bottom: 30px; 2446 } 2447 2448 .stories-profile { 2449 font-family: 'Segoe UI', sans-serif; 2450 font-weight: 400; 2451 font-size: 14px; 2452 line-height: 19px; 2453 margin-bottom: 30px; 2454 } 2455 2456 .stories-profile ul { 2457 margin-top: 30px; 2458 } 2459 2460 .mobile-dropdown-content .stories-profile span { 2461 margin-left: 10px; 2462 } 2463 2464 .mobile-dropdown { 2465 display: flex; 2466 } 2467 2468 .header-alumniconnect a { 2469 font-family: 'Segoe UI', sans-serif; 2470 font-weight: 400; 2471 font-size: 1.0416vw; 2472 color: #D2673A; 2473 text-decoration: none; 2474 } 2475 2476 @media(max-width:991px) { 2477 .header-alumniconnect a { 2478 font-size: 20px; 2479 } 2480 } 2481 2482 .about-mobile-arrow { 2483 padding-left: 28px; 2484 } 2485 2486 .about-mobile-arrow img {
2487 width: 20px; 2488 height: 14px; 2489 } 2490 2491 .about-mobile-dpdw { 2492 width: 80px; 2493 } 2494 2495 .inner-dpdw li { 2496 display: none; 2497 } 2498 2499 .resp:hover .inner-dpdw li { 2500 display: block; 2501 } 2502 2503 /* Keyboard equivalent of the :hover rule above */ 2504 .resp:focus-within .inner-dpdw li { 2505 display: block; 2506 } 2507 2508 .resp-stories { 2509 display: none; 2510 padding-left: 10px; 2511 } 2512 2513 .stories-profile:hover .resp-stories { 2514 display: block; 2515 } 2516 2517 .stories-profile:focus-within .resp-stories { 2518 display: block; 2519 } 2520 2521 /* .open variants for the mobile link-less <p> headers (hassubmenu == '2'), 2522 wired as disclosure triggers in JS - same fix as the desktop .menu-link */ 2523 .stories-profile.open .resp-stories, 2524 .give-sub-menu.open .resp-stories { 2525 display: block; 2526 } 2527 2528 .join-btn { 2529 background-color: var(--act-btn-bkgnd-color); 2530 margin-right: 1.5625vw; 2531 width: 9.0104vw; 2532 padding: 0.5208vw; 2533 border: 1px solid var(--act-btn-border-color); 2534 cursor: pointer; 2535 font-family: 'Segoe UI', sans-serif; 2536 font-style: normal; 2537 font-weight: bold; 2538 font-size: 0.9375vw; 2539 line-height: 1.25vw; 2540 color: #fff; 2541 } 2542 2543 .join-link { 2544 display: contents; 2545 width: 5.2083vw; 2546 } 2547 2548 /* Keyboard accessibility for MyBenefits link - WCAG 2.2 AA compliant */ 2549 .mybenefits-link { 2550 display: inline-block; 2551 width: auto; 2552 text-decoration: none; 2553 outline: none; 2554 } 2555 2556 .signin .join-btn { 2557 margin-top: unset; 2558 } 2559 2560 .resp-join-in { 2561 display: flex; 2562 } 2563 2564 .add-events { 2565 background-color: var(--act-btn-bkgnd-color); 2566 } 2567 2568 .add-stories { 2569 width: 25% !important; 2570 } 2571 2572 @media(max-width:991px) { 2573 .join-btn { 2574 width: 150px; 2575 font-size: 16px; 2576 line-height: 24px; 2577 margin-right: 10px; 2578 padding: 12px 0; 2579 } 2580 } 2581 2582 @media(max-width:576px) { 2583 .join-btn { 2584 width: 88px; 2585 /* margin-right: unset; */ 2586 padding: 5px 0; 2587 } 2588 } 2589 2590 .my-profile-about { 2591 display: none; 2592 position: absolute; 2593 z-index: 2; 2594 top: 3.7vw; 2595 right: 8%; 2596 background: #737373; 2597 width: 17.6562vw; 2598 } 2599 2600 .profile-details.open .my-profile-about { 2601 display: block !important; 2602 } 2603 .profile-details:hover .my-profile-about { 2604 display: block !important; 2605 } 2606 2607 .profile-flex { 2608 display: flex; 2609 padding: 0 0 1.0416vw 1.0416vw; 2610 align-items: center; 2611 } 2612 2613 .profile-nav a { 2614 display: inline-block; 2615 } 2616 2617 .profile-details-list { 2618 border-bottom: 0.5px solid #fff; 2619 } 2620 2621 .profile-details-list:last-child { 2622 border-bottom: unset; 2623 } 2624 2625 .profile-icons, 2626 .profile-icons img { 2627 width: 1.7869vw; 2628 height: 1.7869vw; 2629 object-fit: cover; 2630 border-radius: 50%; 2631 } 2632 2633 .profile-options { 2634 font-family: 'Segoe UI', sans-serif; 2635 padding-left: 1.0416vw; 2636 font-size: 0.9375vw; 2637 line-height: 1.25vw; 2638 color: #fff; 2639 } 2640 2641 .profile-bio { 2642 display: flex; 2643 border-bottom: 0.5px solid #fff; 2644 padding: 0.7812vw 0 0.7812vw 1.0416vw; 2645 } 2646 2647 .bio-image, 2648 .bio-image img { 2649 width: 3.3333vw; 2650 height: 3.3333vw; 2651 object-fit: cover; 2652 border-radius: 50%; 2653 } 2654 2655 .bio-info { 2656 padding-left: 0.7812vw; 2657 word-wrap: break-word; 2658 width: 13vw; 2659 } 2660 2661 .bio-info h5 { 2662 font-family: 'Segoe UI', sans-serif; 2663 font-size: 1.0416vw; 2664 line-height: 1.4062vw; 2665 color: #fff; 2666 margin: 0.1562vw 0 0; 2667 } 2668 2669 .bio-info p { 2670 font-family: 'Segoe UI', sans-serif; 2671 font-size: 0.7291vw; 2672 line-height: 0.9895vw; 2673 color: #fff; 2674 margin: 0; 2675 } 2676 2677 @media(max-width:991px) { 2678 .my-profile-about { 2679 right: 2%; 2680 top: 9%; 2681 } 2682 2683 .bio-image, 2684 .bio-image img { 2685 width: 40px; 2686 height: 40px; 2687 } 2688 2689 .my-profile-about { 2690 width: 275px; 2691 } 2692 2693 .bio-info h5 { 2694 font-size: 18px; 2695 line-height: 24px; 2696 margin: 0; 2697 } 2698 2699 .bio-info p { 2700 font-size: 14px; 2701 line-height: 19px; 2702 } 2703 2704 .profile-options { 2705 font-size: 14px; 2706 line-height: 20px; 2707 padding-left: 20px; 2708 } 2709 2710 .profile-icons, 2711 .profile-icons img { 2712 width: 25px; 2713 height: 25px; 2714 } 2715 2716 .profile-flex, 2717 .profile-bio { 2718 padding: 15px 0 15px 15px; 2719 } 2720 2721 .profile-flex { 2722 padding-top: 0;
2723 } 2724 2725 .bio-info { 2726 padding-left: 20px; 2727 width: 80%; 2728 } 2729 } 2730 2731 /* ========================================================================= 2732 FIXES (additive overrides - intentionally last so the cascade wins) 2733 ========================================================================= */ 2734 2735 /* --- Fix 1: profile dropdown hover gap --------------------------------- 2736 Anchor .my-profile-about to its trigger instead of the page. With 2737 top:100% the panel sits flush under the trigger at every viewport 2738 width, so the pointer never crosses a dead zone and the :hover-driven 2739 panel no longer closes on the way down. Overrides the magic-number 2740 top/right values above (both base rule and the 991px media query). */ 2741 .profile-details { 2742 position: relative; 2743 } 2744 2745 .my-profile-about { 2746 top: 100%; 2747 right: 0; 2748 } 2749 2750 @media (max-width: 991px) { 2751 .my-profile-about { 2752 top: 100%; 2753 right: 0; 2754 } 2755 } 2756 2757 /* --- Fix 2: focus rings for mobile link-less submenu headers ----------- 2758 The JS wires these <p> triggers with tabindex/role=button, but no 2759 focus-visible rule matched them, so they fell back to the UA default 2760 outline (inconsistent with every other ring). */ 2761 .mobile .stories-profile > p:focus, 2762 .mobile .stories-profile > p:focus-visible, 2763 .mobile .give-sub-menu > p:focus, 2764 .mobile .give-sub-menu > p:focus-visible { 2765 outline: 3px solid var(--focus-ring-dark); 2766 outline-offset: 3px; 2767 } 2768 2769 /* --- Fix 3: focus rings clipped at container edges --------------------- 2770 a) Mobile submenu panels had zero right padding and full-bleed block 2771 links, so the +3px offset ring was cut off by the viewport edge. */ 2772 .mobile-dropdown-content { 2773 padding-right: 10px; 2774 } 2775 2776 /* b) Desktop dropdown items sit edge-to-edge (border-right separators, 2777 no gap), so an outward ring overlapped the neighbouring cell. Draw 2778 it just inside the item instead; dark ring on the white/#f4f5f3 2779 panel keeps well above 3:1 contrast, so still WCAG 2.2 AA. */ 2780 .main-dropdown-menu a:focus, 2781 .main-dropdown-menu a:focus-visible, 2782 .main-dropdown-menu .menu-link:focus, 2783 .main-dropdown-menu .menu-link:focus-visible { 2784 outline-offset: -3px; 2785 } 2786 2787 /* --- Fix 4: offscreen mobile menu was still tabbable ------------------- 2788 translateX(-100%) hides the slide-out visually but leaves every link 2789 focusable, so keyboard focus could vanish into an invisible menu. 2790 visibility toggles focusability and transitions cleanly alongside the 2791 transform (delayed on close so the slide-out animation stays visible). */ 2792 .mobile.menu { 2793 visibility: hidden; 2794 transition: transform 0.4s ease-in-out, visibility 0s linear 0.4s; 2795 } 2796 2797 .menu_shown .mobile.menu { 2798 visibility: visible; 2799 transition: transform 0.4s ease-in-out, visibility 0s linear 0s; 2800 } 2801 2802 /* --- Fix 5: fragmented focus ring on mobile top-level links ------------- 2803 "Alumni Voices" (and potentially "Clubs") are plain inline anchors 2804 inside the 80px-wide .about-mobile-dpdw, so the text wraps and an 2805 outline on an INLINE element is drawn per line box - producing the 2806 broken double-rectangle ring. inline-block makes the anchor a single 2807 rectangle, so the ring wraps both lines cleanly. */ 2808 .about-mobile-dpdw a { 2809 display: inline-block; 2810 } 2811 2812 /* --- Fix 6: proper rectangle ring on the top-level triggers ------------- 2813 .menu-trigger was inline: its outline hugged the font's line box and 2814 the rotated chevron (transforms paint outside the layout box) crossed 2815 the ring's right edge. Give the trigger a real padded box so the ring
2816 traces a roomy rectangle that fully encloses text + arrow. The 2817 negative margins exactly cancel the padding, so the box occupies the 2818 same space in the flow - zero layout shift; the padded area is only 2819 "felt" by the outline (and as a slightly larger click target). */ 2820 .header-dpdw > .menu-trigger { 2821 display: inline-block; 2822 padding: 0.5vw 0.7vw; 2823 margin: -0.5vw -0.7vw; 2824 } 2825</style> 2826<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" />
2827<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.1/jquery.min.js"></script>
vendor: 2 bytes, line 2827
2827
2828<script> 2829 $(document).ready(function () { 2830 $(".main-dropdown-menu-list .main-dpdw-bdr").hover(function () { 2831 $(this).find(".submenu-name").addClass("submenu-bold"); 2832 $(this).siblings().find(".submenu-name").removeClass("submenu-bold"); 2833 }); 2834 $(".main-dropdown-menu-list .main-dpdw-bdr .stories-sub-dpdw").hover(function () { 2835 $(this).find(".submenu-name-stories").addClass("submenu-bold"); 2836 $(this).siblings().find(".submenu-name-stories").removeClass("submenu-bold"); 2837 }); 2838 }); 2839 2840 $(document).ready(function () { 2841 $(".menu__icon").click(function () { 2842 $("body").toggleClass("menu_shown"); 2843 }); 2844 }); 2845</script>
vendor: 2 bytes, line 2845
2845
2846<script src="/utils.js"></script>
vendor: 2 bytes, line 2846
2846
2847<script> 2848document.addEventListener('DOMContentLoaded', function () { 2849 // --------------------------------------------------------------------------- 2850 // Keyboard accessibility for all hover-only dropdown menus - WCAG 2.2 AA. 2851 // Generic "disclosure" wiring used by the profile menu, the desktop nav 2852 // dropdowns (About / Savings / Events / ...), and the mobile nav dropdowns. 2853 // Adds an `.open` class on the container (the CSS mirrors the :hover rules), 2854 // so hover behavior for mouse users is unchanged. 2855 // --------------------------------------------------------------------------- 2856 const disclosures = []; // every wired menu; used by the global Escape handler 2857 2858 function wireDisclosure(container, trigger, panel, label) { 2859 if (!container || !trigger || !panel) return; 2860 2861 if (!trigger.hasAttribute('tabindex')) trigger.setAttribute('tabindex', '0'); 2862 trigger.setAttribute('role', 'button'); 2863 trigger.setAttribute('aria-haspopup', 'true'); 2864 trigger.setAttribute('aria-expanded', 'false'); 2865 if (label && !trigger.hasAttribute('aria-label')) trigger.setAttribute('aria-label', label); 2866 2867 // Only links that are currently rendered (second-level flyout links are 2868 // display:none until their parent item has focus, and display:none 2869 // elements cannot receive focus). 2870 const getLinks = () => 2871 Array.prototype.slice.call(panel.querySelectorAll('a')) 2872 .filter((a) => a.offsetParent !== null); 2873 2874 const toggleMenu = (open) => { 2875 const isOpen = typeof open === 'boolean' ? open : !container.classList.contains('open'); 2876 container.classList.toggle('open', isOpen); 2877 if (isOpen) container.classList.remove('dismissed'); // reopening always wins over a prior dismissal 2878 trigger.setAttribute('aria-expanded', isOpen); 2879 }; 2880 2881 // A dismissal only needs to last until the pointer leaves; the next 2882 // hover should behave normally again. 2883 container.addEventListener('mouseleave', () => container.classList.remove('dismissed')); 2884 2885 trigger.addEventListener('click', (e) => { 2886 // Don't hijack clicks on real links or clicks inside the open panel 2887 if (panel.contains(e.target)) return; 2888 if (e.target.closest && e.target.closest('a')) return; 2889 toggleMenu(); 2890 }); 2891 2892 trigger.addEventListener('keydown', (e) => { 2893 if (e.target !== trigger) return; // ignore keys bubbling up from panel links 2894 if (e.key === 'Enter' || e.key === ' ') { 2895 e.preventDefault(); 2896 toggleMenu(); 2897 } else if (e.key === 'ArrowDown') { 2898 e.preventDefault(); 2899 const links = getLinks(); 2900 if (links.length) { 2901 toggleMenu(true); 2902 links[0].focus(); 2903 } 2904 } else if (e.key === 'ArrowUp') { 2905 e.preventDefault(); 2906 const links = getLinks(); 2907 if (links.length) { 2908 toggleMenu(true); 2909 links[links.length - 1].focus(); 2910 } 2911 } 2912 }); 2913 2914 // Close only when focus leaves the whole menu, so Tab can travel 2915 // through every link inside the open panel. 2916 container.addEventListener('focusout', (e) => { 2917 if (!container.contains(e.relatedTarget)) toggleMenu(false); 2918 }); 2919 2920 // Close when clicking outside 2921 document.addEventListener('click', (e) => { 2922 if (!container.contains(e.target)) toggleMenu(false); 2923 }); 2924 2925 // Arrow-key navigation between links inside the panel 2926 // (Escape is handled once, globally - see the document keydown below.) 2927 panel.addEventListener('keydown', (e) => { 2928 const links = getLinks(); 2929 const idx = links.indexOf(document.activeElement); 2930 if (idx === -1) return; 2931 if (e.key === 'ArrowDown') { 2932 e.preventDefault(); 2933 (links[idx + 1] || links[0]).focus(); 2934 } else if (e.key === 'ArrowUp') { 2935 e.preventDefault(); 2936 (links[idx - 1] || links[links.length - 1]).focus(); 2937 } 2938 }); 2939 2940 disclosures.push({ container: container, trigger: trigger, panel: panel, toggleMenu: toggleMenu }); 2941 } 2942 2943 // Global Escape handler: closes ANY open menu, no matter where focus is. 2944 // (Per-element Escape handlers miss the key entirely when focu
2944s is on 2945 // <body> - e.g. after a click in browsers that don't focus clicked 2946 // elements - or when it sits on an element outside the links list.) 2947 // Also dismisses menus held open purely by :hover, via the .dismissed 2948 // class that suppresses the hover CSS until the pointer leaves. 2949 document.addEventListener('keydown', function (e) { 2950 if (e.key !== 'Escape') return; 2951 disclosures.forEach(function (d) { 2952 const isOpen = d.container.classList.contains('open'); 2953 const isHovered = d.container.matches(':hover'); 2954 if (!isOpen && !isHovered) return; 2955 const focusWasInPanel = d.panel.contains(document.activeElement); 2956 if (isOpen) d.toggleMenu(false); 2957 if (isHovered) d.container.classList.add('dismissed'); 2958 if (focusWasInPanel) d.trigger.focus(); // return focus so Tab continues from the trigger 2959 }); 2960 2961 // FIX: also close the mobile slide-out (hamburger) menu itself. It is 2962 // driven by body.menu_shown, not by a wired disclosure container, so 2963 // the loop above never touched it and Escape had no effect on it. 2964 if (document.body.classList.contains('menu_shown')) { 2965 document.body.classList.remove('menu_shown'); 2966 var b = document.querySelector('.menu__icon'); 2967 if (b) { 2968 b.setAttribute('aria-expanded', 'false'); 2969 b.focus(); // return focus so keyboard users aren't stranded offscreen 2970 } 2971 } 2972 }); 2973 2974 // Desktop top-level nav dropdowns (About, Savings, Events, Stories, Give, ...) 2975 // aria-allowed-role fix: the focusable trigger is the .menu-trigger <span> 2976 // wrapper, NOT the <li> - role="button" is disallowed on a list item and 2977 // also breaks the parent <ul>'s allowed-children rule. The li stays the 2978 // container (hover/open/focusout logic unchanged); only the trigger moved. 2979 // Fallback to the li keeps behavior if a wrapper is ever missed. 2980 document.querySelectorAll('.desktop-menu .header-main-menu-list > .header-dpdw').forEach(function (li) { 2981 const panel = li.querySelector(':scope > .main-dropdown-menu'); 2982 if (!panel) return; // plain links (Clubs, Alumni Voices) are already tabbable 2983 const trigger = li.querySelector(':scope > .menu-trigger') || li; 2984 const label = ((li.childNodes[0] && li.childNodes[0].textContent) || '').trim(); 2985 wireDisclosure(li, trigger, panel, label); 2986 }); 2987 2988 // Link-less second-level headers (nav rows with hassubmenu == '2', e.g. 2989 // "All Stories"): the template renders them as a bare <div class="menu-link"> 2990 // with no <a>, so Tab skipped them and their flyout could never open by 2991 // keyboard. Wire each as a disclosure trigger for its sibling flyout. 2992 document.querySelectorAll('.desktop-menu .main-dpdw-bdr > .menu-link').forEach(function (div) { 2993 const li = div.parentElement; 2994 const panel = li.querySelector(':scope > .stories-dpdw'); 2995 if (!panel) return; 2996 const nameEl = div.querySelector('.submenu-name'); 2997 wireDisclosure(li, div, panel, nameEl ? nameEl.textContent.trim() : ''); 2998 }); 2999 3000 // Same fix for the mobile menu, where hassubmenu == '2' rows render as a 3001 // bare <p> inside .stories-profile / .give-sub-menu. 3002 document.querySelectorAll('.mobile-menu .stories-profile > p, .mobile-menu .give-sub-menu > p').forEach(function (p) { 3003 const wrap = p.parentElement; 3004 const panel = wrap.querySelector(':scope > .resp-stories'); 3005 if (!panel) return; 3006 wireDisclosure(wrap, p, panel, p.textContent.trim()); 3007 }); 3008 3009 // Profile dropdowns (desktop + mobile) 3010 document.querySelectorAll('.profile-details').forEach(function (pd) { 3011 wireDisclosure( 3012 pd, 3013 pd.querySelector('.my-profile-dpdw'), 3014 pd.querySelector('.my-profile-about'), 3015 'my profile' 3016 ); 3017 }); 3018 3019 // Mobile nav dropdowns 3020 document.querySelectorAll('.mobile-menu .mobile-dropdown').forEach(function (md) { 3021 const trigger = md.querySelector('.about-mobile-dpdw'); 3022 const panel = md.querySelector('.mobile-dropdown-content'); 3023 if (!trigger || !panel || trigger.querySelector('a')) return; // Clubs / Alumni Voices are links 3024 wireDisclosure(md, trigger, panel, trigger.textContent.trim()); 3025 }); 3026 3027 // Hamburger icon: an <a> without href is not keyboard focusable 3028 const burger = document.querySelector('.menu__icon'); 3029 if (burger) { 3030 burger.setAttribute('tabindex', '0'); 3031 burger.setAttribute('role', 'button'); 3032 burger.setAttribute('aria-label', 'menu'); 3033 burger.setAttribute('aria-expanded', document.body.classList.contains('menu_shown')); 3034 const syncBurger = () => burger.setAttribute('aria-expanded', document.body.classList.contains('menu_shown')); 3035 burger.addEventListener('click', syncBurger); 3036 burger.addEventListener('keydown', function (e) { 3037 if (e.key === 'Enter' || e.key === ' ') { 3038 e.preventDefault(); 3039 document.body.classList.toggle('menu_shown'); 3040 syncBurger(); 3041 } 3042 });
3043 } 3044}); 3045</script>
vendor: 2 bytes, line 3045
3045
3046<script src="/_api.js"></script>
3046 3047
3048<script> 3049 const RegisterUserURL = ""; 3050</script>
3050 3051<!-- OneTrust Cookies Consent Notice start for microsoftalumni.com -->
3052<script data-ot-ignore src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" type="text/javascript" charset="UTF-8" data-domain-script="a02dfb21-c17d-4946-9604-cd41c1e8111c" ></script>
vendor: 2 bytes, line 3052
3052
3053<script data-ot-ignore type="text/javascript"> 3054 function OptanonWrapper() { } 3055</script>
3055 3056<!-- OneTrust Cookies Consent Notice end for microsoftalumni.com --> 3057 3058<header> 3059 <nav class="desktop-menu"> 3060 <div class="menu-flex"> 3061 <div class="alumni-logo"> 3062 <a href="https://www.microsoftalumni.com/"> 3063 <img src="https://preprodmsancdn.azureedge.net/images/images/Header logoNew.png" alt="MS-alumni-logo" /> 3064 </a> 3065 </div> 3066 <div class="signin"> 3067 3068 <button class="join-btn" role="link" aria-label="Open registration page" onclick="window.location.href='/registrations'">Join</button> 3069 <a href="https://www.microsoftalumni.com/Account/Login/ExternalLogin?provider=https://msaprodb2c.b2clogin.com/tfp/90e6632d-0cbe-4082-acd9-9e47f55e70dc/b2c_1_msan_signin/v2.0/"> 3070 <span>Member Sign In</span> 3071 </a> 3072 3073 3074 </div> 3075 </div> 3076 <div class="header-main-menu-con"> 3077 <div class="header-main-menu"> 3078 <ul class="header-main-menu-list"> 3079 <li class="header-dpdw header-dpdw-login"> 3080 <span class="menu-trigger">About<span> <i class="arrow myarrow"></i></span></span> 3081 <div class="main-dropdown-menu"> 3082 <div class="main-dropdown-list"> 3083 <ul class="main-dropdown-menu-list"> 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 <li class="main-dpdw-bdr"> 3101 <a href="https://www.microsoftalumni.com/about-us/"> 3102 <div class="submenu-deatils-con"> 3103 <div class="submenu-icon"> 3104 <img src="https://preprodmsancdn.azureedge.net/images/images/AboutUsMenu.png" alt="submenu-icon" /> 3105 </div> 3106 <div class="submenu-details"> 3107 <div class="submenu-name"> 3108 About us 3109 </div> 3110 <div class="submenu-right-arrow"> 3111 <img src="https://preprodmsancdn.azureedge.net/images/images/MenuRightArrow.png" alt="arrrow-icon" /> 3112 </div> 3113 </div> 3114 </div> 3115 </a> 3116 </li> 3117 3118 3119 3120 <li class="main-dpdw-bdr"> 3121 <a href="https://www.microsoftalumni.com/our-team/"> 3122 <div class="submenu-deatils-con"> 3123 <div class="submenu-icon"> 3124 <img src="https://preprodmsancdn.azureedge.net/images/images/team.png" alt="submenu-icon" /> 3125 </div> 3126 <div class="submenu-details"> 3127 <div class="submenu-name"> 3128 Our Team 3129 </div> 3130 <div class="submenu-right-arrow"> 3131 <img src="https://preprodmsancdn.azureedge.net/images/images/MenuRightArrow.png" alt="arrrow-icon" /> 3132 </div> 3133 </div> 3134 </div> 3135 </a> 3136 </li> 3137 3138 3139 3140 <li class="main-dpdw-bdr"> 3141 <a href="https://www.microsoftalumni.com/faq/"> 3142 <div class="submenu-deatils-con"> 3143 <div class="submenu-icon"> 3144 <img src="https://preprodmsancdn.azureedge.net/images/images/faq.png" alt="submenu-icon" /> 3145 </div> 3146 <div class="submenu-details"> 3147 <div class="submenu-name"> 3148 FAQ 3149 </div> 3150 <div class="submenu-right-arrow"> 3151 <img src="https://preprodmsancdn.azureedge.net/images/images/MenuRightArrow.png" alt="arrrow-icon" /> 3152 </div> 3153 </div> 3154 </div> 3155 </a> 3156 </li> 3157 3158 3159 3160 3161 3162 <li class="main-dpdw-bdr"> 3163 <a href="https://www.microsoftalumni.com/contact-us/"> 3164 <div class="submenu-deatils-con"> 3165 <div class="submenu-icon"> 3166 <img src="https://preprodmsancdn.azureedge.net/images/images/contatc.png" alt="submenu-icon" /> 3167 </div> 3168 <div class="submenu-details"> 3169 <div class="submenu-name"> 3170 Contact us 3171 </div> 3172 <div class="submenu-right-arrow"> 3173 <img src="https://preprodmsancdn.azureedge.net/images/images/MenuRightArrow.png" alt="arrrow-icon" /> 3174 </div> 3175 </div> 3176 </div> 3177 </a> 3178 </li> 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 </ul> 3258 </div> 3259 </div> 3260 </li> 3261 3262 <li class="header-dpdw header-dpdw-login">
3263 <span class="menu-trigger">Events<span> <i class="arrow myarrow"></i></span></span> 3264 <div class="main-dropdown-menu"> 3265 <div class="main-dropdown-list"> 3266 <ul class="main-dropdown-menu-list"> 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 <li class="events-menu main-dpdw-bdr"> 3320 <a href="/all-events/"> 3321 <div class="submenu-deatils-con"> 3322 <div class="submenu-icon"> 3323 <img src="https://preprodmsancdn.azureedge.net/images/images/events.png" alt="submenu-icon" /> 3324 </div> 3325 <div class="submenu-details"> 3326 <div class="submenu-name"> 3327 All Events 3328 </div> 3329 <div class="submenu-right-arrow"> 3330 <img src="https://preprodmsancdn.azureedge.net/images/images/MenuRightArrow.png" alt="arrow-icon" /> 3331 </div> 3332 </div> 3333 </div> 3334 </a> 3335 <div class="main-dropdown-menu stories-dpdw"> 3336 <div class="main-dropdown-list"> 3337 <ul class="inner-dpdw"> 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 </ul> 3440 </div> 3441 </div> 3442 </li> 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 </ul> 3495 </div> 3496 </div> 3497 </li> 3498 3499 </ul> 3500 </div> 3501 </div> 3502 </nav> 3503 <nav class="mobile-menu"> 3504 <div class="header-main-menu-mobile"> 3505 <div class="humbuger-menu"> 3506 <a class="menu__icon mobile"><span></span></a> 3507 <ul class="menu mobile"> 3508 <li class="mobile-dropdown"> 3509 <div class="about-mobile-dpdw">About</div> 3510 <div class="about-mobile-arrow"> 3511 <img src="https://www.microsoftalumni.com/RightArrowIcon" alt="arrow-icon" /> 3512 </div> 3513 <div class="mobile-dropdown-content"> 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 <a href="https://www.microsoftalumni.com/about-us/"> 3531 About us 3532 </a> 3533 3534 3535 3536 <a href="https://www.microsoftalumni.com/our-team/"> 3537 Our Team 3538 </a> 3539 3540 3541 3542 <a href="https://www.microsoftalumni.com/faq/"> 3543 FAQ 3544 </a> 3545 3546 3547 3548 3549 3550 <a href="https://www.microsoftalumni.com/contact-us/"> 3551 Contact us 3552 </a> 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 </div> 3632 </li> 3633 3634 <div class="signin signin-1"> 3635 <a href="https://www.microsoftalumni.com/Account/Login/ExternalLogin?provider=https://msaprodb2c.b2clogin.com/tfp/90e6632d-0cbe-4082-acd9-9e47f55e70dc/b2c_1_msan_signin/v2.0/">
3636 <span>Member Sign In</span> 3637 </a> 3638 </div> 3639 3640 3641 <li class="mobile-dropdown"> 3642 <div class="about-mobile-dpdw">Events</div> 3643 <div class="about-mobile-arrow"> 3644 <img src="/RightArrowIcon" alt="arrow-icon"> 3645 </div> 3646 <div class="mobile-dropdown-content"> 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 <a href="https://www.microsoftalumni.com/all-events/"> 3700 All Events 3701 </a> 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 </div> 3754 </li> 3755 3756 </ul> 3757 <div class="alumni-logo"> 3758 <a href="/"> 3759 <img src="https://preprodmsancdn.azureedge.net/images/images/MSA30%20LOGO%20-%20whitetext%20NO%20CUTLINE.png" alt="MS-alumni-logo" /> 3760 </a> 3761 </div> 3762 </div> 3763 <div class="signin"> 3764 <div> 3765 3766 <button class="join-btn" role="link" aria-label="Open registration page" onclick="window.location.href='/registrations'">Join</button> 3767 <img src="https://preprodmsancdn.azureedge.net/images/images/profile.svg" alt="sign-in-logo" /> 3768 3769 3770 </div> 3771 </div> 3772 </div> 3773 </nav> 3774</header> 3775 3776 3777 <!-- add anti-forgery token--> 3778 <div id="antiforgerytoken" data-url="/_layout/tokenhtml"></div> 3779 3780 3781 <!-- Client Telemetry init if telemetry enabled--> 3782
3782<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/client-telemetry.bundle-d490766e4f.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/client-telemetry.bundle-d490766e4f.js" type="text/javascript"></script>
3782 3783 3784 3785 3786 <!-- Client Telemetry Wrapper init --> 3787
3787<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/client-telemetry-wrapper.bundle-633e70f51b.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/client-telemetry-wrapper.bundle-633e70f51b.js" type="text/javascript"></script>
3787 3788 3789
3789<script> 3790 window.clientLogWrapper = new ClientLogWrapper(); 3791 </script>
3791 3792
3792<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/preform.moment_2_29_4.bundle-750b699ecd.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/preform.moment_2_29_4.bundle-750b699ecd.js" type="text/javascript"></script>
3792 3793 3794 3795 3796
3796<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/pcf-dependency.bundle-805a1661b7.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/pcf-dependency.bundle-805a1661b7.js" type="text/javascript"></script>
3796 3797 3798
3798<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/pcf.bundle-60440c37cb.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/pcf.bundle-60440c37cb.js" type="text/javascript"></script>
3798 3799 3800
3800<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/pcf-extended.bundle-b0e01b5622.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/pcf-extended.bundle-b0e01b5622.js" type="text/javascript"></script>
3800 3801 3802 3803 <div id="mainContent" class="wrapper-body" role="main"> 3804
3804<script src="/apiwrapper.js"></script>
3804 3805<div class="page-copy"> 3806 <div class="xrm-editable-html xrm-attribute"><div class="xrm-attribute-value">
3806<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
3806 3807 3808
3809<script> 3810function AutoPost(ContactId,Text){ 3811 var recordObj = { 3812 "text": Text, 3813 "largetext":Text, 3814 "source": 1, 3815 "type": 3 3816 }; 3817 if(ContactId){ 3818 recordObj["[email protected]"] = "/contacts("+ContactId+")"; 3819 } 3820 webapi.safeAjax({ 3821 type: "POST", 3822 url: "/_api/posts", 3823 contentType: "application/json", 3824 data: JSON.stringify(recordObj), 3825 success: function (res, status, xhr) { 3826 } 3827 }); 3828} 3829</script>
3829 3830 3831 3832<section id="about-banner" data-aos="fade-up" data-aos-duration="1000"> 3833 <div class="about-flex contact-flex" 3834 style='background-image:url("https://preprodmsancdn.azureedge.net/podcast/BigBannnerBackgroundImg.png");'> 3835 <div class="about-banner-left contact-banner-left"> 3836 <h1 class="about-banner-title contact-banner-title" data-aos="fade-up">Contact Us</h1> 3837 <div data-aos="fade-up" data-aos-delay="400"> 3838 <p class="about-banner-desc contact-banner-desc">For general inquiries and membership questions, please email us 3839 at 3840 <a href=mailto:[email protected] aria-label="Microsoft Alumni Network email address">[email protected]</a>.</p> 3841 <p class="about-banner-desc contact-banner-desc">Mail us: PO Box 3474 Redmond, WA 98073-3474</p> 3842 <p class="about-banner-desc contact-banner-desc">Our business hours are Monday through Thursday, 9 a.m. to 5 3843 p.m. 3844 and Friday from 9 a.m. to noon. All times are U.S. Pacific.</p> 3845 </div> 3846 </div> 3847 <!-- <div class=""> 3848 <div class="arrow-down" id="arrowDown"></div> 3849 <div class="arrow-up" id="arrowUp"></div> 3850 </div> --> 3851 <div class="about-banner-right contact-us-right" data-aos="fade-up"> 3852 <img src="https://preprodmsancdn.azureedge.net/images/images/ContactUsNEW2025.jpg" alt="image" /> 3853 </div> 3854 </div> 3855</section> 3856 3857<section id="savings-know-more" data-aos="fade-up" data-aos-duration="1000"> 3858 <div class="more-details savings-more-details"> 3859 <div class="savings-more-info know-more-flex"> 3860 <div class="more-details-content savings-details-title"> 3861 <h3visual>Want to know more?</h3visual> 3862 </div> 3863 <div class="more-details-content savings-details-content"> 3864 <p>Find answers to the most frequently asked questions about membership benefits, renewing your membership, 3865 resetting your password, finding alumni in your area and more.</p> 3866 </div> 3867 <div class="benefits-btn"> 3868 <div class="savings-faq-btn"> 3869 <button class="about-contact savings-button" role="link" aria-label="Open Frequently Asked Questions page" 3870 onclick="window.location.href='/faq'">FAQ</button> 3871 </div> 3872 </div> 3873 </div> 3874 </div> 3875</section> 3876</div></div> 3877</div> 3878</div> 3879 3880 3881
3881<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/pcf-loader.bundle-f4a0e619b8.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/pcf-loader.bundle-f4a0e619b8.js" type="text/javascript"></script>
3881 3882 3883 3884 3885 3886 3887 3888 <div id="pp-native-controls-react-root"></div>
3889<script>window._nativeControlConfig = { "publicPath":"https://content.powerapps.com/resource/powerappsportal/controls", "versions": {"pcf_loader":"0.0.51","pcf_controls":"3.24.8","mf_shared":"0.2.32","host":"0.15.1","data_grid":"1.12.3","controls_fluent_v9":"0.0.54"}, "pvaEmbedded": { "defaultWidgetMode": "normal", "useCustomTypingIndicator": false, "skipSingleBotWelcomeScreen": false } }</script>
vendor: 1 bytes, line 3889
3889
3890<script defer="defer" src="https://content.powerapps.com/resource/powerappsportal/controls/host/main.3ee2491f78.chunk.js"></script>
3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903<footer role="contentinfo" class="footer"> 3904 3905 <div class="footer-info"> 3906 <div class="footer-left"> 3907 <div class="ms-alumni-logo"> 3908 <div> 3909 <img src="https://preprodmsancdn.azureedge.net/images/images/Footer%20LogoNew.png" alt="Microsoft Alumni Logo Icon"> 3910 </div> 3911 </div> 3912 <div class="social-icons"> 3913 <div class="social-flex"> 3914 <div class="social-flex-icon"> 3915 <a href="https://www.facebook.com/MicrosoftAlumni" target="_blank"> 3916 <img src="https://preprodmsancdn.azureedge.net/images/images/facebook%20(2).png" alt="facebook"> 3917 </a> 3918 </div> 3919 <div class="social-flex-icon"> 3920 <a href="https://www.instagram.com/microsoftalum" target="_blank"> 3921 <img src="https://preprodmsancdn.azureedge.net/images/images/instagram%20(2).png" alt="instagram"> 3922 </a> 3923 </div> 3924 <div class="social-flex-icon"> 3925 <a href="https://www.linkedin.com/groups/35231" target="_blank"> 3926 <img src="https://preprodmsancdn.azureedge.net/images/images/linkedin%20(1)%20(2).png" alt="linkedin"> 3927 </a> 3928 </div> 3929 <div class="social-flex-icon"> 3930 <a href="https://twitter.com/microsoftalumni" target="_blank"> 3931 <!-- img src="https://preprodmsancdn.azureedge.net/images/images/twitter.png" --> 3932 <img src="https://devmsansa.blob.core.windows.net/images/images/x-logo-twitter.png" alt="x"> 3933 </a> 3934 </div> 3935 </div> 3936 </div> 3937 </div> 3938 <div class="footer-middle"> 3939 <h3>About</h3> 3940 <ul> 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 <li><a href="https://www.microsoftalumni.com/about-us">About us</a></li> 3966 3967 3968 3969 3970 <li><a href="https://www.microsoftalumni.com/our-team">Our Team</a></li> 3971 3972 3973 3974 3975 <li><a href="https://www.microsoftalumni.com/faq">FAQ</a></li> 3976 3977 3978 3979 3980 3981 3982 3983 <li><a href="https://www.microsoftalumni.com/contact-us">Contact us</a></li> 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 </ul> 4101 </div> 4102 <div class="footer-middle"> 4103 <h3>Events</h3> 4104 <ul> 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 <li><a href="https://www.microsoftalumni.com/all-events">All Events</a></li> 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 </ul> 4209 </div> 4210 <div class="footer-right"> 4211 <h2>Need to reach Microsoft HR?</h2> 4212 <p>Here are post-employment resources which may be helpful in navigating anything you might need after leaving 4213 Microsoft.</p> 4214 <button onclick="window.location.href='https://www.microsoftalumni.com/post-employment-faq'" 4215 role="link" aria-label="Open post employment FAQ page">AskHR</button> 4216 </div> 4217 </div> 4218 4219 <div class="main-menu"> 4220 <div class="menu-left"> 4221 <ul class="main-menu-list"> 4222 <li><a href="https://www.microsoftalumni.com/terms-and-conditions">Terms & Conditions</a></li> 4223 <li><a href="https://www.microsoftalumni.com/privacy">Privacy</a></li> 4224 <li><a href="https://www.microsoftalumni.com/eligibility">Eligibility</a></li> 4225 <li><a href="https://www.microsoftalumni.com/gdprinfo">GDPR Info</a></li> 4226 <li><a href="https://www.microsoftalumni.com/cookie">Cookie List</a></li> 4227 <li><a href="https://www.microsoftalumni.com/alumncontent">AlumConnect Community Agreement</a></li> 4228 </ul> 4229 </div> 4230 </div> 4231 <div class="copy-rights"> 4232 <p><span>©</span> 2026 Microsoft Alumni Network. All Rights Reserved.</p> 4233 </div> 4234 4235 4236</footer> 4237<style> 4238 body { 4239 -moz-osx-font-smoothing: grayscale; 4240 -webkit-font-smoothing: antialiased; 4241 text-rendering: optimizeLegibility !important; 4242 } 4243 4244 h1, 4245 h2, 4246 h3, 4247 h4, 4248 h5, 4249 h6, 4250 span, 4251 div, 4252 a, 4253 strong, 4254 p, 4255 input, 4256 select, 4257 button, 4258 textarea { 4259 font-family: "Segoe UI", sans-serif; 4260 } 4261 4262 @font-face { 4263 font-family: "Segoe UI"; 4264 src: 4265 local("Segoe UI Light"), 4266 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.woff2) format("woff2"), 4267 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.woff) format("woff"), 4268 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.ttf) format("truetype"); 4269 font-weight: 100; 4270 } 4271 4272 @font-face { 4273 font-family: "Segoe UI"; 4274 src: 4275 local("Segoe UI Semilight"), 4276 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.woff2) format("woff2"), 4277 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.woff) format("woff"), 4278 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.ttf) format("truetype"); 4279 font-weight: 200; 4280 } 4281 4282 @font-face { 4283 font-family: "Segoe UI"; 4284 src: 4285 local("Segoe UI"), 4286 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.woff2) format("woff2"), 4287 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.woff) format("woff"), 4288 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.ttf) format("truetype"); 4289 font-weight: 400; 4290 } 4291 4292 @font-face { 4293 font-family: "Segoe UI"; 4294 src: 4295 local("Segoe UI Bold"), 4296 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.woff2) format("woff2"), 4297 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.woff) format("woff"), 4298 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.ttf) format("truetype"); 4299 font-weight: 600; 4300 } 4301 4302 @font-face { 4303 font-family: "Segoe UI"; 4304 src: 4305 local("Segoe UI Semibold"), 4306 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff2) format("woff2"), 4307 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff) format("woff"), 4308 url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.ttf) format("truetype"); 4309 font-weight: 700; 4310 } 4311 4312 :root { 4313 --bnr-title-font-size: 3.6458vw; 4314 --title-font-size: 2.6041vw; 4315 --title-desc-font-size: 1.6666vw; 4316 --para-font-size: 0.9375vw; 4317 --main-font-family: 'Segoe UI', sans-serif; 4318 } 4319 4320 .container-1 { 4321 display: flex; 4322 justify-content: space-between; 4323 padding: 1vw 7vw; 4324 } 4325 4326 .footer { 4327 background-color: #F4F5F3; 4328 } 4329 4330 .footer-info { 4331 display: flex; 4332 background-color: #F6F7F7; 4333 padding: 3.4895vw 4.375vw 5.7291vw 5.2083vw; 4334 } 4335 4336 .footer-left { 4337 width: 55%; 4338 } 4339 4340 .footer-middle { 4341 width: 15%; 4342 } 4343 4344 .footer-right { 4345 width: 30%; 4346 } 4347 4348 .ms-alumni-logo img { 4349 width: 17.5vw; 4350 height: 3.6630vw; 4351 object-fit: contain; 4352 } 4353 4354 .social-icons p { 4355 font-family: var(--main-font-family); 4356 font-weight: 400; 4357 font-size: 1.1458vw; 4358 margin: unset; 4359 padding: 3.7328vw 0 1.3651vw 0; 4360 } 4361 4362 .social-icons img { 4363 padding-right: 2.0833vw; 4364 object-fit: contain; 4365 } 4366 4367 .social-icons img:last-child { 4368 padding-right: unset; 4369 } 4370 4371 .social-flex { 4372 display: flex; 4373 width: 12.3958vw; 4374 justify-content: space-between; 4375 margin-top: 6.8229vw; 4376 } 4377 4378 .social-flex-icon,
4379 .social-flex-icon img { 4380 width: 1.8906vw; 4381 height: 1.8906vw; 4382 } 4383 4384 .social-flex-icon a:focus, 4385 .social-flex-icon a:focus-visible { 4386 outline-offset: 2px; 4387 } 4388 4389 .footer-middle h3 { 4390 font-family: var(--main-font-family); 4391 font-weight: bold; 4392 font-size: 1.0416vw; 4393 margin: 0.5729vw 0 1.5104vw 0; 4394 } 4395 4396 .footer-middle ul { 4397 list-style-type: none; 4398 padding: 0; 4399 margin: 0; 4400 } 4401 4402 .footer-middle ul li { 4403 padding-bottom: 1.4583vw; 4404 } 4405 4406 .footer-middle ul li:last-child { 4407 padding-bottom: unset; 4408 } 4409 4410 .footer-middle ul li a { 4411 margin: 0; 4412 font-family: var(--main-font-family); 4413 font-weight: 400; 4414 font-size: 0.9375vw; 4415 text-decoration: none; 4416 color: #121213; 4417 } 4418 4419 .footer-login .footer-middle ul li a { 4420 font-size: 0.8333vw; 4421 } 4422 4423 .footer-middle ul li a:focus, 4424 .footer-middle ul li a:focus-visible { 4425 outline: 2px solid #0b3659; 4426 outline-offset: 2px; 4427 } 4428 .footer-right h2 { 4429 margin: 0; 4430 font-family: var(--main-font-family); 4431 font-weight: 100; 4432 font-size: 1.6666vw; 4433 } 4434 4435 .footer-right p { 4436 font-family: var(--main-font-family); 4437 font-weight: 400; 4438 font-size: 0.9375vw; 4439 line-height: 1.4583vw; 4440 margin: 0.5208vw 0 2.9687vw 0; 4441 } 4442 4443 .footer-right button { 4444 font-family: var(--main-font-family); 4445 font-weight: bold; 4446 font-size: 0.9375vw; 4447 background-color: var(--act-btn-bkgnd-color); 4448 color: #fff; 4449 padding: 0.7291vw 2.4479vw; 4450 border: 1px solid var(--act-btn-border-color); 4451 cursor: pointer; 4452 } 4453 4454 .footer-right button:focus, 4455 .footer-right button:focus-visible { 4456 outline: 3px solid var(--act-btn-border-color); 4457 outline-offset: 2px; 4458 } 4459 4460 .main-menu { 4461 display: flex;
4462 align-items: center; 4463 padding: 0.5208vw 5.2083vw 0.5208vw 3.6458vw; 4464 background-color: #737373; 4465 } 4466 4467 .menu-right button { 4468 padding: 0.6770vw 1.5625vw; 4469 font-size: 0.9375vw; 4470 background-color: #1C2D43; 4471 color: #fff; 4472 border: 1px solid #fff; 4473 font-family: var(--main-font-family); 4474 } 4475 4476 .main-menu-list { 4477 display: flex; 4478 list-style-type: none; 4479 padding: unset; 4480 align-items: center; 4481 margin: unset; 4482 } 4483 4484 .main-menu-list li { 4485 margin: 0; 4486 display: inline-block; 4487 font-weight: 400; 4488 border-right: 1px solid #fff; 4489 padding: 0.4583vw 1.5625vw 0.6145vw 1.5625vw; 4490 } 4491 4492 .main-menu-list a { 4493 cursor: pointer; 4494 color: #fff; 4495 font-size: 0.7291vw; 4496 font-family: var(--main-font-family); 4497 text-decoration: none !important; 4498 /* padding: 0.4583vw 1.5625vw 0.6145vw 1.5625vw; */ 4499 } 4500 4501 .main-menu-list a:focus, 4502 .main-menu-list a:focus-visible { 4503 outline: 2px solid #fff; 4504 outline-offset: 2px; 4505 } 4506 4507 .main-menu-list>li:last-child { 4508 border: none; 4509 } 4510 4511 .copy-rights { 4512 padding: 1.0416vw 5.2083vw; 4513 background-color: #F6F7F7; 4514 font-size: 0.7291vw; 4515 font-weight: 400; 4516 font-family: var(--main-font-family); 4517 } 4518 4519 .copy-rights p { 4520 margin: 0; 4521 font-family: var(--main-font-family); 4522 font-weight: 400; 4523 font-size: 0.7291vw; 4524 } 4525 4526 .footer-login { 4527 display: flex; 4528 padding: 4.0625vw 5.2083vw 3.5937vw; 4529 } 4530 4531 .footer-login-logo { 4532 padding: 3.3854vw 0 0 5.2083vw; 4533 } 4534 4535 @media(max-width:991px) { 4536 .footer-info { 4537 display: block; 4538 padding: 32px 20px 70px; 4539 } 4540 4541 .ms-alumni-logo img { 4542 width: 224px; 4543 height: 47px; 4544 } 4545 4546 .footer-left, 4547 .footer-middle, 4548 .footer-right { 4549 width: 100%; 4550 } 4551 4552 .footer-middle-login { 4553 width: 47%; 4554 margin-right: 10px; 4555 } 4556 4557 .social-flex { 4558 width: 35%; 4559 margin-top: 36px; 4560 } 4561 4562 .social-flex-resp { 4563 width: 35%; 4564 margin-top: 75px; 4565 } 4566 4567 .social-flex-icon, 4568 .social-flex-icon img { 4569 width: 44px; 4570 height: 44px; 4571 } 4572 4573 .footer-middle h3 { 4574 font-size: 20px; 4575 margin: 60px 0 29px; 4576 } 4577 4578 .footer-middle ul li a, 4579 .footer-login .footer-middle ul li a { 4580 font-size: 18px; 4581 } 4582 4583 .footer-middle ul li { 4584 padding-bottom: 28px; 4585 } 4586 4587 .footer-right { 4588 padding-top: 74px; 4589 } 4590 4591 .footer-right h2 { 4592 font-size: 24px; 4593 } 4594 4595 .footer-right p { 4596 font-size: 14px; 4597 line-height: 20px; 4598 margin-bottom: 40px; 4599 } 4600 4601 .footer-right button { 4602 font-size: 16px; 4603 padding: 12px 44px; 4604 } 4605 4606 .main-menu, 4607 .main-menu-list, 4608 .main-menu-list li { 4609 display: block; 4610 } 4611 4612 .main-menu-list li { 4613 border-right: none; 4614 padding: 0 0 10px 0; 4615 } 4616 4617 .main-menu-list a, 4618 .copy-rights p { 4619 font-size: 12px; 4620 } 4621 4622 .main-menu { 4623 padding: 12px 0 6px 20px; 4624 } 4625 4626 .copy-rights { 4627 padding: 10px 20px; 4628 } 4629 4630 .footer-login { 4631 flex-wrap: wrap; 4632 padding: 0 20px 75px; 4633 } 4634 4635 .footer-login-logo { 4636 padding: 30px 0 0 20px; 4637 } 4638 } 4639 4640 @media(max-width:768px) { 4641 4642 .social-flex-resp, 4643 .social-flex { 4644 width: 50%; 4645 } 4646 } 4647 4648 4649 @media(max-width:576px) { 4650 .footer-middle-login { 4651 width: 100%; 4652 margin-right: unset; 4653 } 4654 4655 .social-flex-resp, 4656 .social-flex { 4657 width: 78%; 4658 } 4659 } 4660</style>
4661<script type="text/javascript"> 4662 window.onload = function () { 4663 if (window.navigator.language == "fr") { 4664 var accessibilityText = "Accessibilité : partiellement conforme"; 4665 var accessibilityHref = "https://go.microsoft.com/fwlink/?linkid=2163806"; 4666 var frenchLink = document.getElementById("frenchAccesssibleLink"); 4667 if (frenchLink != null) { 4668 frenchLink.innerHTML = accessibilityText; 4669 frenchLink.setAttribute("href", accessibilityHref); 4670 frenchLink.setAttribute("title", accessibilityText); 4671 } 4672 } 4673 }; 4674</script>
4674 4675<!-- Google tag (gtag.js) -->
vendor: 65 bytes, lines 4675-4676
4675 4676<script async src="https://www.googletagmanager.com/gtag/js?id=
4676G-3364Z875TZ
vendor: 13 bytes, line 4676
4676"></script>
4677<script> 4678
vendor: 138 bytes, lines 4678-4682
4678window.dataLayer = window.dataLayer || []; 4679 function gtag(){dataLayer.push(arguments);} 4680 gtag('js', new Date()); 4681 4682 gtag('config', '
4682G-3364Z875TZ
vendor: 5 bytes, line 4682
4682');
4683</script>
4683 4684 4685 4686 4687
4687<script type="text/javascript"> 4688 4689 function trackCopilotCustomUsage(botSchema) { 4690 const request = { 4691 botSchemaName: botSchema 4692 } 4693 var json = JSON.stringify(request); 4694 shell.ajaxSafePost({ 4695 type: "POST", 4696 contentType: "application/json", 4697 url: "/_services/copilot/TrackUsage", 4698 data: json 4699 }).done(function () { 4700 }).fail(function (jqXhr) { 4701 }); 4702 } 4703 4704 function findAndLogCustomCopilotUsage() { 4705 const pageSource = document.documentElement.outerHTML; 4706 const customPvaBotWebchatRegex = /api\.(preprod\.|test\.)?powerplatform\.(com|us|cn|appsplatform\.us)\/powervirtualagents\/botsbyschema\/([^/]+)\/directline\/token/; 4707 const customPvaBotIframeRegex = /powerva\.microsoft\.com\/environments\/([0-9a-fA-F\-]+)\/bots\/([^/]+)\/webchat/; 4708 const omniChannelRegex = /livechatwidget\/scripts\/LiveChatBootstrapper\.js/; 4709 4710 const matchPvaBotWebchat = pageSource.match(customPvaBotWebchatRegex); 4711 if (matchPvaBotWebchat && matchPvaBotWebchat[3]) { 4712 trackCopilotCustomUsage(matchPvaBotWebchat[3]); 4713 } 4714 4715 const matchPvaBotIframe = pageSource.match(customPvaBotIframeRegex); 4716 if (matchPvaBotIframe && matchPvaBotIframe[2]) { 4717 trackCopilotCustomUsage(matchPvaBotIframe[2]); 4718 } 4719 4720 const matchOmniChannel = pageSource.match(omniChannelRegex); 4721 if (matchOmniChannel && matchOmniChannel[0]) { 4722 trackCopilotCustomUsage("omnichannelWidget"); 4723 } 4724 } 4725 4726 window.addEventListener("load", function () { 4727 findAndLogCustomCopilotUsage(); 4728 }); 4729 </script>
4729 4730 4731 4732 4733 4734 4735 4736 4737
4737<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/bootstrap.bundle-105a4995b8.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/bootstrap.bundle-105a4995b8.js" type="text/javascript"></script>
4737 4738 4739
4739<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/postpreform.bundle-4687dda8df.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/postpreform.bundle-4687dda8df.js" type="text/javascript"></script>
4739 4740 4741
4741<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/app.bundle-1e948af604.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/app.bundle-1e948af604.js" type="text/javascript"></script>
4741 4742 4743
4743<script onerror="javascript: var target = event.target; var script = document.createElement('script'); script.crossOrigin = target.crossOrigin; script.src = '/dist/default-1033.moment_2_29_4.bundle-eda4e638fd.js'; script.type = 'text/javascript'; target.insertAdjacentElement('afterend',script);" src="https://content.powerapps.com/resource/powerappsportal/dist/default-1033.moment_2_29_4.bundle-eda4e638fd.js" type="text/javascript"></script>
4743 4744 4745 4746 4747 4748
4748<script type="text/javascript">// window.addEventListener("scroll", function () { 4749// const arrowDown = document.getElementById("arrowDown"); 4750// const arrowUp = document.getElementById("arrowUp"); 4751// if (window.pageYOffset <= 200) { 4752// arrowUp.style.display = "none"; 4753// arrowDown.style.display = "block"; 4754// } else if (window.pageYOffset >= 201) { 4755// arrowDown.style.display = "none"; 4756// arrowUp.style.display = "block"; 4757// } 4758// }); 4759 4760 var fname; 4761 var lname; 4762 var email; 4763 4764 // Inline validation messages - hidden by default 4765 // Uncomment the show/hide lines in each validator below to re-enable inline messages 4766 document.getElementById("fnamemessage").style.display = "none"; 4767 document.getElementById("lnamemessage").style.display = "none"; 4768 document.getElementById("emailmessage").style.display = "none"; 4769 document.getElementById("querymessage").style.display = "none"; 4770 document.getElementById("messagemessage").style.display = "none"; 4771 4772 function validatefname() { 4773 var regName = /^[a-zA-ZÃ-ÃÃ-öø-ÿ' -]+$/; 4774 var fname = document.getElementById('fname').value; 4775 4776 if (!regName.test(fname)) { 4777 // document.getElementById("fnamemessage").style.display = "block"; 4778 return false; 4779 } 4780 else { 4781 // document.getElementById("fnamemessage").style.display = "none"; 4782 return true; 4783 } 4784 } 4785 4786 function validatelname() { 4787 var regName = /^[a-zA-ZÃ-ÃÃ-öø-ÿ' -]+$/; 4788 var lname = document.getElementById('lname').value; 4789 4790 if (!regName.test(lname)) { 4791 // document.getElementById("lnamemessage").style.display = "block"; 4792 return false; 4793 } 4794 else { 4795 // document.getElementById("lnamemessage").style.display = "none"; 4796 return true; 4797 } 4798 } 4799 4800 function ValidateEmail() { 4801 var regName = /^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/; 4802 var email = (document.getElementById("email").value); 4803 4804 if (!regName.test(email)) { 4805 // document.getElementById("emailmessage").style.display = "block"; 4806 return false; 4807 } 4808 else { 4809 // document.getElementById("emailmessage").style.display = "none"; 4810 return true; 4811 } 4812 } 4813 4814 function validatequery() { 4815 var query = document.getElementById("query").value; 4816 4817 if (query == "") { 4818 // document.getElementById("querymessage").style.display = "block"; 4819 return false; 4820 } 4821 else { 4822 // document.getElementById("querymessage").style.display = "none"; 4823 return true; 4824 } 4825 } 4826 4827 function validatemessage() { 4828 var msg = document.getElementById("message-text").value; 4829 4830 if (msg.trim() == "") { 4831 // document.getElementById("messagemessage").style.display = "block"; 4832 return false; 4833 } 4834 else { 4835 // document.getElementById("messagemessage").style.display = "none"; 4836 return true; 4837 } 4838 } 4839 4840 function setSubmitting(isSubmitting) { 4841 var btn = document.getElementById("btnsave"); 4842 if (isSubmitting) { 4843 btn.disabled = true; 4844 btn.textContent = "Sending..."; 4845 btn.classList.add("btn-submitting"); 4846 } 4847 else { 4848 btn.disabled = false; 4849 btn.textContent = "Send"; 4850 btn.classList.remove("btn-submitting"); 4851 } 4852 } 4853 4854 function create() { 4855 var missing = []; 4856 if (!validatefname()) missing.push("First name"); 4857 if (!validatelname()) missing.push("Last name"); 4858 if (!ValidateEmail()) missing.push("Email"); 4859 if (!validatequery()) missing.push("Question topic"); 4860 if (!validatemessage()) missing.push("Message"); 4861 4862 if (missing.length > 0) { 4863 alert("Please complete the following fields: " + missing.join(", ")); 4864 return; 4865 } 4866 4867 var fname = (document.getElementById("fname").value); 4868 var lname = (document.getElementById("lname").value); 4869 var msg = (document.getElementById("message-text").value); 4870 var email = (document.getElementById("email").value); 4871 var query = (document.getElementById("query").value); 4872 4873 setSubmitting(true); 4874 4875 var recordObj = { 4876 "crdb5_name": fname, 4877 "crdb5_lastname": lname, 4878 "crdb5_email": email, 4879 "crdb5_message": msg, 4880 "crdb5_queryregarding": query 4881 }; 4882 webapi.safeAjax({ 4883 type: "POST", 4884 url: "/_api/crdb5_contactusblforms", 4885 contentType: "application/json",
4886 data: JSON.stringify(recordObj), 4887 success: function () { 4888 setSubmitting(false); 4889 var PortalUserGuid = ''; 4890 var Pagename = 'Contact us'; 4891 if (PortalUserGuid != '' || PortalUserGuid != null) { 4892 var Text = "This request has been submitted from " + Pagename + "."; 4893 AutoPost(PortalUserGuid, Text) 4894 } 4895 document.getElementById("notificationpopupkey1").style.display = "block"; 4896 }, 4897 error: function (xhr, status, error) { 4898 setSubmitting(false); 4899 alert("Something went wrong. Please try again later."); 4900 console.error("Contact form submission failed:", status, error); 4901 } 4902 }); 4903 } 4904 4905 function hidenotificationpopupkey() { 4906 document.getElementById("notificationpopupkey1").style.display = "none"; 4907 window.location.reload(); 4908 }</script>
4908 4909 <!-- Google tag (gtag.js) -->
vendor: 65 bytes, lines 4909-4910
4909 4910<script async src="https://www.googletagmanager.com/gtag/js?id=
4910UA-292354471-1
vendor: 13 bytes, line 4910
4910"></script>
4911<script> 4912
vendor: 138 bytes, lines 4912-4916
4912window.dataLayer = window.dataLayer || []; 4913 function gtag(){dataLayer.push(arguments);} 4914 gtag('js', new Date()); 4915 4916 gtag('config', '
4916UA-292354471-1
vendor: 5 bytes, line 4916
4916');
4917</script>
4917 4918 4919
4919<script> 4920 //this event will update the title of the page based on active breadcrumb 4921 $('.breadcrumb').ready(function () { 4922 if ($('.breadcrumb').is(':visible')) { 4923 document.querySelector('title').innerHTML = ($('.breadcrumb > li.active').text() + "· MSA"); 4924 } 4925 }); 4926 4927 function GoToNewEditor() { 4928 var editCmsUrlSegment = "EditInCms"; 4929 var currentUrl = window.location.href; 4930 if (currentUrl.indexOf('?') > -1) { 4931 var urlSegments = currentUrl.split("?"); 4932 window.location.href = window.location.origin + '/' + editCmsUrlSegment + window.location.pathname + '?' + urlSegments[1]; 4933 } 4934 else { 4935 window.location.href = window.location.origin + '/' + editCmsUrlSegment + window.location.pathname; 4936 } 4937 } 4938 </script>
4938 4939 4940 4941 4942 4943 4944
4944<script> 4945 if ('serviceWorker' in navigator) { 4946 navigator.serviceWorker.getRegistrations().then(function (registrations) { 4947 for (let registration of registrations) { 4948 registration.unregister(); 4949 } 4950 }).catch(function (err) { 4951 console.log('Service Worker unregister action failed: ', err); 4952 }); 4953 } 4954 </script>
4954 4955 4956 4957 4958 <!--Start Show Session Expire Warning Popup here --> 4959 4960 4961</body> 4962</html> 4963<!-- Generated at 10/2/2026 2:30:04 PM --> 4964<!-- Page OK -->
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.