:root {
--color-error: #c41313;
}

.hsfc-Form {
font-family: var(--font-gilmer) !important;
}

.hsfc-Step__Content {
padding: 0 !important;
}

.hsfc-FieldLabel__RequiredIndicator {
color: var(--color-primary-light-text) !important;
fill: var(--color-primary-light-text) !important;
padding-left: 1px;
}

.hsfc-ErrorAlert{
color: var(--color-error) !important;
font-family: var(--font-gilmer) !important;
}

.hs-form-required{
color: var(--color-error) !important;
font-family: var(--font-gilmer) !important;
}

.hsfc-FieldLabel {
font-family: var(--font-gilmer) !important;
color: var(--color-primary-light-text) !important;
}

.hsfc-TextareaInput, .hsfc-TextInput {
font-family: var(--font-gilmer) !important;
color: var(--color-primary) !important;
padding: 16px !important;
font-size: 1rem !important;
border-radius: 6px !important;
border: 2px solid var(--color-primary-light-75) !important;
background-color: var(--color-primary-light-90) !important;
}

.hsfc-TextareaInput:focus, .hsfc-TextInput:focus {
border: 2px solid var(--color-primary) !important;
}


.hsfc-DropdownInput {
}

.hsfc-PhoneInput__FlagAndCaret {
font-family: var(--font-gilmer) !important;
color: var(--color-primary) !important;
padding: 16px !important;
font-size: 1rem !important;
border-radius: 6px !important;
border: 2px solid var(--color-primary-light-75) !important;
background-color: var(--color-primary-light-90) !important;
}

/* Or specifically for HubSpot form inputs */
.hsfc-TextInput[aria-invalid="true"] {
border: 2px solid var(--color-error) !important;
}

.hsfc-DropdownOptions__List__ListItem {
font-family: var(--font-gilmer) !important;
color: var(--color-primary) !important;
}

/* Hide the default caret content */
.hsfc-DropdownInput__Caret  span {
display: none !important;
}

.hsfc-DataPrivacyField .hsfc-RichText {
font-family: var(--font-gilmer) !important;
color: var(--color-primary) !important;
}

.hsfc-CheckboxField .hsfc-FieldLabel {
font-size: .875rem;
display: inline-flex !important;
}

.hsfc-CheckboxInput:checked {
background-color: var(--color-secondary-light-80);
border: 2px solid var(--color-secondary);
}

.hsfc-CheckboxInput:focus {
outline: 2px solid var(--color-primary) !important;
outline-offset: 2px;
}

.hsfc-CheckboxInput {
width: 28px !important; /* Adjust as needed */
height: 28px !important; /* Adjust as needed */
margin-right: 10px !important;
}

.hsfc-CheckboxInput[aria-invalid="true"] {
border: 2px solid var(--color-error) !important;
outline: none;
}

/* You might also want to add some focus styles */
.hsfc-CheckboxInput[aria-invalid="true"]:focus {
box-shadow: 0 0 0 2px rgba(255, 0, 0, 0.25);
}

/* Add your SVG as a background or insert it via CSS */
{# .hsfc-DropdownInput__Caret {
position: relative;
width: 24px;
height: 24px;
} #}

.hsfc-DropdownInput__Caret::before {
content: '';
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 0;
width: 100%;
height: 100%;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='icon icon-tabler icons-tabler-outline icon-tabler-chevron-down'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M6 9l6 6l6 -6' /%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: center;
}

.hsfc-Button {
font-family: var(--font-gilmer) !important;
background-color: var(--color-secondary) !important;
color: var(--color-primary) !important;
transition: background-color 0.3s, color 0.3s !important;
min-width: max-content !important;
max-width: max-content !important;
border-radius: 64px !important;
font-size: 18px !important;
font-weight: 500 !important;
line-height: 1.0 !important;
padding: 12px 24px 12px 24px !important;
}

.hsfc-Button:hover {
background-color: var(--color-primary-dark-20) !important;
color: white !important;
}

.hsfc-NavigationRow__Alerts .hsfc-ErrorAlert {
padding: 32px;
border-radius: 6px;
background-color: var(--color-primary-light-90);
border: 2px solid var(--color-error);
color: var(--color-error) !important;
}

.hs-form {
    font-family: var(--font-gilmer) !important;
}

.hs-form fieldset{
    max-width:   100% !important;
    width: 100% !important;
    padding-bottom: 24px !important;
}

.hs-form label {
    font-family: var(--font-gilmer) !important;
    color: var(--color-primary-light-text) !important;
}

.hs-form label {
    font-family: var(--font-gilmer) !important;
    color: var(--color-primary-light-text) !important;
}


.hs-form input {
    font-family: var(--font-gilmer) !important;
    color: var(--color-primary) !important;
    padding: 16px !important;
    font-size: 1rem !important;
    border-radius: 6px !important;
    border: 2px solid var(--color-primary-light-75) !important;
    background-color: var(--color-primary-light-90) !important;
    width: 100%;
}

.hs-form .no-list, .hs-form ul {
    list-style-image: none !important;
    list-style-type: none !important;
    padding: 8 0 0 0 !important;
    margin: 0 !important;
}

.hs-form .hs-error-msg {
    font-family: var(--font-gilmer) !important;
    color: var(--color-error) !important;
}