html {
    scroll-behavior: smooth
}

body {
    font-family: karlaregular
}

div,
p,
section,
article,
aside,
header,
footer {
    border-width: 0;
    border-style: solid;
}

form.lead-gen-form,
div.cta p {
    font-family: "karlaregular", sans-serif;
    font-size: 1rem;
}

div.cta p {
    font-size: 1.125rem;
}

form.lead-gen-form input:focus {
    outline-color: #187ABA;
    outline-width: 2px;
    outline-style: solid;
}

.gloriola_semibold {
    font-family: "ms_gloriola_ii_std_semibold", sans-serif;
}

h2 {
    margin: 0;
    padding: 0;
    font-size: 40px;
    color: #333330;
    letter-spacing: -1.45px;
    line-height: 44px;
    font-family: "ms_gloriola_ii_std_semibold", sans-serif;
    font-weight: 700;
    text-transform: none;
}

a {
    text-decoration: none;
}

/* Cis ADDED AEM HACKS 9/24/21 - TBD CHANGES BY CLIENT */

@media only screen and (max-width: 767px) {
    .cmp-practicecard__link {
        display: inline-block;
    }

    h2:not(.msaw-layered-h2) {
        line-height: 33px !important;
    }

    .cmp-detailshero .shortTitle {
        grid-column: 2 / span 22 !important;
    }

    .msaw-inline-form-msg {
        margin-right: 1.5rem;
        margin-left: 1.5rem;
    }

    .msaw-layered-h2 {
        line-height: 40px !important;
    }
}

#msaw-retirement-list,
#msaw-retirement-list li {
    list-style-type: disc !important;
}

/* END Cis ADDED */
.header-ms-text-logo {
    align-items: flex-end;
}

#msaw-overlay {
    background-color: rgba(0, 0, 0, 0.15);
}

#msaw-nav nav a {
    text-decoration: none;
    color: #000;
}

#msaw-nav .nav-item {
    margin-bottom: 27px;
    /* align to subnav headers */
}

#msaw-nav nav .subnav-link {
    padding-bottom: 1.25rem;
    border-bottom: 7px solid transparent;
    cursor: pointer;
    font-family: karlabold;
}

#msaw-nav nav .subnav-link:not(:last-child):hover {
    border-bottom: 7px solid #187ABA;
}

button:hover {

    color: #fff;

    background: #187ABA;

}



/* top nav */

.msaw-subnav__links,
.msaw-subnav__insights {

    width: 350px;

    min-height: 592px;

}



div.msaw-subnav__links a {

    color: #fff;

    font-size: 1.125rem;

    font-family: "Karlabold", sans-serif;

    letter-spacing: -.95px;

    line-height: 1.5rem;

}



div.msaw-subnav__links a:hover {

    text-decoration: underline;

    text-decoration-skip-ink: auto;

}





.msaw-subnav__insights a {

    font-family: "ms_gloriola_ii_std_semibold";

}



div.msaw-subnav__desc {

    font-size: 1.875rem;

    font-family: "ms_gloriola_ii_stdlight";



}





p.msaw-subnav__desc_title {

    font-family: "karlabold", sans-serif;

    font-size: 20px;

    color: #333330;

    letter-spacing: -0.67px;

    line-height: 24px;

    margin: 30px 0 20px 0;



}





p.msaw-subnav__desc {

    font-size: 1rem;

}





.msaw-subnav__eyebrow {

    color: #4c4c4c;

    font-family: "karlaregular", sans-serif;

    font-size: 16px;

    letter-spacing: -0.67px;

    line-height: 24px;

    margin: 40px 40px 28px 40px;

    padding-bottom: 20px;









}



a.msaw-subnav__social {

    font-size: 1rem;

    font-weight: 400;

}



.msaw-logo {

    width: 130px;

    height: auto;

}



a.ms-text-logo {

    font-size: .825rem;

}



/*For Smooth Scroll to land above inline-form on all pages*/

.msaw-inline-form-scroll {

    display: block;

    height: 92px;

    margin-top: -92px;

}



@media only screen and (min-width: 1014px) {

    .msaw-footer-hidden-desktop {
        display: none;
    }

}



