/* HubSpot contact form (_ContactForm.cshtml) styled like the site's native form.
   HubSpot's own CSS loads after this file, so every rule is prefixed to win on specificity. */

.hs-form-moncur [data-hsfc-id=Renderer] {
    /* HubSpot theme variables */
    --hsf-global__font-family: "owners", sans-serif;
    --hsf-global__font-size: 1em;
    --hsf-global__color: #707070;
    --hsf-background__padding: 0;
    --hsf-row__horizontal-spacing: 1.25em;
    --hsf-row__vertical-spacing: 1em;
    --hsf-module__vertical-spacing: 0;
    --hsf-field-label__font-family: "owners", sans-serif;
    --hsf-field-label__font-size: 1em;
    --hsf-field-label__color: #707070;
    --hsf-field-input__font-family: "owners", sans-serif;
    --hsf-field-input__font-size: 1em;
    --hsf-field-input__color: #707070;
    --hsf-field-input__background-color: transparent;
    --hsf-field-input__border-color: #9f9f9f;
    --hsf-field-input__border-style: solid;
    --hsf-field-input__border-width: 0 0 1px 0;
    --hsf-field-input__border-radius: 0;
    --hsf-field-input__padding: 1.23214em 1.02679em .41071em 0;
    --hsf-field-input__placeholder-color: transparent;
    --hsf-field-textarea__font-family: "owners", sans-serif;
    --hsf-field-textarea__font-size: 1em;
    --hsf-field-textarea__color: #707070;
    --hsf-field-textarea__background-color: transparent;
    --hsf-field-textarea__border-color: #9f9f9f;
    --hsf-field-textarea__border-style: solid;
    --hsf-field-textarea__border-width: 0 0 1px 0;
    --hsf-field-textarea__border-radius: 0;
    --hsf-field-textarea__padding: 1.23214em 1.02679em .41071em 0;
    --hsf-field-textarea__placeholder-color: transparent;
    --hsf-field-description__font-size: .7em;
    --hsf-erroralert__font-family: "owners", sans-serif;
    --hsf-erroralert__font-size: .75em;
    --hsf-navigationrow-buttons__justify-content: flex-start;
    --hsf-navigationrow-buttons-single__justify-content: flex-start;
    color: #707070;
}

/* ---------- Fields ---------- */

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextField,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-EmailField,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextareaField,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FileField,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownField {
    position: relative;
}

