/* -- Custom Elementor Global Styles -- */

/* Default Elementor Global Typography Sets */
.font-primary {
    font-family: var(--e-global-typography-primary-font-family) !important;
    font-weight: var(--e-global-typography-primary-font-weight) !important;
    text-transform: var(--e-global-typography-primary-text-transform) !important;
    font-style: var(--e-global-typography-primary-font-style) !important;
    text-decoration: var(--e-global-typography-primary-text-decoration) !important;
}

.font-secondary {
    font-family: var(--e-global-typography-secondary-font-family) !important;
    font-weight: var(--e-global-typography-secondary-font-weight) !important;
    text-transform: var(--e-global-typography-secondary-text-transform) !important;
    font-style: var(--e-global-typography-secondary-font-style) !important;
    text-decoration: var(--e-global-typography-secondary-text-decoration) !important;
}

.font-text {
    font-family: var(--e-global-typography-text-font-family) !important;
    font-size: var(--e-global-typography-text-font-size) !important;
    font-weight: var(--e-global-typography-text-font-weight) !important;
    line-height: var(--e-global-typography-text-line-height) !important;
    letter-spacing: var(--e-global-typography-text-letter-spacing) !important;
    text-transform: var(--e-global-typography-text-text-transform) !important;
    font-style: var(--e-global-typography-text-font-style) !important;
    text-decoration: var(--e-global-typography-text-text-decoration) !important;
}

.font-accent {
    font-family: var(--e-global-typography-accent-font-family) !important;
    font-weight: var(--e-global-typography-accent-font-weight) !important;
    font-style: var(--e-global-typography-accent-font-style) !important;
    text-decoration: var(--e-global-typography-accent-text-decoration) !important;
    letter-spacing: var(--e-global-typography-accent-letter-spacing) !important;
}

/* Custom Header Styles (H0-H8) */
.font-h0 {
    font-family: var(--e-global-typography-203cff9-font-family) !important;
    font-size: var(--e-global-typography-203cff9-font-size) !important;
    font-weight: var(--e-global-typography-203cff9-font-weight) !important;
    line-height: var(--e-global-typography-203cff9-line-height) !important;
    letter-spacing: var(--e-global-typography-203cff9-letter-spacing) !important;
}

.font-h1 {
    font-family: var(--e-global-typography-40605e8-font-family) !important;
    font-size: var(--e-global-typography-40605e8-font-size) !important;
    font-weight: var(--e-global-typography-40605e8-font-weight) !important;
    line-height: var(--e-global-typography-40605e8-line-height) !important;
    letter-spacing: var(--e-global-typography-40605e8-letter-spacing) !important;
}

.font-h2 {
    font-family: var(--e-global-typography-d5c9c7a-font-family) !important;
    font-size: var(--e-global-typography-d5c9c7a-font-size) !important;
    font-weight: var(--e-global-typography-d5c9c7a-font-weight) !important;
    line-height: var(--e-global-typography-d5c9c7a-line-height) !important;
    letter-spacing: var(--e-global-typography-d5c9c7a-letter-spacing) !important;
}

.font-h3 {
    font-family: var(--e-global-typography-7a1d59d-font-family) !important;
    font-size: var(--e-global-typography-7a1d59d-font-size) !important;
    font-weight: var(--e-global-typography-7a1d59d-font-weight) !important;
    line-height: var(--e-global-typography-7a1d59d-line-height) !important;
    letter-spacing: var(--e-global-typography-7a1d59d-letter-spacing) !important;
}

.font-h4 {
    font-family: var(--e-global-typography-efe3340-font-family) !important;
    font-size: var(--e-global-typography-efe3340-font-size) !important;
    font-weight: var(--e-global-typography-efe3340-font-weight) !important;
    line-height: var(--e-global-typography-efe3340-line-height) !important;
    letter-spacing: var(--e-global-typography-efe3340-letter-spacing) !important;
}

.font-h5 {
    font-family: var(--e-global-typography-d90c642-font-family) !important;
    font-size: var(--e-global-typography-d90c642-font-size) !important;
    font-weight: var(--e-global-typography-d90c642-font-weight) !important;
    line-height: var(--e-global-typography-d90c642-line-height) !important;
    letter-spacing: var(--e-global-typography-d90c642-letter-spacing) !important;
}

.font-h6 {
    font-family: var(--e-global-typography-b874cbe-font-family) !important;
    font-size: var(--e-global-typography-b874cbe-font-size) !important;
    font-weight: var(--e-global-typography-b874cbe-font-weight) !important;
    line-height: var(--e-global-typography-b874cbe-line-height) !important;
    letter-spacing: var(--e-global-typography-b874cbe-letter-spacing) !important;
}