@media only screen and (max-width: 1013px) {

    .msaw-footer-hidden-desktop {
        display: block
    }

    .msaw-footer-hidden-mobile {
        display: none;
    }

}

@media (min-width: 1280px) {

    .msaw-logo {

        width: 184px;

        height: auto;

    }

}

/* mobile nav */

.mobile-nav a:not(.mobile-nav__header) {

    color: #000;

    font-family: karlabold;

}

.mobile-nav__header {

    font-size: 22px;

    font-family: "ms_gloriola_ii_std_semibold";

    color: #000;

}

.mobile-nav-back {}

.mobile-contact-us-btn i {

    pointer-events: none;

}

.mobile-contact-us-btn:hover {

    background: none;

    color: #000;

}

.mobile-contact-us-btn:focus {

    outline: 2px solid #0a6f7a;

}

.mobile-nav-back:hover,
#msaw-header__hamburger:hover,
.mobile-contact-us-btn:hover i {

    background: none;

    color: #000;

}

.mobile-nav-back:focus,
#msaw-header__hamburger:focus {

    outline: 1px solid #0a6f7a;



}



#search-icon,
#hamburger-icon {

    min-width: 20px;

}



/* hide AEM built-in nav function */

#toggleNav {

    display: block;

}



/* Tailwind goes to 8, we need 10 */

.border-l-10 {

    border-left-width: 10px;

}



.border-aqua {

    border-color: #6FC8Cb;

}



label.error {

    display: none !important;

    height: 0;

    width: 0;

    overflow: hidden;

}



.msaw-stats h3 {

    font-family: "ms_gloriola_ii_std_semibold", sans-serif;

    font-size: 4.375rem;

    margin: 0;

    padding: 0;

}



.msaw-footer a,
.msaw-footer-copyright {

    color: #808080;

}



/*HIJACKS VIDEO SECTIONS*/

.cmp-inlinevideo__contentText>.inlinevideo-sourcetext,
.cmp-inlinevideo__duration {

    display: none !important;

}



/*HIJACKS HEROES AND QUOTES SECTIONS*/

.cmp-text>.link--learnmore,
.cmp-detailshero .detailsherocontent .detailsherodescription {

    white-space: pre-line;

}



/*HIJACK AEM WHEN USING CONTAINER WITH NO BORDER - ESSENTIAL TO ADD PADDING*/

.r4-left-vertical-color-bar__berry {

    border-left: 10px solid white;

}



/*HIJACK AEM DEACTIVATING HREF ON EYEBROW*/

.shortTitle__parent_eyebrow {

    pointer-events: none;

    cursor: default;

}



.cmp-detailshero .shortTitle {

    cursor: text;

}



/* HIJACK AEM RESPONSIVE TEMPORARILY */



.rawhtml.aem-GridColumn {

    padding: 0;

}



.cmp-practicecard__link {

    cursor: default
}



.cmp-practicecard__link:hover .cmp-practicecard__title {

    text-decoration: none;

}



select#state optgroup.group-provinces {

    display: none;

}

select#state optgroup.group-states {

    display: block;

}



select#state.canada optgroup.group-provinces {

    display: block;

}

select#state.canada optgroup.group-states {

    display: none;

}







form.lead-gen-form div input {

    border: 2px solid rgba(0, 0, 0, 0);

}







form.lead-gen-form div input:focus+label,
input+label.show {

    left: 2px;

}



div.label-floating {

    min-height: 52px;





}





.label-floating input,
.label-floating label,
.label-floating textarea,
.label-floating select {

    padding-top: 1rem;

    top: 0px;

    left: 0;

    height: 100%;

}



.label-floating input:not(:placeholder-shown),
.label-floating textarea:not(:placeholder-shown),
.label-floating select:not(:placeholder-shown) {

    padding-top: 1rem;

    transition: all 0.2s ease-in-out;

    outline-color: #187ABA;





}

.label-floating input:not(:placeholder-shown)~label,
.label-floating textarea:not(:placeholder-shown)~label,
.label-floating select.selected~label {

    padding-top: 2px;

    font-size: 0.7rem;

    transition: all 0.2s ease-in-out;

    left: 2px;

    transition-delay: 0;





    color: gray;



}





