@skyscanner/backpack-web 42.25.0 → 42.26.0-dev-v27611615692.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -25,65 +25,65 @@ To contribute please see [contributing.md](CONTRIBUTING.md).
25
25
  ## List of packages
26
26
 
27
27
  [`bpk-animate-height`](/packages/bpk-animate-height)
28
- [`bpk-component-accordion`](/packages/bpk-component-accordion)
29
- [`bpk-component-autosuggest`](/packages/bpk-component-autosuggest)
30
- [`bpk-component-badge`](/packages/bpk-component-badge)
31
- [`bpk-component-banner-alert`](/packages/bpk-component-banner-alert)
32
- [`bpk-component-barchart`](/packages/bpk-component-barchart)
33
- [`bpk-component-blockquote`](/packages/bpk-component-blockquote)
34
- [`bpk-component-bottom-sheet`](/packages/bpk-component-bottom-sheet)
35
- [`bpk-component-breadcrumb`](/packages/bpk-component-breadcrumb)
36
- [`bpk-component-breakpoint`](/packages/bpk-component-breakpoint)
37
- [`bpk-component-button`](/packages/bpk-component-button)
38
- [`bpk-component-calendar`](/packages/bpk-component-calendar)
39
- [`bpk-component-card`](/packages/bpk-component-card)
40
- [`bpk-component-checkbox`](/packages/bpk-component-checkbox)
41
- [`bpk-component-chip`](/packages/bpk-component-chip)
42
- [`bpk-component-close-button`](/packages/bpk-component-close-button)
43
- [`bpk-component-code`](/packages/bpk-component-code)
44
- [`bpk-component-datatable`](/packages/bpk-component-datatable)
45
- [`bpk-component-datepicker`](/packages/bpk-component-datepicker)
46
- [`bpk-component-description-list`](/packages/bpk-component-description-list)
47
- [`bpk-component-dialog`](/packages/bpk-component-dialog)
48
- [`bpk-component-drawer`](/packages/bpk-component-drawer)
49
- [`bpk-component-fieldset`](/packages/bpk-component-fieldset)
50
- [`bpk-component-form-validation`](/packages/bpk-component-form-validation)
51
- [`bpk-component-graphic-promotion`](/packages/bpk-component-graphic-promotion)
52
- [`bpk-component-grid-toggle`](/packages/bpk-component-grid-toggle)
53
- [`bpk-component-horizontal-nav`](/packages/bpk-component-horizontal-nav)
54
- [`bpk-component-icon`](/packages/bpk-component-icon)
55
- [`bpk-component-image`](/packages/bpk-component-image)
56
- [`bpk-component-infinite-scroll`](/packages/bpk-component-infinite-scroll)
57
- [`bpk-component-input`](/packages/bpk-component-input)
58
- [`bpk-component-label`](/packages/bpk-component-label)
59
- [`bpk-component-link`](/packages/bpk-component-link)
60
- [`bpk-component-list`](/packages/bpk-component-list)
61
- [`bpk-component-loading-button`](/packages/bpk-component-loading-button)
62
- [`bpk-component-mobile-scroll-container`](/packages/bpk-component-mobile-scroll-container)
63
- [`bpk-component-modal`](/packages/bpk-component-modal)
64
- [`bpk-component-navigation-bar`](/packages/bpk-component-navigation-bar)
65
- [`bpk-component-nudger`](/packages/bpk-component-nudger)
66
- [`bpk-component-page-indicator`](/packages/bpk-component-page-indicator)
67
- [`bpk-component-pagination`](/packages/bpk-component-pagination)
68
- [`bpk-component-panel`](/packages/bpk-component-panel)
69
- [`bpk-component-phone-input`](/packages/bpk-component-phone-input)
70
- [`bpk-component-popover`](/packages/bpk-component-popover)
71
- [`bpk-component-price-range`](/packages/bpk-component-price-range)
72
- [`bpk-component-progress`](/packages/bpk-component-progress)
73
- [`bpk-component-radio`](/packages/bpk-component-radio)
74
- [`bpk-component-rtl-toggle`](/packages/bpk-component-rtl-toggle)
75
- [`bpk-component-section-list`](/packages/bpk-component-section-list)
76
- [`bpk-component-select`](/packages/bpk-component-select)
77
- [`bpk-component-slider`](/packages/bpk-component-slider)
78
- [`bpk-component-spinner`](/packages/bpk-component-spinner)
79
- [`bpk-component-star-rating`](/packages/bpk-component-star-rating)
80
- [`bpk-component-switch`](/packages/bpk-component-switch)
81
- [`bpk-component-table`](/packages/bpk-component-table)
82
- [`bpk-component-text`](/packages/bpk-component-text)
83
- [`bpk-component-textarea`](/packages/bpk-component-textarea)
28
+ [`bpk-component-accordion`](/packages/backpack-web/src/bpk-component-accordion)
29
+ [`bpk-component-autosuggest`](/packages/backpack-web/src/bpk-component-autosuggest)
30
+ [`bpk-component-badge`](/packages/backpack-web/src/bpk-component-badge)
31
+ [`bpk-component-banner-alert`](/packages/backpack-web/src/bpk-component-banner-alert)
32
+ [`bpk-component-barchart`](/packages/backpack-web/src/bpk-component-barchart)
33
+ [`bpk-component-blockquote`](/packages/backpack-web/src/bpk-component-blockquote)
34
+ [`bpk-component-bottom-sheet`](/packages/backpack-web/src/bpk-component-bottom-sheet)
35
+ [`bpk-component-breadcrumb`](/packages/backpack-web/src/bpk-component-breadcrumb)
36
+ [`bpk-component-breakpoint`](/packages/backpack-web/src/bpk-component-breakpoint)
37
+ [`bpk-component-button`](/packages/backpack-web/src/bpk-component-button)
38
+ [`bpk-component-calendar`](/packages/backpack-web/src/bpk-component-calendar)
39
+ [`bpk-component-card`](/packages/backpack-web/src/bpk-component-card)
40
+ [`bpk-component-checkbox`](/packages/backpack-web/src/bpk-component-checkbox)
41
+ [`bpk-component-chip`](/packages/backpack-web/src/bpk-component-chip)
42
+ [`bpk-component-close-button`](/packages/backpack-web/src/bpk-component-close-button)
43
+ [`bpk-component-code`](/packages/backpack-web/src/bpk-component-code)
44
+ [`bpk-component-datatable`](/packages/backpack-web/src/bpk-component-datatable)
45
+ [`bpk-component-datepicker`](/packages/backpack-web/src/bpk-component-datepicker)
46
+ [`bpk-component-description-list`](/packages/backpack-web/src/bpk-component-description-list)
47
+ [`bpk-component-dialog`](/packages/backpack-web/src/bpk-component-dialog)
48
+ [`bpk-component-drawer`](/packages/backpack-web/src/bpk-component-drawer)
49
+ [`bpk-component-fieldset`](/packages/backpack-web/src/bpk-component-fieldset)
50
+ [`bpk-component-form-validation`](/packages/backpack-web/src/bpk-component-form-validation)
51
+ [`bpk-component-graphic-promotion`](/packages/backpack-web/src/bpk-component-graphic-promotion)
52
+ [`bpk-component-grid-toggle`](/packages/backpack-web/src/bpk-component-grid-toggle)
53
+ [`bpk-component-horizontal-nav`](/packages/backpack-web/src/bpk-component-horizontal-nav)
54
+ [`bpk-component-icon`](/packages/backpack-web/src/bpk-component-icon)
55
+ [`bpk-component-image`](/packages/backpack-web/src/bpk-component-image)
56
+ [`bpk-component-infinite-scroll`](/packages/backpack-web/src/bpk-component-infinite-scroll)
57
+ [`bpk-component-input`](/packages/backpack-web/src/bpk-component-input)
58
+ [`bpk-component-label`](/packages/backpack-web/src/bpk-component-label)
59
+ [`bpk-component-link`](/packages/backpack-web/src/bpk-component-link)
60
+ [`bpk-component-list`](/packages/backpack-web/src/bpk-component-list)
61
+ [`bpk-component-loading-button`](/packages/backpack-web/src/bpk-component-loading-button)
62
+ [`bpk-component-mobile-scroll-container`](/packages/backpack-web/src/bpk-component-mobile-scroll-container)
63
+ [`bpk-component-modal`](/packages/backpack-web/src/bpk-component-modal)
64
+ [`bpk-component-navigation-bar`](/packages/backpack-web/src/bpk-component-navigation-bar)
65
+ [`bpk-component-nudger`](/packages/backpack-web/src/bpk-component-nudger)
66
+ [`bpk-component-page-indicator`](/packages/backpack-web/src/bpk-component-page-indicator)
67
+ [`bpk-component-pagination`](/packages/backpack-web/src/bpk-component-pagination)
68
+ [`bpk-component-panel`](/packages/backpack-web/src/bpk-component-panel)
69
+ [`bpk-component-phone-input`](/packages/backpack-web/src/bpk-component-phone-input)
70
+ [`bpk-component-popover`](/packages/backpack-web/src/bpk-component-popover)
71
+ [`bpk-component-price-range`](/packages/backpack-web/src/bpk-component-price-range)
72
+ [`bpk-component-progress`](/packages/backpack-web/src/bpk-component-progress)
73
+ [`bpk-component-radio`](/packages/backpack-web/src/bpk-component-radio)
74
+ [`bpk-component-rtl-toggle`](/packages/backpack-web/src/bpk-component-rtl-toggle)
75
+ [`bpk-component-section-list`](/packages/backpack-web/src/bpk-component-section-list)
76
+ [`bpk-component-select`](/packages/backpack-web/src/bpk-component-select)
77
+ [`bpk-component-slider`](/packages/backpack-web/src/bpk-component-slider)
78
+ [`bpk-component-spinner`](/packages/backpack-web/src/bpk-component-spinner)
79
+ [`bpk-component-star-rating`](/packages/backpack-web/src/bpk-component-star-rating)
80
+ [`bpk-component-switch`](/packages/backpack-web/src/bpk-component-switch)
81
+ [`bpk-component-table`](/packages/backpack-web/src/bpk-component-table)
82
+ [`bpk-component-text`](/packages/backpack-web/src/bpk-component-text)
83
+ [`bpk-component-textarea`](/packages/backpack-web/src/bpk-component-textarea)
84
84
  [`bpk-theming`](/packages/bpk-theming)
