{"version":3,"sources":["webpack:///./src/hooks/useIntersectionObserver.ts","webpack:///./src/hooks/useInView.ts","webpack:///./src/stories/Components/SectionWrapper/SectionWrapper.tsx","webpack:///./src/stories/Components/Global/Typography/Heading.styles.ts","webpack:///./src/stories/Widgets/RichText/RichText.styles.ts","webpack:///./src/stories/Components/Global/Typography/Paragraph.styles.ts","webpack:///./src/helpers/utils.ts","webpack:///./src/stories/Widgets/PageNotFound/PageNotFound.styles.ts","webpack:///./src/stories/Widgets/PageNotFound/PageNotFound.tsx","webpack:///./src/stories/Components/SectionWrapper/SectionWrapper.styles.ts"],"names":["useIntersectionObserver","callback","options","observerRef","useRef","rootRef","elementRef","useEffect","current","IntersectionObserver","root","observe","disconnect","JSON","stringify","useInView","reverse","isEditMode","inView","setInView","useState","entries","isIntersecting","SectionWrapper","React","children","className","flush","fullWidth","id","innerWidth","theme","otherProps","ref","S","Container","themeOption","SiteWide","width","displayName","H1Styles","css","fonts","brown","thin","fluid","H2Styles","H3Styles","light","H4Styles","H5Styles","bold","H6Styles","Heading","styled","h1","visual","linkStyles","cssVar","regular","tableStyles","ParagraphStyles","RegularStyles","contentStyles","HeadingStyles","verticalMargin","setCssVar","from","Device","TabletLarge","isActive","fadeIn","animation","easeInOutCubic","until","MobileLarge","Content","div","imageStyles","LargeStyles","SmallStyles","Paragraph","p","size","headerOverlap","Desktop","headerOverlapPadding","highlightTitleWords","title","replaceAll","Tag","slideInUp","Title","Inner","CtaWrapper","small","slideInUpInitial","RichTextStyles","PageNotFound","content","cta","tag","refContainer","isInView","rootMargin","earlyRootMargin","createElement","dangerouslySetInnerHTML","__html","text","LinkButton","buttonType","href","url","target","section","DesktopLarge","themes","StyledSiteWide"],"mappings":"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","file":"110-b6aea3411c3b1455d261.js","sourcesContent":["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 * as React from 'react';\r\nimport S from './SectionWrapper.styles';\r\nconst SectionWrapper = React.forwardRef(({ children, className, flush, fullWidth = false, id, innerWidth = 'default', theme = 'light', ...otherProps }, ref) => {\r\n return (React.createElement(S.Container, { ref: ref, id: id, className: className, flush: flush, themeOption: theme, \"data-theme\": theme, ...otherProps }, fullWidth ? children : React.createElement(S.SiteWide, { width: innerWidth }, children)));\r\n});\r\nSectionWrapper.displayName = 'SectionWrapper';\r\nexport default SectionWrapper;\r\n","import { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport styled, { css } from 'styled-components';\r\nconst H1Styles = css `\r\n ${fonts.brown.thin};\r\n font-size: ${fluid(32, 70)};\r\n line-height: ${fluid(32, 70)};\r\n letter-spacing: normal;\r\n margin: 0 0 16px;\r\n text-transform: uppercase;\r\n`;\r\nconst H2Styles = css `\r\n ${fonts.brown.thin};\r\n font-size: ${fluid(28, 60)};\r\n line-height: ${fluid(28, 64)};\r\n letter-spacing: normal;\r\n margin: 0 0 16px;\r\n text-transform: uppercase;\r\n`;\r\nconst H3Styles = css `\r\n ${fonts.brown.light};\r\n font-size: ${fluid(24, 50)};\r\n line-height: ${fluid(26, 54)};\r\n letter-spacing: normal;\r\n margin: 0 0 16px;\r\n text-transform: uppercase;\r\n`;\r\nconst H4Styles = css `\r\n ${fonts.brown.light};\r\n font-size: ${fluid(21, 24)};\r\n line-height: ${fluid(28, 32)};\r\n letter-spacing: normal;\r\n margin: 0 0 16px;\r\n text-transform: uppercase;\r\n`;\r\nconst H5Styles = css `\r\n ${fonts.brown.bold};\r\n font-size: ${fluid(16, 20)};\r\n line-height: ${fluid(18, 28)};\r\n letter-spacing: normal;\r\n margin: 0 0 16px;\r\n text-transform: uppercase;\r\n`;\r\nconst H6Styles = css `\r\n ${fonts.brown.bold};\r\n font-size: ${fluid(16, 20)};\r\n line-height: ${fluid(18, 28)};\r\n letter-spacing: normal;\r\n margin: 0 0 16px;\r\n text-transform: uppercase;\r\n`;\r\nconst Heading = styled.h1 `\r\n ${({ visual }) => {\r\n switch (visual) {\r\n case 'h1':\r\n return H1Styles;\r\n case 'h2':\r\n return H2Styles;\r\n case 'h3':\r\n return H3Styles;\r\n case 'h4':\r\n return H4Styles;\r\n case 'h5':\r\n return H5Styles;\r\n case 'h6':\r\n return H6Styles;\r\n default:\r\n break;\r\n }\r\n}}\r\n`;\r\nexport default {\r\n H1Styles,\r\n H2Styles,\r\n H3Styles,\r\n H4Styles,\r\n H5Styles,\r\n H6Styles,\r\n Heading,\r\n};\r\n","import animation, { fadeIn } from '@helpers/animation';\r\nimport { cssVar, setCssVar } from '@helpers/cssVar';\r\nimport fonts from '@helpers/fonts';\r\nimport { Device, from, until } from '@helpers/media';\r\nimport HeadingStyles from '@stories/Components/Global/Typography/Heading.styles';\r\nimport ParagraphStyles from '@stories/Components/Global/Typography/Paragraph.styles';\r\nimport SectionWrapper from '@stories/Components/SectionWrapper/SectionWrapper';\r\nimport styled, { css } from 'styled-components';\r\nconst linkStyles = css `\r\n background-color: transparent;\r\n background-image: linear-gradient(\r\n to right,\r\n ${cssVar('accentColor')} 0%,\r\n ${cssVar('accentColor')} 100%\r\n );\r\n background-repeat: no-repeat;\r\n background-size: 0% 100%;\r\n color: ${cssVar('fgColor')};\r\n ${fonts.brown.regular};\r\n margin: -3px;\r\n padding: 3px;\r\n text-decoration: underline;\r\n text-underline-position: under;\r\n transition: background-size 0.15s ease-out;\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &:focus,\r\n &:hover {\r\n background-size: 100% 100%;\r\n }\r\n`;\r\nconst tableStyles = css `\r\n margin: 0 0 16px;\r\n\r\n th,\r\n td {\r\n border: 1px solid ${cssVar('fgColor')};\r\n color: ${cssVar('fgColor')};\r\n ${ParagraphStyles.RegularStyles};\r\n height: auto !important; // override inline height - no point this being content editable.\r\n margin: 0;\r\n padding: 8px 16px;\r\n }\r\n`;\r\nconst contentStyles = css `\r\n color: ${cssVar('fgColor')};\r\n ${fonts.brown.regular};\r\n\r\n h1 {\r\n ${HeadingStyles.H1Styles};\r\n }\r\n\r\n h2 {\r\n ${HeadingStyles.H2Styles};\r\n }\r\n\r\n h3 {\r\n ${HeadingStyles.H3Styles};\r\n }\r\n\r\n h4 {\r\n ${HeadingStyles.H4Styles};\r\n }\r\n\r\n h5 {\r\n ${HeadingStyles.H5Styles};\r\n }\r\n\r\n h6 {\r\n ${HeadingStyles.H6Styles};\r\n }\r\n\r\n p {\r\n ${ParagraphStyles.RegularStyles};\r\n }\r\n\r\n strong {\r\n ${fonts.brown.bold};\r\n }\r\n\r\n ol,\r\n ul {\r\n display: block;\r\n ${ParagraphStyles.RegularStyles};\r\n padding: 0 0 0 40px;\r\n }\r\n\r\n ol {\r\n list-style: decimal;\r\n\r\n li {\r\n display: list-item;\r\n }\r\n }\r\n\r\n ul {\r\n list-style: disc;\r\n\r\n /* Adjust padding if the browser supports custom markers, otherwise use default disc marker. */\r\n @supports (selector(ul li::marker)) {\r\n padding: 0 0 0 20px;\r\n\r\n li {\r\n display: list-item;\r\n padding: 0 0 0 20px;\r\n\r\n &::marker {\r\n content: '-';\r\n }\r\n }\r\n }\r\n }\r\n\r\n a {\r\n ${linkStyles};\r\n }\r\n\r\n > *:last-child {\r\n margin-bottom: 0;\r\n }\r\n\r\n table {\r\n ${tableStyles};\r\n }\r\n\r\n hr {\r\n margin: 16px 0;\r\n }\r\n\r\n sup {\r\n position: relative;\r\n top: -0.5em;\r\n font-size: 80%;\r\n }\r\n\r\n sub {\r\n position: relative;\r\n top: 0.5em;\r\n font-size: 80%;\r\n }\r\n`;\r\nconst Container = styled(SectionWrapper) `\r\n ${({ verticalMargin }) => verticalMargin &&\r\n css `\r\n ${setCssVar('sectionMargin', verticalMargin)};\r\n `}\r\n padding-top: 40px;\r\n @media ${from(Device.TabletLarge)} {\r\n scroll-margin-top: 128px;\r\n margin: ${cssVar('sectionMargin')} 0;\r\n opacity: 0;\r\n\r\n ${({ isActive }) => isActive &&\r\n css `\r\n ${fadeIn(isActive, 375, 0, animation.easeInOutCubic)};\r\n `}\r\n }\r\n\r\n @media ${until(Device.MobileLarge)} {\r\n scroll-margin-top: 60px;\r\n margin: calc(${cssVar('sectionMargin')} / 2) 0;\r\n }\r\n`;\r\nconst Content = styled.div `\r\n margin: 0 auto;\r\n width: 100%;\r\n\r\n ${contentStyles}\r\n`;\r\nconst imageStyles = css `\r\n img {\r\n object-fit: contain;\r\n height: fit-content;\r\n }\r\n`;\r\nexport default {\r\n Container,\r\n Content,\r\n contentStyles,\r\n linkStyles,\r\n imageStyles,\r\n};\r\n","import { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport styled, { css } from 'styled-components';\r\n/**\r\n * 20px / 28px\r\n */\r\nconst LargeStyles = css `\r\n ${fonts.brown.light};\r\n font-size: ${fluid(18, 24)};\r\n line-height: ${fluid(26, 36)};\r\n letter-spacing: normal;\r\n margin: 0 0 16px;\r\n`;\r\n/**\r\n * 18px / 28px\r\n */\r\nconst RegularStyles = css `\r\n ${fonts.brown.light};\r\n font-size: ${fluid(16, 20)};\r\n line-height: ${fluid(26, 32)};\r\n letter-spacing: normal;\r\n margin: 0 0 16px;\r\n`;\r\n/**\r\n * 16px / 26px\r\n */\r\nconst SmallStyles = css `\r\n ${fonts.brown.light};\r\n font-size: ${fluid(14, 16)};\r\n line-height: ${fluid(20, 22)};\r\n letter-spacing: normal;\r\n margin: 0 0 16px;\r\n`;\r\nconst Paragraph = styled.p `\r\n ${({ size }) => {\r\n switch (size) {\r\n case 'large':\r\n return LargeStyles;\r\n case 'regular':\r\n return RegularStyles;\r\n case 'small':\r\n return SmallStyles;\r\n default:\r\n break;\r\n }\r\n}}\r\n`;\r\nexport default {\r\n Paragraph,\r\n SmallStyles,\r\n RegularStyles,\r\n LargeStyles,\r\n};\r\n","import { css } from 'styled-components';\r\nimport { Device, from } from './media';\r\nexport function sleep(ms) {\r\n return new Promise((resolve) => setTimeout(resolve, ms));\r\n}\r\nexport const headerOverlap = css `\r\n margin-top: -46px;\r\n\r\n @media ${from(Device.Desktop)} {\r\n margin-top: -104px;\r\n }\r\n\r\n .no-header & {\r\n margin-top: 0 !important;\r\n }\r\n`;\r\nexport const headerOverlapPadding = css `\r\n --headerHeight: 46px;\r\n\r\n padding-top: var(--headerHeight);\r\n\r\n @media ${from(Device.Desktop)} {\r\n --headerHeight: 104px;\r\n }\r\n\r\n .no-header & {\r\n padding-top: 0 !important;\r\n }\r\n`;\r\nexport const highlightTitleWords = (title) => title.replaceAll(/\\*([\\w\\W]+)\\*/g, '$1');\r\n","import animation, { fadeIn, slideInUp, slideInUpInitial } from '@helpers/animation';\r\nimport { cssVar } from '@helpers/cssVar';\r\nimport fonts from '@helpers/fonts';\r\nimport { Device, from } from '@helpers/media';\r\nimport { headerOverlap, headerOverlapPadding } from '@helpers/utils';\r\nimport HeadingStyles from '@stories/Components/Global/Typography/Heading.styles';\r\nimport ParagraphStyles from '@stories/Components/Global/Typography/Paragraph.styles';\r\nimport SectionWrapper from '@stories/Components/SectionWrapper/SectionWrapper';\r\nimport styled, { css } from 'styled-components';\r\nimport RichTextStyles from '../RichText/RichText.styles';\r\nconst Container = styled(SectionWrapper) `\r\n ${headerOverlap};\r\n background: ${cssVar('bgColor')};\r\n color: ${cssVar('fgColor')};\r\n overflow: hidden;\r\n\r\n @media ${from(Device.TabletLarge)} {\r\n ${({ isActive }) => isActive &&\r\n css `\r\n ${Tag} {\r\n ${slideInUp(isActive, 375, 0, animation.easeInOutCubic)};\r\n }\r\n\r\n ${Title} {\r\n ${slideInUp(isActive, 375, 100, animation.easeInOutCubic)};\r\n }\r\n\r\n ${Inner} {\r\n &:before {\r\n opacity: 0.3;\r\n transform: skewX(-8deg);\r\n }\r\n\r\n &:after {\r\n opacity: 0.3;\r\n transform: skewX(8deg);\r\n }\r\n }\r\n\r\n ${Content}, ${CtaWrapper} {\r\n ${fadeIn(isActive, 375, 400, animation.easeInOutCubic)};\r\n }\r\n `}\r\n }\r\n`;\r\nconst Inner = styled.div `\r\n ${headerOverlapPadding};\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n flex-direction: column;\r\n justify-content: center;\r\n min-height: 100vh;\r\n text-align: center;\r\n\r\n @media ${from(Device.TabletLarge)} {\r\n &::after,\r\n &::before {\r\n content: '';\r\n position: absolute;\r\n top: 0;\r\n display: block;\r\n background: ${cssVar('fgColor')};\r\n height: 100%;\r\n opacity: 0.3;\r\n width: 1px;\r\n }\r\n\r\n &::after {\r\n right: calc((100vw - ${cssVar('siteWidth')}) / 2);\r\n opacity: 0;\r\n transform: skewX(-8deg);\r\n transform-origin: bottom right;\r\n transition: opacity 575ms ${animation.easeInOutCubic},\r\n transform 575ms ${animation.easeInOutCubic};\r\n }\r\n\r\n &::before {\r\n left: calc((100vw - ${cssVar('siteWidth')}) / 2);\r\n opacity: 0;\r\n transform: skewX(8deg);\r\n transform-origin: bottom left;\r\n transition: opacity 575ms ${animation.easeInOutCubic},\r\n transform 575ms ${animation.easeInOutCubic};\r\n }\r\n }\r\n`;\r\nconst Tag = styled.small `\r\n display: block;\r\n ${fonts.brown.regular};\r\n font-size: 14px;\r\n letter-spacing: 0.05em;\r\n line-height: 20px;\r\n margin: 0 0 8px;\r\n\r\n @media ${from(Device.TabletLarge)} {\r\n font-size: 18px;\r\n letter-spacing: 0.05em;\r\n line-height: 26px;\r\n margin: 0 0 16px;\r\n ${slideInUpInitial};\r\n }\r\n`;\r\nconst Title = styled.h1 `\r\n ${HeadingStyles.H1Styles};\r\n margin: 0 0 24px;\r\n\r\n @media ${from(Device.TabletLarge)} {\r\n ${slideInUpInitial};\r\n }\r\n`;\r\nconst Content = styled.div `\r\n ${RichTextStyles.contentStyles}\r\n margin: 0 0 32px;\r\n max-width: 804px;\r\n\r\n @media ${from(Device.TabletLarge)} {\r\n opacity: 0;\r\n }\r\n\r\n p {\r\n ${ParagraphStyles.LargeStyles};\r\n }\r\n`;\r\nconst CtaWrapper = styled.div `\r\n @media ${from(Device.TabletLarge)} {\r\n opacity: 0;\r\n }\r\n`;\r\nexport default {\r\n Container,\r\n Content,\r\n CtaWrapper,\r\n Inner,\r\n Tag,\r\n Title,\r\n};\r\n","import animation from '@helpers/animation';\r\nimport { useInView } from '@hooks/useInView';\r\nimport { LinkButton } from '@stories/Components/Buttons/GeneralButton/Button';\r\nimport React from 'react';\r\nimport S from './PageNotFound.styles';\r\nconst PageNotFound = ({ id, content, cta, tag, title }) => {\r\n const [refContainer, isInView] = useInView({\r\n rootMargin: animation.inView.earlyRootMargin,\r\n });\r\n return (React.createElement(S.Container, { ref: refContainer, id: id, flush: \"both\", theme: \"dark\", isActive: isInView },\r\n React.createElement(S.Inner, null,\r\n React.createElement(S.Tag, null,\r\n React.createElement(\"span\", null, tag)),\r\n React.createElement(S.Title, null,\r\n React.createElement(\"span\", null, title)),\r\n React.createElement(S.Content, { dangerouslySetInnerHTML: { __html: content } }),\r\n cta.text && (React.createElement(S.CtaWrapper, null,\r\n React.createElement(LinkButton, { buttonType: \"orange\", href: cta.url, target: cta.target, title: cta.text }))))));\r\n};\r\nexport default PageNotFound;\r\n","import { themes } from '@helpers/brand';\r\nimport { setCssVar } from '@helpers/cssVar';\r\nimport { fluid } from '@helpers/fluid';\r\nimport { Device, from } from '@helpers/media';\r\nimport styled, { css } from 'styled-components';\r\nimport SiteWide from '../Global/SiteWide/SiteWide';\r\nconst Container = styled.section `\r\n --sectionMargin: ${fluid(64, 102)};\r\n ${setCssVar('sitePadding', '18px')};\r\n ${setCssVar('siteWidth', '100%')};\r\n\r\n @media ${from(Device.DesktopLarge)} {\r\n ${setCssVar('sitePadding', '18px')};\r\n ${setCssVar('siteWidth', '1312px')};\r\n }\r\n\r\n ${({ flush, themeOption }) => themeOption === 'light' &&\r\n css `\r\n margin-top: ${flush === 'both' || flush === 'top' ? 0 : `calc(var(--sectionMargin) / 2)`};\r\n margin-bottom: ${flush === 'both' || flush === 'bottom' ? 0 : `calc(var(--sectionMargin) / 2)`};\r\n `}\r\n\r\n ${({ flush, themeOption }) => themeOption !== 'light' &&\r\n css `\r\n padding-top: ${flush === 'both' || flush === 'top' ? 0 : `calc(var(--sectionMargin) / 2)`};\r\n padding-bottom: ${flush === 'both' || flush === 'bottom' ? 0 : `calc(var(--sectionMargin) / 2)`};\r\n `}\r\n\r\n ${({ themeOption }) => themeOption &&\r\n css `\r\n ${themes[themeOption]}\r\n `}\r\n`;\r\nconst StyledSiteWide = styled(SiteWide) ``;\r\nexport default {\r\n Container,\r\n SiteWide: StyledSiteWide,\r\n};\r\n"],"sourceRoot":""}