.label-floating input:not(:-ms-input-placeholder),
.label-floating textarea:not(:-ms-input-placeholder),
.label-floating select:not(:-ms-input-placeholder) {

    padding-top: 1rem;

    transition: all 0.2s ease-in-out;





}

.label-floating input:not(:-ms-input-placeholder)~label,
.label-floating textarea:not(:-ms-input-placeholder)~label,
.label-floating select.selected~label {

    padding-top: 2px;

    font-size: 0.7rem;

    transition: all 0.2s ease-in-out;

    left: 2px;

    transition-delay: 0;





    color: gray;



}





.label-floating select~label,
.label-floating input~label {

    pointer-events: none;

}





form.lead-gen-form div.label-floating.error input,
form.lead-gen-form div.label-floating.error select {

    border: 2px solid red;

    outline: 0;

    max-height: 52px;

}





/** INTERNET EXPLORER 11 OVERRIDES  **/





@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {



    div.label-floating {

        border-color: rgb(215, 215, 215);

    }



    .label-floating input,
    .label-floating label,
    .label-floating textarea,
    .label-floating select {

        height: calc(100% - 1px);

        width: calc(100% - 1px);

        position: absolute;
        ;

    }



    #msaw-solutions,
    #msaw-contact {

        height: auto !important;

    }



    .msaw-subnav__links,
    .msaw-subnav__insights,
    .insights-mode div.flex .insights-box {

        width: 300px !important;

        min-width: 300px !important;

        height: auto !important;

    }





    #msaw-solutions div.flex .msaw-subnav__links div.contact {

        width: 60px !important;



    }



    #msaw-solutions div.flex p.msaw-subnav__desc {

        font-size: 1.25rem;

        line-height: 120%;



    }





    input {

        background: #fff;

    }



    input label.error {

        display: none;

    }



    .focus-only:focus {

        outline: 2px solid black;

    }



    .focus-visible-only:focus-visible {}



    a:focus,
    button:focus,
    input:focus,
    select:focus,
    input[type=text]:focus,
    input[type=checkbox]:focus {

        outline: 0;

        border: 1px solid #187ABA;



    }



    select:focus::-ms-value {

        color: #fff;

        background: #187ABA;

    }







}











/** CUSTOM CHECK BOX **/







.control input {

    position: absolute;

    z-index: -1;

    opacity: 0;

}







.control__indicator {

    position: absolute !important;

    top: 4px;

    left: 0;

    height: 16px;

    width: 16px;

    background: #e6e6e6;

}





.control input:checked~.control__indicator {

    background: #187ABA;

    border: 1px solid #0a6f7a;



}



input#defaultCheck:focus {

    position: absolute;

    width: 16px;

    height: 16px;

    z-index: 1;

    opacity: 1;

    outline: 1px solid #0a6f7a;

}



.control:hover input:not([disabled]):checked~.control__indicator,

.control input:checked:focus~.control__indicator {

    background: #0e647d;

    cursor: pointer;

}

.control input:disabled~.control__indicator {

    background: #e6e6e6;

    opacity: 0;

    pointer-events: none;

}



.control__indicator {

    background: #fff;

    /*

    border: 1px solid #0a6f7a;

    */

    border-radius: 2px;





}

.control__indicator:after {

    content: '';

    position: absolute;

    display: none;

}

.control input:checked~.control__indicator:after {

    display: block;

}

.control--checkbox .control__indicator:after {

    position: absolute;

    top: 0;

    left: 1px;

    width: 100%;

    height: 100%;

    color: #fff;

    content: '\00a0';

    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA1klEQVQ4jcWSvQ4BURBGv7UiUW+h0mq8gFaj0ihEolbpiF4n0agVEo+g1ml4FYSWxs9RuMtYu8mqfMk2e+ecuXcy0r/jSRLwC9OQdJe09jzvqFCQ8qsCd54ZS1Lmh84FSTN3ayT5r5OU3Re8MwYKUUEeCBLgpoGXQO5jbkAdWAEHoBaBS8DewWegHJ5ZwQi4uKIb0HJFPrAx3XtWbgUBMDCFJ6ACdMy/efRpcUPsG2DnngSwBYppBAKGfKcdM9hEgYCugUdxcCjIJizNVNLVLc8k1Zr9LQ+meq0ClmWiVQAAAABJRU5ErkJggg==');

    background-size: 12px;

    background-repeat: no-repeat;



}













