/*from rte-shared-2023*/
:root {
    /*NOSONAR
    Can't use custom properties in media queries, but keeping for reference of breakpoints
    --media-sm-max: 767.99px;
    --media-md-min: 768px;
    --media-md-max: 991.99px;
    --media-lg-min: 992px;
    --media-lg-max: 1399.99px;
    --media-xl-min: 1400px;
    --media-special-max: 1439.99px;
    --media-special-min: 1440px;
    */
    --font-gotham-bold: "GothamBold", "Helvetica Neue", Helvetica, Arial, sans-serif;
    --font-gotham-black: "GothamBlack", "Helvetica Neue", Helvetica, Arial, sans-serif;
    --font-gotham-narrow-book: "GothamNarrowBook", "Helvetica Neue", Helvetica, Arial, sans-serif;
    --font-gotham-narrow-bold: "GothamNarrowBold", "Helvetica Neue", Helvetica, Arial, sans-serif;    
    --color-black: #000000; 
    --color-light-blue: #009dd9;
    --color-medium-blue: #0066b2;
    --color-dark-blue: #0b2d71;
    --color-light-gray: #dbdcdd;
    --color-medium-gray: #8c8f93;
    --color-dark-gray: #6b6d6f;
    --color-light-green: #b2cc34;
    --color-medium-green: #769231;
    --color-dark-green: #444b0d;
    --color-light-orange: #faab18;
    --color-medium-orange: #e5601f;
    --color-dark-orange: #711b00;
    --color-light-purple: #ba3093;
    --color-medium-purple: #751269;
    --color-dark-purple: #3a0d36;
    --color-light-red: #e21836;
    --color-medium-red: #97002e;
    --color-dark-red: #58001c;
    --color-light-teal: #00b2bd;
    --color-medium-teal: #00708c;
    --color-dark-teal:#003653;
    --color-white: #ffffff;
    --color-offwhite: #f4f4f4;
    --color-black-half-opacity: rgba(0, 0, 0, 0.5);
    --color-white-half-opacity: rgba(255, 255, 255, 0.5);

    --bs-body-font-family: var(--font-gotham-narrow-book);
    --bs-body-font-size: 1.8rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 2.6rem;
    --bs-body-color: var(--color-black);
}
html {
    font-size: 10px;
}
body {
    padding: 0;
    font-style:normal;
    background: none;
    font-family: var(--font-gotham-narrow-book);
    font-size: 1.8rem;
    /*NOSONAR 
    future state
    line-height: 2.6rem;*/
    line-height: 3.2rem;
}

.r ul li {
    list-style-type:disc;
}
.r a {
    text-decoration: none;
    color: inherit;
}
.r a:hover, .r a:focus, .r a:active { 
    text-decoration: none;
}
.r a:focus {
    outline: 1px dotted;
    outline-offset: 2px;
}
.r a:focus:not(:focus-visible) {
    outline: none;
}
.r p {
    margin-top: 0;
    margin-bottom: 1.4rem;
}
.r h1, .r h2, .r h3, .r h4, .r h5, .r h6 {
    margin-top: 0;
    margin-bottom: 2.4rem;
}
.type-display, .type-header,
.display-super, .display-elevated, .display-base, .display-reduced,
.header-elevated, .header-base, .header-reduced {
    font-family: var(--font-gotham-black);
    font-weight: 400;
    font-size: 2.6rem;
    line-height: 3.0rem;
    letter-spacing: -0.005em;
}
.type-subhead,
.subhead-elevated, .subhead-base, .subhead-reduced {
    font-weight: 400;
    font-family: var(--font-gotham-narrow-book);
}
/*to be replaced with gotham book*/
.type-body,
.body-elevated, .body-base, .body-reduced, .body-caption {
    letter-spacing: 0.025em;
}
.type-cta, .type-eyebrow,
.cta-elevated, .cta-base, .cta-reduced, .cta-caption,
.eyebrow-elevated, .eyebrow-base, .eyebrow-reduced {
    font-family: var(--font-gotham-bold);
}
.text-super .type-display,
.text-super.type-display,
.display-super {
    font-size: 9.8rem;
    line-height: 9.8rem;
    letter-spacing: -0.025em;
}
.text-elevated .type-display,
.text-elevated.type-display,
.display-elevated {
    font-size: 5.2rem;
    line-height: 5.8rem;
    letter-spacing: -0.013em;
}
.text-base .type-display,
.text-base.type-display,
.display-base {
    font-size: 4.2rem;
    line-height: 5.6rem;
    letter-spacing: -0.01em;
}
.text-reduced .type-display,
.text-reduced.type-display,
.display-reduced {
    font-size: 3.6rem;
    line-height: 4.0rem;
    letter-spacing: -0.008em;
}
.text-elevated .type-header,
.text-elevated.type-header,
.header-elevated {
    font-size: 3.2rem;
    line-height: 3.6rem;
    letter-spacing: -0.006em;
}
.text-base .type-header,
.text-base.type-header,
.header-base {
    font-size: 2.8rem;
    line-height: 3.2rem;
    letter-spacing: -0.005em;
}
.text-reduced .type-header,
.text-reduced.type-header,
.header-reduced {
    font-size: 2.4rem;
    line-height: 2.8rem;
    letter-spacing: -0.005em;
}
.text-elevated .type-subhead,
.text-elevated.type-subhead,
.subhead-elevated {
    font-size: 2.8rem;
    line-height: 3.2rem
}
.text-base .type-subhead,
.text-base.type-subhead,
.subhead-base {
    font-size: 2.4rem;
    line-height: 2.8rem;
}
.text-reduced .type-subhead,
.text-reduced.type-subhead,
.subhead-reduced {
    font-size: 2rem;
    line-height: 2.4rem;
}
.text-elevated .type-body,
.text-elevated.type-body,
.body-elevated {
    font-size: 2rem;
    line-height: 2.8rem;
}
.text-base .type-body,
.text-base.type-body,
.body-base {
    font-size: 1.8rem;
    line-height: 2.6rem;
}
.text-reduced .type-body,
.text-reduced.type-body,
.body-reduced {
    font-size: 1.6rem;
    line-height: 2.4rem;
}
.text-caption .type-body,
.text-caption.type-body,
.body-caption {
    font-size: 1.2rem;
    line-height: 1.6rem;
}
.type-eyebrow,
.eyebrow-elevated, .eyebrow-base, .eyebrow-reduced { 
    display: block;
    margin-bottom: 16px;
}
.text-elevated .type-eyebrow,
.text-elevated.type-eyebrow,
.eyebrow-elevated {
    font-size:2.0rem;
    line-height: 2.4rem;
} 
.text-base .type-eyebrow,
.text-base.type-eyebrow,
.eyebrow-base {
    font-size:1.8rem;
    line-height: 2.4rem;
}
.text-reduced .type-eyebrow,
.text-reduced.type-eyebrow,
.eyebrow-reduced {
    font-size:1.6rem;
    line-height: 2.0rem;
}
.text-elevated .type-cta,
.text-elevated.type-cta,
.cta-elevated {
    font-size: 1.8rem;
    line-height: 2.6rem;
}
.text-base .type-cta,
.text-base.type-cta,
.cta-base {
    font-size: 1.6rem;
    line-height: 2.4rem;
}
.text-reduced .type-cta,
.text-reduced.type-cta,
.cta-reduced {
    font-size: 1.4rem;
    line-height: 2.2rem;
}
.text-caption .type-cta,
.text-caption.type-cta,
.cta-caption {
    font-size: 1.2rem;
    line-height: 1.6rem;
} 