.font-h7 {
    font-family: var(--e-global-typography-d20431e-font-family) !important;
    font-size: var(--e-global-typography-d20431e-font-size) !important;
    font-weight: var(--e-global-typography-d20431e-font-weight) !important;
    line-height: var(--e-global-typography-d20431e-line-height) !important;
    letter-spacing: var(--e-global-typography-d20431e-letter-spacing) !important;
}

.font-h8 {
    font-family: var(--e-global-typography-3c2c029-font-family) !important;
    font-size: var(--e-global-typography-3c2c029-font-size) !important;
    font-weight: var(--e-global-typography-3c2c029-font-weight) !important;
    line-height: var(--e-global-typography-3c2c029-line-height) !important;
    letter-spacing: var(--e-global-typography-3c2c029-letter-spacing) !important;
}

.font-h9 {
    font-family: var(--e-global-typography-3c2c029-font-family) !important;
    font-size: 0.4rem;
    font-weight: 380 !important;
    line-height: var(--e-global-typography-3c2c029-line-height) !important;
    letter-spacing: var(--e-global-typography-3c2c029-letter-spacing) !important;
}

/* Custom Body Styles */
.font-body-xxl { /* Body.XXLarge */
    font-family: var(--e-global-typography-ad17876-font-family) !important;
    font-size: var(--e-global-typography-ad17876-font-size) !important;
    line-height: var(--e-global-typography-ad17876-line-height) !important;
    letter-spacing: var(--e-global-typography-ad17876-letter-spacing) !important;
}

.font-body-xl { /* Body.XLarge */
    font-family: var(--e-global-typography-7a8416c-font-family) !important;
    font-size: var(--e-global-typography-7a8416c-font-size) !important;
    line-height: var(--e-global-typography-7a8416c-line-height) !important;
    letter-spacing: var(--e-global-typography-7a8416c-letter-spacing) !important;
}

.font-body-lg { /* Body.Large */
    font-family: var(--e-global-typography-9a6174b-font-family) !important;
    font-size: var(--e-global-typography-9a6174b-font-size) !important;
    line-height: var(--e-global-typography-9a6174b-line-height) !important;
}

.font-body-md { /* Body.Medium */
    font-family: var(--e-global-typography-844ddf4-font-family) !important;
    font-size: var(--e-global-typography-844ddf4-font-size) !important;
    line-height: var(--e-global-typography-844ddf4-line-height) !important;
    letter-spacing: var(--e-global-typography-844ddf4-letter-spacing) !important;
}

.font-body-sm { /* Body.Small */
    font-family: var(--e-global-typography-7e8e846-font-family) !important;
    font-size: var(--e-global-typography-7e8e846-font-size) !important;
    line-height: var(--e-global-typography-7e8e846-line-height) !important;
}

.font-body-xs { /* Body.XSmall */
    font-family: var(--e-global-typography-d8da1de-font-family) !important;
    font-size: var(--e-global-typography-d8da1de-font-size) !important;
    line-height: var(--e-global-typography-d8da1de-line-height) !important;
}

.font-body-xxs { /* Body.XXSmall */
    font-family: var(--e-global-typography-9b16172-font-family) !important;
    font-size: var(--e-global-typography-9b16172-font-size) !important;
    line-height: var(--e-global-typography-9b16172-line-height) !important;
}


/* --- Global Color Classes --- */

/* Text Colors */
.color-black {
    color: #000 !important;
}

.color-grey-900 {
    color: var(--e-global-color-d4bf8da) !important;
}

.color-grey-800 {
    color: var(--e-global-color-06ed7f5) !important;
}
.color-grey-700 {
    color: var(--e-global-color-d461ad2) !important;
}
.color-grey-500 {
    color: var(--e-global-color-f010e7e) !important;
}
.color-grey-300 {
    color: var(--e-global-color-5e8f42f) !important;
}
.color-grey-100 {
    color: var(--e-global-color-a186541) !important;
}

/* Background Colors */
.bg-grey-900 {
    background-color: var(--e-global-color-d4bf8da) !important;
}

.bg-grey-500 {
    background-color: var(--e-global-color-f010e7e) !important;
}
.bg-grey-300 {
    background-color: var(--e-global-color-5e8f42f) !important;
}
.bg-grey-100 {
    background-color: var(--e-global-color-a186541) !important;
}

/* Border Colors (Optional, also useful) */
.border-grey-900 {
    border-color: var(--e-global-color-d4bf8da) !important;
}