/* Label sits inside the input like a placeholder */
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FieldLabel {
    position: absolute;
    left: 0;
    top: 1.39286em;
    margin: 0;
    line-height: 1.2;
    white-space: nowrap;
    color: #707070;
    transform: translateY(-50%) scale(1);
    transform-origin: left center;
    transition: all .15s;
    cursor: text;
    pointer-events: none;
    z-index: 1;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FieldLabel em {
    font-style: italic;
    font-size: .83333em;
}

/* Label floats up when the field is focused or has a value (.hs-filled is set by HubSpotFormHandler.js) */
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownField .hsfc-FieldLabel,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FileField .hsfc-FieldLabel,
.hs-form-moncur [data-hsfc-id=Renderer] .hs-filled .hsfc-FieldLabel,
.hs-form-moncur [data-hsfc-id=Renderer] [data-hsfc-id$="Field"]:focus-within .hsfc-FieldLabel {
    top: .98214em;
    transform: translateY(-55%) scale(.7);
}

/* Same without JS; separate rule so browsers without :has() only drop this one */
.hs-form-moncur [data-hsfc-id=Renderer] [data-hsfc-id$="Field"]:has(> .hsfc-TextInput:not(:placeholder-shown)) .hsfc-FieldLabel,
.hs-form-moncur [data-hsfc-id=Renderer] [data-hsfc-id$="Field"]:has(> .hsfc-TextareaInput:not(:placeholder-shown)) .hsfc-FieldLabel,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField:has(.hsfc-PhoneInput > .hsfc-TextInput:not(:placeholder-shown)) .hsfc-FieldLabel {
    top: .98214em;
    transform: translateY(-55%) scale(.7);
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FieldLabel__RequiredIndicator,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FieldDescription {
    display: none;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextInput,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextareaInput {
    display: block;
    width: 100%;
    box-sizing: border-box;
    line-height: 1.3;
    outline: 0 none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextInput:hover,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextInput:focus,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextInput:active,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextareaInput:hover,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextareaInput:focus,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextareaInput:active {
    box-shadow: none;
}

/* Darker underline on focus */
.hs-form-moncur [data-hsfc-id=Renderer] [data-hsfc-id$="Field"]:focus-within > .hsfc-TextInput,
.hs-form-moncur [data-hsfc-id=Renderer] [data-hsfc-id$="Field"]:focus-within > .hsfc-TextareaInput,
.hs-form-moncur [data-hsfc-id=Renderer] [data-hsfc-id$="Field"]:focus-within .hsfc-DropdownInput > .hsfc-TextInput,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField:focus-within .hsfc-PhoneInput > .hsfc-TextInput,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField:focus-within .hsfc-PhoneInput .hsfc-PhoneInput__FlagAndCaret {
    border-bottom-color: #555555;
}

/* Message: one line tall, user can drag it taller */
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-TextareaInput {
    height: calc(2.94286em + 1px);
    min-height: calc(2.94286em + 1px);
    resize: vertical;
    overflow: auto;
}

/* ---------- Inquiry Type dropdown ---------- */

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownInput > .hsfc-TextInput {
    cursor: pointer;
    padding-right: 1.6em;
    text-overflow: ellipsis;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownInput__Caret {
    padding: 0 .2em 0 1em;
    right: .25em;
}

/* Chevron instead of HubSpot's triangle */
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownInput__Caret > span {
    width: .45em;
    height: .45em;
    border: 0;
    border-right: 2px solid #333333;
    border-bottom: 2px solid #333333;
    transform: translateY(-30%) rotate(45deg);
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownOptions {
    margin-top: 2px;
    background-color: #ffffff;
    border: 1px solid #d9d9d9;
    border-radius: 0;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
    font-size: .8em;
    color: #333333;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownOptions__Search {
    padding: .5em;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownOptions .hsfc-TextInput {
    padding: .5em .75em;
    border: 1px solid #dddddd;
    border-radius: 0;
    background-color: #ffffff;
    color: #333333;
    cursor: text;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownOptions .hsfc-TextInput::placeholder {
    color: #999999;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownOptions__List {
    max-height: 16em;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownOptions__List__ListItem {
    padding: .6em 1em;
    color: #333333;
    background-color: #ffffff;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownOptions__List__ListItem--selected {
    background-color: #f2f2f2;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownOptions__List__ListItem:hover,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-DropdownOptions__List__ListItem:focus {
    background-color: #f7f7f7;
    filter: none;
}

/* ---------- Resume upload (shown by HubSpot when Inquiry Type is Careers) ---------- */

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FileInput {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 1.23214em 1.02679em .41071em 0;
    line-height: 1.3;
    color: #707070;
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid #9f9f9f;
    border-radius: 0;
    cursor: pointer;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FileInput:focus,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FileInput:focus-visible {
    outline: 0 none;
    border-bottom-color: #555555;
}

/* Browser "Choose file" button shown as plain text */
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FileInput::-webkit-file-upload-button,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-FileInput::file-selector-button {
    font-family: "owners", sans-serif;
    font-size: 1em;
    line-height: 1.3;
    margin: 0 .75em 0 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #333333;
    cursor: pointer;
}

/* ---------- Phone ---------- */

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField .hsfc-PhoneInput {
    align-items: stretch;
}

/* Country picker shares the input's underline */
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField .hsfc-PhoneInput .hsfc-PhoneInput__FlagAndCaret {
    box-sizing: border-box;
    min-width: 0;
    column-gap: .35em;
    padding: 1.23214em .7em .41071em 0;
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid #9f9f9f;
    border-radius: 0;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField .hsfc-PhoneInput .hsfc-PhoneInput__FlagAndCaret:hover {
    filter: none;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField .hsfc-PhoneInput .hsfc-PhoneInput__FlagAndCaret__Flag {
    font-size: 1em;
    line-height: 1.3;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField .hsfc-PhoneInput .hsfc-PhoneInput__FlagAndCaret__Caret {
    width: .4em;
    height: .4em;
    border: 0;
    border-right: 2px solid #333333;
    border-bottom: 2px solid #333333;
    transform: translateY(-30%) rotate(45deg);
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PhoneField .hsfc-PhoneInput > .hsfc-TextInput {
    border-left: 0;
}

/* ---------- SEND button (same as the site's .btn) ---------- */

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-Button {
    font-size: .69444em;
    font-family: "owners-wide", sans-serif;
    letter-spacing: .2em;
    text-transform: uppercase;
    font-weight: 500;
    line-height: 1.2;
    display: inline-flex;
    align-items: center;
    width: auto;
    min-width: 16.07143em;
    padding: 1.21429em 3.57143em 1.10714em 1.78571em;
    border: 0;
    border-radius: .35714em;
    background-color: #0b4ff2;
    background-image: none;
    box-shadow: none;
    color: #ffffff;
    text-align: left;
    outline: none;
    position: relative;
    cursor: pointer;
    transition: all .4s;
}

/* Arrow */
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-Button:after {
    content: "";
    display: inline-block;
    width: .53571em;
    height: .53571em;
    border-right: 2px solid;
    border-bottom: 2px solid;
    position: absolute;
    top: 47%;
    right: 1.60714em;
    transform: rotate(-45deg) translateY(-50%);
    transition: all .4s;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-Button:not([disabled]):hover,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-Button:not([disabled]):focus,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-Button:not([disabled]):active {
    background-color: #0a47da;
    color: #ffffff;
    transform: none;
    box-shadow: none;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-Button:not([disabled]):hover:after {
    right: 1.07143em;
}

/* HubSpot's submit spinner also uses :after; undo the arrow while loading */
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-Button.hsfc-Button--loading:after {
    border: 0;
    width: 1em;
    height: 1em;
    top: calc(50% - .5em);
    left: calc(50% - .5em);
    right: auto;
    transform: none;
    transition: none;
}

/* ---------- Button row: SEND + reCAPTCHA text ---------- */

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-NavigationRow {
    margin-top: 2em;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-NavigationRow__Alerts:empty {
    display: none;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-NavigationRow__Buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 1.5em;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-NavigationRow__Buttons .hs-form-legalese {
    flex: 1 1 14em;
    max-width: 26em;
    font-size: 12px;
    line-height: 1.4;
    color: #000000;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hs-form-legalese a {
    color: #0b4ff2;
}

/* Mobile: full-width button */
@media (max-width: 430px) {
    .hs-form-moncur [data-hsfc-id=Renderer] .hsfc-NavigationRow__Buttons {
        align-items: stretch;
    }

    .hs-form-moncur [data-hsfc-id=Renderer] .hsfc-Button {
        width: 100%;
        min-width: 0;
    }

    .hs-form-moncur [data-hsfc-id=Renderer] .hsfc-NavigationRow__Buttons .hs-form-legalese {
        max-width: none;
    }
}

/* Hide the reCAPTCHA badge once the legalese text is shown (Google requires one or the other) */
.hs-form-moncur--legalese [data-hsfc-id=Renderer] .hsfc-ReCaptchaV3 {
    visibility: hidden;
    height: 0;
    overflow: hidden;
}

.hs-form-moncur--legalese [data-hsfc-id=Renderer] .hsfc-Row:has(> .hsfc-ReCaptchaV3) {
    height: 0;
    margin: 0;
    overflow: hidden;
}

/* ---------- Messages ---------- */

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-ErrorAlert {
    margin-top: .4em;
    line-height: 1.3;
}

.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-PostSubmit,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-RichText,
.hs-form-moncur [data-hsfc-id=Renderer] .hsfc-InfoAlert {
    color: #555555;
}
