@skyscanner/backpack-web 42.26.0-dev-v27664212356.1 → 42.26.0-dev-v28215729198.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.
|
@@ -26,7 +26,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
26
26
|
// Exported so host apps can inject an externally-managed Emotion cache into
|
|
27
27
|
// BpkProvider (e.g. to force re-injection after a hydration error recovery).
|
|
28
28
|
// When a non-null value is provided via this context, BpkProvider operates in
|
|
29
|
-
// "
|
|
29
|
+
// "external cache" mode: it skips creating its own cache and delegates to the external one.
|
|
30
30
|
export const BpkEmotionCacheContext = /*#__PURE__*/createContext(null);
|
|
31
31
|
|
|
32
32
|
/**
|
|
@@ -162,9 +162,9 @@ export const BpkProvider = ({
|
|
|
162
162
|
children
|
|
163
163
|
}) => {
|
|
164
164
|
const externalCache = useContext(BpkEmotionCacheContext);
|
|
165
|
-
const
|
|
165
|
+
const hasExternalCache = externalCache !== null;
|
|
166
166
|
const [isCypress] = useState(isCypressEnv);
|
|
167
|
-
const [ownCache, setOwnCache] = useState(() =>
|
|
167
|
+
const [ownCache, setOwnCache] = useState(() => hasExternalCache ? externalCache : createBpkEmotionCache(isCypress ? false : undefined));
|
|
168
168
|
const hasRecreated = useRef(false);
|
|
169
169
|
const locale = useArkLocale();
|
|
170
170
|
|
|
@@ -172,7 +172,7 @@ export const BpkProvider = ({
|
|
|
172
172
|
// nodes the hydrator stripped. `hasRecreated` guards StrictMode double-invoke.
|
|
173
173
|
// Deps stable for provider lifetime → empty array is intentional.
|
|
174
174
|
useEffect(() => {
|
|
175
|
-
if (
|
|
175
|
+
if (hasExternalCache || !isCypress) return;
|
|
176
176
|
if (hasRecreated.current) return;
|
|
177
177
|
hasRecreated.current = true;
|
|
178
178
|
setOwnCache(createBpkEmotionCache(false));
|
|
@@ -184,7 +184,7 @@ export const BpkProvider = ({
|
|
|
184
184
|
// This is intentional: BpkEmotionCacheContext.Provider is expected to be
|
|
185
185
|
// mounted for the lifetime of the app once set — toggling it off is not a
|
|
186
186
|
// supported use case. The state initialiser runs only once per mount.
|
|
187
|
-
const activeCache =
|
|
187
|
+
const activeCache = hasExternalCache ? externalCache : ownCache;
|
|
188
188
|
const inner = /*#__PURE__*/_jsx(ChakraProvider, {
|
|
189
189
|
value: bpkSystem,
|
|
190
190
|
children: /*#__PURE__*/_jsx(LocaleProvider, {
|
package/bpk-stylesheets/font.css
CHANGED
|
@@ -15,4 +15,4 @@
|
|
|
15
15
|
* See the License for the specific language governing permissions and
|
|
16
16
|
* limitations under the License.
|
|
17
17
|
*/
|
|
18
|
-
@font-face{font-family:"Skyscanner Relative";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Book-f9356ad6.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Book-46f9f429.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Book-ab1dbcbe.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:italic;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Italic-10532ac3.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Italic-db5d0ac5.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Italic-8eec3f3a.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:normal;font-weight:500;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Medium-c08dc28b.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Medium-865e167a.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Medium-d0ae478a.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:italic;font-weight:500;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-MediumItalic-81517f37.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-MediumItalic-bbdb6b0c.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-MediumItalic-226fe64c.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Bold-8545937e.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Bold-a099c9f7.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Bold-ec4cc5a7.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:italic;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BoldItalic-01b5d138.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BoldItalic-4d6d36e3.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BoldItalic-dc9284dc.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Black-bb3c9434.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Black-bba2eb55.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Black-314703cc.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:italic;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BlackItalic-c2149c91.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BlackItalic-a34cd594.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BlackItalic-7e516ee5.ttf') format('ttf')}@font-face{font-family:"Noto Sans JP";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-ExtraBold-d4e678e6.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-ExtraBold-071fa89b.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-ExtraBold-71fc7f76.ttf') format('ttf')}@font-face{font-family:"Noto Sans JP";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Bold-b656150c.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Bold-6ddf472f.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Bold-deeb2988.ttf') format('ttf')}@font-face{font-family:"Noto Sans JP";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Regular-6ab10d56.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Regular-70c49e9e.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Regular-68d5dc69.ttf') format('ttf')}@font-face{font-family:"Noto Sans KR";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-ExtraBold-1dfe3b92.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-ExtraBold-6c571306.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-ExtraBold-f350038a.ttf') format('ttf')}@font-face{font-family:"Noto Sans KR";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Bold-5286cc6d.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Bold-74c4cbc7.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Bold-5651f33d.ttf') format('ttf')}@font-face{font-family:"Noto Sans KR";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Regular-b6a2ff73.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Regular-96147637.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Regular-a2cd60b3.ttf') format('ttf')}@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-22c3e4e0.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-87ef5110.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-57f04989.ttf') format('ttf')}@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-22c3e4e0.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-87ef5110.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-57f04989.ttf') format('ttf')}@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Regular-97e50cfd.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Regular-cba63765.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Regular-f793115b.ttf') format('ttf')}@font-face{font-family:"Noto Sans TC";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-355d38e9.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-2abc3583.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-86244830.ttf') format('ttf')}@font-face{font-family:"Noto Sans TC";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-355d38e9.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-2abc3583.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-86244830.ttf') format('ttf')}@font-face{font-family:"Noto Sans TC";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Regular-5d6d6915.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Regular-c4185417.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Regular-d4301ce6.ttf') format('ttf')}@font-face{font-family:"Noto Sans Thai";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-74e247cc.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-91433b5b.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-778d694c.ttf') format('ttf')}@font-face{font-family:"Noto Sans Thai";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-74e247cc.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-91433b5b.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-778d694c.ttf') format('ttf')}@font-face{font-family:"Noto Sans Thai";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Regular-49d26bc7.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Regular-bc78fb35.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Regular-84e59eed.ttf') format('ttf')}@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-ExtraBold-ff675d8c.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-ExtraBold-2b68fdf3.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-ExtraBold-ad7aee12.ttf') format('ttf')}@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Bold-19924491.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Bold-2598dc51.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Bold-bca34adc.ttf') format('ttf')}@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Regular-2ddbe014.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Regular-b7e8aefe.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Regular-e0474da6.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBold-d8d5cc89.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBold-177dbfc0.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBold-cac84afc.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:italic;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBoldItalic-cf3e028d.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBoldItalic-be131c58.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBoldItalic-c435f928.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Bold-0b4b7c45.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Bold-68b2bc2e.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Bold-bc7f5e39.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:italic;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-BoldItalic-61b665f1.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-BoldItalic-eff19cbf.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-BoldItalic-695e28bf.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Regular-31a7a3e7.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Regular-aa4384e7.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Regular-f04a504e.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:italic;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Italic-136bdc6a.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Italic-7cd36c44.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Italic-716d03e4.ttf') format('ttf')}@font-face{font-family:"Noto Sans Arabic";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-ExtraBold-da8cf050.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-ExtraBold-4ac084a2.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-ExtraBold-a965fbb5.ttf') format('ttf')}@font-face{font-family:"Noto Sans Arabic";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Bold-237618dd.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Bold-9e0190d0.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Bold-d93e430c.ttf') format('ttf')}@font-face{font-family:"Noto Sans Arabic";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Regular-15a84e58.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Regular-a2985c7a.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Regular-471fde3d.ttf') format('ttf')}@font-face{font-family:"Noto Sans Hebrew";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-ExtraBold-e04df8b4.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-ExtraBold-3303fb69.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-ExtraBold-4cfb24e3.ttf') format('ttf')}@font-face{font-family:"Noto Sans Hebrew";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Bold-ad38ec01.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Bold-6ecb028a.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Bold-752057d4.ttf') format('ttf')}@font-face{font-family:"Noto Sans Hebrew";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Regular-d42b5a85.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Regular-bdcbbd78.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Regular-41f881f3.ttf') format('ttf')}[lang=ja-JP],:lang(ja-JP){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", "Noto Sans KR", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=zh-TW],:lang(zh-TW),[lang=zh-HK],:lang(zh-HK){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans TC", "Noto Sans SC", "Noto Sans JP", "Noto Sans KR", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=zh-CN],:lang(zh-CN){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans SC", "Noto Sans TC", "Noto Sans JP", "Noto Sans KR", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=ko-KR],:lang(ko-KR){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans KR", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=th-TH],:lang(th-TH){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans Thai", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=hi-IN],:lang(hi-IN){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans Devanagari", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=ar],:lang(ar){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=he],:lang(he){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans Hebrew", "Noto Sans Arabic", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=el-GR],:lang(el-GR),[lang=ru-RU],:lang(ru-RU),[lang=uk-UA],:lang(uk-UA),[lang=bg-BG],:lang(bg-BG),[lang=vi-VN],:lang(vi-VN){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}:where([lang]){font-family:var(--bpk-base-font-stack)}
|
|
18
|
+
@font-face{font-family:"Skyscanner Relative";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Book-f9356ad6.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Book-46f9f429.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Book-ab1dbcbe.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:italic;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Italic-10532ac3.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Italic-db5d0ac5.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Italic-8eec3f3a.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:normal;font-weight:500;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Medium-c08dc28b.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Medium-865e167a.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Medium-d0ae478a.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:italic;font-weight:500;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-MediumItalic-81517f37.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-MediumItalic-bbdb6b0c.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-MediumItalic-226fe64c.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Bold-8545937e.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Bold-a099c9f7.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Bold-ec4cc5a7.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:italic;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BoldItalic-01b5d138.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BoldItalic-4d6d36e3.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BoldItalic-dc9284dc.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Black-bb3c9434.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Black-bba2eb55.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-Black-314703cc.ttf') format('ttf')}@font-face{font-family:"Skyscanner Relative";font-style:italic;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BlackItalic-c2149c91.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BlackItalic-a34cd594.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/SkyscannerRelative-BlackItalic-7e516ee5.ttf') format('ttf')}@font-face{font-family:"Noto Sans JP";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-ExtraBold-d4e678e6.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-ExtraBold-071fa89b.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-ExtraBold-71fc7f76.ttf') format('ttf')}@font-face{font-family:"Noto Sans JP";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Bold-b656150c.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Bold-6ddf472f.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Bold-deeb2988.ttf') format('ttf')}@font-face{font-family:"Noto Sans JP";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Regular-6ab10d56.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Regular-70c49e9e.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansJP-Regular-68d5dc69.ttf') format('ttf')}@font-face{font-family:"Noto Sans KR";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-ExtraBold-1dfe3b92.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-ExtraBold-6c571306.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-ExtraBold-f350038a.ttf') format('ttf')}@font-face{font-family:"Noto Sans KR";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Bold-5286cc6d.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Bold-74c4cbc7.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Bold-5651f33d.ttf') format('ttf')}@font-face{font-family:"Noto Sans KR";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Regular-b6a2ff73.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Regular-96147637.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansKR-Regular-a2cd60b3.ttf') format('ttf')}@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-22c3e4e0.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-87ef5110.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-57f04989.ttf') format('ttf')}@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-22c3e4e0.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-87ef5110.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Bold-57f04989.ttf') format('ttf')}@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Regular-97e50cfd.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Regular-cba63765.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansSC-Regular-f793115b.ttf') format('ttf')}@font-face{font-family:"Noto Sans TC";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-355d38e9.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-2abc3583.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-86244830.ttf') format('ttf')}@font-face{font-family:"Noto Sans TC";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-355d38e9.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-2abc3583.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Bold-86244830.ttf') format('ttf')}@font-face{font-family:"Noto Sans TC";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Regular-5d6d6915.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Regular-c4185417.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansTC-Regular-d4301ce6.ttf') format('ttf')}@font-face{font-family:"Noto Sans Thai";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-74e247cc.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-91433b5b.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-778d694c.ttf') format('ttf')}@font-face{font-family:"Noto Sans Thai";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-74e247cc.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-91433b5b.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Bold-778d694c.ttf') format('ttf')}@font-face{font-family:"Noto Sans Thai";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Regular-49d26bc7.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Regular-bc78fb35.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansThai-Regular-84e59eed.ttf') format('ttf')}@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-ExtraBold-ff675d8c.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-ExtraBold-2b68fdf3.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-ExtraBold-ad7aee12.ttf') format('ttf')}@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Bold-19924491.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Bold-2598dc51.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Bold-bca34adc.ttf') format('ttf')}@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Regular-2ddbe014.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Regular-b7e8aefe.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansDevanagari-Regular-e0474da6.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBold-d8d5cc89.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBold-177dbfc0.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBold-cac84afc.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:italic;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBoldItalic-cf3e028d.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBoldItalic-be131c58.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-ExtraBoldItalic-c435f928.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Bold-0b4b7c45.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Bold-68b2bc2e.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Bold-bc7f5e39.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:italic;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-BoldItalic-61b665f1.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-BoldItalic-eff19cbf.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-BoldItalic-695e28bf.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Regular-31a7a3e7.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Regular-aa4384e7.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Regular-f04a504e.ttf') format('ttf')}@font-face{font-family:"Noto Sans";font-style:italic;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Italic-136bdc6a.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Italic-7cd36c44.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSans-Italic-716d03e4.ttf') format('ttf')}@font-face{font-family:"Noto Sans Arabic";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-ExtraBold-da8cf050.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-ExtraBold-4ac084a2.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-ExtraBold-a965fbb5.ttf') format('ttf')}@font-face{font-family:"Noto Sans Arabic";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Bold-237618dd.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Bold-9e0190d0.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Bold-d93e430c.ttf') format('ttf')}@font-face{font-family:"Noto Sans Arabic";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Regular-15a84e58.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Regular-a2985c7a.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansArabic-Regular-471fde3d.ttf') format('ttf')}@font-face{font-family:"Noto Sans Hebrew";font-style:normal;font-weight:900;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-ExtraBold-e04df8b4.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-ExtraBold-3303fb69.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-ExtraBold-4cfb24e3.ttf') format('ttf')}@font-face{font-family:"Noto Sans Hebrew";font-style:normal;font-weight:700;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Bold-ad38ec01.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Bold-6ecb028a.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Bold-752057d4.ttf') format('ttf')}@font-face{font-family:"Noto Sans Hebrew";font-style:normal;font-weight:400;src:url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Regular-d42b5a85.woff2') format('woff2'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Regular-bdcbbd78.woff') format('woff'), url('https://js.skyscnr.com/sttc/bpk-fonts/NotoSansHebrew-Regular-41f881f3.ttf') format('ttf')}[lang=ja-JP],:lang(ja-JP){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", "Noto Sans KR", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=zh-TW],:lang(zh-TW),[lang=zh-HK],:lang(zh-HK){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans TC", "Noto Sans SC", "Noto Sans JP", "Noto Sans KR", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=zh-CN],:lang(zh-CN){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans SC", "Noto Sans TC", "Noto Sans JP", "Noto Sans KR", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=ko-KR],:lang(ko-KR){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans KR", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=th-TH],:lang(th-TH){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans Thai", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=hi-IN],:lang(hi-IN){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans Devanagari", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=ar],:lang(ar){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=he],:lang(he){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans Hebrew", "Noto Sans Arabic", "Noto Sans", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}[lang=el-GR],:lang(el-GR),[lang=ru-RU],:lang(ru-RU),[lang=uk-UA],:lang(uk-UA),[lang=bg-BG],:lang(bg-BG),[lang=vi-VN],:lang(vi-VN){--bpk-base-font-stack: "Skyscanner Relative", "Noto Sans", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans Devanagari", "Noto Sans Thai", -apple-system, blinkmacsystemfont, roboto, oxygen, ubuntu, cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}:where([lang]){font-family:var(--bpk-base-font-stack)}:lang(zh),:lang(ja){line-break:strict;overflow-wrap:anywhere}:lang(ko){line-break:strict;overflow-wrap:break-word;word-break:keep-all}@media(max-width: 48rem){:lang(zh),:lang(ja),:lang(ko){line-break:loose}}:lang(ar),:lang(he){overflow-wrap:break-word}:lang(th){line-break:loose;overflow-wrap:anywhere;word-break:break-all}:lang(hi){overflow-wrap:break-word}:lang(ru),:lang(uk){hyphens:auto;overflow-wrap:break-word}
|
|
@@ -16,11 +16,12 @@
|
|
|
16
16
|
* limitations under the License.
|
|
17
17
|
*/
|
|
18
18
|
|
|
19
|
-
$base-url: 'https://js.skyscnr.com/sttc/bpk-fonts';
|
|
20
|
-
$font-formats: (woff2, woff, ttf);
|
|
21
|
-
|
|
22
19
|
@use 'sass:list';
|
|
23
20
|
@use 'sass:map';
|
|
21
|
+
@use '../bpk-mixins/tokens';
|
|
22
|
+
|
|
23
|
+
$base-url: 'https://js.skyscnr.com/sttc/bpk-fonts';
|
|
24
|
+
$font-formats: (woff2, woff, ttf);
|
|
24
25
|
|
|
25
26
|
// Table-driven font registry: add families/weights in $bpk-fonts, and the mixin
|
|
26
27
|
// will emit matching @font-face rules. Filenames are the hashed names without
|
|
@@ -532,3 +533,64 @@ $bpk-fonts: (
|
|
|
532
533
|
:where([lang]) {
|
|
533
534
|
font-family: var(--bpk-base-font-stack);
|
|
534
535
|
}
|
|
536
|
+
|
|
537
|
+
// Locale-aware line-break rules.
|
|
538
|
+
// Must be after font-stack rules so source order wins over browser defaults.
|
|
539
|
+
// :lang() matches subtags — :lang(ja) covers ja, ja-JP, etc.
|
|
540
|
+
|
|
541
|
+
// CJK: strict kinsoku (JIS X 4051 / GB/T 15834) — punctuation/particles cannot
|
|
542
|
+
// appear at line-start. Fixes headlines breaking before を、に、の etc.
|
|
543
|
+
// overflow-wrap: anywhere is last-resort only — preserves Latin brand names/URLs
|
|
544
|
+
// on mixed-script pages by only breaking at non-standard points as a final fallback.
|
|
545
|
+
:lang(zh),
|
|
546
|
+
:lang(ja) {
|
|
547
|
+
line-break: strict;
|
|
548
|
+
overflow-wrap: anywhere;
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
// Korean: word-level breaks (KS X 1026 kinsoku), not character-level.
|
|
552
|
+
// word-break: keep-all preserves syllable blocks (Korean typographic convention).
|
|
553
|
+
// overflow-wrap: break-word fallback required — on 360–390px viewports a long
|
|
554
|
+
// compound word with no spaces still overflows with keep-all alone.
|
|
555
|
+
:lang(ko) {
|
|
556
|
+
line-break: strict;
|
|
557
|
+
overflow-wrap: break-word;
|
|
558
|
+
word-break: keep-all;
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
// Mobile: strict can leave uneven rag or orphaned characters on narrow viewports.
|
|
562
|
+
@media #{tokens.$bpk-breakpoint-query-small-tablet} {
|
|
563
|
+
:lang(zh),
|
|
564
|
+
:lang(ja),
|
|
565
|
+
:lang(ko) {
|
|
566
|
+
line-break: loose;
|
|
567
|
+
}
|
|
568
|
+
}
|
|
569
|
+
|
|
570
|
+
// Arabic, Hebrew — overflow only; direction handled by existing html[dir] RTL system.
|
|
571
|
+
:lang(ar),
|
|
572
|
+
:lang(he) {
|
|
573
|
+
overflow-wrap: break-word;
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
// Thai — no word spaces; ICU dictionary failure = no natural break points.
|
|
577
|
+
// overflow-wrap: anywhere (not just break-word) because Thai strings have no
|
|
578
|
+
// space characters to serve as natural break opportunities.
|
|
579
|
+
:lang(th) {
|
|
580
|
+
line-break: loose;
|
|
581
|
+
overflow-wrap: anywhere;
|
|
582
|
+
word-break: break-all;
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
// Hindi (Devanagari) — space-delimited, wraps like Latin.
|
|
586
|
+
:lang(hi) {
|
|
587
|
+
overflow-wrap: break-word;
|
|
588
|
+
}
|
|
589
|
+
|
|
590
|
+
// Russian, Ukrainian — Cyrillic wraps like Latin.
|
|
591
|
+
// hyphens: auto works in Safari and Firefox; Chrome degrades silently to no hyphens.
|
|
592
|
+
:lang(ru),
|
|
593
|
+
:lang(uk) {
|
|
594
|
+
hyphens: auto;
|
|
595
|
+
overflow-wrap: break-word;
|
|
596
|
+
}
|