input#defaultCheck {

    min-width: 16px;

    min-height: 16px;

    border: 1px solid #000;

    top: 3px;

    left: -20px;

}



.control--checkbox span {

    position: relative;

    margin-left: 28px;

}







.control--checkbox input:disabled~.control__indicator:after {

    border-color: #7b7b7b;

}



/** CONSISTENT SELECT DOWN-ARROW FOR SELECT FIELDS  **/





select {



    -webkit-appearance: none;

    -moz-appearance: none;

    appearance: none;

    background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAQCAYAAAAI0W+oAAABjUlEQVQ4jb3Tv2tVMRjG8U8tHepQQbo5ODiIg1BwKIj1F9whEBVDi6Li6CCIf4KTk86iq4MgyFHwlAMiVUEXO9pFqJuI4OTiUJB2OGlJj733thb6TOFJ3uebvEnYI42sD6q6OYEHuJZi+Lmb0KpujuM5rqQYvsC+PDGNBZzDx6puDu8CMo33OIaFDG1BeISJPD6CT1XdHP0PyBm8wcFsTeJpCbqEb0XNIe3JpnYA6aEpNixnzm2AUgzfcRpLxaJJfKjq5uQ2IBcxj/HC/oqzKYbl8kRSDD9wvgObwNu8236Q66gwVthLmMkHsAmUYb8ybLGwxzFf1c3lLSC3tHcwWtifcSpnbWgTqID1csG6xvCiqpubBeQunnQy3qGXYvjdzR3pGkXQAbzGTGfqjral9zt+g9kUw5+t8vqCMmw/au3/GqSXuJpiWOm34J/Wlcq7i9q/0U/PMDcIMhRUwC5o29jVY9xIMfwdljMUlGErmMWrwn6I2ymG1e1kDLyjrqq6GdU+5+UUw72d1O6Z1gCxgXpEbESW3QAAAABJRU5ErkJggg==') 98% /12px no-repeat #eee;

    background-color: #fff;

}





/* END DOWN ARROW FOR SELECT FIELDS  */





/* AUTO FILL BACKGROUND COLOR */



input:-webkit-autofill,

input:-internal-autofill-selected,

input:-webkit-autofill:hover,

input:-webkit-autofill:focus,

textarea:-webkit-autofill,

textarea:-webkit-autofill:hover,

textarea:-webkit-autofill:focus,

select:-webkit-autofill,

select:-webkit-autofill:hover,

select:-webkit-autofill:focus {



    -webkit-text-fill-color: #4c4c4c;

    -webkit-box-shadow: 0 0 0px 1000px #fff inset;

    transition: background-color 1s ease-in-out 0s;



}



/* END AUTOFILL BACKGROUND COLOR */





/* CAUTION: IE hackery ahead */

select::-ms-expand {

    display: none;
    /* remove default arrow on ie10 and ie11 */

}





/**NAV UPDATES 092721**/







.contact-us-btn:focus,
#subnav-search:focus,
button#submit:focus,
button.cursor-pointer.close:focus {

    outline: 1px solid #187ABA;



}







@media (min-width: 1280px) {

    #subnav-search i.fa-search {

        font-size: 1.375rem;

        border-bottom: 7px solid rgba(255, 255, 255, 0);

        padding-bottom: 27px;

        position: absolute;

        top: 0;

        left: 0;

    }



    #subnav-search {

        position: relative;

        left: 10px;

        margin-bottom: 27px;

        padding-bottom: 1.25rem;



    }







}









#subnav-search:hover i.fa-search {

    color: #000;

    border-bottom: 7px solid #187ABA;

}





#msaw-search input.search-placeholder {

    font-size: 30px;

}