85
- [`bpk-component-ticket`](/packages/bpk-component-ticket)
86
- [`bpk-component-tooltip`](/packages/bpk-component-tooltip)
85
+ [`bpk-component-ticket`](/packages/backpack-web/src/bpk-component-ticket)
86
+ [`bpk-component-tooltip`](/packages/backpack-web/src/bpk-component-tooltip)
87
87
  [`bpk-react-utils`](/packages/bpk-react-utils)
88
88
  [`bpk-mixins`](/packages/bpk-mixins)
89
89
  [`bpk-stylesheets`](/packages/bpk-stylesheets)
@@ -1,4 +1,4 @@
1
- export { BpkProvider } from './src/BpkProvider';
1
+ export { BpkProvider, BpkEmotionCacheContext } from './src/BpkProvider';
2
2
  export { BpkBox } from './src/BpkBox';
3
3
  export { BpkVessel } from './src/BpkVessel';
4
4
  export { BpkFlex } from './src/BpkFlex';
@@ -16,7 +16,7 @@
16
16
  * limitations under the License.
17
17
  */
18
18
 
19
- export { BpkProvider } from "./src/BpkProvider";
19
+ export { BpkProvider, BpkEmotionCacheContext } from "./src/BpkProvider";
20
20
  export { BpkBox } from "./src/BpkBox";
21
21
  export { BpkVessel } from "./src/BpkVessel";
22
22
  export { BpkFlex } from "./src/BpkFlex";
@@ -1,11 +1,14 @@
1
- import type { ReactNode } from 'react';
1
+ import type { ReactNode, ReactElement } from 'react';
2
+ import type { EmotionCache } from '@emotion/cache';
2
3
  export interface BpkProviderProps {
3
4
  children: ReactNode;
4
5
  }
6
+ export declare const BpkEmotionCacheContext: import("react").Context<EmotionCache | null>;
5
7
  /**
6
8
  * BpkProvider - Provides context for Backpack layout and Ark-based components.
7
9
  *
8
10
  * Wraps children with:
11
+ * - Emotion CacheProvider (own cache, or external cache injected via BpkEmotionCacheContext)
9
12
  * - Chakra UI system context (for layout components: BpkFlex, BpkGrid, etc.)
10
13
  * - Ark UI LocaleProvider (for Ark-based components: BpkCheckboxV2, BpkSegmentedControlV2, etc.)
11
14
  *
@@ -13,7 +16,12 @@ export interface BpkProviderProps {
13
16
  * the appropriate locale to Ark's LocaleProvider. All Ark-based components in the
14
17
  * tree render correctly in RTL without requiring additional wrapping or prop changes.
15
18
  *
19
+ * External cache injection: host apps can supply an Emotion cache via
20
+ * BpkEmotionCacheContext. When a non-null value is provided, BpkProvider uses it
21
+ * directly and skips creating its own cache. This allows the host to swap in a
22
+ * fresh cache after a hydration error so all Backpack styles are re-injected.
23
+ *
16
24
  * @param {BpkProviderProps} props - The provider props.
17
- * @returns {JSX.Element} The provider wrapping its children with Chakra and Ark context.
25
+ * @returns {ReactElement} The provider wrapping its children with Chakra and Ark context.
18
26
  */
19
- export declare const BpkProvider: ({ children }: BpkProviderProps) => JSX.Element;
27
+ export declare const BpkProvider: ({ children }: BpkProviderProps) => ReactElement;
@@ -16,11 +16,19 @@
16
16
  * limitations under the License.
17
17
  */
18
18
 
19
- import { useEffect, useState } from 'react';
19
+ import { createContext, useContext, useEffect, useRef, useState } from 'react';
20
20
  import { LocaleProvider } from '@ark-ui/react';
21
21
  import { ChakraProvider, createSystem, defaultBaseConfig } from '@chakra-ui/react';
22
+ import createCache from '@emotion/cache';
23
+ import { CacheProvider } from '@emotion/react';
22
24
  import { createBpkConfig } from "./theme";
23
25
  import { jsx as _jsx } from "react/jsx-runtime";
26
+ // Exported so host apps can inject an externally-managed Emotion cache into
27
+ // BpkProvider (e.g. to force re-injection after a hydration error recovery).
28
+ // When a non-null value is provided via this context, BpkProvider operates in
29
+ // "nested" mode: it skips creating its own cache and delegates to the external one.
30
+ export const BpkEmotionCacheContext = /*#__PURE__*/createContext(null);
31
+
24
32
  /**
25
33
  * Creates a Chakra UI system with Backpack token mappings.
26
34
  *
@@ -29,6 +37,32 @@ import { jsx as _jsx } from "react/jsx-runtime";
29
37
  * See: https://chakra-ui.com/guides/component-bundle-optimization
30
38
  */
31
39
  const bpkSystem = createSystem(defaultBaseConfig, createBpkConfig());
40
+
41
+ // Cypress/Percy workaround: `hydrateRoot()` strips SSR <style> nodes, then
42
+ // Emotion falls back to speedy mode (insertRule) which Percy can't serialise.
43
+ // Force speedy:false + recreate after mount in Cypress. Remove once Emotion /
44
+ // React Router 7 provide a cleaner hydration story. Ported from hotels-website#12025.
45
+
46
+ // `'css'` is shared with Chakra v3's internal key on purpose — keeps this
47
+ // boundary in front of Chakra's auto-created cache.
48
+ const createBpkEmotionCache = speedy => createCache(speedy === undefined ? {
49
+ key: 'css'
50
+ } : {
51
+ key: 'css',
52
+ speedy
53
+ });
54
+ const isCypressEnv = () => {
55
+ if (typeof window === 'undefined') return false;
56
+ const win = window;
57
+ // `bpkDisableEmotionSpeedy` is an explicit escape hatch for non-Cypress
58
+ // Percy runs; consumers set it in their test bootstrap.
59
+ if (win.Cypress || win.bpkDisableEmotionSpeedy) return true;
60
+ try {
61
+ return Boolean(win.parent?.Cypress);
62
+ } catch {
63
+ return false; // cross-origin parent frame
64
+ }
65
+ };
32
66
  // Fallback locale mapping used when no explicit locale is available on the document.
33
67
  // Maps DOM direction to minimal BCP 47 locales understood by Ark's isRTL() utility.
34
68
  // 'ar-SA' is the minimal RTL locale — Ark only uses it to derive dir='rtl'.