p.text-elevated.type-body,
.text-elevated  p {
    margin-bottom: 1.6rem;
}
p.text-reduced,
.text-reduced p {
    margin-bottom: 1.2rem;
}
p.text-caption,
.text-caption p {
    margin-bottom: 1.0rem;
}

/* Small, Med, and Large devices (tablets, 768px and up) */
@media screen and (min-width: 768px) { 
    .type-display, .type-header, 
    .display-super, .display-elevated, .display-base, .display-reduced,
    .header-elevated, .header-base, .header-reduced {
        font-size: 3.2rem;
        line-height: 3.6rem;
        letter-spacing: -0.006em;
    }
    .text-super .type-display,
    .text-super.type-display,
    .display-super {
        font-size: 16rem;
        line-height: 16rem;
        letter-spacing: -0.033em;
    }
    .text-elevated .type-display,
    .text-elevated.type-display,
    .display-elevated {
        font-size: 8.0rem;
        line-height: 8.4rem;
        letter-spacing: -0.017em;
    }
    .text-base .type-display,
    .text-base.type-display,
    .display-base {
        font-size: 6.4rem;
        line-height: 6.8rem;
        letter-spacing: -0.013em;
    }
    .text-reduced .type-display,
    .text-reduced.type-display,
    .display-reduced {
        font-size: 4.8rem;
        line-height: 5.2rem;
        letter-spacing: -0.01em;
    }
    .text-elevated .type-header,
    .text-elevated.type-header,
    .header-elevated {
        font-size: 4rem;
        line-height: 4.4rem;
        letter-spacing: -0.008em;   
    }
    .text-base .type-header,
    .text-base.type-header,
    .header-base {
        font-size: 3.2rem;
        line-height: 3.6rem;
        letter-spacing: -0.006em;
    }
    .text-reduced .type-header,
    .text-reduced.type-header,
    .header-reduced {
        font-size: 2.8rem;
        line-height: 3.2rem;
        letter-spacing: -0.005em;
    }
    .text-elevated .type-subhead,
    .text-elevated.type-subhead,
    .subhead-elevated {
        font-size: 3.2rem;
        line-height: 3.6rem
    }
    .text-base .type-subhead,
    .text-base.type-subhead,
    .subhead-base {
        font-size: 2.8rem;
        line-height: 3.2rem;
    }
    .text-reduced .type-subhead,
    .text-reduced.type-subhead,
    .subhead-reduced {
        font-size: 2.4rem;
        line-height: 2.8rem;
    }
}
/* Med, and Large devices (992px and up) */
@media screen and (min-width: 992px) {  
    .type-display, .type-header,      
    .display-super, .display-elevated, .display-base, .display-reduced,
    .header-elevated, .header-base, .header-reduced {
        font-size: 3.2rem;
        line-height: 3.6rem;
        letter-spacing: -0.006em;
    }
    .text-super .type-display,
    .text-super.type-display,
    .display-super {
        font-size: 18rem;
        line-height: 18rem;
        letter-spacing: -0.0375em;
    }
    .text-elevated .type-display,
    .text-elevated.type-display,
    .display-elevated {
        font-size: 9.6rem;
        line-height: 10rem;
        letter-spacing: -0.02em;
    }
    .text-base .type-display,
    .text-base.type-display,
    .display-base {
        font-size: 8.0rem;
        line-height: 8.4rem;
        letter-spacing: -0.016em;
    }
    .text-reduced .type-display,
    .text-reduced.type-display,
    .display-reduced {
        font-size: 6.4rem;
        line-height: 6.8rem;
        letter-spacing: -0.013em;
    }
    .text-elevated .type-header,
    .text-elevated.type-header,
    .header-elevated {
        font-size: 4.8rem;
        line-height: 5.2rem;
        letter-spacing: -0.01em;
    }
    .text-base .type-header,
    .text-base.type-header,
    .header-base {
        font-size: 4.0rem;
        line-height: 4.4rem;
        letter-spacing: -0.008em;
    }
    .text-reduced .type-header,
    .text-reduced.type-header,
    .header-reduced {
        font-size: 3.2rem;
        line-height: 3.6rem;
        letter-spacing: -0.006em;
    }
    .text-elevated .type-subhead,
    .text-elevated.type-subhead,
    .subhead-elevated {
        font-size: 4.0rem;
        line-height: 4.4rem;
    }
    .text-base .type-subhead,
    .text-base.type-subhead,
    .subhead-base {
        font-size: 3.2rem;
        line-height: 3.6rem;
    }
    .text-reduced .type-subhead,
    .text-reduced.type-subhead,
    .subhead-reduced {
        font-size: 2.8rem;
        line-height: 3.2rem;
    }
    .text-caption .type-body,
    .text-caption.type-body,
    .body-caption {
        font-size: 1.4rem;
        line-height: 2.2rem;
    }
    .type-eyebrow
    .eyebrow-elevated, .eyebrow-base, .eyebrow-reduced { 
        margin-bottom: 24px;
    }
    .text-elevated .type-eyebrow,
    .text-elevated.type-eyebrow,
    .eyebrow-elevated {
        font-size: 2.2rem;
        line-height: 2.6rem;
    }
    .text-base .type-eyebrow,
    .text-base.type-eyebrow,
    .eyebrow-base {
        font-size: 2.0rem;
        line-height: 2.4rem;
    }
    .text-reduced .type-eyebrow,
    .text-reduced.type-eyebrow,
    .eyebrow-reduced {
        font-size: 1.8rem;
        line-height: 2.2rem;
    }
}
/*end rte-shared-2023 */


.color-light-blue { color: var(--color-light-blue); }
.background-color-light-blue { background-color: var(--color-light-blue); } 
.color-medium-blue { color: var(--color-medium-blue); }
.background-color-medium-blue { background-color: var(--color-medium-blue); }
.color-dark-blue { color: var(--color-dark-blue); }
.background-color-dark-blue { background-color: var(--color-dark-blue); }

.color-light-gray { color: var(--color-light-gray); }
.background-color-light-gray { background-color: var(--color-light-gray); }
.color-medium-gray { color: var(--color-medium-gray); }
.background-color-medium-gray { background-color: var(--color-medium-gray); }
.color-dark-gray { color: var(--color-dark-gray); }
.background-color-dark-gray { background-color: var(--color-dark-gray); }

.color-light-green { color: var(--color-light-green); }
.background-color-light-green { background-color: var(--color-light-green); }
.color-medium-green { color: var(--color-medium-green); }
.background-color-medium-green { background-color: var(--color-medium-green); }
.color-dark-green { color: var(--color-dark-green); }
.background-color-dark-green { background-color: var(--color-dark-green); }

.color-light-orange { color: var(--color-light-orange); }
.background-color-light-orange { background-color: var(--color-light-orange); }
.color-medium-orange { color: var(--color-medium-orange); }
.background-color-medium-orange { background-color: var(--color-medium-orange); }
.color-dark-orange { color: var(--color-dark-orange); }
.background-color-dark-orange { background-color: var(--color-dark-orange); }

.color-light-purple { color: var(--color-light-purple); }
.background-color-light-purple { background-color: var(--color-light-purple); }
.color-medium-purple { color: var(--color-medium-purple); }
.background-color-medium-purple { background-color: var(--color-medium-purple); }
.color-dark-purple { color: var(--color-dark-purple); }
.background-color-dark-purple { background-color: var(--color-dark-purple); }

