:root {
     --xs: 4px;
     --sm: 8px;
     --base: 16px;
    /* base = medium */
     --lg: 32px;
     --xl: 64px;
     --xxl: 128px;
     --3x: 192px;
     --reynolds-red: #9D2235;
     --reynolds-red-50: #9D223580;
     --red-light: #C12F41;
     --red-dark: #76232F;
     --green-light: #279989;
     --green-dark: #1D6960;
     --purple-light: #722257;
     --purple-dark: #4D173B;
     --orange-light: #D75A1B;
     --orange-dark: #B64B16;
     --blue-light: #256BA2;
     --blue-dark: #254A5D;
     --black: #2d2926;
     --silver-dark: #75787b;
     --silver: #b1b3b3;
     --silver-light: #ebebeb;
     --white: #fcfcfc;
     --text: var(--black);
     --background: var(--white);
     --primary: var(--reynolds-red);
     --secondary: var(--silver-light);
     --accent: var(--orange-light);
     --gradient: linear-gradient(120deg,var(--primary),var(--accent));
     --jsr-shape: 0 var(--lg);
     --shadow-color: 0deg 0% 0%;
     --shadow-elevation-low: 0.3px 0.5px 0.7px hsl(var( --shadow-color) / 0.34), 0.4px 0.8px 1px -1.2px hsl(var(--shadow-color) / 0.34), 1px 2px 2.5px -2.5px hsl(var(--shadow-color) / 0.34);
     --shadow-elevation-medium: 0.3px 0.5px 0.7px hsl(var( --shadow-color) / 0.36), 0.8px 1.6px 2px -0.8px hsl(var(--shadow-color) / 0.36), 2.1px 4.1px 5.2px -1.7px hsl(var(--shadow-color) / 0.36), 5px 10px 12.6px -2.5px hsl(var(--shadow-color) / 0.36);
     --shadow-elevation-high: 0.3px 0.5px 0.7px hsl(var( --shadow-color) / 0.34), 1.5px 2.9px 3.7px -0.4px hsl(var(--shadow-color) / 0.34), 2.7px 5.4px 6.8px -0.7px hsl(var(--shadow-color) / 0.34), 4.5px 8.9px 11.2px -1.1px hsl(var(--shadow-color) / 0.34), 7.1px 14.3px 18px -1.4px hsl(var(--shadow-color) / 0.34), 11.2px 22.3px 28.1px -1.8px hsl(var(--shadow-color) / 0.34), 17px 33.9px 42.7px -2.1px hsl(var(--shadow-color) / 0.34), 25px 50px 62.9px -2.5px hsl(var(--shadow-color) / 0.34);
}
/* Utility Classes */
 .mt-0 {
     margin-top: 0 !important;
}
 .mb-0 {
     margin-bottom: 0 !important;
}
 .my-0 {
     margin-top: 0 !important;
     margin-bottom: 0 !important;
}
 .my-xs {
     margin-top: var(--xs) !important;
     margin-bottom: var(--xs) !important;
}
 .my-sm {
     margin-top: var(--sm) !important;
     margin-bottom: var(--sm) !important;
}
 .my-lg {
     margin-top: var(--lg) !important;
     margin-bottom: var(--lg) !important;
}
 .my-xl {
     margin-top: var(--xl) !important;
     margin-bottom: var(--xl) !important;
}
 .py-0 {
     padding-top: 0 !important;
     padding-bottom: 0 !important;
}
 .py-xs {
     padding-top: var(--xs) !important;
     padding-bottom: var(--xs) !important;
}
 .py-sm {
     padding-top: var(--sm) !important;
     padding-bottom: var(--sm) !important;
}
 .py-lg {
     padding-top: var(--lg) !important;
     padding-bottom: var(--lg) !important;
}
 .py-xl {
     padding-top: var(--xl) !important;
     padding-bottom: var(--xl) !important;
}
 @media (min-width: 768px) {
     .py-xxl {
         padding-top: var(--xxl) !important;
         padding-bottom: var(--xxl) !important;
    }
     .py-3x {
         padding-top: var(--3x) !important;
         padding-bottom: var(--3x) !important;
    }
}
/*removes the space below the last section and above the footer*/
 .mb-remove-main {
     margin-bottom: -20px !important;
}
/*Program Styles*/
 .embed-career iframe[id^=program-widget] {
     max-width: 100% !important;
     width: 668px !important;
     min-width: unset !important;
     margin: auto;
}
 .embed-career .two-column__column-content p {
     flex: 1 0 30ch;
}
 .embed-career .two-column__column-content {
     display: flex;
     flex-wrap: wrap;
     gap: 1rem;
}
 .text-mw_75 > div {
     max-width: 75ch;
     margin: auto;
}
/*PROGRAM SNAPSHOT*/
 main#main .program-snapshot .component-card-container {
    /*grid-template-columns: repeat(auto-fit, minmax(calc((100% - 1em) / 2), 280px));
    */
     grid-template-columns: auto;
     grid-gap: 1em;
     justify-content: center;
}
 @media (min-width: 768px) {
     main#main .program-snapshot .component-card-container {
        /*grid-template-columns: repeat(auto-fit, minmax(calc((100%) / 5), 350px));
        */
         grid-template-columns: repeat(2, 350px);
         grid-gap: 1em;
    }
     main#main .program-snapshot.card-3 .component-card-container {
         grid-template-columns: repeat(3, 1fr);
         grid-gap: 1em;
    }
}
 main#main .program-snapshot .component-card-container .component-card {
     color: initial;
     box-shadow: unset;
     place-self: stretch;
}
/*main#main .program-snapshot.card-3 .component-card-container .component-card:last-child{
    */
    /* grid-column: 1 / -1;
    */
    /* place-self: center;
    */
    /*
}
*/
 main#main .program-snapshot .component-card-container .component-card .card-info {
     display: flex;
     align-items: flex-start;
     gap: 1em;
     padding: 0;
}
 .program-snapshot i {
     color: var(--reynolds-red);
     line-height: inherit;
     min-width: 40px;
     display: flex;
     justify-content: center;
     background: linear-gradient(120deg,var(--primary),var(--accent));
     background-clip: text;
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent 
}
 .program-snapshot p {
     margin: 0;
}
 main#main section.jsr-component.program-snapshot {
     margin-top: var(--lg);
}
 main#main .program-hero .program-hero__bg {
     background: top right / cover no-repeat scroll black;
}
 main#main .card-container .link-card, main#main .component-card-container .link-card {
     color: initial;
}
 .d-none {
     display: none;
}
 .h-line h2:first-of-type {
     text-align: center;
}
 .h-line h2:first-of-type:after {
     margin: var(--base) auto var(--lg);
     content: "";
     display:block;
     width: 100px;
     height: 10px;
     background: var(--gradient);
     border-radius:2px;
}
 .rfi .col-md-12 {
     max-width: 75ch;
     border-top: 8px solid orange;
     background: #ffffffed;
     padding: var(--base);
     margin-top: 60px;
     backdrop-filter: blur(16px);
     box-shadow: var(--shadow-elevation-medium);
}
 .wForm {
     padding: 0px;
}
 main#main .two-column.rfi .two-column__content-container .two-column__column-content {
     padding-bottom: 0px;
}
 .rfi .wForm .actions {
     padding: 0px;
}
 .wForm form > div.oneField {
     margin-top: 2px;
}
 .fullwidth-contain {
     margin: auto;
     max-width: unset;
     width: inherit;
     border-radius: var(--jsr-shape);
}
 main#main .program-hero-breadcrumbs .breadcrumb {
     margin-top: 0;
}
 main#main .jsr-component {
     padding: unset;
}
 main#main .fullwidth {
     padding-top: var(--xl);
     padding-bottom: var(--xl);
}
 ul.program-hero__bottom-eyebrow {
     margin-bottom: 0;
}
 ul.program-hero__bottom-eyebrow {
     margin: 0;
}
 main#main .program-hero .program-hero__top-eyebrow {
     margin-bottom: 0;
}
 h1.program-hero__title {
     margin-bottom: 0;
}
 .card-info > :last-child {
     margin-bottom: 0;
}
 main#main .card-container .card .card-info, main#main .card-container .card .component-card-info, main#main .card-container .component-card .card-info, main#main .card-container .component-card .component-card-info, main#main .card-container .related-card .card-info, main#main .card-container .related-card .component-card-info, main#main .component-card-container .card .card-info, main#main .component-card-container .card .component-card-info, main#main .component-card-container .component-card .card-info, main#main .component-card-container .component-card .component-card-info, main#main .component-card-container .related-card .card-info, main#main .component-card-container .related-card .component-card-info {
     padding: var(--base);
}
 main#main .card-container .card, main#main .card-container .component-card, main#main .card-container .related-card, main#main .component-card-container .card, main#main .component-card-container .component-card, main#main .component-card-container .related-card {
     color: inherit;
}
 main#main .card-container .card p, main#main .card-container .component-card p, main#main .card-container .related-card p, main#main .component-card-container .card p, main#main .component-card-container .component-card p, main#main .component-card-container .related-card p {
     line-height: inherit;
     font-size: inherit;
}
/*Card Links in Body*/
main#main .card-container .card a, main#main .card-container .component-card a, main#main .card-container .related-card a, main#main .component-card-container .card a, main#main .component-card-container .component-card a, main#main .component-card-container .related-card a {
  transition: color 0.25s;
  color: inherit;
  text-decoration: underline;
}
main#main .card-container .card a:hover, main#main .card-container .component-card a:hover, main#main .card-container .related-card a:hover, main#main .component-card-container .card a:hover, main#main .component-card-container .component-card a:hover, main#main .component-card-container .related-card a:hover {
  text-decoration: underline;
	color: var(--blue-light);
}

 main#main section.jsr-component.program-snapshot.fullwidth {
     margin: 0px calc(50% - 50vw);
     max-width: 100vw;
     width: 100vw;
     margin-top: var(--lg);
}
 .jsr-banner .program-hero-banner__interior.grid-width-content, main#main .jsr-banner .jsr-banner__button-container, main#main section.jsr-component.program-snapshot.fullwidth {
     padding: 0 var(--base);
}
 .program-hero-banner.rfi::before {
     background: linear-gradient(to bottom, rgba(255, 255, 255, 1),rgba(0, 0, 0, 0),rgba(255, 255, 255, 1));
}
 section.program-hero-banner.fullwidth.jsr-banner.rfi {
     background-position: center;
     background-repeat: no-repeat;
}
 .rfi > div.jsr-banner__content-container.program-hero-banner__interior.grid-width-content {
     width: 800px;
     max-width: 90%;
     padding: var(--base);
    /* border-top: 8px solid var(--accent);
     */
    /* background: #ffffff8c;
     */
    /* backdrop-filter: blur(4px);
     */
    /* box-shadow: var( --shadow-elevation-medium);
     */
     background: var(--white);
     box-shadow: 0 0 0 2px var(--primary), 8px 8px 0 0 var(--primary);
     border-radius: var(--jsr-shape);
}
 .program-hero-banner.rfi h2, main#main .jsr-banner.rfi .jsr-banner__content-container p {
     text-shadow: unset;
     color: var(--black);
     padding: 0;
     max-width: 65ch;
}
 .jsr-component .container {
     max-width: 100%;
}
 @media only screen and (max-width: 992px) {
     main#main .full-width-with-image .full-width-with-image__content-container, main#main .two-column .two-column__content-container {
         flex-direction: column-reverse;
    }
     main#main .full-width-with-image .full-width-with-image__content-container:has(.left-image), main#main .two-column .two-column__content-container:has(.left-image){
         flex-direction: column;
    }
}
 @media only screen and (max-width: 992px) {
     main#main .full-width-with-image .full-width-with-image__content-container .full-width-with-image__image {
         margin-bottom: var(--base);
    }
}
 img[src*="jsr-roadmap"] {
     max-height: 200px;
     margin: auto;
     display: flex;
}
 main#main section + section {
    /* margin-top: var(--xl);
     margin-bottom: var(--xl);
     */
     margin-top: clamp(4rem, 1.895rem + 11.228vw, 12rem);
     margin-bottom: clamp(4rem, 1.895rem + 11.228vw, 12rem);
}
 .fullwidth-contain .container {
     max-width: fit-content;
}
 .jsr-shape img {
     border-radius: var(--jsr-shape);
}
 main#main .full-width-with-image .full-width-with-image__content-container .full-width-with-image__title, main#main .jsr-banner.no-img .jsr-banner__content-container p, main#main .jsr-banner.no-img .jsr-banner__content-container h2 {
     text-shadow: unset;
}
 .quote-alum div.col-md-6:first-of-type {
     align-self: center;
}
 .quote-alum img {
     object-fit: cover;
     border-radius: var(--jsr-shape);
}
 main#main .quote-alum .two-column__content-container .two-column__media-container {
     aspect-ratio: 4 / 5;
}
 .quote-alum .two-column__content-container {
     gap: var(--base) 0;
}
 .quote-txt {
     position: relative;
}
 .quote-txt:before, .quote-txt:after {
     font: var(--fa-font-solid);
     display: block;
     font-size: 64px;
     width: 100%;
     background-size: calc(100% - 64px - 8px) 4px;
     background-repeat: no-repeat;
     background-image: var(--gradient);
     line-height: 0.7;
}
 .quote-txt:before {
     content: "\f10d";
     margin-bottom: var(--base);
     color: var(--reynolds-red);
     background-position-y: bottom;
     background-position-x: right;
}
 .quote-txt:after {
     content: "\f10e";
     margin-top: var(--base);
     text-align: end;
     color: var(--accent);
     margin-bottom: calc(-1.38rem - 28px);
}
 main#main [class*="no-img-"], main#main [class*="no-img-"] a {
     color: white !important;
}
 main#main [class*="no-img-default"], main#main [class*="no-img-default"] a {
     color: var(--black) !important;
}
 main#main .no-img-orange {
     background: var(--orange-dark);
}
 main#main .no-img-green {
     background: var(--green-dark);
}
 main#main .no-img-purple {
     background: var(--purple-light);
}
 main#main .no-img-reynoldsred {
     background: var(--reynolds-red);
}
 main#main .no-img-lightred {
     background: var(--red-light);
}
 *[class*="no-img-"] a.cta-link::before {
     background-image: none;
}
 .no-img-orange a.cta-link::before, .no-img-orange a.jsr-button.cta-outline-i:hover, .no-img-orange a.jsr-button.cta-outline-i:active, .no-img-orange a.jsr-button.cta-outline-i:focus {
     background-color: var(--orange-light);
}
 .no-img-green a.cta-link::before, .no-img-green a.jsr-button.cta-outline-i:hover, .no-img-green a.jsr-button.cta-outline-i:active, .no-img-green a.jsr-button.cta-outline-i:focus {
     background-color: var(--green-light);
}
 .no-img-purple a.cta-link::before, .no-img-purple a.jsr-button.cta-outline-i:hover, .no-img-purple a.jsr-button.cta-outline-i:active, .no-img-purple a.jsr-button.cta-outline-i:focus {
     background-color: var(--purple-dark);
}
 .no-img-reynoldsred a.cta-link::before, .no-img-lightred a.cta-link::before, .no-img-reynoldsred a.jsr-button.cta-outline-i:hover, .no-img-reynoldsred a.jsr-button.cta-outline-i:active, .no-img-reynoldsred a.jsr-button.cta-outline-i:focus, .no-img-lightred a.jsr-button.cta-outline-i:hover, .no-img-lightred a.jsr-button.cta-outline-i:active, .no-img-lightred a.jsr-button.cta-outline-i:focus {
     background-color: var(--red-dark);
}
 main#main .jsr-component.jsr-component.program-finder-results {
     margin-top: unset;
}

.program-hero-banner{
	padding:20vh 0;
	text-align:center;
	background-position:center;
	background-size:cover;
	position:relative
}
.program-hero-banner.overlay::before{
	content:' ';
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	background:#000;
	opacity:.5
}
.fullwidth-contain::before {
    background: transparent;
}

.program-hero-banner__interior.grid-width-content{
	position:relative;
	max-width:800px;
	margin:0 auto;
	padding:0 40px
}

.program-hero-banner h1,
.program-hero-banner h2{
	color:white;
	text-shadow:0px 0px 5px black;
	margin:0
}

.button-container {
        display: flex; 
        gap: 0em 1em; 
        flex-wrap: wrap;
    }
