:root {
    --heading-font: 'Poppins';
    --dark-blue: #25146F;
    --rich-black: #0E0026;
    --light-gray: #EDF1FF;
    --wex-red: #C8102E;
    --dark-red: #8B0026;
}

/* Background colors */
.background-color-light-grey {
    background-color: var(--light-gray);
}

.background-color-blue {
    background-color: var(--rich-black);
}

.top-form .gravity-form-wrapper {
	background-color: var(--rich-black);
}

footer, 
#bottom-footer {
    background-color: var(--rich-black) !important;
}

/* Link hovers */
a {
    color: inherit;
    text-decoration: none;
    transition: .3s color;
}

a:hover {
    text-decoration: underline;
}

/* Font colors */
body {
    color: var(--rich-black);
}

h1,
h2,
h2 strong,
h3,
h4,
h5,
h6 {
    font-family: var(--heading-font), sans-serif; 
    color: var(--dark-blue);
	font-weight: 700;
}

p,
span {
    color: var(--rich-black);
}

.background-color-blue .section-heading, 
.background-color-blue p, 
.background-color-blue span,
.background-color-blue .feature-title,
.background-color-dark-blue .section-heading, 
.background-color-dark-blue p, 
.background-color-dark-blue span,
.background-color-dark-blue .feature-title,
.background-color-dark-blue h1,
.background-color-dark-blue h2, 
.background-color-dark-blue h3,
.background-color-dark-blue h4, 
.background-color-dark-blue h5, 
.background-color-dark-blue h6,
h2.gform_title,
p.gform_required_legend {
    color: #FFFFFF;
}

/* Button styles */

.button--primary {
    font-size: 16px;
    line-height: 1;
    color: #FFFFFF !important;
    background-color: var(--wex-red);
    border-radius: 48px;
    padding: 16px 34px !important;
}

.button--primary:hover,
.button--primary:active,
.button--primary:focus {
    background-color: var(--dark-red);
}

/* Component: features with gray and colored styles */

.component-features.gray-and-colored-features .feature:nth-child(1) {
    border: 3px solid;
    border-color: var(--light-gray);
}

.component-features.gray-and-colored-features .feature:nth-child(1) .feature-title,
.component-features.gray-and-colored-features .feature:nth-child(1) .feature-description {
    color: var(--color-wex-grey-7);
}

.component-features.gray-and-colored-features .feature:nth-child(2) {
    border: 3px solid transparent;
    background-clip: padding-box;
    background-color: rgba(249, 249, 254, 1);
    position: relative;
}

.component-features.gray-and-colored-features .feature:nth-child(2)::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    margin: -3px; /* Matches the border thickness */
    border-radius: inherit;
    background: linear-gradient(
        135deg, 
        #ff9900 0%, 
        #ff0055 35%, 
        #7a00ff 70%, 
        #0066ff 100%
    );
}

/* Component: gradient new brand hero */

.gradient-new-brand.hero {
    /* Dark base color fallback */
    background-color: #0b0222; 
    /* Layered radial gradients over a base linear gradient */
    background-image: 
    /* Top-right crimson red glow */
    radial-gradient(ellipse at 90% 10%, #bd003c 0%, transparent 55%),
    /* Bottom-left dark blue shadow layer */
    radial-gradient(ellipse at 10% 80%, #03001e 0%, transparent 50%),  
    /* Center purple/violet blend running diagonally */
    linear-gradient(115deg, #090030 0%, #290354 45%, #8c003f 100%);
    background-repeat: no-repeat;
}

.gradient-new-brand.hero h1,
.gradient-new-brand.hero h2,
.gradient-new-brand.hero ul li,
.gradient-new-brand.hero p,
.gradient-new-brand.hero strong {
    color: #fff;
}

/* Component: gradient new brand call-to-action */

.gradient-new-brand-cta .container {
    background: linear-gradient(273.62deg, #2E0055 13.59%, #4A0088 48.09%, #C8102E 101.98%);
    max-width: 1200px;
    border-radius: var(--wex-border-radius);
    padding: 2em;
}

.gradient-new-brand-cta h3,
.gradient-new-brand-cta p {
    color: #fff;
}

.gradient-new-brand-cta .ctas-container {
    margin-top: 0;
}

.gradient-new-brand-cta .ctas-container-position-right .cta {
    margin-left: auto;
}