button.search-submit {

    font-size: 1.125rem;

    width: 56px;

    height: 56px;

}



button.search-submit:hover {

    color: #136194;

}



button.search-submit:focus {

    outline: 2px solid #187ABA;

}



button.cursor-pointer.close {

    position: absolute;

    top: 40px;

    right: 70px;

}



button.cursor-pointer.x-btn {

    top: 40px;

    right: 70px;

    width: 52px;

    height: 52px;

    display: inline;

    ;



}



button.cursor-pointer.x-btn:focus {

    outline: 1px solid #187ABA;





}

button.cursor-pointer.x-btn img {

    width: 40px;

    height: 40px;

    padding: 12px;





}



button.cursor-pointer:hover {

    background: none;

}





.cursor-pointer svg,
img.cursor-pointer {

    width: 40px;

    height: 40px;

    padding: 12px;

}







.insights-box {

    position: relative;
    ;

    display: flex;

    background: skyblue;



}



.insights-box-content {

    position: relative;

    color: #fff;
    ;

    margin-top: 72px;

    margin-left: 3rem;

    font-weight: bold;
    ;



    display: none;

    flex-direction: column;
    ;

}



.insights-box-content .insights-box-header {

    position: relative;
    ;

    margin: 1rem 0;

    padding-top: 6px;

    border-top: 1px solid #7f7f7f;

    font-size: .85rem;

    max-width: 150px;

    letter-spacing: 2px;

}



.insights-box-content ul {

    position: relative;

    top: 1rem;

}



.insights-box-content li {

    position: relative;

    display: flex;

    align-items: flex-start;
    ;

    margin-bottom: 2rem;



}





div.insights-box-content ul li a {

    text-decoration: none;

    color: #fff;

    letter-spacing: .56px;

    font-size: 1rem;

    line-height: 1.125rem;

    margin: 10px 0;





}

div.insights-box-content ul li a:hover {

    text-decoration: underline;

}





.insights-box-content li a:first-child {

    position: relative;

    margin-right: 1rem;

}



#msaw-solutions,
#msaw-contact {

    min-height: 592px;

}

#msaw-solutions {

    background: #F7F7F7;

}



#msaw-solutions div.flex {}



#msaw-solutions div.flex .msaw-subnav__links div.contact {

    margin: 0 0 0 40px;

    border-color: rgb(70, 148, 199);

    width: 310px;

    position: absolute;

    bottom: 30px;







}

#msaw-solutions div.flex div.contact p,
#msaw-solutions div.flex div.contact a {

    font-weight: bold;

    margin: 0;

    letter-spacing: 0;

    color: #fff !important;

}





#msaw-solutions div.flex .msaw-subnav__links .msaw-overlay-links {

    margin-top: 20px;

}



#msaw-solutions div.flex .msaw-subnav__links .msaw-overlay-links.links-solutions {

    display: flex;

    text-align: left;

}



#msaw-solutions div.flex .msaw-subnav__links .msaw-overlay-links.links-solutions a.bg-bluedark {}





#msaw-solutions div.flex .msaw-subnav__desc {

    text-align: left;

    font-size: 1.875rem;

    line-height: 2.125rem;

}





#msaw-solutions div.flex .msaw-subnav__links .msaw-overlay-links.links-insights {

    display: none;

}





#msaw-solutions.insights-mode div.flex .msaw-subnav__links .msaw-overlay-links.links-solutions {

    display: none;

}



#msaw-solutions.insights-mode div.flex .msaw-subnav__links .msaw-overlay-links.links-insights {

    display: flex;

}













#msaw-solutions.insights-mode div.flex .insights-box {



    min-width: 350px;

    background: #333;

}



#msaw-solutions.insights-mode div.flex .insights-box .insights-box-content {

    display: flex;

}







#msaw-solutions.insights-mode div.flex .insights-box button.cursor-pointer path {

    fill: #fff;



}







a.linkedin-logo-link {

    display: flex;

    justify-content: center;

}



a.linkedin-logo-link span {

    display: flex;

    align-items: center;

    font-size: 1.125rem;

    color: #999999;

}

a.linkedin-logo-link span img {

    width: 118px;

}