{"version":3,"sources":["webpack:///./src/helpers/media.ts","webpack:///./src/stories/Components/Buttons/ButtonShared.styles.ts","webpack:///./src/helpers/image.ts","webpack:///./src/stories/Components/Buttons/LinkButton/LinkButton.styles.ts","webpack:///./src/stories/Components/CarouselControls/CarouselProvider.tsx","webpack:///./src/helpers/srOnly.ts","webpack:///./src/img/icons/pause.svg","webpack:///./src/img/icons/triangle-left.svg","webpack:///./src/img/icons/triangle-right.svg","webpack:///./src/stories/Components/CarouselControls/CarouselControls.tsx","webpack:///./src/hooks/useIntersectionObserver.ts","webpack:///./src/hooks/useInView.ts","webpack:///./src/helpers/brand.ts","webpack:///./src/helpers/grey.ts","webpack:///./src/stories/Components/CarouselControls/CarouselControls.styles.ts","webpack:///./src/stories/Components/Global/SiteWide/SiteWide.tsx","webpack:///./src/stories/Components/Buttons/LinkButton/LinkButton.tsx","webpack:///./src/stories/Components/Global/SiteWide/SiteWide.styles.ts","webpack:///./src/helpers/cssVar.ts","webpack:///./src/helpers/animation.ts","webpack:///./src/helpers/fonts.ts"],"names":["Device","from","size","until","buttonTheme","theme","css","bgColor","borderColor","fgColor","sharedButtonStyles","Icon","TabletLarge","styled","span","Text","fonts","gillSans","semiBold","imageUrl","image","imageParams","params","rxy","focalPoint","top","left","undefined","rmode","paramsString","queryString","stringify","heightratio","width","height","src","Button","a","themeOption","brand","black","white","rgba","brown","CarouselContext","React","actions","next","playPause","prev","state","autoplay","disabled","isPaused","loop","max","value","onChange","useCarousel","CarouselProvider","props","shouldReduceMotion","useReducedMotion","setIsPaused","contextValue","Math","min","Provider","children","srOnly","_g","_extends","Object","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","SvgPause","xmlns","viewBox","fill","stroke","strokeLinecap","strokeLinejoin","strokeWidth","d","_path","SvgTriangleLeft","SvgTriangleRight","CarouselControls","controls","circumference","PI","animationControls","useAnimation","useInterval","start","strokeDashoffset","transition","duration","ease","type","set","S","Container","Array","map","_","index","SlideButton","onClick","event","preventDefault","SrOnly","ControlProgressButton","ControlIcon","as","ControlProgress","cx","cy","r","style","cssVar","ControlProgressCircle","animate","ControlButton","useIntersectionObserver","callback","options","observerRef","useRef","rootRef","elementRef","useEffect","current","IntersectionObserver","root","observe","disconnect","JSON","useInView","reverse","isEditMode","inView","setInView","useState","entries","isIntersecting","blueGrey","brownLight","grey","reduce","previous","hsl","validation","invalid","valid","brownTheme","setCssVar","darkTheme","lightTheme","grey96","transparentTheme","themes","dark","light","transparent","div","grey73","button","Tablet","svg","motion","circle","SiteWide","className","createElement","LinkButton","icon","title","otherProps","iconComponent","SBS","href","SitePadding","SiteWidth","DesktopLarge","name","threshold","rootMargin","earlyRootMargin","globalThreshold","easeInOutCubic","slideInUpInitial","slideInUp","delay","easingFunc","fadeInUp","amount","fadeIn","lightItalic","regular","regularItalic","semiBoldItalic","bold","boldItalic"],"mappings":"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","file":"4-39ed1311bb2f92ae196d.js","sourcesContent":["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[\"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","import fonts from '@helpers/fonts';\r\nimport { Device, until } from '@helpers/media';\r\nimport styled, { css } from 'styled-components';\r\nexport function buttonTheme(theme) {\r\n const value = css `\r\n ${theme.bgColor &&\r\n css `\r\n --buttonBgColor: ${theme.bgColor};\r\n `}\r\n\r\n ${theme.borderColor &&\r\n css `\r\n --buttonBorderColor: ${theme.borderColor};\r\n `}\r\n\r\n ${theme.fgColor &&\r\n css `\r\n --buttonColor: ${theme.fgColor};\r\n `}\r\n `;\r\n return value;\r\n}\r\nexport const sharedButtonStyles = css `\r\n display: inline-flex;\r\n align-items: center;\r\n border: 0;\r\n background-color: var(--buttonBgColor);\r\n border: 1px solid var(--buttonBorderColor);\r\n color: var(--buttonColor);\r\n height: 50px;\r\n justify-content: flex-start;\r\n margin: 0;\r\n outline: none;\r\n padding: 0 18px;\r\n place-content: center;\r\n place-items: center;\r\n text-decoration: none;\r\n transition: background-color 0.15s ease-out, background-size 0.15s ease-out,\r\n border-color 0.15s ease-out, color 0.15s ease-out, opacity 0.15s ease-out,\r\n transform 0.15s ease-out;\r\n user-select: none;\r\n width: auto;\r\n\r\n &:disabled {\r\n opacity: 0.5;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n ${() => Icon} {\r\n margin-left: 24px;\r\n }\r\n\r\n @media ${until(Device.TabletLarge)} {\r\n height: 40px;\r\n padding: 0 12px;\r\n\r\n ${() => Icon} {\r\n margin-left: 12px;\r\n }\r\n }\r\n`;\r\nexport const Icon = styled.span `\r\n display: block;\r\n height: 24px;\r\n width: 24px;\r\n`;\r\nexport const Text = styled.span `\r\n color: currentColor;\r\n ${fonts.gillSans.semiBold};\r\n font-size: 19px;\r\n line-height: 23px;\r\n letter-spacing: 0.1em;\r\n text-transform: uppercase;\r\n\r\n @media ${until(Device.TabletLarge)} {\r\n font-size: 14px;\r\n line-height: 18px;\r\n }\r\n`;\r\n","import queryString from 'query-string';\r\n/**\r\n * Create an image URL for ImageProcessor\r\n * @param image The image model\r\n * @param imageParams The image parameters\r\n * @returns The image URL\r\n */\r\nexport function imageUrl(image, imageParams) {\r\n if (!image) {\r\n return '';\r\n }\r\n const params = {\r\n rxy: image.focalPoint ? `${image.focalPoint.top},${image.focalPoint.left}` : undefined,\r\n rmode: 'crop',\r\n ...imageParams,\r\n };\r\n const paramsString = queryString.stringify(params);\r\n // Imagesharp doesn't support heightratio parameter. Convert to height parameter for compatibility.\r\n if (imageParams.heightratio !== undefined && imageParams.width !== undefined) {\r\n params.height = imageParams.width * imageParams.heightratio;\r\n }\r\n return `${image.src}${paramsString ? `?${queryString.stringify(params)}` : ''}`;\r\n}\r\n","import brand from '@helpers/brand';\r\nimport { rgba } from 'polished';\r\nimport styled, { css } from 'styled-components';\r\nimport { buttonTheme, sharedButtonStyles } from '../ButtonShared.styles';\r\nconst Button = styled.a `\r\n ${sharedButtonStyles};\r\n\r\n ${({ themeOption }) => themeOption === 'black' &&\r\n css `\r\n ${buttonTheme({\r\n bgColor: brand.black,\r\n borderColor: brand.black,\r\n fgColor: brand.white,\r\n })}\r\n\r\n &:focus,\r\n &:hover {\r\n ${buttonTheme({\r\n bgColor: brand.white,\r\n borderColor: brand.black,\r\n fgColor: brand.black,\r\n })}\r\n }\r\n `}\r\n\r\n ${({ themeOption }) => themeOption === 'blackOutline' &&\r\n css `\r\n ${buttonTheme({\r\n bgColor: rgba(brand.black, 0),\r\n borderColor: brand.black,\r\n fgColor: brand.black,\r\n })}\r\n\r\n &:focus,\r\n &:hover {\r\n ${buttonTheme({\r\n bgColor: brand.black,\r\n borderColor: brand.black,\r\n fgColor: brand.white,\r\n })}\r\n }\r\n `}\r\n\r\n ${({ themeOption }) => themeOption === 'brown' &&\r\n css `\r\n ${buttonTheme({\r\n bgColor: brand.brown,\r\n borderColor: brand.brown,\r\n fgColor: brand.white,\r\n })}\r\n\r\n &:focus,\r\n &:hover {\r\n ${buttonTheme({\r\n bgColor: brand.white,\r\n borderColor: brand.brown,\r\n fgColor: brand.brown,\r\n })}\r\n }\r\n `}\r\n\r\n ${({ themeOption }) => themeOption === 'brownOutline' &&\r\n css `\r\n ${buttonTheme({\r\n bgColor: rgba(brand.brown, 0),\r\n borderColor: brand.brown,\r\n fgColor: brand.brown,\r\n })}\r\n\r\n &:focus,\r\n &:hover {\r\n ${buttonTheme({\r\n bgColor: brand.brown,\r\n borderColor: brand.brown,\r\n fgColor: brand.white,\r\n })}\r\n }\r\n `}\r\n\r\n ${({ themeOption }) => themeOption === 'white' &&\r\n css `\r\n ${buttonTheme({\r\n bgColor: brand.white,\r\n borderColor: brand.white,\r\n fgColor: brand.black,\r\n })}\r\n\r\n &:focus,\r\n &:hover {\r\n ${buttonTheme({\r\n bgColor: brand.black,\r\n borderColor: brand.white,\r\n fgColor: brand.white,\r\n })}\r\n }\r\n `}\r\n\r\n ${({ themeOption }) => themeOption === 'whiteOutline' &&\r\n css `\r\n ${buttonTheme({\r\n bgColor: rgba(brand.white, 0),\r\n borderColor: brand.white,\r\n fgColor: brand.white,\r\n })}\r\n\r\n &:focus,\r\n &:hover {\r\n ${buttonTheme({\r\n bgColor: brand.white,\r\n borderColor: brand.white,\r\n fgColor: brand.black,\r\n })}\r\n }\r\n `}\r\n`;\r\nexport default {\r\n Button,\r\n};\r\n","import { useReducedMotion } from 'framer-motion';\r\nimport * as React from 'react';\r\nconst CarouselContext = React.createContext({\r\n actions: {\r\n /* eslint-disable @typescript-eslint/no-empty-function */\r\n next: () => { },\r\n playPause: () => { },\r\n prev: () => { },\r\n /* eslint-enable @typescript-eslint/no-empty-function */\r\n },\r\n state: {\r\n autoplay: 0,\r\n disabled: false,\r\n isPaused: false,\r\n loop: false,\r\n max: 0,\r\n value: 0,\r\n /* eslint-disable @typescript-eslint/no-empty-function */\r\n onChange: () => { },\r\n /* eslint-enable @typescript-eslint/no-empty-function */\r\n },\r\n});\r\nexport const useCarousel = () => React.useContext(CarouselContext);\r\nconst CarouselProvider = (props) => {\r\n const { autoplay, disabled, loop, max, value, onChange } = props;\r\n const shouldReduceMotion = useReducedMotion();\r\n const [isPaused, setIsPaused] = React.useState(shouldReduceMotion || autoplay === 0);\r\n const contextValue = {\r\n actions: {\r\n next,\r\n playPause,\r\n prev,\r\n },\r\n state: {\r\n autoplay,\r\n disabled,\r\n isPaused,\r\n loop,\r\n max,\r\n value,\r\n onChange,\r\n },\r\n };\r\n return (React.createElement(CarouselContext.Provider, { value: contextValue }, props.children(contextValue)));\r\n /** Set the autoplay state of the carousel. */\r\n function playPause(value) {\r\n setIsPaused(value);\r\n }\r\n /** Move to the previous slide, handles looping if enabled. */\r\n function prev() {\r\n if (loop && value === 0) {\r\n return onChange(max - 1);\r\n }\r\n onChange(Math.max(value - 1, 0));\r\n }\r\n /** Move to the next slide, handles looping if enabled. */\r\n function next() {\r\n if (loop && value === max - 1) {\r\n return onChange(0);\r\n }\r\n onChange(Math.min(value + 1, max - 1));\r\n }\r\n};\r\nexport default CarouselProvider;\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 || 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 SvgPause(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 12.085 16.478\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n stroke: \"currentColor\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n strokeWidth: 3\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.5 1.499v13.478M10.584 1.499v13.478\"\n }))));\n}\n\nexport default __webpack_public_path__ + \"pause-329c1f8435d11fd9b4222ada99a22cbe.svg\";\nexport { SvgPause as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || 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 SvgTriangleLeft(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 11 15\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.212 8.326a1 1 0 010-1.652l8.225-5.608A1 1 0 0111 1.892v11.216a1 1 0 01-1.563.826z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default __webpack_public_path__ + \"triangle-left-f823db3deb4ca209af40fa248dd67b06.svg\";\nexport { SvgTriangleLeft as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || 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 SvgTriangleRight(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 11 15\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.788 6.674a1 1 0 010 1.652l-8.225 5.608A1 1 0 010 13.108V1.892a1 1 0 011.563-.826z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default __webpack_public_path__ + \"triangle-right-4d86767c770b0e3fb6e407cf975044b5.svg\";\nexport { SvgTriangleRight as ReactComponent };","import { cssVar } from '@helpers/cssVar';\r\nimport { ReactComponent as SvgPause } from '@img/icons/pause.svg';\r\nimport { ReactComponent as SvgTriangleLeft } from '@img/icons/triangle-left.svg';\r\nimport { ReactComponent as SvgTriangleRight } from '@img/icons/triangle-right.svg';\r\nimport { useAnimation } from 'framer-motion';\r\nimport * as React from 'react';\r\nimport { useInterval } from 'react-use';\r\nimport S from './CarouselControls.styles';\r\nimport { useCarousel } from './CarouselProvider';\r\nconst CarouselControls = ({ controls = false, theme = 'light', }) => {\r\n const progressRadius = 18;\r\n const circumference = Math.PI * progressRadius * 2;\r\n const { actions, state } = useCarousel();\r\n const { next, playPause, prev } = actions;\r\n const { isPaused, autoplay = 0, disabled = false, loop = false, max, value, onChange } = state;\r\n const animationControls = useAnimation();\r\n useInterval(() => {\r\n next();\r\n }, isPaused ? null : autoplay);\r\n React.useEffect(() => {\r\n if (value === max - 1 && !loop) {\r\n playPause(true);\r\n animationControls.start({\r\n strokeDashoffset: circumference,\r\n transition: { duration: 0.3, ease: 'easeOut', type: 'tween' },\r\n });\r\n return;\r\n }\r\n if (isPaused) {\r\n animationControls.start({\r\n strokeDashoffset: circumference,\r\n transition: { duration: 0.3, ease: 'easeOut', type: 'tween' },\r\n });\r\n return;\r\n }\r\n animationControls.set({\r\n strokeDashoffset: circumference,\r\n });\r\n animationControls.start({\r\n strokeDashoffset: 0,\r\n transition: { duration: autoplay / 1000, ease: 'linear', type: 'tween' },\r\n });\r\n }, [isPaused, value]);\r\n return (React.createElement(S.Container, { themeOption: theme },\r\n new Array(max).fill(0).map((_, index) => (React.createElement(S.SlideButton, { key: index + 1, disabled: value === index, onClick: (event) => {\r\n event.preventDefault();\r\n if (!disabled) {\r\n playPause(true);\r\n onChange(index);\r\n }\r\n } },\r\n React.createElement(S.SrOnly, null, value === index ? 'Active' : index + 1)))),\r\n autoplay > 0 && (React.createElement(S.ControlProgressButton, { onClick: (event) => {\r\n event.preventDefault();\r\n if (!isPaused) {\r\n return playPause(true);\r\n }\r\n if (!disabled) {\r\n playPause(false);\r\n next();\r\n }\r\n } },\r\n React.createElement(S.SrOnly, null, isPaused ? 'Play' : 'Pause'),\r\n React.createElement(S.ControlIcon, { as: isPaused ? SvgTriangleRight : SvgPause }),\r\n React.createElement(S.ControlProgress, { viewBox: \"0 0 40 40\" },\r\n React.createElement(\"circle\", { cx: 20, cy: 20, fill: \"none\", r: progressRadius, strokeWidth: 2, style: { stroke: cssVar('fgColor') } }),\r\n React.createElement(S.ControlProgressCircle, { animate: animationControls, cx: 20, cy: 20, fill: \"none\", r: progressRadius, strokeWidth: 2, \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n style: { ['--circumference']: circumference, stroke: cssVar('accentColor') } })))),\r\n controls && (React.createElement(React.Fragment, null,\r\n React.createElement(S.ControlButton, { disabled: !loop && value === 0, onClick: (event) => {\r\n event.preventDefault();\r\n if (!disabled) {\r\n playPause(true);\r\n prev();\r\n }\r\n } },\r\n React.createElement(S.SrOnly, null, \"Previous\"),\r\n React.createElement(S.ControlIcon, { as: SvgTriangleLeft })),\r\n React.createElement(S.ControlButton, { disabled: !loop && value === max - 1, onClick: (event) => {\r\n event.preventDefault();\r\n if (!disabled) {\r\n playPause(true);\r\n next();\r\n }\r\n } },\r\n React.createElement(S.SrOnly, null, \"Next\"),\r\n React.createElement(S.ControlIcon, { as: SvgTriangleRight }))))));\r\n};\r\nexport default CarouselControls;\r\n","import { useEffect, useRef } from 'react';\r\n/**\r\n * Use the IntersectionObserver to track visibility of an element in the viewport.\r\n * @param {IntersectionObserverCallback} callback\r\n * @param {IntersectionObserverInit} options\r\n * @returns {UseIntersectionObserverReturn}\r\n */\r\nfunction useIntersectionObserver(callback, options = {}) {\r\n const observerRef = useRef(null);\r\n const rootRef = useRef(null);\r\n const elementRef = useRef(null);\r\n useEffect(() => {\r\n if (!elementRef.current) {\r\n return undefined;\r\n }\r\n observerRef.current = new IntersectionObserver(callback, {\r\n root: rootRef.current,\r\n ...options,\r\n });\r\n observerRef.current.observe(elementRef.current);\r\n return () => {\r\n if (observerRef.current === null) {\r\n return;\r\n }\r\n observerRef.current.disconnect();\r\n };\r\n }, [JSON.stringify(options)]);\r\n return { elementRef, observerRef, rootRef };\r\n}\r\nexport default useIntersectionObserver;\r\n","import { useState } from 'react';\r\nimport useIntersectionObserver from './useIntersectionObserver';\r\nexport function useInView(options, reverse = false, isEditMode = false) {\r\n const [inView, setInView] = useState(false);\r\n const { elementRef } = useIntersectionObserver((entries) => {\r\n if (entries[0].isIntersecting) {\r\n setInView(true);\r\n }\r\n else if (reverse === true) {\r\n setInView(false);\r\n }\r\n }, options);\r\n return [elementRef, isEditMode ? true : inView];\r\n}\r\n","import { css } from 'styled-components';\r\nimport { setCssVar } from './cssVar';\r\nimport greyscale from './grey';\r\nconst brand = {\r\n black: '#231F20',\r\n blueGrey: '#eff1f1',\r\n brown: '#a25840',\r\n brownLight: '#ede7e5',\r\n grey: greyscale,\r\n white: '#fff',\r\n validation: {\r\n invalid: '#da291c',\r\n valid: '#008c15',\r\n },\r\n};\r\nexport const brownTheme = css `\r\n ${setCssVar('fgColor', brand.white)};\r\n ${setCssVar('bgColor', brand.brown)};\r\n ${setCssVar('bgColorAlt', brand.brown)};\r\n ${setCssVar('accentColor', brand.white)};\r\n ${setCssVar('accentColorAlt', brand.white)};\r\n`;\r\nexport const darkTheme = css `\r\n ${setCssVar('fgColor', brand.white)};\r\n ${setCssVar('bgColor', brand.black)};\r\n ${setCssVar('bgColorAlt', brand.black)};\r\n ${setCssVar('accentColor', brand.white)};\r\n ${setCssVar('accentColorAlt', brand.white)};\r\n`;\r\nexport const lightTheme = css `\r\n ${setCssVar('fgColor', brand.black)};\r\n ${setCssVar('bgColor', brand.white)};\r\n ${setCssVar('bgColorAlt', brand.grey.grey96)};\r\n ${setCssVar('accentColor', brand.brown)};\r\n ${setCssVar('accentColorAlt', brand.brownLight)};\r\n`;\r\nexport const transparentTheme = css `\r\n ${setCssVar('fgColor', brand.black)};\r\n ${setCssVar('bgColor', 'none')};\r\n ${setCssVar('bgColorAlt', brand.grey.grey96)};\r\n ${setCssVar('accentColor', brand.brown)};\r\n ${setCssVar('accentColorAlt', brand.brownLight)};\r\n`;\r\nexport const themes = {\r\n brown: brownTheme,\r\n dark: darkTheme,\r\n light: lightTheme,\r\n transparent: transparentTheme,\r\n};\r\nexport default brand;\r\n","import { hsl } from 'polished';\r\nconst greyscaleValues = [46, 73, 87, 90, 96];\r\nconst greyscale = greyscaleValues.reduce((previous, current) => ({\r\n ...previous,\r\n [`grey${current}`]: grey(current),\r\n}), {});\r\nfunction grey(value) {\r\n return hsl(0, 0, value / 100);\r\n}\r\nexport { greyscale as default, grey };\r\n","import brand from '@helpers/brand';\r\nimport { cssVar, setCssVar } from '@helpers/cssVar';\r\nimport { Device, until } from '@helpers/media';\r\nimport srOnly from '@helpers/srOnly';\r\nimport { motion } from 'framer-motion';\r\nimport styled, { css } from 'styled-components';\r\nconst Container = styled.div `\r\n display: flex;\r\n align-items: center;\r\n flex-direction: row;\r\n user-select: none;\r\n\r\n ${({ themeOption }) => {\r\n switch (themeOption) {\r\n case 'light':\r\n return css `\r\n ${setCssVar('accentColor', brand.brown)};\r\n ${setCssVar('fgColor', brand.grey.grey73)};\r\n `;\r\n case 'dark':\r\n return css `\r\n ${setCssVar('accentColor', brand.brown)};\r\n ${setCssVar('fgColor', brand.white)};\r\n `;\r\n }\r\n}}\r\n`;\r\nconst SlideButton = styled.button `\r\n display: inline-flex;\r\n background: none;\r\n border: 0;\r\n color: ${cssVar('fgColor')};\r\n margin: 0;\r\n padding: 18px 0;\r\n place-content: center;\r\n place-items: center;\r\n transition: background-color 0.15s ease-out;\r\n\r\n & + & {\r\n margin: 0 0 0 8px;\r\n }\r\n\r\n &::before {\r\n content: '';\r\n background: ${cssVar('fgColor')};\r\n height: 4px;\r\n transition: background-color 0.15s ease-out;\r\n width: 40px;\r\n }\r\n\r\n &:not(:disabled) {\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &:focus,\r\n &:hover {\r\n &::before {\r\n background: ${cssVar('accentColor')};\r\n }\r\n }\r\n }\r\n\r\n &:disabled {\r\n &::before {\r\n background: ${cssVar('accentColor')};\r\n }\r\n }\r\n`;\r\nconst ControlButton = styled.button `\r\n position: relative;\r\n display: inline-flex;\r\n background: none;\r\n border: 1px solid ${cssVar('fgColor')};\r\n border-radius: 50%;\r\n color: ${cssVar('fgColor')};\r\n height: 40px;\r\n margin: 0 0 0 8px;\r\n padding: 0;\r\n place-content: center;\r\n place-items: center;\r\n width: 40px;\r\n transition: border-color 0.15s ease-out, opacity 0.15s ease-out;\r\n\r\n &:not(:disabled) {\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &:focus,\r\n &:hover {\r\n border-color: ${cssVar('accentColor')};\r\n }\r\n }\r\n\r\n &:disabled {\r\n opacity: 0.5;\r\n }\r\n\r\n @media ${until(Device.Tablet)} {\r\n margin: 0 8px 0 0;\r\n }\r\n`;\r\nconst ControlIcon = styled.span `\r\n color: ${cssVar('fgColor')};\r\n height: 14px;\r\n width: 14px;\r\n`;\r\nconst ControlProgressButton = styled(ControlButton) `\r\n border: 0;\r\n`;\r\nconst ControlProgress = styled.svg `\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n display: block;\r\n color: ${cssVar('accentColor')};\r\n height: 100%;\r\n width: 100%;\r\n`;\r\nconst ControlProgressCircle = styled(motion.circle) `\r\n stroke-dasharray: var(--circumference) var(--circumference);\r\n transform: rotate(-90deg);\r\n transform-origin: center center;\r\n`;\r\nconst SrOnly = styled.span `\r\n ${srOnly}\r\n`;\r\nexport default {\r\n Container,\r\n ControlButton,\r\n ControlIcon,\r\n ControlProgress,\r\n ControlProgressButton,\r\n ControlProgressCircle,\r\n SlideButton,\r\n SrOnly,\r\n};\r\n","import React from 'react';\r\nimport S from './SiteWide.styles';\r\nconst SiteWide = ({ children, className, width = 'default' }) => {\r\n return (React.createElement(S.Container, { className: className, width: width }, children));\r\n};\r\nexport default SiteWide;\r\n","import React from 'react';\r\nimport * as SBS from '../ButtonShared.styles';\r\nimport S from './LinkButton.styles';\r\nconst LinkButton = ({ className, icon, themeOption = 'white', title, ...otherProps }) => {\r\n let iconComponent;\r\n if (typeof icon === 'string') {\r\n iconComponent = (React.createElement(SBS.Icon, { as: \"svg\", \"aria-label\": title },\r\n React.createElement(\"use\", { href: icon })));\r\n }\r\n else if (typeof icon !== 'undefined') {\r\n iconComponent = React.createElement(SBS.Icon, { as: icon, \"aria-label\": title });\r\n }\r\n else {\r\n iconComponent = undefined;\r\n }\r\n return (React.createElement(S.Button, { className: className, themeOption: themeOption, ...otherProps },\r\n React.createElement(SBS.Text, null, title),\r\n iconComponent));\r\n};\r\nexport default LinkButton;\r\n","import { cssVar, setCssVar } from '@helpers/cssVar';\r\nimport { Device, from } from '@helpers/media';\r\nimport styled, { css } from 'styled-components';\r\nexport const SitePadding = 18;\r\nexport const SiteWidth = 1640;\r\nexport const SiteWidthNarrow = 804;\r\nconst Container = styled.div `\r\n ${setCssVar('sitePadding', `${SitePadding}px`)};\r\n ${setCssVar('siteWidth', `${SiteWidth}px`)};\r\n\r\n margin-left: auto;\r\n margin-right: auto;\r\n max-width: calc(${cssVar('siteWidth')} + (${cssVar('sitePadding')} * 2));\r\n padding-left: ${cssVar('sitePadding')};\r\n padding-right: ${cssVar('sitePadding')};\r\n width: 100%;\r\n\r\n ${({ width }) => {\r\n switch (width) {\r\n case 'default':\r\n return css `\r\n @media ${from(Device.DesktopLarge)} {\r\n }\r\n `;\r\n case 'narrow':\r\n return css `\r\n @media ${from(Device.TabletLarge)} {\r\n ${setCssVar('siteWidth', `${SiteWidthNarrow}px`)};\r\n }\r\n `;\r\n }\r\n}}\r\n`;\r\nexport default {\r\n Container,\r\n};\r\n","const variables = [\r\n 'fgColor',\r\n 'bgColor',\r\n 'bgColorAlt',\r\n 'accentColor',\r\n 'accentColorAlt',\r\n 'siteWidth',\r\n 'sitePadding',\r\n 'sectionMargin',\r\n];\r\nfunction cssVar(name) {\r\n return `var(--${name})`;\r\n}\r\nfunction setCssVar(name, value) {\r\n return `--${name}: ${value}`;\r\n}\r\nexport { cssVar, setCssVar };\r\n","import { css } from 'styled-components';\r\nexport default {\r\n inView: {\r\n threshold: 0.2,\r\n rootMargin: '0px 0px -20% 0px',\r\n earlyRootMargin: '0px 0px -10% 0px',\r\n },\r\n globalThreshold: 0.2,\r\n easeInOutCubic: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\r\n};\r\nexport const slideInUpInitial = css `\r\n > span {\r\n opacity: 0;\r\n transform: translateY(100%);\r\n }\r\n`;\r\nexport function slideInUp(animate, duration, delay, easingFunc) {\r\n return css `\r\n overflow: hidden;\r\n\r\n > span {\r\n display: inline-block;\r\n transition: transform ${duration}ms ${delay}ms ${easingFunc},\r\n opacity ${duration}ms ${delay}ms ${easingFunc};\r\n }\r\n\r\n ${animate\r\n ? css `\r\n > span {\r\n opacity: 1;\r\n transform: translateY(0px);\r\n }\r\n `\r\n : css `\r\n ${slideInUpInitial};\r\n `}\r\n `;\r\n}\r\nexport function fadeInUp(animate, amount, duration, delay, easingFunc) {\r\n return css `\r\n transition: transform ${duration}ms ${delay}ms ${easingFunc},\r\n opacity ${duration}ms ${delay}ms ${easingFunc};\r\n\r\n ${animate\r\n ? css `\r\n opacity: 1;\r\n transform: translateY(0px);\r\n `\r\n : css `\r\n opacity: 0;\r\n transform: translateY(${amount}px);\r\n `}\r\n `;\r\n}\r\nexport function fadeIn(animate, duration, delay, easingFunc) {\r\n return css `\r\n transition: opacity ${duration}ms ${delay}ms ${easingFunc};\r\n\r\n ${animate\r\n ? css `\r\n opacity: 1;\r\n `\r\n : css `\r\n opacity: 0;\r\n `}\r\n `;\r\n}\r\n","import { css } from 'styled-components';\r\nexport default {\r\n gillSans: {\r\n light: css `\r\n font-family: 'Gill Sans Nova', sans-serif;\r\n font-style: normal;\r\n font-weight: 300;\r\n `,\r\n lightItalic: css `\r\n font-family: 'Gill Sans Nova', sans-serif;\r\n font-style: italic;\r\n font-weight: 300;\r\n `,\r\n regular: css `\r\n font-family: 'Gill Sans Nova', sans-serif;\r\n font-style: normal;\r\n font-weight: 400;\r\n `,\r\n regularItalic: css `\r\n font-family: 'Gill Sans Nova', sans-serif;\r\n font-style: italic;\r\n font-weight: 400;\r\n `,\r\n semiBold: css `\r\n font-family: 'Gill Sans Nova', sans-serif;\r\n font-style: normal;\r\n font-weight: 600;\r\n `,\r\n semiBoldItalic: css `\r\n font-family: 'Gill Sans Nova', sans-serif;\r\n font-style: italic;\r\n font-weight: 600;\r\n `,\r\n bold: css `\r\n font-family: 'Gill Sans Nova', sans-serif;\r\n font-style: normal;\r\n font-weight: 700;\r\n `,\r\n boldItalic: css `\r\n font-family: 'Gill Sans Nova', sans-serif;\r\n font-style: italic;\r\n font-weight: 700;\r\n `,\r\n },\r\n};\r\n"],"sourceRoot":""}