@@ -108,6 +142,7 @@ const useArkLocale = () => {
108
142
  * BpkProvider - Provides context for Backpack layout and Ark-based components.
109
143
  *
110
144
  * Wraps children with:
145
+ * - Emotion CacheProvider (own cache, or external cache injected via BpkEmotionCacheContext)
111
146
  * - Chakra UI system context (for layout components: BpkFlex, BpkGrid, etc.)
112
147
  * - Ark UI LocaleProvider (for Ark-based components: BpkCheckboxV2, BpkSegmentedControlV2, etc.)
113
148
  *
@@ -115,18 +150,50 @@ const useArkLocale = () => {
115
150
  * the appropriate locale to Ark's LocaleProvider. All Ark-based components in the
116
151
  * tree render correctly in RTL without requiring additional wrapping or prop changes.
117
152
  *
153
+ * External cache injection: host apps can supply an Emotion cache via
154
+ * BpkEmotionCacheContext. When a non-null value is provided, BpkProvider uses it
155
+ * directly and skips creating its own cache. This allows the host to swap in a
156
+ * fresh cache after a hydration error so all Backpack styles are re-injected.
157
+ *
118
158
  * @param {BpkProviderProps} props - The provider props.
119
- * @returns {JSX.Element} The provider wrapping its children with Chakra and Ark context.
159
+ * @returns {ReactElement} The provider wrapping its children with Chakra and Ark context.
120
160
  */
121
161
  export const BpkProvider = ({
122
162
  children
123
163
  }) => {
164
+ const externalCache = useContext(BpkEmotionCacheContext);
165
+ const isNested = externalCache !== null;
166
+ const [isCypress] = useState(isCypressEnv);
167
+ const [ownCache, setOwnCache] = useState(() => isNested ? externalCache : createBpkEmotionCache(isCypress ? false : undefined));
168
+ const hasRecreated = useRef(false);
124
169
  const locale = useArkLocale();
125
- return /*#__PURE__*/_jsx(ChakraProvider, {
170
+
171
+ // Recreate the cache once after mount in Cypress to replace SSR <style>
172
+ // nodes the hydrator stripped. `hasRecreated` guards StrictMode double-invoke.
173
+ // Deps stable for provider lifetime → empty array is intentional.
174
+ useEffect(() => {
175
+ if (isNested || !isCypress) return;
176
+ if (hasRecreated.current) return;
177
+ hasRecreated.current = true;
178
+ setOwnCache(createBpkEmotionCache(false));
179
+ // eslint-disable-next-line react-hooks/exhaustive-deps
180
+ }, []);
181
+ const activeCache = isNested ? externalCache : ownCache;
182
+ const inner = /*#__PURE__*/_jsx(ChakraProvider, {
126
183
  value: bpkSystem,
127
184
  children: /*#__PURE__*/_jsx(LocaleProvider, {
128
185
  locale: locale,
129
186
  children: children
130
187
  })
131
188
  });
189
+ if (isNested) {
190
+ return inner;
191
+ }
192
+ return /*#__PURE__*/_jsx(BpkEmotionCacheContext.Provider, {
193
+ value: activeCache,
194
+ children: /*#__PURE__*/_jsx(CacheProvider, {
195
+ value: activeCache,
196
+ children: inner
197
+ })
198
+ });
132
199
  };
@@ -16,4 +16,4 @@
16
16
  * See the License for the specific language governing permissions and
17
17
  * limitations under the License.
18
18
  *
19
- *//*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}progress{vertical-align:initial}[hidden],template{display:none}a{background-color:#0000;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit;font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:initial;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}html{box-sizing:border-box;font-size:100%}*,:after,:before{box-sizing:inherit}body{color:#161616;font-family:var(--bpk-base-font-stack,"Skyscanner Relative",-apple-system,BlinkMacSystemFont,"Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif);font-size:1rem;line-height:1.3rem}body.scaffold-font-size{font-size:13px}body.enable-font-smoothing{-webkit-font-smoothing:antialiased}:focus-visible,[type=button]:focus-visible,[type=reset]:focus-visible,[type=submit]:focus-visible,button:focus-visible{outline:.125rem solid #0062e3;outline-offset:.125rem}.hidden,.hide{display:none!important}.visually-hidden,.visuallyhidden{border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;clip:rect(0 0 0 0)}.visually-hidden.focusable:active,.visually-hidden.focusable:focus,.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{height:auto;margin:0;overflow:visible;position:static;width:auto;clip:auto}.invisible{visibility:hidden}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}:root{--bpk-border-1:0.0625rem;--bpk-border-2:0.125rem;--bpk-border-3:0.1875rem;--bpk-modal-200:12.5rem;--bpk-modal-400:25rem;--bpk-modal-600:37.5rem;--bpk-modal-800:50rem;--bpk-modal-1000:62.5rem;--bpk-radius-none:0;--bpk-radius-full:62.4375rem;--bpk-radius-lg:1.5rem;--bpk-radius-md:0.75rem;--bpk-radius-nav-tabs:1.125rem;--bpk-radius-sm:0.5rem;--bpk-radius-xs:0.25rem;--bpk-spacing-base:1rem;--bpk-spacing-lg:1.5rem;--bpk-spacing-md:0.5rem;--bpk-spacing-none:0;--bpk-spacing-sm:0.25rem;--bpk-spacing-xl:2rem;--bpk-spacing-xs:0.125rem;--bpk-spacing-xxl:2.5rem;--bpk-spacing-xxs:0.0625rem;--bpk-spacing-xxxl:4rem;--bpk-spacing-xxxxl:6rem;--bpk-canvas-contrast:#eff3f8;--bpk-canvas-default:#fff;--bpk-private-autosuggest-colour-bg-default:#fff;--bpk-private-autosuggest-colour-bg-hover:#f7f9fb;--bpk-private-autosuggest-colour-border-default:#c1c7cf;--bpk-private-autosuggest-colour-text-close:#161616;--bpk-private-badge-colour-bg-default:#eff3f8;--bpk-private-badge-colour-bg-inverse:#fff;--bpk-private-badge-colour-bg-outline:#fff0;--bpk-private-badge-colour-bg-subtle:#eff3f8;--bpk-private-badge-colour-stroke-outline:#fff;--bpk-private-badge-dimension-padding-horizontal-default:0.5rem;--bpk-private-badge-dimension-padding-horizontal-subtle:0.5rem;--bpk-private-badge-typography-tmp-badge-label:0.875rem;--bpk-private-button-colour-bg-destructive:#e0e4e9;--bpk-private-button-colour-bg-destructive-pressed:#e70866;--bpk-private-button-colour-bg-disabled:#e0e4e9;--bpk-private-button-colour-bg-feature-pressed:#024daf;--bpk-private-button-colour-bg-featured:#0062e3;--bpk-private-button-colour-bg-footer:#fff0;--bpk-private-button-colour-bg-footer-pressed:#fff0;--bpk-private-button-colour-bg-primary:#05203c;--bpk-private-button-colour-bg-primary-on-dark:#fff;--bpk-private-button-colour-bg-primary-on-dark-pressed:#c1c7cf;--bpk-private-button-colour-bg-primary-on-light:#fff;--bpk-private-button-colour-bg-primary-on-light-pressed:#154679;--bpk-private-button-colour-bg-secondary:#e0e4e9;--bpk-private-button-colour-bg-secondary-pressed:#c1c7cf;--bpk-private-button-colour-bg-secondary-on-contrast:#e0e4e9;--bpk-private-button-colour-bg-secondary-on-contrast-pressed:#c1c7cf;--bpk-private-button-colour-bg-secondary-on-dark:#ffffff1a;--bpk-private-button-colour-bg-secondary-on-dark-disabled:#0b121d;--bpk-private-button-colour-bg-secondary-on-dark-pressed:#04182d;--bpk-private-button-colour-text-disruptive:#e70866;--bpk-private-button-colour-text-feature:#fff;--bpk-private-button-colour-text-footer:#fff0;--bpk-private-button-colour-text-link-on-dark:#fff;--bpk-private-button-colour-text-secondary:#161616;--bpk-private-button-dimension-radius:0.5rem;--bpk-private-button-dimension-min-height-default:2.25rem;--bpk-private-button-dimension-min-height-large:3rem;--bpk-private-button-dimension-min-weight-large:3rem;--bpk-private-button-dimension-padding-horizontal-default:1rem;--bpk-private-button-dimension-padding-horizontal-large:1rem;--bpk-private-button-typography-tmp-default-label:1rem;--bpk-private-card-button-contained-fill:#fffc;--bpk-private-card-button-max-height:2.5rem;--bpk-private-carousel-trigger-bg-default:#ffffff80;--bpk-private-carousel-trigger-bg-default-hover:#fffc;--bpk-private-checkbox-bg-default-checked:#0062e3;--bpk-private-checkbox-bg-default-intermediate:#0062e3;--bpk-private-checkbox-bg-on-contrast-checked:#0062e3;--bpk-private-checkbox-bg-on-contrast-intermediate:#0062e3;--bpk-private-checkbox-border-default-disabled:#e0e4e9;--bpk-private-checkbox-border-default-not-checked:#626971;--bpk-private-checkbox-border-on-contrast-disabled:#fff3;--bpk-private-checkbox-border-on-contrast-not-checked:#ffffff80;--bpk-private-checkbox-icon-on-contrast:#fff;--bpk-private-checkbox-stroke:0.1875rem;--bpk-private-chip-group-filter-colour-bg-icon-hover-on-image:#eff3f8;--bpk-private-chip-group-filter-colour-bg-icon-off-on-image:#fff;--bpk-private-chip-group-filter-colour-bg-icon-on-default:#05203c;--bpk-private-chip-group-filter-colour-bg-icon-on-on-dark:#fff;--bpk-private-chip-group-filter-colour-bg-icon-on-on-image:#05203c;--bpk-private-chip-group-filter-colour-stroke-icon-hover-default:#05203c;--bpk-private-chip-group-filter-colour-stroke-icon-hover-on-dark:#fff;--bpk-private-chip-group-filter-colour-stroke-icon-off-default:#c1c7cf;--bpk-private-chip-group-filter-colour-stroke-icon-off-on-dark:#ffffff80;--bpk-private-chip-group-filter-dimensions-min-height:2.25rem;--bpk-private-chip-colour-bg-default-dismissible-hover:#05203c;--bpk-private-chip-colour-bg-default-on:#05203c;--bpk-private-chip-colour-bg-disabled:#e0e4e9;--bpk-private-chip-colour-bg-on-contrast-hover:#fff;--bpk-private-chip-colour-bg-on-contrast-on:#05203c;--bpk-private-chip-colour-bg-on-dark-dismissible-hover:#fff;--bpk-private-chip-colour-bg-on-dark-hover:#fff;--bpk-private-chip-colour-bg-on-dark-off:#fff0;--bpk-private-chip-colour-bg-on-dark-on:#fff;--bpk-private-chip-colour-bg-on-image-dismissible-hover:#05203c;--bpk-private-chip-colour-bg-on-image-on:#eff3f8;--bpk-private-chip-colour-border-default-dismissible-hover:#fff0;--bpk-private-chip-colour-border-default-hover:#05203c;--bpk-private-chip-colour-border-default-off:#c1c7cf;--bpk-private-chip-colour-border-on-contrast-off:#fff;--bpk-private-chip-colour-border-on-contrast-on:#05203c;--bpk-private-chip-colour-border-on-dark-dismissible-hover:#fff;--bpk-private-chip-colour-border-on-dark-hover:#fff;--bpk-private-chip-colour-border-on-dark-off:#ffffff80;--bpk-private-chip-colour-stroke-off-on-canvas-contrast-new:#fff0;--bpk-private-chip-colour-text-default-dismissible-hover:#fff;--bpk-private-chip-colour-text-dismissible-on-icon:#ffffff80;--bpk-private-chip-colour-text-on:#fff;--bpk-private-chip-colour-text-on-image:#fff;--bpk-private-chip-colour-text-on-image-dismissible-icon:#626971;--bpk-private-chip-colour-text-on-dark:#161616;--bpk-private-chip-colour-text-on-dark-dismissible-hover:#161616;--bpk-private-chip-colour-text-on-dark-dismissible-icon:#626971;--bpk-private-chip-dimension-border:0.0625rem;--bpk-private-chip-dimension-min-height-width:2rem;--bpk-private-chip-dimension-radius:0.5rem;--bpk-private-date-selector-cheapest-month-highlight:#154679;--bpk-private-date-selector-flexible-date-card:#eff3f8;--bpk-private-info-banner-default:#eff3f8;--bpk-private-info-banner-on-contrast:#fff;--bpk-private-map-cluster-pin:#05203c;--bpk-private-map-cluster-pin-previous-selection:#94c3ff;--bpk-private-map-marker-viewed:#fffc;--bpk-private-map-poi-pin:#8e47ba;--bpk-private-map-previous-selection:#cfe4ff;--bpk-private-navigation-tabs-hover:#154679;--bpk-private-navigation-tabs-outline:#fff3;--bpk-private-navigation-tabs-selected:#024daf;--bpk-private-radio-bg-default-disabled:#c1c7cf;--bpk-private-radio-bg-default-on:#0062e3;--bpk-private-radio-bg-on-contrast-off:#fff;--bpk-private-radio-bg-on-contrast-on:#fff;--bpk-private-radio-border:0.1875rem;--bpk-private-radio-border-default-off:#626971;--bpk-private-rating-bar-default:#e0e4e9;--bpk-private-rating-bar-on-contrast:#fff;--bpk-private-segmented-control-colour-bg-on-canvas-default-default:#eff3f8;--bpk-private-segmented-control-colour-bg-on-surface-contrast-default:#ffffff1a;--bpk-private-segmented-control-colour-bg-on-surface-contrast-selected:#024daf;--bpk-private-segmented-control-colour-bg-selected:#05203c;--bpk-private-segmented-control-colour-divider-default:#e0e4e9;--bpk-private-segmented-control-colour-divider-on-surface-contrast:#fff3;--bpk-private-segmented-control-dimension-bg-indicator-radius:0;--bpk-private-segmented-control-dimension-bg-track-radius:0.5rem;--bpk-private-segmented-control-dimension-min-height:2rem;--bpk-private-segmented-control-dimension-track-padding:0;--bpk-private-shadow-large-blur:0.875rem;--bpk-private-shadow-large-color:#16161640;--bpk-private-shadow-large-position-x:0;--bpk-private-shadow-large-position-y:0.25rem;--bpk-private-shadow-large-spread:0;--bpk-private-shadow-small-blur:0.1875rem;--bpk-private-shadow-small-color:#16161640;--bpk-private-shadow-small-position-x:0;--bpk-private-shadow-small-position-y:0.0625rem;--bpk-private-shadow-small-spread:0;--bpk-private-shadow-xl-blur:3.125rem;--bpk-private-shadow-xl-color:#16161640;--bpk-private-shadow-xl-position-x:0;--bpk-private-shadow-xl-position-y:0.75rem;--bpk-private-shadow-xl-spread:0;--bpk-private-skeleton-on-dark:#ffffff1a;--bpk-private-speech-bubble-colour-bg-contrast:#eff3f8;--bpk-private-speech-bubble-colour-bg-default:#fff;--bpk-private-trip-advisor:#00aa6c;--bpk-core-accent:#0062e3;--bpk-core-eco:#0fa1a9;--bpk-core-primary:#05203c;--bpk-other-line:#c1c7cf;--bpk-other-line-on-dark:#ffffff80;--bpk-other-overlay:#0003;--bpk-other-scrim:#000000b3;--bpk-other-shadow:#16161640;--bpk-status-danger-spot:#e70866;--bpk-status-success-spot:#0c838a;--bpk-status-warning-spot:#f55d42;--bpk-surface-contrast:#05203c;--bpk-surface-danger-fill:#ffe9f9;--bpk-surface-default:#fff;--bpk-surface-elevated:#fff;--bpk-surface-hero:#0062e3;--bpk-surface-highlight:#e0e4e9;--bpk-surface-low-contrast:#f7f9fb;--bpk-surface-subtle:#e3f0ff;--bpk-surface-success-fill:#d4fff2;--bpk-surface-tint:#ffffff1a;--bpk-surface-warning-fill:#fff7cf;--bpk-surface-promo:#0062e3;--bpk-test:#ff1088;--bpk-text-disabled:#0003;--bpk-text-disabled-on-dark:#ffffff80;--bpk-text-error:#e70866;--bpk-text-inverse:#fff;--bpk-text-on-dark:#fff;--bpk-text-on-light:#161616;--bpk-text-primary:#161616;--bpk-text-secondary:#626971;--bpk-text-success:#0c838a;--bpk-text-deprecated-link:#0062e3;--bpk-text-hero:#0062e3;--bpk-title:true;--bpk-typography-family-sans-serif:"Skyscanner Relative";--bpk-typography-family-serif:Larken;--bpk-typography-kerning-default:0;--bpk-typography-kerning-loose:0;--bpk-typography-kerning-tight:0;--bpk-typography-style-body:400;--bpk-typography-style-headline:700;--bpk-typography-style-hero:900;--bpk-typography-style-label:700;--bpk-typography-style-subhead:300}:root[data-theme=dark]{--bpk-canvas-contrast:#010913;--bpk-canvas-default:#010913;--bpk-private-autosuggest-colour-bg-default:#fff;--bpk-private-autosuggest-colour-bg-hover:#fff;--bpk-private-autosuggest-colour-border-default:#fff;--bpk-private-autosuggest-colour-text-close:#fff;--bpk-private-badge-colour-bg-default:#243346;--bpk-private-badge-colour-bg-inverse:#243346;--bpk-private-badge-colour-bg-outline:#fff0;--bpk-private-badge-colour-bg-subtle:#243346;--bpk-private-badge-colour-stroke-outline:#fff;--bpk-private-badge-dimension-padding-horizontal-default:0.5rem;--bpk-private-badge-dimension-padding-horizontal-subtle:0.5rem;--bpk-private-badge-typography-tmp-badge-label:0.875rem;--bpk-private-button-colour-bg-destructive:#e0e4e9;--bpk-private-button-colour-bg-destructive-pressed:#ff649c;--bpk-private-button-colour-bg-disabled:#0b121d;--bpk-private-button-colour-bg-feature-pressed:#d1f7ff;--bpk-private-button-colour-bg-featured:#d1f7ff;--bpk-private-button-colour-bg-footer:#fff0;--bpk-private-button-colour-bg-footer-pressed:#fff0;--bpk-private-button-colour-bg-primary:#024daf;--bpk-private-button-colour-bg-primary-on-dark:#fff;--bpk-private-button-colour-bg-primary-on-dark-pressed:#c1c7cf;--bpk-private-button-colour-bg-primary-on-light:#fff;--bpk-private-button-colour-bg-primary-on-light-pressed:#002b4b;--bpk-private-button-colour-bg-secondary:#243346;--bpk-private-button-colour-bg-secondary-pressed:#010913;--bpk-private-button-colour-bg-secondary-on-contrast:#243346;--bpk-private-button-colour-bg-secondary-on-contrast-pressed:#010913;--bpk-private-button-colour-bg-secondary-on-dark:#ffffff1a;--bpk-private-button-colour-bg-secondary-on-dark-disabled:#0b121d;--bpk-private-button-colour-bg-secondary-on-dark-pressed:#fff3;--bpk-private-button-colour-text-disruptive:#ff649c;--bpk-private-button-colour-text-feature:#010913;--bpk-private-button-colour-text-footer:#fff0;--bpk-private-button-colour-text-link-on-dark:#fff;--bpk-private-button-colour-text-secondary:#fff;--bpk-private-button-dimension-radius:0.5rem;--bpk-private-button-dimension-min-height-default:2.25rem;--bpk-private-button-dimension-min-height-large:3rem;--bpk-private-button-dimension-min-weight-large:3rem;--bpk-private-button-dimension-padding-horizontal-default:1rem;--bpk-private-button-dimension-padding-horizontal-large:1rem;--bpk-private-button-typography-tmp-default-label:1rem;--bpk-private-card-button-contained-fill:#ffffff1a;--bpk-private-card-button-max-height:2.5rem;--bpk-private-carousel-trigger-bg-default:#ffffff80;--bpk-private-carousel-trigger-bg-default-hover:#fffc;--bpk-private-checkbox-bg-default-checked:#84e9ff;--bpk-private-checkbox-bg-default-intermediate:#84e9ff;--bpk-private-checkbox-bg-on-contrast-checked:#84e9ff;--bpk-private-checkbox-bg-on-contrast-intermediate:#84e9ff;--bpk-private-checkbox-border-default-disabled:#fff3;--bpk-private-checkbox-border-default-not-checked:#ffffff80;--bpk-private-checkbox-border-on-contrast-disabled:#fff3;--bpk-private-checkbox-border-on-contrast-not-checked:#ffffff80;--bpk-private-checkbox-icon-on-contrast:#161616;--bpk-private-checkbox-stroke:0.1875rem;--bpk-private-chip-group-filter-colour-bg-icon-hover-on-image:#010913;--bpk-private-chip-group-filter-colour-bg-icon-off-on-image:#131d2b;--bpk-private-chip-group-filter-colour-bg-icon-on-default:#054184;--bpk-private-chip-group-filter-colour-bg-icon-on-on-dark:#131d2b;--bpk-private-chip-group-filter-colour-bg-icon-on-on-image:#054184;--bpk-private-chip-group-filter-colour-stroke-icon-hover-default:#054184;--bpk-private-chip-group-filter-colour-stroke-icon-hover-on-dark:#131d2b;--bpk-private-chip-group-filter-colour-stroke-icon-off-default:#fff3;--bpk-private-chip-group-filter-colour-stroke-icon-off-on-dark:#fff3;--bpk-private-chip-group-filter-dimensions-min-height:2.25rem;--bpk-private-chip-colour-bg-default-dismissible-hover:#054184;--bpk-private-chip-colour-bg-default-on:#054184;--bpk-private-chip-colour-bg-disabled:#0b121d;--bpk-private-chip-colour-bg-on-contrast-hover:#131d2b;--bpk-private-chip-colour-bg-on-contrast-on:#054184;--bpk-private-chip-colour-bg-on-dark-dismissible-hover:#131d2b;--bpk-private-chip-colour-bg-on-dark-hover:#fff0;--bpk-private-chip-colour-bg-on-dark-off:#fff0;--bpk-private-chip-colour-bg-on-dark-on:#131d2b;--bpk-private-chip-colour-bg-on-image-dismissible-hover:#054184;--bpk-private-chip-colour-bg-on-image-on:#010913;--bpk-private-chip-colour-border-default-dismissible-hover:#fff0;--bpk-private-chip-colour-border-default-hover:#054184;--bpk-private-chip-colour-border-default-off:#fff3;--bpk-private-chip-colour-border-on-contrast-off:#131d2b;--bpk-private-chip-colour-border-on-contrast-on:#131d2b;--bpk-private-chip-colour-border-on-dark-dismissible-hover:#131d2b;--bpk-private-chip-colour-border-on-dark-hover:#fff;--bpk-private-chip-colour-border-on-dark-off:#fff3;--bpk-private-chip-colour-stroke-off-on-canvas-contrast-new:#fff0;--bpk-private-chip-colour-text-default-dismissible-hover:#fff;--bpk-private-chip-colour-text-dismissible-on-icon:#ffffff80;--bpk-private-chip-colour-text-on:#fff;--bpk-private-chip-colour-text-on-image:#fff;--bpk-private-chip-colour-text-on-image-dismissible-icon:#bdc4cb;--bpk-private-chip-colour-text-on-dark:#fff;--bpk-private-chip-colour-text-on-dark-dismissible-hover:#fff;--bpk-private-chip-colour-text-on-dark-dismissible-icon:#bdc4cb;--bpk-private-chip-dimension-border:0.0625rem;--bpk-private-chip-dimension-min-height-width:2rem;--bpk-private-chip-dimension-radius:0.5rem;--bpk-private-date-selector-cheapest-month-highlight:#fff;--bpk-private-date-selector-flexible-date-card:#243346;--bpk-private-info-banner-default:#131d2b;--bpk-private-info-banner-on-contrast:#131d2b;--bpk-private-map-cluster-pin:#fff;--bpk-private-map-cluster-pin-previous-selection:#94c3ff;--bpk-private-map-marker-viewed:#000c;--bpk-private-map-poi-pin:#8e47ba;--bpk-private-map-previous-selection:#cfe4ff;--bpk-private-navigation-tabs-hover:#002b4b;--bpk-private-navigation-tabs-outline:#fff3;--bpk-private-navigation-tabs-selected:#054184;--bpk-private-radio-bg-default-disabled:#ffffff80;--bpk-private-radio-bg-default-on:#84e9ff;--bpk-private-radio-bg-on-contrast-off:#fff0;--bpk-private-radio-bg-on-contrast-on:#84e9ff;--bpk-private-radio-border:0.1875rem;--bpk-private-radio-border-default-off:#ffffff80;--bpk-private-rating-bar-default:#243346;--bpk-private-rating-bar-on-contrast:#243346;--bpk-private-segmented-control-colour-bg-on-canvas-default-default:#131d2b;--bpk-private-segmented-control-colour-bg-on-surface-contrast-default:#131d2b;--bpk-private-segmented-control-colour-bg-on-surface-contrast-selected:#054184;--bpk-private-segmented-control-colour-bg-selected:#054184;--bpk-private-segmented-control-colour-divider-default:#e0e4e9;--bpk-private-segmented-control-colour-divider-on-surface-contrast:#fff3;--bpk-private-segmented-control-dimension-bg-indicator-radius:0;--bpk-private-segmented-control-dimension-bg-track-radius:0.5rem;--bpk-private-segmented-control-dimension-min-height:2rem;--bpk-private-segmented-control-dimension-track-padding:0;--bpk-private-shadow-large-blur:0.875rem;--bpk-private-shadow-large-color:#16161640;--bpk-private-shadow-large-position-x:0;--bpk-private-shadow-large-position-y:0.25rem;--bpk-private-shadow-large-spread:0;--bpk-private-shadow-small-blur:0.1875rem;--bpk-private-shadow-small-color:#16161640;--bpk-private-shadow-small-position-x:0;--bpk-private-shadow-small-position-y:0.0625rem;--bpk-private-shadow-small-spread:0;--bpk-private-shadow-xl-blur:3.125rem;--bpk-private-shadow-xl-color:#16161640;--bpk-private-shadow-xl-position-x:0;--bpk-private-shadow-xl-position-y:0.75rem;--bpk-private-shadow-xl-spread:0;--bpk-private-skeleton-on-dark:#243346;--bpk-private-speech-bubble-colour-bg-contrast:#131d2b;--bpk-private-speech-bubble-colour-bg-default:#131d2b;--bpk-private-trip-advisor:#9ce6c0;--bpk-core-accent:#84e9ff;--bpk-core-eco:#0fa1a9;--bpk-core-primary:#054184;--bpk-other-line:#fff3;--bpk-other-line-on-dark:#fff3;--bpk-other-overlay:#fffc;--bpk-other-scrim:#000000b3;--bpk-other-shadow:#16161640;--bpk-status-danger-spot:#ff649c;--bpk-status-success-spot:#62f1c6;--bpk-status-warning-spot:#feeb87;--bpk-surface-contrast:#010913;--bpk-surface-danger-fill:#ffcadd;--bpk-surface-default:#131d2b;--bpk-surface-elevated:#243346;--bpk-surface-hero:#010913;--bpk-surface-highlight:#243346;--bpk-surface-low-contrast:#243346;--bpk-surface-subtle:#243346;--bpk-surface-success-fill:#b1ffe7;--bpk-surface-tint:#ffffff1a;--bpk-surface-warning-fill:#fbf1bb;--bpk-surface-promo:#243346;--bpk-test:red;--bpk-text-disabled:#fff3;--bpk-text-disabled-on-dark:#ffffff80;--bpk-text-error:#ff649c;--bpk-text-inverse:#010913;--bpk-text-on-dark:#fff;--bpk-text-on-light:#010913;--bpk-text-primary:#fff;--bpk-text-secondary:#bdc4cb;--bpk-text-success:#62f1c6;--bpk-text-deprecated-link:#84e9ff;--bpk-text-hero:#010913;--bpk-title:true;--bpk-typography-family-sans-serif:"Skyscanner Relative";--bpk-typography-family-serif:Larken;--bpk-typography-kerning-default:0;--bpk-typography-kerning-loose:0;--bpk-typography-kerning-tight:0;--bpk-typography-style-body:400;--bpk-typography-style-headline:700;--bpk-typography-style-hero:900;--bpk-typography-style-label:700;--bpk-typography-style-subhead:300}
19
+ *//*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}progress{vertical-align:initial}[hidden],template{display:none}a{background-color:#0000;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit;font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:initial;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}html{box-sizing:border-box;font-size:100%}*,:after,:before{box-sizing:inherit}body{color:#161616;font-family:var(--bpk-base-font-stack,"Skyscanner Relative",-apple-system,BlinkMacSystemFont,"Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif);font-size:1rem;line-height:1.3rem}body.scaffold-font-size{font-size:13px}body.enable-font-smoothing{-webkit-font-smoothing:antialiased}:focus-visible,[type=button]:focus-visible,[type=reset]:focus-visible,[type=submit]:focus-visible,button:focus-visible{outline:.125rem solid #0062e3;outline-offset:.125rem}.hidden,.hide{display:none!important}.visually-hidden,.visuallyhidden{border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;clip:rect(0 0 0 0)}.visually-hidden.focusable:active,.visually-hidden.focusable:focus,.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{height:auto;margin:0;overflow:visible;position:static;width:auto;clip:auto}.invisible{visibility:hidden}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}:root{--bpk-border-1:0.0625rem;--bpk-border-2:0.125rem;--bpk-border-3:0.1875rem;--bpk-modal-200:12.5rem;--bpk-modal-400:25rem;--bpk-modal-512:32rem;--bpk-modal-600:37.5rem;--bpk-modal-800:50rem;--bpk-modal-1000:62.5rem;--bpk-modal-1024:64rem;--bpk-radius-none:0;--bpk-radius-full:62.4375rem;--bpk-radius-lg:1.5rem;--bpk-radius-md:0.75rem;--bpk-radius-nav-tabs:1.125rem;--bpk-radius-sm:0.5rem;--bpk-radius-xs:0.25rem;--bpk-spacing-base:1rem;--bpk-spacing-lg:1.5rem;--bpk-spacing-md:0.5rem;--bpk-spacing-none:0;--bpk-spacing-sm:0.25rem;--bpk-spacing-xl:2rem;--bpk-spacing-xs:0.125rem;--bpk-spacing-xxl:2.5rem;--bpk-spacing-xxs:0.0625rem;--bpk-spacing-xxxl:4rem;--bpk-spacing-xxxxl:6rem;--bpk-canvas-contrast:#eff3f8;--bpk-canvas-default:#fff;--bpk-private-autosuggest-colour-bg-default:#fff;--bpk-private-autosuggest-colour-bg-hover:#f7f9fb;--bpk-private-autosuggest-colour-border-default:#c1c7cf;--bpk-private-autosuggest-colour-text-close:#161616;--bpk-private-badge-colour-bg-default:#eff3f8;--bpk-private-badge-colour-bg-inverse:#fff;--bpk-private-badge-colour-bg-outline:#fff0;--bpk-private-badge-colour-bg-subtle:#eff3f8;--bpk-private-badge-colour-stroke-outline:#fff;--bpk-private-badge-dimension-padding-horizontal-default:0.5rem;--bpk-private-badge-dimension-padding-horizontal-subtle:0.5rem;--bpk-private-badge-typography-tmp-badge-label:0.875rem;--bpk-private-button-colour-bg-destructive:#e0e4e9;--bpk-private-button-colour-bg-destructive-pressed:#e70866;--bpk-private-button-colour-bg-disabled:#e0e4e9;--bpk-private-button-colour-bg-feature-pressed:#024daf;--bpk-private-button-colour-bg-featured:#0062e3;--bpk-private-button-colour-bg-footer:#fff0;--bpk-private-button-colour-bg-footer-pressed:#fff0;--bpk-private-button-colour-bg-primary:#05203c;--bpk-private-button-colour-bg-primary-on-dark:#fff;--bpk-private-button-colour-bg-primary-on-dark-pressed:#c1c7cf;--bpk-private-button-colour-bg-primary-on-light:#fff;--bpk-private-button-colour-bg-primary-on-light-pressed:#154679;--bpk-private-button-colour-bg-secondary:#e0e4e9;--bpk-private-button-colour-bg-secondary-pressed:#c1c7cf;--bpk-private-button-colour-bg-secondary-on-contrast:#e0e4e9;--bpk-private-button-colour-bg-secondary-on-contrast-pressed:#c1c7cf;--bpk-private-button-colour-bg-secondary-on-dark:#ffffff1a;--bpk-private-button-colour-bg-secondary-on-dark-disabled:#0b121d;--bpk-private-button-colour-bg-secondary-on-dark-pressed:#04182d;--bpk-private-button-colour-text-disruptive:#e70866;--bpk-private-button-colour-text-feature:#fff;--bpk-private-button-colour-text-footer:#fff0;--bpk-private-button-colour-text-link-on-dark:#fff;--bpk-private-button-colour-text-secondary:#161616;--bpk-private-button-dimension-radius:0.5rem;--bpk-private-button-dimension-min-height-default:2.25rem;--bpk-private-button-dimension-min-height-large:3rem;--bpk-private-button-dimension-min-weight-large:3rem;--bpk-private-button-dimension-padding-horizontal-default:1rem;--bpk-private-button-dimension-padding-horizontal-large:1rem;--bpk-private-button-typography-tmp-default-label:1rem;--bpk-private-card-button-contained-fill:#fffc;--bpk-private-card-button-max-height:2.5rem;--bpk-private-carousel-trigger-bg-default:#ffffff80;--bpk-private-carousel-trigger-bg-default-hover:#fffc;--bpk-private-checkbox-bg-default-checked:#0062e3;--bpk-private-checkbox-bg-default-intermediate:#0062e3;--bpk-private-checkbox-bg-on-contrast-checked:#0062e3;--bpk-private-checkbox-bg-on-contrast-intermediate:#0062e3;--bpk-private-checkbox-border-default-disabled:#e0e4e9;--bpk-private-checkbox-border-default-not-checked:#626971;--bpk-private-checkbox-border-on-contrast-disabled:#fff3;--bpk-private-checkbox-border-on-contrast-not-checked:#ffffff80;--bpk-private-checkbox-icon-on-contrast:#fff;--bpk-private-checkbox-stroke:0.1875rem;--bpk-private-chip-group-filter-colour-bg-icon-hover-on-image:#eff3f8;--bpk-private-chip-group-filter-colour-bg-icon-off-on-image:#fff;--bpk-private-chip-group-filter-colour-bg-icon-on-default:#05203c;--bpk-private-chip-group-filter-colour-bg-icon-on-on-dark:#fff;--bpk-private-chip-group-filter-colour-bg-icon-on-on-image:#05203c;--bpk-private-chip-group-filter-colour-stroke-icon-hover-default:#05203c;--bpk-private-chip-group-filter-colour-stroke-icon-hover-on-dark:#fff;--bpk-private-chip-group-filter-colour-stroke-icon-off-default:#c1c7cf;--bpk-private-chip-group-filter-colour-stroke-icon-off-on-dark:#fff3;--bpk-private-chip-group-filter-dimensions-min-height:2.25rem;--bpk-private-chip-colour-bg-default-dismissible-hover:#05203c;--bpk-private-chip-colour-bg-default-on:#05203c;--bpk-private-chip-colour-bg-disabled:#e0e4e9;--bpk-private-chip-colour-bg-on-contrast-hover:#fff;--bpk-private-chip-colour-bg-on-contrast-on:#05203c;--bpk-private-chip-colour-bg-on-dark-dismissible-hover:#fff;--bpk-private-chip-colour-bg-on-dark-hover:#fff;--bpk-private-chip-colour-bg-on-dark-off:#fff0;--bpk-private-chip-colour-bg-on-dark-on:#fff;--bpk-private-chip-colour-bg-on-image-dismissible-hover:#05203c;--bpk-private-chip-colour-bg-on-image-on:#eff3f8;--bpk-private-chip-colour-border-default-dismissible-hover:#fff0;--bpk-private-chip-colour-border-default-hover:#05203c;--bpk-private-chip-colour-border-default-off:#c1c7cf;--bpk-private-chip-colour-border-on-contrast-off:#fff;--bpk-private-chip-colour-border-on-contrast-on:#05203c;--bpk-private-chip-colour-border-on-dark-dismissible-hover:#fff;--bpk-private-chip-colour-border-on-dark-hover:#fff;--bpk-private-chip-colour-border-on-dark-off:#fff3;--bpk-private-chip-colour-stroke-off-on-canvas-contrast-new:#fff0;--bpk-private-chip-colour-text-default-dismissible-hover:#fff;--bpk-private-chip-colour-text-dismissible-on-icon:#ffffff80;--bpk-private-chip-colour-text-on:#fff;--bpk-private-chip-colour-text-on-image:#fff;--bpk-private-chip-colour-text-on-image-dismissible-icon:#626971;--bpk-private-chip-colour-text-on-dark:#161616;--bpk-private-chip-colour-text-on-dark-dismissible-hover:#161616;--bpk-private-chip-colour-text-on-dark-dismissible-icon:#626971;--bpk-private-chip-dimension-border:0.0625rem;--bpk-private-chip-dimension-min-height-width:2rem;--bpk-private-chip-dimension-radius:0.5rem;--bpk-private-date-selector-cheapest-month-highlight:#154679;--bpk-private-date-selector-flexible-date-card:#eff3f8;--bpk-private-info-banner-default:#eff3f8;--bpk-private-info-banner-on-contrast:#fff;--bpk-private-map-cluster-pin:#05203c;--bpk-private-map-cluster-pin-previous-selection:#94c3ff;--bpk-private-map-marker-viewed:#fffc;--bpk-private-map-poi-pin:#8e47ba;--bpk-private-map-previous-selection:#cfe4ff;--bpk-private-navigation-tabs-hover:#154679;--bpk-private-navigation-tabs-outline:#fff3;--bpk-private-navigation-tabs-selected:#024daf;--bpk-private-radio-bg-default-disabled:#c1c7cf;--bpk-private-radio-bg-default-on:#0062e3;--bpk-private-radio-bg-on-contrast-off:#fff;--bpk-private-radio-bg-on-contrast-on:#fff;--bpk-private-radio-border:0.1875rem;--bpk-private-radio-border-default-off:#626971;--bpk-private-rating-bar-default:#e0e4e9;--bpk-private-rating-bar-on-contrast:#fff;--bpk-private-segmented-control-colour-bg-on-canvas-default-default:#eff3f8;--bpk-private-segmented-control-colour-bg-on-surface-contrast-default:#ffffff1a;--bpk-private-segmented-control-colour-bg-on-surface-contrast-selected:#024daf;--bpk-private-segmented-control-colour-bg-selected:#05203c;--bpk-private-segmented-control-colour-divider-default:#e0e4e9;--bpk-private-segmented-control-colour-divider-on-surface-contrast:#fff3;--bpk-private-segmented-control-dimension-bg-indicator-radius:0;--bpk-private-segmented-control-dimension-bg-track-radius:0.5rem;--bpk-private-segmented-control-dimension-min-height:2rem;--bpk-private-segmented-control-dimension-track-padding:0;--bpk-private-shadow-large-blur:0.875rem;--bpk-private-shadow-large-color:#16161640;--bpk-private-shadow-large-position-x:0;--bpk-private-shadow-large-position-y:0.25rem;--bpk-private-shadow-large-spread:0;--bpk-private-shadow-small-blur:0.1875rem;--bpk-private-shadow-small-color:#16161640;--bpk-private-shadow-small-position-x:0;--bpk-private-shadow-small-position-y:0.0625rem;--bpk-private-shadow-small-spread:0;--bpk-private-shadow-xl-blur:3.125rem;--bpk-private-shadow-xl-color:#16161640;--bpk-private-shadow-xl-position-x:0;--bpk-private-shadow-xl-position-y:0.75rem;--bpk-private-shadow-xl-spread:0;--bpk-private-skeleton-on-dark:#ffffff1a;--bpk-private-speech-bubble-colour-bg-contrast:#eff3f8;--bpk-private-speech-bubble-colour-bg-default:#fff;--bpk-private-trip-advisor:#00aa6c;--bpk-core-accent:#0062e3;--bpk-core-eco:#0fa1a9;--bpk-core-primary:#05203c;--bpk-other-overlay:#0003;--bpk-other-scrim:#000000b3;--bpk-other-shadow:#16161640;--bpk-other-line-default:#c1c7cf;--bpk-other-line-on-contrast:#fff3;--bpk-status-danger-spot:#e70866;--bpk-status-success-spot:#0c838a;--bpk-status-warning-spot:#f55d42;--bpk-surface-contrast:#05203c;--bpk-surface-danger-fill:#ffe9f9;--bpk-surface-default:#fff;--bpk-surface-elevated:#fff;--bpk-surface-hero:#0062e3;--bpk-surface-highlight:#e0e4e9;--bpk-surface-low-contrast:#f7f9fb;--bpk-surface-subtle:#e3f0ff;--bpk-surface-success-fill:#d4fff2;--bpk-surface-tint:#ffffff1a;--bpk-surface-warning-fill:#fff7cf;--bpk-surface-promo:#0062e3;--bpk-test:#ff1088;--bpk-text-disabled:#0003;--bpk-text-disabled-on-dark:#ffffff80;--bpk-text-error:#e70866;--bpk-text-inverse:#fff;--bpk-text-on-dark:#fff;--bpk-text-on-light:#161616;--bpk-text-primary:#161616;--bpk-text-secondary:#626971;--bpk-text-secondary-on-contrast:#ffffff80;--bpk-text-success:#0c838a;--bpk-text-deprecated-link:#0062e3;--bpk-text-hero:#0062e3;--bpk-title:true;--bpk-typography-family-sans-serif:"Skyscanner Relative";--bpk-typography-family-serif:Larken;--bpk-typography-kerning-default:0;--bpk-typography-kerning-loose:0;--bpk-typography-kerning-tight:0;--bpk-typography-style-body:400;--bpk-typography-style-headline:700;--bpk-typography-style-hero:900;--bpk-typography-style-label:700;--bpk-typography-style-subhead:300}:root[data-theme=dark]{--bpk-canvas-contrast:#010913;--bpk-canvas-default:#010913;--bpk-private-autosuggest-colour-bg-default:#fff;--bpk-private-autosuggest-colour-bg-hover:#fff;--bpk-private-autosuggest-colour-border-default:#fff;--bpk-private-autosuggest-colour-text-close:#fff;--bpk-private-badge-colour-bg-default:#243346;--bpk-private-badge-colour-bg-inverse:#243346;--bpk-private-badge-colour-bg-outline:#fff0;--bpk-private-badge-colour-bg-subtle:#243346;--bpk-private-badge-colour-stroke-outline:#fff;--bpk-private-badge-dimension-padding-horizontal-default:0.5rem;--bpk-private-badge-dimension-padding-horizontal-subtle:0.5rem;--bpk-private-badge-typography-tmp-badge-label:0.875rem;--bpk-private-button-colour-bg-destructive:#e0e4e9;--bpk-private-button-colour-bg-destructive-pressed:#ff649c;--bpk-private-button-colour-bg-disabled:#0b121d;--bpk-private-button-colour-bg-feature-pressed:#d1f7ff;--bpk-private-button-colour-bg-featured:#d1f7ff;--bpk-private-button-colour-bg-footer:#fff0;--bpk-private-button-colour-bg-footer-pressed:#fff0;--bpk-private-button-colour-bg-primary:#024daf;--bpk-private-button-colour-bg-primary-on-dark:#fff;--bpk-private-button-colour-bg-primary-on-dark-pressed:#c1c7cf;--bpk-private-button-colour-bg-primary-on-light:#fff;--bpk-private-button-colour-bg-primary-on-light-pressed:#002b4b;--bpk-private-button-colour-bg-secondary:#243346;--bpk-private-button-colour-bg-secondary-pressed:#010913;--bpk-private-button-colour-bg-secondary-on-contrast:#243346;--bpk-private-button-colour-bg-secondary-on-contrast-pressed:#010913;--bpk-private-button-colour-bg-secondary-on-dark:#ffffff1a;--bpk-private-button-colour-bg-secondary-on-dark-disabled:#0b121d;--bpk-private-button-colour-bg-secondary-on-dark-pressed:#fff3;--bpk-private-button-colour-text-disruptive:#ff649c;--bpk-private-button-colour-text-feature:#010913;--bpk-private-button-colour-text-footer:#fff0;--bpk-private-button-colour-text-link-on-dark:#fff;--bpk-private-button-colour-text-secondary:#fff;--bpk-private-button-dimension-radius:0.5rem;--bpk-private-button-dimension-min-height-default:2.25rem;--bpk-private-button-dimension-min-height-large:3rem;--bpk-private-button-dimension-min-weight-large:3rem;--bpk-private-button-dimension-padding-horizontal-default:1rem;--bpk-private-button-dimension-padding-horizontal-large:1rem;--bpk-private-button-typography-tmp-default-label:1rem;--bpk-private-card-button-contained-fill:#ffffff1a;--bpk-private-card-button-max-height:2.5rem;--bpk-private-carousel-trigger-bg-default:#ffffff80;--bpk-private-carousel-trigger-bg-default-hover:#fffc;--bpk-private-checkbox-bg-default-checked:#84e9ff;--bpk-private-checkbox-bg-default-intermediate:#84e9ff;--bpk-private-checkbox-bg-on-contrast-checked:#84e9ff;--bpk-private-checkbox-bg-on-contrast-intermediate:#84e9ff;--bpk-private-checkbox-border-default-disabled:#fff3;--bpk-private-checkbox-border-default-not-checked:#ffffff80;--bpk-private-checkbox-border-on-contrast-disabled:#fff3;--bpk-private-checkbox-border-on-contrast-not-checked:#ffffff80;--bpk-private-checkbox-icon-on-contrast:#161616;--bpk-private-checkbox-stroke:0.1875rem;--bpk-private-chip-group-filter-colour-bg-icon-hover-on-image:#010913;--bpk-private-chip-group-filter-colour-bg-icon-off-on-image:#131d2b;--bpk-private-chip-group-filter-colour-bg-icon-on-default:#054184;--bpk-private-chip-group-filter-colour-bg-icon-on-on-dark:#131d2b;--bpk-private-chip-group-filter-colour-bg-icon-on-on-image:#054184;--bpk-private-chip-group-filter-colour-stroke-icon-hover-default:#054184;--bpk-private-chip-group-filter-colour-stroke-icon-hover-on-dark:#131d2b;--bpk-private-chip-group-filter-colour-stroke-icon-off-default:#fff3;--bpk-private-chip-group-filter-colour-stroke-icon-off-on-dark:#fff3;--bpk-private-chip-group-filter-dimensions-min-height:2.25rem;--bpk-private-chip-colour-bg-default-dismissible-hover:#054184;--bpk-private-chip-colour-bg-default-on:#054184;--bpk-private-chip-colour-bg-disabled:#0b121d;--bpk-private-chip-colour-bg-on-contrast-hover:#131d2b;--bpk-private-chip-colour-bg-on-contrast-on:#054184;--bpk-private-chip-colour-bg-on-dark-dismissible-hover:#131d2b;--bpk-private-chip-colour-bg-on-dark-hover:#fff0;--bpk-private-chip-colour-bg-on-dark-off:#fff0;--bpk-private-chip-colour-bg-on-dark-on:#131d2b;--bpk-private-chip-colour-bg-on-image-dismissible-hover:#054184;--bpk-private-chip-colour-bg-on-image-on:#010913;--bpk-private-chip-colour-border-default-dismissible-hover:#fff0;--bpk-private-chip-colour-border-default-hover:#054184;--bpk-private-chip-colour-border-default-off:#fff3;--bpk-private-chip-colour-border-on-contrast-off:#131d2b;--bpk-private-chip-colour-border-on-contrast-on:#131d2b;--bpk-private-chip-colour-border-on-dark-dismissible-hover:#131d2b;--bpk-private-chip-colour-border-on-dark-hover:#fff;--bpk-private-chip-colour-border-on-dark-off:#fff3;--bpk-private-chip-colour-stroke-off-on-canvas-contrast-new:#fff0;--bpk-private-chip-colour-text-default-dismissible-hover:#fff;--bpk-private-chip-colour-text-dismissible-on-icon:#ffffff80;--bpk-private-chip-colour-text-on:#fff;--bpk-private-chip-colour-text-on-image:#fff;--bpk-private-chip-colour-text-on-image-dismissible-icon:#bdc4cb;--bpk-private-chip-colour-text-on-dark:#fff;--bpk-private-chip-colour-text-on-dark-dismissible-hover:#fff;--bpk-private-chip-colour-text-on-dark-dismissible-icon:#bdc4cb;--bpk-private-chip-dimension-border:0.0625rem;--bpk-private-chip-dimension-min-height-width:2rem;--bpk-private-chip-dimension-radius:0.5rem;--bpk-private-date-selector-cheapest-month-highlight:#fff;--bpk-private-date-selector-flexible-date-card:#243346;--bpk-private-info-banner-default:#131d2b;--bpk-private-info-banner-on-contrast:#131d2b;--bpk-private-map-cluster-pin:#fff;--bpk-private-map-cluster-pin-previous-selection:#94c3ff;--bpk-private-map-marker-viewed:#000c;--bpk-private-map-poi-pin:#8e47ba;--bpk-private-map-previous-selection:#cfe4ff;--bpk-private-navigation-tabs-hover:#002b4b;--bpk-private-navigation-tabs-outline:#fff3;--bpk-private-navigation-tabs-selected:#054184;--bpk-private-radio-bg-default-disabled:#ffffff80;--bpk-private-radio-bg-default-on:#84e9ff;--bpk-private-radio-bg-on-contrast-off:#fff0;--bpk-private-radio-bg-on-contrast-on:#84e9ff;--bpk-private-radio-border:0.1875rem;--bpk-private-radio-border-default-off:#ffffff80;--bpk-private-rating-bar-default:#243346;--bpk-private-rating-bar-on-contrast:#243346;--bpk-private-segmented-control-colour-bg-on-canvas-default-default:#131d2b;--bpk-private-segmented-control-colour-bg-on-surface-contrast-default:#131d2b;--bpk-private-segmented-control-colour-bg-on-surface-contrast-selected:#054184;--bpk-private-segmented-control-colour-bg-selected:#054184;--bpk-private-segmented-control-colour-divider-default:#e0e4e9;--bpk-private-segmented-control-colour-divider-on-surface-contrast:#fff3;--bpk-private-segmented-control-dimension-bg-indicator-radius:0;--bpk-private-segmented-control-dimension-bg-track-radius:0.5rem;--bpk-private-segmented-control-dimension-min-height:2rem;--bpk-private-segmented-control-dimension-track-padding:0;--bpk-private-shadow-large-blur:0.875rem;--bpk-private-shadow-large-color:#16161640;--bpk-private-shadow-large-position-x:0;--bpk-private-shadow-large-position-y:0.25rem;--bpk-private-shadow-large-spread:0;--bpk-private-shadow-small-blur:0.1875rem;--bpk-private-shadow-small-color:#16161640;--bpk-private-shadow-small-position-x:0;--bpk-private-shadow-small-position-y:0.0625rem;--bpk-private-shadow-small-spread:0;--bpk-private-shadow-xl-blur:3.125rem;--bpk-private-shadow-xl-color:#16161640;--bpk-private-shadow-xl-position-x:0;--bpk-private-shadow-xl-position-y:0.75rem;--bpk-private-shadow-xl-spread:0;--bpk-private-skeleton-on-dark:#243346;--bpk-private-speech-bubble-colour-bg-contrast:#131d2b;--bpk-private-speech-bubble-colour-bg-default:#131d2b;--bpk-private-trip-advisor:#9ce6c0;--bpk-core-accent:#84e9ff;--bpk-core-eco:#0fa1a9;--bpk-core-primary:#054184;--bpk-other-overlay:#fffc;--bpk-other-scrim:#000000b3;--bpk-other-shadow:#16161640;--bpk-other-line-default:#fff3;--bpk-other-line-on-contrast:#fff3;--bpk-status-danger-spot:#ff649c;--bpk-status-success-spot:#62f1c6;--bpk-status-warning-spot:#feeb87;--bpk-surface-contrast:#010913;--bpk-surface-danger-fill:#ffcadd;--bpk-surface-default:#131d2b;--bpk-surface-elevated:#243346;--bpk-surface-hero:#010913;--bpk-surface-highlight:#243346;--bpk-surface-low-contrast:#243346;--bpk-surface-subtle:#243346;--bpk-surface-success-fill:#b1ffe7;--bpk-surface-tint:#ffffff1a;--bpk-surface-warning-fill:#fbf1bb;--bpk-surface-promo:#243346;--bpk-test:red;--bpk-text-disabled:#fff3;--bpk-text-disabled-on-dark:#ffffff80;--bpk-text-error:#ff649c;--bpk-text-inverse:#010913;--bpk-text-on-dark:#fff;--bpk-text-on-light:#010913;--bpk-text-primary:#fff;--bpk-text-secondary:#bdc4cb;--bpk-text-secondary-on-contrast:#ffffff80;--bpk-text-success:#62f1c6;--bpk-text-deprecated-link:#84e9ff;--bpk-text-hero:#010913;--bpk-title:true;--bpk-typography-family-sans-serif:"Skyscanner Relative";--bpk-typography-family-serif:Larken;--bpk-typography-kerning-default:0;--bpk-typography-kerning-loose:0;--bpk-typography-kerning-tight:0;--bpk-typography-style-body:400;--bpk-typography-style-headline:700;--bpk-typography-style-hero:900;--bpk-typography-style-label:700;--bpk-typography-style-subhead:300}
@@ -24,9 +24,11 @@
24
24
  --bpk-border-3: 0.1875rem;
25
25
  --bpk-modal-200: 12.5rem;
26
26
  --bpk-modal-400: 25rem;
27
+ --bpk-modal-512: 32rem;
27
28
  --bpk-modal-600: 37.5rem;
28
29
  --bpk-modal-800: 50rem;
29
30
  --bpk-modal-1000: 62.5rem;
31
+ --bpk-modal-1024: 64rem;
30
32
  --bpk-radius-none: 0;
31
33
  --bpk-radius-full: 62.4375rem;
32
34
  --bpk-radius-lg: 1.5rem;
@@ -171,11 +171,11 @@
171
171
  --bpk-core-accent: #84e9ff;
172
172
  --bpk-core-eco: #0fa1a9;
173
173
  --bpk-core-primary: #054184;
174
- --bpk-other-line: rgba(255, 255, 255, 0.2);
175
- --bpk-other-line-on-dark: rgba(255, 255, 255, 0.2);
176
174
  --bpk-other-overlay: rgba(255, 255, 255, 0.8);
177
175
  --bpk-other-scrim: rgba(0, 0, 0, 0.7);
178
176
  --bpk-other-shadow: rgba(22, 22, 22, 0.25);
177
+ --bpk-other-line-default: rgba(255, 255, 255, 0.2);
178
+ --bpk-other-line-on-contrast: rgba(255, 255, 255, 0.2);
179
179
  --bpk-status-danger-spot: #ff649c;
180
180
  --bpk-status-success-spot: #62f1c6;
181
181
  --bpk-status-warning-spot: #feeb87;
@@ -200,6 +200,7 @@
200
200
  --bpk-text-on-light: #010913;
201
201
  --bpk-text-primary: #ffffff;
202
202
  --bpk-text-secondary: #bdc4cb;
203
+ --bpk-text-secondary-on-contrast: rgba(255, 255, 255, 0.5);
203
204
  --bpk-text-success: #62f1c6;
204
205
  --bpk-text-deprecated-link: #84e9ff;
205
206
  --bpk-text-hero: #010913;
@@ -86,7 +86,7 @@
86
86
  --bpk-private-chip-group-filter-colour-stroke-icon-hover-default: #05203c;
87
87
  --bpk-private-chip-group-filter-colour-stroke-icon-hover-on-dark: #ffffff;
88
88
  --bpk-private-chip-group-filter-colour-stroke-icon-off-default: #c1c7cf;
89
- --bpk-private-chip-group-filter-colour-stroke-icon-off-on-dark: rgba(255, 255, 255, 0.5);
89
+ --bpk-private-chip-group-filter-colour-stroke-icon-off-on-dark: rgba(255, 255, 255, 0.2);
90
90
  --bpk-private-chip-group-filter-dimensions-min-height: 2.25rem;
91
91
  --bpk-private-chip-colour-bg-default-dismissible-hover: #05203c;
92
92
  --bpk-private-chip-colour-bg-default-on: #05203c;
@@ -106,7 +106,7 @@
106
106
  --bpk-private-chip-colour-border-on-contrast-on: #05203c;
107
107
  --bpk-private-chip-colour-border-on-dark-dismissible-hover: #ffffff;
108
108
  --bpk-private-chip-colour-border-on-dark-hover: #ffffff;
109
- --bpk-private-chip-colour-border-on-dark-off: rgba(255, 255, 255, 0.5);
109
+ --bpk-private-chip-colour-border-on-dark-off: rgba(255, 255, 255, 0.2);
110
110
  --bpk-private-chip-colour-stroke-off-on-canvas-contrast-new: rgba(255, 255, 255, 0);
111
111
  --bpk-private-chip-colour-text-default-dismissible-hover: #ffffff;
112
112
  --bpk-private-chip-colour-text-dismissible-on-icon: rgba(255, 255, 255, 0.5);
@@ -171,11 +171,11 @@
171
171
  --bpk-core-accent: #0062e3;
172
172
  --bpk-core-eco: #0fa1a9;
173
173
  --bpk-core-primary: #05203c;
174
- --bpk-other-line: #c1c7cf;
175
- --bpk-other-line-on-dark: rgba(255, 255, 255, 0.5);
176
174
  --bpk-other-overlay: rgba(0, 0, 0, 0.2);
177
175
  --bpk-other-scrim: rgba(0, 0, 0, 0.7);
178
176
  --bpk-other-shadow: rgba(22, 22, 22, 0.25);
177
+ --bpk-other-line-default: #c1c7cf;
178
+ --bpk-other-line-on-contrast: rgba(255, 255, 255, 0.2);
179
179
  --bpk-status-danger-spot: #e70866;
180
180
  --bpk-status-success-spot: #0c838a;
181
181
  --bpk-status-warning-spot: #f55d42;
@@ -200,6 +200,7 @@
200
200
  --bpk-text-on-light: #161616;
201
201
  --bpk-text-primary: #161616;
202
202
  --bpk-text-secondary: #626971;
203
+ --bpk-text-secondary-on-contrast: rgba(255, 255, 255, 0.5);
203
204
  --bpk-text-success: #0c838a;
204
205
  --bpk-text-deprecated-link: #0062e3;
205
206
  --bpk-text-hero: #0062e3;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyscanner/backpack-web",
3
- "version": "42.25.0",
3
+ "version": "42.26.0-dev-v27611615692.1",
4
4
  "description": "Backpack Design System web library",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,6 +24,8 @@
24
24
  "dependencies": {
25
25
  "@ark-ui/react": "^5.34.1",
26
26
  "@chakra-ui/react": "^3.33.0",
27
+ "@emotion/cache": "^11.14.0",
28
+ "@emotion/react": ">=11",
27
29
  "@floating-ui/react": "^0.26.12",
28
30
  "@radix-ui/react-compose-refs": "^1.1.1",
29
31
  "@radix-ui/react-slider": "1.3.5",