.color-light-red { color: var(--color-light-red); }
.background-color-light-red { background-color: var(--color-light-red); }
.color-medium-red { color: var(--color-medium-red); }
.background-color-medium-red { background-color: var(--color-medium-red); }
.color-dark-red { color: var(--color-dark-red); }
.background-color-dark-red { background-color: var(--color-dark-red); }

.color-light-teal { color: var(--color-light-teal); }
.background-color-light-teal { background-color: var(--color-light-teal); }
.color-medium-teal { color: var(--color-medium-teal); }
.background-color-medium-teal { background-color: var(--color-medium-teal); }
.color-dark-teal { color: var(--color-dark-teal); }
.background-color-dark-teal { background-color: var(--color-dark-teal); }

.color-black { color: var(--color-black); }
.background-color-black { background-color: var(--color-black); }

.color-white { color: var(--color-white); }
.background-color-white { background-color: var(--color-white); }

.color-offwhite { color: var(--color-offwhite); }
.background-color-offwhite { background-color: var(--color-offwhite); }

/* NOSONAR 
override text color either at the parent or child level 
.parent-color-override-white[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite),
.parent-color-override-white[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) *,
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .child-color-override-white { color: var(--color-white); }*/

/* override text color either at the parent or child level */
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite),
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) * { color: var(--color-white); }


.width-1920 { max-width: 1920px; }
.width-1440 { max-width: 1440px; }
.width-1280 { max-width: 1280px; }
.width-1200 { max-width: 1200px; }
.width-1000 { max-width: 1000px; }
.width-800 { max-width: 800px; }
.width-600, 
.width-content { max-width: 600px; }
.width-500 { max-width: 500px; }

/*cta and buttons*/
.r a:not([class*="cta-"]),
.cta-underline {
    text-decoration: none;
    background-image: linear-gradient(to right, var(--color-black-half-opacity), var(--color-black-half-opacity));
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: 0 1px;
    transition: background-size .3s cubic-bezier(0.72, 0.05, 0.35, 1);
    padding-bottom:2px;
}

