@royaloperahouse/harmonic 0.18.2-d → 0.18.2-e

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.
Files changed (29) hide show
  1. package/dist/components/atoms/Buttons/Auxiliary/AuxiliaryButton.style.d.ts +1 -9
  2. package/dist/components/atoms/Buttons/Button.d.ts +3 -10
  3. package/dist/components/atoms/Buttons/Primary/PrimaryButton.d.ts +3 -17
  4. package/dist/components/atoms/Buttons/Primary/PrimaryButton.style.d.ts +1 -9
  5. package/dist/components/atoms/Buttons/Secondary/SecondaryButton.style.d.ts +1 -9
  6. package/dist/components/atoms/Dropdown/Dropdown.d.ts +1 -1
  7. package/dist/components/atoms/Tab/Tab.d.ts +1 -1
  8. package/dist/components/index.d.ts +2 -2
  9. package/dist/components/molecules/CastFilter/CastFilters.style.d.ts +2 -0
  10. package/dist/components/molecules/HotFilters/HotFilters.style.d.ts +1 -16
  11. package/dist/components/molecules/PageHeading/Compact/Compact.style.d.ts +1 -16
  12. package/dist/components/molecules/PageHeading/Impact/Impact.style.d.ts +9 -302
  13. package/dist/components/molecules/index.d.ts +2 -1
  14. package/dist/components/organisms/TitleWithCTA/TitleWithCTA.style.d.ts +1 -16
  15. package/dist/harmonic.cjs.development.css +319 -0
  16. package/dist/harmonic.cjs.development.js +1931 -1878
  17. package/dist/harmonic.cjs.development.js.map +1 -1
  18. package/dist/harmonic.cjs.production.min.js +1 -1
  19. package/dist/harmonic.cjs.production.min.js.map +1 -1
  20. package/dist/harmonic.esm.js +1936 -1881
  21. package/dist/harmonic.esm.js.map +1 -1
  22. package/dist/index.d.ts +2 -2
  23. package/dist/styles/HarmonicThemeProvider/HarmonicThemeProvider.d.ts +1 -0
  24. package/dist/types/impactHeader.d.ts +32 -14
  25. package/dist/types/types.d.ts +9 -7
  26. package/package.json +3 -3
  27. package/dist/components/atoms/VideoControlsImpact/VideoControlsImpact.d.ts +0 -4
  28. package/dist/components/atoms/VideoControlsImpact/VideoControlsImpact.style.d.ts +0 -5
  29. package/dist/components/atoms/VideoControlsImpact/index.d.ts +0 -2
@@ -2551,7 +2551,7 @@ var Icon = /*#__PURE__*/React.memo(function (props) {
2551
2551
  Icon.displayName = 'Icon';
2552
2552
 
2553
2553
  var _excluded$2 = ["children", "iconName", "iconDirection", "iconClassName", "color", "className", "href", "onClick"];
2554
- var Button = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2554
+ var Button = function Button(_ref) {
2555
2555
  var children = _ref.children,
2556
2556
  iconName = _ref.iconName,
2557
2557
  iconDirection = _ref.iconDirection,
@@ -2561,7 +2561,7 @@ var Button = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2561
2561
  href = _ref.href,
2562
2562
  onClick = _ref.onClick,
2563
2563
  rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
2564
- var truncatedString = children == null ? void 0 : children.substring(0, 30);
2564
+ var truncatedString = children.substring(0, 30);
2565
2565
  var handleClick = React.useCallback(function (e) {
2566
2566
  if (!href) e.preventDefault();
2567
2567
  onClick == null || onClick(e);
@@ -2573,8 +2573,7 @@ var Button = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2573
2573
  href: href != null ? href : '#',
2574
2574
  onClick: handleClick,
2575
2575
  iconName: iconName,
2576
- className: className,
2577
- ref: ref
2576
+ className: className
2578
2577
  }), iconName ? (/*#__PURE__*/React__default.createElement(ButtonIconWrapper, {
2579
2578
  "data-testid": "button-icon",
2580
2579
  className: iconClassName
@@ -2585,8 +2584,7 @@ var Button = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2585
2584
  }))) : null, /*#__PURE__*/React__default.createElement(ButtonText, {
2586
2585
  color: "inherit"
2587
2586
  }, truncatedString));
2588
- });
2589
- Button.displayName = 'Button';
2587
+ };
2590
2588
 
2591
2589
  var getPointerEvents = function getPointerEvents(_ref) {
2592
2590
  var disabled = _ref.disabled;
@@ -2651,7 +2649,7 @@ var PrimaryButtonWrapper = /*#__PURE__*/styled__default(Button)(_templateObject$
2651
2649
  var AriaDescription = /*#__PURE__*/styled__default.span(_templateObject2$1 || (_templateObject2$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n left: -9999px;\n width: 1px;\n height: 1px;\n overflow: hidden;\n"])));
2652
2650
 
2653
2651
  var _excluded$3 = ["children", "disabled", "className"];
2654
- var PrimaryButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2652
+ var PrimaryButton = function PrimaryButton(_ref) {
2655
2653
  var children = _ref.children,
2656
2654
  disabled = _ref.disabled,
2657
2655
  className = _ref.className,
@@ -2666,7 +2664,6 @@ var PrimaryButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2666
2664
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(AriaDescription, {
2667
2665
  id: disabledButtonDescriptionId
2668
2666
  }, disabledButtonDescription), /*#__PURE__*/React__default.createElement(PrimaryButtonWrapper, Object.assign({
2669
- ref: ref,
2670
2667
  disabled: true,
2671
2668
  "aria-disabled": "true",
2672
2669
  role: "button",
@@ -2676,13 +2673,10 @@ var PrimaryButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2676
2673
  onClick: handleClick
2677
2674
  }), children));
2678
2675
  }
2679
- return /*#__PURE__*/React__default.createElement(PrimaryButtonWrapper, Object.assign({
2680
- ref: ref
2681
- }, props, {
2676
+ return /*#__PURE__*/React__default.createElement(PrimaryButtonWrapper, Object.assign({}, props, {
2682
2677
  className: className
2683
2678
  }), children);
2684
- });
2685
- PrimaryButton.displayName = 'PrimaryButton';
2679
+ };
2686
2680
 
2687
2681
  var COLORS$1 = {
2688
2682
  disabled: 'var(--color-state-disabled)',
@@ -3830,6 +3824,7 @@ var Tab = function Tab(_ref) {
3830
3824
  className = _ref.className,
3831
3825
  role = _ref.role,
3832
3826
  ariaLabel = _ref.ariaLabel,
3827
+ tabLinkId = _ref.tabLinkId,
3833
3828
  color = _ref.color,
3834
3829
  dataTestId = _ref.dataTestId,
3835
3830
  isOpen = _ref.isOpen;
@@ -3864,8 +3859,9 @@ var Tab = function Tab(_ref) {
3864
3859
  className: className,
3865
3860
  "data-testid": dataTestId
3866
3861
  }, /*#__PURE__*/React__default.createElement(TabText, {
3867
- color: color,
3862
+ id: tabLinkId,
3868
3863
  trimText: trimText,
3864
+ color: color,
3869
3865
  withTextInMobile: withTextInMobile,
3870
3866
  "aria-hidden": "true"
3871
3867
  }, title), withIcon !== 'none' && /*#__PURE__*/React__default.createElement(Icon, {
@@ -5344,6 +5340,7 @@ var Dropdown = function Dropdown(_ref) {
5344
5340
  className = _ref.className,
5345
5341
  role = _ref.role,
5346
5342
  ariaLabel = _ref.ariaLabel,
5343
+ tabLinkId = _ref.tabLinkId,
5347
5344
  trimTabText = _ref.trimTabText;
5348
5345
  var node = React.useRef();
5349
5346
  var _useState = React.useState(false),
@@ -5440,6 +5437,7 @@ var Dropdown = function Dropdown(_ref) {
5440
5437
  };
5441
5438
  var renderTab = function renderTab() {
5442
5439
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(Tab, {
5440
+ tabLinkId: tabLinkId,
5443
5441
  trimText: trimTabText,
5444
5442
  title: title,
5445
5443
  titleLink: titleLink,
@@ -5519,7 +5517,8 @@ var Account = function Account(_ref) {
5519
5517
  iconName: iconName,
5520
5518
  withOptionsInMobile: false,
5521
5519
  withIcon: "left",
5522
- className: className
5520
+ className: className,
5521
+ tabLinkId: "account-link"
5523
5522
  });
5524
5523
  };
5525
5524
 
@@ -5938,6 +5937,7 @@ var Accordion = function Accordion(_ref) {
5938
5937
  var toggleAccordion = function toggleAccordion() {
5939
5938
  if (React__default.Children.count(children) === 0) return;
5940
5939
  if (openAccordion) {
5940
+ setIcon(collapsedStateIconData);
5941
5941
  setOpenAccordion(false);
5942
5942
  setTextHeight('0px');
5943
5943
  setIcon(collapsedStateIconData);
@@ -6466,1802 +6466,1859 @@ var Cards = function Cards(_ref) {
6466
6466
  }));
6467
6467
  };
6468
6468
 
6469
- var _templateObject$J, _templateObject2$x, _templateObject3$m, _templateObject4$j, _templateObject5$f, _templateObject6$a, _templateObject7$7;
6470
- var ContentWrapper = /*#__PURE__*/styled__default.div(_templateObject$J || (_templateObject$J = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n grid-column: 2 / span 12;\n }\n"])), devices.mobileAndTablet);
6471
- var Wrapper$2 = /*#__PURE__*/styled__default.div(_templateObject2$x || (_templateObject2$x = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n display: grid;\n grid-template-columns: var(--grid-template-columns);\n grid-template-rows: max-content;\n gap: var(--grid-column-gap);\n margin: 0;\n }\n"])), devices.mobileAndTablet);
6472
- var AddressWrapper = /*#__PURE__*/styled__default.div(_templateObject3$m || (_templateObject3$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 4px;\n"])));
6473
- var TitleWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject4$j || (_templateObject4$j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: baseline;\n gap: 3px;\n"])));
6474
- var MobileSuffixWrapper = /*#__PURE__*/styled__default.div(_templateObject5$f || (_templateObject5$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n\n @media ", " {\n display: block;\n }\n"])), devices.mobile);
6475
- var DesktopSuffixWrapper = /*#__PURE__*/styled__default.div(_templateObject6$a || (_templateObject6$a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: block;\n\n @media ", " {\n display: none;\n }\n"])), devices.mobile);
6476
- var DetailsWrapper = /*#__PURE__*/styled__default.div(_templateObject7$7 || (_templateObject7$7 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n a {\n font-family: var(--font-family-sans);\n font-weight: 400;\n font-size: 19px;\n line-height: 26px;\n letter-spacing: -0.5px;\n color: var(--color-base-black);\n text-decoration: underline;\n text-underline-offset: var(--harmonic-text-link-underline-offset);\n margin-right: 13px;\n display: inline-block;\n\n &:last-child {\n margin-right: 0;\n }\n\n @media ", " {\n font-size: 17px;\n line-height: 24px;\n }\n }\n"])), devices.mobile);
6469
+ var _templateObject$J, _templateObject2$x, _templateObject3$m, _templateObject4$j, _templateObject5$f, _templateObject6$a, _templateObject7$7, _templateObject8$4, _templateObject9$3, _templateObject0$3, _templateObject1$2, _templateObject10$2;
6470
+ var CastFiltersComponentWrapper = /*#__PURE__*/styled__default.div(_templateObject$J || (_templateObject$J = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n gap: 20px;\n\n @media ", " {\n flex-direction: column-reverse;\n gap: 15px;\n }\n"])), devices.mobile);
6471
+ var CastFiltersWrapper = /*#__PURE__*/styled__default.div(_templateObject2$x || (_templateObject2$x = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n gap: 32px;\n\n @media ", " {\n gap: 15px;\n }\n"])), devices.mobile);
6472
+ var HeadingTextWrapper = /*#__PURE__*/styled__default.div(_templateObject3$m || (_templateObject3$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 44px;\n display: flex;\n align-items: center;\n"])));
6473
+ var RotatorButtonsWrapper = /*#__PURE__*/styled__default(GridItem)(_templateObject4$j || (_templateObject4$j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n display: none;\n }\n"])), devices.mobile);
6474
+ var CastWrapper = /*#__PURE__*/styled__default.div(_templateObject5$f || (_templateObject5$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n gap: 20px;\n overflow-x: scroll;\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n ::-webkit-scrollbar {\n display: none;\n }\n\n @media ", " {\n flex-direction: column;\n gap: 10px;\n }\n"])), devices.mobile);
6475
+ var ActionButtons = /*#__PURE__*/styled__default.div(_templateObject6$a || (_templateObject6$a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n align-items: baseline;\n gap: 32px;\n\n .mobile-only {\n visibility: hidden;\n\n p {\n font-size: 14px;\n line-height: 17px;\n }\n }\n\n @media ", " {\n .mobile-only {\n visibility: visible;\n padding-block: 24px;\n font-size: 17px;\n line-height: 24px;\n }\n\n flex-direction: row-reverse;\n gap: unset;\n justify-content: space-between;\n border-block-end: 2px solid var(--base-color-light-grey);\n\n :has(.mobile-only) {\n justify-content: left;\n }\n\n :not(:has(.mobile-only)) {\n padding-block: 12px;\n }\n\n a {\n width: fit-content;\n }\n }\n"])), devices.mobile);
6476
+ var PersonWrapper = /*#__PURE__*/styled__default.div(_templateObject7$7 || (_templateObject7$7 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 6px;\n margin-block-start: 2px;\n margin-inline: 2px;\n\n p {\n font-size: 14px;\n line-height: 17px;\n }\n\n :focus-visible {\n outline: none;\n\n & > div:first-child {\n outline: 2px solid var(--color-base-black);\n }\n }\n\n @media ", " {\n flex-direction: row;\n gap: 20px;\n margin-block-end: 2px;\n margin-inline-end: unset;\n\n p {\n font-size: 17px;\n line-height: 24px;\n }\n }\n"])), devices.mobile);
6477
+ var PersonToggle = /*#__PURE__*/styled__default.div(_templateObject8$4 || (_templateObject8$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n width: 86px;\n height: 86px;\n min-width: 86px;\n border: 4px solid;\n border-color: ", ";\n border-radius: 50%;\n background: var(--color-base-white);\n position: relative;\n box-shadow: inset 0 0 0 4px var(--color-base-white);\n"])), function (_ref) {
6478
+ var isSelected = _ref.isSelected;
6479
+ return isSelected ? 'var(--color-primary-red)' : 'var(--color-base-light-grey)';
6480
+ });
6481
+ var PersonImage = /*#__PURE__*/styled__default.img(_templateObject9$3 || (_templateObject9$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n margin: 4px;\n object-fit: cover;\n border-radius: 50%;\n\n // This is really specific to the SVG that we have been provided\n // as a fallback person image. I don't think there's a simpler and\n // more general way to handle this, so if we're given a new placeholder\n // image later, we may have to change the scale here\n ", "\n"])), function (_ref2) {
6482
+ var isDefaultPlaceholder = _ref2.isDefaultPlaceholder;
6483
+ return isDefaultPlaceholder && "\n transform: scale(1.24);\n ";
6484
+ });
6485
+ var PersonName = /*#__PURE__*/styled__default.div(_templateObject0$3 || (_templateObject0$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n max-width: 86px;\n display: flex;\n flex-wrap: wrap;\n text-align: center;\n\n @media ", " {\n max-width: unset;\n text-align: left;\n font-size: 17px;\n line-height: 24px;\n }\n"])), devices.mobile);
6486
+ var Decal = /*#__PURE__*/styled__default.div(_templateObject1$2 || (_templateObject1$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 20px;\n height: 20px;\n border-radius: 50%;\n background: var(--color-primary-red);\n display: ", ";\n position: absolute;\n top: 6px;\n right: -6px;\n align-items: center;\n justify-content: center;\n\n span {\n display: ", ";\n width: 65%;\n height: 65%;\n }\n"])), function (_ref3) {
6487
+ var isSelected = _ref3.isSelected;
6488
+ return isSelected ? 'flex' : 'none';
6489
+ }, function (_ref4) {
6490
+ var isSelected = _ref4.isSelected;
6491
+ return isSelected ? 'flex' : 'none';
6492
+ });
6493
+ var EmptySelectionTextSpacer = /*#__PURE__*/styled__default.div(_templateObject10$2 || (_templateObject10$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n visibility: hidden;\n\n @media ", " {\n visibility: visible;\n min-height: var(--button-height);\n }\n"])), devices.mobile);
6477
6494
 
6478
- var ContactCard = function ContactCard(_ref) {
6479
- var title = _ref.title,
6480
- titleSuffix = _ref.titleSuffix,
6481
- description = _ref.description,
6482
- email = _ref.email,
6483
- phone = _ref.phone,
6484
- website = _ref.website,
6485
- address = _ref.address,
6486
- className = _ref.className;
6487
- var hasDetails = email || phone || website;
6488
- var addressString = address == null ? void 0 : address.substring(0, 110);
6489
- var descriptionText = description == null ? void 0 : description.substring(0, 110);
6490
- return /*#__PURE__*/React__default.createElement("div", {
6491
- className: className
6492
- }, /*#__PURE__*/React__default.createElement(Grid, null, /*#__PURE__*/React__default.createElement(GridItem, {
6493
- columnStartDesktop: 3,
6494
- columnSpanDesktop: 12,
6495
- columnStartDevice: 1,
6496
- columnSpanDevice: 14
6497
- }, /*#__PURE__*/React__default.createElement(Wrapper$2, {
6498
- "data-testid": "contact-card-wrapper"
6499
- }, /*#__PURE__*/React__default.createElement(ContentWrapper, null, /*#__PURE__*/React__default.createElement(TitleWrapper$1, null, /*#__PURE__*/React__default.createElement(HarmonicSubtitle, {
6500
- size: "large"
6501
- }, title), /*#__PURE__*/React__default.createElement(MobileSuffixWrapper, null, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
6502
- size: "small"
6503
- }, titleSuffix)), /*#__PURE__*/React__default.createElement(DesktopSuffixWrapper, null, /*#__PURE__*/React__default.createElement(HarmonicOverline, {
6504
- size: "small"
6505
- }, titleSuffix))), descriptionText && /*#__PURE__*/React__default.createElement(HarmonicSubtitle, {
6506
- size: "large"
6507
- }, descriptionText), hasDetails && (/*#__PURE__*/React__default.createElement(DetailsWrapper, {
6508
- "data-testid": "contact-card-details-block"
6509
- }, email && (/*#__PURE__*/React__default.createElement("a", {
6510
- tabIndex: 0,
6511
- href: "mailto:" + email
6512
- }, email)), phone && (/*#__PURE__*/React__default.createElement("a", {
6513
- tabIndex: 0,
6514
- href: "tel:" + phone
6515
- }, phone)), website && (/*#__PURE__*/React__default.createElement("a", {
6516
- tabIndex: 0,
6517
- href: website,
6518
- target: "_blank",
6519
- rel: "noreferrer"
6520
- }, website)))), addressString && (/*#__PURE__*/React__default.createElement("div", {
6521
- "data-testid": "contact-card-address-block"
6522
- }, /*#__PURE__*/React__default.createElement(AddressWrapper, null, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
6523
- size: "large"
6524
- }, addressString)))))))));
6525
- };
6495
+ var defaultPlaceholderImage = "data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23c9c9c9%3Bstroke%3A%23c9c9c9%3B%7D.cls-1%2C.cls-2%2C.cls-3%7Bstroke-miterlimit%3A10%3B%7D.cls-2%7Bfill-rule%3Aevenodd%3B%7D.cls-2%2C.cls-3%7Bfill%3A%2372767c%3Bstroke%3A%2372767c%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M50.42%2C89.58c21.86%2C0%2C39.58-17.72%2C39.58-39.58S72.28%2C10.42%2C50.42%2C10.42%2C10.83%2C28.14%2C10.83%2C50s17.72%2C39.58%2C39.58%2C39.58Z%22%2F%3E%3Cpath%20class%3D%22cls-2%22%20d%3D%22M50.4%2C89.58c10.88%2C0%2C20.75-4.42%2C27.92-11.54-4.96-10.46-15.58-17.71-27.92-17.71s-22.96%2C7.25-27.92%2C17.71c7.17%2C7.12%2C17%2C11.54%2C27.92%2C11.54Z%22%2F%3E%3Cpath%20class%3D%22cls-3%22%20d%3D%22M50.4%2C55.67c8.05%2C0%2C14.58-6.53%2C14.58-14.58s-6.53-14.58-14.58-14.58-14.58%2C6.53-14.58%2C14.58%2C6.53%2C14.58%2C14.58%2C14.58Z%22%2F%3E%3C%2Fsvg%3E";
6526
6496
 
6527
- var _templateObject$K, _templateObject2$y, _templateObject3$n, _templateObject4$k, _templateObject5$g, _templateObject6$b;
6528
- var BodyTextRelative = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject$K || (_templateObject$K = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n"])));
6529
- var ContentSummaryWrapper = /*#__PURE__*/styled__default.article(_templateObject2$y || (_templateObject2$y = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n position: relative;\n justify-items: start;\n align-items: center;\n margin: 20px 0;\n gap: 36px;\n cursor: ", ";\n\n @media ", " {\n display: flex;\n flex-direction: column;\n gap: 24px;\n }\n"])), function (props) {
6530
- return props.clickable ? 'pointer' : 'default';
6531
- }, devices.mobile);
6532
- var ContentSummaryImageWrapper = /*#__PURE__*/styled__default.div(_templateObject3$n || (_templateObject3$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n flex: 0 0 33.3%;\n"])));
6533
- var ContentSummaryTextWrapper = /*#__PURE__*/styled__default.div(_templateObject4$k || (_templateObject4$k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-column: ", ";\n display: flex;\n flex-direction: column;\n justify-content: space-around;\n gap: 20px;\n\n & * {\n margin-block-start: 0;\n margin-block-end: 0;\n }\n\n @media ", " {\n margin: 0 20px;\n }\n\n & .content-summary-text-link {\n height: unset;\n }\n"])), function (props) {
6534
- return props.showImage ? 2 : '1 / span 4';
6535
- }, devices.mobile);
6536
- var BodyTextLimit = /*#__PURE__*/styled__default.div(_templateObject5$g || (_templateObject5$g = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: block;\n position: relative;\n"])));
6537
- var ContentSummaryBodyTextWrapper = /*#__PURE__*/styled__default.div(_templateObject6$b || (_templateObject6$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n & p:not(:last-child):after {\n content: '\\A\\A';\n white-space: pre;\n }\n\n ", "\n"], ["\n & p:not(:last-child):after {\n content: '\\\\A\\\\A';\n white-space: pre;\n }\n\n ", "\n"])), function (props) {
6538
- return !!props.truncate && "\n overflow: hidden;\n position: relative;\n display: -webkit-box;\n -webkit-line-clamp: " + props.truncate + ";\n -webkit-box-orient: vertical;\n text-overflow: ellipsis;\n min-height: 1em;\n max-height: 3em;\n ";
6539
- });
6497
+ var _templateObject$K, _templateObject2$y;
6498
+ var SWIPE_SLIDE_CLASS_NAME = 'swipe-slide';
6499
+ var SwipeContainer = /*#__PURE__*/styled__default.div(_templateObject$K || (_templateObject$K = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n overflow: hidden;\n width: 100%;\n touch-action: pan-y;\n"])));
6500
+ var SwipeTrack = /*#__PURE__*/styled__default.div(_templateObject2$y || (_templateObject2$y = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n transition: ", ";\n transform: translateX(", ");\n\n .", " {\n flex-shrink: 0;\n }\n"])), function (_ref) {
6501
+ var transitioning = _ref.transitioning;
6502
+ return transitioning ? 'transform 0.3s ease' : 'none';
6503
+ }, function (_ref2) {
6504
+ var translateX = _ref2.translateX;
6505
+ return translateX + "px";
6506
+ }, SWIPE_SLIDE_CLASS_NAME);
6540
6507
 
6541
- /* eslint-disable no-shadow */
6542
- (function (CarouselType) {
6543
- CarouselType["Image"] = "image";
6544
- CarouselType["SmallCard"] = "SmallCard";
6545
- CarouselType["LargeCard"] = "LargeCard";
6546
- CarouselType["PersonCard"] = "PersonCard";
6547
- })(exports.CarouselType || (exports.CarouselType = {}));
6508
+ /**
6509
+ * Generates a random string in the format XXX-XXX.
6510
+ * Does not meet UUID standards.
6511
+ * To be used where only a small number of unique IDs are required, e.g. DOM element IDs.
6512
+ *
6513
+ * @return {string} A random string in the format XXX-XXX.
6514
+ */
6515
+ var generateDomElementId = function generateDomElementId() {
6516
+ var randomPart = Math.floor(100 + Math.random() * 900).toString();
6517
+ var datePart = Date.now().toString().slice(-3);
6518
+ return randomPart + "-" + datePart;
6519
+ };
6548
6520
 
6549
- var clickHandler = function clickHandler(link) {
6550
- if (link != null && link.href && document) {
6551
- document.location.href = link.href;
6552
- }
6521
+ var DISABLED_TABBING_TAGS = 'a, button';
6522
+ var disableTabbingInside = function disableTabbingInside(element, shouldDisable) {
6523
+ if (!element) return;
6524
+ var focusables = element.querySelectorAll(DISABLED_TABBING_TAGS);
6525
+ focusables.forEach(function (el) {
6526
+ if (shouldDisable) el.setAttribute('tabindex', '-1');
6527
+ });
6553
6528
  };
6554
- var ContentSummary = function ContentSummary(_ref) {
6555
- var title = _ref.title,
6556
- subtitle = _ref.subtitle,
6557
- bodyText = _ref.bodyText,
6558
- link = _ref.link,
6559
- image = _ref.image,
6560
- _ref$largeTitle = _ref.largeTitle,
6561
- largeTitle = _ref$largeTitle === void 0 ? false : _ref$largeTitle,
6562
- _ref$showImage = _ref.showImage,
6563
- showImage = _ref$showImage === void 0 ? false : _ref$showImage,
6564
- _ref$truncate = _ref.truncate,
6565
- truncate = _ref$truncate === void 0 ? 0 : _ref$truncate,
6566
- _ref$fullyClickable = _ref.fullyClickable,
6567
- fullyClickable = _ref$fullyClickable === void 0 ? true : _ref$fullyClickable,
6568
- _ref$headerSemanticLe = _ref.headerSemanticLevel,
6569
- headerSemanticLevel = _ref$headerSemanticLe === void 0 ? 'h3' : _ref$headerSemanticLe,
6570
- className = _ref.className;
6571
- return /*#__PURE__*/React__default.createElement(ContentSummaryWrapper, {
6572
- className: className,
6573
- onClick: function onClick() {
6574
- if (fullyClickable) {
6575
- clickHandler(link);
6576
- }
6577
- },
6578
- clickable: fullyClickable,
6579
- "data-roh": "content-summary-item"
6580
- }, showImage && image && (/*#__PURE__*/React__default.createElement(ContentSummaryImageWrapper, {
6581
- "data-testid": "image-wrapper"
6582
- }, link != null && link.href ? (/*#__PURE__*/React__default.createElement("a", {
6583
- href: link.href
6584
- }, /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
6585
- aspectRatio: exports.AspectRatio['4:3']
6586
- }, /*#__PURE__*/React__default.createElement("img", {
6587
- src: image.src,
6588
- alt: image.alt
6589
- })))) : (/*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
6590
- aspectRatio: exports.AspectRatio['4:3']
6591
- }, /*#__PURE__*/React__default.createElement("img", {
6592
- src: image.src,
6593
- alt: image.alt
6594
- }))))), /*#__PURE__*/React__default.createElement(ContentSummaryTextWrapper, {
6595
- showImage: showImage
6596
- }, title && (/*#__PURE__*/React__default.createElement("div", {
6597
- "data-testid": largeTitle ? 'large-title' : 'default-title'
6598
- }, largeTitle ? (/*#__PURE__*/React__default.createElement(HarmonicHeader, {
6599
- size: "large",
6600
- hierarchy: headerSemanticLevel
6601
- }, title)) : (/*#__PURE__*/React__default.createElement(HarmonicHeader, {
6602
- size: "medium",
6603
- hierarchy: headerSemanticLevel
6604
- }, title)))), subtitle && /*#__PURE__*/React__default.createElement(HarmonicSubtitle, {
6605
- size: "large"
6606
- }, subtitle), bodyText && (/*#__PURE__*/React__default.createElement(BodyTextRelative, {
6607
- size: "large"
6608
- }, /*#__PURE__*/React__default.createElement(BodyTextLimit, null, /*#__PURE__*/React__default.createElement(ContentSummaryBodyTextWrapper, {
6609
- truncate: truncate,
6610
- dangerouslySetInnerHTML: {
6611
- __html: bodyText
6612
- },
6613
- "data-testid": "body-text"
6614
- })))), (link == null ? void 0 : link.href) && link.text && (/*#__PURE__*/React__default.createElement(TertiaryButton, Object.assign({}, link, {
6615
- className: "content-summary-text-link"
6616
- }), link.text))));
6529
+ var isCloneSlide = function isCloneSlide(index, clonesCount, childrenLength, infinite) {
6530
+ return infinite && (index < clonesCount || index >= childrenLength + clonesCount);
6617
6531
  };
6618
-
6619
- var _templateObject$L, _templateObject2$z, _templateObject3$o, _templateObject4$l, _templateObject5$h;
6620
- var EditorialGrid = /*#__PURE__*/styled__default.div(_templateObject$L || (_templateObject$L = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: grid;\n grid-template-columns: repeat(12, minmax(0, 1fr));\n gap: var(--grid-column-gap);\n grid-template-areas: ", ";\n\n @media ", " {\n & {\n display: grid;\n grid-template-columns: 100%;\n grid-template-rows: min-content 24px min-content;\n grid-template-areas:\n 'row1'\n '.'\n 'row2';\n }\n }\n"])), function (_ref) {
6621
- var imageToLeft = _ref.imageToLeft;
6622
- return imageToLeft ? "'left left left left left . right right right right right right'" : "'left left left left left left . right right right right right'";
6623
- }, devices.mobile);
6624
- var EditorialImageWrapper = /*#__PURE__*/styled__default.div(_templateObject2$z || (_templateObject2$z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n align-self: center;\n grid-area: ", ";\n @media ", " {\n & {\n grid-area: row1;\n }\n"])), function (_ref2) {
6625
- var imageToLeft = _ref2.imageToLeft;
6626
- return imageToLeft ? 'left' : 'right';
6627
- }, devices.mobile);
6628
- var EditorialTextWrapper = /*#__PURE__*/styled__default.div(_templateObject3$o || (_templateObject3$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: ", ";\n align-self: center;\n @media ", " {\n & {\n grid-area: row2;\n align-self: start;\n }\n"])), function (_ref3) {
6629
- var imageToLeft = _ref3.imageToLeft;
6630
- return imageToLeft ? 'right' : 'left';
6631
- }, devices.mobile);
6632
- var EditorialSubtitle = /*#__PURE__*/styled__default(HarmonicSubtitle)(_templateObject4$l || (_templateObject4$l = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-feature-settings: var(--font-feature-settings-subtitle);\n text-transform: var(--text-transform-subtitle);\n margin-bottom: var(--editorial-subtitle-margin-bottom);\n display: block;\n overflow-wrap: break-word;\n"])));
6633
- var EditorialText = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject5$h || (_templateObject5$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-feature-settings: var(--font-feature-settings-body);\n text-transform: var(--text-transform-body);\n margin: 0;\n padding: 0;\n white-space: break-spaces;\n overflow-wrap: break-word;\n\n em {\n font-family: var(--font-family-body-italics);\n }\n"])));
6634
-
6635
- var Editorial = function Editorial(_ref) {
6636
- var _ref$imagePosition = _ref.imagePosition,
6637
- imagePosition = _ref$imagePosition === void 0 ? 'left' : _ref$imagePosition,
6638
- subtitle = _ref.subtitle,
6639
- text = _ref.text,
6640
- children = _ref.children,
6641
- className = _ref.className;
6642
- var imageToLeft = imagePosition === 'left';
6643
- return /*#__PURE__*/React__default.createElement(Grid, {
6644
- className: className,
6645
- "data-testid": "editorial-component"
6646
- }, /*#__PURE__*/React__default.createElement(GridItem, {
6647
- columnStartDesktop: 3,
6648
- columnSpanDesktop: 12,
6649
- columnStartDevice: 2,
6650
- columnSpanDevice: 12
6651
- }, /*#__PURE__*/React__default.createElement(EditorialGrid, {
6652
- imageToLeft: imageToLeft
6653
- }, /*#__PURE__*/React__default.createElement(EditorialImageWrapper, {
6654
- "data-testid": "image-wrapper",
6655
- imageToLeft: imageToLeft
6656
- }, /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
6657
- aspectRatio: exports.AspectRatio['1:1']
6658
- }, children)), /*#__PURE__*/React__default.createElement(EditorialTextWrapper, {
6659
- "data-testid": "text-wrapper",
6660
- imageToLeft: imageToLeft
6661
- }, subtitle ? /*#__PURE__*/React__default.createElement(EditorialSubtitle, {
6662
- tag: "span"
6663
- }, subtitle) : null, /*#__PURE__*/React__default.createElement(EditorialText, {
6664
- tag: "div",
6665
- size: "large",
6666
- dangerouslySetInnerHTML: {
6667
- __html: text
6532
+ var getVisibleIndexes = function getVisibleIndexes(currentIndex, slideWidths, containerWidth, slidesLength) {
6533
+ var widthSoFar = 0;
6534
+ var visible = [];
6535
+ for (var i = currentIndex; i < slidesLength; i++) {
6536
+ var _slideWidths$i;
6537
+ var width = (_slideWidths$i = slideWidths[i]) != null ? _slideWidths$i : 0;
6538
+ if (widthSoFar + width > containerWidth) break;
6539
+ visible.push(i);
6540
+ widthSoFar += width;
6541
+ }
6542
+ return visible;
6543
+ };
6544
+ var getMovedSlides = function getMovedSlides(delta, slideWidths) {
6545
+ var absDelta = Math.abs(delta);
6546
+ var movedSlides = 0;
6547
+ var accumulated = 0;
6548
+ for (var i = 0; i < slideWidths.length; i++) {
6549
+ accumulated += slideWidths[i];
6550
+ // Allow partial slide (e.g. 50% of next slide) to count
6551
+ var partialThreshold = slideWidths[i] * 0.5;
6552
+ if (absDelta > accumulated - partialThreshold) {
6553
+ movedSlides++;
6554
+ } else {
6555
+ break;
6668
6556
  }
6669
- })))));
6557
+ }
6558
+ return movedSlides;
6670
6559
  };
6671
6560
 
6672
- var _templateObject$M, _templateObject2$A, _templateObject3$p;
6673
- var HotFiltersWrapper = /*#__PURE__*/styled__default.div(_templateObject$M || (_templateObject$M = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow-x: scroll;\n\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n ::-webkit-scrollbar {\n display: none;\n }\n"])));
6674
- var HotFilterOptionsWrapper = /*#__PURE__*/styled__default.div(_templateObject2$A || (_templateObject2$A = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n width: fit-content;\n min-width: 400px;\n justify-content: space-between;\n gap: 16px;\n font-family: var(--font-family-sans);\n\n @media ", " {\n gap: 10px;\n }\n"])), devices.mobile);
6675
- var StyledHotFiltersButton = /*#__PURE__*/styled__default(PrimaryButton)(_templateObject3$p || (_templateObject3$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n border: 1px solid var(--color-base-black);\n min-width: fit-content;\n\n :hover {\n color: var(--color-base-white);\n }\n"])));
6676
-
6677
- var _excluded$h = ["text", "onClick"];
6678
- var HotFilters = function HotFilters(_ref) {
6679
- var items = _ref.items,
6680
- className = _ref.className,
6681
- _ref$selectedIndex = _ref.selectedIndex,
6682
- selectedIndex = _ref$selectedIndex === void 0 ? 0 : _ref$selectedIndex,
6683
- onSelect = _ref.onSelect;
6684
- var handleClick = React__default.useCallback(function (index, onClick) {
6685
- if (onSelect) onSelect(index);
6686
- if (onClick) onClick();
6687
- }, [onSelect]);
6688
- return /*#__PURE__*/React__default.createElement(HotFiltersWrapper, {
6689
- className: className
6690
- }, /*#__PURE__*/React__default.createElement(HotFilterOptionsWrapper, null, items.map(function (item, index) {
6691
- var text = item.text,
6692
- _onClick = item.onClick,
6693
- rest = _objectWithoutPropertiesLoose(item, _excluded$h);
6694
- var isSelected = index === selectedIndex;
6695
- return /*#__PURE__*/React__default.createElement(StyledHotFiltersButton, Object.assign({
6696
- key: index,
6697
- onClick: function onClick() {
6698
- return handleClick(index, _onClick);
6699
- },
6700
- iconName: isSelected ? 'Confirm' : undefined,
6701
- backgroundColor: isSelected ? 'base-black' : 'base-white',
6702
- textColor: isSelected ? 'base-white' : 'base-black',
6703
- hoveredColor: "base-black",
6704
- pressedColor: "black-pressed",
6705
- "aria-pressed": isSelected
6706
- }, rest), text);
6707
- })));
6708
- };
6709
-
6710
- var InformationCtaVariants = {
6711
- Primary: 'Primary',
6712
- Secondary: 'Secondary',
6713
- Tertiary: 'Tertiary',
6714
- TextLink: 'TextLink'
6715
- };
6716
-
6717
- var COLORS$4 = {
6718
- "default": 'var(--information-panel-button-color)',
6719
- background: 'var(--information-panel-button-bg-color)',
6720
- hover: 'var(--information-panel-button-hover-color)',
6721
- pressed: 'var(--information-panel-button-pressed-color)'
6722
- };
6723
- var getTextColor$4 = function getTextColor(variant, theme, colorValue) {
6724
- if (theme === exports.ThemeType.Cinema && (variant === InformationCtaVariants.Tertiary || variant === InformationCtaVariants.TextLink)) {
6725
- return 'var(--color-primary-black)';
6726
- }
6727
- if (variant === InformationCtaVariants.Primary) {
6728
- return COLORS$4["default"];
6729
- }
6730
- return colorValue;
6731
- };
6732
- var getBackgroundColor$2 = function getBackgroundColor(variant, colorValue) {
6733
- return variant === InformationCtaVariants.Primary || variant === undefined ? "background-color: " + colorValue + ";" : '';
6734
- };
6735
- var getBorderColor$1 = function getBorderColor(variant, colorValue) {
6736
- return variant === InformationCtaVariants.Primary || variant === InformationCtaVariants.Secondary || variant === undefined ? "border-color: " + colorValue + ";" : '';
6737
- };
6738
-
6739
- var _templateObject$N, _templateObject2$B, _templateObject3$q, _templateObject4$m;
6740
- var InfoWrapper = /*#__PURE__*/styled__default(Grid)(_templateObject$N || (_templateObject$N = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 60px 0;\n color: var(--information-panel-color);\n background-color: var(--information-panel-bg-color);\n\n @media ", " {\n padding: 40px 0;\n }\n"])), devices.mobile);
6741
- var InfoTitle = /*#__PURE__*/styled__default('div')(_templateObject2$B || (_templateObject2$B = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n * {\n margin-block: 0;\n }\n"])));
6742
- var InfoCTAWrapper = /*#__PURE__*/styled__default('div')(_templateObject3$q || (_templateObject3$q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n\n @media ", " {\n margin-top: 16px;\n }\n\n a {\n color: ", ";\n ", "\n ", "\n\n svg path {\n fill: ", ";\n }\n\n :hover:not(:active) {\n color: ", ";\n ", "\n ", "\n\n svg path {\n fill: ", ";\n }\n }\n\n :active {\n color: ", ";\n ", "\n ", "\n\n svg path {\n fill: ", ";\n }\n }\n }\n"])), devices.mobile, function (_ref) {
6743
- var variant = _ref.variant,
6744
- theme = _ref.theme;
6745
- return getTextColor$4(variant, theme, COLORS$4.background);
6746
- }, function (_ref2) {
6747
- var variant = _ref2.variant;
6748
- return getBackgroundColor$2(variant, COLORS$4.background);
6749
- }, function (_ref3) {
6750
- var variant = _ref3.variant;
6751
- return getBorderColor$1(variant, COLORS$4.background);
6752
- }, function (_ref4) {
6753
- var variant = _ref4.variant,
6754
- theme = _ref4.theme;
6755
- return getTextColor$4(variant, theme, COLORS$4.background);
6756
- }, function (_ref5) {
6757
- var variant = _ref5.variant,
6758
- theme = _ref5.theme;
6759
- return getTextColor$4(variant, theme, COLORS$4.hover);
6760
- }, function (_ref6) {
6761
- var variant = _ref6.variant;
6762
- return getBackgroundColor$2(variant, COLORS$4.hover);
6763
- }, function (_ref7) {
6764
- var variant = _ref7.variant;
6765
- return getBorderColor$1(variant, COLORS$4.hover);
6766
- }, function (_ref8) {
6767
- var variant = _ref8.variant,
6768
- theme = _ref8.theme;
6769
- return getTextColor$4(variant, theme, COLORS$4.hover);
6770
- }, function (_ref9) {
6771
- var variant = _ref9.variant,
6772
- theme = _ref9.theme;
6773
- return getTextColor$4(variant, theme, COLORS$4.pressed);
6774
- }, function (_ref0) {
6775
- var variant = _ref0.variant;
6776
- return getBackgroundColor$2(variant, COLORS$4.pressed);
6777
- }, function (_ref1) {
6778
- var variant = _ref1.variant;
6779
- return getBorderColor$1(variant, COLORS$4.pressed);
6780
- }, function (_ref10) {
6781
- var variant = _ref10.variant,
6782
- theme = _ref10.theme;
6783
- return getTextColor$4(variant, theme, COLORS$4.pressed);
6784
- });
6785
- var InfoBodyWrapper = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject4$m || (_templateObject4$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--information-panel-color);\n\n a {\n text-decoration: underline;\n text-underline-offset: var(--harmonic-text-link-underline-offset);\n color: var(--information-panel-color);\n }\n\n @media ", " {\n padding-top: 4px;\n }\n"])), devices.mobile);
6786
-
6787
- var coreThemeStyles = {"coreTheme":"core-theme-module_coreTheme__pWxYB"};
6788
-
6789
- var streamThemeStyles = {"streamTheme":"stream-theme-module_streamTheme__lTfqQ"};
6790
-
6791
- var cinemaThemeStyles = {"cinemaTheme":"cinema-theme-module_cinemaTheme__f5QFs"};
6792
-
6793
- var schoolsThemeStyles = {"schoolsTheme":"schools-theme-module_schoolsTheme__CWHba"};
6794
-
6795
- /* eslint-disable react/jsx-no-useless-fragment */
6796
- var DEFAULT_THEME = exports.ThemeType.Core;
6797
- var getThemeClass = function getThemeClass(theme) {
6798
- // Always include the base (core) theme class
6799
- var baseThemeClass = coreThemeStyles.coreTheme;
6800
- var overrideClass = '';
6801
- switch (theme) {
6802
- case exports.ThemeType.Core:
6803
- overrideClass = '';
6804
- break;
6805
- case exports.ThemeType.Stream:
6806
- overrideClass = streamThemeStyles.streamTheme;
6807
- break;
6808
- case exports.ThemeType.Cinema:
6809
- overrideClass = cinemaThemeStyles.cinemaTheme;
6810
- break;
6811
- case exports.ThemeType.Schools:
6812
- overrideClass = schoolsThemeStyles.schoolsTheme;
6813
- break;
6814
- default:
6815
- overrideClass = '';
6816
- }
6817
- // Return the combined classes
6818
- return [baseThemeClass, overrideClass].filter(Boolean).join(' ');
6819
- };
6820
- var HarmonicThemeContext = /*#__PURE__*/React__default.createContext(DEFAULT_THEME);
6821
- var useHarmonicTheme = function useHarmonicTheme() {
6822
- return React__default.useContext(HarmonicThemeContext);
6823
- };
6824
- var HarmonicThemeProvider = function HarmonicThemeProvider(_ref) {
6825
- var _ref$theme = _ref.theme,
6826
- theme = _ref$theme === void 0 ? DEFAULT_THEME : _ref$theme,
6827
- children = _ref.children;
6828
- var themeClass = getThemeClass(theme);
6829
- // Convert children to an array (assuming they accept a className prop)
6830
- var childrenArray = React__default.Children.toArray(children);
6831
- var themedChildren = childrenArray.map(function (child) {
6832
- return /*#__PURE__*/React__default.cloneElement(child, {
6833
- className: ((child.props.className || '') + " " + themeClass).trim()
6834
- });
6835
- });
6836
- return /*#__PURE__*/React__default.createElement(HarmonicThemeContext.Provider, {
6837
- value: theme
6838
- }, themedChildren.length === 1 ? themedChildren[0] : /*#__PURE__*/React__default.createElement(React__default.Fragment, null, themedChildren));
6839
- };
6840
-
6841
- // Helper function for rendering buttons based on the variant
6842
- var renderButton = function renderButton(_ref) {
6843
- var variant = _ref.variant,
6844
- link = _ref.link,
6845
- text = _ref.text,
6846
- iconName = _ref.iconName,
6847
- iconDirection = _ref.iconDirection,
6848
- target = _ref.target;
6849
- switch (variant) {
6850
- case InformationCtaVariants.Secondary:
6851
- return /*#__PURE__*/React__default.createElement(SecondaryButton, {
6852
- href: link,
6853
- iconName: iconName,
6854
- iconDirection: iconDirection,
6855
- target: target,
6856
- "aria-label": text
6857
- }, text);
6858
- case InformationCtaVariants.Tertiary:
6859
- return /*#__PURE__*/React__default.createElement(TertiaryButton, {
6860
- href: link,
6861
- target: target,
6862
- "aria-label": text
6863
- }, text);
6864
- case InformationCtaVariants.TextLink:
6865
- return /*#__PURE__*/React__default.createElement(TextLink, {
6866
- href: link,
6867
- iconName: iconName,
6868
- iconDirection: iconDirection,
6869
- target: target,
6870
- "aria-label": text
6871
- }, text);
6872
- default:
6873
- return /*#__PURE__*/React__default.createElement(PrimaryButton, {
6874
- href: link,
6875
- iconName: iconName,
6876
- iconDirection: iconDirection,
6877
- target: target,
6878
- "aria-label": text
6879
- }, text);
6880
- }
6881
- };
6882
- var InfoCta = function InfoCta(_ref2) {
6883
- var _ref2$variant = _ref2.variant,
6884
- variant = _ref2$variant === void 0 ? InformationCtaVariants.Primary : _ref2$variant,
6885
- link = _ref2.link,
6886
- text = _ref2.text,
6887
- iconName = _ref2.iconName,
6888
- iconDirection = _ref2.iconDirection,
6889
- _ref2$target = _ref2.target,
6890
- target = _ref2$target === void 0 ? LinkTarget.Self : _ref2$target;
6891
- var theme = useHarmonicTheme();
6892
- return /*#__PURE__*/React__default.createElement(InfoCTAWrapper, {
6893
- variant: variant,
6894
- theme: theme
6895
- }, renderButton({
6896
- variant: variant,
6897
- link: link,
6898
- text: text,
6899
- iconName: iconName,
6900
- iconDirection: iconDirection,
6901
- target: target
6902
- }));
6561
+ var _excluded$h = ["children", "infinite", "onIndexChange", "slidesOffsetBefore", "slidesAriaHidden", "onActiveChange", "onOverflowChange"];
6562
+ var MAX_CLONES_NUMBER = 6;
6563
+ var CLICK_DRAG_THRESHOLD = 10;
6564
+ var getClonesCount = function getClonesCount(infinite, childrenLength) {
6565
+ if (!infinite) return 0;
6566
+ return Math.min(childrenLength, MAX_CLONES_NUMBER);
6903
6567
  };
6904
-
6905
- /* eslint-disable react/no-danger */
6906
- var defaultColumnSpan = 6;
6907
- var smallColumnSpan = 4;
6908
- var largeColumnSpan = 9;
6909
- var mediumWordBreakpoint = 8;
6910
- var longWordBreakpoint = 13;
6911
- var getColumnSpan = function getColumnSpan(longestWordLength) {
6912
- if (longestWordLength > longWordBreakpoint) return largeColumnSpan;
6913
- if (longestWordLength < mediumWordBreakpoint) return smallColumnSpan;
6914
- return defaultColumnSpan;
6568
+ var getSlidedWidth = function getSlidedWidth(slide) {
6569
+ if (!slide) return 0;
6570
+ var style = window.getComputedStyle(slide);
6571
+ var marginLeft = parseFloat(style.marginLeft) || 0;
6572
+ var marginRight = parseFloat(style.marginRight) || 0;
6573
+ return slide.getBoundingClientRect().width + marginLeft + marginRight;
6915
6574
  };
6916
- var Information = function Information(_ref) {
6917
- var body = _ref.body,
6918
- title = _ref.title,
6919
- cta = _ref.cta,
6920
- className = _ref.className;
6921
- var _useViewport = useViewport(),
6922
- hydrated = _useViewport.hydrated;
6923
- var safeTitle = title || {
6924
- text: '',
6925
- textSize: 'medium'
6926
- }; // Provide a fallback
6927
- var titleWords = safeTitle.text.split(' ');
6928
- var titleWordLengths = titleWords.map(function (word) {
6929
- return word.length;
6930
- });
6931
- var maxTitleWordLength = Math.max.apply(Math, titleWordLengths);
6932
- var titleColumnSpan = getColumnSpan(maxTitleWordLength);
6933
- if (!hydrated) return null;
6934
- return /*#__PURE__*/React__default.createElement(InfoWrapper, {
6935
- "data-testid": "infoWrapper",
6936
- className: className
6937
- }, /*#__PURE__*/React__default.createElement(GridItem, {
6938
- columnStartDesktop: 2,
6939
- columnStartDevice: 2,
6940
- columnSpanDesktop: titleColumnSpan,
6941
- columnSpanDevice: 12
6942
- }, /*#__PURE__*/React__default.createElement(InfoTitle, null, /*#__PURE__*/React__default.createElement(HarmonicHeader, {
6943
- hierarchy: "h2",
6944
- size: safeTitle.textSize,
6945
- color: "inherit"
6946
- }, safeTitle.text))), /*#__PURE__*/React__default.createElement(GridItem, {
6947
- columnStartDesktop: titleColumnSpan + 2,
6948
- columnStartDevice: 2,
6949
- columnSpanDesktop: 14 - titleColumnSpan,
6950
- columnSpanDevice: 12
6951
- }, /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(InfoBodyWrapper, null, /*#__PURE__*/React__default.createElement("span", {
6952
- dangerouslySetInnerHTML: {
6953
- __html: body
6575
+ var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
6576
+ var children = _ref.children,
6577
+ _ref$infinite = _ref.infinite,
6578
+ infinite = _ref$infinite === void 0 ? false : _ref$infinite,
6579
+ onIndexChange = _ref.onIndexChange,
6580
+ _ref$slidesOffsetBefo = _ref.slidesOffsetBefore,
6581
+ slidesOffsetBefore = _ref$slidesOffsetBefo === void 0 ? 0 : _ref$slidesOffsetBefo,
6582
+ _ref$slidesAriaHidden = _ref.slidesAriaHidden,
6583
+ slidesAriaHidden = _ref$slidesAriaHidden === void 0 ? false : _ref$slidesAriaHidden,
6584
+ onActiveChange = _ref.onActiveChange,
6585
+ onOverflowChange = _ref.onOverflowChange,
6586
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$h);
6587
+ var containerRef = React.useRef(null);
6588
+ var childRefs = React.useRef([]);
6589
+ var startX = React.useRef(0);
6590
+ var currentTranslate = React.useRef(0);
6591
+ var isDragging = React.useRef(false);
6592
+ var isMouseDown = React.useRef(false);
6593
+ var isActive = React.useRef(false);
6594
+ var isClickPrevented = React.useRef(false);
6595
+ var uniqueIdRef = React.useRef(generateDomElementId());
6596
+ var _useState = React.useState(null),
6597
+ dragTranslateX = _useState[0],
6598
+ setDragTranslateX = _useState[1];
6599
+ var _useState2 = React.useState(false),
6600
+ transitioning = _useState2[0],
6601
+ setTransitioning = _useState2[1];
6602
+ var _useState3 = React.useState([]),
6603
+ slideWidths = _useState3[0],
6604
+ setSlideWidths = _useState3[1];
6605
+ var _useState4 = React.useState(0),
6606
+ containerWidth = _useState4[0],
6607
+ setContainerWidth = _useState4[1];
6608
+ var _useMemo = React.useMemo(function () {
6609
+ var count = getClonesCount(infinite, children.length);
6610
+ var leftClones = infinite ? children.slice(-count) : [];
6611
+ var rightClones = infinite ? children.slice(0, count) : [];
6612
+ var allSlides = infinite ? [].concat(leftClones, children, rightClones) : children;
6613
+ return {
6614
+ slides: allSlides,
6615
+ clonesCount: count
6616
+ };
6617
+ }, [children, infinite]),
6618
+ slides = _useMemo.slides,
6619
+ clonesCount = _useMemo.clonesCount;
6620
+ var _useState5 = React.useState(infinite ? clonesCount : 0),
6621
+ currentIndex = _useState5[0],
6622
+ setCurrentIndex = _useState5[1];
6623
+ React.useEffect(function () {
6624
+ var handler = function handler(e) {
6625
+ if (isClickPrevented.current) {
6626
+ e.preventDefault();
6627
+ e.stopPropagation();
6628
+ }
6629
+ };
6630
+ var containerElement = containerRef.current;
6631
+ containerElement == null || containerElement.addEventListener('click', handler, true);
6632
+ return function () {
6633
+ return containerElement == null ? void 0 : containerElement.removeEventListener('click', handler, true);
6634
+ };
6635
+ }, []);
6636
+ React.useEffect(function () {
6637
+ if (!onIndexChange) return;
6638
+ if (!infinite) {
6639
+ onIndexChange(currentIndex);
6640
+ } else {
6641
+ var offset = currentIndex - clonesCount + children.length;
6642
+ var realIndex = offset % children.length;
6643
+ onIndexChange(realIndex);
6954
6644
  }
6955
- })), cta && (/*#__PURE__*/React__default.createElement(InfoCta, {
6956
- link: cta.link,
6957
- variant: cta.variant,
6958
- text: cta.text,
6959
- iconName: cta.iconName,
6960
- iconDirection: cta.iconDirection,
6961
- target: cta.target
6962
- })))));
6963
- };
6964
-
6965
- var _templateObject$O, _templateObject2$C, _templateObject3$r, _templateObject4$n, _templateObject5$i, _templateObject6$c, _templateObject7$8, _templateObject8$4;
6966
- var PageHeadingWrapper = /*#__PURE__*/styled__default('div')(_templateObject$O || (_templateObject$O = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding-bottom: 80px;\n background-color: var(--page-header-bg-color);\n color: var(--color-base-white);\n\n ", ";\n\n h1,\n h2,\n h3 {\n margin: 0;\n padding: 0;\n }\n\n @media ", " {\n padding-bottom: 0;\n }\n"])), function (_ref) {
6967
- var isPageHeadingWithoutTitle = _ref.isPageHeadingWithoutTitle;
6968
- return isPageHeadingWithoutTitle && "\n padding-bottom: 42px;\n ";
6969
- }, devices.mobile);
6970
- var PageHeadingGrid = /*#__PURE__*/styled__default(Grid)(_templateObject2$C || (_templateObject2$C = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 0 var(--grid-column-gap);\n grid-template-rows: min-content min-content;\n grid-template-areas:\n '. . title title title title title title title title title title . . logo .'\n '. . text text text text text text text text text button button button . .';\n\n @media ", " {\n & {\n grid-template-rows: 20px min-content min-content min-content 20px;\n grid-template-areas:\n '. . . . . . . . . . . . . .'\n '. title title title title title title title title title title logo logo .'\n '. text text text text text text text text text text text text .'\n '. button button button button button button button button button button button button .'\n '. . . . . . . . . . . . . .';\n }\n }\n\n @media ", " {\n & {\n grid-template-areas:\n '. title title title title title title title title title title logo logo .'\n '. text text text text text text text text text button button button .';\n }\n }\n"])), devices.mobile, devices.tablet);
6971
- var BadgeWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject3$r || (_templateObject3$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 35px;\n padding-bottom: 20px;\n\n ", ";\n"])), function (_ref2) {
6972
- var isPageHeadingWithoutTitle = _ref2.isPageHeadingWithoutTitle;
6973
- return isPageHeadingWithoutTitle && "\n height: 50px;\n padding-bottom: 0;\n margin: 10px 0;\n ";
6974
- });
6975
- var TitleWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject4$n || (_templateObject4$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: title;\n margin-top: 80px;\n\n ", ";\n\n @media ", " {\n & {\n margin-top: 0;\n }\n }\n"])), function (_ref3) {
6976
- var isPageHeadingWithoutTitle = _ref3.isPageHeadingWithoutTitle;
6977
- return isPageHeadingWithoutTitle && "\n margin-top: 42px;\n ";
6978
- }, devices.mobile);
6979
- var ChildrenWrapper = /*#__PURE__*/styled__default.div(_templateObject5$i || (_templateObject5$i = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-bottom: 20px;\n width: fit-content;\n height: 43px;\n\n ", ";\n\n @media ", " {\n & {\n height: 33px;\n margin-top: 10px;\n margin-bottom: 20px;\n }\n }\n"])), function (_ref4) {
6980
- var isPageHeadingWithoutTitle = _ref4.isPageHeadingWithoutTitle;
6981
- return isPageHeadingWithoutTitle && "\n margin: 10px 0;\n ";
6982
- }, devices.mobile);
6983
- var TextWrapper = /*#__PURE__*/styled__default.div(_templateObject6$c || (_templateObject6$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--color-base-white);\n grid-area: text;\n align-self: end;\n margin-top: 12px;\n\n h6 {\n margin: 0;\n padding: 0;\n }\n"])));
6984
- var LogoWrapper = /*#__PURE__*/styled__default.div(_templateObject7$8 || (_templateObject7$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: logo;\n justify-self: end;\n margin-top: 20px;\n position: relative;\n\n > div {\n position: absolute;\n top: 0;\n right: 0;\n }\n\n ", ";\n\n @media ", " {\n & {\n align-self: start;\n margin-top: 0;\n\n ", ";\n }\n }\n"])), function (_ref5) {
6985
- var isPageHeadingWithoutTitle = _ref5.isPageHeadingWithoutTitle;
6986
- return isPageHeadingWithoutTitle && "\n margin-top: 40px;\n ";
6987
- }, devices.mobile, function (_ref6) {
6988
- var isPageHeadingWithoutTitle = _ref6.isPageHeadingWithoutTitle;
6989
- return isPageHeadingWithoutTitle && "\n margin-top: 15px;\n ";
6990
- });
6991
- var ButtonWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject8$4 || (_templateObject8$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: button;\n justify-self: end;\n align-self: end;\n\n @media ", " {\n & {\n justify-self: center;\n align-self: center;\n width: 100%;\n margin-top: 16px;\n }\n }\n"])), devices.mobile);
6992
-
6993
- var PageHeading = function PageHeading(_ref) {
6994
- var title = _ref.title,
6995
- hierarchy = _ref.hierarchy,
6996
- text = _ref.text,
6997
- link = _ref.link,
6998
- _ref$sponsor = _ref.sponsor,
6999
- sponsor = _ref$sponsor === void 0 ? false : _ref$sponsor,
7000
- children = _ref.children,
7001
- className = _ref.className,
7002
- showBadge = _ref.showBadge,
7003
- theme = _ref.theme;
7004
- var themedLink = link && _extends({}, link, {
7005
- textColor: ThemeColor['base-black'],
7006
- backgroundColor: ThemeColor['base-white'],
7007
- hoveredColor: ThemeColor['white-hovered'],
7008
- pressedColor: ThemeColor['white-pressed']
7009
- });
7010
- var linkText = themedLink == null ? void 0 : themedLink.text;
7011
- var isTitleUnAvailable = !title;
7012
- var renderBadge = function renderBadge(currentTheme) {
7013
- if (!showBadge) return null;
7014
- switch (currentTheme) {
7015
- case exports.ThemeType.Cinema:
7016
- return /*#__PURE__*/React__default.createElement(BadgeWrapper$1, {
7017
- isPageHeadingWithoutTitle: isTitleUnAvailable
7018
- }, /*#__PURE__*/React__default.createElement(CinemaBadge, {
7019
- align: "left"
7020
- }));
7021
- case exports.ThemeType.Stream:
7022
- return /*#__PURE__*/React__default.createElement(BadgeWrapper$1, {
7023
- isPageHeadingWithoutTitle: isTitleUnAvailable
7024
- }, /*#__PURE__*/React__default.createElement(StreamBadge, {
7025
- align: "left"
7026
- }));
7027
- default:
7028
- return null;
6645
+ }, [currentIndex, onIndexChange, infinite, children.length, clonesCount]);
6646
+ var updateDimensions = React.useCallback(function () {
6647
+ var cw = containerRef.current ? containerRef.current.offsetWidth : 0;
6648
+ var widths = childRefs.current.length ? childRefs.current.map(getSlidedWidth) : [];
6649
+ setContainerWidth(cw);
6650
+ setSlideWidths(widths);
6651
+ if (!infinite) {
6652
+ var totalWidth = widths.reduce(function (acc, w) {
6653
+ return acc + w;
6654
+ }, 0);
6655
+ var visibleSpace = cw - (slidesOffsetBefore || 0);
6656
+ var overflow = totalWidth > Math.max(0, visibleSpace);
6657
+ onOverflowChange == null || onOverflowChange(overflow);
7029
6658
  }
7030
- };
7031
- return /*#__PURE__*/React__default.createElement(PageHeadingWrapper, {
7032
- className: className,
7033
- "data-testid": "page-heading-wrapper",
7034
- isPageHeadingWithoutTitle: isTitleUnAvailable
7035
- }, /*#__PURE__*/React__default.createElement(PageHeadingGrid, null, /*#__PURE__*/React__default.createElement(TitleWrapper$2, {
7036
- "data-testid": "page-heading-title",
7037
- isPageHeadingWithoutTitle: isTitleUnAvailable
7038
- }, renderBadge(theme), children ? (/*#__PURE__*/React__default.createElement(ChildrenWrapper, {
7039
- isPageHeadingWithoutTitle: isTitleUnAvailable
7040
- }, children)) : null, !isTitleUnAvailable && (/*#__PURE__*/React__default.createElement(HarmonicHeader, {
7041
- color: "white",
7042
- size: "large",
7043
- hierarchy: hierarchy
7044
- }, title))), text ? (/*#__PURE__*/React__default.createElement(TextWrapper, {
7045
- "data-testid": "page-heading-text"
7046
- }, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
7047
- tag: "div",
7048
- color: "white",
7049
- size: "large",
7050
- dangerouslySetInnerHTML: {
7051
- __html: text
6659
+ }, []);
6660
+ React.useEffect(function () {
6661
+ var animationFrameRequestId = requestAnimationFrame(updateDimensions);
6662
+ return function () {
6663
+ return cancelAnimationFrame(animationFrameRequestId);
6664
+ };
6665
+ }, [children]);
6666
+ React.useEffect(function () {
6667
+ var observer = new ResizeObserver(updateDimensions);
6668
+ if (containerRef.current) observer.observe(containerRef.current);
6669
+ return function () {
6670
+ return observer.disconnect();
6671
+ };
6672
+ }, [children]);
6673
+ var setIsActive = function setIsActive() {
6674
+ if (!isActive.current) {
6675
+ isActive.current = true;
6676
+ onActiveChange == null || onActiveChange(true);
7052
6677
  }
7053
- }))) : null, sponsor ? (/*#__PURE__*/React__default.createElement(LogoWrapper, {
7054
- "data-testid": "page-heading-sponsor",
7055
- isPageHeadingWithoutTitle: isTitleUnAvailable
7056
- }, /*#__PURE__*/React__default.createElement(Sponsorship, null))) : null, themedLink ? (/*#__PURE__*/React__default.createElement(ButtonWrapper$1, {
7057
- "data-testid": "page-heading-link"
7058
- }, /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, themedLink), linkText))) : null));
7059
- };
7060
-
7061
- var _templateObject$P, _templateObject2$D, _templateObject3$s, _templateObject4$o, _templateObject5$j, _templateObject6$d, _templateObject7$9, _templateObject8$5;
7062
- var ImpactHeaderWrapper = /*#__PURE__*/styled__default.header(_templateObject$P || (_templateObject$P = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n background-color: var(--color-base-black);\n padding: 36px 0;\n\n @media ", " {\n padding: 21px 0;\n }\n"])), devices.mobile);
7063
- var ImpactTitleWrapper = /*#__PURE__*/styled__default.div(_templateObject2$D || (_templateObject2$D = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n display: grid;\n grid-template-columns: ", ";\n padding: 0 50px;\n\n @media ", " {\n padding: 0 50px;\n }\n\n @media ", " {\n padding: 0 20px;\n grid-template-columns: ", ";\n }\n"])), function (_ref) {
7064
- var hasButton = _ref.hasButton,
7065
- sponsorPresent = _ref.sponsorPresent;
7066
- if (hasButton || sponsorPresent) return 'auto 80px 1fr 80px auto';
7067
- return '1fr';
7068
- }, devices.tablet, devices.mobile, function (_ref2) {
7069
- var sponsorPresent = _ref2.sponsorPresent;
7070
- return sponsorPresent ? '1fr 20px auto' : '1fr';
7071
- });
7072
- var TitleButtonWrapper = /*#__PURE__*/styled__default.div(_templateObject3$s || (_templateObject3$s = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-column: 1;\n display: flex;\n align-items: center;\n min-width: ", ";\n"])), function (_ref3) {
7073
- var sponsorWidth = _ref3.sponsorWidth;
7074
- return sponsorWidth ? sponsorWidth + "px" : 'auto';
7075
- });
7076
- var TitleButton = /*#__PURE__*/styled__default(PrimaryButton)(_templateObject4$o || (_templateObject4$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n position: static;\n margin-right: 0;\n }\n"])), devices.mobile);
7077
- var MobileButtonWrapper = /*#__PURE__*/styled__default.div(_templateObject5$j || (_templateObject5$j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n bottom: 0;\n width: 100%;\n box-sizing: border-box;\n padding: 0 20px 16px 20px;\n"])));
7078
- var ImpactTitle = /*#__PURE__*/styled__default(HarmonicHeader)(_templateObject6$d || (_templateObject6$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: -webkit-box;\n align-self: center;\n grid-column: ", ";\n min-width: 0;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n -webkit-line-clamp: 2;\n max-height: calc(48px * 2);\n text-align: center;\n padding-bottom: 2px;\n\n @media ", " {\n grid-column: 1;\n -webkit-line-clamp: 4;\n max-height: calc(34px * 4);\n text-align: left;\n }\n"])), function (_ref4) {
7079
- var hasColumns = _ref4.hasColumns;
7080
- return hasColumns ? '3' : '1';
7081
- }, devices.mobile);
7082
- var ImpactHeaderAssetWrapper = /*#__PURE__*/styled__default.div(_templateObject7$9 || (_templateObject7$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100%;\n position: relative;\n overflow: hidden;\n background-color: #000;\n aspect-ratio: 21 / 9;\n height: auto;\n &::before {\n content: '';\n display: block;\n padding-top: calc(9 / 21 * 100%);\n }\n\n > picture,\n img,\n video {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n img {\n object-fit: cover;\n }\n video {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n object-fit: cover;\n @media ", " {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n margin: auto;\n height: auto;\n max-height: 100vh;\n width: 100%;\n object-fit: cover;\n }\n }\n @media ", " {\n aspect-ratio: 1 / 1;\n &::before {\n padding-top: 100%;\n }\n max-height: 100vh;\n img {\n object-fit: cover;\n }\n }\n"])), devices.mobile, devices.mobile);
7083
- var SponsorWrapper = /*#__PURE__*/styled__default.div(_templateObject8$5 || (_templateObject8$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-column: 5;\n display: flex;\n justify-content: flex-end;\n align-items: center;\n z-index: ", ";\n min-width: ", ";\n\n @media ", " {\n grid-column: 3;\n justify-content: flex-start;\n min-width: unset;\n }\n"])), zIndexes.sponsorship, function (_ref5) {
7084
- var buttonWidth = _ref5.buttonWidth;
7085
- return buttonWidth ? buttonWidth + "px" : 'auto';
7086
- }, devices.mobile);
7087
-
7088
- var _templateObject$Q, _templateObject2$E, _templateObject3$t, _templateObject4$p;
7089
- var VideoPlayButton$1 = /*#__PURE__*/styled__default.button(_templateObject$Q || (_templateObject$Q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 80px;\n height: 80px;\n background-color: var(--color-base-transparent);\n border: none;\n cursor: pointer;\n\n @media ", " {\n width: 60px;\n height: 60px;\n }\n"])), devices.mobile);
7090
- var VideoControlsWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject2$E || (_templateObject2$E = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n top: 0;\n width: 100%;\n"])));
7091
- var VideoControlsInnerWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject3$t || (_templateObject3$t = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 20px;\n\n @media ", " {\n margin: 20px 4px;\n }\n"])), devices.mobile);
7092
- var LeftWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject4$p || (_templateObject4$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n"])));
7093
-
7094
- var VideoControlsImpact = function VideoControlsImpact(_ref) {
7095
- var videoElementId = _ref.videoElementId,
7096
- _ref$loop = _ref.loop,
7097
- loop = _ref$loop === void 0 ? false : _ref$loop;
7098
- var _React$useState = React__default.useState(false),
7099
- playing = _React$useState[0],
7100
- setPlaying = _React$useState[1];
7101
- var getVideoElement = function getVideoElement() {
7102
- return document.querySelector("#" + videoElementId);
7103
6678
  };
7104
- React__default.useEffect(function () {
7105
- var video = getVideoElement();
7106
- if (video) {
7107
- video.loop = loop;
7108
- }
7109
- }, [loop]);
7110
- var handlePlay = React__default.useCallback(function () {
7111
- var video = getVideoElement();
7112
- if (!video) return;
7113
- if (playing) {
7114
- video.pause();
7115
- setPlaying(false);
6679
+ var getTranslateX = function getTranslateX() {
6680
+ var widthsBefore = slideWidths.slice(0, currentIndex).reduce(function (acc, width) {
6681
+ return acc + width;
6682
+ }, 0);
6683
+ return (slidesOffsetBefore || 0) - widthsBefore;
6684
+ };
6685
+ var getTranslateForIndex = function getTranslateForIndex(index) {
6686
+ var widthsBefore = slideWidths.slice(0, index).reduce(function (acc, width) {
6687
+ return acc + width;
6688
+ }, 0);
6689
+ return (slidesOffsetBefore || 0) - widthsBefore;
6690
+ };
6691
+ var navigateOnSwipeEnd = function navigateOnSwipeEnd() {
6692
+ var delta = currentTranslate.current - getTranslateX();
6693
+ var direction = delta > 0 ? -1 : 1;
6694
+ var movedSlides = getMovedSlides(delta, slideWidths);
6695
+ if (Math.abs(delta) > 20) {
6696
+ movedSlides = Math.max(1, movedSlides);
6697
+ var targetIndex = currentIndex + direction * movedSlides;
6698
+ var finalIndex = infinite ? targetIndex : Math.max(0, Math.min(slides.length - 1, targetIndex));
6699
+ if (!infinite) {
6700
+ currentTranslate.current = getTranslateForIndex(finalIndex);
6701
+ setDragTranslateX(null);
6702
+ }
6703
+ setTransitioning(true);
6704
+ setCurrentIndex(finalIndex);
7116
6705
  } else {
7117
- video == null || video.play();
7118
- setPlaying(true);
6706
+ setTransitioning(true);
6707
+ setCurrentIndex(function (prev) {
6708
+ return prev;
6709
+ });
7119
6710
  }
7120
- }, [playing]);
7121
- return /*#__PURE__*/React__default.createElement(VideoControlsWrapper$1, {
7122
- className: "video-controls-container"
7123
- }, /*#__PURE__*/React__default.createElement(VideoControlsInnerWrapper$1, null, /*#__PURE__*/React__default.createElement(LeftWrapper$1, null, /*#__PURE__*/React__default.createElement(VideoPlayButton$1, {
7124
- id: "play",
7125
- onClick: handlePlay,
7126
- className: "video-play-button",
7127
- "data-testid": "video-play-button",
7128
- "aria-label": !playing ? 'Play' : 'Pause'
7129
- }, /*#__PURE__*/React__default.createElement(Icon, {
7130
- iconName: !playing ? 'Play' : 'Pause',
7131
- color: "white"
7132
- })))));
7133
- };
7134
-
7135
- var _excluded$i = ["text"];
7136
- var CHAR_LIMIT = 100;
7137
- var useResponsiveVideo = function useResponsiveVideo(video, poster) {
7138
- var mobileVideo = video.mobile || video.desktop;
7139
- var desktopVideo = video.desktop || video.mobile;
7140
- var mobilePoster = poster.mobile || poster.desktop;
7141
- var desktopPoster = poster.desktop || poster.mobile;
7142
- var _useState = React.useState(desktopPoster),
7143
- posterUrl = _useState[0],
7144
- setPoster = _useState[1];
7145
- var _useState2 = React.useState(desktopVideo),
7146
- videoUrl = _useState2[0],
7147
- setVideoUrl = _useState2[1];
7148
- var isMobile = useMobile();
7149
- React.useEffect(function () {
7150
- setPoster(isMobile ? mobilePoster : desktopPoster);
7151
- setVideoUrl(isMobile ? mobileVideo : desktopVideo);
7152
- }, [isMobile]);
7153
- return {
7154
- posterUrl: posterUrl,
7155
- videoUrl: videoUrl
6711
+ setDragTranslateX(null);
7156
6712
  };
7157
- };
7158
- var VideoWithControls = function VideoWithControls(_ref) {
7159
- var video = _ref.video,
7160
- poster = _ref.poster;
7161
- var _useResponsiveVideo = useResponsiveVideo(video, poster),
7162
- posterUrl = _useResponsiveVideo.posterUrl,
7163
- videoUrl = _useResponsiveVideo.videoUrl;
7164
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("video", {
7165
- id: video.elementId,
7166
- width: "100%",
7167
- height: "100%",
7168
- poster: posterUrl,
7169
- src: videoUrl,
7170
- "data-testid": "impact-video",
7171
- playsInline: true
7172
- }, /*#__PURE__*/React__default.createElement("source", {
7173
- src: videoUrl
7174
- }), /*#__PURE__*/React__default.createElement("img", {
7175
- src: posterUrl,
7176
- alt: poster.alt,
7177
- "data-testid": "impact-image"
7178
- })), /*#__PURE__*/React__default.createElement(VideoControlsImpact, {
7179
- loop: true,
7180
- videoElementId: video.elementId
7181
- }));
7182
- };
7183
- var ImpactHeaderImage = function ImpactHeaderImage(_ref2) {
7184
- var mobile = _ref2.mobile,
7185
- desktop = _ref2.desktop,
7186
- alt = _ref2.alt;
7187
- return /*#__PURE__*/React__default.createElement("picture", {
7188
- "data-testid": "impact-picture"
7189
- }, mobile && /*#__PURE__*/React__default.createElement("source", {
7190
- srcSet: mobile,
7191
- media: "" + devices.mobile,
7192
- "data-testid": "impact-mobile-image-source"
7193
- }), /*#__PURE__*/React__default.createElement("source", {
7194
- srcSet: desktop,
7195
- media: "" + devices.desktop,
7196
- "data-testid": "impact-desktop-image-source"
7197
- }), /*#__PURE__*/React__default.createElement("img", {
7198
- src: desktop,
7199
- alt: alt,
7200
- "data-testid": "impact-image"
7201
- }));
7202
- };
7203
- var ImpactHeaderVideo = function ImpactHeaderVideo(_ref3) {
7204
- var video = _ref3.video,
7205
- poster = _ref3.poster;
7206
- if (!video.desktop && !video.mobile) {
7207
- return /*#__PURE__*/React__default.createElement(ImpactHeaderImage, Object.assign({}, poster));
7208
- }
7209
- return /*#__PURE__*/React__default.createElement(VideoWithControls, {
7210
- video: video,
7211
- poster: poster
7212
- });
7213
- };
7214
- var useElementWidth = function useElementWidth() {
7215
- var _React$useState = React__default.useState(undefined),
7216
- width = _React$useState[0],
7217
- setWidth = _React$useState[1];
7218
- var observerRef = React__default.useRef(null);
7219
- var ref = React__default.useCallback(function (node) {
7220
- if (observerRef.current) {
7221
- observerRef.current.disconnect();
7222
- observerRef.current = null;
7223
- }
7224
- if (!node) return;
7225
- observerRef.current = new ResizeObserver(function () {
7226
- setWidth(node.offsetWidth);
6713
+ var canMoveNext = function canMoveNext() {
6714
+ if (infinite) return true;
6715
+ if (slideWidths.length === 0 || containerWidth === 0) return false;
6716
+ var totalWidth = slideWidths.reduce(function (acc, w) {
6717
+ return acc + w;
6718
+ }, 0);
6719
+ var widthsBefore = slideWidths.slice(0, currentIndex).reduce(function (acc, w) {
6720
+ return acc + w;
6721
+ }, 0);
6722
+ var visibleSpace = containerWidth - (slidesOffsetBefore || 0);
6723
+ var remainingToRight = totalWidth - widthsBefore - visibleSpace;
6724
+ var visible = getVisibleIndexes(currentIndex, slideWidths, containerWidth, slides.length);
6725
+ var lastVisibleIndex = visible.length ? visible[visible.length - 1] : currentIndex;
6726
+ var nextIndex = lastVisibleIndex + 1;
6727
+ if (nextIndex >= slideWidths.length) return false;
6728
+ var nextSlideWidth = typeof slideWidths[nextIndex] === 'number' ? slideWidths[nextIndex] : 0;
6729
+ if (nextSlideWidth === 0) return false;
6730
+ var EPS = 1; // pixel tolerance
6731
+ // full next slide fits
6732
+ if (remainingToRight + EPS >= nextSlideWidth) return true;
6733
+ return remainingToRight > 0;
6734
+ };
6735
+ var handleTransitionEnd = function handleTransitionEnd() {
6736
+ setTransitioning(false);
6737
+ if (!infinite) return;
6738
+ if (currentIndex >= children.length + clonesCount) {
6739
+ setCurrentIndex(clonesCount);
6740
+ } else if (currentIndex < clonesCount) {
6741
+ setCurrentIndex(children.length + currentIndex);
6742
+ }
6743
+ };
6744
+ var goToPrev = function goToPrev() {
6745
+ if (transitioning) return;
6746
+ setIsActive();
6747
+ setTransitioning(true);
6748
+ setCurrentIndex(function (prev) {
6749
+ var target = infinite ? prev - 1 : Math.max(0, prev - 1);
6750
+ if (!infinite) {
6751
+ currentTranslate.current = getTranslateForIndex(target);
6752
+ setDragTranslateX(null);
6753
+ }
6754
+ return target;
7227
6755
  });
7228
- observerRef.current.observe(node);
7229
- }, []);
7230
- return [ref, width];
7231
- };
7232
- var PageHeadingImpact = function PageHeadingImpact(_ref4) {
7233
- var text = _ref4.text,
7234
- link = _ref4.link,
7235
- _ref4$sponsor = _ref4.sponsor,
7236
- sponsor = _ref4$sponsor === void 0 ? true : _ref4$sponsor,
7237
- customSponsorImage = _ref4.customSponsorImage,
7238
- bgUrlDesktop = _ref4.bgUrlDesktop,
7239
- bgUrlDevice = _ref4.bgUrlDevice,
7240
- _ref4$bgImageAltText = _ref4.bgImageAltText,
7241
- bgImageAltText = _ref4$bgImageAltText === void 0 ? '' : _ref4$bgImageAltText,
7242
- videoUrlDesktop = _ref4.videoUrlDesktop,
7243
- videoUrlMobile = _ref4.videoUrlMobile,
7244
- className = _ref4.className;
7245
- var _useViewport = useViewport(),
7246
- isMobile = _useViewport.isMobile,
7247
- hydrated = _useViewport.hydrated;
7248
- var _useElementWidth = useElementWidth(),
7249
- buttonRef = _useElementWidth[0],
7250
- buttonWidth = _useElementWidth[1];
7251
- var _useElementWidth2 = useElementWidth(),
7252
- sponsorRef = _useElementWidth2[0],
7253
- sponsorWidth = _useElementWidth2[1];
7254
- var truncatedText = text && text.length > CHAR_LIMIT ? text.slice(0, CHAR_LIMIT).trimEnd() + "\u2026" : text;
7255
- var _ref5 = link || {},
7256
- linkText = _ref5.text,
7257
- restLink = _objectWithoutPropertiesLoose(_ref5, _excluded$i);
7258
- var video = {
7259
- elementId: 'impact-header-video',
7260
- desktop: videoUrlDesktop,
7261
- mobile: videoUrlMobile
7262
6756
  };
7263
- var poster = {
7264
- desktop: bgUrlDesktop,
7265
- mobile: bgUrlDevice,
7266
- alt: bgImageAltText
6757
+ var goToNext = function goToNext() {
6758
+ if (transitioning || !canMoveNext()) return;
6759
+ setIsActive();
6760
+ setTransitioning(true);
6761
+ setCurrentIndex(function (prev) {
6762
+ var target = infinite ? prev + 1 : Math.min(children.length - 1, prev + 1);
6763
+ if (!infinite) {
6764
+ currentTranslate.current = getTranslateForIndex(target);
6765
+ setDragTranslateX(null);
6766
+ }
6767
+ return target;
6768
+ });
7267
6769
  };
7268
- var sponsorContent = sponsor ? (/*#__PURE__*/React__default.createElement(Sponsorship, Object.assign({
7269
- "data-testid": customSponsorImage ? 'impact-custom-sponsor' : undefined
7270
- }, customSponsorImage != null ? customSponsorImage : {}))) : null;
7271
- var hasButton = !isMobile && !!(link && linkText);
7272
- var showSideColumns = hasButton || !!sponsor;
7273
- var showTitleBar = !!(text || hasButton || sponsor);
7274
- var renderSponsor = function renderSponsor() {
7275
- if (isMobile) {
7276
- if (!sponsorContent) return null;
7277
- return /*#__PURE__*/React__default.createElement(SponsorWrapper, {
7278
- "data-testid": "impact-sponsor"
7279
- }, sponsorContent);
7280
- }
7281
- if (!showSideColumns) return null;
7282
- return /*#__PURE__*/React__default.createElement(SponsorWrapper, {
7283
- ref: sponsorRef,
7284
- buttonWidth: buttonWidth,
7285
- "data-testid": "impact-sponsor"
7286
- }, sponsorContent);
6770
+ React.useImperativeHandle(ref, function () {
6771
+ return {
6772
+ nextSlide: goToNext,
6773
+ prevSlide: goToPrev,
6774
+ hasOverflow: function hasOverflow() {
6775
+ var totalWidth = slideWidths.reduce(function (acc, w) {
6776
+ return acc + w;
6777
+ }, 0);
6778
+ var visibleSpace = containerWidth - (slidesOffsetBefore || 0);
6779
+ return totalWidth > Math.max(0, visibleSpace);
6780
+ },
6781
+ hasNext: function hasNext() {
6782
+ return canMoveNext();
6783
+ }
6784
+ };
6785
+ });
6786
+ var handleTouchStart = function handleTouchStart(e) {
6787
+ setIsActive();
6788
+ startX.current = e.touches[0].clientX;
6789
+ isDragging.current = true;
6790
+ isClickPrevented.current = false;
6791
+ setTransitioning(false);
7287
6792
  };
7288
- if (!hydrated) return null;
7289
- return /*#__PURE__*/React__default.createElement(HarmonicThemeProvider, {
7290
- theme: exports.ThemeType.Cinema
7291
- }, showTitleBar ? (/*#__PURE__*/React__default.createElement(ImpactHeaderWrapper, {
7292
- className: className
7293
- }, /*#__PURE__*/React__default.createElement(ImpactTitleWrapper, {
7294
- "data-testid": "impact-title-wrapper",
7295
- sponsorPresent: !!sponsor,
7296
- hasButton: hasButton
7297
- }, !isMobile && showSideColumns ? (/*#__PURE__*/React__default.createElement(TitleButtonWrapper, {
7298
- sponsorWidth: sponsorWidth
7299
- }, hasButton ? (/*#__PURE__*/React__default.createElement(TitleButton, Object.assign({
7300
- ref: buttonRef
7301
- }, restLink, {
7302
- "data-testid": "impact-link"
7303
- }), linkText)) : null)) : null, text ? (/*#__PURE__*/React__default.createElement(ImpactTitle, {
7304
- size: "large",
7305
- color: "white",
7306
- hasColumns: !isMobile && showSideColumns
7307
- }, truncatedText)) : null, renderSponsor()))) : null, /*#__PURE__*/React__default.createElement(ImpactHeaderAssetWrapper, {
7308
- className: className
7309
- }, /*#__PURE__*/React__default.createElement(ImpactHeaderVideo, {
7310
- video: video,
7311
- poster: poster
7312
- }), isMobile && link && linkText ? (/*#__PURE__*/React__default.createElement(MobileButtonWrapper, null, /*#__PURE__*/React__default.createElement(TitleButton, Object.assign({}, restLink), linkText))) : null));
7313
- };
7314
-
7315
- var _templateObject$R, _templateObject2$F, _templateObject3$u, _templateObject4$q, _templateObject5$k;
7316
- var PanelGrid = /*#__PURE__*/styled__default(Grid)(_templateObject$R || (_templateObject$R = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 0 var(--grid-column-gap);\n\n ", "\n\n @media ", " {\n grid-template-rows: 48px max-content max-content;\n }\n"])), function (_ref) {
7317
- var color = _ref.color;
7318
- return "\n background-color: " + (color ? "var(--base-color-" + color + ")" : 'var(--base-color-core)') + ";\n color: " + (color === exports.Colors.White ? 'var(--base-color-black)' : 'var(--base-color-white)') + ";\n ";
7319
- }, devices.mobileAndTablet);
7320
- var LeftPanel = /*#__PURE__*/styled__default.div(_templateObject2$F || (_templateObject2$F = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: ", ";\n box-sizing: border-box;\n height: 100%;\n display: grid;\n grid-auto-rows: 90% 1fr;\n gap: 0px 36px;\n align-items: center;\n\n @media ", " {\n grid-area: ", ";\n }\n"])), function (_ref2) {
7321
- var hasImage = _ref2.hasImage;
7322
- return hasImage ? '1 / 1 / 3 / 7' : '1 / 1 / 3 / 12';
7323
- }, devices.mobileAndTablet, function (_ref3) {
7324
- var hasImage = _ref3.hasImage;
7325
- return hasImage ? '3 / 1 / 4 / 15' : '1 / 1 / 3 / 15';
7326
- });
7327
- var RightPanel = /*#__PURE__*/styled__default.div(_templateObject3$u || (_templateObject3$u = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: 1 / 7 / 3 / 17;\n position: relative;\n height: 100%;\n width: 100%;\n background-color: var(--base-color-black);\n\n @media ", " {\n grid-area: 2 / 1 / 3 / 15;\n }\n"])), devices.mobileAndTablet);
7328
- var InfoWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject4$q || (_templateObject4$q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin: 36px;\n max-height: 33vw;\n overflow: hidden;\n\n :first-child * {\n margin-block-start: 0;\n }\n\n @media ", " {\n margin: 36px 20px;\n max-height: unset;\n }\n"])), devices.mobileAndTablet);
7329
- var ScrollDownWrapper = /*#__PURE__*/styled__default.div(_templateObject5$k || (_templateObject5$k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0 0 25px 36px;\n\n @keyframes UpDown {\n 0%,\n 100% {\n transform: translateY(0);\n }\n 50% {\n transform: translateY(8px);\n }\n }\n\n a {\n font-size: var(--font-size-overline-1);\n font-weight: var(--font-weight-overline-1);\n letter-spacing: var(--letter-spacing-overline-1);\n border: none;\n padding: 0;\n\n :hover {\n border: none;\n\n > span {\n animation: UpDown 1500ms linear infinite;\n }\n }\n }\n\n @media ", " {\n display: none;\n }\n"])), devices.mobileAndTablet);
7330
-
7331
- var PageHeadingPanel = function PageHeadingPanel(_ref) {
7332
- var _image$src, _image$alt;
7333
- var info = _ref.info,
7334
- image = _ref.image,
7335
- color = _ref.color,
7336
- scrollTo = _ref.scrollTo;
7337
- var hasImage = !!image;
7338
- return /*#__PURE__*/React__default.createElement(PanelGrid, {
7339
- color: color,
7340
- "data-testid": "wrapper"
7341
- }, /*#__PURE__*/React__default.createElement(LeftPanel, {
7342
- hasImage: hasImage
7343
- }, /*#__PURE__*/React__default.createElement(InfoWrapper$1, null, info), scrollTo && (/*#__PURE__*/React__default.createElement(ScrollDownWrapper, {
7344
- "data-testid": "scroll-link"
7345
- }, /*#__PURE__*/React__default.createElement(TabLink, {
7346
- iconName: "Arrow",
7347
- iconDirection: "down",
7348
- href: scrollTo,
7349
- color: color === ThemeColor['base-white'] ? ThemeColor['base-black'] : ThemeColor['base-white'],
7350
- hoverColor: color === ThemeColor['base-white'] ? ThemeColor['base-black'] : ThemeColor['base-white']
7351
- }, "Scroll Down")))), hasImage && (/*#__PURE__*/React__default.createElement(RightPanel, null, /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
7352
- aspectRatio: exports.AspectRatio['4:3']
7353
- }, /*#__PURE__*/React__default.createElement("img", {
7354
- src: (_image$src = image == null ? void 0 : image.src) != null ? _image$src : '',
7355
- alt: (_image$alt = image == null ? void 0 : image.alt) != null ? _image$alt : ''
7356
- })))));
7357
- };
7358
-
7359
- var _templateObject$S, _templateObject2$G, _templateObject3$v, _templateObject4$r, _templateObject5$l, _templateObject6$e, _templateObject7$a, _templateObject8$6, _templateObject9$3, _templateObject0$3, _templateObject1$2;
7360
- var Wrapper$3 = /*#__PURE__*/styled__default.section(_templateObject$S || (_templateObject$S = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100%;\n"])));
7361
- var ImageWrapper = /*#__PURE__*/styled__default.div(_templateObject2$G || (_templateObject2$G = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n\n picture,\n img {\n width: 100%;\n height: 100%;\n }\n"])));
7362
- var SponsorWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject3$v || (_templateObject3$v = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n top: 20px;\n right: var(--grid-outer-margin);\n width: fit-content;\n z-index: ", ";\n\n @media ", " {\n & {\n right: var(--grid-margin);\n }\n }\n"])), zIndexes.sponsorship, devices.mobileAndTablet);
7363
- var ImageButtonWrapper = /*#__PURE__*/styled__default.div(_templateObject4$r || (_templateObject4$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n right: var(--grid-outer-margin);\n bottom: 20px;\n z-index: 10;\n\n @media ", " {\n right: var(--grid-margin);\n bottom: 10px;\n }\n"])), devices.tablet);
7364
- var ContentSection = /*#__PURE__*/styled__default.div(_templateObject5$l || (_templateObject5$l = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background-color: var(--heading-promo-bg-color);\n border-bottom: ", ";\n display: ", ";\n\n @media ", " {\n padding: 12px 0 20px;\n }\n"])), function (_ref) {
7365
- var theme = _ref.theme;
7366
- return theme == exports.ThemeType.Cinema ? '2px solid var(--color-base-light-grey)' : 'none';
7367
- }, function (_ref2) {
7368
- var showBlock = _ref2.showBlock;
7369
- return showBlock ? 'block' : 'none';
7370
- }, devices.mobile);
7371
- var BadgeWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject6$e || (_templateObject6$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n svg {\n height: 32px;\n }\n\n @media ", " {\n margin-bottom: 12px;\n }\n"])), devices.mobile);
7372
- var AdditionalContentWrapper = /*#__PURE__*/styled__default.div(_templateObject7$a || (_templateObject7$a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: start;\n align-items: center;\n width: 200px;\n\n @media ", " {\n order: ", ";\n width: 100%;\n justify-content: center;\n }\n"])), devices.mobile, function (_ref3) {
7373
- var isBadgePresent = _ref3.isBadgePresent;
7374
- return isBadgePresent ? '1' : '4';
7375
- });
7376
- var MainButtonWrapper = /*#__PURE__*/styled__default.div(_templateObject8$6 || (_templateObject8$6 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: end;\n width: 200px;\n\n @media ", " {\n margin-bottom: ", ";\n width: 100%;\n order: 3;\n }\n"])), devices.mobile, function (_ref4) {
7377
- var isAdditionalButtonPresent = _ref4.isAdditionalButtonPresent;
7378
- return isAdditionalButtonPresent ? '20px' : '0';
7379
- });
7380
- var AdditionalButtonWrapper = /*#__PURE__*/styled__default.div(_templateObject9$3 || (_templateObject9$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n width: 100%;\n display: flex;\n justify-content: center;\n }\n"])), devices.mobile);
7381
- var TitleWrapper$3 = /*#__PURE__*/styled__default.div(_templateObject0$3 || (_templateObject0$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-align: center;\n padding: 10px 0;\n\n h1,\n h2,\n h3 {\n color: ", ";\n }\n\n @media ", " {\n padding: 0;\n order: 2;\n margin-bottom: ", ";\n }\n"])), function (_ref5) {
7382
- var theme = _ref5.theme;
7383
- return theme == exports.ThemeType.Cinema ? 'var(--color-base-black)' : 'var(--color-base-white)';
7384
- }, devices.mobile, function (_ref6) {
7385
- var isButtonPresent = _ref6.isButtonPresent;
7386
- return isButtonPresent ? '20px' : '0';
7387
- });
7388
- var ContentWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject1$2 || (_templateObject1$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n min-height: 70px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n @media ", " {\n min-height: auto;\n flex-direction: column;\n justify-content: start;\n }\n"])), devices.mobile);
7389
-
7390
- var PageHeadingPromoBadge;
7391
- (function (PageHeadingPromoBadge) {
7392
- PageHeadingPromoBadge["Stream"] = "Stream";
7393
- PageHeadingPromoBadge["Cinema"] = "Cinema";
7394
- })(PageHeadingPromoBadge || (PageHeadingPromoBadge = {}));
7395
-
7396
- var Badge = function Badge(_ref) {
7397
- var isMobile = _ref.isMobile,
7398
- theme = _ref.theme,
7399
- badge = _ref.badge;
7400
- if (!badge) return null;
7401
- var color = theme === exports.ThemeType.Cinema ? exports.Colors.Black : exports.Colors.White;
7402
- var alignment = isMobile ? 'center' : 'left';
7403
- return /*#__PURE__*/React__default.createElement(BadgeWrapper$2, {
7404
- "data-testid": "promo-heading-badge"
7405
- }, badge === PageHeadingPromoBadge.Cinema ? (/*#__PURE__*/React__default.createElement(CinemaBadge, {
7406
- fillColor: color,
7407
- align: alignment
7408
- })) : (/*#__PURE__*/React__default.createElement(StreamBadge, {
7409
- fillColor: color,
7410
- align: alignment
6793
+ var handleTouchMove = function handleTouchMove(e) {
6794
+ if (!isDragging.current) return;
6795
+ var deltaX = e.touches[0].clientX - startX.current;
6796
+ if (Math.abs(deltaX) > CLICK_DRAG_THRESHOLD) {
6797
+ isClickPrevented.current = true;
6798
+ }
6799
+ var visualOffset = getTranslateX() + deltaX;
6800
+ currentTranslate.current = visualOffset;
6801
+ setDragTranslateX(visualOffset);
6802
+ };
6803
+ var handleTouchEnd = function handleTouchEnd() {
6804
+ isDragging.current = false;
6805
+ if (isClickPrevented.current) {
6806
+ navigateOnSwipeEnd();
6807
+ } else {
6808
+ setDragTranslateX(null);
6809
+ }
6810
+ };
6811
+ var handleMouseMove = function handleMouseMove(e) {
6812
+ if (!isDragging.current || !isMouseDown.current || transitioning) return;
6813
+ var deltaX = e.clientX - startX.current;
6814
+ if (Math.abs(deltaX) > CLICK_DRAG_THRESHOLD) {
6815
+ isClickPrevented.current = true;
6816
+ }
6817
+ var visualOffset = getTranslateX() + deltaX;
6818
+ currentTranslate.current = visualOffset;
6819
+ setDragTranslateX(visualOffset);
6820
+ };
6821
+ var _handleMouseUp = function handleMouseUp() {
6822
+ if (!isMouseDown.current) return;
6823
+ isMouseDown.current = false;
6824
+ isDragging.current = false;
6825
+ if (isClickPrevented.current) {
6826
+ navigateOnSwipeEnd();
6827
+ } else {
6828
+ setDragTranslateX(null);
6829
+ }
6830
+ window.removeEventListener('mousemove', handleMouseMove);
6831
+ window.removeEventListener('mouseup', _handleMouseUp);
6832
+ };
6833
+ var handleMouseDown = function handleMouseDown(e) {
6834
+ if (transitioning || e.button !== 0) return;
6835
+ e.preventDefault();
6836
+ setIsActive();
6837
+ startX.current = e.clientX;
6838
+ isDragging.current = true;
6839
+ isMouseDown.current = true;
6840
+ isClickPrevented.current = false;
6841
+ setTransitioning(false);
6842
+ window.addEventListener('mousemove', handleMouseMove);
6843
+ window.addEventListener('mouseup', _handleMouseUp);
6844
+ };
6845
+ var onSlideFocus = function onSlideFocus(isVisible, index) {
6846
+ if (!isVisible) {
6847
+ setCurrentIndex(index);
6848
+ }
6849
+ };
6850
+ var visibleIndexes = getVisibleIndexes(currentIndex, slideWidths, containerWidth, slides.length);
6851
+ return /*#__PURE__*/React__default.createElement(SwipeContainer, Object.assign({
6852
+ ref: containerRef,
6853
+ className: "swipe",
6854
+ onTouchStart: handleTouchStart,
6855
+ onTouchMove: handleTouchMove,
6856
+ onTouchEnd: handleTouchEnd,
6857
+ onMouseDown: handleMouseDown,
6858
+ "aria-roledescription": "carousel",
6859
+ role: "list"
6860
+ }, props), /*#__PURE__*/React__default.createElement(SwipeTrack, {
6861
+ className: "swipe-track-wrapper",
6862
+ translateX: dragTranslateX !== null ? dragTranslateX : getTranslateX(),
6863
+ transitioning: transitioning && dragTranslateX === null,
6864
+ onTransitionEnd: handleTransitionEnd
6865
+ }, slides.map(function (child, index) {
6866
+ var isVisible = visibleIndexes.includes(index);
6867
+ var isClone = isCloneSlide(index, clonesCount, children.length, infinite);
6868
+ return /*#__PURE__*/React__default.createElement("div", {
6869
+ key: "swipe-slide-" + uniqueIdRef.current + "-" + index,
6870
+ className: SWIPE_SLIDE_CLASS_NAME,
6871
+ "aria-hidden": slidesAriaHidden || isClone,
6872
+ "aria-roledescription": "slide",
6873
+ role: "listitem",
6874
+ ref: function ref(el) {
6875
+ childRefs.current[index] = el;
6876
+ disableTabbingInside(el, isClone);
6877
+ },
6878
+ onFocus: function onFocus() {
6879
+ return onSlideFocus(isVisible, index);
6880
+ }
6881
+ }, child);
7411
6882
  })));
7412
- };
6883
+ });
6884
+ Swipe.displayName = 'Swipe';
7413
6885
 
7414
- var StyledPrimaryButton = function StyledPrimaryButton(_ref) {
7415
- var link = _ref.link,
7416
- theme = _ref.theme;
7417
- var text = link.text;
7418
- if (theme === exports.ThemeType.Cinema) {
7419
- return /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, link, {
7420
- textColor: ThemeColor['base-white'],
7421
- backgroundColor: ThemeColor['base-black'],
7422
- hoveredColor: ThemeColor['rbo-black-hovered'],
7423
- pressedColor: ThemeColor['rbo-black-pressed']
7424
- }), text);
7425
- }
7426
- return /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, link, {
7427
- textColor: ThemeColor['base-black'],
7428
- backgroundColor: ThemeColor['base-white'],
7429
- hoveredColor: ThemeColor['white-hovered'],
7430
- pressedColor: ThemeColor['white-pressed']
7431
- }), text);
7432
- };
7433
- var Button$1 = function Button(_ref2) {
7434
- var link = _ref2.link,
7435
- theme = _ref2.theme,
7436
- isMobile = _ref2.isMobile;
7437
- var text = link.text;
7438
- if (isMobile) {
7439
- return /*#__PURE__*/React__default.createElement(StyledPrimaryButton, {
7440
- theme: theme,
7441
- link: link
6886
+ var _excluded$i = ["name", "image", "onClick"];
6887
+ var CastFilters = function CastFilters(_ref) {
6888
+ var cast = _ref.cast,
6889
+ headingText = _ref.headingText,
6890
+ ctaText = _ref.ctaText,
6891
+ textLinkText = _ref.textLinkText,
6892
+ emptySelectionText = _ref.emptySelectionText,
6893
+ placeholderImage = _ref.placeholderImage,
6894
+ listRoleDescription = _ref.listRoleDescription,
6895
+ className = _ref.className,
6896
+ onSelect = _ref.onSelect,
6897
+ onApply = _ref.onApply,
6898
+ onClear = _ref.onClear,
6899
+ _ref$selectedIndices = _ref.selectedIndices,
6900
+ selectedIndices = _ref$selectedIndices === void 0 ? [] : _ref$selectedIndices;
6901
+ var _useViewport = useViewport(),
6902
+ isMobile = _useViewport.isMobile;
6903
+ var castWrapperRef = React.useRef(null);
6904
+ var isDraggingRef = React.useRef(false);
6905
+ var startXRef = React.useRef(0);
6906
+ var scrollStartRef = React.useRef(0);
6907
+ var hasDraggedRef = React.useRef(false);
6908
+ var swipeRef = React.useRef(null);
6909
+ var _useState = React.useState(false),
6910
+ availablePrev = _useState[0],
6911
+ setAvailablePrev = _useState[1];
6912
+ var _useState2 = React.useState(cast.length > 1),
6913
+ availableNext = _useState2[0],
6914
+ setAvailableNext = _useState2[1];
6915
+ var _useState3 = React.useState(true),
6916
+ showRotatorButtons = _useState3[0],
6917
+ setShowRotatorButtons = _useState3[1];
6918
+ var onIndexChangeHandler = function onIndexChangeHandler(index) {
6919
+ setAvailablePrev(index > 0);
6920
+ setAvailableNext(function () {
6921
+ var _swipeRef$current$has, _swipeRef$current;
6922
+ return (_swipeRef$current$has = (_swipeRef$current = swipeRef.current) == null ? void 0 : _swipeRef$current.hasNext()) != null ? _swipeRef$current$has : index < Math.max(0, cast.length - 1);
7442
6923
  });
7443
- }
7444
- var buttonColor = theme === exports.ThemeType.Cinema ? ThemeColor['base-black'] : ThemeColor['base-white'];
7445
- if (link.isTextLink) {
7446
- return /*#__PURE__*/React__default.createElement(TextLink, Object.assign({}, link, {
7447
- color: buttonColor,
7448
- iconName: undefined
7449
- }), text);
7450
- }
7451
- return /*#__PURE__*/React__default.createElement(SecondaryButton, Object.assign({}, link, {
7452
- textColor: buttonColor,
7453
- borderColor: buttonColor,
7454
- hoveredColor: buttonColor,
7455
- pressedColor: buttonColor
7456
- }), text);
6924
+ };
6925
+ React.useEffect(function () {
6926
+ setAvailablePrev(false);
6927
+ setAvailableNext(function () {
6928
+ var _swipeRef$current$has2, _swipeRef$current2;
6929
+ return (_swipeRef$current$has2 = (_swipeRef$current2 = swipeRef.current) == null ? void 0 : _swipeRef$current2.hasNext()) != null ? _swipeRef$current$has2 : cast.length > 1;
6930
+ });
6931
+ }, [cast.length]);
6932
+ var handleOverflowChange = function handleOverflowChange(overflow) {
6933
+ var _swipeRef$current3;
6934
+ setShowRotatorButtons(overflow);
6935
+ var hasNext = (_swipeRef$current3 = swipeRef.current) == null ? void 0 : _swipeRef$current3.hasNext();
6936
+ if (typeof hasNext === 'boolean') {
6937
+ setAvailableNext(hasNext);
6938
+ } else {
6939
+ setAvailableNext(overflow);
6940
+ }
6941
+ };
6942
+ var onNext = function onNext() {
6943
+ var _swipeRef$current4;
6944
+ return (_swipeRef$current4 = swipeRef.current) == null ? void 0 : _swipeRef$current4.nextSlide();
6945
+ };
6946
+ var onPrev = function onPrev() {
6947
+ var _swipeRef$current5;
6948
+ return (_swipeRef$current5 = swipeRef.current) == null ? void 0 : _swipeRef$current5.prevSlide();
6949
+ };
6950
+ React.useEffect(function () {
6951
+ var el = castWrapperRef.current;
6952
+ if (!el) return undefined;
6953
+ var handleKeydown = function handleKeydown(e) {
6954
+ if (!el.contains(document.activeElement)) return;
6955
+ if (e.key === 'ArrowRight') {
6956
+ var _swipeRef$current6;
6957
+ e.preventDefault();
6958
+ (_swipeRef$current6 = swipeRef.current) == null || _swipeRef$current6.nextSlide();
6959
+ } else if (e.key === 'ArrowLeft') {
6960
+ var _swipeRef$current7;
6961
+ e.preventDefault();
6962
+ (_swipeRef$current7 = swipeRef.current) == null || _swipeRef$current7.prevSlide();
6963
+ }
6964
+ };
6965
+ el.addEventListener('keydown', handleKeydown);
6966
+ return function () {
6967
+ return el.removeEventListener('keydown', handleKeydown);
6968
+ };
6969
+ }, []);
6970
+ var handleMouseDown = React.useCallback(function (e) {
6971
+ if (!castWrapperRef.current) return;
6972
+ isDraggingRef.current = true;
6973
+ hasDraggedRef.current = false;
6974
+ startXRef.current = e.clientX;
6975
+ scrollStartRef.current = castWrapperRef.current.scrollLeft;
6976
+ if (e.target === castWrapperRef.current) e.preventDefault();
6977
+ }, []);
6978
+ var handleMouseMove = React.useCallback(function (e) {
6979
+ if (!isDraggingRef.current || !castWrapperRef.current) return;
6980
+ var deltaX = e.clientX - startXRef.current;
6981
+ var threshold = 5;
6982
+ if (Math.abs(deltaX) > threshold) {
6983
+ hasDraggedRef.current = true;
6984
+ e.preventDefault();
6985
+ castWrapperRef.current.scrollLeft = scrollStartRef.current - deltaX;
6986
+ }
6987
+ }, []);
6988
+ var handleMouseUp = React.useCallback(function () {
6989
+ isDraggingRef.current = false;
6990
+ setTimeout(function () {
6991
+ hasDraggedRef.current = false;
6992
+ }, 0);
6993
+ }, []);
6994
+ var handleMouseLeave = React.useCallback(function () {
6995
+ isDraggingRef.current = false;
6996
+ hasDraggedRef.current = false;
6997
+ }, []);
6998
+ var handleClick = React__default.useCallback(function (index, onClick) {
6999
+ if (hasDraggedRef.current) return;
7000
+ if (onSelect) onSelect(index);
7001
+ if (onClick) onClick();
7002
+ }, [onSelect]);
7003
+ var handlePersonKeydown = React__default.useCallback(function (e, index, onClick) {
7004
+ if (e.key === 'Enter') {
7005
+ handleClick(index, onClick);
7006
+ }
7007
+ }, [handleClick]);
7008
+ var handleClearKeydown = React__default.useCallback(function (e) {
7009
+ if (e.key === 'Enter' && onClear) {
7010
+ onClear();
7011
+ }
7012
+ }, [onClear]);
7013
+ var showActionButtonsSection = onApply || onClear || emptySelectionText;
7014
+ var getPersonCards = function getPersonCards() {
7015
+ return cast.map(function (person, index) {
7016
+ var name = person.name,
7017
+ image = person.image,
7018
+ _onClick = person.onClick,
7019
+ rest = _objectWithoutPropertiesLoose(person, _excluded$i);
7020
+ var isSelected = selectedIndices.includes(index);
7021
+ var personImage = image || placeholderImage || defaultPlaceholderImage;
7022
+ return /*#__PURE__*/React__default.createElement(PersonWrapper, {
7023
+ key: index,
7024
+ "aria-selected": isSelected,
7025
+ role: "option",
7026
+ tabIndex: 0,
7027
+ onKeyDown: function onKeyDown(e) {
7028
+ return handlePersonKeydown(e, index, _onClick);
7029
+ }
7030
+ }, /*#__PURE__*/React__default.createElement(PersonToggle, Object.assign({
7031
+ isSelected: isSelected,
7032
+ onClick: function onClick() {
7033
+ return handleClick(index, _onClick);
7034
+ }
7035
+ }, rest), /*#__PURE__*/React__default.createElement(PersonImage, {
7036
+ src: personImage,
7037
+ alt: image ? name : "Placeholder image for " + name,
7038
+ draggable: false,
7039
+ isDefaultPlaceholder: !(!!image || !!placeholderImage)
7040
+ }), /*#__PURE__*/React__default.createElement(Decal, {
7041
+ isSelected: isSelected
7042
+ }, /*#__PURE__*/React__default.createElement(Icon, {
7043
+ iconName: "Confirm",
7044
+ color: "white"
7045
+ }))), /*#__PURE__*/React__default.createElement(PersonName, null, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
7046
+ size: "medium"
7047
+ }, name)));
7048
+ });
7049
+ };
7050
+ return /*#__PURE__*/React__default.createElement(CastFiltersComponentWrapper, {
7051
+ className: className
7052
+ }, /*#__PURE__*/React__default.createElement(CastFiltersWrapper, null, /*#__PURE__*/React__default.createElement(Grid, null, headingText && (/*#__PURE__*/React__default.createElement(GridItem, {
7053
+ columnStartDesktop: 1,
7054
+ columnSpanDesktop: 10,
7055
+ columnStartDevice: 1,
7056
+ columnSpanDevice: 9
7057
+ }, /*#__PURE__*/React__default.createElement(HeadingTextWrapper, null, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
7058
+ size: "large"
7059
+ }, headingText)))), showRotatorButtons && (/*#__PURE__*/React__default.createElement(RotatorButtonsWrapper, {
7060
+ columnStartDesktop: 16,
7061
+ columnSpanDesktop: 2
7062
+ }, /*#__PURE__*/React__default.createElement(RotatorButtons, {
7063
+ size: "small",
7064
+ onClickNext: onNext,
7065
+ onClickPrev: onPrev,
7066
+ availablePrev: availablePrev,
7067
+ availableNext: availableNext
7068
+ })))), /*#__PURE__*/React__default.createElement(CastWrapper, {
7069
+ ref: castWrapperRef,
7070
+ role: "listbox",
7071
+ "aria-roledescription": listRoleDescription != null ? listRoleDescription : 'filter list',
7072
+ "aria-label": "filter list",
7073
+ "aria-multiselectable": true,
7074
+ onMouseDown: handleMouseDown,
7075
+ onMouseMove: handleMouseMove,
7076
+ onMouseUp: handleMouseUp,
7077
+ onMouseLeave: handleMouseLeave
7078
+ }, isMobile ? getPersonCards() : (/*#__PURE__*/React__default.createElement(Swipe, {
7079
+ onIndexChange: onIndexChangeHandler,
7080
+ "data-testid": "cast-filter-swipe",
7081
+ ref: swipeRef,
7082
+ onOverflowChange: handleOverflowChange
7083
+ }, getPersonCards())))), showActionButtonsSection && (/*#__PURE__*/React__default.createElement(ActionButtons, null, selectedIndices.length === 0 && emptySelectionText && (/*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
7084
+ size: "medium",
7085
+ className: "mobile-only"
7086
+ }, emptySelectionText)), selectedIndices.length === 0 && !emptySelectionText && /*#__PURE__*/React__default.createElement(EmptySelectionTextSpacer, null), selectedIndices.length > 0 && (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, onApply && /*#__PURE__*/React__default.createElement(PrimaryButton, {
7087
+ onClick: function onClick() {
7088
+ return onApply(selectedIndices);
7089
+ }
7090
+ }, ctaText != null ? ctaText : 'Apply'), onClear && (/*#__PURE__*/React__default.createElement(TextLink, {
7091
+ tabIndex: 0,
7092
+ role: "button",
7093
+ onClick: onClear,
7094
+ onKeyDown: handleClearKeydown
7095
+ }, textLinkText != null ? textLinkText : 'Clear')))))));
7457
7096
  };
7458
7097
 
7459
- var Image = function Image(_ref) {
7460
- var desktop = _ref.desktop,
7461
- mobile = _ref.mobile,
7462
- alt = _ref.alt,
7463
- isMobile = _ref.isMobile;
7464
- return /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
7465
- aspectRatio: isMobile ? exports.AspectRatio['75:32'] : exports.AspectRatio['90:17']
7466
- }, /*#__PURE__*/React__default.createElement("picture", {
7467
- "data-testid": "promo-heading-picture"
7468
- }, /*#__PURE__*/React__default.createElement("source", {
7469
- srcSet: mobile,
7470
- media: "(max-width: 768px)"
7471
- }), /*#__PURE__*/React__default.createElement("source", {
7472
- srcSet: desktop,
7473
- media: "(min-width: 769px)"
7474
- }), /*#__PURE__*/React__default.createElement("img", {
7475
- src: desktop,
7476
- alt: alt,
7477
- "data-testid": "promo-heading-image"
7478
- })));
7479
- };
7098
+ var _templateObject$L, _templateObject2$z, _templateObject3$n, _templateObject4$k, _templateObject5$g, _templateObject6$b, _templateObject7$8;
7099
+ var ContentWrapper = /*#__PURE__*/styled__default.div(_templateObject$L || (_templateObject$L = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n grid-column: 2 / span 12;\n }\n"])), devices.mobileAndTablet);
7100
+ var Wrapper$2 = /*#__PURE__*/styled__default.div(_templateObject2$z || (_templateObject2$z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n display: grid;\n grid-template-columns: var(--grid-template-columns);\n grid-template-rows: max-content;\n gap: var(--grid-column-gap);\n margin: 0;\n }\n"])), devices.mobileAndTablet);
7101
+ var AddressWrapper = /*#__PURE__*/styled__default.div(_templateObject3$n || (_templateObject3$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 4px;\n"])));
7102
+ var TitleWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject4$k || (_templateObject4$k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: baseline;\n gap: 3px;\n"])));
7103
+ var MobileSuffixWrapper = /*#__PURE__*/styled__default.div(_templateObject5$g || (_templateObject5$g = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n\n @media ", " {\n display: block;\n }\n"])), devices.mobile);
7104
+ var DesktopSuffixWrapper = /*#__PURE__*/styled__default.div(_templateObject6$b || (_templateObject6$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: block;\n\n @media ", " {\n display: none;\n }\n"])), devices.mobile);
7105
+ var DetailsWrapper = /*#__PURE__*/styled__default.div(_templateObject7$8 || (_templateObject7$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n a {\n font-family: var(--font-family-sans);\n font-weight: 400;\n font-size: 19px;\n line-height: 26px;\n letter-spacing: -0.5px;\n color: var(--color-base-black);\n text-decoration: underline;\n text-underline-offset: var(--harmonic-text-link-underline-offset);\n margin-right: 13px;\n display: inline-block;\n\n &:last-child {\n margin-right: 0;\n }\n\n @media ", " {\n font-size: 17px;\n line-height: 24px;\n }\n }\n"])), devices.mobile);
7480
7106
 
7481
- var TITLE_MAX_LENGTH = 40;
7482
- var PageHeadingPromo = function PageHeadingPromo(_ref) {
7483
- var _ref$sponsor = _ref.sponsor,
7484
- sponsor = _ref$sponsor === void 0 ? true : _ref$sponsor,
7485
- badge = _ref.badge,
7486
- mainLink = _ref.mainLink,
7487
- title = _ref.title,
7488
- titleSemanticLevel = _ref.titleSemanticLevel,
7489
- additionalLink = _ref.additionalLink,
7490
- image = _ref.image,
7107
+ var ContactCard = function ContactCard(_ref) {
7108
+ var title = _ref.title,
7109
+ titleSuffix = _ref.titleSuffix,
7110
+ description = _ref.description,
7111
+ email = _ref.email,
7112
+ phone = _ref.phone,
7113
+ website = _ref.website,
7114
+ address = _ref.address,
7491
7115
  className = _ref.className;
7492
- var _useViewport = useViewport(),
7493
- isMobile = _useViewport.isMobile,
7494
- hydrated = _useViewport.hydrated;
7495
- var theme = useHarmonicTheme();
7496
- var showImageButton = !title && !badge && !additionalLink && !isMobile;
7497
- var showContentBlock = !!title || !!additionalLink || !!mainLink && isMobile;
7498
- var truncatedTitle = title ? truncate(title, TITLE_MAX_LENGTH) : null;
7499
- if (!hydrated) return null;
7500
- return /*#__PURE__*/React__default.createElement(Wrapper$3, {
7116
+ var hasDetails = email || phone || website;
7117
+ var addressString = address == null ? void 0 : address.substring(0, 110);
7118
+ var descriptionText = description == null ? void 0 : description.substring(0, 110);
7119
+ return /*#__PURE__*/React__default.createElement("div", {
7501
7120
  className: className
7502
- }, sponsor && (/*#__PURE__*/React__default.createElement(SponsorWrapper$1, {
7503
- "data-testid": "promo-heading-sponsor"
7504
- }, /*#__PURE__*/React__default.createElement(Sponsorship, null))), /*#__PURE__*/React__default.createElement(ImageWrapper, null, /*#__PURE__*/React__default.createElement(Image, {
7505
- mobile: image.mobile,
7506
- desktop: image.desktop,
7507
- alt: image.alt,
7508
- isMobile: isMobile
7509
- }), showImageButton && mainLink && (/*#__PURE__*/React__default.createElement(ImageButtonWrapper, {
7510
- "data-testid": "promo-heading-image-button"
7511
- }, /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, mainLink, {
7512
- textColor: ThemeColor['base-black'],
7513
- backgroundColor: ThemeColor['base-white'],
7514
- hoveredColor: ThemeColor['white-hovered'],
7515
- pressedColor: ThemeColor['white-pressed']
7516
- }), mainLink.text)))), /*#__PURE__*/React__default.createElement(ContentSection, {
7517
- theme: theme,
7518
- showBlock: showContentBlock
7519
7121
  }, /*#__PURE__*/React__default.createElement(Grid, null, /*#__PURE__*/React__default.createElement(GridItem, {
7520
- columnStartDesktop: 2,
7521
- columnSpanDesktop: 14,
7522
- columnStartDevice: 2,
7523
- columnSpanDevice: 12
7524
- }, /*#__PURE__*/React__default.createElement(ContentWrapper$1, {
7525
- theme: theme
7526
- }, !isMobile && (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, (badge || additionalLink) && (/*#__PURE__*/React__default.createElement(AdditionalContentWrapper, {
7527
- isBadgePresent: !!badge
7528
- }, /*#__PURE__*/React__default.createElement(Badge, {
7529
- theme: theme,
7530
- badge: badge,
7531
- isMobile: isMobile
7532
- }), !badge && (/*#__PURE__*/React__default.createElement(AdditionalButtonWrapper, null, /*#__PURE__*/React__default.createElement(Button$1, {
7533
- theme: theme,
7534
- link: additionalLink
7535
- }))))), title && (/*#__PURE__*/React__default.createElement(TitleWrapper$3, {
7536
- theme: theme,
7537
- isButtonPresent: !!mainLink || !!additionalLink
7538
- }, /*#__PURE__*/React__default.createElement(HarmonicHeader, {
7539
- hierarchy: titleSemanticLevel != null ? titleSemanticLevel : 'h1',
7122
+ columnStartDesktop: 3,
7123
+ columnSpanDesktop: 12,
7124
+ columnStartDevice: 1,
7125
+ columnSpanDevice: 14
7126
+ }, /*#__PURE__*/React__default.createElement(Wrapper$2, {
7127
+ "data-testid": "contact-card-wrapper"
7128
+ }, /*#__PURE__*/React__default.createElement(ContentWrapper, null, /*#__PURE__*/React__default.createElement(TitleWrapper$1, null, /*#__PURE__*/React__default.createElement(HarmonicSubtitle, {
7540
7129
  size: "large"
7541
- }, truncatedTitle))), mainLink && !showImageButton && (/*#__PURE__*/React__default.createElement(MainButtonWrapper, {
7542
- isAdditionalButtonPresent: !!additionalLink && !badge
7543
- }, /*#__PURE__*/React__default.createElement(Button$1, {
7544
- theme: theme,
7545
- link: mainLink,
7546
- isMobile: isMobile
7547
- }))))), isMobile && (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, badge && (/*#__PURE__*/React__default.createElement(AdditionalContentWrapper, {
7548
- isBadgePresent: !!badge
7549
- }, /*#__PURE__*/React__default.createElement(Badge, {
7550
- theme: theme,
7551
- badge: badge,
7552
- isMobile: isMobile
7553
- }))), title && (/*#__PURE__*/React__default.createElement(TitleWrapper$3, {
7554
- theme: theme,
7555
- isButtonPresent: !!mainLink || !!additionalLink
7556
- }, /*#__PURE__*/React__default.createElement(HarmonicHeader, {
7557
- hierarchy: titleSemanticLevel != null ? titleSemanticLevel : 'h1',
7130
+ }, title), /*#__PURE__*/React__default.createElement(MobileSuffixWrapper, null, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
7131
+ size: "small"
7132
+ }, titleSuffix)), /*#__PURE__*/React__default.createElement(DesktopSuffixWrapper, null, /*#__PURE__*/React__default.createElement(HarmonicOverline, {
7133
+ size: "small"
7134
+ }, titleSuffix))), descriptionText && /*#__PURE__*/React__default.createElement(HarmonicSubtitle, {
7558
7135
  size: "large"
7559
- }, truncatedTitle))), mainLink && !showImageButton && (/*#__PURE__*/React__default.createElement(MainButtonWrapper, {
7560
- isAdditionalButtonPresent: !!additionalLink && !badge
7561
- }, /*#__PURE__*/React__default.createElement(Button$1, {
7562
- theme: theme,
7563
- link: mainLink,
7564
- isMobile: isMobile
7565
- }))), !badge && additionalLink && (/*#__PURE__*/React__default.createElement(AdditionalContentWrapper, {
7566
- isBadgePresent: !!badge
7567
- }, /*#__PURE__*/React__default.createElement(AdditionalButtonWrapper, null, /*#__PURE__*/React__default.createElement(Button$1, {
7568
- theme: theme,
7569
- link: additionalLink
7570
- })))))))))));
7136
+ }, descriptionText), hasDetails && (/*#__PURE__*/React__default.createElement(DetailsWrapper, {
7137
+ "data-testid": "contact-card-details-block"
7138
+ }, email && (/*#__PURE__*/React__default.createElement("a", {
7139
+ tabIndex: 0,
7140
+ href: "mailto:" + email
7141
+ }, email)), phone && (/*#__PURE__*/React__default.createElement("a", {
7142
+ tabIndex: 0,
7143
+ href: "tel:" + phone
7144
+ }, phone)), website && (/*#__PURE__*/React__default.createElement("a", {
7145
+ tabIndex: 0,
7146
+ href: website,
7147
+ target: "_blank",
7148
+ rel: "noreferrer"
7149
+ }, website)))), addressString && (/*#__PURE__*/React__default.createElement("div", {
7150
+ "data-testid": "contact-card-address-block"
7151
+ }, /*#__PURE__*/React__default.createElement(AddressWrapper, null, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
7152
+ size: "large"
7153
+ }, addressString)))))))));
7571
7154
  };
7572
7155
 
7573
- var _templateObject$T, _templateObject2$H, _templateObject3$w, _templateObject4$s;
7574
- var GRID = {
7575
- desktop: {
7576
- leftWithImage: '1 / 1 / 3 / 7',
7577
- leftNoImage: '1 / 1 / 3 / 12',
7578
- right: '1 / 7 / 3 / 17'
7579
- },
7580
- mobile: {
7581
- leftWithImage: '3 / 1 / 4 / 15',
7582
- leftNoImage: '1 / 1 / 3 / 15',
7583
- right: '2 / 1 / 3 / 15'
7584
- }
7585
- };
7586
- var HighlightPanelGrid = /*#__PURE__*/styled__default(Grid)(_templateObject$T || (_templateObject$T = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 0 var(--grid-column-gap);\n background-color: ", ";\n color: var(--color-base-white);\n"])), function (_ref) {
7587
- var $background = _ref.$background;
7588
- return "var(--color-" + $background + ")";
7589
- });
7590
- var LeftPanel$1 = /*#__PURE__*/styled__default.div(_templateObject2$H || (_templateObject2$H = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: ", ";\n\n box-sizing: border-box;\n height: 100%;\n display: grid;\n grid-auto-rows: 90% 1fr;\n gap: 0 36px;\n align-items: center;\n\n @media ", " {\n grid-area: ", ";\n }\n"])), function (_ref2) {
7591
- var hasImage = _ref2.hasImage;
7592
- return hasImage ? GRID.desktop.leftWithImage : GRID.desktop.leftNoImage;
7593
- }, devices.mobileAndTablet, function (_ref3) {
7594
- var hasImage = _ref3.hasImage;
7595
- return hasImage ? GRID.mobile.leftWithImage : GRID.mobile.leftNoImage;
7156
+ var _templateObject$M, _templateObject2$A, _templateObject3$o, _templateObject4$l, _templateObject5$h, _templateObject6$c;
7157
+ var BodyTextRelative = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject$M || (_templateObject$M = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n"])));
7158
+ var ContentSummaryWrapper = /*#__PURE__*/styled__default.article(_templateObject2$A || (_templateObject2$A = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n position: relative;\n justify-items: start;\n align-items: center;\n margin: 20px 0;\n gap: 36px;\n cursor: ", ";\n\n @media ", " {\n display: flex;\n flex-direction: column;\n gap: 24px;\n }\n"])), function (props) {
7159
+ return props.clickable ? 'pointer' : 'default';
7160
+ }, devices.mobile);
7161
+ var ContentSummaryImageWrapper = /*#__PURE__*/styled__default.div(_templateObject3$o || (_templateObject3$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n flex: 0 0 33.3%;\n"])));
7162
+ var ContentSummaryTextWrapper = /*#__PURE__*/styled__default.div(_templateObject4$l || (_templateObject4$l = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-column: ", ";\n display: flex;\n flex-direction: column;\n justify-content: space-around;\n gap: 20px;\n\n & * {\n margin-block-start: 0;\n margin-block-end: 0;\n }\n\n @media ", " {\n margin: 0 20px;\n }\n\n & .content-summary-text-link {\n height: unset;\n }\n"])), function (props) {
7163
+ return props.showImage ? 2 : '1 / span 4';
7164
+ }, devices.mobile);
7165
+ var BodyTextLimit = /*#__PURE__*/styled__default.div(_templateObject5$h || (_templateObject5$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: block;\n position: relative;\n"])));
7166
+ var ContentSummaryBodyTextWrapper = /*#__PURE__*/styled__default.div(_templateObject6$c || (_templateObject6$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n & p:not(:last-child):after {\n content: '\\A\\A';\n white-space: pre;\n }\n\n ", "\n"], ["\n & p:not(:last-child):after {\n content: '\\\\A\\\\A';\n white-space: pre;\n }\n\n ", "\n"])), function (props) {
7167
+ return !!props.truncate && "\n overflow: hidden;\n position: relative;\n display: -webkit-box;\n -webkit-line-clamp: " + props.truncate + ";\n -webkit-box-orient: vertical;\n text-overflow: ellipsis;\n min-height: 1em;\n max-height: 3em;\n ";
7596
7168
  });
7597
- var RightPanel$1 = /*#__PURE__*/styled__default.div(_templateObject3$w || (_templateObject3$w = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: ", ";\n position: relative;\n height: 100%;\n width: 100%;\n background-color: var(--color-base-black);\n\n @media ", " {\n grid-area: ", ";\n }\n"])), GRID.desktop.right, devices.mobileAndTablet, GRID.mobile.right);
7598
- var Wrapper$4 = /*#__PURE__*/styled__default.div(_templateObject4$s || (_templateObject4$s = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin: 36px 36px 36px 50px;\n overflow: hidden;\n\n :first-child * {\n margin-block-start: 0;\n }\n\n @media ", " {\n margin: 36px 20px 5px 20px;\n max-height: unset;\n }\n"])), devices.mobileAndTablet);
7599
7169
 
7600
- var PageHeadingHighlight = function PageHeadingHighlight(_ref) {
7601
- var _image$src, _image$alt;
7602
- var image = _ref.image,
7603
- children = _ref.children,
7604
- _ref$background = _ref.background,
7605
- background = _ref$background === void 0 ? 'base-black' : _ref$background,
7170
+ /* eslint-disable no-shadow */
7171
+ (function (CarouselType) {
7172
+ CarouselType["Image"] = "image";
7173
+ CarouselType["SmallCard"] = "SmallCard";
7174
+ CarouselType["LargeCard"] = "LargeCard";
7175
+ CarouselType["PersonCard"] = "PersonCard";
7176
+ })(exports.CarouselType || (exports.CarouselType = {}));
7177
+
7178
+ var clickHandler = function clickHandler(link) {
7179
+ if (link != null && link.href && document) {
7180
+ document.location.href = link.href;
7181
+ }
7182
+ };
7183
+ var ContentSummary = function ContentSummary(_ref) {
7184
+ var title = _ref.title,
7185
+ subtitle = _ref.subtitle,
7186
+ bodyText = _ref.bodyText,
7187
+ link = _ref.link,
7188
+ image = _ref.image,
7189
+ _ref$largeTitle = _ref.largeTitle,
7190
+ largeTitle = _ref$largeTitle === void 0 ? false : _ref$largeTitle,
7191
+ _ref$showImage = _ref.showImage,
7192
+ showImage = _ref$showImage === void 0 ? false : _ref$showImage,
7193
+ _ref$truncate = _ref.truncate,
7194
+ truncate = _ref$truncate === void 0 ? 0 : _ref$truncate,
7195
+ _ref$fullyClickable = _ref.fullyClickable,
7196
+ fullyClickable = _ref$fullyClickable === void 0 ? true : _ref$fullyClickable,
7197
+ _ref$headerSemanticLe = _ref.headerSemanticLevel,
7198
+ headerSemanticLevel = _ref$headerSemanticLe === void 0 ? 'h3' : _ref$headerSemanticLe,
7606
7199
  className = _ref.className;
7607
- return /*#__PURE__*/React__default.createElement(HighlightPanelGrid, {
7200
+ return /*#__PURE__*/React__default.createElement(ContentSummaryWrapper, {
7608
7201
  className: className,
7609
- "$background": background,
7610
- "data-testid": "highlight-heading-wrapper"
7611
- }, /*#__PURE__*/React__default.createElement(LeftPanel$1, {
7612
- hasImage: !!image
7613
- }, /*#__PURE__*/React__default.createElement(Wrapper$4, null, children)), image && (/*#__PURE__*/React__default.createElement(RightPanel$1, null, /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
7202
+ onClick: function onClick() {
7203
+ if (fullyClickable) {
7204
+ clickHandler(link);
7205
+ }
7206
+ },
7207
+ clickable: fullyClickable,
7208
+ "data-roh": "content-summary-item"
7209
+ }, showImage && image && (/*#__PURE__*/React__default.createElement(ContentSummaryImageWrapper, {
7210
+ "data-testid": "image-wrapper"
7211
+ }, link != null && link.href ? (/*#__PURE__*/React__default.createElement("a", {
7212
+ href: link.href
7213
+ }, /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
7614
7214
  aspectRatio: exports.AspectRatio['4:3']
7615
7215
  }, /*#__PURE__*/React__default.createElement("img", {
7616
- src: (_image$src = image == null ? void 0 : image.src) != null ? _image$src : '',
7617
- alt: (_image$alt = image == null ? void 0 : image.alt) != null ? _image$alt : ''
7618
- })))));
7216
+ src: image.src,
7217
+ alt: image.alt
7218
+ })))) : (/*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
7219
+ aspectRatio: exports.AspectRatio['4:3']
7220
+ }, /*#__PURE__*/React__default.createElement("img", {
7221
+ src: image.src,
7222
+ alt: image.alt
7223
+ }))))), /*#__PURE__*/React__default.createElement(ContentSummaryTextWrapper, {
7224
+ showImage: showImage
7225
+ }, title && (/*#__PURE__*/React__default.createElement("div", {
7226
+ "data-testid": largeTitle ? 'large-title' : 'default-title'
7227
+ }, largeTitle ? (/*#__PURE__*/React__default.createElement(HarmonicHeader, {
7228
+ size: "large",
7229
+ hierarchy: headerSemanticLevel
7230
+ }, title)) : (/*#__PURE__*/React__default.createElement(HarmonicHeader, {
7231
+ size: "medium",
7232
+ hierarchy: headerSemanticLevel
7233
+ }, title)))), subtitle && /*#__PURE__*/React__default.createElement(HarmonicSubtitle, {
7234
+ size: "large"
7235
+ }, subtitle), bodyText && (/*#__PURE__*/React__default.createElement(BodyTextRelative, {
7236
+ size: "large"
7237
+ }, /*#__PURE__*/React__default.createElement(BodyTextLimit, null, /*#__PURE__*/React__default.createElement(ContentSummaryBodyTextWrapper, {
7238
+ truncate: truncate,
7239
+ dangerouslySetInnerHTML: {
7240
+ __html: bodyText
7241
+ },
7242
+ "data-testid": "body-text"
7243
+ })))), (link == null ? void 0 : link.href) && link.text && (/*#__PURE__*/React__default.createElement(TertiaryButton, Object.assign({}, link, {
7244
+ className: "content-summary-text-link"
7245
+ }), link.text))));
7619
7246
  };
7620
7247
 
7621
- var _templateObject$U, _templateObject2$I, _templateObject3$x, _templateObject5$m, _templateObject6$f, _templateObject7$b, _templateObject8$7, _templateObject9$4, _templateObject0$4;
7622
- var BrandingTextBlock = /*#__PURE__*/styled__default.div(_templateObject$U || (_templateObject$U = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-size: var(--font-size-body-2);\n font-family: var(--font-family-header);\n text-transform: uppercase;\n margin: 0;\n white-space: nowrap;\n @media screen and (max-width: 920px) {\n white-space: normal;\n }\n @media ", " {\n white-space: nowrap;\n }\n"])), devices.mobile);
7623
- var BrandingTextBody = /*#__PURE__*/styled__default.div(_templateObject2$I || (_templateObject2$I = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-family: var(--font-family-body);\n font-size: var(--font-size-heading-6);\n line-height: var(--line-height-heading-6);\n"])));
7624
- var ComapctHeaderWrapper = /*#__PURE__*/styled__default.div(_templateObject3$x || (_templateObject3$x = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n display: block;\n"])));
7625
- var CompactHeaderAssetWrapper = /*#__PURE__*/styled__default.div(_templateObject5$m || (_templateObject5$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 37.5vw;\n width: 100%;\n position: relative;\n overflow: hidden;\n background-color: #000;\n img {\n position: relative;\n height: 100%;\n width: 100%;\n object-fit: cover;\n }\n video {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n object-fit: contain;\n @media ", " {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n margin: auto;\n height: auto;\n max-height: 100vh;\n width: 100%;\n object-fit: contain;\n }\n }\n @media ", " {\n height: 85vw;\n max-height: 100vh;\n }\n"])), devices.mobile, devices.mobile);
7626
- var CompactHeaderCopyWrapper = /*#__PURE__*/styled__default(Grid)(_templateObject6$f || (_templateObject6$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n height: 160px;\n grid-template-rows: min-content min-content;\n grid-template-rows: min-content min-content;\n grid-template-columns: [logo] 1fr [title] 3fr [cta] 1fr;\n align-content: center;\n gap: 0;\n background-color: ", ";\n color: ", ";\n\n svg {\n width: 210px;\n fill: ", ";\n }\n\n h1::selection,\n div::selection {\n ", ";\n }\n\n @media ", " {\n svg {\n width: 145px;\n }\n }\n\n @media ", " {\n display: flex;\n flex-direction: column;\n height: auto;\n padding: 32px 20px;\n\n svg {\n width: 180px;\n }\n }\n"])), function (_ref) {
7627
- var invert = _ref.invert,
7628
- theme = _ref.theme;
7629
- return invert ? theme.colors.white : theme.colors.primary;
7630
- }, function (_ref2) {
7631
- var invert = _ref2.invert,
7632
- theme = _ref2.theme;
7633
- return invert ? theme.colors.black : theme.colors.white;
7634
- }, function (_ref3) {
7635
- var invert = _ref3.invert,
7636
- theme = _ref3.theme;
7637
- return invert ? theme.colors.black : theme.colors.white;
7638
- }, function (_ref4) {
7639
- var theme = _ref4.theme;
7640
- return theme.colors.primary === theme.colors.stream && "\n color: " + theme.colors.stream + ";\n background-color: " + theme.colors.white + ";\n ";
7641
- }, devices.tablet, devices.mobile);
7642
- var CompactHeaderLogoWrapper = /*#__PURE__*/styled__default.div(_templateObject7$b || (_templateObject7$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n grid-area: logo;\n padding-left: 50px;\n justify-content: left;\n align-items: center;\n width: 100%;\n @media ", " {\n padding-left: 0px;\n justify-content: center;\n }\n @media ", " {\n width: fit-content;\n }\n"])), devices.mobile, devices.tablet);
7643
- var CompactHeaderTitleWrapper = /*#__PURE__*/styled__default.div(_templateObject8$7 || (_templateObject8$7 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n grid-area: title;\n align-items: center;\n justify-content: center;\n font-family: var(--font-family-header);\n text-transform: uppercase;\n text-align: center;\n padding: 0 2em;\n @media ", " {\n justify-content: center;\n }\n"])), devices.mobile);
7644
- var CompactHeaderCTAWrapper = /*#__PURE__*/styled__default.div(_templateObject9$4 || (_templateObject9$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n grid-area: cta;\n justify-content: right;\n align-items: center;\n padding-right: 50px;\n @media ", " {\n padding-right: 0px;\n justify-content: center;\n }\n"])), devices.mobile);
7645
- var PrimaryButtonWithInversion = /*#__PURE__*/styled__default(PrimaryButton)(_templateObject0$4 || (_templateObject0$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background-color: ", ";\n color: ", ";\n svg {\n fill: ", ";\n path {\n fill: ", ";\n }\n }\n min-width: 145px;\n"])), function (_ref5) {
7646
- var invert = _ref5.invert,
7248
+ var _templateObject$N, _templateObject2$B, _templateObject3$p, _templateObject4$m, _templateObject5$i;
7249
+ var EditorialGrid = /*#__PURE__*/styled__default.div(_templateObject$N || (_templateObject$N = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: grid;\n grid-template-columns: repeat(12, minmax(0, 1fr));\n gap: var(--grid-column-gap);\n grid-template-areas: ", ";\n\n @media ", " {\n & {\n display: grid;\n grid-template-columns: 100%;\n grid-template-rows: min-content 24px min-content;\n grid-template-areas:\n 'row1'\n '.'\n 'row2';\n }\n }\n"])), function (_ref) {
7250
+ var imageToLeft = _ref.imageToLeft;
7251
+ return imageToLeft ? "'left left left left left . right right right right right right'" : "'left left left left left left . right right right right right'";
7252
+ }, devices.mobile);
7253
+ var EditorialImageWrapper = /*#__PURE__*/styled__default.div(_templateObject2$B || (_templateObject2$B = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n align-self: center;\n grid-area: ", ";\n @media ", " {\n & {\n grid-area: row1;\n }\n"])), function (_ref2) {
7254
+ var imageToLeft = _ref2.imageToLeft;
7255
+ return imageToLeft ? 'left' : 'right';
7256
+ }, devices.mobile);
7257
+ var EditorialTextWrapper = /*#__PURE__*/styled__default.div(_templateObject3$p || (_templateObject3$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: ", ";\n align-self: center;\n @media ", " {\n & {\n grid-area: row2;\n align-self: start;\n }\n"])), function (_ref3) {
7258
+ var imageToLeft = _ref3.imageToLeft;
7259
+ return imageToLeft ? 'right' : 'left';
7260
+ }, devices.mobile);
7261
+ var EditorialSubtitle = /*#__PURE__*/styled__default(HarmonicSubtitle)(_templateObject4$m || (_templateObject4$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-feature-settings: var(--font-feature-settings-subtitle);\n text-transform: var(--text-transform-subtitle);\n margin-bottom: var(--editorial-subtitle-margin-bottom);\n display: block;\n overflow-wrap: break-word;\n"])));
7262
+ var EditorialText = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject5$i || (_templateObject5$i = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-feature-settings: var(--font-feature-settings-body);\n text-transform: var(--text-transform-body);\n margin: 0;\n padding: 0;\n white-space: break-spaces;\n overflow-wrap: break-word;\n\n em {\n font-family: var(--font-family-body-italics);\n }\n"])));
7263
+
7264
+ var Editorial = function Editorial(_ref) {
7265
+ var _ref$imagePosition = _ref.imagePosition,
7266
+ imagePosition = _ref$imagePosition === void 0 ? 'left' : _ref$imagePosition,
7267
+ subtitle = _ref.subtitle,
7268
+ text = _ref.text,
7269
+ children = _ref.children,
7270
+ className = _ref.className;
7271
+ var imageToLeft = imagePosition === 'left';
7272
+ return /*#__PURE__*/React__default.createElement(Grid, {
7273
+ className: className,
7274
+ "data-testid": "editorial-component"
7275
+ }, /*#__PURE__*/React__default.createElement(GridItem, {
7276
+ columnStartDesktop: 3,
7277
+ columnSpanDesktop: 12,
7278
+ columnStartDevice: 2,
7279
+ columnSpanDevice: 12
7280
+ }, /*#__PURE__*/React__default.createElement(EditorialGrid, {
7281
+ imageToLeft: imageToLeft
7282
+ }, /*#__PURE__*/React__default.createElement(EditorialImageWrapper, {
7283
+ "data-testid": "image-wrapper",
7284
+ imageToLeft: imageToLeft
7285
+ }, /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
7286
+ aspectRatio: exports.AspectRatio['1:1']
7287
+ }, children)), /*#__PURE__*/React__default.createElement(EditorialTextWrapper, {
7288
+ "data-testid": "text-wrapper",
7289
+ imageToLeft: imageToLeft
7290
+ }, subtitle ? /*#__PURE__*/React__default.createElement(EditorialSubtitle, {
7291
+ tag: "span"
7292
+ }, subtitle) : null, /*#__PURE__*/React__default.createElement(EditorialText, {
7293
+ tag: "div",
7294
+ size: "large",
7295
+ dangerouslySetInnerHTML: {
7296
+ __html: text
7297
+ }
7298
+ })))));
7299
+ };
7300
+
7301
+ var _templateObject$O, _templateObject2$C, _templateObject3$q;
7302
+ var HotFiltersWrapper = /*#__PURE__*/styled__default.div(_templateObject$O || (_templateObject$O = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow-x: scroll;\n\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n ::-webkit-scrollbar {\n display: none;\n }\n"])));
7303
+ var HotFilterOptionsWrapper = /*#__PURE__*/styled__default.div(_templateObject2$C || (_templateObject2$C = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n width: fit-content;\n min-width: 400px;\n justify-content: space-between;\n gap: 16px;\n font-family: var(--font-family-sans);\n\n @media ", " {\n gap: 10px;\n }\n"])), devices.mobile);
7304
+ var StyledHotFiltersButton = /*#__PURE__*/styled__default(PrimaryButton)(_templateObject3$q || (_templateObject3$q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n border: 1px solid var(--color-base-black);\n min-width: fit-content;\n\n :hover {\n color: var(--color-base-white);\n }\n"])));
7305
+
7306
+ var _excluded$j = ["text", "onClick"];
7307
+ var HotFilters = function HotFilters(_ref) {
7308
+ var items = _ref.items,
7309
+ className = _ref.className,
7310
+ _ref$selectedIndex = _ref.selectedIndex,
7311
+ selectedIndex = _ref$selectedIndex === void 0 ? 0 : _ref$selectedIndex,
7312
+ onSelect = _ref.onSelect;
7313
+ var handleClick = React__default.useCallback(function (index, onClick) {
7314
+ if (onSelect) onSelect(index);
7315
+ if (onClick) onClick();
7316
+ }, [onSelect]);
7317
+ return /*#__PURE__*/React__default.createElement(HotFiltersWrapper, {
7318
+ className: className
7319
+ }, /*#__PURE__*/React__default.createElement(HotFilterOptionsWrapper, null, items.map(function (item, index) {
7320
+ var text = item.text,
7321
+ _onClick = item.onClick,
7322
+ rest = _objectWithoutPropertiesLoose(item, _excluded$j);
7323
+ var isSelected = index === selectedIndex;
7324
+ return /*#__PURE__*/React__default.createElement(StyledHotFiltersButton, Object.assign({
7325
+ key: index,
7326
+ onClick: function onClick() {
7327
+ return handleClick(index, _onClick);
7328
+ },
7329
+ iconName: isSelected ? 'Confirm' : undefined,
7330
+ backgroundColor: isSelected ? 'base-black' : 'base-white',
7331
+ textColor: isSelected ? 'base-white' : 'base-black',
7332
+ hoveredColor: "base-black",
7333
+ pressedColor: "black-pressed",
7334
+ "aria-pressed": isSelected
7335
+ }, rest), text);
7336
+ })));
7337
+ };
7338
+
7339
+ var InformationCtaVariants = {
7340
+ Primary: 'Primary',
7341
+ Secondary: 'Secondary',
7342
+ Tertiary: 'Tertiary',
7343
+ TextLink: 'TextLink'
7344
+ };
7345
+
7346
+ var COLORS$4 = {
7347
+ "default": 'var(--information-panel-button-color)',
7348
+ background: 'var(--information-panel-button-bg-color)',
7349
+ hover: 'var(--information-panel-button-hover-color)',
7350
+ pressed: 'var(--information-panel-button-pressed-color)'
7351
+ };
7352
+ var getTextColor$4 = function getTextColor(variant, theme, colorValue) {
7353
+ if (theme === exports.ThemeType.Cinema && (variant === InformationCtaVariants.Tertiary || variant === InformationCtaVariants.TextLink)) {
7354
+ return 'var(--color-primary-black)';
7355
+ }
7356
+ if (variant === InformationCtaVariants.Primary) {
7357
+ return COLORS$4["default"];
7358
+ }
7359
+ return colorValue;
7360
+ };
7361
+ var getBackgroundColor$2 = function getBackgroundColor(variant, colorValue) {
7362
+ return variant === InformationCtaVariants.Primary || variant === undefined ? "background-color: " + colorValue + ";" : '';
7363
+ };
7364
+ var getBorderColor$1 = function getBorderColor(variant, colorValue) {
7365
+ return variant === InformationCtaVariants.Primary || variant === InformationCtaVariants.Secondary || variant === undefined ? "border-color: " + colorValue + ";" : '';
7366
+ };
7367
+
7368
+ var _templateObject$P, _templateObject2$D, _templateObject3$r, _templateObject4$n;
7369
+ var InfoWrapper = /*#__PURE__*/styled__default(Grid)(_templateObject$P || (_templateObject$P = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 60px 0;\n color: var(--information-panel-color);\n background-color: var(--information-panel-bg-color);\n\n @media ", " {\n padding: 40px 0;\n }\n"])), devices.mobile);
7370
+ var InfoTitle = /*#__PURE__*/styled__default('div')(_templateObject2$D || (_templateObject2$D = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n * {\n margin-block: 0;\n }\n"])));
7371
+ var InfoCTAWrapper = /*#__PURE__*/styled__default('div')(_templateObject3$r || (_templateObject3$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n\n @media ", " {\n margin-top: 16px;\n }\n\n a {\n color: ", ";\n ", "\n ", "\n\n svg path {\n fill: ", ";\n }\n\n :hover:not(:active) {\n color: ", ";\n ", "\n ", "\n\n svg path {\n fill: ", ";\n }\n }\n\n :active {\n color: ", ";\n ", "\n ", "\n\n svg path {\n fill: ", ";\n }\n }\n }\n"])), devices.mobile, function (_ref) {
7372
+ var variant = _ref.variant,
7373
+ theme = _ref.theme;
7374
+ return getTextColor$4(variant, theme, COLORS$4.background);
7375
+ }, function (_ref2) {
7376
+ var variant = _ref2.variant;
7377
+ return getBackgroundColor$2(variant, COLORS$4.background);
7378
+ }, function (_ref3) {
7379
+ var variant = _ref3.variant;
7380
+ return getBorderColor$1(variant, COLORS$4.background);
7381
+ }, function (_ref4) {
7382
+ var variant = _ref4.variant,
7383
+ theme = _ref4.theme;
7384
+ return getTextColor$4(variant, theme, COLORS$4.background);
7385
+ }, function (_ref5) {
7386
+ var variant = _ref5.variant,
7647
7387
  theme = _ref5.theme;
7648
- return invert ? theme.colors.primary : theme.colors.white;
7388
+ return getTextColor$4(variant, theme, COLORS$4.hover);
7649
7389
  }, function (_ref6) {
7650
- var invert = _ref6.invert,
7651
- theme = _ref6.theme;
7652
- return invert ? theme.colors.white : theme.colors.black;
7390
+ var variant = _ref6.variant;
7391
+ return getBackgroundColor$2(variant, COLORS$4.hover);
7653
7392
  }, function (_ref7) {
7654
- var invert = _ref7.invert,
7655
- theme = _ref7.theme;
7656
- return invert ? theme.colors.white : theme.colors.black;
7393
+ var variant = _ref7.variant;
7394
+ return getBorderColor$1(variant, COLORS$4.hover);
7657
7395
  }, function (_ref8) {
7658
- var invert = _ref8.invert,
7396
+ var variant = _ref8.variant,
7659
7397
  theme = _ref8.theme;
7660
- return invert ? theme.colors.white : theme.colors.black;
7398
+ return getTextColor$4(variant, theme, COLORS$4.hover);
7399
+ }, function (_ref9) {
7400
+ var variant = _ref9.variant,
7401
+ theme = _ref9.theme;
7402
+ return getTextColor$4(variant, theme, COLORS$4.pressed);
7403
+ }, function (_ref0) {
7404
+ var variant = _ref0.variant;
7405
+ return getBackgroundColor$2(variant, COLORS$4.pressed);
7406
+ }, function (_ref1) {
7407
+ var variant = _ref1.variant;
7408
+ return getBorderColor$1(variant, COLORS$4.pressed);
7409
+ }, function (_ref10) {
7410
+ var variant = _ref10.variant,
7411
+ theme = _ref10.theme;
7412
+ return getTextColor$4(variant, theme, COLORS$4.pressed);
7661
7413
  });
7414
+ var InfoBodyWrapper = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject4$n || (_templateObject4$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--information-panel-color);\n\n a {\n text-decoration: underline;\n text-underline-offset: var(--harmonic-text-link-underline-offset);\n color: var(--information-panel-color);\n }\n\n @media ", " {\n padding-top: 4px;\n }\n"])), devices.mobile);
7662
7415
 
7663
- // Function to check if a URL is from the same site
7664
- // NOTE: This function is not SSR compatible
7665
- var isSameSiteUrl = function isSameSiteUrl(url) {
7666
- var _window;
7667
- if (url[0] === '/') return true; // URL is relative (e.g. /about)
7668
- if (!((_window = window) != null && _window.location)) return false; // window.location is not available (e.g. in SSR)
7669
- var currentPageURL = window.location.href || '';
7670
- var regexPattern = /^(https?:\/\/)?(www\d?\.)?([\w.-]+)\.\w+.*$/;
7671
- var match = url.match(regexPattern);
7672
- if (match != null && match[3] && currentPageURL) {
7673
- var urlDomain = match[3]; // Extract the domain from the third capture group
7674
- var currentMatch = currentPageURL.match(regexPattern);
7675
- if (currentMatch) {
7676
- var currentDomain = currentMatch[3];
7677
- return urlDomain === currentDomain;
7678
- }
7679
- }
7680
- return false; // URL didn't match the pattern
7681
- };
7682
- // Hook to check if a URL is from the same site - use for SSR
7683
- var useSameSiteUrl = function useSameSiteUrl(url) {
7684
- var _useState = React.useState(false),
7685
- hasSameSiteUrl = _useState[0],
7686
- setSameSiteUrl = _useState[1];
7687
- React.useEffect(function () {
7688
- setSameSiteUrl(isSameSiteUrl(url));
7689
- }, [url]);
7690
- return hasSameSiteUrl;
7691
- };
7416
+ var coreThemeStyles = {"coreTheme":"core-theme-module_coreTheme__pWxYB"};
7692
7417
 
7693
- var renderBranding = function renderBranding(brandingStyle, invert, brandingText, brandingLink) {
7694
- // eslint-disable-next-line react-hooks/rules-of-hooks
7695
- var sameSiteUrl = brandingLink && useSameSiteUrl(brandingLink);
7696
- var target = sameSiteUrl ? '_self' : '_blank';
7697
- var color = invert ? ThemeColor['base-black'] : ThemeColor['base-white'];
7698
- switch (brandingStyle) {
7699
- case 'BlockText':
7700
- return (brandingText == null ? void 0 : brandingText.trim()) && /*#__PURE__*/React__default.createElement(BrandingTextBlock, null, truncate(stripAllHtmlTags(brandingText), 25));
7701
- case 'BodyText':
7702
- return (brandingText == null ? void 0 : brandingText.trim()) && (/*#__PURE__*/React__default.createElement(BrandingTextBody, {
7703
- dangerouslySetInnerHTML: {
7704
- __html: truncateHtmlString(brandingText, 65)
7705
- }
7706
- }));
7707
- case 'TextLink':
7708
- return (brandingText == null ? void 0 : brandingText.trim()) && brandingLink && (/*#__PURE__*/React__default.createElement(TextLink, {
7709
- target: target,
7710
- href: brandingLink,
7711
- color: color
7712
- }, truncate(stripAllHtmlTags(brandingText), 25)));
7713
- case 'StreamLogo':
7714
- return /*#__PURE__*/React__default.createElement(StreamBadge, {
7715
- invert: invert
7716
- });
7717
- case 'CinemaLogo':
7718
- return /*#__PURE__*/React__default.createElement(CinemaBadge, {
7719
- invert: invert
7720
- });
7418
+ var streamThemeStyles = {"streamTheme":"stream-theme-module_streamTheme__lTfqQ"};
7419
+
7420
+ var cinemaThemeStyles = {"cinemaTheme":"cinema-theme-module_cinemaTheme__f5QFs"};
7421
+
7422
+ var schoolsThemeStyles = {"schoolsTheme":"schools-theme-module_schoolsTheme__CWHba"};
7423
+
7424
+ /* eslint-disable react/jsx-no-useless-fragment */
7425
+ var DEFAULT_THEME = exports.ThemeType.Core;
7426
+ var getThemeClass = function getThemeClass(theme) {
7427
+ // Always include the base (core) theme class
7428
+ var baseThemeClass = coreThemeStyles.coreTheme;
7429
+ var overrideClass = '';
7430
+ switch (theme) {
7431
+ case exports.ThemeType.Core:
7432
+ overrideClass = '';
7433
+ break;
7434
+ case exports.ThemeType.Stream:
7435
+ overrideClass = streamThemeStyles.streamTheme;
7436
+ break;
7437
+ case exports.ThemeType.Cinema:
7438
+ overrideClass = cinemaThemeStyles.cinemaTheme;
7439
+ break;
7440
+ case exports.ThemeType.Schools:
7441
+ overrideClass = schoolsThemeStyles.schoolsTheme;
7442
+ break;
7721
7443
  default:
7722
- return null;
7444
+ overrideClass = '';
7723
7445
  }
7446
+ // Return the combined classes
7447
+ return [baseThemeClass, overrideClass].filter(Boolean).join(' ');
7724
7448
  };
7725
- var CompactHeaderBranding = function CompactHeaderBranding(_ref) {
7726
- var brandingStyle = _ref.brandingStyle,
7727
- _ref$invert = _ref.invert,
7728
- invert = _ref$invert === void 0 ? false : _ref$invert,
7729
- brandingText = _ref.brandingText,
7730
- brandingLink = _ref.brandingLink;
7731
- return /*#__PURE__*/React__default.createElement(CompactHeaderLogoWrapper, null, renderBranding(brandingStyle, invert, brandingText, brandingLink));
7449
+ var HarmonicThemeContext = /*#__PURE__*/React__default.createContext(DEFAULT_THEME);
7450
+ var useHarmonicTheme = function useHarmonicTheme() {
7451
+ return React__default.useContext(HarmonicThemeContext);
7732
7452
  };
7733
-
7734
- var _excluded$j = ["text"];
7735
- var useResponsiveVideo$1 = function useResponsiveVideo(video, poster) {
7736
- var mobileVideo = video.mobile || video.desktop;
7737
- var desktopVideo = video.desktop || video.mobile;
7738
- var mobilePoster = poster.mobile || poster.desktop;
7739
- var desktopPoster = poster.desktop || poster.mobile;
7740
- var _useState = React.useState(desktopPoster),
7741
- posterUrl = _useState[0],
7742
- setPoster = _useState[1];
7743
- var _useState2 = React.useState(desktopVideo),
7744
- videoUrl = _useState2[0],
7745
- setVideoUrl = _useState2[1];
7746
- var isMobile = useMobile();
7747
- React.useEffect(function () {
7748
- setPoster(isMobile ? mobilePoster : desktopPoster);
7749
- setVideoUrl(isMobile ? mobileVideo : desktopVideo);
7750
- }, [isMobile]);
7751
- return {
7752
- posterUrl: posterUrl,
7753
- videoUrl: videoUrl
7754
- };
7755
- };
7756
- var VideoWithControls$1 = function VideoWithControls(_ref) {
7757
- var video = _ref.video,
7758
- poster = _ref.poster;
7759
- var _useResponsiveVideo = useResponsiveVideo$1(video, poster),
7760
- posterUrl = _useResponsiveVideo.posterUrl,
7761
- videoUrl = _useResponsiveVideo.videoUrl;
7762
- var isIOS = useIOS();
7763
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("video", {
7764
- id: video.elementId,
7765
- width: "100%",
7766
- height: "100%",
7767
- muted: true,
7768
- poster: posterUrl,
7769
- src: videoUrl,
7770
- "data-testid": "compact-video",
7771
- playsInline: true
7772
- }, /*#__PURE__*/React__default.createElement("source", {
7773
- src: videoUrl
7774
- }), /*#__PURE__*/React__default.createElement("img", {
7775
- src: posterUrl,
7776
- alt: poster.alt,
7777
- "data-testid": "compact-image"
7778
- })), /*#__PURE__*/React__default.createElement(VideoControls, {
7779
- loop: true,
7780
- videoElementId: video.elementId,
7781
- muted: true,
7782
- autoPlay: false,
7783
- soundControl: !isIOS
7784
- }));
7785
- };
7786
- var CompactHeaderImage = function CompactHeaderImage(_ref2) {
7787
- var mobile = _ref2.mobile,
7788
- desktop = _ref2.desktop,
7789
- alt = _ref2.alt;
7790
- return /*#__PURE__*/React__default.createElement("picture", {
7791
- "data-testid": "compact-picture"
7792
- }, mobile && /*#__PURE__*/React__default.createElement("source", {
7793
- srcSet: mobile,
7794
- media: "" + devices.mobile,
7795
- "data-testid": "compact-mobile-image-source"
7796
- }), /*#__PURE__*/React__default.createElement("source", {
7797
- srcSet: desktop,
7798
- media: "" + devices.desktop,
7799
- "data-testid": "compact-desktop-image-source"
7800
- }), /*#__PURE__*/React__default.createElement("img", {
7801
- src: desktop,
7802
- alt: alt,
7803
- "data-testid": "compact-image"
7804
- }));
7453
+ var HarmonicThemeProvider = function HarmonicThemeProvider(_ref) {
7454
+ var _ref$theme = _ref.theme,
7455
+ theme = _ref$theme === void 0 ? DEFAULT_THEME : _ref$theme,
7456
+ children = _ref.children;
7457
+ var themeClass = getThemeClass(theme);
7458
+ // Convert children to an array (assuming they accept a className prop)
7459
+ var childrenArray = React__default.Children.toArray(children);
7460
+ var themedChildren = childrenArray.map(function (child) {
7461
+ return /*#__PURE__*/React__default.cloneElement(child, {
7462
+ className: ((child.props.className || '') + " " + themeClass).trim()
7463
+ });
7464
+ });
7465
+ return /*#__PURE__*/React__default.createElement(HarmonicThemeContext.Provider, {
7466
+ value: theme
7467
+ }, themedChildren.length === 1 ? themedChildren[0] : /*#__PURE__*/React__default.createElement(React__default.Fragment, null, themedChildren));
7805
7468
  };
7806
- var CompactHeaderVideo = function CompactHeaderVideo(_ref3) {
7807
- var video = _ref3.video,
7808
- poster = _ref3.poster;
7809
- if (!video.desktop && !video.mobile) {
7810
- return /*#__PURE__*/React__default.createElement(CompactHeaderImage, Object.assign({}, poster));
7469
+
7470
+ // Helper function for rendering buttons based on the variant
7471
+ var renderButton = function renderButton(_ref) {
7472
+ var variant = _ref.variant,
7473
+ link = _ref.link,
7474
+ text = _ref.text,
7475
+ iconName = _ref.iconName,
7476
+ iconDirection = _ref.iconDirection,
7477
+ target = _ref.target;
7478
+ switch (variant) {
7479
+ case InformationCtaVariants.Secondary:
7480
+ return /*#__PURE__*/React__default.createElement(SecondaryButton, {
7481
+ href: link,
7482
+ iconName: iconName,
7483
+ iconDirection: iconDirection,
7484
+ target: target,
7485
+ "aria-label": text
7486
+ }, text);
7487
+ case InformationCtaVariants.Tertiary:
7488
+ return /*#__PURE__*/React__default.createElement(TertiaryButton, {
7489
+ href: link,
7490
+ target: target,
7491
+ "aria-label": text
7492
+ }, text);
7493
+ case InformationCtaVariants.TextLink:
7494
+ return /*#__PURE__*/React__default.createElement(TextLink, {
7495
+ href: link,
7496
+ iconName: iconName,
7497
+ iconDirection: iconDirection,
7498
+ target: target,
7499
+ "aria-label": text
7500
+ }, text);
7501
+ default:
7502
+ return /*#__PURE__*/React__default.createElement(PrimaryButton, {
7503
+ href: link,
7504
+ iconName: iconName,
7505
+ iconDirection: iconDirection,
7506
+ target: target,
7507
+ "aria-label": text
7508
+ }, text);
7811
7509
  }
7812
- return /*#__PURE__*/React__default.createElement(VideoWithControls$1, {
7813
- video: video,
7814
- poster: poster
7815
- });
7816
7510
  };
7817
- var PageHeadingCompact = function PageHeadingCompact(_ref4) {
7818
- var title = _ref4.title,
7819
- link = _ref4.link,
7820
- _ref4$sponsor = _ref4.sponsor,
7821
- sponsor = _ref4$sponsor === void 0 ? true : _ref4$sponsor,
7822
- customSponsorImage = _ref4.customSponsorImage,
7823
- bgUrlDesktop = _ref4.bgUrlDesktop,
7824
- bgUrlDevice = _ref4.bgUrlDevice,
7825
- videoUrlDesktop = _ref4.videoUrlDesktop,
7826
- videoUrlMobile = _ref4.videoUrlMobile,
7827
- _ref4$bgImageAltText = _ref4.bgImageAltText,
7828
- bgImageAltText = _ref4$bgImageAltText === void 0 ? '' : _ref4$bgImageAltText,
7829
- _ref4$invert = _ref4.invert,
7830
- invert = _ref4$invert === void 0 ? false : _ref4$invert,
7831
- _ref4$brandingStyle = _ref4.brandingStyle,
7832
- brandingStyle = _ref4$brandingStyle === void 0 ? 'BlockText' : _ref4$brandingStyle,
7833
- brandingText = _ref4.brandingText,
7834
- brandingLink = _ref4.brandingLink,
7835
- _ref4$showCopy = _ref4.showCopy,
7836
- showCopy = _ref4$showCopy === void 0 ? true : _ref4$showCopy;
7837
- var _ref5 = link || {},
7838
- linkText = _ref5.text,
7839
- restLink = _objectWithoutPropertiesLoose(_ref5, _excluded$j);
7840
- // const titleSize = title && title.length > 20 ? 4 : 3;
7841
- var video = {
7842
- elementId: 'compact-header-video',
7843
- desktop: videoUrlDesktop,
7844
- mobile: videoUrlMobile
7845
- };
7846
- var poster = {
7847
- desktop: bgUrlDesktop,
7848
- mobile: bgUrlDevice,
7849
- alt: bgImageAltText
7850
- };
7851
- return /*#__PURE__*/React__default.createElement(ComapctHeaderWrapper, null, sponsor ? (/*#__PURE__*/React__default.createElement(SponsorWrapper, {
7852
- "data-testid": "compact-sponsor"
7853
- }, customSponsorImage ? (/*#__PURE__*/React__default.createElement(Sponsorship, Object.assign({
7854
- "data-testid": "compact-custom-sponsor"
7855
- }, customSponsorImage))) : (/*#__PURE__*/React__default.createElement(Sponsorship, null)))) : null, /*#__PURE__*/React__default.createElement(CompactHeaderAssetWrapper, null, /*#__PURE__*/React__default.createElement(CompactHeaderVideo, {
7856
- video: video,
7857
- poster: poster
7858
- })), showCopy && (/*#__PURE__*/React__default.createElement(CompactHeaderCopyWrapper, {
7859
- className: "page-heading-compact__background",
7860
- invert: invert
7861
- }, /*#__PURE__*/React__default.createElement(CompactHeaderBranding, {
7862
- brandingStyle: brandingStyle,
7863
- brandingText: brandingText,
7864
- brandingLink: brandingLink,
7865
- invert: invert
7866
- }), /*#__PURE__*/React__default.createElement(CompactHeaderTitleWrapper, null, /*#__PURE__*/React__default.createElement(HarmonicHeader, {
7867
- size: "large",
7868
- hierarchy: "h1"
7869
- }, title && truncate(title, 40))), link && (/*#__PURE__*/React__default.createElement(CompactHeaderCTAWrapper, null, /*#__PURE__*/React__default.createElement(PrimaryButtonWithInversion, Object.assign({}, restLink, {
7870
- invert: invert,
7871
- className: "page-heading-compact__button"
7872
- }), linkText))))));
7511
+ var InfoCta = function InfoCta(_ref2) {
7512
+ var _ref2$variant = _ref2.variant,
7513
+ variant = _ref2$variant === void 0 ? InformationCtaVariants.Primary : _ref2$variant,
7514
+ link = _ref2.link,
7515
+ text = _ref2.text,
7516
+ iconName = _ref2.iconName,
7517
+ iconDirection = _ref2.iconDirection,
7518
+ _ref2$target = _ref2.target,
7519
+ target = _ref2$target === void 0 ? LinkTarget.Self : _ref2$target;
7520
+ var theme = useHarmonicTheme();
7521
+ return /*#__PURE__*/React__default.createElement(InfoCTAWrapper, {
7522
+ variant: variant,
7523
+ theme: theme
7524
+ }, renderButton({
7525
+ variant: variant,
7526
+ link: link,
7527
+ text: text,
7528
+ iconName: iconName,
7529
+ iconDirection: iconDirection,
7530
+ target: target
7531
+ }));
7873
7532
  };
7874
7533
 
7875
- var _templateObject$V, _templateObject2$J;
7876
- var SWIPE_SLIDE_CLASS_NAME = 'swipe-slide';
7877
- var SwipeContainer = /*#__PURE__*/styled__default.div(_templateObject$V || (_templateObject$V = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n overflow: hidden;\n width: 100%;\n touch-action: pan-y;\n"])));
7878
- var SwipeTrack = /*#__PURE__*/styled__default.div(_templateObject2$J || (_templateObject2$J = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n transition: ", ";\n transform: translateX(", ");\n\n .", " {\n flex-shrink: 0;\n }\n"])), function (_ref) {
7879
- var transitioning = _ref.transitioning;
7880
- return transitioning ? 'transform 0.3s ease' : 'none';
7881
- }, function (_ref2) {
7882
- var translateX = _ref2.translateX;
7883
- return translateX + "px";
7884
- }, SWIPE_SLIDE_CLASS_NAME);
7885
-
7886
- /**
7887
- * Generates a random string in the format XXX-XXX.
7888
- * Does not meet UUID standards.
7889
- * To be used where only a small number of unique IDs are required, e.g. DOM element IDs.
7890
- *
7891
- * @return {string} A random string in the format XXX-XXX.
7892
- */
7893
- var generateDomElementId = function generateDomElementId() {
7894
- var randomPart = Math.floor(100 + Math.random() * 900).toString();
7895
- var datePart = Date.now().toString().slice(-3);
7896
- return randomPart + "-" + datePart;
7534
+ /* eslint-disable react/no-danger */
7535
+ var defaultColumnSpan = 6;
7536
+ var smallColumnSpan = 4;
7537
+ var largeColumnSpan = 9;
7538
+ var mediumWordBreakpoint = 8;
7539
+ var longWordBreakpoint = 13;
7540
+ var getColumnSpan = function getColumnSpan(longestWordLength) {
7541
+ if (longestWordLength > longWordBreakpoint) return largeColumnSpan;
7542
+ if (longestWordLength < mediumWordBreakpoint) return smallColumnSpan;
7543
+ return defaultColumnSpan;
7897
7544
  };
7898
-
7899
- var DISABLED_TABBING_TAGS = 'a, button';
7900
- var disableTabbingInside = function disableTabbingInside(element, shouldDisable) {
7901
- if (!element) return;
7902
- var focusables = element.querySelectorAll(DISABLED_TABBING_TAGS);
7903
- focusables.forEach(function (el) {
7904
- if (shouldDisable) el.setAttribute('tabindex', '-1');
7545
+ var Information = function Information(_ref) {
7546
+ var body = _ref.body,
7547
+ title = _ref.title,
7548
+ cta = _ref.cta,
7549
+ className = _ref.className;
7550
+ var _useViewport = useViewport(),
7551
+ hydrated = _useViewport.hydrated;
7552
+ var safeTitle = title || {
7553
+ text: '',
7554
+ textSize: 'medium'
7555
+ }; // Provide a fallback
7556
+ var titleWords = safeTitle.text.split(' ');
7557
+ var titleWordLengths = titleWords.map(function (word) {
7558
+ return word.length;
7905
7559
  });
7560
+ var maxTitleWordLength = Math.max.apply(Math, titleWordLengths);
7561
+ var titleColumnSpan = getColumnSpan(maxTitleWordLength);
7562
+ if (!hydrated) return null;
7563
+ return /*#__PURE__*/React__default.createElement(InfoWrapper, {
7564
+ "data-testid": "infoWrapper",
7565
+ className: className
7566
+ }, /*#__PURE__*/React__default.createElement(GridItem, {
7567
+ columnStartDesktop: 2,
7568
+ columnStartDevice: 2,
7569
+ columnSpanDesktop: titleColumnSpan,
7570
+ columnSpanDevice: 12
7571
+ }, /*#__PURE__*/React__default.createElement(InfoTitle, null, /*#__PURE__*/React__default.createElement(HarmonicHeader, {
7572
+ hierarchy: "h2",
7573
+ size: safeTitle.textSize,
7574
+ color: "inherit"
7575
+ }, safeTitle.text))), /*#__PURE__*/React__default.createElement(GridItem, {
7576
+ columnStartDesktop: titleColumnSpan + 2,
7577
+ columnStartDevice: 2,
7578
+ columnSpanDesktop: 14 - titleColumnSpan,
7579
+ columnSpanDevice: 12
7580
+ }, /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(InfoBodyWrapper, null, /*#__PURE__*/React__default.createElement("span", {
7581
+ dangerouslySetInnerHTML: {
7582
+ __html: body
7583
+ }
7584
+ })), cta && (/*#__PURE__*/React__default.createElement(InfoCta, {
7585
+ link: cta.link,
7586
+ variant: cta.variant,
7587
+ text: cta.text,
7588
+ iconName: cta.iconName,
7589
+ iconDirection: cta.iconDirection,
7590
+ target: cta.target
7591
+ })))));
7906
7592
  };
7907
- var isCloneSlide = function isCloneSlide(index, clonesCount, childrenLength, infinite) {
7908
- return infinite && (index < clonesCount || index >= childrenLength + clonesCount);
7909
- };
7910
- var getVisibleIndexes = function getVisibleIndexes(currentIndex, slideWidths, containerWidth, slidesLength) {
7911
- var widthSoFar = 0;
7912
- var visible = [];
7913
- for (var i = currentIndex; i < slidesLength; i++) {
7914
- var _slideWidths$i;
7915
- var width = (_slideWidths$i = slideWidths[i]) != null ? _slideWidths$i : 0;
7916
- if (widthSoFar + width > containerWidth) break;
7917
- visible.push(i);
7918
- widthSoFar += width;
7919
- }
7920
- return visible;
7921
- };
7922
- var getMovedSlides = function getMovedSlides(delta, slideWidths) {
7923
- var absDelta = Math.abs(delta);
7924
- var movedSlides = 0;
7925
- var accumulated = 0;
7926
- for (var i = 0; i < slideWidths.length; i++) {
7927
- accumulated += slideWidths[i];
7928
- // Allow partial slide (e.g. 50% of next slide) to count
7929
- var partialThreshold = slideWidths[i] * 0.5;
7930
- if (absDelta > accumulated - partialThreshold) {
7931
- movedSlides++;
7932
- } else {
7933
- break;
7593
+
7594
+ var _templateObject$Q, _templateObject2$E, _templateObject3$s, _templateObject4$o, _templateObject5$j, _templateObject6$d, _templateObject7$9, _templateObject8$5;
7595
+ var PageHeadingWrapper = /*#__PURE__*/styled__default('div')(_templateObject$Q || (_templateObject$Q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding-bottom: 80px;\n background-color: var(--page-header-bg-color);\n color: var(--color-base-white);\n\n ", ";\n\n h1,\n h2,\n h3 {\n margin: 0;\n padding: 0;\n }\n\n @media ", " {\n padding-bottom: 0;\n }\n"])), function (_ref) {
7596
+ var isPageHeadingWithoutTitle = _ref.isPageHeadingWithoutTitle;
7597
+ return isPageHeadingWithoutTitle && "\n padding-bottom: 42px;\n ";
7598
+ }, devices.mobile);
7599
+ var PageHeadingGrid = /*#__PURE__*/styled__default(Grid)(_templateObject2$E || (_templateObject2$E = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 0 var(--grid-column-gap);\n grid-template-rows: min-content min-content;\n grid-template-areas:\n '. . title title title title title title title title title title . . logo .'\n '. . text text text text text text text text text button button button . .';\n\n @media ", " {\n & {\n grid-template-rows: 20px min-content min-content min-content 20px;\n grid-template-areas:\n '. . . . . . . . . . . . . .'\n '. title title title title title title title title title title logo logo .'\n '. text text text text text text text text text text text text .'\n '. button button button button button button button button button button button button .'\n '. . . . . . . . . . . . . .';\n }\n }\n\n @media ", " {\n & {\n grid-template-areas:\n '. title title title title title title title title title title logo logo .'\n '. text text text text text text text text text button button button .';\n }\n }\n"])), devices.mobile, devices.tablet);
7600
+ var BadgeWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject3$s || (_templateObject3$s = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 35px;\n padding-bottom: 20px;\n\n ", ";\n"])), function (_ref2) {
7601
+ var isPageHeadingWithoutTitle = _ref2.isPageHeadingWithoutTitle;
7602
+ return isPageHeadingWithoutTitle && "\n height: 50px;\n padding-bottom: 0;\n margin: 10px 0;\n ";
7603
+ });
7604
+ var TitleWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject4$o || (_templateObject4$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: title;\n margin-top: 80px;\n\n ", ";\n\n @media ", " {\n & {\n margin-top: 0;\n }\n }\n"])), function (_ref3) {
7605
+ var isPageHeadingWithoutTitle = _ref3.isPageHeadingWithoutTitle;
7606
+ return isPageHeadingWithoutTitle && "\n margin-top: 42px;\n ";
7607
+ }, devices.mobile);
7608
+ var ChildrenWrapper = /*#__PURE__*/styled__default.div(_templateObject5$j || (_templateObject5$j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-bottom: 20px;\n width: fit-content;\n height: 43px;\n\n ", ";\n\n @media ", " {\n & {\n height: 33px;\n margin-top: 10px;\n margin-bottom: 20px;\n }\n }\n"])), function (_ref4) {
7609
+ var isPageHeadingWithoutTitle = _ref4.isPageHeadingWithoutTitle;
7610
+ return isPageHeadingWithoutTitle && "\n margin: 10px 0;\n ";
7611
+ }, devices.mobile);
7612
+ var TextWrapper = /*#__PURE__*/styled__default.div(_templateObject6$d || (_templateObject6$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--color-base-white);\n grid-area: text;\n align-self: end;\n margin-top: 12px;\n\n h6 {\n margin: 0;\n padding: 0;\n }\n"])));
7613
+ var LogoWrapper = /*#__PURE__*/styled__default.div(_templateObject7$9 || (_templateObject7$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: logo;\n justify-self: end;\n margin-top: 20px;\n position: relative;\n\n > div {\n position: absolute;\n top: 0;\n right: 0;\n }\n\n ", ";\n\n @media ", " {\n & {\n align-self: start;\n margin-top: 0;\n\n ", ";\n }\n }\n"])), function (_ref5) {
7614
+ var isPageHeadingWithoutTitle = _ref5.isPageHeadingWithoutTitle;
7615
+ return isPageHeadingWithoutTitle && "\n margin-top: 40px;\n ";
7616
+ }, devices.mobile, function (_ref6) {
7617
+ var isPageHeadingWithoutTitle = _ref6.isPageHeadingWithoutTitle;
7618
+ return isPageHeadingWithoutTitle && "\n margin-top: 15px;\n ";
7619
+ });
7620
+ var ButtonWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject8$5 || (_templateObject8$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: button;\n justify-self: end;\n align-self: end;\n\n @media ", " {\n & {\n justify-self: center;\n align-self: center;\n width: 100%;\n margin-top: 16px;\n }\n }\n"])), devices.mobile);
7621
+
7622
+ var PageHeading = function PageHeading(_ref) {
7623
+ var title = _ref.title,
7624
+ hierarchy = _ref.hierarchy,
7625
+ text = _ref.text,
7626
+ link = _ref.link,
7627
+ _ref$sponsor = _ref.sponsor,
7628
+ sponsor = _ref$sponsor === void 0 ? false : _ref$sponsor,
7629
+ children = _ref.children,
7630
+ className = _ref.className,
7631
+ showBadge = _ref.showBadge,
7632
+ theme = _ref.theme;
7633
+ var themedLink = link && _extends({}, link, {
7634
+ textColor: ThemeColor['base-black'],
7635
+ backgroundColor: ThemeColor['base-white'],
7636
+ hoveredColor: ThemeColor['white-hovered'],
7637
+ pressedColor: ThemeColor['white-pressed']
7638
+ });
7639
+ var linkText = themedLink == null ? void 0 : themedLink.text;
7640
+ var isTitleUnAvailable = !title;
7641
+ var renderBadge = function renderBadge(currentTheme) {
7642
+ if (!showBadge) return null;
7643
+ switch (currentTheme) {
7644
+ case exports.ThemeType.Cinema:
7645
+ return /*#__PURE__*/React__default.createElement(BadgeWrapper$1, {
7646
+ isPageHeadingWithoutTitle: isTitleUnAvailable
7647
+ }, /*#__PURE__*/React__default.createElement(CinemaBadge, {
7648
+ align: "left"
7649
+ }));
7650
+ case exports.ThemeType.Stream:
7651
+ return /*#__PURE__*/React__default.createElement(BadgeWrapper$1, {
7652
+ isPageHeadingWithoutTitle: isTitleUnAvailable
7653
+ }, /*#__PURE__*/React__default.createElement(StreamBadge, {
7654
+ align: "left"
7655
+ }));
7656
+ default:
7657
+ return null;
7934
7658
  }
7935
- }
7936
- return movedSlides;
7659
+ };
7660
+ return /*#__PURE__*/React__default.createElement(PageHeadingWrapper, {
7661
+ className: className,
7662
+ "data-testid": "page-heading-wrapper",
7663
+ isPageHeadingWithoutTitle: isTitleUnAvailable
7664
+ }, /*#__PURE__*/React__default.createElement(PageHeadingGrid, null, /*#__PURE__*/React__default.createElement(TitleWrapper$2, {
7665
+ "data-testid": "page-heading-title",
7666
+ isPageHeadingWithoutTitle: isTitleUnAvailable
7667
+ }, renderBadge(theme), children ? (/*#__PURE__*/React__default.createElement(ChildrenWrapper, {
7668
+ isPageHeadingWithoutTitle: isTitleUnAvailable
7669
+ }, children)) : null, !isTitleUnAvailable && (/*#__PURE__*/React__default.createElement(HarmonicHeader, {
7670
+ color: "white",
7671
+ size: "large",
7672
+ hierarchy: hierarchy
7673
+ }, title))), text ? (/*#__PURE__*/React__default.createElement(TextWrapper, {
7674
+ "data-testid": "page-heading-text"
7675
+ }, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
7676
+ tag: "div",
7677
+ color: "white",
7678
+ size: "large",
7679
+ dangerouslySetInnerHTML: {
7680
+ __html: text
7681
+ }
7682
+ }))) : null, sponsor ? (/*#__PURE__*/React__default.createElement(LogoWrapper, {
7683
+ "data-testid": "page-heading-sponsor",
7684
+ isPageHeadingWithoutTitle: isTitleUnAvailable
7685
+ }, /*#__PURE__*/React__default.createElement(Sponsorship, null))) : null, themedLink ? (/*#__PURE__*/React__default.createElement(ButtonWrapper$1, {
7686
+ "data-testid": "page-heading-link"
7687
+ }, /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, themedLink), linkText))) : null));
7937
7688
  };
7938
7689
 
7939
- var _excluded$k = ["children", "infinite", "onIndexChange", "slidesOffsetBefore", "slidesAriaHidden", "onActiveChange", "onOverflowChange"];
7940
- var MAX_CLONES_NUMBER = 6;
7941
- var CLICK_DRAG_THRESHOLD = 10;
7942
- var getClonesCount = function getClonesCount(infinite, childrenLength) {
7943
- if (!infinite) return 0;
7944
- return Math.min(childrenLength, MAX_CLONES_NUMBER);
7690
+ var _templateObject$R, _templateObject2$F, _templateObject3$t, _templateObject4$p, _templateObject5$k, _templateObject6$e, _templateObject7$a, _templateObject8$6;
7691
+ var ImpactWrapper = /*#__PURE__*/styled__default.div(_templateObject$R || (_templateObject$R = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n aspect-ratio: 16 / 9;\n @supports not (aspect-ratio: 16 / 9) {\n height: 56.25vw;\n }\n\n position: relative;\n display: flex;\n background: var(--base-color-black);\n\n @media ", " {\n aspect-ratio: 1 / 1;\n @supports not (aspect-ratio: 1 / 1) {\n height: 100vw;\n }\n }\n"])), devices.mobile);
7692
+ var ImpactHeaderImageWrapper = /*#__PURE__*/styled__default.div(_templateObject2$F || (_templateObject2$F = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100%;\n overflow: hidden;\n aspect-ratio: 16 / 9;\n @supports not (aspect-ratio: 16 / 9) {\n height: 56.25vw;\n }\n\n img {\n width: 100%;\n filter: brightness(0.7);\n opacity: 0.95;\n }\n\n @media ", " {\n height: fit-content;\n aspect-ratio: 1 / 1;\n @supports not (aspect-ratio: 1 / 1) {\n height: 100vw;\n }\n\n img {\n height: 100%;\n object-fit: cover;\n }\n }\n"])), devices.mobile);
7693
+ var ImpactGrid = /*#__PURE__*/styled__default(Grid)(_templateObject3$t || (_templateObject3$t = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n align-self: center;\n width: 100%;\n z-index: ", ";\n gap: 0 var(--grid-column-gap);\n grid-template-rows: min-content min-content min-content;\n grid-template-areas:\n '. . . . . logo logo logo logo logo logo . . . . .'\n '. . . text text text text text text text text text text . . .'\n '. . . button button button button button button button button button button . . .';\n\n @media ", " {\n & {\n height: 100%;\n grid-template-rows: 1fr max-content 1fr;\n grid-template-areas:\n '. . . logo logo logo logo logo logo logo logo . . .'\n '. text text text text text text text text text text text text .'\n '. button button button button button button button button button button button button .';\n }\n }\n\n @media ", " {\n align-content: center;\n\n & {\n grid-template-areas:\n '. . . logo logo logo logo logo logo logo logo . . .'\n '. . text text text text text text text text text text . .'\n '. . button button button button button button button button button button . .';\n }\n }\n"])), zIndexes.contentOverlay, devices.mobile, devices.tablet);
7694
+ var SponsorWrapper = /*#__PURE__*/styled__default.div(_templateObject4$p || (_templateObject4$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n top: 20px;\n right: var(--grid-outer-margin);\n width: fit-content;\n z-index: ", ";\n\n @media ", " {\n & {\n right: var(--grid-margin);\n }\n }\n"])), zIndexes.sponsorship, devices.mobileAndTablet);
7695
+ var LogoWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject5$k || (_templateObject5$k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: logo;\n align-self: end;\n"])));
7696
+ var TextWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject6$e || (_templateObject6$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: text;\n color: var(--base-color-white);\n text-align: center;\n margin-top: 40px;\n max-height: calc(2 * var(--line-height-header-3));\n overflow: hidden;\n\n h3 {\n margin: 0;\n padding: 0;\n }\n\n @media ", " {\n & {\n max-height: calc(4 * var(--line-height-header-3));\n }\n }\n\n @media ", " {\n & {\n margin-top: 12px;\n max-height: calc(4 * var(--line-height-header-3));\n }\n\n h3 {\n font-size: var(--font-size-header-3);\n letter-spacing: var(--letter-spacing-header-5);\n line-height: var(--line-height-header-5);\n }\n }\n"])), devices.tablet, devices.mobile);
7697
+ var ButtonWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject7$a || (_templateObject7$a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: button;\n align-self: end;\n display: flex;\n justify-content: center;\n margin-top: 40px;\n\n @media ", " {\n & {\n margin-top: 0px;\n margin-bottom: 20px;\n }\n }\n"])), devices.mobile);
7698
+ var ScrollDownWrapper = /*#__PURE__*/styled__default.div(_templateObject8$6 || (_templateObject8$6 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n bottom: 20px;\n left: var(--grid-outer-margin);\n width: fit-content;\n z-index: ", ";\n\n @keyframes UpDown {\n 0%,\n 100% {\n transform: translateY(0);\n }\n 50% {\n transform: translateY(8px);\n }\n }\n\n a {\n font-size: var(--font-size-overline-1);\n font-weight: var(--font-weight-overline-1);\n letter-spacing: var(--letter-spacing-overline-1);\n border: none;\n padding: 0;\n :hover {\n border: none;\n\n > span {\n animation: UpDown 1500ms linear infinite;\n }\n }\n }\n\n @media ", " {\n & {\n display: none;\n }\n }\n\n @media ", " {\n & {\n display: none;\n }\n }\n"])), zIndexes.contentOverlay, devices.mobile, devices.tablet);
7699
+
7700
+ var _excluded$k = ["text"];
7701
+ var PageHeadingImpact = function PageHeadingImpact(_ref) {
7702
+ var children = _ref.children,
7703
+ text = _ref.text,
7704
+ link = _ref.link,
7705
+ _ref$sponsor = _ref.sponsor,
7706
+ sponsor = _ref$sponsor === void 0 ? true : _ref$sponsor,
7707
+ customSponsorImage = _ref.customSponsorImage,
7708
+ scrollHref = _ref.scrollHref,
7709
+ bgUrlDesktop = _ref.bgUrlDesktop,
7710
+ bgUrlDevice = _ref.bgUrlDevice,
7711
+ _ref$bgImageAltText = _ref.bgImageAltText,
7712
+ bgImageAltText = _ref$bgImageAltText === void 0 ? '' : _ref$bgImageAltText,
7713
+ _ref$semanticLevel = _ref.semanticLevel,
7714
+ semanticLevel = _ref$semanticLevel === void 0 ? 3 : _ref$semanticLevel;
7715
+ var truncatedText = text == null ? void 0 : text.substring(0, 75);
7716
+ var _ref2 = link || {},
7717
+ linkText = _ref2.text,
7718
+ restLink = _objectWithoutPropertiesLoose(_ref2, _excluded$k);
7719
+ return /*#__PURE__*/React__default.createElement(ImpactWrapper, {
7720
+ bgUrlDesktop: bgUrlDesktop,
7721
+ bgUrlDevice: bgUrlDevice,
7722
+ "data-testid": "impact-wrapper"
7723
+ }, sponsor ? (/*#__PURE__*/React__default.createElement(SponsorWrapper, {
7724
+ "data-testid": "impact-sponsor"
7725
+ }, customSponsorImage ? (/*#__PURE__*/React__default.createElement(Sponsorship, Object.assign({
7726
+ "data-testid": "impact-custom-sponsor"
7727
+ }, customSponsorImage))) : (/*#__PURE__*/React__default.createElement(Sponsorship, null)))) : null, /*#__PURE__*/React__default.createElement(ImpactHeaderImageWrapper, null, /*#__PURE__*/React__default.createElement("picture", {
7728
+ "data-testid": "impact-picture"
7729
+ }, bgUrlDevice && (/*#__PURE__*/React__default.createElement("source", {
7730
+ srcSet: bgUrlDevice,
7731
+ media: "" + devices.mobile,
7732
+ "data-testid": "impact-mobile-image-source"
7733
+ })), /*#__PURE__*/React__default.createElement("source", {
7734
+ srcSet: bgUrlDesktop,
7735
+ media: "" + devices.desktop,
7736
+ "data-testid": "impact-desktop-image-source"
7737
+ }), /*#__PURE__*/React__default.createElement("img", {
7738
+ src: bgUrlDesktop,
7739
+ alt: bgImageAltText,
7740
+ "data-testid": "impact-image"
7741
+ }))), /*#__PURE__*/React__default.createElement(ImpactGrid, null, children ? /*#__PURE__*/React__default.createElement(LogoWrapper$1, {
7742
+ "data-testid": "impact-logo"
7743
+ }, children) : null, text ? (/*#__PURE__*/React__default.createElement(TextWrapper$1, {
7744
+ "data-testid": "impact-text"
7745
+ }, /*#__PURE__*/React__default.createElement(Header, {
7746
+ level: 3,
7747
+ semanticLevel: semanticLevel
7748
+ }, truncatedText))) : null, link ? (/*#__PURE__*/React__default.createElement(ButtonWrapper$2, {
7749
+ "data-testid": "impact-link"
7750
+ }, /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, restLink), linkText))) : null), scrollHref ? (/*#__PURE__*/React__default.createElement(ScrollDownWrapper, {
7751
+ "data-testid": "impact-scroll-link"
7752
+ }, /*#__PURE__*/React__default.createElement(TabLink, {
7753
+ iconName: "Arrow",
7754
+ iconDirection: "down",
7755
+ href: scrollHref,
7756
+ color: ThemeColor['base-white'],
7757
+ hoverColor: ThemeColor['base-white']
7758
+ }, "Scroll Down"))) : null);
7945
7759
  };
7946
- var getSlidedWidth = function getSlidedWidth(slide) {
7947
- if (!slide) return 0;
7948
- var style = window.getComputedStyle(slide);
7949
- var marginLeft = parseFloat(style.marginLeft) || 0;
7950
- var marginRight = parseFloat(style.marginRight) || 0;
7951
- return slide.getBoundingClientRect().width + marginLeft + marginRight;
7760
+
7761
+ var _templateObject$S, _templateObject2$G, _templateObject3$u, _templateObject4$q, _templateObject5$l;
7762
+ var PanelGrid = /*#__PURE__*/styled__default(Grid)(_templateObject$S || (_templateObject$S = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 0 var(--grid-column-gap);\n\n ", "\n\n @media ", " {\n grid-template-rows: 48px max-content max-content;\n }\n"])), function (_ref) {
7763
+ var color = _ref.color;
7764
+ return "\n background-color: " + (color ? "var(--base-color-" + color + ")" : 'var(--base-color-core)') + ";\n color: " + (color === exports.Colors.White ? 'var(--base-color-black)' : 'var(--base-color-white)') + ";\n ";
7765
+ }, devices.mobileAndTablet);
7766
+ var LeftPanel = /*#__PURE__*/styled__default.div(_templateObject2$G || (_templateObject2$G = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: ", ";\n box-sizing: border-box;\n height: 100%;\n display: grid;\n grid-auto-rows: 90% 1fr;\n gap: 0px 36px;\n align-items: center;\n\n @media ", " {\n grid-area: ", ";\n }\n"])), function (_ref2) {
7767
+ var hasImage = _ref2.hasImage;
7768
+ return hasImage ? '1 / 1 / 3 / 7' : '1 / 1 / 3 / 12';
7769
+ }, devices.mobileAndTablet, function (_ref3) {
7770
+ var hasImage = _ref3.hasImage;
7771
+ return hasImage ? '3 / 1 / 4 / 15' : '1 / 1 / 3 / 15';
7772
+ });
7773
+ var RightPanel = /*#__PURE__*/styled__default.div(_templateObject3$u || (_templateObject3$u = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: 1 / 7 / 3 / 17;\n position: relative;\n height: 100%;\n width: 100%;\n background-color: var(--base-color-black);\n\n @media ", " {\n grid-area: 2 / 1 / 3 / 15;\n }\n"])), devices.mobileAndTablet);
7774
+ var InfoWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject4$q || (_templateObject4$q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin: 36px;\n max-height: 33vw;\n overflow: hidden;\n\n :first-child * {\n margin-block-start: 0;\n }\n\n @media ", " {\n margin: 36px 20px;\n max-height: unset;\n }\n"])), devices.mobileAndTablet);
7775
+ var ScrollDownWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject5$l || (_templateObject5$l = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0 0 25px 36px;\n\n @keyframes UpDown {\n 0%,\n 100% {\n transform: translateY(0);\n }\n 50% {\n transform: translateY(8px);\n }\n }\n\n a {\n font-size: var(--font-size-overline-1);\n font-weight: var(--font-weight-overline-1);\n letter-spacing: var(--letter-spacing-overline-1);\n border: none;\n padding: 0;\n\n :hover {\n border: none;\n\n > span {\n animation: UpDown 1500ms linear infinite;\n }\n }\n }\n\n @media ", " {\n display: none;\n }\n"])), devices.mobileAndTablet);
7776
+
7777
+ var PageHeadingPanel = function PageHeadingPanel(_ref) {
7778
+ var _image$src, _image$alt;
7779
+ var info = _ref.info,
7780
+ image = _ref.image,
7781
+ color = _ref.color,
7782
+ scrollTo = _ref.scrollTo;
7783
+ var hasImage = !!image;
7784
+ return /*#__PURE__*/React__default.createElement(PanelGrid, {
7785
+ color: color,
7786
+ "data-testid": "wrapper"
7787
+ }, /*#__PURE__*/React__default.createElement(LeftPanel, {
7788
+ hasImage: hasImage
7789
+ }, /*#__PURE__*/React__default.createElement(InfoWrapper$1, null, info), scrollTo && (/*#__PURE__*/React__default.createElement(ScrollDownWrapper$1, {
7790
+ "data-testid": "scroll-link"
7791
+ }, /*#__PURE__*/React__default.createElement(TabLink, {
7792
+ iconName: "Arrow",
7793
+ iconDirection: "down",
7794
+ href: scrollTo,
7795
+ color: color === ThemeColor['base-white'] ? ThemeColor['base-black'] : ThemeColor['base-white'],
7796
+ hoverColor: color === ThemeColor['base-white'] ? ThemeColor['base-black'] : ThemeColor['base-white']
7797
+ }, "Scroll Down")))), hasImage && (/*#__PURE__*/React__default.createElement(RightPanel, null, /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
7798
+ aspectRatio: exports.AspectRatio['4:3']
7799
+ }, /*#__PURE__*/React__default.createElement("img", {
7800
+ src: (_image$src = image == null ? void 0 : image.src) != null ? _image$src : '',
7801
+ alt: (_image$alt = image == null ? void 0 : image.alt) != null ? _image$alt : ''
7802
+ })))));
7952
7803
  };
7953
- var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
7954
- var children = _ref.children,
7955
- _ref$infinite = _ref.infinite,
7956
- infinite = _ref$infinite === void 0 ? false : _ref$infinite,
7957
- onIndexChange = _ref.onIndexChange,
7958
- _ref$slidesOffsetBefo = _ref.slidesOffsetBefore,
7959
- slidesOffsetBefore = _ref$slidesOffsetBefo === void 0 ? 0 : _ref$slidesOffsetBefo,
7960
- _ref$slidesAriaHidden = _ref.slidesAriaHidden,
7961
- slidesAriaHidden = _ref$slidesAriaHidden === void 0 ? false : _ref$slidesAriaHidden,
7962
- onActiveChange = _ref.onActiveChange,
7963
- onOverflowChange = _ref.onOverflowChange,
7964
- props = _objectWithoutPropertiesLoose(_ref, _excluded$k);
7965
- var containerRef = React.useRef(null);
7966
- var childRefs = React.useRef([]);
7967
- var startX = React.useRef(0);
7968
- var currentTranslate = React.useRef(0);
7969
- var isDragging = React.useRef(false);
7970
- var isMouseDown = React.useRef(false);
7971
- var isActive = React.useRef(false);
7972
- var isClickPrevented = React.useRef(false);
7973
- var uniqueIdRef = React.useRef(generateDomElementId());
7974
- var _useState = React.useState(null),
7975
- dragTranslateX = _useState[0],
7976
- setDragTranslateX = _useState[1];
7977
- var _useState2 = React.useState(false),
7978
- transitioning = _useState2[0],
7979
- setTransitioning = _useState2[1];
7980
- var _useState3 = React.useState([]),
7981
- slideWidths = _useState3[0],
7982
- setSlideWidths = _useState3[1];
7983
- var _useState4 = React.useState(0),
7984
- containerWidth = _useState4[0],
7985
- setContainerWidth = _useState4[1];
7986
- var _useMemo = React.useMemo(function () {
7987
- var count = getClonesCount(infinite, children.length);
7988
- var leftClones = infinite ? children.slice(-count) : [];
7989
- var rightClones = infinite ? children.slice(0, count) : [];
7990
- var allSlides = infinite ? [].concat(leftClones, children, rightClones) : children;
7991
- return {
7992
- slides: allSlides,
7993
- clonesCount: count
7994
- };
7995
- }, [children, infinite]),
7996
- slides = _useMemo.slides,
7997
- clonesCount = _useMemo.clonesCount;
7998
- var _useState5 = React.useState(infinite ? clonesCount : 0),
7999
- currentIndex = _useState5[0],
8000
- setCurrentIndex = _useState5[1];
8001
- React.useEffect(function () {
8002
- var handler = function handler(e) {
8003
- if (isClickPrevented.current) {
8004
- e.preventDefault();
8005
- e.stopPropagation();
8006
- }
8007
- };
8008
- var containerElement = containerRef.current;
8009
- containerElement == null || containerElement.addEventListener('click', handler, true);
8010
- return function () {
8011
- return containerElement == null ? void 0 : containerElement.removeEventListener('click', handler, true);
8012
- };
8013
- }, []);
8014
- React.useEffect(function () {
8015
- if (!onIndexChange) return;
8016
- if (!infinite) {
8017
- onIndexChange(currentIndex);
8018
- } else {
8019
- var offset = currentIndex - clonesCount + children.length;
8020
- var realIndex = offset % children.length;
8021
- onIndexChange(realIndex);
8022
- }
8023
- }, [currentIndex, onIndexChange, infinite, children.length, clonesCount]);
8024
- var updateDimensions = React.useCallback(function () {
8025
- var cw = containerRef.current ? containerRef.current.offsetWidth : 0;
8026
- var widths = childRefs.current.length ? childRefs.current.map(getSlidedWidth) : [];
8027
- setContainerWidth(cw);
8028
- setSlideWidths(widths);
8029
- if (!infinite) {
8030
- var totalWidth = widths.reduce(function (acc, w) {
8031
- return acc + w;
8032
- }, 0);
8033
- var visibleSpace = cw - (slidesOffsetBefore || 0);
8034
- var overflow = totalWidth > Math.max(0, visibleSpace);
8035
- onOverflowChange == null || onOverflowChange(overflow);
8036
- }
8037
- }, []);
8038
- React.useEffect(function () {
8039
- var animationFrameRequestId = requestAnimationFrame(updateDimensions);
8040
- return function () {
8041
- return cancelAnimationFrame(animationFrameRequestId);
8042
- };
8043
- }, [children]);
8044
- React.useEffect(function () {
8045
- var observer = new ResizeObserver(updateDimensions);
8046
- if (containerRef.current) observer.observe(containerRef.current);
8047
- return function () {
8048
- return observer.disconnect();
8049
- };
8050
- }, [children]);
8051
- var setIsActive = function setIsActive() {
8052
- if (!isActive.current) {
8053
- isActive.current = true;
8054
- onActiveChange == null || onActiveChange(true);
8055
- }
8056
- };
8057
- var getTranslateX = function getTranslateX() {
8058
- var widthsBefore = slideWidths.slice(0, currentIndex).reduce(function (acc, width) {
8059
- return acc + width;
8060
- }, 0);
8061
- return (slidesOffsetBefore || 0) - widthsBefore;
8062
- };
8063
- var getTranslateForIndex = function getTranslateForIndex(index) {
8064
- var widthsBefore = slideWidths.slice(0, index).reduce(function (acc, width) {
8065
- return acc + width;
8066
- }, 0);
8067
- return (slidesOffsetBefore || 0) - widthsBefore;
8068
- };
8069
- var navigateOnSwipeEnd = function navigateOnSwipeEnd() {
8070
- var delta = currentTranslate.current - getTranslateX();
8071
- var direction = delta > 0 ? -1 : 1;
8072
- var movedSlides = getMovedSlides(delta, slideWidths);
8073
- if (Math.abs(delta) > 20) {
8074
- movedSlides = Math.max(1, movedSlides);
8075
- var targetIndex = currentIndex + direction * movedSlides;
8076
- var finalIndex = infinite ? targetIndex : Math.max(0, Math.min(slides.length - 1, targetIndex));
8077
- if (!infinite) {
8078
- currentTranslate.current = getTranslateForIndex(finalIndex);
8079
- setDragTranslateX(null);
8080
- }
8081
- setTransitioning(true);
8082
- setCurrentIndex(finalIndex);
8083
- } else {
8084
- setTransitioning(true);
8085
- setCurrentIndex(function (prev) {
8086
- return prev;
8087
- });
8088
- }
8089
- setDragTranslateX(null);
8090
- };
8091
- var canMoveNext = function canMoveNext() {
8092
- if (infinite) return true;
8093
- if (slideWidths.length === 0 || containerWidth === 0) return false;
8094
- var totalWidth = slideWidths.reduce(function (acc, w) {
8095
- return acc + w;
8096
- }, 0);
8097
- var widthsBefore = slideWidths.slice(0, currentIndex).reduce(function (acc, w) {
8098
- return acc + w;
8099
- }, 0);
8100
- var visibleSpace = containerWidth - (slidesOffsetBefore || 0);
8101
- var remainingToRight = totalWidth - widthsBefore - visibleSpace;
8102
- var visible = getVisibleIndexes(currentIndex, slideWidths, containerWidth, slides.length);
8103
- var lastVisibleIndex = visible.length ? visible[visible.length - 1] : currentIndex;
8104
- var nextIndex = lastVisibleIndex + 1;
8105
- if (nextIndex >= slideWidths.length) return false;
8106
- var nextSlideWidth = typeof slideWidths[nextIndex] === 'number' ? slideWidths[nextIndex] : 0;
8107
- if (nextSlideWidth === 0) return false;
8108
- var EPS = 1; // pixel tolerance
8109
- // full next slide fits
8110
- if (remainingToRight + EPS >= nextSlideWidth) return true;
8111
- return remainingToRight > 0;
8112
- };
8113
- var handleTransitionEnd = function handleTransitionEnd() {
8114
- setTransitioning(false);
8115
- if (!infinite) return;
8116
- if (currentIndex >= children.length + clonesCount) {
8117
- setCurrentIndex(clonesCount);
8118
- } else if (currentIndex < clonesCount) {
8119
- setCurrentIndex(children.length + currentIndex);
8120
- }
8121
- };
8122
- var goToPrev = function goToPrev() {
8123
- if (transitioning) return;
8124
- setIsActive();
8125
- setTransitioning(true);
8126
- setCurrentIndex(function (prev) {
8127
- var target = infinite ? prev - 1 : Math.max(0, prev - 1);
8128
- if (!infinite) {
8129
- currentTranslate.current = getTranslateForIndex(target);
8130
- setDragTranslateX(null);
8131
- }
8132
- return target;
8133
- });
8134
- };
8135
- var goToNext = function goToNext() {
8136
- if (transitioning || !canMoveNext()) return;
8137
- setIsActive();
8138
- setTransitioning(true);
8139
- setCurrentIndex(function (prev) {
8140
- var target = infinite ? prev + 1 : Math.min(children.length - 1, prev + 1);
8141
- if (!infinite) {
8142
- currentTranslate.current = getTranslateForIndex(target);
8143
- setDragTranslateX(null);
8144
- }
8145
- return target;
7804
+
7805
+ var _templateObject$T, _templateObject2$H, _templateObject3$v, _templateObject4$r, _templateObject5$m, _templateObject6$f, _templateObject7$b, _templateObject8$7, _templateObject9$4, _templateObject0$4, _templateObject1$3;
7806
+ var Wrapper$3 = /*#__PURE__*/styled__default.section(_templateObject$T || (_templateObject$T = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100%;\n"])));
7807
+ var ImageWrapper = /*#__PURE__*/styled__default.div(_templateObject2$H || (_templateObject2$H = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n\n picture,\n img {\n width: 100%;\n height: 100%;\n }\n"])));
7808
+ var SponsorWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject3$v || (_templateObject3$v = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n top: 20px;\n right: var(--grid-outer-margin);\n width: fit-content;\n z-index: ", ";\n\n @media ", " {\n & {\n right: var(--grid-margin);\n }\n }\n"])), zIndexes.sponsorship, devices.mobileAndTablet);
7809
+ var ImageButtonWrapper = /*#__PURE__*/styled__default.div(_templateObject4$r || (_templateObject4$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n right: var(--grid-outer-margin);\n bottom: 20px;\n z-index: 10;\n\n @media ", " {\n right: var(--grid-margin);\n bottom: 10px;\n }\n"])), devices.tablet);
7810
+ var ContentSection = /*#__PURE__*/styled__default.div(_templateObject5$m || (_templateObject5$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background-color: var(--heading-promo-bg-color);\n border-bottom: ", ";\n display: ", ";\n\n @media ", " {\n padding: 12px 0 20px;\n }\n"])), function (_ref) {
7811
+ var theme = _ref.theme;
7812
+ return theme == exports.ThemeType.Cinema ? '2px solid var(--color-base-light-grey)' : 'none';
7813
+ }, function (_ref2) {
7814
+ var showBlock = _ref2.showBlock;
7815
+ return showBlock ? 'block' : 'none';
7816
+ }, devices.mobile);
7817
+ var BadgeWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject6$f || (_templateObject6$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n svg {\n height: 32px;\n }\n\n @media ", " {\n margin-bottom: 12px;\n }\n"])), devices.mobile);
7818
+ var AdditionalContentWrapper = /*#__PURE__*/styled__default.div(_templateObject7$b || (_templateObject7$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: start;\n align-items: center;\n width: 200px;\n\n @media ", " {\n order: ", ";\n width: 100%;\n justify-content: center;\n }\n"])), devices.mobile, function (_ref3) {
7819
+ var isBadgePresent = _ref3.isBadgePresent;
7820
+ return isBadgePresent ? '1' : '4';
7821
+ });
7822
+ var MainButtonWrapper = /*#__PURE__*/styled__default.div(_templateObject8$7 || (_templateObject8$7 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: end;\n width: 200px;\n\n @media ", " {\n margin-bottom: ", ";\n width: 100%;\n order: 3;\n }\n"])), devices.mobile, function (_ref4) {
7823
+ var isAdditionalButtonPresent = _ref4.isAdditionalButtonPresent;
7824
+ return isAdditionalButtonPresent ? '20px' : '0';
7825
+ });
7826
+ var AdditionalButtonWrapper = /*#__PURE__*/styled__default.div(_templateObject9$4 || (_templateObject9$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n width: 100%;\n display: flex;\n justify-content: center;\n }\n"])), devices.mobile);
7827
+ var TitleWrapper$3 = /*#__PURE__*/styled__default.div(_templateObject0$4 || (_templateObject0$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-align: center;\n padding: 10px 0;\n\n h1,\n h2,\n h3 {\n color: ", ";\n }\n\n @media ", " {\n padding: 0;\n order: 2;\n margin-bottom: ", ";\n }\n"])), function (_ref5) {
7828
+ var theme = _ref5.theme;
7829
+ return theme == exports.ThemeType.Cinema ? 'var(--color-base-black)' : 'var(--color-base-white)';
7830
+ }, devices.mobile, function (_ref6) {
7831
+ var isButtonPresent = _ref6.isButtonPresent;
7832
+ return isButtonPresent ? '20px' : '0';
7833
+ });
7834
+ var ContentWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject1$3 || (_templateObject1$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n min-height: 70px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n @media ", " {\n min-height: auto;\n flex-direction: column;\n justify-content: start;\n }\n"])), devices.mobile);
7835
+
7836
+ var PageHeadingPromoBadge;
7837
+ (function (PageHeadingPromoBadge) {
7838
+ PageHeadingPromoBadge["Stream"] = "Stream";
7839
+ PageHeadingPromoBadge["Cinema"] = "Cinema";
7840
+ })(PageHeadingPromoBadge || (PageHeadingPromoBadge = {}));
7841
+
7842
+ var Badge = function Badge(_ref) {
7843
+ var isMobile = _ref.isMobile,
7844
+ theme = _ref.theme,
7845
+ badge = _ref.badge;
7846
+ if (!badge) return null;
7847
+ var color = theme === exports.ThemeType.Cinema ? exports.Colors.Black : exports.Colors.White;
7848
+ var alignment = isMobile ? 'center' : 'left';
7849
+ return /*#__PURE__*/React__default.createElement(BadgeWrapper$2, {
7850
+ "data-testid": "promo-heading-badge"
7851
+ }, badge === PageHeadingPromoBadge.Cinema ? (/*#__PURE__*/React__default.createElement(CinemaBadge, {
7852
+ fillColor: color,
7853
+ align: alignment
7854
+ })) : (/*#__PURE__*/React__default.createElement(StreamBadge, {
7855
+ fillColor: color,
7856
+ align: alignment
7857
+ })));
7858
+ };
7859
+
7860
+ var StyledPrimaryButton = function StyledPrimaryButton(_ref) {
7861
+ var link = _ref.link,
7862
+ theme = _ref.theme;
7863
+ var text = link.text;
7864
+ if (theme === exports.ThemeType.Cinema) {
7865
+ return /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, link, {
7866
+ textColor: ThemeColor['base-white'],
7867
+ backgroundColor: ThemeColor['base-black'],
7868
+ hoveredColor: ThemeColor['rbo-black-hovered'],
7869
+ pressedColor: ThemeColor['rbo-black-pressed']
7870
+ }), text);
7871
+ }
7872
+ return /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, link, {
7873
+ textColor: ThemeColor['base-black'],
7874
+ backgroundColor: ThemeColor['base-white'],
7875
+ hoveredColor: ThemeColor['white-hovered'],
7876
+ pressedColor: ThemeColor['white-pressed']
7877
+ }), text);
7878
+ };
7879
+ var Button$1 = function Button(_ref2) {
7880
+ var link = _ref2.link,
7881
+ theme = _ref2.theme,
7882
+ isMobile = _ref2.isMobile;
7883
+ var text = link.text;
7884
+ if (isMobile) {
7885
+ return /*#__PURE__*/React__default.createElement(StyledPrimaryButton, {
7886
+ theme: theme,
7887
+ link: link
8146
7888
  });
8147
- };
8148
- React.useImperativeHandle(ref, function () {
8149
- return {
8150
- nextSlide: goToNext,
8151
- prevSlide: goToPrev,
8152
- hasOverflow: function hasOverflow() {
8153
- var totalWidth = slideWidths.reduce(function (acc, w) {
8154
- return acc + w;
8155
- }, 0);
8156
- var visibleSpace = containerWidth - (slidesOffsetBefore || 0);
8157
- return totalWidth > Math.max(0, visibleSpace);
8158
- },
8159
- hasNext: function hasNext() {
8160
- return canMoveNext();
8161
- }
8162
- };
8163
- });
8164
- var handleTouchStart = function handleTouchStart(e) {
8165
- setIsActive();
8166
- startX.current = e.touches[0].clientX;
8167
- isDragging.current = true;
8168
- isClickPrevented.current = false;
8169
- setTransitioning(false);
8170
- };
8171
- var handleTouchMove = function handleTouchMove(e) {
8172
- if (!isDragging.current) return;
8173
- var deltaX = e.touches[0].clientX - startX.current;
8174
- if (Math.abs(deltaX) > CLICK_DRAG_THRESHOLD) {
8175
- isClickPrevented.current = true;
8176
- }
8177
- var visualOffset = getTranslateX() + deltaX;
8178
- currentTranslate.current = visualOffset;
8179
- setDragTranslateX(visualOffset);
8180
- };
8181
- var handleTouchEnd = function handleTouchEnd() {
8182
- isDragging.current = false;
8183
- if (isClickPrevented.current) {
8184
- navigateOnSwipeEnd();
8185
- } else {
8186
- setDragTranslateX(null);
8187
- }
8188
- };
8189
- var handleMouseMove = function handleMouseMove(e) {
8190
- if (!isDragging.current || !isMouseDown.current || transitioning) return;
8191
- var deltaX = e.clientX - startX.current;
8192
- if (Math.abs(deltaX) > CLICK_DRAG_THRESHOLD) {
8193
- isClickPrevented.current = true;
8194
- }
8195
- var visualOffset = getTranslateX() + deltaX;
8196
- currentTranslate.current = visualOffset;
8197
- setDragTranslateX(visualOffset);
8198
- };
8199
- var _handleMouseUp = function handleMouseUp() {
8200
- if (!isMouseDown.current) return;
8201
- isMouseDown.current = false;
8202
- isDragging.current = false;
8203
- if (isClickPrevented.current) {
8204
- navigateOnSwipeEnd();
8205
- } else {
8206
- setDragTranslateX(null);
7889
+ }
7890
+ var buttonColor = theme === exports.ThemeType.Cinema ? ThemeColor['base-black'] : ThemeColor['base-white'];
7891
+ if (link.isTextLink) {
7892
+ return /*#__PURE__*/React__default.createElement(TextLink, Object.assign({}, link, {
7893
+ color: buttonColor,
7894
+ iconName: undefined
7895
+ }), text);
7896
+ }
7897
+ return /*#__PURE__*/React__default.createElement(SecondaryButton, Object.assign({}, link, {
7898
+ textColor: buttonColor,
7899
+ borderColor: buttonColor,
7900
+ hoveredColor: buttonColor,
7901
+ pressedColor: buttonColor
7902
+ }), text);
7903
+ };
7904
+
7905
+ var Image = function Image(_ref) {
7906
+ var desktop = _ref.desktop,
7907
+ mobile = _ref.mobile,
7908
+ alt = _ref.alt,
7909
+ isMobile = _ref.isMobile;
7910
+ return /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
7911
+ aspectRatio: isMobile ? exports.AspectRatio['75:32'] : exports.AspectRatio['90:17']
7912
+ }, /*#__PURE__*/React__default.createElement("picture", {
7913
+ "data-testid": "promo-heading-picture"
7914
+ }, /*#__PURE__*/React__default.createElement("source", {
7915
+ srcSet: mobile,
7916
+ media: "(max-width: 768px)"
7917
+ }), /*#__PURE__*/React__default.createElement("source", {
7918
+ srcSet: desktop,
7919
+ media: "(min-width: 769px)"
7920
+ }), /*#__PURE__*/React__default.createElement("img", {
7921
+ src: desktop,
7922
+ alt: alt,
7923
+ "data-testid": "promo-heading-image"
7924
+ })));
7925
+ };
7926
+
7927
+ var TITLE_MAX_LENGTH = 40;
7928
+ var PageHeadingPromo = function PageHeadingPromo(_ref) {
7929
+ var _ref$sponsor = _ref.sponsor,
7930
+ sponsor = _ref$sponsor === void 0 ? true : _ref$sponsor,
7931
+ badge = _ref.badge,
7932
+ mainLink = _ref.mainLink,
7933
+ title = _ref.title,
7934
+ titleSemanticLevel = _ref.titleSemanticLevel,
7935
+ additionalLink = _ref.additionalLink,
7936
+ image = _ref.image,
7937
+ className = _ref.className;
7938
+ var _useViewport = useViewport(),
7939
+ isMobile = _useViewport.isMobile,
7940
+ hydrated = _useViewport.hydrated;
7941
+ var theme = useHarmonicTheme();
7942
+ var showImageButton = !title && !badge && !additionalLink && !isMobile;
7943
+ var showContentBlock = !!title || !!additionalLink || !!mainLink && isMobile;
7944
+ var truncatedTitle = title ? truncate(title, TITLE_MAX_LENGTH) : null;
7945
+ if (!hydrated) return null;
7946
+ return /*#__PURE__*/React__default.createElement(Wrapper$3, {
7947
+ className: className
7948
+ }, sponsor && (/*#__PURE__*/React__default.createElement(SponsorWrapper$1, {
7949
+ "data-testid": "promo-heading-sponsor"
7950
+ }, /*#__PURE__*/React__default.createElement(Sponsorship, null))), /*#__PURE__*/React__default.createElement(ImageWrapper, null, /*#__PURE__*/React__default.createElement(Image, {
7951
+ mobile: image.mobile,
7952
+ desktop: image.desktop,
7953
+ alt: image.alt,
7954
+ isMobile: isMobile
7955
+ }), showImageButton && mainLink && (/*#__PURE__*/React__default.createElement(ImageButtonWrapper, {
7956
+ "data-testid": "promo-heading-image-button"
7957
+ }, /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, mainLink, {
7958
+ textColor: ThemeColor['base-black'],
7959
+ backgroundColor: ThemeColor['base-white'],
7960
+ hoveredColor: ThemeColor['white-hovered'],
7961
+ pressedColor: ThemeColor['white-pressed']
7962
+ }), mainLink.text)))), /*#__PURE__*/React__default.createElement(ContentSection, {
7963
+ theme: theme,
7964
+ showBlock: showContentBlock
7965
+ }, /*#__PURE__*/React__default.createElement(Grid, null, /*#__PURE__*/React__default.createElement(GridItem, {
7966
+ columnStartDesktop: 2,
7967
+ columnSpanDesktop: 14,
7968
+ columnStartDevice: 2,
7969
+ columnSpanDevice: 12
7970
+ }, /*#__PURE__*/React__default.createElement(ContentWrapper$1, {
7971
+ theme: theme
7972
+ }, !isMobile && (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, (badge || additionalLink) && (/*#__PURE__*/React__default.createElement(AdditionalContentWrapper, {
7973
+ isBadgePresent: !!badge
7974
+ }, /*#__PURE__*/React__default.createElement(Badge, {
7975
+ theme: theme,
7976
+ badge: badge,
7977
+ isMobile: isMobile
7978
+ }), !badge && (/*#__PURE__*/React__default.createElement(AdditionalButtonWrapper, null, /*#__PURE__*/React__default.createElement(Button$1, {
7979
+ theme: theme,
7980
+ link: additionalLink
7981
+ }))))), title && (/*#__PURE__*/React__default.createElement(TitleWrapper$3, {
7982
+ theme: theme,
7983
+ isButtonPresent: !!mainLink || !!additionalLink
7984
+ }, /*#__PURE__*/React__default.createElement(HarmonicHeader, {
7985
+ hierarchy: titleSemanticLevel != null ? titleSemanticLevel : 'h1',
7986
+ size: "large"
7987
+ }, truncatedTitle))), mainLink && !showImageButton && (/*#__PURE__*/React__default.createElement(MainButtonWrapper, {
7988
+ isAdditionalButtonPresent: !!additionalLink && !badge
7989
+ }, /*#__PURE__*/React__default.createElement(Button$1, {
7990
+ theme: theme,
7991
+ link: mainLink,
7992
+ isMobile: isMobile
7993
+ }))))), isMobile && (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, badge && (/*#__PURE__*/React__default.createElement(AdditionalContentWrapper, {
7994
+ isBadgePresent: !!badge
7995
+ }, /*#__PURE__*/React__default.createElement(Badge, {
7996
+ theme: theme,
7997
+ badge: badge,
7998
+ isMobile: isMobile
7999
+ }))), title && (/*#__PURE__*/React__default.createElement(TitleWrapper$3, {
8000
+ theme: theme,
8001
+ isButtonPresent: !!mainLink || !!additionalLink
8002
+ }, /*#__PURE__*/React__default.createElement(HarmonicHeader, {
8003
+ hierarchy: titleSemanticLevel != null ? titleSemanticLevel : 'h1',
8004
+ size: "large"
8005
+ }, truncatedTitle))), mainLink && !showImageButton && (/*#__PURE__*/React__default.createElement(MainButtonWrapper, {
8006
+ isAdditionalButtonPresent: !!additionalLink && !badge
8007
+ }, /*#__PURE__*/React__default.createElement(Button$1, {
8008
+ theme: theme,
8009
+ link: mainLink,
8010
+ isMobile: isMobile
8011
+ }))), !badge && additionalLink && (/*#__PURE__*/React__default.createElement(AdditionalContentWrapper, {
8012
+ isBadgePresent: !!badge
8013
+ }, /*#__PURE__*/React__default.createElement(AdditionalButtonWrapper, null, /*#__PURE__*/React__default.createElement(Button$1, {
8014
+ theme: theme,
8015
+ link: additionalLink
8016
+ })))))))))));
8017
+ };
8018
+
8019
+ var _templateObject$U, _templateObject2$I, _templateObject3$w, _templateObject4$s;
8020
+ var GRID = {
8021
+ desktop: {
8022
+ leftWithImage: '1 / 1 / 3 / 7',
8023
+ leftNoImage: '1 / 1 / 3 / 12',
8024
+ right: '1 / 7 / 3 / 17'
8025
+ },
8026
+ mobile: {
8027
+ leftWithImage: '3 / 1 / 4 / 15',
8028
+ leftNoImage: '1 / 1 / 3 / 15',
8029
+ right: '2 / 1 / 3 / 15'
8030
+ }
8031
+ };
8032
+ var HighlightPanelGrid = /*#__PURE__*/styled__default(Grid)(_templateObject$U || (_templateObject$U = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 0 var(--grid-column-gap);\n background-color: ", ";\n color: var(--color-base-white);\n"])), function (_ref) {
8033
+ var $background = _ref.$background;
8034
+ return "var(--color-" + $background + ")";
8035
+ });
8036
+ var LeftPanel$1 = /*#__PURE__*/styled__default.div(_templateObject2$I || (_templateObject2$I = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: ", ";\n\n box-sizing: border-box;\n height: 100%;\n display: grid;\n grid-auto-rows: 90% 1fr;\n gap: 0 36px;\n align-items: center;\n\n @media ", " {\n grid-area: ", ";\n }\n"])), function (_ref2) {
8037
+ var hasImage = _ref2.hasImage;
8038
+ return hasImage ? GRID.desktop.leftWithImage : GRID.desktop.leftNoImage;
8039
+ }, devices.mobileAndTablet, function (_ref3) {
8040
+ var hasImage = _ref3.hasImage;
8041
+ return hasImage ? GRID.mobile.leftWithImage : GRID.mobile.leftNoImage;
8042
+ });
8043
+ var RightPanel$1 = /*#__PURE__*/styled__default.div(_templateObject3$w || (_templateObject3$w = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: ", ";\n position: relative;\n height: 100%;\n width: 100%;\n background-color: var(--color-base-black);\n\n @media ", " {\n grid-area: ", ";\n }\n"])), GRID.desktop.right, devices.mobileAndTablet, GRID.mobile.right);
8044
+ var Wrapper$4 = /*#__PURE__*/styled__default.div(_templateObject4$s || (_templateObject4$s = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin: 36px 36px 36px 50px;\n overflow: hidden;\n\n :first-child * {\n margin-block-start: 0;\n }\n\n @media ", " {\n margin: 36px 20px 5px 20px;\n max-height: unset;\n }\n"])), devices.mobileAndTablet);
8045
+
8046
+ var PageHeadingHighlight = function PageHeadingHighlight(_ref) {
8047
+ var _image$src, _image$alt;
8048
+ var image = _ref.image,
8049
+ children = _ref.children,
8050
+ _ref$background = _ref.background,
8051
+ background = _ref$background === void 0 ? 'base-black' : _ref$background,
8052
+ className = _ref.className;
8053
+ return /*#__PURE__*/React__default.createElement(HighlightPanelGrid, {
8054
+ className: className,
8055
+ "$background": background,
8056
+ "data-testid": "highlight-heading-wrapper"
8057
+ }, /*#__PURE__*/React__default.createElement(LeftPanel$1, {
8058
+ hasImage: !!image
8059
+ }, /*#__PURE__*/React__default.createElement(Wrapper$4, null, children)), image && (/*#__PURE__*/React__default.createElement(RightPanel$1, null, /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
8060
+ aspectRatio: exports.AspectRatio['4:3']
8061
+ }, /*#__PURE__*/React__default.createElement("img", {
8062
+ src: (_image$src = image == null ? void 0 : image.src) != null ? _image$src : '',
8063
+ alt: (_image$alt = image == null ? void 0 : image.alt) != null ? _image$alt : ''
8064
+ })))));
8065
+ };
8066
+
8067
+ var _templateObject$V, _templateObject2$J, _templateObject3$x, _templateObject5$n, _templateObject6$g, _templateObject7$c, _templateObject8$8, _templateObject9$5, _templateObject0$5;
8068
+ var BrandingTextBlock = /*#__PURE__*/styled__default.div(_templateObject$V || (_templateObject$V = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-size: var(--font-size-body-2);\n font-family: var(--font-family-header);\n text-transform: uppercase;\n margin: 0;\n white-space: nowrap;\n @media screen and (max-width: 920px) {\n white-space: normal;\n }\n @media ", " {\n white-space: nowrap;\n }\n"])), devices.mobile);
8069
+ var BrandingTextBody = /*#__PURE__*/styled__default.div(_templateObject2$J || (_templateObject2$J = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-family: var(--font-family-body);\n font-size: var(--font-size-heading-6);\n line-height: var(--line-height-heading-6);\n"])));
8070
+ var ComapctHeaderWrapper = /*#__PURE__*/styled__default.div(_templateObject3$x || (_templateObject3$x = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n display: block;\n"])));
8071
+ var CompactHeaderAssetWrapper = /*#__PURE__*/styled__default.div(_templateObject5$n || (_templateObject5$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 37.5vw;\n width: 100%;\n position: relative;\n overflow: hidden;\n background-color: #000;\n img {\n position: relative;\n height: 100%;\n width: 100%;\n object-fit: cover;\n }\n video {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n object-fit: contain;\n @media ", " {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n margin: auto;\n height: auto;\n max-height: 100vh;\n width: 100%;\n object-fit: contain;\n }\n }\n @media ", " {\n height: 85vw;\n max-height: 100vh;\n }\n"])), devices.mobile, devices.mobile);
8072
+ var CompactHeaderCopyWrapper = /*#__PURE__*/styled__default(Grid)(_templateObject6$g || (_templateObject6$g = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n height: 160px;\n grid-template-rows: min-content min-content;\n grid-template-rows: min-content min-content;\n grid-template-columns: [logo] 1fr [title] 3fr [cta] 1fr;\n align-content: center;\n gap: 0;\n background-color: ", ";\n color: ", ";\n\n svg {\n width: 210px;\n fill: ", ";\n }\n\n h1::selection,\n div::selection {\n ", ";\n }\n\n @media ", " {\n svg {\n width: 145px;\n }\n }\n\n @media ", " {\n display: flex;\n flex-direction: column;\n height: auto;\n padding: 32px 20px;\n\n svg {\n width: 180px;\n }\n }\n"])), function (_ref) {
8073
+ var invert = _ref.invert,
8074
+ theme = _ref.theme;
8075
+ return invert ? theme.colors.white : theme.colors.primary;
8076
+ }, function (_ref2) {
8077
+ var invert = _ref2.invert,
8078
+ theme = _ref2.theme;
8079
+ return invert ? theme.colors.black : theme.colors.white;
8080
+ }, function (_ref3) {
8081
+ var invert = _ref3.invert,
8082
+ theme = _ref3.theme;
8083
+ return invert ? theme.colors.black : theme.colors.white;
8084
+ }, function (_ref4) {
8085
+ var theme = _ref4.theme;
8086
+ return theme.colors.primary === theme.colors.stream && "\n color: " + theme.colors.stream + ";\n background-color: " + theme.colors.white + ";\n ";
8087
+ }, devices.tablet, devices.mobile);
8088
+ var CompactHeaderLogoWrapper = /*#__PURE__*/styled__default.div(_templateObject7$c || (_templateObject7$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n grid-area: logo;\n padding-left: 50px;\n justify-content: left;\n align-items: center;\n width: 100%;\n @media ", " {\n padding-left: 0px;\n justify-content: center;\n }\n @media ", " {\n width: fit-content;\n }\n"])), devices.mobile, devices.tablet);
8089
+ var CompactHeaderTitleWrapper = /*#__PURE__*/styled__default.div(_templateObject8$8 || (_templateObject8$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n grid-area: title;\n align-items: center;\n justify-content: center;\n font-family: var(--font-family-header);\n text-transform: uppercase;\n text-align: center;\n padding: 0 2em;\n @media ", " {\n justify-content: center;\n }\n"])), devices.mobile);
8090
+ var CompactHeaderCTAWrapper = /*#__PURE__*/styled__default.div(_templateObject9$5 || (_templateObject9$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n grid-area: cta;\n justify-content: right;\n align-items: center;\n padding-right: 50px;\n @media ", " {\n padding-right: 0px;\n justify-content: center;\n }\n"])), devices.mobile);
8091
+ var PrimaryButtonWithInversion = /*#__PURE__*/styled__default(PrimaryButton)(_templateObject0$5 || (_templateObject0$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background-color: ", ";\n color: ", ";\n svg {\n fill: ", ";\n path {\n fill: ", ";\n }\n }\n min-width: 145px;\n"])), function (_ref5) {
8092
+ var invert = _ref5.invert,
8093
+ theme = _ref5.theme;
8094
+ return invert ? theme.colors.primary : theme.colors.white;
8095
+ }, function (_ref6) {
8096
+ var invert = _ref6.invert,
8097
+ theme = _ref6.theme;
8098
+ return invert ? theme.colors.white : theme.colors.black;
8099
+ }, function (_ref7) {
8100
+ var invert = _ref7.invert,
8101
+ theme = _ref7.theme;
8102
+ return invert ? theme.colors.white : theme.colors.black;
8103
+ }, function (_ref8) {
8104
+ var invert = _ref8.invert,
8105
+ theme = _ref8.theme;
8106
+ return invert ? theme.colors.white : theme.colors.black;
8107
+ });
8108
+
8109
+ // Function to check if a URL is from the same site
8110
+ // NOTE: This function is not SSR compatible
8111
+ var isSameSiteUrl = function isSameSiteUrl(url) {
8112
+ var _window;
8113
+ if (url[0] === '/') return true; // URL is relative (e.g. /about)
8114
+ if (!((_window = window) != null && _window.location)) return false; // window.location is not available (e.g. in SSR)
8115
+ var currentPageURL = window.location.href || '';
8116
+ var regexPattern = /^(https?:\/\/)?(www\d?\.)?([\w.-]+)\.\w+.*$/;
8117
+ var match = url.match(regexPattern);
8118
+ if (match != null && match[3] && currentPageURL) {
8119
+ var urlDomain = match[3]; // Extract the domain from the third capture group
8120
+ var currentMatch = currentPageURL.match(regexPattern);
8121
+ if (currentMatch) {
8122
+ var currentDomain = currentMatch[3];
8123
+ return urlDomain === currentDomain;
8207
8124
  }
8208
- window.removeEventListener('mousemove', handleMouseMove);
8209
- window.removeEventListener('mouseup', _handleMouseUp);
8125
+ }
8126
+ return false; // URL didn't match the pattern
8127
+ };
8128
+ // Hook to check if a URL is from the same site - use for SSR
8129
+ var useSameSiteUrl = function useSameSiteUrl(url) {
8130
+ var _useState = React.useState(false),
8131
+ hasSameSiteUrl = _useState[0],
8132
+ setSameSiteUrl = _useState[1];
8133
+ React.useEffect(function () {
8134
+ setSameSiteUrl(isSameSiteUrl(url));
8135
+ }, [url]);
8136
+ return hasSameSiteUrl;
8137
+ };
8138
+
8139
+ var renderBranding = function renderBranding(brandingStyle, invert, brandingText, brandingLink) {
8140
+ // eslint-disable-next-line react-hooks/rules-of-hooks
8141
+ var sameSiteUrl = brandingLink && useSameSiteUrl(brandingLink);
8142
+ var target = sameSiteUrl ? '_self' : '_blank';
8143
+ var color = invert ? ThemeColor['base-black'] : ThemeColor['base-white'];
8144
+ switch (brandingStyle) {
8145
+ case 'BlockText':
8146
+ return (brandingText == null ? void 0 : brandingText.trim()) && /*#__PURE__*/React__default.createElement(BrandingTextBlock, null, truncate(stripAllHtmlTags(brandingText), 25));
8147
+ case 'BodyText':
8148
+ return (brandingText == null ? void 0 : brandingText.trim()) && (/*#__PURE__*/React__default.createElement(BrandingTextBody, {
8149
+ dangerouslySetInnerHTML: {
8150
+ __html: truncateHtmlString(brandingText, 65)
8151
+ }
8152
+ }));
8153
+ case 'TextLink':
8154
+ return (brandingText == null ? void 0 : brandingText.trim()) && brandingLink && (/*#__PURE__*/React__default.createElement(TextLink, {
8155
+ target: target,
8156
+ href: brandingLink,
8157
+ color: color
8158
+ }, truncate(stripAllHtmlTags(brandingText), 25)));
8159
+ case 'StreamLogo':
8160
+ return /*#__PURE__*/React__default.createElement(StreamBadge, {
8161
+ invert: invert
8162
+ });
8163
+ case 'CinemaLogo':
8164
+ return /*#__PURE__*/React__default.createElement(CinemaBadge, {
8165
+ invert: invert
8166
+ });
8167
+ default:
8168
+ return null;
8169
+ }
8170
+ };
8171
+ var CompactHeaderBranding = function CompactHeaderBranding(_ref) {
8172
+ var brandingStyle = _ref.brandingStyle,
8173
+ _ref$invert = _ref.invert,
8174
+ invert = _ref$invert === void 0 ? false : _ref$invert,
8175
+ brandingText = _ref.brandingText,
8176
+ brandingLink = _ref.brandingLink;
8177
+ return /*#__PURE__*/React__default.createElement(CompactHeaderLogoWrapper, null, renderBranding(brandingStyle, invert, brandingText, brandingLink));
8178
+ };
8179
+
8180
+ var _excluded$l = ["text"];
8181
+ var useResponsiveVideo = function useResponsiveVideo(video, poster) {
8182
+ var mobileVideo = video.mobile || video.desktop;
8183
+ var desktopVideo = video.desktop || video.mobile;
8184
+ var mobilePoster = poster.mobile || poster.desktop;
8185
+ var desktopPoster = poster.desktop || poster.mobile;
8186
+ var _useState = React.useState(desktopPoster),
8187
+ posterUrl = _useState[0],
8188
+ setPoster = _useState[1];
8189
+ var _useState2 = React.useState(desktopVideo),
8190
+ videoUrl = _useState2[0],
8191
+ setVideoUrl = _useState2[1];
8192
+ var isMobile = useMobile();
8193
+ React.useEffect(function () {
8194
+ setPoster(isMobile ? mobilePoster : desktopPoster);
8195
+ setVideoUrl(isMobile ? mobileVideo : desktopVideo);
8196
+ }, [isMobile]);
8197
+ return {
8198
+ posterUrl: posterUrl,
8199
+ videoUrl: videoUrl
8210
8200
  };
8211
- var handleMouseDown = function handleMouseDown(e) {
8212
- if (transitioning || e.button !== 0) return;
8213
- e.preventDefault();
8214
- setIsActive();
8215
- startX.current = e.clientX;
8216
- isDragging.current = true;
8217
- isMouseDown.current = true;
8218
- isClickPrevented.current = false;
8219
- setTransitioning(false);
8220
- window.addEventListener('mousemove', handleMouseMove);
8221
- window.addEventListener('mouseup', _handleMouseUp);
8201
+ };
8202
+ var VideoWithControls = function VideoWithControls(_ref) {
8203
+ var video = _ref.video,
8204
+ poster = _ref.poster;
8205
+ var _useResponsiveVideo = useResponsiveVideo(video, poster),
8206
+ posterUrl = _useResponsiveVideo.posterUrl,
8207
+ videoUrl = _useResponsiveVideo.videoUrl;
8208
+ var isIOS = useIOS();
8209
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("video", {
8210
+ id: video.elementId,
8211
+ width: "100%",
8212
+ height: "100%",
8213
+ muted: true,
8214
+ poster: posterUrl,
8215
+ src: videoUrl,
8216
+ "data-testid": "compact-video",
8217
+ playsInline: true
8218
+ }, /*#__PURE__*/React__default.createElement("source", {
8219
+ src: videoUrl
8220
+ }), /*#__PURE__*/React__default.createElement("img", {
8221
+ src: posterUrl,
8222
+ alt: poster.alt,
8223
+ "data-testid": "compact-image"
8224
+ })), /*#__PURE__*/React__default.createElement(VideoControls, {
8225
+ loop: true,
8226
+ videoElementId: video.elementId,
8227
+ muted: true,
8228
+ autoPlay: false,
8229
+ soundControl: !isIOS
8230
+ }));
8231
+ };
8232
+ var CompactHeaderImage = function CompactHeaderImage(_ref2) {
8233
+ var mobile = _ref2.mobile,
8234
+ desktop = _ref2.desktop,
8235
+ alt = _ref2.alt;
8236
+ return /*#__PURE__*/React__default.createElement("picture", {
8237
+ "data-testid": "compact-picture"
8238
+ }, mobile && /*#__PURE__*/React__default.createElement("source", {
8239
+ srcSet: mobile,
8240
+ media: "" + devices.mobile,
8241
+ "data-testid": "compact-mobile-image-source"
8242
+ }), /*#__PURE__*/React__default.createElement("source", {
8243
+ srcSet: desktop,
8244
+ media: "" + devices.desktop,
8245
+ "data-testid": "compact-desktop-image-source"
8246
+ }), /*#__PURE__*/React__default.createElement("img", {
8247
+ src: desktop,
8248
+ alt: alt,
8249
+ "data-testid": "compact-image"
8250
+ }));
8251
+ };
8252
+ var CompactHeaderVideo = function CompactHeaderVideo(_ref3) {
8253
+ var video = _ref3.video,
8254
+ poster = _ref3.poster;
8255
+ if (!video.desktop && !video.mobile) {
8256
+ return /*#__PURE__*/React__default.createElement(CompactHeaderImage, Object.assign({}, poster));
8257
+ }
8258
+ return /*#__PURE__*/React__default.createElement(VideoWithControls, {
8259
+ video: video,
8260
+ poster: poster
8261
+ });
8262
+ };
8263
+ var PageHeadingCompact = function PageHeadingCompact(_ref4) {
8264
+ var title = _ref4.title,
8265
+ link = _ref4.link,
8266
+ _ref4$sponsor = _ref4.sponsor,
8267
+ sponsor = _ref4$sponsor === void 0 ? true : _ref4$sponsor,
8268
+ customSponsorImage = _ref4.customSponsorImage,
8269
+ bgUrlDesktop = _ref4.bgUrlDesktop,
8270
+ bgUrlDevice = _ref4.bgUrlDevice,
8271
+ videoUrlDesktop = _ref4.videoUrlDesktop,
8272
+ videoUrlMobile = _ref4.videoUrlMobile,
8273
+ _ref4$bgImageAltText = _ref4.bgImageAltText,
8274
+ bgImageAltText = _ref4$bgImageAltText === void 0 ? '' : _ref4$bgImageAltText,
8275
+ _ref4$invert = _ref4.invert,
8276
+ invert = _ref4$invert === void 0 ? false : _ref4$invert,
8277
+ _ref4$brandingStyle = _ref4.brandingStyle,
8278
+ brandingStyle = _ref4$brandingStyle === void 0 ? 'BlockText' : _ref4$brandingStyle,
8279
+ brandingText = _ref4.brandingText,
8280
+ brandingLink = _ref4.brandingLink,
8281
+ _ref4$showCopy = _ref4.showCopy,
8282
+ showCopy = _ref4$showCopy === void 0 ? true : _ref4$showCopy;
8283
+ var _ref5 = link || {},
8284
+ linkText = _ref5.text,
8285
+ restLink = _objectWithoutPropertiesLoose(_ref5, _excluded$l);
8286
+ // const titleSize = title && title.length > 20 ? 4 : 3;
8287
+ var video = {
8288
+ elementId: 'compact-header-video',
8289
+ desktop: videoUrlDesktop,
8290
+ mobile: videoUrlMobile
8222
8291
  };
8223
- var onSlideFocus = function onSlideFocus(isVisible, index) {
8224
- if (!isVisible) {
8225
- setCurrentIndex(index);
8226
- }
8292
+ var poster = {
8293
+ desktop: bgUrlDesktop,
8294
+ mobile: bgUrlDevice,
8295
+ alt: bgImageAltText
8227
8296
  };
8228
- var visibleIndexes = getVisibleIndexes(currentIndex, slideWidths, containerWidth, slides.length);
8229
- return /*#__PURE__*/React__default.createElement(SwipeContainer, Object.assign({
8230
- ref: containerRef,
8231
- className: "swipe",
8232
- onTouchStart: handleTouchStart,
8233
- onTouchMove: handleTouchMove,
8234
- onTouchEnd: handleTouchEnd,
8235
- onMouseDown: handleMouseDown,
8236
- "aria-roledescription": "carousel",
8237
- role: "list"
8238
- }, props), /*#__PURE__*/React__default.createElement(SwipeTrack, {
8239
- className: "swipe-track-wrapper",
8240
- translateX: dragTranslateX !== null ? dragTranslateX : getTranslateX(),
8241
- transitioning: transitioning && dragTranslateX === null,
8242
- onTransitionEnd: handleTransitionEnd
8243
- }, slides.map(function (child, index) {
8244
- var isVisible = visibleIndexes.includes(index);
8245
- var isClone = isCloneSlide(index, clonesCount, children.length, infinite);
8246
- return /*#__PURE__*/React__default.createElement("div", {
8247
- key: "swipe-slide-" + uniqueIdRef.current + "-" + index,
8248
- className: SWIPE_SLIDE_CLASS_NAME,
8249
- "aria-hidden": slidesAriaHidden || isClone,
8250
- "aria-roledescription": "slide",
8251
- role: "listitem",
8252
- ref: function ref(el) {
8253
- childRefs.current[index] = el;
8254
- disableTabbingInside(el, isClone);
8255
- },
8256
- onFocus: function onFocus() {
8257
- return onSlideFocus(isVisible, index);
8258
- }
8259
- }, child);
8260
- })));
8261
- });
8262
- Swipe.displayName = 'Swipe';
8297
+ return /*#__PURE__*/React__default.createElement(ComapctHeaderWrapper, null, sponsor ? (/*#__PURE__*/React__default.createElement(SponsorWrapper, {
8298
+ "data-testid": "compact-sponsor"
8299
+ }, customSponsorImage ? (/*#__PURE__*/React__default.createElement(Sponsorship, Object.assign({
8300
+ "data-testid": "compact-custom-sponsor"
8301
+ }, customSponsorImage))) : (/*#__PURE__*/React__default.createElement(Sponsorship, null)))) : null, /*#__PURE__*/React__default.createElement(CompactHeaderAssetWrapper, null, /*#__PURE__*/React__default.createElement(CompactHeaderVideo, {
8302
+ video: video,
8303
+ poster: poster
8304
+ })), showCopy && (/*#__PURE__*/React__default.createElement(CompactHeaderCopyWrapper, {
8305
+ className: "page-heading-compact__background",
8306
+ invert: invert
8307
+ }, /*#__PURE__*/React__default.createElement(CompactHeaderBranding, {
8308
+ brandingStyle: brandingStyle,
8309
+ brandingText: brandingText,
8310
+ brandingLink: brandingLink,
8311
+ invert: invert
8312
+ }), /*#__PURE__*/React__default.createElement(CompactHeaderTitleWrapper, null, /*#__PURE__*/React__default.createElement(HarmonicHeader, {
8313
+ size: "large",
8314
+ hierarchy: "h1"
8315
+ }, title && truncate(title, 40))), link && (/*#__PURE__*/React__default.createElement(CompactHeaderCTAWrapper, null, /*#__PURE__*/React__default.createElement(PrimaryButtonWithInversion, Object.assign({}, restLink, {
8316
+ invert: invert,
8317
+ className: "page-heading-compact__button"
8318
+ }), linkText))))));
8319
+ };
8263
8320
 
8264
- var _templateObject$W, _templateObject2$K, _templateObject3$y, _templateObject4$t, _templateObject5$n, _templateObject6$g, _templateObject7$c;
8321
+ var _templateObject$W, _templateObject2$K, _templateObject3$y, _templateObject4$t, _templateObject5$o, _templateObject6$h, _templateObject7$d;
8265
8322
  var HighlightsGrid = /*#__PURE__*/styled__default(Grid)(_templateObject$W || (_templateObject$W = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n grid-template-rows: max-content minmax(0, 1fr);\n gap: 0 var(--grid-column-gap);\n background-color: var(--color-base-black);\n color: var(--color-base-white);\n user-select: none;\n\n @media ", " {\n & {\n grid-template-rows: min-content max-content max-content;\n }\n }\n"])), devices.mobile);
8266
8323
  var HighlightTitleWrapper = /*#__PURE__*/styled__default.div(_templateObject2$K || (_templateObject2$K = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n user-select: text;\n h1 {\n margin: 0 0 8px 0;\n }\n p {\n text-transform: uppercase;\n }\n"])));
8267
8324
  var HighlightTextWrapper = /*#__PURE__*/styled__default.div(_templateObject3$y || (_templateObject3$y = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 24px;\n user-select: text;\n\n @media ", " {\n & {\n margin-top: 20px;\n }\n }\n"])), devices.mobile);
@@ -8272,12 +8329,12 @@ var HighlightsInfoWrapper = /*#__PURE__*/styled__default.div(_templateObject4$t
8272
8329
  var hasImages = _ref2.hasImages;
8273
8330
  return hasImages ? '3 / 1 / 4 / 15' : '1 / 1 / 3 / 15';
8274
8331
  });
8275
- var HighlightsCarouselWrapper = /*#__PURE__*/styled__default.div(_templateObject5$n || (_templateObject5$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: 1 / 7 / 3 / 17;\n position: relative;\n height: 100%;\n width: 100%;\n background-color: var(--color-base-black);\n\n .swipe-slide {\n ", "\n }\n\n @media ", " {\n & {\n grid-area: 2 / 1 / 3 / 15;\n\n .swiper-slide {\n width: 100%;\n -webkit-transform: translate3d(0, 0, 0);\n }\n }\n }\n"])), function (_ref3) {
8332
+ var HighlightsCarouselWrapper = /*#__PURE__*/styled__default.div(_templateObject5$o || (_templateObject5$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: 1 / 7 / 3 / 17;\n position: relative;\n height: 100%;\n width: 100%;\n background-color: var(--color-base-black);\n\n .swipe-slide {\n ", "\n }\n\n @media ", " {\n & {\n grid-area: 2 / 1 / 3 / 15;\n\n .swiper-slide {\n width: 100%;\n -webkit-transform: translate3d(0, 0, 0);\n }\n }\n }\n"])), function (_ref3) {
8276
8333
  var hasMultipleImages = _ref3.hasMultipleImages;
8277
8334
  return hasMultipleImages ? 'width: calc(100% - 50px - var(--rotator-button-width)); -webkit-transform: translate3d(0, 0, 0);' : 'width: 100%';
8278
8335
  }, devices.mobile);
8279
- var RotatorButtonsWrapperMobile = /*#__PURE__*/styled__default.div(_templateObject6$g || (_templateObject6$g = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n margin-top: 8px;\n margin-bottom: 8px;\n\n @media ", " {\n div {\n background-color: var(--color-base-black);\n }\n svg path {\n fill: var(--color-base-white) !important;\n }\n\n & {\n display: flex;\n margin-left: 100px;\n align-self: center;\n justify-content: flex-end;\n }\n }\n"])), devices.mobile);
8280
- var RotatorButtonsWrapper = /*#__PURE__*/styled__default.div(_templateObject7$c || (_templateObject7$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n right: 50px;\n top: calc(50% - calc(var(--rotator-button-width) / 2));\n z-index: 2;\n\n @media ", " {\n & {\n display: none;\n }\n }\n"])), devices.mobileAndTablet);
8336
+ var RotatorButtonsWrapperMobile = /*#__PURE__*/styled__default.div(_templateObject6$h || (_templateObject6$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n margin-top: 8px;\n margin-bottom: 8px;\n\n @media ", " {\n div {\n background-color: var(--color-base-black);\n }\n svg path {\n fill: var(--color-base-white) !important;\n }\n\n & {\n display: flex;\n margin-left: 100px;\n align-self: center;\n justify-content: flex-end;\n }\n }\n"])), devices.mobile);
8337
+ var RotatorButtonsWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject7$d || (_templateObject7$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n right: 50px;\n top: calc(50% - calc(var(--rotator-button-width) / 2));\n z-index: 2;\n\n @media ", " {\n & {\n display: none;\n }\n }\n"])), devices.mobileAndTablet);
8281
8338
 
8282
8339
  /* eslint-disable react/no-danger */
8283
8340
  var PageHeadingHighlightCarousel = function PageHeadingHighlightCarousel(_ref) {
@@ -8320,7 +8377,7 @@ var PageHeadingHighlightCarousel = function PageHeadingHighlightCarousel(_ref) {
8320
8377
  }
8321
8378
  })))) : null), hasImages && (/*#__PURE__*/React__default.createElement(HighlightsCarouselWrapper, {
8322
8379
  hasMultipleImages: hasMultipleImages
8323
- }, hasMultipleImages && (/*#__PURE__*/React__default.createElement(RotatorButtonsWrapper, {
8380
+ }, hasMultipleImages && (/*#__PURE__*/React__default.createElement(RotatorButtonsWrapper$1, {
8324
8381
  "data-testid": "rotator-buttons"
8325
8382
  }, /*#__PURE__*/React__default.createElement(RotatorButtons, {
8326
8383
  onClickNext: onNext,
@@ -8340,14 +8397,14 @@ var PageHeadingHighlightCarousel = function PageHeadingHighlightCarousel(_ref) {
8340
8397
  }))))));
8341
8398
  };
8342
8399
 
8343
- var _templateObject$X, _templateObject2$L, _templateObject3$z, _templateObject5$o, _templateObject6$h, _templateObject7$d, _templateObject8$8;
8400
+ var _templateObject$X, _templateObject2$L, _templateObject3$z, _templateObject5$p, _templateObject6$i, _templateObject7$e, _templateObject8$9;
8344
8401
  var linkButtonStyles = /*#__PURE__*/styled.css(_templateObject$X || (_templateObject$X = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-left: 0;\n background: none;\n border: none;\n color: inherit;\n text-decoration: none;\n cursor: pointer;\n font: inherit;\n padding: 0;\n\n span {\n height: 1.5em;\n width: 1.5em;\n\n svg > path {\n fill: var(--color-base-black);\n }\n }\n\n &:hover {\n outline: none;\n }\n"])));
8345
8402
  var PageNav = /*#__PURE__*/styled__default.a(_templateObject2$L || (_templateObject2$L = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n"])), linkButtonStyles);
8346
8403
  var PaginationLink = /*#__PURE__*/styled__default.a(_templateObject3$z || (_templateObject3$z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n"])), linkButtonStyles);
8347
- var PageNumberWrapper = /*#__PURE__*/styled__default.ol(_templateObject5$o || (_templateObject5$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n min-width: fit-content;\n align-items: center;\n justify-content: center;\n flex-wrap: nowrap;\n flex-direction: row;\n list-style: none;\n padding: 0;\n max-width: fit-content;\n margin: 0 auto;\n\n li {\n margin-left: 24px;\n color: var(--color-base-black);\n display: flex;\n justify-content: flex-start;\n align-items: center;\n }\n\n li:first-child {\n margin-left: 0px;\n }\n"])));
8348
- var LastPageItem = /*#__PURE__*/styled__default.li(_templateObject6$h || (_templateObject6$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n margin-left: 12px;\n }\n"])));
8349
- var PreviousPageItem = /*#__PURE__*/styled__default.li(_templateObject7$d || (_templateObject7$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n margin-left: 12px;\n }\n"])));
8350
- var TextLinkPagination = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject8$8 || (_templateObject8$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n color: ", ";\n border-bottom: ", ";\n }\n\n :hover {\n cursor: pointer;\n color: var(--color-primary-red);\n border-bottom: 1px solid var(--color-primary-red);\n svg > path {\n fill: var(--color-base-black);\n }\n }\n"])), function (_ref) {
8404
+ var PageNumberWrapper = /*#__PURE__*/styled__default.ol(_templateObject5$p || (_templateObject5$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n min-width: fit-content;\n align-items: center;\n justify-content: center;\n flex-wrap: nowrap;\n flex-direction: row;\n list-style: none;\n padding: 0;\n max-width: fit-content;\n margin: 0 auto;\n\n li {\n margin-left: 24px;\n color: var(--color-base-black);\n display: flex;\n justify-content: flex-start;\n align-items: center;\n }\n\n li:first-child {\n margin-left: 0px;\n }\n"])));
8405
+ var LastPageItem = /*#__PURE__*/styled__default.li(_templateObject6$i || (_templateObject6$i = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n margin-left: 12px;\n }\n"])));
8406
+ var PreviousPageItem = /*#__PURE__*/styled__default.li(_templateObject7$e || (_templateObject7$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n margin-left: 12px;\n }\n"])));
8407
+ var TextLinkPagination = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject8$9 || (_templateObject8$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n color: ", ";\n border-bottom: ", ";\n }\n\n :hover {\n cursor: pointer;\n color: var(--color-primary-red);\n border-bottom: 1px solid var(--color-primary-red);\n svg > path {\n fill: var(--color-base-black);\n }\n }\n"])), function (_ref) {
8351
8408
  var active = _ref.active;
8352
8409
  return active ? "var(--color-primary-red)" : 'inherit';
8353
8410
  }, function (_ref2) {
@@ -8503,7 +8560,7 @@ var _templateObject$Y;
8503
8560
  var PeopleListingGrid = /*#__PURE__*/styled__default(Grid)(_templateObject$Y || (_templateObject$Y = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 40px 36px;\n\n grid-template-columns: 1fr 1fr 1fr;\n\n @media ", " {\n grid-template-columns: 1fr;\n }\n\n @media ", " {\n grid-template-columns: 1fr 1fr;\n }\n\n @media ", " {\n grid-template-columns: 1fr 1fr 1fr 1fr;\n }\n"])), devices.mobile, devices.tablet, devices.largeDesktop);
8504
8561
 
8505
8562
  var _templateObject$Z, _templateObject2$M;
8506
- var TextWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject$Z || (_templateObject$Z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n color: var(--color-primary-black);\n }\n grid-area: role-person;\n break-inside: avoid;\n"])));
8563
+ var TextWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject$Z || (_templateObject$Z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n color: var(--color-primary-black);\n }\n grid-area: role-person;\n break-inside: avoid;\n"])));
8507
8564
  var RoleContent = /*#__PURE__*/styled__default(HarmonicSubtitle)(_templateObject2$M || (_templateObject2$M = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n color: var(--color-base-dark-grey);\n }\n overflow-wrap: break-word;\n padding-bottom: 4px;\n"])));
8508
8565
 
8509
8566
  var _templateObject$_, _templateObject2$N;
@@ -8531,7 +8588,7 @@ var PersonDetails = function PersonDetails(_ref) {
8531
8588
  var _role$people;
8532
8589
  var role = _ref.role,
8533
8590
  className = _ref.className;
8534
- return /*#__PURE__*/React__default.createElement(TextWrapper$1, {
8591
+ return /*#__PURE__*/React__default.createElement(TextWrapper$2, {
8535
8592
  className: className
8536
8593
  }, /*#__PURE__*/React__default.createElement(RoleContent, {
8537
8594
  title: "role",
@@ -8548,7 +8605,7 @@ var PersonDetails = function PersonDetails(_ref) {
8548
8605
  };
8549
8606
 
8550
8607
  var _templateObject$$, _templateObject2$O;
8551
- var PersonWrapper = /*#__PURE__*/styled__default.div(_templateObject$$ || (_templateObject$$ = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: grid;\n grid-template-columns: 82px 1fr;\n grid-template-areas: 'headshot role-person';\n grid-column-gap: 16px;\n"])));
8608
+ var PersonWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject$$ || (_templateObject$$ = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: grid;\n grid-template-columns: 82px 1fr;\n grid-template-areas: 'headshot role-person';\n grid-column-gap: 16px;\n"])));
8552
8609
  var HeadshotWrapper = /*#__PURE__*/styled__default.div(_templateObject2$O || (_templateObject2$O = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n grid-area: headshot;\n img {\n width: 82px;\n height: 82px;\n }\n"])));
8553
8610
 
8554
8611
  var PersonCard = function PersonCard(_ref) {
@@ -8559,7 +8616,7 @@ var PersonCard = function PersonCard(_ref) {
8559
8616
  var firstPerson = (_role$people = role.people) == null ? void 0 : _role$people[0];
8560
8617
  return Boolean((firstPerson == null ? void 0 : firstPerson.headshot) && firstPerson.useHeadshot);
8561
8618
  }, [role]);
8562
- if (hasHeadshot) return /*#__PURE__*/React__default.createElement(PersonWrapper, {
8619
+ if (hasHeadshot) return /*#__PURE__*/React__default.createElement(PersonWrapper$1, {
8563
8620
  className: className
8564
8621
  }, /*#__PURE__*/React__default.createElement(HeadshotWrapper, null, /*#__PURE__*/React__default.createElement("img", {
8565
8622
  src: role.people[0].headshot,
@@ -8683,7 +8740,7 @@ var CreditListing = function CreditListing(_ref) {
8683
8740
  columnSpanSmallDevice: 1,
8684
8741
  key: "credit-entry-" + name + "-" + index,
8685
8742
  "data-testid": "credit-entry"
8686
- }, /*#__PURE__*/React__default.createElement(TextWrapper$1, null, /*#__PURE__*/React__default.createElement(RoleWrapper, {
8743
+ }, /*#__PURE__*/React__default.createElement(TextWrapper$2, null, /*#__PURE__*/React__default.createElement(RoleWrapper, {
8687
8744
  title: "role",
8688
8745
  "data-roh": dataROH
8689
8746
  }, /*#__PURE__*/React__default.createElement(Overline, {
@@ -8740,7 +8797,7 @@ var PolicyLinks = function PolicyLinks(_ref) {
8740
8797
  }));
8741
8798
  };
8742
8799
 
8743
- var _templateObject$12, _templateObject3$B, _templateObject4$v, _templateObject5$p, _templateObject6$i, _templateObject7$e, _templateObject8$9, _templateObject9$5, _templateObject0$5, _templateObject1$3, _templateObject10$2, _templateObject11$2, _templateObject12$2, _templateObject13$1, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
8800
+ var _templateObject$12, _templateObject3$B, _templateObject4$v, _templateObject5$q, _templateObject6$j, _templateObject7$f, _templateObject8$a, _templateObject9$6, _templateObject0$6, _templateObject1$4, _templateObject10$3, _templateObject11$2, _templateObject12$2, _templateObject13$1, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
8744
8801
  var LENGTH_TEXT = 28;
8745
8802
  var LENGTH_TEXT_TABLET$1 = 12;
8746
8803
  var GridTemplateImageToLeft = "'left left left left left left left left . right right right right right . .'";
@@ -8788,14 +8845,14 @@ var PromoWithTagsTagWrapper = /*#__PURE__*/styled__default.div(_templateObject4$
8788
8845
  var mobileMarginBottom = _ref8.mobileMarginBottom;
8789
8846
  return mobileMarginBottom && "\n @media " + devices.mobile + " {\n margin-bottom: " + mobileMarginBottom + "px;\n }\n ";
8790
8847
  });
8791
- var TextLinksContainer = /*#__PURE__*/styled__default.div(_templateObject5$p || (_templateObject5$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-wrap: wrap;\n margin: 24px 0 4px 0;\n"])));
8792
- var TextLinkWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject6$i || (_templateObject6$i = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-right: 24px;\n margin-bottom: 20px;\n\n &:last-child {\n margin-right: 0;\n }\n"])));
8793
- var ExtraContentWrapper = /*#__PURE__*/styled__default.div(_templateObject7$e || (_templateObject7$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n padding-right: 68px;\n\n iframe {\n height: 800px;\n }\n\n @media ", " {\n padding: 30px 0 0;\n }\n\n @media ", " {\n padding: 0;\n position: initial;\n }\n"])), devices.tablet, devices.mobile);
8794
- var IconWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject8$9 || (_templateObject8$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n cursor: pointer;\n position: absolute;\n top: 25px;\n right: 35px;\n width: 24px;\n height: 24px;\n\n @media ", " {\n top: 30px;\n right: 30px;\n }\n\n @media ", " {\n top: 3px;\n right: 20px;\n }\n"])), devices.tablet, devices.mobile);
8795
- var PrimaryButtonWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject9$5 || (_templateObject9$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: var(--button-height);\n\n @media ", " {\n width: 100%;\n }\n"])), devices.mobile);
8796
- var MobileTitleWrapper = /*#__PURE__*/styled__default.div(_templateObject0$5 || (_templateObject0$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n margin: 0 50px 0 20px;\n\n h2,\n h3 {\n margin: 0;\n }\n\n @media ", " {\n display: block;\n }\n"])), devices.mobile);
8797
- var asCardOverrides = /*#__PURE__*/styled.css(_templateObject1$3 || (_templateObject1$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", " {\n flex-direction: row;\n @media ", " {\n flex-direction: row;\n }\n }\n"])), ButtonsContainer$2, devices.tablet);
8798
- var PromoWithTagsExtraContentWrapper = /*#__PURE__*/styled__default.div(_templateObject10$2 || (_templateObject10$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n grid-area: left;\n grid-area: ", ";\n align-self: center;\n @media ", " {\n & {\n grid-area: row1;\n }\n }\n"])), function (_ref9) {
8848
+ var TextLinksContainer = /*#__PURE__*/styled__default.div(_templateObject5$q || (_templateObject5$q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-wrap: wrap;\n margin: 24px 0 4px 0;\n"])));
8849
+ var TextLinkWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject6$j || (_templateObject6$j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-right: 24px;\n margin-bottom: 20px;\n\n &:last-child {\n margin-right: 0;\n }\n"])));
8850
+ var ExtraContentWrapper = /*#__PURE__*/styled__default.div(_templateObject7$f || (_templateObject7$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n padding-right: 68px;\n\n iframe {\n height: 800px;\n }\n\n @media ", " {\n padding: 30px 0 0;\n }\n\n @media ", " {\n padding: 0;\n position: initial;\n }\n"])), devices.tablet, devices.mobile);
8851
+ var IconWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject8$a || (_templateObject8$a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n cursor: pointer;\n position: absolute;\n top: 25px;\n right: 35px;\n width: 24px;\n height: 24px;\n\n @media ", " {\n top: 30px;\n right: 30px;\n }\n\n @media ", " {\n top: 3px;\n right: 20px;\n }\n"])), devices.tablet, devices.mobile);
8852
+ var PrimaryButtonWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject9$6 || (_templateObject9$6 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: var(--button-height);\n\n @media ", " {\n width: 100%;\n }\n"])), devices.mobile);
8853
+ var MobileTitleWrapper = /*#__PURE__*/styled__default.div(_templateObject0$6 || (_templateObject0$6 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n margin: 0 50px 0 20px;\n\n h2,\n h3 {\n margin: 0;\n }\n\n @media ", " {\n display: block;\n }\n"])), devices.mobile);
8854
+ var asCardOverrides = /*#__PURE__*/styled.css(_templateObject1$4 || (_templateObject1$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", " {\n flex-direction: row;\n @media ", " {\n flex-direction: row;\n }\n }\n"])), ButtonsContainer$2, devices.tablet);
8855
+ var PromoWithTagsExtraContentWrapper = /*#__PURE__*/styled__default.div(_templateObject10$3 || (_templateObject10$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n grid-area: left;\n grid-area: ", ";\n align-self: center;\n @media ", " {\n & {\n grid-area: row1;\n }\n }\n"])), function (_ref9) {
8799
8856
  var imageToLeft = _ref9.imageToLeft;
8800
8857
  return imageToLeft ? 'left' : 'right';
8801
8858
  }, devices.mobile);
@@ -8816,12 +8873,12 @@ var HarmonicHeaderWithWrapper = /*#__PURE__*/styled__default(HarmonicHeader)(_te
8816
8873
  var BodyCopyHarmonicWithWrapper$1 = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject16 || (_templateObject16 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0;\n margin: 0;\n margin-bottom: 32px;\n whiete-space: break-spaces;\n overflow-wrap: break-word;\n\n a {\n text-decoration: underline;\n cursor: pointer;\n\n &[href^='tel:'] {\n text-decoration: none;\n }\n\n &:link {\n color: var(--color-primary-black);\n }\n\n &:visited {\n color: var(--color-base-dark-grey);\n }\n\n &:hover {\n color: var(--color-primary-red);\n }\n }\n @media ", " {\n margin-bottom: 24px;\n }\n"])), devices.mobile);
8817
8874
  var HarmonicSubtitleWithWrapper = /*#__PURE__*/styled__default(HarmonicSubtitle)(_templateObject17 || (_templateObject17 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow-wrap: break-word;\n margin-bottom: 16px;\n"])));
8818
8875
 
8819
- var _excluded$l = ["text"],
8876
+ var _excluded$m = ["text"],
8820
8877
  _excluded2$2 = ["text"],
8821
8878
  _excluded3$1 = ["text"];
8822
8879
  var _buttonTypeToButton$1;
8823
8880
  var LENGTH_TEXT$1 = 28;
8824
- var LENGTH_TEXT_PARAGRAPH = 130;
8881
+ var LENGTH_TEXT_PARAGRAPH = 185;
8825
8882
  var buttonTypeToButton$1 = (_buttonTypeToButton$1 = {}, _buttonTypeToButton$1[exports.ButtonType.Primary] = PrimaryButton, _buttonTypeToButton$1[exports.ButtonType.Secondary] = SecondaryButton, _buttonTypeToButton$1[exports.ButtonType.Tertiary] = TertiaryButton, _buttonTypeToButton$1);
8826
8883
  var PromoWithTags = function PromoWithTags(_ref) {
8827
8884
  var _ref$imagePosition = _ref.imagePosition,
@@ -8884,7 +8941,7 @@ var PromoWithTags = function PromoWithTags(_ref) {
8884
8941
  var _ref2 = firstButton || {},
8885
8942
  _ref2$text = _ref2.text,
8886
8943
  firstButtonText = _ref2$text === void 0 ? '' : _ref2$text,
8887
- restFirstButton = _objectWithoutPropertiesLoose(_ref2, _excluded$l);
8944
+ restFirstButton = _objectWithoutPropertiesLoose(_ref2, _excluded$m);
8888
8945
  var primaryButtonTextTruncate = truncate(firstButtonText, LENGTH_TEXT$1);
8889
8946
  var secondButton = links == null ? void 0 : links[1];
8890
8947
  var _ref3 = secondButton || {},
@@ -9012,7 +9069,7 @@ var PromoWithTags = function PromoWithTags(_ref) {
9012
9069
  }))));
9013
9070
  };
9014
9071
 
9015
- var _templateObject$13, _templateObject2$Q, _templateObject3$C, _templateObject4$w, _templateObject5$q, _templateObject6$j, _templateObject7$f;
9072
+ var _templateObject$13, _templateObject2$Q, _templateObject3$C, _templateObject4$w, _templateObject5$r, _templateObject6$k, _templateObject7$g;
9016
9073
  var LENGTH_TEXT$2 = 28;
9017
9074
  var LENGTH_TEXT_TABLET$2 = 10;
9018
9075
  var PromoWithTitleGrid = /*#__PURE__*/styled__default(Grid)(_templateObject$13 || (_templateObject$13 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-template-areas: ", ";\n\n @media ", " {\n & {\n grid-template-areas: ", ";\n }\n }\n\n @media ", " {\n & {\n grid-template-columns: var(--grid-margin) minmax(0, 1fr) var(--grid-margin);\n grid-template-rows: min-content 24px min-content;\n gap: 0;\n grid-template-areas:\n 'row1 row1 row1'\n '. . .'\n '. row2 .';\n }\n }\n"])), function (_ref) {
@@ -9031,9 +9088,9 @@ var PromoWithTitleContentWrapper = /*#__PURE__*/styled__default.div(_templateObj
9031
9088
  return imageToLeft ? 'right' : 'left';
9032
9089
  }, devices.mobile);
9033
9090
  var HarmonicHeaderWithWrapper$1 = /*#__PURE__*/styled__default(HarmonicHeader)(_templateObject4$w || (_templateObject4$w = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding-bottom: 32px;\n\n @media ", " {\n padding-bottom: 24px;\n }\n"])), devices.mobile);
9034
- var HarmonicSubtitleWithWrapper$1 = /*#__PURE__*/styled__default(HarmonicSubtitle)(_templateObject5$q || (_templateObject5$q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow-wrap: break-word;\n margin-bottom: 16px;\n"])));
9035
- var BodyCopyHarmonicWithWrapper$2 = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject6$j || (_templateObject6$j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0;\n margin: 0;\n margin-bottom: 32px;\n whiete-space: break-spaces;\n overflow-wrap: break-word;\n\n a {\n text-decoration: underline;\n cursor: pointer;\n\n &[href^='tel:'] {\n text-decoration: none;\n }\n\n &:link {\n color: var(--color-primary-black);\n }\n\n &:visited {\n color: var(--color-base-dark-grey);\n }\n\n &:hover {\n color: var(--color-primary-red);\n }\n }\n @media ", " {\n margin-bottom: 24px;\n }\n"])), devices.mobile);
9036
- var ButtonsContainer$3 = /*#__PURE__*/styled__default.div(_templateObject7$f || (_templateObject7$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n gap: 16px;\n margin-top: 32px;\n\n ", "\n\n @media ", " {\n gap: 24px;\n margin-top: 24px;\n flex-direction: column;\n align-items: center;\n }\n\n @media ", " {\n gap: 24px;\n margin-top: 24px;\n align-items: flex-start;\n\n ", "\n }\n"])), function (_ref5) {
9091
+ var HarmonicSubtitleWithWrapper$1 = /*#__PURE__*/styled__default(HarmonicSubtitle)(_templateObject5$r || (_templateObject5$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow-wrap: break-word;\n margin-bottom: 16px;\n"])));
9092
+ var BodyCopyHarmonicWithWrapper$2 = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject6$k || (_templateObject6$k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0;\n margin: 0;\n margin-bottom: 32px;\n whiete-space: break-spaces;\n overflow-wrap: break-word;\n\n a {\n text-decoration: underline;\n cursor: pointer;\n\n &[href^='tel:'] {\n text-decoration: none;\n }\n\n &:link {\n color: var(--color-primary-black);\n }\n\n &:visited {\n color: var(--color-base-dark-grey);\n }\n\n &:hover {\n color: var(--color-primary-red);\n }\n }\n @media ", " {\n margin-bottom: 24px;\n }\n"])), devices.mobile);
9093
+ var ButtonsContainer$3 = /*#__PURE__*/styled__default.div(_templateObject7$g || (_templateObject7$g = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n gap: 16px;\n margin-top: 32px;\n\n ", "\n\n @media ", " {\n gap: 24px;\n margin-top: 24px;\n flex-direction: column;\n align-items: center;\n }\n\n @media ", " {\n gap: 24px;\n margin-top: 24px;\n align-items: flex-start;\n\n ", "\n }\n"])), function (_ref5) {
9037
9094
  var _ref5$primaryButtonTe = _ref5.primaryButtonTextLength,
9038
9095
  primaryButtonTextLength = _ref5$primaryButtonTe === void 0 ? 0 : _ref5$primaryButtonTe,
9039
9096
  _ref5$tertiaryButtonT = _ref5.tertiaryButtonTextLength,
@@ -9087,7 +9144,7 @@ var getAspectRatioFromVideo = function getAspectRatioFromVideo(video) {
9087
9144
  return exports.AspectRatio[aspectRatioKey] || exports.AspectRatio['16:9'];
9088
9145
  };
9089
9146
 
9090
- var VideoWithControls$2 = function VideoWithControls(_ref) {
9147
+ var VideoWithControls$1 = function VideoWithControls(_ref) {
9091
9148
  var video = _ref.video,
9092
9149
  settings = _ref.settings;
9093
9150
  var videoRef = React.useRef(null);
@@ -9162,13 +9219,13 @@ var PromoChild = function PromoChild(_ref) {
9162
9219
  }, isImage && (/*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
9163
9220
  aspectRatio: exports.AspectRatio['4:3'],
9164
9221
  "data-testid": "AspectRatioWrapper"
9165
- }, children)), isVideo && /*#__PURE__*/React__default.createElement(VideoWithControls$2, {
9222
+ }, children)), isVideo && /*#__PURE__*/React__default.createElement(VideoWithControls$1, {
9166
9223
  video: children,
9167
9224
  settings: videoSettings
9168
9225
  }));
9169
9226
  };
9170
9227
 
9171
- var _excluded$m = ["text"],
9228
+ var _excluded$n = ["text"],
9172
9229
  _excluded2$3 = ["text"];
9173
9230
  var LENGTH_TEXT$3 = 28;
9174
9231
  var PromoWithTitle = function PromoWithTitle(_ref) {
@@ -9195,7 +9252,7 @@ var PromoWithTitle = function PromoWithTitle(_ref) {
9195
9252
  var _ref2 = primaryButton || {},
9196
9253
  _ref2$text = _ref2.text,
9197
9254
  primaryButtonText = _ref2$text === void 0 ? '' : _ref2$text,
9198
- restPrimaryButton = _objectWithoutPropertiesLoose(_ref2, _excluded$m);
9255
+ restPrimaryButton = _objectWithoutPropertiesLoose(_ref2, _excluded$n);
9199
9256
  var primaryButtonTextTruncate = truncate(primaryButtonText, LENGTH_TEXT$3);
9200
9257
  var tertiaryButton = links == null ? void 0 : links[1];
9201
9258
  var _ref3 = tertiaryButton || {},
@@ -9225,7 +9282,7 @@ var PromoWithTitle = function PromoWithTitle(_ref) {
9225
9282
  size: titleSize,
9226
9283
  hierarchy: titleHierarchy
9227
9284
  }, title), subtitle ? /*#__PURE__*/React__default.createElement(HarmonicSubtitleWithWrapper$1, {
9228
- size: "small"
9285
+ size: "medium"
9229
9286
  }, subtitle) : null, /*#__PURE__*/React__default.createElement(BodyCopyHarmonicWithWrapper$2, {
9230
9287
  size: "large",
9231
9288
  dangerouslySetInnerHTML: {
@@ -9483,7 +9540,7 @@ var SectionTitle = function SectionTitle(_ref) {
9483
9540
  }, description)))));
9484
9541
  };
9485
9542
 
9486
- var _templateObject$19, _templateObject2$T, _templateObject3$F, _templateObject4$x, _templateObject5$r, _templateObject6$k, _templateObject7$g, _templateObject8$a, _templateObject9$6, _templateObject0$6, _templateObject1$4;
9543
+ var _templateObject$19, _templateObject2$T, _templateObject3$F, _templateObject4$x, _templateObject5$s, _templateObject6$l, _templateObject7$h, _templateObject8$b, _templateObject9$7, _templateObject0$7, _templateObject1$5;
9487
9544
  var stateStyles = /*#__PURE__*/styled.css(_templateObject$19 || (_templateObject$19 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n &:focus,\n &.focus {\n outline: ", ";\n }\n\n &.disabled {\n background-color: ", ";\n color: ", ";\n pointer-events: none;\n cursor: none;\n }\n"])), function (_ref) {
9488
9545
  var theme = _ref.theme;
9489
9546
  return "3px solid " + theme.colors.lapisLazuli;
@@ -9507,11 +9564,11 @@ var ArrowIcon = /*#__PURE__*/styled__default(Icon).attrs(function (_ref5) {
9507
9564
  color: theme.colors.black,
9508
9565
  title: 'Select Arrow'
9509
9566
  };
9510
- })(_templateObject5$r || (_templateObject5$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n pointer-events: none;\n\n max-width: 24px;\n max-height: 24px;\n\n svg {\n width: 24px;\n height: 24px;\n }\n"])));
9511
- var Wrapper$5 = /*#__PURE__*/styled__default.div(_templateObject6$k || (_templateObject6$k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n height: initial;\n\n display: flex;\n flex-direction: column;\n gap: 20px;\n"])), noMarginAndPaddingStyles);
9512
- var SelectWrapper = /*#__PURE__*/styled__default.div(_templateObject7$g || (_templateObject7$g = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n height: inherit;\n"])), noMarginAndPaddingStyles);
9513
- var Options = /*#__PURE__*/styled__default.div(_templateObject8$a || (_templateObject8$a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n z-index: 1;\n\n ", "\n ", "\n"])), noMarginAndPaddingStyles, borderStyles);
9514
- var Option = /*#__PURE__*/styled__default.li(_templateObject9$6 || (_templateObject9$6 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n ", "\n\n ", "\n"])), noMarginAndPaddingStyles, listItemStyles, function (_ref6) {
9567
+ })(_templateObject5$s || (_templateObject5$s = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n pointer-events: none;\n\n max-width: 24px;\n max-height: 24px;\n\n svg {\n width: 24px;\n height: 24px;\n }\n"])));
9568
+ var Wrapper$5 = /*#__PURE__*/styled__default.div(_templateObject6$l || (_templateObject6$l = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n height: initial;\n\n display: flex;\n flex-direction: column;\n gap: 20px;\n"])), noMarginAndPaddingStyles);
9569
+ var SelectWrapper = /*#__PURE__*/styled__default.div(_templateObject7$h || (_templateObject7$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n height: inherit;\n"])), noMarginAndPaddingStyles);
9570
+ var Options = /*#__PURE__*/styled__default.div(_templateObject8$b || (_templateObject8$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n z-index: 1;\n\n ", "\n ", "\n"])), noMarginAndPaddingStyles, borderStyles);
9571
+ var Option = /*#__PURE__*/styled__default.li(_templateObject9$7 || (_templateObject9$7 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n ", "\n\n ", "\n"])), noMarginAndPaddingStyles, listItemStyles, function (_ref6) {
9515
9572
  var theme = _ref6.theme,
9516
9573
  hover = _ref6.hover;
9517
9574
  var _theme$colors = theme.colors,
@@ -9521,9 +9578,9 @@ var Option = /*#__PURE__*/styled__default.li(_templateObject9$6 || (_templateObj
9521
9578
  return "\n background-color: " + lightgrey + ";\n &:hover { background-color: " + midgrey + " }\n ";
9522
9579
  });
9523
9580
  var selectStyles = function selectStyles(width, height) {
9524
- return styled.css(_templateObject0$6 || (_templateObject0$6 = _taggedTemplateLiteralLoose(["\n position: relative;\n z-index: ", ";\n\n width: ", ";\n height: ", ";\n\n * {\n width: ", ";\n }\n\n ", " {\n position: absolute;\n top: ", ";\n }\n ", " {\n height: ", ";\n }\n p {\n height: ", ";\n padding-inline: 20px;\n\n display: flex;\n align-items: center;\n }\n"])), zIndexes[3], width, height, width, Options, height, Option, height, height);
9581
+ return styled.css(_templateObject0$7 || (_templateObject0$7 = _taggedTemplateLiteralLoose(["\n position: relative;\n z-index: ", ";\n\n width: ", ";\n height: ", ";\n\n * {\n width: ", ";\n }\n\n ", " {\n position: absolute;\n top: ", ";\n }\n ", " {\n height: ", ";\n }\n p {\n height: ", ";\n padding-inline: 20px;\n\n display: flex;\n align-items: center;\n }\n"])), zIndexes[3], width, height, width, Options, height, Option, height, height);
9525
9582
  };
9526
- var SelectList = /*#__PURE__*/styled__default.ul(_templateObject1$4 || (_templateObject1$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n\n ", "\n ", "\n ", "\n ", "\n\n & ", " {\n position: absolute;\n\n top: 13px;\n right: 16px;\n }\n"])), function (_ref7) {
9583
+ var SelectList = /*#__PURE__*/styled__default.ul(_templateObject1$5 || (_templateObject1$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n\n ", "\n ", "\n ", "\n ", "\n\n & ", " {\n position: absolute;\n\n top: 13px;\n right: 16px;\n }\n"])), function (_ref7) {
9527
9584
  var width = _ref7.width,
9528
9585
  height = _ref7.height;
9529
9586
  return selectStyles(width === 'default' ? "354px" : width + "px", height === 'default' ? "48px" : height + "px");
@@ -9894,7 +9951,7 @@ var ErrorLabel$5 = /*#__PURE__*/styled__default.div(_templateObject4$y || (_temp
9894
9951
  return "var(--base-color-errorstate)";
9895
9952
  });
9896
9953
 
9897
- var _excluded$n = ["label", "error", "width", "darkMode", "isSearchable", "components"];
9954
+ var _excluded$o = ["label", "error", "width", "darkMode", "isSearchable", "components"];
9898
9955
  var DropdownIndicator = function DropdownIndicator(props) {
9899
9956
  return /*#__PURE__*/React__default.createElement(Select$1.components.DropdownIndicator, Object.assign({}, props), /*#__PURE__*/React__default.createElement(Icon, {
9900
9957
  iconName: "DropdownArrow"
@@ -9945,7 +10002,7 @@ var SelectComponent = function SelectComponent(_ref2) {
9945
10002
  _ref2$isSearchable = _ref2.isSearchable,
9946
10003
  isSearchable = _ref2$isSearchable === void 0 ? false : _ref2$isSearchable,
9947
10004
  components = _ref2.components,
9948
- selectProps = _objectWithoutPropertiesLoose(_ref2, _excluded$n);
10005
+ selectProps = _objectWithoutPropertiesLoose(_ref2, _excluded$o);
9949
10006
  return /*#__PURE__*/React__default.createElement(WrapperComponent, {
9950
10007
  label: label,
9951
10008
  error: error,
@@ -9963,7 +10020,7 @@ var SelectComponent = function SelectComponent(_ref2) {
9963
10020
  })));
9964
10021
  };
9965
10022
 
9966
- var _excluded$o = ["label", "error", "width", "darkMode", "components"];
10023
+ var _excluded$p = ["label", "error", "width", "darkMode", "components"];
9967
10024
  /**
9968
10025
  * The Select2Async component is similar to Select 2, but uses react-select async
9969
10026
  * component for select instead of regular react-select component. This can be used
@@ -9985,7 +10042,7 @@ var SelectComponent$1 = function SelectComponent(_ref) {
9985
10042
  _ref$darkMode = _ref.darkMode,
9986
10043
  darkMode = _ref$darkMode === void 0 ? false : _ref$darkMode,
9987
10044
  components = _ref.components,
9988
- selectProps = _objectWithoutPropertiesLoose(_ref, _excluded$o);
10045
+ selectProps = _objectWithoutPropertiesLoose(_ref, _excluded$p);
9989
10046
  return /*#__PURE__*/React__default.createElement(WrapperComponent, {
9990
10047
  label: label,
9991
10048
  error: error,
@@ -10002,7 +10059,7 @@ var SelectComponent$1 = function SelectComponent(_ref) {
10002
10059
  })));
10003
10060
  };
10004
10061
 
10005
- var _templateObject$1b, _templateObject3$H, _templateObject4$z, _templateObject5$s, _templateObject6$l, _templateObject7$h, _templateObject8$b, _templateObject9$7;
10062
+ var _templateObject$1b, _templateObject3$H, _templateObject4$z, _templateObject5$t, _templateObject6$m, _templateObject7$i, _templateObject8$c, _templateObject9$8;
10006
10063
  var Wrapper$6 = /*#__PURE__*/styled__default.div(_templateObject$1b || (_templateObject$1b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background-color: var(--color-base-light-grey);\n padding: 40px 20px;\n position: relative;\n display: flex;\n flex-direction: column;\n gap: 20px;\n align-items: stretch;\n"])));
10007
10064
  var PromoLabel = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject3$H || (_templateObject3$H = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background: var(--upsell-border-color);\n padding: 6px 8px;\n width: fit-content;\n display: flex;\n justify-content: center;\n align-items: center;\n position: absolute;\n right: 20px;\n top: 0;\n width: auto;\n margin: auto;\n\n && {\n color: var(--color-base-white);\n }\n\n font-feature-settings:\n 'tnum' on,\n 'lnum' on,\n 'liga' off,\n 'calt' off;\n text-align: center;\n"])));
10008
10065
  var ButtonContainer = /*#__PURE__*/styled__default.div(_templateObject4$z || (_templateObject4$z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: auto;\n padding-top: 10px;\n width: fit-content;\n display: flex;\n flex-direction: row;\n gap: 20px;\n\n @media ", " {\n width: 100%;\n flex-direction: column;\n gap: 16px;\n }\n\n ", "\n\n @media ", ", ", " {\n a {\n text-align: center;\n }\n }\n"])), function (_ref) {
@@ -10012,14 +10069,14 @@ var ButtonContainer = /*#__PURE__*/styled__default.div(_templateObject4$z || (_t
10012
10069
  var stackCtasEarly = _ref2.stackCtasEarly;
10013
10070
  return stackCtasEarly && "\n @media " + devices.smallDesktop + ", " + devices.mobileAndTablet + " {\n * {\n width: 100%;\n }\n }\n ";
10014
10071
  }, devices.smallDesktop, devices.mobileAndTablet);
10015
- var TitleContainer$3 = /*#__PURE__*/styled__default.div(_templateObject5$s || (_templateObject5$s = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--color-primary-black);\n display: flex;\n flex-direction: column;\n gap: ", ";\n align-items: stretch;\n"])), function (_ref3) {
10072
+ var TitleContainer$3 = /*#__PURE__*/styled__default.div(_templateObject5$t || (_templateObject5$t = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--color-primary-black);\n display: flex;\n flex-direction: column;\n gap: ", ";\n align-items: stretch;\n"])), function (_ref3) {
10016
10073
  var singleChild = _ref3.singleChild;
10017
10074
  return singleChild ? '0' : '10px';
10018
10075
  });
10019
- var DescriptionWrapper$1 = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject6$l || (_templateObject6$l = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && p {\n margin: 0;\n padding: 0;\n }\n"])));
10020
- var PriceRow = /*#__PURE__*/styled__default.div(_templateObject7$h || (_templateObject7$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-wrap: wrap;\n gap: 6px 12px;\n"])));
10021
- var LineThrough = /*#__PURE__*/styled__default(HarmonicHeader)(_templateObject8$b || (_templateObject8$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-decoration-line: line-through;\n color: var(--color-base-dark-grey);\n"])));
10022
- var VisuallyHidden = /*#__PURE__*/styled__default.span(_templateObject9$7 || (_templateObject9$7 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n border: 0 !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n -webkit-clip-path: inset(50%) !important;\n clip-path: inset(50%) !important;\n height: 1px !important;\n margin: -1px !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n width: 1px !important;\n white-space: nowrap !important;\n"])));
10076
+ var DescriptionWrapper$1 = /*#__PURE__*/styled__default(BodyCopyHarmonic)(_templateObject6$m || (_templateObject6$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && p {\n margin: 0;\n padding: 0;\n }\n"])));
10077
+ var PriceRow = /*#__PURE__*/styled__default.div(_templateObject7$i || (_templateObject7$i = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-wrap: wrap;\n gap: 6px 12px;\n"])));
10078
+ var LineThrough = /*#__PURE__*/styled__default(HarmonicHeader)(_templateObject8$c || (_templateObject8$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-decoration-line: line-through;\n color: var(--color-base-dark-grey);\n"])));
10079
+ var VisuallyHidden = /*#__PURE__*/styled__default.span(_templateObject9$8 || (_templateObject9$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n border: 0 !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n -webkit-clip-path: inset(50%) !important;\n clip-path: inset(50%) !important;\n height: 1px !important;\n margin: -1px !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n width: 1px !important;\n white-space: nowrap !important;\n"])));
10023
10080
 
10024
10081
  // Set max. character length
10025
10082
  var setMaxCharLength = function setMaxCharLength(value, maxLength) {
@@ -10122,7 +10179,7 @@ var Wrapper$7 = /*#__PURE__*/styled__default.figure(_templateObject$1c || (_temp
10122
10179
  var CaptionWrapper = /*#__PURE__*/styled__default.figcaption(_templateObject2$V || (_templateObject2$V = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: table-caption;\n caption-side: bottom;\n margin-top: var(--carousel-image-caption-margin);\n"])));
10123
10180
  var CaptionContext = /*#__PURE__*/styled__default(Caption)(_templateObject3$I || (_templateObject3$I = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n overflow: hidden;\n text-overflow: ellipsis;\n line-clamp: 2;\n max-height: 46px;\n white-space: normal;\n word-break: break-word;\n font-feature-settings: var(--font-feature-settings-body);\n text-transform: var(--text-transform-body);\n"])));
10124
10181
 
10125
- var _excluded$p = ["caption", "altText", "src", "srcSet", "sizes", "loading", "aspectRatio", "className"];
10182
+ var _excluded$q = ["caption", "altText", "src", "srcSet", "sizes", "loading", "aspectRatio", "className"];
10126
10183
  var ImageWithCaption = function ImageWithCaption(_ref) {
10127
10184
  var caption = _ref.caption,
10128
10185
  altText = _ref.altText,
@@ -10132,7 +10189,7 @@ var ImageWithCaption = function ImageWithCaption(_ref) {
10132
10189
  loading = _ref.loading,
10133
10190
  aspectRatio = _ref.aspectRatio,
10134
10191
  className = _ref.className,
10135
- restProps = _objectWithoutPropertiesLoose(_ref, _excluded$p);
10192
+ restProps = _objectWithoutPropertiesLoose(_ref, _excluded$q);
10136
10193
  return /*#__PURE__*/React__default.createElement(Wrapper$7, Object.assign({
10137
10194
  aspectRatio: aspectRatio,
10138
10195
  className: className
@@ -10153,13 +10210,13 @@ var ImageWithCaption = function ImageWithCaption(_ref) {
10153
10210
  }, caption))));
10154
10211
  };
10155
10212
 
10156
- var _templateObject$1d, _templateObject2$W, _templateObject3$J, _templateObject4$A, _templateObject5$t, _templateObject6$m;
10213
+ var _templateObject$1d, _templateObject2$W, _templateObject3$J, _templateObject4$A, _templateObject5$u, _templateObject6$n;
10157
10214
  var CardContainer$1 = /*#__PURE__*/styled__default.div(_templateObject$1d || (_templateObject$1d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n cursor: pointer;\n width: 100%;\n display: grid;\n grid-template-columns: repeat(7, minmax(0, 1fr));\n gap: 15px;\n min-height: 50px;\n"])));
10158
10215
  var ContentContainer$4 = /*#__PURE__*/styled__default.div(_templateObject2$W || (_templateObject2$W = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n"])));
10159
10216
  var StyledImage = /*#__PURE__*/styled__default.img(_templateObject3$J || (_templateObject3$J = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n border: 1px solid var(--base-color-white);\n"])));
10160
10217
  var ImageWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject4$A || (_templateObject4$A = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n"])));
10161
- var IconWrapper$3 = /*#__PURE__*/styled__default.div(_templateObject5$t || (_templateObject5$t = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background: rgba(0, 0, 0, 0.4);\n position: absolute;\n top: 0;\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n span {\n width: 40px;\n height: 40px;\n @media ", " {\n width: 24px;\n height: 24px;\n }\n @media ", " {\n width: 18px;\n height: 18px;\n }\n }\n"])), devices.tablet, devices.mobile);
10162
- var TitleWrapper$4 = /*#__PURE__*/styled__default.div(_templateObject6$m || (_templateObject6$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 8px;\n div {\n @media ", " {\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n"])), devices.mobile);
10218
+ var IconWrapper$3 = /*#__PURE__*/styled__default.div(_templateObject5$u || (_templateObject5$u = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background: rgba(0, 0, 0, 0.4);\n position: absolute;\n top: 0;\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n span {\n width: 40px;\n height: 40px;\n @media ", " {\n width: 24px;\n height: 24px;\n }\n @media ", " {\n width: 18px;\n height: 18px;\n }\n }\n"])), devices.tablet, devices.mobile);
10219
+ var TitleWrapper$4 = /*#__PURE__*/styled__default.div(_templateObject6$n || (_templateObject6$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 8px;\n div {\n @media ", " {\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n"])), devices.mobile);
10163
10220
 
10164
10221
  var MiniCard = function MiniCard(_ref) {
10165
10222
  var _ref$title = _ref.title,
@@ -10197,7 +10254,7 @@ var MiniCard = function MiniCard(_ref) {
10197
10254
  }, title)))));
10198
10255
  };
10199
10256
 
10200
- var _templateObject$1e, _templateObject2$X, _templateObject3$K, _templateObject4$B, _templateObject5$u;
10257
+ var _templateObject$1e, _templateObject2$X, _templateObject3$K, _templateObject4$B, _templateObject5$v;
10201
10258
  var ReadMoreContainer = /*#__PURE__*/styled__default.div(_templateObject$1e || (_templateObject$1e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin: 0px 0px 12px 0px !important;\n }\n width: 100%;\n"])));
10202
10259
  var LinkContainer = /*#__PURE__*/styled__default.div(_templateObject2$X || (_templateObject2$X = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding-top: 24px;\n gap: 8px;\n\n :hover {\n cursor: pointer;\n }\n\n @media print {\n visibility: hidden;\n }\n"])));
10203
10260
  var FullTextContainer = /*#__PURE__*/styled__default.div(_templateObject3$K || (_templateObject3$K = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n visibility: ", ";\n\n @media print {\n visibility: visible;\n }\n"])), function (_ref) {
@@ -10208,7 +10265,7 @@ var IntroTextContainer = /*#__PURE__*/styled__default.div(_templateObject4$B ||
10208
10265
  var isVisible = _ref2.isVisible;
10209
10266
  return isVisible ? 'visible' : 'hidden';
10210
10267
  });
10211
- var ContentContainer$5 = /*#__PURE__*/styled__default.div(_templateObject5$u || (_templateObject5$u = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow: auto;\n transition: max-height 0.4s ease;\n font-size: var(--font-size-body-1);\n font-family: var(--font-family-body);\n font-feature-settings: var(--font-feature-settings-body);\n font-weight: var(--font-weight-body-1);\n letter-spacing: var(--letter-spacing-body-1);\n line-height: var(--line-height-body-1);\n text-transform: var(--text-transform-body);\n\n & h1 {\n font-size: var(--font-size-header-4);\n font-family: var(--font-family-header);\n font-feature-settings: var(--font-feature-settings-header);\n font-weight: var(--font-weight-header-4);\n letter-spacing: var(--letter-spacing-header-4);\n line-height: var(--line-height-header-4);\n text-transform: var(--text-transform-header);\n white-space: break-spaces;\n overflow-wrap: break-word;\n }\n\n & h2 {\n font-size: var(--font-size-subtitle-1);\n font-family: var(--font-family-subtitle);\n font-feature-settings: var(--font-feature-settings-subtitle);\n font-weight: var(--font-weight-subtitle-1);\n letter-spacing: var(--letter-spacing-subtitle-1);\n line-height: var(--line-height-subtitle-1);\n text-transform: var(--text-transform-subtitle);\n white-space: break-spaces;\n overflow-wrap: break-word;\n }\n\n & em {\n font-family: var(--font-family-body-italics);\n }\n\n & u {\n font-size: var(--font-size-body-1);\n font-family: var(--font-family-body);\n }\n @media print {\n visibility: visible;\n max-height: 900px !important;\n }\n"])));
10268
+ var ContentContainer$5 = /*#__PURE__*/styled__default.div(_templateObject5$v || (_templateObject5$v = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow: auto;\n transition: max-height 0.4s ease;\n font-size: var(--font-size-body-1);\n font-family: var(--font-family-body);\n font-feature-settings: var(--font-feature-settings-body);\n font-weight: var(--font-weight-body-1);\n letter-spacing: var(--letter-spacing-body-1);\n line-height: var(--line-height-body-1);\n text-transform: var(--text-transform-body);\n\n & h1 {\n font-size: var(--font-size-header-4);\n font-family: var(--font-family-header);\n font-feature-settings: var(--font-feature-settings-header);\n font-weight: var(--font-weight-header-4);\n letter-spacing: var(--letter-spacing-header-4);\n line-height: var(--line-height-header-4);\n text-transform: var(--text-transform-header);\n white-space: break-spaces;\n overflow-wrap: break-word;\n }\n\n & h2 {\n font-size: var(--font-size-subtitle-1);\n font-family: var(--font-family-subtitle);\n font-feature-settings: var(--font-feature-settings-subtitle);\n font-weight: var(--font-weight-subtitle-1);\n letter-spacing: var(--letter-spacing-subtitle-1);\n line-height: var(--line-height-subtitle-1);\n text-transform: var(--text-transform-subtitle);\n white-space: break-spaces;\n overflow-wrap: break-word;\n }\n\n & em {\n font-family: var(--font-family-body-italics);\n }\n\n & u {\n font-size: var(--font-size-body-1);\n font-family: var(--font-family-body);\n }\n @media print {\n visibility: visible;\n max-height: 900px !important;\n }\n"])));
10212
10269
 
10213
10270
  var keyDown = function keyDown(e, toggleFunction) {
10214
10271
  if (e.key === 'Enter' || e.key === 'Space') {
@@ -10289,7 +10346,7 @@ var ReadMore = function ReadMore(_ref) {
10289
10346
  }, isFullTextOpen ? "" + hideText : "" + showMoreText))));
10290
10347
  };
10291
10348
 
10292
- var _templateObject$1f, _templateObject2$Y, _templateObject3$L, _templateObject4$C, _templateObject5$v;
10349
+ var _templateObject$1f, _templateObject2$Y, _templateObject3$L, _templateObject4$C, _templateObject5$w;
10293
10350
  var MenuContainer$2 = /*#__PURE__*/styled__default.nav(_templateObject$1f || (_templateObject$1f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n padding: 0;\n margin: 0;\n"])));
10294
10351
  var MenuList = /*#__PURE__*/styled__default.ul(_templateObject2$Y || (_templateObject2$Y = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0;\n margin: 0;\n list-style: none;\n border-right: 1px solid var(--base-color-", ");\n li {\n margin-left: -5px;\n }\n"])), exports.Colors.LightGrey);
10295
10352
  var MobileButton = /*#__PURE__*/styled__default.button(_templateObject3$L || (_templateObject3$L = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n line-height: var(--line-height-navigation);\n font-size: var(--font-size-navigation);\n font-family: var(--font-family-navigation);\n font-weight: var(--font-weight-navigation);\n letter-spacing: var(--letter-spacing-navigation);\n color: var(--base-color-", ");\n text-transform: uppercase;\n margin: 0;\n padding: 16px 46px 14px 20px;\n background: var(--base-color-", ");\n border: 1px solid var(--base-color-", ");\n border-radius: 0;\n display: block;\n width: 100%;\n text-align: left;\n cursor: pointer;\n position: relative;\n span {\n width: 25px;\n height: 25px;\n position: absolute;\n top: 50%;\n margin-top: -12px;\n right: 10px;\n }\n"])), exports.Colors.Black, exports.Colors.White, exports.Colors.DarkGrey);
@@ -10297,7 +10354,7 @@ var MenuItem$1 = /*#__PURE__*/styled__default.a(_templateObject4$C || (_template
10297
10354
  var isActive = _ref.isActive;
10298
10355
  return isActive ? "var(--base-color-" + exports.Colors.MidGrey + ")" : 'none';
10299
10356
  }, exports.Colors.MidGrey);
10300
- var MobileMenuList = /*#__PURE__*/styled__default.ul(_templateObject5$v || (_templateObject5$v = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0;\n margin: 0;\n list-style: none;\n display: ", ";\n background: var(--base-color-", ");\n border: 1px solid var(--base-color-", ");\n border-top: 0;\n position: absolute;\n top: 100%;\n left: 0;\n right: 0;\n ", " {\n padding: 16px 20px 15px 20px;\n }\n"])), function (_ref2) {
10357
+ var MobileMenuList = /*#__PURE__*/styled__default.ul(_templateObject5$w || (_templateObject5$w = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0;\n margin: 0;\n list-style: none;\n display: ", ";\n background: var(--base-color-", ");\n border: 1px solid var(--base-color-", ");\n border-top: 0;\n position: absolute;\n top: 100%;\n left: 0;\n right: 0;\n ", " {\n padding: 16px 20px 15px 20px;\n }\n"])), function (_ref2) {
10301
10358
  var isOpen = _ref2.isOpen;
10302
10359
  return isOpen ? 'block' : 'none';
10303
10360
  }, exports.Colors.White, exports.Colors.DarkGrey, MenuItem$1);
@@ -10453,7 +10510,7 @@ var AuxiliaryNav = function AuxiliaryNav(_ref6) {
10453
10510
  });
10454
10511
  };
10455
10512
 
10456
- var _templateObject$1g, _templateObject2$Z, _templateObject3$M, _templateObject4$D, _templateObject5$w, _templateObject6$n;
10513
+ var _templateObject$1g, _templateObject2$Z, _templateObject3$M, _templateObject4$D, _templateObject5$x, _templateObject6$o;
10457
10514
  var Container$5 = /*#__PURE__*/styled__default.div(_templateObject$1g || (_templateObject$1g = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n gap: 10px;\n"])));
10458
10515
  var Sections = /*#__PURE__*/styled__default.div(_templateObject2$Z || (_templateObject2$Z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n gap: 8px;\n"])));
10459
10516
  var Section = /*#__PURE__*/styled__default.div(_templateObject3$M || (_templateObject3$M = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n flex: 1;\n height: 2px;\n background-color: ", ";\n"])), function (_ref) {
@@ -10461,11 +10518,11 @@ var Section = /*#__PURE__*/styled__default.div(_templateObject3$M || (_templateO
10461
10518
  return "var(--base-color-" + color + ")";
10462
10519
  });
10463
10520
  var BottomLine = /*#__PURE__*/styled__default.div(_templateObject4$D || (_templateObject4$D = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n gap: 20px;\n"])));
10464
- var Text = /*#__PURE__*/styled__default.div(_templateObject5$w || (_templateObject5$w = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: ", ";\n"])), function (_ref2) {
10521
+ var Text = /*#__PURE__*/styled__default.div(_templateObject5$x || (_templateObject5$x = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: ", ";\n"])), function (_ref2) {
10465
10522
  var color = _ref2.color;
10466
10523
  return "var(--base-color-" + color + ")";
10467
10524
  });
10468
- var LabelText = /*#__PURE__*/styled__default.div(_templateObject6$n || (_templateObject6$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 1px;\n white-space: nowrap;\n color: ", ";\n"])), function (_ref3) {
10525
+ var LabelText = /*#__PURE__*/styled__default.div(_templateObject6$o || (_templateObject6$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 1px;\n white-space: nowrap;\n color: ", ";\n"])), function (_ref3) {
10469
10526
  var color = _ref3.color;
10470
10527
  return "var(--base-color-" + color + ")";
10471
10528
  });
@@ -10547,19 +10604,19 @@ var PasswordStrength = function PasswordStrength(_ref) {
10547
10604
  }, strengthLabel))));
10548
10605
  };
10549
10606
 
10550
- var _templateObject$1h, _templateObject2$_, _templateObject3$N, _templateObject4$E, _templateObject5$x, _templateObject6$o, _templateObject7$i, _templateObject8$c;
10607
+ var _templateObject$1h, _templateObject2$_, _templateObject3$N, _templateObject4$E, _templateObject5$y, _templateObject6$p, _templateObject7$j, _templateObject8$d;
10551
10608
  var TableContainer = /*#__PURE__*/styled__default.table(_templateObject$1h || (_templateObject$1h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n border-collapse: collapse;\n"])));
10552
10609
  var Container$6 = /*#__PURE__*/styled__default.div(_templateObject2$_ || (_templateObject2$_ = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow-x: auto;\n"])));
10553
10610
  var Wrapper$8 = /*#__PURE__*/styled__default.div(_templateObject3$N || (_templateObject3$N = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100%;\n"])));
10554
10611
  var TableHeader = /*#__PURE__*/styled__default.th(_templateObject4$E || (_templateObject4$E = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 12px;\n text-align: left;\n text-transform: capitalize;\n border: 1px solid var(--color-primary-black);\n\n &:last-child {\n white-space: nowrap;\n width: auto;\n }\n\n &:not(:last-child) {\n width: ", ";\n }\n\n @media ", " {\n &:last-child {\n white-space: nowrap;\n }\n }\n\n @media ", " {\n min-width: 150px;\n\n &:last-child {\n white-space: normal;\n }\n }\n"])), function (props) {
10555
10612
  return "calc(100% / " + (props.columns - 1) + ")";
10556
10613
  }, devices.tablet, devices.mobile);
10557
- var TableCell = /*#__PURE__*/styled__default.td(_templateObject5$x || (_templateObject5$x = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 12px;\n text-align: left;\n vertical-align: middle;\n border: 1px solid var(--color-primary-black);\n\n &:last-child {\n width: auto;\n }\n\n &:not(:last-child) {\n width: ", ";\n }\n\n > span > svg {\n width: 24px;\n height: 24px;\n }\n\n @media ", " {\n min-width: 150px;\n }\n"])), function (props) {
10614
+ var TableCell = /*#__PURE__*/styled__default.td(_templateObject5$y || (_templateObject5$y = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 12px;\n text-align: left;\n vertical-align: middle;\n border: 1px solid var(--color-primary-black);\n\n &:last-child {\n width: auto;\n }\n\n &:not(:last-child) {\n width: ", ";\n }\n\n > span > svg {\n width: 24px;\n height: 24px;\n }\n\n @media ", " {\n min-width: 150px;\n }\n"])), function (props) {
10558
10615
  return "calc(100% / " + (props.columns - 1) + ")";
10559
10616
  }, devices.mobile);
10560
- var PaginationWrapper = /*#__PURE__*/styled__default(Pagination)(_templateObject6$o || (_templateObject6$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding-top: 40px;\n padding-bottom: 80px;\n\n @media ", " {\n padding-top: 24px;\n padding-bottom: 60px;\n }\n"])), devices.mobile);
10561
- var ScrollButtons = /*#__PURE__*/styled__default.div(_templateObject7$i || (_templateObject7$i = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-end;\n padding: 60px 0 24px 0;\n\n div:hover {\n background-color: var(--color-base-light-grey);\n }\n\n > div > div {\n background-color: var(--color-base-light-grey);\n }\n\n svg path {\n fill: var(--color-base-black) !important;\n }\n"])));
10562
- var AriaDescription$2 = /*#__PURE__*/styled__default.span(_templateObject8$c || (_templateObject8$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n left: -9999px;\n width: 1px;\n height: 1px;\n overflow: hidden;\n"])));
10617
+ var PaginationWrapper = /*#__PURE__*/styled__default(Pagination)(_templateObject6$p || (_templateObject6$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding-top: 40px;\n padding-bottom: 80px;\n\n @media ", " {\n padding-top: 24px;\n padding-bottom: 60px;\n }\n"])), devices.mobile);
10618
+ var ScrollButtons = /*#__PURE__*/styled__default.div(_templateObject7$j || (_templateObject7$j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-end;\n padding: 60px 0 24px 0;\n\n div:hover {\n background-color: var(--color-base-light-grey);\n }\n\n > div > div {\n background-color: var(--color-base-light-grey);\n }\n\n svg path {\n fill: var(--color-base-black) !important;\n }\n"])));
10619
+ var AriaDescription$2 = /*#__PURE__*/styled__default.span(_templateObject8$d || (_templateObject8$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n left: -9999px;\n width: 1px;\n height: 1px;\n overflow: hidden;\n"])));
10563
10620
 
10564
10621
  /* eslint-disable react/no-danger */
10565
10622
  var Content = function Content(_ref) {
@@ -10762,7 +10819,7 @@ var Table = function Table(_ref) {
10762
10819
  }))));
10763
10820
  };
10764
10821
 
10765
- var _templateObject$1i, _templateObject2$$, _templateObject3$O, _templateObject4$F, _templateObject5$y, _templateObject6$p, _templateObject7$j, _templateObject8$d, _templateObject9$8, _templateObject0$7, _templateObject1$5, _templateObject10$3, _templateObject11$3, _templateObject12$3, _templateObject13$2;
10822
+ var _templateObject$1i, _templateObject2$$, _templateObject3$O, _templateObject4$F, _templateObject5$z, _templateObject6$q, _templateObject7$k, _templateObject8$e, _templateObject9$9, _templateObject0$8, _templateObject1$6, _templateObject10$4, _templateObject11$3, _templateObject12$3, _templateObject13$2;
10766
10823
  var Wrapper$9 = /*#__PURE__*/styled__default('div')(_templateObject$1i || (_templateObject$1i = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n border-top: 4px solid ", ";\n border-bottom: 4px solid ", ";\n"])), function (_ref) {
10767
10824
  var theme = _ref.theme;
10768
10825
  return "var(--color-" + theme + ")";
@@ -10773,14 +10830,14 @@ var Wrapper$9 = /*#__PURE__*/styled__default('div')(_templateObject$1i || (_temp
10773
10830
  var SignUpFormWrapper = /*#__PURE__*/styled__default(Grid)(_templateObject2$$ || (_templateObject2$$ = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 0 var(--grid-column-gap);\n margin-bottom: 32px;\n\n @media ", " {\n margin-bottom: 30px;\n }\n"])), devices.mobile);
10774
10831
  var SignUpTitleWrapper = /*#__PURE__*/styled__default('div')(_templateObject3$O || (_templateObject3$O = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-align: left;\n position: relative;\n top: -25px;\n left: -20px;\n height: 52px;\n background: var(--color-base-white);\n display: inline-block;\n padding: 0 20px;\n\n @media ", " {\n top: -18px;\n height: 37px;\n padding: 0 13px;\n left: -13px;\n }\n"])), devices.mobile);
10775
10832
  var Error = /*#__PURE__*/styled__default.div(_templateObject4$F || (_templateObject4$F = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 20px;\n color: var(--color-base-errorstate);\n\n a {\n text-decoration: underline;\n color: inherit;\n }\n"])));
10776
- var Form = /*#__PURE__*/styled__default.form(_templateObject5$y || (_templateObject5$y = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n align-items: center;\n ", " {\n margin-top: -20px;\n }\n a[href] {\n color: inherit;\n }\n"])), Error);
10777
- var FormFooterWrapper = /*#__PURE__*/styled__default.div(_templateObject6$p || (_templateObject6$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n display: flex;\n gap: 28px;\n align-items: center;\n\n @media ", " {\n flex-direction: column;\n align-items: flex-start;\n }\n"])), devices.mobile);
10778
- var ServerError = /*#__PURE__*/styled__default.div(_templateObject7$j || (_templateObject7$j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-align: left;\n color: var(--color-base-errorstate);\n"])));
10779
- var CTALinkWrapper = /*#__PURE__*/styled__default.a(_templateObject8$d || (_templateObject8$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-decoration: none;\n\n @media ", " {\n text-decoration: underline;\n }\n"])), devices.mobile);
10780
- var ButtonWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject9$8 || (_templateObject9$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n all: unset;\n width: fit-content;\n color: var(--base-color-white);\n text-decoration: none;\n\n @media ", " {\n width: 100%;\n }\n"])), devices.mobile);
10781
- var FieldsWrapper = /*#__PURE__*/styled__default.div(_templateObject0$7 || (_templateObject0$7 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n gap: 36px;\n\n @media ", " {\n grid-template-columns: 1fr;\n gap: 20px;\n }\n"])), devices.mobile);
10782
- var MessageWrapper = /*#__PURE__*/styled__default.div(_templateObject1$5 || (_templateObject1$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n div > p {\n margin: 0;\n }\n"])));
10783
- var DropdownAreaWrapper = /*#__PURE__*/styled__default.div(_templateObject10$3 || (_templateObject10$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-column: 1 / -1;\n display: grid;\n grid-template-columns: var(--grid-template-columns);\n gap: var(--grid-column-gap);\n cursor: pointer;\n"])));
10833
+ var Form = /*#__PURE__*/styled__default.form(_templateObject5$z || (_templateObject5$z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n align-items: center;\n ", " {\n margin-top: -20px;\n }\n a[href] {\n color: inherit;\n }\n"])), Error);
10834
+ var FormFooterWrapper = /*#__PURE__*/styled__default.div(_templateObject6$q || (_templateObject6$q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n display: flex;\n gap: 28px;\n align-items: center;\n\n @media ", " {\n flex-direction: column;\n align-items: flex-start;\n }\n"])), devices.mobile);
10835
+ var ServerError = /*#__PURE__*/styled__default.div(_templateObject7$k || (_templateObject7$k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-align: left;\n color: var(--color-base-errorstate);\n"])));
10836
+ var CTALinkWrapper = /*#__PURE__*/styled__default.a(_templateObject8$e || (_templateObject8$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-decoration: none;\n\n @media ", " {\n text-decoration: underline;\n }\n"])), devices.mobile);
10837
+ var ButtonWrapper$3 = /*#__PURE__*/styled__default.div(_templateObject9$9 || (_templateObject9$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n all: unset;\n width: fit-content;\n color: var(--base-color-white);\n text-decoration: none;\n\n @media ", " {\n width: 100%;\n }\n"])), devices.mobile);
10838
+ var FieldsWrapper = /*#__PURE__*/styled__default.div(_templateObject0$8 || (_templateObject0$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n gap: 36px;\n\n @media ", " {\n grid-template-columns: 1fr;\n gap: 20px;\n }\n"])), devices.mobile);
10839
+ var MessageWrapper = /*#__PURE__*/styled__default.div(_templateObject1$6 || (_templateObject1$6 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n div > p {\n margin: 0;\n }\n"])));
10840
+ var DropdownAreaWrapper = /*#__PURE__*/styled__default.div(_templateObject10$4 || (_templateObject10$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-column: 1 / -1;\n display: grid;\n grid-template-columns: var(--grid-template-columns);\n gap: var(--grid-column-gap);\n cursor: pointer;\n"])));
10784
10841
  var DropdownWrapper = /*#__PURE__*/styled__default.div(_templateObject11$3 || (_templateObject11$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n width: fit-content;\n transform: rotate(", ");\n .dropdown-icon > div {\n border-bottom: none;\n color: var(--color-base-black);\n margin: 0;\n }\n"])), function (_ref3) {
10785
10842
  var _ref3$isOpen = _ref3.isOpen,
10786
10843
  isOpen = _ref3$isOpen === void 0 ? false : _ref3$isOpen;
@@ -11067,10 +11124,10 @@ var SignUpForm = function SignUpForm(_ref) {
11067
11124
  tabIndex: 0
11068
11125
  }, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
11069
11126
  size: "small"
11070
- }, ctaPrivacy.text)), /*#__PURE__*/React__default.createElement(ButtonWrapper$2, null, /*#__PURE__*/React__default.createElement(SignUpFormButton, {
11127
+ }, ctaPrivacy.text)), /*#__PURE__*/React__default.createElement(ButtonWrapper$3, null, /*#__PURE__*/React__default.createElement(SignUpFormButton, {
11071
11128
  onClick: handleFormSubmit,
11072
11129
  theme: theme
11073
- })))) : (/*#__PURE__*/React__default.createElement(FormFooterWrapper, null, /*#__PURE__*/React__default.createElement(ButtonWrapper$2, null, /*#__PURE__*/React__default.createElement(SignUpFormButton, {
11130
+ })))) : (/*#__PURE__*/React__default.createElement(FormFooterWrapper, null, /*#__PURE__*/React__default.createElement(ButtonWrapper$3, null, /*#__PURE__*/React__default.createElement(SignUpFormButton, {
11074
11131
  onClick: handleFormSubmit,
11075
11132
  theme: theme
11076
11133
  })), /*#__PURE__*/React__default.createElement(CTALinkWrapper, {
@@ -11187,13 +11244,13 @@ var SignUpFormComponent = function SignUpFormComponent(_ref) {
11187
11244
  }))))));
11188
11245
  };
11189
11246
 
11190
- var _templateObject$1j, _templateObject2$10, _templateObject4$G, _templateObject5$z;
11247
+ var _templateObject$1j, _templateObject2$10, _templateObject4$G, _templateObject5$A;
11191
11248
  var AnchorBarContainer = /*#__PURE__*/styled__default(Grid)(_templateObject$1j || (_templateObject$1j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: sticky;\n top: 0;\n min-height: 70px;\n background: var(--color-base-white);\n z-index: ", ";\n align-content: center;\n border-bottom: 1px solid var(--color-base-light-grey);\n\n ", "\n\n @media ", " {\n min-height: 60px;\n }\n"])), zIndexes.anchor, function (_ref) {
11192
11249
  var withShadow = _ref.withShadow;
11193
11250
  return withShadow && styled.css(_templateObject2$10 || (_templateObject2$10 = _taggedTemplateLiteralLoose(["\n box-shadow: var(--shadow-floating);\n "])));
11194
11251
  }, devices.mobile);
11195
11252
  var CloseButtonWrapper = /*#__PURE__*/styled__default.a(_templateObject4$G || (_templateObject4$G = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-decoration: none;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 24px;\n min-width: 24px;\n max-height: 24px;\n max-width: 24px;\n border: none;\n padding: 0;\n background: none;\n\n :hover {\n cursor: pointer;\n }\n\n @media ", " {\n min-height: 12px;\n min-width: 12px;\n max-height: 12px;\n max-width: 12px;\n }\n"])), devices.mobile);
11196
- var ContentWrapper$2 = /*#__PURE__*/styled__default.a(_templateObject5$z || (_templateObject5$z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n"])));
11253
+ var ContentWrapper$2 = /*#__PURE__*/styled__default.a(_templateObject5$A || (_templateObject5$A = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n"])));
11197
11254
 
11198
11255
  var defaultGrid = {
11199
11256
  columnStartDesktop: 2,
@@ -11384,14 +11441,9 @@ var BodyContent = function BodyContent(_ref2) {
11384
11441
  _ref2$renderGridItem = _ref2.renderGridItem,
11385
11442
  renderGridItem = _ref2$renderGridItem === void 0 ? true : _ref2$renderGridItem;
11386
11443
  var textContainerClassName = !renderGrid && !renderGridItem ? className : undefined;
11387
- var content = /*#__PURE__*/React__default.createElement(TextContainer$1, {
11388
- tag: "div",
11389
- size: "large",
11390
- "data-testid": "text-container",
11444
+ var content = /*#__PURE__*/React__default.createElement(BodyContentTextContainer, {
11391
11445
  className: textContainerClassName,
11392
- dangerouslySetInnerHTML: {
11393
- __html: addTypographyClasses(text)
11394
- }
11446
+ html: text
11395
11447
  });
11396
11448
  var gridItemOrContent = renderGridItem ? (/*#__PURE__*/React__default.createElement(GridItem, {
11397
11449
  columnStartDesktop: columnStartDesktop,
@@ -11409,7 +11461,7 @@ var BodyContent = function BodyContent(_ref2) {
11409
11461
  }, gridItemOrContent);
11410
11462
  };
11411
11463
 
11412
- var _templateObject$1m, _templateObject2$12, _templateObject3$P, _templateObject4$H, _templateObject5$A, _templateObject6$q, _templateObject7$k;
11464
+ var _templateObject$1m, _templateObject2$12, _templateObject3$P, _templateObject4$H, _templateObject5$B, _templateObject6$r, _templateObject7$l;
11413
11465
  var color = 'primary-black';
11414
11466
  var Button$2 = /*#__PURE__*/styled__default(SecondaryButton).attrs({
11415
11467
  borderColor: color,
@@ -11425,11 +11477,11 @@ var Heading = /*#__PURE__*/styled__default(HarmonicHeader).attrs({
11425
11477
  })(_templateObject4$H || (_templateObject4$H = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n letter-spacing: -0.5px;\n margin-bottom: 27px;\n\n @media ", " {\n margin-bottom: 20px;\n }\n }\n"])), devices.mobile);
11426
11478
  var Intro = /*#__PURE__*/styled__default(HarmonicSubtitle).attrs({
11427
11479
  size: 'large'
11428
- })(_templateObject5$A || (_templateObject5$A = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n margin-bottom: 27px;\n\n @media ", " {\n margin-bottom: 20px;\n }\n }\n"])), devices.mobile);
11429
- var SignInLink = /*#__PURE__*/styled__default.a(_templateObject6$q || (_templateObject6$q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--primary-black);\n cursor: pointer;\n text-decoration: underline;\n text-decoration-skip: none;\n"])));
11480
+ })(_templateObject5$B || (_templateObject5$B = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n margin-bottom: 27px;\n\n @media ", " {\n margin-bottom: 20px;\n }\n }\n"])), devices.mobile);
11481
+ var SignInLink = /*#__PURE__*/styled__default.a(_templateObject6$r || (_templateObject6$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--primary-black);\n cursor: pointer;\n text-decoration: underline;\n text-decoration-skip: none;\n"])));
11430
11482
  var SignInPrompt = /*#__PURE__*/styled__default(BodyCopyHarmonic).attrs({
11431
11483
  size: 'large'
11432
- })(_templateObject7$k || (_templateObject7$k = /*#__PURE__*/_taggedTemplateLiteralLoose([""])));
11484
+ })(_templateObject7$l || (_templateObject7$l = /*#__PURE__*/_taggedTemplateLiteralLoose([""])));
11433
11485
 
11434
11486
  var Paywall = function Paywall(_ref) {
11435
11487
  var className = _ref.className,
@@ -11622,14 +11674,14 @@ var Navigation = function Navigation(_ref) {
11622
11674
  })))))));
11623
11675
  };
11624
11676
 
11625
- var _templateObject$1n, _templateObject2$13, _templateObject3$Q, _templateObject4$I, _templateObject5$B, _templateObject6$r, _templateObject7$l;
11677
+ var _templateObject$1n, _templateObject2$13, _templateObject3$Q, _templateObject4$I, _templateObject5$C, _templateObject6$s, _templateObject7$m;
11626
11678
  var FooterSection = /*#__PURE__*/styled__default(Grid)(_templateObject$1n || (_templateObject$1n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background-color: var(--color-base-black);\n color: var(--color-base-white);\n padding: 44px 0px;\n grid-template-areas: '. . policy policy policy policy social social social social logo logo logo logo . .';\n\n @media ", " {\n padding: 40px 0px;\n gap: 24px;\n }\n\n @media ", " {\n padding: 20px 0px;\n row-gap: 40px;\n grid-template-areas:\n '. social social social social social social social social social social social social .'\n '. policy policy policy policy policy policy policy policy policy policy policy policy .'\n '. logo logo logo logo logo logo logo logo logo logo logo logo .';\n }\n"])), devices.tablet, devices.mobile);
11627
11679
  var PolicyLinksSection = /*#__PURE__*/styled__default(GridItem)(_templateObject2$13 || (_templateObject2$13 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: policy;\n display: flex;\n flex-direction: column;\n gap: 16px;\n\n @media ", " {\n gap: 20px;\n }\n\n @media ", " {\n gap: 12px;\n }\n"])), devices.tablet, devices.mobile);
11628
11680
  var SocialAndNewsletterSection = /*#__PURE__*/styled__default(GridItem)(_templateObject3$Q || (_templateObject3$Q = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: social;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n gap: 20px;\n\n @media ", " {\n gap: 40px;\n }\n"])), devices.mobile);
11629
11681
  var SectionWrapper = /*#__PURE__*/styled__default.div(_templateObject4$I || (_templateObject4$I = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n gap: 20px;\n\n @media ", " {\n gap: 24px;\n }\n"])), devices.mobile);
11630
- var LogoAndDescriptionSection = /*#__PURE__*/styled__default(GridItem)(_templateObject5$B || (_templateObject5$B = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: logo;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n\n @media ", " {\n gap: 24px;\n }\n"])), devices.mobile);
11631
- var SponsorLogoContainer = /*#__PURE__*/styled__default.div(_templateObject6$r || (_templateObject6$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n max-width: 290px;\n\n @media ", " {\n max-width: unset;\n }\n"])), devices.mobile);
11632
- var TextLinkWrapper$3 = /*#__PURE__*/styled__default(TextLink)(_templateObject7$l || (_templateObject7$l = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-family: var(--font-family-sans);\n font-size: 17px;\n line-height: 24px;\n letter-spacing: 0.4px;\n color: var(--color-base-white);\n border-bottom: unset;\n text-decoration: underline;\n text-underline-offset: var(--harmonic-text-link-underline-offset);\n margin-bottom: 0;\n padding-bottom: 0;\n"])));
11682
+ var LogoAndDescriptionSection = /*#__PURE__*/styled__default(GridItem)(_templateObject5$C || (_templateObject5$C = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: logo;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n\n @media ", " {\n gap: 24px;\n }\n"])), devices.mobile);
11683
+ var SponsorLogoContainer = /*#__PURE__*/styled__default.div(_templateObject6$s || (_templateObject6$s = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n max-width: 290px;\n\n @media ", " {\n max-width: unset;\n }\n"])), devices.mobile);
11684
+ var TextLinkWrapper$3 = /*#__PURE__*/styled__default(TextLink)(_templateObject7$m || (_templateObject7$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-family: var(--font-family-sans);\n font-size: 17px;\n line-height: 24px;\n letter-spacing: 0.4px;\n color: var(--color-base-white);\n border-bottom: unset;\n text-decoration: underline;\n text-underline-offset: var(--harmonic-text-link-underline-offset);\n margin-bottom: 0;\n padding-bottom: 0;\n"])));
11633
11685
 
11634
11686
  var SPONSOR_IMAGE_SOURCE = 'https://s3.eu-west-1.amazonaws.com/static.roh.org.uk/sponsorlogos/arts-council-england-invert.svg';
11635
11687
  var Footer = function Footer(_ref) {
@@ -11687,7 +11739,7 @@ var Footer = function Footer(_ref) {
11687
11739
  }, additionalInfo))));
11688
11740
  };
11689
11741
 
11690
- var _templateObject$1o, _templateObject2$14, _templateObject3$R, _templateObject4$J, _templateObject5$C, _templateObject8$e, _templateObject9$9, _templateObject0$8;
11742
+ var _templateObject$1o, _templateObject2$14, _templateObject3$R, _templateObject4$J, _templateObject5$D, _templateObject8$f, _templateObject9$a, _templateObject0$9;
11691
11743
  var LIST_ITEM_GAP = 32;
11692
11744
  var AnchorTabbarWrapper = /*#__PURE__*/styled__default.div(_templateObject$1o || (_templateObject$1o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: sticky;\n width: 100%;\n top: 0;\n border-bottom: ", ";\n background-color: var(--color-base-white);\n z-index: ", ";\n\n ", "\n"])), function (_ref) {
11693
11745
  var bottomBorder = _ref.bottomBorder;
@@ -11698,7 +11750,7 @@ var AnchorTabbarWrapper = /*#__PURE__*/styled__default.div(_templateObject$1o ||
11698
11750
  });
11699
11751
  var TabsGrid = /*#__PURE__*/styled__default(Grid)(_templateObject3$R || (_templateObject3$R = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: var(--anchor-tabs-height);\n"])));
11700
11752
  var TabsWrapper = /*#__PURE__*/styled__default.div(_templateObject4$J || (_templateObject4$J = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n"])));
11701
- var TabsList = /*#__PURE__*/styled__default.ul(_templateObject5$C || (_templateObject5$C = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: ", ";\n display: flex;\n gap: ", "px;\n justify-content: ", ";\n align-items: center;\n list-style: none;\n padding: 0;\n margin: 0;\n height: var(--anchor-tabs-height);\n white-space: nowrap;\n overflow: scroll;\n scrollbar-width: none;\n ::-webkit-scrollbar {\n display: none;\n }\n scroll-behavior: smooth;\n\n @media ", " {\n & {\n width: ", ";\n }\n }\n"])), function (_ref3) {
11753
+ var TabsList = /*#__PURE__*/styled__default.ul(_templateObject5$D || (_templateObject5$D = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: ", ";\n display: flex;\n gap: ", "px;\n justify-content: ", ";\n align-items: center;\n list-style: none;\n padding: 0;\n margin: 0;\n height: var(--anchor-tabs-height);\n white-space: nowrap;\n overflow: scroll;\n scrollbar-width: none;\n ::-webkit-scrollbar {\n display: none;\n }\n scroll-behavior: smooth;\n\n @media ", " {\n & {\n width: ", ";\n }\n }\n"])), function (_ref3) {
11702
11754
  var tabsOverflow = _ref3.tabsOverflow;
11703
11755
  return tabsOverflow ? 'calc(100% - 74px)' : '100%';
11704
11756
  }, LIST_ITEM_GAP, function (_ref4) {
@@ -11709,11 +11761,11 @@ var TabsList = /*#__PURE__*/styled__default.ul(_templateObject5$C || (_templateO
11709
11761
  hasTwoArrows = _ref5.hasTwoArrows;
11710
11762
  return tabsOverflow && hasTwoArrows ? 'calc(100% - 50px)' : '100%';
11711
11763
  });
11712
- var ArrowsContainer = /*#__PURE__*/styled__default.div(_templateObject8$e || (_templateObject8$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 74px;\n height: var(--anchor-tabs-height);\n background-color: var(--color-base-white);\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 10px;\n\n ", "\n"])), function (_ref7) {
11764
+ var ArrowsContainer = /*#__PURE__*/styled__default.div(_templateObject8$f || (_templateObject8$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 74px;\n height: var(--anchor-tabs-height);\n background-color: var(--color-base-white);\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 10px;\n\n ", "\n"])), function (_ref7) {
11713
11765
  var withShadow = _ref7.withShadow;
11714
- return withShadow && styled.css(_templateObject9$9 || (_templateObject9$9 = _taggedTemplateLiteralLoose(["\n box-shadow: var(--shadow-floating);\n "])));
11766
+ return withShadow && styled.css(_templateObject9$a || (_templateObject9$a = _taggedTemplateLiteralLoose(["\n box-shadow: var(--shadow-floating);\n "])));
11715
11767
  });
11716
- var ArrowWrapper = /*#__PURE__*/styled__default.div(_templateObject0$8 || (_templateObject0$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 24px;\n height: 24px;\n cursor: ", ";\n pinter-events: ", ";\n display: flex;\n align-items: center;\n justify-content: flex-center;\n\n && svg path {\n fill: ", ";\n }\n"])), function (_ref8) {
11768
+ var ArrowWrapper = /*#__PURE__*/styled__default.div(_templateObject0$9 || (_templateObject0$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 24px;\n height: 24px;\n cursor: ", ";\n pinter-events: ", ";\n display: flex;\n align-items: center;\n justify-content: flex-center;\n\n && svg path {\n fill: ", ";\n }\n"])), function (_ref8) {
11717
11769
  var disabled = _ref8.disabled;
11718
11770
  return disabled ? 'not-allowed' : 'pointer';
11719
11771
  }, function (_ref9) {
@@ -11724,7 +11776,7 @@ var ArrowWrapper = /*#__PURE__*/styled__default.div(_templateObject0$8 || (_temp
11724
11776
  return disabled ? 'var(--color-state-disabled)' : 'var(--button-anchor-tab-color)';
11725
11777
  });
11726
11778
 
11727
- var _excluded$q = ["id", "text"];
11779
+ var _excluded$r = ["id", "text"];
11728
11780
  var AnchorTabBar = function AnchorTabBar(_ref) {
11729
11781
  var tabs = _ref.tabs,
11730
11782
  onTabClick = _ref.onTabClick,
@@ -11935,7 +11987,7 @@ var AnchorTabBar = function AnchorTabBar(_ref) {
11935
11987
  }, tabs.map(function (_ref4) {
11936
11988
  var id = _ref4.id,
11937
11989
  text = _ref4.text,
11938
- rest = _objectWithoutPropertiesLoose(_ref4, _excluded$q);
11990
+ rest = _objectWithoutPropertiesLoose(_ref4, _excluded$r);
11939
11991
  return /*#__PURE__*/React__default.createElement("li", {
11940
11992
  key: id
11941
11993
  }, /*#__PURE__*/React__default.createElement(TabLink, Object.assign({
@@ -11968,7 +12020,7 @@ var AnchorTabBar = function AnchorTabBar(_ref) {
11968
12020
  })))) : null))));
11969
12021
  };
11970
12022
 
11971
- var _templateObject$1p, _templateObject2$15, _templateObject3$S, _templateObject4$K, _templateObject6$s, _templateObject7$m, _templateObject8$f, _templateObject9$a, _templateObject0$9;
12023
+ var _templateObject$1p, _templateObject2$15, _templateObject3$S, _templateObject4$K, _templateObject6$t, _templateObject7$n, _templateObject8$g, _templateObject9$b, _templateObject0$a;
11972
12024
  var TitleCTAGridWrapper = /*#__PURE__*/styled__default.div(_templateObject$1p || (_templateObject$1p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: ", ";\n top: -1px;\n background-color: var(--base-color-white);\n z-index: ", ";\n"])), function (_ref) {
11973
12025
  var sticky = _ref.sticky;
11974
12026
  return sticky ? 'sticky' : 'initial';
@@ -11979,9 +12031,9 @@ var TitleCTAGridItem = /*#__PURE__*/styled__default.div(_templateObject3$S || (_
11979
12031
  return title ? 'row' : 'row-reverse';
11980
12032
  }, devices.tablet, devices.mobile);
11981
12033
  var AnchorTitle = /*#__PURE__*/styled__default.div(_templateObject4$K || (_templateObject4$K = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n min-height: var(--button-height);\n\n h5 {\n padding: 0;\n margin: 0;\n }\n\n @media ", " {\n & {\n min-height: 50px;\n }\n }\n"])), devices.mobile);
11982
- var ButtonsDesktopWrapper = /*#__PURE__*/styled__default.div(_templateObject6$s || (_templateObject6$s = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-end;\n\n @media ", " {\n display: none;\n }\n\n a {\n width: max-content;\n }\n"])), devices.mobile);
11983
- var ButtonsMobileWrapper = /*#__PURE__*/styled__default.div(_templateObject7$m || (_templateObject7$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n\n @media ", " {\n & {\n display: block;\n }\n }\n"])), devices.mobile);
11984
- var PrimaryButtonReverse = /*#__PURE__*/styled__default(PrimaryButton)(_templateObject8$f || (_templateObject8$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n background-color: ", ";\n border-color: ", ";\n color: ", ";\n svg path {\n fill: ", ";\n }\n }\n"])), function (_ref3) {
12034
+ var ButtonsDesktopWrapper = /*#__PURE__*/styled__default.div(_templateObject6$t || (_templateObject6$t = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-end;\n\n @media ", " {\n display: none;\n }\n\n a {\n width: max-content;\n }\n"])), devices.mobile);
12035
+ var ButtonsMobileWrapper = /*#__PURE__*/styled__default.div(_templateObject7$n || (_templateObject7$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n\n @media ", " {\n & {\n display: block;\n }\n }\n"])), devices.mobile);
12036
+ var PrimaryButtonReverse = /*#__PURE__*/styled__default(PrimaryButton)(_templateObject8$g || (_templateObject8$g = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n background-color: ", ";\n border-color: ", ";\n color: ", ";\n svg path {\n fill: ", ";\n }\n }\n"])), function (_ref3) {
11985
12037
  var theme = _ref3.theme;
11986
12038
  return theme.colors.primaryButtonReverseBg;
11987
12039
  }, function (_ref4) {
@@ -11994,10 +12046,10 @@ var PrimaryButtonReverse = /*#__PURE__*/styled__default(PrimaryButton)(_template
11994
12046
  var theme = _ref6.theme;
11995
12047
  return theme.colors.primaryButtonReverse;
11996
12048
  });
11997
- var MessageWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject9$a || (_templateObject9$a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n margin-right: var(--grid-outer-margin);\n height: var(--button-height);\n\n h6 {\n margin: 0;\n padding: 0;\n }\n\n @media ", " {\n & {\n margin-right: var(--grid-margin);\n }\n }\n\n @media ", " {\n & {\n display: none;\n }\n }\n"])), devices.tablet, devices.mobile);
11998
- var MessageWrapperMobile = /*#__PURE__*/styled__default.div(_templateObject0$9 || (_templateObject0$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n h6 {\n margin: 0;\n padding: 0;\n }\n display: none;\n\n @media ", " {\n & {\n display: flex;\n align-items: center;\n margin-left: var(--grid-margin);\n padding: 12px 0;\n }\n }\n"])), devices.mobile);
12049
+ var MessageWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject9$b || (_templateObject9$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n margin-right: var(--grid-outer-margin);\n height: var(--button-height);\n\n h6 {\n margin: 0;\n padding: 0;\n }\n\n @media ", " {\n & {\n margin-right: var(--grid-margin);\n }\n }\n\n @media ", " {\n & {\n display: none;\n }\n }\n"])), devices.tablet, devices.mobile);
12050
+ var MessageWrapperMobile = /*#__PURE__*/styled__default.div(_templateObject0$a || (_templateObject0$a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n h6 {\n margin: 0;\n padding: 0;\n }\n display: none;\n\n @media ", " {\n & {\n display: flex;\n align-items: center;\n margin-left: var(--grid-margin);\n padding: 12px 0;\n }\n }\n"])), devices.mobile);
11999
12051
 
12000
- var _excluded$r = ["text"],
12052
+ var _excluded$s = ["text"],
12001
12053
  _excluded2$4 = ["text"];
12002
12054
  var TitleWithCTA = function TitleWithCTA(_ref) {
12003
12055
  var title = _ref.title,
@@ -12007,7 +12059,7 @@ var TitleWithCTA = function TitleWithCTA(_ref) {
12007
12059
  message = _ref.message;
12008
12060
  var _ref2 = (links == null ? void 0 : links[0]) || {},
12009
12061
  primaryButtonText = _ref2.text,
12010
- primaryButtonProps = _objectWithoutPropertiesLoose(_ref2, _excluded$r);
12062
+ primaryButtonProps = _objectWithoutPropertiesLoose(_ref2, _excluded$s);
12011
12063
  var _ref3 = (links == null ? void 0 : links[1]) || {},
12012
12064
  secondaryButtonText = _ref3.text,
12013
12065
  secondaryButtonProps = _objectWithoutPropertiesLoose(_ref3, _excluded2$4);
@@ -12136,7 +12188,7 @@ var CloseButton = /*#__PURE__*/styled__default.button(_templateObject2$18 || (_t
12136
12188
  var ContentWrapper$3 = /*#__PURE__*/styled__default.div(_templateObject3$U || (_templateObject3$U = /*#__PURE__*/_taggedTemplateLiteralLoose([""])));
12137
12189
  var Overlay = /*#__PURE__*/styled__default(Grid)(_templateObject4$M || (_templateObject4$M = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100vh;\n align-content: center;\n background-color: rgba(0, 0, 0, 0.4);\n"])));
12138
12190
 
12139
- var _excluded$s = ["isOpen", "setIsOpen", "children", "appElementId"];
12191
+ var _excluded$t = ["isOpen", "setIsOpen", "children", "appElementId"];
12140
12192
  var MAX_Z_INDEX = 9999999999;
12141
12193
  if (Modal.defaultStyles.content) {
12142
12194
  Modal.defaultStyles.content.position = 'static';
@@ -12210,7 +12262,7 @@ var ModalWindow = function ModalWindow(_ref) {
12210
12262
  setIsOpen = _ref.setIsOpen,
12211
12263
  children = _ref.children,
12212
12264
  appElementId = _ref.appElementId,
12213
- modalProps = _objectWithoutPropertiesLoose(_ref, _excluded$s);
12265
+ modalProps = _objectWithoutPropertiesLoose(_ref, _excluded$t);
12214
12266
  var isMobile = useMobile();
12215
12267
  var customStyles = {
12216
12268
  overlay: {
@@ -12338,7 +12390,7 @@ var getCardSlideMobileStyles = function getCardSlideMobileStyles(type) {
12338
12390
  return "\n width: " + ("calc((" + columnsPerSlide + " * " + gridColumnWidth + ") + (" + gapsPerSlide + " * " + GRID_COLUMN_GAP + "))") + ";\n margin-right: " + ("calc(" + gridColumnWidth + " + (" + GRID_COLUMN_GAP + " * 2))") + ";\n ";
12339
12391
  };
12340
12392
 
12341
- var _templateObject$1u, _templateObject2$19, _templateObject3$V, _templateObject4$N, _templateObject5$D, _templateObject6$t, _templateObject7$n, _templateObject8$g, _templateObject9$b;
12393
+ var _templateObject$1u, _templateObject2$19, _templateObject3$V, _templateObject4$N, _templateObject5$E, _templateObject6$u, _templateObject7$o, _templateObject8$h, _templateObject9$c;
12342
12394
  var ImageCarouselWrapper = /*#__PURE__*/styled__default.div(_templateObject$1u || (_templateObject$1u = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n\n @media ", " {\n ", "\n }}\n\n &:fullscreen {\n background: var(--color-base-white);\n padding-top: 44px;\n padding-bottom: 84px;\n\n .swipe-slide > figure {\n height: var(--fullscreen-figure-height);\n\n > div {\n height: var(--fullscreen-figure-height);\n }\n }\n }\n"])), function (_ref) {
12343
12395
  var imagesHeightDesktop = _ref.imagesHeightDesktop;
12344
12396
  return "& {\n .swipe-slide {\n height: fit-content;\n width: auto;\n margin-right: var(--grid-column-gap);\n\n > figure {\n margin: 0px;\n\n > div {\n height: " + imagesHeightDesktop + "px;\n }\n }\n }\n }";
@@ -12353,14 +12405,14 @@ var CardsCarouselWrapper = /*#__PURE__*/styled__default.div(_templateObject2$19
12353
12405
  });
12354
12406
  var TitleButtonsGrid = /*#__PURE__*/styled__default(Grid)(_templateObject3$V || (_templateObject3$V = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-bottom: 28px;\n\n @media ", " {\n padding-bottom: 0;\n }\n\n @media ", " {\n margin-bottom: 20px;\n }\n"])), devices.mobile, devices.mobile);
12355
12407
  var CarouselInfoWrapper = /*#__PURE__*/styled__default.div(_templateObject4$N || (_templateObject4$N = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n user-select: text;\n"])));
12356
- var TitleWrapper$5 = /*#__PURE__*/styled__default.div(_templateObject5$D || (_templateObject5$D = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", ";\n"])), function (_ref4) {
12408
+ var TitleWrapper$5 = /*#__PURE__*/styled__default.div(_templateObject5$E || (_templateObject5$E = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", ";\n"])), function (_ref4) {
12357
12409
  var isDescriptionPresent = _ref4.isDescriptionPresent;
12358
12410
  return isDescriptionPresent && 'margin: 20px 0';
12359
12411
  });
12360
- var TitleText$1 = /*#__PURE__*/styled__default(HarmonicHeader)(_templateObject6$t || (_templateObject6$t = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n line-height: 42px;\n }\n overflow: hidden;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n text-overflow: ellipsis;\n padding-bottom: 4px;\n box-sizing: border-box;\n /* max-height = 2 * 40px (two lines): 40px is the design line-height for header--medium (matches font-size/optical metrics), +4px provides extra descender room so glyphs like g/y aren't clipped \u2014 non\u2011WebKit fallback */\n max-height: calc(2 * 40px + 4px);\n"])));
12361
- var ButtonsWrapper = /*#__PURE__*/styled__default.div(_templateObject7$n || (_templateObject7$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-end;\n align-items: start;\n"])));
12362
- var TitleGridItem = /*#__PURE__*/styled__default(GridItem)(_templateObject8$g || (_templateObject8$g = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n grid-column: 2 / span 10;\n }\n"])), devices.tablet);
12363
- var SwipeGridWrapper = /*#__PURE__*/styled__default(GridItem)(_templateObject9$b || (_templateObject9$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n .swipe {\n padding-inline-start: 2px;\n padding-block-start: 2px;\n }\n\n ", ";\n\n @media ", " {\n grid-column: ", ";\n }\n\n @media ", " {\n grid-column: 2 / span 13;\n }\n"])), function (_ref5) {
12412
+ var TitleText$1 = /*#__PURE__*/styled__default(HarmonicHeader)(_templateObject6$u || (_templateObject6$u = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n line-height: 42px;\n }\n overflow: hidden;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n text-overflow: ellipsis;\n padding-bottom: 4px;\n box-sizing: border-box;\n /* max-height = 2 * 40px (two lines): 40px is the design line-height for header--medium (matches font-size/optical metrics), +4px provides extra descender room so glyphs like g/y aren't clipped \u2014 non\u2011WebKit fallback */\n max-height: calc(2 * 40px + 4px);\n"])));
12413
+ var ButtonsWrapper = /*#__PURE__*/styled__default.div(_templateObject7$o || (_templateObject7$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-end;\n align-items: start;\n"])));
12414
+ var TitleGridItem = /*#__PURE__*/styled__default(GridItem)(_templateObject8$h || (_templateObject8$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n grid-column: 2 / span 10;\n }\n"])), devices.tablet);
12415
+ var SwipeGridWrapper = /*#__PURE__*/styled__default(GridItem)(_templateObject9$c || (_templateObject9$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n .swipe {\n padding-inline-start: 2px;\n padding-block-start: 2px;\n }\n\n ", ";\n\n @media ", " {\n grid-column: ", ";\n }\n\n @media ", " {\n grid-column: 2 / span 13;\n }\n"])), function (_ref5) {
12364
12416
  var active = _ref5.active;
12365
12417
  return active ? 'grid-column: 1 / span 16' : '';
12366
12418
  }, devices.tablet, function (_ref6) {
@@ -12603,19 +12655,19 @@ var Carousel = function Carousel(_ref) {
12603
12655
  }, children))));
12604
12656
  };
12605
12657
 
12606
- var _templateObject$1v, _templateObject2$1a, _templateObject3$W, _templateObject4$O, _templateObject5$E, _templateObject6$u, _templateObject7$o, _templateObject8$h, _templateObject9$c, _templateObject0$a, _templateObject1$6, _templateObject10$4, _templateObject11$4, _templateObject12$4, _templateObject13$3, _templateObject14$1, _templateObject15$1, _templateObject16$1;
12658
+ var _templateObject$1v, _templateObject2$1a, _templateObject3$W, _templateObject4$O, _templateObject5$F, _templateObject6$v, _templateObject7$p, _templateObject8$i, _templateObject9$d, _templateObject0$b, _templateObject1$7, _templateObject10$5, _templateObject11$4, _templateObject12$4, _templateObject13$3, _templateObject14$1, _templateObject15$1, _templateObject16$1;
12607
12659
  var HighlightsGrid$1 = /*#__PURE__*/styled__default(Grid)(_templateObject$1v || (_templateObject$1v = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n grid-template-rows: max-content minmax(0, 1fr);\n gap: 0 var(--grid-column-gap);\n background-color: var(--color-base-black);\n user-select: none;\n\n .highlight-carousel-text {\n color: var(--color-base-white);\n }\n\n @media ", " {\n & {\n grid-template-rows: min-content max-content max-content;\n }\n }\n"])), devices.mobile);
12608
12660
  var CarouselTitleWrapper = /*#__PURE__*/styled__default.div(_templateObject2$1a || (_templateObject2$1a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: 1 / 1 / 1 / 7;\n box-sizing: border-box;\n width: calc(100% + var(--grid-column-gap));\n padding-top: 40px;\n padding-left: 50px;\n padding-right: 36px;\n user-select: text;\n\n @media ", " {\n & {\n grid-area: 1 / 1 / 2 / 12;\n padding: 12px 0 12px var(--grid-margin);\n min-height: 64px;\n box-sizing: border-box;\n width: 100%;\n }\n }\n\n @media ", " {\n & {\n grid-area: 1 / 1 / 2 / 11;\n width: 100%;\n padding: 8px 0 8px 20px;\n min-height: 28px;\n }\n }\n"])), devices.tablet, devices.mobile);
12609
12661
  var HeaderWrapper = /*#__PURE__*/styled__default.div(_templateObject3$W || (_templateObject3$W = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin: 0;\n padding: 0;\n"])));
12610
12662
  var InfoWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject4$O || (_templateObject4$O = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: 2 / 1 / 2 / 7;\n box-sizing: border-box;\n width: calc(100% + var(--grid-column-gap));\n align-self: center;\n padding: 36px 36px 36px 50px;\n\n a {\n text-underline-offset: var(--harmonic-text-link-underline-offset);\n }\n\n @media ", " {\n & {\n grid-area: 2 / 1 / 2 / 7;\n padding: 0 12px 12px var(--grid-margin);\n }\n }\n\n @media ", " {\n & {\n grid-area: 3 / 1 / 4 / 15;\n width: 100%;\n padding: 0 20px;\n margin: 24px 0;\n }\n }\n"])), devices.tablet, devices.mobile);
12611
- var InfoLogoWrapper = /*#__PURE__*/styled__default.div(_templateObject5$E || (_templateObject5$E = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-bottom: 32px;\n width: 132px;\n height: 36px;\n\n @media ", " {\n & {\n margin-bottom: 16px;\n width: 102px;\n height: 28px;\n }\n }\n\n @media ", " {\n & {\n margin-bottom: 20px;\n width: 102px;\n height: 28px;\n }\n }\n"])), devices.tablet, devices.mobile);
12612
- var InfoTitleWrapper = /*#__PURE__*/styled__default.div(_templateObject6$u || (_templateObject6$u = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n user-select: text;\n\n h1,\n h2,\n h3 {\n margin-bottom: 8px;\n }\n"])));
12613
- var InfoTextWrapper = /*#__PURE__*/styled__default.div(_templateObject7$o || (_templateObject7$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 24px;\n user-select: text;\n\n @media ", " {\n & {\n margin-top: 20px;\n }\n }\n"])), devices.mobileAndTablet);
12614
- var InfoLinkWrapper = /*#__PURE__*/styled__default.div(_templateObject8$h || (_templateObject8$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n display: flex;\n flex-direction: row;\n\n @media ", " {\n & {\n margin-top: 16px;\n }\n }\n\n @media ", " {\n & {\n margin-top: 20px;\n }\n display: flex;\n flex-direction: column;\n }\n"])), devices.tablet, devices.mobile);
12615
- var CarouselWrapper = /*#__PURE__*/styled__default.div(_templateObject9$c || (_templateObject9$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: 1 / 7 / 3 / 17;\n position: relative;\n height: 100%;\n width: 100%;\n\n .swipe-slide {\n width: calc(100% - 50px - var(--rotator-button-width));\n -webkit-transform: translate3d(0, 0, 0);\n }\n\n @media ", " {\n & {\n grid-area: 2 / 7 / 3 / 15;\n\n .swipe-slide {\n width: 100%;\n -webkit-transform: translate3d(0, 0, 0);\n }\n }\n }\n\n @media ", " {\n & {\n grid-area: 2 / 1 / 3 / 15;\n\n .swipe-slide {\n width: 100%;\n -webkit-transform: translate3d(0, 0, 0);\n }\n }\n }\n"])), devices.tablet, devices.mobile);
12616
- var RotatorButtonsWrapper$1 = /*#__PURE__*/styled__default.div(_templateObject0$a || (_templateObject0$a = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n right: 50px;\n top: calc(50% - calc(var(--rotator-button-width) / 2));\n z-index: 2;\n\n @media ", " {\n & {\n display: none;\n }\n }\n"])), devices.mobileAndTablet);
12617
- var RotatorButtonsWrapperMobile$1 = /*#__PURE__*/styled__default.div(_templateObject1$6 || (_templateObject1$6 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n\n @media ", " {\n div {\n background-color: var(--color-base-black);\n }\n svg path {\n fill: var(--color-base-white);\n }\n\n & {\n display: flex;\n grid-area: 1 / 12 / 2 / 14;\n align-self: center;\n justify-content: flex-end;\n }\n }\n\n @media ", " {\n div {\n background-color: var(--color-base-black);\n }\n svg path {\n fill: var(--color-base-white);\n }\n\n & {\n display: flex;\n grid-area: 1 / 11 / 2 / 14;\n align-self: center;\n justify-content: flex-end;\n }\n }\n"])), devices.tablet, devices.mobile);
12618
- var HtmlBodyText = /*#__PURE__*/styled__default.p(_templateObject10$4 || (_templateObject10$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0;\n margin: 0;\n"])));
12663
+ var InfoLogoWrapper = /*#__PURE__*/styled__default.div(_templateObject5$F || (_templateObject5$F = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-bottom: 32px;\n width: 132px;\n height: 36px;\n\n @media ", " {\n & {\n margin-bottom: 16px;\n width: 102px;\n height: 28px;\n }\n }\n\n @media ", " {\n & {\n margin-bottom: 20px;\n width: 102px;\n height: 28px;\n }\n }\n"])), devices.tablet, devices.mobile);
12664
+ var InfoTitleWrapper = /*#__PURE__*/styled__default.div(_templateObject6$v || (_templateObject6$v = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n user-select: text;\n\n h1,\n h2,\n h3 {\n margin-bottom: 8px;\n }\n"])));
12665
+ var InfoTextWrapper = /*#__PURE__*/styled__default.div(_templateObject7$p || (_templateObject7$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 24px;\n user-select: text;\n\n @media ", " {\n & {\n margin-top: 20px;\n }\n }\n"])), devices.mobileAndTablet);
12666
+ var InfoLinkWrapper = /*#__PURE__*/styled__default.div(_templateObject8$i || (_templateObject8$i = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n display: flex;\n flex-direction: row;\n\n @media ", " {\n & {\n margin-top: 16px;\n }\n }\n\n @media ", " {\n & {\n margin-top: 20px;\n }\n display: flex;\n flex-direction: column;\n }\n"])), devices.tablet, devices.mobile);
12667
+ var CarouselWrapper = /*#__PURE__*/styled__default.div(_templateObject9$d || (_templateObject9$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n grid-area: 1 / 7 / 3 / 17;\n position: relative;\n height: 100%;\n width: 100%;\n\n .swipe-slide {\n width: calc(100% - 50px - var(--rotator-button-width));\n -webkit-transform: translate3d(0, 0, 0);\n }\n\n @media ", " {\n & {\n grid-area: 2 / 7 / 3 / 15;\n\n .swipe-slide {\n width: 100%;\n -webkit-transform: translate3d(0, 0, 0);\n }\n }\n }\n\n @media ", " {\n & {\n grid-area: 2 / 1 / 3 / 15;\n\n .swipe-slide {\n width: 100%;\n -webkit-transform: translate3d(0, 0, 0);\n }\n }\n }\n"])), devices.tablet, devices.mobile);
12668
+ var RotatorButtonsWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject0$b || (_templateObject0$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n right: 50px;\n top: calc(50% - calc(var(--rotator-button-width) / 2));\n z-index: 2;\n\n @media ", " {\n & {\n display: none;\n }\n }\n"])), devices.mobileAndTablet);
12669
+ var RotatorButtonsWrapperMobile$1 = /*#__PURE__*/styled__default.div(_templateObject1$7 || (_templateObject1$7 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n\n @media ", " {\n div {\n background-color: var(--color-base-black);\n }\n svg path {\n fill: var(--color-base-white);\n }\n\n & {\n display: flex;\n grid-area: 1 / 12 / 2 / 14;\n align-self: center;\n justify-content: flex-end;\n }\n }\n\n @media ", " {\n div {\n background-color: var(--color-base-black);\n }\n svg path {\n fill: var(--color-base-white);\n }\n\n & {\n display: flex;\n grid-area: 1 / 11 / 2 / 14;\n align-self: center;\n justify-content: flex-end;\n }\n }\n"])), devices.tablet, devices.mobile);
12670
+ var HtmlBodyText = /*#__PURE__*/styled__default.p(_templateObject10$5 || (_templateObject10$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding: 0;\n margin: 0;\n"])));
12619
12671
  var FirstButtonComponentWrapper = /*#__PURE__*/styled__default.div(_templateObject11$4 || (_templateObject11$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-right: 16px;\n\n @media ", " {\n & {\n display: flex;\n flex-direction: column;\n margin-right: 0;\n margin-bottom: 10px;\n }\n }\n"])), devices.mobile);
12620
12672
  var TimerWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject12$4 || (_templateObject12$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-bottom: 32px;\n\n @media ", " {\n margin-bottom: 24px;\n }\n"])), devices.mobileAndTablet);
12621
12673
  var AdditionalInfoWrapper = /*#__PURE__*/styled__default.div(_templateObject13$3 || (_templateObject13$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n\n @media ", " {\n margin-top: 16px;\n }\n"])), devices.mobileAndTablet);
@@ -12626,7 +12678,7 @@ var VideoWithControlsWrapper = /*#__PURE__*/styled__default.div(_templateObject1
12626
12678
  }, devices.mobile);
12627
12679
  var ProgressContainer$1 = /*#__PURE__*/styled__default.div(_templateObject16$1 || (_templateObject16$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n\n p {\n margin-bottom: 16px;\n }\n\n @media ", " {\n margin-top: 20px;\n\n p {\n margin-bottom: 12px;\n }\n }\n"])), devices.mobileAndTablet);
12628
12680
 
12629
- var _excluded$t = ["text"],
12681
+ var _excluded$u = ["text"],
12630
12682
  _excluded2$5 = ["text"];
12631
12683
  var _buttonTypeToButton$2;
12632
12684
  var buttonTypeToButton$2 = (_buttonTypeToButton$2 = {}, _buttonTypeToButton$2[exports.ButtonType.Primary] = PrimaryButton, _buttonTypeToButton$2[exports.ButtonType.Secondary] = SecondaryButton, _buttonTypeToButton$2[exports.ButtonType.Tertiary] = TertiaryButton, _buttonTypeToButton$2);
@@ -12637,7 +12689,7 @@ var Buttons = function Buttons(_ref) {
12637
12689
  var _ref2 = firstButton || {},
12638
12690
  _ref2$text = _ref2.text,
12639
12691
  firstButtonText = _ref2$text === void 0 ? '' : _ref2$text,
12640
- restFirstButton = _objectWithoutPropertiesLoose(_ref2, _excluded$t);
12692
+ restFirstButton = _objectWithoutPropertiesLoose(_ref2, _excluded$u);
12641
12693
  var secondButton = links == null ? void 0 : links[1];
12642
12694
  var _ref3 = secondButton || {},
12643
12695
  _ref3$text = _ref3.text,
@@ -12753,7 +12805,7 @@ var VideoSlide = function VideoSlide(_ref) {
12753
12805
  });
12754
12806
  return /*#__PURE__*/React__default.createElement(VideoWithControlsWrapper, {
12755
12807
  isCurrentSlide: isCurrentSlide
12756
- }, /*#__PURE__*/React__default.createElement(VideoWithControls$2, {
12808
+ }, /*#__PURE__*/React__default.createElement(VideoWithControls$1, {
12757
12809
  video: video,
12758
12810
  settings: settings
12759
12811
  }));
@@ -12852,7 +12904,7 @@ var HighlightsCarousel = function HighlightsCarousel(_ref) {
12852
12904
  auxiliaryCTA: auxiliaryCTA
12853
12905
  })), /*#__PURE__*/React__default.createElement(CarouselWrapper, {
12854
12906
  "data-testid": "carousel-wrapper"
12855
- }, hasMultipleSlides && (/*#__PURE__*/React__default.createElement(RotatorButtonsWrapper$1, {
12907
+ }, hasMultipleSlides && (/*#__PURE__*/React__default.createElement(RotatorButtonsWrapper$2, {
12856
12908
  "data-testid": "rotator-buttons"
12857
12909
  }, /*#__PURE__*/React__default.createElement(RotatorButtons, {
12858
12910
  onClickNext: onNext,
@@ -12869,11 +12921,11 @@ var HighlightsCarousel = function HighlightsCarousel(_ref) {
12869
12921
  })));
12870
12922
  };
12871
12923
 
12872
- var _excluded$u = ["logo", "slides"];
12924
+ var _excluded$v = ["logo", "slides"];
12873
12925
  var HighlightsCinema = function HighlightsCinema(_ref) {
12874
12926
  var logo = _ref.logo,
12875
12927
  slides = _ref.slides,
12876
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$u);
12928
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$v);
12877
12929
  var slidesWithLinks = slides.map(function (slide) {
12878
12930
  var links = processSlideLinks(slide.links);
12879
12931
  return _extends({}, slide, {
@@ -12890,10 +12942,10 @@ var HighlightsCinema = function HighlightsCinema(_ref) {
12890
12942
  })));
12891
12943
  };
12892
12944
 
12893
- var _excluded$v = ["slides"];
12945
+ var _excluded$w = ["slides"];
12894
12946
  var HighlightsCore = function HighlightsCore(_ref) {
12895
12947
  var slides = _ref.slides,
12896
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$v);
12948
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$w);
12897
12949
  var slidesWithLinks = slides.map(function (slide) {
12898
12950
  var links = processSlideLinks(slide.links);
12899
12951
  return _extends({}, slide, {
@@ -12907,11 +12959,11 @@ var HighlightsCore = function HighlightsCore(_ref) {
12907
12959
  })));
12908
12960
  };
12909
12961
 
12910
- var _excluded$w = ["logo", "slides"];
12962
+ var _excluded$x = ["logo", "slides"];
12911
12963
  var HighlightsStream = function HighlightsStream(_ref) {
12912
12964
  var logo = _ref.logo,
12913
12965
  slides = _ref.slides,
12914
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$w);
12966
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$x);
12915
12967
  var slidesWithLinks = slides.map(function (slide) {
12916
12968
  var links = processSlideLinks(slide.links);
12917
12969
  return _extends({}, slide, {
@@ -14522,6 +14574,7 @@ exports.Caption = Caption;
14522
14574
  exports.Card = Card;
14523
14575
  exports.Cards = Cards;
14524
14576
  exports.Carousel = Carousel;
14577
+ exports.CastFilter = CastFilters;
14525
14578
  exports.CinemaBadge = CinemaBadge;
14526
14579
  exports.ContactCard = ContactCard;
14527
14580
  exports.ContentSummary = ContentSummary;
@@ -14610,7 +14663,7 @@ exports.TypeTags = TypeTags;
14610
14663
  exports.UpsellCard = UpsellCard;
14611
14664
  exports.UpsellSection = UpsellSection;
14612
14665
  exports.VideoControls = VideoControls;
14613
- exports.VideoWithControls = VideoWithControls$2;
14666
+ exports.VideoWithControls = VideoWithControls$1;
14614
14667
  exports.breakpoints = breakpoints;
14615
14668
  exports.devices = devices;
14616
14669
  exports.useHarmonicTheme = useHarmonicTheme;