{"version":3,"sources":["webpack:///./src/helpers/fonts.ts","webpack:///./src/stories/Components/Inputs/Textbox/Textbox.styles.ts","webpack:///./src/stories/Components/Inputs/Textbox/Textbox.tsx","webpack:///./src/helpers/grid.ts","webpack:///./src/stories/Components/Forms/HubspotForm/HubspotForm.styles.ts","webpack:///./src/stories/Components/Buttons/Button/Button.tsx","webpack:///./src/img/icons/tick.svg","webpack:///./src/stories/Components/Inputs/CheckboxSingle/CheckboxSingle.styles.ts","webpack:///./src/stories/Components/Inputs/CheckboxSingle/CheckboxSingle.tsx","webpack:///./src/stories/Components/Forms/HubspotForm/constants.ts","webpack:///./src/stories/Components/Forms/HubspotForm/Consent/Consent.styles.ts","webpack:///./src/stories/Components/Forms/HubspotForm/Consent/Consent.tsx","webpack:///./src/stories/Components/Forms/HubspotForm/Field/Field.styles.ts","webpack:///./src/stories/Components/Forms/HubspotForm/Field/Field.tsx","webpack:///./src/stories/Components/Inputs/CheckboxList/CheckboxList.styles.ts","webpack:///./src/stories/Components/Inputs/CheckboxList/CheckboxList.tsx","webpack:///./src/stories/Components/Inputs/RadioList/RadioList.styles.ts","webpack:///./src/stories/Components/Inputs/RadioList/RadioList.tsx","webpack:///./src/stories/Components/Inputs/Textarea/Textarea.styles.ts","webpack:///./src/stories/Components/Inputs/Textarea/Textarea.tsx","webpack:///./src/stories/Components/Forms/HubspotForm/validation.ts","webpack:///./src/stories/Components/Forms/HubspotForm/FieldControl/FieldControl.tsx","webpack:///./src/stories/Components/Forms/HubspotForm/FieldGroup/FieldGroup.styles.ts","webpack:///./src/stories/Components/Forms/HubspotForm/FieldGroup/FieldGroup.tsx","webpack:///./src/stories/Components/Forms/HubspotForm/HubspotForm.tsx","webpack:///./src/hooks/useRecaptchaSdk.ts","webpack:///./src/img/icons/select-black.svg","webpack:///./src/img/icons/select-white.svg","webpack:///./src/stories/Components/Inputs/Select/Select.styles.ts","webpack:///./src/stories/Components/Inputs/Select/Select.tsx","webpack:///./src/helpers/media.ts","webpack:///./src/helpers/brand.ts","webpack:///./src/stories/Components/Buttons/Button/Button.styles.ts","webpack:///./src/helpers/fluid.ts","webpack:///./src/helpers/srOnly.ts","webpack:///./src/img/icons/button-arrow.svg","webpack:///./src/helpers/animate.ts","webpack:///./src/helpers/typography.ts","webpack:///./src/helpers/api.ts"],"names":["altGothicNo2","regular","css","apercu","light","lightItalic","bold","TextboxStyles","Input","styled","input","transition","fluid","fonts","brand","black","white","greyMid","Textbox","React","ref","theme","props","FocusRing","focusRingClass","S","displayName","SitePaddingMin","SiteWidthBreakpoint","SiteWidth","siteWide","baseGrid","Container","form","GroupList","div","HubspotFormStyles","ConsentWrapper","SubmitWrapper","Button","buttonSize","buttonType","children","fillDirection","icon","SvgArrow","iconOnly","iconPosition","otherProps","Text","IconWrapper","srOnly","CheckboxListStyles","Label","label","svgTick","CheckboxSingle","id","name","type","value","htmlFor","EmailRule","message","TelRule","fieldset","Content","paragraphSmall","link","ConsentStyles","ConsentItem","Error","span","validation","invalid","Consent","consent","disabled","errors","register","isModal","communicationConsentText","dangerouslySetInnerHTML","__html","privacyText","consentToProcessText","communicationsCheckboxes","map","item","subscriptionTypeId","error","key","required","as","valid","FieldStyles","Control","Field","condition","dirty","field","parentField","submitted","parentFieldName","dependentValue","operator","values","includes","Array","isArray","some","console","warn","checkCondition","useWatch","placeholder","from","Device","Tablet","Option","CheckboxListOption","CheckboxList","layout","RadioListStyles","RadioListOption","RadioList","TextareaStyles","textarea","Textarea","getMaxRule","fieldType","maxAllowedDigits","getMinRule","minAllowedDigits","getMaxLengthRule","getMinLengthRule","getPatternRule","getRequiredRule","FieldControl","useFormContext","preSelected","hidden","options","length","registration","max","min","maxLength","minLength","pattern","valueAsDate","valueAsNumber","replaceAll","Select","option","description","style","display","FieldGroupStyles","FieldGroup","hideGroup","group","fields","filter","x","HubspotForm","buttonPosition","useFormReturn","useForm","defaultValues","shouldUseNativeValidation","formState","handleSubmit","dirtyFields","isSubmitted","displayOptions","fieldGroups","legalConsentOptions","configuration","config","recaptchaSdk","load","refScript","sdk","setSdk","current","script","document","createElement","src","onload","window","grecaptcha","head","appendChild","useRecaptchaSdk","recaptchaEnabled","FormProvider","onSubmit","handler","data","event","userToken","Cookie","get","hutk","handleAddUserToken","onSubmitValid","ready","async","token","execute","action","recaptcha","onSubmitInvalid","index","renderField","PuffLoader","color","size","undefined","submitButtonText","dependentFields","dependentCondition","dependentField","renderDependentFields","SelectStyles","select","svgSelectWhite","svgSelectBlack","until","blackDark","grey","greyMidLight","greyDark","pureBlack","yellow","green","availability","amber","red","button","TabletLarge","ButtonStyles","DEFAULT_MIN_VALUE","TabletSmall","DEFAULT_MAX_VALUE","DesktopLarge","minWidth","maxWidth","minRem","maxRem","minWidthRem","maxWidthRem","slope","yAxisIntersection","clampMin","round","clampVal","clampMax","num","Math","_g","_extends","Object","assign","bind","target","i","arguments","source","prototype","hasOwnProperty","call","apply","this","SvgButtonArrow","xmlns","viewBox","fill","stroke","strokeWidth","d","rootMargin","cubicEaseOut","shouldAnimate","innerCss","properties","duration","timing","titleFill","headerLink","MobileLarge","headingStyles","h1","h2","h3","h4","h5","h6","paragraphStyles","paragraphLarge","paragraphMedium","paragraphMicro","meta","table","blockquote","contentStyles","contentStylesSmall","API_URLS","getArticles","postFormsHubspot"],"mappings":"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","file":"default~DownloadForm~Form~Header~ModalForm-b20355dec4e8d9be5783.js","sourcesContent":["import { css } from 'styled-components';\r\nexport default {\r\n altGothicNo2: {\r\n regular: css `\r\n font-family: 'Alternate Gothic No2 D', sans-serif;\r\n font-style: normal;\r\n font-weight: 400;\r\n `,\r\n },\r\n apercu: {\r\n light: css `\r\n font-family: 'Apercu', sans-serif;\r\n font-style: normal;\r\n font-weight: 300;\r\n `,\r\n lightItalic: css `\r\n font-family: 'Apercu', sans-serif;\r\n font-style: italic;\r\n font-weight: 300;\r\n `,\r\n bold: css `\r\n font-family: 'Apercu', sans-serif;\r\n font-style: normal;\r\n font-weight: 700;\r\n `,\r\n },\r\n};\r\n","import { transition } from '@helpers/animate';\r\nimport brand from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport styled from 'styled-components';\r\nconst Input = styled.input `\r\n ${transition('background-color, border-color, color')}\r\n\r\n display: block;\r\n appearance: none;\r\n background: var(--bgColor);\r\n border: 1px solid var(--borderColor);\r\n color: var(--fgColor);\r\n height: ${fluid(45, 56)};\r\n ${fonts.apercu.light}\r\n font-size: 18px;\r\n margin: 0;\r\n padding: 7px 12px;\r\n width: 100%;\r\n\r\n &:disabled {\r\n opacity: 0.5;\r\n }\r\n\r\n &::placeholder {\r\n color: var(--fgColor);\r\n ${fonts.apercu.light}\r\n opacity: 1;\r\n }\r\n\r\n &.focus-ring {\r\n outline: auto;\r\n outline-offset: 5px;\r\n }\r\n\r\n &[data-theme='dark'] {\r\n --bgColor: ${brand.black};\r\n --borderColor: ${brand.white};\r\n --fgColor: ${brand.white};\r\n }\r\n\r\n &[data-theme='light'] {\r\n --bgColor: ${brand.white};\r\n --borderColor: ${brand.greyMid};\r\n --fgColor: ${brand.greyMid};\r\n }\r\n\r\n /* Ensure that placeholder is shown on date fields (hidden by dd/mm/yyyy options in chromium browsers) */\r\n\r\n &[type='date'] {\r\n display: flex;\r\n gap: 1ch;\r\n\r\n &::before {\r\n white-space: nowrap;\r\n color: var(--fgColor);\r\n content: attr(placeholder) !important;\r\n text-transform: capitalize;\r\n }\r\n\r\n &:focus::before {\r\n display: none;\r\n }\r\n\r\n &::-webkit-date-and-time-value {\r\n text-align: left;\r\n }\r\n }\r\n\r\n &[type='date']:focus:before {\r\n content: '' !important;\r\n }\r\n`;\r\nconst TextboxStyles = {\r\n Input,\r\n};\r\nexport default TextboxStyles;\r\n","import * as React from 'react';\r\nimport { FocusRing } from 'react-aria';\r\nimport S from './Textbox.styles';\r\nconst Textbox = React.forwardRef(({ theme = 'light', ...props }, ref) => {\r\n return (React.createElement(FocusRing, { focusRingClass: \"focus-ring\" },\r\n React.createElement(S.Input, { ref: ref, \"data-theme\": theme, ...props })));\r\n});\r\nTextbox.displayName = 'Textbox';\r\nexport default Textbox;\r\n","import { css } from 'styled-components';\r\nimport { fluid } from './fluid';\r\nexport const SitePaddingMin = 12;\r\nexport const SitePaddingMax = 64;\r\nexport const SiteWidth = 1756;\r\nexport const SiteWidthBreakpoint = SiteWidth + SitePaddingMax * 2;\r\nexport const siteWide = css `\r\n /* The minimum amount of space between the content and the edge of the viewport. */\r\n --sitePadding: ${fluid(SitePaddingMin, SitePaddingMax)};\r\n\r\n /* Max site container width */\r\n --siteWidth: calc(${SiteWidth}px + (var(--sitePadding) * 2));\r\n\r\n /* The amount of space between the edge of the site container and the viewport, will be 0px on smaller screens. */\r\n --siteMargin: calc((100vw - min(var(--siteWidth), 100vw)) / 2);\r\n\r\n margin: 0 auto;\r\n max-width: var(--siteWidth);\r\n padding: 0 var(--sitePadding);\r\n width: 100%;\r\n`;\r\nexport const baseGrid = css `\r\n --gutterWidth: ${fluid(10, 32)};\r\n\r\n display: grid;\r\n column-gap: var(--gutterWidth);\r\n grid-template-columns: repeat(12, 1fr);\r\n`;\r\n","import { fluid } from '@helpers/fluid';\r\nimport styled from 'styled-components';\r\nconst Container = styled.form ``;\r\nconst GroupList = styled.div `\r\n display: grid;\r\n gap: ${fluid(20, 32)};\r\n grid-template-columns: repeat(1, 1fr);\r\n`;\r\nconst ConsentWrapper = styled.div `\r\n margin-top: 40px;\r\n`;\r\nconst SubmitWrapper = styled.div `\r\n display: flex;\r\n margin-top: 40px;\r\n\r\n ${Container}[data-position='left'] & {\r\n justify-content: flex-start;\r\n }\r\n\r\n ${Container}[data-position='right'] & {\r\n justify-content: flex-end;\r\n }\r\n`;\r\nconst HubspotFormStyles = {\r\n ConsentWrapper,\r\n Container,\r\n GroupList,\r\n SubmitWrapper,\r\n};\r\nexport default HubspotFormStyles;\r\n","import { ReactComponent as SvgArrow } from '@img/icons/button-arrow.svg';\r\nimport * as React from 'react';\r\nimport { FocusRing } from 'react-aria';\r\nimport S from './Button.styles';\r\nconst Button = ({ buttonSize = 'default', buttonType = 'default', children, fillDirection = 'right', icon = React.createElement(SvgArrow, null), iconOnly, iconPosition = 'right', ...otherProps }) => {\r\n return (React.createElement(FocusRing, { focusRingClass: \"focus-ring\" },\r\n React.createElement(S.Container, { \"data-fill\": fillDirection, \"data-icon-only\": iconOnly, \"data-icon-position\": iconPosition, \"data-size\": buttonSize, \"data-type\": buttonType, ...otherProps },\r\n React.createElement(S.Text, null, children),\r\n icon && React.createElement(S.IconWrapper, null, icon))));\r\n};\r\nexport default Button;\r\n","var _defs, _g;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgTick(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 14,\n height: 14\n }, props), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"tick_svg__a\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n transform: \"translate(-.359 -.883)\",\n fill: \"currentColor\",\n stroke: \"#707070\",\n d: \"M0 0h14v14H0z\"\n })))), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(.359 .883)\",\n clipPath: \"url(#tick_svg__a)\"\n }, /*#__PURE__*/React.createElement(\"g\", {\n \"data-name\": \"tick\",\n fill: \"currentColor\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Rectangle 101\",\n d: \"M1.728 5.294l4.035 4.035-1.191 1.19L.537 6.486z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Rectangle 102\",\n d: \"M12.847 3.243L5.11 10.98 3.84 9.71l7.736-7.738z\"\n })))));\n}\n\nexport default __webpack_public_path__ + \"dd00949615f880f96bd339c239f235ff.svg\";\nexport { SvgTick as ReactComponent };","import { transition } from '@helpers/animate';\r\nimport brand from '@helpers/brand';\r\nimport fonts from '@helpers/fonts';\r\nimport srOnly from '@helpers/srOnly';\r\nimport svgTick from '@img/icons/tick.svg';\r\nimport styled from 'styled-components';\r\nconst Container = styled.div `\r\n display: flex;\r\n margin: 0 0 12px;\r\n white-space: nowrap;\r\n`;\r\nconst Input = styled.input `\r\n ${srOnly}\r\n`;\r\nconst Label = styled.label `\r\n display: inline-flex;\r\n align-items: center;\r\n cursor: pointer;\r\n ${fonts.apercu.light}\r\n font-size: 16px;\r\n line-height: 1em;\r\n\r\n &::before {\r\n ${transition('background-color, border-color')}\r\n\r\n content: '';\r\n display: inline-block;\r\n height: 27px;\r\n background: ${brand.white} no-repeat center center;\r\n background-size: 14px 14px;\r\n border: 1px solid var(--inputColor, ${brand.greyMid});\r\n color: ${brand.white};\r\n margin-right: 16px;\r\n width: 27px;\r\n }\r\n\r\n ${Input}:checked + &::before {\r\n background-color: ${brand.white};\r\n background-image: url(${svgTick});\r\n }\r\n`;\r\nconst CheckboxListStyles = {\r\n Container,\r\n Input,\r\n Label,\r\n};\r\nexport default CheckboxListStyles;\r\n","import * as React from 'react';\r\nimport S from './CheckboxSingle.styles';\r\nconst CheckboxSingle = React.forwardRef((props, ref) => {\r\n const { children, ...otherProps } = props;\r\n return (React.createElement(S.Container, null,\r\n React.createElement(S.Input, { ref: ref, id: otherProps.name, type: \"checkbox\", value: otherProps.value, ...otherProps }),\r\n React.createElement(S.Label, { htmlFor: otherProps.name }, children)));\r\n});\r\nCheckboxSingle.displayName = 'CheckboxSingle';\r\nexport default CheckboxSingle;\r\n","export const RequiredMessage = `Please complete this required field.`;\r\nexport const RequiredSelectMessage = `Please select an option from the dropdown menu.`;\r\nexport const EmailRegex = /^(.+)@(.+)$/;\r\nexport const EmailMessage = `Email must be formatted correctly.`;\r\nexport const EmailRule = { message: EmailMessage, value: EmailRegex };\r\nexport const TelRegex = /^[\\d+()\\-x ]+$/;\r\nexport const TelMessage = `Must contain only numbers, +()-. and x.`;\r\nexport const TelRule = { message: TelMessage, value: TelRegex };\r\n","import brand from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport { link, paragraphSmall } from '@helpers/typography';\r\nimport styled from 'styled-components';\r\nconst Container = styled.fieldset ``;\r\nconst Content = styled.div `\r\n ${paragraphSmall}\r\n\r\n a {\r\n ${link}\r\n }\r\n\r\n > * {\r\n margin: 0 0 ${fluid(16, 24)};\r\n }\r\n\r\n > *:first-child {\r\n margin-top: 0;\r\n }\r\n\r\n > *:last-child {\r\n margin-bottom: 0;\r\n }\r\n`;\r\nconst ConsentItem = styled.div `\r\n margin: 0;\r\n\r\n &:not(:last-child) {\r\n margin-bottom: 16px;\r\n }\r\n`;\r\nconst Error = styled.span `\r\n ${paragraphSmall}\r\n\r\n display: block;\r\n color: ${brand.validation.invalid};\r\n margin: 8px 0 0;\r\n`;\r\nconst ConsentStyles = {\r\n ConsentItem,\r\n Container,\r\n Content,\r\n Error,\r\n};\r\nexport default ConsentStyles;\r\n","import CheckboxSingle from '@stories/Components/Inputs/CheckboxSingle/CheckboxSingle';\r\nimport * as React from 'react';\r\nimport { RequiredMessage } from '../constants';\r\nimport S from './Consent.styles';\r\nconst Consent = ({ consent, disabled, errors, register, isModal }) => {\r\n if (consent.type === 'none') {\r\n return null;\r\n }\r\n if (consent.type === 'implicit_consent_to_process') {\r\n return (React.createElement(S.Container, { disabled: disabled },\r\n consent.communicationConsentText && (React.createElement(S.Content, { dangerouslySetInnerHTML: { __html: consent.communicationConsentText } })),\r\n consent.privacyText && (React.createElement(S.Content, { dangerouslySetInnerHTML: { __html: consent.privacyText } })),\r\n consent.consentToProcessText && (React.createElement(S.Content, { dangerouslySetInnerHTML: { __html: consent.consentToProcessText } })),\r\n consent.communicationsCheckboxes?.map((item) => {\r\n const name = `consent-${item.subscriptionTypeId}${isModal ? '-modal' : ''}`;\r\n const error = errors?.[name]?.message;\r\n return (React.createElement(S.ConsentItem, { key: item.subscriptionTypeId },\r\n React.createElement(CheckboxSingle, { ...register(name, { required: item.required ? RequiredMessage : false }) },\r\n React.createElement(\"span\", { dangerouslySetInnerHTML: { __html: item.label } })),\r\n error && React.createElement(S.Error, null, error)));\r\n })));\r\n }\r\n if (consent.type === 'legitimate_interest') {\r\n return (React.createElement(S.Container, { as: \"div\" }, consent.privacyText && (React.createElement(S.Content, { dangerouslySetInnerHTML: { __html: consent.privacyText } }))));\r\n }\r\n return null;\r\n};\r\nexport default Consent;\r\n","import brand from '@helpers/brand';\r\nimport srOnly from '@helpers/srOnly';\r\nimport { paragraphSmall } from '@helpers/typography';\r\nimport styled from 'styled-components';\r\nconst Container = styled.div `\r\n --inputColor: ${brand.greyMid};\r\n\r\n &[aria-invalid='true'] {\r\n --inputColor: ${brand.validation.invalid};\r\n }\r\n\r\n &[data-submitted='true'][aria-invalid='false'] {\r\n --inputColor: ${brand.validation.valid};\r\n }\r\n\r\n &:focus-within {\r\n --inputColor: ${brand.black};\r\n }\r\n`;\r\nconst Label = styled.label `\r\n ${srOnly}\r\n`;\r\nconst Control = styled.div ``;\r\nconst Error = styled.span `\r\n ${paragraphSmall}\r\n\r\n color: ${brand.validation.invalid};\r\n margin: 8px 0 0;\r\n`;\r\nconst FieldStyles = {\r\n Container,\r\n Control,\r\n Error,\r\n Label,\r\n};\r\nexport default FieldStyles;\r\n","import * as React from 'react';\r\nimport { useWatch } from 'react-hook-form';\r\nimport S from './Field.styles';\r\nconst Field = ({ children, condition, dirty, error, field, parentField, submitted, }) => {\r\n // Get parent field value from form context.\r\n const parentFieldName = parentField?.name ?? '';\r\n const parentFieldValue = useWatch({ disabled: !parentFieldName, name: parentFieldName });\r\n // Ensure field should be visible.\r\n if (!checkCondition(condition, parentFieldValue)) {\r\n return null;\r\n }\r\n return (React.createElement(S.Container, { \"aria-invalid\": !!error, \"data-dirty\": dirty, \"data-submitted\": submitted },\r\n React.createElement(S.Label, { htmlFor: field.name }, field.label ?? field.placeholder),\r\n React.createElement(S.Control, null, children),\r\n error?.message && React.createElement(S.Error, null, error.message)));\r\n};\r\nexport default Field;\r\nfunction checkCondition(condition, dependentValue) {\r\n if (!condition) {\r\n return true;\r\n }\r\n switch (condition.operator) {\r\n case 'set_any': {\r\n if (typeof dependentValue === 'string') {\r\n return condition.values.includes(dependentValue);\r\n }\r\n if (Array.isArray(dependentValue)) {\r\n return condition.values.some((value) => dependentValue.includes(value));\r\n }\r\n return false;\r\n }\r\n // To be safe, show the field if there is an unsupported operator.\r\n default: {\r\n console.warn(`Unsupported dependent field operator: \"${condition.operator}\"`, condition);\r\n return true;\r\n }\r\n }\r\n}\r\n","import { transition } from '@helpers/animate';\r\nimport brand from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport { Device, from } from '@helpers/media';\r\nimport srOnly from '@helpers/srOnly';\r\nimport svgTick from '@img/icons/tick.svg';\r\nimport styled from 'styled-components';\r\nconst Container = styled.div `\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 12px ${fluid(24, 48)};\r\n\r\n &[data-layout='horizontal'] {\r\n flex-direction: column;\r\n\r\n @media ${from(Device.Tablet)} {\r\n flex-direction: row;\r\n }\r\n }\r\n\r\n &[data-layout='vertical'] {\r\n flex-direction: column;\r\n }\r\n`;\r\nconst Option = styled.div `\r\n display: flex;\r\n white-space: nowrap;\r\n`;\r\nconst Input = styled.input `\r\n ${srOnly}\r\n`;\r\nconst Label = styled.label `\r\n display: inline-flex;\r\n align-items: center;\r\n cursor: pointer;\r\n ${fonts.apercu.light}\r\n font-size: 16px;\r\n line-height: 1em;\r\n\r\n &::before {\r\n ${transition('background-color, border-color')}\r\n\r\n content: '';\r\n display: inline-block;\r\n height: 27px;\r\n background: ${brand.white} no-repeat center center;\r\n background-size: 14px 14px;\r\n border: 1px solid var(--inputColor, ${brand.greyMid});\r\n color: ${brand.white};\r\n margin-right: 16px;\r\n width: 27px;\r\n }\r\n\r\n ${Input}:checked + &::before {\r\n background-color: ${brand.white};\r\n background-image: url(${svgTick});\r\n }\r\n`;\r\nconst CheckboxListStyles = {\r\n Container,\r\n Input,\r\n Label,\r\n Option,\r\n};\r\nexport default CheckboxListStyles;\r\n","import * as React from 'react';\r\nimport S from './CheckboxList.styles';\r\nconst CheckboxListOption = React.forwardRef((props, ref) => {\r\n const { children, ...otherProps } = props;\r\n const id = `${otherProps.name}-${otherProps.value}`;\r\n return (React.createElement(S.Option, null,\r\n React.createElement(S.Input, { ref: ref, id: id, type: \"checkbox\", value: otherProps.value, ...otherProps }),\r\n React.createElement(S.Label, { htmlFor: id }, children)));\r\n});\r\nCheckboxListOption.displayName = 'CheckboxListOption';\r\nexport { CheckboxListOption };\r\nconst CheckboxList = (props) => {\r\n return React.createElement(S.Container, { \"data-layout\": props.layout ?? 'horizontal' }, props.children);\r\n};\r\nCheckboxList.displayName = 'CheckboxList';\r\nexport default CheckboxList;\r\n","import { transition } from '@helpers/animate';\r\nimport brand from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport { Device, from } from '@helpers/media';\r\nimport srOnly from '@helpers/srOnly';\r\nimport styled from 'styled-components';\r\nconst Container = styled.div `\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 12px ${fluid(24, 48)};\r\n\r\n &[data-layout='horizontal'] {\r\n flex-direction: column;\r\n\r\n @media ${from(Device.Tablet)} {\r\n flex-direction: row;\r\n }\r\n }\r\n\r\n &[data-layout='vertical'] {\r\n flex-direction: column;\r\n }\r\n`;\r\nconst Option = styled.div `\r\n display: flex;\r\n white-space: nowrap;\r\n`;\r\nconst Input = styled.input `\r\n ${srOnly}\r\n`;\r\nconst Label = styled.label `\r\n display: inline-block;\r\n cursor: pointer;\r\n ${fonts.apercu.light}\r\n font-size: 16px;\r\n line-height: 1em;\r\n\r\n &::before {\r\n ${transition('background-color, border-color')}\r\n\r\n content: '';\r\n display: inline-block;\r\n background: transparent;\r\n background-clip: content-box;\r\n border: 1px solid var(--inputColor, ${brand.greyMid});\r\n border-radius: 50%;\r\n box-sizing: border-box;\r\n color: ${brand.white};\r\n height: 17px;\r\n margin-right: 10px;\r\n padding: 3px;\r\n width: 17px;\r\n }\r\n\r\n ${Input}:checked + &::before {\r\n background-color: ${brand.black};\r\n }\r\n`;\r\nconst RadioListStyles = {\r\n Container,\r\n Input,\r\n Label,\r\n Option,\r\n};\r\nexport default RadioListStyles;\r\n","import * as React from 'react';\r\nimport S from './RadioList.styles';\r\nconst RadioListOption = React.forwardRef((props, ref) => {\r\n const { children, ...otherProps } = props;\r\n const id = `${otherProps.name}-${otherProps.value}`;\r\n return (React.createElement(S.Option, null,\r\n React.createElement(S.Input, { ref: ref, id: id, type: \"radio\", value: otherProps.value, ...otherProps }),\r\n React.createElement(S.Label, { htmlFor: id }, children)));\r\n});\r\nRadioListOption.displayName = 'RadioListOption';\r\nexport { RadioListOption };\r\nconst RadioList = (props) => {\r\n return React.createElement(S.Container, { \"data-layout\": props.layout ?? 'horizontal' }, props.children);\r\n};\r\nRadioList.displayName = 'RadioList';\r\nexport default RadioList;\r\n","import { transition } from '@helpers/animate';\r\nimport brand from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport styled from 'styled-components';\r\nconst Input = styled.textarea `\r\n ${transition('background-color, border-color, color')}\r\n\r\n display: block;\r\n appearance: none;\r\n background: var(--bgColor);\r\n border: 1px solid var(--borderColor);\r\n color: var(--fgColor);\r\n min-height: ${fluid(45, 56)};\r\n ${fonts.apercu.light}\r\n font-size: 18px;\r\n line-height: 1em;\r\n margin: 0;\r\n padding: 18px 12px;\r\n width: 100%;\r\n\r\n &:disabled {\r\n opacity: 0.5;\r\n }\r\n\r\n &::placeholder {\r\n color: var(--fgColor);\r\n ${fonts.apercu.light}\r\n opacity: 1;\r\n }\r\n\r\n &.focus-ring {\r\n outline: auto;\r\n outline-offset: 5px;\r\n }\r\n\r\n &[data-theme='dark'] {\r\n --bgColor: ${brand.black};\r\n --borderColor: ${brand.white};\r\n --fgColor: ${brand.white};\r\n }\r\n\r\n &[data-theme='light'] {\r\n --bgColor: ${brand.white};\r\n --borderColor: ${brand.greyMid};\r\n --fgColor: ${brand.greyMid};\r\n }\r\n`;\r\nconst TextareaStyles = {\r\n Input,\r\n};\r\nexport default TextareaStyles;\r\n","import * as React from 'react';\r\nimport { FocusRing } from 'react-aria';\r\nimport S from './Textarea.styles';\r\nconst Textarea = React.forwardRef(({ theme = 'light', ...props }, ref) => {\r\n return (React.createElement(FocusRing, { focusRingClass: \"focus-ring\" },\r\n React.createElement(S.Input, { ref: ref, \"data-theme\": theme, ...props })));\r\n});\r\nTextarea.displayName = 'Textarea';\r\nexport default Textarea;\r\n","import { EmailRule, RequiredMessage, RequiredSelectMessage, TelRule } from './constants';\r\nexport function getMaxRule(field) {\r\n if (field.fieldType !== 'number') {\r\n return undefined;\r\n }\r\n if (typeof field.validation?.maxAllowedDigits !== 'number') {\r\n return undefined;\r\n }\r\n return {\r\n message: `Please enter a value less than ${field.validation.maxAllowedDigits}`,\r\n value: field.validation.maxAllowedDigits,\r\n };\r\n}\r\nexport function getMinRule(field) {\r\n if (field.fieldType !== 'number') {\r\n return undefined;\r\n }\r\n if (typeof field.validation?.minAllowedDigits !== 'number') {\r\n return undefined;\r\n }\r\n return {\r\n message: `Please enter a value greater than ${field.validation.minAllowedDigits}`,\r\n value: field.validation.minAllowedDigits,\r\n };\r\n}\r\nexport function getMaxLengthRule(field) {\r\n if (field.fieldType === 'number') {\r\n return undefined;\r\n }\r\n if (typeof field.validation?.maxAllowedDigits !== 'number') {\r\n return undefined;\r\n }\r\n if (field.validation.maxAllowedDigits <= 0) {\r\n return undefined;\r\n }\r\n return {\r\n message: `Please enter a value shorter than ${field.validation.maxAllowedDigits}`,\r\n value: field.validation.maxAllowedDigits,\r\n };\r\n}\r\nexport function getMinLengthRule(field) {\r\n if (field.fieldType === 'number') {\r\n return undefined;\r\n }\r\n if (typeof field.validation?.minAllowedDigits !== 'number') {\r\n return undefined;\r\n }\r\n return {\r\n message: `Please enter a value longer than ${field.validation.minAllowedDigits}`,\r\n value: field.validation.minAllowedDigits,\r\n };\r\n}\r\nexport function getPatternRule(field) {\r\n if (field.fieldType === 'email') {\r\n return EmailRule;\r\n }\r\n if (field.fieldType === 'phone') {\r\n return TelRule;\r\n }\r\n return undefined;\r\n}\r\nexport function getRequiredRule(field) {\r\n if (!field.required) {\r\n return undefined;\r\n }\r\n if (field.fieldType === 'dropdown') {\r\n return RequiredSelectMessage;\r\n }\r\n return RequiredMessage;\r\n}\r\n","import CheckboxList, { CheckboxListOption, } from '@stories/Components/Inputs/CheckboxList/CheckboxList';\r\nimport RadioList, { RadioListOption } from '@stories/Components/Inputs/RadioList/RadioList';\r\nimport Select from '@stories/Components/Inputs/Select/Select';\r\nimport Textarea from '@stories/Components/Inputs/Textarea/Textarea';\r\nimport Textbox from '@stories/Components/Inputs/Textbox/Textbox';\r\nimport * as React from 'react';\r\nimport { useFormContext } from 'react-hook-form';\r\nimport { getMaxLengthRule, getMaxRule, getMinLengthRule, getMinRule, getPatternRule, getRequiredRule, } from '../validation';\r\nconst FieldControl = (props) => {\r\n const { field } = props;\r\n const { register } = useFormContext();\r\n let preSelected = '';\r\n if (field.fieldType === 'dropdown' &&\r\n field.hidden &&\r\n field.options &&\r\n field.options.length === 1) {\r\n preSelected = field.options[0].value;\r\n }\r\n const registration = register(field.name, {\r\n max: getMaxRule(field),\r\n min: getMinRule(field),\r\n maxLength: getMaxLengthRule(field),\r\n minLength: getMinLengthRule(field),\r\n pattern: getPatternRule(field),\r\n required: getRequiredRule(field),\r\n valueAsDate: field.fieldType === 'datepicker',\r\n valueAsNumber: field.fieldType === 'number',\r\n value: preSelected,\r\n });\r\n switch (field.fieldType) {\r\n case 'datepicker':\r\n return (React.createElement(Textbox, { id: field.name, \r\n // Placeholder hardcoded to Moving Date for move_date field, others will fall back to using\r\n // field name with hyphens or underscores replaces with a space\r\n placeholder: field.name === 'move_date' ? 'Moving Date' : field.name.replaceAll(/[-_]/g, ' '), type: \"date\", ...registration }));\r\n case 'dropdown':\r\n return (React.createElement(Select, { id: field.name, ...registration, \"data-hidden\": field.hidden },\r\n field.placeholder && React.createElement(\"option\", { value: \"\" }, field.placeholder),\r\n field.options?.map((option) => (React.createElement(\"option\", { key: option.value, value: option.value }, option.label)))));\r\n case 'email':\r\n return (React.createElement(Textbox, { id: field.name, placeholder: field.placeholder, type: \"email\", ...registration }));\r\n case 'multi_line_text':\r\n return React.createElement(Textarea, { id: field.name, placeholder: field.placeholder, ...registration });\r\n case 'multiple_checkboxes':\r\n return (React.createElement(CheckboxList, null, field.options?.map((item) => (React.createElement(CheckboxListOption, { key: item.value, value: item.value, ...registration },\r\n React.createElement(\"span\", { dangerouslySetInnerHTML: { __html: item.label } }))))));\r\n case 'number':\r\n return (React.createElement(Textbox, { id: field.name, placeholder: field.placeholder, type: \"number\", ...registration }));\r\n case 'phone':\r\n return (React.createElement(Textbox, { id: field.name, placeholder: field.placeholder, type: \"tel\", ...registration }));\r\n case 'radio':\r\n return (React.createElement(React.Fragment, null,\r\n field.description && field.description !== '' && (React.createElement(React.Fragment, null,\r\n React.createElement(\"div\", { style: { display: 'block' } },\r\n React.createElement(\"label\", { htmlFor: field.name }, field.description)),\r\n React.createElement(\"br\", null))),\r\n React.createElement(RadioList, null, field.options?.map((item) => (React.createElement(RadioListOption, { key: item.value, value: item.value, ...registration },\r\n React.createElement(\"span\", { dangerouslySetInnerHTML: { __html: item.label } })))))));\r\n case 'single_checkbox':\r\n return (React.createElement(\"input\", { id: field.name, placeholder: field.placeholder, type: \"checkbox\", ...registration }));\r\n case 'single_line_text':\r\n return (React.createElement(Textbox, { id: field.name, placeholder: field.placeholder, type: \"text\", ...registration }));\r\n default:\r\n return React.createElement(\"div\", null,\r\n \"Unsupported field: \",\r\n field.fieldType);\r\n }\r\n};\r\nexport default FieldControl;\r\n","import { fluid } from '@helpers/fluid';\r\nimport { Device, from } from '@helpers/media';\r\nimport styled from 'styled-components';\r\nconst Container = styled.fieldset `\r\n display: grid;\r\n gap: ${fluid(20, 32)};\r\n grid-template-columns: repeat(1, 1fr);\r\n\r\n &[data-hidden='true'] {\r\n display: none;\r\n }\r\n\r\n @media ${from(Device.Tablet)} {\r\n &[data-single='false'] {\r\n grid-template-columns: repeat(2, 1fr);\r\n }\r\n }\r\n`;\r\nconst FieldGroupStyles = {\r\n Container,\r\n};\r\nexport default FieldGroupStyles;\r\n","import * as React from 'react';\r\nimport S from './FieldGroup.styles';\r\nconst FieldGroup = (props) => {\r\n const hiddenFields = props.group.fields.filter((x) => x.hidden);\r\n const hideGroup = hiddenFields.length === props.group.fields.length;\r\n return (React.createElement(S.Container, { disabled: props.disabled, \"data-single\": Array.isArray(props.children) && props.children.length === 1, \"data-hidden\": hideGroup }, props.children));\r\n};\r\nexport default FieldGroup;\r\n","import { RECAPTCHA_API_KEY, useRecaptchaSdk } from '@hooks/useRecaptchaSdk';\r\nimport Button from '@stories/Components/Buttons/Button/Button';\r\nimport * as React from 'react';\r\nimport { FormProvider, useForm, } from 'react-hook-form';\r\nimport PuffLoader from 'react-spinners/PuffLoader';\r\nimport Consent from './Consent/Consent';\r\nimport Cookie from 'js-cookie';\r\nimport Field from './Field/Field';\r\nimport FieldControl from './FieldControl/FieldControl';\r\nimport FieldGroup from './FieldGroup/FieldGroup';\r\nimport S from './HubspotForm.styles';\r\nconst HubspotForm = ({ buttonPosition = 'right', ...props }) => {\r\n const useFormReturn = useForm({\r\n defaultValues: props.defaultValues,\r\n shouldUseNativeValidation: false,\r\n });\r\n const { formState, handleSubmit, register } = useFormReturn;\r\n const { dirtyFields, errors, isSubmitted } = formState;\r\n const { displayOptions, fieldGroups, legalConsentOptions, configuration } = props.config;\r\n const recaptchaSdk = useRecaptchaSdk(configuration.recaptchaEnabled);\r\n return (React.createElement(FormProvider, { ...useFormReturn },\r\n React.createElement(S.Container, { id: props.config.id, name: props.config.id, \"data-name\": props.config.name, \"data-position\": buttonPosition, onSubmit: handleSubmit(handleAddUserToken(handleRecaptcha(props.onSubmitValid)), props.onSubmitInvalid) },\r\n React.createElement(S.GroupList, null, fieldGroups.map((group, index) => (React.createElement(FieldGroup, { key: index, disabled: props.disabled, group: group }, group.fields.map(renderField))))),\r\n React.createElement(S.ConsentWrapper, null,\r\n React.createElement(Consent, { consent: legalConsentOptions, disabled: props.disabled, errors: errors, register: register, isModal: props.isModal })),\r\n React.createElement(S.SubmitWrapper, null,\r\n React.createElement(Button, { disabled: props.disabled, icon: props.disabled ? React.createElement(PuffLoader, { color: \"currentColor\", size: 14 }) : undefined, type: \"submit\" }, displayOptions.submitButtonText ?? 'Submit')))));\r\n function renderField(field) {\r\n return (React.createElement(React.Fragment, { key: field.name },\r\n React.createElement(Field, { dirty: dirtyFields[field.name], error: errors[field.name], field: field, submitted: isSubmitted },\r\n React.createElement(FieldControl, { field: field })),\r\n renderDependentFields(field)));\r\n }\r\n function renderDependentFields(field) {\r\n if (!field.dependentFields?.length) {\r\n return null;\r\n }\r\n return (React.createElement(React.Fragment, null, field.dependentFields.map(({ dependentCondition, dependentField }) => (React.createElement(Field, { key: dependentField.name, condition: dependentCondition, dirty: dirtyFields[dependentField.name], error: errors[dependentField.name], field: dependentField, parentField: field, submitted: isSubmitted },\r\n React.createElement(FieldControl, { field: dependentField }))))));\r\n }\r\n function handleAddUserToken(handler) {\r\n return (data, event) => {\r\n const userToken = Cookie.get(\"hubspotutk\");\r\n if (userToken && userToken.length) {\r\n handler({ ...data, hutk: userToken }, event);\r\n return;\r\n }\r\n handler(data, event);\r\n };\r\n }\r\n function handleRecaptcha(handler) {\r\n return (data, event) => {\r\n if (configuration.recaptchaEnabled) {\r\n // Ensure we have sdk loaded.\r\n if (!recaptchaSdk) {\r\n return;\r\n }\r\n // Handle recaptcha validation.\r\n recaptchaSdk.ready(async () => {\r\n const token = await recaptchaSdk.execute(RECAPTCHA_API_KEY, { action: 'form_submit' });\r\n handler({ ...data, recaptcha: token }, event);\r\n });\r\n return;\r\n }\r\n handler(data, event);\r\n };\r\n }\r\n};\r\nexport default HubspotForm;\r\n","import * as React from 'react';\r\n// @todo: Replace with client's key\r\nexport const RECAPTCHA_API_KEY = '6Le7E3AaAAAAADCtC7-6he6BA7qIh9Tbi52nFhL7';\r\nconst RECAPTCHA_SDK = 'https://www.google.com/recaptcha/api.js';\r\nexport function useRecaptchaSdk(load) {\r\n const refScript = React.useRef();\r\n const [sdk, setSdk] = React.useState();\r\n React.useEffect(() => {\r\n if (refScript.current) {\r\n return;\r\n }\r\n if (!load) {\r\n return;\r\n }\r\n const script = document.createElement('script');\r\n script.src = `${RECAPTCHA_SDK}?render=${RECAPTCHA_API_KEY}`;\r\n script.onload = () => {\r\n setSdk(window.grecaptcha);\r\n };\r\n refScript.current = script;\r\n document.head.appendChild(script);\r\n }, [load]);\r\n return sdk;\r\n}\r\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSelectBlack(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16.764,\n height: 9.795\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Path 3468\",\n d: \"M.707.707l7.674 7.674L16.057.707\",\n fill: \"none\",\n stroke: \"#282828\",\n strokeWidth: 2\n })));\n}\n\nexport default __webpack_public_path__ + \"c26b2a73c00e8bddc9b2f6c43477f497.svg\";\nexport { SvgSelectBlack as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSelectWhite(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16.764,\n height: 9.795\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Path 3468\",\n d: \"M.707.707l7.674 7.674L16.057.707\",\n fill: \"none\",\n stroke: \"#fff\",\n strokeWidth: 2\n })));\n}\n\nexport default __webpack_public_path__ + \"7cf5ee9c8a92ff8f14cd3f511f40e7e7.svg\";\nexport { SvgSelectWhite as ReactComponent };","import { transition } from '@helpers/animate';\r\nimport brand from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport svgSelectBlack from '@img/icons/select-black.svg';\r\nimport svgSelectWhite from '@img/icons/select-white.svg';\r\nimport styled from 'styled-components';\r\nconst Select = styled.select `\r\n ${transition('background-color, border-color, color')}\r\n\r\n display: block;\r\n appearance: none;\r\n background: var(--bgColor);\r\n background-position: center right 12px;\r\n background-repeat: no-repeat;\r\n border: 1px solid var(--borderColor);\r\n color: var(--fgColor);\r\n height: ${fluid(45, 56)};\r\n ${fonts.apercu.light}\r\n font-size: 18px;\r\n margin: 0;\r\n padding: 7px 12px;\r\n width: 100%;\r\n\r\n &:disabled {\r\n opacity: 0.5;\r\n }\r\n\r\n &.focus-ring {\r\n outline: auto;\r\n outline-offset: 5px;\r\n }\r\n\r\n &[data-theme='dark'] {\r\n --bgColor: ${brand.black};\r\n --borderColor: ${brand.white};\r\n --fgColor: ${brand.white};\r\n background-image: url('${svgSelectWhite}');\r\n }\r\n\r\n &[data-theme='light'] {\r\n --bgColor: ${brand.white};\r\n --borderColor: ${brand.greyMid};\r\n --fgColor: ${brand.greyMid};\r\n background-image: url('${svgSelectBlack}');\r\n }\r\n\r\n &[data-hidden='true'] {\r\n display: none;\r\n }\r\n`;\r\nconst SelectStyles = {\r\n Select,\r\n};\r\nexport default SelectStyles;\r\n","import * as React from 'react';\r\nimport { FocusRing } from 'react-aria';\r\nimport S from './Select.styles';\r\nconst Select = React.forwardRef(({ theme = 'light', ...props }, ref) => {\r\n return (React.createElement(FocusRing, { focusRingClass: \"focus-ring\" },\r\n React.createElement(S.Select, { ref: ref, \"data-theme\": theme, ...props })));\r\n});\r\nSelect.displayName = 'Select';\r\nexport default Select;\r\n","export var Device;\r\n(function (Device) {\r\n Device[Device[\"MobileSmall\"] = 320] = \"MobileSmall\";\r\n Device[Device[\"Mobile\"] = 375] = \"Mobile\";\r\n Device[Device[\"MobileLarge\"] = 480] = \"MobileLarge\";\r\n Device[Device[\"TabletSmall\"] = 568] = \"TabletSmall\";\r\n Device[Device[\"Tablet\"] = 768] = \"Tablet\";\r\n Device[Device[\"TabletLarge\"] = 1024] = \"TabletLarge\";\r\n Device[Device[\"DesktopSmall\"] = 1280] = \"DesktopSmall\";\r\n Device[Device[\"Desktop\"] = 1366] = \"Desktop\";\r\n Device[Device[\"DesktopLarge\"] = 1600] = \"DesktopLarge\";\r\n Device[Device[\"ActualDesktop\"] = 1920] = \"ActualDesktop\";\r\n Device[Device[\"DesktopXL\"] = 2560] = \"DesktopXL\";\r\n})(Device || (Device = {}));\r\nexport function from(size) {\r\n return `(min-width: ${size}px)`;\r\n}\r\nexport function until(size) {\r\n return `(max-width: ${size - 1}px)`;\r\n}\r\nexport function between(start, end) {\r\n return `${from(start)} and ${until(end)}`;\r\n}\r\n","export default {\r\n black: '#282828',\r\n blackDark: '#121212',\r\n grey: '#f4f4f4',\r\n greyMidLight: '#BABABA',\r\n greyMid: '#707070',\r\n greyDark: '#4a4a4a',\r\n pureBlack: '#000000',\r\n white: '#ffffff',\r\n yellow: '#ffdc00',\r\n green: '#80C342',\r\n availability: {\r\n green: '#68F087',\r\n amber: '#FFA969',\r\n red: '#F84848',\r\n },\r\n validation: {\r\n invalid: '#da291c',\r\n valid: '#008c15',\r\n },\r\n};\r\n","import { transition } from '@helpers/animate';\r\nimport brand from '@helpers/brand';\r\nimport fonts from '@helpers/fonts';\r\nimport { Device, until } from '@helpers/media';\r\nimport srOnly from '@helpers/srOnly';\r\nimport styled from 'styled-components';\r\nconst Container = styled.button `\r\n --doorSize: 18px;\r\n\r\n display: inline-flex;\r\n align-items: center;\r\n border: var(--borderWidth, 0) solid var(--colorBorder, var(--colorBg));\r\n background: var(--colorBg);\r\n background-image: linear-gradient(to right, var(--colorBgActive), var(--colorBgActive));\r\n background-repeat: no-repeat;\r\n background-size: var(--bgSize);\r\n color: var(--colorFg);\r\n height: 55px;\r\n padding: 0px 32px;\r\n text-decoration: none;\r\n ${transition('background-size, border-color, opacity')};\r\n user-select: none;\r\n width: auto;\r\n\r\n &[data-fill='right'] {\r\n background-position: left center;\r\n }\r\n\r\n &[data-fill='left'] {\r\n background-position: right center;\r\n }\r\n\r\n &[data-size='small'] {\r\n --doorSize: 10px;\r\n\r\n height: 36px;\r\n padding: 0 14px;\r\n }\r\n\r\n span& {\r\n button:focus &,\r\n a:focus & {\r\n outline: auto;\r\n outline-offset: 3px;\r\n }\r\n\r\n @media (hover: hover) or (pointer: fine) {\r\n button:hover &,\r\n a:hover & {\r\n border-color: var(--colorBorderActive, var(--colorBgActive));\r\n color: var(--colorFgActive);\r\n background-size: var(--bgSizeActive);\r\n }\r\n }\r\n }\r\n\r\n &:not(span) {\r\n cursor: pointer;\r\n outline: none;\r\n\r\n &.focus-ring {\r\n outline: auto;\r\n outline-offset: 5px;\r\n }\r\n\r\n @media (hover: hover) or (pointer: fine) {\r\n &:hover {\r\n border-color: var(--colorBorderActive, var(--colorBgActive));\r\n color: var(--colorFgActive);\r\n background-size: var(--bgSizeActive);\r\n }\r\n }\r\n }\r\n\r\n &[data-type='default'] {\r\n --borderWidth: 2px;\r\n\r\n --bgSize: 100% 100%;\r\n --colorFg: ${brand.black};\r\n --colorBg: transparent;\r\n --colorBorder: ${brand.yellow};\r\n\r\n --bgSizeActive: 0% 100%;\r\n --colorFgActive: ${brand.black};\r\n --colorBgActive: ${brand.yellow};\r\n --colorBorderActive: ${brand.yellow};\r\n\r\n [data-theme='transparent'] &,\r\n [data-theme='dark'] & {\r\n --colorFgActive: ${brand.white};\r\n }\r\n }\r\n\r\n &[data-type='default-green'] {\r\n --borderWidth: 2px;\r\n\r\n --bgSize: 100% 100%;\r\n --colorFg: ${brand.black};\r\n --colorBg: transparent;\r\n --colorBorder: ${brand.green};\r\n\r\n --bgSizeActive: 0% 100%;\r\n --colorFgActive: ${brand.black};\r\n --colorBgActive: ${brand.green};\r\n --colorBorderActive: ${brand.green};\r\n\r\n [data-theme='transparent'] &,\r\n [data-theme='dark'] & {\r\n --colorFgActive: ${brand.white};\r\n }\r\n }\r\n\r\n &[data-type='default-alt'] {\r\n --borderWidth: 2px;\r\n\r\n --bgSize: 100% 100%;\r\n --colorFg: ${brand.black};\r\n --colorBg: transparent;\r\n --colorBorder: ${brand.yellow};\r\n\r\n --bgSizeActive: 0% 100%;\r\n --colorFgActive: ${brand.yellow};\r\n --colorBgActive: ${brand.yellow};\r\n --colorBorderActive: ${brand.yellow};\r\n }\r\n\r\n &[data-type='outline'] {\r\n --borderWidth: 2px;\r\n\r\n --bgSize: 0% 100%;\r\n --colorFg: ${brand.yellow};\r\n --colorBg: transparent;\r\n --colorBorder: ${brand.yellow};\r\n\r\n --bgSizeActive: 100% 100%;\r\n --colorFgActive: ${brand.black};\r\n --colorBgActive: ${brand.yellow};\r\n --colorBorderActive: ${brand.yellow};\r\n }\r\n\r\n &[data-type='outline-alt'] {\r\n --borderWidth: 2px;\r\n\r\n --bgSize: 0% 100%;\r\n --colorFg: ${brand.black};\r\n --colorBg: ${brand.white};\r\n --colorBorder: ${brand.black};\r\n\r\n --bgSizeActive: 100% 100%;\r\n --colorFgActive: ${brand.white};\r\n --colorBgActive: ${brand.black};\r\n --colorBorderActive: ${brand.black};\r\n\r\n [data-theme='dark'] & {\r\n --colorBorder: ${brand.white};\r\n --colorBorderActive: ${brand.white};\r\n }\r\n }\r\n\r\n &[data-icon-only='true'] {\r\n height: 55px;\r\n justify-content: center;\r\n padding: 0;\r\n width: 55px;\r\n }\r\n\r\n /* Increase specificity to override :not(span) style */\r\n &:disabled:disabled:disabled {\r\n background-size: 100% 100%;\r\n opacity: 0.5;\r\n pointer-events: none;\r\n }\r\n\r\n @media ${until(Device.TabletLarge)} {\r\n height: 45px;\r\n padding: 0px 12px;\r\n\r\n &[data-icon-only='true'] {\r\n height: 45px;\r\n width: 45px;\r\n }\r\n }\r\n\r\n /** door opening animation on button hover */\r\n &[data-type='default'][data-fill='right'],\r\n &[data-type='default-alt'][data-fill='right'],\r\n &[data-type='default-green'][data-fill='right'] {\r\n /* hide border to replace with clip path */\r\n border: 0;\r\n position: relative;\r\n\r\n &::before,\r\n &::after {\r\n content: '';\r\n display: block;\r\n position: absolute;\r\n }\r\n\r\n &::before {\r\n /* create semi-complete border using clip path */\r\n clip-path: polygon(\r\n 0% 0,\r\n 0% 100%,\r\n 101% 100%,\r\n 101% calc(50% + (var(--doorSize, 0) * 0.5)),\r\n calc(100% - var(--borderWidth, 0)) calc(50% + (var(--doorSize, 0) * 0.5)),\r\n calc(100% - var(--borderWidth, 0)) calc(100% - var(--borderWidth, 0)),\r\n var(--borderWidth, 0) calc(100% - var(--borderWidth, 0)),\r\n var(--borderWidth, 0) var(--borderWidth),\r\n calc(100% - var(--borderWidth, 0)) var(--borderWidth, 0),\r\n calc(100% - var(--borderWidth, 0)) calc(50% - (var(--doorSize, 0) * 0.5)),\r\n 100% calc(50% - (var(--doorSize, 0) * 0.5)),\r\n 100% 0%\r\n );\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n background-color: var(--colorBorder);\r\n }\r\n\r\n /* cover gap in clip path to create solid border */\r\n &::after {\r\n ${transition('transform')};\r\n\r\n width: var(--borderWidth, 0);\r\n height: calc(var(--doorSize, 0) + 2px);\r\n transform-origin: 0 0;\r\n top: calc(50% - (var(--doorSize, 0) * 0.5) - 1px);\r\n right: 0;\r\n background-color: var(--colorBorder);\r\n }\r\n\r\n @media (hover: hover) or (pointer: fine) {\r\n &:hover::after {\r\n transform: rotate(40deg);\r\n }\r\n }\r\n }\r\n\r\n @media print {\r\n display: none !important;\r\n }\r\n`;\r\nconst Text = styled.span `\r\n ${transition('color')};\r\n\r\n color: currentColor;\r\n ${fonts.altGothicNo2.regular};\r\n font-size: 22px;\r\n line-height: 21px;\r\n text-decoration: none;\r\n text-transform: uppercase;\r\n white-space: nowrap;\r\n\r\n [data-icon-only='true'] & {\r\n ${srOnly};\r\n }\r\n`;\r\nconst IconWrapper = styled.div `\r\n --size: 14px;\r\n --spacing: 12px;\r\n\r\n display: block;\r\n color: currentColor;\r\n height: var(--size);\r\n margin: 0;\r\n padding: 0;\r\n ${transition('color')};\r\n width: calc(var(--size) + var(--spacing));\r\n\r\n [data-icon-position='left'] & {\r\n margin-right: auto;\r\n order: -1;\r\n padding-right: var(--spacing);\r\n }\r\n\r\n [data-icon-position='right'] & {\r\n margin-left: auto;\r\n order: 1;\r\n padding-left: var(--spacing);\r\n }\r\n\r\n [data-icon-only='true'] & {\r\n color: currentColor;\r\n height: var(--size);\r\n margin: 0;\r\n padding: 0;\r\n width: var(--size);\r\n }\r\n`;\r\nconst ButtonStyles = {\r\n Container,\r\n IconWrapper,\r\n Text,\r\n};\r\nexport default ButtonStyles;\r\n","import { Device } from './media';\r\n/**\r\n * Base pixel value for the \"rem\" unit.\r\n */\r\nexport const PIXELS_PER_REM = 16;\r\n/**\r\n * Default pixel value for the min width.\r\n */\r\nexport const DEFAULT_MIN_VALUE = Device.TabletSmall;\r\n/**\r\n * Default pixel value for the max width.\r\n */\r\nexport const DEFAULT_MAX_VALUE = Device.DesktopLarge;\r\n/**\r\n * Define a fluid value between the min/max values at the min/max widths.\r\n */\r\nexport function fluid(min, max, minWidth = DEFAULT_MIN_VALUE, maxWidth = DEFAULT_MAX_VALUE) {\r\n const minRem = min / PIXELS_PER_REM;\r\n const maxRem = max / PIXELS_PER_REM;\r\n const minWidthRem = minWidth / PIXELS_PER_REM;\r\n const maxWidthRem = maxWidth / PIXELS_PER_REM;\r\n const slope = (maxRem - minRem) / (maxWidthRem - minWidthRem);\r\n const yAxisIntersection = -minWidthRem * slope + minRem;\r\n const clampMin = `${round(minRem)}rem`;\r\n const clampVal = `${round(yAxisIntersection)}rem + ${round(slope * 100)}vw`;\r\n const clampMax = `${round(maxRem)}rem`;\r\n return `clamp(${clampMin}, ${clampVal}, ${clampMax})`;\r\n}\r\n/**\r\n * Round to nearest hundredth.\r\n */\r\nfunction round(num) {\r\n return Math.round(num * 100) / 100;\r\n}\r\n","import { css } from 'styled-components';\r\n/**\r\n * Show only for screen readers.\r\n * @description Sourced from https://gist.github.com/ffoodd/000b59f431e3e64e4ce1a24d5bb36034\r\n */\r\nconst srOnly = css `\r\n border: 0 !important;\r\n clip: rect(1px, 1px, 1px, 1px) !important;\r\n -webkit-clip-path: inset(50%) !important;\r\n clip-path: inset(50%) !important;\r\n height: 1px !important;\r\n margin: -1px !important;\r\n overflow: hidden !important;\r\n padding: 0 !important;\r\n position: absolute !important;\r\n width: 1px !important;\r\n white-space: nowrap !important;\r\n`;\r\nexport default srOnly;\r\n","var _g;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgButtonArrow(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"-1 -0.3 16 16\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n \"data-name\": \"Group 42\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M0 7.785h12.621\",\n \"data-name\": \"Line 1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.081.703l6.919 7-6.919 7\",\n \"data-name\": \"Path 16\"\n }))));\n}\n\nexport default __webpack_public_path__ + \"884cbed45f6e6ade11638851e135eba6.svg\";\nexport { SvgButtonArrow as ReactComponent };","import { css } from 'styled-components';\r\nimport brand from './brand';\r\nexport const rootMargin = '0px 0px -33% 0px';\r\nexport const cubicEaseOut = `cubic-bezier(0.33, 1, 0.68, 1)`;\r\nexport const shouldAnimate = (innerCss) => {\r\n return css `\r\n @media (prefers-reduced-motion: no-preference) {\r\n ${innerCss}\r\n }\r\n `;\r\n};\r\nexport const transition = (properties, duration = 0.35, timing = cubicEaseOut) => {\r\n return shouldAnimate(css `\r\n transition-duration: ${typeof duration === 'string' ? duration : `${duration}s`};\r\n transition-property: ${properties};\r\n transition-timing-function: ${timing};\r\n will-change: ${properties};\r\n `);\r\n};\r\nconst TITLE_FILL_SPEED = '0.1s';\r\nexport const titleFill = shouldAnimate(css `\r\n @supports (background-clip: text) or (-webkit-background-clip: text) {\r\n ${transition('opacity, background-size', `0.25s, var(--duration, calc(var(--length) * var(--speed, ${TITLE_FILL_SPEED})))`)}\r\n transition-delay: var(--delay, 0.15s), calc(var(--delay, 0.15s) * 2);\r\n\r\n display: inline;\r\n -webkit-background-clip: text;\r\n background-clip: text;\r\n background-color: var(--textColor, ${brand.white});\r\n background-image: linear-gradient(\r\n to right,\r\n var(--fillColor, ${brand.yellow}),\r\n var(--fillColor, ${brand.yellow})\r\n );\r\n background-repeat: no-repeat;\r\n background-size: 0% 100%;\r\n color: transparent;\r\n opacity: 0;\r\n\r\n [data-animate='true'] & {\r\n background-size: 100% 100%;\r\n opacity: 1;\r\n }\r\n }\r\n`);\r\n","import { css } from 'styled-components';\r\nimport { transition } from './animate';\r\nimport brand from './brand';\r\nimport { fluid } from './fluid';\r\nimport fonts from './fonts';\r\nimport { Device, until } from './media';\r\nexport const headerLink = css `\r\n ${transition('color, text-decoration-color')};\r\n\r\n display: inline;\r\n color: currentColor;\r\n text-decoration: underline;\r\n text-decoration-color: ${brand.yellow};\r\n text-underline-offset: -0.19em;\r\n text-underline-position: under;\r\n\r\n @media ${until(Device.MobileLarge)} {\r\n word-break: break-word;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &:focus-visible {\r\n outline: auto;\r\n outline-width: thin;\r\n }\r\n\r\n &:focus,\r\n &:hover {\r\n text-decoration-color: currentColor; \r\n }\r\n`;\r\nexport const headingStyles = css `\r\n color: currentColor;\r\n ${fonts.altGothicNo2.regular};\r\n margin: 0 0 ${fluid(16, 24)};\r\n text-transform: uppercase;\r\n a{\r\n ${headerLink}\r\n }\r\n\r\n`;\r\nexport const h1 = css `\r\n ${headingStyles};\r\n font-size: ${fluid(45, 96)};\r\n line-height: ${fluid(45, 96)};\r\n`;\r\nexport const h2 = css `\r\n ${headingStyles};\r\n font-size: ${fluid(30, 56)};\r\n line-height: ${fluid(30, 54)};\r\n`;\r\nexport const h3 = css `\r\n ${headingStyles};\r\n font-size: ${fluid(24, 30)};\r\n line-height: ${fluid(24, 30)};\r\n`;\r\nexport const h4 = css `\r\n ${headingStyles};\r\n font-size: ${fluid(18, 20)};\r\n line-height: ${fluid(18, 18)};\r\n`;\r\nexport const h5 = css `\r\n ${headingStyles};\r\n font-size: ${fluid(18, 20)};\r\n line-height: ${fluid(18, 18)};\r\n`;\r\nexport const h6 = css `\r\n ${headingStyles};\r\n font-size: ${fluid(18, 18)};\r\n line-height: ${fluid(22, 22)};\r\n`;\r\nexport const paragraphStyles = css `\r\n color: currentColor;\r\n ${fonts.apercu.light};\r\n margin: 0 0 ${fluid(16, 24)};\r\n`;\r\nexport const paragraphLarge = css `\r\n ${paragraphStyles};\r\n font-size: ${fluid(18, 24)};\r\n line-height: ${fluid(28, 32)};\r\n`;\r\nexport const paragraphMedium = css `\r\n ${paragraphStyles};\r\n font-size: ${fluid(16, 18)};\r\n line-height: ${fluid(26, 26)};\r\n`;\r\nexport const paragraphSmall = css `\r\n ${paragraphStyles};\r\n font-size: ${fluid(14, 16)};\r\n line-height: ${fluid(24, 24)};\r\n`;\r\nexport const paragraphMicro = css `\r\n ${paragraphStyles};\r\n font-size: ${fluid(12, 14)};\r\n line-height: ${fluid(22, 24)};\r\n`;\r\nexport const meta = css `\r\n display: block;\r\n ${fonts.altGothicNo2.regular};\r\n font-size: ${fluid(18, 18)};\r\n line-height: ${fluid(22, 22)};\r\n letter-spacing: 0.01em;\r\n text-transform: uppercase;\r\n\r\n sup {\r\n font-size: 60%;\r\n }\r\n`;\r\nexport const link = css `\r\n ${transition('color, text-decoration-color')};\r\n\r\n display: inline;\r\n color: currentColor;\r\n text-decoration: underline;\r\n text-decoration-color: currentColor;\r\n text-underline-position: under;\r\n\r\n @media ${until(Device.MobileLarge)} {\r\n word-break: break-word;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &:focus-visible {\r\n outline: auto;\r\n outline-width: thin;\r\n }\r\n\r\n &:focus,\r\n &:hover {\r\n text-decoration-color: ${brand.yellow};\r\n }\r\n`;\r\nexport const table = css `\r\n background: ${brand.white};\r\n border-collapse: collapse;\r\n color: ${brand.black};\r\n margin-bottom: 1em;\r\n width: 100%;\r\n\r\n thead {\r\n tr {\r\n background: ${brand.black};\r\n\r\n td,\r\n th {\r\n border: 2px solid ${brand.white};\r\n color: ${brand.white};\r\n ${fonts.altGothicNo2.regular};\r\n font-size: 18px;\r\n letter-spacing: -0.01em;\r\n line-height: 22px;\r\n padding: 12px 16px;\r\n text-align: left;\r\n text-transform: uppercase;\r\n }\r\n }\r\n }\r\n\r\n tbody {\r\n tr {\r\n &:nth-child(odd) {\r\n background: ${brand.white};\r\n }\r\n\r\n &:nth-child(even) {\r\n background: ${brand.white};\r\n }\r\n\r\n th {\r\n border: 2px solid ${brand.white};\r\n color: ${brand.white};\r\n ${fonts.altGothicNo2.regular};\r\n font-size: 18px;\r\n letter-spacing: -0.01em;\r\n line-height: 22px;\r\n padding: 12px 16px;\r\n text-align: left;\r\n text-transform: uppercase;\r\n }\r\n\r\n td {\r\n border: 2px solid ${brand.white};\r\n ${fonts.apercu.light};\r\n font-size: 16px;\r\n letter-spacing: -0.01em;\r\n line-height: 20px;\r\n padding: 12px 16px;\r\n text-align: left;\r\n }\r\n }\r\n }\r\n @media ${until(Device.TabletSmall)} {\r\n padding: 4px;\r\n }\r\n`;\r\nexport const blockquote = css `\r\n ${paragraphLarge}\r\n\r\n position: relative;\r\n border-left: 4px solid currentColor;\r\n padding-left: 16px;\r\n text-align: left;\r\n`;\r\nexport const contentStyles = css `\r\n h1,\r\n .h1-styles {\r\n ${h1}\r\n }\r\n\r\n h2,\r\n .h2-styles {\r\n ${h2}\r\n }\r\n\r\n h3,\r\n .h3-styles {\r\n ${h3}\r\n }\r\n\r\n h4,\r\n .h4-styles {\r\n ${h4}\r\n }\r\n\r\n h5,\r\n .h5-styles {\r\n ${h5}\r\n }\r\n\r\n p {\r\n ${paragraphLarge}\r\n }\r\n\r\n p.small {\r\n ${paragraphSmall}\r\n }\r\n\r\n a {\r\n ${link}\r\n }\r\n\r\n ol,\r\n ul {\r\n ${paragraphLarge};\r\n\r\n li {\r\n &::marker {\r\n color: ${brand.yellow};\r\n }\r\n }\r\n }\r\n\r\n ol {\r\n list-style: decimal;\r\n padding-left: 1.2em;\r\n }\r\n\r\n ul {\r\n list-style: disc;\r\n padding-left: 1.2em;\r\n }\r\n\r\n hr {\r\n display: block;\r\n background: currentColor;\r\n border: 0;\r\n height: 4px;\r\n margin: ${fluid(40, 80)} 0;\r\n padding: 0;\r\n width: 100%;\r\n }\r\n\r\n table {\r\n ${table};\r\n }\r\n\r\n blockquote {\r\n ${blockquote};\r\n }\r\n\r\n .responsive-table {\r\n position: relative;\r\n overflow-x: auto;\r\n }\r\n\r\n > *:first-child {\r\n margin-top: 0;\r\n }\r\n\r\n > *:last-child {\r\n margin-bottom: 0;\r\n }\r\n`;\r\nexport const contentStylesSmall = css `\r\n h1,\r\n .h1-styles {\r\n ${h1}\r\n }\r\n\r\n h2,\r\n .h2-styles {\r\n ${h2}\r\n }\r\n\r\n h3,\r\n .h3-styles {\r\n ${h3}\r\n }\r\n\r\n h4,\r\n .h4-styles {\r\n ${h4}\r\n }\r\n\r\n h5,\r\n .h5-styles {\r\n ${h5}\r\n }\r\n\r\n p {\r\n ${paragraphMedium}\r\n }\r\n\r\n p.small {\r\n ${paragraphSmall}\r\n }\r\n\r\n a {\r\n ${link}\r\n }\r\n\r\n ol,\r\n ul {\r\n ${paragraphMedium};\r\n\r\n li {\r\n &::marker {\r\n color: ${brand.yellow};\r\n }\r\n }\r\n }\r\n\r\n ol {\r\n list-style: decimal;\r\n padding-left: 1.2em;\r\n }\r\n\r\n ul {\r\n list-style: disc;\r\n padding-left: 1.2em;\r\n }\r\n\r\n hr {\r\n display: block;\r\n background: currentColor;\r\n border: 0;\r\n height: 4px;\r\n margin: ${fluid(40, 80)} 0;\r\n padding: 0;\r\n width: 100%;\r\n }\r\n\r\n table {\r\n ${table};\r\n }\r\n\r\n blockquote {\r\n ${blockquote};\r\n }\r\n\r\n .responsive-table {\r\n position: relative;\r\n overflow-x: auto;\r\n }\r\n\r\n > *:first-child {\r\n margin-top: 0;\r\n }\r\n\r\n > *:last-child {\r\n margin-bottom: 0;\r\n }\r\n`;\r\n","export const API_URLS = {\r\n // Misc Endpoints\r\n getArticles: '/api/articles/articles',\r\n // Form Endpoints\r\n postFormsHubspot: '/api/forms/hubspot',\r\n};\r\n"],"sourceRoot":""}