[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .r a:not([class*="cta-"]),
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-underline {
    background-image: linear-gradient(to right, var(--color-white-half-opacity), var(--color-white-half-opacity)); 
}
@media (hover: none) and (pointer: coarse) {
    .cta-underline {        
        background-size: 100% 1px;
    }
}
.r a:not([class*="cta-"]) {
    background-size: 100% 1px;
}
.r a:not([class*="cta-"]):hover,
.r a:not([class*="cta-"]):focus
{
    transition-duration:0.5s;
    background-image: linear-gradient(to right, currentColor, currentColor);
    background-position: bottom left;
}
:is(.cta-link-parent:hover .cta-link, .cta-link-parent:focus .cta-link, .cta-link:hover, .cta-link:focus, .cta-button:hover, .cta-button:focus) .cta-underline {
    transition-duration:0.5s;
    background-size: 100% 1px;
    background-position: bottom left;
}
.r .cta-link-parent:active .cta-link .cta-underline,
.r .cta-link:active .cta-underline,
.r .cta-button:active .cta-underline {
    transition-duration:0.5s;
    background-image: linear-gradient(to right, currentColor, currentColor);
    background-size: 100% 1px;
}
:is(.cta-link, .cta-button) .cta-glyphicon {
    overflow:hidden;
    display: inline-block;
    position: relative;
    top: 6px;
    left: 0;
    width: 20px;
    height: 20px;
    font-size: 16px;
}
:is(.cta-link, .cta-button) .cta-glyphicon .glyphicon {
    position:absolute;
    display:block;
    top:0;
    left: 1px;
}
:is(.cta-link, .cta-button) .cta-glyphicon .glyphicon-2023-logout-bracket {
    left: 0;
}
:is(.cta-link, .cta-button) .cta-glyphicon .glyphicon-2023-logout-bracket + .glyphicon-2023-arrow-left {
    left: 3px;
}
/* ltr */
@keyframes icon-ltr-start {
    0% {
        transform: translateX(0);
    }
    99% {
        transform: translateX(100%);
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes icon-ltr-end {
    0% {
        transform: translateX(-100%);
        opacity: 0;
    }
    1% {
        transform: translateX(-100%);
        opacity: 1;
    }
    100% {
        transform: translateX(0);
    }
}
/* rtl */
@keyframes icon-rtl-start {
    0% {
        transform: translateX(0);
    }
    99% {
        transform: translateX(-100%);
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes icon-rtl-end {
    0% {
        transform: translateX(100%);
        opacity: 0;
    }
    1% {
        transform: translateX(100%);
        opacity: 1;
    }
    100% {
        transform: translateX(0);
    }
}
:is(.cta-link-parent:hover, .cta-link-parent:focus, .cta-link:hover, .cta-link:focus, .cta-button:hover, .cta-button:focus) .cta-glyphicon .animate {
    animation: icon-ltr-start 0.2s cubic-bezier(0.72, 0.05, 0.35, 1), icon-ltr-end 0.5s cubic-bezier(0.72, 0.05, 0.35, 1) 0.2s;
}
:is(.cta-link-parent:hover, .cta-link-parent:focus, .cta-link:hover, .cta-link:focus, .cta-button:hover, .cta-button:focus) .cta-glyphicon .animate.glyphicon-2023-arrow-left { 
    animation: icon-rtl-start 0.2s cubic-bezier(0.72, 0.05, 0.35, 1), icon-rtl-end 0.5s cubic-bezier(0.72, 0.05, 0.35, 1) 0.2s;
}
.cta-glyphicon + .cta-underline,
.cta-underline + .cta-glyphicon {
    margin-left: 3px;
}
.cta-button .cta-glyphicon {
    margin-right:3px;
}
.r .cta-button {
    border-radius: 8px;
    border: none;
    padding: 12px 24px;
    display: inline-block;
    background-color: var(--color-black);
    color: var(--color-white);
    text-align: center;
}
.r .cta-button.cta-small {
    padding: 8px 20px;

}
.cta-button.secondary {
    border: 2px solid var(--color-black);
    color: var(--color-black);
    background-color: transparent;
}

[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.primary,
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.primary * { 
    color: var(--color-black);     
    background-color: var(--color-white);
}
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.secondary,
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.secondary * { 
    color: var(--color-white);     
    border-color: var(--color-white);
}
.cta-button.primary:hover,
.cta-button.primary:focus {
    background-color: rgba(0, 0, 0, 0.9);
}
.cta-button.primary:active {
    background-color: #171717;
}
.cta-button.secondary:not(.disabled):not(:disabled):hover,
.cta-button.secondary:not(.disabled):not(:disabled):focus {
    text-decoration: none;
    background-color: rgba(0,0,0,0.05);
}
.cta-button.secondary:active {
    color: #171717;
}
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.secondary:not(.disabled):not(:disabled):hover,
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.secondary:not(.disabled):not(:disabled):focus {
    background-color: rgba(255, 255, 255, .05);
}
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.secondary:hover {
    color: #f4f4f4;
}
.cta-button.disabled,
.cta-button:disabled {
    cursor: default;
}
.cta-button.primary.disabled,
.cta-button.primary:disabled {
    background-color: #828282 !important;
    border-color: #828282 !important;
}
.cta-button.secondary.disabled,
.cta-button.secondary:disabled {
    color: #828282 !important;
    border-color: #828282 !important;
}
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.primary.disabled,
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.primary:disabled {
    background-color: #bebebe !important;
    border-color: #bebebe !important;
}
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.secondary.disabled,
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .cta-button.secondary:disabled {
    color: #bebebe !important;
    border-color: #bebebe !important;
}


/*copied from site.css*/
.centered {
    float:none;
    margin:0 auto;
}
/* Extra Small and below */
@media (max-width: 767.99px) {
    .centered-xs {
        float:none;
        margin:0 auto;
    }
}
@media (min-width: 768px) and (max-width: 991.99px) {
    .centered-sm {
        float:none;
        margin:0 auto;
    }
}
/* Medium devices (desktops, 992px and 1199px) */
@media (min-width: 992px) and (max-width: 1199.99px) {
    .centered-md {
        float:none;
        margin:0 auto;
    }
}
/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    .centered-lg {
        float:none;
        margin:0 auto;
    }
}

/* General Text Handling Classes - helper classes */
.text-uppercase { text-transform: uppercase !important; }
.text-capitalize { text-transform: capitalize !important; }
.text-lowercase { text-transform: lowercase !important; }

.text-italic { font-style: italic !important; }
.text-bold { font-weight: bold !important; }
.text-normal { font-weight: normal !important; }

.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.text-center { text-align: center !important; }

.position-left { position: absolute; left: 0; }
.position-top { position: absolute; top: 0; }
.position-right { position: absolute; right: 0; }
.position-bottom { position: absolute; bottom: 0; }

/* General Padding (spacing) Helper Classes */
.padding-0 { padding:0 !important; }
.padding-top-0 { padding-top:0 !important; }
.padding-right-0 { padding-right:0 !important; }
.padding-bottom-0 { padding-bottom:0 !important; }
.padding-left-0 { padding-left:0 !important; }
.padding-5 { padding:5px !important; }
.padding-top-5 { padding-top:5px !important; }
.padding-right-5 { padding-right:5px !important; }
.padding-bottom-5 { padding-bottom:5px !important; }
.padding-left-5 { padding-left:5px !important; }
.padding-10 { padding:10px !important; }
.padding-top-10 { padding-top:10px !important; }
.padding-right-10 { padding-right:10px !important; }
.padding-bottom-10 { padding-bottom:10px !important; }
.padding-left-10 { padding-left:10px !important; }
.padding-15 { padding:15px !important; }
.padding-top-15 { padding-top:15px !important; }
.padding-right-15 { padding-right:15px !important; }
.padding-bottom-15 { padding-bottom:15px !important; }
.padding-left-15 { padding-left:15px !important; }
.padding-20 { padding:20px !important; }
.padding-top-20 { padding-top:20px !important; }
.padding-right-20 { padding-right:20px !important; }
.padding-bottom-20 { padding-bottom:20px !important; }
.padding-left-20 { padding-left:20px !important; }
.padding-25 { padding:25px !important; }
.padding-top-25 { padding-top:25px !important; }
.padding-right-25 { padding-right:25px !important; }
.padding-bottom-25 { padding-bottom:25px !important; }
.padding-left-25 { padding-left:25px !important; }

/* General Margin (spacing) Helper Classes */
.margin-0 { margin:0 !important; }
.margin-top-0 { margin-top:0 !important; }
.margin-right-0 { margin-right:0 !important; }
.margin-bottom-0 { margin-bottom:0 !important; }
.margin-left-0 { margin-left:0 !important; }
.margin-5 { margin:5px !important; }
.margin-top-5 { margin-top:5px !important; }
.margin-right-5 { margin-right:5px !important; }
.margin-bottom-5 { margin-bottom:5px !important; }
.margin-left-5 { margin-left:5px !important; }
.margin-10 { margin:10px !important; }
.margin-top-10 { margin-top:10px !important; }
.margin-right-10 { margin-right:10px !important; }
.margin-bottom-10 { margin-bottom:10px !important; }
.margin-left-10 { margin-left:10px !important; }
.margin-15 { margin:15px !important; }
.margin-top-15 { margin-top:15px !important; }
.margin-right-15 { margin-right:15px !important; }
.margin-bottom-15 { margin-bottom:15px !important; }
.margin-left-15 { margin-left:15px !important; }
.margin-20 { margin:20px !important; }
.margin-top-20 { margin-top:20px !important; }
.margin-right-20 { margin-right:20px !important; }
.margin-bottom-20 { margin-bottom:20px !important; }
.margin-left-20 { margin-left:20px !important; }
.margin-25 { margin:25px !important; }
.margin-top-25 { margin-top:25px !important; }
.margin-right-25 { margin-right:25px !important; }
.margin-bottom-25 { margin-bottom:25px !important; }
.margin-left-25 { margin-left:25px !important; }
@font-face {
  font-family: 'ChevronIcons2023';
  src:  url('/assets/fonts/glyph-icons-2023/ChevronIcons2023.eot?kxnre9');
  src:  url('/assets/fonts/glyph-icons-2023/ChevronIcons2023.eot?kxnre9#iefix') format('embedded-opentype'),
    url('/assets/fonts/glyph-icons-2023/ChevronIcons2023.woff2?kxnre9') format('woff2'),
    url('/assets/fonts/glyph-icons-2023/ChevronIcons2023.ttf?kxnre9') format('truetype'),
    url('/assets/fonts/glyph-icons-2023/ChevronIcons2023.woff?kxnre9') format('woff'),
    url('/assets/fonts/glyph-icons-2023/ChevronIcons2023.svg?kxnre9#Chevron_FunctionalIcons_2023') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="glyphicon-2023-"], [class*=" glyphicon-2023-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'ChevronIcons2023' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.glyphicon-2023-account:before {
  content: "\e800";
}
.glyphicon-2023-alert:before {
  content: "\e801";
}
.glyphicon-2023-arrow-down:before {
  content: "\e802";
}
.glyphicon-2023-arrow-left:before {
  content: "\e803";
}
.glyphicon-2023-arrow-right:before {
  content: "\e804";
}
.glyphicon-2023-arrow-up:before {
  content: "\e805";
}
.glyphicon-2023-arrow-up-right:before {
  content: "\e806";
}
.glyphicon-2023-attachment:before {
  content: "\e807";
}
.glyphicon-2023-bookmark:before {
  content: "\e808";
}
.glyphicon-2023-calendar:before {
  content: "\e809";
}
.glyphicon-2023-caret-down:before {
  content: "\e80a";
}
.glyphicon-2023-caret-left:before {
  content: "\e80b";
}
.glyphicon-2023-caret-right:before {
  content: "\e80c";
}
.glyphicon-2023-caret-up:before {
  content: "\e80d";
}
.glyphicon-2023-charging:before {
  content: "\e80e";
}
.glyphicon-2023-checklist:before {
  content: "\e80f";
}
.glyphicon-2023-checklist-new:before {
  content: "\e810";
}
.glyphicon-2023-checklist-search:before {
  content: "\e811";
}
.glyphicon-2023-checkmark:before {
  content: "\e812";
}
.glyphicon-2023-checkmark-circle:before {
  content: "\e813";
}
.glyphicon-2023-clock:before {
  content: "\e814";
}
.glyphicon-2023-close:before {
  content: "\e815";
}
.glyphicon-2023-close-circle:before {
  content: "\e816";
}
.glyphicon-2023-cloud-off:before {
  content: "\e817";
}
.glyphicon-2023-cloud-on:before {
  content: "\e818";
}
.glyphicon-2023-code:before {
  content: "\e819";
}
.glyphicon-2023-collapse-down:before {
  content: "\e81a";
}
.glyphicon-2023-collapse-left:before {
  content: "\e81b";
}
.glyphicon-2023-collapse-right:before {
  content: "\e81c";
}
.glyphicon-2023-collapse-up:before {
  content: "\e81d";
}
.glyphicon-2023-copy:before {
  content: "\e81e";
}
.glyphicon-2023-download:before {
  content: "\e81f";
}
.glyphicon-2023-download-arrow:before {
  content: "\e820";
}
.glyphicon-2023-download-bracket:before {
  content: "\e821";
}
.glyphicon-2023-edit:before {
  content: "\e822";
}
.glyphicon-2023-ellipsis:before {
  content: "\e823";
}
.glyphicon-2023-export:before {
  content: "\e824";
}
.glyphicon-2023-eye-hide:before {
  content: "\e825";
}
.glyphicon-2023-eye-show:before {
  content: "\e826";
}
.glyphicon-2023-favorite:before {
  content: "\e827";
}
.glyphicon-2023-filter:before {
  content: "\e828";
}
.glyphicon-2023-filter-funnel:before {
  content: "\e829";
}
.glyphicon-2023-folder:before {
  content: "\e82a";
}
.glyphicon-2023-grid:before {
  content: "\e82b";
}
.glyphicon-2023-heart:before {
  content: "\e82c";
}
.glyphicon-2023-history:before {
  content: "\e82d";
}
.glyphicon-2023-home:before {
  content: "\e82e";
}
.glyphicon-2023-import:before {
  content: "\e82f";
}
.glyphicon-2023-info:before {
  content: "\e830";
}
.glyphicon-2023-internet-off:before {
  content: "\e831";
}
.glyphicon-2023-internet-on:before {
  content: "\e832";
}
.glyphicon-2023-launch:before {
  content: "\e833";
}
.glyphicon-2023-lightbulb:before {
  content: "\e834";
}
.glyphicon-2023-like:before {
  content: "\e835";
}
.glyphicon-2023-lock-close:before {
  content: "\e836";
}
.glyphicon-2023-lock-open:before {
  content: "\e837";
}
.glyphicon-2023-logout:before {
  content: "\e838";
}
.glyphicon-2023-logout-arrow:before {
  content: "\e839";
}
.glyphicon-2023-logout-bracket:before {
  content: "\e83a";
}
.glyphicon-2023-menu:before {
  content: "\e83b";
}
.glyphicon-2023-minus:before {
  content: "\e83c";
}
.glyphicon-2023-notifications:before {
  content: "\e83d";
}
.glyphicon-2023-notifications-alert:before {
  content: "\e83e";
}
.glyphicon-2023-paste:before {
  content: "\e83f";
}
.glyphicon-2023-plugin:before {
  content: "\e840";
}
.glyphicon-2023-plus:before {
  content: "\e841";
}
.glyphicon-2023-plus-circle:before {
  content: "\e842";
}
.glyphicon-2023-print:before {
  content: "\e843";
}
.glyphicon-2023-refresh:before {
  content: "\e844";
}
.glyphicon-2023-replay:before {
  content: "\e845";
}
.glyphicon-2023-search:before {
  content: "\e846";
}
.glyphicon-2023-settings:before {
  content: "\e847";
}
.glyphicon-2023-share:before {
  content: "\e848";
}
.glyphicon-2023-sort:before {
  content: "\e849";
}
.glyphicon-2023-tab-new:before {
  content: "\e84a";
}
.glyphicon-2023-tag:before {
  content: "\e84b";
}
.glyphicon-2023-tooltip:before {
  content: "\e84c";
}
.glyphicon-2023-trash:before {
  content: "\e84d";
}
.glyphicon-2023-upload:before {
  content: "\e84e";
}
.glyphicon-2023-upload-arrow:before {
  content: "\e84f";
}
.glyphicon-2023-upload-bracket:before {
  content: "\e850";
}
.glyphicon-2023-video-fast-forward:before {
  content: "\e851";
}
.glyphicon-2023-video-fast-forward-circle:before {
  content: "\e852";
}
.glyphicon-2023-video-pause:before {
  content: "\e853";
}
.glyphicon-2023-video-pause-circle:before {
  content: "\e854";
}
.glyphicon-2023-video-play:before {
  content: "\e855";
}
.glyphicon-2023-video-play-circle:before {
  content: "\e856";
}
.glyphicon-2023-video-rewind:before {
  content: "\e857";
}
.glyphicon-2023-video-rewind-circle:before {
  content: "\e858";
}
.glyphicon-2023-video-skip-ahead:before {
  content: "\e859";
}
.glyphicon-2023-video-skip-ahead-circle:before {
  content: "\e85a";
}
.glyphicon-2023-video-skip-back:before {
  content: "\e85b";
}
.glyphicon-2023-video-skip-back-circle:before {
  content: "\e85c";
}
.glyphicon-2023-wifi:before {
  content: "\e85d";
}

.carousel-shared .splide .splide__slide {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
}
.carousel-shared .splide .splide__slide:focus {
    outline: thin dotted currentColor;
}
.carousel-shared .splide .splide__slide:focus:not(:focus-visible) {
    outline: none;
}
.carousel-shared .splide .splide__track {    
    margin-bottom:40px;
}
.carousel-shared .splide .control {
    display:none;
    justify-content: center;
    padding-bottom: 80px;
}
.carousel-shared .splide .control.show {
    display: flex;
}
.carousel-shared .splide .splide__pagination {
    position: static;
    padding: 0 24px;
}
.carousel-shared .splide .splide__pagination .splide__pagination__page {
    transform:none;
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background-color: var(--color-black);
    opacity: 0.2;
    margin:4px;
}
.carousel-shared[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .splide .splide__pagination .splide__pagination__page {
    background-color: var(--color-white);
}
.carousel-shared .splide .splide__pagination .splide__pagination__page:hover:not(.is-active),
.carousel-shared .splide .splide__pagination .splide__pagination__page:focus:not(.is-active) {
    opacity: 0.5
}
.carousel-shared .splide .splide__pagination .is-active {
    width: 24px;
    opacity: 1;
}
.carousel-shared .splide .splide__pagination li {
    display: flex;
}
.carousel-shared .splide .splide__arrows .splide__arrow {
    position: static;
    transform: none;
    border: 2px solid currentColor;
    border-radius:20px;
    height: 40px;
    width: 40px;
    font-size:16px;
    background-color: transparent;
    opacity: 1;
    padding:0;
}
.carousel-shared .splide .splide__arrows .splide__arrow .cta-glyphicon {
    margin: auto !important;
    top: 7px;
    left: 1px;
}
.carousel-shared .splide .splide__arrows .splide__arrow:disabled {
    opacity: 0;
    visibility: hidden;
}
.carousel-shared .splide .splide__arrows .splide__arrow:hover:not(:disabled),
.carousel-shared .splide .splide__arrows .splide__arrow:focus:not(:disabled) {    
    background-color: var(--color-black);
    color: var(--color-white);
}
.carousel-shared[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .splide .splide__arrows .splide__arrow:hover:not(:disabled),
.carousel-shared[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .splide .splide__arrows .splide__arrow:focus:not(:disabled),
.carousel-shared[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .splide .splide__arrows .splide__arrow:hover:not(:disabled) *,
.carousel-shared[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite) .splide .splide__arrows .splide__arrow:focus:not(:disabled) * { 
    background-color: var(--color-white) !important;
    color: var(--color-black) !important;
    border-color: var(--color-white) !important;
}
.carousel-shared .splide .splide__arrows .splide__arrow:focus:not(:disabled),
.carousel-shared .splide .splide__pagination .splide__pagination__page:focus {
    outline: 1px dotted;
    outline-offset: 2px;
}
.carousel-shared .splide .splide__arrows .splide__arrow:focus:not(:disabled):not(:focus-visible),
.carousel-shared .splide .splide__pagination .splide__pagination__page:focus:not(:focus-visible) {
    outline: none;
}
.carousel-shared .opacity-cover {
    position: absolute;
    height: 100%;
    width: 100%;
    background-color: var(--color-black);
    opacity: 0;
    z-index: 2;
    transition: opacity 0.3s cubic-bezier(0.72, 0.05, 0.35, 1);
}
.carousel-shared a:hover .opacity-cover,
.carousel-shared a:focus .opacity-cover {
    opacity:0.1;
    transition: opacity 0.5s cubic-bezier(0.72, 0.05, 0.35, 1);
}
@media screen and (min-width: 992px) {
    .carousel-shared .splide .control {
        padding-bottom: 96px;
    }
    .carousel-shared .splide .splide__track {    
        margin-bottom:56px;
    }
}

/*Bootstrap 3 - 5 fix for removing list style */
/*
.pagination-wrapper is specific for .com stories
.pagination-wrapper is general pagination used for ews and .com stories
*/,
.pagination-wrapper .pagination li {
    list-style-type: none;
}
.pagination-wrapper .pagination {
    justify-content:center;
    margin: 20px 0;
}
.pagination-wrapper .page-link {
    padding: 0 12px;
}
.pagination-wrapper .disabled .page-link {
    pointer-events: none;
}
.pagination-wrapper .active a {
    cursor:default;
}
.pagination-wrapper a:hover,
.pagination-wrapper a:focus {
    text-decoration:none;
    box-shadow: none;
}
.pagination-wrapper .pagination > .active > a, 
.pagination-wrapper .pagination > .active > span, 
.pagination-wrapper .pagination > .active > a:hover, 
.pagination-wrapper .pagination > .active > span:hover, 
.pagination-wrapper .pagination > .active > a:focus, 
.pagination-wrapper .pagination > .active > span:focus {
    background-color: #337ab7;
    border-color: #337ab7;
}
/* End Bootstrap 3 - 5 fix for removing list style */
.pagination-wrapper .pagination{
    display:flex;
    flex-flow: row nowrap;
    flex: 1 100%;
    margin:auto;
    align-content: flex-start;
    justify-content:center;
    padding-bottom:20px;
}
.pagination-wrapper .pagination li{
    line-height:40px;
    list-style-type: none;
}

.pagination-wrapper .pagination > li > a,
.pagination-wrapper .pagination > li > span {
    position:static;
    background-color:transparent;
    border:none;
    text-transform:lowercase;
    color: var(--color-black);
    float:none;
    margin-left:16px;
    margin-right:16px;
    padding-left:0px;
    padding-right:0px;
}

.pagination-wrapper .pagination li:first-child,
.pagination-wrapper .pagination li:last-child {
    flex:3;
    text-align:left;
}
.pagination-wrapper .pagination li:last-child {
    text-align:right;
}
.pagination-wrapper .pagination li:first-child a,
.pagination-wrapper .pagination li:last-child a {
    margin: 0 5px;
    text-align:left;
}
.pagination-wrapper .pagination li:first-child a {
    margin-left: 0;
}
.pagination-wrapper .pagination li:last-child a {
    margin-right: 0;
    text-align:right;
}
.pagination-wrapper .pagination li:first-child .glyphicon:before,
.pagination-wrapper .pagination li:last-child .glyphicon:before {
    left:auto;
    right:auto;
    font-size:2.0rem;
    font-weight:600;
}

/*.pagination-wrapper .pagination .PagedList-ellipses a {
    color:#0066b2;
}*/

.pagination-wrapper .pagination > li > a:hover,
.pagination-wrapper .pagination > li > span:hover,
.pagination-wrapper .pagination > li > a:focus,
.pagination-wrapper .pagination > li > span:focus {
    background-color:transparent;
    border:none;
}

.pagination-wrapper .pagination > .disabled > span,
.pagination-wrapper .pagination > .disabled > span:hover,
.pagination-wrapper .pagination > .disabled > span:focus,
.pagination-wrapper .pagination > .disabled > a,
.pagination-wrapper .pagination > .disabled > a:hover,
.pagination-wrapper .pagination > .disabled > a:focus {
    background-color:transparent;
}
.pagination-wrapper .pagination > .disabled span,
.pagination-wrapper .pagination > li > a:hover, 
.pagination-wrapper .pagination > li > span:hover, 
.pagination-wrapper .pagination > li > a:focus, 
.pagination-wrapper .pagination > li > span:focus {    
    color: #6B6D6F;
}
.pagination-wrapper .pagination > .active > a,
.pagination-wrapper .pagination > .active > span,
.pagination-wrapper .pagination > .active > a:hover,
.pagination-wrapper .pagination > .active > span:hover,
.pagination-wrapper .pagination > .active > a:focus,
.pagination-wrapper .pagination > .active > span:focus {
    background-color: transparent;
    border: none;
    font-size: 1.8rem;
    line-height: 2.4rem;
    font-family: var(--font-gotham-bold);
}
.pagination-wrapper .pagination .active .page-number {
    border-bottom: 1px solid;
}
.pagination-wrapper .pagination > li > a:focus {
    outline: thin dotted;
    outline-color: #000;
}
.pagination-wrapper .pagination > li > a:focus:not(:focus-visible) {
    outline:none;
}
.pagination-wrapper .pagination .hide-first:nth-child(3), 
.pagination-wrapper .pagination .hide-last:nth-last-child(3) {
    display: none !important;
}

.pagination-wrapper .pagination .ellipses a {
    margin:0;
}
@media screen and (min-width: 992px) {
    .pagination-wrapper .pagination > .active > a,
    .pagination-wrapper .pagination > .active > span,
    .pagination-wrapper .pagination > .active > a:hover,
    .pagination-wrapper .pagination > .active > span:hover,
    .pagination-wrapper .pagination > .active > a:focus,
    .pagination-wrapper .pagination > .active > span:focus {
        font-size: 2rem;
        line-height: 2.6rem;
    }
    .pagination-wrapper .pagination > li > a,
    .pagination-wrapper .pagination > li > span {
        margin-left: 12px;
        margin-right: 12px;
    }
    .pagination-wrapper .pagination .ellipses a {
        margin-left: 4px;
        margin-right: 4px;
    }
}
@media (max-width: 991px) {
    .s06 ~ .pagination-wrapper .inner-container.width-600 {
        padding-left:0px;
        padding-right:0px;
    }
}

@media screen and (max-width: 767.99px) {
    .pagination-wrapper .pagination .page-link-item:not(.active):not(.skip-to-previous):not(.skip-to-next) {
        display: none;
    }
    .pagination-wrapper .pagination .total-pages {
        font-family: var(--font-gotham-narrow-book);
        position: static !important;
        width: auto !important;
        height: auto !important;
        padding: inherit !important;
        margin: auto !important;
        overflow: auto !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border: 0 !important;
    }
    .s06 ~ .pagination-wrapper .inner-container.width-600 {
        padding-left: 30px;
        padding-right: 30px;
    }
}
@media (max-width: 374px) {
    .s06 ~ .pagination-wrapper .inner-container.width-600 {
        padding-left: 15px;
        padding-right: 15px;
    }
}
.c53 .inner-container .accordion-item,
.c53 .inner-container .accordion-item .accordion-button {
  background-color: inherit;
}

.c53
[class*="background-color-"]:not(.background-color-white):not(.background-color-offwhite)
.accordion-item {
    border-color: var(--color-white-half-opacity) !important;
}

.c53 .inner-container.background-color-offwhite * {
  color: black;
}

.c53 .inner-container.full .accordion-item:first-of-type {
    border-top: initial;
    padding-top: 10px;
}

.c53 .inner-container.full .accordion-item:last-of-type {
    border-bottom: initial;
    padding-bottom: 10px;
}

.c53 .inner-container:not(.full) .accordion-item:first-of-type {
    border-top: initial;
}

.c53 .accordion-button:focus{
    outline: thin dotted;
}

.c53 .accordion-button:focus:not(:focus-visible){
    outline: none;
}

.c53 .accordion-button:not(.collapsed)::after {
    content: "\e80a" !important;
    font-family: "ChevronIcons2023" !important;
    background-image: initial;
    transition: initial;
    font-size: 2rem;
    width: initial;
    height: initial;
}

.c53 .accordion-button::after {
  content: "\e80a" !important;
  font-family: "ChevronIcons2023" !important;
  background-image: initial;
  transition: initial;
  font-size: 2rem;
  width: initial;
  height: initial;
}

.c53 .inner-container {
  display: flex;
  flex-direction: column-reverse;
  padding: initial;
}

.c53 .accordion {
  flex: 1;
}

.c53 .accordion-img {
  flex: initial;
}

.c53 .accordion-body {
  padding-top: 24px;
  padding-bottom: 48px;
}

.c53 .inner-container.standalone .accordion {
  max-width: initial;
  padding: initial;
}

.c53 .accordion .item-link {
  padding-top: 24px;
  margin-bottom: 0;
}

.c53 .subhead-reduced {
  font-family: var(--font-gotham-narrow-book);
}

.c53 .accordion-header {
  margin-top: 22px;
  margin-bottom: 22px;
}

.c53 .accordion-button:not(.collapsed) {
  color: inherit;
  background-color: initial;
}

.c53 .accordion-button:focus,
.c53 .accordion-button:not(.collapsed) {
  box-shadow: none;
}

.c53 .accordion-collapse {
  opacity: 0;
}

.c53 .accordion-body .description {
  position: relative;
  top: 1rem;
  height: 192px;
  width: initial;
  overflow: hidden;
}

.c53 .show .accordion-body p {
  top: 0px;
  transition: all 1s linear;
}

.c53 .accordion-item .show {
  opacity: 1;
  transition: all 1s linear;
}

/* contained */
.c53 .inner-container.contained .accordion {
  padding: 50px;
  padding-top: 0;
}

.c53 .inner-container:not(.full) .accordion-body,
.c53 .inner-container:not(.full) .accordion-button {
    padding-left: 0;
    padding-right: 0;
}

.c53 .inner-container.full .accordion .accordion-item{
    border-left: initial;
    border-right: initial;
    padding-left: 28px;
    padding-right: 28px;
}

.c53 .inner-container:not(.full) .accordion {
    padding-left: 28px;
    padding-right: 28px;
}

.c53 .inner-container .accordion .accordion-item,
.c53 .inner-container .accordion .accordion-item {
    border-left: initial;
    border-right: initial;
}

.c53 .inner-container.contained .accordion .accordion-item:first-child {
  border-top: initial;
}

.c53 .inner-container.contained .accordion-img {
  margin: 2.8rem;
  margin-top: 0;
  border-radius: 2rem;
}

.c53 .inner-container.standalone .accordion-img {
  display: none;
}

.c53 .inner-container:not(.full) .accordion-item:first-of-type h2.accordion-header,
.c53 .inner-container:not(.full) .accordion-item:first-of-type button.accordion-button {
    margin-top: 0;
    padding-top: 0;
}

.c53 .hidden {
    display: hidden;
}

.c53 .fade-in {
  animation: 2s fadeIn;
}

.c53 .accordion-img {
    flex: initial;
    margin: 0;
    background-size: 0;
}

.c53 .inner-container:not(.full) .accordion-img .img-fluid {
    border-radius: 10px;
}

@keyframes fadeIn {
    0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

/*medium screen todo: this query is apparently not working*/
@media screen (min-width: 768px) and (max-width: 991.99px){
  .c53 .inner-container {
    display: flex;
    flex-direction: column-reverse;
  }

  .c53 .inner-container {
    padding: 0 2rem 2rem 2rem;
  }

  .c53 .inner-container.contained .accordion-img {
    margin: initial;
  }

  .c53 .inner-container.contained .accordion {
    padding: initial;
  }

  .c53 .inner-container.standalone .accordion {
    max-width: initial;
    padding: initial;
  }

  .c53 .accordion-body {
    padding-top: 24px;
    padding-bottom: 48px;
  }

  .c53 .accordion-body .description {
    height: 96px;
    width: 620px;
  }
}

/*large */
@media screen and (min-width: 992px) {
  .c53.container-fluid {
    padding-bottom: 96px;
  }

  .c53 .inner-container {
    flex-direction: initial;
    display: flex;
    justify-content: center;
  }

    .c53 .inner-container.full .accordion .accordion-item {
        padding-left: 48px;
        padding-right: 48px;
    }

  .c53 .accordion-img {
    flex: 1;
    height: initial;
    background-size: cover;
  }

  .c53 .accordion-body {
    padding-bottom: 32px;
  }

  .c53 .accordion-body .description {
    height: 210px;
    width: 480px;
  }

  /* standalone */
  .c53 .inner-container.standalone .accordion {
    max-width: 50%;
  }

  .c53 .accordion-img img {
    display: none;
  }
}

/*x-large*/
@media screen and (min-width: 1400px) {
  .c53 .inner-container.full .accordion-img {
    border-radius: 0 10px 10px 0;
  }

  .c53 .inner-container.full {
    border-radius: 10px;
  }
}

.c56 {
    --card-side-margin: 8px;
    --card-width: 327px;
    --active-card-width: 327px;
    --image-width: 327px;
    --scale-ratio: 0.9;
}

    .c56 .opening-content .main-header {
        margin-bottom: 48px;
    }

    .c56 .splide {
        padding-top: 80px;
        width: 100%;
    }

        .c56 .splide .splide__list {
            align-items: flex-start;
        }

        .c56 .splide .splide__slide {
            width: calc(var(--card-width) + var(--card-side-margin) * 2) !important;
            justify-content: center;
            align-items: flex-start;
        }

    .c56 .splide__slide.is-active {
        width: calc(var(--active-card-width) + var(--card-side-margin) * 2) !important;
    }

    .c56 .splide .splide__slide:not(.ending-slide) .inner-slide-wrapper:not([class*="background-color-"]) {
        background-color: var(--color-medium-blue);
    }

    .c56 .splide .splide__slide .inner-slide-wrapper {
        width: var(--image-width);
        height: var(--image-width);
        display: flex;
        flex-direction: column;
        border-radius: 5px;
        overflow: hidden;
        transform: scale3d(var(--scale-ratio), var(--scale-ratio), 1);
        transition: transform 0.25s cubic-bezier(0.72,0.05,0.35,1);
    }

    .c56 .splide .splide__slide:not(.is-active) .inner-slide-wrapper {
        width: var(--card-width);
    }

    .c56 .splide .splide__slide.is-active:not(.ending-slide) .inner-slide-wrapper {
        background-color: var(--color-medium-red);
        border-radius: 8px;
        transform: scale3d(1, 1, 1);
        transition: transform 0.5s cubic-bezier(0.72,0.05,0.35,1);
    }

    .c56 .splide .image-container {
        align-self: center;
    }

    .c56 .splide .content-container {
        width: 100%;
        display: flex;
        padding: 24px;
        padding-left: 0;
        flex-direction: column;
        align-items: flex-start;
        flex: 1;
    }

        .c56 .splide .content-container .slide-header {
            text-align: left;
            margin-bottom: auto;
            display: -webkit-box;
            -webkit-line-clamp: 4;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

    .c56 .splide .cta-container {
        margin-bottom: 0;
    }

    .c56 .splide .ending-slide .inner-slide-wrapper {
        display: flex;
        flex-direction: column;
        justify-content: center !important;
        align-items: flex-start !important;
        flex: 1;
    }



    .c56 .splide__slide.is-active .text-content-left {
        display: block;
    }

    .c56 .text-content-left {
        display: none;
    }

    .c56 .splide a.splide__slide {
        display: flex;
        flex-direction: column-reverse;
    }

.content-container .text-left {
    padding-left: 0;
}

@media screen and (min-width: 768px) {
    .c56 {
        --card-side-margin: 12px;
        --card-width: 436px;
        --active-card-width: 525px;
        --image-width: 525px;
        --scale-ratio: 0.73;
    }
}

@media screen and (min-width: 992px) {
    .c56 {
        --card-width: 486px;
        --active-card-width: 894px;
        --image-width: 588px;
    }

        .c56 .splide .content-container {
            padding: 24px;
        }

        .c56 .text-content-left {
            width: 258px;
            margin-right: 48px;
        }

        .c56 .splide a.splide__slide {
            align-items: center;
            flex-direction: row;
        }

        .c56 .splide {
            padding-top: 96px;
        }

            .c56 .splide .splide-wrapper {
                position: relative;
            }

            .c56 .splide .opening-content {
                position: absolute;
                display: flex;
                justify-content: flex-start;
                align-items: center;
                padding: 0 120px;
                width: calc(50% - var(--active-card-width) / 2);
                height: 100%;
                left: 0;
                top: 0;
                transition: opacity ease-in-out 0.25s;
            }

                .c56 .splide .opening-content.hide {
                    opacity: 0;
                }

                .c56 .splide .opening-content .main-header {
                    text-align: left;
                    margin-bottom: 0
                }

            .c56 .splide .splide__slide .content-container {
                padding: 16px 24px 24px;
            }
}

@media screen and (max-width: 375px) {
    .c56 .splide .splide__slide {
        width: auto !important;
        max-width: calc(var(--card-width) + var(--card-side-margin) * 2) !important;
    }

    .c56 .splide__slide.is-active {
        width: auto !important;
        max-width: calc(var(--active-card-width) + var(--card-side-margin) * 2) !important;
    }

    .c56 .splide .splide__slide .inner-slide-wrapper {
        max-width: var(--active-card-width);
    }

    .c56 .splide__pagination {
        margin-right: auto;
        margin-left: auto;
    }
}

.c57 {
    --card-side-margin:8px;
    --card-width:294px;
    --active-card-width:327px;
    --card-height:377px;
    --active-card-height:420px;
    --scale-ratio:0.9;
}
.c57 .opening-content .main-header {    
    margin-bottom: 48px;
}
.c57 .splide {
    padding-top: 80px;
    width: 100%;
}
.c57 .splide .splide__list {    
    align-items: center;
}
.c57 .splide .splide__slide {
    width: calc(var(--card-width) + var(--card-side-margin) * 2) !important;
    height: var(--active-card-height) !important;
    justify-content: center;
    pointer-events: none;
} 
.c57 .splide__slide.is-active {
   width: calc(var(--active-card-width) + var(--card-side-margin) * 2) !important;
    height: var(--active-card-height) !important;
}
.c57 .splide .splide__slide:not(.ending-slide) .inner-slide-wrapper:not([class*="background-color-"]) {
    background-color: var(--color-medium-blue);
}
.c57 .splide .splide__slide .inner-slide-wrapper {
    width: var(--active-card-width);
    height: var(--active-card-height);
    display: flex;
    flex-direction: column;
    overflow:hidden;
    border-radius: 5px;
    transform: scale3d(var(--scale-ratio), var(--scale-ratio), 1);
    transition: transform 0.25s cubic-bezier(0.72,0.05,0.35,1);
}
.c57 .splide .splide__slide.ending-slide .inner-slide-wrapper {
    padding: 24px;
    display:flex;
    flex-direction: column;
    justify-content: center !important;
    align-items: flex-start !important;
    flex: 1;
}
.c57 .splide .splide__slide.is-active:not(.ending-slide) .inner-slide-wrapper {
    border-radius: 8px;
    background-color: var(--color-medium-red);
}
.c57 .splide .splide__slide.is-active .inner-slide-wrapper {
    transform: scale3d(1, 1, 1);
    transition: transform 0.5s cubic-bezier(0.72,0.05,0.35,1);
}
.c57 .splide .splide__slide:not(.ending-slide) .inner-slide-wrapper,
.c57 .splide .splide__slide.ending-slide .cta-link {
    pointer-events: auto;
}
.c57 .splide .image-container {    
    align-self: center;
}
.c57 .splide .content-container {
    width: 100%;
    padding: 24px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1;
}
.c57 .splide .content-container .slide-header {
    text-align: left;
    margin-bottom: auto;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.c57 .splide .cta-container {
    margin-bottom:0;
}
.carousel-shared .splide .control {
    width: 100%;
    max-width: 327px;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
}
@media screen and (min-width: 768px) {
    .c57 {
        --card-side-margin:12px;
        --card-width:250px;
        --active-card-width:343px;
        --card-height:306px;
        --active-card-height:420px;
        --scale-ratio:0.73;
    }
    .carousel-shared .splide .control {
        width: auto;
        max-width: none;
        justify-content: center;
    }
}
@media screen and (min-width: 992px) {
    .c57 {
        --card-width: 282px;
        --active-card-width: 384px;
        --card-height: 346px;
        --active-card-height: 472px;
    }
    .c57 .splide {
        padding-top: 96px;
    }
    .c57 .splide .splide-wrapper {
        position: relative;
    }
    .c57 .splide .opening-content {
        position: absolute;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        padding: 0 120px;
        width: calc(50% - var(--active-card-width) / 2);
        height: 100%;
        left: 0;
        top: 0;
        transition: opacity ease-in-out 0.25s;
    }
    .c57 .splide .opening-content.hide {
        opacity: 0;
    }
    .c57 .splide .opening-content .main-header {    
        text-align: left;
        margin-bottom:0;
        max-width: 300px
    }
    .c57 .splide .splide__slide .content-container {
        padding: 16px 24px 24px;
    }
}
@media screen and (max-width: 375px) {
    .c57 .splide .splide__slide {
        width: auto !important;
        max-width: calc(var(--card-width) + var(--card-side-margin) * 2) !important;
    } 
    .c57 .splide__slide.is-active {
        width: auto !important;
        max-width: calc(var(--active-card-width) + var(--card-side-margin) * 2) !important;
    }
    .c57 .splide .splide__slide .inner-slide-wrapper {
        width: auto !important;
        max-width: var(--active-card-width);
    }
}
.c58 .splide {
    width: 100%;
}
.c58 .background {
    height: calc(100vw - 48px);
    width: 100%;
    max-width:996px;
    border-radius: 12px;
    background-position: center center;
    background-size: cover;
    margin-bottom: 10px;
    overflow: hidden;
}
.c58 .caption-container {
    align-self: flex-start;
}
.c58 .caption-container p:last-child {
    margin-bottom: 0;
}
@media screen and (min-width: 768px) {
    .c58 .background {
        height: auto;
        background: none !important;
    }
}
